آشنایی با زبان برنامه نویسی دارت

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

 

آشنایی با زبان برنامه نویسی دارت

دارت چه زبانی است؟

زبان برنامه نویسی Dart در سال 2011 به‌منظور ایجاد تحول در نظام توسعه اپلیکیشن‌های موبایل توسط گوگل به بازار عرضه شد. این زبان برنامه‌نویسی در واقع سعی دارد امکانات جاوا اسکریپت را ارائه داده و محدودیت‌های آن (مثل مشکل حافظه) را حل کند. در حال حاضر جهت‌گیری‌های مختلفی نسبت به این زبان در دنیای برنامه‌‌نویسان وجود دارد.

 

 

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

 

مقاله پییشنهادی : چگونه برنامه نویسی را شروع کنیم؟
چگونه برنامه نویسی را شروع کنیم؟

 

زبان برنامه نویسی دارت از لحاظ Syntax بسیار به جاوا و سی‌پلاس‌پلاس شبیه است. با استفاده از این زبان هدف عمومی (General Purpose) می‌توان هم برنامه‌های سمت سرور و هم برنامه‌های سمت کلاینت را نوشت. کامپایلر زبان دارت درون Dart SDK یا ماشین مجازی دارت موجود است. در این SDK همچنین یک ابزار با نام -dart2js وجود دارد که معادل جاوا اسکریپت کد شما را تولید می‌کند. پیش‌نیاز یادگیری دارت تسلط بر شی‌گرایی است. با استفاده از دارت و با کمک فلاتر می‌توانید اپلیکیشن‌های موبایل برای تمام سیستم‌عامل‌ها بنویسید.

 

دارت چه زبانی است؟

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

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

مزایا و معایب زبان برنامه نویسی دارت

 

مزایا معایب
ساده برای یادگیری – خصوصا برای برنامه‌نویسانی که با جاوا اسکریپت آشنایی قبلی دارند. دارت به‌تازگی وارد دنیای برنامه‌نویسان شده است و برای همین جامعه‌ی بزرگی را دور خود نمی‌بینید. وجود جامعه برنامه‌نویسان حول محور یک زمان باعث می‌شود سوالات و مشکلات افراد تازه‌کار همه به‌سرعت پاسخ داده شوند.
ساخت مستندات آموزشی دقیق و جزئی توسط گوگل که جای ابهام برای یادگیری آن باقی نمی‌گذارد. با وجود استقبالی که در سال‌های اخیر از این زبان شده است، هنوز تقاضا برای برنامه‌نویس دارت در بازار کار به اندازه برنامه‌نویسان جاوا یا سی شارپ نیست.
عملکرد قدرتمند و سریع اپلیکیشن‌های نوشته شده با دارت در اجرا. دارت هنوز جای کار دارد. متخصصان این  زبان را هنوز کامل ندانسته و آن را به‌عنوان یک زبان در دست توسعه می‌شناسند.
این زبان از پایداری بالایی برخوردار بوده و از interfaceهای مختلفی پشتیبانی می‌کند. نبود پشتیبانی native از برنامه‌ها. این وظیفه خود برنامه‌نویسان است که پشتیبانی native را در مرورگرهای معروف فراهم کنند.
دارت به‌طورهمزمان از AOT و JIT استفاده می‌کند که در بین زبان‌های هم‌رده بی‌سابقه است.
نصب و استفاده از دارت بسیار ساده و روان است. با Dart pad می‌توانید به‌سادگی کد را نوشته و اجرا کنید.

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

 

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

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

مثل تمام زبان‌های برنامه‌نویسی دارت نیز مبانی مخصوص به خود را از نظر نوع داده‌ها و دستورات اولیه دارد. هدف ما در این مقاله ارائه‌ی آموزش‌های اولیه در حد آشنایی با زبان دارت است. برای این کار ابتدا به سراغ انواع داده (Data Types) در دارت می‌رویم.

 

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

انواع داده در زبان برنامه نویسی دارت چیست؟

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

اعداد (Numbers)

در دو نوع Integer و Double مورد استفاده قرار می‌گیرند. Integer که با Int معرفی می‌شود، شامل اعداد صحیح و غیراعشاری است. Double هم اعداد اعشاری را پوشش می‌دهد و با همان Double شناخته می‌شود.

رشته‌ها (Strings)

برای کار با رشته‌ای از کاراکترها (اسم، آدرس و…) مورد استفاده قرار می‌گیرد. اگر از کلیدواژه String استفاده کنیم سلسله‌ای از واحدهای UTF-16 خواهیم داشت. برای دسترسی به UTF-32 باید از Runes استفاده کنیم.

 

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

بولین‌ها (Booleans)

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

فهرست‌ها و نقشه‌ها (Lists and Maps)

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

انواع متغیر Dynamic

دارت از لحاظ نوشتن محدودیت‌های کمتری برای کدنویسان ایجاد می‌کند. اگر نوع متغیر به‌صراحت مشخص نشده باشد، با انواع متغیر پویا (Dynamic) روبرو هستیم. انواع متغیر Dynamic در برابر  متغیر صریح (Explict types) که دقیقا نوع آن تعریف شده است قرار دارد.

 

مقاله پییشنهادی : دلیل اهمیت یادگیری برنامه ‌نویسی دارت چیست
دلیل اهمیت یادگیری برنامه ‌نویسی دارت چیست

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

زمانی که یک متغیر (Variable) را در دارت تعریف می‌کنیم. چند گزینه داریم. اول از همه می‌توانیم از انواع گفته شده در بخش قبلی استفاده کرده و یک متغیر صریح (Explict types) تعریف کنیم. در این صورت آن متغیر می‌تواند هر مقداری را تا زمانی که نوع درست باشد دریافت کند. یک نوع دیگر همانطور که گفتیم انواع متغیر Dynamic است که پس از تعریف می‌تواند هر مقداری از هر نوعی را بگیرد.

 

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

 

راه دیگر تعریف یک متغیر با دستور var (برگرفته از variable) است که این متغیر می‌تواند هر نوع داده‌ای را بگیرد اما پس از مقداردهی اولیه دیگر امکان تغییر نوع برای آن وجود نخواهد داشت. برای تعریف مقادیر ثابت هم از دستورات Final و Const استفاده می‌شود.

اپراتورها در دارت

یک عبارت  (Expression) در برنامه‌نویسی نوعی دستور است که باید به ایجاد یک مقدار نهایی ختم شوند. از دو بخش تشکیل می‌شود.

  • Operands: بخشی که نماینده داده است.
  • Operator: عملیات انجام شده روی داده برای رسیدن به مقدار نهایی را مشخص می‌کند.

 

مقاله پییشنهادی : کاربردهای فریمورک فلاتر چیست
کاربردهای فریمورک فلاتر چیست

 
در یک مثال ساده می‌توان گفت زمانی که دو را با سه جمع می‌کنیم، 2 و 3 operands بوده و علامت جمع Operator یا عملگر است. انواع عملگرها در دارت عبارتند از:

  • عملگرهای حسابی (Arithmetic Operators): همان چهار عمل اصلی ریاضی به همراه انواع تقسیم، افزایش و کاهش
  • اعملگرهای برابری و رابطه‌ای (Equality and Relational Operators): علامت کوچکتر، بزرگتر، برابر، نابراربر، بزرگتر مساوی و کوچکتر مساوی
  • عملگرهای تست نوع (Type test Operators): این عملگر در زمان اجرا تست می‌کند که آیا شی مورد نظر آن نوع خاص از داده را دارد یا خیر.
  • عملگرهای بیتی (Bitwise Operators): عملگرهای AND، OR، XOR، NOT، شیفت چپ و شیفت راست بی‌علامت را روی خانه‌های حافظه (بیت) پیاده می‌کند.
  • عملگرهای واگذاری (Assignment Operators): مقدار سمت چپ راست عملگر را به سمت راست آن تخصیص می‌دهد.
  • عملگرهای منطقی (Logical Operators): عملگرهای منطقی اصلی (And، OR و NOT) را روی شروط مسئله اجرا می‌کند.

توابع در دارت

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

مثال یک: تابع لاندا (تابع Arrow)

 

 

خروجی این تابع Hello 123 خواهد بود.

مثال  دو: تابع بازگشتی (محاسبه فاکتوریل 6)

 

 

خروجی این تابع عدد 720 خواهد بود.

نتیجه گیری

زبان برنامه نویسی دارت یک زبان نوظهور و جوان است که تحت حمایت گوگل قرار دارد. این زبان که به خودی خود برای برنامه‌نویسی وب‌اپلیکیشن‌های تک‌صفحه‌ای و سریع ساخته شده است، در سال 2017 و با ارائه Flutter از سمت گوگل، کاربرد تازه‌ای در ساخت اپلیکیشن برای تمام سیستم‌عامل‌های محبوب موبایل پیدا کرد.

داده در زبان برنامه نویسی دارت

 

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