C# 命名規(guī)則(挺不錯(cuò)的)
更新時(shí)間:2009年02月06日 02:15:15 作者:
我自己總結(jié)的一套命名規(guī)則,其實(shí)規(guī)則很重要,它是一種標(biāo)準(zhǔn),可有可無,但有總會(huì)比無好,大家正在編碼的同志仔細(xì)看看,給點(diǎn)改進(jìn)意見。
1.用Pascal規(guī)則來命名方法和類型。
public class DataGrid
{
public void DataBind()
{
}
}
2.用Camel規(guī)則來命名局部變量和方法的參數(shù).
public class Product
{
private string _productId;
private string _productName;
public void AddProduct(string productId,string productName)
{
}
}
3.所有的成員變量前加前綴“_”。
public class DataBase
{
private string _connectionString;
}
4.接口的名稱加前綴 “I”。
public interface IConvertible
{
byte ToByte();
}
5.自定義的屬性以“Attribute”結(jié)尾。
public class TableAttribute:Attribute
{
}
6.自定義的異常以Exception結(jié)尾。
public class NullEmptyException:Exception
{
}
7.方法的命名。一般將其命名為動(dòng)賓短語。
public class File
{
public void CreateFile(string filePath)
{
}
public void GetPath(string path)
{
}
}
8.局部變量的名稱要有意義。
不要用x,y,z等等,用For循環(huán)變量中可使用i, j, k, l, m, n。
public class User
{
public void GetUser()
{
string[] userIds={"ziv","zorywa","zlh"};
for(int i=0,k=userIds.Length;i<k;i++)
{
}
}
}
9.所有的成員變量聲明在類的頂端,用一個(gè)換行把它和方法分開。
public class Product
{
private string _productId;
private string _productName;
public void AddProduct(string productId,string productName)
{
}
}
10.用有意義的名字命名namespace,如:公司名、產(chǎn)品名。
namespace Zivsoft//公司命名
{
}
namespace ERP//產(chǎn)品命名
{
}
11.建議局部變量在最接近使用它時(shí)再聲明。
12.使用某個(gè)控件的值時(shí),盡量命名局部變量。
public string GetTitle()
{
string title=lbl_Title.Text;
return title;
}
14.把引用的系統(tǒng)的namespace和自定義或第三方的用一個(gè)換行把它們分開。
using System;
using System.Web.UI;
using System.Windows.Forms;
using CSharpCode;
using CSharpCode.Style;
15.文件名要能反應(yīng)類的內(nèi)容,最好是和類同名,一個(gè)文件中一個(gè)類或一組關(guān)連類。
16.目錄結(jié)構(gòu)中要反應(yīng)出namespace的層次。
17.大括號(hào)"{"要新起一行。
public Sample()
{
//
// TODO: 在此處添加構(gòu)造函數(shù)邏輯
//
}
public class DataGrid
{
public void DataBind()
{
}
}
2.用Camel規(guī)則來命名局部變量和方法的參數(shù).
public class Product
{
private string _productId;
private string _productName;
public void AddProduct(string productId,string productName)
{
}
}
3.所有的成員變量前加前綴“_”。
public class DataBase
{
private string _connectionString;
}
4.接口的名稱加前綴 “I”。
public interface IConvertible
{
byte ToByte();
}
5.自定義的屬性以“Attribute”結(jié)尾。
public class TableAttribute:Attribute
{
}
6.自定義的異常以Exception結(jié)尾。
public class NullEmptyException:Exception
{
}
7.方法的命名。一般將其命名為動(dòng)賓短語。
public class File
{
public void CreateFile(string filePath)
{
}
public void GetPath(string path)
{
}
}
8.局部變量的名稱要有意義。
不要用x,y,z等等,用For循環(huán)變量中可使用i, j, k, l, m, n。
public class User
{
public void GetUser()
{
string[] userIds={"ziv","zorywa","zlh"};
for(int i=0,k=userIds.Length;i<k;i++)
{
}
}
}
9.所有的成員變量聲明在類的頂端,用一個(gè)換行把它和方法分開。
public class Product
{
private string _productId;
private string _productName;
public void AddProduct(string productId,string productName)
{
}
}
10.用有意義的名字命名namespace,如:公司名、產(chǎn)品名。
namespace Zivsoft//公司命名
{
}
namespace ERP//產(chǎn)品命名
{
}
11.建議局部變量在最接近使用它時(shí)再聲明。
12.使用某個(gè)控件的值時(shí),盡量命名局部變量。
public string GetTitle()
{
string title=lbl_Title.Text;
return title;
}
14.把引用的系統(tǒng)的namespace和自定義或第三方的用一個(gè)換行把它們分開。
using System;
using System.Web.UI;
using System.Windows.Forms;
using CSharpCode;
using CSharpCode.Style;
15.文件名要能反應(yīng)類的內(nèi)容,最好是和類同名,一個(gè)文件中一個(gè)類或一組關(guān)連類。
16.目錄結(jié)構(gòu)中要反應(yīng)出namespace的層次。
17.大括號(hào)"{"要新起一行。
public Sample()
{
//
// TODO: 在此處添加構(gòu)造函數(shù)邏輯
//
}
您可能感興趣的文章:
相關(guān)文章
用Html5與Asp.net MVC上傳多個(gè)文件的實(shí)現(xiàn)代碼
Html 5 的有一些File API,對(duì)Form表單增強(qiáng)的特性,讓我們輕松支持多文件上傳,看下面的Html片斷代碼2012-08-08
收集學(xué)習(xí)asp.net比較完整的面向?qū)ο箝_發(fā)流程
如果你已經(jīng)有較多的面向?qū)ο箝_發(fā)經(jīng)驗(yàn),跳過以下這兩步 第一步:掌握一門.NET面向?qū)ο笳Z言第二步:對(duì).NET Framework類庫有一定的了解;在具備了OO基礎(chǔ)之后,以下是具體的學(xué)習(xí)ASP.NET技術(shù)步驟2012-12-12
asp.core?同時(shí)兼容JWT身份驗(yàn)證和Cookies?身份驗(yàn)證兩種模式(示例詳解)
這篇文章主要介紹了asp.core?同時(shí)兼容JWT身份驗(yàn)證和Cookies?身份驗(yàn)證兩種模式,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-02-02
ASP.net 驗(yàn)證碼實(shí)現(xiàn)代碼(C#)
asp.net 驗(yàn)證碼效果實(shí)現(xiàn)代碼2008-02-02
ASP.Net?Core中的內(nèi)存和GC機(jī)制
這篇文章介紹了ASP.Net?Core中的內(nèi)存和GC機(jī)制,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-03-03
ASP.NET中MVC從后臺(tái)控制器傳遞數(shù)據(jù)到前臺(tái)視圖的方式
這篇文章主要介紹了ASP.NET中MVC從后臺(tái)控制器傳遞數(shù)據(jù)到前臺(tái)視圖的方式,以實(shí)例形式較為詳細(xì)的分析了asp.net中MVC數(shù)據(jù)傳遞的具體實(shí)現(xiàn)方法,需要的朋友可以參考下2014-12-12
解決 .NET Core 中 GetHostAddressesAsync 引起的 EnyimMemcached 死鎖問題
這篇文章主要介紹了解決 .NET Core 中 GetHostAddressesAsync 引起的 EnyimMemcached 死鎖問題的相關(guān)資料,需要的朋友可以參考下2016-09-09
.Net Core和jexus配置HTTPS服務(wù)方法
下面小編就為大家分享一篇.Net Core和jexus配置HTTPS服務(wù)方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-02-02

