null در دارت چیست و چرا اهمیت دارد؟

null در دارت چیست و چرا اهمیت دارد؟

برای مشاهده ویدیو آموزش فیلترشکن خود را خاموش کنید و صفحه را رفرش کنید

در دنیای برنامه نویسی، مفهوم null یکی از رایج‌ترین و در عین حال خطرناک‌ترین مفاهیم است. در بسیاری از زبان‌ های برنامه نویسی، null به معنای «هیچ» یا «فاقد مقدار» است. اما اگر با آن به درستی برخورد نشود، می‌تواند باعث بروز خطاهای جدی در برنامه شود.

زبان Dart که پایه اصلی فریم ورک Flutter محسوب می‌شود، از نسخه ۲.۱۲ به بعد قابلیت null safety را معرفی کرد تا جلوی بسیاری از این خطاها گرفته شود. در این مقاله می‌خواهیم به بررسی مفهوم null، نحوه مدیریت آن در دارت و اهمیت آن در ساخت اپلیکیشن‌های فلاتر بپردازیم.

این مقاله بخشی از مسیر آموزش رایگان برنامه نویسی با دارت و فلاتر است و در پایان نیز شما را با یک دوره فوق‌العاده به نام دوره فلاتر الماس آشنا خواهیم کرد.

null چیست؟

در زبان‌ های برنامه‌ نویسی، null نمایانگر این است که یک متغیر یا شیء مقداردهی نشده یا به چیزی اشاره نمی‌کند. به‌ طور مثال، فرض کنید می‌خواهید نام کاربر را نمایش دهید، اما هنوز کاربر وارد نشده است. در این صورت مقدار null نمایانگر آن است که هنوز داده‌ای وجود ندارد.

در دارت، اگر یک متغیر قابلیت گرفتن مقدار null را داشته باشد، باید به‌ طور مشخص اجازه این کار را بدهید.

null safety چیست؟

null safety یعنی اطمینان از اینکه متغیرها یا مقادیر مورد استفاده در برنامه‌ تان null نخواهند بود مگر اینکه شما به‌ صراحت این اجازه را داده باشید.

این قابلیت باعث می‌شود بسیاری از خطاهای رایج در برنامه نویسی، مخصوصا در اپلیکیشن‌های بزرگ، از بین بروند. در دارت، این ویژگی از طریق علامت سؤال ? و علامت تعجب ! در کنار نوع متغیرها یا اشیاء اعمال می‌شود.

تفاوت بین متغیرهای nullable و non-nullable

در دارت، اگر نوع یک متغیر بدون علامت سؤال نوشته شود، آن متغیر non-nullable است؛ یعنی نمی‌تواند null بگیرد:

اما اگر نوع متغیر را به صورت String? بنویسید، یعنی می‌تواند null نیز باشد:

بررسی null با شرط

برای جلوگیری از خطا در هنگام استفاده از مقادیر nullable، باید قبل از استفاده از آن‌ها، وجود مقدار را بررسی کنید:

این کار باعث می‌شود هنگام اجرا با خطای معروف null pointer exception روبرو نشوید.

استفاده از عملگر ! برای اجبار به non-null بودن

اگر شما به دارت تضمین دهید که یک متغیر nullable در زمان استفاده، null نخواهد بود، می‌توانید از ! استفاده کنید:

البته این روش فقط در صورتی توصیه می‌شود که کاملا مطمئن باشید مقدار null نیست.

استفاده از null-aware operator (??)

اگر بخواهید برای متغیری که ممکن است null باشد، یک مقدار پیش‌فرض در نظر بگیرید، می‌توانید از ?? استفاده کنید:

در این مثال اگر userName مقدار نداشته باشد، “کاربر مهمان” چاپ خواهد شد.

مقداردهی شرطی با ??=

این عملگر زمانی استفاده می‌شود که فقط در صورت null بودن مقدار، به آن مقدار جدیدی اختصاص دهید:

اگر city مقدار داشته باشد، خط بالا تغییری ایجاد نمی‌کند؛ اما اگر مقدار null باشد، مقدار “تهران” به آن اختصاص داده می‌شود.

null در لیست‌ها و کلکسیون‌ها

از نسخه‌های جدید دارت، می‌توانید عناصر nullable را در لیست‌ ها نیز تعریف کنید:

همچنین با استفاده از عملگر spread ... می‌توانید لیست‌ های nullable را به لیست‌ های دیگر اضافه کنید:

استفاده از ...? کمک می‌کند در صورت null بودن newNames، خطایی رخ ندهد.

چرا null safety در دارت مهم است؟

قابلیت null safety باعث می‌شود توسعه‌ دهندگان از خطاهای رایج مربوط به مقادیر تهی جلوگیری کنند. این موضوع در پروژه‌ های فلاتر بسیار اهمیت دارد، چون با استفاده از این قابلیت:

  • برنامه شما امن‌ تر می‌شود

  • خطاهای زمان اجرا کاهش می‌یابد

  • روند دیباگ کردن ساده‌ تر خواهد شد

  • توسعه سریع‌ تر و مطمئن‌ تری را تجربه می‌کنید

اگر می‌خواهید برنامه‌ نویسی را به‌ صورت حرفه‌ای و بدون خطا یاد بگیرید، حتما باید null safety را به‌ طور کامل درک کنید.

این مفاهیم را در دوره فلاتر الماس یاد می‌گیرید

اگر این مقاله برایتان مفید بوده و قصد دارید برنامه نویسی با فلاتر را به‌صورت حرفه‌ای یاد بگیرید، دوره فلاتر الماس بهترین گزینه برای شماست.

در این دوره، مفاهیم پایه مثل null، توابع، کلاس‌ ها، شرط‌ ها و حلقه‌ ها با جزئیات کامل و مثال‌ های پروژه‌ محور آموزش داده شده‌اند. همچنین، در ادامه دوره وارد ساخت اپلیکیشن‌ های واقعی مثل فروشگاه آنلاین، اپ رزرو، اپ خبری و… خواهید شد.

برخی ویژگی‌ های دوره فلاتر الماس:

  • آموزش صفر تا صد دارت و فلاتر

  • پروژه‌ محور بودن دوره

  • پشتیبانی دائمی از شرکت‌ کنندگان

  • تمرین‌ ها و تست‌ های مفهومی

  • دسترسی همیشگی به ویدیوها

اگر هنوز شک دارید، بخش‌هایی از دوره را به‌صورت آموزش رایگان برنامه نویسی منتشر کرده‌ ایم تا با کیفیت آموزش آشنا شوید.

دوره اپلیکیشن نویسی فلاتر الماس (آموزش صفر تا صد برنامه نویسی)

صفحه رسمی دارت درباره null 

درک درست از null و قابلیت null safety در زبان دارت، یکی از مهم‌ترین بخش‌ های یادگیری فلاتر است. این موضوع نه‌تنها باعث امنیت بیشتر برنامه‌ های شما می‌شود، بلکه توسعه اپلیکیشن را نیز سریع‌ تر و روان‌ تر می‌ کند.

با شرکت در دوره فلاتر الماس، شما تمامی این مفاهیم را در قالب پروژه‌ های واقعی یاد می‌گیرید و آماده ورود به بازار کار برنامه نویسی می‌شوید.

📞 شماره تماس: ۰۹۰۵۰۳۶۹۱۷۱ | ۰۱۱۳۲۲۶۰۶۳۵
📱 اینستاگرام: @virgoulsoft
📱 اینستاگرام: @mehrab.bozorgi

مقالات پیشنهادی برای شما

چرا کسب‌ و کار های محلی به سایت نیاز دارند؟

داشتن وب‌ سایت دیگر یک انتخاب نیست، بلکه یک ضرورت است. در این مقاله به بررسی دلایل نیاز کسب‌ و کار های محلی به طراحی سایت حرفه‌ ای می‌ پردازیم

چگونه طراحی سایت می‌ تواند کسب و کارها را به مشتریان جهانی معرفی کند؟

در دنیای دیجیتال امروز، حضور آنلاین یک ضرورت غیرقابل انکار برای کسب و کارها است. اما صرفا داشتن حضور آنلاین کافی نیست. آنچه مهم‌ تر است، این است که چگونه

تأثیر طراحی سایت در دیده شدن کسب‌ و کار ها

در دنیای دیجیتال امروزی، طراحی سایت تنها یک ضرورت فنی نیست، بلکه یکی از مهم‌ ترین عوامل موفقیت در بازار رقابتی امروز به شمار می‌ رود. کسب‌ و کارها به‌

چگونه سایت می تواند وجهه برند کسب‌ و کار را تقویت کند؟

در دنیای دیجیتال امروزی، داشتن یک وبسایت حرفه‌ای برای هر کسب‌ و کار ضروری است. طراحی سایت تنها ابزاری برای معرفی محصولات یا خدمات نیست بلکه به‌طور مستقیم بر وجهه
دوره برنامه نویسی فلاتر الماس (آموزش صفر تا صد برنامه نویسی)

دوره برنامه نویسی فلاتر الماس (مناسب بازار کار Flutter – آپدیت ۲۰۲۵)

۶,۰۰۰,۰۰۰ تومان

.۳,۰۰۰,۰۰۰ تومان

error: Content is protected !!