This media is not supported in your browser
VIEW IN TELEGRAM
برنامه نویسی با هوش مصنوعی
▪️ربات هوش مصنوعی ChatGBT که چند وقتی هست کاربران را شگفت زده کرده است طی درخواست یکی از کاربران اپلیکیشن ماشین حسابی به زبان دارت و فلاتر را در چند ثانیه به شکل کاملا خودکار طراحی میکند.
به روزهای جایگزینی هوش مصنوعی با انسانها نزدیک میشویم؟
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
▪️ربات هوش مصنوعی ChatGBT که چند وقتی هست کاربران را شگفت زده کرده است طی درخواست یکی از کاربران اپلیکیشن ماشین حسابی به زبان دارت و فلاتر را در چند ثانیه به شکل کاملا خودکار طراحی میکند.
به روزهای جایگزینی هوش مصنوعی با انسانها نزدیک میشویم؟
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
اندروید استودیو Giraffe منتشر شد
▪️ این نسخه در حال حاضر در بخش Canary channel در دسترس میباشد میباشد.
برای آپدیت اگر از channel دیگری استفاده میکنید وارد بخش Appearance & Behaviour -> System settings -> Updates شوید و از قسمت automatically check updates گزینه مورد نظر را انتخاب کنید.
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
▪️ این نسخه در حال حاضر در بخش Canary channel در دسترس میباشد میباشد.
برای آپدیت اگر از channel دیگری استفاده میکنید وارد بخش Appearance & Behaviour -> System settings -> Updates شوید و از قسمت automatically check updates گزینه مورد نظر را انتخاب کنید.
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
نسخه ۳.۷ فلاتر بصورت آلفا منتشر شد
▪️رویداد Flutter forward با هدف نمایش بروزرسانی های مورد انتظار در سال ۲۰۲۳ برگزار شد و در این بین ویژگیهایی از فلاتر ۳.۷ نیز نمایش داده شد.
یکی از هیجان انگیز ترین قابلیتهای معرفی شده امکان استفاده از عناصر فلاتر در صفحات عمومی وب میباشد.
بدین ترتیب عناصر مورد نظر را میتوانید داخل تگ <div> قرار دهید.
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
▪️رویداد Flutter forward با هدف نمایش بروزرسانی های مورد انتظار در سال ۲۰۲۳ برگزار شد و در این بین ویژگیهایی از فلاتر ۳.۷ نیز نمایش داده شد.
یکی از هیجان انگیز ترین قابلیتهای معرفی شده امکان استفاده از عناصر فلاتر در صفحات عمومی وب میباشد.
بدین ترتیب عناصر مورد نظر را میتوانید داخل تگ <div> قرار دهید.
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
نمایش شبیه سازی فیزیکی در اندروید استودیو
▪️خیلی اوقات بجای استفاده از شبیهسازهای اندرویدی به دلیل محدودیتهایی که داره و کاهش سرعت سیستم ترجیح میدیم تا از گوشی هوشمند خودمون به عنوان شبیه ساز استفاده کنیم.
یکی از معایب این روش چک کردن مداوم گوشی هست که با قابلیت Device mirroring میتونید صفحه نمایش گوشی خودتون و در کنار اندروید استودیو یکجا قرار دهید.
این قابلیت هنوز در مرحله آزمایشی هست و ممکن روی بعضی از سیستمها مشکل رزولوشن داشته باشید.
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
▪️خیلی اوقات بجای استفاده از شبیهسازهای اندرویدی به دلیل محدودیتهایی که داره و کاهش سرعت سیستم ترجیح میدیم تا از گوشی هوشمند خودمون به عنوان شبیه ساز استفاده کنیم.
یکی از معایب این روش چک کردن مداوم گوشی هست که با قابلیت Device mirroring میتونید صفحه نمایش گوشی خودتون و در کنار اندروید استودیو یکجا قرار دهید.
این قابلیت هنوز در مرحله آزمایشی هست و ممکن روی بعضی از سیستمها مشکل رزولوشن داشته باشید.
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
تغییر نحوه نمایش لاگ ها
▫️ با استفاده از پکیج Logger میتوانید محتویات نمایش داده شده در بخش لاگ ها را به شکل متفاوتی شخصی سازی کنید.
🌐 Logger package
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
▫️ با استفاده از پکیج Logger میتوانید محتویات نمایش داده شده در بخش لاگ ها را به شکل متفاوتی شخصی سازی کنید.
🌐 Logger package
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
⚜ دوره جدید آموزش فلاتر منتشر ⚜
▪️ بعد از یک سال توقف فروش دورههای آموزشی با پکیج جامع استادی فلاتر بازگشتیم.
▪️این دوره بصورت کاملا پروژه محور و از پایه تا پیشرفته میباشد.
▪️بخشی از سرفصلها:
▫️ پروژه طراحی شبکه اجتماعی
▫️ پیاده سازی درگاه پرداخت آنلاین
▫️فلاتر وب
▫️سوکت نویسی
▫️مدیریت State
▫️پکیج gets
▫️ساخت مرورگر
و دهها محتویات دیگر که برای مشاهده کامل سرفصلهای دوره میتوانید ازلینک زیر استفاده کنید.
🌐 مشاهده دوره آموزشی
▪️ بعد از یک سال توقف فروش دورههای آموزشی با پکیج جامع استادی فلاتر بازگشتیم.
▪️این دوره بصورت کاملا پروژه محور و از پایه تا پیشرفته میباشد.
▪️بخشی از سرفصلها:
▫️ پروژه طراحی شبکه اجتماعی
▫️ پیاده سازی درگاه پرداخت آنلاین
▫️فلاتر وب
▫️سوکت نویسی
▫️مدیریت State
▫️پکیج gets
▫️ساخت مرورگر
و دهها محتویات دیگر که برای مشاهده کامل سرفصلهای دوره میتوانید ازلینک زیر استفاده کنید.
🌐 مشاهده دوره آموزشی
استفاده از یونیتی در فلاتر
▫️ یونیتی موتور بازی سازی قدرتمند و محبوبی است که به توسعه دهندگان امکان طراحی بازی و کامپوننت های سه بعدی مختلفی را میدهد.
اگر قصد دارید تا از محصولات ساخته شده به وسیله یونیتی در فریمورک فلاتر استفاده کنید پکیج flutter_unity_widget این قابلیت را برای شما فراهم میکند.
همچنین با استفاده از این پکیج میتوانید از Unity AR نیز استفاده کنید.
🌐 flutter_unity_widget
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
▫️ یونیتی موتور بازی سازی قدرتمند و محبوبی است که به توسعه دهندگان امکان طراحی بازی و کامپوننت های سه بعدی مختلفی را میدهد.
اگر قصد دارید تا از محصولات ساخته شده به وسیله یونیتی در فریمورک فلاتر استفاده کنید پکیج flutter_unity_widget این قابلیت را برای شما فراهم میکند.
همچنین با استفاده از این پکیج میتوانید از Unity AR نیز استفاده کنید.
🌐 flutter_unity_widget
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
پیاده سازی فرم OTP
▫️ در اپلیکیشن هایی که نیاز به وارد کردن کد تایید ارسالی از طریق ایمیل یا پیام کوتاه می باشد معمولا از فرم های OTP استفاده میشود که هر کاراکتر در خانه مجزا قرار میگیرد.
پکیج pinput در فریمورک فلاتر این نوع فرم را به همراه ده ها قابلیت کاربردی برای شما پیاده سازی میکند.
امکانات این پکیج شامل:
- تشخیص خودکار کد ارسال شده
- اعتبار سنجی فرم
- پیاده سازی انیمیشن
- قابلیت Obscuring متن
🌐 pinput
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
▫️ در اپلیکیشن هایی که نیاز به وارد کردن کد تایید ارسالی از طریق ایمیل یا پیام کوتاه می باشد معمولا از فرم های OTP استفاده میشود که هر کاراکتر در خانه مجزا قرار میگیرد.
پکیج pinput در فریمورک فلاتر این نوع فرم را به همراه ده ها قابلیت کاربردی برای شما پیاده سازی میکند.
امکانات این پکیج شامل:
- تشخیص خودکار کد ارسال شده
- اعتبار سنجی فرم
- پیاده سازی انیمیشن
- قابلیت Obscuring متن
🌐 pinput
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
آخرین روز تخفیف دوره استادی فلاتر
🟣 بدون پیش نیاز کاملا پروژه محور 🟣
🔸 سوکت نویسی
🔸 درگاه پرداخت آنلاین
🔸 پروژه طراحی شبکه اجتماعی
🔸 فلاتر وب
🔸 مدیریت State
🔸 ارتباط با سرور
🔸 طراحی مرورگر
🔸 کار با نقشه و لوکیشن
لینک توضیحات و تهیه دوره 👇
🌐 دوره جامع استادی فلاتر
🟣 بدون پیش نیاز کاملا پروژه محور 🟣
🔸 سوکت نویسی
🔸 درگاه پرداخت آنلاین
🔸 پروژه طراحی شبکه اجتماعی
🔸 فلاتر وب
🔸 مدیریت State
🔸 ارتباط با سرور
🔸 طراحی مرورگر
🔸 کار با نقشه و لوکیشن
لینک توضیحات و تهیه دوره 👇
🌐 دوره جامع استادی فلاتر
پیاده سازی قابلیت کش Cache اطلاعات در فلاتر
▫️ پیاده سازی قابلیت کش ( Cache ) کردن اطلاعات باعث میشود کاربر در هنگام استفاده از اپلیکیشن تجربه بسیار بهتری داشته باشد.
کش کردن اطلاعات بصورت کلی به معنی ذخیره سازی موقت اطلاعات گوناگون بروی سیستم کاربر میباشد که در اینجا میتواند گوشی موبایل یا یک کامپیوتر باشد.
این قابلیت باعث میشود در هنگام استفاده از برنامه کاربر سرعت بیشتری را تجربه کند و از دریافت اطلاعات تکراری
جلوگیری میشود.
در این مقاله قصد داریم تا به پیاده سازی قابلیت کش کردن اطلاعات در فریمورک فلاتر بپردازیم.
🌐 مشاهده آموزش
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
▫️ پیاده سازی قابلیت کش ( Cache ) کردن اطلاعات باعث میشود کاربر در هنگام استفاده از اپلیکیشن تجربه بسیار بهتری داشته باشد.
کش کردن اطلاعات بصورت کلی به معنی ذخیره سازی موقت اطلاعات گوناگون بروی سیستم کاربر میباشد که در اینجا میتواند گوشی موبایل یا یک کامپیوتر باشد.
این قابلیت باعث میشود در هنگام استفاده از برنامه کاربر سرعت بیشتری را تجربه کند و از دریافت اطلاعات تکراری
جلوگیری میشود.
در این مقاله قصد داریم تا به پیاده سازی قابلیت کش کردن اطلاعات در فریمورک فلاتر بپردازیم.
🌐 مشاهده آموزش
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
نسخه جدید اندروید استودیو به نام فلامینگو منتشر شد.
تو این نسخه اکثرا برای اجرای پروژه های فلاتر با خطا مواجه شدن که برای رفع این مشکل میتونید از لینک زیر استفاده کنید.
https://docs.flutter.dev/release/breaking-changes/android-java-gradle-migration-guide
تو این نسخه اکثرا برای اجرای پروژه های فلاتر با خطا مواجه شدن که برای رفع این مشکل میتونید از لینک زیر استفاده کنید.
https://docs.flutter.dev/release/breaking-changes/android-java-gradle-migration-guide
docs.flutter.dev
Android Java Gradle migration guide
How to migrate your Android app if you experience a run or build error from Gradle.
آموزش برنامه نویسی فلاتر Flutter
⚜ دوره جدید آموزش فلاتر منتشر ⚜ ▪️ بعد از یک سال توقف فروش دورههای آموزشی با پکیج جامع استادی فلاتر بازگشتیم. ▪️این دوره بصورت کاملا پروژه محور و از پایه تا پیشرفته میباشد. ▪️بخشی از سرفصلها: ▫️ پروژه طراحی شبکه اجتماعی ▫️ پیاده سازی درگاه پرداخت آنلاین…
💠 عید فطر مبارک 💠
🧑💻به مناسبت عید سعید فطر دوره آموزش استادی فلاتر و میتونید با تخفیف تا روز یکشنبه تهیه کنید.
▪️ آموزش صفر تا صد فریمورک فلاتر به همراه پروژه های عملی طراحی شبکه اجتماعی، چت روم، بازی و...
📥 لینک دوره استادی فلاتر
🧑💻به مناسبت عید سعید فطر دوره آموزش استادی فلاتر و میتونید با تخفیف تا روز یکشنبه تهیه کنید.
▪️ آموزش صفر تا صد فریمورک فلاتر به همراه پروژه های عملی طراحی شبکه اجتماعی، چت روم، بازی و...
📥 لینک دوره استادی فلاتر
آموزش برنامه نویسی فلاتر Flutter
💠 عید فطر مبارک 💠 🧑💻به مناسبت عید سعید فطر دوره آموزش استادی فلاتر و میتونید با تخفیف تا روز یکشنبه تهیه کنید. ▪️ آموزش صفر تا صد فریمورک فلاتر به همراه پروژه های عملی طراحی شبکه اجتماعی، چت روم، بازی و... 📥 لینک دوره استادی فلاتر
⚠️ فقط 10 ساعت تا پایان تخفیف عید فطر ⚠️
استفاده از addAll ممنوع
▫️ فرض کنید دو لیست به نام های list1 و list2 داریم.
در صورتی که بخواهیم اطلاعات لیست دوم را به لیست اول اضافه کنیم و از متد addAll استفاده کنیم
اندازه لیست اول به میزان تعداد عناصر لیست دوم افزایش پیدا میکند.
اگر اندازه لیست دوم m باشد هزینه انجام این عملیات برابر با O(m) است.
اما در روش دوم یعنی استفاده از متد followedBy خروجی کار یک lazy Iterable است که به طول حافظه لیست اول مقداری اضافه نمیکند و به همین دلیل هزینه انجام این عملیات همیشه برابر با O(1) هست.
همچنین اگر روی لیست دوم تغییراتی انجام دهید به شکل خودکار روی Iterable دریافت شده نیز اعمال میشود.
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
▫️ فرض کنید دو لیست به نام های list1 و list2 داریم.
در صورتی که بخواهیم اطلاعات لیست دوم را به لیست اول اضافه کنیم و از متد addAll استفاده کنیم
اندازه لیست اول به میزان تعداد عناصر لیست دوم افزایش پیدا میکند.
اگر اندازه لیست دوم m باشد هزینه انجام این عملیات برابر با O(m) است.
اما در روش دوم یعنی استفاده از متد followedBy خروجی کار یک lazy Iterable است که به طول حافظه لیست اول مقداری اضافه نمیکند و به همین دلیل هزینه انجام این عملیات همیشه برابر با O(1) هست.
همچنین اگر روی لیست دوم تغییراتی انجام دهید به شکل خودکار روی Iterable دریافت شده نیز اعمال میشود.
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
تفاوت ListViewBuilder و SliverList
▪️از هر دو این ویجت ها برای نمایش اطلاعات یک لیست در فلاتر استفاده میکنیم.
ویجت ListViewBuilder در حالت استاندارد هیچگونه مشکلی از نظر عملکرد ندارد و به خوبی میتوانید از آن استفاده کنید.
اما فرض کنید که ListViewBuilder را داخل یک ویجت قابل اسکرول مثل ListView یا SingleChildScrollView قرار میدهیم.
در این حالت ListViewBuilder تمام آیتم های لیست را همزمان رندر میکند نه تنها فقط آیتم هایی که در حال نمایش هستند.
اگر لیست شما اطلاعات زیادی داشته باشید این کار باعث نشت حافظه و یا فریز شدن رابط کاربری تا زمان رندر شدن تمام آیتم ها میشود.
برای حل این مشکل میتوانید از ویجت SliverList داخل CustomScrollView استفاده کنید.
این کار باعث میشود تنها آیتم هایی که نمایش داده میشوند رندر شوند.
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
▪️از هر دو این ویجت ها برای نمایش اطلاعات یک لیست در فلاتر استفاده میکنیم.
ویجت ListViewBuilder در حالت استاندارد هیچگونه مشکلی از نظر عملکرد ندارد و به خوبی میتوانید از آن استفاده کنید.
اما فرض کنید که ListViewBuilder را داخل یک ویجت قابل اسکرول مثل ListView یا SingleChildScrollView قرار میدهیم.
در این حالت ListViewBuilder تمام آیتم های لیست را همزمان رندر میکند نه تنها فقط آیتم هایی که در حال نمایش هستند.
اگر لیست شما اطلاعات زیادی داشته باشید این کار باعث نشت حافظه و یا فریز شدن رابط کاربری تا زمان رندر شدن تمام آیتم ها میشود.
برای حل این مشکل میتوانید از ویجت SliverList داخل CustomScrollView استفاده کنید.
این کار باعث میشود تنها آیتم هایی که نمایش داده میشوند رندر شوند.
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
قابلیت جدید نسخه 3 زبان دارت
▪️در مراسم گوگل I/O 2023 شرکت گوگل از نسخه 3 زبان دارت و فلاتر 3.10 رونمایی کرد که شامل ویژگی هایی جالب توجهی بودند.
در نسخه جدید زبان دارت نوع داده جدیدی به نام Records معرفی شده است که یک نوع داده از خانواده مجموعه هاست و دارای اندازه ثابت و ویژگی تجمیعی میباشد.
در این مجموعه میتوانید در هر بخش یک نوع داده متفاوت ذخیره کنید.
برای مثال در خانه اول یک نوع داده رشته قرار دهید و در خانه دیگر یک داده از نوع عددی.
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
▪️در مراسم گوگل I/O 2023 شرکت گوگل از نسخه 3 زبان دارت و فلاتر 3.10 رونمایی کرد که شامل ویژگی هایی جالب توجهی بودند.
در نسخه جدید زبان دارت نوع داده جدیدی به نام Records معرفی شده است که یک نوع داده از خانواده مجموعه هاست و دارای اندازه ثابت و ویژگی تجمیعی میباشد.
در این مجموعه میتوانید در هر بخش یک نوع داده متفاوت ذخیره کنید.
برای مثال در خانه اول یک نوع داده رشته قرار دهید و در خانه دیگر یک داده از نوع عددی.
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
بازگرداندن بیش از یک مقدار توسط توابع
▪️یکی دیگر از ویژگی های جدید نسخه 3 زبان دارت Pattern ها میباشند.
از Pattern برای مقایسه مقدار و یا شکل نمونه ها استفاده میشود.
با ترکیب ویژگیهای Pattern و Records هم اکنون میتوانیم متدهایی را تعریف کنیم بیش از یک مقدار را بازگردانی کنند.
تا پیش از این هر تابع در زبان دارت امکان این را داشت که فقط یک مقدار را بازگرداند
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir
▪️یکی دیگر از ویژگی های جدید نسخه 3 زبان دارت Pattern ها میباشند.
از Pattern برای مقایسه مقدار و یا شکل نمونه ها استفاده میشود.
با ترکیب ویژگیهای Pattern و Records هم اکنون میتوانیم متدهایی را تعریف کنیم بیش از یک مقدار را بازگردانی کنند.
تا پیش از این هر تابع در زبان دارت امکان این را داشت که فقط یک مقدار را بازگرداند
⚜️اولین مرجع فارسی فلاتر @flutter_learn_ir