image

В начале июня в офисе Mail.Ru Group прошла восьмая встреча сообщества Symfony Moscow Meetup — разработчиков на PHP/Symfony2. Здесь обсуждались вопросы разработки веб-приложений и смежные технологии, участники обменивались опытом и последними техническими новостями. Ну и, конечно, было много общения в неформальной обстановке. На встрече было представлено 4 доклада. Предлагаем ознакомиться с записями и презентациями выступлений.

Александр Лисаченко, Alpari

«Решение вопросов сквозной функциональности в приложениях»

Каждый из нас любит писать чистый объектно-ориентированный код, но всегда есть сквозная функциональность, которая не может быть решена с помощью объектного кода, такая как логирование, кэширование, авторизация и многое другое. Существуют ли пути для решения этих вопросов со сквозной функциональностью? Устали ли вы от постоянного повторения одних и тех же строчек кода во всех методах классов? Из доклада вы узнаете эффективные способы борьбы с таким кодом.


Видеозапись выступления: it.mail.ru/video/715

Aлексей Медведев, Alpari

«Enterprise-инфраструктура менеджмента PHP-пакетов в рамках компании»

В докладе было рассказано, как в Альпари разворачивали локальную систему менеджмента пакетов на базе Composer, Packagist и git-фронтенда Gitweb; а также как работают с приватными пакетами и почему при сборке приложений зависимости никогда не выкачиваются напрямую с GitHub.

Кроме того, будет несколько слов о том, что находится под капотом у Packagist, когда, как и зачем его разворачивать у себя в компании, какие есть альтернативные Composer-репозитории пакетов и в каких случаях их удобно использовать.


Видеозапись выступления: it.mail.ru/video/716

Максим AloneCoder Попов, Mail.Ru Group

«Асинхронные запросы в MySQL или когда PDO становится мало»

В докладе было рассмотрено, зачем нужны и в чем преимущества асинхронных выборок из MySQL, а также как мы используем MySQLi и PDO вместе.


Видеозапись выступления: it.mail.ru/video/717

Руслан Ханов

«Контейнер сервисов — Что? Где? Когда?»

В докладе были рассмотрены типичные примеры и антипаттерны того, что обычно помещают в контейнеры, зачем это делают и каким образом.


Видеозапись выступления: it.mail.ru/video/718
Поделиться с друзьями
-->

Комментарии (13)


  1. M-A-XG
    22.06.2016 17:18
    -7

    >Каждый из нас любит писать чистый объектно-ориентированный код

    Кто это любит?
    Никто не любит.

    >Решение вопросов сквозной функциональности в приложениях

    Я манал так решать.
    У меня и проблем таких нет :)


    1. akubintsev
      22.06.2016 17:47

      Счастливый человек :)

      А мне идея понравилась с логгированием с помощью AOP.
      Когда дофига серверной логики наворочено, то логгировать приходится много и код разрастается прилично от строк, вызывающих один лишь логгер.


      1. Fesor
        22.06.2016 18:34
        +1

        Декорация. И ничего не раздувается. И все явно, просто в тестировании и т.д.


    1. Fesor
      22.06.2016 18:35
      +4

      У меня и проблем таких нет :)


      вы считаете код битрикса чем-то чему стоит подражать. Это уже о многом говорит.


      1. M-A-XG
        22.06.2016 19:21
        -5

        1. У меня как бы не код Битрикса. А только интерфейс всего одного метода API.
        2. Вы просто слепы и не способны оценить красоту игры.


        1. oxidmod
          22.06.2016 19:34
          +5

          вы просто не способны понять свою никчемность как специалиста


        1. Fesor
          22.06.2016 20:36
          +1

          Вы просто слепы и не способны оценить красоту игры.


          https://youtu.be/9-eazu7FQEg?t=1m39s


  1. zaartix
    22.06.2016 17:25

    > Enterprise-инфраструктура менеджмента PHP-пакетов в рамках компании

    и

    > Контейнер сервисов — Что? Где? Когда?

    имеют одинаковые ссылки на видео


  1. Fesor
    22.06.2016 18:34
    +2

    но всегда есть сквозная функциональность, которая не может быть решена с помощью объектного кода


    Опять АОП… Опять неявная магия, метапрограммирование и т.д. Опять на ровном месте усложняется тестирование.


  1. NightTiger
    22.06.2016 20:54

    Могу удивить, но тестировать код с АОП легче. А легче потому, что не нужно мокать зависимости типа логгера, кэша и т.д. Проверяется только нужная логика.


    1. Fesor
      22.06.2016 21:02

      А легче потому, что не нужно мокать зависимости типа логгера, кэша и т.д.


      при декорации их тоже не нужно мокать.


    1. Fesor
      22.06.2016 22:48
      +1

      что бы быть не голословным:


      https://gist.github.com/fesor/c643e11a3191949642b90e9260163da1


      тут у нас есть реализация нейкого сервиса, тест к нему (заметте что реализация сервиса ничего не знает о дополнительных штуках вроде логирования и как следствие никаких моков логов там нет), декоратор и тест к нему (аспекты ж тоже надо тестировать, так?)


  1. JekaRu
    22.06.2016 21:11

    Кстати, следить за анонсами наших будущих митапов можно тут — http://www.meetup.com/Symfoniacs/