Konvensi Kapitalisasi
Catatan
Konten ini dicetak ulang oleh izin Pearson Education, Inc. dari Panduan Desain Kerangka Kerja: Konvensi, Idiom, dan Pola untuk Pustaka .NET yang Dapat Digunakan Kembali, Edisi ke-2. Edisi itu diterbitkan pada tahun 2008, dan buku tersebut telah sepenuhnya direvisi pada edisi ketiga. Beberapa informasi di halaman ini mungkin sudah kedaluarsa.
Pedoman dalam bab ini menjabarkan metode sederhana untuk menggunakan kasus yang, ketika diterapkan secara konsisten, membuat pengidentifikasi untuk jenis, anggota, dan parameter mudah dibaca.
Aturan Kapitalisasi untuk Pengidentifikasi
Untuk membedakan kata dalam pengidentifikasi, manfaatkan huruf pertama dari setiap kata dalam pengidentifikasi. Jangan gunakan garis bawah untuk membedakan kata-kata, atau dalam hal ini, di mana saja dalam pengidentifikasi. Ada dua cara yang tepat untuk memanfaatkan pengidentifikasi, tergantung pada penggunaan pengidentifikasi:
PascalCasing
camelCasing
Konvensi PascalCasing, yang digunakan untuk semua pengidentifikasi kecuali nama parameter, mengkapitalisasi karakter pertama dari setiap kata (termasuk akronim lebih dari dua huruf panjangnya), seperti yang ditunjukkan dalam contoh berikut:
PropertyDescriptor
HtmlTag
Kasus khusus dibuat untuk akronim dua huruf tempat kedua huruf dikapitalisasi, seperti yang ditunjukkan dalam pengenal berikut:
IOStream
Konvensi camelCasing, yang hanya digunakan untuk nama parameter, mengkapitalisasi karakter pertama dari setiap kata kecuali kata pertama, seperti yang ditunjukkan dalam contoh-contoh berikut. Seperti yang ditunjukkan oleh contoh, akronim dua huruf yang memulai pengenal dengan casing unta sama-sama huruf kecil.
propertyDescriptor
ioStream
htmlTag
✔️ DO menggunakan PascalCasing untuk semua nama anggota publik, jenis, dan namespace layanan yang terdiri dari beberapa kata.
✔️ Gunakan camelCasing untuk nama parameter.
Tabel berikut menjelaskan aturan kapitalisasi untuk berbagai jenis pengidentifikasi.
pengidentifikasi | Kapitalisasi | Contoh |
---|---|---|
Ruang nama | Pascal | namespace System.Security { ... } |
Jenis | Pascal | public class StreamReader { ... } |
Antarmuka | Pascal | public interface IEnumerable { ... } |
Metode | Pascal | public class Object { public virtual string ToString(); } |
Properti | Pascal | public class String { public int Length { get; } } |
Kejadian | Pascal | public class Process { public event EventHandler Exited; } |
Bidang | Pascal | public class MessageQueue { public static readonly TimeSpan InfiniteTimeout; } public struct UInt32 { public const Min = 0; } |
Nilai enum | Pascal | public enum FileMode { Append, ... } |
Parameter | Camel | public class Convert { public static int ToInt32(string value); } |
Memanfaatkan Kata Majemuk dan Istilah Umum
Sebagian besar istilah majemuk diperlakukan sebagai kata tunggal untuk tujuan kapitalisasi.
❌ JANGAN kapitalkan setiap kata dalam apa yang disebut kata-kata senyawa bentuk tertutup.
Ini adalah kata majemuk yang ditulis sebagai satu kata, seperti titik akhir. Untuk tujuan pedoman casing, perlakukan kata majemuk bentuk tertutup sebagai satu kata. Gunakan kamus saat ini untuk menentukan apakah kata majemuk ditulis dalam bentuk tertutup.
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 |
Writable |
writable |
Writeable |
Sensitivitas Huruf Besar/Kecil
Bahasa yang dapat berjalan pada CLR tidak diperlukan untuk mendukung kepekaan huruf besar/kecil, meskipun beberapa melakukannya. Bahkan jika bahasa Anda mendukungnya, bahasa lain yang mungkin mengakses kerangka kerja Anda tidak. Setiap API yang dapat diakses secara eksternal, oleh karena itu, tidak dapat mengandalkan kasus saja untuk membedakan antara dua nama dalam konteks yang sama.
❌ JANGAN berasumsi bahwa semua bahasa pemrograman peka huruf besar/kecil. Tidak. Nama tidak dapat berbeda berdasarkan kasus saja.
Portions © 2005, 2009 Microsoft Corporation. Semua hak dilindungi undang-undang.
Dicetak ulang dengan izin dari Pearson Education, Inc. dari Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraries, 2nd Edition oleh Krzysztof Cwalina dan Brad Abrams, diterbitkan 22 Okt 2008 oleh Addison-Wesley Professional sebagai bagian dari Seri Pengembangan Microsoft Windows.