|
|
|
EF и бизнес-логика
|
|||
|---|---|---|---|
|
#18+
Есть база данных (не важно на какой СУБД) и приложение клиент, как лучше всего из Вашего опыта реализовать биснес-логику - на уровне базы данных или уже в приложении с помощью возможностей EF. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2010, 15:19 |
|
||
|
EF и бизнес-логика
|
|||
|---|---|---|---|
|
#18+
JaneKateЕсть база данных (не важно на какой СУБД) и приложение клиент, как лучше всего из Вашего опыта реализовать биснес-логику - на уровне базы данных или уже в приложении с помощью возможностей EF. Из моего опыта на уровне приложения вообще ничего и никогда не нужно реализовывать. Приложение вообще не нужно программировать. Поэтому, "неважно на какой СУБД" - это заблуждение:) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2010, 16:45 |
|
||
|
EF и бизнес-логика
|
|||
|---|---|---|---|
|
#18+
Если я правильно понял, то из Вашего опыта программирования на .net с использованием Entity Framework нельзя реализовывать бизнес-логику на уровне клиента? Так? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2010, 17:01 |
|
||
|
EF и бизнес-логика
|
|||
|---|---|---|---|
|
#18+
JaneKateЕсли я правильно понял, то из Вашего опыта программирования на .net с использованием Entity Framework нельзя реализовывать бизнес-логику на уровне клиента? Так? Нет не так. Не нужно на уровне клиента реализовывать никакой логики. Где вы увидели "нельзя"?:) Все entity у вас в БД, какая еще Entity Framework. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2010, 17:06 |
|
||
|
EF и бизнес-логика
|
|||
|---|---|---|---|
|
#18+
JaneKateЕсть база данных (не важно на какой СУБД) и приложение клиент, как лучше всего из Вашего опыта реализовать биснес-логику - на уровне базы данных или уже в приложении с помощью возможностей EF.на уровне СУБД или сервера приложений (для трехзвенок) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2010, 17:16 |
|
||
|
EF и бизнес-логика
|
|||
|---|---|---|---|
|
#18+
Вся логика должна быть в SQL. Приложение просто некий вювер в возможностью вноса данных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2010, 17:50 |
|
||
|
EF и бизнес-логика
|
|||
|---|---|---|---|
|
#18+
БредятинаJaneKateЕсли я правильно понял, то из Вашего опыта программирования на .net с использованием Entity Framework нельзя реализовывать бизнес-логику на уровне клиента? Так? Нет не так. Не нужно на уровне клиента реализовывать никакой логики. Где вы увидели "нельзя"?:) Все entity у вас в БД, какая еще Entity Framework. Так я же спрашивал про ваш опыт в этой системе. Там как раз все и завязано на том, что концептуальная модель (сама объектная суть) базы данных уже В приложении. Я понял Ваш ответ, но имеете ли Вы опыт работы с ЕФ что бы компетентно рекомендовать. Поймите меня правильно, ведь ORM это Вам не это). Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2010, 17:53 |
|
||
|
EF и бизнес-логика
|
|||
|---|---|---|---|
|
#18+
JaneKateБредятинапропущено... Нет не так. Не нужно на уровне клиента реализовывать никакой логики. Где вы увидели "нельзя"?:) Все entity у вас в БД, какая еще Entity Framework. Так я же спрашивал про ваш опыт в этой системе. Там как раз все и завязано на том, что концептуальная модель (сама объектная суть) базы данных уже В приложении. Я понял Ваш ответ, но имеете ли Вы опыт работы с ЕФ что бы компетентно рекомендовать. Поймите меня правильно, ведь ORM это Вам не это). Спасибо. Ну Вы меня окончательно запутали. Да еще объектно-ролевое моделирование (а может даже объктно-реляционный мэппинг). Я пас:) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2010, 18:01 |
|
||
|
EF и бизнес-логика
|
|||
|---|---|---|---|
|
#18+
на уровне базы данных или уже в приложении с помощью возможностей EF? Это зависит от класса системы. Если система data-aware(data-ориентированная), то реализуйте на стороне СУБД, но тогда не понятно зачем вам EF... Только лишь в качестве маппера? Если система оперирует разветвленными бизнес-объектами и бизнес логика сложная, то реализуйте ее на стороне сервера приложения, но в любом случае ссылочная целостность и реализация простых ограничений (constraints), по-хорошему, должны быть также реализованы и на стороне СУБД. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2010, 18:54 |
|
||
|
EF и бизнес-логика
|
|||
|---|---|---|---|
|
#18+
Роман Дынник, Да это именно то что я хотел узнать, система более user-aware потому конечно связи, ограничения, ключи и все остальное будет реализовываться на уровне СУБД, все остальное (выборка, операции и т.д.) - на клиенте. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2010, 20:46 |
|
||
|
EF и бизнес-логика
|
|||
|---|---|---|---|
|
#18+
Если с технической точки зрения, то логику надо помещать как можно ближе к данным. Тогда меньше вероятности что туда кто-нибудь вклинится обойдя проверки или заново реализуя алгоритмы. Плюс можно применять наиболее эффективные методы обработки - оптом, используя все фичи выбранной СУБД. А вот по деньгам тут все не так однозначно. Во первых процессор на сервере СУБД совсем не то что процессор на сервере приложений, тут и экономия на лицензиях и нелинейный рост стоимости после определенных значений. Во вторых разработчиков на Java, .NET и т.п. больше и стоят они дешевле (при одинаковой квалификации) чем специалистов в SQL (TSQL, PL/SQL) В третьих чем меньше приложение завязано на СУБД тем легче его портировать и шире клиентская база. В четвертых поддержка изменений только приложения проще чем приложения и базы (причем не в два, а в четыре раза) Так что где лучше сильно зависит от внешних условий. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2010, 03:02 |
|
||
|
EF и бизнес-логика
|
|||
|---|---|---|---|
|
#18+
SERG1257, Приложение представляет собой виртуальную химическую лабораторию с возможностью вести журнал проведенных экспериментов, учет реактивов, сотрудников и т.д., короче, планы наполеоновские. Платформа .NET, технология WPF, СУБД... сначала хотел взять за основу SQL Server 2008 R2, но меня терзают смутные сомнения по опводу ограничения на размер базы - 10 ГБ (просто в базе нужно будет хранить файли результатов анализов - .пдф, .джейпег и т.д., да и вообще, будет не приятно если в какой-то прекрасный момент все остановится из-за такого ограничения, а бюджет мал) и я решил посмотреть в сторону жарптицы. Программирую на C#, по-этому, в свете новых веяний решил использовать ОРМ-систему - EF. Вот только думаю, что реализовывать на сервере, а что на клиенте. Безопасность, например, - на жарптице не поддерживается RLS, нужно будет делать самому, а не проще ли сделать на клиенте? (хотя я был всегда противником реализации безопасности на клиенте), разве что в 3-й версии FB будет возможность работать с ролями и группами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2010, 10:25 |
|
||
|
EF и бизнес-логика
|
|||
|---|---|---|---|
|
#18+
JaneKate просто в базе нужно будет хранить файли результатов анализовЗачем в базе JaneKate все остановится из-за такого ограниченияТогда и деньги найдутся быстро JaneKate в сторону жарптицыКогда такое пишут монстры типа Dimitry Sibiryakov или kdv это одно. Я верю что они свою СУБД загнут любой буквой зю и выйдут из любого штопора. А вам я посоветую или заключить с ними договор или пойти более натоптанной дорожкой. JaneKate RLS, нужно будет делать самомуRLS вам не нужно. Вы не совсем понимаете что это такое. Нужна вам скорее всего обычная модель безопастности (пользователи, роли, объекты, разрешения ролям на объекты), но это уже другая тема. (Я не знаю умеет ли FB роли как группы пользователей) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2010, 16:13 |
|
||
|
EF и бизнес-логика
|
|||
|---|---|---|---|
|
#18+
SERG1257, Более натоптаная дорожка - это Вы имеете в виду SQL Server? Конечно, тут я не спорю, просто приложение будет расчитано не на большие лаборатории, а на средние, даже маленькие при ВУЗах и держать там администратора SQL Server'а... Ну, хотя, при желании можно и без него, но все же... (особенно это касается установки MSSQLS). Файлы действительно можно хранить не в базе, но для этого нужны дополнительные работы (в плоть до FTP-сервера). По поводу RLS, возможно Вы правы, я не доконца понимаю... но для меня это как опредиление возможности реализации безопасности с помощью ролей и/или груп, пользователей (RLS - как-то короче и из статьи на RSDN, по-моему, означает то же). На счет денег, вряд ли они скоро найдутся в универе, это уж если потом такой проект станет востребованным... Одним словом, блажен кто верует. Вам спасибо за предметный комментарий. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2010, 17:53 |
|
||
|
EF и бизнес-логика
|
|||
|---|---|---|---|
|
#18+
JaneKate это Вы имеете в виду SQL Server?Я имею в виду базу которую вы лучше знаете. То есть программу действий если что либо будет работать не так как ожидалось У скуля пользовательская база шире, вероятность наткнуться на неизвестный баг меньше. Связываться с FB (при всем моем уважении к разработчикам), особенно если вы ее не знаете, без поддержки - экстрим еще тот. Но безумству храбрых поем мы песню (с) JaneKate держать там администратора SQL Server'аА FB типа администратора не требует, устанавливается сам и работает всегда. Пользователи тоже сами заводятся, патчи скрипты тоже сами накладываются, с производительностью проблем никогда не бывает и из бакапа никогда не надо будет восстанавливаться. JaneKate но для этого нужны дополнительные работы (в плоть до FTP-сервера).Зачем? В простейшем случае расшарьте папку. JaneKate По поводу RLS, возможно Вы правы, я не доконца понимаю ROW level security - организация доступа на уровне строк - то есть эту строку показываем эту скрываем. Это отличается от АНСИ доступа на уровне столбцов, которые выполняются во время парсинга запроса. Зачем вам такие сложности непонятно. JaneKate Программирую на C#, по-этому, в свете новых веяний решил использовать ОРМ-систему - EF. Вот только думаю, что реализовывать на сервере, а что на клиенте.Хотите бесплатный совет - реализуйте ВСЕ на сервере - клиент только отображает результат хранимых процедур и перечитывает набор данных (или обновляемую строку) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.12.2010, 03:01 |
|
||
|
EF и бизнес-логика
|
|||
|---|---|---|---|
|
#18+
SERG1257, Блин, ну что за огульные советы - все на сервере ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.12.2010, 03:10 |
|
||
|
EF и бизнес-логика
|
|||
|---|---|---|---|
|
#18+
ViPRos Блин, ну что за огульные советы - все на серверетрехзвенкой ТС не увлекается, я ДБА, коробочных приложений никогда не делал, какой еще совет я могу дать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.12.2010, 05:13 |
|
||
|
EF и бизнес-логика
|
|||
|---|---|---|---|
|
#18+
вон лучше к Роману Дыннику прислушайтесь - если дата-ориентированная система - то в БД, если накрученная бизнес-логика - то в доменной модели ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.12.2010, 05:56 |
|
||
|
EF и бизнес-логика
|
|||
|---|---|---|---|
|
#18+
SERG1257А FB типа администратора не требует, устанавливается сам и работает всегда. Пользователи тоже сами заводятся, патчи скрипты тоже сами накладываются, с производительностью проблем никогда не бывает и из бакапа никогда не надо будет восстанавливаться. Ну Вы и сравнили! Одна установка SQL Server чего стоит по сравнению с ФБ. К тому же, я хочу что бы программу мою вместе с СУБД мог установить любой более-менее уверенный пользователь ПК, но без всяких знаний о администрации СУБД. Все остальное (создание БД, выполнение скриптов, бэкапы) - все должно лечь на плечи приложения. Что касается совета "все на сервере", то я с Вами согласен, ибо это более общее решение, но так как БД действительно более расчитана на пользователя (химика, часто не знакомого с аспектами функционирования ПО), к тому же, используется ОРМ-система, то возможно и проще реализовать разумную часть бизнесс-логики в приложении. Почему Вы так насторожено относитесь к связке жарптици и EF? Действительно ли там так много проблем? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.12.2010, 11:33 |
|
||
|
EF и бизнес-логика
|
|||
|---|---|---|---|
|
#18+
JaneKate так как БД действительно более расчитана на пользователяА это здесь причем? JaneKate к тому же, используется ОРМ-система, то возможно и проще реализовать разумную часть бизнесс-логики в приложении.Реализовывайте где хотите, слабые места логики на клиенте озвучены. JaneKate Почему Вы так насторожено относитесь к связке жарптици и EF? Действительно ли там так много проблем?Я довольно давно работал с FB (версии 1 с копейками) и совсем не работал с EF, про проблемы не слышал, но аргументы вы приводите довольно сомнительные. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2010, 05:43 |
|
||
|
EF и бизнес-логика
|
|||
|---|---|---|---|
|
#18+
SERG1257, Почему сомнительные? 1. Установка FB, и это всем известно, проходит намного проще чем SQL Server'a, в моем приложении это довольно существенно, так как оно не data-ориентированное, а следственно желательно минимизировать действия по ее администрации. 2. Максимальный размер базы данных в FB значительно превышает оный у SQL Server, что тоже не маловажно... 3. ...это все уже из другой темы. Нужно найти золотую середину, особенно в данном случае, когда оба звена (БД и ее объектная модель) могут послужить хорошим инструментом реализации бизнес-логики. С данной темой все предельно понятно. Если никто не против - можно ее закрывать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2010, 21:08 |
|
||
|
|

start [/forum/topic.php?fid=32&fpage=67&tid=1542398]: |
0ms |
get settings: |
5ms |
get forum list: |
11ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
44ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
| others: | 200ms |
| total: | 325ms |

| 0 / 0 |
