Slide 1

Slide 1 text

Meu sobrinho faz mais barato! Seja um profissional PHP Rafael Goulart

Slide 2

Slide 2 text

twitter@rgou github rafaelgou http://speakerdeck.com/u/rafaelgou rafael goulart http://tech.rgou.net

Slide 3

Slide 3 text

Sobrinho? O que a família tem a ver com a Tecnologia de Informação??

Slide 4

Slide 4 text

“Tudo isso? Então prefiro chamar o meu sobrinho. “ Seu futuro cliente sobre sobrinhos, após ver o seu orçamento Fonte: Desciclopédia

Slide 5

Slide 5 text

...e depois paga-se mais para um profissional consertar o negócio.

Slide 6

Slide 6 text

PHP é uma LINGUAGEM DE PROGRAMAÇÃO... ... que interage com VÁRIAS TECNOLOGIAS

Slide 7

Slide 7 text

Domine tecnologias ( ferramentas, conhecimentos ) afins ao ecossistema ( área de atuação ) do PHP

Slide 8

Slide 8 text

Profissional PHP conhece seu Ambiente ou: diga onde programas que eu te direi se te contrato

Slide 9

Slide 9 text

Linux ( Debian, Ubuntu, CentOS ) Apache2 ( sempre ) PHP ( 5.2 – 5.3 – 5.4 )

Slide 10

Slide 10 text

Lê o MANUAL ou: RTFM e RTFS! Profissional PHP

Slide 11

Slide 11 text

Documentação sempre à mão ● Linguagem ● Banco de Dados ● ORM ● Template Engine ● Bibliotecas, classes, frameworks ... e o oráculo, evidentemente.

Slide 12

Slide 12 text

php.net/nome_funcao Pesquisa rápida à documentação

Slide 13

Slide 13 text

Profissional PHP utiliza Orientação a Objeto ou: abstraia, abstraia

Slide 14

Slide 14 text

Paradigma de Programação PADRÃO para novos projetos em PHP

Slide 15

Slide 15 text

Orientação a Objeto em PHP NÃO É AVANÇADO É BÁSICO

Slide 16

Slide 16 text

NINGUÉM em sã consciência inicia um projeto GRANDE em PHP estruturado

Slide 17

Slide 17 text

NINGUÉM contrata para programação estruturada, funcional (etc.) em PHP

Slide 18

Slide 18 text

Profissional PHP domina SQL ou: dados, guarde e ache

Slide 19

Slide 19 text

A Linguagem SQL é GENÉRICA MAS é preciso dominar a administração de ao menos um SGBD (Sistema Gerenciador de Banco de Dados)

Slide 20

Slide 20 text

Escolha óbvia: MySQL MAS é não é o ÚNICO nem o MELHOR. Postgres vai cruzar seu caminho. (e muitos outros)

Slide 21

Slide 21 text

Profissional PHP domina Desing Patterns ou: tem um jeito de resolver esta encrenca

Slide 22

Slide 22 text

Desing Patterns?? “Soluções para problemas recorrentes no desenvolvimento de sistemas de software orientados a objetos.” Fonte: Wikipedia

Slide 23

Slide 23 text

Design Patterns Singleton Factory Iterator Active Record MVC ...

Slide 24

Slide 24 text

Aliás, Profissional PHP segue Padrões antes de inventar os seus

Slide 25

Slide 25 text

Profissional PHP domina HTML e XHTML sem esquecer HTML5

Slide 26

Slide 26 text

Na maior parte das aplicações PHP gera HTML É preciso dominar o que se vai entregar ao cliente

Slide 27

Slide 27 text

Profissional PHP domina Formatação com CSS ou: um mínimo de aparência

Slide 28

Slide 28 text

(X) HTML + CSS2 ( estável, atual ) HTML5 + CSS3 ( estabilizando, hoje e futuro )

Slide 29

Slide 29 text

O grande dilema Ficou bonito? Parabéns, webdesigner. Deu erro? Culpa do programador.

Slide 30

Slide 30 text

ninguém enxerga CÓDIGO todo mundo enxerga DESIGN

Slide 31

Slide 31 text

Bom DESIGN = APARÊNCIA + FUNCIONALIDADE

Slide 32

Slide 32 text

Profissional PHP conhece Javascript & AJAX ao menos um pouco!

Slide 33

Slide 33 text

Na maior parte das aplicações PHP gera HTML para Navegadores É preciso controlar o ambiente do cliente e proporcionar usabilidade

Slide 34

Slide 34 text

Profissional PHP Não reinventa a RODA 1) já existe? então usa! 2) classes, bibliotecas e frameworks

Slide 35

Slide 35 text

1) Já existe muita coisa pronta Já existe CMS, TaskManager, CRM, ERP, Wiki, Mailler, e mais um monte de programas em PHP. POR QUE VOCÊ VAI FAZER MAIS UM???

Slide 36

Slide 36 text

Antes de programar algo do zero avalie se não é melhor PERSONALIZAR PERSONALIZAR alguém pode já ter resolvido a maior parte do problema para você

Slide 37

Slide 37 text

2) Classes e Bibliotecas O mundo é grande. Alguém já teve seu problema. Invariavelmente. Banco de Dados Envio de email Segurança Conversão ...

Slide 38

Slide 38 text

2) FRAMEWORKS? O que é isso? “Framework é um conjunto de componentes que provêm uma estrutura básica de elementos reutilizáveis, tendo uma arquitetura consistente de funcionalidade genérica sob a qual a aplicação será construída.” Talita Pagini em http://tableless.com.br/quando-utilizar-ou-nao-frameworks-css/ Reutilização Extensibilidade Segurança Eficiência Completude

Slide 39

Slide 39 text

HTML e CSS 960gs Blueprint BoilerPlate HTML5 Twitter Bootstrap

Slide 40

Slide 40 text

Javascript jQuery jQuery UI ... mas também: Motools ExtJS 4 Dojo

Slide 41

Slide 41 text

PHP (claro!) Symfony Zend CakePHP Kohana Yii ...

Slide 42

Slide 42 text

Profissional PHP Versiona o Código ou: usa um SCM

Slide 43

Slide 43 text

SCM Source Code Managment OU VCS Version Control System SVN Mercurial CVS GIT

Slide 44

Slide 44 text

Profissional PHP Otimiza seu Código ou: menos, mais rápido, mais limpo

Slide 45

Slide 45 text

REFACTORING Reescrever melhorando e enxugando Programador de verdade tem vergonha de seu código antigo

Slide 46

Slide 46 text

OTIMIZAÇÃO Em aplicações web, desempenho é cartão de visita Conheça: YSlow e PageSpeed

Slide 47

Slide 47 text

Profissional PHP conhecerá NoSQL ou: muitos, muitos dados

Slide 48

Slide 48 text

NoSQL? Not Only SQL e não Not SQL Bancos de dados NÃO RELACIONAIS

Slide 49

Slide 49 text

Facebook Twitter Foursquare Quem usa? Suficiente? Disney MTV Globo Sourcefourge

Slide 50

Slide 50 text

Profissional PHP cobra bem ou: qualidade tem preço

Slide 51

Slide 51 text

Se um profissional não se valoriza o cliente não vai valorizá-lo

Slide 52

Slide 52 text

Profissional PHP às vezes age como sobrinho ou: ninguém é perfeito

Slide 53

Slide 53 text

Riscos de um profissional Egocentrismo Megalomania Onipotência Obsolescência

Slide 54

Slide 54 text

Erro de um sobrinho = PREJUÍZO Erro de um profissional = MUITO MAIS PREJUÍZO

Slide 55

Slide 55 text

herrar, digo, errar é humano admitir o erro é profissionalismo

Slide 56

Slide 56 text

Profissional PHP vai estudar até morrer ou: se parar de estudar, já morreu

Slide 57

Slide 57 text

twitter@rgou github rafaelgou http://speakerdeck.com/u/rafaelgou rafael goulart http://tech.rgou.net