Flutter | Mahmoud Azab – Telegram
Flutter | Mahmoud Azab
10.2K subscribers
1.82K photos
139 videos
11 files
305 links
اسألني في اي مشكله ان شاء الله أقدر اساعدك
🎃 @mahmoud_azab99 🎃
Download Telegram
سألت نفسك ليه وإنت شغال بـ Bloc دايمًا بتعمل main event يكون abstract؟

وهل لو استغنيت عنه، ممكن يحصل مشكلة؟
زي ما نت شايف في اول صوره مع وبدون

في الطريقة الصحيحة (باستخدام abstract class)، هتلاقي إن Bloc مرتبط بنوع معين من الأحداث وهو AddressesEvents، وده معناه إنه يقبل فقط الأحداث الخاصة به، وبالتالي يمنع تمرير أي بيانات غير صحيحة.

أما في الطريقة الخطأ (بدون abstract class)، Bloc معتمد على Object، وده معناه إنه يقبل أي كائن كحدث، حتى لو مش تابع للـ Bloc ده!

وده مثال في عدم استخدام استخدام ال abstract class

context.read<AddressesBloc>().add("حدث غير صالح");
context.read<AddressesBloc>().add(12345)
❤‍🔥10
مع رابع سؤال في الانترفيو !
اي هي ال copyWith ولي انت مستخدمها عندك وهيحصل اي لو شيلتها من الكود
او بتحل مشكله اي ؟

تخيل معايا كده عندك Class عادي وجيت تعمل منه instance زي اول صوره كده

لو جيت بقا تعدل على قيم ال instance ده مش هتقدر
وهيكون الحل الوحد انك تعمل instance جديد وكده الموضوع هيكون متعب لان هتكرر الاكواد وتخيل بقا لو عندك ٢٠ متغير فده هيكون متعب فعلا وغير صحيح .


وهنا بقا تيجي اهميه ال copyWith
وممكن تسميها زي ما تحب بس المسمي ده عشان هي بتعمل copy فعلا

💡هي بتعمل اي بقا الميثود دي ؟
بتساعدك انك تعمل instance جديد من ال Class بتاعك مع امكانيه تعديل بعض المتغيرات وممكن تسيب متغيرات متعدلش عليها بمعني اصح تحافظ علي قيم المتغيرات الللى معدلتش عليها زي ما هي .

طريقه عمل ال copyWith زي الصوره التانيه مع مثال .


قناه اليوتيوب بنزل عليها شروحات لمواضيع ممكن تفيدك
https://www.youtube.com/@azabcodes
❤‍🔥7🔥4
السلام عليكم ورحمة الله وبركاته
في موضوع معين عايزين له شرح ؟
السلام عليكم ورحمة الله وبركاته.
بجهز لكورس عن
Clean Architecture
وكنت محتاج تطبيق متوفر له
UI & API

اللى يعرف او يقدر يوفر ليا حاجه زي كده
اكون شاكر ليه جدا. و جزاكم الله خيرا
❤‍🔥11🔥4
من الحاجات اللي بستخدمها أساسي في كل مشروع مع الـ
Bloc
هي BuildScreenWhen
وده طبعا بيتم من خلال ال
RequestState

من خلالها بتحكم في اللي يظهر على الشاشة حسب حالة البيانات بكل سهولة، سواء:
loading– لما البيانات لسه بتيجي
loaded – البيانات وصلت وزي الفل
error – حصلت مشكلة
empty – مفيش بيانات أصلًا
noNetwork – الإنترنت فاصل
❤‍🔥13🔥3
السلام عليكم ورحمة الله وبركاته،
إن شاء الله هبدأ في أول سلسلة على القناة وهتكون عن Flavors في Flutter، واللي هتساعدك تتحكم في إصدارات التطبيق بسهولة.
في السلسلة دي، هشرح لك:
تخصيص الأيقونة لكل بيئة (Development | Staging | Production)
إعداد شاشة Splash Screen مخصصة لكل نسخة
ربط كل إصدار بـ Firebase الخاصة بيه

نزلت اول فيديو مقدمه بسيطه عن الموضوع :
https://youtu.be/CpcBDUzRhrY?si=zTol6qiVpykfP9bw
❤‍🔥12🔥81
ممكن برضو تبعت الفيديو ده للمصمم اللي بيعمل الايقونات ليكم لو مش عايزين تعملوهم بنفسكم

السلام عليكم ورحمة الله وبركاته

تاني فيديو من سلسلة Flutter Flavors
في الفيديو ده، هنتعلم إزاي نصمم الأيقونة بنفسنا بحيث تكون Adaptive Icon وتشتغل بشكل مثالي على Android و iOS، وكمان هنحل مشكلة Clipped by OS اللي بتواجه ناس كتير أثناء تصميم الأيقونات.

إيه اللي هنتعلمه في الفيديو؟
إزاي تعمل (Adaptive Icon)؟
إيه الفرق بين Foreground و Background في الأيقونات؟
إزاي تضمن إن الأيقونة متبقاش مقصوصة أو مشوهة على الأجهزة المختلفة؟


https://youtu.be/QI-N3P1RFqk
❤‍🔥9
السلام عليكم ورحمه الله وبركاته .

مع الجزء التالت من سلسلة تعلم الـ Flavors، هنتعلم إزاي نعمل
Splash Screen
مخصصة لكل Environment في مشروع Flutter.
في الفيديو ده، هتعرف:
إزاي تجهز Splash Screen لكل بيئة
(Prod, Dev, Stg)
لو متابعتش السلسله تقدر تشوف الفيديو الجديد من هنا

https://youtu.be/KZMQatgYW4Q
❤‍🔥9
عايز تبعت تحديثات لتطبيقك من غير ما تعيد نشره على المتجر؟!

لو بتشتغل على Flutter، أكيد عارف إن أي تعديل في الكود معناه لازم تبني التطبيق من الأول وترفعه على المتجر وتستنى المراجعة، وده ممكن يكون متعب جدا

لكن مع Shorebird Code Push، تقدر تبعت تحديثات فورية للمستخدمين من غير ما تحتاج ترفع التطبيق من جديد

شوف الفيديو هنا وتعلم إزاي تستخدم Shorebird في تطبيقك
https://youtu.be/LX65WcrwtQc
❤‍🔥17🔥2
السلام عليكم ورحمة الله وبركاته.
تقبل الله منا ومنكم وكل عام وانتم بخير جميعا
عيد فطر مبارك 🌹
❤‍🔥17
السلام عليكم ورحمة الله وبركاته.
ده كورس للتعامل مع
Supabase

كوبون ل١٠٠٠ شخص مجاني.


https://www.udemy.com/course/e-commerce-app-admin-website-using-flutter-supabase/?couponCode=15B2EAFB0E79778205AE
❤‍🔥14
يعني إيه
build()
بتتنده 60 أو 120 مرة في الثانية؟

كل شاشة موبايل ليها معدل تحديث
(Refresh Rate)

لو 60Hz فده معناه إن الشاشة بتعرض 60
فريم في الثانية، يعني معاك 16 ميلي ثانية علشان ترسم كل فريم. 

لو 120Hz فمعاك 8 ميلي ثانية بس.

يعني Flutter بيحاول يرسم الواجهة (UI) في الوقت ده. 

لو
build()
خدت وقت أكتر من كده، الفريم هيتأخر، وساعتها المستخدم هيحس إن التطبيق بيقطع أو بيهنج. وده اسمه frame drop.

عشان كده لازم تخلي
build()
خفيفة وسريعة.

طيب نعمل كده إزاي؟

- قسم الواجهة لـ custom widgets بدل ما تحط كل حاجة جوا widget واحدة.

- استخدم const على قد ما تقدر.

- افصل ال (logic) عن ال (UI) باستخدام State management زي Bloc أو Riverpod.

Flutter
بيساعدك لأنه بيبني بس اللي اتغير، مش كل التطبيق. 
بس الأداء الكويس مسؤوليتك كمطور.
❤‍🔥17
Which Flutter method is responsible for rendering the UI ?
Anonymous Quiz
30%
initState()
59%
build()
5%
dispose()
6%
didChangeDependencies()
❤‍🔥10
السلام عليكم ورحمه الله وبركاته

مطلوب متطوع Back-end Developer

لو إنت متابع القناة، أكيد عارف إنّي كل فترة بفتح الباب لأي حد محتاج مينتور يساعده في المذاكرة أو تنفيذ مشروع، وبندخل سوا على جروب الديسكورد ونتابع التاسكات ونتعلم التصميم أو مواضيع معينة.
الحمد لله فى شباب منهم خلصوا ٤ مشايع .

يعنى الحمد لله، وصلنا لمرحلة كويسة جدًا، عملنا تصاميم حقيقية بالكود، والشباب بدأت تشتغل فعليًا بـ Clean Architecture، وشغلهم بقى محترم جدًا

فاضل خطوة أخيرة، وهي ربط الـ Front-end بالـ API.

❄️❄️❄️ حاليًا عندنا تصميم تطبيق جاهز، بس محتاجين حد يعمل الـ API ويوفرلنا endpoints نشتغل عليها.

لو إنت شغال Back-end بأي لغة
وعايز:
- تساعد ناس بتتعلم
- تطبق على مشروع حقيقي
- تضيف شغل لبورتفوليوك

يبقى الفرصة دي ليك

لو مهتم، ابعتلي على الخاص أو سيب كومنت وأنا هكلمك إن شاء الله.
❤‍🔥12
السلام عليكم ورحمة الله وبركاته
تكملة لسلسلة Flavors في Flutter،
فيديو النهارده نظري شوية علشان نوضح المفاهيم ونعرف الفرق بينهم قبل ما نشتغل عملي

📺 في الفيديو هتعرف:
يعني إيه Flavors في Flutter
يعني إيه Environments
الفرق الحقيقي بين Flavors و Environments
تستخدم مين؟ وإمتى؟ وليه ده مهم في شغلك كمطور؟

متفوتش الفيديو ده لو عايز تفهم البنية الاحترافية لتطبيقات Flutter وتجهّز مشروعك صح من البداية 🚀

https://www.youtube.com/watch?v=t02BP1qhfS0
❤‍🔥6
السلام عليكم ورحمة الله وبركاته،
في فيديو النهارده، واللي هو الجزء الخامس من سلسلة Flavors بدأنا أول تطبيق عملي واستخدمنا فيه flutter_flavorizr علشان نسهل علينا إعداد الفلافورز في المشروع.

في الفيديو ده هتتعلم:

* إزاي تضيف مكتبة flutter_flavorizr وتظبطها
* تعمل Generate تلقائي لملفات الفلافورز
* تحل مشكلة حذف ملف main.dart بعد الـ generate
* تجهز مشروعك يشتغل على أكتر من بيئة (زي dev و prod)

لو بتدور على طريقة تنظّم بيها شغل الفلافورز في Flutter، السلسلة دى هتساعدك كتير.

لينك الفيديو
https://youtu.be/NQz5L5c_F3s
❤‍🔥8
السلام عليكم ورحمه الله وبركاته

الجزء السادس من سلسلة

Flavors in flutter

في الفيديو ده، هنعمل إعداد Flavors على Android خطوة بخطوة، وهنخلي كل إصدار من التطبيق يظهر باسمه وأيقونته الخاصة

https://youtu.be/NHpFJ2nfSrM
❤‍🔥4🔥2
السلام عليكم ورحمه الله وبركاته
الحمد لله خلصنا تطبيق كمان
وهنشتغل ع واحد جديد
متاح انضمام ٤ اشخاص اللي عايز ينضم يبعت ليا
يفضل يكون مستواك كويس عشان نتعامل مع
API
ولو حد مبتدا ممكن يبعت ليا ابعتلي التصميم يعمله ولو وقف معاه حاجه ممكن يسال فيها
❤‍🔥8🔥2
السلام عليكم ورحمة الله وبركاته
عملت باكدج بسيطة تسهلك وقتك في إضافة الإشعارات على Flutter.
لو زهقت تضيف إشعارات بنفسك وتلف على ملفات كتير، باكدج
high_q_notifications
هتسهل عليك المهمة وتخليك تضيف إشعارات بسرعة وبطريقة منظمة.
إيه اللي هتلاقيه في الباكدج دي؟


بتدعم إشعارات Firebase Messaging مع الإشعارات المحلية

تقدر تستخدمها في الخلفية وتتحكم في كل حاجة تخص الإشعارات
فيها CLI بيعمللك كل ملفات الإشعارات المطلوبة في مشروعك أوتوماتيك

بيضيفلك كل البرميشنز اللي محتاجها على Android و iOS

بيظبطلك ملف الـ Swift Delegate في iOS عشان يشتغل مع الإشعارات من غير مشاكل

بيعمل نسخة من ملف الـ main.dart جاهزة فيها إعدادات الباكدج عشان تبدأ بسهولة



https://pub.dev/packages/high_q_notifications
🔥16❤‍🔥6
السلام عليكم ورحمة الله وبركاته
حابب أشارك معاكم التحديث الجديد اللي اشتغلت عليه في الباكدج :
الباكدج دلوقتي بتدعم أحدث نسخة من Gradle، مع إضافة كل الـdependencies المطلوبة.
⚙️ عدلت ملفات الإعدادات على Android وiOS بكل الفيتشرز الممكنة.
🔘 ضفت action buttons في Android.
📣 ضفت notification categories في iOS.
📌 ضفت كل الـlogic الخاص بـtopics عشان يبقى أسهل وأسرع.
📝 وكمان أضفت pull request template لو حد حابب يساهم أو يطورها بطريقة منظمة.

https://pub.dev/packages/high_q_notifications
🔥9❤‍🔥5