目录
1、举例(四):五子棋
【五子棋】 的分析步骤
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模型与代码是软件系统本体的两个观点(或面向),两者没有先后顺序关系,而是并存和兼具于同一个人的脑海里。这就像两只眼睛看到的景象并存于一个人的脑海里一般,如此才能看到更真实的世界,也能做出更完美的软件系统来。