代码整洁之道 笔记(一)

第一章:命名

自己的不足之处主要是 :专有名词了解少,在函数方法里的参数命名比较随意。

 

第二章函数:

1,要求:一个函数只做一件事。单一权责。

2,不同抽象层的不应该在一个层级(我的理解是,抽象概念—具体步骤—实现细节,这样的分层。)

3,switch语句。本身就做多件事,建议放在较低抽象层。可以使用多态实现。这一条建议不绝对要这样做。

4,对于函数名要使用描述性的名称。

5,函数参数应当小于2,不得已3,越少越好。因为参数和函数是不同层级,因此应该尽量少。

6,当对传入参数做转换,应当从返回值看出,避免使用void。

7,不推荐使用标识参数(true,false) 会使函数更加复杂化。应该直接将函数一分为二。

8,二元函数让人难以理解,有时容易搞错,比如比较两个参数时。理论上可以将一个其中一个参数作为成员变量就可以简化为一元函数。

9,三元函数。避免!!!

10,参数多于二其实可以使用类来表示。

11,可变参数也应当符合以上规则。

12,assertEqual改成assertExpectedEqualsActual(expected,actual),会更好。

13,函数如果修改某种状态,最好修改对象的状态。比如:void appendFooter(stringbuffer report) 比不上report.appendfooter()。

14,setIfexist(string attr,string value),不如分成两个:exist(string attr) 和 set(string attr,value) 表达意义更加清楚。

15,用异常来代替错误码,使用try catch可以避免很多不必要的嵌套结构。

16,try-catch 丑陋不堪,会影响主体清晰。应该将有try-catch抽离成新的函数

17** 错误处理就是一件事,try-处理应当在函数的第一个单词。

18,消除重复代;

19,以上,不是说要一次做到,可以写好代码后不断重构优化。

内容概要:本文系统介绍了算术优化算法(AOA)的基本原理、核心思想及Python实现方法,并通过图像分割的实际案例展示了其应用价值。AOA是种基于种群的元启发式算法,其核心思想来源于四则运算,利用乘除运算进行全局勘探,加减运算进行局部开发,通过数学优化器加速函数(MOA)和数学优化概率(MOP)动态控制搜索过程,在全局探索与局部开发之间实现平衡。文章详细解析了算法的初始化、勘探与开发阶段的更新策略,并提供了完整的Python代码实现,结合Rastrigin函数进行测试验证。进步地,以Flask框架搭建前后端分离系统,将AOA应用于图像分割任务,展示了其在实际工程中的可行性与高效性。最后,通过收敛速度、寻优精度等指标评估算法性能,并提出自适应参数调整、模型优化和并行计算等改进策略。; 适合人群:具备定Python编程基础和优化算法基础知识的高校学生、科研人员及工程技术人员,尤其适合从事人工智能、图像处理、智能优化等领域的从业者;; 使用场景及目标:①理解元启发式算法的设计思想与实现机制;②掌握AOA在函数优化、图像分割等实际问题中的建模与求解方法;③学习如何将优化算法集成到Web系统中实现工程化应用;④为算法性能评估与改进提供实践参考; 阅读建议:建议读者结合代码逐行调试,深入理解算法流程中MOA与MOP的作用机制,尝试在不同测试函数上运行算法以观察性能差异,并可进步扩展图像分割模块,引入更复杂的预处理或后处理技术以提升分割效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值