6 of 59 menu

SOLID စည်းမျဉ်းများ

Object-oriented programming (OOP) အခြေခံဖြင့် လုပ်ဆောင်ချက်ပြည့်ဝပြီး ရေရှည်ထိန်းသိမ်းနိုင်သော ဆော့ဖ်ဝဲလ်များဖန်တီးရာတွင် SOLID စည်းမျဉ်းများသည် လိုအပ်ပါသည်။

SOLID ၏ အဓိက စည်းမျဉ်းများမှာ

  • တစ်ခုတည်းသော တာဝန်ယူမှု - အရာဝတ္ထုတစ်ခုစီတွင် တာဝန်တစ်ခုတည်း (သို့) ရည်ရွယ်ချက်တစ်ခုသာရှိပြီး ထိုတာဝန်ကို သီးခြားအတန်းတစ်ခုဖြင့် ကိုယ်စားပြုသင့်သည်။ ဥပမာအားဖြင့်၊ ဒေတာဘေ့စ်မှ ဒေတာများထုတ်ယူခြင်းနှင့် ၎င်းတို့ကို အတည်ပြုခြင်းလုပ်ငန်းစဉ်နှစ်ခုကို ရောထွေးမသွားစေရန် အတန်းမတူညီသော အတန်းများဖြင့် ဆောင်ရွက်သင့်သည်။
  • ဖွင့်ထားမှု / ပိတ်ထားမှု - အတန်းများသည် ပြောင်းလဲခြင်းနှင့် လုပ်ငန်းအသစ်များ ထပ်တိုးခြင်းအတွက် ဖွင့်ထားသင့်ပြီး တစ်ချိန်တည်းမှာပင် အခြေခံကုဒ်ကို ပြောင်းလဲခြင်းမှ ပိတ်ထားသင့်သည်။ ထို့ကြောင့် အတန်းတစ်ခုသို့ အခြားမိုဒျူးများနှင့် လုပ်ဆောင်ချက်များထည့်သွင်းနိုင်သော်လည်း မူရင်းကုဒ်သည် မပြောင်းလဲဘဲ ရှိနေရမည်။
  • Liskov အစားထိုးမှု စည်းမျဉ်း - ဖန်တီးထားသော သားသမီးအားလုံးသည် ၎င်းတို့၏ မိဘ၏ အပြုအမူ (လုပ်ဆောင်သည့် အလုပ်များ) ကို ထိန်းသိမ်းပြသရမည်။
  • အင်တာဖေ့ခွဲခြားမှု - ကြီးမားသော အင်တာဖေ့များကို အသုံးပြုသူများအား အပိုသတင်းအချက်အလက်များဖြင့် မဝန်ပိစေရန် သေးငယ်ပြီး ကျဉ်းမြောင်းသောဦးတည်ချက်ရှိသော အင်တာဖေ့များအဖြစ် ခွဲခြားသင့်သည်။
  • အမှီအခိုကင်းမှု ပြောင်းပြန်လှန်ခြင်း - အထက်အဆင့်ရှိ အရာဝတ္ထုများ၊ ဥပမာ၊ အတန်းများသည် အောက်အဆင့်ရှိ မိုဒျူးများအပေါ် မှီခိုနေရန် မလိုအပ်ပါ၊ သို့သော် ၎င်းအားလုံးသည် ယေဘုယျသဘောတရားများ (abstractions) အပေါ်တွင်သာ မှီခိုသင့်သည်။

ဆက်လက်လေ့လာရန်

  • ဆော့ဖ်ဝဲလ်ကို အသေးစိတ်အစိတ်အပိုင်းများအဖြစ် ခွဲခြားပေးသော DRY စည်းမျဉ်း,
  • ဆော့ဖ်ဝဲလ် ရှုပ်ထွေးမှုကို ရှောင်ရှားရန် အဆိုပြုထားသော KISS စည်းမျဉ်း,
  • ဆော့ဖ်ဝဲလ်၏ အပိုလုပ်ဆောင်ချက်များကို ရှောင်ရှားရန် အဆိုပြုထားသော YAGNI စည်းမျဉ်း,
  • လုပ်ဆောင်ချက်တစ်ခုစီအတွက် ညွှန်ကြားချက်တစ်ခုတည်းကိုသာ သတ်မှတ်ပေးသော CQS စည်းမျဉ်း,
  • ဆော့ဖ်ဝဲလ်ဖွံ့ဖြိုးတည်ဆောက်ရာတွင် အသုံးပြုသော LoD စည်းမျဉ်း,
  • ဆော့ဖ်ဝဲလ်ဖွံ့ဖြိုးတည်ဆောက်ရာတွင် အသုံးပြုသော တာဝန်ခွဲဝေမှု စည်းမျဉ်း,
မြန်မာ
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
ဝက်ဘ်ဆိုက် လုပ်ဆောင်ခြင်း၊ ဆန်းစစ်လေ့လာခြင်းနှင့် ပုဂ္ဂလိကပြုပြင်ခြင်းအတွက် ကျွန်ုပ်တို့သည် cookie များကို အသုံးပြုပါသည်။ ဒေတာများကို ပြုပြင်ခြင်းသည် ကိုယ်ရေးကိုယ်တာ မူဝါဒအတိုင်း ဖြစ်ပါသည်။
အားလုံးလက်ခံရန် ပြင်ဆင်ရန် ငြင်းပယ်ရန်