• Builder模式是在Java中最流行的模式之一。它很简单,有助于保持对象不可变,并且可以使用Project Lombok的@Builder</
  • SQL JOINS和DTO是我们打击N + 1问题的好办法,可参考#DTO标签看看其他方式,这里,我们通过使用Spring Projections(DTO)和通过JPQL和本机SQL(用于MySQL)编写各种Join联接的概念证明。 1. 定义多个
  • 架构模块正如我们已经指出的那样,大多数DDD系统可能会使用OO范例。因此,我们对领域模型的元素可能很​​熟悉,例如实体,值对象和模块。例如,如果您是Java程序员,那么将DDD实体视 icon
  • 开发人员通常认为拥有final引用,或者val在Kotlin或Scala中,足以使对象不可变。这篇博客文章深入研究了不可变引用和不可变数据结构。 不可变数据结构的好处不可变数据结构具有一些显着的好处,例如: icon
  • 值对象是领域驱动设计的主要组件之一。这是TypeScript中的一个简单的Value Object类。在领域驱动设计中,值对象是帮助我们创建丰富且封装的域模型的两个原始概念之一。实体和价值对象这两个概念。通过了解它与实体的不同之处,可以最好地理解值对象。它们的主要区别 icon
  • 在Grubhub,我们在大多数后端编程中都使用Java。Java是经过实践考验的语言,在过去的20年里证明了它的速度和可靠性。虽然我们已经使用Java多年,但最近它已经开始显示它岁数大了。虽然Java是 icon
  • 获取比你实际所需要的更多数据并不好,此外,当您不打算修改实体时,获取实体(通过在持久化上下文中加入的方式获取实体)是最常见的错误之一,它隐含性能损失。因此,使用DTO可允许我们仅提取所需的数据。在这个应用程序中,我们依赖  @SqlResultSetMapping和EntityMan icon
  • 在业务应用程序方面,您需要一个可以很好地扩展的体系结构。这是我的看法,基于Uncle Bobs EBI。尽管大多数人都认为我是DevOps人,但我经常在咨询项目期间使用业务应用程序,甚至在为DevOps企业编写管理软件时也是如此。在我这么多年的时间里,我意识到我编写代码的方式并不是非 icon
  • 实体边界交互器Entity—Boundary—Interactor(EBI)源自Bob大叔在其题为“ Architecture:The Los icon
  • 获取超出需要的数据更容易导致性能损失。使用DTO可以让我们只提取所需的数据。在这个应用程序中,我们依赖于Hibernate ResultTransformer和原生SQL生成DTO? 对于不可变的DTO值对象和可变的DTO对象使用不同的方式,不可变 icon
  • 从实体中获取DTO数据,也就是从DDD聚合中获取DDD值对象有多种方式,如果我们不使用DTO方式,直接返回完整实体聚合,容易导致性能损失,使用DTO可以让我们只提取所需的数据。在这个应用程序中,我们展示如何依赖于javax.persistence.Tuple原生SQL生成DTO。点击#DTO icon
  • 获取超出你实际需要的数据容易导致性能损失。使用DTO可以让我们只提取所需的数据。在这里我们展示依赖SqlResultSetMapping,NamedNativeQuery和EntityManager实现DTO。 假设需要从实体Car中获取name和 icon
  • 获取超出需要的数据更容易导致性能损失。使用DTO可以让我们只提取所需的数据。在这个应用程序中,我们依赖于Constructor Expression和JPQLL生成DTO。点击#DTO标签可获得更多生成DTO的方式。同样,在DDD编程中,从DDD聚合中获取DDD值对象有多种方式,如果 icon
  • 有两个类:Person  和Document,具有以下业务规则: 一个Person  可以拥有零个或一个Document。 Document只能分配给一个Person  。 没有Person就没有Document。 此领域模型中有两种类型的文档:Id icon
  • 在2010年至2014年期间,我正在开展一个名为http://mes-courses.fr的辅助项目。这实际上类似“家庭购物”。我希望人们能够在5 icon
  • Effective Java的一条建议是,除非有充分的理由让它们变得可变,否则你应该让你的类不可变。如果一个类不能成为不可变的,那么尽可能地限制它的可变性。不可变类定义了一旦创建,就永远不会改变其状态的对象。所有状态信息都是在构造对象时提供的,并且在对象的生命周期内不会改变。 icon
  • 更喜欢函数性方法。相比副作用,不可变的状态使代码不易出错,并且更容易推理。 最小化持有状态。任何形式的状态(例如变量,缓存)往往是复杂性和问题的根源,因此最好尽可能少地保留它。如果约束允许,更喜欢在需要时导出信息,以便存储信息。 icon
  • 我以前在干净的代码中谈到了不可变对象,但究竟是什么呢?我们为什么要使用它们?不可变对象是一个非常强大的编程概念,可以避免各种并发问题和一大堆错误,但它们不一定容易理解。我们来看看它们是什么以及我们如何使用它们。首先,让我们看一个简单的对象: icon