【文件属性】:
文件名称:bowling:保龄球游戏建模为状态机
文件大小:15KB
文件格式:ZIP
更新时间:2021-07-06 04:54:41
Java
保龄球
保龄球游戏设计为状态机。
我重构了 XP Bowling 一集中 Bob 大叔的代码。 我在 Unlce Bob 的代码中看到的一个问题是,一个对象既要聚合帧分数,又要对每一帧进行评分。
我尝试了很多设计,但我发现使用状态模式的设计是唯一令人满意的设计。
通过这种设计,Bowling 只是聚合了帧得分,而对帧进行评分的逻辑分布在 Frame 及其状态(此处为 Ball 对象)之间。
这个设计也是基于我从以下方面学到的关于 OO 的知识:
Kent Beck 的实现模式
Kent Beck 的测试驱动开发
杰夫·贝在思想作品选集中的对象健美操
得墨忒耳定律
依赖注入
戴夫·托马斯和安迪·亨特的“告诉,不要问”原则
Fred George 在 2013 年班加罗尔敏捷印度大会上的演讲
如何从终端运行测试:
cd 到保龄球目录——包含此自述文件的应用程序的*目录。
输入以
【文件预览】:
bowling-master
----.gitignore(7B)
----src()
--------.DS_Store(8KB)
--------tests()
--------main()
----bin()
--------.DS_Store(6KB)
----.DS_Store(10KB)
----README.md(1KB)