工程师,设计师,架构师。当用程序片段完成基本功能后,要做复杂功能,要做可维护,能看懂的复杂功能。必须要良好的架构。这也是面向对象+设计模式的学习目标。程序解耦,插件化,功能容易添加,还容易去掉。数据容易修改、配置。架构良好,大型软件才可能做出来。一个简单应用,一套程序,做出两款游戏。
简易的飞机大战和超级玛丽,功能很简单。但架构上分成了两部分:通用功能和具体业务。图片、游戏元素(Sprite的数组),作为父类。图片的基本功能:绘制。游戏元素的三件事:初始化,数据刷新,碰撞检测。这都是底层公共部分。
具体业务逻辑。玩家飞机,敌机,玩家子弹;超级玛丽,敌方单位,滚动的地图。
后续功能:飞机使用道具,超级玛丽也使用道具。同学自己设计新功能、新关卡。
关卡1,关卡2,关卡3。一个关卡,用500行,三个关卡,1500行。如果这么写,没什么价值,很难再扩展功能。
提取公共部分,三个关卡,共用500行。这个是基本的一个方案。
下载地址:https://download.youkuaiyun.com/user/weixin_42644456/uploads
如果下载不了,我可以直接发。