السلام عليكم ورحمة الله وبركاته
فيديو بسيط بوضح فيه ازاي تعمل ترجمه لاسم التطبيق بتاعك علي حسب لغه الموبايل
https://youtu.be/33Mwz8HyXuQ?si=TIgFwON20RJ6691c
فيديو بسيط بوضح فيه ازاي تعمل ترجمه لاسم التطبيق بتاعك علي حسب لغه الموبايل
https://youtu.be/33Mwz8HyXuQ?si=TIgFwON20RJ6691c
YouTube
How to localize AppName in Flutter ? (Arabic Edition)
❤🔥4
GraphQL ♦️VS REST API
https://www.linkedin.com/posts/alhassan-balousha-9b7bb8114_flutter-activity-7244955875201740800-b249?utm_source=share&utm_medium=member_ios
https://www.linkedin.com/posts/alhassan-balousha-9b7bb8114_flutter-activity-7244955875201740800-b249?utm_source=share&utm_medium=member_ios
Linkedin
**الفرق بين REST API و GraphQL عند التعامل مع Api فيها تفاصيل وبيانات كبيرة | AlHassan Balousha
**الفرق بين REST API و GraphQL عند التعامل مع Api فيها تفاصيل وبيانات كبيرة
خلينا نفترض أن لدينا تطبيق متجر فيه شاشتين:
1.
شاشة قائمة المنتجات: فيها تفاصيل كاملة مثل name، price، image، description، وغيرها.
2.
شاشة قائمة مختصرة: تحتوي فقط على الاسم والسعر.…
خلينا نفترض أن لدينا تطبيق متجر فيه شاشتين:
1.
شاشة قائمة المنتجات: فيها تفاصيل كاملة مثل name، price، image، description، وغيرها.
2.
شاشة قائمة مختصرة: تحتوي فقط على الاسم والسعر.…
❤🔥1
https://www.figma.com/design/czkRpUoU7NxIaDNrf41nol/Telegram?node-id=0-1&t=JaAdV1QsfLaGTTbn-1
اللي عايز يتدرب علي مشروع
ده تصميم مشروع متجر
اعتبروه تحدي واعملوه كتدريب ليكم
بالتوفيق ان شاء الله ❤️
اللي عايز يتدرب علي مشروع
ده تصميم مشروع متجر
اعتبروه تحدي واعملوه كتدريب ليكم
بالتوفيق ان شاء الله ❤️
🔥10❤🔥2
السلام عليكم ورحمة الله وبركاته
طريقه حذف كل ال
Print
اللي عندك في الكود واللي بتأثر علي آداء تطبيقك
https://www.linkedin.com/posts/mazap64_%D9%83%D9%85%D8%B7%D9%88%D8%B1%D9%8A%D9%86-%D8%A8%D9%86%D8%B3%D8%AA%D8%AE%D8%AF%D9%85-print-%D9%83%D8%AA%D9%8A%D8%B1-%D8%B9%D8%B4%D8%A7%D9%86-%D9%86%D8%B9%D8%B1%D9%81-activity-7254054778396155904-m4hx?utm_source=share&utm_medium=member_android
طريقه حذف كل ال
اللي عندك في الكود واللي بتأثر علي آداء تطبيقك
https://www.linkedin.com/posts/mazap64_%D9%83%D9%85%D8%B7%D9%88%D8%B1%D9%8A%D9%86-%D8%A8%D9%86%D8%B3%D8%AA%D8%AE%D8%AF%D9%85-print-%D9%83%D8%AA%D9%8A%D8%B1-%D8%B9%D8%B4%D8%A7%D9%86-%D9%86%D8%B9%D8%B1%D9%81-activity-7254054778396155904-m4hx?utm_source=share&utm_medium=member_android
Linkedin
Sign Up | LinkedIn
500 million+ members | Manage your professional identity. Build and engage with your professional network. Access knowledge, insights and opportunities.
❤🔥5🔥1
السلام عليكم ورحمة الله وبركاته
مفهوم ال
Widget Lifecycle
ومراحلها في
Stateful widget
ان شاء الله يفيدكم
https://www.linkedin.com/posts/mazap64_%D9%81%D9%87%D9%85-widget-lifecycle-%D9%81%D9%8A-flutter-activity-7254829366164000769-jUw-?utm_source=share&utm_medium=member_android
مفهوم ال
Widget Lifecycle
ومراحلها في
Stateful widget
ان شاء الله يفيدكم
https://www.linkedin.com/posts/mazap64_%D9%81%D9%87%D9%85-widget-lifecycle-%D9%81%D9%8A-flutter-activity-7254829366164000769-jUw-?utm_source=share&utm_medium=member_android
Linkedin
Sign Up | LinkedIn
500 million+ members | Manage your professional identity. Build and engage with your professional network. Access knowledge, insights and opportunities.
❤🔥1🔥1
🔥تحسين أداء تطبيقات Flutter باستخدام
Keys
سر لا يعرفه الكثيرون
أحد المفاهيم المهمة اللي العديد من المطورين لا ينتبهون لها في Flutter هو Keys. استخدام الـ Keys بشكل صحيح يمكن أن يحل مشاكل الأداء والمشاكل الغامضة في بناء واجهة المستخدم.
✅️ ما هي Keys في Flutter؟
الـ Keys تساعد Flutter في التمييز بين widgets المختلفة عند حدوث تغييرات كبيرة في الواجهة. عند استخدام keys، نضمن أن الـ widgets تتحرك أو تتغير بناءً على هويتها الفريدة، وليس فقط بناءً على ترتيبها في الواجهة.
✅️ لماذا نستخدم Keys؟
✔️ الحفاظ على حالة الواجهة: عند إعادة ترتيب الـ widgets داخل الـ widget tree، استخدام keys يضمن أن حالة الـ widgets لا تضيع.
✔️ تحسين الأداء: استخدام keys بشكل صحيح يقلل من إعادة بناء أجزاء كبيرة من الواجهة، مما يحسن من الأداء.
✔️ حل مشاكل إعادة ترتيب العناصر: على سبيل المثال، إذا كان لديك ListView وتقوم بإضافة أو حذف عناصر، من دون الـ keys قد يقوم Flutter بإعادة بناء كل العناصر بدلاً من التركيز على العناصر التي تغيرت فقط.
✅️ أنواع الـ Keys:
1️⃣ GlobalKey:
هذا النوع من keys
يمنح الـ widget هوية فريدة على مستوى التطبيق بأكمله، وليس فقط داخل شجرة معينة. نستخدمه عندما نحتاج للوصول إلى حالة الـ widget من أي مكان في التطبيق أو عند التنقل بين الشاشات.
final GlobalKey<ScaffoldState> _scaffoldKey = GlobalKey<ScaffoldState>();
@override
Widget build(BuildContext context) {
return Scaffold(
key: _scaffoldKey,
appBar: AppBar(
title: Text('Using GlobalKey'),
),
body: Center(
child: Text('Hello World'),
),
);
}
2️⃣ UniqueKey:
هذا الـ Key فريد لكل مرة يتم استدعاؤه فيها. مفيد عندما تحتاج إلى أن يقوم Flutter بإعادة بناء الـ widget في كل مرة، حتى إذا لم يتغير موقعه في الـ widget tree.
List<Widget> items = [
Container(
key: UniqueKey()
, color: Colors.red, height: 50
),
Container(
key: UniqueKey(),
color: Colors.blue, height: 50),
];
3️⃣ ValueKey:
هذا النوع يكون مفيدًا عندما يكون لديك قيمة معينة تحدد بها تميز الـ widgets.
على سبيل المثال، ListView
وكل عنصر لديه id أو name فريد.
List<String> names =
['Mahmoud', 'Ahmed', 'Usama'];
@override
Widget build(BuildContext context) {
return ListView(
children: names.map((name) {
return ListTile(
key: ValueKey(name),
title: Text(name),
);
}).toList(),
);
}
https://www.linkedin.com/posts/mazap64_flutter-dart-activity-7255194849077854208-HQ1C?utm_source=share&utm_medium=member_android
Keys
سر لا يعرفه الكثيرون
أحد المفاهيم المهمة اللي العديد من المطورين لا ينتبهون لها في Flutter هو Keys. استخدام الـ Keys بشكل صحيح يمكن أن يحل مشاكل الأداء والمشاكل الغامضة في بناء واجهة المستخدم.
✅️ ما هي Keys في Flutter؟
الـ Keys تساعد Flutter في التمييز بين widgets المختلفة عند حدوث تغييرات كبيرة في الواجهة. عند استخدام keys، نضمن أن الـ widgets تتحرك أو تتغير بناءً على هويتها الفريدة، وليس فقط بناءً على ترتيبها في الواجهة.
✅️ لماذا نستخدم Keys؟
✔️ الحفاظ على حالة الواجهة: عند إعادة ترتيب الـ widgets داخل الـ widget tree، استخدام keys يضمن أن حالة الـ widgets لا تضيع.
✔️ تحسين الأداء: استخدام keys بشكل صحيح يقلل من إعادة بناء أجزاء كبيرة من الواجهة، مما يحسن من الأداء.
✔️ حل مشاكل إعادة ترتيب العناصر: على سبيل المثال، إذا كان لديك ListView وتقوم بإضافة أو حذف عناصر، من دون الـ keys قد يقوم Flutter بإعادة بناء كل العناصر بدلاً من التركيز على العناصر التي تغيرت فقط.
✅️ أنواع الـ Keys:
1️⃣ GlobalKey:
هذا النوع من keys
يمنح الـ widget هوية فريدة على مستوى التطبيق بأكمله، وليس فقط داخل شجرة معينة. نستخدمه عندما نحتاج للوصول إلى حالة الـ widget من أي مكان في التطبيق أو عند التنقل بين الشاشات.
final GlobalKey<ScaffoldState> _scaffoldKey = GlobalKey<ScaffoldState>();
@override
Widget build(BuildContext context) {
return Scaffold(
key: _scaffoldKey,
appBar: AppBar(
title: Text('Using GlobalKey'),
),
body: Center(
child: Text('Hello World'),
),
);
}
2️⃣ UniqueKey:
هذا الـ Key فريد لكل مرة يتم استدعاؤه فيها. مفيد عندما تحتاج إلى أن يقوم Flutter بإعادة بناء الـ widget في كل مرة، حتى إذا لم يتغير موقعه في الـ widget tree.
List<Widget> items = [
Container(
key: UniqueKey()
, color: Colors.red, height: 50
),
Container(
key: UniqueKey(),
color: Colors.blue, height: 50),
];
3️⃣ ValueKey:
هذا النوع يكون مفيدًا عندما يكون لديك قيمة معينة تحدد بها تميز الـ widgets.
على سبيل المثال، ListView
وكل عنصر لديه id أو name فريد.
List<String> names =
['Mahmoud', 'Ahmed', 'Usama'];
@override
Widget build(BuildContext context) {
return ListView(
children: names.map((name) {
return ListTile(
key: ValueKey(name),
title: Text(name),
);
}).toList(),
);
}
https://www.linkedin.com/posts/mazap64_flutter-dart-activity-7255194849077854208-HQ1C?utm_source=share&utm_medium=member_android
🔥14❤🔥4🆒1
اللَّهُمَّ صَلِّ عَلَى مُحَمَّدٍ، وَعَلَى آلِ مُحَمَّدٍ، كَمَا صَلَّيْتَ عَلَى إِبْرَاهِيمَ، وَعَلَى آلِ إِبْرَاهِيمَ، إِنَّكَ حَمِيدٌ مَجِيدٌ، وَبَارِكْ عَلَى مُحَمَّدٍ، وَعَلَى آلِ مُحَمَّدٍ، كَمَا بَارَكْتَ عَلَى إِبْرَاهِيمَ، وَعَلَى آلِ إِبْرَاهِيمَ، فِي الْعَالَمِينَ إِنَّكَ حَمِيدٌ مَجِيدٌ🤍
❤🔥11
إزاي تستخدم
مع ملف إعدادات منفصل في Flutter؟
لو إنت مطور Flutter، أكيد عارف إن الأيقونة بتاعت التطبيق مهمة جدًا. في البوست ده، هشارك معاك إزاي تستخدم مكتبة
✅️ الخطوات:
1️⃣ إنشاء ملف الإعدادات :
أول حاجة، اعمل ملف جديد في فولدر المشروع بتاعك اسمه
2️⃣ إضافة إعدادات الأيقونة :
افتح الملف وضيف إعدادات الأيقونة بتاعتك. هنا نموذج بسيط لشكل المحتوى:
flutter_launcher_icons:
android: true
ios: true
image_path: "assets/icon/app_icon.png"
تأكد إنك تعدل
3️⃣ تشغيل الأمر :
بعد ما تخلص إعداد الملف، شغل الأمر ده في التيرمينال:
dart run flutter_launcher_icons --file flutter_launcher_icons.yaml
الأيقونات:
🔹 أيقونة التطبيق: تأكد إن الأيقونة اللي هتستخدمها موجودة في المسار المحدد.
🔹 أيقونات Android : تأكد إن الأيقونات بتظهر بشكل صحيح على أجهزة Android.
🔹 أيقونات iOS : لازم تتأكد إن الأيقونات متوافقة مع متطلبات iOS.
بكده، تقدر تخصص أيقونة التطبيق بتاعك بسهولة. أتمنى تكون الخطوات دي مفيدة ليك، ولو عندك أي استفسارات، متترددش تسأل!
ان شاءالله هعمل فيديو أشرح فيه ازاي تعمل أيقونة التطبيق بنفسك وتكون مطابقه للشروط
https://www.linkedin.com/posts/mazap64_mahmoudabrazab-activity-7255578920169742336-u8i4?utm_source=share&utm_medium=member_android
flutter_launcher_icons
مع ملف إعدادات منفصل في Flutter؟
لو إنت مطور Flutter، أكيد عارف إن الأيقونة بتاعت التطبيق مهمة جدًا. في البوست ده، هشارك معاك إزاي تستخدم مكتبة
flutter_launcher_icons
علشان تخصص أيقونة التطبيق بتاعك بطريقة سهلة، باستخدام ملف إعدادات منفصل.✅️ الخطوات:
1️⃣ إنشاء ملف الإعدادات :
أول حاجة، اعمل ملف جديد في فولدر المشروع بتاعك اسمه
flutter_launcher_icons.yaml
.2️⃣ إضافة إعدادات الأيقونة :
افتح الملف وضيف إعدادات الأيقونة بتاعتك. هنا نموذج بسيط لشكل المحتوى:
flutter_launcher_icons:
android: true
ios: true
image_path: "assets/icon/app_icon.png"
تأكد إنك تعدل
image_path
بحيث يشير لمسار ملف الأيقونة اللي عندك.3️⃣ تشغيل الأمر :
بعد ما تخلص إعداد الملف، شغل الأمر ده في التيرمينال:
dart run flutter_launcher_icons --file flutter_launcher_icons.yaml
الأيقونات:
🔹 أيقونة التطبيق: تأكد إن الأيقونة اللي هتستخدمها موجودة في المسار المحدد.
🔹 أيقونات Android : تأكد إن الأيقونات بتظهر بشكل صحيح على أجهزة Android.
🔹 أيقونات iOS : لازم تتأكد إن الأيقونات متوافقة مع متطلبات iOS.
بكده، تقدر تخصص أيقونة التطبيق بتاعك بسهولة. أتمنى تكون الخطوات دي مفيدة ليك، ولو عندك أي استفسارات، متترددش تسأل!
ان شاءالله هعمل فيديو أشرح فيه ازاي تعمل أيقونة التطبيق بنفسك وتكون مطابقه للشروط
https://www.linkedin.com/posts/mazap64_mahmoudabrazab-activity-7255578920169742336-u8i4?utm_source=share&utm_medium=member_android
❤🔥8🔥1
السلام عليكم ورحمة الله وبركاته
ده شرح من اخونا محمد عن ال
Cubit , Bloc
لينك ال
Post on LinkedIn
https://www.linkedin.com/posts/mohammed-al-amrousi-coding_bloc-state-mangement-activity-7257100578512687104-7S3k?utm_source=share&utm_medium=member_android
ده شرح من اخونا محمد عن ال
Cubit , Bloc
لينك ال
Post on LinkedIn
https://www.linkedin.com/posts/mohammed-al-amrousi-coding_bloc-state-mangement-activity-7257100578512687104-7S3k?utm_source=share&utm_medium=member_android
Linkedin
Sign Up | LinkedIn
500 million+ members | Manage your professional identity. Build and engage with your professional network. Access knowledge, insights and opportunities.
❤🔥5
كورس جديد للبشمهندس وائل ابو حمزه
تم البدء بكورس Dart الجديد
الهدف منو طريقة شرح افضل بكثير من السابق وعلاج بعض المشاكل التي حصلت بسبب التحديثات ولح يتم شرح امور كتير اضافية الكورس منتهي وسيتم رفع ٣ دروس يوميا
باقي الكورسات بالقناة جميعها تم تحديثها ومتبقي كورس Dart الذي يتم رفعه حاليا
رابط الكورس https://youtube.com/playlist?list=PL93xoMrxRJIutlMCImcV3CYMmjS0MmlWL&si=IG9ULcncgv7G73gv
سيتم العمل قريبا على كورسات التالية
1 - Zego Cloud ( Voice Call - Video Call - Room - etc .....)
2 - Bloc
3 - Git & Github Social Coding
4 - Unit Testing
تم البدء بكورس Dart الجديد
الهدف منو طريقة شرح افضل بكثير من السابق وعلاج بعض المشاكل التي حصلت بسبب التحديثات ولح يتم شرح امور كتير اضافية الكورس منتهي وسيتم رفع ٣ دروس يوميا
باقي الكورسات بالقناة جميعها تم تحديثها ومتبقي كورس Dart الذي يتم رفعه حاليا
رابط الكورس https://youtube.com/playlist?list=PL93xoMrxRJIutlMCImcV3CYMmjS0MmlWL&si=IG9ULcncgv7G73gv
سيتم العمل قريبا على كورسات التالية
1 - Zego Cloud ( Voice Call - Video Call - Room - etc .....)
2 - Bloc
3 - Git & Github Social Coding
4 - Unit Testing
YouTube
learn dart from scratch 2024 - 2025
learn tutorial course dart 2024 from zero to hero mastering dart تعلم لغة دارت من الصفر الى الاحتراف مع امثلة وتطبيقات - كورس احتراف لغة الدارت
❤🔥12🔥6
📅 يبدأ التوقيت الشتوي في مصر يوم الخميس 31 أكتوبر 2024 بإذن الله.
📿 وهذه مواقيت الصلاة الجديدة بعد تغيُر الساعة بدءًا من مساء الخميس حسب توقيت القاهرة:
• الفجر: 4:41 صباحًا.
• الشروق: 6:09 صباحًا.
• الظهر: 11:39 ظهرًا.
• العصر: 2:44 عصرًا.
• المغرب: 5:08 مساءً.
• العشاء: 6:26 مساءً.
🕊️ (وذكر فإن الذكرى تنفع المؤمنين)
📿 وهذه مواقيت الصلاة الجديدة بعد تغيُر الساعة بدءًا من مساء الخميس حسب توقيت القاهرة:
• الفجر: 4:41 صباحًا.
• الشروق: 6:09 صباحًا.
• الظهر: 11:39 ظهرًا.
• العصر: 2:44 عصرًا.
• المغرب: 5:08 مساءً.
• العشاء: 6:26 مساءً.
🕊️ (وذكر فإن الذكرى تنفع المؤمنين)
❤🔥21🤯1🏆1
#منقول
ازاي تعلم اي حد OOP كويس ؟
بسيطه. اشرحله Class, Encapsulation, Abstraction, Polymorphism و خلافه.
لا مش دا احسن بدايه.
امال ايه ؟
اشرحله ال Procedural Code و اخليه ينفذ المطلوب في مساله بهذا الطريق. و اطلب منه بعدها يعدل الكود او يضيف اليه.
ساعتها بقي هيشوف عيوب Procedural Code و من هنا بقي تقدر تقوله ازاي ال OOP بيحلها.
البوست دا بيلخص طريقه انا شايفها ناجحه جدا لشرح ال OOP و كمان توجه عام لشرح اي موضوع. ابدا من المشكله و بعدين قدم الحل.
بكده الناس تفهم الحل و تستوعب الياته.
لو محدش شرحلك ال OOP كده (غالبا يعني) جرب انت بقي تقرا عن Procedural Code و تفهم عيوبه و بعيدن شوف ال OOP ازاي بيحلها.
لو عملت كده هتعرف تستخدم ال OOP كويس جدا و هتشوف مثلا ازاي ال Encapsulation بيحمي ال Object و ازاي ال Polymorphism بيخلي الكود مفيهوش Conditions تربك اللي بيقرا الكود و تخبي المعني في قلب اللي كتب الكود و يدوخ اللي وراه.
ابدا من المشاكل علشان تشرح الحلول.
ابدا من المشاكل علشان تشرح الحلول.
ابدا من المشاكل علشان تشرح الحلول.
يا ريت اساتذتنا القائمين علي تدريس Software Engineering يعملوا كده. هيفرق في فهم الطلبه كتير.
ازاي تعلم اي حد OOP كويس ؟
بسيطه. اشرحله Class, Encapsulation, Abstraction, Polymorphism و خلافه.
لا مش دا احسن بدايه.
امال ايه ؟
اشرحله ال Procedural Code و اخليه ينفذ المطلوب في مساله بهذا الطريق. و اطلب منه بعدها يعدل الكود او يضيف اليه.
ساعتها بقي هيشوف عيوب Procedural Code و من هنا بقي تقدر تقوله ازاي ال OOP بيحلها.
البوست دا بيلخص طريقه انا شايفها ناجحه جدا لشرح ال OOP و كمان توجه عام لشرح اي موضوع. ابدا من المشكله و بعدين قدم الحل.
بكده الناس تفهم الحل و تستوعب الياته.
لو محدش شرحلك ال OOP كده (غالبا يعني) جرب انت بقي تقرا عن Procedural Code و تفهم عيوبه و بعيدن شوف ال OOP ازاي بيحلها.
لو عملت كده هتعرف تستخدم ال OOP كويس جدا و هتشوف مثلا ازاي ال Encapsulation بيحمي ال Object و ازاي ال Polymorphism بيخلي الكود مفيهوش Conditions تربك اللي بيقرا الكود و تخبي المعني في قلب اللي كتب الكود و يدوخ اللي وراه.
ابدا من المشاكل علشان تشرح الحلول.
ابدا من المشاكل علشان تشرح الحلول.
ابدا من المشاكل علشان تشرح الحلول.
يا ريت اساتذتنا القائمين علي تدريس Software Engineering يعملوا كده. هيفرق في فهم الطلبه كتير.
❤🔥10🔥2