Hanya penjelasan singkat, karena saya melakukan ini semua sekitar 5 tahun yang lalu.
Ada (dengan sebagian besar bahasa) tidak ada persyaratan sintaksis untuk menyertakan else
pernyataan "null" (dan tidak perlu {..}
), dan dalam "program kecil sederhana" tidak perlu. Tetapi programmer sejati tidak menulis "program kecil yang sederhana", dan, sama pentingnya, mereka tidak menulis program yang akan digunakan sekali dan kemudian dibuang.
Ketika seseorang menulis if / else:
if(something)
doSomething;
else
doSomethingElse;
semuanya tampak sederhana dan orang hampir tidak melihat titik penambahan {..}
.
Tetapi suatu hari, beberapa bulan dari sekarang, beberapa programmer lain (Anda tidak akan pernah membuat kesalahan seperti itu!) Perlu "meningkatkan" program dan akan menambahkan pernyataan.
if(something)
doSomething;
else
doSomethingIForgot;
doSomethingElse;
Tiba-tiba doSomethingElse
agak lupa bahwa seharusnya ada di else
kaki.
Jadi, Anda adalah programmer kecil yang baik dan selalu menggunakannya {..}
. Tapi Anda menulis:
if(something) {
if(anotherThing) {
doSomething;
}
}
Semuanya baik-baik saja sampai anak baru itu membuat modifikasi tengah malam:
if(something) {
if(!notMyThing) {
if(anotherThing) {
doSomething;
}
else {
dontDoAnything;
}}
}
Ya, ini tidak diformat dengan benar, tetapi begitu juga setengah kode dalam proyek, dan "pemformat otomatis" akan tercampur oleh semua #ifdef
pernyataan. Dan, tentu saja, kode sebenarnya jauh lebih rumit daripada contoh mainan ini.
Sayangnya (atau tidak), saya telah keluar dari hal semacam ini selama beberapa tahun sekarang, jadi saya tidak memiliki contoh "nyata" yang segar dalam pikiran - di atas (jelas) dibuat-buat dan sedikit tipu.