Setiap variabel, class, dan namespace yang kita buat membutuhkan nama. Nama tersebut disebut identifier, dan compiler menetapkan aturan ketat tentang bentuknya. Selain aturan, C# juga menyimpan sejumlah keyword yang tidak boleh dipakai sebagai nama biasa karena sudah dimiliki bahasa.

Aturan Penamaan Identifier #

Compiler C# menolak identifier yang melanggar empat aturan berikut:

  • Hanya boleh memuat huruf, angka, dan garis bawah (_).
  • Tidak boleh diawali angka; total2 sah, tetapi 2total ditolak.
  • Tidak boleh sama dengan keyword yang direservasi, seperti class atau int.
  • Bersifat case-sensitive: nama, Nama, dan NAMA adalah tiga identifier berbeda.

Konvensi camelCase dan PascalCase #

Aturan compiler membiarkan banyak pilihan, sehingga komunitas menyepakati konvensi agar kode seragam. Variabel lokal ditulis dengan camelCase, yaitu huruf pertama kecil dan tiap kata berikutnya diawali huruf besar. Nama class dan method ditulis dengan PascalCase, yaitu tiap kata diawali huruf besar.

Keyword yang Direservasi #

Keyword adalah kata yang sudah dimiliki bahasa C# dan dipakai compiler untuk memahami struktur kode. Beberapa keyword yang kita temui paling sering:

KeywordKegunaan
int, string, boolTipe data bilangan bulat, teks, dan logika
varDeklarasi variabel dengan tipe dari compiler
class, namespacePembungkus tipe dan pengelompokan logis
usingDirective impor namespace
static, voidModifier anggota dan tanda tanpa nilai kembali
if, else, whilePengendali alur program
returnMengembalikan nilai dari method

C# juga memiliki contextual keyword seperti async, await, yield, dan partial. Kata-kata ini hanya berperan sebagai keyword pada konteks tertentu, sehingga boleh dipakai sebagai identifier di tempat lain.

Meloloskan Identifier dengan Tanda @ #

Jika suatu nama benar-benar bentrok dengan keyword, tanda @ di awal membuatnya sah:

csharp
string namaLengkap = "Budi Santoso";
int totalPesanan = 3;

Console.WriteLine(namaLengkap);
Console.WriteLine(totalPesanan);

string @string = "teks contoh"; // @ meloloskan nama yang bentrok keyword
Console.WriteLine(@string);

Output yang Dihasilkan:

text
Budi Santoso
3
teks contoh

Mari kita telaah baris demi baris:

  1. Baris 1 (string namaLengkap = ...): Identifier namaLengkap mematuhi aturan dan konvensi camelCase sekaligus.
  2. Baris 2 (int totalPesanan = 3;): Identifier totalPesanan juga sah; nama berbahasa Indonesia diperbolehkan bila membantu kejelasan.
  3. Baris 7 (string @string = ...): Tanpa @, baris ini ditolak compiler karena string adalah keyword. Tanda @ membuatnya menjadi identifier biasa.
  4. Baris 8 (Console.WriteLine(@string);): Variabel dipakai tanpa @ di awal; tanda itu hanya diperlukan saat deklarasi.