Flutter Zone | فلاتر و دارت
778 subscribers
514 photos
310 videos
1.07K files
802 links
ناحیه‌ی فلاتر
برای فلاتر
اموزش های فلاتر و دارت از یودمی

لینک گروه : https://t.me/flutterzone_group
Download Telegram
Forwarded from Pure Coder
⚡️⚡️⚡️Dart⚡️⚡️⚡️
Class
1⃣

توی دنیای برنامه نویسی شی گرا هر چیزی تقریبن با یه کلاس شروع میشه.
کلاس ها در واقع یک مدل سازی از دنیای واقعی در دنیای برنامه نویسی هست. یعنی مدل سازی اشیای دنیای واقعی در دنیای برنامه نویسی.

✔️هر کلاس تشکیل شده از یک سری field ها و یکی سری method.
فیلد ها مشخصات و ویژگی های کلاس رو بیان میکنن و متد ها هم عملکرد ها و کارهایی که کلاس انجام میده(فعل ها)

✔️فیلد و متد های یک کلاس میتونن دو حالت داشته باشن
Instance
Static
تفاوتشون به این صورته که instance field ها یا instance method ها در سطح نمونه ها یا object های ساخته شده از کلاس قابل دسترسی اند و static field ها یا static method ها در سطح خود کلاس قابل دسترسی هستن و برای استفاده از اون ها نیازی به ساخت object نیست .

پس life time یا طول عمر instance ها به object ساخته شده بستگی داره و هر وقت object از بین بره اون ها هم دیگ غیر قابل استفاده ان ولی life time اون هایی که static هستن برابر با عمر اپ یا برنامه هست(یعنی از اول تا اخر برنامه).

🔥پس static ها توسط garbage collection از بین نمیرن و اگه حافظه زیادی رو درگیر کنن احتمال داره که باعث memory leak هم بشن.

🔥همه کلاس ها به جز Null از کلاس Object ارث بری میکنن (دقت کنید Null نه null)
#dart
#class
Forwarded from Pure Coder
💊Capsule
⚡️⚡️Future⚡️⚡️
4⃣
خب گفتم که وقتی که یه async function رو کال میکنیم یه object از جنس Future بر میگردونه که در اون لحظه هیچی نداره و در اینده با یه value یا یه error تکمیل میشه.

حالا برای هندل کردنش چکار کنیم؟

🔥دو راه داریم :
استفاده از low level APIs
استفادع از high level built in APIs

هر دو روش معادل هم هستن، که توی پست های آینده اون ها رو بررسی میکنیم.
#capsule #dart
Forwarded from Persian Flutter (PayamZ)
🚀 مقاله جدیدم رو که در مورد Flutter Form Validation هست رو منتشر کردم! 📝 روش هایی که موجود هستند قابلیت reusability رو ندارن بنابر این من یک راهکار جدید پیشنهاد میدم که شما میتونید اون رو تو پروژه های مختلفتون استافده کنید.

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

https://medium.com/@payam-zahedi/flutter-form-validation-beyond-basics-76443e768624

#Flutter #dart 💻
👍2
Forwarded from MohammadAmir Mohammadi
بالاخره وقتش رسید! 🎉🎊

نسخه جدید پکیج persian_datetime_picker منتشر شد!
در این نسخه، پشتیبانی کامل از متریال ۳ و قابلیت شخصی‌سازی فوق‌العاده‌ای فراهم شده. همچنین، این پکیج با افتخار از چندین لوکیشن از جمله فارسی، دری، پشتو و کردی پشتیبانی می‌کنه تا تجربه‌ای یکپارچه و بومی برای کاربران شما رقم بزنه.

اگر نظری، پیشنهادی یا مشکلی داشتید، حتماً با من در میون بذارید؛ خوشحال می‌شم که بازخورد شما رو بشنوم.

با وجود مشغله زیاد، به جامعه فلاتر فارسی اهمیت زیادی می‌دم و با توسعه این پکیج تلاش کردم ارزشی ایجاد کنم. اگه شما هم کمی وقت بذارید و در گیت‌هاب به پروژه بدید، حمایت شما برای من و این پروژه بسیار ارزشمنده 🙏

📥 لینک پکیج در گیت‌هاب: https://github.com/M-amir-M/persian-datetime-picker
#flutter #dart #opensource #persiandatetimepicker #material3 #flutterdev #فلاتر #دارت #اپن_سورس #متریال 3#تاریخ_و_زمان_فارسی #توسعه_دهندگان_فلاتر
👍91
Forwarded from sasan safari
🎯‌ انوتیشن pragma('vm\:entry-point')@ در فلاتر چه کاربردی داره؟

اگه با فلاتر کار می‌کنی و دنبال اجرای آلارم، ‌بک‌گراند تسک یا نوتیف زمان‌بندی‌شده هستی، حتماً به این خط برخوردی:

@pragma('vm:entry-point')


اما دقیقاً این چی کار می‌کنه؟ چرا لازمه؟ ⬇️

به Dart VM می‌گه:

> «این تابع رو نگه‌دار! حتی اگه فک می‌کنی هیچ‌جا استفاده نشده.»

---

📦 کجا لازمه؟

وقتی تابع قراره:
توسط AndroidAlarmManager اجرا بشه
توی isolate جدا اجرا شه
یا بعد از ری‌استارت گوشی بالا بیاد
حتی توی native callback یا background fetch

---

🚫 بدون این خط، Dart ممکنه اون تابع رو تو مرحله build حذف کنه (به خاطر tree-shaking)
و نتیجه‌ش؟
⛔️ آلارم اجرا نمی‌شه
⛔️ هیچ نوتیفی نمیاد
⛔️ هیچ اروری هم نمی‌بینی!

---

✍️ مثال واقعی:

@pragma('vm:entry-point')
Future<void> startFastingCallback() async {
// اجرای آلارم برای شروع فست
}


---

📌 پس اگر داری با:

* AlarmManager
* isolate
* background task
* native callbacks

کار می‌کنی، یادت نره این خط رو اضافه کنی

---

🧠 نکته‌ی طلایی آخر:

> این annotation فقط برای توابعیه که **از مسیر اصلی اپ صدا زده نمی‌شن**، اما توی پس‌زمینه قراره اجرا شن.

---

برای رفقات بفرست 💙
#Flutter #AndroidAlarmManager #BackgroundExecution #Dart

@sasansafari_dev1400
👍6