Изменение наименований классов в движке

В LiveStreet произошел рефакторинг формы наименований классов. Данное предложение высказывалось avadim'ом еще на LS-party и теперь реализовано.

Новые формы:
  • модуль — Module[имя модуля]
  • маппер — Module[имя модуля]_Mapper[имя маппера]
  • сущность — Module[имя модуля]_Entity[имя сущности]

Для плагинов добавляется префикс Plugin[имя плагина]_, например, Plugin[имя плагина]_Module[имя модуля]_Entity[имя сущности].

Подключение маппера теперь происходит автоматически при вызове метода Engine::GetMapper() в модуле:
Engine::GetMapper(__CLASS__) — вернет маппер совпадающий с именем модуля
Engine::GetMapper(__CLASS__,'Test') — вернет маппер Test

Такой подход позволит навести порядок и логику в названия классов.

В связи с этим плагины, написанные под релизную версию 0.4, работать не будут на последней версии из SVN. Для обеспечения их работоспособности нужно только переименовать классы согласно новым правилам.

Текущие изменения в коде и архитектуре движка

Этот пост больше предназначен для тех, кто использует ЛС на уровне кода. Постараюсь ввести в курс того, что происходит сейчас в SVN проекта над кодом и архитектурой.

Сейчас наметились три основные изменения:
  • изменения логики работы с БД и кешем
  • создание универсальных комментариев
  • возможность обрабатывать Ajax запросы прямо в экшенах

Теперь более подробно о каждом.
Читать дальше →

LiveStreet как платформа для модулей

На основе определенного опыта выношу свои предложения по оптимизации LiveStreet под решения сторонних разработчиков.
Вот как сейчас выглядит инструкция по установке модуля галерея: docs.google.com/Edit?id=d4jv5mv_529dgshs5d2

А хочется чтобы инструкция заканчивалась на распаковании архива:) Мои предложения как этого добиться:

Читать дальше →

LiveStreet на первый взгляд

Привет сообществу.

Хотелось бы поделиться своими соображениями, которые появились в голове после изучения внутренностей свежеустановленного LiveStreet. Меня в первую очередь интересовала архитектура движка и ее гибкость (читай: возможность добавить свой функционал).


Читать дальше →