esterio пишет:а сколько то физических серверов есть
Это же закладка на будущее.
esterio пишет:1. автолоадер лучше подключать извне а не в индексе
Я оформил в индексе, т.к. сразу же вызываю App уже без "позорных" инклюд.
esterio пишет:2. все о том же автолоадере. я предпочитаю абсолютные пути и поетому добавил бы ROOT
А оно там есть - константа APPLICATION. Единственное - все ядерные компоненты лежат в глобальном неймспейсе.
esterio пишет: внутри метода запоминать и визивать функции memory_get_usage, microtime ... перед этим практически никакой логики кроме инициализации констант и автолоадера нету
Так эту логику счетчик тоже считает, потому и объявлено в самом-самом начале.
esterio пишет:4. в App::run куча статикы инициализаций нагло вшитий. ИМХО лучше сервис локатор или фабрику дергать
init() === статический __construct(). Подробности в самом низу.
esterio пишет:5. ДБ - я уже говорил что тут лугче использовать Lazy Load. зачем дергать базу, если она может и не нужна будет.
Суть уловил, разберемся с местер-слейв, заодно и с ленью базы. Я кстати Мелкому задавал вопрос делать ли ленивые коннекты. Он пока не ответил.
esterio пишет:6. реквест я все же бі сделал не статичным. там можно было даже использовать два наследника
"Ну вот опять" -
подумал горшок с петуньей.
esterio пишет:7. на счет View. мне больше нравиться return в action-е. например return $this->rendrer('view_path', array($params));
А мне нравится возможность набросать данных и затем одной командой переопределить (указать) формат фозвращаемых данных - html, xml, json, txt.
Bio man пишет:Как планируется управлять зависимостями?
Какими?
Bio man пишет:как обстоят дела с ресурсами типо цсс картинок итд?
Сейчас просто лежат в отдельном месте, разложены аккуратными кучками.
Если придет Дельфин - то точно будет LESS/SASS. Он это дело любит.
Про статику:
Объясните в чем профит создавать экземпляры когда заранее известно, что это синглтоны? И в чем профит для
AnotherWrapper::getSomeClassInstance('Blah')->method();
или
$AnotherWrapper->Blah->method();
или
$AnotherWrapper->getBlah()->method();
или
function ($Blah) { $this->Blah = $Blah;
относительно к
\Blah::method();
Вам же самим придется думать как передать желаемую сущность куда-то, через аргумент или дергать еще одну вспомогательну сущность, чтобы получить ссылку на нужную.
Вот оно - классы ради классов, ООП ради ООП.
Посмотрите как начинаются статьи в интернете - почти все, со слов "
Проблемы создания, хранения и получения экземпляра." и даются паттерны для решения.
Ага, написать и оттестировать еще 1-3 вспомогательных класса просто для того, чтобы обеспечить доступность сущностей в других местах.
И это только потому, что эти сущности изначально где-то объявлены через
new Entity();
К чему создавать лишние экземпляры? Ты сам же будешь потом еще думать кого позвать для той или иной цели.
Это я вам как
горшок с петуньей говорю, кашалоты вы мои ))
(Добавление)
Bio man пишет:Почему бы не внедрить Service Locator?
Шило на мыло?
Bio man пишет:Как по мне, так редиректить должен роутер или респонс. Но точно не реквест.
Да, я уже ответил паноптику, что вынесу редирект и хедеры в респонз.