Memberi nama variabel selalu merupakan latihan dalam menyeimbangkan keunikan dan kelengkapan. Panjang nama terkait dengan keduanya, dengan cara yang berbeda. Nama yang lebih panjang lebih mudah dibuat unik; nama-nama panjang sedang cenderung lebih komprehensif daripada nama-nama yang terlalu pendek atau terlalu panjang.
Sebuah nama variabel yang sangat singkat hanya berguna jika memiliki sejarah yang membuatnya dipahami (misalnya, i
, j
, & k
untuk indeks; dx
untuk jarak sepanjang sumbu) atau lingkup yang cukup kecil untuk semua referensi untuk terlihat sekaligus (misalnya , temp
). Nama variabel terburuk di dunia adalah hal-hal seperti t47
. ("Apa artinya itu dan mengapa itu berbeda dari t46
?") Syukurlah gaya penamaan sebagian besar keluar dengan FORTRAN, tetapi di sinilah keinginan untuk nama-nama variabel yang lebih panjang berakar.
Seperti yang ditunjukkan makalah asli Anda, nama yang terlalu panjang juga sulit dibaca, karena perbedaan internal yang halus dapat terlewatkan ketika melihat kode. (Perbedaan antara DistanceBetweenXAxisAbscissae
& DistanceBetweenYAxisAbscissae
sangat sulit untuk diambil dengan cepat.)
Seperti yang ditunjukkan NoteToSelf sebelumnya, persyaratan untuk keunikan nama bergantung terutama pada cakupan nama yang harus unik. Indeks loop 5-garis bisa i
; indeks dari catatan aktif yang diteruskan dari fungsi ke fungsi lebih baik memiliki nama yang lebih deskriptif.
Variabel lokal ke fungsi dapat memiliki nama deskriptif kecil seperti deltaX
tanpa masalah. Variabel delta X statis dalam modul harus memiliki nama yang membedakan deltaX ini dari deltaX lain di modul yang sama, membuatnya lebih lama. Dan variabel delta X global harus dibuat unik di semua modul dan semua modul lain yang mungkin dibuat, mungkin dengan menggabungkan nama modul ke nama deskriptif lainnya. Ini adalah salah satu dari banyak masalah dengan global; untuk menjadi unik, nama-nama itu harus cukup panjang untuk membuatnya sulit dibaca.
:
, seperti pada:(){ :;:& };:
- Saya akan mengatakan kebanyakan orang berpikir itu sangat buruk. ;)