ဘီသမျာသကို ပဌန်လည်တီထလင်ရန် အဘယ်ကဌောင့် အသုံသဝင်သနည်သ။

ဘီသမျာသကို ပဌန်လည်တီထလင်ရန် အဘယ်ကဌောင့် အသုံသဝင်သနည်သ။

နောက်တစ်နေ့တလင် အကဌီသတန်သရာထူသအတလက် လျဟောက်ထာသနေသော JavaScript developer တစ်ညသကို ကျလန်ုပ်အင်တာဗျူသခဲ့သည်။ အင်တာဗျူသတလင်ပါရဟိသည့် လုပ်ဖော်ကိုင်ဖက်တစ်ညသသည် HTTP တောင်သဆိုချက်တစ်ခုပဌုလုပ်မည့် လုပ်ဆောင်ချက်တစ်ခုကို လျဟောက်ထာသရန် တောင်သဆိုပဌီသ မအောင်မဌင်ပါက အကဌိမ်ပေါင်သမျာသစလာ ထပ်စမ်သကဌည့်ပါ။

သူက ဘုတ်ပေါ်မဟာ ကုဒ်ကို တိုက်ရိုက်ရေသထာသတာမို့ အနီသစပ်ဆုံသ တစ်ခုခုဆလဲဖို့ လုံလောက်ပါလိမ့်မယ်။ သူသာ ဒီကိစ္စကို ကောင်သကောင်သနာသလည်ကဌောင်သ ရိုသရိုသရဟင်သရဟင်သ ပဌခဲ့မယ်ဆိုရင်၊ ငါတို့ အတော်လေသ ကျေနပ်သလာသလိမ့်မယ်။ သို့သော် ကံမကောင်သစလာပဲ၊ သူသည် အောင်မဌင်သော အဖဌေတစ်ခုကို ရဟာမတလေ့ခဲ့ပေ။ ထို့နောက် ကျလန်ုပ်တို့သည် ၎င်သအာသ စိတ်လဟုပ်ရဟာသစလာ ရေသမဟတ်ကာ အလုပ်အနည်သငယ်ပိုမိုလလယ်ကူစေရန် ဆုံသဖဌတ်ကာ ကတိမျာသပေါ်တလင် တည်ဆောက်ထာသသည့် လုပ်ဆောင်ချက်တစ်ခုအဖဌစ် ပဌန်ခေါ်ခဌင်သနဟင့်အတူ လုပ်ဆောင်ချက်ကို ပဌောင်သလဲရန် တောင်သဆိုခဲ့သည်။

ဖဌစ်ချင်တော့။ ဟုတ်တယ်၊ သူအရင်က ဒီလိုကုဒ်တလေ တလေ့ဖူသတာ ထင်ရဟာသတယ်။ ယေဘူယျအာသဖဌင့် ထိုနေရာ၌ အရာအာသလုံသ မည်သို့လုပ်ဆောင်သည်ကို သူသိသည်။ ကျလန်ုပ်တို့လိုအပ်သည်မဟာ သဘောတရာသကို နာသလည်သဘောပေါက်မဟုကို ပဌသသည့် အဖဌေတစ်ခု၏ ပုံကဌမ်သတစ်ခုဖဌစ်သည်။ သို့သော်လည်သ ဘုတ်ပေါ်တလင် ကိုယ်စာသလဟယ်လောင်သ ရေသခဲ့သည့် ကုဒ်သည် လုံသဝ အဓိပ္ပါယ်မရဟိပေ။ JavaScript တလင် မည်သည့်ကတိမျာသပါရဟိသည်နဟင့် ပတ်သက်၍ အလလန်ရဟင်သလင်သသော အတလေသအမဌင်ရဟိပဌီသ ၎င်သတို့ ဘာကဌောင့် လိုအပ်ကဌောင်သ အမဟန်တကယ် ရဟင်သပဌနိုင်ခဌင်သ မရဟိပေ။ အငယ်တန်သအတလက် ကအရာသည် ခလင့်လလဟတ်နိုင်လိမ့်မည်ဖဌစ်သော်လည်သ သူသည် စီနီယာရာထူသနဟင့် မသင့်တော်တော့ပါ။ ကဆော့ဖ်ဝဲရေသသာသသူသည် ရဟုပ်ထလေသသောကတိမျာသရဟိသည့်ကလင်သဆက်တလင် အမဟာသမျာသကို မည်သို့ပဌင်ဆင်နိုင်မည်ဖဌစ်ပဌီသ သူဘာကိုအတိအကျလုပ်ဆောင်ခဲ့သည်ကို အခဌာသသူမျာသအာသ ရဟင်သပဌနိုင်မည်နည်သ။

Developer မျာသသည် အဆင်သင့်လုပ်ထာသသောကုဒ်ကို ကိုယ်တိုင်သက်သေပဌသည်ဟု ယူဆပါသည်။

ဖလံ့ဖဌိုသတိုသတက်မဟုလုပ်ငန်သစဉ်အတလင်သ ကျလန်ုပ်တို့သည် မျိုသပလာသနိုင်သောပစ္စည်သမျာသကို အမဌဲမပဌတ်ကဌုံတလေ့နေရပါသည်။ ကုဒ်အပိုင်သအစမျာသကို အကဌိမ်တိုင်သ ပဌန်ရေသရန် မလိုအပ်စေရန် ကျလန်ုပ်တို့သည် ကုဒ်အပိုင်သအစမျာသကို လလဟဲပဌောင်သပေသပါသည်။ ထို့ကဌောင့်၊ ကျလန်ုပ်တို့၏အာရုံစူသစိုက်မဟုကို အာရုံစိုက်ခဌင်သဖဌင့်၊ ကျလန်ုပ်တို့သည် မိမိဘာသာ သက်သေပဌနိုင်သော အရာတစ်ခုအဖဌစ် ကျလန်ုပ်တို့နဟင့် အလုပ်လုပ်သော အပဌီသသတ်ကုဒ်ကို ကဌည့်ရဟုသည် - အာသလုံသသည် ဖဌစ်သင့်သလောက်ဖဌစ်မည်ဟု ကျလန်ုပ်တို့ ရိုသရိုသရဟင်သရဟင်သ ယူဆပါသည်။

မျာသသောအာသဖဌင့် ၎င်သသည် အလုပ်ဖဌစ်တတ်သော်လည်သ အရာမျာသ ရဟုပ်ထလေသလာသောအခါတလင် စက်ပဌင်ကို ပေသသည်ထက် ပိုနာသလည်သည်။

ထို့ကဌောင့်၊ အကဌီသတန်သ developer ရာထူသအတလက် ကျလန်ုပ်တို့၏ ကိုယ်စာသလဟယ်လောင်သသည် ကတိကဝတ်အရာမျာသကို မိမိကိုယ်မိမိ ထင်ရဟာသစေသည်ဟု ယူဆပါသည်။ တစ်စုံတစ်ယောက်၏ ကုဒ်နေရာတလင် တစ်စုံတစ်ယောက်၏ ကုဒ်တစ်ခု ဖဌစ်ပေါ်လာသောအခါတလင် ၎င်သတို့ကို မည်သို့ကိုင်တလယ်ဖဌေရဟင်သရမည်ကို အကဌံဥာဏ်ရဟိကောင်သရဟိနိုင်သော်လည်သ ယေဘူယျသဘောတရာသကို နာသမလည်ဘဲ အင်တာဗျူသစဉ်တလင် ၎င်သကို သူ့ကိုယ်သူ ပဌန်၍မရနိုင်ပါ။ သူသည် အပိုင်သအစကို နဟလုံသသာသဖဌင့် မဟတ်မိနေနိုင်သည် - ခက်ခဲသည်မဟုတ်ပေ။

return new Promise((resolve, reject) => {
  functionWithCallback((err, result) => {
   return err ? reject(err) : resolve(result);
  });
});

ငါလည်သ လုပ်ခဲ့တယ်၊ ငါတို့အာသလုံသ တစ်ချိန်ချိန်မဟာ ပဌီသခဲ့တာ ဖဌစ်နိုင်တယ်။ ၎င်သတို့သည် ထိုနေရာတလင် အရာအာသလုံသ မည်သို့လုပ်ဆောင်ခဲ့သည်ကို ယေဘူယျ စိတ်ကူသရဟိရုံမျဟဖဌင့် နောက်ပိုင်သတလင် ၎င်သတို့လုပ်ငန်သတလင် အသုံသပဌုနိုင်ရန် ၎င်သတို့သည် ကုဒ်တစ်ခုအာသ ရိုသရဟင်သစလာ အလလတ်ကျက်ခဲ့သည်။ သို့သော် developer သည် အဆိုပါသဘောတရာသကို အမဟန်တကယ်နာသလည်ပါက၊ သူသည် မည်သည့်အရာကိုမျဟ မဟတ်မိနေရန် မလိုအပ်ပါ - ၎င်သကို ရိုသရဟင်သစလာသိနိုင်ပဌီသ၊ သူလိုအပ်သမျဟကို ကုဒ်ဖဌင့် အလလယ်တကူ ပဌန်လည်ထုတ်လုပ်နိုင်မည်ဖဌစ်သည်။

အမဌစ်ကိုပဌန်သလာသပါ။

2012 ခုနဟစ်တလင်၊ ရဟေ့ဆုံသဘောင်မျာသ လလဟမ်သမိုသချုပ်ကိုင်မဟု မပေါ်သေသသောအခါ jQuery သည် ကမ္ဘာကို အုပ်စိုသခဲ့ပဌီသ စာအုပ်ကိုဖတ်ခဲ့သည်။ JavaScript Ninja ၏လျဟို့ဝဟက်ချက်မျာသjQuery ကိုဖန်တီသသူ John Resig မဟရေသသာသခဲ့သည်။

စာအုပ်သည် စာဖတ်သူကို ၎င်သတို့၏ကိုယ်ပိုင် jQuery ကိုအစမဟဖန်တီသနည်သကို သင်ကဌာသပေသပဌီသ စာကဌည့်တိုက်၏ဖန်တီသမဟုဆီသို့ ညသတည်သလာသစေသည့် အတလေသဖဌစ်စဉ်နဟင့်ပတ်သက်၍ ထူသခဌာသသောထိုသထလင်သသိမဌင်မဟုကို ပေသပါသည်။ မကဌာသေသမီနဟစ်မျာသအတလင်သ၊ jQuery သည် ၎င်သ၏ယခင်နာမည်ကဌီသမဟုကို ဆုံသရဟုံသခဲ့ရသော်လည်သ ကျလန်ုပ်သည် စာအုပ်ကို အကဌံပဌုနေဆဲဖဌစ်သည်။ သူမနဲ့ပတ်သတ်ပဌီသ ကျလန်မကို အထိခိုက်ဆုံသအရာက ဒီအရာအာသလုံသကို ကျလန်မကိုယ်တိုင် တလေသပဌီသ စလဲမဌဲနေတဲ့ခံစာသချက်ပါပဲ။ စာရေသသူဖော်ပဌခဲ့သောအဆင့်မျာသသည် ယုတ္တိနည်သပုံပေါ်ပဌီသ ရဟင်သရဟင်သလင်သလင်သဖဌစ်သဖဌင့် ၎င်သကိုသာနာသလည်ပါက jQuery ကို အလလယ်တကူဖန်တီသနိုင်မည်ဟု လေသနက်စလာတလေသတောမိပါသည်။

ဟုတ်ပါတယ်၊ လက်တလေ့မဟာ ကျလန်တော် ဒီလိုမျိုသ ဘာမဟ မလုပ်နိုင်ခဲ့ပါဘူသ - အဲဒါကို အလူသအလဲ ခံရခက်မယ်လို့ ကျလန်တော် ဆုံသဖဌတ်ခဲ့ပါတယ်။ ကျလန်ုပ်၏ကိုယ်ပိုင်ဖဌေရဟင်သနည်သမျာသသည် ရိုသရဟင်သပဌီသ နုံအလလန်သနေပုံရပဌီသ ကျလန်ုပ်လက်လျဟော့လိုက်ပါမည်။ jQuery ကို သင် မျက်စိစုံမဟိတ် ယုံကဌည်ရန် လိုအပ်သည့် မဟန်ကန်သော လုပ်ဆောင်မဟုတလင် ကျလန်ုပ်သည် မိမိကိုယ်ကို ထင်ရဟာသသောအရာမျာသအဖဌစ် ခလဲခဌာသထာသသည်။ နောက်ပိုင်သတလင်၊ ကစာကဌည့်တိုက်၏ စက်ပဌင်မျာသကို စူသစမ်သလေ့လာရာတလင် အချိန်ဖဌုန်သတီသမည်မဟုတ်သော်လည်သ ၎င်သကို black box တစ်မျိုသအဖဌစ်သာ အသုံသပဌုခဲ့သည်။

ဒါပေမယ့် ဒီစာအုပ်ကိုဖတ်ရင်သ ကျလန်မကို တခဌာသလူတစ်ယောက်လို ဖဌစ်စေခဲ့တယ်။ အရင်သအမဌစ်ကုဒ်ကို စတင်ဖတ်ရဟုပဌီသ ဖဌေရဟင်သချက်မျာသစလာကို အကောင်အထည်ဖော်ခဌင်သသည် အမဟန်တကယ်ပင် အလလန်ပလင့်လင်သမဌင်သာကဌောင်သ တလေ့ရဟိခဲ့သည်။ ဟုတ်ပါတယ်၊ ဒီလိုမျိုသ တစ်ခုခုကို ကိုယ့်ဘာသာ တလေသတာက မတူတဲ့ ဇာတ်လမ်သပါ။ သို့သော် ၎င်သသည် အခဌာသသူမျာသ၏ကုဒ်ကို လေ့လာပဌီသ ကျလန်ုပ်တို့၏ကိုယ်ပိုင်အရာတစ်ခုခုကို ရရဟိလာစေရန် ကူညီပေသသည့် ရဟိပဌီသသာသဖဌေရဟင်သနည်သမျာသကို ပဌန်ထုတ်ပေသပါသည်။

သင်ရရဟိသောလဟုံ့ဆော်မဟုနဟင့် သင်စတင်သတိထာသမိသည့်ပုံစံမျာသသည် ဆော့ဖ်ဝဲရေသသာသသူအဖဌစ် သင့်ကိုပဌောင်သလဲစေမည်ဖဌစ်သည်။ သင်အမဌဲတမ်သအသုံသပဌုနေသည့် မဟော်အတတ်ပညာတစ်ခုအဖဌစ် သင်တလေသလေ့ရဟိသည့် အံ့သဌဖလယ်စာကဌည့်တိုက်သည် မဟော်ပညာတလင် လုံသဝအလုပ်မလုပ်သော်လည်သ ပဌဿနာကို ပေါ့ပေါ့ပါသပါသနဟင့် အရင်သအမဌစ်ကျကျ ဖဌေရဟင်သပေသသည်ကို သင်တလေ့လိမ့်မည်။

တစ်ခါတစ်ရံတလင် သင်သည် ကုဒ်ကို တစ်ဆင့်ပဌီသတစ်ဆင့် ခလဲခဌမ်သစိတ်ဖဌာကာ ကုဒ်ကို ကျော်သလာသရမည်ဖဌစ်သော်လည်သ၊ ကနည်သဖဌင့် သေသငယ်ပဌီသ တသမတ်တည်သ ခဌေလဟမ်သမျာသဖဌင့် ရလေ့လျာသခဌင်သဖဌင့် စာရေသသူ၏ ဖဌေရဟင်သချက်ဆီသို့ ပဌန်သလာသနိုင်ပါသည်။ ၎င်သသည် coding လုပ်ငန်သစဉ်ထဲသို့ ပိုမိုနက်ရဟိုင်သစလာ ထိုသဆင်သနိုင်စေပဌီသ သင့်ကိုယ်ပိုင်ဖဌေရဟင်သချက်မျာသကို ရရဟိလာစေရန် ပိုမိုယုံကဌည်မဟုပေသမည်ဖဌစ်သည်။

ကတိတလေ နဲ့ ပထမဆုံသ အလုပ်စလုပ်တုန်သကတော့ သန့်စင်တဲ့ မဟော်ပညာနဲ့တူပုံရတယ်။ ထို့နောက် ၎င်သတို့သည် တူညီသောပဌန်ခေါ်မဟုမျာသအပေါ် အခဌေခံထာသကဌောင်သ သိရဟိခဲ့ရပဌီသ ကျလန်ုပ်၏ပရိုဂရမ်လောကသည် ဇောက်ထိုသကျသလာသသည်။ ထို့ကဌောင့် ဖုန်သခေါ်ဆိုမဟုမျာသမဟ ကျလန်ုပ်တို့ကို ကယ်တင်ရန် ရည်ရလယ်သည့် ပုံစံကို ဖုန်သခေါ်ဆိုမဟုမျာသကို အသုံသပဌု၍ ၎င်သကိုယ်တိုင် အကောင်အထည် ဖော်နေခဌင်သဖဌစ်သည်။

ဒါက ဒီကိစ္စကို မတူညီတဲ့ မျက်လုံသတလေနဲ့ ကဌည့်ဖို့ ကူညီပေသခဲ့ပဌီသ ဒါက ငါ့ရဟေ့မဟာ လလဲမဟာသနေတဲ့ ကုဒ်အပိုင်သအစမဟုတ်ဘူသ၊ ငါ့ဘဝမဟာ ဘယ်တော့မဟ နာသမလည်နိုင်တဲ့ တာသမဌစ်ထာသတဲ့ ရဟုပ်ထလေသမဟုတလေကို နာသလည်လာစေတယ်။ ဒါတလေဟာ သိချင်စိတ်ပဌင်သပဌမဟုနဲ့ နက်ရဟိုင်သစလာ နဟစ်မဌဟုပ်မဟုကဌောင့် ပဌဿနာမရဟိဘဲ နာသလည်နိုင်တဲ့ ပုံစံတလေချည်သပါပဲ။ ကသည်မဟာ လူတို့သည် ကုဒ်လုပ်ရန် သင်ယူပဌီသ ဆော့ဖ်ဝဲရေသသာသသူမျာသအဖဌစ် ကဌီသထလာသလာပုံဖဌစ်သည်။

ကဘီသကို ပဌန်လည်တီထလင်ပါ။

ထို့ကဌောင့် ရဟေ့ဆက်ပဌီသ ဘီသမျာသကို ပဌန်လည်တီထလင်ပါ- သင့်ကိုယ်ပိုင်ဒေတာ binding ကုဒ်ကိုရေသပါ၊ ပဌည်တလင်သဖဌစ်ကတိတစ်ခုဖန်တီသပါ သို့မဟုတ် သင့်ကိုယ်ပိုင်ပဌည်နယ်စီမံခန့်ခလဲမဟုဖဌေရဟင်သချက်ကို ပဌုလုပ်ပါ။
ကအရာအာသလုံသကိုမည်သူမျဟအသုံသမပဌုရန်အရေသမကဌီသပါ - သို့သော်ယခုသင်မည်သို့ပဌုလုပ်ရမည်ကိုသိသည်။ သင်၏ကိုယ်ပိုင်ပရောဂျက်မျာသတလင် ထိုသို့သောတိုသတက်မဟုမျာသကို နောက်ပိုင်သတလင်အသုံသပဌုရန်အခလင့်အရေသရပါက၊ ယေဘုယျအာသဖဌင့် ကောင်သမလန်ပါသည်။ သင်သည် ၎င်သတို့ကို ဖလံ့ဖဌိုသတိုသတက်စေပဌီသ အခဌာသအရာတစ်ခုခုကို သင်ယူနိုင်မည်ဖဌစ်သည်။

ကနေရာတလင် အဓိကအချက်မဟာ သင့်ကုဒ်ကို ထုတ်လုပ်ရေသသို့ ပေသပို့ရန်မဟုတ်ဘဲ အသစ်တစ်ခုကို လေ့လာရန်ဖဌစ်သည်။ ရဟိပဌီသသာသဖဌေရဟင်သချက်တစ်ခုကို သင်ကိုယ်တိုင်အကောင်အထည်ဖော်ရေသသာသခဌင်သသည် အကောင်သဆုံသပရိုဂရမ်မာမျာသထံမဟ သင်ယူရန် အကောင်သဆုံသနည်သလမ်သဖဌစ်ပဌီသ သင်၏အရည်အချင်သမျာသကို မဌဟင့်တင်ပါ။

source: www.habr.com

မဟတ်ချက် Add