Dojo
话题
新佳
订阅
极道
元认知
元逻辑
元设计
元编程
元语言
ORM模式教程
ORM真的不适合DDD
第一篇帖子,先自我介绍一下,我从07年开始关注并实践DDD,也一直在关注jdon的成长(虽然一直没有注册ID并发言)。自己的tech stack是.NET阵营的,一致也在致力推广.NET下DDD的实践。但设计和架构上的思想基本还是一致的。最近在思考一些ORM和DDD的问题,但是不知道我的思路
领域驱动设计之实践与反思
领域驱动设计之实践与反思 一、引言 前两三年,在这里我先后写过三个帖子,分别阐述了对三个问题的思考。1)什么是程序?结论是:程序=数据结构+算法+设计模式。2)什么是领域模型?结论是:人对领域的认
ORM末日到了
这是来自Pere Villega的一篇博文,主要从EventSourcing角度谈其对ORM的可替代性。 阻抗不匹配性大部分信息系统都是持久化存储信息然后查询获取,这大
20个数据库设计最佳实践
数据库设计看上去很简单,但是如果不经意随意设计,可能会为日后维护拓展或性能方面埋下祸根。以下是20个设计数据库的最佳实践指南:1. 使用完整的一致的数据表名称和字段名,如:School, StudentCourse, CourseID 2.数据表名
ActiveRecord比ORM更坏
ORM已经不好了,ActiveRecord其实比ORM更坏,因为它隐藏对象其实是数据容器这样的事实,如果说ORM是将真正对象变成数据容器,那么ActiveRecord还隐瞒了这样事实,也就是说,如果说ORM做了偷梁换柱的坏事,ActiveRecord不但做了,还隐瞒自己做的坏事。
ORM是明显的反模式
作为Java和Ruby程序员与架构师的Yegor昨天发表一篇博文:ORM Is an Offensive
抽象漏洞定律The Law of Leaky Abstractions
这是Joel在2002年提出的,所有不证自明的抽象都是有漏洞的。抽象泄漏是指任何试图减少或隐藏复杂性的抽象,其实并不能完全屏蔽细节,试图被隐藏的复杂细节总是可能会泄漏出来。 抽象漏洞法则说明:任何时候一个可以提
从数据结构+算法分析ORM的末日
大家讨论都挺好,我下面进行纯粹分析一下,今天脑子比较好些。 对象和数据库都是一种静态的数据结构,而SQL与LinQ或Lambda表达式或Stream都属于一种动态算法过程。两个分别对应内存和CPU,如同哼哈二将,阴阳一体,一个系统由这个两个组成比较和谐。但
Active Record和Data Mapper的混合ORM
这是来自Node.js路线有关混合两种ORM模式Active Record(活动记录模式)和Data Mapper(数据映射模式)的思考。其实质是引发了失血模型与充血模型的区别,更深层次是引出了掌握DDD的必要性。 首先这两种持久模式的特点如下:A
PostgREST是PostgreSQL的RESTful API
begriffs/postgrest · GitHub为现有的PostgreSQL数据库提供RESTful API服务,它提供一个干净的
从Swift语言看ORM的定位错误
Swift提供了数据结构struct和类Class两种, 数据结构和类一样支持行为,包括方法和初始化,数据结构和类的重要区别是:数据结构按复制方式传递,当你将一个数据结构传递给另外一个变量时,实际是复制了一份,但是类生成的对象进行传递时是按引用传递,传递的是那个对象的地址(当然地址值也是复制)。</
FLEX+REST+DDD+ORM+AOP案例下载
项目架构:
ORM是不适合DDD的!鲍勃大叔表示同意
鲍勃大叔推荐的Mark Seemann一文:昨天我拜访了一个客户讨论软件架构,包括DDD和ORM。今天我偶然发现了我在2014年写的东西。它仍然反映了我今天的想法。
类表继承模式(Class Table Inheritance Pattern)
此模式属于对象关系结构模式目录,此目录属于企业应
贫血模型 - DDD - The Domain Driven Design
贫血模型Anemic Model是一种领域模型,其中领域对象包含很少或没有业务逻辑。这个模型最初由Martin Fowler描述,他认为这种做法是反模式。 这种反模式的根本恐怖之处在于它与面向对象设计的基本思想相悖; 这是将数据和过程结合在一
Scala不是更好的Java
Scala不是更好的Java,而是一个具有自己的生态系统,最佳实践和方法的非常独特的语言。 当人们谈论Scala的使用经验时,经常说可以将Scala看作是更好的Java。许多公司特别是在2008-2009年间采用Scala的公司,并不想放弃Java等熟悉的
ORM用于复杂CRUD,SQL用于大规模读取
现在人们已经认识到Hibernate等ORM有一定的局限性,在CQRS读写分离的架构中,ORM主要用于命令写操作,进行复杂的增删改查CRUD;而SQL用于查询读操作。
值对象的层次结构
有两个类:Person 和Document,具有以下业务规则: 一个Person 可以拥有零个或一个Document。 Document只能分配给一个Person 。 没有Person就没有Document。 此领域模型中有两种类型的文档:Id
上页
下页
关闭