重构心法——分解大函数
不论什么系统,采用什么架构,都应该从“分解大函数”开始,这样做准没错!
分解大函数前的准备
梳理大函数逻辑:认真阅读大函数的源码,添加必要的注释,调整不合理的代码顺序,将代码分段,将前后有明显关系的代码放在一起。
分解大函数实质
其实就是“抽取方法”,将被我们分段、加注释的代码从原函数里边抽取出来,放在一个新的独立的函数中。抽取方法就像“核裂变”,开始由一个大函数裂变为几个函数,这些函数又分别裂变为新的函数,当这些裂变出来的方法越来越多时,后期可以考虑是否要抽取新的功能类。
抽取方法尺度
在抽取方法时,不论你是抽了几行还是上百行,这些代码一定是功能内聚的,说白了就是要执行一个清晰的功能。
抽取秘诀
1.为新方法起一个易懂的名字
2.参数和返回值如有必要最好封装为对象
3.代码重复的地方是抽取函数的重要标志
4.if、for、try等语句块均要留意方法的抽取
备注
别忘了单元测试!!!
郑重声明:本博客仅用于个人整理和总结学习笔记,如有任何疑问欢迎留言!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· [AI/GPT/综述] AI Agent的设计模式综述