powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / Реализация многозвенки...
11 сообщений из 11, страница 1 из 1
Реализация многозвенки...
    #35526016
Dim@sty
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Доброе время суток...

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

Собственно вопросы

Я хотел бы использовать NHibernate в своем приложении следовательно встал вопрос: как отделять бизнес сущности от методов выборки и сохранения данных и нужно ли их вообще отделять???

Что лучше использовать для связки с App сервером, WCF или .NET Remoting, если
предполагается появление новых приложений, работающих с этим же App сервером???? Где граблей поменьше????

Рост этого приложения будет не подням а по часам...

Хотелось бы услышать мнение компетентных в этом вопросе специалистов.

Заранее спасибо за дельные советы???
...
Рейтинг: 0 / 0
Реализация многозвенки...
    #35527440
Фотография Диез
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dim@styДоброе время суток...

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

Собственно вопросы

Я хотел бы использовать NHibernate в своем приложении следовательно встал вопрос: как отделять бизнес сущности от методов выборки и сохранения данных и нужно ли их вообще отделять???


Трудно сказать :) Я предпочитаю по сети передавать только объекты с данными, а вся логика - в методах самого сервиса.

Dim@sty
Что лучше использовать для связки с App сервером, WCF или .NET Remoting, если
предполагается появление новых приложений, работающих с этим же App сервером???? Где граблей поменьше????


Имхо, WCF или вебсервисы.
Remoting можно использовать только в .NET-приложениях, а зачем себя сразу ограничивать одной технологией?

Dim@sty

Рост этого приложения будет не подням а по часам...

Хотелось бы услышать мнение компетентных в этом вопросе специалистов.

Заранее спасибо за дельные советы???

Думаю, лучше задать эти вопросы еще и в форуме по C#.
...
Рейтинг: 0 / 0
Реализация многозвенки...
    #35528530
Dim@sty
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо. Пойду еще раз М.Фаулера почитаю
...
Рейтинг: 0 / 0
Реализация многозвенки...
    #35529674
Фотография Нахлобуч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dim@styЯ хотел бы использовать NHibernate
Сразу думай о ленивости. И посмотри еще на BLToolkit.
Dim@styвстал вопрос: как отделять бизнес сущности от методов выборки и сохранения данных и нужно ли их вообще отделять???
Нужно. Отдельные сервисные классы, специально для таких целей предназначенные.
Dim@sty
Что лучше использовать для связки с App сервером, WCF или .NET Remoting
При грамотно продуманной архитектуре переключение с WCF на Remoting займет столько же времени, сколько занимает комментирование одного тега в конфигурационном файле и раскомментирование другого.

Одно замечание по поводу сервера: в коде, скажем, в случае Remoting, самого remotable-класса (тот, который наружу торчит) никакой бизнес-логики быть не должно. Самое большее -- логирование. Другими словами, все вызовы просто делегируются соответствующим службам:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
        public void RescheduleReportGeneration(ReportGenerationScheduleCollection reportGenerationSchedules)
        {
            ReportingService.RescheduleReportGeneration(reportGenerationSchedules);
        }

        public void UnscheduleReportGeneration(ReportGenerationScheduleCollection reportGenerationSchedules)
        {
            ReportingService.UnscheduleReportGeneration(reportGenerationSchedules);
        }

        public ReportGenerationStatistics GetInteractiveReportGenerationStatistics(ReportDefinition reportDefinition)
        {
            return ReportGenerationStatisticsManagerService.GetInteractiveReportGenerationStatistics(reportDefinition);
        }

        public ImportableFileFormatCollection GetSupportedImportableFileFormats()
        {
            return FileImportService.GetSupportedImportableFileFormats();
        }

        public ImportResult ImportFile(ImportableFileFormat importableFileFormat, ImportableFile importableFile)
        {
            return FileImportService.Import(importableFileFormat, importableFile);
        }
...
Рейтинг: 0 / 0
Реализация многозвенки...
    #35530736
Dim@sty
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нахлобуч Спасибо за дельные советы, как раз на руку!

НахлобучСразу думай о ленивости

Вы хотите сказать, что про lazy в данной ситуации можно забыть?

Еще есть вопрос по поводу бизнес объектов. В моем случае их придется тащить на клиента.
Это нормально?

Прошу не пинать - это моя первая система такого уровня.
...
Рейтинг: 0 / 0
Реализация многозвенки...
    #35531574
Фотография Нахлобуч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dim@styВы хотите сказать, что про lazy в данной ситуации можно забыть?
В целом да.
Dim@sty
Еще есть вопрос по поводу бизнес объектов. В моем случае их придется тащить на клиента.
Это нормально?

Прошу не пинать - это моя первая система такого уровня.[/quot]
...
Рейтинг: 0 / 0
Реализация многозвенки...
    #35531578
Фотография Нахлобуч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Промазал.
Dim@sty
Еще есть вопрос по поводу бизнес объектов. В моем случае их придется тащить на клиента.
Это нормально?
Да, вполне нормально. Вытряхивай оттуда всю бизнес-логику и таскай туда-сюда. В сторону DTO лучше смотреть в самых запущенных случаях.
...
Рейтинг: 0 / 0
Реализация многозвенки...
    #35531674
SeVa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Все это уже реализовано в CSLA.
...
Рейтинг: 0 / 0
Реализация многозвенки...
    #35531877
Фотография Нахлобуч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SeVaВсе это уже реализовано в CSLA.
Тогда в двух словах, если не трудно, расскажи, как такое там осуществить: есть сервер БД, "сервер приложений" и клиент. "Сервер приложений" может быть выполнен как Remoting-служба, веб-сервис или XML-RPC-сервис; для кода клиента детали реализации сервера не должны играть роли. Бизнес-объекты едины для клиента и для сервера. Функционал самый простой -- просмотреть список неких объектов, что-то поправить, что-то удалить, что-то добавить. Требуется наличие выделенного слоя DAL, бизнес-логики и представления. Клиент может быть WinForms-, ASP.NET- или консольным приложением.
...
Рейтинг: 0 / 0
Реализация многозвенки...
    #35531904
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а почему не совсем тонкий клиент - ослик?
______________________________________________
Вы имеете право хранить молчание! Всё что Вы скажете может быть использовано против Вас в суде!
...
Рейтинг: 0 / 0
Реализация многозвенки...
    #35532066
SeVa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если в двух словах, то это все есть .
автор"Сервер приложений" может быть выполнен как Remoting-служба, веб-сервис или XML-RPC-сервис
+ DCOM, WCF, есть уже бета и для Silverligth.

автордля кода клиента детали реализации сервера не должны играть роли. Бизнес-объекты едины для клиента и для сервера.
все едино.На клиенте только меняем строку в конфиге.

авторФункционал самый простой -- просмотреть список неких объектов, что-то поправить, что-то удалить, что-то добавить. Требуется наличие выделенного слоя DAL, бизнес-логики и представления.
Тоже все реализовано.DAL может быть любой(в данный момент стандартно поддерживается ADO и LINQ).Народ прикручивает NHibernate и другие ORM.В последних версиях ObjectFactory может быть и самописный.Из бизнес логики присутствуют : правила валидации и проверка прав доступа
для просмотра, редактирования, добавления, удаления объектов.Остальное не для этого слоя.

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


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