السلام عليكم ورحمه الله وبركاته ..
في هذا القناة سيكون فيها ان شاء الله كل ما تحتاجه في مجال حياتك البرمجية فقط👨💻😊
في هذا القناة سيكون فيها ان شاء الله كل ما تحتاجه في مجال حياتك البرمجية فقط👨💻😊
مرحبا
اليوم جبت لكم repo رهيب جداً لمبرمجين Flutter 😍
فيه Flutter tips and tricks مشروح بأمثلة
الربط : https://chromewebstore.google.com/detail/json-viewer-pro/eifflpmocdbdmepbjaopkkhbfmdgijcc?hl=ar&utm_source=ext_sidebar
اليوم جبت لكم repo رهيب جداً لمبرمجين Flutter 😍
فيه Flutter tips and tricks مشروح بأمثلة
الربط : https://chromewebstore.google.com/detail/json-viewer-pro/eifflpmocdbdmepbjaopkkhbfmdgijcc?hl=ar&utm_source=ext_sidebar
Google
JSON Viewer Pro
A completely free extension to visualise JSON response in awesome Tree and Chart view with great user experience and options.
✅…
✅…
❤1
موقع رهيب لأي Front End 💻
يساعدك في اختيار الألوان
يجرب لك الألوان على موقع حقيقي 🤩
وتقدر تحفظها وتطبقها على موقعك 👌
رابط الموقع:
https://www.realtimecolors.com
يساعدك في اختيار الألوان
يجرب لك الألوان على موقع حقيقي 🤩
وتقدر تحفظها وتطبقها على موقعك 👌
رابط الموقع:
https://www.realtimecolors.com
Realtime Colors
Visualize your color palettes on a real website.
موقع يوفر flutter components تقدر تنسخ الكود وتعيد استخدامه جربوه ضخخم😎 🎯
رابط الموقع:
https://fluttercomponentlibrary.com
رابط الموقع:
https://fluttercomponentlibrary.com
Fluttercomponentlibrary
Flutter Component Library
A library of components built with Flutter to accelerate your development.
❤🔥1
مواقعتوفر Components حلوة لتسهيل تصميم مواقع الويب المواقع حلوة وجبارررة جربوة 🔥🔥
هذا الموقع الأول:
https://uiverse.io
وهذا الموقع الثاني:
https://freefrontend.co
هذا الموقع الأول:
https://uiverse.io
وهذا الموقع الثاني:
https://freefrontend.co
uiverse.io
Uiverse | The Largest Library of Open-Source UI elements
Community-made library of free and customizable UI elements made with CSS or Tailwind. It's all free to copy and use in your projects. Uiverse can save you many hours spent on building & customizing UI components for your next project.
🤪2
CODE7
مواقعتوفر Components حلوة لتسهيل تصميم مواقع الويب المواقع حلوة وجبارررة جربوة 🔥🔥 هذا الموقع الأول: https://uiverse.io وهذا الموقع الثاني: https://freefrontend.co
طبعا هنا في الموقع الثاني فية اشياء روعه ولجميع لغات الويب جربوة 😁🔥
html ,java,css,jquery,bootstrap
html ,java,css,jquery,bootstrap
الموضوع عن ال Future و أكيد مافيش حد يستخدم فلاتر وما يعرف ال Future ،
طيب أنا بشرح لكم تجربتي مع ال Future وايش المشاكل اللي واجهتني وحليته:- وهي أنهُ كنت أطلب البيانات من ال Api وكل شي طبيعي وفجأة انتقلت من السكرينه الأولى إلى السكرينه الثانية وطبعاً كنت في السكرينه الأولى أطلب بيانات من Api وعندما إنتقلت إلى السكرينه الثانية لاحظت في الترمنل انه لسى وصلت البيانات اللي طلبته في السكرينه الأولى برغم أنه انا قد إنتقلت منها الى السكرينه الثانية ، حرفياً لما شفته دخّن راسي 🤯.
بتقولي أنت اوكِ طيب وأيش اللي المفروض كان يحصل.....
يا عزيزي اللي المفروض يحصل أنه لما أطلع من أي صفحة في التطبيق وكنت أطلب فيها بيانات من ال Api المفروض أنه يكنسل الطلب وما ينتظر لانه أنا طلعت من هذه الصفحة ومش منتظر البيانات تجيني لاني قد انتقلت للصفحة ثانية وطلبت بيانات أخرى في الصفحة الثانية ومش محتاج البيانات اللي لسى قاعد منتضره في السكرينه الأولى من غير لازمة لانه في هذه الحالة با ياثر على أشياء كثيره في التطبيق ومنها ال Performance لانه قاعد منتضر بيانات أنا مش محتاجة اصلاً و كمان ال Bloc منتظر البيانات عشان يغير ال state و أكيد كلنا عارفين أنه كل state هي حاجز قيمة في الذاكره .......
طب وشو الحل لهذهِ الكارثه اه مثلما سمعت "كارثه" لأنه نحنا نحاول نحسن من ال Performance في مكان وال Future قاعدة تخربه لنا في المكان الآخر 😁 .
يلا نشوف الحال !
طبعاً في أكثر من طريقة لحل هذه المشكلة ولكن قعدت اعمل search لين وصلت لحل مثالي وبنفس الوقت سهل وهو استخدام ال CancelableOperation
فهم عمل ال CancelableOperation :- 👇
ال CancelableOperation هي جزء من مكتبة async في Dart ، مصممة خصيصًا لتبسيط إدارة المهام الغير متزامنة.
وهي عبارة عن عبوة حول Future تضيف قدرات الإلغاء المهام اللي من نوع Future و إنهاء المهلة الزمنية ،
وهي مفيدة للمهام مثل طلبات الشبكة والمؤقتات أو أي عملية طويلة الأمد يمكن أن تحتاج إلى إيقافها أو توقيتها بمدة معينه .
مثل إنك تحدد مدة زمنية معينه إذا لم يتم جلب البيانات من ال api تعمل إلغاء لهذهِ ال
المهمة ، أو أنك تقوم بإلغاء الأنتظار لبيانات أنت لم تعد بالحاجة إليها ... وهذا الشي الذي حل لي المشكلة تبعي اللي كلمتكم عليها .
بعض فوائد إستخدام CancelableOperation :- 👇
1-إدارة الموارد بكفاءة: من خلال السماح لك باسترداد الموارد التي لم تعد مطلوبة، يمكنك تحرير الموارد ومنع تسرب الذاكرة المحتمل.
2-تحسين تجربة المستخدم: يمكن أن تساعدك العمليات القابلة للإلغاء على تجنب حالات يضطر فيها المستخدمون إلى الانتظار لانتهاء المهام ، حتى لو كانت لم تعد ذات صلة (مثل استعلام البحث الذي تم استبداله بواحد جديد).
3-معالجة المهلة الزمنية: تسمح لك CancelableOperation بتعيين مدة المهلة الزمنية ، مما يضمن عدم تشغيل المهام بشكل لا نهائي وتسبب مشاكل في الأداء.
كمان بقى شي أشتي أتكلم عنهُ ؟
طيب افترض أنك تكتب في حقل النص الخاص بالبحث عن فيلم معين مثلاً...
اوك أنت هنا كُلما تكتب حرف يتم أخذ هذا الحرف والذهاب بهِ إلى قاعدة البيانات الخاصة سواء كانت قاعدة البيانات على cloude server أو local للبحث عن الكلمات المشابهه لهذا النص اللي كتبته
وفي كل مرة تكتب حرف آخر يتم تنفيذ نفس هذهِ العملية ويتم الطلب من ال api الخاص بالأفلام تبعك ، وأكيد كل عملية بتاخذ وقت لين ترجع لك ببيانات
وهنا متخبية لنا المشكلة ؟ يلا قول لنا وشو المشكلة يا رجل المشاكل . 😂
المشكلة أنه في كل مرة المستخدم يكتب حرف يروح التطبيق واخذ هذا الحرف ومرسله للapi تبعك ومنتظر لرد على كل حرف (عملية) قام بإرسالها وهنا هيا المشكلة
وهي أنك مجبر أنه تنتظر لما ال api يرجع لك القيمة تبع الحرف الأول اللي كتبته برغم أنك قد كتبت بعد الحرف الأول خمسه أحرف ومش محتاج القيمة اللي راجعي لك تبع أول حرف أو ثاني أو ثالث حرف أنت فقط المفروض تنتضر آخر قيمة كتبتة في ال TextField .
طيب حل المشكلة هذهِ هي أنك تقوم بإلغاء كل العمليات التي قمت بالبحث عنها وتنفيد آخر عملية فقط ،
بمعنى أصح يعني في كل مرة تكتب حرف تقوم بالغاء الأنتظار للعمليه التي قبلها وتعتمد آخر كلمه أو حرف كبته المستخدم ، وهكذا ......
خلاص هذا ال Topic تبع اليوم ..
رابط المكتبة : https://pub.dev/packages/flutter_utils_project
طيب أنا بشرح لكم تجربتي مع ال Future وايش المشاكل اللي واجهتني وحليته:- وهي أنهُ كنت أطلب البيانات من ال Api وكل شي طبيعي وفجأة انتقلت من السكرينه الأولى إلى السكرينه الثانية وطبعاً كنت في السكرينه الأولى أطلب بيانات من Api وعندما إنتقلت إلى السكرينه الثانية لاحظت في الترمنل انه لسى وصلت البيانات اللي طلبته في السكرينه الأولى برغم أنه انا قد إنتقلت منها الى السكرينه الثانية ، حرفياً لما شفته دخّن راسي 🤯.
بتقولي أنت اوكِ طيب وأيش اللي المفروض كان يحصل.....
يا عزيزي اللي المفروض يحصل أنه لما أطلع من أي صفحة في التطبيق وكنت أطلب فيها بيانات من ال Api المفروض أنه يكنسل الطلب وما ينتظر لانه أنا طلعت من هذه الصفحة ومش منتظر البيانات تجيني لاني قد انتقلت للصفحة ثانية وطلبت بيانات أخرى في الصفحة الثانية ومش محتاج البيانات اللي لسى قاعد منتضره في السكرينه الأولى من غير لازمة لانه في هذه الحالة با ياثر على أشياء كثيره في التطبيق ومنها ال Performance لانه قاعد منتضر بيانات أنا مش محتاجة اصلاً و كمان ال Bloc منتظر البيانات عشان يغير ال state و أكيد كلنا عارفين أنه كل state هي حاجز قيمة في الذاكره .......
طب وشو الحل لهذهِ الكارثه اه مثلما سمعت "كارثه" لأنه نحنا نحاول نحسن من ال Performance في مكان وال Future قاعدة تخربه لنا في المكان الآخر 😁 .
يلا نشوف الحال !
طبعاً في أكثر من طريقة لحل هذه المشكلة ولكن قعدت اعمل search لين وصلت لحل مثالي وبنفس الوقت سهل وهو استخدام ال CancelableOperation
فهم عمل ال CancelableOperation :- 👇
ال CancelableOperation هي جزء من مكتبة async في Dart ، مصممة خصيصًا لتبسيط إدارة المهام الغير متزامنة.
وهي عبارة عن عبوة حول Future تضيف قدرات الإلغاء المهام اللي من نوع Future و إنهاء المهلة الزمنية ،
وهي مفيدة للمهام مثل طلبات الشبكة والمؤقتات أو أي عملية طويلة الأمد يمكن أن تحتاج إلى إيقافها أو توقيتها بمدة معينه .
مثل إنك تحدد مدة زمنية معينه إذا لم يتم جلب البيانات من ال api تعمل إلغاء لهذهِ ال
المهمة ، أو أنك تقوم بإلغاء الأنتظار لبيانات أنت لم تعد بالحاجة إليها ... وهذا الشي الذي حل لي المشكلة تبعي اللي كلمتكم عليها .
بعض فوائد إستخدام CancelableOperation :- 👇
1-إدارة الموارد بكفاءة: من خلال السماح لك باسترداد الموارد التي لم تعد مطلوبة، يمكنك تحرير الموارد ومنع تسرب الذاكرة المحتمل.
2-تحسين تجربة المستخدم: يمكن أن تساعدك العمليات القابلة للإلغاء على تجنب حالات يضطر فيها المستخدمون إلى الانتظار لانتهاء المهام ، حتى لو كانت لم تعد ذات صلة (مثل استعلام البحث الذي تم استبداله بواحد جديد).
3-معالجة المهلة الزمنية: تسمح لك CancelableOperation بتعيين مدة المهلة الزمنية ، مما يضمن عدم تشغيل المهام بشكل لا نهائي وتسبب مشاكل في الأداء.
كمان بقى شي أشتي أتكلم عنهُ ؟
طيب افترض أنك تكتب في حقل النص الخاص بالبحث عن فيلم معين مثلاً...
اوك أنت هنا كُلما تكتب حرف يتم أخذ هذا الحرف والذهاب بهِ إلى قاعدة البيانات الخاصة سواء كانت قاعدة البيانات على cloude server أو local للبحث عن الكلمات المشابهه لهذا النص اللي كتبته
وفي كل مرة تكتب حرف آخر يتم تنفيذ نفس هذهِ العملية ويتم الطلب من ال api الخاص بالأفلام تبعك ، وأكيد كل عملية بتاخذ وقت لين ترجع لك ببيانات
وهنا متخبية لنا المشكلة ؟ يلا قول لنا وشو المشكلة يا رجل المشاكل . 😂
المشكلة أنه في كل مرة المستخدم يكتب حرف يروح التطبيق واخذ هذا الحرف ومرسله للapi تبعك ومنتظر لرد على كل حرف (عملية) قام بإرسالها وهنا هيا المشكلة
وهي أنك مجبر أنه تنتظر لما ال api يرجع لك القيمة تبع الحرف الأول اللي كتبته برغم أنك قد كتبت بعد الحرف الأول خمسه أحرف ومش محتاج القيمة اللي راجعي لك تبع أول حرف أو ثاني أو ثالث حرف أنت فقط المفروض تنتضر آخر قيمة كتبتة في ال TextField .
طيب حل المشكلة هذهِ هي أنك تقوم بإلغاء كل العمليات التي قمت بالبحث عنها وتنفيد آخر عملية فقط ،
بمعنى أصح يعني في كل مرة تكتب حرف تقوم بالغاء الأنتظار للعمليه التي قبلها وتعتمد آخر كلمه أو حرف كبته المستخدم ، وهكذا ......
خلاص هذا ال Topic تبع اليوم ..
رابط المكتبة : https://pub.dev/packages/flutter_utils_project
Dart packages
flutter_utils_project | Flutter package
This library works to provide the tools and parts needed to build your project faster, with less effort, and add code.
👍1
رابط القناة فيها شروحات لاستخدام المكتبة :https://www.youtube.com/@NajeebAslan
قناه الاخ > نجيب عسلان 😊
قناه الاخ > نجيب عسلان 😊
جيت لكم بموقع رهييييييييييييييييب فعلاً 😍
الموقع يحول أي تصميم فيجما لكود flutter 🤯
مجااااااااااني بالكااااااااااااااامل ✅
مش بس كذا وتقدر تعدل على الكود من داخل الموقع
وتعدل كمان بدون كود من خلال الواجهات
ايضاً تستطيع اختيار نوع state managemen
اذا كانت Bloc,Provider,GetX
موقع فيه مميزات وتفاصيل كثيرة استكشفوها بنفسكم ..
كل الشكر للاخ -> مكرم محمد
الرابط : https://www.dhiwise.com/
الموقع يحول أي تصميم فيجما لكود flutter 🤯
مجااااااااااني بالكااااااااااااااامل ✅
مش بس كذا وتقدر تعدل على الكود من داخل الموقع
وتعدل كمان بدون كود من خلال الواجهات
ايضاً تستطيع اختيار نوع state managemen
اذا كانت Bloc,Provider,GetX
موقع فيه مميزات وتفاصيل كثيرة استكشفوها بنفسكم ..
كل الشكر للاخ -> مكرم محمد
الرابط : https://www.dhiwise.com/
Dhiwise
Rocket | Think, Type, and Launch Real Apps with AI
Rocket is your AI-powered superpower. Build complete, production-ready apps from plain English- faster than ever before.
👍1
مواقع لتحويل الكود إلى صورة بشكل جميل ❤️
Carbon
https://carbon.now.sh
Ray.so
https://ray.so/
Codeimg
https://codeimg.io/
Snappify
https://snappify.io/editor
المواقع هذه مفيدة جداا للاشخاص الي يعرضو اكوادهم في الجامعة او لشخص
Carbon
https://carbon.now.sh
Ray.so
https://ray.so/
Codeimg
https://codeimg.io/
Snappify
https://snappify.io/editor
المواقع هذه مفيدة جداا للاشخاص الي يعرضو اكوادهم في الجامعة او لشخص
carbon.now.sh
Carbon is the easiest way to create and share beautiful images of your source code.
👍1
