Немного о своём PHP-фреймворке
28-08-2019PHP
Где-то с нового года я занимаюсь разработкой своего PHP-фреймворка. Без каких-либо обязательств, просто для себя. Во что это выльется я не знаю, да и цели сделать его публичным пока не стоит. Изначальный посыл был несколько лет назад: я серьёзно подумывал отказаться от CodeIgniter в качестве основы MaxSite CMS. Продумывал новую структуру и всё что с этим связано. Постепенно я понял, что затея тупиковая, поэтому решил сосредоточиться на более простой вещи — микрофреймворке, который даст основу уже полноценной разработке. Read
Шаблон Strategy (Стратегия)
28-08-2019PHP/ООП
Strategy — поведенческий шаблон, где используются разные алгоритмы в одном объекте. То есть Стратегия позволяет выделить отдельные конкретные алгоритмы, а после их использовать в базовом классе. Read
CodeIgniter 4. PSR-4. Произвольная MVC
17-08-2019CodeIgniter
По умолчанию CodeIgniter все контролёры размещает в одном каталоге, что не всегда удобно с точки зрения организации файлов. В некоторых случаях удобней сгруппировать файлы в одном подкаталоге. Например подкаталог в App/Controllers. Поскольку CodeIgniter поддерживает PSR-4, то сможет с ним корректно работать. Но нужно учитывать некоторые тонкости. Read
CodeIgniter 4. Роутинг. Формы. REST
16-08-2019CodeIgniter
Работа CodeIgniter базируется на роутинге, который принимает входящий url-адрес и выполняет подходящий контролёр. До этого мы использовали «автороутинг», когда первый сегмент адреса совпадал с именем контролёра. Но в большинстве случаев такая схема слишком примитивная, поэтому нужно будет настраивать роутинг на адреса, которые не совпадают с файлом контролёра. Read
CodeIgniter 4. Views
15-08-2019CodeIgniter
Усложним наше приложение. Пусть это будет несколько статичных html-страниц, например about и hello. Сделаем так, чтобы html-шаблон был разбит на части. Read
CodeIgniter 4. Основы. Установка
14-08-2019CodeIgniter
Скоро планируется релиз CodeIgniter 4 и я подготовил несколько статьей, посвященных этому php-фреймворку. Обычно, когда речь заходит о CodeIgniter, то возникают двоякие чувства: с одной стороны это легендарный фреймворк, который послужил хорошим стартом для многих проектов, а с другой, его история показывает, что случается с теми разработками, которые не получают должной поддержки и развития. Read
Шаблон Builder (Строитель)
12-08-2019PHP/ООП
На мой взгляд паттерн Builder один из самых сложных. Найти ему практическое применение проблематично, поэтому он используется только в очень редких случаях, когда требуется работать со сложным составным объектом. Read
Шаблон Composite (Компоновщик)
09-08-2019PHP/ООП
Основной смысл паттерна в том, чтобы позволить вначале создать коллекцию объектов классов, а после их выполнить скопом. Какое-то практическое применение Composite в PHP найти сложно, разве что для решения задач, когда требуется выполнить сразу много действий из разных классов. Read
Berry - библиотека утилитарных CSS-классов
20-07-2019Berry CSS
Утилитарные классы используются в любом css-фреймворке. С их помощью решаются какие-то типовые задачи верстки, например задаются отступы или размер шрифта. Каждый фреймворк использует свои утилитарные классы, которые именуются не всегда очевидным образом. Read
Шаблон Registry (Реестр)
16-07-2019PHP/ООП
Шаблон Registry предназначен в первую очередь на решение проблемы глобальной области видимости. Это очень частая задача, когда нужно обеспечить общий доступ к данным, но при этом не желательно засорять глобальную область видимости. С помощью Registry, как раз и можно это сделать. Read