Шаблон Factory Method (Фабричный метод) на PHP
03-07-2019PHP/ООП
Factory Method (Фабричный метод) немного похож на Абстрактную фабрику. Он также позволяет спрятать конкретную реализацию и предоставить несколько типовых методов для использования. Читать ➝
Шаблон Abstract Factory (Абстрактная фабрика) на PHP
02-07-2019PHP/ООП
Паттерн «Абстрактная фабрика» довольно распространён, особенно часто приходится слышать выражение «использовать фабрику» среди программистов, которые делают вид, что разбираются в шаблонах проектирования. :) Читать ➝
Шаблон проектирования Facade (Фасад)
23-06-2019PHP/ООП
Наверное это самый простой паттерн, который используется повсеместно. Задача фасада — скрыть сложную реализацию внутри какого-то класса. То есть если есть 10 классов, у которых нужно выполнить кучу методов, то мы просто делаем один класс-фасад, который их и выполняет. У нас же останется только один «пусковой» метод. Читать ➝
Шаблон «Fluent interface» (Текучий интерфейс)
22-06-2019PHP/ООП
Строго говоря, «Текучий интерфейс» даже не сколько паттерн, сколько методика организации кода, направленная на то, чтобы упростить его чтение. Вместо последовательных вызовов функций в каждой строчке, организуется цепочка методов. Наверняка вы с таким встречались: Читать ➝
Шаблоны проектирования для PHP
21-06-2019PHP/ООП
Начну небольшой цикл статей посвященных шаблонам проектирования с реализацией на PHP. Постепенно эту запись буду редактировать, чтобы собрать все ссылки скопом. Читать ➝
Композиция и наследование ООП в PHP
05-06-2019PHP/ООП
Базовым принципом ООП (объектно-ориентированное программирование) является наследование. С помощью наследования можно построить сложную иерархию классов, где потомки наследуют функциональность своих родителей. В теории это всё выглядит замечательно, но на практике часто оказывается так, что наследование ухудшает код и делает архитектуру приложения негибкой и сложной. Читать ➝
ООП в PHP
20-05-2019PHP/ООП
Следует учитывать, что в PHP несколько упрощенная реализация ООП (объектно-ориентированное программирование). Поэтому, когда речь идёт об ООП как абстрактной парадигме, то следует использовать какой-то более серьёзный язык, вроде Java, С++ или Object Pascal. Потому что на этих языкам можно посмотреть практическую реализацию принципов ООП. В PHP программисты пытаются подражать другим ЯП, что в итоге приводит к излишней сложности и путанице, поскольку язык сам по себе не позволяет сделать «как в теории». Читать ➝