`

请问domain driven model design该如何设计?

阅读更多
请问domain driven model design该如何设计?


主题:
请问domain driven model design该如何设计?


网友:
这个问题,我现在已经想得比较清楚了。简单说就是彻底忘记持久化,压根不想什么DAO的问题,只做面向对象的设计,就这么简单。


网友:
不是说DAO用不到,而是设计时不考虑它,需要的时候就建一个。Hibernate确实是个好东西,现在我根本不把DAO当first class公民对待,精力全部集中在面向对象的设计上。反正我总可以有办法把对象映射到数据库。


网友:
设计的时候总要考虑到分层吧,一般是ui/service/domain/persistent,考虑到persistent的时候就要去考虑dao呀。


网友:
我看了看论坛相关的文章:quake wang、sayor、gigix都有这种现成例子呀!


网友:
我理解,领域驱动设计的流程是:
领域需求-->领域建模-->根据模型设计-->设计实现(根据模型)-->发现问题-->新一轮领域需求或检查-->再建模-->再设计-->再实现 ......

这个过程是个迭代的过程。设计时以设计为重点,如果能考虑实现当然最好,不过有的时候实现只是一种细节而已。如果真的实现不了,可以回头再修正模型和设计吧。


网友:
总感觉目前的各种java框架,支持真正的面向OO的DDD很困难,即使通过hack方式实现了,自己都觉得别扭,更别说让别人维护了。


网友:
框架是实现,DDD是设计。
DDD强调的是对领域的逐步加深认识,通过迭代开发和重构实现模型。
是不是完全面向OO,应该不是重点吧。
DDD那本书上也讲到,实现时可以根据实际情况妥协一下。



分享到:
评论

相关推荐

    Domain driven design-quickly

    根据提供的文件信息,我们可以提取出关于领域驱动设计(Domain Driven Design,简称DDD)的知识点。文件信息中包含了标题“Domain driven design-quickly”,描述“a quick guide on domain driven design”,以及...

    Domain-Driven Design (Tackling Complexity in the Heart of Software

    领域驱动设计(Domain-Driven Design,简称DDD)是一种软件开发的方法论,它由Eric Evans在其2004年的同名书籍《领域驱动设计:软件核心复杂性应对之道》中提出。DDD的核心思想是,软件系统的复杂性不仅仅是由技术...

    Domain Driven Design

    3. 模型驱动设计(Model-Driven Design):这是一种以领域模型为核心的开发方法,它要求软件系统的设计和实现应该反映出模型的结构和意图。 4. 模型与实现的绑定:本书探讨了如何在设计和实现之间建立清晰的映射...

    JavaScript Domain-Driven Design(PACKT,2015)

    JavaScript Domain-Driven Design allows you to leverage your JavaScript skills to create advanced applications. You'll start with learning domain-driven concepts and working with UML diagrams. You'll ...

    Domain-Driven Design领域驱动设计

    领域驱动设计(Domain-Driven Design,简称DDD)是一种处理复杂软件核心问题的方法,由Eric Evans在其2002年的著作中首次系统阐述。DDD是一种综合性的设计理念,它强调将软件开发的焦点放在业务领域,并围绕业务领域...

    .NET Domain-driven design with C# 源码 chapter 2

    .NET框架与C#语言结合应用领域驱动设计(Domain-driven Design, DDD)是现代软件开发中的一个重要实践。DDD旨在通过将复杂的业务逻辑集中在核心领域模型上,提高软件系统的可读性、可维护性和可扩展性。本章节我们将...

    Domain-Driven Design Complexity In Software.pdf

    ### 域驱动设计(Domain-Driven Design, DDD):应对软件核心复杂性 #### 概述 《域驱动设计:应对软件核心复杂性》一书由埃里克·埃文斯(Eric Evans)撰写,Addison Wesley出版社于2003年8月20日出版。该书共560...

    领域驱动设计精简版,domain driven design

    领域驱动设计(Domain-Driven Design,简称DDD)是一种软件开发方法论,由Eric Evans在其2003年的著作《领域驱动设计:软件核心复杂性的应对之道》中提出。该方法论强调通过深入理解和分析业务领域,来驱动软件的...

    Domain-Driven Design Reference:Definitions and Pattern Summaries

    Model-Driven Design Hands-on Modelers Refactoring Toward Deeper Insight II. Building Blocks of a Model-Driven Design Layered Architecture Entities Value Objects Domain Events * Services Modules ...

    Domain_Driven_Design-slides

    Domain-driven design is an approach to software development for complex needs by connecting the implementation to an evolving model. The term was coined by Eric Evans in his book of the same title.

    Domain-Driven Design Reference

    《领域驱动设计参考》(Domain-Driven Design Reference)是由Eric Evans编写的,涵盖了领域驱动设计(Domain-Driven Design,简称DDD)的所有核心概念、术语和模式。本书属于DDD领域的权威书籍之一,2015年发布的...

    Applying Domain-Driven Design and Patterns: With Examples in C# and .NET

    Put another way, my vision has been to provide a book that will put Eric Evans' Domain-Driven Design [Evans DDD] and Martin Fowler's Patterns of Enterprise Application Architecture [Fowler PoEAA] in ...

    Domain-Driven Design Tackling Complexity in the Heart of Software(原版)

    本书详细阐述了领域驱动设计(Domain-Driven Design,简称DDD)的设计方法,DDD是一种以领域模型为核心,指导软件设计与实现的方法论,尤其适用于复杂系统的设计。 书中首先强调了“领域”在软件开发中的重要性,...

    Model-driven engineering-A survey supported by the unifiedconceptual model.pdf

    在深入探讨模型驱动工程(Model-driven engineering, MDE)之前,我们首先需要了解几个核心概念,包括模型(Model)、元模型(Metamodel)、建模语言(Modeling language)、系统(System)、转换(Transformations...

    FIAP-Domain-Driven-Design:域驱动设计存储库

    域驱动设计(Domain-Driven Design,简称DDD)是一种软件开发方法,它强调以业务领域为中心进行软件设计。在FIAP-Domain-Driven-Design存储库中,我们可以看到一个关于如何应用DDD原则和模式的具体实现。这个项目...

    Python库 | domainmodel-0.12.tar.gz

    1. **领域驱动设计(Domain-Driven Design, DDD)**:DDD是一种软件开发方法,强调将业务领域知识和软件开发紧密结合。在这个库中,可能提供了一种框架或工具,帮助开发者更好地理解和表达业务规则,并将这些规则...

    Modelling and Generating Ajax Applications A Model-Driven Approach

    ### Modelling and Generating AJAX Applications: A Model-Driven Approach #### Introduction AJAX (Asynchronous JavaScript and XML) represents a significant shift in the way interactive web applications...

    domain-driven-design-basics:领域驱动设计的基本概念

    领域驱动设计(Domain-Driven Design,简称DDD)是一种软件开发方法论,它强调将业务领域的复杂性转化为软件设计的核心,使软件更贴近业务逻辑。在本文中,我们将深入探讨领域驱动设计的基础概念,并以JavaScript为...

Global site tag (gtag.js) - Google Analytics