我想使用不同的方法在ASP.NET MVC4上启动新的应用程序,如域驱动开发,设计模式,依赖注入,ORM等实体框架等。
需要一些关于什么应该是发展起点的建议?我应该从第一阶段关系开始,还是从传统方法开始? 例如,有三个模块。
我是否应首先完成域类等用户管理,然后是实际Web应用程序中的服务和CRUD操作?之后......将从日志记录开始(与用户管理中提到的过程相同)。然后在错误记录中。
那么使用这些概念或工具开始开发的最佳实践是什么?
答案 0 :(得分:10)
ASP.NET MVC4只是解决方案的一个演示文稿部分。使用Domain-Driven方法,您可以从域(通常是单独的库项目)开始,然后添加演示文稿(网站,桌面应用程序等)和持久性(在您的域中声明的存储库和uof接口的实现)。
因此,您首先要创建域模型(不是整体,而是部分模型)。然后,您可以按任何顺序创建使用域模型的UI,以及通过Entity Framework保存域模型的存储库实现。实际上,视图应该使用ViewModel(否则您的POCO域对象将被Data Annotations属性和其他东西污染)。它是一个控制器部分,您将使用域模型。您还将通过依赖注入将存储库实现注入控制器。
答案 1 :(得分:5)
我首先要看一下系统的业务功能要求,然后首先关注最高价值要求。根据需求实施这些,根据需要填写业务领域。如果您遵循BDD样式流程,则可以使用单元测试来消除业务功能,并且随着业务需求的发展,您的域将发展。每个业务需求都应该有一个UI和数据访问组件,以便随着域的发展,您可以使用Entity Framework填写表示层和数据访问层。这里有一些关于BDD的有用帖子: