Про разработку новой версии сайта

Sep 14, 2006 23:58

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

БД для ведения генеалогической информации была разработана мной весной-летом 2003 года. В БД порядка 10 сущностей, программа ведения БД была разработана на C++. После прошествия трех лет я хочу переработать БД.

Мне нужно:

1. Расширяемая и гибкая ( Read more... )

development

Leave a comment

Comments 15

beskov September 14 2006, 21:13:40 UTC
Ну это понятно, смотрите какие герои у нас есть

Мой вопрос был-таки про древовидные структуры)

Reply

corneff September 15 2006, 10:15:47 UTC
Про героев посмотрел. Я того же хочу :), только меня и толстый клиент очень сильно интересует.

По поводу древовидности - в БД сущности хранятся стандартным образом: замыкание на себя (правда, в силу специфики предметной области, не напрямую, а через еще одну таблицу).

В UI сделан framework, состоящий из glyphs. Глифы - либо примитивные (строка, прямоугольник и т.д.), либо композитные (дерево, таблица и т.д.). Глифы умеют правильно позиционироваться и отрисовывать себя. Кроме того, глиф несет ссылку на внешний объект.

Есть еще reporter, который по определенным правилам из объектов делает глифы. Соответвенно, в UI получаем набор глифов, которые отрисовывают то, что нужно (дерево). При клике мыши активируется объект по ссылке из глифа.

Reply

beskov September 15 2006, 10:21:56 UTC
а как выполняются задачи типа - получить всех потомков, получить всех родственников не дальше N расстояний и т.д.? Кастомный SQL написан?

Reply

corneff September 15 2006, 10:30:37 UTC
В C++ это было сделано так:

Есть класс Person, являющийся узлом дерева. Внутри есть массив детей (тоже Person), по умолчанию не инициализированный. При запросе количества детей либо ребенка по номеру лезет в базу, создает по базе дочерние объекты и складывает в массив. При следующем запросе в БД уже не лезет.

Поверх этого работают алгоритмы, которым вообще-то БД пофигу. В C# делаю нечто подобное за исключением того, что классы типа Person будут генерироваться автоматически по шаблону.

Reply


tsoroka September 15 2006, 07:28:26 UTC
Может, пора тебе на новый, кошерный, дружественный хостинг переезжать? :)

Reply

corneff September 15 2006, 10:11:38 UTC
Вот состряпаю новую версию и перееду.

Reply

tsoroka September 15 2006, 10:24:41 UTC
Я думаю, что одна дружественная фирма с радостью предложит тебе хостинг. :)

Reply

corneff September 15 2006, 10:27:00 UTC
Завсегда, только у меня аппетит большой :)
Нужен .Net 2.0 + MS SQL 2005

Reply


cornerles September 16 2006, 18:05:12 UTC
Чем тебе не нравятся обычные ORM + 3-х звенка ?

Reply

corneff September 18 2006, 20:05:45 UTC
Дима, не путай разные вещи. Ту же трехзвенку и ORM можно писать руками, а можно и автоматически генерить.

Reply

cornerles September 19 2006, 09:10:47 UTC
ORM Готовых Валом , А логику и представление в любом случае придется писать, не на одном так на другом языке

Reply

corneff September 19 2006, 10:35:14 UTC
Логику - да, представление - нет.
А потом, до SQL тоже писали на функциональных языках доступа к БД. Потом перешли к декларативным. Соответственно, структуру программы и представление данных лучше описывать на декларативном уровне.

Reply


beskov October 5 2006, 07:17:49 UTC
Наверное вам будет интересно - Визуализация связей между историческими персонажами - http://anton-y-k.livejournal.com/19996.html?mode=reply

Reply

corneff October 10 2006, 07:12:11 UTC
Большое спасибо, ценная информация.

Reply


Leave a comment

Up