Write Code as If You Had to Support It for the Rest of Your Life
你可能会问97个人程序员应该知道什么并且如何做,可能你会得到97种不同答案。这可能会同时令人迷茫和生畏。所有的建议都是好的,所有的原则都是正确的,所有的故事都很引人注目,那么你要从哪里开始?更重要的是,一旦你开始,你又如何保持最佳的学习实践,如何确保它们能被集成进你的编程实践中呢?
我认为答案在于你的心态,确切地说,是态度。举个例子,如果你不关心你的开发伙伴、测试员、经理、销售、市场人员以及终端用户,你就不可能玩什么测试驱动开发,或在代码中写出干净的注释。我认为又一种简单的方式能够调整你的态度,并总能驱使你提交最高质量的产品:
编写代码,余生都要支持它
就它了。如果你接受这种观点,很多很棒的事情就会发生。如果你愿你让你以前或者现在的雇主深更半夜打电话给你,让你解释一下为什么当初要写fooBar
这个方法,你就会逐渐朝专家级程序员方向发展。你会自然而然地想要更好的变量及方法的命名。你会远离那种几百行代码构成的代码块。你会寻找、学习以及应用设计模式。你会写注释、测试代码、持续重构。在余生支持你所写过的全部代码会是一次不可能的挑战。你会没得选择,但也会变得更好、更聪明、更高效。
如果你反思一下,自己写的代码在多年以后依然影响着你的职业生涯,你是否会喜欢或讨厌它。你设计并编写的每个方法、类、模块都留下了你的知识、态度、坚韧、专业、提交水准以及成就感。人们会基于他们看到的这些代码形成对你的看法。如果这些评价总是负面的,那你从你职业生涯中获得的收益会少于预期。每行代码会关系到你的职业生涯、客户、用户——编写代码,余生都要支持它。