阅读重构——改善既有代码的设计
命名总是大问题,人出生的时候总是想给予最好的东西,包括姓名,这会让有一定文化底蕴的家长很头痛。我的名字的由来或许也是一样的。
“代码首先是为人写的,其次才是为计算机写的”这是作者的原话,一笔点到我的痛处。程序初学者往往会跟随书中写的那样上来就命名:
class test{
public void test(String arg){}
}
在很长一段时间都是这样写的,这样的好处我是说不出几个来(说它简短?但是有根短的 就用一个字母好了,说它好记?似乎记住了也没什么用处),但是给予一个好的命名好处多多!
class Customer {
public void buy(String goods, Integer price){}
}
看看!一个顾客来买东西来了,买东西一手交钱一手交货。
我做菜鸟的时候也经常很不规矩的命名,但是代码写的越来越多,过了两个月回头要修改功能,发现不得不重新阅读自己的代码了,因为看名称什么意义都看不出来,只有硬理解。还好这些代码是我自己写的,不然真不知道需要多长时间能修改一个功能。
命名的好处相信代码量超过5000的程序员来说是体会最深的了,特别是读过5手代码而且没有文档没有注释的程序员应该别有体会。
给出一个很好的命名对于我来说是很困难的,因为我的英语实在是烂的不好意思说啊。所以我用过的电脑都有一个常用软件,金山词霸!