Post on 11-Jun-2015
Seja um júnior não seja um sobrinho
Boas práticas para construir uma carreira em PHP
Quem sou eu
• Mantenedor do PHP Rocks (Offline);
• Membro do Conselho Editorial da PHP Review;
• Analista/Desenvolvedor Sênior na Atos Origin
• Bebedor de Cerveja Convicto• Mergulhador (Divemaster/Padi)
Agenda
• Como produzir códigos profissionais desde o início da carreira;
• Como não ser desrespeitado em listas, fóruns etc.• Como conseguir ajuda?• Perguntas comuns para quem está começando a
programar;• Aprenda a fazer comentários que realmente ajudam
a entender seu código;• Como criar funções e métodos;
Agenda
• Qual tipo de acesso eu devo utilizar (public, protected ou private);
• Como organizar suas classes;• A utilização do PHPDocs• O Manual do PHP e ferramentas que todo o
desenvolvedor deveria utilizar.
O que não cobriremos
• Essa apresentação não trará código funcional;• Esta apresentação não visa alterar estilos de
codificação, mas atitudes;• Esta não é uma apresentação técnica, apesar
de abordar alguns tópicos técnicos;• Não estamos vendendo conceitos ou
produtos, então relaxem.
Como produzir códigos profissionais desde o início da careira
• Monte sua biblioteca, PDF, livros, tutoriais e leia!
• Não reinvente a roda, mas lixe-a para rodar melhor;
• Menos é mais!!! Na maioria das vezes;• Seu código é produto de outra pessoa sempre
tenha isso em mente;• Não copie, estude.
Como não ser desrespeitado
• Não copie estude• RTFM, UPG sempre• Pesquise antes de perguntar• Se as pessoas não te respondem considere
refazer a sua pergunta e não reclamar porque as pessoas não respondem
• Grupos e fóruns tem regras e moderadores, respeite-os!
• De boa leiam o maldito manual!!!
Como conseguir ajuda.
• Forúns específicos, ir num fórum de MySQL e fazer uma pergunta de PHP é deselegante;
• De novo: Googlo, leu o manual, não achou? Ok pode perguntar.
• Pelo amor de Deus, não ofenda o PHP.• MIRC é rápido e eficaz, mas tenha um
pouquinho de paciência. Server Freenode #php
Exemplo de Má pergunta
Perguntas Comuns de quem está começando a programar
• Quanto eu cobro?• Qual framework eu uso?• Porque Java paga mais?• Porque .net paga mais?• Que tipo de emprego procurar?• Quando um produto está pronto?• A Comunidade Morde?
Perguntas Comuns de quem está começando a programar
• Quanto eu cobro?
Qual seu custo de vida, mínimo?• Qual framework eu uso?
O que o projeto mandar, ou o que vc preferir, mas faça o seu e nunca o use em cliente.
• Porque Java paga mais?• Porque .net paga mais?
Alguém já viu no sou java tantas palestras sobre iníco de carreira?
• Que tipo de emprego procurar?Aquele tem a ver com você e seu projeto de vida.
Perguntas Comuns de quem está começando a programar
• Quando um produto está pronto?
Basicamente Nunca! O que é bom.• A Comunidade Morde?
De vez em quando, mas não desista, como diziam os Lobisomens, suas cicatrizes mostram que é um grande guerreiro
Não existem perguntas erradas, existe o modo errado de fazer a pergunta!
Como comentar seu código
• Comentários não são manuais de utilização do programa, nem cursos hands on de como programar
• Comente lógicas e não linhas, a não ser que a linha seja sensível para a sua equipe
• Comentários úteis salvam a SUA vida e não a dos outros caras
Como criar funções e métodos
• Automatização é a palavra da tecnologia, use-a
• Se é verbo provavelmente é uma função/método
• OOP existe para facilitar a codificação e é “febre da juventude” use-a
• Se você usa mais de 2 vezes é função/método
Qual tipo de acesso utilizar
• Atributos nunca públicos, se você usa OO use extends e protected;
• Getters e Setters ftw;• Sim existem métodos públicos em classes
abstratas, por isso atenção.• Métodos estáticos, ajudam muito em helpers,
são mais rápidos, use-os quando possível.
Como organizar suas classes
• Separe métodos publicos, protegidos e privados em blocos
• Dê nome que faça sentido• Quebre grandes tarefas em métodos privados• Reduza o número de parâmetros a serem
passados, use objetos e arrays• Use o PHP Doc Block
A utilização do PHPDocs
• Gera automaticamente a documentação do seu código; (Nice)
• Gera tips nas IDEs (Eclipse PDT, Zend Studio, Netbeans); (Nice!!!)
• Usa a Reflection Class para diminuir o teu trabalho (E forçar a trabalhar direito) (Perfect Win)
O Manual e outras coisas
• Use www.php.net/oqueeuquero• Leia o manual• Use o manual do seu banco• Stack overflow é o bicho• Delicious é melhor que a sua barra de
favoritos• Sempre leia as listas.
PERGUNTAS
?
E agora o que fazer?
• Mudar minha atitude, procurar fóruns canais do IRC etc.
• Ler o manual do PHP e de outros serviços• Compartilhar meu conhecimento• Montar minha biblioteca• Pensar antes de codificar• Olhar pros dois lados antes de atravessar a rua• Sempre twitar #chupaivo
Contatos
• Email: alexandretaz[at]gmail[dot]com• Twitter: @alexandretaz• Blog: http://www.phprocks.com.br (Volta essa
semana JURO)• Leia-me: http://www.phpreview.com.br