X

آموزش دارت Dart | متغیرها و نوع داده‌ها

تعریف متغیرها

در برنامه‌نویسی، متغیرها مانند جعبه‌هایی هستند که اطلاعات را درون خود نگهداری می‌کنند. هر متغیر یک نام دارد و می‌تواند یک مقدار را در خود ذخیره کند. این مقدار می‌تواند در طول اجرای برنامه تغییر کند (از این رو نام "متغیر" را دارد).

در دارت، برای تعریف یک متغیر از کلمات کلیدی مختلفی استفاده می‌شود که رایج‌ترین آن‌ها var، final، و const هستند. همچنین می‌توان نوع داده متغیر را به صراحت مشخص کرد.

استفاده از var:
وقتی از var استفاده می‌کنید، دارت به طور خودکار نوع داده را از روی مقداری که به متغیر اختصاص می‌دهید تشخیص می‌دهد. این کار را "استنتاج نوع" می‌نامند.

var name = 'علی'; // دارت تشخیص می‌دهد که نوع این متغیر String است.
var age = 25;     // دارت تشخیص می‌دهد که نوع این متغیر int است.
var height = 1.75; // دارت تشخیص می‌دهد که نوع این متغیر double است.

پس از تعریف متغیر با var، نوع آن ثابت می‌شود و نمی‌توانید بعداً مقداری از نوع دیگر در آن قرار دهید. برای مثال، کد زیر خطا می‌دهد:

var myNumber = 10;
myNumber = 'ده'; // خطا! نمی‌توان یک String را به یک متغیر از نوع int اختصاص داد.

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

String university = 'دانشگاه تهران';
int studentCount = 5000;
double average = 18.5;
bool isActive = true;

استفاده از dynamic:
اگر بخواهید متغیری داشته باشید که نوع آن بتواند در طول اجرای برنامه تغییر کند، از کلمه کلیدی dynamic استفاده می‌کنید. این کار انعطاف‌پذیری زیادی می‌دهد اما باید با احتیاط استفاده شود، زیرا می‌تواند منجر به خطاهای زمان اجرا شود.

dynamic flexibleVariable = 100;
flexibleVariable = 'صد'; // اینجا مشکلی نیست، زیرا نوع dynamic است.
flexibleVariable = true;  // این هم مجاز است.

قاعده کلی: همیشه سعی کنید از محدودترین نوع ممکن استفاده کنید. ابتدا سعی کنید نوع را صریحاً مشخص کنید یا از var استفاده نمایید. تنها در موارد ضروری از dynamic بهره ببرید. در بخش‌های بعدی، درباره final و const که برای تعریف ثابت‌ها استفاده می‌شوند، صحبت خواهیم کرد.

پرسش و پاسخ این درس

برای ثبت پرسش ابتدا در سایت وارد شوید.

  • 1
  • 2
  • 3
  • 4