Просмотр поста

.
Delphinum
Простейший фреймворк
Переходим к одному из самых интересных разделов - сборке фреймворка. Как я уже отмечал ранее, фреймворк определяет будущую структуру приложения, но благодаря использованию готовых пакетов, вы можете самостоятельно сделать это так, как вам будет удобно.

Пока мы реализуем простейшее решение, позволяющее только формировать Web-страницы и отдавать их в качестве ответов сервера. Фреймворк будет лишен модульной архитектуры, следовательно будет монолитным приложением, расширение которого представляется добавлением новых компонентов в имеющиеся каталоги. Так же во фреймворке не будет множества полезных и удобных программных решений, о которых мы поговорим позже.

Для начала определимся с файловой структурой приложения. Я считаю удобной следующее решение:

app/
  conf/
    global.conf.php
    local.conf.php
  controller/
  model/
  App.php
  composer.json
  layout.html
public/
  script/
  style/
  index.php


Разберем некоторые основные компоненты фреймворка. В корневом каталоге приложения помимо каталогов app и public так же могут размещаться проектные файлы, на пример каталог test/ с модульными тестами, файлы README.md, .gitignore, migration.sh и т.д. на ваше усмотрение. В каталоге public/ размещаются общедоступные файлы проекта, такие как JS скрипты, CSS файлы и точка входа - файл index.php. Каталог app/ хранит логику самого приложения, и его следует рассмотреть подробнее.