开发流程定义的目的:
a.提高开发效率,减少无效的工作时间,避免无用功
b.减少代码的修改次数,减少游戏的后期维护时间和维护工作量
c.使分工清晰,责任明确,提高对异常问题的处理与应变能力
2.程序初步开发过程:
A.编码执行人员进行深入的技术分析总结,对程序重点算法,难点算法,程序架构进行设计,并与技术负责人进行紧密的讨论与技术可行方案确定工作。
进行时间进度计划安排,并形成简单明确的计划进度文档,建立开发里程碑。
a.程序初始化工程的创建,包括工程创建,程序输出名字,游戏标识号码分配,游戏名字,数据库名字等的基础定制编码
b.严格按代码规范,继续游戏界面控件元素布局设计,新控件的编写与测试,提交演示版本,并组织美术设计相关人员,进行界面布局设计与定性,并对界面的表现方式和实现手法与美术沟通,给予美术设计一个设计标准。
此阶段完成了85%---90% 的CGameClientView 类的编写.
c. 逻辑类编写,CGameLogic 类的编写,并编写针对性的测试代码或者程序对逻辑类的每个函数进行严格的,科学的单元测试(对一些极端简单的,极端有自信的逻辑函数就免除测试的必要了,但若最后由于这些没有认为简单的,没有问题的逻辑函数出现问题的话,那就该对自己做个检讨了)
B. 网络流程编码:
此阶段完成的是服务器的CGameFrameSink类与客户端的CGameClientDlg 类的实现编码,实现此些类与其他类的搭配联系工作(若发现此界面对其他相关类的改动很大的话,就要对前期的工作内容进行下检讨了棋牌资讯,问下自己前期为什么没有考虑到,在下一次吸取此教训了,从犯的话就要打屁屁了)
a.服务器GS_FREE 场景的发送代码编写,客户端的GS_FREE场景的处理代码编写,控件按钮(特别是开始按钮)的显示控制
b.服务器的游戏开始 OnEventGameStart 函数的处理代码编写,初步的数据设计,客户端的OnSubGameStart 函数的处理代码编写,并在服务器的OnEventGameEnd 函数实现加入游戏结束的函数调用与变量重置函数的编写(目的是使测试过程中客户端强退不需要重新启动服务器,减少测试的无效工作时间)
c.按这服务器发送数据包,客户端接收数据包,服务器处理数据包,发送数据包这样的流程进行交换编码,并在完成了一个数据包的来回后进行测试,并在适当的时候进行全局变量调节,对此阶段发现其他相关类或者变量定义不适合的地方进行局部细节调整。
通过此阶段,服务器的类变量与客户端的类变量将逐步成型。
d.完成服务器的场景函数的其他游戏状态的发送编码,以及客户端的其他场景的处理编码。
3. 开发流程重点注意事项:
编写网络交换过程的时候,注意旁观用户与游戏用户对控件的显示与否的处理,在适当的地方使用IsLookonMode函数。
a.主要数据层与界面层的分离原则,注意SwitchViewChairID 函数的使用.
b.注意对旁观用户和游戏用户的数据层和处理都是统一的原则,不同的只是界面层的控件显示于否而已,扑克显示正面还是方面而已,不要用太复杂的方法和思路实现旁观和游戏者的区别,不划算。
c.编写界面元素布局,注意5或者10象素统一间隔原则棋牌游戏开发流程,注意采用动态坐标定位元素的原则。
d.注意采用四字注释方式,函数定义顺序与实现顺序一致的原则(尽量采用函数执行顺序排布),代码美观性的规范,变量命名规范,网络数据包的定义不要采用蓝色关键字的变量类型。
e.注意代码编译过程中的警告,不要视而不见,采用统一的数据类型,尽量使服务器与客户端表示一样意义的变量采用一致的命名.