当前位置: 首页 > news >正文

[答疑]微信餐馆案例中,“启动二维码对应的程序”这个用例合理吗

DDD领域驱动设计批评文集>>

《软件方法》强化自测题集>>

《软件方法》各章合集>>

邬俊杰 2022-8-24 21:24

潘老师,我复习《微信餐馆》课程,遇到这样一个问题:

“启动二维码对应的程序”,按照书上说的指向系统就是一个系统用例,那是不是所有的微信小程序、h5页面都有这样一个用例?

如果是这样,那么图中这两个“启动二维码对应的程序”是两个系统用例,但是名字相同,这样是合理的吗

UMLChina潘加宇

系统暴露给微信的接口,应该就是“启动二维码对应程序”,参数是“二维码”,二维码的信息应该包括指定页面或小程序的路径和服务参数。

所以,图中这两个“启动二维码对应的程序”是同一个责任,只不过参数值,也就是具体二维码不同。

当时这样的考虑是序列图中有微信扫码,小程序等信息,这样这个建模示范视频更好卖。

但实际上这是不合适的,视频里也有讲:微信就是一个噱头。

微信、二维码只是一种实现方案,和鼠标点击某个菜单项没有本质区别,属于非核心域概念。

如果是严谨的做法,应该把“微信”从序列图中删掉,把扫码等责任也删掉,用例仍为食客→取号,食客→点菜。

然后,在设计工作流再考虑这个边界类实现的问题。

这个问题似乎我之前回答过。不过当时没归纳到答疑记录,把之前的回答也贴一下。

相关文章:

  • Defocus(散焦)
  • jvm中对象内存空间的分配与回收
  • Shiro 550、721
  • Mybatis开启日志
  • linux中查看MySQL数据库表数据及结构并导入sql脚本
  • Maven dependency 详解
  • Hadoop搭建HA遇到的坑
  • Docker目录映射
  • INnoDB(索引与算法)
  • docker常见面试题
  • 第09章 MyBatisPlus实现查询功能
  • 第06章 MyBatisPlus概述
  • C语言-结构体
  • GlusterFS基本概念
  • Java 键盘输入n个数进行排序输出
  • 【刷算法】从上往下打印二叉树
  • 2017-09-12 前端日报
  • angular学习第一篇-----环境搭建
  • go语言学习初探(一)
  • happypack两次报错的问题
  • HomeBrew常规使用教程
  • java2019面试题北京
  • Java-详解HashMap
  • js
  • Mocha测试初探
  • mysql innodb 索引使用指南
  • Python socket服务器端、客户端传送信息
  • Spring Cloud中负载均衡器概览
  • 闭包--闭包作用之保存(一)
  • ------- 计算机网络基础
  • 计算机在识别图像时“看到”了什么?
  • 使用 @font-face
  • 数据结构java版之冒泡排序及优化
  • 微信如何实现自动跳转到用其他浏览器打开指定页面下载APP
  • 小李飞刀:SQL题目刷起来!
  • 原生 js 实现移动端 Touch 滑动反弹
  • RDS-Mysql 物理备份恢复到本地数据库上
  • ​configparser --- 配置文件解析器​
  • ​马来语翻译中文去哪比较好?
  • (1/2)敏捷实践指南 Agile Practice Guide ([美] Project Management institute 著)
  • (aiohttp-asyncio-FFmpeg-Docker-SRS)实现异步摄像头转码服务器
  • (C语言)球球大作战
  • (八)光盘的挂载与解挂、挂载CentOS镜像、rpm安装软件详细学习笔记
  • (接口封装)
  • (篇九)MySQL常用内置函数
  • (四)鸿鹄云架构一服务注册中心
  • (未解决)macOS matplotlib 中文是方框
  • (原創) 如何讓IE7按第二次Ctrl + Tab時,回到原來的索引標籤? (Web) (IE) (OS) (Windows)...
  • (转)Android学习系列(31)--App自动化之使用Ant编译项目多渠道打包
  • .NET CF命令行调试器MDbg入门(一)
  • .net 重复调用webservice_Java RMI 远程调用详解,优劣势说明
  • .NET和.COM和.CN域名区别
  • @Data注解的作用
  • @EnableAsync和@Async开始异步任务支持
  • @html.ActionLink的几种参数格式