如何让你的代码好维护
先说说我们不喜欢的代码长什么样子,
- 大函数,超过500行,甚至超过1000行;
- 大量的hard coding;
- if和else if中有明显的条件关联性;
- 注释和代码逻辑不符合,函数名与功能不符合;
- 命名英文拼音混杂,不少英文拼写错误;
- 。。。
说实话,这些问题很常见,无论是大厂,还是小团队。问题出现了,想出怎么解决才是关键。
每个团队都可以制定一套适合代码规范,不过光有代码规范是不够的。
比如说写代码文档,最重要的一点,不是什么格式规范,而是要说人话,解释清楚你做的事情,不要解释代码,否则文档本身就不具有可读性。
不要为了写注释而写,与其三心二意的写一堆注释,不如写几行足够清晰的程序。
接下来,我列几条我个人的经验:
- 不要重复发明轮子,将公共的方法和函数抽出来做成公共库。投入一定的时间寻找和比较开源的解决方案,而非什么事情都自己实现。
- 投入跟多的时间在接口的定义和审核上,一个差接口的危害性超过 500 行烂代码。
- 请部门里更有经验的工程师帮助新人修改代码,相互工程师之间,相互抽查代码,这件事的好处不言而喻。虽然投入更多的时间,但是从整体效率的角度来讲,提高代码的可维护性就节省了大量的修改,重构代码的时间,可谓磨刀不误砍柴工。
- 要求工程师对自己的代码写单元测试。这就使得程序员有机会从使用者的角度审视和检测自己的代码,这样不但能提高代码的易用性和正确性,而且在代码发生改变的时候,程序员可以确保不会破坏引用此段代码的其他模块或项目。
- 从个人角度看,提高代码维护性,最直接的方式就是从好的代码Github上的代码库中学习,多看多总结。
- 最后一点,也是我一直要求团队的一点,团队中的每个人都要有大局观意识,埋头苦干的前提是要了解全局,每位工程师都应该知道自己的东西在整个项目构架中的位置和他工作的意义。
- 其实做为一个开发者,有一个学习的氛围跟一个交流圈子特别重要这里我推荐一个Java交流群664389243,不管你是小白还是大牛欢迎入驻,大家一起交流成长。
如何让你的代码好维护相关推荐
- SAP QM初阶-执行事务代码QP02维护检验计划的时候不能为检验特性指派取样策略
SAP QM初阶-执行事务代码QP02维护检验计划的时候不能为检验特性指派取样策略 执行事务代码QP02去修改检验计划组54,因为其检验特性item里没有指派取样策略. 发现Sampling proc ...
- SAP QM 执行事务代码QS51维护使用决策的选择集,系统报错 – Transaction no longer valid for catalog ‘3’ -
SAP QM 执行事务代码QS51维护使用决策的选择集,系统报错 – Transaction no longer valid for catalog '3' - 执行事务代码QS51,试图为工厂NMD ...
- SAP MM初阶事务代码MEK1维护PB00价格
SAP MM初阶事务代码MEK1维护PB00价格 MM模块里的采购价格,比如条件类型PB00的价格,除了可以在ME11里维护以外,还可以在事务代码MEK1里维护. 执行事务代码MEK1,条件类型PB0 ...
- 为什么我们的代码难以维护(草稿)
2019独角兽企业重金招聘Python工程师标准>>> 有没有想过这个问题,为什么我们的代码难以维护,为什么我们偏向于开发全新的系统,却不愿意改造现有系统,甚至是我们自己开发的系统. ...
- 城市筛选数据(根据2020年度全国统计用区划代码和城乡划分代码更新维护的标准)
根据2020年度全国统计用区划代码和城乡划分代码更新维护的标准,整理的城市联动筛选数据: /* 根据2020年度全国统计用区划代码和城乡划分代码更新维护的标准 */ var cityList = [{ ...
- 代码的维护成本远远大于开发成本
一般来说,功能需求决定业务构架.非功能需求决定技术构架,变化案例决定构架的范围. 软件设计工作只有基于用户需求,立足于可行的技术才有可能成功. 算法优化及负载均衡是性能优化的方向. 代码的维护成本远远 ...
- Java代码的维护与更新,Java常用的规则引擎,让你变动的代码更加容易维护
Java常用的规则引擎,让你变动的代码更加容易维护 Java常用的规则引擎,让你变动的代码更加容易维护 在本文中,我们将介绍Java中一些最受欢迎的规则引擎. 规则引擎由推理引擎发展而来,是一种嵌入在 ...
- php代码不好维护,PHP干货|依赖注入——让你的代码更好维护
应小可爱们的强烈要求|终于把IT交流群给建起来了 (加群:370382869 聊技术) 1.什么是好代码 经常会听到"这个人是大牛,你不是","你写代码质量高,实习生写的 ...
- 软件开发人员维护代码指南
当你最初想要成为一个软件开发者的时候,你可能梦想着创造令人兴奋的新功能,玩弄一些新科技,并编写一些非常酷而有趣的代码. 但是你可能从未想过的是,要在一个拥有10年历史的并且由一个很多年前就离开公司的某 ...
最新文章
- 为什么应该安装使用 Arch Linux
- Opencv step by step - 加载视频
- vscode技巧、vscode教程、vscode使用技巧
- oracle 计划名称,甲骨文修改合作伙伴计划 分为四个级别
- 3-5 获取命令行参数
- Python ConfigParser的使用
- 【MATLAB统计分析与应用100例】案例018:matlab读取Excel数据,进行K均值聚类分析
- ssh-scan处理手记
- 清华毕业生应聘“保姆”,年薪40万:她凭什么拿高薪?
- 电视视频直播在线播放网站PHP源码V1.2
- SQL往表里添加字段
- 吉他入门:吉他音阶训练入门教程(二)
- ppt模板怎样用到html中,ppt怎样使用在线模板
- poi java 导入excel_Java的poi技术读取和导入Excel
- vue 模拟随机变速的动态打字特效【支持多行文本】(含css实现闪烁光标,js动态改变setInterval定时器的时间间隔)
- PS人物换装--白色换纯色
- SVG 图标格式文件去除文件默认颜色
- 好用的免费代理池搭建
- 从零开始实现微信小程序上线发布流程
- C++类和对象的使用之对象指针