|
Проектирование приложения(Готовые классы vs Абстракции)
|
|||
---|---|---|---|
#18+
Всем добрый день. Стоит задача создать бизнес приложение(asp .net), которое бы работало с некой сущностью товар. Модель товара представляется следующим образом: --Категория --Класс1 товаров --товар1 -->характеристики(набор свойств) --товар2 -->характеристики(набор свойств) --товар3 -->характеристики(набор свойств) --Класс2 товаров --товар4 -->характеристики(набор свойств) --товар5 -->характеристики(набор свойств) .... --КлассN товаров --товарN -->характеристики(набор свойств) Какие вижу архитектуры я: 1) Создаем иерархию сущностей. Category; Class1 : Category, Class2: Category,...; Product1:Class1,Product:Class2 То есть получаются заранее известные классы с набором известных свойств Под каждый класс делаем форму со статическим контролами (view_product.aspx) +Простота реализации -Негибко и немасштабируемо(при добавлении нового класса или товара или характеристики придется добавлять новые сущности в приложение) 2)Положить все в базу. Путем создания таблиц метаданных: PRODUCT(с ведением ирархии) PRODUCT_CHARACTERISTIC(характеристики продуктов) В этом случае появляется гибкость. Масштабирование путем редактирования базы. Посмотрим на приложение. Мне видится 2 сущности: Product и Characteristic. Пока еще не ясно будет ли удобно работать с довольно абстрактным Product, где все его поля это список Characteristic, чем с конкретным Product1 с известными полями. Делаем одну форму(product.aspx?type=...) на все продукты, и рисуем ее в зависимости от характеристик товара.Просто динамически формируемконтролы Может тогда динамически строить классы по метаданным из БД и на выходе получать набор ProductN. Мне кажется .NET это сможет +Гибко и масштабируемо -Реализация. Время? Вот вообщем-то и вся дискуссия. Интересны Ваши мнения кто, что думает. Заранее спасибо ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2009, 00:31 |
|
|
start [/forum/topic.php?fid=33&gotonew=1&tid=1548505]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
58ms |
get topic data: |
9ms |
get first new msg: |
6ms |
get forum data: |
2ms |
get page messages: |
38ms |
get tp. blocked users: |
1ms |
others: | 12ms |
total: | 156ms |
0 / 0 |