Seperti semua orang yang telah mencatatnya, ini kurang lebih berasal dari bahasa C di mana Anda bisa mendapatkan kode palsu jika Anda secara tidak sengaja lupa tanda sama dengan kedua. Tetapi ada alasan lain yang juga cocok dengan C #: Keterbacaan.
Ambil saja contoh sederhana ini:
if(someVariableThatShouldBeChecked != null
&& anotherOne != null
&& justAnotherCheckThatIsNeededForTestingNullity != null
&& allTheseChecksAreReallyBoring != null
&& thereSeemsToBeADesignFlawIfSoManyChecksAreNeeded != null)
{
// ToDo: Everything is checked, do something...
}
Jika Anda hanya ingin menukar semua kata nol ke awal, Anda dapat lebih mudah melihat semua pemeriksaan:
if(null != someVariableThatShouldBeChecked
&& null != anotherOne
&& null != justAnotherCheckThatIsNeededForTestingNullity
&& null != allTheseChecksAreReallyBoring
&& null != thereSeemsToBeADesignFlawIfSoManyChecksAreNeeded)
{
// ToDo: Everything is checked, do something...
}
Jadi contoh ini mungkin contoh yang buruk (lihat pedoman pengkodean) tetapi pikirkan tentang Anda dengan cepat menggulir file kode lengkap. Dengan hanya melihat polanya
if(null ...
Anda segera tahu apa yang akan terjadi selanjutnya.
Jika sebaliknya, Anda harus selalu memindai hingga akhir baris untuk melihat pemeriksaan nullity, hanya membiarkan Anda tersandung sesaat untuk mengetahui jenis pemeriksaan yang dilakukan di sana. Jadi mungkin penyorotan sintaks dapat membantu Anda, tetapi Anda selalu lebih lambat ketika kata kunci tersebut berada di akhir baris, bukan di depan.