|
Трёхзвенка, бизнес-логика
|
|||
---|---|---|---|
#18+
Мы с коллегами планируем разработку трёхзвенного enterprise-приложения, и возник у нас спор - где лучше реализовывать бизнес-логику? Я считаю, что бизнес-логика должна обрабатываться на стороне сервера приложений, желательно с использованием ORM, в то время как некоторые коллеги считают что удобнее и проще реализовывать её в хранимых процедурах на сервере СУБД. А как считает уважаемое сообщество? Какие, по вашему мнению, плюсы и минусы того или другого подхода? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.09.2009, 20:39 |
|
Трёхзвенка, бизнес-логика
|
|||
---|---|---|---|
#18+
avarice, здесь уже слишком много было холиваров на эту тему. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.09.2009, 21:09 |
|
Трёхзвенка, бизнес-логика
|
|||
---|---|---|---|
#18+
iscrafm, я тоже предполагал что это уже не раз обсуждалось, но я поискал по форуму "ORM" - ничего такого не нашёл. Если не сложно - ткните носом в темы. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.09.2009, 21:11 |
|
Трёхзвенка, бизнес-логика
|
|||
---|---|---|---|
#18+
самый знаменитый пожалуй этот Воды в нем конечно 90%, но если терпения хватит дочитать, то на тему где реализовать бизнес-логику мнения в нем высказываются. Лично я предпочитаю по обстоятельствам проектировать. Если БЛ можно возложить на СУБД, то конечно СУБД. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.09.2009, 21:29 |
|
Трёхзвенка, бизнес-логика
|
|||
---|---|---|---|
#18+
А шо за биснес логика? Растолкуй...avariceгде лучше реализовывать бизнес-логику? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.09.2009, 21:34 |
|
Трёхзвенка, бизнес-логика
|
|||
---|---|---|---|
#18+
Зачем будет нужен 2-й слой, если все будет использоваться на крайних? С уважением, Naf ... |
|||
:
Нравится:
Не нравится:
|
|||
17.09.2009, 21:59 |
|
Трёхзвенка, бизнес-логика
|
|||
---|---|---|---|
#18+
NafЗачем будет нужен 2-й слой, если все будет использоваться на крайних? С уважением, Naf +1 :) Прочти до конца ссылку iscrafm ... |
|||
:
Нравится:
Не нравится:
|
|||
18.09.2009, 09:31 |
|
Трёхзвенка, бизнес-логика
|
|||
---|---|---|---|
#18+
Petro123NafЗачем будет нужен 2-й слой, если все будет использоваться на крайних? С уважением, Naf +1 :) Прочти до конца ссылку iscrafm все 44 страницы? 0_о ... |
|||
:
Нравится:
Не нравится:
|
|||
18.09.2009, 09:56 |
|
Трёхзвенка, бизнес-логика
|
|||
---|---|---|---|
#18+
Naf, когда то у меня был новый проект как у автора. Пришёл на этот сайт. Первый же профи pkarklin мне дал ссылку и я вынужден был прочесть все 8-) ... |
|||
:
Нравится:
Не нравится:
|
|||
18.09.2009, 10:10 |
|
Трёхзвенка, бизнес-логика
|
|||
---|---|---|---|
#18+
в том топике 90% не относящегося к текущей теме. Обычные споры 2 или 3. 3 вовсе не означает того, что бизнес-логика строится на СП. Я, к примеру, когда как выгодней, зависит от задачи, но большей частью средствами СУБД ... |
|||
:
Нравится:
Не нравится:
|
|||
18.09.2009, 10:30 |
|
Трёхзвенка, бизнес-логика
|
|||
---|---|---|---|
#18+
avariceА как считает уважаемое сообщество? А на формсе все равно где - и там и там pl/sql. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.09.2009, 16:26 |
|
Трёхзвенка, бизнес-логика
|
|||
---|---|---|---|
#18+
avariceМы с коллегами планируем разработку трёхзвенного enterprise-приложения, и возник у нас спор - где лучше реализовывать бизнес-логику? Naroto повидало много трехзвенных решений. Коликчество решений наверное разделится пополам. На общий взгляд наверное всё зависит от подготовки персонала. Если персонал никогда ничего не писал в SQL формате - то реализация бизнес логики (под давлением начальствующего архитектора) на стороне СУБД приведёт к совершенно безобразной производительности. Если же база данных построена изначально грамотно - под спецификацию заказчика и в команде есть грамотный DBA то реализация бизнес логики трёхзвенки методами ORM или любыми другими современными методами - одно удовольствие. Но Naroto лучше удалится пожелав Автору хорошего настроения. И очень хорошего архитектора. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.09.2009, 18:02 |
|
Трёхзвенка, бизнес-логика
|
|||
---|---|---|---|
#18+
Не скажу за всю Одессу. Скажу за Оракл. Сложные манипуляции с данными очень удобно кодировать на PL/SQL в хранимых процедурах. Если требуется большая производительность, придётся использовать что нибудь типа C++. SQL запросы внедряются в C++ совсем не так изящно как в PL/SQL, но такие приложения с БД впринципе должны общаться поменьше, иначе производительность просядет. В общем нужно подходить к вопросу без фанатизма. Ключ к успеху, это оптимальный баланс обязанностей сервера приложений и СУБД. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.09.2009, 20:01 |
|
Трёхзвенка, бизнес-логика
|
|||
---|---|---|---|
#18+
mcureenabНе скажу за всю Одессу. Скажу за Оракл.. _modА на формсе все равно где - и там и там pl/sql. Naroto хотело бы обратить внимание на повторяющися посты так называемых Ораклистов. Дело в том что язык PL\SQL - язык формально четвёртого поколения. Все языки четвёртого поколения имеют существенное преимущество в разработке приложений которые интересуют нашего TS. Огромный их недостаток - они часть системы поэтому приобрести и использовать и компилировать программы в среде этих языков стоит больших денег. Если же пользоваться стандартным набором общедоступных языков третьего поколения (C\C++\C#, VB(.NET), Java\J#, and many frameworks) и SQL от поставщика базы данных... удешевление налицо, но преимуществ централизованного кодирование вы не увидите. На всяк случай вот справка о некоторых языках четвертого поколения. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.09.2009, 21:18 |
|
Трёхзвенка, бизнес-логика
|
|||
---|---|---|---|
#18+
Naroto... удешевление налицо Не понял, в чём подвох. Если приложение работает с СУБД, то её придётся покупать и скорее всего в ней будет язык разработки хранимых процедур и машина для их исполнения, кторая не продаётся отдельно. Отказываясь от хранимых процедур мы кидаем деньги на ветер. Конечно, разработка ХП приведёт к привязке к СУБД. Но практика показывает, что даже на уровне SQL специфика СУБД проявляется настолько сильно, что при переходе на другую платформу приходится переделывать код. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.09.2009, 21:32 |
|
Трёхзвенка, бизнес-логика
|
|||
---|---|---|---|
#18+
mcureenabНе понял, в чём подвох. . Да, Naroto следовало бы подчеркнуть специально для автора топика что производство ПО на продажу и реализация какого-то индивидуального проекта - существенно меняет дело. Допустим наш Топик Стартер с коллегами планирует разработку трёхзвенного enterprise-приложения на продажу и возник у них спор - где лучше реализовывать бизнес-логику. Этот спор сразу бы упёрся в платформу и среду разработки . Но Naroto не уверено, что у них там есть такое изыскание. Скорее всего и платформа и среда разработки архитектурно определены. Naroto думает, что это не Oracle. Некоторые коллеги Ораклисты советуют этот замечательный продукт. Naroto предупредило о дороговизне и сложности в реализации. Скорее всего всё будет сделано на мелкомягкостях ввиду доступности и ширпотребности. Naroto обратило внимание TS что им понадобится хороший дезайнер ну или архитектор. Если коллеги топик стартера знают или уже писали SQL - проблем не будет разместить бизнес логику на стороне СУБД. Ежели никто не имел опыта написания ХП то всё должно писаться на сервере приложений в формате языка 3GL (C++\C#, VB.NET, Java etc) + нужен хороший DBA чтоб понял где будет зарыта собака. И обеспечил безопасность по мере внедрения системы. Вот и фсё Спасибо за внимание ... ... |
|||
:
Нравится:
Не нравится:
|
|||
18.09.2009, 22:10 |
|
Трёхзвенка, бизнес-логика
|
|||
---|---|---|---|
#18+
Naroto, а ежели никто не имел опыта написания программ вообще, то и браться за это не надо. :) Конечно, в команде должен быть человек, умеющий писать ХП и вообще знающий специфику СУБД. Даже если не писать ХП, то именно этот человек должен будет заниматься разработкой SQL запросов и проектированием транзакций БД. При всём уважении к програмистам C++ и т.п. 3GL, я не встречал среди них хороших разработчиков SQL запросов и транзакций. Видимо у них своих проблем с 3GL хватает. С другой стороны специалисты СУБД не знают в должной мере С++ и т.п., зато знают ка писать ХП. Поэтому ХП становятся хорошим мостом между SQLщиками и C++никами. Вообще говоря, бизнес-логика может быть не связана непосредственно с БД, тогда и грузить СУБД этими задачами нет смысла. Но в части взаимодействия с БД бизнес-логику удобно размещать в ХП (и кодировать проще и данные не надо передавать из СУБД в сервер приложений и назад), чтобы у разработчиков сервера приложений голова об этом не болела. Пусть лучше интеграцией сервисов занимаются и пользовательским интерфейсом. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.09.2009, 22:49 |
|
Трёхзвенка, бизнес-логика
|
|||
---|---|---|---|
#18+
утка советует использовать новоиспеченные технологии от мелкомягких, а именно Silverlight + Net RIA Services т.к. Заданный вопрос контекста, неукоснительно связан именно с Net RIA Services. Спасибо за внимание. Ы ... |
|||
:
Нравится:
Не нравится:
|
|||
18.09.2009, 22:52 |
|
Трёхзвенка, бизнес-логика
|
|||
---|---|---|---|
#18+
mcureenabбизнес-логику удобно размещать в ХП (.... и данные не надо передавать из СУБД в сервер приложений и назад). Naroto Улыбнуло Уважаемый mcureenab, Да хранит Ваш Код всемогущий Один. Всё Вы говорите разумно, вот за исключением маленькой дезинформации. Данные надо бы всёжтки передавать из базы к интерфейсу и обратно. Иначе что за приложение получится - Самодостаточно Складируемое (OLAP)? Так и в нём когда никогда поковыряться надобно.А ковыряние -это передачка данных. Из СУБД в Сервер Приложений (для передачи в интерфейс) и назад. Мы же определились что прямого доступа у клиента к базе быть не должно... Или Naroto ошибло? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.09.2009, 23:32 |
|
Трёхзвенка, бизнес-логика
|
|||
---|---|---|---|
#18+
мой совет основанный на опыте (трехзвенная биллинговая система с >150 пользователями) бизнес-логика и система безопасности только средствами СУБД - (у меня оракл) сервер приложения - midas - универсальный - обеспечивает клиентам единую точку доступа к бд, не содержит объектов конкретной бд. то есть может предоставить доступ к любой бд без перекомпиляции ... |
|||
:
Нравится:
Не нравится:
|
|||
19.09.2009, 10:09 |
|
Трёхзвенка, бизнес-логика
|
|||
---|---|---|---|
#18+
Уточню. что будет использоваться у нас - Java SE клиент (Rich GUI, Swing) - JBoss (EJB) - Oracle. Казалось бы, самое то для использования ORM (JPA/Hibernate), но большинство наших разработчиков с большой опаской относятся к этой загадочной технологии. )) ... |
|||
:
Нравится:
Не нравится:
|
|||
19.09.2009, 11:23 |
|
Трёхзвенка, бизнес-логика
|
|||
---|---|---|---|
#18+
Согласен с предыдущими участниками, кто у вас сильнее (квалификация * количество) - программисты Java SE (Rich GUI, Swing), JBoss (EJB) или Oracle - там и делайте. Ну и ещё: по опыту, программисты Oracle - сотрудники дорогие и "капризные". А на клиенте - возможности на другое ориентированы и среда непредсказуемая. При прочих равных, я за сервер приложений. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.09.2009, 16:22 |
|
|
start [/forum/topic.php?fid=33&msg=36202804&tid=1548468]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
59ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
63ms |
get tp. blocked users: |
2ms |
others: | 14ms |
total: | 185ms |
0 / 0 |