大小写约定

date
Nov 11, 2021
slug
10020
status
Published
tags
C#
summary
type
Post
    此页面有帮助吗?
    本章中的指导原则介绍了使用大小写的简单方法,即在应用一致的情况下,使类型、成员和参数的标识符易读。

    有关标识符的首字母大写规则

    若要区分标识符中的单词,请将标识符中每个单词的首字母大写。 不要使用下划线来区分单词,或在标识符中的任何位置使用下划线。 有两种适当的方法可以根据标识符的使用将其首字母大写:
    • PascalCasing
    • camelCasing
    PascalCasing 约定(用于除了参数名称外的所有标识符)将每个单词(包括长度超过两个字母的首字母缩写词)的第一个字符大写,如以下示例所示:
    PropertyDescriptor HtmlTag
    两个字母的首字母缩写词是一种特殊情况,其中两个字母都大写,如以下标识符所示:
    IOStream
    camelCasing 约定(仅用于参数名称,将每个单词的第一个字符(除第一个单词之外)大写,如以下示例所示。 如示例中所示,以字母混合形式表示的两个字母首字母缩写词均采用小写。
    propertyDescriptor ioStream htmlTag
    ✔️ 对于包含多个单词的所有公共成员、类型和命名空间名称,请使用 PascalCasing。
    ✔️ 使用 camelCasing 作为参数名称。
    下表描述了不同标识符类型的首字母大写规则。
    标识符
    大小写
    示例
    Pascal
    namespace System.Security { ... }
    Pascal
    public class StreamReader { ... }
    Pascal
    public interface IEnumerable { ... }
    Pascal
    public class Object {public virtual string ToString();}
    Pascal
    public class String {public int Length { get; }}
    Pascal
    public class Process {public event EventHandler Exited;}
    Pascal
    public class MessageQueue {public static readonly TimeSpanInfiniteTimeout;}public struct UInt32 {public const Min = 0;}
    Pascal
    public enum FileMode {Append,...}
    混合
    public class Convert {public static int ToInt32(string value);}

    将组合词和常见术语的首字母大写

    为了实现首字母大写,大多数组合术语都被视为单个单词。
    ❌ 不要将所谓的“闭合形式”组合词中的每个首字母大写。
    这些是以单个词(如终结点)形式编写的组合词。 为了符号大小写准则,请将“闭合形式”组合词视为单个单词。 使用当前字典来确定是否以闭合形式写入组合词。
    Pascal
    混合
    Not
    BitFlag
    bitFlag
    Bitflag
    Callback
    callback
    CallBack
    Canceled
    canceled
    Cancelled
    DoNot
    doNot
    Don't
    Email
    email
    EMail
    Endpoint
    endpoint
    EndPoint
    FileName
    fileName
    Filename
    Gridline
    gridline
    GridLine
    Hashtable
    hashtable
    HashTable
    Id
    id
    ID
    Indexes
    indexes
    Indices
    LogOff
    logOff
    LogOut
    LogOn
    logOn
    LogIn
    Metadata
    metadata
    MetaData, metaData
    Multipanel
    multipanel
    MultiPanel
    Multiview
    multiview
    MultiView
    Namespace
    namespace
    NameSpace
    Ok
    ok
    OK
    Pi
    pi
    PI
    Placeholder
    placeholder
    PlaceHolder
    SignIn
    signIn
    SignOn
    SignOut
    signOut
    SignOff
    UserName
    userName
    Username
    WhiteSpace
    whiteSpace
    Whitespace
    Writable
    writable
    Writeable

    区分大小写

    可在 CLR 上运行的语言不需要支持区分大小写,但有些则不需要。 即使你的语言支持,其他可能访问你框架的语言也不是如此。 因此,外部可访问的任何 API 都不能单独依赖于大小写来区分同一上下文中的两个名称。
    ❌ 不要假设所有编程语言都区分大小写。 它们不是。 名称不能按大小写单独区分。
    Portions © 2005, 2009 Microsoft Corporation。保留所有权利。
    在 Pearson Education, Inc. 授权下,由 Addison-Wesley Professional 作为 Microsoft Windows 开发系列的一部分再版自 Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraries, 2nd Edition(Framework 设计准则:可重用 .NET 库的约定、惯例和模式第 2 版),由 Krzysztof Cwalina 和 Brad Abrams 发布于 2008 年 10 月 22 日。

    请参阅


    © Wen Bo 2021 - 2022