Дайджест интересных новостей и материалов из мира PHP № 38 (9 марта — 23 марта 2014)



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

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


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


    • Facebook официально представил язык программирования Hack — Хотя сам язык был доступен в HHVM уже достаточно давно, и даже публиковались туториалы, официальный анонс был сделан лишь на прошедшей неделе. Hack представляет собой язык программирования, расширяющий возможности PHP, добавляя в него такие возможности как статическая типизация, лямбда-выражения, обобщения (generics), асинхронность и другие. Что самое важное, Hack прозрачно взаимодействует с PHP – можно реализовать приложения на традиционном PHP, а необходимые участки оптимизировать с помощью возможностей Hack. Или даже воспользоваться автоматическим конвертером.
      C базовыми возможностями Hack можно ознакомиться в интерактивном туториале. Код сайта самого языка написан на Hack и доступен на GitHub.
    • PhpSpec 2.0 — Обновился SpecBDD-фреймворк для PHP. Если вы не знакомы с этим инструментом, рекомендую посмотреть скринкаст.
    • PHP-CPP 0.9 — Множество обновлений C++ библиотеки, специально предназначенной для разработки PHP-расширений. Также на сайте теперь доступна документация.
    • pthreads v2.0.0 — Обновилось отличное расширение для реализации многопоточности на PHP. Список изменений тут.
    • Zend Framework 2.3.0 — Вышла в свет новая версия одного из самых популярных PHP-фреймворков. Первый за 10 месяцев релиз с новыми возможностями, которых, кстати, немало.
    • Zend Framework 2 Certification — Также отныне стала доступна сертификация от Zend по ZF 2.
    • Phalcon 1.3.0 — Свежий релиз PHP-фреймворка, реализованного в виде расширения. Кстати, недавно фреймворку исполнилось уже два года.


    PHP


    • RFC: Return Type-hinting — Предлагается реализовать type-hinting для возвращаемых значений.


    Инструменты


    • PHPWord — PHP-библиотека для чтения и записи документов различных форматов: .docx, .odt, .rtf и других. Часть проекта PHPOffice.
    • CSS-Crush — CSS-препроцессор реализованный на PHP.
    • Magallanes — Еще один PHP-инструмент для развертывания приложений.
    • Jumper — Позволяет выполнять PHP-замыкание на удаленной машине по ssh.
    • Unirest PHP — HTTP-клиент на PHP. Хорошая альтернатива Guzzle.
    • ProxyManager — Библиотека для создания всевозможных прокси-объектов.
    • Testify.php — Микрофреймворк для модульного тестирования.
    • Baobab — Библиотека, реализующая хранение и доступ к иерархическим данным с помощью вложенных множеств (nested set).
    • Phang — Скелет приложения на Silex и AngularJS.


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




    Материалы c прошедших конференций




    Аудио и видеоматериалы




    В прошлом выпуске был проведен опрос среди читателей. Спасибо всем, кто принял участие! Идеи в процессе реализации, а пока можно посмотреть результаты опроса.

    Быстрый поиск по всем дайджестам
    Предыдущий выпуск
    Zfort Group
    112,00
    Компания
    Поделиться публикацией

    Комментарии 21

      +1
      Чуть больше информации про сравнение объектов: stackoverflow.com/questions/22528491/objects-comparison-in-php
        0
        Интересно, получит ли распространение идея написания расширений прямиком на плюсах, а не на более дружелюбном для php-разработчика зефире.
        По сути на плюсах можно быстро писать расширения-коннекторы (базы данных, кешеры, очереди), хотя и для зефира есть такая возможность в виде оптимизаторов.
          +1
          >а не на более дружелюбном для php-разработчика зефире.
          Самый дружелюбный на данный момент для написания расширений — чистый C. Минимум новых сущностей,
            0
            stackoverflow.com/questions/15665118/linking-lame-h-with-php-extension Я смотрю прямо таки супер дружелюбно.
            Покажите пример «дружелюбных» расширений? По zendу не особо много доков, чего не скажешь по зефиру, или phpcpp.
              0
              На самом деле доков достаточно — просто надо поискать) Зато изучение php internals дает более глубокое понимание работы языка, вдобавок можно не только модули писать но и расширять сам язык. Когда возникла необходимость — долго проклиная все на свете и собирая по интернету инфу писал первое расширение. Но опыт был весьма полезный
                0
                А можно увидеть расширение?
                  0
                  исходники остались в репозиториях прошлого работодателя. Но вообще если вам интересна эта тема могу попробовать найти материалы, которые мне в то время весьма помогли
                    0
                    Материалы я и сам могу найти. Вы громко заявили — чистый С проще. Я прошу вас показать, где проще.
                      0
                      Я не говорил что проще. Я говорил что выгоднее в плане изучения. Да и в плане производительности (при условии что не криво написано). Я как понимаю вы сторонник Zephir, мне этот проект в целом кажется интересным — но имхо судить о нем и взвешивать плюсы раньше первой стабильной версии смысла нет.
                        +1
                        Самый дружелюбный на данный момент для написания расширений — чистый C

                        Дружелюбно != проще?
                        Я не то что бы сторонник. Я сторонник и phpcpp — просто потому что это удобнее, чем чистый zend core.
                          0
                          Ну ладно, допустим с дружелюбностью я немного переборщил. Но врядли вы станете отрицать, что знание устройства и понимание работы ядра языка как минимум весьма небесполезно.
                            0
                            Это и не нужно. Достаточно понимать, что такое HashTable, zval, zend_class_entry, и немного Си, чтобы если что — можно было что-то соптимизировать. Дальше лезть в дебри макросов — совсем нет смысла. А вот чтобы не париться на счет структуры расширения — как раз полезно использовать phpcpp, или zephir
                              0
                              >понимать, что такое HashTable, zval, zend_class_entry, и немного Си
                              Ну это уже само по себе немало)
                    0
                    Хотя не отрицаю что зефир выглядит весьма интересно, слежу за его развитием. Но пока имхо сыроват он
                    +1
                    Меня вот несколько напрягают постоянные изменения во внутреннем API. Понимаю, что не обосновано ожидать совместимости 5.3 и 5.4 (к примеру), но очень бы хотелось, чтобы там не появлялись новые параметры в середине списка аргументов функции, или функция меняла тип результата, сохраняя имя и все параметры. Получить обертку, которая унифицирует хотя бы эту разницу между версиями — вот это было бы уже круто. А куча «сахара», которую добавляют всякие zephir, мне лично не так и нужна.
              +2
              ORM и бесполезные модели — Интересный пост, в котором автор реализовывает одну и ту же бизнес-логику в терминах Active Record и Data Mapper.

              Рекомендую все поклонникам ActiveRecord :)
                +2
                Зеленые слоники >_<
                  0
                  Ну мы же не будем скатываться до уровня имиджборд?
                  +1
                  Спасибо вам!
                    +1
                    За PHP-CPP особое спасибо. Как-то мимо меня прошла ранее.

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

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