重构你的不良编程陋习

简介: 保持代码整洁和高效并不容易,作为一名开发者,可能会有那么几天,所从事的开发项目会让人感到沮丧。也可能会有几天只想复制和粘贴代码,写出曾经写过的最程序化、重复性最强的垃圾代码,然后下班回家。

保持代码整洁和高效并不容易,作为一名开发者,可能会有那么几天,所从事的开发项目会让人感到沮丧。也可能会有几天只想复制和粘贴代码,写出曾经写过的最程序化、重复性最强的垃圾代码,然后下班回家。

要改掉这些坏习惯绝非易事,一旦它们养成了,就必须制定一些策略来触发大脑中来进行重构。一旦发现了一条讨厌的捷径,或者消极的态度蔓延开来,那么也是时候挑战它了,重构一下你的编程逻辑,让头脑清醒一下。一个程序员的价值不仅在于他直接创造的价值,还包括为团队带来的文化价值!

不要停下来

一个巨大的项目丢在了你的腿上,开始遍历所有不同的组件来构建、交互和所需的基础设施。甚至不知道从哪里开始,先构建这个元素还是那个元素更有意义?

解决这个问题的方法很简单:没关系。

只要开始削减项目,它最终就会开始变得有意义。

总会开始看到它的边界,并会慢慢成型。也会开始明白事情应该和不应该怎么处理。也许甚至会开始编写一小段代码,但后来意识到它无法运行并废弃它。

“只要不停下来,走多慢都无所谓。” —— 孔子

克服这种状态最重要的是动力,只有你想不想的问题,只有不断去改变自己的不良习惯,才会取得更大的进步。任何舒适的感觉都会麻痹自己不进则退。

没有什么是完美的,必须选择一个地方开始并尝试它。可能会开始构建部分 API,只是为了了解需要优化的数据库。可能在项目开发中发现很多工作可以开发一个脚手架。这些都是有意义的,一个程序员的意义在于创造的价值大否。

认真评审PR

我们都去过那里,积压的代码评审正直直地盯着我们。处理“你自己的工作”同时还要评审“别人的”的编码行为?—— 那是你的工作。

如果没有建设性和有效的代码评审意见,将无法推动可能更好的代码。无论认为自己多么令人难以置信,总会有其他人会抓住的东西。即使是一个看似无伤大雅的小评论,也几乎总是对作者有利。

每一次代码评审,都努力投入大量的精力来改进代码库和整个开发团队。Reviewer 的代码变得更好了,作者的代码也就变得更好,是相互提高。

减少编写重复代码

对于这个标准,建议是当项目开发中出现复制代码的时候,就需要静下来思考是否可以有更好的方式?当然这需要一个强大的自制力来约束自己,因为复制代码和编写高质量可重复利用的代码,在开发中很容易就步入后者,某种意义上来说复制代码可以保持高效。

危机感

我是一个对安全感焦虑的人,特别是作为一个开发人员,如果在团队中过得安逸,会让自己很焦虑。危机感可以逼迫我们不段去学习,去总结。

避免脾气暴躁

经常开玩笑说开发跟产品又打架了,大部分情况是脾气暴躁,不要成为一个脾气暴躁的程序员。脾气暴躁的程序员自称见过一切,知道什么是最佳的方式,包括我自己,要努力避免,因为这对于团队来说没有任何意义,还会产生负面影响。

当这种情况发生时,这意味着不开心或者受别的事情干扰了情绪,可能是当前的角色、工作量或一个特别讨厌的项目需求,找到它的根源并调整好或者给自己放个假。


相关文章
|
人工智能 自然语言处理 安全
如何提升代码质量,重构并非“万能药”
随着编程技术的不断进步,编程语言变得越来越高级,功能封装也越来越完善。各种技术都在帮助程序员提高编写代码的效率。通过层层封装,程序员似乎不需要了解技术细节,只需逐行翻译需求内容即可。 许多程序员不了解如何组织代码、提升运行效率以及底层基于的原理是什么,但是他们编写的代码通过了编译、测试,并且在上线运行了一个月而没有出现问题,似乎并没有对他们的实际工作产生明显的负面影响。
|
Web App开发 编解码 监控
防御性设计和开发
“防御性编程(Defensive programming)是防御式设计的一种具体体现,它是为了保证,对程序的不可预见的使用,不会造成程序功能上的损坏。它可以被看作是为了减少或消除墨菲定律效力的想法。”
846 0
防御性设计和开发
|
IDE Java 程序员
如何快速地改善代码质量
如何快速地改善代码质量
|
设计模式
重构·改善既有代码的设计.03之重构手法(上)
之前的重构系列中,介绍了书中提到的重构基础,以及识别代码的坏味道。今天继续第三更,讲述那些重构手法(上)。看看哪些手法对你的项目能有所帮助......
19252 1
重构·改善既有代码的设计.03之重构手法(上)
|
设计模式
重构·改善既有代码的设计.04之重构手法(下)完结
重构改善既有代码的设计完结篇,汇总了全部的重构手法。看看哪些手法对你的项目能有所帮助…
7406 2
重构·改善既有代码的设计.04之重构手法(下)完结
|
设计模式 测试技术
重构·改善既有代码的设计.02之代码的“坏味道”
之前在《重构·改善既有代码的设计.01》中初步了解了重构的基本前提,基础原则等入门知识。今天我们继续第二更......
205 1
重构·改善既有代码的设计.02之代码的“坏味道”
|
测试技术 程序员
代码重构的力量:如何衡量重构成功
许多工程团队都在努力衡量他们重构工作的有效性。让我们看一下可以帮助您衡量重构成功的 5 个指标。 代码重构为开发人员提供了急需的精神休息,我认为许多开发人员都可以与此相关。整天编写代码要求很高,尤其是在您每天创建新功能的情况下。这是一项繁重的工作,开发人员通常需要一些空间来思考代码库的整体组织并回顾可以改进的地方
170 0
|
自然语言处理 算法 JavaScript
重构的秘诀:消除重复,清晰意图
  11年前有幸阅读了《重构——改善既有代码的设计》第一版,当时是一口气读完的,书中的内容直接惊艳到我了。   今年读了该书的第二版,再次震撼到我了,并且这次的示例代码用的JavaScript,让我更有亲切感。   全书共有12章,前面5章是在讲解重构的原则、测试、代码的坏味道等内容,后面7章是各种经验和实践,全书的精髓所在。