Xwab
Форумыnavigate_nextФреймворки на PHP

Сборочка _ещё одного_ набора классов под именем Фреймворк
Сообщения
wapmorgan

Опять занимаюсь сборкой велосипедов и изобретением колеса (: Да ещё и 5.4-only для большего куража!
Зачем? Практика ООП и всякого такого.
https://github.com/wapmorgan/Wma
Посмотрите, пожурите - пока за код/очевидные ошибки/комментарии/etc.
---###---
Что уже имеется:
1. Загрузчик классов, а собственно: компонентов, модулей, контроллеров.
2. Консольный/браузерный режимы работы
3. Простенький роутер в обоих режимах и rewriter запросов для красотулек.


__________
посл.ред. 11 Сен 2012, 19:06; всего 7 раз(а) 01 Сен 2012, 20:20
Okula

wapmorgan, придерусь к именам интерфейсов:
Создавая в интерфейсы в именифайла принято явно указывать что это интерфейс с помощью слова Interface.
Надо так:
# файл WmaControllerInterface.php

namespace Wma\Controller;

interface WmaControllerInterface {

}
Это первое что бросилось в глаза

01 Сен 2012, 21:27
Башка

Где принято?

01 Сен 2012, 22:48
Okula

Башка, http://php.net/manual/ru/language.oop5.interfaces.php
Цитата:
"Интерфейсы объявляются так же, как и обычные классы, но с использованием ключевого слова interface."

Это не обязательно, но желательно  .

01 Сен 2012, 22:52
Diversant

Okula пишет:
"
Надо так:

namespace Wma\Controller;

interface WmaControllerInterface {

} "


"WmaControllerInterface"...
Нах ты тогда нэймспейс объявляешь?

01 Сен 2012, 22:57
Башка

Не нашел ничего об этом если честно. Уже обрадовался что пых занялся стандартизацией (
добавлено спустя 1 минуту:
Diversant, чтобы были )))

01 Сен 2012, 22:58
Okula

Diversant, вопревых это не я так делаю, а wapmorgan
https://github.com/wapmorgan/Wma/blob/master/framework/Wma/Controller/WmaController.php

Без пространства имён было бы:
interface Wma\Controller\WmaControllerInterface {
}
добавлено спустя 1 минуту:
Башка, это лишь пожелание для разработчиков, чтоб сразу было видно что в этом файле находится интерфейс  .

01 Сен 2012, 23:02
Башка

Можете лучше
interface IController{
}
с неймспейсом wma?
Окула, я просто там не увидел ни слова о том, что ты говорил про имена. Можешь сюда цитировать?

01 Сен 2012, 23:06
Akdmeh

echo '<div style="background: '.(($message['level'] == \Wma\Log::TRACE) ? '#eeeeee;' : (($message['level'] == \Wma\Log::ERROR) ? '#ff0000;' : '#88ffff;')).'">';
echo '#'.($count_messages - $i).'. ';
echo str_repeat('---', $message['deep'] - 1);


как то уж больно не элегантно, создал бы отдельный обработчик ошибок.
добавлено спустя 2 минуты:
Папку с application я бы лучше хранил отдельно, а не в папке framework, впрочем, это дело каждого.

А так смотреть в принципе не на что, "пустые" файлы и папки

02 Сен 2012, 10:42
wapmorgan

Итак, убрал файлы-пустышки, добавил довольно длинную иерархию:
Wma (загрузка классов) -> Application (управление компонентами) -> Site (управление модулями) -> Module (работа с контроллерами) -> Controller (полезная работа), ибо многоуровневую структуру контроллеров считаю излишней.

03 Сен 2012, 8:31
Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.