Save 37% off PRO during our Black Friday Sale! »

PHP like a super hero

PHP like a super hero

Dicas de como iniciar no PHP e tornar-se um expert na linguagem

0227f6274b8a6cce078d7f8a91460c41?s=128

Elton Minetto

August 27, 2012
Tweet

Transcript

  1. PHP like a Super 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ção

    Trabalho com PHP/MySQL desde 2000. Trabalho com Linux desde 1997. Professor desde 2004. Autor do livro Frameworks para Desenvolvimento em PHP - Editora Novatec, autor do e-book Zend Framework na prática Sócio da Coderockr
  4. Motivação

  5. None
  6. PHP? Por onde começo?

  7. None
  8. PHP Namespaces Traits Orientação a objetos Banco de Dados Controle

    de versões Testes Frameworks ORM REST SOA Integração contínua Xdebug APC Memcached Object Calisthenics
  9. None
  10. First things first...

  11. PHP

  12. PHP Namespaces

  13. 1.<?php 2.namespace Core\Service; 4.use Zend\Http\Client as HttpClient; 5.use Zend\Http\Request; 6.class

    Auth 7.{ 8. public function __construct($apiKey, $apiUri, $rpcUri) 9. { 10. $this->httpClient = new HttpClient(); 11. } 12. }
  14. PHP Traits http://diogobesson.com.br/programacao/php-traits/

  15. PHP Servidor embutido php -S localhost:8080 -t /var/www/projeto

  16. PHP phar http://phpmaster.com/packaging-your-apps-with-phar/

  17. PHP Composer http://getcomposer.org

  18. composer.json 1.{ 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.}
  19. Instalar dependências 1.curl -s https://getcomposer.org/installer | php 2.php composer.phar install

  20. Atualizar dependências 1.php composer.phar update

  21. PHP Funções nativas

  22. Orientação a objetos

  23. Bancos de dados

  24. Bancos de dados SQL - MySQL, sqlite, PostgreSQL

  25. Bancos de dados NoSQL - MongoDB, CouchDB, Cassandra, Redis, Hadoop

  26. Controle de versões

  27. Controle de versões Git, SVN, Mercurial

  28. None
  29. None
  30. None
  31. None
  32. 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
  33. Segurança e programação segura

  34. Segurança e programação segura https://www.owasp.org/index.php/Main_Page

  35. 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. )));
  36. Participe, seja social Participe de eventos Participe de grupos de

    usuários regionais Escreva um blog Participe de fóruns e listas de discussão
  37. Ok? É isso

  38. None
  39. Design patterns Frameworks Zend Framework Symfony Code Igniter Slim Silex

    Doctrine
  40. None
  41. Design patterns

  42. Frameworks

  43. Frameworks Full-Stack Zend Framework, CakePHP, Symfony, Code Igniter

  44. Micro Frameworks Slim, Silex, Respect

  45. ORM Doctrine

  46. Aprenda mais de um sistema operacional Linux, Windows, MacOSX

  47. Tem mais? Manda!

  48. SOA, Rest, RPC

  49. Injeção de Dependências

  50. Performance

  51. Performance - Xdebug Profiling Debug

  52. Mostrar cachegrind.png

  53. Performance - Cache APC, Memcached

  54. None
  55. Performance - Avaliação Siege, Apache ab, ySlow

  56. Integração contínua

  57. Cloud computing Amazon Web Services Heroku, PHPCloud

  58. Object Calisthenics Nove regras para melhorar o código http://slidesha.re/KTZM97

  59. Certificação

  60. None
  61. None
  62. O mais importante!

  63. Divirta-se no processo

  64. http://www.phptherightway.com

  65. Contato @eminetto http://eltonminetto.net http://coderockr.com