fbpx

Бид өдөр тутмын амьдралдаа надад мөнгө байхгүй гэвэл нэг л утгатай үнэхээр мөнгө байхгүй гэсэн энгийн ойлголт. Харин компьютерын шинжлэх ухаан болон өгөгдлийн менежментэд байхгүй гэдэг ойлголт нь гурван өөр утгатай болж, тус бүр нь өөр өөр эрсдэл, үр дагавартай байдаг.

Эдгээр ялгааг мэдэхгүй байх нь программын алдаа үүсгэхээс гадна бизнесийн шийдвэрийг буруу гаргах, системийн ажиллагааг доголдуулах зэрэг ноцтой асуудалд хүргэж болдог.

ТЭГ (0)

Математик болон мэдээллийн технологид тэг бол юу ч биш эсвэл хоосон гэсэн үг биш. Энэ бол үнэн бодитоор оршин байгаа мэдээлэл.

Компьютерын санах ойд Integer төрлөөр хадгалагдах үед:

  • 0 нь бодит утга
  • 1, 5, 100 гэх мэт бусад бүх тоотой адил зай эзэлнэ
  • Процессор түүнийг тооцоололд хамруулдаг

Тиймээс 0 гэдэг нь утга байхгүй биш, харин утга нь 0 гэсэн яг тодорхой мэдээлэл.

Жишээ нь: Пиццаны хайрцаг төсөөлөөрэй.

Хайрцаг дотор пицца байхгүй ч:

  • Хайрцаг нь байна
  • Та хараад “Энд 0 пицца байна” гэж хэлж чадна

ХООСОН ТЭМДЭГТ ” “

Хоосон тэмдэгт мөр буюу програмчлалд "" гэж тэмдэглэдэг ойлголт. Энэ нь 0-тэй төстэй мэт боловч мөн чанар нь өөр.

Энэ нь String Data Type юм. Санах ойд хаяг үүсгэгдсэн урт нь 0 боловч, объект нь өөрөө оршиж байгаа хэлбэр. Программчлалын хэлэнд энэ нь “текст бичих талбар бэлэн, гэхдээ одоогоор тэмдэгт бичээгүй байна” гэсэн утгыг илэрхийлнэ.

Жишээ нь: Танд тэмдэглэлийн дэвтэр байна. Нэг хуудсыг нь хоосон орхисон. Тэр хуудсан дээр үг бичээгүй ч гэсэн, хуудас өөрөө байгаа.

NULL

Энд л жинхэнэ асуудал эхэлдэг. NULL бол 0 биш, хоосон зай ч биш. Энэ бол мэдэхгүй (Unknown), тодорхойгүй (Undefined), эсвэл өгөгдөл огт байхгүй (Missing) гэсэн ойлголт юм.

Шинжлэх ухааны хэллэгээр үүнийг Three-Valued Logic (3VL) буюу Гурван утгат логик гэж нэрлэдэг.

  1. True (Үнэн)
  2. False (Худал)
  3. Unknown (NULL)

NULL нь санах ойд утга заадаггүй, зөвхөн хоосон руу чиглэдэг.

Жишээ нь: Бид пиццаны хайрцаг (0), хоосон цаас (” “) ярьсан. Тэгвэл NULL бол пиццаны хайрцаг өөрөө байхгүй, бүр тэр хайрцгийг тавих ширээ нь ч байхгүй нөхцөл байдал юм. Та тэнд пицца байгаа эсэхийг ч мэдэх боломжгүй.

Тэрбум долларын алдаа

Компьютерын шинжлэх ухааны эцэг Sir Tony Hoare 1965 онд NULL reference-ийг зохион бүтээсэн ба үүнийг хожим нь “Тэрбум долларын алдаа” гэж нэрлэсэн байдаг. Учир нь системүүд NULL утгыг боловсруулахдаа ихэвчлэн гацдаг (NullPointerException) бөгөөд бизнесийн бодит мэдээллийг буруу гаргах эрсдэлтэй. Тиймээс үүнийг санхүүгийн тайлангийн алуурчин

Жишээ кейс:

АжилтанЦалин
Бараа10,000,000
Сараа0
НарааNULL

Хэрэв систем NULL-ийг 0 гэж андуурвал: (10,000,000 + 0 + 0) / 3 = 3,333,333 сая ₮. Энэ нь компанийн дундаж цалинг хиймлээр багасгаж харагдуулна.

Зөв тооцоолол: Зөв систем NULL-ийг тооцооноос бүрмөсөн хасдаг: (10,000,000 + 0) / 2 = 5,000,000 сая ₮. Нараагийн цалин тодорхойгүй тул дундаж утгад нөлөөлөх ёсгүй.

Дүгнэлт

Программ хангамж болон бизнесийн шинжилгээнд энэ ялгааг ойлгох нь зөвхөн кодын алдаанаас сэргийлээд зогсохгүй, бодит байдлыг зөв үнэлэх сэтгэлгээний соёл юм.

Дараагийн удаа тайлан хараад хоосон утга харагдвал өөрөөсөө асуугаарай: Энэ нь үнэхээр 0 уу, эсвэл бид энэ мэдээллийг мэдэхгүй юу?

Leave a Reply