背景
接觸了一些非常優秀的編程人才,發現他們有一個共同的特點:“重視命名”,記得一位大師也曾說過:“命名和緩存是他最頭痛的兩個問題”,我不是一個注重細節的人,最起碼從骨子里不是,因此我吃了不少苦頭,我需要注重細節,從命名開始。
這篇文章不會介紹如何更好的命名,關於這方面的資料,可以去買一些這些方面的書,設計模式固然必不可少,但是現在如果讓我排一個優先級的話,我更關注代碼可讀性和命名,一些推薦的圖書:《實現模式》、《代碼質量》、《代碼閱讀》、《編寫可讀代碼的藝術》、《微軟框架設計規范》等。
為何命名如此重要
- 好的名稱代表了合理的職責分配。
- 好的名稱代表了清晰的思路。
- 好的名稱代表了你對自己和他人的尊重。
命名沒有想象的那么簡單,一個例子
這個截圖是重構后的結構,可以看出,在框架和項目里分別用Command和Commands命名對應的命名空間,我之前是統一用的Command,當時感覺有點別扭,只是為了統一,就在框架和項目里都采用Command進行命名,當我把截圖發到群里的時候被netfocus一下就看出來問題了,說項目中應該采用復數形式,經他的指點,我一下豁然開朗,具體原因如下:
- 框架里之所以命名為Command,是因為此命名空間的職責是提供一種Command基礎設施。
- 項目里之所以命名為Commands,是因為此命名空間的職責是組織一系列項目中使用的Command(AComamnd、BCommand、CComamnd。。。)。
備注
每天最開心的就是想明白了一個東西,想明白了如何命名Command和Commands是我當天最開心的事情,感謝netfocus。