آموزش برنامه نویسی فلاتر 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
معرفی وبسایت Deepcode
▪️ وبسایت Deepcode که مبتنی بر هوش مصنوعی است به شما کمک میکند تا از طریق بارگذاری کدهایتان و بررسی آنها باگ‌های مهم و امنیتی را شناسایی کنید و همچنین نحوه حل آنها را به شما نمایش میدهد.
🔗 Deepcode.ai


⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
پیاده سازی دیتابیس Objectbox در فلاتر

▪️در روند توسعه اپلیکیشن های موبایلی به علت محدودیت‌های موجود معمولا گزینه‌های زیادی برای انتخاب یک دیتابیس وجود ندارد.
در این بین پایگاه داده Objectbox یک دیتابیس غیررابطه‌ای  یا Nosql میباشد که در کنار امکانات مختلف از سرعت ۱۰برابری در انجام عملیات های CRUD نسبت Sqlite بهره میبرد و به یک گزینه بسیار عالی برای استفاده در پروژه های موبایل و اینترنت اشیا تبدیل شده است.
حجم این دیتابیس کمتر از ۱ مگابایت میباشد و قابلیت استفاده همزمان چندین دستگاه از یک دیتابیس را نیز دارد.

🔗 مشاهده آموزش Objectbox

⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
▪️یکی از مواردی که تاثیر منفی روی عملکرد برنامه داره استفاده از Opacity در حالت‌های مختلف میباشد اگر نیاز به پیاده سازی این بخش دارید بجای ویجت Opacity از AnimatedOpacity استفاده کنید.
اگر میخواهید برروی یک تصویر کار کنید ویجت FadeInImage مناسب هست.
اگر هم برای رنگ‌ها نیاز به انجام این عمل دارید مستقیما بروی رنگ این خصیصه را اعمال کنید.

مثال اشتباه
Opacity(opacity: 0.5, child: Container(color: Colors.red))

مثال صحیح

Container( color: Color.fromRGBO(255,0,0,0.5))

⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
This media is not supported in your browser
VIEW IN TELEGRAM
برنامه نویسی با هوش مصنوعی
▪️ربات هوش مصنوعی ChatGBT که چند وقتی هست کاربران را شگفت زده کرده است طی درخواست یکی از کاربران اپلیکیشن ماشین حسابی به زبان دارت و فلاتر را در چند ثانیه به شکل کاملا خودکار طراحی میکند.
به روزهای جایگزینی هوش مصنوعی با انسان‌ها نزدیک میشویم؟

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

▪️ این نسخه در حال حاضر در بخش Canary channel در دسترس میباشد میباشد.
برای آپدیت اگر از channel دیگری استفاده میکنید وارد بخش Appearance & Behaviour -> System settings -> Updates  شوید و از قسمت automatically check updates  گزینه مورد نظر را انتخاب کنید.

⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
نسخه ۳.۷ فلاتر بصورت آلفا منتشر شد

▪️رویداد Flutter forward با هدف نمایش بروزرسانی های  مورد انتظار در سال ۲۰۲۳ برگزار شد و در این بین ویژگی‌هایی از فلاتر ۳.۷ نیز نمایش داده شد.
یکی از هیجان انگیز ترین قابلیت‌های معرفی شده امکان استفاده از عناصر فلاتر  در صفحات عمومی وب میباشد.
بدین ترتیب عناصر مورد نظر را میتوانید داخل تگ <div> قرار دهید.

⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
نمایش شبیه سازی فیزیکی در اندروید استودیو
▪️خیلی اوقات بجای استفاده از  شبیه‌ساز‌های اندرویدی به دلیل محدودیت‌هایی که داره و کاهش سرعت سیستم ترجیح میدیم تا از گوشی هوشمند خودمون به عنوان شبیه ساز استفاده کنیم.
یکی از معایب این روش چک کردن مداوم گوشی هست که با قابلیت Device mirroring میتونید صفحه نمایش گوشی خودتون و در کنار اندروید استودیو یکجا  قرار دهید.
این قابلیت هنوز در مرحله آزمایشی هست و ممکن روی بعضی از سیستم‌ها مشکل رزولوشن داشته باشید.
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
تغییر نحوه نمایش لاگ ها
▫️ با استفاده از پکیج Logger میتوانید محتویات نمایش داده شده در بخش لاگ ها را به شکل متفاوتی شخصی سازی کنید.
🌐 Logger package

⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
دوره جدید آموزش فلاتر منتشر

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

▪️این دوره بصورت کاملا پروژه محور و از پایه تا پیشرفته میباشد.

▪️بخشی از سرفصل‌ها:
▫️ پروژه طراحی شبکه اجتماعی
▫️ پیاده سازی درگاه پرداخت آنلاین
▫️فلاتر وب
▫️سوکت نویسی
▫️مدیریت State
▫️پکیج gets
▫️ساخت مرورگر

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

🌐 مشاهده دوره آموزشی
استفاده از یونیتی در فلاتر
▫️ یونیتی موتور بازی سازی قدرتمند و محبوبی است که به توسعه دهندگان امکان طراحی بازی و کامپوننت های سه بعدی مختلفی را میدهد.
اگر قصد دارید تا از محصولات ساخته شده به وسیله یونیتی در فریمورک فلاتر استفاده کنید پکیج flutter_unity_widget این قابلیت را برای شما فراهم میکند.
همچنین با استفاده از این پکیج میتوانید از Unity AR نیز استفاده کنید.
🌐 flutter_unity_widget

⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
پیاده سازی فرم OTP
▫️ در اپلیکیشن هایی که نیاز به وارد کردن کد تایید ارسالی از طریق ایمیل یا پیام کوتاه می باشد معمولا از فرم های OTP استفاده میشود که هر کاراکتر در خانه مجزا قرار میگیرد.
پکیج pinput در فریمورک فلاتر این نوع فرم را به همراه ده ها قابلیت کاربردی برای شما پیاده سازی میکند.
امکانات این پکیج شامل:
- تشخیص خودکار کد ارسال شده
- اعتبار سنجی فرم
- پیاده سازی انیمیشن
- قابلیت Obscuring متن
🌐 pinput

⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
آخرین روز تخفیف دوره استادی فلاتر
🟣 بدون پیش نیاز کاملا پروژه محور 🟣

🔸 سوکت نویسی
🔸 درگاه پرداخت آنلاین
🔸 پروژه طراحی شبکه اجتماعی
🔸 فلاتر وب
🔸 مدیریت State
🔸 ارتباط با سرور
🔸 طراحی مرورگر
🔸 کار با نقشه و لوکیشن

لینک توضیحات و تهیه دوره 👇

🌐 دوره جامع استادی فلاتر
پیاده سازی قابلیت کش Cache اطلاعات در فلاتر
▫️ پیاده سازی قابلیت کش ( Cache ) کردن اطلاعات باعث میشود کاربر در هنگام استفاده از اپلیکیشن تجربه بسیار بهتری داشته باشد.

کش کردن اطلاعات بصورت کلی به معنی ذخیره سازی موقت اطلاعات گوناگون بروی سیستم کاربر میباشد که در اینجا میتواند گوشی موبایل یا یک کامپیوتر باشد.

این قابلیت باعث میشود در هنگام استفاده از برنامه کاربر سرعت بیشتری را تجربه کند و از دریافت اطلاعات تکراری

جلوگیری میشود.

در این مقاله قصد داریم تا به پیاده سازی قابلیت کش کردن اطلاعات در فریمورک فلاتر بپردازیم.

🌐 مشاهده آموزش


⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
نسخه جدید اندروید استودیو به نام فلامینگو منتشر شد.
تو این نسخه اکثرا برای اجرای پروژه های فلاتر با خطا مواجه شدن که برای رفع این مشکل میتونید از لینک زیر استفاده کنید.
https://docs.flutter.dev/release/breaking-changes/android-java-gradle-migration-guide
استفاده از addAll ممنوع

▫️ فرض کنید دو لیست به نام های list1 و list2 داریم.
در صورتی که بخواهیم اطلاعات لیست دوم را به لیست اول اضافه کنیم و از متد addAll استفاده کنیم
اندازه لیست اول به میزان تعداد عناصر لیست دوم افزایش پیدا میکند.
اگر اندازه لیست دوم m باشد هزینه انجام این عملیات برابر با O(m) است.
اما در روش دوم یعنی استفاده از متد followedBy خروجی کار یک lazy Iterable است که به طول حافظه لیست اول مقداری اضافه نمیکند و به همین دلیل هزینه انجام این عملیات همیشه برابر با O(1) هست.
همچنین اگر روی لیست دوم تغییراتی انجام دهید به شکل خودکار روی Iterable دریافت شده نیز اعمال میشود.


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