如何写好一个函数
这不是一个设计良好的方法(或者说根本就没有设计的方法)。好的方法应该具备哪些特点呢?个人认为应该有以下几点:
短小
- 一般来说,函数体的代码行在30-50行是比较好的,这样函数的逻辑能在不滚动屏幕的情况下就能读完,理解起来比较容易。当然,如果逻辑比较简单,可以不受此限制
功能单一
- 简单来说,就是一个函数只做一件事,什么叫一件事?一个订单的提交,可能包含校验,写数据库,发邮件,刷缓存等很多操作,但是对用户来说是一件事,可以理解为在同一抽象层次上不可再分的一组指令。这里的关键是一个抽象层次。比如,上面的方法,他的抽象层次就是根据入参条件,查询出对应的结果集,如果在查询的时候,在加入其他的逻辑,比如:插入一段用户行为收集的代码,就破坏了规则
参数个数不能超过5个
- 按照鲍勃大叔的说法:最理想的参数数量是零,就是不带参数的函数,其次是一个,不到万不得已不要超过5个,主要原因是参数多了,出来排列组合的可能性就多了,在测试的时候,容易出现场景的遗漏
命名准确
- 符合功能意图,方法的命名经过深思熟虑,不是随便就起个名字了事,好得方法名,能准确描述其代码功能意图,见名之意
嵌套不超过三层
- 方法中的if/switch/for/while等最好不要超过三层,可读性会比较好,理解起来也比较容易
有人会讲这么多要求,如果全部做到,就不敢动手了,是的,当所有的条件都加上的时候会出现这种情况,所以我们第一想的是如何把功能实现,而不是被这些东西限制住,当代码实现了,那么我们可以进行优化代码,去满足我们的要求
标签:功能,函数,一个,代码,如何,参数,方法,抽象层次 来源: https://blog.csdn.net/Andrew_Chenwq/article/details/123074902
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。