Your SlideShare is downloading. ×

PHP like a super hero

302

Published on

O que é preciso aprender para tornar-se um bom programador PHP?

O que é preciso aprender para tornar-se um bom programador PHP?

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

No Downloads
Views
Total Views
302
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
5
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. PHP like aSuper Hero elton luís minetto @eminetto
  • 2. Quem são vocês?
  • 3. Quem sou eu?Graduado e pós-graduado em Ciência da ComputaçãoTrabalho com PHP/MySQL desde 2000. Trabalho com Linuxdesde 1997. Professor desde 2004.Autor do livro Frameworks para Desenvolvimento em PHP -Editora Novatec, autor do e-book Zend Framework na práticaSócio da Coderockr
  • 4. Motivação
  • 5. PHP?Por onde começo?
  • 6. PHP Namespaces Traits Orientação a objetos Banco de Dados Controle de versões Testes Frameworks ORM REST SOAIntegração contínua Xdebug APC Memcached Object Calisthenics
  • 7. First things first...
  • 8. PHP
  • 9. PHPNamespaces
  • 10. 1.<?php2.namespace CoreService;4.use ZendHttpClient as HttpClient;5.use ZendHttpRequest;6.class Auth7.{8. public function __construct($apiKey, $apiUri, $rpcUri)9.  {10.  $this->httpClient = new HttpClient();11. }12. }
  • 11. PHP Traitshttp://diogobesson.com.br/programacao/php-traits/
  • 12. PHP Servidor embutidophp -S localhost:8080 -t /var/www/projeto
  • 13. PHP pharhttp://phpmaster.com/packaging-your-apps-with-phar/
  • 14. PHP Composerhttp://getcomposer.org
  • 15. composer.json1.{2.    "minimum-stability": "dev",3.    "require": {4.        "silex/silex": "1.0.*",5.        "dms/dms": "dev-master",6.        "doctrine/common": "*",7.        "doctrine/dbal": "*",8.        "doctrine/orm": "*",9.        "symfony/validator": "*",10.        "symfony/class-loader": "*",11.        "symfony/console": "*",12.        "monolog/monolog": "*",13.        "jms/metadata": "*",14.        "jms/serializer-bundle": "*",15.        "sybio/image-workshop": "*"16.    }17.}
  • 16. Instalar dependências1.curl -s https://getcomposer.org/installer | php2.php composer.phar install
  • 17. Atualizar dependências1.php composer.phar update
  • 18. PHPFunções nativas
  • 19. Orientação a objetos
  • 20. Bancos de dados
  • 21. Bancos de dados SQL - MySQL, sqlite, PostgreSQL
  • 22. Bancos de dadosNoSQL - MongoDB, CouchDB, Cassandra, Redis, Hadoop
  • 23. Controle de versões
  • 24. Controle de versões Git, SVN, Mercurial
  • 25. Testes unitários PHPunit Mostrar os testes do modulo Api rodando. Provocar um erro colocando um novo parâmetro no método authenticate do service Auth
  • 26. Segurança e programação segura
  • 27. Segurança e programação segura https://www.owasp.org/index.php/Main_Page
  • 28. 1.$inputFilter->add($factory->createInput(array(2.                name     => title,3.                required => true,4.                filters  => array(5.                    array(name => StripTags),6.                    array(name => StringTrim),7.                ),8.                validators => array(9.                    array(10.                        name    => StringLength,11.                        options => array(12.                            encoding => UTF-8,13.                            min      => 1,14.                            max      => 100,15.                        ),16.                    ),17.                ),18.            )));
  • 29. Participe, seja social Participe de eventosParticipe de grupos de usuários regionais Escreva um blog Participe de fóruns e listas de discussão
  • 30. Ok?É isso
  • 31. Design patterns Frameworks Zend Framework Symfony Code Igniter Slim Silex Doctrine
  • 32. Design patterns
  • 33. Frameworks
  • 34. Frameworks Full-Stack Zend Framework, CakePHP, Symfony, Code Igniter
  • 35. Micro Frameworks Slim, Silex, Respect
  • 36. ORMDoctrine
  • 37. Aprenda mais de um sistema operacional Linux, Windows, MacOSX
  • 38. Tem mais? Manda!
  • 39. SOA, Rest, RPC
  • 40. Injeção de Dependências
  • 41. Performance
  • 42. Performance - Xdebug Profiling Debug
  • 43. Mostrar cachegrind.png
  • 44. Performance - Cache APC, Memcached
  • 45. Performance - Avaliação Siege, Apache ab, ySlow
  • 46. Integração contínua
  • 47. Cloud computing Amazon Web Services Heroku, PHPCloud
  • 48. Object Calisthenics Nove regras para melhorar o código http://slidesha.re/KTZM97
  • 49. Certificação
  • 50. O mais importante!
  • 51. Divirta-se no processo
  • 52. http://www.phptherightway.com
  • 53. Contato @eminettohttp://eltonminetto.net http://coderockr.com

×