Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Laravel e o PHP moderno

Zizaco
September 19, 2015

Laravel e o PHP moderno

Laravel e o PHP moderno

Presented on RubyConfBR 2015 (I'm serious :P)

http://zizaco.net
Luiz Fernando / Zizaco

Viés confirmatório

MongoDB
Redis
Elasticsearch
Beanstalkd
Gulp
SASS
TDD
AcceptanceTests
Teste A/B
CI
Deploy c/ 1 command.
TDD no front-end
Styleguide
Cordova
Open-source

PHP
The Right Way

"Existe muita informação obsoleta na Web que desnorteia novos programadores PHP, espalhando más práticas e códigos inseguros. PHP: Do Jeito Certo é uma referência rápida e fácil de ler"
- PHP The Right Way

rubygems.org
107k gems
packagist.org
71k packages

# gem install
$ composer require

# bundle install
$ composer install

composer.json

Conceitos > Tecnologias

<3 Javascript?

"Javascript é o PHP do front-end"
- Rafael Lyra

Love beautiful code? We do too.

Por que Laravel?

Um programador deve conhecer várias ferramentas para entender qual usar para resolver cada problema.

Focado na nova geração da Web: Startup, Inovação, Usabilidade, SEO, Performance, Estabilidade, Evolução, Melhores práticas e Produtividade.

10 formas como Laravel vai aumentar a sua produtividade

1. Migrations.
2. Eloquent ORM (ActiveRecord).
3. Validação.
4. Artisan e a linha de comando.
5. Agendamento de tarefas.
6. Helpers.
7. Testabilidade.
8. Composer e packages específicos.
9. Asset pipeline com Elixir.
10. Comunidade receptiva.

Conceitos > Tecnologias

A pergunta que não quer calar...
“mas PHP não é lerdo?”
“mas aguenta?”
“Laravel escala?”
“não fica pesado?”
“É mais rápido que ?”
“roda Crysis?”

3350 requests / minuto
55.8 requests / segundo
4.8 milhões req. / dia
144 milhões req. / mês

Conceitos > Tecnologias

<3 Javascript?
<3 Javascript?

PHP Assíncrono com ReactPHP
(Node.js like)

Node.js HTTP Server
ReactPHP HTTP Server

php7: até 70% mais rápido

Conceitos > Tecnologias

Perguntas?

Fontes
PHP The Right Way
http://br.phptherightway.com/
Rubygems.org Stats
https://rubygems.org/stats
Packagist.org Statistics
https://packagist.org/statistics
Composer Basic Usage
https://getcomposer.org/doc/01-basic-usage.md
10 formas como Laravel vai aumentar a sua produtividade - Zizaco
http://zizaco.net/formas-como-laravel-vai-aumentar-a-sua-produtividade
Travis CI: A Few Numbers - Konstantin Haase
http://blog.travis-ci.com/2012-12-17-numbers/
Web Framework Benchmarks - TechEmpower
https://www.techempower.com/benchmarks/
Async PHP With React (Laracon) - Jeremy Mikola
https://www.youtube.com/watch?v=s6xrnYae1FU
Understanding the node.js event loop - Mikito Takada
http://blog.mixu.net/2011/02/01/understanding-the-node-js-event-loop/
PHP Assíncrono com ReactPHP (PHP vs Node) - Zizaco
https://www.youtube.com/watch?v=yQxQM5Y-MpE
Zend.com: 5 Things you must know about PHP7
https://www.zend.com/en/resources/php-7
PHP 7 Benchmarks - Lorna Jane
http://www.lornajane.net/posts/2015/php-7-benchmarks

Zizaco

September 19, 2015
Tweet

More Decks by Zizaco

Other Decks in Technology

Transcript

  1. Laravel e o PHP
    moderno
    Laravel e o PHP
    moderno

    View Slide

  2. Hello!
    Programador
    Desenvolvedor web
    WebDesigner wannabe
    Leroy Merlin (Laravel)
    Sempre mais
    http://zizaco.net
    Luiz Fernando / Zizaco

    View Slide

  3. View Slide

  4. View Slide

  5. View Slide

  6. Viés confirmatório

    View Slide

  7. View Slide

  8. MongoDB
    Redis
    Elasticsearch
    Beanstalkd
    Gulp
    SASS
    TDD
    AcceptanceTests
    Teste A/B
    CI
    Deploy c/ 1 command.
    TDD no front-end
    Styleguide
    Cordova
    Open-source

    View Slide

  9. MongoDB
    Redis
    Elasticsearch
    Beanstalkd
    Gulp
    SASS
    TDD
    AcceptanceTests
    Teste A/B
    CI
    Deploy c/ 1 command.
    TDD no front-end
    Styleguide
    Cordova
    Open-source
    PHP

    View Slide

  10. PHP
    The Right Way

    View Slide

  11. "Existe muita informação obsoleta na
    Web que desnorteia novos
    programadores PHP, espalhando más
    práticas e códigos inseguros. PHP: Do
    Jeito Certo é uma referência rápida e
    fácil de ler"
    - PHP The Right Way

    View Slide

  12. View Slide

  13. 107k gems

    View Slide

  14. View Slide

  15. 71k packages

    View Slide

  16. View Slide

  17. View Slide

  18. # gem install
    $ composer require
    # bundle install
    $ composer install

    View Slide

  19. // composer.json
    {
    "name": "/",
    "require": {
    "php": ">=5.6.0",
    "symfony/http-foundation": "~2.1",
    "symfony/http-kernel": "~2.1"
    },
    "autoload": {
    "psr-0": { "": "src" }
    },
    }

    View Slide

  20. Conceitos
    Tecnologias
    >

    View Slide

  21. <3 Javascript?

    View Slide

  22. View Slide

  23. "Javascript é o PHP do front-end"
    - Rafael Lyra

    View Slide

  24. Love beautiful code?
    We do too.

    View Slide

  25. Por que Laravel?

    View Slide

  26. Um programador deve
    conhecer várias ferramentas.
    ...para entender qual usar para
    resolver cada problema.

    View Slide

  27. Focado na nova
    geração da Web
    Startup, Inovação, Usabilidade, SEO,
    Performance, Estabilidade, Evolução,
    Melhores práticas e Produtividade.

    View Slide

  28. 10 formas como
    Laravel vai aumentar
    a sua produtividade

    View Slide

  29. 1. Migrations.
    2. Eloquent ORM (ActiveRecord).

    View Slide

  30. View Slide

  31. View Slide

  32. 1. Migrations.
    2. Eloquent ORM (ActiveRecord).
    3. Validação.
    4. Artisan e a linha de comando.
    5. Agendamento de tarefas.
    6. Helpers.

    View Slide

  33. View Slide

  34. ...
    7. Testabilidade.
    8. Composer e packages específicos.

    View Slide

  35. Travis-CI numbers

    View Slide

  36. Travis-CI numbers

    View Slide

  37. View Slide

  38. ...
    7. Testabilidade.
    8. Composer e packages específicos.
    9. Asset pipeline com Elixir.

    View Slide

  39. View Slide

  40. ...
    7. Testabilidade.
    8. Composer e packages específicos.
    9. Asset pipeline com Elixir.
    10. Comunidade receptiva.

    View Slide

  41. Conceitos
    Tecnologias
    >

    View Slide

  42. A pergunta que não quer calar...
    “mas PHP não é lerdo?”
    “mas aguenta?”
    “Laravel escala?”
    “não fica pesado?”
    “É mais rápido que ?”
    “roda Crysis?”

    View Slide

  43. View Slide

  44. 3350 requests / minuto
    ...

    View Slide

  45. 3350 requests / minuto
    55.8 requests / segundo
    4.8 milhões req. / dia
    144 milhões req. / mês

    View Slide

  46. View Slide

  47. Conceitos
    Tecnologias
    >

    View Slide

  48. <3 Javascript?
    <3 Javascript?

    View Slide

  49. PHP Assíncrono
    com ReactPHP
    (Node.js like)

    View Slide

  50. Node.js HTTP Server

    View Slide

  51. ReactPHP HTTP Server

    View Slide

  52. PHP

    View Slide

  53. PHP
    php7: até 70% mais rápido

    View Slide

  54. Conceitos
    Tecnologias
    >

    View Slide

  55. Perguntas?

    View Slide

  56. Fontes
    PHP The Right Way
    http://br.phptherightway.com/
    Rubygems.org Stats
    https://rubygems.org/stats
    Packagist.org Statistics
    https://packagist.org/statistics
    Composer Basic Usage
    https://getcomposer.org/doc/01-basic-usage.md
    10 formas como Laravel vai aumentar a sua produtividade - Zizaco
    http://zizaco.net/formas-como-laravel-vai-aumentar-a-sua-produtividade
    Travis CI: A Few Numbers - Konstantin Haase
    http://blog.travis-ci.com/2012-12-17-numbers/

    View Slide

  57. Fontes
    Web Framework Benchmarks - TechEmpower
    https://www.techempower.com/benchmarks/
    Async PHP With React (Laracon) - Jeremy Mikola
    https://www.youtube.com/watch?v=s6xrnYae1FU
    Understanding the node.js event loop - Mikito Takada
    http://blog.mixu.net/2011/02/01/understanding-the-node-js-event-loop/
    PHP Assíncrono com ReactPHP (PHP vs Node) - Zizaco
    https://www.youtube.com/watch?v=yQxQM5Y-MpE
    Zend.com: 5 Things you must know about PHP7
    https://www.zend.com/en/resources/php-7
    PHP 7 Benchmarks - Lorna Jane
    http://www.lornajane.net/posts/2015/php-7-benchmarks

    View Slide