Принцип Инверсии Управления – Голливудский Принцип

Оригинал: Inversion of Control – The Hollywood Principle.

Среди программистов (включая и меня, так что здесь я публично признаю свою вину) бытует мнение о том, что Инверсия Управления (IoC) является не более, чем синонимом для старого принципа Внедрения Зависимости (DI). Существует простая причина для такой точки зрения: идея Принципа Внедрения зависимостей состоит в реализации классов, чьи элементы обеспечиваются окружающим контекстом, что позволяет не изменять код программы. Таким образом, процесс может быть рассмотрен как часть принципа IoC.

Но, несмотря на то, что уравнение DI=IoC может рассматриваться в целом как справедливое утверждение, все же концепция Инверсии Управления сама по себе гораздо шире. Фактически мы можем сказать, что DI – это частный случай IoC, но далеко не единственный. Это вновь приводит нас к началу: если DI – это всего лишь шаблон, который опирается на сильные стороны IoC, то что же такое Прицип Инверсии Контроля?

Читать дальше →

Технические проблемы

Уважаемые читатели.

В последние несколько дней наблюдались технические сбои при работе нашего ресурса phptime.ru. Проблема связана с ошибкой в настройках при переходе на http/2. В данный момент проблема исправлена, и ресурс работает в нормальном режиме.

P.s. Да, да. Мы перешли на протокол spdy. Спецификация практически утверждена, и все современные браузеры поддерживают spdy.

Ubuntu 14.04, PhpStorm и старый баг горячих клавиш

Приветстсвую, уважаемый читатель!

Сегодня хочу поделиться решением древнего бага, найденым на просторах интернета. Ранее, в ubuntu не работали горячие клавиши в русской раскладке. И вроде какбы этот баг пофиксили, но не везде. В приложениях на яве, например PhpStorm, горячие клавиши в русской расскладке по-прежнему не работали. С чем это связанно — неясно. Кто за это должен отвечать — непонятно.

Но бодрый пользователь гитхаба zheludkovm выпустиль патч, для исправления этого бага.

Читать дальше →

Задайте вопрос специалисту



Добрый день многоуважаемое сообщество.

Сегодня на нашем сайте появился новый блог Q&A (Вопросы и ответы). В этом блоге Вы можете задавать свои самые каверзные (и не очень) вопросы, связанные с программирование на PHP. Наши специалисты окажут Вам совершенно бесплатную консультацию по Вашему вопросу.

Для того, чтобы задать вопрос, необходимо подписаться на блог Q&A и создать в нем топик-вопрос.

Надеемся, что нововведение окажется полезным для Вас.

С уважением, PHP Time.

Доступны видео с последней конференции PHP Frameworks Day

Доклады всех участников достойны внимания. Видео доступны на официальном канале мероприятия на youtube: www.youtube.com/user/fwdays/videos. Так же на facebook были выложены фотографии: www.facebook.com/fwdays/photos_stream

Декаплинг и фреймворки

Оригинал: Living Apart Together: Decoupling Code and Framework

Вы, конечно, используете в своей работе новейшие технологии и фреймворки. Более того, вы самостоятельно написали 2,5 фреймворка, ваш код  PSR-2 совместим, полностью юнит-тестирован, имеет сопровождающие PHPMD  и PHPCS конфигурации, и даже может поставляться с надлежащей документацией (на самом деле, она существует!). При выпуске новой версии вашего любимого фреймворка вы захотите побыстрее использовать его в своем ​​проекте и получите пару отчетов об ошибке. Вы, может быть, даже воспользуетесь модульным тестированием, чтобы определить ошибку и сделаете патч, чтоб исправить ее. Если это может помочь вам стать тем разработчиком, которым вы хотите быть, — пересмотрите отношения вашего кода и фреймворка.

Читать дальше →

Share ссылки популярных социальных сетей

Часто ли вам во время работы требуется создать кнопки share для социальных сетей Вконтакте, Facebook, Twitter и тд? У меня в работе они возникают с завидной регулярностью. Для того, что бы не перерывать тонны мануалов на десятке сайтов соц-сетей для разработчиков, я решил написать этот пост-заметку со списком ссылок для создания share кнопок. Список будет дополняться.

Переменные в листингах:
  • [URL] — url страницы, которой Вы собираетесь делиться в соц сетях.
    Например http://www.example.com/catalog/good/1.html.
  • [TITLE] — заголовок записи, который будет опубликован в соц сети.
    Например Продукт нашего завода.
  • [DESC] — описание записи, которое будет опубликовано в соц сети.
    Например Этот неведомый продукт был выпущен на нашем заводе «Торгпромсельмашхимстрой комбинат номер 5».
  • [IMAGE] — изображение, которое относится к публикуемой в соц сети записи.
    Например http://www.example.com/images/good-1.jpg.

Для начала в блоке head страницы, нужно добавить четыре мета тега:
<meta property="og:url" content="[URL]">
<meta property="og:title" content="[TITLE]">
<meta property="og:description" content="[DESC]">
<meta property="og:image" content="[IMAGE]">

А теперь размещаем ссылки.

Читать дальше →

Группа PHP-FIG и разделяемые интерфейсы

Оригинал: On php-fig and Shared Interfaces

Этот пост я написал по просьбе Эверта Пота, с которым успел пообщаться во время голландской конференции PHP в июне 2012 года. В статье подробно рассмотрены некоторые наблюдения, связанные с группой PHP-FIG и, надеюсь, после прочтения вы поймете, почему я больше не принимаю непосредственного участия в ней.

Читать дальше →