- 10/22/2008
- 2 minuten om te lezen
-
- K
- n
- B
- D
- n
-
+10
De richtlijnen in dit hoofdstuk leggen een eenvoudige methode vast voor het gebruik van zaken die, die, wanneer consequent toegepast, identifiers voor typen, leden en parameters gemakkelijk leesbaar maken.
Kapitalisatieregels voor Identifiers
Om woorden in een identifier van elkaar te onderscheiden, moet u de eerste letter van elk woord in de identifier een hoofdletter geven. Gebruik geen underscores om woorden van elkaar te onderscheiden, of waar dan ook in identifiers. Er zijn twee manieren om identifiers een hoofdletter te geven, afhankelijk van het gebruik van de identifier:
-
PascalCasing
-
camelCasing
De PascalCasing-conventie, die voor alle identifiers behalve parameternamen wordt gebruikt, maakt het eerste teken van elk woord een hoofdletter (inclusief acroniemen die langer zijn dan twee letters), zoals in de volgende voorbeelden wordt getoond:
PropertyDescriptor
HtmlTag
Een speciaal geval wordt gemaakt voor acroniemen van twee letters, waarbij beide letters een hoofdletter krijgen, zoals blijkt uit de volgende identifier:
IOStream
De camelCasing-conventie, die alleen voor parameternamen wordt gebruikt, maakt het eerste teken van elk woord een hoofdletter, behalve het eerste woord, zoals blijkt uit de volgende voorbeelden. Zoals het voorbeeld ook laat zien, worden acroniemen van twee letters die met een camel-cased identifier beginnen, beide voorzien van een kleine letter.
propertyDescriptor
ioStream
htmlTag
✔️ Gebruik PascalCasing voor alle openbare lid-, type- en naamruimtenamen die uit meerdere woorden bestaan.
✔️ Gebruik camelCasing voor parameternamen.
De volgende tabel beschrijft de kapitalisatieregels voor verschillende soorten identifiers.
Identifier | Casing | Example |
---|---|---|
Namespace | Pascal | namespace System.Security { ... } |
Type | Pascal | public class StreamReader { ... } |
Interface | Pascal | public interface IEnumerable { ... } |
Method | Pascal | public class Object { public virtual string ToString(); } |
Property | Pascal | public class String { public int Length { get; } } |
Event | Pascal | public class Process { public event EventHandler Exited; } |
Field | Pascal | public class MessageQueue { public static readonly TimeSpan InfiniteTimeout; } public struct UInt32 { public const Min = 0; } |
Enumwaarde | Pascal | public enum FileMode { Append, ... } |
Parameter | Camel | public class Convert { public static int ToInt32(string value); } |
Hoofdlettergebruik van samengestelde woorden en veelvoorkomende termen
De meeste samengestelde termen worden met het oog op het hoofdlettergebruik als afzonderlijke woorden behandeld.
❌Geen hoofdletter voor elk woord in zogeheten gesloten samengestelde woorden.
Dit zijn samengestelde woorden die als één enkel woord worden geschreven, zoals eindpunt. Behandel een samenstelling in gesloten vorm als een enkel woord in het kader van de casing-richtlijnen. Gebruik een actueel woordenboek om te bepalen of een samengesteld woord in gesloten vorm is geschreven.
Pascal | Camel | Niet |
---|---|---|
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 |
Hoofdlettergevoeligheid
Talen die op de CLR kunnen draaien zijn niet verplicht om hoofdlettergevoeligheid te ondersteunen.gevoeligheid te ondersteunen, hoewel sommige dat wel doen. Zelfs als uw taal het ondersteunt, doen andere talen die uw framework kunnen benaderen dat niet. API’s die extern toegankelijk zijn, kunnen daarom niet alleen op hoofd- en kleine letters vertrouwen om onderscheid te maken tussen twee namen in dezelfde context.
❌ Ga er NIET van uit dat alle programmeertalen hoofdlettergevoelig zijn. Dat zijn ze niet. Namen kunnen niet alleen door hoofdletters van elkaar verschillen.
Delen © 2005, 2009 Microsoft Corporation. Alle rechten voorbehouden.
Gedrukt met toestemming van Pearson Education, Inc. uit Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraries, 2nd Edition door Krzysztof Cwalina en Brad Abrams, gepubliceerd op 22 oktober 2008 door Addison-Wesley Professional als onderdeel van de Microsoft Windows Development Series.
Zie ook
- Framework Design Guidelines
- Naming Guidelines