DDD值对象
-
paluch.biz - Lombok的数据类是有害的!为什么我不再使用Lombok?
2337 2K其实数据类就是数据结构,就是DTO,其和真正类是有本质区别,见鲍勃大叔实锤:类与数据结构的比较,使用数据类其实是一种倒退!这篇博客文章解释了从项目中删除Project Lombok背后的动机,它反映了.
-
DDD值对象:被遗忘的价值 – SoftwareMill Tech Blog
1679 4 7K让我们看一看为什么将值对象方法应用于我们的代码是真的很有用哦。我相信我们中的很多人都听说过域驱动设计(DDD),无处不在的语言以及所有这些奇特的东西。然而,我看到许多代码并不使用于基于这种方法的想法。.
-
什么是DDD领域驱动设计的战术设计?
3011 2战术设计是一组在实施中使用的技术资源域模型,这些资源必须应用在一个单一的有界上下文中。如果正确使用战术设计标准,您实际上可以丰富您的领域模型,从而清晰地反映您的业务。请参阅下面的主要构建模块:实体一个.
-
TypeScript如何实现DDD的值对象?
1210 1 5K值对象是领域驱动设计的主要组件之一。这是TypeScript中的一个简单的Value Object类。在领域驱动设计中,值对象是帮助我们创建丰富且封装的域模型的两个原始概念之一。实体和价值对象这两个概.
-
Java中的不可变数据结构 - Jworks.io
1516 1 7K开发人员通常认为拥有final引用,或者val在Kotlin或Scala中,足以使对象不可变。这篇博客文章深入研究了不可变引用和不可变数据结构。不可变数据结构的好处不可变数据结构具有一些显着的好处,例.
-
如何使用Spring Projections和Join实现DTO?
2515 1 12KSQL JOINS和DTO是我们打击N + 1问题的好办法,可参考#DTO标签看看其他方式,这里,我们通过使用Spring Projections(DTO)和通过JPQL和本机SQL(用于MySQL).
-
如何通过ResultTransformer和原生SQL或JPQL生成DTO?
2032 6K获取超出需要的数据更容易导致性能损失。使用DTO可以让我们只提取所需的数据。在这个应用程序中,我们依赖于Hibernate ResultTransformer和原生SQL生成DTO?对于不可变的DTO.
-
如何通过构造函数和JPQL生成DTO?
1299 2K获取超出需要的数据更容易导致性能损失。使用DTO可以让我们只提取所需的数据。在这个应用程序中,我们依赖于Constructor Expression和JPQLL生成DTO。点击#DTO标签可获得更多生.
-
如何通过javax.persistence.Tuple和原生SQL生成DTO?
1810 4K从实体中获取DTO数据,也就是从DDD聚合中获取DDD值对象有多种方式,如果我们不使用DTO方式,直接返回完整实体聚合,容易导致性能损失,使用DTO可以让我们只提取所需的数据。在这个应用程序中,我们展.
-
如何通过SqlResultSetMapping和NamedNativeQuery生成DTO?
1749 4K获取超出你实际需要的数据容易导致性能损失。使用DTO可以让我们只提取所需的数据。在这里我们展示依赖SqlResultSetMapping,NamedNativeQuery和EntityManager实.
-
如何通过Hibernate/JPA的SqlResultSetMapping生成需要数据的DTO?
5244 5K获取比你实际所需要的更多数据并不好,此外,当您不打算修改实体时,获取实体(通过在持久化上下文中加入的方式获取实体)是最常见的错误之一,它隐含性能损失。因此,使用DTO可允许我们仅提取所需的数据。在这个.
-
Builder模式与Java语法
23386 2 13KBuilder模式是在Java中最流行的模式之一。它很简单,有助于保持对象不可变,并且可以使用Project Lombok的@Builder或Immutables等工具生成,仅举几例。模式的流畅变体示.
-
Lombok让Java再次变得酷酷的 - Grubhub Bytes
2210 1 20K在Grubhub,我们在大多数后端编程中都使用Java。Java是经过实践考验的语言,在过去的20年里证明了它的速度和可靠性。虽然我们已经使用Java多年,但最近它已经开始显示它岁数大了。虽然Java.
-
使用Builder设计模式实现不变性 - DZone Java
1066 7KEffective Java的一条建议是,除非有充分的理由让它们变得可变,否则你应该让你的类不可变。如果一个类不能成为不可变的,那么尽可能地限制它的可变性。不可变类定义了一旦创建,就永远不会改变其状态.
-
粗心的Mock模拟测试是有害的 - Philippe Bourgau
1173 10K在2010年至2014年期间,我正在开展一个名为http://mes-courses.fr的辅助项目。这实际上类似“家庭购物”。我希望人们能够在5分钟内通过使用更好的在线百货界面购物。我使用的是Rub.
-
什么是实体边界交互器架构
2036 2K实体边界交互器Entity—Boundary—Interactor(EBI)源自Bob大叔在其题为“ Architecture:The Lost Years”及其着作的系列会谈中最初构想的想法。EBI. -
Cookie Cutter架构 - Janos Pasztor
1268 1 9K在业务应用程序方面,您需要一个可以很好地扩展的体系结构。这是我的看法,基于Uncle Bobs EBI。尽管大多数人都认为我是DevOps人,但我经常在咨询项目期间使用业务应用程序,甚至在为DevOp.
-
为什么不变性至关重要 - Janos Pasztor
844 7K我以前在干净的代码中谈到了不可变对象,但究竟是什么呢?我们为什么要使用它们?不可变对象是一个非常强大的编程概念,可以避免各种并发问题和一大堆错误,但它们不一定容易理解。我们来看看它们是什么以及我们如何.
-
体面编码之通用原则
880 2K更喜欢函数性方法。相比副作用,不可变的状态使代码不易出错,并且更容易推理。最小化持有状态。任何形式的状态(例如变量,缓存)往往是复杂性和问题的根源,因此最好尽可能少地保留它。如果约束允许,更喜欢在需要.
-
领域驱动设计简介之二
3339 2 7K架构模块正如我们已经指出的那样,大多数DDD系统可能会使用OO范例。因此,我们对领域模型的元素可能很熟悉,例如实体,值对象和模块。例如,如果您是Java程序员,那么将DDD实体视为与JPA实体基本. -
值对象的层次结构
1251 6K有两个类:Person 和Document,具有以下业务规则: 一个Person 可以拥有零个或一个Document。 Document只能分配给一个Person 。 没有Person就没有Do. -
实体与价值对象的比较
2571 3K为了定义实体和值对象之间的差异,我们需要引入三种类型的相等性,当我们需要将对象相互比较时,它们会起作用。引用相等意味着如果两个对象引用内存中的相同地址,则认为它们是相等的。标识符相等性意味着类具有id.
-
DTO与值对象和POJO比较
3118 1 6K本文想澄清DTO与Value Object与POCO的区别,其中DTO代表数据传输对象,而POCO是Plain Old CLR Object,在Java环境中也称为POJO。对Value Object. -
实体标识与数据库主键
3758 3 2K今天,我们将讨论DDD意义上的标识与数据库主键之间的区别。 我们经常将两者混合在一起,但它们真的是一回事吗?实体标识在DDD的背景下,标识是实体固有的东西。 只有实体拥有它; 它是用于区别于所有其他实.
-
不变性immutablity设计 回复
2 1172楼主,事实上我看了帖子后还是比较混乱,不明白immutablity是怎么解决并发问题的,请楼主指教。我看了帖子后大概理解是,值对象类似于栈上的值数据,只有自己的线程可以访问和修改,不同线程拥有的实际上.
-
两个凡是:凡是在系统树上的才是有意义的,凡是脱离了树的都是无意义的。
1335 2 2K我们的业务系统就类似一个小区(appSystem),一个小区中有很多资源,对小区中的所有资源按照类型进行树形的分类就是资源类型(resourceType),比如“停车位”是一种类型的资源、小区中的“绿.
-
值类型Java库包AutoValue
3864 3 4KGoogle发布了值类型Java的开源库包AutoValue 1.0。方便使用Java创建值类型。什么是值类型value type?一个值类型对象value-typed object是指没有标识的对象.
-
在模型的两个聚合中如何重用对象
2 1705在聚合1中,对象A是一个实体对象,在聚合2中,对象A是一个值对象,这种情况,在模型中该如何设计?是为聚合1,聚合2分别定义对象A,还是他们可以重用同一个对象A?例如,在汽车这个聚合中,因为需要对每个轮.
-
元数据值对象如何加载
2 1100在业务系统中,会使用很多元数据,比如某些论坛注册需要选择国家,总不可能将全世界所有的国家名称和代码都建立成枚举,这种应用一般都是将这些国家建立成数据库端的元数据表,这种元数据映射到系统中肯定是VO,这.
-
关于值对象的理解,疑惑
578比如权限这块 我们有user 、role 和userrole 聚合根,userrole里面的userID roleID 是不是指对象.