Я нахожусь в фазе «дизайна» нового проекта.Лучший дизайн для WCF + LINQ + Фоновые работники
Я расскажу немного о том, что он должен включить, и я был бы рад, если бы кто-нибудь мог указать мне в правильном направлении (поскольку я не архитектор программного обеспечения, я инженер + программист).
- Существует служба WCF, которая будет предоставлять услуги нескольким потребителям-потребителям.
- Служба WCF будет выполнять операции CRUD в базе данных SQL.
- Служба WCF будет отвечать на вызовы клиентов с данными обратно к ним.
- В дополнение к «опросу» от клиентов должен быть установлен механизм для отправки клиентам обновлений о различных событиях (поэтому в фоновом режиме должен быть какой-то рабочий поток, который будет проверять наличие новых событий и уведомить всех соответствующих клиентов об этом).
- На клиенте должна быть установлена система «входа», защищенная паролем.
То, что я думал только о том, (я на фазовой диаграмме класса):
- для службы - есть класс интерфейса, и класс
- реализации для каждого объекта, что служба получает или возвращает - создает класс DTO
- все возвращенные объекты будут наследоваться от какого-то класса «Результат», который может содержать предупреждения и ошибки из бизнес-логики.
- Уровень доступа к данным будет LINQ.
Теперь я зациклился на том, как я должен разделять слои, и как я должен проиллюстрировать это на диаграмме классов.
Я знаю, что я должен был иметь сквозные таких слоев, как «Безопасность» и «Регистрация». Я также знаю, что служба WCF не должна напрямую связываться с базой данных, но должна использовать какую-то бизнес-логику.
Но я не знаю, как это показать на диаграмме классов. Создать класс «Бизнес-логика»?
и как показать поток «работника», который должен работать в фоновом режиме и уведомлять клиентов о специальных вещах?
и как все сочетается? Значение - создать экземпляр бизнес-логики, а затем внедрить его в службу? или является бизнес-логикой статического класса?
Я думаю, что я мог бы перепутать термин «домен» и «слой» может быть :(
Спасибо за тех, кто может объяснить, как я должен проектировать вещи правильно, или, возможно, указать мне на хорошее руководство для моей ситуация ...
Здесь есть много вопросов и вопросов. Сначала вы можете прочитать несколько книг и задать более конструктивный вопрос (вопросы). –
Я просто спрашиваю о диаграмме классов –
Можете ли вы затем ответить на некоторые из моих вопросов, пожалуйста? Поверьте мне - я прочитал несколько книг и много статей о MSDN и других сайтах. Информация просто иногда противоречит, поэтому я бы хотел, чтобы эксперт просто попытался привести меня в правильном направлении ... –