| Смысл такой, что задача разработки каталогов и позиций к ним возникает очень часто. Разный состав параметров позиций, а зачастую и доп.параметры каталогов приводят к тому, что требуется постоянная модификация полей базы данных и вывода. Т.е. тут хорошо бы разработать движок, причем задача идеальная для применения ООП. Ситуация осложняется тем, что такие приложения крайне чувствительны к производительности и поместить сериализованные объекты в базу данных или даже просто использовать для всех типов данных строковые типы очень накладно даже для небольшой базы данных, не говоря уже о каком-то объемном проекте. В идеале нужно, чтобы у нас появилось приложение, позволяющее вводить произвольное количество полей (строки, целые числа и числа с плавающей точкой, диапазоны, флаги состояния, изображения, ссылки). Причем система бы была расширяемая и позволяла бы для каждого из новых типов полей и элементов управления создавать допустим класс + тип таблиц, которые бы автоматически подцеплялись бы системой.
Мы в свое время начали решение задачи с решение задачи с построения SoftTime FrameWork, учебный вариант которого мы разбираем в наших книгах. Он позволяет строить расширяемые формы, содержит обертку для автоматизации сбора ошибок. Одновременно мы экспериментировали с построением базы данных, чтобы конечная система не потеряла в производительности. Чтобы с одной стороны, не было потери производительности, не было дублирующих подсистем, а с другой стороны система бы не интегрировалась бы очень сильно, чтобы можно было модули из одного сайта можно было безболезненно вынимать и вставлять в другой сайт.
Конечная цель, чтобы редактор щелкая мышью создавал структуру каталога, а движок автоматически размещал данные в устойчивой для нагрузке схеме базы данных, автоматически выстраивал систему управления (добавление, редактирование, сокрытие/отображение, перемещение позиции) и систему представления и поиска по данным. Причем наша цель предоставить не конечные интерфейсы, а API, позволяющая разработчику очень быстро разрабатывать страницы представления.
Пока вся система находится в стадии разработки и мы не готовы её представить (ни платно, ни бесплатно). Однако, все соображения по таким системам я всегда с удовольствием выскажу и при построении аналогичных систем с удовольствием помогу (возможно совместное обсуждение натолкнет на какие-то более изящные решения).
>А есть что-то платно?
Я не очень искал если честно, мы не очень любим впадать в зависимость от чужого инструментария. Это конечно до некоторой степени лукавство, так как приходится зависеть от множества платформ и языков программирования, но если есть возможность избежать чужой надстройки (особенно не стандартной, вроде шаблонизаторов), мы стараемся её избежать - каждая лишняя технология, сужает возможности (т.е. чужая система может безобразно использовать возможности базы данных, или иметь сильную интеграцию и сложное подключение/отключение модулей), лучше пусть она сужается под нашим контролем и в наших интересах. | |