Single Responsibility Principle(SRP)
Kanuni hii inasema kwamba kila darasa au wijeti inapaswa kuwa na jukumu moja. Inasisitiza kwamba darasa au wijeti inapaswa kutekeleza kazi moja mahususi na isiwe na sababu nyingi za kubadilika.
Mfano: Unda wijeti ili kuonyesha maelezo ya mtumiaji na wijeti tofauti ili kuonyesha orodha ya machapisho.
Open/Closed Principle(OCP)
Kanuni hii inahimiza kupanua utendakazi kwa kuongeza msimbo mpya badala ya kurekebisha msimbo uliopo.
Mfano: Unda wijeti ili kuonyesha aina tofauti za bidhaa katika programu ya e-commerce.
Liskov Substitution Principle(LSP)
Kanuni hii inadai kuwa vipengee vya darasa linalotokana vinapaswa kubadilishwa kwa vitu vya darasa la msingi bila kuathiri usahihi wa programu.
Mfano: Tengeneza wijeti ili kudhibiti maumbo ya kijiometri.
Interface Segregation Principle(ISP)
Kanuni hii inashauri kuvunja violesura kuwa vidogo ili kuepuka kulazimisha madarasa au wijeti kutekeleza mbinu ambazo hazihitaji.
Mfano: Violesura vya kusasisha na kuonyesha data.
Dependency Inversion Principle(DIP)
Kanuni hii inapendekeza kutumia sindano ya utegemezi kudhibiti utegemezi.
Mfano: Tumia sindano ya utegemezi kudhibiti utegemezi katika wijeti.
Kumbuka kwamba kutumia SOLID kanuni ndani Flutter kunapaswa kufanywa kwa urahisi kulingana na madhumuni mahususi ya mradi wako na uelewa wako wa SOLID na Flutter.