ฉันเริ่มต้นสตริงของฉันเป็น NULL เสมอโดยคิดว่า NULL หมายถึงการไม่มีค่าและ "" หรือ String.Empty เป็นค่าที่ถูกต้อง ฉันได้เห็นตัวอย่างเพิ่มเติมของโค้ดเมื่อเร็ว ๆ นี้โดยที่ String.Empty ถือเป็นค่าเริ่มต้นหรือแสดงถึงไม่มีค่า สิ่งนี้ทำให้ฉันแปลกประหลาดโดยประเภทที่เพิ่มใหม่ว่างใน c # ดูเหมือนว่าเรากำลังก้าวถอยหลังด้วยสตริงโดยไม่ใช้ NULL เพื่อแสดงถึง 'ไม่มีค่า'
คุณใช้อะไรเป็นตัวเริ่มต้นเริ่มต้นและทำไม?
แก้ไข: จากคำตอบที่ฉันคิดต่อไป
การหลีกเลี่ยงการจัดการข้อผิดพลาดหากค่าไม่ควรเป็นโมฆะเหตุใดจึงตั้งค่าเป็นค่าเริ่ม
NULLต้นตั้งแต่แรก บางทีอาจเป็นการดีกว่าที่จะระบุข้อผิดพลาดในสถานที่ที่เกิดขึ้นแทนที่จะปกปิดข้อผิดพลาดทั้งหมดในโค้ดเบสของคุณการหลีกเลี่ยงการตรวจสอบโมฆะหากคุณเบื่อที่จะทำการตรวจสอบค่าว่างในโค้ดแล้วจะไม่เป็นการดีกว่าที่จะสรุปการตรวจสอบค่าว่าง บางทีห่อ (หรือขยาย!) วิธีการสตริงเพื่อให้
NULLปลอดภัย? จะเกิดอะไรขึ้นถ้าคุณใช้งานอยู่ตลอดเวลาString.Emptyและโมฆะเกิดขึ้นเพื่อทำงานในระบบของคุณคุณเริ่มเพิ่มการNULLตรวจสอบหรือไม่?
ฉันอดไม่ได้ที่จะกลับความเห็นว่ามันคือความเกียจคร้าน DBA ใด ๆ จะตบคุณเก้าวิธีเพื่อโง่ถ้าคุณใช้ '' แทนnullในฐานข้อมูลของเขา ฉันคิดว่าหลักการเดียวกันนี้ใช้ในการเขียนโปรแกรมและควรมีใครสักคนที่จะตีหัวคนที่ใช้String.Emptyมากกว่าที่NULLจะไม่แสดงคุณค่า
คำถามที่เกี่ยวข้อง