Asp.net_MVC5_DDD_EF6_IoC
Asp.net С# MVC5, EF6, DDD, IoC
Это проект DDD, созданный в Asp.Net на C# с использованием MVC 5, EF6 и Ninject в качестве IoC. В этом проекте можно проверить реализации:
- Общий шаблон репозитория с единицей работы.
- Программирование интерфейсов.
- ТВЕРДЫЕ принципы:
- Принцип единой ответственности => В C# и JavaScript (с использованием шаблонов) у каждого класса есть только одна причина для изменения.
- Принцип открытия-закрытия => использование шаблона проектирования фабрики в RecipeMs.Infra.ImportData — это способ его реализации.
- Принцип Лискова => Хорошие примеры инкапсуляции.
- Принцип разделения интерфейсов => интерфейсы короткие, исключений «не реализовано» нет, лучше видно в RecipeMs.Application.
- Инверсия зависимостей => Использование Ninject для внедрения зависимостей для классов основано на абстракциях, а не на конкретных классах.
- Шаблон модуля JavaScript и раскрывающий прототип для создания инкапсуляции используют его больше как объектно-ориентированное программирование.
- Bootstrap 3, CSS 3 и HTML5.
- Пользовательская сериализация Json.
- Общие сущности.
- Разделение проблем на конкретных уровнях.
- Домен => ядро системы, ни от кого не зависит. Имеет сущности и службы. (ДДД).
- Данные => конкретные реализации доступа к данным.
- Приложение=> соединение между презентационными устройствами с уровнем домена.
- Общие => общие утилиты.
- Ioc => Реализация внедрения зависимостей.
- ImportData => внешнее подключение к службам домена.
- Структура сущности 6
- Миграции и код в первую очередь.
- Свободный API вместо аннотаций в сущностях для еще большего разделения задач. Модель данных отвечает за уровень данных.
- Разберитесь с соглашением Entity Framework и настройте его.
- МВК 5.