作为对C#、.net、面向对象、设计模式、重构的初学者,希望利用一些自己定义的项目,强化开发技术的巩固。
之前做过俄罗斯方的小游戏(C#+WinForm),但代码坏味道很多,不太好。
这次选择“捉鬼”这个游戏,一是此游戏易于结合OO进行练习,较CMS、商城等更注重后台逻辑,对前端UI要求较少(本人的是美工的确也是不咋给力~);二来是上学期和班里同学玩的如火如荼的桌游,希望能在假期、毕业后也能再续游戏之缘。
此系列旨在开发类似“谁是卧底”的捉鬼游戏在线版,记录从分析游戏开始的开发全过程,通过此项目让自己熟悉面向对象的SOLID原则,提高对设计模式、重构的理解。目前,我只进行到“设计业务对象与对象职责划分”这一步,也就是说并不是我现在已经做完了再分享给大家,一来做完后估计整个开发过程的思考就不记得了,能分享的只能是成品代码,大家兴趣也会没那么浓厚,二来我还真不知道我能不能做完,也希望大家能及时发现/提出项目进行过程中的问题,使大家共同受益(笔者也受益> <)。感谢!
svn代码,地址:https://115.29.246.25/svn/CatGhost/
账号:guest 密码:guest(支持源代码下载,已设只读权限,待我基本做出初始版本后再放到git)
索引目录:
0. 索引(持续更新中)
1. 游戏流程介绍与技术选用
2. 设计业务对象与对象职责划分(1)(图解旧版本)
3. 设计业务对象与对象职责划分(2)(旧版本代码剖析)
4. 设计业务对象与对象职责划分(3)(新版本业务对象设计)
5. 业务对象核心代码编写与单元测试(游戏开始前:玩家入座与退出)
6. 业务对象核心代码编写与单元测试(游戏开始:抽题、分角色、开启鬼讨论模式)
7. 代码与测试(鬼讨论、鬼投票)
8. 代码与测试(玩家发言)
9. 代码与测试(玩家投票、同票PK)
10. UI
……