آموزش برنامه نویسی فلاتر Flutter
2.03K subscribers
589 photos
68 videos
23 files
283 links
اولین مرجع فارسی آموزش برنامه نویسی فلاتر Flutter

🌐 https://flutter-learn.ir

سوالات برنامه نویسی خودتون در بخش پرسش و پاسخ سایت بپرسید:
🌐 https://flutter-learn.ir/question/


👨‍💻 Admin: @atyscode
Download Telegram
آموزش تست نوشتن TDD در فلاتر

🔻 توسعه مبتنی بر TDD باعث میشود که برنامه طراحی شده قابلیت گسترش, انعطاف پذیری و همچنین باگ های کمتری داشته باشد.
در این روش ابتدا تست های مختلف نوشته شده و سپس کدنویسی آن بخش شروع میشود به همین علت در انتهای کار با برنامه ای مواجه میشوید که تمام تست های مورد نیاز را با موفقیت گذرانده است و به شکل قابل توجهی قابلیت اطمینان برنامه افزایش پیدا میکند.
انواع مختلفی از تست در توسعه نرم افزار وجود دارد که هرکدام نیز به روش های مختلفی پیاده سازی میشوند. در این آموزش به بررسی توسعه TDD محور و آموزش نوشتن تست ویجت میپردازیم👇

🔗آموزش تست نوشتن TDD در فلاتر

⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
تغییرات پکیج Bloc 7.2

🔺 نسخه جدید پکیج بلاک یعنی Bloc 7.2 به تازگی منتشر شده است و شامل تغییرات مهمی است کمی درباره آن در این مطلب صحبت خواهیم کرد.
🔸 مهم ترین تغییر حذف متد mapEventToState و جایگزینی آن با متد جدیدی به نام on<Event> میباشد. تفاوت استفاده از این متد در مقایسه با روش های قبلی را در بالا میتوانید مشاهده کنید.
متد on<Event> شامل یک callback میباشد که در هنگام ایجاد رویداد به خصوصی فراخوانی میشود.
با استفاده از Emitter نیز میتوانید محتویات جدیدی را به state موردنظر منتقل کنید که با این کار رابط کاربری آپدیت میشود.

⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
🔹 تغییر دیگر بلاک 7.2 مربوط API استفاده از پردازش رویدادها به صورت شخصی سازی شده است که در نسخه های قبلی از متد transformEvents برای این کار استفاده میشد اما در نسخه جدید EventTransformer جایگزین آن شده است.
در تصویر نحوه استفاده از این متد جدید را میتوانید مشاهده کنید.

⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
تغییر مهم بعدی در بلاک 7.2 معرفی نسخه پایدار پکیج bloc_concurrency میباشد که این مورد هم نیز مربوط به پردازش رویداد ها میباشد که شامل چهار حالت زیر می باشد:
▫️concurrent
▫️sequential
▫️droppable
▫️restartable

⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
انتشار نسخه 1.0.0 پکیج go_router
▫️ پکیج go_router براساس Navigator 2 طراحی شده و از پلتفرم های مختلف و انواع مسیریابی پشتیبانی میکند.
بخشی از قابلیت های این پکیج:
- پشتیبانی از اندروید، ios، وب
- دیپ لینک، لینک های پویا
- مسیریابی تو در تو
- قابلیت redirection
- مدیریت خطا و دیباگ


⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
دانلود رایگان محصول ProKit - Flutter UI Kit

▫️ محصول فوق العاده ProKit پرفروش ترین کیت توسعه رابط کاربری فلاتر در وبسایت CodeCanyon میباشد که شامل بیش از 1000 صفحه طراحی مختلف میباشد که به رایگان میتوانید آن را دانلود کنید.
▫️ وجود 14 تم, 19 طراحی اپلیکیشن کامل, استفاده از ویجت های مختلف و حرفه ای و بسیاری از امکانات دیگر به شما کمک میکند تا هم در زمان صرفه جویی کنید و هم به عنوان یک منبع خوب آموزشی از آن کمک بگیرید.
▫️ قیمت اصلی پروژه 40 دلار
👇
🔗 پیش نمایش

🔗 دانلود محصول ProKit

⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
▪️ لیست انواع ویجت‌های انیمیشن در فلاتر
سعی کنید در طراحی یک اپلیکیشن حتما از انیمیشن استفاده کنید تا رابط کاربری بصورت خسته کننده نباشد

⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
▪️ علاوه بر نوشتن کدهای تمیز، استفاده از یک ساختار مناسب برای ذخیره سازی فایل‌ها به درک بهتر پروژه توسط سایر هم تیمی‌ها نیز کمک میکند.
برای مثال سعی کنید نام گذاری فایل‌ها، متغیر ها و کلاس ها از یک قاعده ثابت پیروی کند و ناهماهنگی وجود نداشته باشد بعضی از کلاس‌ها با حرف کوچک بعضی بزرگ و بعضی دیگر با _ نوشته شود.
برای دسته بندی فایل ها میتوانید از این ساختار پیشنهادی استفاده کنید.

⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
کتاب Programming Flutter: Native, Cross-Platform Apps the Easy Way

▫️کتاب ارزشمند Programming Flutter از انتشارات Pragmatic Bookshelf برای افرادی که قصد دارند زبان دارت و فریمورک فلاتر را از سطح مقدماتی تا پیشرفته یاد بگیرند بسیار مناسب میباشد.
▫️این کتاب شامل مثال های بسیار زیاد از سناریوهای مختلف و تقریبا تمام ویجت های موجود میباشد. همچنین بحث تست و دیباگ در کتاب نیز پوشش داده شده است.
🔺 اولین منتشر کننده در دو نسخه PDF و EPUB توسط مجموعه فلاتر لرن
🔗 توضیحات آمازون

#کتاب
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
▪️ از امروز محیط توسعه آنلاین DartPad از bloc و flutter_bloc پشتیبانی میکنه و میتونید بدون مشکل استفاده کنید


⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
▪️کار کردن تنهایی با گیت چالش‌های بسیار کمتری نسبت به کار تیمی داره، اما در پروژه های چند نفره وقتی بحث pipeline, pr, merge و خیلی از مسائل دیگه پیش میاد شاید کمی باعث سردرگمی شما بشه، در این لینک در قالب یک بازی با تمام این مسائل آشنا میشوید که خیلی میتونه در یاد گیری این مباحث کمک کننده باشه.

📎 Github Minesweeper

⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
▪️فلش کارت دستورات زبان برنامه نویسی دارت به همراه مثال
فایل با کیفیت کامل پایین👇

⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
flashcard-dart-v1.1.png
8.5 MB
فلش کارت زبان دارت

⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
دانلود اپلیکیشن فروشگاهی فلاتر ۶valley Multi-Vendor E-commerce

▫️ محصول ۶valley Multi-Vendor E-commerce یکی از بهترین و حرفه ای ترین گزینه های ایجاد وبسایت و اپلیکیشن فروشگاهی با قابلیت چند فروشندگی میباشد که با استفاده از فریمورک فلاتر و لاراول طراحی شده است. قیمت این محصول ۶۹$ دلار میباشد.
اولین منتشرکننده
🌐 مشاهده دمو
🔗 دانلود محصول

⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
▪️شرکت اسپاتیفای هم به جمع کاربران فریمورک فلاتر پیوسته است

⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
▪️ متریال دیزاین ۳

⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
#سوال
طبق چرخه حیات فلاتر در صورت وجود یک ویجت Stateful در اولین اجرای برنامه متد build به عنوان چندمین متد اجرا میشود؟ فرض کنید ویجت متد سازنده‌ای ندارد
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
Final Results
23%
اولین متد
31%
دومین متد
37%
سومین متد
10%
چهارمین متد
آموزش برنامه نویسی فلاتر Flutter
#سوال
طبق چرخه حیات فلاتر در صورت وجود یک ویجت Stateful در اولین اجرای برنامه متد build به عنوان چندمین متد اجرا میشود؟ فرض کنید ویجت متد سازنده‌ای ندارد
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
🔻اما بریم سراغ سوال کوییز
فقط 10% جواب صحیح دادن با اینکه سطح سوال پایین بود و امیدوارم این ده درصدم شانسی نزده باشن😁
▫️ زمانی که یک ویجت Stateful داریم اولین متدی که اجرا میشود متد createState که وظیفه ساخت یک state لوکال و برای ویجت جدید درخت ویجت ها دارد.
بعد از این مرحله اگر ویجت شامل متد سازنده نباشد متد initState صدا زده میشود و اگر خطایی وجود نداشته باشه در این مرحله نوبت به متد didChangeDependencies میرسه که بلافاصله بعد از initState اجرا میشود, همچنین هربار تغییری در وابستگی ها رخ دهد این متد مجددا اجرا میشود.
بعد از این سه مرحله نوبت به اجرای متد build که مسئول ساخت view هست میرسه.

⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir