Apworks框架实战(二):开始使用】的更多相关文章

Apworks框架实战(一):Apworks到底是什么? Apworks框架实战(二):开始使用 Apworks框架实战(三):单元测试与持续集成 Apworks框架实战(四):使用Visual Studio开发面向经典分层架构的应用程序:从EasyMemo案例开始 Apworks框架实战(五):EasyMemo的领域模型设计 Apworks框架实战(六):使用基于Entity Framework的仓储基础结构 …
要使用Apworks进行应用程序开发,您需要安装Visual Studio 2012以上的版本(以下简称Visual Studio 2012+),从Apworks 2.5开始,需要Micrsoft.NET Framework 4.5的支持,因此强烈建议使用Visual Studio 2012+进行开发. 获取源代码 要获得最新版本的代码,请使用下面的命令获取: git clone https://github.com/daxnet/Apworks 您也可以直接打开Apworks的首页以在线浏览源…
简介 Apworks是一款基于Microsoft .NET的面向领域驱动的企业级应用程序开发框架,它适用于以领域模型为核心的企业级系统的开发和集成.Apworks不仅能够很好地支持经典的分层架构,而且还能支持基于事件驱动的命令查询职责分离(Command-Query Responsibility Segregation, CQRS)架构. 随着软件系统日趋复杂,构建一套可用的.稳定的.可扩展的.安全的以及高效的系统变得越来越困难.为了解决这样的困难,人们在多年的软件开发过程中积累了不少经验,由其…
虽然这部分内容并没有过多地讨论Apworks框架的使用,但这部分内容非常重要,它与Apworks框架本身的设计紧密相关,也是进一步了解Apworks框架设计的必修课. 单元测试与持续集成概述 在敏捷开发过程中,单元测试是非常重要的.这不同于传统的瀑布开发模型,在瀑布模型中,单元测试的重要性体现的并不明显,因为在这种模型中,"测试"被强调为整个开发流程中的一个环节,也会有专门的测试团队来负责测试过程,于是,由开发人员负责的单元测试往往被忽略.另一方面,在项目刚刚开始时,由于团队对开发过程…
在前面的章节中,我们已经设计了一个简单的领域模型,接下来我们希望能够实现领域模型的持久化及查询.在Apworks中,实现了面向Entity Framework.NHibernate以及MongoDB的仓储基础结构.在本章节中,我将向大家介绍如何在Apworks中使用基于Entity Framework的仓储机制. 搭建基于Entity Framework的基础结构 在使用Apworks提供的仓储服务之前,我们首先需要搭建好基于Entity Framework的基础结构,以便接下来的Apworks…
在上一讲中,我们已经新建了一个聚合根对象Account,并已经可以开始设计领域模型了.在这一讲中,我们会着重介绍EasyMemo领域模型的分析和设计,并引入Visual Studio Ultimate(旗舰版)版本的特性,介绍在Visual Studio 2013 Ultimate中如何使用体系结构建模工具进行领域模型设计,并自动化产生支持Apworks框架的代码. 界定上下文 由于EasyMemo所需实现的功能非常简单,因此,我们很容易从领域概念中剥离出两个界定上下文:用户账户上下文和用户便签…
时隔一年,继续我们的Apworks框架之旅.在接下来的文章中,我将逐渐向大家介绍如何在Visual Studio中结合Apworks框架,使用ASP.NET Web API和MVC来开发面向经典分层架构的应用程序.在这一讲中,我们首先了解一下分层架构的各个"层",以及所涉及的Visual Studio项目,然后,我们从领域模型开始,在Visual Studio中开始我们的应用程序开发之旅. 说明:虽然现在微软已经发布了Visual Studio 2015,但为了照顾广大的老版本用户,本…
前一篇介绍了仓储的基本概念,并谈了我对仓储的一些认识,本文将实现仓储的基本功能. 仓储代表聚合在内存中的集合,所以仓储的接口需要模拟得像一个集合.仓储中有很多操作都是可以通用的,可以把这部分操作抽取到基类中. 在Util.Domains项目中创建一个文件夹Repositories,这个文件夹用来放仓储相关的接口.在Repositories下创建一个仓储接口IRepository. 把仓储基接口放到Util.Domains,是因为仓储接口是在领域层定义的,这与传统三层架构的数据访问层接口的位置不同…
[WePY小程序框架实战一]-创建项目 项目结构 |-- dist |-- node_modules |-- src | |-- components |-- a.wpy |-- b.wpy |-- ... |-- pages |-- index.wpy |-- about.wpy |-- ... |-- store |-- actions |-- reducers |-- types |-- utils |-- http.js |-- ... |-- app.wpy |-- package.j…
上文介绍了我选择EasyUi作为前端框架的原因,并发放了最新Demo.本文将对这个Demo进行一些介绍,以方便你能够顺利运行起来. 这个Demo运行起来以后,是EasyUi的一个简单CRUD操作,数据库中也只有一个简单的表,整个操作不带任何业务逻辑. 看到这里,不少朋友难免感到失望,搞这么复杂一个架构,就只用来实现一个简单的CRUD操作,不是大炮打蚊子吗? 不要急,我的目的不是教你如何实现CRUD,我还没有这么无聊,我是希望通过这个简单的CRUD操作,帮你引出一些框架特性,大致包括下面内容. 分…