Mohammed Hhhh نشر 6 ديسمبر 2022 أرسل تقرير نشر 6 ديسمبر 2022 السلام عليكم ما هو ال CONST في فلاتر و ما هو علمه و متى استخدمه و شكرا 1 اقتباس
1 Ahmed Sadek Elamine Touahria نشر 6 ديسمبر 2022 أرسل تقرير نشر 6 ديسمبر 2022 const في سياق Flutter يوصى باستخدام مُنشئ ثابت كلما أمكن ذلك عند إنشاء عناصر واجهة مستخدم Flutter. السبب هو زيادة الأداء ، حيث يمكن لـ Flutter حفظ بعض الحسابات من خلال فهم أنه يمكن إعادة استخدام هذه الأداة من إعادة رسم سابقة في الحالية ، لأنها قيمة ثابتة. فيما يلي مقال مثير جدًا للاهتمام بقلم Crizant Lai يحلل تأثير أداء استخدام عنصر واجهة مستخدم مع أو بدون مُنشئ ثابت. أثناء الاختبار ، سأُنشئ شاشتين لعرض الشعار المتحرك ، تستخدم إحداهما المُنشئ الثابت لعنصر واجهة مستخدم الصورة: const Image( width: 100, height: 100, image: AssetImage('assets/logo.png'), ) والآخر بدون كلمة const. يتم تغليف الشعار داخل عنصر واجهة مستخدم AnimatedPositioned ، ويتم تحديث موضعه مرة واحدة في الثانية. ثم نقوم بتشغيل التطبيق باستخدام علامة --profile ، وفحص علامة التبويب "الأداء" و "الذاكرة" في Dart DevTools. استنتاج يمكننا أن نرى أنه باستخدام مُنشئ ثابت ، يكون معدل الإطارات في الثانية أعلى بنسبة 8.4٪ ، واستخدام الذاكرة أقل بنسبة 20٪ تقريبًا ، في حالة 1000 شعار. على الرغم من أن الأرقام كبيرة جدًا ، إلا أن "النعومة" التي لاحظتها أثناء الاختبار متشابهة جدًا. كما أنه من غير الواقعي وجود 1000 عنصر واجهة مستخدم في الشاشة. بالنسبة إلى التطبيق المتوسط ، لن يكون هناك سوى العشرات من الأدوات المصغّرة في كل شاشة ، ولا يحتوي سوى جزء منها على مُنشئ ثابت. إذا كنت حقًا بحاجة إلى تقديم مثل هذا العدد الكبير من الكائنات ، فمن الأفضل استخدام Canvas بدلاً من ذلك. اقتباس
0 محمد Fahmy نشر 6 ديسمبر 2022 أرسل تقرير نشر 6 ديسمبر 2022 const يستخدم لتعريف متغير لن تقوم بتغير قيمته بمعني أخر أذا قمت بتعريف متغير ب const لن تستطيع تغير قيمه هذا المتغير . يستخدم حتي لايقوم المترجم بقراءة هذا المتغير في كل عملية build وهذا يساعد في تسريع البرنامج. اقتباس
0 Mohammed Hhhh نشر 6 ديسمبر 2022 الكاتب أرسل تقرير نشر 6 ديسمبر 2022 بتاريخ منذ ساعة مضت قال Mohammed Fahmy3: const يستخدم لتعريف متغير لن تقوم بتغير قيمته بمعني أخر أذا قمت بتعريف متغير ب const لن تستطيع تغير قيمه هذا المتغير . يستخدم حتي لايقوم المترجم بقراءة هذا المتغير في كل عملية build وهذا يساعد في تسريع البرنامج. EdgeInsets.all(29.0) هل رح تكون مختلفه عن الي تحت EdgeInsets.all(33.0) و اتنى مزيد من التوضح و شكرا 1 اقتباس
0 محمد Fahmy نشر 6 ديسمبر 2022 أرسل تقرير نشر 6 ديسمبر 2022 بتاريخ منذ ساعة مضت قال Mohammmed Mahmoud: EdgeInsets.all(29.0) هل رح تكون مختلفه عن الي تحت EdgeInsets.all(33.0) و اتنى مزيد من التوضح و شكرا نعم سوف تختلف القيمة لاختلاف القيمة التي تم تمريرها في كل تابع فالقيمة الأولي تساوي 29.0 والثانية تساوي 33.0 اقتباس
السؤال
Mohammed Hhhh
السلام عليكم ما هو ال CONST في فلاتر و ما هو علمه و متى استخدمه و شكرا
4 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.