Ясно. А чем sqlite не нормальная база? Нравится в ней то, что просто устанавливать. Сам однако думаю, что взломать её намного легче, чем mysql например, я прав?
Используется для всякой мелочи на пример на телефоне, Skype и т.д. Для сайта не подойдет, не для этого она создавалась.
Ну как обычно, начал за здравие, кончил за sqlite. пользователь чего? Вашего несуществующего framework, или пользователь сайта загружает плагин на сайт? Напишите сперва FW, а там уже будет видно как к нему подключиться.
Пользователь сайта(администратор) загружает плагин. Добавлено спустя 57 секунд: А так, если изучать как работают фреймворки, с какого начать?
Ещё в процессе возник вопрос, по плагинам. Плагины регистрируют, что готовы обработать события. Таким образом: Код (Text): $PLugMeneger->register(new eventHook("event", "classError", "methodError") И в index.php я в цикле подключаются вообще все файлы контроллеров плагинов. В независимости от типа пользователя. Это же нехорошо? Тогда как, отдельно создавать файл у плагина, в котором прописаны регистрации событий и подключать только эти файлы, если произошло событие, то подключить плагин, думаю так лучше?
Ещё хотел спросить. Так что же лучше бандлы в симфонии 2, или хуки вордпресс? Сам как вы понимаете сделал ядро на основе хуков, теперь думаю, правильно ли поступил, ведь разные плагины могут регистрировать одинаковое событие, и какой из них выбрать? Тот, что последний в массиве? В симфонии такой проблемы возникнуть не должно, так? Я сейчас разбираюсь в системе основанной на бандлах. Понимаю её так. Класс наследует какой либо другой класс или другой бандл, и переопределяет его поведение. Я правильно понял? Просто информации как это все работает не так уж много.
В WordPress для этого есть приоритеты. Также можете сделать, чтоб цепочка выполнения прерывалась после успешной отработки события. Про symphony лично я ничего не знаю, не писал на нём
Информации полно в книгах по ООП. Вся борьба идёт за безопасность, повторное использование кода, скорость, простота расширения, простота поддержки, отсутствие зависимости и думаю кто-то подправит или добавить ещё что-то. Лучшее можно выбрать когда у тебя будет конкретная задача и реальные данные, так как весь код это алгоритм к которому есть требование: например использование cpu использование ram параллельность и тд. Читай теорию, вот про данные например https://ru.wikipedia.org/wiki/%D0%A2%D0%B5%D0%BE%D1%80%D0%B ... %D0%B0_CAP можно сделать только два из трёх, по этому и нужна конкретная задача, чтобы выбрать, тот алгоритм который будет лучше в конкретной задачи.
А в вордерессе, есть ли какой то механизм, который позволять переопределить события, которых нет в системе?, то есть те, что происходят в __call. Это же целиком работа плагина. Делать хуки в самом плагине? Это уже смешно. Или это делается только за счёт приоритетов? Делаем приоритет нового плагина больше, другого, который ждёт то же это событие.
Ну что значит, которых нет в системе? Кто мешает вам сделать так: Код (Text): class Application { public function __call($name, array $params) { $event_dispatcher = Dispatcher::instance(); $event_dispatcher->trigger_event("$name_called", $params); } } Это, конечно, псевдокод, но логика должна быть понятна
Вы не поняли. Допустим на системный метод я вешаю хук. А плагин, который выполняется в __call как либо переопределить можно только с помощью другого плагина с большим приоритетом?
Сейчас все чаще говорят о october cms. Довольно таки интересная система. Как там реализована система плагинов? Cms вроде бы на laravel.
А вы слышали про эту cms? Так вроде начал изучать посмотрел видео обзор системы. Там говорится что типа система уникальна, и ничего подобного не существует. А хоть что там такого? Может я что-то не понял.
October ещё в бете, т.ч. использовать его можно только для себя, а вообще довольно приятно все сделано, под капотом нормальный фреймворк и хорошее api для админки. Ставку в отличии от джумл и вордпрессов делают не на "всё одним кликом", а на удобную заточку под себя. Через годик думаю можно будет юзать )
Я сейчас пытаюсь для себя костячок на фреймворке заделать, чтоб можно было под любой проект быстро переделывать. Я просто обнаружил, что, несмотря на то, что я - не самый крутой программист, и прекрасно это осознаю, сайты, которые я делаю на фреймворках работают быстрее намного, чем то, что делается на CMS. Особенно на всяких дорогущих и заумных, типа UMI...
Чем дороже cms тем она медленнее работает. Весь мысл в том, что 90% кода в этих cms это защита от дурака + обработка ошибок и вывод их юзеру. У себя в проекте сейчас с тем же сталкиваюсь... Вроде тело заплатило 3 копейки за систему, а при загрузке картинки "акуенная пробел елочка пробел которую прислала Лена (тупая кизда#$//'-:;;""^/".bmp) почему то косяк ( Это абстрактный пример...но реально чем дальше тем больше и больше всевозможных идиотских действий приходится обрабатывать. И если изначально кода был метр, за 2 года его уже три ( Добавлено спустя 11 минут 20 секунд: плюс вот еще что: в попытках создать вот такое нечто универсальное "от гандонов до танков" то же свой тупняк, проверь то, подключи это, если этого нет то то сё пятое десятое. Универсальных инструментов под любые задачи просто не существует, и все попытки их создать обречены. Быстрее всего работает то, что написано под конкретный проект.