Гость
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / Трёхзвенка, бизнес-логика / 22 сообщений из 22, страница 1 из 1
17.09.2009, 20:39
    #36202749
avarice
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Трёхзвенка, бизнес-логика
Мы с коллегами планируем разработку трёхзвенного enterprise-приложения, и возник у нас спор - где лучше реализовывать бизнес-логику?
Я считаю, что бизнес-логика должна обрабатываться на стороне сервера приложений, желательно с использованием ORM, в то время как некоторые коллеги считают что удобнее и проще реализовывать её в хранимых процедурах на сервере СУБД.

А как считает уважаемое сообщество?

Какие, по вашему мнению, плюсы и минусы того или другого подхода?
...
Рейтинг: 0 / 0
17.09.2009, 21:09
    #36202785
iscrafm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Трёхзвенка, бизнес-логика
avarice,
здесь уже слишком много было холиваров на эту тему.
...
Рейтинг: 0 / 0
17.09.2009, 21:11
    #36202786
avarice
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Трёхзвенка, бизнес-логика
iscrafm, я тоже предполагал что это уже не раз обсуждалось, но я поискал по форуму "ORM" - ничего такого не нашёл.
Если не сложно - ткните носом в темы.
...
Рейтинг: 0 / 0
17.09.2009, 21:29
    #36202804
iscrafm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Трёхзвенка, бизнес-логика
самый знаменитый пожалуй этот Воды в нем конечно 90%, но если терпения хватит дочитать, то на тему где реализовать бизнес-логику мнения в нем высказываются. Лично я предпочитаю по обстоятельствам проектировать. Если БЛ можно возложить на СУБД, то конечно СУБД.
...
Рейтинг: 0 / 0
17.09.2009, 21:34
    #36202812
Relic Hunter
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Трёхзвенка, бизнес-логика
А шо за биснес логика? Растолкуй...avariceгде лучше реализовывать бизнес-логику?
...
Рейтинг: 0 / 0
17.09.2009, 21:59
    #36202834
Naf
Naf
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Трёхзвенка, бизнес-логика
Зачем будет нужен 2-й слой, если все будет использоваться на крайних?
С уважением, Naf
...
Рейтинг: 0 / 0
18.09.2009, 09:31
    #36203183
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Трёхзвенка, бизнес-логика
NafЗачем будет нужен 2-й слой, если все будет использоваться на крайних?
С уважением, Naf
+1 :)
Прочти до конца ссылку iscrafm
...
Рейтинг: 0 / 0
18.09.2009, 09:56
    #36203257
Naf
Naf
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Трёхзвенка, бизнес-логика
Petro123NafЗачем будет нужен 2-й слой, если все будет использоваться на крайних?
С уважением, Naf
+1 :)
Прочти до конца ссылку iscrafm все 44 страницы? 0_о
...
Рейтинг: 0 / 0
18.09.2009, 10:10
    #36203294
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Трёхзвенка, бизнес-логика
Naf,
когда то у меня был новый проект как у автора.
Пришёл на этот сайт.
Первый же профи pkarklin мне дал ссылку и я вынужден был прочесть все 8-)
...
Рейтинг: 0 / 0
18.09.2009, 10:30
    #36203360
iscrafm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Трёхзвенка, бизнес-логика
в том топике 90% не относящегося к текущей теме. Обычные споры 2 или 3. 3 вовсе не означает того, что бизнес-логика строится на СП. Я, к примеру, когда как выгодней, зависит от задачи, но большей частью средствами СУБД
...
Рейтинг: 0 / 0
18.09.2009, 16:26
    #36204701
_мод
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Трёхзвенка, бизнес-логика
avariceА как считает уважаемое сообщество?
А на формсе все равно где - и там и там pl/sql.
...
Рейтинг: 0 / 0
18.09.2009, 18:02
    #36205046
Naroto
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Трёхзвенка, бизнес-логика
avariceМы с коллегами планируем разработку трёхзвенного enterprise-приложения, и возник у нас спор - где лучше реализовывать бизнес-логику?

Naroto повидало много трехзвенных решений. Коликчество решений наверное разделится пополам. На общий взгляд наверное всё зависит от подготовки персонала. Если персонал никогда ничего не писал в SQL формате - то реализация бизнес логики (под давлением начальствующего архитектора) на стороне СУБД приведёт к совершенно безобразной производительности. Если же база данных построена изначально грамотно - под спецификацию заказчика и в команде есть грамотный DBA то реализация бизнес логики трёхзвенки методами ORM или любыми другими современными методами - одно удовольствие. Но Naroto лучше удалится пожелав Автору хорошего настроения. И очень хорошего архитектора.
...
Рейтинг: 0 / 0
18.09.2009, 20:01
    #36205230
mcureenab
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Трёхзвенка, бизнес-логика
Не скажу за всю Одессу. Скажу за Оракл.

Сложные манипуляции с данными очень удобно кодировать на PL/SQL в хранимых процедурах.

Если требуется большая производительность, придётся использовать что нибудь типа C++. SQL запросы внедряются в C++ совсем не так изящно как в PL/SQL, но такие приложения с БД впринципе должны общаться поменьше, иначе производительность просядет.

В общем нужно подходить к вопросу без фанатизма. Ключ к успеху, это оптимальный баланс обязанностей сервера приложений и СУБД.
...
Рейтинг: 0 / 0
18.09.2009, 21:18
    #36205298
Naroto
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Трёхзвенка, бизнес-логика
mcureenabНе скажу за всю Одессу. Скажу за Оракл..
_modА на формсе все равно где - и там и там pl/sql.

Naroto хотело бы обратить внимание на повторяющися посты так называемых Ораклистов. Дело в том что язык PL\SQL - язык формально четвёртого поколения. Все языки четвёртого поколения имеют существенное преимущество в разработке приложений которые интересуют нашего TS. Огромный их недостаток - они часть системы поэтому приобрести и использовать и компилировать программы в среде этих языков стоит больших денег. Если же пользоваться стандартным набором общедоступных языков третьего поколения (C\C++\C#, VB(.NET), Java\J#, and many frameworks) и SQL от поставщика базы данных... удешевление налицо, но преимуществ централизованного кодирование вы не увидите.

На всяк случай вот справка о некоторых языках четвертого поколения.
...
Рейтинг: 0 / 0
18.09.2009, 21:32
    #36205306
mcureenab
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Трёхзвенка, бизнес-логика
Naroto... удешевление налицо

Не понял, в чём подвох. Если приложение работает с СУБД, то её придётся покупать и скорее всего в ней будет язык разработки хранимых процедур и машина для их исполнения, кторая не продаётся отдельно. Отказываясь от хранимых процедур мы кидаем деньги на ветер.

Конечно, разработка ХП приведёт к привязке к СУБД. Но практика показывает, что даже на уровне SQL специфика СУБД проявляется настолько сильно, что при переходе на другую платформу приходится переделывать код.
...
Рейтинг: 0 / 0
18.09.2009, 22:10
    #36205338
Naroto
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Трёхзвенка, бизнес-логика
mcureenabНе понял, в чём подвох. .

Да, Naroto следовало бы подчеркнуть специально для автора топика что производство ПО на продажу и реализация какого-то индивидуального проекта - существенно меняет дело. Допустим наш Топик Стартер с коллегами планирует разработку трёхзвенного enterprise-приложения на продажу и возник у них спор - где лучше реализовывать бизнес-логику. Этот спор сразу бы упёрся в платформу и среду разработки . Но Naroto не уверено, что у них там есть такое изыскание. Скорее всего и платформа и среда разработки архитектурно определены. Naroto думает, что это не Oracle. Некоторые коллеги Ораклисты советуют этот замечательный продукт. Naroto предупредило о дороговизне и сложности в реализации. Скорее всего всё будет сделано на мелкомягкостях ввиду доступности и ширпотребности. Naroto обратило внимание TS что им понадобится хороший дезайнер ну или архитектор. Если коллеги топик стартера знают или уже писали SQL - проблем не будет разместить бизнес логику на стороне СУБД. Ежели никто не имел опыта написания ХП то всё должно писаться на сервере приложений в формате языка 3GL (C++\C#, VB.NET, Java etc) + нужен хороший DBA чтоб понял где будет зарыта собака. И обеспечил безопасность по мере внедрения системы. Вот и фсё Спасибо за внимание ...
...
Рейтинг: 0 / 0
18.09.2009, 22:49
    #36205380
mcureenab
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Трёхзвенка, бизнес-логика
Naroto,

а ежели никто не имел опыта написания программ вообще, то и браться за это не надо. :)

Конечно, в команде должен быть человек, умеющий писать ХП и вообще знающий специфику СУБД. Даже если не писать ХП, то именно этот человек должен будет заниматься разработкой SQL запросов и проектированием транзакций БД.

При всём уважении к програмистам C++ и т.п. 3GL, я не встречал среди них хороших разработчиков SQL запросов и транзакций. Видимо у них своих проблем с 3GL хватает. С другой стороны специалисты СУБД не знают в должной мере С++ и т.п., зато знают ка писать ХП. Поэтому ХП становятся хорошим мостом между SQLщиками и C++никами.

Вообще говоря, бизнес-логика может быть не связана непосредственно с БД, тогда и грузить СУБД этими задачами нет смысла. Но в части взаимодействия с БД бизнес-логику удобно размещать в ХП (и кодировать проще и данные не надо передавать из СУБД в сервер приложений и назад), чтобы у разработчиков сервера приложений голова об этом не болела. Пусть лучше интеграцией сервисов занимаются и пользовательским интерфейсом.
...
Рейтинг: 0 / 0
18.09.2009, 22:52
    #36205381
уТКа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Трёхзвенка, бизнес-логика
утка советует использовать новоиспеченные технологии от мелкомягких, а именно Silverlight + Net RIA Services т.к. Заданный вопрос контекста, неукоснительно связан именно с Net RIA Services.

Спасибо за внимание. Ы
...
Рейтинг: 0 / 0
18.09.2009, 23:32
    #36205421
Naroto
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Трёхзвенка, бизнес-логика
mcureenabбизнес-логику удобно размещать в ХП (.... и данные не надо передавать из СУБД в сервер приложений и назад).

Naroto Улыбнуло

Уважаемый mcureenab, Да хранит Ваш Код всемогущий Один. Всё Вы говорите разумно, вот за исключением маленькой дезинформации. Данные надо бы всёжтки передавать из базы к интерфейсу и обратно. Иначе что за приложение получится - Самодостаточно Складируемое (OLAP)? Так и в нём когда никогда поковыряться надобно.А ковыряние -это передачка данных. Из СУБД в Сервер Приложений (для передачи в интерфейс) и назад. Мы же определились что прямого доступа у клиента к базе быть не должно...
Или Naroto ошибло?
...
Рейтинг: 0 / 0
19.09.2009, 10:09
    #36205535
MaratIsk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Трёхзвенка, бизнес-логика
мой совет основанный на опыте (трехзвенная биллинговая система с >150 пользователями)

бизнес-логика и система безопасности только средствами СУБД - (у меня оракл)
сервер приложения - midas - универсальный - обеспечивает клиентам единую точку доступа к бд, не содержит объектов конкретной бд. то есть может предоставить доступ к любой бд без перекомпиляции
...
Рейтинг: 0 / 0
19.09.2009, 11:23
    #36205565
avarice
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Трёхзвенка, бизнес-логика
Уточню. что будет использоваться у нас - Java SE клиент (Rich GUI, Swing) - JBoss (EJB) - Oracle.
Казалось бы, самое то для использования ORM (JPA/Hibernate), но большинство наших разработчиков с большой опаской относятся к этой загадочной технологии. ))
...
Рейтинг: 0 / 0
20.09.2009, 16:22
    #36206347
AlexTheRaven
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Трёхзвенка, бизнес-логика
Согласен с предыдущими участниками, кто у вас сильнее (квалификация * количество) - программисты Java SE (Rich GUI, Swing), JBoss (EJB) или Oracle - там и делайте.

Ну и ещё: по опыту, программисты Oracle - сотрудники дорогие и "капризные". А на клиенте - возможности на другое ориентированы и среда непредсказуемая. При прочих равных, я за сервер приложений.
...
Рейтинг: 0 / 0
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / Трёхзвенка, бизнес-логика / 22 сообщений из 22, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]