资深开发人员告诉你,怎样编写出优秀的代码?
如果你去询问一个资深开发人员,如何编写优秀的代码?他的回答可能是,数年或数十年后人们仍想继续使用的软件。
然而,开发人员想编写出来人们渴望的那种长寿软件并不容易。
无聊并不是一件坏事情
类似,编写数据库这样企业级技术代码时,无聊是一件好事情。因为,企业首要要考虑的是维持业务、保持稳定程序运行等。因此,选择具有易于理解的功能和方案非常重要。
(图片来自于网络,侵权必删)
但是“无聊”的软件还有另一个方面,即采用最基本的方法来解决特定的业务问题。正如一些优秀的开发人员的做法,他们用“非常愚蠢”的代码“始终如一地创造具有巨大价值的产品”,而没有用“疯狂的数学”或五花八门的人工智能。他们的秘诀是“提出很多问题”,以便“了解业务需要哪些信息,而不是实际处理的数据”。
通过提出问题以准确了解软件需要使用和分发哪些信息以满足业务需求,使得软件保持简单。
这是一个非常有价值但经常被忽视的原则:信息从 A 到 B 的路径越简单,系统就越稳定。因为开发者提出了正确的问题,所以该软件直接瞄准了靶心,解决了实际的业务问题。它是软件长期可支持性的关键。
通过保持代码尽可能干净或简洁,开发人员可以更轻松地在数月、数年或数十年后进行改进。
用文档清晰地记录
开发人员倡导者 Mason Egger 曾经强调开发文档的作用。开发人员应该清楚地阐明文档将帮助读者实现的目标,没有必要通过冗长的文档来难为读者,不要浪费他们的更多时间。
根据 Egger 的说法,开发人员通常会直接跳到示例代码而不是解释,这就是他主张使用真实示例的原因。Egger 还强调了使文档易于搜索的必要性,以便读者可以快速找到他们需要的信息。尽可能简单地写作也很重要,不要使用行话或不必要的复杂词语。一句话,文档的目标始终是简单和简洁。
(图片来自于网络,侵权必删)
同时,对于代码示例和说明性文档,再次检查你是否无意留下了错误也非常必要。“唯一比没有文档更糟糕的就是文档不正确,”Egger 说。“因为没有文件意味着我要去其他地方寻找它,但是不正确的文档会浪费我的时间。”
这些文档提示有助于确保几周或几年后遇到示例代码的人可以更容易地理解它,还意味着他们很有可能使用它。因此,软件本身以及它的文档在今天需要尽可能简单,以使其在未来的许多明天都可读和可用。
评论