最近接到同学私信,说有机会面试字节,前面回答的还都不错,但是后面面试官问了他一些DDD的问题,他只是听过这个词,但是具体不太了解。最后面试没有通过,反馈就是技术比较扎实,但是领域架构方面了解得不足。挺可惜的。确实,在面试过程中,后面针对架构或领域思想的问题相当于拔高内容了,回答得好会很加分出彩,答得不好整体面试结果评分也不会太高。所以,思来想去,打算陆续出一些文章,根据自己对DDD相关著作的理解,
# 如何实现单体项目Java 在软件开发中,单体应用(Monolithic Application)是一个常见的架构模式。它将不同的功能模块集成在同一个代码库中。在这篇文章中,我会教你如何从头开始创建一个简单的单体Java项目,并且用表格展示流程,引导你逐步实现。 ## 实现流程 以下是实现单体Java项目的基本步骤: | 步骤编号 | 步骤描述 | | ---
原创 9月前
59阅读
1 Spring Cloud概述        本文要点             传统应用的问题       &nbs
导读本阶段课程将学习如何进行Java单体Web应用开发,经过本轮学习您将掌握:Java开发工具的使用:IntelliJ IDEA、Maven 常见架构模式的使用:分层架构、Spring MVC 常用工具及框架的使用:Bootstrap、Spring、JUnit、MyBatis、HTTPClient 教学过程中逐渐引入架构的概念,为「Java微服务」课程打下坚实的基础。适合对象本教程针对有一定Web
转载 2024-06-06 23:21:17
26阅读
java先看基础,二动手实践没有别的捷径。 i码邦app,让你在看java教程的同时,随时随地动手写java代码。 1. java语言的特点: ①简单:没有头文件、指针、运算符重载 ②面向对象 ③分布式:可以通过URL打开访问网络上的应用 ④健壮性:Java消除有出错倾向的状态:指针 ⑤安全:禁止运行时堆栈溢出... ⑥可移植性:JVM ⑦体系结构中立 ⑧解释型 ⑨高性能
转载 8月前
11阅读
# Java DDD项目简介 ## 什么是DDD项目DDD(Domain-Driven Design)是一种软件开发方法论,旨在帮助开发者更好地应对复杂领域的软件开发挑战。它强调将业务逻辑放在核心领域模型中,并通过领域模型的设计和开发来解决业务问题。 在DDD项目中,我们将业务逻辑定义为领域模型,并通过使用领域驱动设计的原则和模式来实现这些模型。这可以使得软件系统更加灵活、可维护和可扩展
原创 2023-08-09 07:54:58
155阅读
DDD+RPC架构DDD分层架构介绍DDD(Domain-Driven Design 领域驱动设计),目的是对软件所涉及到的领域进行建模,以应对系统规模过大时引起的软件复杂性的问题。开发团队和领域专家一起通过 通用语言(Ubiquitous Language)去理解和消化领域知识,从领域知识中提取和划分为一个一个的子领域(核心子域,通用子域,支撑子域),并在子领域上建立模型,再重复以上步骤,这样周
转载 2024-01-24 21:17:38
437阅读
抱歉了,前面几篇DDD的文章我删除了,本篇是前面发表的几篇DDD的汇总,内容有修改。领域驱动设计(DDD)是一种业务领域建模方法论、业务架构设计方法论,战略设计阶段从业务领域视角划分领域边界,抽象业务建立领域模型;战术设计阶段则根据清晰的领域边界、领域模型进行架构设计与开发实现。DDD解决了核心复杂业务设计问题,简化业务系统的实现,让业务逻辑高度内聚,与基础设施、框架解耦,清晰的领域边界解决微服务
引言领域驱动设计(Domain Driven Design,DDD)这个概念最近几年非常火,笔者在最近一段时间对相关内容进行阅读,总体下来感觉这个概念有点大,动不动就要高屋建瓴,大刀阔斧的进行战略设计。同时相关的代码实现大部分是java实现的,无法参考其落地实现。一、微服务设计为什么需要DDD在单机和集中式架构这两种模式下,软件无法快速响应需求和业务的迅速变化,最终错失发展良机。分布式微服务的出现
1.从上面2张图,可以直观的看出来,ddd可以调用的程度更大,上层可以直接调用下层的 全部层2.直接分析,ddd每层 都 放什么东西,和mvc的 放法有什么区别,知道了ddd每层放什么,又知道了每层 可以调下面 所有层,那么写代码,建立的包放哪,怎么建包,以及 哪个包 可以 调 哪些包的内容,就知道了,就可以放心写代码了,就行了DDD 代码架构层次上分为四层 • api:用户接口层,向外提供服务
转载 2023-09-15 15:27:25
175阅读
- src - it 集成测试模块 - java 集成测试代码 - resources 集成测试配置文件 - test 单元测试模块 - java 单元测试代码 - main 业务代码 - java - interfaces 用户接口层
转载 2024-08-14 22:20:57
126阅读
单体应用概览所有功能全部打包在一起。大部分是一个jar包或者war包,随着业务发展功能增多,这个项目会越来越臃肿优点容易开发,测试,部署,适合项目初期试错缺点复杂性高:代码多,十万行,百万行级别。加一个小功能,会带来其他隐患,因为他们在一起技术债务:人员流动,不坏不修,因为不敢修持续部署困难:①由于是全应用,改动一个小功能,全部部署,会导致无关应用暂停使用;②编译部署上线耗时长,不敢随意部署,导致
上一篇文章我们讲了经典DDD架构对比传统三层架构的优势,以及经典DDD架构每一层的职责后,本篇文章将介绍基础结构层中支持DDD的轻量级框架的主要代码。这里需要说明的是,DDD轻量级框架能够体现DDD的思想即可,没必要做得很重,你也可以根据理解,自己实现支持DDD的框架。1.实体、聚合根与值对象的顶层体现实体顶层定义:public interface IEntity { st
转载 2024-04-10 05:03:45
776阅读
单体架构的利与弊 一般的单体架构采用(MVC)三层模型:  CONTROLLER(控制层或表现层)    用于和用户交互接收用户请求  SERVICE(服务层)    用于处理业务逻辑 处理后的数据返回出去 最终通过表现层展现给用户  DAO(数据层)    用于操作数据单体架构的好处  单体架构一般只需一台服务器就可以部署全部的资源 这种架构性价比高 开发速度快 开发成本低单体架构的不
转载 2023-10-20 17:11:47
203阅读
引言在讨论DDD分层架构的模式之前,我们先一起回顾一下DDD和分层架构的相关知识。DDDDDD(Domain Driven Design,领域驱动设计)作为一种软件开发方法,它可以帮助我们设计高质量的软件模型。在正确实现的情况下,我们通过DDD完成的设计恰恰就是软件的工作方式。 UL(Ubiquitous Language,通用语言)是团队共享的语言,是DDD中最具威力的特性之一。不管你在团队中的
java模式之单例模式: 单例模式确保一个类只有一个实例,自行提供这个实例并向整个系统提供这个实例。 特点: 1,一个类只能有一个实例 2,自己创建这个实例 3,整个系统都要使用这个实例 例: 在图一的对象图中,有一个"单例对象",而"客户甲"、"客户乙" 和"客户丙"是单例对象的三个客户对象。可以看到,所有的客户对象共享一个单例对
* 单例模式 JAVA23种设计模式之一单例(Singleton)模式的定义:指一个类只有一个实例,且该类能自行创建这个实例的一种模式。  单例模式有以下特点:   1、单例类只能有一个实例。   2、单例类必须自己创建自己的唯一实例。   3、单例类必须给所有其他对象提供这一实例。   单例模式确保某个类只有一个实例,而且自行实例化并向整个系统提供这个实例。在计算机系统中,线程池、缓存、日志对
单体应用单体应用简单讲就是把一个系统所涉及的各个组件都打包成一个一体化结构并进行部署和运行。在Java EE领域,一体化结构很多时候体现为一个WAR包,而部署和运行的环境就是以Tomcat、weblogic为代表的各种应用服务器应用服务器上同时运行面向用户的web组件、封装业务逻辑的service组件、数据访问的DAO(data access object,数据访问对象)组件。这些组件作为一个整体
DDD至少30年以前,一些软件设计人员就已经意识到领域建模和设计的重要性,DDD这一名词,由埃里克·埃文斯(Eric Evans)在2003发表的《领域驱动设计》一书提出。这本书理论性极强,奠定了领域驱动设计这一综合性软件设计理论的基础。书籍本身也成为DDD的“圣经”。截止作者出搞该书发表已有20年。 笔者08年进入互联网行业,13年第一次听说DDD,到最终落地2020年经历了至少8年的时间。 回
零基础学习Java,先从JDK安装开始JDK下载:Java基础知识: 学习Java首先得配置JDK,不然Java搞不了,JDK的配置非常简单,如果找不到JDK下载地址的点击下方链接JDK下载:点击下载JDK 1.JDK下载完成后记住安装的位置,后面配置环境变量要用,如图我的位置在C:\Program Files\Java\jdk-14.0.1 2.右键点击此电脑,选择属性,选择高级系统设置,选择
  • 1
  • 2
  • 3
  • 4
  • 5