PHP-Дайджест № 78 – интересные новости, материалы и инструменты (18 – 31 января 2016)



    Предлагаем вашему вниманию очередную подборку со ссылками на новости и материалы.

    Приятного чтения!


    Новости и релизы




    PHP


    • RFC: Generalize support of negative string offsets — В некоторых функциях работы со строками поддерживается отрицательное значение позиции. Предлагается реализовать такую возможность во всех соответствующих функциях, а также при обращении к строке как к массиву:
      $str = 'text'; echo $str[-1];
    • RFC: Add HTTP/2 Support to the CLI Server — Предлагается реализовать поддержку HTTP/2 во встроенном веб-сервере PHP.


    Инструменты


    • hirak/prestissimo — Плагин Composer для параллельной установки пакетов. Значительно ускоряет установку зависимостей.
    • marcioAlmada/yay — Препроцессор для PHP. Позволяет расширять PHP описывая новые возможности в виде макросов. Просто взгляните на примеры.
    • filp/whoops 2.0.0 — Красивые и информативные страницы ошибок и необработанных исключений.
    • tarantool-php/queue — PHP биндинги для Tarantool Queue. Прислал rybakit.
    • thephpleague/commonmark — Парсер Markdown. Видеообзор использования.
    • soy-php/soy — Инструмент для запуска задач.
    • mvdbos/php-spider — Веб-паук на PHP.
    • kohkimakimoto/altax — Инструмент развертывания.
    • icicleio/filesystem — Асинхронный доступ к файловой системе.
    • ReactiveX/RxPHP — Реактивные инструменты для PHP.
    • niutech/node.php — Инструмент позволяет запускать node.js приложение из PHP даже на обычном хостинге.
    • movim/movim — Децентрализованная социальная сеть на PHP и на основе протокола XMPP.
    • lastguest/pixeler — Отрисовка изображений в консоли юникод-символами.
    • jgrossi/corcel — Обертки для использования WordPress с различными PHP-фреймворками.
    • thephpleague/tactician — Простая расширяемая командная шина. Пост с примером использования.
    • matthiasmullie/scrapbook — Кэш система, поддерживает PSR-6 и имеет адаптеры для Memcached, Redis, Couchbase, APC, SQL.
    • nazar-pc/CleverStyle-CMS — Простая CMF. Скринкасты video по использованию. Прислал nazarpc.


    Материалы для обучения




    Занимательное





    Спасибо за внимание!

    Если вы заметили ошибку или неточность — сообщите, пожалуйста, в личку.
    Вопросы и предложения пишите на почту или в твиттер.

    Присылайте ссылки на интересные статьи или полезные инструменты, которых не было в PHP-Дайджестах, и ваше имя будет рядом с присланной ссылкой в выпуске.

    Прислать ссылку
    Быстрый поиск по всем дайджестам
    Предыдущий выпуск: PHP-Дайджест № 77

    • +40
    • 20,5k
    • 8
    Zfort Group 271,39
    Компания
    Поделиться публикацией
    Комментарии 8
    • 0
      Что-то laravel со своим расписанием релизов и LTS-версиями стал похож на ubuntu. Нехорошо это.
      • +1
        Больше анархии, хаоса и стихийной разработки? Проекты типа такого должны быть с предсказуемым графиком релизов.
        • +2
          Проекты типа такого должны выпускаться тогда, когда они готовы выпускаться, а не по графику — не пирожки всё таки пекут и не пятилетки за 4 года делают.

          И та же убунта это отлично показала своими глючащими раскладками и прочими артефактами. Так показала, что все, кто не ищут приключений, пользуются исключительно LTS-версиями. Некоторые даже не сразу, а после первого патча.

          Анархию и хаос скорее вызовет факт что к концу этого месяца должны 100% выкатить релиз.
          • +4
            Добавлю ещё.

            Мне как разработчику на Laravel не обязательны версии каждые 6 месяцев. Мне, как потребителю, нужны стабильные релизы, а выходят они по расписанию или с задержками — не важно. Свои дедлайны разработчики фреймворка могут хранить при себе.

            Подобное расписание привлекает неофитов, которые выбирают фреймворк и видят, что новая версия вышла 3-4 месяца назад, после чего бегут туда.

            2 версии в 1 год — это исключительно маркетинг для привлечения большего количества разработчиков — не более.
            • +2
              Проекты типа такого должны выпускаться тогда, когда они готовы выпускаться, а не по графику


              Проекты такого типа должны выпускаться строго по графику что бы не задерживать выход новых фич. Я не хочу ждать пока авторы допилят фичу Б хотя мне нужна фича А, а dev-master использовать как-то не гуд.

              Это не означает что авторы должны пытаться впихнуть цикл разработки фич в этот график, туда просто попадают те фичи которые успели сделать. Обратная совместимость в минорных релизах все же должна сохраняться, а чистить фреймворк раз в год от депрекейтед функционала тоже весьма и весьма полезно.

              Анархию и хаос скорее вызовет факт что к концу этого месяца должны 100% выкатить релиз.

              В таком случае это плохо говорит о контрибьюторах, которые форсят фичи что бы вклиниться в релиз. Обычно за всем этим жестко следит команда разработчиков.

              То что попало в мастер должн быть законченной фичей, с сохранением обратной совместимости относительно текущей ветки. А по рассписанию или абы как теги расставляются — это не важно. Просто по рассписанию проще отслеживать.
        • +1
          Майка зачётная, надо будет потроллить своих знакомых ПХПшников.
        • +1
          Внедрение зависимостей без контейнера — Пример использования трейта вместо контейнера.

          Очень плохой пример использования трейта. В указанном примере автор статьи якобы избавляется от контейнера и внедряет зависимости через трейт. Но на самом деле зависимости не внедряются, он сам просит их у трейта, который в свою очередь их создает. По факту это то же самое, что сделать в исходном классе метод:
          function buildMyDependency() { return new MyDependency(); }
          

          Плохо это тем, что это 1) не внедрение зависимости, а ее создание 2) при юнит тестировании нет возможности смокать эту зависимость, следовательно метод buildMyDependency нормально протестировать невозможно. Единствнное остается смокать сам метод buildMyDependency(), а сама логика этого метода останется непокрытой.

          Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

          Самое читаемое