Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 [2] 3 4 5   вперед  Ctrl      все
 Re: Зачем нужны бизнес-объекты?  [new]
calc.exe
Guest
Нахлобуч
calc.exe
а сколько таблиц в базе?

Около 110.

135 классов из 110 таблиц. чудненько.
если можно, вычтите из таблиц справочники и объясните разницу с количеством объектов. откуда появились бизнес-объекты, у которых нет identity в БД?
17 янв 08, 11:46    [5164528]     Ответить | Цитировать Сообщить модератору
 Re: Зачем нужны бизнес-объекты?  [new]
Нахлобуч
Member

Откуда: https://hglabhq.com
Сообщений: 3939
Dmitdd
Я сейчас на распутье, стоимт ли переходить с NHibernate на LINQ

Вот интересно мне, во что это вам выйдет. POCO-классы, используемые в NH, засорять всякими EntityRef<T>'ами и прочей специфичной для LINQ 2 SQL бурдой... Для NHibernate уже вовсю пишут IQueryable, так что есть шанс, что отказываться от него не придется.
17 янв 08, 11:47    [5164544]     Ответить | Цитировать Сообщить модератору
 Re: Зачем нужны бизнес-объекты?  [new]
Нахлобуч
Member

Откуда: https://hglabhq.com
Сообщений: 3939
calc.exe
135 классов из 110 таблиц. чудненько.
если можно, вычтите из таблиц справочники и объясните разницу с количеством объектов. откуда появились бизнес-объекты, у которых нет identity в БД?

Вы бы прежде чем язвить подумали немного. Словосочетание "Table per Class Hierarchy" вам о чем-нибудь говорит?
17 янв 08, 11:49    [5164563]     Ответить | Цитировать Сообщить модератору
 Re: Зачем нужны бизнес-объекты?  [new]
calc.exe
Guest
Нахлобуч

Вы бы прежде чем язвить подумали немного. Словосочетание "Table per Class Hierarchy" вам о чем-нибудь говорит?

говорит. разные сущности свалены в одну таблицу. больше вопросов нет.
17 янв 08, 12:00    [5164686]     Ответить | Цитировать Сообщить модератору
 Re: Зачем нужны бизнес-объекты?  [new]
Нахлобуч
Member

Откуда: https://hglabhq.com
Сообщений: 3939
calc.exe
говорит. разные сущности свалены в одну таблицу. больше вопросов нет.

Прелестно. Как у вас все радикально.
17 янв 08, 12:02    [5164711]     Ответить | Цитировать Сообщить модератору
 Re: Зачем нужны бизнес-объекты?  [new]
AlexeiK
Member

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

Чего сказать-то хотели?


про пыль в глазах я хотел сказать. пыль это ваши nhibernate и другие утопические надстройки.

и бизнес объект :) это не любой код. надо это понимать. бизнес объект не относиться никак к ООП надстройкам и их внутренним объектам. они относяться к бизнессу.

просто тот кто посоветовал тому человеку юзать бизнесс объекты в коде,не понял ,что это такое и запутал Dark_Scorpionа.

и 1 ответ данные Dark_Scorpion был не правильным ответом.в этом примере лишь показано,как можно умело использовать ООП.
автор,выложил сюда свое непонимание ,того что ему посоветовали.посоветовал человек далекий.раз скрестил все в вместе.

так что о чем вести речь,в этом топике дальше для меня не понятно.
17 янв 08, 12:02    [5164714]     Ответить | Цитировать Сообщить модератору
 Re: Зачем нужны бизнес-объекты?  [new]
Нахлобуч
Member

Откуда: https://hglabhq.com
Сообщений: 3939
AlexeiK
про пыль в глазах я хотел сказать. пыль это ваши nhibernate и другие утопические надстройки.

Ну откройте тогда нам глаза уже; расскажите, что же не пыль.
AlexeiK

и бизнес объект :) это не любой код. надо это понимать. бизнес объект не относиться никак к ООП надстройкам и их внутренним объектам. они относяться к бизнессу.

Вот отсюда поподробней.
AlexeiK

просто тот кто посоветовал тому человеку юзать бизнесс объекты в коде,не понял ,что это такое и запутал Dark_Scorpionа.

и 1 ответ данные Dark_Scorpion был не правильным ответом.в этом примере лишь показано,как можно умело использовать ООП.
автор,выложил сюда свое непонимание ,того что ему посоветовали.посоветовал человек далекий.раз скрестил все в вместе.

так что о чем вести речь,в этом топике дальше для меня не понятно.

Словосочетание "бизнес-объекты" действительно ничего по сути не выражает. Правильно будет говорить "объектная модель предметной области". Поскольку в правильно заданном вопросе содержится половина ответа, то спросив "а зачем использовать объектную модель предметной области, если можно обойтись датасетами и датаридерами и все делать с их помощью", товарищ Темный_Скорпион получил бы исчерпывающий ответ -- как здесь, так и в литературе.
17 янв 08, 12:07    [5164766]     Ответить | Цитировать Сообщить модератору
 Re: Зачем нужны бизнес-объекты?  [new]
Dmitdd
Member

Откуда:
Сообщений: 477
Нахлобуч
Вот интересно мне, во что это вам выйдет. POCO-классы, используемые в NH, засорять всякими EntityRef<T>'ами и прочей специфичной для LINQ 2 SQL бурдой... Для NHibernate уже вовсю пишут IQueryable, так что есть шанс, что отказываться от него не придется.

Опять я чего-то не понимаю. Кто мешает, используя LINQ, вынести маппинг в XML-файл? Кроме того, мне показалось, что и в NHibernate удобнее пользоваться атрибутами, а не файлами маппинга.
Или я не о том?
17 янв 08, 12:54    [5165254]     Ответить | Цитировать Сообщить модератору
 Re: Зачем нужны бизнес-объекты?  [new]
sysadm2000
Member

Откуда: Москва
Сообщений: 1212
Объясните чем удобнее работать с такими объектами нежели со стандартными объектами ADO.NET?

Какое отношение имеют бизнес объекты и ADO.NET?

Адо-Нет (или сраный LINQ) - это одно колесо, хоть и прорезиненное и с подшибником - благодаря нормальному уровню сервиса в SQL.

А бизнес- объект - это автомобиль. Вот какое соотношение между этими понятиями. В самом самом простейшем и вырожденном случае - они совпадают.

Бизнес обьекты:
1. это логика формирования этого РекордСета РАЗНАЯ в зависимости от параметров, которые выбрал юзер на форме - http://www.job57.narod.ru/asp2/23/index.htm

2. это обработка одинакового рекордсета Ado.NET приницпиально РАЗНЫМИ алгоритмами, меняющимися в зависимости от параметров, выбранных на форме - http://www.job57.narod.ru/asp2/24/index.htm
настолько разными, что в данном случае они вынесены в отдельные сборки и эту логика вообще на этапе проэктирования системы неизвестна. Она будет сделана вообще позже - на этапе использования системы - уже самими юзерами

3. это сложные коллекции - набиваемые юзером на ходу тычками по форме - которые вообще никогда в базу не попадают - http://www.job57.narod.ru/asp2/2/index.htm

4. И многое-многое другое... Автомобили ведь разные бывают - гоночные, грузовые, пожарные... А колеса (LINQ или ADO.NET или SqlDataSource) - это лишь крошечный-крошечный обьект автомобиля
17 янв 08, 14:08    [5165893]     Ответить | Цитировать Сообщить модератору
 Re: Зачем нужны бизнес-объекты?  [new]
calc.exe
Guest
sysadm2000

пшнх
17 янв 08, 14:14    [5165934]     Ответить | Цитировать Сообщить модератору
 Re: Зачем нужны бизнес-объекты?  [new]
Dark_Scorpion
Member

Откуда:
Сообщений: 961
А зачем использовать объектную модель предметной области, если можно обойтись датасетами и датаридерами и все делать с их помощью?
17 янв 08, 14:56    [5166241]     Ответить | Цитировать Сообщить модератору
 Re: Зачем нужны бизнес-объекты?  [new]
AlexeiK
Member

Откуда:
Сообщений: 2859
давайте без пшнх.

короче,одно отдельно,другое тоже отдельно.
не надо путаться средства для реализации бизнесс объектов с самими БО.
17 янв 08, 14:58    [5166257]     Ответить | Цитировать Сообщить модератору
 Re: Зачем нужны бизнес-объекты?  [new]
AlexeiK
Member

Откуда:
Сообщений: 2859
Dark_Scorpion
А зачем использовать объектную модель предметной области, если можно обойтись датасетами и датаридерами и все делать с их помощью?


когда глаза в пыли,то видны лишь укрупненные формы :) такие как NHibernate и другие большие надстройки :)

Нахлобуч не принимай близко мое высказывание.
17 янв 08, 15:01    [5166292]     Ответить | Цитировать Сообщить модератору
 Re: Зачем нужны бизнес-объекты?  [new]
AlexeiK
Member

Откуда:
Сообщений: 2859
Dark_Scorpion
А зачем использовать объектную модель предметной области, если можно обойтись датасетами и датаридерами и все делать с их помощью?

ответ 2: твой вопрос можно так озвучить,а зачем использовать ООП,если у меня и так все инструменты рождены через ООП. хз че ответить.

Нахлобуч,ответ выше,от меня,был не корректен.
просто тут Dark_Scorpion опять мешает все в подряд.
17 янв 08, 15:05    [5166332]     Ответить | Цитировать Сообщить модератору
 Re: Зачем нужны бизнес-объекты?  [new]
AlexeiK
Member

Откуда:
Сообщений: 2859
Dark_Scorpion
А зачем использовать объектную модель предметной области, если можно обойтись датасетами и датаридерами и все делать с их помощью?


или ответ3: вот вам легко использовать ООП инструменты(датаридер и другие) для решения задач.
представьте ,что есть человек который решает задачи чуть крупнее ваших,но за счет инструментов,которые вы дадите ему. вот из вашего стиля вытекает,что тот человек не получит от вас никаких объектов таких как датасет или датаридер. он будет писать все тоже самое ,что и вы,и добавлять свое.добавлять свое,потому что ваш код можно взять лишь через copy & paste ,а вот ООП инструментов из вашего кода не родишь.

допустим вы поняли фишку :) и переписали свой код ,так чтобы он представлял набор ООП инструментов,для дяди ,который решает задачки чуть крупне ваших,тогда понимаете как ему будет просто? ему так же будет просто,как и вам юзать datareader & dataset ,а не писать всю подложку.
17 янв 08, 15:11    [5166396]     Ответить | Цитировать Сообщить модератору
 Re: Зачем нужны бизнес-объекты?  [new]
calc.exe
Guest
Dark_Scorpion
А зачем использовать объектную модель предметной области, если можно обойтись датасетами и датаридерами и все делать с их помощью?

чтобы вытащить бизнес-логику из БД на апп-сервер. потому что не умеют написать ее на sql. не слушайте их, забросайте их камнями ))
17 янв 08, 15:28    [5166588]     Ответить | Цитировать Сообщить модератору
 Re: Зачем нужны бизнес-объекты?  [new]
Сахават Юсифов
Member

Откуда: Орел
Сообщений: 3992
Да, спор не получился.
Пока все эти схемы маппинга и т.д. ВИДНЫ они особой реальной пользы не несут.
Другое дело, если бы прогер там или кто еще, описывет предметную область на каком-тои языке моделирования и это описание автоматом и прозрачно трансформируются в код оптимально нацеленый на нижний уровень (ОС,СУБД,...). Пока этого нет, надо работать с каждым уровнем так, как это оптимально и проще для прогера, конечно если этот прогер сам себе хозяин при выборе средств.
17 янв 08, 19:46    [5168359]     Ответить | Цитировать Сообщить модератору
 Re: Зачем нужны бизнес-объекты?  [new]
Dmitdd
Member

Откуда:
Сообщений: 477
Dmitdd
Нахлобуч
Вот интересно мне, во что это вам выйдет. POCO-классы, используемые в NH, засорять всякими EntityRef<T>'ами и прочей специфичной для LINQ 2 SQL бурдой... Для NHibernate уже вовсю пишут IQueryable, так что есть шанс, что отказываться от него не придется.

Опять я чего-то не понимаю. Кто мешает, используя LINQ, вынести маппинг в XML-файл? Кроме того, мне показалось, что и в NHibernate удобнее пользоваться атрибутами, а не файлами маппинга.
Или я не о том?

Нахлобуч, Вы соскочили с темы или не заметили? Интересно Ваше мнение.
18 янв 08, 10:37    [5170054]     Ответить | Цитировать Сообщить модератору
 Re: Зачем нужны бизнес-объекты?  [new]
Нахлобуч
Member

Откуда: https://hglabhq.com
Сообщений: 3939
Dmitdd
Опять я чего-то не понимаю. Кто мешает, используя LINQ, вынести маппинг в XML-файл? Кроме того, мне показалось, что и в NHibernate удобнее пользоваться атрибутами, а не файлами маппинга.
Или я не о том?

Да, проглядел.

Вы действительно не о том. Сам по себе LINQ 2 SQL (да и тем более LINQ) -- это далеко на ORM, коим является NHibernate, и даже вместе с ADO.NET EF (или как там она нынче называется) до NH они не дотягивают. Посему имеет смысл использовать LINQ -- по вполне понятным причинам -- в качестве замены Criteria API и HQL. Подробней -- тут.
18 янв 08, 10:56    [5170209]     Ответить | Цитировать Сообщить модератору
 Re: Зачем нужны бизнес-объекты?  [new]
Нахлобуч
Member

Откуда: https://hglabhq.com
Сообщений: 3939
Сахават Юсифов
Пока все эти схемы маппинга и т.д. ВИДНЫ они особой реальной пользы не несут.

Не понял мысли :)
18 янв 08, 10:58    [5170225]     Ответить | Цитировать Сообщить модератору
 Re: Зачем нужны бизнес-объекты?  [new]
Dmitdd
Member

Откуда:
Сообщений: 477
Нахлобуч

Да, проглядел.
Вы действительно не о том. Сам по себе LINQ 2 SQL (да и тем более LINQ) -- это далеко на ORM, коим является NHibernate, и даже вместе с ADO.NET EF (или как там она нынче называется) до NH они не дотягивают. Посему имеет смысл использовать LINQ -- по вполне понятным причинам -- в качестве замены Criteria API и HQL. Подробней -- тут.

Ну это понятно. До ОРМ ему далеко.
А вот мое мнение про POCO, что основной принцип "классы должны быть как можно проще" - не означает, что они не должны засоряться атрибутами, а означает, что никакой бизнес-логики, только описание класса. Согласитесь, что неудобно дергаться постоянно между классом и файлом маппинга. И следующий проект, который буду делать с NHibernate, буду маппинг прописывать прямо в классе с помощью атрибутов. Хотя вот тут боюсь ошибиться и буду признателен, если вовремя отговорите.
А вот мои доводы в пользу LINQ:
1) придется менять работу, а я с ним не работал - минус при приеме
2) у меня на работе никто и не слышал про NHibernate, зато как появился LINQ, все стали говорить, какая крутая это и полезная вещь, а про хибернейт так и не хотят ничего слышать.
Видно, что оба довода имеют одни корни - продукт толкается Microsoft, а потому его ну никак не проигнорировать и ему обеспечено блестящее будущее.
18 янв 08, 11:37    [5170641]     Ответить | Цитировать Сообщить модератору
 Re: Зачем нужны бизнес-объекты?  [new]
Нахлобуч
Member

Откуда: https://hglabhq.com
Сообщений: 3939
Dmitdd

А вот мое мнение про POCO, что основной принцип "классы должны быть как можно проще" - не означает, что они не должны засоряться атрибутами, а означает, что никакой бизнес-логики, только описание класса. Согласитесь, что неудобно дергаться постоянно между классом и файлом маппинга. И следующий проект, который буду делать с NHibernate, буду маппинг прописывать прямо в классе с помощью атрибутов. Хотя вот тут боюсь ошибиться и буду признателен, если вовремя отговорите.

Начнем с того, что вам вместе со сборкой с вашими теперь уже псевдо-POCO-классами придется тянуть сборку с определениями этих атрибутов. Во-вторых, отдельные файлы маппингов все же удобней -- не мешаются в одну кучу код и разметка. В-третьих, атрибутами не все можно описать. В-четвертых, я не знаю, как там обстоят дела с HQL-запросами. Их текст тоже в атрибуты запихивать?
Dmitdd

А вот мои доводы в пользу LINQ:

От Линка я и не отговариваю -- наоборот, он прекрасно сосуществует с NHibernate. Пользуйтесь наздоровье.
18 янв 08, 11:42    [5170715]     Ответить | Цитировать Сообщить модератору
 Re: Зачем нужны бизнес-объекты?  [new]
Dmitdd
Member

Откуда:
Сообщений: 477
Нахлобуч

Начнем с того, что вам вместе со сборкой с вашими теперь уже псевдо-POCO-классами придется тянуть сборку с определениями этих атрибутов. Во-вторых, отдельные файлы маппингов все же удобней -- не мешаются в одну кучу код и разметка. В-третьих, атрибутами не все можно описать. В-четвертых, я не знаю, как там обстоят дела с HQL-запросами. Их текст тоже в атрибуты запихивать?

Здесь прям разрекламировали здесь
и назвали xml файлы nasty. Мне и самому привычнее пользоваться отдельными файлами маппинга. Думал, что использование аттрибутов - это следующий шаг в прогрессе хибернэйта.
Нахлобуч

От Линка я и не отговариваю -- наоборот, он прекрасно сосуществует с NHibernate. Пользуйтесь наздоровье.
Посему имеет смысл использовать LINQ -- по вполне понятным причинам -- в качестве замены Criteria API и HQL

Можно маленький примерчик того, где есть смысл стыковать LINQ и NHibernate?
Что-то до меня не дойдет, зачем заменять?
18 янв 08, 12:04    [5170979]     Ответить | Цитировать Сообщить модератору
 Re: Зачем нужны бизнес-объекты?  [new]
Нахлобуч
Member

Откуда: https://hglabhq.com
Сообщений: 3939
Dmitdd

Можно маленький примерчик того, где есть смысл стыковать LINQ и NHibernate?
Что-то до меня не дойдет, зачем заменять?

Я ж дал ссылку.

Например, так:

ISession session = ...
var query = (
          from user in session.Linq<User>()
          where user.Name == "ayende"
          select user
      ).ToList(); 
18 янв 08, 12:16    [5171119]     Ответить | Цитировать Сообщить модератору
 Re: Зачем нужны бизнес-объекты?  [new]
зы
Guest
и что, это добро преобразуется в SQL и зашлется таким образом в базу, или отфильтруется на клиенте? т.е. иначе говоря, товарищи уже написали свой клевый парсер дерева LINQ выражений для хибернейта, над которым в МС пухли пару лет?
вообще хибернейт мне не очень нравится, этакий аццкий зверь из явы. Все знают, что это круто, но мало кто умеет им пользоваться. В результате гавна и тормозов обычно огрести очень легко.
20 янв 08, 15:33    [5177176]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 [2] 3 4 5   вперед  Ctrl      все
Все форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM Ответить