Post on 24-May-2015
description
2. Quem sou eu ?
3. '' '' '' Ethical Hacking. 4. Iniciou a carreira como sysadmin *nix em 2000. 5. Desenvolvedor web PHP e Java (j2se) desde 2005. 6. Nos ultimos 3 anos se dedicou ao sistema financeiro SicoobGois, no qual foi o responsvel pela implantao da framework symfony. 7. Atualmente, presta consultoria pela cooperativa de software sintectus. 8. 9. Agenda
10. Symfony e suas verses 11. Instalao e configurao do servidor 12. CLI Symfony 13. O model do symfony 14. As principais configuraes do symfony 15. O controller do symfony 16. O view do symfony 17. Componentes 18. Plugins para symfony 19. Integraes 20. Conhecendo o symfony
21. Framework para desenvolvimento web em PHP 5. O projeto comeou em 2005 e teve como base outros projetos open source tais como; mojavi(MVC), propel(ORM), creole(Abstrao de acesso a dados) e conceitos j existentes na framework ruby on rails, tais como scaffolding e helpers. Hoje os esforos giram em torno de uma arquitetura mais desacoplada com base em injeo de dependncias. 22. MVC... 23. Conhecendo o symfony
24. Comunidade de desenvolvedores PHP, liderada por Fabien Potencier(SENSIOLABS). 25. Conhecendo o symfony
26. Utiliza a licena open source creative commons, todo o desenvolvimento regido pelas filosofias DRY, KISS e eXtreme Programming, svn+trac . 27. Conhecendo o symfony
28. Conhecendo o symfony
29. Aps 4 anos de projeto, desconheo uma falha publica de segurana no core do symfony. 30. Uma vez dominado, a produtividade maravilhosa. Trata-se de um projeto *RICO* e no complexo. 31. De acordo com artigos e testes de benchmark's(Elton Minetto, review da IBM, etc..), possui uma excelente performance. 32. Conhecendo o symfony
33. O trabalho de maquina deve ser feito por maquina, sendo assim temos: 34. menos cdigo -> menos complexidade -> menos bugs -> maior produtividade -> mais tempo -> mais $ 35. Symfony e suas verses
36. - Padres de projeto como MVC, ORM, Front controller. Suporte a SCAFFOLDING/CRUD, helpers, Web Debug Toolbar, altamente configuravel(YAML) e gerador de cdigo legivel e documentado. 37. - Arquitetura taxada por ser monoltica, tendo dependncias hardcoded excecivas entre as classes, maior dificuldade de integrao entre tecnologias distintas. 38. Symfony e suas verses
39. - Doctrine nativo(ds da 1.2). 40. - Php 5.2.4. 41. - Remoo de features deprecated's da verso 1.3. 42. - LTS(At final de 2012). 43. - Nova engine de Forms, com a criao dos componentes sfForm, sfValidators e sfWidget, alm da criao do componente EventDispatcher, garantindo um menor acoplamento entre as classes do controller e view. 44. Symfony e suas verses
45. Criao dos novos componentes; Dependency Injection Container, Templating Framework, Routing, Forms, Output Escaping e Controller Handling que passaro a utilizar as novas features do PHP 5.3. O objetivo termos uma framework altamente desacoplvel, baseada na arquitetura microkernel de modo a garantir uma melhor integrao, seja com outras frameworks ou tecnologias php's distintas. 46. Symfony 1.0 47. Symfony 1.1 48. Symfony 2.0 49. Novos componentes do 2.0 50. Instalao e configurao do servidor
51. - apt-get 52. - Svn svn checkout http://svn.symfony-project.com/branches/1.4 53. - pear channel-discover pear.symfony-project.com; pear install symfony/symfony-1.4.1 54. - Sandbox/"Vendorize" wget http://www.symfony-project.org/get/sf_sandbox_1_4.tgz; tar -xvzf sf_sandbox_1_4.tgz -C /var/www/; mv sf_sandbox sf14; ls -la /var/www/sf14 55. Instalao e configurao do servidor
56. echo "127.0.0.1 symfony" >> /etc/hosts 57.
58. DocumentRoot /var/www/sf14/web 59. DirectoryIndex index.php 60. Alias /sf /var/www/sf14/lib/vendor/symfony/data/web/sf 61. 62. AllowOverride All Allow from All 63. 64.
66. Estrutura de diretrios 67. CLI Symfony 68. O model do symfony
69. ORM: Propel X Doctrine 70. databases.yml 71. php symfony doctrine:build-schema 72. schema.yml (Possibilidade de alterar os nomes das classes, trabalhar com pacotes) 73. php symfony doctrine:build-model; php symfony doctrine:build-forms; php symfony doctrine:build-filters 74. Criao de rotas 75. php symfony doctrine:generate-admin aplicacao nomeRota 76. Objetos e Metodos mais utilizados 77. Query's -> Criteria X ActiveRecord 78. YAML
79. As principais configuraes do symfony
80. Banco de dados
81. - Mais de um banco de dados ? Configuraes da aplicao 82. Configuraes do modulo 83. Regionalizao 84. Internacionalizao 85. Templates 86. Validao 87. Autoload 88. Roteamento 89. Log 90. Cache (Cache em disco, em banco, memcache, zendCachePlugin, varios outros plugins) 91. O controller do symfony
92. Objetos e Mtodos mais utilizados 93. Variveis de sesso 94. Validao 95. Retornando JSON 96. O view do symfony
97. Layout 98. Templates 99. Tableless 100. Ajax 101. Flex (sfAmfPlugin, weborb, sabreamf...) 102. Form's 103. EmbeddedForms's 104. Widget's 105. Validaes 106. Componentes
Slots
Components
Component Slots
107. Plugins para o symfony
108. sfGuard 109. Jquery / UI 110. Prototype 111. Flex 112. sfDateTimePlugin 113. Ext 114. ... 115. Integraes / Ambiente
116. Documentao -> PhpDocumentor 117. Modelagem -> DBDesigner 118. Cdigo symfony em aplicaes php 119. Aplicaes php no symfony 120. Webservices 121. PEAR 122. IDE's: Eclipse(PDT, APTANA, sfeclipse, symfoclipse, sfdt) X Netbeans 123. Svn, Git 124. Redmine, Trac 125. Obrigado!
126. -http://www.symfony-project.org/ 127. - http://components.symfony-project.org/ 128. -http://fabien.potencier.org/ 129. Contato:
130. http://marcelomf.blogspot.com 131. http://www.slideshare.com/marcelomf 132. http://twitter.com/marcelomf