Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Общая концепция Vingrad CMS, цели и задачи, предполог. функционал 
:(
    Опции темы
awers
Дата 16.3.2008, 04:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник
Сообщений: 1465
Регистрация: 22.3.2006
Где: Россия, Таганрог

Репутация: 3
Всего: 31



Sardar, ну тогда уже взять готовую CMS емае ... 
Зачем нам чужие монструозные решения юзать то? 
PM MAIL WWW ICQ Skype   Вверх
Medved
Дата 16.3.2008, 10:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 7209
Регистрация: 15.9.2002
Где: Kazakhstan, Astan a

Репутация: нет
Всего: 154



Цитата(Sardar @  16.3.2008,  07:05 Найти цитируемый пост)
Тут лучше Zend Framework взять или PEAR (+ базу MediaWiki, там всё для жизни есть)). Общие либы почти всегда уже реализованы. 

К сожалению я не знаю эти библиотеки. Но если они отвечают нашим требованиям, почему бы и нет. Я согласен с тобой в том, что можно использовать уже готовый инфраструктурный код, оттестированый и отлаженый, в который вложено множество труда, чем писать с нуля свой.

Это сообщение отредактировал(а) Medved - 18.3.2008, 21:39


--------------------
http://extreme.sport-express.ru/
...и неважно сколько падал, важно сколько ты вставал...
PM MAIL WWW ICQ Skype GTalk   Вверх
Sardar
Дата 16.3.2008, 12:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

Репутация: нет
Всего: 317



Цитата(awers @  16.3.2008,  03:10 Найти цитируемый пост)
ну тогда уже взять готовую CMS емае ... 
Зачем нам чужие монструозные решения юзать то?

Либа для разбора и сериализации XML -> либа генерящая RSS, что берёт инфу из некоторого общего интерфейса -> скрипт, что генерит RSS новости (новые артикли за неделю) + скрипты админовки, что настраивают всё это дело. Где то на этом пути кончается "слой с общими либами" и начинается CMS.


--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
Medved
Дата 16.3.2008, 23:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 7209
Регистрация: 15.9.2002
Где: Kazakhstan, Astan a

Репутация: нет
Всего: 154



solenko, почитай пожалуйста. Анти-паттерн.

Цитата(Sardar @  16.3.2008,  15:56 Найти цитируемый пост)
Либа для разбора и сериализации XML -> либа генерящая RSS, что берёт инфу из некоторого общего интерфейса -> скрипт, что генерит RSS новости (новые артикли за неделю) + скрипты админовки, что настраивают всё это дело. Где то на этом пути кончается "слой с общими либами" и начинается CMS.

Sardar, я тебя совсем не понял, объясни пожалуйста, что ты этим хочешь сказать.

Цитата(awers @  16.3.2008,  06:50 Найти цитируемый пост)
Опять же пытаемся определить сервисы для несуществующих условий. Для определения "сервисов" необходимо выбрать средства реализации проекта и задачи. 

Задачи решаемые этими сервисами довольно однотипны, и мало зависят от конкретной задачи. Реализация этих функций представляет собой инфраструктурный код, который зачастую повторяется во многих проектах.

Цитата(awers @  16.3.2008,  06:50 Найти цитируемый пост)
Что касательно визуальной структуры страницы

Не понимаю к чему это. К общей концепции приложения пока мало относится.


Это сообщение отредактировал(а) Medved - 18.3.2008, 21:54


--------------------
http://extreme.sport-express.ru/
...и неважно сколько падал, важно сколько ты вставал...
PM MAIL WWW ICQ Skype GTalk   Вверх
Sardar
Дата 16.3.2008, 23:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

Репутация: нет
Всего: 317



[был флуд]

Цитата(Medved @  16.3.2008,  22:03 Найти цитируемый пост)
я тебя совсем не понял, объясни пожалуйста, что ты этим хочешь сказать.

В принципе то же, что и ты - либа с функционалом (функционал в общем понятии, к примеру делать HTTP запросы на соседний сервак) может быть разная и к CMS не относится. Проектирование интерфейсов, отображающих конкретную логику (комментарий, оценка и т.п.) это уже CMS, IMHO. Отсюда не вижу смысла отказываться от Zend Framework и тем более от PEAR. Хотя фреймворки могут накладывать свои ограничения и "верные пути" на общий дизайн системы, но гарантированно всегда есть возможность полностью реализовать полёт фантазии системного архитектора smile

На счёт "визуальной структуры страницы", хорошо конечно сверстать пару страниц, отсюда проще видно какой функционал нужен (вплоть до решений, генерим вёрстку на сервере или статика + JS/Ajax на клиенте + XML сервисы на сервере (удобно для админки)). Но выводить отсюда какие либо "пути"/ограничения на дизайн системы в целом (и тем более вшивание вёрстки в код) - глупо и резко бьёт по гибкости системы.


--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
Medved
Дата 16.3.2008, 23:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 7209
Регистрация: 15.9.2002
Где: Kazakhstan, Astan a

Репутация: нет
Всего: 154



[]

Цитата(solenko @  14.3.2008,  22:38 Найти цитируемый пост)
А вообще такое впечатление, что вы бросаетесь из крайности в крайность.

Чтобы найти середину, надо знать две крайние точки.

Это сообщение отредактировал(а) Medved - 17.3.2008, 02:17


--------------------
http://extreme.sport-express.ru/
...и неважно сколько падал, важно сколько ты вставал...
PM MAIL WWW ICQ Skype GTalk   Вверх
awers
Дата 17.3.2008, 00:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник
Сообщений: 1465
Регистрация: 22.3.2006
Где: Россия, Таганрог

Репутация: 3
Всего: 31



Цитата(Medved @  17.3.2008,  00:03 Найти цитируемый пост)
И хочу обсудить с тобой анти-паттерн Разработка комитетом.

я все понял. Спасибо
PM MAIL WWW ICQ Skype   Вверх
Medved
Дата 18.3.2008, 21:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 7209
Регистрация: 15.9.2002
Где: Kazakhstan, Astan a

Репутация: нет
Всего: 154



Продолжение. (честно признаться немного поторопился с опубликацией предыдущий информации и выложил еще сырой и необдуманный до конца материал, сейчас исправляю эту ошибку. Я немного отредактировал предыдущие посты, чтобы соблюдалась четкая логическая последовательность и взаимосвязь. Также спасибо за ваши замечания, я учел некоторые из них)


Теперь попробуем взглянуть глазами системного архитектора.

Предполагается, что будет использоваться сервис-ориентированная архитектура приложения. В этой архитектуре  данныелогика и их представление отделены друг от друга, и образуют слои приложения.
user posted image

Представление
Этот слой инкапсулирует взаимодействие с пользователем, и отвечает за визуальное представление данных и логику взаимодействия с пользователем. Он состоит из двух подслоев:
    ○ Компоненты пользовательского интерфейса - этот подслой отвечает за визуальное представление данных.
    ○ Компоненты пользовательского процесса -  отвечают за синхронизацию и организацию взаимодействия с пользователем. Таким образом логика потоков пользователя и логика взаимодействия с пользователем  реализуется отдельно от визуальных компонентов, и этот "движок" можно будет использовать в других представлениях.

Бизнес-логика
Этот слой инкапсулирует в себе реализацию бизнес-правил, бизнес-потоков и бизнес-сущностей, а также предоставляет интрефейсы к ним, которые потом используются в слое представления. Он состоит из следующих подслоев:
    ○ Бизнес-потоки - реализует необходимую последовательность логических действий (проще говоря последовательность шагов) в бизнес-процессах пользователя, которые автоматизируются в данном приложении.
    ○ Бизнес-компоненты - реализует бизнес-процессы, которые необходимо автоматизировать.
    ○ Бизнес-сущности - в этом слое описываются сущности, которые в дальнейшем участвуют в бизнес-процессах.
    ○ Сервисные интерфейсы - агрегирует и предоставляет необходимые интерфейсы для доступа  к объектам, которые реализуют бизнес-процессы. 

Данные
Этот слой отвечает за доступ к данным и предоставляет эти данные слою бизнес-логики, который в дальнейшем оперирует ими и предоставляет их пользователю.
Этот слой состоит из следующих подслоев:
    ○ Логика доступа к данным - выделение слоя логики доступа к данным централизует функциональные возможности доступа к данным что в дальнейшем облегчает их формирование, рефакторинг и дальнейшее сопровождение.
    ○ Сервисные агенты - данные могут предоставлять не только локальные источники, но так же и другие сторонние сервисы, для работы с ними и нужен этот слой. Так же выделение этого функционала в отдельный слой облегчает его дальнейшее сопровождение и модификацию.

Так же, в эту архитектуру включены компоненты реализующие коммуникацию между слоями, компоненты осуществляющих оперативное управление, это такие функции как логирование, обработка исключений, кэширование, доступ к конфигурации и др., и компоненты отвечающие за безопасность, определяющие права и привилегии пользователя, криптографию и т.д. эти компоненты доступны из всех слоев приложения.

Таким образом образуются соответствующая структура функциональных уровней приложения.
user posted image

Инструментальный уровень является базовым уровнем для всех остальных и включает в себя следующие программные сервисы:
    ○ Сервис кэширования;
    ○ Сервис логирования;
    ○ Сервис криптографии;
    ○ Сервис работы с БД;
    ○ Сервис конфигурации;
    ○ Сервис обработки исключений;
    ○ Сервис безопасности;
    
Тут ничего нового я не изобретал, а взял за основу архитектуру библиотеки Enterprise Library для платформы .Net.
user posted image

Пока все. Продолжение еще не готово к публикации, идет его написание.
Так же можно скачать исходники того материала, который я здесь изложен.
Сам проект сделан в виде раздела MS OneNote 2007, а схемы и картинки я рисую в MS PowerPoint 2007.
Vingrad CMS.one (192 Kb)
Scheme VCMS.pptx (956 Kb)

P.S. Кто-нибудь из модераторов, пожалуйста, закрепите эту тему.

Это сообщение отредактировал(а) Medved - 18.3.2008, 22:08


--------------------
http://extreme.sport-express.ru/
...и неважно сколько падал, важно сколько ты вставал...
PM MAIL WWW ICQ Skype GTalk   Вверх
solenko
Дата 19.3.2008, 02:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1473
Регистрация: 15.1.2006
Где: Украина

Репутация: 1
Всего: 67



Попытался написать фичелист. Получилось вот что:
http://docs.google.com/View?docid=dfpchwp8_20x2k7hkfc
Дополняйте и исправляйте.

Цитата(Medved @  16.3.2008,  22:03 Найти цитируемый пост)
solenko, почитай пожалуйста. Анти-паттерн.

Если ты считаеш, что какое-то из моих предложений подпадает под один из антипаттернов, то укажи, плиз какое именно и под какой.
Например:

Цитата(Medved @  18.3.2008,  20:50 Найти цитируемый пост)
 Сервис криптографии;

Это Ненужная сложность



--------------------
Ла-ла-ла-ла
Заметьте, нет официального подтверждения, что это не просто четыре слога.
PM MAIL WWW ICQ Skype   Вверх
awers
Дата 19.3.2008, 03:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник
Сообщений: 1465
Регистрация: 22.3.2006
Где: Россия, Таганрог

Репутация: 3
Всего: 31



Тему закрепил. 

В отношении криптографии согласен с solenko )
PM MAIL WWW ICQ Skype   Вверх
Medved
Дата 19.3.2008, 07:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 7209
Регистрация: 15.9.2002
Где: Kazakhstan, Astan a

Репутация: нет
Всего: 154



Цитата(solenko @  19.3.2008,  05:15 Найти цитируемый пост)
Цитата(Medved @  18.3.2008,  20:50 Найти цитируемый пост)
 Сервис криптографии;

Это Ненужная сложность


Как сервис криптографии, так и сервис валидации - это необходимые библиотеки, которые облегчат жизнь программисту и централизуют эти функции. По крайней мере я так себе это представляю. 

Я не знаю какой именно смысл ты вкладываешь в сервис криптографии и валидации, и как ты их себе представляешь. Поэтому твои замечания считаю сейчас преждевременными. Дождись целого, а потом делай окончательные выводы. 

Я потом еще перерисую последнюю схему и добавлю сервис валидации.

Сервис криптографии нужен будет для того, чтобы можно было централизованно менять алгоритмы а так же чтобы была только одна реализация, а не несколько разных в разных частях кода.

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

Цитата(solenko @  19.3.2008,  05:15 Найти цитируемый пост)
Если ты считаеш, что какое-то из моих предложений подпадает под один из антипаттернов, то укажи, плиз какое именно и под какой.

Если ты сам до этого дойдёшь, будет больше пользы. 


П.С. Ребята, если хотите делать замечания, типа таких что нужно, а что нет, или производить прочие оценки, вы сначала разберитесь с нетовской EntLib, чтобы иметь целостное представление, и потом я буду очень рад услышать ваши ценны заметки. А так, видя лишь надводную часть айсберга, пытаться судить о его всей величине, и на этом основании делать какие-либо выводы считаю глупым. 

Это сообщение отредактировал(а) Medved - 19.3.2008, 07:18


--------------------
http://extreme.sport-express.ru/
...и неважно сколько падал, важно сколько ты вставал...
PM MAIL WWW ICQ Skype GTalk   Вверх
solenko
Дата 19.3.2008, 09:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1473
Регистрация: 15.1.2006
Где: Украина

Репутация: 1
Всего: 67



Цитата(Medved @  19.3.2008,  06:14 Найти цитируемый пост)
 Ребята, если хотите делать замечания, типа таких что нужно, а что нет, или производить прочие оценки, вы сначала разберитесь с нетовской EntLib, чтобы иметь целостное представление

Мы занимаемся портированием дотнетовской библиотеки в PHP? Я не вижу ни в CMS ни в блог-хостинге задач требующих большего, чем стандартные php-шные фукнции. Или это исследование второй крайней точки? ) Тогда смиренно ждем перехода к середине )

Добавлено через 7 минут и 17 секунд
По поводу системы валидации...Это же не только набор валидаторов, но и то, как эти валидаторы вызываются. 


--------------------
Ла-ла-ла-ла
Заметьте, нет официального подтверждения, что это не просто четыре слога.
PM MAIL WWW ICQ Skype   Вверх
Medved
Дата 19.3.2008, 10:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 7209
Регистрация: 15.9.2002
Где: Kazakhstan, Astan a

Репутация: нет
Всего: 154



Цитата(solenko @  19.3.2008,  12:58 Найти цитируемый пост)
Мы занимаемся портированием дотнетовской библиотеки в PHP? 

А зачем ее портировать? Я не понимаю.

Цитата(solenko @  19.3.2008,  12:58 Найти цитируемый пост)
Я не вижу ни в CMS ни в блог-хостинге задач требующих большего, чем стандартные php-шные фукнции. 

Если спуститься до уровня мышления кодера, то я тоже с тобой в этом согласен. php-х функций будет вполне достаточно.

Цитата(solenko @  19.3.2008,  12:58 Найти цитируемый пост)
Или это исследование второй крайней точки? )

Нет, это разработка системной архитектуры будущей CMS, более точно - разработка инструментального уровня.

Это сообщение отредактировал(а) Medved - 19.3.2008, 11:00


--------------------
http://extreme.sport-express.ru/
...и неважно сколько падал, важно сколько ты вставал...
PM MAIL WWW ICQ Skype GTalk   Вверх
solenko
Дата 19.3.2008, 11:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1473
Регистрация: 15.1.2006
Где: Украина

Репутация: 1
Всего: 67



Цитата(Medved @  19.3.2008,  09:57 Найти цитируемый пост)
 А зачем ее портировать? Я не понимаю.

Вот и я не понимаю зачем мне "сначала разбираться с нетовской EntLib"


--------------------
Ла-ла-ла-ла
Заметьте, нет официального подтверждения, что это не просто четыре слога.
PM MAIL WWW ICQ Skype   Вверх
Medved
Дата 19.3.2008, 12:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 7209
Регистрация: 15.9.2002
Где: Kazakhstan, Astan a

Репутация: нет
Всего: 154



Цитата(solenko @  19.3.2008,  14:05 Найти цитируемый пост)
Вот и я не понимаю зачем мне "сначала разбираться с нетовской EntLib" 

Чтобы давать мне дельные советы и предложения.

Добавлено через 12 минут и 19 секунд
Тут хочу еще сделать одно маленькое отступление.

Вообще-то, прежде чем приступать к системной архитектуре, необходимо произвести системный анализ.
Но наш проект имеет свободный формат, и можно немного варьировать этапы.

Я сделал это потому, что системный анализ займет определенное количество времени, а в это время те кто хочет писать код, будут сидеть без дела.

А так системный анализ инструментального уровня уже проеден участниками проекта EntLib, и разработана превосходная архитектура. 
Можно взять эти наработки, адаптировать их  и приступить непосредственно к кодингу. 
И пока будет кодироваться инструментальный уровень, можно будет параллельно производить анализ и проектирование непосредственно предметной части нашей задачи.


--------------------
http://extreme.sport-express.ru/
...и неважно сколько падал, важно сколько ты вставал...
PM MAIL WWW ICQ Skype GTalk   Вверх
Страницы: (4) Все 1 2 [3] 4 
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Vingrad CMS | Следующая тема »


 




[ Время генерации скрипта: 0.1205 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.