తప్పించాల్సిన నమూనాలు

ఆదేశాత్మక మరియు ప్రకటనాత్మక నమూనాలు కలిసినప్పుడు ఎక్కువ బగ్‌లు వస్తాయి. స్టేట్‌కు కఠినమైన సరిహద్దును ఉంచండి.

పుష్/పాప్‌ను పేజీలతో కలపడం

List<PageEntry> ద్వారా ఇప్పటికే నియంత్రితమైన stackల కోసం Navigator.push/pop ను పిలవకండి.

స్టేట్‌లో Widget

page metadataలో Widget ఉదాహరణలను పెట్టవద్దు. keys మరియు route-like గుర్తింపులను మాత్రమే ఉంచండి.

నకిలీ keys

ఒకే stackలో నకిలీ PageEntry.key విలువలను మళ్లీ ఉపయోగించవద్దు.

మైగ్రేషన్ చెక్‌లిస్ట్

ఆర్కిటెక్చర్ స్థిరంగా ఉండేందుకు రీఫాక్టర్ సమీక్షల సమయంలో ఈ చెక్‌లిస్ట్‌ను ఉపయోగించండి.

చెక్‌లిస్ట్

మంచి / చెడు

// చెడు: అదే stack కోసం ఆదేశాత్మక మరియు ప్రకటనాత్మక విధానాలను కలపడం
Navigator.of(context).push(...);
_pages = [..._pages, const PageEntry(key: 'detail', name: '/detail')];

// మంచి: ప్రకటనాత్మక స్టేట్‌ను మాత్రమే నవీకరించండి
setState(() {
  _pages = [..._pages, const PageEntry(key: 'detail', name: '/detail')];
});
సమీక్ష సూచన

కోడ్ సమీక్ష సమయంలో, stack మార్పులకు ఎవరు బాధ్యత వహిస్తున్నారు మరియు ఒకే stackను అనేక APIల ద్వారా మార్చే మార్పులను తిరస్కరించండి.