2009年2月6日 星期五

我的命名法

之前我們公司和我都是習慣用所謂的匈牙利命名法[1],不過用這麼久也遇到了一些不方便的事。

1.
一開始我要宣告某一個變數是integer型態,所以我會寫成 int iValue;
但是後來因為某件事,我要修改原本的iValue為double型態,那我除了將int換成double之外,還需要將iValue全部改成dValue,這樣才可以從「變數名稱」就可以知道「變數型別」。

這是一件麻煩的事,雖然你可以用Replace In Files來取代所有的變數,或是用Visual Assist X的rename功能來修改,但是我還是感覺因為「變數型別」的改變而修改「變數名稱」挺無趣的。 :(

2.
也許你前一天打牌或是打電動打太晚=3=,結果隔天上班將double dValue誤寫成double iValue,當你看著iValue時,你認為他是int或是double的型態?
「變數名稱」並沒有即時的對映到真實的「變數型別」。


現在我用的是編程規範一書提到的:
類別、結構、列舉型別用LikeThis
變數和列舉元用likeThis
成員變數用likeThis_

不過,因為目前只有我用新的命名法,也順便測試一下,之後有心得和結論之後,再來跟公司宣導吧。 XD


Note:
1. 也許和原本的匈牙利命名法不一樣了,不過我們還是統稱為「匈牙利命名法」.. XD

Reference:
1: C++編程規範 - 101個準則、指導方針,和最佳實踐 - 侯捷/陳碩 譯

沒有留言:

LinkWithin

Related Posts with Thumbnails