</>پیشگامان خلاقآکادمی و استودیو دیجیتال
دوره‌های برنامه‌نویسی

آموزش مبانی Dart برای شروع برنامه‌نویسی Flutter

متغیرها، تابع‌ها، کلاس‌ها، null safety و کار ناهمگام در دارت برای ورود مطمئن به فلاتر.

آراهنمای مرحله‌ای
متغیرها، تابع‌ها، کلاس‌ها، null safety و کار ناهمگام در دارت برای ورود مطمئن به فلاتر.
مسیر دارت و فلاتر

آموزش مبانی Dart برای شروع برنامه‌نویسی Flutter

متغیرها، تابع‌ها، کلاس‌ها، null safety و کار ناهمگام در دارت برای ورود مطمئن به فلاتر.

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

نوع‌ها و Null Safety

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

تابع، کلاس و سازنده

تابع رفتار را جدا می‌کند و کلاس داده و رفتار مرتبط را کنار هم قرار می‌دهد. در پروژه فلاتر، مدل‌های کوچک و تغییرناپذیر فهم جریان داده را آسان‌تر می‌کنند.

  • final برای مقداری که دوباره تنظیم نمی‌شود
  • نام‌گذاری روشن پارامترها
  • کلاس کوچک با مسئولیت مشخص
  • تبدیل JSON در مرز داده

Future و async

خواندن فایل یا دریافت API زمان می‌برد. Future نتیجه‌ای است که بعداً می‌رسد و await کمک می‌کند جریان ناهمگام را خوانا بنویسی. خطا و وضعیت انتظار باید همیشه طراحی شوند.

پرسش‌های متداول

قبل از Flutter چقدر Dart بخوانیم؟

متغیر، collection، تابع، کلاس، null safety و async برای شروع کافی‌اند؛ بقیه را در پروژه یاد بگیر.

var با dynamic چه تفاوتی دارد؟

var نوع را از مقدار اولیه استنباط و سپس حفظ می‌کند؛ dynamic بررسی بسیاری از نوع‌ها را به زمان اجرا می‌برد.

جمع‌بندی

پایه‌های Dart را با تمرین کوچک تثبیت کن و سپس وارد Flutter شو. Null safety و async دو مفهوم مهمی هستند که از همان ابتدا باید جدی گرفته شوند.

بخش عملی این مطلب

از مفهوم تا استفاده واقعی

Dart / Flutter
به زبان ساده

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

یک مثال از دنیای واقعی

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

final prices = <int>[120, 80, 50];
final total = prices.fold(0, (sum, price) => sum + price);

print('مبلغ سفارش: $total هزار تومان');
تمرین ۲۰ دقیقه‌ای

حالا نوبت توست

یک تخفیف ۱۰ درصدی به مبلغ سفارش اضافه کن و قیمت نهایی را نمایش بده.

  1. نمونه را یک‌بار اجرا یا بازنویسی کن.
  2. تغییر خواسته‌شده را بدون کپی کامل انجام بده.
  3. خروجی را با انتظار خودت مقایسه کن.
  4. در یک جمله توضیح بده چرا راه‌حل کار کرد.
سه نکته‌ای که باید یادت بماند
۱

اول مسئله و خروجی مورد انتظار را روشن کن؛ بعد ابزار را انتخاب کن.

۲

نمونه کوچکِ کامل از پروژه بزرگِ نیمه‌تمام بیشتر به یادگیری کمک می‌کند.

۳

کد را فقط نخوان؛ تغییرش بده، خطا بساز و دلیل نتیجه را توضیح بده.

این مسیر را ادامه بده

تمرین این صفحه را انجام بده، نتیجه را برای خودت توضیح بده و بعد سراغ درس مرتبط بعدی برو.

انتخاب مسیر بعدی ←