🔴 Null Safety تو خیلی از زبان‌های برنامه‌نویسی (مثل Java) یه خطای معروف و دردسرساز وجود داره به اسم: ❌ NullPointerExceptionیعنی برنامه‌ سعی می‌کنه به یه متغیر «خالی» (null) دسترسی پیدا کنه ولی چون اون متغیر اصلاً مقداری نداره برنامه‌ خراب میشهحالا کاتلین اومده این مشکل رو خیلی قشنگ حل کرده با چیزی به اسم Null Safetyیعنی «ایمنی در برابر null بودن».چی کار می‌کنه؟کاتلین نمی‌ذاره هیچ متغیری به‌صورت پیش‌فرض null باشه مگر اینکه خودمون بگیم " ممکنه این متغیر null بشه".برای این کار باید بعد از نوع متغیر، علامت ? بذاریم :val name: String? = nullیعنی"این متغیر می‌تونه یه رشته باشه یا اصلاً مقداری نداشته باشه (null)" اگر متغیر nullable باشه، نمی‌تونیم مستقیم ازش استفاده کنیم .مثلاً این خطا رو می ده :println(name.length) // ❌ خطا: چون ممکنه name خالی باشه!درستش اینه : println(name?.length) // اگر name مقدار داشته باشه، طولشو می‌گه؛ اگر نه، null برمی‌گردونه.یا بصورت :if (name != null) { println("سلام $name")}