Desenvolvimento - PHP
Aprenda PHP e torne-se um bom programador sem gastar quase nada
Veja aqui a maneira mais eficiente de aprender PHP do zero, e também tornar-se um bom programador da linguagem - tenha empresas atrás de você. E o melhor de tudo: sem gastar quase nada!
por Alfred Reinold BaudischProvavelmente uma das coisas mais difíceis e, digamos, chatas quando queremos aprender algo novo é achar o caminho para o qual devemos iniciar a caminhar. Falando mais claramente: por onde começar quando queremos iniciar algo novo? Quais as fontes que devo ir atrás? Qual livro devo ler? E assim vai... E, com certeza, isso afirma-se melhor quando tratamos de linguagem de programação. Vide os inúmeros livros e tutoriais que existem para cada linguagem, fica difícil escolher um para poder iniciar o estudo em certa linguagem.
Descubra como aprender PHP
Como já passei por isso várias vezes e como tinha muito tempo disponível (comecei com isso aos 13 anos), acabei criando um padrão de aprendizagem eficaz. Nesse artigo mostrarei exatamente o que fiz para aprender PHP. E, posso lhe dizer que é algo muito bom e que funciona. Você verá que terá empresas indo atrás de você, não você atrás delas.
Só que antes de ler esse artigo e querer
realmente aprender PHP (ou qualquer linguagem de programação), você terá
que ter:
1) Muita vontade. Esqueça que existe algo chamado "preguiça".
2) MUITA persistência. Não adianta tentar 1 ou 2 vezes e desistir caso
não consiga. Tente infinitas vezes até achar, pois te garanto que na
programação qualquer coisa é possível.
3) Contato com a linguagem, principalmente durante a aprendizagem, pelo
menos 1 hora por dia. Ou o que for possível para você.
4) Para tudo nesse mundo capitalista você precisa de dinheiro. E aqui
não seria diferente. Mas, no caso, você precisará de dinheiro apenas
para a energia que irá gastar com seu PC ligado, conexão de internet e
com alimentos, pois isso dá MUITA fome! (Risos)
Para facilitar a leitura, os itens "a se fazer" estão enumerados. Então,
vamos lá!
O-que-fazer
1) Antes de iniciar seu aprendizado em qualquer linguagem WEB do
lado do servidor, você deve saber HTML, principalmente a parte de
tabelas e formulários. Não vou recomendar nenhum apostila da mesma. O
que lhe recomendo a fazer caso queira aprender HTML: instalar um editor
com destaque de sintaxe; entre em sites que contenham formulários,
tabelas, etc.., vá em "Exibir Código Fonte" e cole esse código HTML no
editor. Assim, observe o HTML da página e veja o que linha por linha
faz, alterando e vendo o resultado. Em menos de 2 dias você saberá HTML
caso "xerete" em vários sites.
2) Antes de iniciar em qualquer linguagem de programação, você deve
saber a lógica de programação. Para isso, existe essa excelente
apostila:
http://alfred.auriumsoft.com.br/aprendendo/logica.zip
3) Instale o PHP em sua máquina. Assim,
você poderá programar, testar e ver os resultados quase em tempo real.
Escrevi um artigo completo sobre como instalar Apache + PHP + MySQL:
http://www.linhadecodigo.com.br/artigos.asp?id_ac=407
4) Instale um editor PHP com destaque de
sintaxe. Um dos melhores gratuitos que existe é o PHP Editor (que
também tem destaque de sintaxe para o HTML):
http://superdownloads.ubbi.com.br/download/i13264.html
5) Sabendo HTML, lógica de programação,
tendo um editor PHP instalado e o PHP rodando em seu PC, você já pode
partir para o aprendizado do PHP! Primeiro, aprenda a sintaxe da
linguagem, os tipos de dados, a orientação a objetos do PHP (vai por
mim, é importante saber OOP). O melhor lugar para isso é o manual
oficial:
http://www.php.net/manual/pt_BR/preface.php
Recomendo que vá lendo e copiando os exemplos contidos no manual para o
seu editor e os execute no seu PC. Não esqueça também de ir alterando os
exemplos e ver o que sua alteração faz.
Leia até o capítulo 20, ignorando o capítulo sobre Instalação, visto que
você já tem o PHP instalado. Achando que você já sabe o básico do PHP o
suficiente, vá para o próximo passo.
6) Agora, um dos itens mais importantes desse artigo. O que lhe
fará realmente aprender a linguagem e aprender técnicas e lógicas.
Acesse
http://sourceforge.net/softwaremap/trove_list.php?form_cat=183
efetue o download do eGroupWare, phpMyAdmin, SugarCRM e o phpBB. Extraia
todos para o Apache do seu PC. E rode primeiro o phpBB. De início, o
phpBB mostra uma tela de instalação. Abra esse arquivo de instalação no
editor PHP e analise linha por linha tentando entender o que as mesmas
fazem. Execute o script para entender melhor. Após instalá-lo, o fórum
aparecerá. Coloque para postar uma mensagem e envie. Após isso abra o
arquivo que processa os posts (veja na linha de endereços do navegador)
e veja como cada item foi enviado ao PHP, salvo no Banco de Dados e
assim sucessivamente. Estude principalmente como os dados são recebidos
dos formulários, processados e salvos no banco de dados. Com o phpBB
você também poderá aprender completamente sobre sessões e sistemas de
usuários.
Execute os demais programas por mim aqui citados. Faça o mesmo com
todos: teste, observe o código, altere, veja o resultado e assim vai.
Com o eGroupWare você aprenderá praticamente TUDO que o PHP é capaz de
fazer e, principalmente, métodos de boa programação. Você verá em
funcionamento: upload e manipulação de arquivos, sistemas de login e
multiusuários, bancos de dados, manipulação de imagens e assim vai.
Posso lhe garantir: se você observar, alterar e testar cada linha desses
scripts exaustivamente, em menos de alguns meses você se tornará um
expert em PHP. Abaixo um exemplo de como seguir o que foi explicado
nesse item.
7) Não pára por aí. Enquanto você vai estudando os scripts ou em TODO
seu momento de programação em PHP, esteja SEMPRE com o manual do PHP
aberto. Assim, caso você encontre uma função que você não conheça,
esqueça parâmetros de uma função, etc..., digite no manual e aparecerá
tudo sobre ela. Sabendo sobre ela.. você saberá como ela funciona
realmente, já que ela estará num programa pronto (phpBB, por exemplo).
8) Todos os scripts que você achar, efetue o download, rode em seu
computador, tente corrigir defeitos e adaptar novas funcionalidades.
Mesmo se você nunca ir a usar isso novamente em sua vida, mas faz parte
do aprendizado, você estará aprendendo coisas novas da linguagem ou
treinando o que já foi visto.
9) Visite fóruns e listas de discussão e tente ajudar os outros o máximo
possível, analisando e corrigindo os scripts deles. Você estará
aprendendo mais.
10) Sempre leia artigos e tutoriais que você encontrar.
10) É isso. Não tem mais segredo. Como você pode ver, a comunidade
Open-Source (Source Forge) é a maior responsável pelo melhor aprendizado
de uma linguagem. Abaixo links com mais scripts e classes PHP para você
estudar, bem como sites com artigos, etc.
Sites com Artigos, Tutoriais, Scripts, Sistemas Prontos
www.sourceforge.net (O melhor
de todos, claro!)
www.phpkitchen.com
www.phpbuilder.com
www.superphp.com.br
www.hotscripts.com/PHP/index.html
www.phpclasses.org
www.phpbrasil.com
www.phparena.net
www.programmersheaven.com/zone27/index.htm
http://php.resourceindex.com/
www.devarticles.com/c/b/PHP/
www.devshed.com/c/b/PHP/
www.linhadecodigo.com.br
www.wmonline.com.br/
Fóruns e Listas de Discussão
http://forums.devshed.com/f5/s (O melhor)
http://br.groups.yahoo.com/group/php-pt/
http://www.php.net/mailing-lists.php
Exemplo de como estudar algo que
executa em um sistema pronto
Mostrarei nesse exemplo como você deve estudar o processamento de
formulário executado no phpBB.
Execute o phpBB, selecione um fórum e clique em "New Topic".
Aparecerá o formulário. Coloque para exibir o código fonte HTML e
procure pelo formulário (não direi como, você tem que saber =) ). Ache o
nome do textbox do "Subject" e "Message Body", no caso são: subject
e message. Procure também pelos campos de formulário hidden.
Você encontrará esse: <input
type="hidden" name="mode" value="newtopic" />.
Ok, feito isso.. escreva qualquer coisa em ambos os campos e clique em
Submit. Veja que a página que aparece na barra do navegador é a
posting.php, ou seja, a mesma página que exibe o formulário
também o processa.
Abra a posting.php no PHP Editor (ou outro editor que você tenha
instalado) e procure por subject (o nome do campo do formulário).
Retornará uma vez. Busque novamente, até encontrar essa linha:
$subject = ( !empty($HTTP_POST_VARS["subject"])
) ? trim($HTTP_POST_VARS["subject"]) : "";
$message = ( !empty($HTTP_POST_VARS["message"]) ) ? $HTTP_POST_VARS["message"]
: "";
É nessas linhas que os dados por
você digitado no formulário são recebidos e repassados para as variáveis
$subject
e $message.
Veja que o phpBB ainda usa a antiga
$HTTP_POST_VARS.
Você deve usar $_POST.
Mas, isso é apenas um detalhe.
Sempre coloque esse tipo de validação em seus formulários como o phpBB
faz.
Desça um pouco no código e verá que há uma chamada para a função
prepare_post,
onde $subject
e $message
fazem parte da lista de parâmetros. Procure o arquivo que contém a
declaração dessa função (olhe a lista de includes em posting.php até
achar com essa função) e estude o que a mesma faz, após isso, retorne ao
código e verá que a função submit_post (que processa o post - a função
principal) também usa $subject e $message. Faça o mesmo, vá ao arquivo
com a declaração da função e a estude. Após isso.. retorne para onde
você parou e continue a estudar o processamento do formulário.
Considerações Finais
Espero ter ajudado e minhas sinceras desculpas se em algumas partes não
fui muito claro, pois realmente esse foi um dos artigos mais difíceis
que escrevi. Não pela falta de conteúdo de minha parte, mas é uma
abordagem que nunca vi em outro lugar. É algo que fica difícil de se
esclarecer em palavras, o melhor seria mostrando pessoalmente para cada
um que tem interesse, mas isso fica inviável, por isso existem os
artigos.
Caso você não tenha entendido algo, não hesite em perguntar, tentarei
lhe responder no possível.
Atenciosamente,
Alfred Reinold Baudisch
Auriumsoft Inteligência e Tecnologia LTDA.
www.auriumsoft.com.br
alfred@auriumsoft.com.br