代码整洁之道培训总结

作者:翁松秀


代码整洁之道培训总结

1. 本次培训的总结

1.1培训目的

人类行为都是以目的为导向,培训也是。
这次培训目的很明确,就是让我们的代码更加简洁。为了实现这个目的,我们需要搞明白三个问题:

  • 什么是整洁的代码?
  • 为什么要让代码简洁?
  • 怎么让代码简洁?

这次培训围绕这三个问题,从思想、函数、重构、设计和工具五个方面讲解代码的简洁之道,最后只为了实现一个目的,也就是本次培训的意义:让我们的代码更加简洁。

培训是双向的,老师们会围绕着培训的目的,从各个维度给我们传授代码简洁的知识和技能,我们也应该看准这个目的,吸收消化,不然老师传授的内容太多,容易导致消化不良。

1.2代码简洁——思想总结

在软件开发当中,我们有时候会很看重软件的技术体系和架构设计,往往会忽略软件的代码质量,而糟糕的代码质量会使我们的软件变得臃肿、隐藏BUG和难以维护。所以在开发当中技术体系、架构设计和代码质量同等重要,三足鼎立。

代码质量的衡量标准除了实现功能以外,还有一个很重要的标准,就是代码是否简洁。因为我们的代码不仅仅要让机器能看懂,在后期的维护当中更多的是要让人能看懂,所以代码是否简洁,也是代码质量的衡量标准之一。简洁的代码能在很大程度上降低开发和维护的成本。

什么是简洁的代码?

代码的性能主要是对机器来说的,简洁主要是对人来说的,通俗一点理解,所谓简洁的代码,简单直接,从不隐藏设计者的意图,并且让人读起来轻松自如,赏心悦目。从整体上看,代码逻辑应该直截了当,功能让人一目了然,一眼就能看出这个程序,这个模块要实现什么功能,怎么实现。比如目录和实现的分离,让阅读的人一眼就能看出代码的模块划分。从细节上看,代码中应该不存在BUG和坏味道等杂质,包括:命名不规范、重复代码、过长的方法、过大的类、过长的参数列、散弹式修改、依恋情结、Switch语句、临时变量、过度设计、不用的方法、资源不关闭和不符合SOFA原则等。

1.3代码简洁——函数总结

为什么需要函数?

function:功能,函数。函数是实现某个功能的封装代码。我们需要函数来封装我们的功能,但如果所有的代码都写在一个函数里面,就会使这个函数变得庞杂、子功能模块划分不清晰、不便于我们阅读和维护。
所以在我们的代码中,应该适当使用函数,将我们业务逻辑按功能模块划分,变成简单的子功能模块、实现目录与实现的分离,使模糊的业务逻辑变得清晰、使重复的功能得以复用。

如何衡量一个函数的复杂度?

除了一些基本的衡量标准,比如代码行数、参数个数、变量个数、嵌套层数等,我们主要采用国际标准的**圈复杂度来衡量一个函数的复杂度。**通过这次培训,我们知道了什么是圈复杂度,如何计算一个函数的复杂度,以及函数的十个一原则和SOFA原则,让我们学会了如何写函数,如何做到目录与实现的分离,实现函数抽象层次一致,如何降低一个函数的圈复杂度。

1.4代码简洁——重构总结

通过前面的培训,我们弄清楚了什么是简洁的代码,以及为什么要实现代码简洁,现在我们需要弄清楚,怎么让我们的代码变得简洁。

重构。

重构是指不改变软件的行为,对软件内部结构的重新调整,提高其可理解性,降低维护成本。 通过重构,我们可以降低程序和函数的复杂度,使我们的代码变得更加简洁。

我们在培训中学习了11种重构方法:封装重复代码、拆分过长函数、拆分过大类、对象传参、拆分发散式类、归并散弹式类、断开依恋情结、抽取数据泥团、多态替代多分支、公布委托对象、封装数据类。

重构贯穿我们编码的整个阶段,在需求分析,系统设计,编码实现,单元测试之后对我们的代码进行重构,然后进行单元测试,再进行重构,直到我们对代码质量满意为止,最后才发布我们的代码。

1.5代码简洁——设计总结

设计模式是人们从问题中提炼出来的一种通用的解决方案,是经过长时间的试验和错误总结出来的,特定的设计模式适用于解决某一类问题。
在软件开发的设计阶段,需要我们结合具体的业务逻辑,来选择合适的设计模式,除此之外,在编码实现的重构阶段,我们仍然可以采用设计模式来对我们的功能模块进行重构。从而提高系统的可用性、健壮性、可扩展性,降低开发和维护成本。

通过培训,我们了解了设计模式的基本概念,设计模式原则与分类,以及一些常用的设计模式的概念和使用方法。
师傅领进门,修行看个人。短短一节课老师不可能把设计模式所有的内容都灌输给我们,比如老师只能给我们简单介绍设计模式6大原则和23种设计模式,只能给我们一个敲门砖,我们只有通过后面不断地学习才能理解和掌握这6大原则和23个模式,结合具体的业务应用于我们的实际开发当中,打开设计模式的大门。

1.6代码简洁——工具总结

工欲善其事,必先利其器。 对于我们开发人员来说,IDE是生产工具,熟练掌握工具可以大幅度提高我们的开发效率。

如何高效地进行重构?

手工重构很容易引起代码错误,老师在培训过程中给我们介绍了几种IDE中常用的一些重构的操作命令和快捷键,比如重命名,移动类、方法和成员变量,修改方法签名,提取方法,提取接口和上推下移等一些常用的重构命令,在实际开发中熟练掌握这些命令,能大大降低我们重构的时间成本和引起代码错误的概率。

另外,老师还给我们介绍了代码质量分析工具Sonar,用于分析代码,检测代码的坏味道,计算复杂度,单元测试等。熟悉Sonar能有效地管理我们的代码,保证代码质量,降低维护成本。

1.7培训总结

老师们通过这次培训,围绕着让我们代码更加简洁的目的,从思想、函数、重构、设计和工具五个方面,让我们明白了什么是简洁的代码,为什么要让代码简洁以及怎么让我们的代码变得更加简洁。

通过培训,公司制定了程序设计师的十三大原则,明确规范我们的编码习惯,提高代码的质量,降低项目交接和维护的成本。

另外我们应该从思想上摆正编码态度,理解函数的作用,掌握重构的方法,善于使用设计模式,最后结合我们的工具来实现我们的代码规范,让我们的代码更加简洁。

2. 对团队或者组织有哪些建议?

2.1 理论和实践相结合,做到知行合一

通过培训,从思想、函数、重构、设计和工具五个维度让我们了解了什么是简洁的代码,为什么要让代码简洁以及怎么让代码简洁,从思想上给我们带来了观念的改变,包括编码的态度和习惯,让我们掌握了重构代码的方法。

公司应该贯彻程序设计师的十三大原则,设置相应的考核制度,硬性要求开发人员遵守编码规范,提高软件开发的代码质量,降低项目交接和维护的成本。让大家将培训中学到的知识应用于实际开发当中,理论和实践相结合,做到知行合一。使每一个研发人员做到有底线,有规范。这也是培训的最终目的,让我们的代码更加简洁。

2.2 多组织培训

如果条件允许,公司可以多组织类似的专题培训,比如说项目管理,提高大家的知识水平和能力,为公司创造更大的价值。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

翁松秀

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值