程序员的代码行数越少越好?
点击关注公众号,Java干货及时送达
点击上方 Java技术迷,选择 设为星标
出品 | CSDN(ID:CSDNnews)
代码应具备一致性
代码应具备自我描述性
代码应具备良好的文档
代码应使用稳定的现代功能
代码不应过于复杂
代码的性能不能有问题(不要故意编写速度过慢的代码)
如果减少代码行数会影响到上面任何一条,那么就有问题。实际上,基本上减少代码行数都会影响到上面的标准,因此总会出问题。不过,如果你能够设法满足上述条件,那么代码行数就是完美的,根本用不着统计数量。
“C比X更好,因为C的性能更好。” “Python比X更好,因为Python更简洁。” “Haskell比X更好,因为Haskell是外星语言。”
在线资源的数量(比如StackOverflow上的问题数量)
开发速度
出错的概率
软件包生态系统的质量和广度
性能特征
招聘人才的难度(对不起,COBOL)
还有一些无法控制的紧密联系。如果你从事数据科学工作,那么就需要使用Python、R或Scala(也许是Java)。如果是一个业余项目,那么就随心所欲选择自己喜欢的。只有一条规则我觉得没有商量的余地:如果遇到的大多数问题都无法通过StackOverflow直接解决,那么我会拒绝使用这种语言。不是说我没有解决问题的能力,而是我觉得不值得花那么多时间。
“实际上,读代码和写代码所花费的时间之比远超过10:1。在编写新代码的时候,我们一直在阅读旧代码。……[因此,]我们的代码应该易于阅读,易于编写。”
可以随时练习,只需找到自己想贡献的开源项目即可。
在一定范围内练习阅读别人的代码(功能性的PR或改bug的PR)。
注意所需的细节,努力读懂每一行。
还有一种对阅读别人的代码有帮助行的技巧,这种技巧更加独特。我想到的这种技巧可以大幅减少阅读陌生代码库所需的时间。在看到我想阅读的风格的代码后,我首先我会打开vi,然后开始用项目中使用的风格编写代码。这样会减少对代码的陌生感。
研发与工作有关以及无关的主题
与同事讨论工作
帮助其他努力工作的同事
计划未来的工作
代码审核
开会
除此之外,我强烈建议你在白天的工作时间里定时休息并锻炼身体(即使只是短暂的锻炼)。事实证明,运动对缓解精神疲劳有很大的帮助。我发现,我在无法集中精力的时候,锻炼特别有帮助。
原文:https://stackoverflow.blog/2019/08/07/what-every-developer-should-learn-early-on/