Поиск:

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


Эксперт
****


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

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



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

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


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


Эксперт
****


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

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



Чтобы немного сориентироваться, в помощь несколько ссылок 
Определение CMS в википедии
Краткий список наиболее популярных CMS
Большой каталог существующих CMS с подробными характеристиками.

Рекомендую зайти по последней ссылке, так как там можно посмотреть сравнения CMS по функциональности и др. характеристикам. 

Это сообщение отредактировал(а) Medved - 21.2.2008, 23:52


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


Эксперт
***


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

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



Предлагаю для обсуждения:

1. Сущности, которыми должна оперировать CMS
1.1. База данных -- слой абстракиции, с которым будут работать все модули и остальные части ядра
1.2. Модуль -- произвольный класс/набор функций
1.3. Событие -- каждый модуль может зарегестрировать обработчик события а также порождать новые события или типы событий. 
1.4. Шаблон -- набор классов/функций отвечающих за визуальное отображение контента
1.5. Пользователь -- сюда также входит система контроля доступа. Возможно, группы пользователей (хотя как мне кажется, группы пользователей можно вынести в уже в отдельный модуль). Да и по поводу контроля доступа мучают сомнения -- возможно правильние сделать это на уровне события запроса доступа.
1.6. Форма -- вынесено сюда просто для того, чтобы ЗАСТАВИТЬ пользоваться внутренней системой форм, что позволит обрабатывать их события
1.7. Еденица контента -- произвольная еденица контента, функциональность которой определяется модулями. Вынесена сюда опять же для того, чтобы централизовано обрабатывать базовые события.




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


Новичок



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

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



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

Выделение основного кода PHP из кода страниц, с помощью функций или классов, не помогает дизайнеру, ему все еще приходится уметь программировать на PHP. Частично данную проблему решают шаблонизаторы, но их применение (например Smarty), для дизайнера, почти ничем не отличается от программирования: все теже операторы PHP в немного другом виде. Возможным решением проблем дизайнера является применение XSLT, но у данной технологии есть свои неудобства. Использование компонентной сборки страниц (ASP.NET) из разных элементов управления прибавляет проблем в тестировании и дизайне CSS.

Императивное программирование плохо подходит для создания страниц сайтов, т.к. много кода приходится просто повторять. Необходимо переходить на декларативное описание страниц, как изначально был создан HTML и подобные языки. Эти языки говорят не о том, как рисовать страницу (по-пиксельно, полигонами и подобными инструкциями), а о том какой вариант отображения страницы браузером мы хотим увидеть. Тоже самое необходимо использовать при разработке сложных информационных систем: сайтов и прикладных программ. Хотя некоторые части программ удобнее делать в императивном виде, бывают алгоритмы, которые удобнее писать в виде набора инструкций. Но большинство алгоритмов работы сайта удобнее написать единожды в императивном стиле, а потом использовать множество раз с помощью декларативной настройки их выполнения, того каким мы хотим увидеть результат их работы.

Тезисы данного текста:
1. Удобнее разделять слои данных, логики и отображения.
2. Минимизация связей между слоями, либо точное описание возможных связей.
3. Необходимо предоставить дизайнеру удобство и легкость создания и отладки верстки отображения.
4. Сайт должен строиться на основе декларативной настройки алгоритмов.
5. Необходима возможность добавления императивных алгоритмов пользователем CMS.
PM WWW   Вверх
Medved
Дата 22.2.2008, 23:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



EsAlexey, ты говоришь о паттерне Модель-Вид-Контроллер  (MVCMVC для web). Это понятно. Практика хорошего стиля программирования.
Я понимаю твой энтузиазм по этому поводу. Когда я для себя открыл этот паттерн, все мои взгляды на программирование коренным образом изменились. Рекомендую почитать темы в этом разделе, так как уже многое обсуждалось, и в том числе этот вопрос. Например здесь
До сих пор затрагивались только инфраструктурные вопросы программирования. Т.е. КАК нужно программировать. 
То же самое делали и авторы предыдущих тем и топиков в данном разделе (по большей части). 
Но это вопросы второй стадии - проектирования. 

В первую же очередь необходимо определится с тем, ЧТО программировать, а не КАК. 

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

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

Общая концепция как раз-то и очерчивает круг задач которые необходимо решить.

Некотрые аспекты общей концепции обсуждаются в этих топиках 
Какие CMS уже разработаны и доступны
Админка системы (планирование и обсуждение)
CMF или подобие...

Но эти темы лишь отрывочные куски, не имеющие общего скелета. Так... тут кусочек, там кусочек...

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

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

Вот давайте вместе и подумаем об этих требованиях.

Это сообщение отредактировал(а) Medved - 22.2.2008, 23:52


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


Эксперт
***


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

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



Цитата

В первую же очередь необходимо определится с тем, ЧТО программировать, а не КАК. 

Мне казалось, что планируется написание CMS. Даже верка форума так называется )
Цитата

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

Такой функционал должен реализовываться установкой CMS + установкой модуля "блог" + установкой модуля "форум"


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


Эксперт
****


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

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



Цитата(solenko @  24.2.2008,  11:26 Найти цитируемый пост)
Мне казалось, что планируется написание CMS. Даже верка форума так называется )

Каждый понимает это слово по своему. CMS - CMS рознь. CMS - понятие обширное. Общее. А нам нужна конкретика.
У нас получается примерно следующий диалог (только я слово "CMS" заменил на слово "программа"):
- Давайте писать программу!
- Да! Давайте писать программу!
- А какую программу мы будем писать? Что она будет делать?
- Ну как!? Разве эта ветка форума не называется "Давайте напишем программу?". Вот, программу и будем писать. Я предлагаю все сделать на основе MVC.
- А что это программа будет делать? Для кого она нужна? Какие задачи будет решать эта программа?
- Ну как!? Это ведь "программа"! Все ясно и понятно!

Цитата(solenko @  24.2.2008,  11:26 Найти цитируемый пост)
Такой функционал должен реализовываться установкой CMS + установкой модуля "блог" + установкой модуля "форум" 

А что представляет из себя эта CMS? Я вот "тупой" юзверь,  вообще не знаю что это за три буквы. Может вы меня на йух посылаете? Можете мне как последнему пользователю, который будет пользоваться этой программой, объяснить, что такое CMS, и как она для меня будет выглядеть?


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


Эксперт
***


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

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



Цитата

Я вот "тупой" юзверь,  вообще не знаю что это за три буквы. Может вы меня на йух посылаете? Можете мне как последнему пользователю, который будет пользоваться этой программой, объяснить, что такое CMS, и как она для меня будет выглядеть?

Значит смотри, заходиш на сайт в раздел даунлоадс там выбираешь... Тебе ж блог нужен? Ну вот там отдельный пункт есть.  Как скачаеш, разархивируеш и зальешь по фтп. Ну а там дальше мастер -- там все на русском, все понятно.

А если серьезно то...
Любая CMS состоит из фреймверка и набора модулей. Функциональность набора модулей определяется как раз модулями. Для комфорта пользователей можно сделать такие варианты получения CMS конечным пльзователем:
1. Чистая версия без единого модуля. Из функционала только админка, зайдя в ктороую можно установить модули (список автоматически получается с community сайта, при нажатии "установить" модуль скачивается и устанавливается)
2. Типовые сборки а-ля блог, новостной портал, форум 
3. Конструктор -- позволяет выбрать из списка модулей те, которые будут включены в дистрибутив.

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



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


Эксперт
****


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

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



http://forum.vingrad.ru/forum/topic-197699.html - вот первый этап создания общей концепции.

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


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


Эксперт
***


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

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



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


Эксперт
****


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

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





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


Эксперт
***


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

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



awers, далеко не в недры -- о реализации пока речи не шло, а пытаюсь залезть потому что остальное (в частности определение потребителей) это вопрос второго этапа, на котором пишется некая критическая масса модулей, позволяющая использовать CMS простому пользователю.


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


Эксперт
****


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

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



Цитата(solenko @  25.2.2008,  11:51 Найти цитируемый пост)
awers, далеко не в недры -- о реализации пока речи не шло, а пытаюсь залезть потому что остальное (в частности определение потребителей) это вопрос второго этапа, на котором пишется некая критическая масса модулей, позволяющая использовать CMS простому пользователю.


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

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

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

Чтобы написать программу, которая понравится пользователю, надо самому стать этим пользователем, влезть в его шкуру, и понять что бы мне  хотелось, будь я обычным юзером, и ничего не зная при этом об ИТ-технологиях.

В основе любого успешного продукта лежит, в первую очередь, хорошо продуманная идея полезности конкретного продукта, по отношению к тому, кто будет его использовать. 

Хорошая реализация играет второстепенную роль. 

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

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



Это сообщение отредактировал(а) Medved - 25.2.2008, 10:34


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


Эксперт
***


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

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



Medved, фрейверк как раз нужен для подключения модулей и обеспечения взаимодействия между ними )
Цитата

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



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


Эксперт
****


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

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



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

Добавлено @ 09:38
Проведу еще небольшую аналогию с автомобилем. 

Мы тут собрались конструкторы. И решили, давайте разработаем автомобиль. 

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

Даже больше я тебе скажу. По личному опыту. С таким подходом ты никогда не напишешь фреймворк. 
Да. Ты начнешь. Создашь пару классов. Может быть даже и больше. Но потом, в определенный момент встанешь... и все... так и будет твой недописанный фреймворк лежать мертвым грузом на твоем винчестере, ожидая, когда же ты удосужиться познакомить себя с объектно-ориентированным проектированием, которым мы сейчас тут и занимаемся.

Это сообщение отредактировал(а) Medved - 25.2.2008, 09:56


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


Эксперт
***


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

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



Medved, аналогия с автомобилем, конечно, интересна, но вы зря поставили "или" а не "и". Я хочу посмотреть на конструктора который проектирует авто -- минивен, внедорожник и гоночный автомобиль в одном флаконе. А ведь именно такие требования предъявляются к CMS )

Вы сейчас еще не занимаетесь проектированием. Вы занимаетесь анализом рынка.

ООП как раз подразумевает выделение единообразный сущностей, которые изолируются друг от друга для получения слабосвязной системы.

Поясню, почему я считаю что не стоит писать ТЗ для каждого модуля, который будет входить в систему как базовый. 
Да, продукт ориентирован на конечного пользователя, но нет какого-то узкого сегмента, потребности которого нужно покрыть. Насколько я понимаю, планируется не решение вроде ocCommerce или Wordpres, а система, претендующая на звание универсальной. 
Если система будет проектироваться с жесткой привязкой к конечному функционалу, то получить универсальное становится сложнее.
У меня, к сожалению, не такой уж большой опыт в работе с СMS, но я могу сказать с уверенность, что Joomla и phpNuke писались как раз с оглядкой на конечный набор модулей, а Drupal проектировался как универсальный. Если вы пробовали писать модули для этих CMS, то смогли оценить разницу -- мне уже просто неприятно работать с той же joomlа, в которой для изменения функционала модуля необходимо лезть в его исходник.


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


Эксперт
****


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

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



Ты сейчас говоришь опять о внутренней реализации. Опять зациклился на точке зрения кодера. 

У меня уже кнопки на клавиатуре стерлись тебе объяснять.  Пальцы дымятся. Паленной кожей смердит.

Встроенные модуля будут -  как в джомла, с жесткой привязкой к конечному функционалу, или не не встроенные-  как в Drupal, без жесткой привязки - это вопросы внутренней организации. Мы же говорим о программном продукте который будет видеть конечный пользователь. Этот конечный продукт мы сейчас и разрабатываем.
Разработав этот конечный продукт, мы уже потом будет думать, как его организовывать. Так же жестко как джомла, или так же универсально как Drupal или как нибудь иначе. Потом. На втором этапе. Проектирования. 
Сейчас главное - сама задача.  Сама идея. 

Повторюсь:
В основе любого успешного продукта лежит, в первую очередь, хорошо продуманная идея полезности конкретного продукта, по отношению к тому, кто будет его использовать. 

Это сообщение отредактировал(а) Medved - 25.2.2008, 10:34


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


Опытный
**


Профиль
Группа: Участник
Сообщений: 838
Регистрация: 3.12.2005

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



Цитата
Разработав этот конечный продукт, мы уже потом будет думать, как его организовывать.

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

Добавлено через 3 минуты и 54 секунды
Слишком много текста, и так ясно, что CMS должна удволетворять потребности наибольшего круга людей, соответственно нужно уделить внимание гибкости. То, что вы просматриваете другие сайты - мягко говоря неправильно :\ Нужно смотреть более глобально - на одном ядре с одинаковым успехом крутиться интернет-магазин и домашная страничка не сможет .Соотвенно, нужно решить, чему отдавать больше предпочтений и в спорных вопросах реализации на это опираться.


--------------------
user posted image
PM   Вверх
bilbobagginz
Дата 25.2.2008, 12:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Naughtius Maximus
****


Профиль
Группа: Экс. модератор
Сообщений: 8813
Регистрация: 2.3.2004
Где: Israel

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



Привет, попробую сказать несколько копеек/агорот/центов/гривен... smile

во первых, мне не понятна концепция Vingrad CMS. мы хотим чтобы что ?
  • чтобы человек использовал винград как knowledge base ?
  • чтобы человек использовал винград как blogsphere ?
  • насколько мы хотим это интегрировать с системами оплаты, т.е. хотим ли мы здесь предложить ответы на вопросы за деньги ? (ИМХО хорошая идея). если да, то может встать вопрос конфиденциальности и вопрос ... обмана: 
    хотим ли мы брать комиссионные с "экспертов" за каждую трнсакцию ?
    если да, то нужна регистрирующая система, с сокрытием личных данных, иначе человек пойдет к эксперту напрямик, а не через винград. хотим ли мы предотвратить это ?
далее, независимые от предыдущих вопросы.

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

определимся с контентом.. кто он контент? 
  • ветки новостей
  • ветки статей
  • ветки форума
  • группы веток форума, т.е. подразделы/подфорумы
предлагаю с т.з. пользования, т.е. presentation выйти уже из статических таблиц, и представлять контент по "ярлычкам", т.е. теггирование.

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

Gлавный недостаток сегодняшнего интерфейса в том, что в ветках "как-бы" про линукс затрагиваются вопросы по базам данных, сетям и т.д., и даже если я, добросовестный морды-дратор добавил тэг сети, раздел сетей эту ветку не увидит.
т.е. проблема в том, что профессионалы раздела "А" при теге "а" не увидят вопросы в их сфере, вопрошающий не найдет ответ, и отвалит, или найдет ответ медленнее, если изначально вопрос был "запостен" в разделе "B". 
Я не говорю о явных вопросах из сферы "А", а о смежных/смешанных, которых, фактически большинство.

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

сумбурно, даю волю бестолковым мыслям smile
остановите, если несу слишком много чуши.


далее, вопрос прав доступа к контенту:
какие группы пользователей будут иметь права на что ?



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





--------------------
Я ещё не демон. Я только учусь.
PM WWW   Вверх
solenko
Дата 25.2.2008, 15:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



Цитата

Повторюсь:
В основе любого успешного продукта лежит, в первую очередь, хорошо продуманная идея полезности конкретного продукта, по отношению к тому, кто будет его использовать. 

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

Разработав этот конечный продукт, мы уже потом будет думать, как его организовывать. 

Я так понимаю тут опечатка... Не разработав, а спроектировав? Ну что ж, остается только подождать пока вы прийдете к каким-то конкретным идеям. Схожим или не схожим с моими, т.к. обсуждение общей концепции закончилось обсуждением в аське между двумя людьми, то, видимо, остальным светит максимум роль кодера. Так что ждем развития событий.


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


Новичок



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

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



Цитата(solenko @ 25.2.2008,  15:17)

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

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

Пример на основе соединения интернет-магазина и форума:
  • Объекты связей:
    • Человек (в различных ролях: покупатель, администратор, гость).
    • Каталог товаров.
    • Товар (описание и характеристики).
    • Форум.
    • Тема форума.
    • Сообщение форума.
  • Связи подчинения:
    • Роль -> человек.
    • Каталог товаров -> товар.
    • Форум -> тема -> сообщение.
  • Связи ссылки:
    • Товар -> тема форума.
    • Человек -> сообщение.
  • Связи возможностей:
    • Товар: добавление, изменение, удаление и создание темы на форуме (для администратора).
    • Товар: просмотр, покупка (для гостя и покупателя).
    • Тема форума: создание и настройка (для администратора).
    • Тема форума: просмотр (для гостя).
    • Сообщение форума: создание и изменение (для покупателя).

При правильной классификации связей будет намного легче создавать и соединять модули. Например, для модулей блог, форум и интернет-магазин понятие "человек+роль" является общим. У каждого модуля есть набор возможностей типа добавление товара, просмотр темы форума и подобных. На основе возможностей можно создавать связи-ссылки. Ссылки будут идти на возможности модулей. В результате использования таких абстракций получится сделать понятное и удобное соединение модулей, обучиться которым будет легко как программисту, так и администратору сайта.
PM WWW   Вверх
solenko
Дата 26.2.2008, 16:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



EsAlexey, а я бы строил немного не так:
Объекты связей:
Человек
Контент
Категория

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

При правильной классификации связей будет намного легче создавать и соединять модули. 

Хотя возможно я не совсем правильно понял фразу 
Цитата

На основе возможностей можно создавать связи-ссылки. Ссылки будут идти на возможности модулей. 



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


Новичок



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

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



Цитата(solenko @ 26.2.2008,  16:00)
Вот представьте, что в вашей структуре, изначально не реализована возможжность... ну, например, прикреплять изображения. В вашей структуре нужно писать дополнение для модуля "форум" и дополнение для модуля "товар". Если же мы имеем дело с абстрактным контентом, то нужно написать один модуль, который даст возможность добавлять имейджи для любого типа контента.
Для добавления возможности прикрепления изображений в сообщения форума, скорее всего, придется переписывать логику работы форума. Иначе сложно интегрировать такую функцию в модуль работы с BB-code сообщений. Хотя стоит подумать как сделать логику работы форума расширяемой (наподобие плагинов).

Цитата(solenko @ 26.2.2008,  16:00)
Хотя возможно я не совсем правильно понял фразу 
Цитата

На основе возможностей можно создавать связи-ссылки. Ссылки будут идти на возможности модулей. 

Возможность - это как абстрактный метод интерфейса (в ООП). Она позволяет обращаться к модулям из любого места сайта (обычно гиперссылкой формата: /index.php?module=forum&command=view&param1=23894). Это пока только предположение о принципах работы CMS.
PM WWW   Вверх
solenko
Дата 26.2.2008, 20:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



Цитата

 скорее всего, придется переписывать логику работы форума. Иначе сложно интегрировать такую функцию в модуль работы с BB-code сообщений.

При правильном подходе модуль bb-кодов (хотя я предпочитаю html) отправляет сообщение другим можулям и получает от всех них список поддерживаемх кодов. Далее, при отображении, если встречает незнакомы код, отправляет запрос не его рендеринг и, если получает ответ, то заменят эим самым ответом.

По поводу возможностей... Да, вполне логично строить url по принципу module/action?param1=...
Но более гибкая система получится если позволить модулям вешать колбеки на конкретный url.



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


Новичок



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

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



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

Эта информация может быть:
  • Жестко структурированная (таблица, набор полей формы, дерево каталога).
  • Форматированная (сообщения на форуме или в блогах).
  • Неупорядоченная (все остальное).
Отображаться информация тоже может различными способами:
  • HTML или XML код страницы (текст).
  • Дизайн: CSS и графика (фоновые изображения, captcha).
  • Файлы (все остальное).
Источниками могут быть:
  • Статический текст в HTML.
  • Файлы на сервере.
  • Таблицы в базе данных.
  • Результаты выполнения алгоритмов (результат поиска).
  • Текущее состояние страницы (при ошибках ввода пользователем данных в формы).
Возможные действия:
  • Просмотр информации (переход на другую страницу или поиск по сайту).
  • Добавление новой информации (оставление комментария к статье блога).
  • Модификация информации (изменение рейтинга статьи).
  • Выполнение особого действия с вводом информации (отправка сообщения через форму контактов).
  • Только модификация текущего состояния страницы (ошибка при вводе, в базу данных отправлять нельзя).

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

А осуществляют это движение действия, которые запускаются пользователем. Некоторые действия можно сделать с помощью PHP-кода (валидаторы ввода), некоторые можно только настроить (кодирование данных от формы ввода в POST), а некоторые выполняются независимо от сайта (TCP/IP).

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

Это пока мое предварительное видение фундамента CMS. Виды источников, варианты отображения и возможные действия еще нужно продолжать придумывать и обобщать. Но общие принципы описаны в этом сообщении. На всю критику отвечу либо доказательством своего видения, либо его изменением.
PM WWW   Вверх
Medved
Дата 13.3.2008, 20:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



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

Что мы имеем.
1. 5-6 постоянных участников, имеющих навыки разработки приложений. - Ресурс разработки.
2. Форум Винград - это много-много потенциальных бета-тестеров. Не более. Ну может еще пару человек присоединятся к разработке. Будем хорошо.
3. Производственные мощности Винград (технические) - ну, это хорошо, пригодятся.

Если трезво посмотреть, то с использованием имеющихся ресурсов разработать CMS довольно сложная задача. С учетом проявленного интереса, можно сказать что и неподъемная.
Давайте немного упростим задачу, и сделаем ее более реализуемой.

Я предлагаю написать не что-то вируальное, а утолить текущую реальную потребность. Блоги. Блоги на Винград. 
Это востребованный ресурс. Текущие воплощение блогов оставляет желать лучшего (это еще мягко сказано).
И не секрет, что сфера блогов растет колоссальными темпами. Так как в общем растет число пользователей блогов, форумам до этого еще срать и срать. И вполне возможно, что форумы и не достигнут таких хороших показателей. 
Этому есть множество причин. Достаточно немного проанализировать. Давайте честно признаемся, что блоги - это будущее. Это не значит что форумы вообще исчесзнут как ББС-ки. Нет. Не исчезнут. Но по числу пользователей они никогда не догонят блоги. Даже если вам это кажется спорным утверждением, не стоит отрицать мощь и потенциал развития блогов. Кто хочет об этом поговорит подробнее, создайте отдельную тему. Я с удовольствием приму в ней участие, и обосную свою точку зрения. 

Теперь ближе к делу. 
Давайте не будем прям вот сейчас приступать к написанию полноценной CMS. А будем делать все последовательно.
ИМХО более разумный вариант - это написать скелет, косяк, основу, базис. Который в дальнейшем мы сможем наращивать, и который будет обрастать функционалом, постепенно превратиться в мощную CMS.
Написание блогов для Винград - это и будет тот костяк, та основа, на которой будет базироваться в дальнейшем CMS.

Я тут за выходные кое-что накидал, предлагаю к вашему рассмотрению.

ИТАК. 

Концептуальная схема.

В конечном итоге всю функциональность интернет-сайтов  можно свести к одной базовой функции - взаимодействие между пользователями
user posted image

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

Входящая и Исходящая Информация по своему структурному составу однообразна. Этот структурный состав мы будем называть Контентом. Элементами контента являются Документы.
user posted image

Основу Документа составляет Текст, в который вставлены различные структурные элементы, такие как Изображения, Звук, Видео, Ссылки и другие.
user posted image

Документ является базовой единицей взаимодействия между пользователями.

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

Сервис - это единица функционала.  Или говоря по другому - часть программного кода, предоставляющая пользователю определенные вид услуг. Сервисы могут иметь в своем составе другие сервисы (подсервисы).

Отдельное внимание можно уделить подсервисам входящим в  сервис Бокс сообщений. Бокс сообщений - это своеобразная коллекция входящих и исходящих документов пользователя. 
user posted image

Приведенная выше схема предлагается как базовая концепция будущей CMS.  Это так сказать взгляд на систему глазами пользователя. 

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


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


Эксперт
***


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

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



Да, прошу меня извинить, просто огромный завал с работой. Вставать в 6, ложиться в 2 - это не так просто. Уже через пару дней появится время.
PM MAIL WWW ICQ Skype   Вверх
solenko
Дата 14.3.2008, 19:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



Medved, красивые катинки)

Цитата(Medved @  13.3.2008,  19:32 Найти цитируемый пост)
Инструментальный уровень является базовым уровнем для всех остальных и включает в себя следующие программные сервисы: 

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

Сервис криптографии;

А зачем?
Цитата

Сервис работы с БД;

Вопрос в уровне абстракции. Это будет уровень ORM или просто библиотечка позволяющая удобно выполнять sql запросы
Цитата

Сервис безопасности;

Имеется в виду система управления доступом? Опять же очень сильно зависит от механизма взаимодействия пользователей.
Цитата

Сервис проверки (валидации) вводимых данных;

Обычно система валидации тесно связана набором компонентов. Так что стоит определиться сначала будет ли он и в каком виде (думаю бует, т.к. преобразование ссылок просто обязано быть)

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






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


Эксперт
***


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

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



Medved действительно красиво рисуешь )

    ○ Сервис кэширования; - сейчас лишнее, вначале нужно отработать структуру
    ○ Сервис логирования; - да, пожалуй это важно, только Журналирование
    ○ Сервис криптографии; - md5 и base64 мало ?
    ○ Сервис работы с БД; - БД это уже сервис, скорее удобоваримый интерфейс
    ○ Сервис конфигурации; - от этого конечно не убежать
    ○ Сервис обработки исключений; - вот в этом не вижу смысла, это то чем занимается программист.
    ○ Сервис безопасности; - что это? sql injection? ddos атаки? подбор паролей?
    ○ Сервис проверки (валидации) вводимых данных; - это тоже не сервис, а набор патернов скорее, который можно хранить в конфигурации

Опять же пытаемся определить сервисы для несуществующих условий. Для определения "сервисов" необходимо выбрать средства реализации проекта и задачи. 


Что касательно визуальной структуры страницы Я думаю так:
user posted image
Где есть только один основной блок - body и в нем только один основной суб-блок main. Все остальные блоки не обязательны и любой суб-блок можно привязать к любому блоку. Далее оформление и местонахождение на экране определяет шаблон и конфигурация модулей.

Рассмотрим модуль голосования (от пользователя до недр CMS) :
1) Блок отображенный на странице
2) Контролы блока (кнопка "голосовать")
3) CSS блока
4) Данные блока
5) CMS Модуль блока
6) Данные блока в БД
7) Конфигурация модуля

Вызов данных блока может проходить как по всему ядру CMS, так и по каким-то поинтам, снижая нагрузку. (это справедливо для AJAX/AJAH/AJAJ сервисов). Разбором и управлением этими запросами можно сложить на "обработчика запросов", который будет разбирать запросы типа "дайте страничку такую" или "дайте контент такой-то странички" или "дайте принт-форму такой-то страницы" или "получите POST данные для сервиса AJAJ в модуль VOTE" ... 

Набросал тут: user posted image

Из средств реализации я предлогаю: 
php (как платформа)
PDO (как драйвер для доступа к бд)
XSLT (как шаблонизатор)
CSS (как единственное средство оформления, сим исключаем на 99% html. смотрите исходники opera.com к тому же это существенно снизит нагрузку на сервер, т.к. css очень хорошо кэшируется браузерами, шаблоны будут содержать кратно меньше данных, что повысит быстродействие шаблонизатора и снизит нагрузку на сервер)
jQuery (как рабочая часть приложения у клиента, что позволяет нам частично отказаться от "сервиса валидации")
AJAJ (как основное средство передачи данных клиент/сервер)

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


Ладно, завтра продолжу.

Это сообщение отредактировал(а) awers - 16.3.2008, 04:02
PM MAIL WWW ICQ Skype   Вверх
Sardar
Дата 16.3.2008, 04:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


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

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



Цитата(Medved @  13.3.2008,  19:32 Найти цитируемый пост)
Инструментальный уровень является базовым уровнем для всех остальных и включает в себя следующие программные сервисы:
....

Тут лучше Zend Framework взять или PEAR (+ базу MediaWiki, там всё для жизни есть)). Общие либы почти всегда уже реализованы.


--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
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   Вверх
solenko
Дата 19.3.2008, 15:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



Цитата(Medved @  19.3.2008,  11:03 Найти цитируемый пост)
Тут хочу еще сделать одно маленькое отступление.

Очень рад что ты наконец-то решил прояснить ситуацию.

Цитата(Medved @  19.3.2008,  09:57 Найти цитируемый пост)
Если спуститься до уровня мышления кодера, то я тоже с тобой в этом согласен. php-х функций будет вполне достаточно.

Поясни почему недостаточно будет их если "не спускаться". Зачем нужна дополнительная обертка для стандартных функций? Потрудись дать ответ.

Цитата(Medved @  19.3.2008,  11:03 Найти цитируемый пост)
А так системный анализ инструментального уровня уже проеден участниками проекта EntLib, и разработана превосходная архитектура. Можно взять эти наработки, адаптировать их  и приступить непосредственно к кодингу. 

Почему выбрана для копирования архитектуры .NET платформа, а не PHP? Опять же, жду аргументации, а не фразы "если спуститься до уровня кодера, то можно и php"
(да я понимаю, что архитектура слабо привязана к языку. Однако нектороые нюансы все же есть. Это всплывает уже сейчас -- сервис криптографии -- и, возможно, будет всплывать и позже. Кроме того, т.к. разработка будет вестись на php, значительно больше шансов, что кто-то из команды уже знаком с выбранной системой)

Это сообщение отредактировал(а) solenko - 19.3.2008, 15:40


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


Эксперт
***


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

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



solenko, я тоже часто задумывался о "портировании" некоторой идеологии .net на php. Скажу откровенно  - в этом есть смысл
PM MAIL WWW ICQ Skype   Вверх
Medved
Дата 20.3.2008, 05:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



Цитата(solenko @  19.3.2008,  18:34 Найти цитируемый пост)
Поясни почему недостаточно будет их если "не спускаться". Зачем нужна дополнительная обертка для стандартных функций? Потрудись дать ответ.

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


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


Эксперт
***


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

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



Medved, а не пробовал заглянуть в состав этого сомого сервиса криптографии в entlib? Что туда вынесено? md5, base64... А попробовать подумать зачем? Возможно потому, что .NET библиотеки пишутся для использования из многих языков и не во всех есть нативные функции для этих методов или звучат они по-разному? 
А теперь попробовать подумать зачем нужен этот сервис в php билиотеке, которая будет использоваться только из php?
Почитай вот эту статью. Там, к сожалению, не описано как этим пользоваться, но именно применение этого отличает программиста от человека, просто прочитавшего много книг.

Это сообщение отредактировал(а) solenko - 20.3.2008, 09:02


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


Эксперт
****


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

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



solenko, остынь пожалуйста.
Давай работать. Мне не нужно доказывать какой ты умный. Это покажут результаты твоего труда, а не знания, которыми ты обладаешь. Я тебе не пытаюсь доказать, что у меня голова больше твоей. Хотя к сожалению, видимо ты именно так и воспринимаешь информацию исходящую от меня. :(
Вообщем хватит мериться письками, и давай конструктив в дальнейшем. 
Самоутверждаться лучше результативным трудом, а не попытками оскорбить других. 

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

Это сообщение отредактировал(а) Medved - 20.3.2008, 09:40


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


Эксперт
***


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

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



Думаю интересно будет поучиться на чужом опыте 
тут
надеюсь не покажется не относящимся к нашей задаче

Это сообщение отредактировал(а) awers - 24.3.2008, 18:00
PM MAIL WWW ICQ Skype   Вверх
Medved
Дата 25.3.2008, 06:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


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

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



Цитата(awers @  24.3.2008,  21:00 Найти цитируемый пост)
Думаю интересно будет поучиться на чужом опыте 
тут
надеюсь не покажется не относящимся к нашей задаче

А.. Джоуля почитываешь.. респект...

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


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


Эксперт
***


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

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



и еще для размышления 
http://extjs.com/deploy/dev/examples/
а особенно 
http://extjs.com/deploy/dev/examples/desktop/desktop.html
PM MAIL WWW ICQ Skype   Вверх
Input
Дата 27.3.2008, 01:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 13.3.2008

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



Цитата(awers @ 27.3.2008,  00:53)
и еще для размышления 
http://extjs.com/deploy/dev/examples/
а особенно 
http://extjs.com/deploy/dev/examples/desktop/desktop.html

Пол года назад обратил на этот прект внимание. По-моему здорово и легко поможет создать хороший интерфейс!
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Vingrad CMS | Следующая тема »


 




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


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

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