文章列表

共有 454 篇文章

使用DDD来构建你的REST API,而不是CRUD

REST围绕着资源这个概念而构建的,然后用URI来表示。然后一个HTTP动词和资源URI组合起来对指定资源进行HTTP调用来执行操作。大多数REST框架提供了指定资源名称的生成器,框架围绕着它来生成脚手架。不幸的是,许多这些生成器使用CRUD模型(Create,Read, Update, Delete)作为默认的起始点。资源被定义为一系列的属性,使用类似JSON...

再谈领域事件

我以前写过一篇关于领域事件的文章——实现领域事件http://blog.didispace.com/impl-ddd-event/,随着在项目中深入的使用DDD架构,我对领域事件有了新的认识。尤其是采用领域事件来解耦代码这种方式对项目的发展具有深远的影响。 我在实现领域事件http://blog.didispace.com/impl-ddd-event/中主要谈到了如何在技术层面去实现发布事件与订...

实现领域事件

当你的系统或者业务变得日益复杂时,DDD的模式是一种非常值得尝试的架构模式。DDD让你更加关注于你的业务领域,思考你的业务模型,帮组你理清繁杂的业务关系。我推荐所有还没有了解过或者接触过DDD的后端工程师都去学习一下该架构模式。本文主要关注DDD中的领域事件,以及一种可能的实践方式。 我们知道领域模型的变化会产生领域事件。例如,用户在完成注册后,系统会发出一封带有确认信息的邮件到用户的邮箱;用户关...

领域驱动设计

关于领域驱动设计 这篇文章参考了Eric Evans《领域驱动设计》一书以及Jimmy Nilsson《以C .NET为例运用领域驱动设计和模式》,二者详细描述了领域驱动设计的核心概念、技术和模式。在某些情况下,直接使用这些书的措辞是有意义的,并且我认为Eric Evans和Jimmy Nilsson也允许我们这么做。 尽管将方法本身呈现出来是很有用的,但是仅仅对方法进行描述,DDD的许多微妙之处...

@FeignClient中的@RequestMapping也被SpringMVC加载的问题解决

问题描述 在之前发布的《Spring Cloud实战小贴士:Feign的继承特性伪RPC模式》http://blog.didispace.com/spring-cloud-tips-feign-rpc/一文中,我们介绍了如果使用Feign的继承特性来完成服务的提供以及服务的消费,实现了类似RPC的编程模式。但是,仔细一些的读者可能已经发现一个问题:当我们将服务消费者运行起来的时候,定义在服务提供方...

简化Swagger使用的自制Starter:spring-boot-starter-swagger,欢迎使用和吐槽

该项目主要利用Spring Boot的自动化配置特性来实现快速的将swagger2引入spring boot应用来生成API文档,简化原生使用swagger2的整合代码。 GitHub:https://github.com/dyc87112/spring-boot-starter-swagger 码云:http://git.oschina.net/didispace/spring-boot-sta...

Gitflow工作流程

在工作场合实施Githttp://lib.csdn.net/base/git的时候,有很多种工作流程可供选择,此时反而会让你手足无措。本文罗列了企业团队最常用的一些githttp://lib.csdn.net/base/git工作流程,包括Centralized Workflow、Feature Branch Workflow、Gitflow Workflow、Forking...

微服务与API 网关(下)- Kong能为我们做什么?

!https://blog.didispace.com/content/images/posts/hzf-ms-apigateway-2-1.png > 本系列内容是来自Mashape.com的Marco在nginx.conf上的一次演讲。 > > 上一集我们介绍了为什么我们需要API网关:微服务与API 网关(上): 为什么需要API网关?http://blog.didispace.com/hz...

微服务与API网关(上): 为什么需要API网关?

!https://blog.didispace.com/content/images/posts/hzf-ms-apigateway-1-1.png > 本文是来自于Macro在一次大会上的一个分享。 > > 本系列共有两个部分,主要关注我们如何以及为什么要在我们的微服务应用中部署API 网关。第二部分主要关注我们如何把Mashape的开源网关组件Kong运用到我们自己的微服务架构当中。 目录...

领域驱动设计和Spring(翻译)

介绍 这篇文章是的介绍一下领域驱动设计的基础构件、概念和Java的web应用(主要是基于Spring框架)之间的关系和区别。这篇文章的第二部分讲了怎么把实体、聚合根、仓储映射到使用Spring框架的Java应用中。 领域驱动设计 Eric Evans的《领域驱动设计》无疑是软件设计领域最重要的几本书之一。这本书主要集中在软件开发中如何处理领域和软件的映射关系— 开始强调领域通用语言domain...

42 页, 共 46 页, 总计 454 篇文章