一、前言

上一篇文章 领域驱动之领域模型,简单的学一学 DDD 了解了一些 DDD 理论,然而 DDD 难点和精髓却是在其实战的落地上,如今的社会不缺乏理论依据和理论指导,但是实实在在的落地似乎成了永远无法落地的承诺。

话不多说今天我们拿打车软件作为我们实战的载体,例如滴滴打车、美团打车、T3出行等等。

全文思路先从功能分析,到 DDD 的战略设,再到 DDD 的战术设计,最后 基于现实业务的 DDD 实战落地。

二、开始战斗

2.1 功能分析

滴滴打车、美团打车、T3出行这些打车软件都有三个大家熟知且经常使用的功能:

  • 预约用车(one by one)

  • 代人叫车

  • 拼车

其实作为一个平台,可能还会提供一些例如租车服务、找代价服务、规格较高的接待服务等,当然这些功能大家在美团和滴滴这种 2C 的软件中很少见到,但是对于用车领域或者将来三分天下归一大统,2C 和 2B 的业务集于一身,反过来看我们今天的实战,就会变得有意义。实际上租车、代价、接待这些功能只是没有在美团和滴滴中存活下来,实际应用中真是存在。 总结下来用车领域可提供的功能包括:

  • 日常的预约用车

  • 日常的拼车

  • 日常代人叫车

  • 租车服务

  • 代驾服务

  • 短期承包接待服务

第三篇:工具篇之DDD(二) 领域驱动实战相关推荐

  1. 什么是DDD(领域驱动设计)? 这是我见过最容易理解的一篇关于DDD 的文章了

    领域驱动设计之领域模型 加一个导航,关于如何设计聚合的详细思考,见这篇文章. 2004年Eric Evans 发表Domain-Driven Design –Tackling Complexity i ...

  2. 小强软件测试_小强老师零基础学习软件测试视频教程 理论篇+自动化篇+工具篇+实战等零基础课程...

    小强老师零基础学习软件测试视频教程 理论篇+自动化篇+工具篇+实战等零基础课程 1.jpg (53.32 KB, 下载次数: 0) 2017-10-5 09:33 上传 2.jpg (49.08 KB ...

  3. DDD(领域驱动设计)分层架构

    一.分层架构的模型 DDD全称为(Domain-Driven Design,简称DDD),领域驱动设计. 主要分为四层: 展现层:它负责向用户显示信息和解释用户命令,完成前端界面逻辑.这里的用户不一定 ...

  4. DDD(领域驱动设计)系列主题:领域驱动设计(DDD)实践

    过去几年,通天塔一直处于快速的业务能力建设和架构完善的阶段,以应对不断增长的业务需求和容量.高可用等技术需求,现在通天塔平台已经能满足集团主站的大部分活动.频道搭建和运营能力,主流程的新需求越来越少, ...

  5. 【DDD】领域驱动设计实践 —— UI层实现

    前面几篇blog主要介绍了DDD落地架构及业务建模战术,后续几篇blog会在此基础上,讲解具体的架构实现,通过完整代码demo的形式,更好地将DDD的落地方案呈现出来.本文是架构实现讲解的第一篇,主要 ...

  6. DDD 洋葱架构才是 yyds!阿里大牛手记(DDD)领域驱动设计应对之道

    虽然身为架构师,设计一个高质量的架构依然是复杂与困难的. 简单来说,动用大量的资源只为了一套优质的三高架构并不正确,而是该在了解当前业务现状的情况下,创造出灵活.可维护.健硕能成长的. 就拿近两年程序 ...

  7. DDD洋葱架构才是 yyds,阿里架构师手记(DDD)领域驱动设计应对之道

    虽然身为架构师,设计一个高质量的架构依然是复杂与困难的. 简单来说,动用大量的资源只为了一套优质的三高架构并不正确,而是该在了解当前业务现状的情况下,创造出灵活.可维护.健硕能成长的. 就拿近两年程序 ...

  8. Lind.DDD敏捷领域驱动框架~介绍

    最近觉得自己的框架过于复杂,在实现开发使用中有些不爽,自己的朋友们也经常和我说,框架太麻烦了,要引用的类库太多:之前架构之所以这样设计,完全出于对职责分离和代码附复用的考虑,主要参考了微软的DDD大作 ...

  9. 基于DDD(领域驱动设计)的微服务设计实例

    目录 一.战略设计: 1.产品愿景 2.场景分析 3.领域建模 1)提取领域对象 2)构建聚合 3)划分界限上下文 4.微服务拆分 二.战术设计 1.分析微服务领域对象 1)服务识别和设计 2)聚合内 ...

最新文章

  1. 沃通免费SSL证书申请指南
  2. 简单介绍ASP中Cache技术的应用
  3. CentOS安装Mysql8各种坑。。。
  4. Kubernetes-Label
  5. Kubernetes二进制集群部署+Web管理界面+kubectl 命令管理+YAML文件详解(集合)
  6. c语言 变色程序,【图片】(原创)用纯C变了个变色输出字符的程序。。。【c语言吧】_百度贴吧...
  7. android dropbox anr分析,Android如何分析排查ANR
  8. 12.1 LNMP架构介绍 12.2 MySQL安装 12.3/12.4 PHP安装 12.5 Nginx介绍
  9. 李飞飞:在物体识别之后,计算机视觉还要多久才能理解这个世界?
  10. jquery ajax传递data,基于jquery ajax中的data传递参数与后台工作的流程
  11. my batis plus 小数没有0_北师大版五年级第一单元小数除法知识点总结及易错题解析(1)...
  12. ICCV2013 录用论文(目标跟踪相关部分)
  13. 阶段1 语言基础+高级_1-3-Java语言高级_08-JDK8新特性_第3节 两种获取Stream流的方式_9_Stream流中的常用方法_concat...
  14. Selenium2用最简xpath查找元素
  15. 使用FlashCS6制作cocos2d-x动作脚本的思路整理
  16. php对照表,编码对照表的使用(1)-PHP教程,PHP应用
  17. [ 后缀数组 ] [ SDOI2008 ] BZOJ4698 Sandy的卡片
  18. 学法普法知识宣传教育答题小程序功能设计
  19. 美国研究生统计学专业申请及就业情况浅析
  20. 【愚公系列】2023年05月 攻防世界-Web(Web_php_include)

热门文章

  1. 10+31=100小组项目第三周总结报告
  2. Chromium内核的Edge浏览器
  3. 文本相似度php,分析php计算文本字符串相似度函数similar_text()的原理
  4. 如何在 Go 中编写 Switch 语句
  5. 【区块链108将】画你CEO漆斌:区块链能解决盗版侵权问题保持IP纯净
  6. 幽兰代码本——开源软件实践家
  7. 来了,SQL在线模拟器
  8. java中xml的组装与解析(十分钟学会)
  9. 有容乃大 -- Java 集合(List/Set/Map)
  10. CSS-background背景详解