梳理你的思路(从OOP到架构设计)_UML应用:业务内涵的分析抽象&表达03

目录

1、举例(四):五子棋

[【五子棋】 的分析步骤](#【五子棋】 的分析步骤)

[2、讨论: 模型与代码](#2、讨论: 模型与代码)


1、举例(四):五子棋

【五子棋】 的分析步骤

  • Step-1: 找到主角--- 棋手,很容易发现核心的概念了,例如:五子棋游戏的主角是棋手(玩家),棋手有两种------电脑和人;其中,电脑棋手又分为数个不同棋力等级,例如:
  • Step-2: 抽象出抽象类别(Superclass) ---BaseAI:
  • Step-3: 再增添一种棋手---HumanPlayer(人),而且再度进行抽象,得到:
  • Step-4: 再联想到人之外的物------棋盘(ChessBoard),它必须呈现于UI画面上,所以设计成为View的子类别,得到:
  • Step-5: 再从棋盘联想到相关的概念------棋(Chess);以及用来控制UI显示的GobangActivity类别。 如下图。
  • Step-6: 还可以继续联想下去,就更加完整了。

2、讨论: 模型与代码

  • 在传统观点里,大多先绘制UML模型图,然后才开始构思程序码的撰写,使得UML建模成为撰写程序码的前置工作,因此许多程序员将UML建模视为多余的负担。为了节省开发成本,就将省略掉UML建模的工作了。
  • 在新潮的观点里, UML模型与代码是软件系统本体的两个观点(或面向),两者没有先后顺序关系,而是并存和兼具于同一个人的脑海里。这就像两只眼睛看到的景象并存于一个人的脑海里一般,如此才能看到更真实的世界,也能做出更完美的软件系统来。
相关推荐
rolt29 分钟前
[重写]《软件方法》全流程引领AI第1章-1.3为什么要使用标准建模语言(202610更新)
软件工程·产品经理·架构师·uml·本体·fde
带金箍的至尊宝3 小时前
系统架构设计师笔记 08:UML 用例图、类图、时序图
笔记·系统架构·uml
rolt1 天前
向窃·格瓦拉学习本体建模基础知识-第7赛季第22轮
软件工程·uml·面向对象·数理逻辑
抓到一只狗3 天前
系统分析师——统一建模语言
软件工程·uml·类图·用例图·系统分析师·顺序图·高级软考
rolt8 天前
智能机床-06 机械 ISO 23704-4-2026-用UML表示的行业标准
软件工程·产品经理·架构师·uml
rolt10 天前
05 医学 ISO 13940-用UML表示的行业标准,健康信息学 — 支持照护连续性的概念体系
软件工程·架构师·uml
rolt11 天前
3GPP-5G-用UML表示的行业标准-04电信移动通信
软件工程·ddd·uml·ontology
Warren2Lynch13 天前
掌握 UML 用例建模:地图与路线的完美结合
uml
rolt13 天前
OGC CityGML-用UML表示的行业标准03地理
软件工程·uml·ontology·本体
自传.1 个月前
B 站更新|软考架构师案例篇・软件工程篇第 2-4 集上线|UML 用例图|类图|顺序图真题精讲
架构·系统架构·软考高级·uml·案例分析·用例图·软考系统架构师