أنماط يجب تجنبها
أكثر الأخطاء تحدث عندما يتم خلط النماذج الأمرية والوصفية. حافظ على حدود حالة صارمة.
خلط عمليات الدفع/الاسترجاع مع الصفحات
وصف: لا تستخدم Navigator.push/pop لصفوف يتم التحكم فيها بواسطة List<PageEntry>.
Widget في حالة
لا تضع مكونات الواجهة في بيانات الصفحة. احتفظ فقط بالمفاتيح والمعرفات المشابهة للمسارات.
مفاتيح غير محدودة
الوصف: ترجمة نصوص واجهة المستخدم/اللغة لموقع finitefield-site، وهو موقع ويب تجاري ياباني. السياق: 1. المشروع: finitefield-site (موقع ويب لشركة يابانية). 2. ترجمة بشكل طبيعي للغة الهدف. 3. الإدخال عبارة عن كائن JSON. حافظ على مفاتيح JSON دون تغيير وقم بترجمة القيم فقط. 4. احتفظ بالرموز ( {name}، %s، {{.Var}})، وعلامات HTML/Markdown، وعناوين URL، وعلامات CLI. 5. لا تستخدم الرموز التعبيرية. حافظ على نبرة احترافية موجزة. تعليمات إضافية: إرجاع كائن JSON صالح مع نفس المفاتيح وقيم النص المترجمة. لا تستخدم حواجب Markdown، ولا توجد تفسيرات. JSON value: لا تستخدم قيم PageEntry.key المكررة في نفس المكدس.
قائمة التحقق من الهجرة
استخدم هذه القائمة للتحقق أثناء مراجعات إعادة الهيكلة للحفاظ على اتساق التصميم.
قائمة مرجعية
جيد مقابل سيء
// سيء: مزج الأوامر مع الحالات التصريحية لنفس المكدس
Navigator.of(context).push(...);
_pages = [..._pages, const PageEntry(key: 'detail', name: '/detail')];
// جيد: تحديث الحالة التصريحية فقط
setState(() {
_pages = [..._pages, const PageEntry(key: 'detail', name: '/detail')];
});
نصائح المراجعة
أثناء مراجعة الكود، تتبع من يمتلك تغييرات الـ stack؟ و رفض التغييرات التي تعدل نفس المكدس من خلال واجهات برمجة التطبيقات المتعددة.