Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Зачем нужны многозвенки ?


Страницы:   1 2 3 4 5 6

Juice ©   (2005-10-28 19:16:00) 

Это серьезный вопрос, я без шуток :)


ali_tash   (2005-11-02 19:54:00) [1]

они нужны чтоб откатать бабки за сервер приложений.

ГЫ ГЫ


TohaNik   (2005-11-02 12:12:00) [2]


> Если не секрет какой проект имелся в виду? Что-то до боли
> знакомое...


Не думаю что знакомое...
Просто на одно из предприятий приехали бывшие советские граждане и решили показать как надо работать чтобы за год создать систему управления предприятием. А за год потому что VS и NET, а еще потому что они официальные представители MS. :)


freejack   (2005-11-02 11:07:00) [3]

>TohaNik ©  (02.11.05 10:49) [105]
Если не секрет какой проект имелся в виду? Что-то до боли знакомое...


Курдль   (2005-11-02 10:58:00) [4]

Ну все, мне уже тяжко спамить на эту тему :)
Я сам раньше очень любил программировать на ассемблере, но винды всю малину испортили. А теперь еще эта поганая .NET! :)


Polevi   (2005-11-02 10:50:00) [5]

>Курдль ©   (02.11.05 10:28) [104]
это все круто конечно, но
клиенту должно быть по барабану в каком виде это все хранится


TohaNik   (2005-11-02 10:49:00) [6]


> "Бросаешь" такой датасэт на форму, бросаешь туда же DataGrid
> а лучше - dxControlGrid и получаешь таблицу с раскрывающимися
> нодами (типа аутлук), в которых на верхнем уровне иерархии
> юрики, а на следующем - все остальные.

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


Курдль   (2005-11-02 10:28:00) [7]


> Polevi ©   (02.11.05 10:03) [103]
> непонятно нафига тащить схему хранилища на клиента
> клиенту вообще по барабану в каком виде это все хранится

Ты не работал с VS.
Повторю свой пример - датасэт с таблицей юриков, их сотрудников и их банковских счетов.
"Бросаешь" такой датасэт на форму, бросаешь туда же DataGrid а лучше - dxControlGrid и получаешь таблицу с раскрывающимися нодами (типа аутлук), в которых на верхнем уровне иерархии юрики, а на следующем - все остальные.
Кроме того, я считаю бесценной возможность "гулять" по релэйшнам типа GetChildRows, GetParentRow. Есть и другие приятные возможности, которые на "однотабличном" датасэте реализовывать затибидохаешься.


Polevi   (2005-11-02 10:03:00) [8]

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


TohaNik   (2005-11-01 17:59:00) [9]


>  И как же удобно, когда на экране открыта схема датасэта,

А никто и не спорит что видеть удобно, я про "всем списком" из [89], тем более для пяти таблиц. Для того же контрагета, в чем преимущество вставки скопом шапки и и списка банковских реквизитов?

> пятью разрозненными делфевыми датасэтами

Разрозненный он и один может быть, смотря что понимать по разрозненностью.


TohaNik   (2005-11-01 17:58:00) [10]


>  И как же удобно, когда на экране открыта схема датасэта,

А никто и не спорит что видеть удобно, я про "всем списком" из [89], тем более для пяти таблиц. Для того же контрагета, в чем преимущество вставки скопом шапки и и списка банковских реквизитов?

> пятью разрозненными делфевыми датасэтами

Разрозненный он и один может быть, смотря что понимать по разрозненностью.


Курдль   (2005-11-01 17:43:00) [11]


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

А я не могу понять, разве работа с сущностью, которая предполагает использование пяти таблиц, легче происходит с пятью разрозненными делфевыми датасэтами, чем с одним пятитабличным ADO.NET-овским?


> Неужели без понимания БД стоит этот датасет создавать.

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


TohaNik   (2005-11-01 17:32:00) [12]


> Разве не прЭлЭстно, когда датасэт копирует часть модели
> БД? Уверяю, что это весьма упрощает понимание БД, пограммирование
> доступа к БД и служит дополнительной защитой целостности
> данных.


Неужели без понимания БД стоит этот датасет создавать.
Что значит дополнительная защита целостности? Если она дополнительная в приложении к защите в базе то ее смысл наверняка в пояснительных диалогах и т.п., если нет то она не дополнительная, а основная т.к. база эту целостность не обеспечивает.

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


Val   (2005-11-01 17:12:00) [13]

>[97] Курдль ©   (01.11.05 17:09)
сорри тогда, не врулил. с этим согласен.


Курдль   (2005-11-01 17:09:00) [14]


> TohaNik ©   (01.11.05 16:59) [94]
> Ну всеравно это  "всем списком" не приведет ни к чему хорошему,
>  тем более чем больше связей в сущности(многотабличном датасете)
> тем быстрее и не приведет.

Разве не прЭлЭстно, когда датасэт копирует часть модели БД? Уверяю, что это весьма упрощает понимание БД, пограммирование доступа к БД и служит дополнительной защитой целостности данных.


> Val ©   (01.11.05 16:59) [95]
> непонятно, к чему вы это...я оспариваю ваше высказывание о ненужности хп вообще-то :)


А я не говорил о не нужности ХП в глобальном масштабе. Я говорил, что без них легко можно обойтись на уровне сервера приложений, если требуется проект, который может быть приспособлен к какой угодно СУБД на выбор заказчика. И это все вытекало из пользы трехзвенки, что напрямую связано темой топика! :)


TohaNik   (2005-11-01 17:06:00) [15]


> Не поверишь - сейчас рабочая база (с которой компания активно
> работает больше 2-х лет), в которой около 100 таблиц, многие
> из которых содержат более миллиона записей, не имеет ни
> одного триггера. Есть одна хранимая процедура - возвращает
> версию последнего апгрэйда базы.

Ну почему не поверим, охотно поверим, наверняка причины были.
Оч интересно какие?


TohaNik   (2005-11-01 16:59:00) [16]


> Курдль ©   (01.11.05 15:30) [89]

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

Например есть у нас ИНН на тыщ 20 контрагентов, ну не вижу я смысла проверять ни на каком уровне кроме как самой базой, тоже со счетами в комбинации с МФО.
Ну всеравно это  "всем списком" не приведет ни к чему хорошему, тем более чем больше связей в сущности(многотабличном датасете) тем быстрее и не приведет.


Val   (2005-11-01 16:59:00) [17]

почему же не поверю, всякое бывает :) мне все-равно сколько у вас там триггеров, только непонятно, к чему вы это...я оспариваю ваше высказывание о ненужности хп вообще-то :)


Курдль   (2005-11-01 16:48:00) [18]


> Val ©   (01.11.05 16:31) [91]
> ...а в триггерах дублирование кода :) зачем вслепую отказываться
> от предлагаемых возможностей сервера? все равно ведь в теле
> триггера на диалекте писать будете :)


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


Курдль   (2005-11-01 16:41:00) [19]


> ANB ©   (01.11.05 16:28) [90]


Без ручного программирования - никак! Я этот пример про трехзвенку прям с открытого проекта привожу. Точнее с решения (solution), которое включает 11 проектов (около 4000 файлов). Но в VS это настолько запросто живет и поддерживается, что не замечаешь масштабности.
Однозначно скажу, что есть предел глобализации проекта, когда уже усложнять невозможно - все рушится, друг с другом не согласуется, конфликтует и т.п.
У Делфей этот порог гораздо ниже.
А на "Oracle Application, forms, discoverer..." или на САП любят себя автоматизировать крупные монстроидальные корпорации. Во-первых, бабло удобно списывать, во-вторых - штат невдолбенно дорогих спецов "из своих" прикармливать и понты бросать. Есть предубеждение, что на "полупрограммируемых полуфабрикатах" типа перечисленных или даже совсем убогонькой 1С, поддерживать и совершенствовать систему проще. Типа "не в исходниках копаться, а модулями ворочать и скрипты подстраивать".


Val   (2005-11-01 16:31:00) [20]

Но для этого вполне достаточно правильной структуры БД и в сложных местах - парочку-тройку триггеров.
...а в триггерах дублирование кода :) зачем вслепую отказываться от предлагаемых возможностей сервера? все равно ведь в теле триггера на диалекте писать будете :)


Страницы:   1 2 3 4 5 6

Наверх

Титульная страница Поиск, карта сайта Написать письмо