C#開發手冊


一、 編碼規范

(一)【強制】命名規范:所有命名(類名、屬性名、變量名、常量名、屬性名)必須以字母開頭(a-z、A-Z),不能以特殊字符(_、$)開頭。

        1、【強制】類名命名規則:大駝峰命名法【DTO、POCO、VO等除外】

     public class UserInfo{}

        2、【強制】屬性命名規則:大駝峰命名法

     public string UserInfo { get; set; }

        3、【強制】字段、參數、成員變量、局部變量命名規則:小駝峰命名法

     public string userName;
     public string GetUserName(string userId) { return "userName"; }

        4、【強制】方法/函數命名規則:大駝峰命名法

     public int GetUserInfo() { }

        5、【強制】常量命名規則:名稱全部大寫,單詞間用下划線_分開

     public const string USER_NAME = "userinfo";

        6、【強制】DTO、POCO、VO命名規則:大駝峰命名法+DTO/VO/POCO等

     public class UserInfoDTO { }
     public class UserInfoVO { }
     public class UserInfoPOCO { }

        7、【強制】命名空間命名規則:大駝峰命名法

    namespace UserInfo { }

        8、【強制】枚舉命名規則(枚舉名稱采用大駝峰命名規則,枚舉成員所有名稱也使用大駝峰命名法)(沒有特殊情況的話,枚舉成員建議從默認值0開始)

    public enum UserState
    {
        Success,
        Fail
    }

        9、【強制】代碼中所有成員禁止直接使用中文的命名方式,禁止使用中文拼音命名(一些通用的命名除外:比如城市可以采用beiJing、shangHai這樣的命名規則是可以的),禁止使用中英文混合命名方式,禁止出現a、b、c、aa、ss、x、xx等毫無意義的命名方式。

        10、【推薦】復數類型(集合類、數組等)命名規則:優先以小寫字符s結尾,如果單詞最后的字母就是s或其他不適合s結尾的單詞,可以使用復數類型的類型名稱結尾(如List、Array等結尾)。前面規則如果都不好命名,可自行命名。

    public List<string> userNames { get; set; }
    public string[] userNameArray { get; set; }
    public List<string> userNameList { get; set; }

        11、【強制】接口命名規則:以大寫字母I開頭+類名稱

    public interface IUserInfo { }

        12、【強制】異常類命名規則:大駝峰命名法+Exception

   public class UserInfoException { }

        13、【強制】項目命名規則:大駝峰命名法,各個字母之間用字母(.)隔開。

        14、【推薦】業務層和數據層名命名規則:業務層類庫名稱命名規則:以Service結尾、數據層類庫命名規則:以Repository結尾。

            1)、獲取數據的方法以Get開頭(加上要獲取的對象名)。如獲取單個對象,可以使用Get()、GetUserInfo()。獲取復數對象(集合類),可以使用Gets()、GetUserInfos()。

        public class UserInfoService
        {
            /// <summary>
            /// 獲取一條用戶信息【命名規則:直接用Get命名】
            /// </summary>
            /// <param name="userId">用戶Id</param>
            /// <returns></returns>
            public UserInfo Get(string userId) 
            { 
                return null;
            }
            /// <summary>
            /// 獲取一條用戶信息【命名規則:Get+對象名】
            /// </summary>
            /// <param name="userId">用戶Id</param>
            /// <returns></returns>
            public UserInfo GetUserInfo(string userId)
            {
                return null;
            }
            /// <summary>
            /// 獲取多條用戶信息【命名規則:Gets】
            /// </summary>
            /// <returns></returns>
            public IEnumerable<UserInfo> Gets()
            {
                return null;
            }
            /// <summary>
            /// 獲取多條用戶信息【命名規則:Get+對象名復數】
            /// </summary>
            /// <returns></returns>
            public IEnumerable<UserInfo> GetUserInfos()
            {
                return null;
            }
        }

            2)、新增數據的方法以Insert開頭(加上要獲取的對象名)。如往數據庫中新增一條記錄,方法命名為Insert()、InsertUserInfo()。往數據庫中新增多條記錄,方法命名為Inserts()、InsertUserInfos()。

        public class UserInfoService
        {/// <summary>
            /// 新增一條用戶信息【命名規則:Insert命名】
            /// </summary>
            /// <param name="userInfo">用戶信息</param>
            /// <returns></returns>
            public int Insert(UserInfo userInfo)
            {
                return 1;
            }
            /// <summary>
            /// 新增一條用戶信息【命名規則:Insert+對象名】
            /// </summary>
            /// <param name="userInfo">用戶信息</param>
            /// <returns></returns>
            public int InsertUserInfo(UserInfo userInfo)
            {
                return 1;
            }
            /// <summary>
            /// 新增多條用戶信息【命名規則:Inserts】
            /// </summary>
            /// <param name="userInfos">用戶信息</param>
            /// <returns></returns>
            public int Inserts(List<UserInfo> userInfos)
            {
                return 1;
            }
            /// <summary>
            /// 新增多條用戶信息【命名規則:Insert+對象名復數】
            /// </summary>
            /// <param name="userInfos">用戶信息</param>
            /// <returns></returns>
            public int InsertUserInfos(List<UserInfo> userInfos)
            {
                return 1;
            }
        }

            3)、刪除數據的方法以Delete/Remove(加上要刪除的對象名)。如刪除數據庫中的一條記錄,方法命名為Delete()、DeleteUserInfo()。刪除數據庫中的多條記錄,方法命名為Deletes()、DeleteUserInfos()。

        public class UserInfoService
        {/// <summary>
            /// 刪除一條用戶信息【命名規則:Delete】
            /// </summary>
            /// <param name="userId">用戶Id</param>
            /// <returns></returns>
            public int Delete(string userId)
            {
                return 1;
            }
            /// <summary>
            /// 刪除一條用戶信息【命名規則:Delete+對象名】
            /// </summary>
            /// <param name="userId">用戶Id</param>
            /// <returns></returns>
            public int DeleteUserInfo(string userId)
            {
                return 1;
            }
            /// <summary>
            /// 刪除多條用戶信息【命名規則:Deletes】
            /// </summary>
            /// <param name="userIds">要刪除的用戶Id集合</param>
            /// <returns></returns>
            public int Deletes(List<string> userIds)
            {
                return 1;
            }

            /// <summary>
            /// 刪除多條用戶信息【命名規則:Delete+對象名復數】
            /// </summary>
            /// <param name="userIds">要刪除的用戶Id集合</param>
            /// <returns></returns>
            public int DeleteUserInfos(List<string> userIds)
            {
                return 1;
            }
        }

            4)、修改數據的方法以Update開頭(加上要修改的對象名)。如修改一條數據信息,方法命名為Update()、UpdateUserInfo()。修改多條數據的信息,方法命名為Updates()、UpdateUserInfos()。

        public class UserInfoService
        {/// <summary>
            /// 修改一條用戶信息【命名規則:Update】
            /// </summary>
            /// <param name="userInfo">用戶信息</param>
            /// <returns></returns>
            public int Update(UserInfo userInfo)
            {
                return 1;     
            }
            /// <summary>
            /// 修改一條用戶信息【命名規則:Update+對象名】
            /// </summary>
            /// <param name="userInfo">用戶信息</param>
            /// <returns></returns>
            public int UpdateUserInfo(UserInfo userInfo)
            {
                return 1;
            }
            /// <summary>
            /// 修改一條用戶信息【命名規則:Update】
            /// </summary>
            /// <param name="userInfo">用戶信息</param>
            /// <returns></returns>
            public int Updates(UserInfo userInfo)
            {
                return 1;
            }
            /// <summary>
            /// 修改一條用戶信息【命名規則:Update+對象名】
            /// </summary>
            /// <param name="userInfo">用戶信息</param>
            /// <returns></returns>
            public int UpdateUserInfos(UserInfo userInfo)
            {
                return 1;
            }
        }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM