$30 off During Our Annual Pro Sale. View Details »

Izhevsk PHP Meetup #1. Phalcon

Izhevsk PHP Meetup #1. Phalcon

Денис Панкратов, ресурс менеджер, EPAM Systems
Что такое Phalcon, сравнение с другими популярными фреймворками. Кому он нужен и когда его стоит использовать.

Izhevsk PHP Meetup

December 08, 2016
Tweet

More Decks by Izhevsk PHP Meetup

Other Decks in Technology

Transcript

  1. Phalcon
    Что это такое и зачем оно нужно?
    December 8, 2016

    View Slide

  2. CONFIDENTIAL 2
    Я есть неопознанный зверек…
    • Small Devil (SmD)
    • Apostol
    • Денис Панкратов
    Опыт в IT порядка 25 лет.
    • Basic, Pascal, (M)ASM, C++,
    Delphi, PHP, TCL, SQL, Java, C#,
    Человеческие судьбы ☺
    Кто я есть?

    View Slide

  3. CONFIDENTIAL 3

    View Slide

  4. CONFIDENTIAL 4
    namespace App;
    class Version {
    public static function get() {
    return "0.0.1 super beta";
    }
    }
    $ sudo ./bin/zephir compile
    $ sudo nano /etc/php5/mods-available/app.ini
    extension=app.so
    $ php -r "echo App\Version::get() . PHP_EOL;"
    0.0.1 super beta
    https://zephir-lang.com/
    Zephir - Ze(nd Engine) Ph(p) I(nt)r(mediate)

    View Slide

  5. CONFIDENTIAL 5

    View Slide

  6. CONFIDENTIAL 6
    Как рекомендует тестировать Phalcon?

    View Slide

  7. CONFIDENTIAL 7
    А что нам покажут тесты?
    https://github.com/kenjis/php-framework-benchmark

    View Slide

  8. CONFIDENTIAL 8
    А что с базой?
    orm time (ms)
    memory
    (KB)
    Doctrine ORM v2.5.2 109.81 1310.06
    Propel ORM 2.0-dev 51.32 1144.6
    Eloquent ORM
    (illuminate/database)
    v4.2.17 34.46 673.8
    Yii ActiveRecord
    1.1.16 17.84 808.48
    FuelPHP Orm 1.7.3 11.74 389.72
    Yii ActiveRecord
    2.0.6 9.09 835.82
    Phalcon ORM 2.0.8 7.25 150.05

    View Slide

  9. CONFIDENTIAL 9
    Немного из свеженького….

    View Slide

  10. CONFIDENTIAL 10
    1
    BASIC FEATURES
    2
    DATA & STORAGE
    4
    MORE...
    3
    VIEWS &
    FRONTEND
    Что мы читаем с буклетов?

    View Slide

  11. CONFIDENTIAL 11
    Где же ее использовать?
    REST приложение на базе micro-framework
    1
    Simple MVC application
    2
    HMVC/Modules application
    3
    Консольные jobs.
    4
    В условиях ограниченных ресурсов
    5
    Для реализации микросервисов…
    6

    View Slide

  12. CONFIDENTIAL 12
    MVC & HMVC

    View Slide

  13. CONFIDENTIAL 13
    PSR4 AutoLoader

    View Slide

  14. CONFIDENTIAL 14
    Dependency Injection

    View Slide

  15. CONFIDENTIAL 15
    REST (Micro framework)

    View Slide

  16. CONFIDENTIAL 16
    PHQL

    View Slide

  17. CONFIDENTIAL 17
    ORM

    View Slide

  18. CONFIDENTIAL 18
    CACHE

    View Slide

  19. CONFIDENTIAL 19
    Phalcon Developer Tools

    View Slide

  20. CONFIDENTIAL 20
    Недостатки ☹
    Не всегда можно поставить на хостинг
    1
    Хоть и есть проект incubator, но все же мало в нем компонентов
    2
    ORM слегка кастрированная… ☹ и многословная...
    3
    CLI, точнее только его пример ☺
    4
    Документация….
    5

    View Slide

  21. CONFIDENTIAL 21
    Андрес является
    одним из основных
    разработчиков Phalcon
    и его идейным
    вдохновителем
    Andres Gutierrez
    Что мы знаем о команде?
    Участвует во всех
    процессах разработки
    фреймворка.
    Eduar Carvajal
    Координация запросов
    на новые
    функциональности и
    исправления ошибок,
    тестирование,
    подготовка
    документации и
    работа с инкубатором
    Nikolaos (Nikos)
    Dimopoulos
    Зеркало основного
    сайта на русском
    языке, зеркало
    репозитория
    документации на
    русском языке,
    текущие изменения и
    исправления в
    документации на
    английском языке
    Nikolay (boston)
    Kirsh

    View Slide

  22. CONFIDENTIAL 22
    1. Типовой код http://docs.phalconphp.ru/ru/latest/reference/tutorial.html
    2. Интеграция с доктриной https://github.com/imuneer/phalcon-doctrine
    3. Примеры кода https://github.com/phalcon/mvc
    4. Инструменты разработчика http://docs.phalconphp.ru/ru/latest/reference/
    tools.html
    5. Docker-compose https://phalcon-compose.readme.io/
    6. Еще докер (Logstash, Kibana, ElasticSearch) https://github.com/phalcongelist/
    phaldock
    7. http://www.php-fig.org/psr/
    Куда бежать? Чего смотреть?

    View Slide

  23. CONFIDENTIAL 23
    ЕСТЬ ВОПРОСЫ?

    View Slide