Adote um framework!
Q vergonha




                 @leohackin




Léo Hackin (Rá-kim)
E-commerce
   Consultoria
 Desenvolvimento
www.giran.com.br
+
Kim
Já trampou com PHP
 macarronada e tudo mais
Já trabalhou com designers

   Hoje usa frameworks

        E é feliz :)
Pensa rápido! Qual a forma mais
efetiva de parafusar um parafuso
  bem parafusado na parede?
Com uma chave de fenda?




Não! Com um martelo
   seu jegue... ¬¬
A-há! Sempre
    tem!




Mas será que não tem um
jeito mais melhor não? =(
Linguagem para apps simples

POGramadores doidões
Baixa remuneração
Não testam nada
Fazem tudo na coxa

Não servem pra sis...
Já falaram o que pra você?
Macarronada não é ruim,
mas a longo prazo ...

           engorda
       te deixa lento
      é difícil de digerir
As pessoas não fazem do jeito
    mais MELHOR por que ...


Ei gatinha
                  Não conhecem novas
              ...
As pessoas não fazem do jeito
  mais MELHOR por que ...


              Acham que o que elas
               fazem é perfei...
As pessoas não fazem do jeito
  mais MELHOR por que ...


               É ruim porque
             demora, e tempo é
    ...
As pessoas não fazem do jeito
  mais MELHOR por que ...
      Simplemesmente não sabem por
     onde começar para melhorar...
Você faz Texto seu jeito
          do
   mais melhor?
Qual o problema nisso?
1) Designers
Eles nos odeiam porque
     sempre reclamamos que
      eles ƒ.... nosso código

     a culpa é sempre deles?
Claro que
  ...
Eu gosto de design e
      programação ...




      Designers! Me
adicionem: @wbotelhos!
      Vamos trocar
     figureeee...
2) CSS/HTML
O programador tem contato direto com o CSS/
                  Atrito ????
HTML gerado pelo designer e sempre a...
3) Regras de negócio
Regras de negócio mal definidas (ou
inexistentes), espalhadas pelo código e
repetidas com “alteraçõezi...
4) Métodos espalhados
Métodos espalhados pela aplicação com nomes
bizarros e/ou funcionalidades redundantes


            ...
5) Manutenção custosa
Se você precisa alterar uma regra de negócio,
você tem que procurar por sua aplicação toda
para alte...
6) Despadronização
Não existe um padrão definido de
desenvolvimento. Cada desenvolvedor faz do
jeito que sabe e que quer.
Meu monstro preferido

Crescimento descontrolado
Manutenção dificil (as vezes impossível)
Geralmente vulnerável ao Truck Fa...
PAPAI!!!!!
Alguém aí tem um monstro?
ADOTE UMA
FRAMEWORK MVC! :D
FRAMEWORK MVC
Conjunto de classes implementadas em uma
linguagem específica, usadas para auxiliar o
desenvolvimento de soft...
O que é o MVC?
    Padrão de arquitetura de software

    Separação da aplicação em três partes:




                   Pr...
O que você ganha com isso
Muita coisa já pronta, testada e funcional
Trabalho com Orientação à Objetos REAL
Muito mais pro...
Como funciona, tio ?

                                       Browser envia requisição à aplicação
                        ...
Desculpinhas ...
“Já tá bom demais do jeito que eu
tô fazendo: includes e funções. Tem
 um função que eu uso desde meu
   primeiro admin! I...
“Mas o sistema está pronto: é soh
Ctrl+C, Ctrl+V e mudar o nome dos
         campos. SUSSA!”
“Putz! Mas eu nem sei o que é
esse negoço de MVC, ORM ...
 (...) Tudo orientado a objeto?
Meu Deus ... f*&%$* mermão!”
“Mané orientação a objetos.
 Meus includes dão conta do
recado tranquilo tranquilo. OO
   é pro Java! blargh! ~o~”
“O cliente disse que é soh essa
listagenzinha de produtos e não
      precisa de mais nada.”
Eu gosto de Flash e
              odeio frameworks e
                    HTML !




                               Sou web...
Qual a sua desculpa ?
Medo de ferrar tudo   o.O
Preguiça .... ZZZzzzzZZZ
Comodismo ... ¬¬’
Se expor para e equipe e
passar vergonha ...
Perder tempo e meu chefe
me dar um baita esporro
Essas letrinhas não te dizem
nada de nada ...
As pessoas não fazem do jeito
   mais MELHOR por que ...

Vc aqui
denovo?             Não conhecem novas
                 ...
Isso tudo é normal ... :)
Tentando convencer ...
Elas já estão bem
difundidas, com boa
documentação e geralmente
tem uma curva de
aprendizado mínima
Conhecimento público

Fóruns, documentação,
exemplos ... comunidade!
Constante evolução




Patches, novos módulos, correção de bugs,
melhorias, E VAMO SIMBORA ...
Se o dono morrer, sua
empresa não morre junto
É mais barato de manter :)
É mais barato desenvolver :D
Uso de design patterns

    soluções para problemas comuns
         testados e refatorados
     por programadores experien...
Plugins e extensões a rodo!

controle de sessão          internacionalização

  email
              upload
               ...
MVC é o que há

        model (dados e regras de negócio)
               view (visualizações)
controller (busca dados no m...
Auto-reciclagem
         Design Patterns
       Orientação à Objetos
       TDD / BDD / Testes :)
        Controle de vers...
As dúvidas técnicas
geralmente morrem em um
ou dois meses de projeto
Maturidade para soluções corporativas
OO verdadeiro
Remuneração “de gente”
Montes e montes de documentação
Diminui a calvi...
Dicas pra começar
Inicie com projetos
pequenos (uma semana ou
duas) pra pegar o jeito
Não seja radical no início
Conheça os pontos fortes e fracos da
framework e veja se ela vai se encaixar no seu
trabalho.
Escolha alguém para ser o
líder de estudos da
framework e depois faça um
hands-on
Entre nos fóruns e listas de
discussão do framework
Torne hábito ...

            Escrever testes

        Usar controle de versão

    Tentar fazer integração contínua

    ...
Invente, tente ...
As que eu posso falar ...
Fácil de aprender
Boa documentação
ORM embutido
Comunidade f*da
Meio lento :(
Mais enxuto
Aprendizado tranquilo
Boa documentação
ORM não embutido
Mas é rápido :)
Alguém conhece alguma?
Alguém já tentou usar ?
Qual os problemas rolaram?
VALEW! :)

leohackin@gmail.com
@leohackin
www.leohackin.com.br
PHPZEIRO: Adote um framework
PHPZEIRO: Adote um framework
PHPZEIRO: Adote um framework
PHPZEIRO: Adote um framework
PHPZEIRO: Adote um framework
PHPZEIRO: Adote um framework
Upcoming SlideShare
Loading in …5
×

PHPZEIRO: Adote um framework

946 views

Published on

É notável a quantidade de aplicações em PHP que ainda utilizam nosso velho e conhecido modo Macarrônico de programar: dezenas de snippets e blocos de código que trabalham com regras de negócio, apresentação e tudo mais espalhados por N lugares na aplicação. A solução mais sustentável para esse tipo de situação seja provavelmente a adoção de um framework, mas existe uma resistência muito grande que é completamente justificável: voltamos àquelas perguntas relativas à “para que mexer num time que está ganhando?“. Vamos trabalhar um pouco essa idéia mostrando exemplos e confrontando situações reais.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
946
On SlideShare
0
From Embeds
0
Number of Embeds
18
Actions
Shares
0
Downloads
13
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

PHPZEIRO: Adote um framework

  1. 1. Adote um framework!
  2. 2. Q vergonha @leohackin Léo Hackin (Rá-kim)
  3. 3. E-commerce Consultoria Desenvolvimento www.giran.com.br
  4. 4. + Kim
  5. 5. Já trampou com PHP macarronada e tudo mais Já trabalhou com designers Hoje usa frameworks E é feliz :)
  6. 6. Pensa rápido! Qual a forma mais efetiva de parafusar um parafuso bem parafusado na parede?
  7. 7. Com uma chave de fenda? Não! Com um martelo seu jegue... ¬¬
  8. 8. A-há! Sempre tem! Mas será que não tem um jeito mais melhor não? =(
  9. 9. Linguagem para apps simples POGramadores doidões Baixa remuneração Não testam nada Fazem tudo na coxa Não servem pra sistemas “sérios”
  10. 10. Já falaram o que pra você?
  11. 11. Macarronada não é ruim, mas a longo prazo ... engorda te deixa lento é difícil de digerir
  12. 12. As pessoas não fazem do jeito mais MELHOR por que ... Ei gatinha Não conhecem novas formas de alcançar o que desejam Ui
  13. 13. As pessoas não fazem do jeito mais MELHOR por que ... Acham que o que elas fazem é perfeito, dá conta do recado ou “dá pro gasto”
  14. 14. As pessoas não fazem do jeito mais MELHOR por que ... É ruim porque demora, e tempo é dinheiro!
  15. 15. As pessoas não fazem do jeito mais MELHOR por que ... Simplemesmente não sabem por onde começar para melhorar seu desempenho ou resolver seus problemas.
  16. 16. Você faz Texto seu jeito do mais melhor?
  17. 17. Qual o problema nisso?
  18. 18. 1) Designers
  19. 19. Eles nos odeiam porque sempre reclamamos que eles ƒ.... nosso código a culpa é sempre deles? Claro que Blastoise é!!! ¬¬
  20. 20. Eu gosto de design e programação ... Designers! Me adicionem: @wbotelhos! Vamos trocar figureeeeenhas!
  21. 21. 2) CSS/HTML O programador tem contato direto com o CSS/ Atrito ???? HTML gerado pelo designer e sempre acaba NOFA! entrando em atrito com o mesmo. ADORO! :D
  22. 22. 3) Regras de negócio Regras de negócio mal definidas (ou inexistentes), espalhadas pelo código e repetidas com “alteraçõezinhas” Notícia tem Tem sim. data de cadastro? Se não deu Mas nesse form pau, tá SUSSA! não tem data.
  23. 23. 4) Métodos espalhados Métodos espalhados pela aplicação com nomes bizarros e/ou funcionalidades redundantes 2010-08-28 28/08/2010 28.08.2010
  24. 24. 5) Manutenção custosa Se você precisa alterar uma regra de negócio, você tem que procurar por sua aplicação toda para alterar isso.
  25. 25. 6) Despadronização Não existe um padrão definido de desenvolvimento. Cada desenvolvedor faz do jeito que sabe e que quer.
  26. 26. Meu monstro preferido Crescimento descontrolado Manutenção dificil (as vezes impossível) Geralmente vulnerável ao Truck Factor Difícil evolução Tendencia a crescer via POG
  27. 27. PAPAI!!!!!
  28. 28. Alguém aí tem um monstro?
  29. 29. ADOTE UMA FRAMEWORK MVC! :D
  30. 30. FRAMEWORK MVC Conjunto de classes implementadas em uma linguagem específica, usadas para auxiliar o desenvolvimento de software.
  31. 31. O que é o MVC? Padrão de arquitetura de software Separação da aplicação em três partes: Processa os eventos da aplicação A apresentação da informação Os dados da aplicação
  32. 32. O que você ganha com isso Muita coisa já pronta, testada e funcional Trabalho com Orientação à Objetos REAL Muito mais produtividade Separação do que a aplicação faz de como ela mostra Mais tempo pra pensar nos problemas reais Não precisa re-inventar a roda Ganha tempo ... e tempo ... você sabe.
  33. 33. Como funciona, tio ? Browser envia requisição à aplicação O controller processa a ação O controller processa a requisição e acessa a lógica de negócio (model) da aplicação O model acessa a base de dados da aplicação para executar a ação requisitada pelo controller O controller então seleciona a view correspondente a ação O controller renderiza a view Mysql, Postgres, incluindo os dados de resposta Oracle e muitos da ação outros O controller devolve a resposta para o browser http://site/hello
  34. 34. Desculpinhas ...
  35. 35. “Já tá bom demais do jeito que eu tô fazendo: includes e funções. Tem um função que eu uso desde meu primeiro admin! It’s Amazing!!!”
  36. 36. “Mas o sistema está pronto: é soh Ctrl+C, Ctrl+V e mudar o nome dos campos. SUSSA!”
  37. 37. “Putz! Mas eu nem sei o que é esse negoço de MVC, ORM ... (...) Tudo orientado a objeto? Meu Deus ... f*&%$* mermão!”
  38. 38. “Mané orientação a objetos. Meus includes dão conta do recado tranquilo tranquilo. OO é pro Java! blargh! ~o~”
  39. 39. “O cliente disse que é soh essa listagenzinha de produtos e não precisa de mais nada.”
  40. 40. Eu gosto de Flash e odeio frameworks e HTML ! Sou webdesigner! Que que é framework? @leozamprogno S2 @coradini
  41. 41. Qual a sua desculpa ?
  42. 42. Medo de ferrar tudo o.O
  43. 43. Preguiça .... ZZZzzzzZZZ Comodismo ... ¬¬’
  44. 44. Se expor para e equipe e passar vergonha ...
  45. 45. Perder tempo e meu chefe me dar um baita esporro
  46. 46. Essas letrinhas não te dizem nada de nada ...
  47. 47. As pessoas não fazem do jeito mais MELHOR por que ... Vc aqui denovo? Não conhecem novas formas de alcançar o que desejam Pois é!
  48. 48. Isso tudo é normal ... :)
  49. 49. Tentando convencer ...
  50. 50. Elas já estão bem difundidas, com boa documentação e geralmente tem uma curva de aprendizado mínima
  51. 51. Conhecimento público Fóruns, documentação, exemplos ... comunidade!
  52. 52. Constante evolução Patches, novos módulos, correção de bugs, melhorias, E VAMO SIMBORA ...
  53. 53. Se o dono morrer, sua empresa não morre junto
  54. 54. É mais barato de manter :) É mais barato desenvolver :D
  55. 55. Uso de design patterns soluções para problemas comuns testados e refatorados por programadores experientes continuamente de conhecimento de todos
  56. 56. Plugins e extensões a rodo! controle de sessão internacionalização email upload autenticação ajax tabelas paginação
  57. 57. MVC é o que há model (dados e regras de negócio) view (visualizações) controller (busca dados no model - escolhe a view) separa tudo, poupa stress com eles
  58. 58. Auto-reciclagem Design Patterns Orientação à Objetos TDD / BDD / Testes :) Controle de versão Integração contínua blablablablablabla ...
  59. 59. As dúvidas técnicas geralmente morrem em um ou dois meses de projeto
  60. 60. Maturidade para soluções corporativas OO verdadeiro Remuneração “de gente” Montes e montes de documentação Diminui a calvicie Adoção por grandes empresas
  61. 61. Dicas pra começar
  62. 62. Inicie com projetos pequenos (uma semana ou duas) pra pegar o jeito
  63. 63. Não seja radical no início Conheça os pontos fortes e fracos da framework e veja se ela vai se encaixar no seu trabalho.
  64. 64. Escolha alguém para ser o líder de estudos da framework e depois faça um hands-on
  65. 65. Entre nos fóruns e listas de discussão do framework
  66. 66. Torne hábito ... Escrever testes Usar controle de versão Tentar fazer integração contínua Estudar ... estudar ... estudar!
  67. 67. Invente, tente ...
  68. 68. As que eu posso falar ...
  69. 69. Fácil de aprender Boa documentação ORM embutido Comunidade f*da Meio lento :(
  70. 70. Mais enxuto Aprendizado tranquilo Boa documentação ORM não embutido Mas é rápido :)
  71. 71. Alguém conhece alguma?
  72. 72. Alguém já tentou usar ?
  73. 73. Qual os problemas rolaram?
  74. 74. VALEW! :) leohackin@gmail.com @leohackin www.leohackin.com.br

×