Boas Práticas, Práticas !

2,869 views

Published on

Boas práticas para desenvolvimento de sistemas em PHP.

Published in: Technology

Boas Práticas, Práticas !

  1. 1. Boas Práticas, Práticas ! Augusto Pascutti
  2. 2. Porquê?
  3. 3. Como você encara uma mudança?
  4. 4. Assim ?
  5. 5. Deveria ser assim !
  6. 6. Não convenci ?!
  7. 7. E se ...
  8. 8. quem fosse mexer ...
  9. 9. no seu código,
  10. 10. soubesse onde você mora?
  11. 11. E fossem esses caras !?
  12. 12. Para quê ?
  13. 13. Fácil de ler
  14. 14. Fácil de modificar
  15. 15. Fácil de melhorar
  16. 16. Fácil de corrigir
  17. 17. + phpinga !
  18. 18. Coisas erradas ...
  19. 19. Use a última versão
  20. 20. Ame os erros
  21. 21. ini_set(‘display_errors’,’On’);
  22. 22. error_reporting()
  23. 23. E_NOTICE
  24. 24. E_STRICT
  25. 25. E_ALL
  26. 26. - Tenha objetivos - Mensurar melhoras Saiba pra onde ir
  27. 27. Tenha objetivos
  28. 28. Mensure suas melhoras
  29. 29. O tempo não pára
  30. 30. - Roberta Close - Aparências enganam - Um belo design não esconde um código ruim; - Um dia ele falha Não julgue o livro pela capa
  31. 31. As aparências enganam
  32. 32. Código ruim, é ruim !
  33. 33. Não importa o design ...
  34. 34. Dèjá Vu
  35. 35. ou CTRL+C & CTRL+V
  36. 36. ou MGTC
  37. 37. - Um framework não torna você melhor O problema é você
  38. 38. Certas coisas nunca mudam
  39. 39. Conhecimento é conhecimento
  40. 40. Quanto mais queijo
  41. 41. Menos queijo !
  42. 42. É conhecimento na faixa ! Software Livre
  43. 43. Aprenda com código de outros
  44. 44. Contribua ...
  45. 45. Você aprende mais !
  46. 46. Ao repetir uma tarefa, você vai fazê-la melhor Pelo menos digitar melhor você vai Kumon funciona
  47. 47. Arte da repetição
  48. 48. Cada vez melhor
  49. 49. Pelo menos a digitação
  50. 50. História do “opinião de peso” Engordem
  51. 51. Filósofos são gordos.
  52. 52. Preferem estudar a se exercitar
  53. 53. Por isso têm “Opinião de Peso”
  54. 54. Não acredite em tudo.
  55. 55. Papai Noel não existe
  56. 56. Nem o coelhinho da Páscoa
  57. 57. Boas Práticas Gerais
  58. 58. RTFM
  59. 59. DRY Don’t Repeat Yourself
  60. 60. KISS
  61. 61. YAGNI
  62. 62. Less is More
  63. 63. Simples é difícil !
  64. 64. < 80 colunas
  65. 65. < 4 condicões aninhadas
  66. 66. < 4 argumentos
  67. 67. Mão na Massa
  68. 68. Escolha um paradigma
  69. 69. Estruturado
  70. 70. Não é Spaguetti
  71. 71. Orientação a Objetos
  72. 72. Escolha uma ferramenta
  73. 73. Domine a ferramenta
  74. 74. Netbeans
  75. 75. Padronize
  76. 76. Encoding
  77. 77. - 80 colunas - Máximo 120 - Tab ou Espaço Identação
  78. 78. - Arquivos; - Variaveis; - Classes; - Métodos; - Cadê minha função ? Nomenclatura
  79. 79. - Espaço em condições - { Chaves } Código
  80. 80. Existentes: Pear ou Zend
  81. 81. Configuração do PHP
  82. 82. register_globals = off
  83. 83. output_buffering = on
  84. 84. magic_quotes_gpc = off
  85. 85. allow_url_fopen = off
  86. 86. Não documente
  87. 87. Código ruim ...
  88. 88. comentado.
  89. 89. Continua sendo ruim
  90. 90. PHPDoc.org
  91. 91. Esqueça a Performance
  92. 92. Isso se arruma
  93. 93. A qualidade do código não
  94. 94. Hardware é mais barato
  95. 95. Bom código se muda rápido
  96. 96. Nunca esqueça da Segurança
  97. 97. Filtre TODO input
  98. 98. *_escape_string()
  99. 99. Filtre TODO output
  100. 100. htmlentities()
  101. 101. Quanto menos INPUT/OUTPUT
  102. 102. melhor !
  103. 103. .htaccess
  104. 104. Output Buffer
  105. 105. Refatore != Funcionalidade
  106. 106. Nova funcionalidade
  107. 107. Melhora existentes
  108. 108. Refatore
  109. 109. Refatore de novo !
  110. 110. Porquê ?
  111. 111. Ao refatorar você lê !
  112. 112. Entende mais o programa
  113. 113. Melhora estrutura do código
  114. 114. Melhora leitura para outros
  115. 115. Previne câncer !
  116. 116. Refatorar é bom ?
  117. 117. Necessário !!!!
  118. 118. Cabeça do Homem x Cabeça da Mulher Encapsule
  119. 119. Complexidade x Modularidade
  120. 120. Especialização
  121. 121. Ninguém sabe tudo ...
  122. 122. HTML CSS JS Requisições Regras Negócio Banco
  123. 123. Como ?
  124. 124. Dividir e conquistar !
  125. 125. Funções/Classes
  126. 126. Lembre-se:
  127. 127. Uma função recebe ...
  128. 128. e retorna !
  129. 129. Solução genérica !
  130. 130. Não ser vem só pra layout: menu, cabeçalho e banco Arquivos de Include
  131. 131. menu.php rodape.php Não deveriam ser templates
  132. 132. functions.inc.php Não deveriam ser genéricos
  133. 133. do mesmo tipo, por favor Agrupam funções
  134. 134. Como Classes !
  135. 135. Tá tudo ferrado, e agora ?
  136. 136. Estabeleça os padrões
  137. 137. Encapsule includes
  138. 138. Encapsule URLs
  139. 139. Encapsule todo código antigo
  140. 140. Migre aos poucos
  141. 141. Augusto Pascutti augusto@phpsp.org.br Twitter: augustohp gtalk: augusto.hp

×