Time will tell.

10条优秀程序员都会坚持的注意事项!

1、可读性

可读性看起来似乎很主观。不同语言、代码、和团队对于可读性的定义不尽相同。但如果深入本质的话,就会发现代码可读性有一些非常关键的因素。

许多程序员太倾向于计算机了,只要程序能运行就一了百了。尽管是老生常谈,但这种方式完全断绝了人参与的可能性。

许多人会认为这些太基础、无关紧要。但我可以向你保证,我遇到的所有糟糕代码都是因为这些问题。而任何一段优秀的代码都采纳了至少部分实践经验。

2、嵌套代码

逻辑几乎是一切代码的基础。我们写代码是为了做决策、迭代和计算。一般情况下都会导致分支或嵌套,从而造成嵌套得很深的代码块。

虽然计算机很容易阅读这种代码,但对于人类则是非常大的精神负担。因此,代码会变得复杂、难以阅读。应该通过防御语句、提前返回或使用函数式编程等方式消灭嵌套代码。

3、死代码

所有注释掉的代码块、未使用的变量和无法到达的的代码都是死代码。它们就像在对读者说,“我与这段代码无关”。

日复一日,于是恶性循环开始了,死代码最终会埋葬你的代码。这正是经典的破窗效应。必须要找出并干掉死代码。虽然不需要把精力主要放在这里,但一定要时时留意。

4、使用对象

尽管现在是面向对象编程的时代,我们依然使用了过多的原始指令。

长长的参数列表,杂乱的数据,自定义的数组或字典结构等。这些都可以重构成对象。这样不仅能让数据结构变得正规,还能容纳所有重复的、使用原始数据的重复的逻辑。

5、大型代码块

虽然没有具体的数字,但代码块的长度应该是有限制的。如果你认为你的代码块过大,就应该对其进行识别、重组并重构。

这个简单的过程可以让你确定代码块的上下文和抽象级别,以便正确地找出代码的任务,并将代码重构到更加易于阅读、更简单的代码块中。

6、命名规则

好的命名很困难。有个小技巧在编程的许多方面都能用得上,包括命名,那就是“延后”。不要纠结某个东西的命名,继续写代码就好。

就算是用一整句话命名一个变量都没问题,继续写代码就好。当你完成整个功能之后,更好的名字就会浮出水面。

7、删除注释

过多的注册会影响阅读感观,而删除一些过多的注释我才能把精力放到可读性上。

当然,如果是特别有必要的这种情况下,肯定需要注释来说明。但大多数情况下,应该尽量重写代码使得它不需要注释也能看懂。

8、合理的返回

我们总是选择返回最奇怪的值,特别是对于边界条件的情况,像-1、687或null,然后得写很多代码来处理这些值。实际上,null 的创造者称它为 “10亿美元的错误” 。

应该努力返回有意义的值。理想情况下,最好是即使在反面情况下也能让调用者继续执行的值。如果真的是异常情况,那么最好用其他方式来通信,而不是使用 null。

9、三的原则

想一想数学上的序列。给一个数字2问你 “下一个数字是什么?” ,可能是3可能是4,但也可能是1或2.1。实际上你没办法知道。

然后我提供了序列中的下一个数字2, 4然后问,“下一个是什么?”可能是6,8,也可能是16。

同样,尽管猜对的可能性增加了,但还是不能确定。然后我又提供了数列中的第三个数字:2, 4, 16,然后问 “下一个是什么?” 。有了3个数字之后,程序员的大脑很容易看出这是个平方序列,于是确定下一个数字是256。这就是三的原则。

虽然这个例子跟编程没关系,但它告诉我们,我们不应该太早做抽象。三的原则能阻止我们过早消除重复的努力,直到有了足够多的信息后再做出决定。毕竟 “重复的代价远远低于错误的抽象。”

10、对称性

最后一条实践经验能给所有代码的可读性带来诗一般的润色,那就是对称性。这条来自Kent Beck的《实现模式》一书,书中说到:代码中的对称性是说,同样的思想在任何地方都使用同样的实现。

不过说起来容易做起来难。对称性体现了编程的创造性。它是许多其他实践的基础:命名、结构、对象、模式等。不同语言之间、不同代码之间和不同团队之间对于对称性的定义都可能不一样。

因此,你需要花上许多年去追求对称性。但是,一旦开始在代码中使用对称性,就会迅速呈现纯粹的形式,代码的形状也会迅速变好。

10条优秀程序员都会坚持的注意事项!
好了,以上就分享到这里,如果你对更多内容、及Python实例练习题、面试题、自动化软件测试感兴趣的话可以加入我们175317069一起学习喔。群里会有各项学习资源发放,更有行业深潜多年的技术人分析讲解。期待你的加入!

最后祝愿你能成为一名优秀的工程师!

欢迎【评论】、【点赞】、【关注】~

Time will tell.(时间会证明一切)

相关文章:

  • 2022-02-22
  • 2022-01-18
  • 2021-07-09
  • 2022-01-13
  • 2021-12-19
  • 2021-12-18
  • 2021-12-19
猜你喜欢
  • 2021-08-19
  • 2022-12-23
  • 2021-09-03
  • 2021-06-20
  • 2021-04-26
  • 2021-06-03
相关资源
相似解决方案