作者tomex (tomex_ou)
看板C_Sharp
标题Re: 命名的习惯问题
时间Wed Jul 14 23:52:55 2004
※ 引述《liunate (测试)》之铭言:
: ※ 引述《seagal (待救的小米)》之铭言:
: : 我会有这习惯ㄝ
: : Microsoft不建议的原因是?
: 书中写:
: 在Microsoft Visaul Studio.NET的开发环境中,藉由在程式码编辑器中
: 移动滑鼠到一个栏位的上方,则有关一个栏位或变数的型态资讯可以方便的取得。
: 另外前置词形式限制开发者需要改变变数型态的能力。
请看382,之前我有讨论过。
prefix的功能就是较清楚,不需依赖编辑器另外提供,
尽管知道上述的理由,依割舍不掉prefix。
直到我去学习java,再回来看.Net,发现物件名又臭又长
你怎麽prefix,到後来辨识效果递减~
我终於鼓起勇气,用java的命名法在.Net中,
直接以该变数的目的去命名,而不用其type,的确很好作改变。
但怎麽避免local区域的变数型态混肴呢?
我的方法是大量善用区域变数,也就是说变数名不会重头用到尾
而是某区段就换其他变数来equal它!
localize化的撰写方式,若是混肴了,也很容易再辨识回来
而在copy/paste也变得很方便。
举例来说:
只要是子区域变数,名称皆用小写,用_来区隔
public void getMethodName(string userName)
{
string user_name = userName;
//上句这样作的原因是参数若变了,也不影响里头! 要作变化也行,如trim()。
接下来有2个子区段,里头的变数都是小写加底线,若有变数跨2子区段
用java命名法, 首字小写,如 myChineseName.
// 区段1
string my_name = "tomex";
// 区段2
string s2 = myChineseName;
}
而global的变数,我用全大写加底线命名,THIS_MAX_COUNT = 0;
以上我都不带有型别,看到全小写的变数,就能知道它不会活很久
首字小写的,能活久一些,但不出method()。
如此,没有型态prefix,也很容易抓type。
变数命名,每个人习惯不同,但基本精神一定要雷同
例如instance变数,首字一定是小写的。
不要介意变数长度,要自订时,就用另一变数来equal它,如
string s1 = myEnglishName;
总之,读一下共同原则,自订的命名法变数不要让它活很久,
这样子大家都能接受。
--
You're recommended to vist C_Sharp in PTT.
We are the C#, resistance is futile.
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.119.183.211