- 22/10/2008
- 2 minutter at læse
-
- K
- n
- B
- D
- n
-
+10
Retningslinjerne i dette kapitel udlægger en enkel metode til at bruge case, der, når de anvendes konsekvent, gør identifikatorer for typer, medlemmer og parametre lette at læse.
Regler for hovedbogstaver for identifikatorer
For at skelne ord i en identifikator skal det første bogstav i hvert ord i identifikatoren skrives med stort. Brug ikke understregninger til at skelne ord fra hinanden, eller for den sags skyld, hvor som helst i identifikatorer. Der er to passende måder at sætte store bogstaver på identifikatorer på, afhængigt af brugen af identifikatoren:
-
PascalCasing
-
camelCasing
PascalCasing-konventionen, der anvendes til alle identifikatorer undtagen parameternavne, sætter det første tegn i hvert ord (herunder akronymer over to bogstaver) med stort bogstav, som vist i følgende eksempler:
PropertyDescriptor
HtmlTag
Et særligt tilfælde er akronymer på to bogstaver, hvor begge bogstaver skrives med stort, som vist i følgende identifikator:
IOStream
Med camelCasing-konventionen, der kun anvendes til parameternavne, skrives det første tegn i hvert ord med undtagelse af det første ord med stort, som vist i følgende eksempler. Som det også fremgår af eksemplet, er akronymer på to bogstaver, der indledes med en camel-casing-identifikator, begge med små bogstaver.
propertyDescriptor
ioStream
htmlTag
✔️ DO bruge PascalCasing til alle offentlige medlems-, type- og navnespacenavne, der består af flere ord.
✔️ DO use camelCasing for parameternavne.
Den følgende tabel beskriver reglerne for versaler for forskellige typer af identifikatorer.
Identifier | Hovedstavning | Eksempel | ||
---|---|---|---|---|
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 | Pascal | public class Process { public event EventHandler Exited; } |
|
Felt | Pascal | public class MessageQueue { public static readonly TimeSpan InfiniteTimeout; } public struct UInt32 { public const Min = 0; } |
||
Enumværdi | Pascal | public enum FileMode { Append, ... ... } |
||
Parameter | Kamel | public class Convert { public static int ToInt32(string value); } } |
Kapitalisering af sammensatte ord og almindelige udtryk
De fleste sammensatte udtryk behandles som enkeltord med hensyn til kapitalisering.
❌ Der skal IKKE skrives med stort i hvert enkelt ord i såkaldte sammensatte ord i lukket form.
Dette er sammensatte ord, der skrives som et enkelt ord, f.eks. endpoint. I forbindelse med retningslinjerne for helsætning skal du behandle et sammensat ord i lukket form som et enkelt ord. Brug en aktuel ordbog til at afgøre, om et sammensat ord er skrevet i lukket form.
Pascal | Camel | 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 |
Whitespace |
Writable |
writable |
Writeable |
Kasefølsomhed
Sprog, der kan køre på CLR, behøver ikke at understøtte case-følsomhed, selvom nogle gør det. Selv om dit sprog understøtter det, gør andre sprog, der kan få adgang til din ramme, det ikke. Eventuelle API’er, der er eksternt tilgængelige, kan derfor ikke stole på kasus alene til at skelne mellem to navne i den samme kontekst.
❌ ANTAG IKKE, at alle programmeringssprog er kasusfølsomme. Det er de ikke. Navne kan ikke adskilles alene ved hjælp af store og små bogstaver.
Portioner © 2005, 2009 Microsoft Corporation. Alle rettigheder forbeholdes.
Med tilladelse fra Pearson Education, Inc. genudtrykt fra Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraries, 2nd Edition af Krzysztof Cwalina og Brad Abrams, udgivet 22. okt. 2008 af Addison-Wesley Professional som en del af Microsoft Windows Development Series.
Se også
- Framework Design Guidelines
- Naming Guidelines