第二周作业
第二周作业
注:由于完成作业时选择的题目并不在后来给出的备选题目范围内,故本次作业在后来进行了修改,原版作业附后,如不需要请无视
请结合实际项目,选UML中的几个图画一画
答:我们的团队项目是仿照手游“球球大作战”制作3D的PC版游戏。在这个游戏中,用户先进行注册与登陆,然后进入游戏界面,游戏中可以移动、旋转所操作的玩家,移动到食物或者比自己小玩家上进行吞噬已获得体积的增长,还可以分裂自己,吐出孢子。
其UML图中的用例图如下:
本系统主要分为三大模块:
- 界面模块UI:负责除游戏界面以外的人机交互界面;
- 游戏模块Game:负责游戏主体的界面与功能;
- 数据库模块DB:负责与数据库服务器的链接。
其UML图中的类图如下:
具体到我负责编码的吞噬部分,吞噬分为两种情况:
- 玩家碰到别的物体时,判断那个物体是否为食物,是食物则直接吃掉;
- 跟别的物体处于重叠状态时,如果那个物体是别的玩家,则要判断他们的半径与覆盖比例,决定是否能吃掉对方。
其UML图中的时序图如下:
原版作业如下:
现有的命名方式有多少种?请举例说明
答:现有的命名方式主要有以下三种:
-
匈牙利命名法:
匈牙利命名法因为发明者为匈牙利人而得名。其特点是,变量名称以表示变量类型的一个或多个小写字母开头,然后再接其它名称。例如:iAge //表示一个用于保存年龄的变量,其变量类型为int型
sName//表示一个用于保存姓名的变量,其变量类型为string型
匈牙利命名法的优点在于可以从变量名清楚地看出变量的类型,能够减少程序员因为变量类型而产生错误的情况。缺点在于现在的一些程序设计语言及其开发环境会更加清晰提示程序员变量的类型及变量类型错误的情况,使得使用匈牙利命名法显得没有必要,反而可能带来一些其它的麻烦,如更改变类型等情况导致变量名前缀跟实际变量类型不一致造成程序员的困惑。
微软曾推荐大量使用该命名方法。
-
驼峰命名法(小驼峰式命名法):
驼峰命名法因为按照其命名的名称形如驼峰而得名。其特点是,变量名由多个单词组成时,每个单词不用下划线等隔开,而是第一个单词全小写,以后各单词首字母大写,其余字母小写。例如:studentName
getStudentName
lowerCamelCase
在Java编程语言中,方法名,变量名等推荐使用驼峰命名法。
-
帕斯卡命名法(大驼峰式命名法):
帕斯卡命名法因为其源自于Pascal语言而的得名。其特点与驼峰命名法相似,只是其第一个单词的首字母也为大写。例如:StudentInfo
UpperCamelCase
在Java编程语言中,类名推荐使用驼峰命名法。
参考资料: