Boroda aka Hamster (fantaseour) wrote,
Boroda aka Hamster
fantaseour

Category:

PHP, Dependency Injection and Phemto

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

Кроме контейнера от Симфони, есть еще одна библиотека. Она называется Phemto. Написана Маркусом Бэйкером, автором SimpleTest. Она лаконичная и краткая до ужаса, поэтому стоит внимания и изучения. К сожалению, на самом сайте в онлайне лежит очень краткая заметка, однако внутри дистрибутива имеется более подробное руководство. Кроме того кратко и понятно объясняется работа паттерна. От хардкода, через фабрику, реестр и сервис-локатор к контейнеру управления зависимостями.

Я не поленился и перевел статью, т.к. мне кажется она может быть очень полезной. Однако на хабр пока не получилось ее положить — не справился с подсветкой кода, а без нее как-то не здорово. Поэтому выложил пока отдельным файлом. Если придумаю как переложу на хабру.

UPD Переложил: часть 1, часть 2. Сказалась неопытность в публикации статей на хабре. И целиком не влезла, и подсветка синтаксиса должна быть через тэг font. Вот тут есть инструмента.

Ссылки по ресурсам о DI:

1. Zend Framework тоже может заиметь DI-контейнер
2. Agildev.ru, Управление зависимостями в PHP-коде
3. DI-Контейнер от Symfony
4. PICO-контейнер на Java от которого все остальное произошло
5. Антипатерны использования DI
6. Презентация Джеффа Мура на PHP-tek, 2007
Tags: development, patterns, php
Subscribe

  • wordpress: php -> nodejs

    Хипстеры захватывают мир :) Не очень понятно, как этот переход отразится, на людях, которые ставят этот вордпресс на любой копеечный хостинг с…

  • Интерактивный курс javascript

    Интересная игрушка -- интерактивное обучение программированию на javascript. http://www.codecademy.com Должно быть продуктивнее, чем чисто по…

  • Гугл в дауне?

    Уже минут 10-15 не отзывается ни гугл, ни ю-тьюб.

  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 6 comments