读书人

福利到!Rafy(原OEA)领域实体框架 2.2

发布时间: 2013-10-21 17:00:48 作者: rapoo

福利到!Rafy(原OEA)领域实体框架 2.22.2067 发布!

距离“上次框架完整发布”已经过去了一年半了,应群中的朋友要求,决定在国庆放假之际,把最新的框架发布出来,并把帮助文档整理出来,这样可以方便大家学习。

福利到!Rafy(原OEA)领域实体框架 2.22.2067 发布 Rafy 领域实体框架简要说明


Rafy 领域实体框架是一个 Rafy 系统框架中的 ORM 框架,可脱离其它组件单独运行,为开发人员提供了强大的功能、极高的开发效率。同时集领域驱动设计、面向服务架构、模型驱动架构、产品线工程方法于一身,是 Rafy 系列框架中其它部分(如界面生成框架)的基础。

以下摘自用户帮助文档,详情见发布的文档:“

特点

? 领域驱动设计

相对于一些注重概念、使用复杂的 DDD 框架,Rafy 更加注重实践。实现了 DDD 中与实际开发结合紧密的重要概念:聚合实体、标识、仓库、服务、分层架构、CQRS,同时保证了开发的易用性。详情参见:Rafy 与经典 DDD 的关系。

实体基类的设计支持关系的延迟加载、自动冗余属性、大对象属性、数据绑定、树型实体等。详情见:领域实体。

实体使用了自定义属性系统(托管属性框架)。这使得运行时可以不再使用反射,而是使用内置的属性管理方式,运行效率更高。同时,这些属性的 API 直接公布,更方便开发人员编写面向自己应用的框架。详情见:实体属性。

仓库基类则实现了组合实体的添加、删除、修改,并提供了大量的默认查询。详情见:实体仓库。

领域服务是跨组合实体的业务逻辑的封装体,也是 SOA 架构的基础。详情见:领域服务。

? CodeFirst 开发模式

使用 Rafy 领域实体框架,采用 CodeFirst 开发模式,可以使得开发人员在开发过程中只关心领域实体的关系、属性,而不需要关心数据库结构的变化。

在开发过程中,只需要配置好数据库连接,建库、建表、建字段都会由 Rafy 完成。实体结构上的变化:类型、属性、关系,都会由 Rafy 自动同步到数据库上。相对于传统的三层应用程序,在实体中添加、删除一个字段,开发人员不再需要修改应用程序的数据库、DAL、BLL代码,而由框架自动同步,大大提高了开发效率。

详情参见:数据库同步功能。

? 多数据库支持

Rafy 领域实体框架支持把同一份实体代码映射到多种数据库。目前已经支持了 SqlServer 2005-2012、Oracle10,以及文件型数据库 SQLCE4。其它数据库的支持也在研发中。
详情参见:多数据库支持。

? 支持部署为单机、分布式

使用 Rafy 编写的实体、服务,原生支持分布式部署。Rafy 基于自定义的托管属性框架,在对实体进行序列化时,不会传输实体中默认的数据,提高了数据传输的效率。
详情参见:部署。

? 零配置

框架的使用对开发人员要求非常简单,默认情况下基本不需要作任何配置。这样提高了开发的效率。
Rafy 框架的快速开发思想之一是支持默认值,尽量少使用配置。在必要时,仅需非常少的配置即可达到运行时的灵活变化。

? 稳定、质量有保障

领域实体框架的代码行有 4 万多行。为了保证框架质量,我们为框架编写了 200 多个单元测试,以测试框架的各个功能。

优势

与 EF、NH 等传统 ORM 框架相比,使用 Rafy 领域实体框架的优势在于:

读书人网 >其他相关

热点推荐