大小写约定
date
Nov 11, 2021
slug
10020
status
Published
tags
C#
summary
type
Post
- ‣
此页面有帮助吗?
本章中的指导原则介绍了使用大小写的简单方法,即在应用一致的情况下,使类型、成员和参数的标识符易读。
有关标识符的首字母大写规则
若要区分标识符中的单词,请将标识符中每个单词的首字母大写。 不要使用下划线来区分单词,或在标识符中的任何位置使用下划线。 有两种适当的方法可以根据标识符的使用将其首字母大写:
- PascalCasing
- camelCasing
PascalCasing 约定(用于除了参数名称外的所有标识符)将每个单词(包括长度超过两个字母的首字母缩写词)的第一个字符大写,如以下示例所示:
PropertyDescriptor HtmlTag两个字母的首字母缩写词是一种特殊情况,其中两个字母都大写,如以下标识符所示:
IOStreamcamelCasing 约定(仅用于参数名称,将每个单词的第一个字符(除第一个单词之外)大写,如以下示例所示。 如示例中所示,以字母混合形式表示的两个字母首字母缩写词均采用小写。
propertyDescriptor ioStream htmlTag✔️ 对于包含多个单词的所有公共成员、类型和命名空间名称,请使用 PascalCasing。
✔️ 使用 camelCasing 作为参数名称。
下表描述了不同标识符类型的首字母大写规则。
标识符
大小写
示例
Pascal
public class MessageQueue {public static readonly TimeSpanInfiniteTimeout;}public struct UInt32 {public const Min = 0;}将组合词和常见术语的首字母大写
为了实现首字母大写,大多数组合术语都被视为单个单词。
❌ 不要将所谓的“闭合形式”组合词中的每个首字母大写。
这些是以单个词(如终结点)形式编写的组合词。 为了符号大小写准则,请将“闭合形式”组合词视为单个单词。 使用当前字典来确定是否以闭合形式写入组合词。
Pascal
混合
Not
BitFlagbitFlagBitflagCallbackcallbackCallBackCanceledcanceledCancelledDoNotdoNotDon'tEmailemailEMailEndpointendpointEndPointFileNamefileNameFilenameGridlinegridlineGridLineHashtablehashtableHashTableIdidIDIndexesindexesIndicesLogOfflogOffLogOutLogOnlogOnLogInMetadatametadataMetaData, metaDataMultipanelmultipanelMultiPanelMultiviewmultiviewMultiViewNamespacenamespaceNameSpaceOkokOKPipiPIPlaceholderplaceholderPlaceHolderSignInsignInSignOnSignOutsignOutSignOffUserNameuserNameUsernameWhiteSpacewhiteSpaceWhitespaceWritablewritableWriteable区分大小写
可在 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 日。