人人都有很高的欲望在编程中表现自己的聪明。你想卖弄一下,用你高超的技巧写出一段最奇巧的代码。它让你得到少有的成就感。然而,我发现,对于大多数人来说,这对于一个项目的长期维护工作来说并不是一件好事。
比如像Ruby这样的语言,非常的灵活强大,使用这种语言耍聪明非常容易。而就像人们常说的更大的能力伴随的是更大的责任。所以,下面有一些对年轻程序员的谏言:在你的个人项目,娱乐项目中写出最奇巧的代码,以此来满足你的成就感,但在给客户做的项目中,你有责任让代码通俗易懂,请写出常规的代码。
下面是一个小例子,比较奇巧的代码和常规代码的区别。
奇巧的代码
- def address_is_empty?(customer)
- [customer.street, customer.city, customer.state, customer.zip].any?{|prop| prop.nil? || prop.squish.empty? }
- end
你能理解吗?
译文链接:http://www.aqee.net/resisting-the-temptation-to-be-clever/