错误总结2

往往分配完任务,直接就写代码的程序员,就是加班最多的程序员。这话一点不假。

得到一个任务的时候:

1, 我们应该先思考,有一个庖丁解羊的过程。去分析问题的解决步骤,难点,注意事项。

2,画出大概的流程图,然后考虑那块的代码需要重用,那块的代码需要封装。

3,重用:模块内的重用应该封装成函数。模块外(其他模块可能用)的应该封装成类。

4,封装原则,检查单一原则,即一个函数或一个类,只处理一件事。


一些容易出错的细节(想写出完美一遍测试全过的程序,效率与细节):

1,布局好的ui(每次使用后不会清除),例:布局好的ui,多个逻辑对一个node进行隐藏与显示,或对一个按钮添加或删除事件。每次都要重新设置为初始状态。

写法应该:

--第一种
btn:setClick("click1") 
if 条件==true then
     btn:setClick("")
end

--第二种
if 条件==true then
    btn:setClick("click1")
else
    btn:setClick("")
end
有时候对一个控件的操作,不止两种条件,这个要特别注意,比较容易出问题,初始值的设定也要考虑

2,对于程序添加进去的布局,如果没有优化,每次都是删除重新创建。就不需要考虑上面这些。

注意:1,滚动层里的东西,没优化,别忘了。每次都要removeAllChild,这样就不需要像 1 那样每次重置状态

       2, 每次创建都需要设置滚动层scroll的,宽度与高度。

3, 重复使用的滚动层 scroll (游戏中有优化,第一次加载ui之后就不删除了,一直放到内存中),这样使用滚动层,如果设置每次打开ui选择第一个,就要 scrollToTop(),设置滚动位置为0,0。

3, 程序的函数顺序导致的问题。比如:

function ()
	A();
	B();//设置 A所需要的参数
end
function A()
	getBParam()// 获取B设置的参数
	//使用得到的参数
end

错误现象:第一获取到得值是 null ,第二次获取的值,是第一次设置的。解决把 B 函数 移动到 A函数之前。

4,如果在lua中用了本文件内全局的table 存储界面。一定要再每次进入或关闭该系统的时候。

tableView = {} --重置 否则数据更改导致界面变化 很容易崩溃   初始化与重置 是非常重要的问题


错误总结3

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值