نوید
نوید
خواندن ۳ دقیقه·۵ سال پیش

چگونه میشود یک سورس کد مالتی پلتفرم با زبان Dart ایجاد کرد؟

دارت به همراه دو فریم ورک معروف آن فلاتر و انگولار
دارت به همراه دو فریم ورک معروف آن فلاتر و انگولار


چگونه میشود یک سورس کد مالتی پلتفرم با زبان dart ایجاد کرد؟

در یک جواب کوتاه باید بگم خیلی ساده (;

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

حالا بیاید با یک لنز بسته تر نگاه کنیم، تیم های تولید نرم افزار هم برای توسعه و رشد نیاز به انباشت دارند تا بتوانند ماندگار تر باشند.

خب انباشت یعنی چی؟ معنی این لغت عمق گسترده ای داره و استنباط های نسبی زیاده ازش، اما همه اینها بر پایه یک مبنای ساده هستند: خروجی کارهایی که انجام میشود باید قابلیت استفاده مجدد رو در آینده داشته باشند، با این مبنا میشه معنای خیلی واژه های دیگر رو هم درک کرد، مثلا کشور های توسعه یافته ;)

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

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

اکنون در نقطه ای از تاریخ هستیم که میشه یک سورس کد با خروجی های مختلف (اندروید، IOS، وب، لینوکس، ویندوز) داشت.

لطفا تعجب نکنید واقعا مکانش مهیا شده (;

حالا بریم سر اصل مطلب، چگونه میشود یک سورس کد مالتی پلتفرم با زبان Dart ایجاد کرد؟

دارت یک زبان برنامه نویسی با کاربرد های عمومی است که سال 2018 نسخه 2 آن معرفی شد. این زبان برای توسعه اپلیکیشن های مالتی پلتفرم (موبایل، دسکتاپ، بکند و وب) ساخته شده و توسط گوگل پشتیبانی میشود.

قابلیت dart2native در نسخه 2.7 (آخرین بروز رسانی) این امکان رو بوجود میاره که مستقیم برنامه خط فرمانی رو که نوشتید به نسخه native تبدیل کنید.

قبل تر این کار توسط دو فریم ورک معروف آن یعنی Flutter و AngularDart انجام میشد، این فریم ورک ها به ترتیب برای "تولید برنامه های موبایل" و "تولید وب اپلیکیشن ها" مورد استفاده قرار میگیرند.

در نهایت با توضیحاتی که دادم میخوام بگم در صورتی که با دارت کار کنید شما میتونید لاجیک ای که برای نسخه موبایل (استفاده از Flutter) مینویسید را مجدد در نسخه وب (استفاده از AngularDart) استفاده کنید. البته همه چیز به این راحتی نیست یه مقدار باید متفکر باشید تا بتوانید کاربرد های اشتراکی در لاجیکتون ایجاد کنید.

من حدود دوساله که تجربه استفاده از این دو فریم ورک را دارم و در تجربم به این سه مرحله کلی رسیدم:

  1. لاجیک اشتراکی رو در یک پروژه مجزا کدنویسی کنید.
  2. سپس لینک گیت آن را به عنوان dependency به پروژه Flutter یا AngularDart اضافه کنید.
  3. از الگوی BloC در رابط کاربری خود استفاده کنید، این الگو شرایطی رو مهیا میکنه که بتونید لاجیک رو در رابط کاربری به راحتی استفاده کنید.

احتمالا لازم باشه یه مقدار تحقیق کنید چون توانایی این متن در حد ارائه یه سرنخ بود.در آینده بیشتر راجب Dart مینویسم. ممنون که تا اینجا همراهم شدید (:


پ.ن - من عمدا شکل کتابی برخی از کلمات رو میشکونم.

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