Я пытаюсь записать некоторые конкретные идеи для легкого фреймворка (на PHP5) с целью обработки большого количества запросов и обеспечения его хорошего масштабирования с точки зрения высокой вероятности трафика.
Я уже запустил его, но меня не очень устраивает стиль кодирования, который в основном состоит из простых классов и помощников, а основной - для их загрузки.
class Settings {
// I provide settings for everyone and I'm called by everyone via singleton.
// $settings = instance(Settings);
}
class Database {
// I provide the db connection.
}
class Session {
// I handle the sessions.
}
[...]
class Core {
// I start every class we need.
}
Структура является своего рода базовой. APP - это публичное дерево, SYSTEM - это приватное дерево.
app
|-- css
|-- js
|-- page_name
|-- index.php
[...]
system
|-- settings
|-- libs
|-- helpers
|-- langs
[...]
По сути, я задаю пути в константах в файле index.php , который вызывает файл boot.php , который включает в себя библиотеки, которые нам нужны (Настройки, Database, Session), а затем включает файл core.php , который запускает каждый класс с использованием объектов.
Конечно, это синтез.
Я разработал все, чтобы быть более независимым от ядра, поэтому, если мне нужны, например, некоторые настройки, я просто обращаюсь к классу настроек (по одиночке), вместо этого вызываю ядро и затем получаю данные.
Основная проблема заключается в том, что я не знаю, может ли этот «стиль» быть полезным для моих целей, потому что он выглядит для меня невежливым по сравнению с другими основными структурами. Я также не понимаю, почему все используют такие вещи, как Implements, Extends, Interface или другие, что мне кажется более запутанным, чем объединение всего в один класс с общедоступной и приватной видимостью или просто использование функций.
Могу ли я получить дополнительные советы, примеры или что-то еще, что может помочь в достижении моих целей?
Спасибо!