Saya selalu menginisialisasi string saya ke NULL, dengan pemikiran bahwa NULL berarti tidak adanya nilai dan "" atau String.Empty adalah nilai yang valid. Saya telah melihat lebih banyak contoh belakangan ini dari kode di mana String.Empty dianggap sebagai nilai default atau tidak mewakili nilai. Ini menurut saya aneh, dengan tipe nullable yang baru ditambahkan di c # sepertinya kami mengambil langkah mundur dengan string dengan tidak menggunakan NULL untuk mewakili 'No Value'.
Apa yang Anda gunakan sebagai penginisialisasi default dan mengapa?
Sunting: Berdasarkan jawaban saya lanjutkan pemikiran saya selanjutnya
Menghindari penanganan kesalahan Jika nilainya tidak boleh nol, mengapa harus diatur ke
NULLtempat pertama? Mungkin akan lebih baik untuk mengidentifikasi kesalahan di tempat itu terjadi daripada menutupinya melalui seluruh basis kode Anda?Menghindari cek nol. Jika Anda bosan melakukan cek nol dalam kode, bukankah lebih baik mengabstraksi cek nol? Mungkin membungkus (atau memperpanjang!) Metode string untuk membuatnya
NULLaman? Apa yang terjadi jika Anda terus-menerus menggunakanString.Emptydan null terjadi untuk masuk ke sistem Anda, apakah Anda mulai menambahkanNULLcek?
Mau tak mau aku kembali ke pendapat bahwa itu adalah kemalasan. Setiap DBA akan menampar Anda sembilan cara untuk konyol jika Anda menggunakan '' alih-alih nulldalam database-nya. Saya pikir prinsip-prinsip yang sama berlaku dalam pemrograman dan harus ada seseorang untuk menampar mereka yang terbalik yang menggunakan String.Emptydaripada NULLtidak mewakili nilai.
Pertanyaan-pertanyaan Terkait