上午将实现的代码给老大和导师看了一下,老大给出了很多有建设性的意见,特总结如下
目的:用Lua脚本语言的方式,采用Cocos引擎实现一个游戏滑动选择项目的效果
问题1:老大提到看我的代码,发现和好多个if else,在hello.lua文件中代码长度达到几百行,过于的冗余,代码的实现方式非常有问题!采用了很多部分的过程化编码方式,老大提到为什么采用面向对象? 实际就是将功能的划分清晰开,别的开发人员根本不需要知道我的具体实现,只需要给提供的一个接口就OK。这样实现了代码的高度可复用性,同时在代码的主界面上我们看到的代码也是非常的清晰,单独1,2行调用了一个具体的功能模块,一个功能的实现要是出现了问题,我们就可以很快的从相应的功能模块中进行寻找。要不然实现的过程化东西根本就不能被其他的人员使用。垃圾代码~ oh no.. -。- , 这样能做的事情也就仅仅是填充一个小功能能力罢了,初级程序员!能够抽象出小功能模块的设计能力才是高级程序员做的事情!
这样就需要明白怎样将我们这些小功能模块抽象化出来了。
采用的方式从顶层看到底下的方式,要实现一个大功能,不断的思考,是否这个大功能可以继续的划分更小,直到小功能不能继续划分下去,这样的小功能就是要实现的最基本的组件部分。
问题2:在Lua的实现方式中,尽量避免采用global方式来定义数据,一般都是local方式的数据,这样就可以保证内部的数据不能被外界访问到,要是我们需要这个内部的数据的时候,可以使用返回函数的方式将这个数据返回。
现在的问题是需要理解Lua中的global和local数据的意思,require方式的理解等。