Framework God လေးတွေ မဖြစ်အောင် သိထားသင့်တာလေးတွေနဲ့ Framework တွေ Library တွေရဲ့ သဘောတရား
ပထမဆုံး web developer ကိုလေ့လာတဲ့သူတိုင်း popular ဖြစ်တဲ့ framework တွေ library တွေကို လေ့လာချင်ကြတာသဘာဝပါပဲ။ ဘာလို့လဲဆိုတော့ သူတို့က code ရေးရတာ နည်းတယ်။ လွယ်တယ်။ အလုပ်ခေါ်စာတွေမှာအတွေ့များတယ်။ ဒီလိုနဲ့ပဲ လူတိုင်းက trend တွေကိုပဲ လေ့လာဖို့ အားသန်ကြပြီး အခြေခံတွေကို ပြီးစလွယ်ကျော်ခွပြီး လေ့လာကြတယ်။ ဥပမာ PHP ကို သေချာ မလေ့လာဘဲ Laravel ကို တန်းသွားတာမျိုးပေါ့။ ဒီလိုပဲ တစ်ခြား framework တွေ library တွေကိုလဲ သူတို့ရဲ့ language တွေကို အရင်သေချာ မလေ့လာဘဲ ကျော်ခွသွားကြတာတွေရှိပါတယ်။ ဘာလို့ဆို framework တွေ library တွေက သင်ရတာ လွယ်တယ်လေ right ? ဒါပေမဲ့ ဒါက ကောင်းတဲ့ အလေ့အကျင့်တော့မဟုတ်ပါဘူး။ ဘယ်အချိန်မှာ ပြဿနာ ကောင်းကောင်းတတ်လာနိုင်လဲဆိုရင် လုပ်ငန်းခွင်ထဲရောက်တဲ့ အချိန်မှာ ပြဿနာရှိလာပါမယ်။
ပထမဆုံးအနေနဲ့ framework တွေ library တွေက website တွေကို တည်ဆောက်နိုင်တာမဟုတ်ပါဘူး။ သူတို့က တည်ဆောက်ဖို့ လွယ်ကူအောင် လုပ်ပေးတာမျိုးပါ။ နောက်ဆုံးကျ သူတို့ compile လုပ်လိုက်ရင် html css js php စတဲ့ file တွေပဲ ရလာတာကြီးပါပဲ။
ဥပမာပေးရရင် အိမ်ဆောက်တဲ့အခါ လူတွေနဲ့ အုတ်သယ်တာနဲ့ ကားနဲ့သယ်တာမျိုးကွာတာပါ့။ လူနဲ့ သယ်ရင် အချိန်ကြာမယ်။ ပိုပင်ပန်းမယ်။ ကားနဲ့ သယ်ရင်ကျ အချိန်ကုန် သက်သာမယ်။ လူမပင်ပန်းဘူး။ တကယ်က အိမ်ဆောက်ဖို့ ဆိုရင် လူတွေ ကားတွေဆိုတာက ပကာသနတွေပါ။ အဓိက လိုအပ်တာက အုတ်ပဲ ဖြစ်ပါတယ်။ အိမ်အကြီးကြီးကို မြန်မြန်ဆောက်ချင်ပြီး လူပင်ပန်းတာသက်သာချင်ရင် လူတွေအပြင် ကားတွေပါ သုံးပြီး အုတ်သယ် မြန်မြန်ပြီးမယ်။ အိမ်က စာကလေးအိမ်လောက်
ဆိုရင်တော့ လူနဲ့ အုတ်နဲ့တင် ပြီးပါတယ်။ မလိုတဲ့ကားတွေ သုံးစရာမလိုပါဘူး။ ဒီလိုပဲ။
framework တွေ library တွေက ဘာနဲ့တူလဲဆိုရင် ကားတွေ စက်ယန္တရားတွေနဲ့ တူတယ်။ သူတို့ကို မောင်းနှင်မဲ့ လူတွေက developer တွေပေါ့။ အဓိက လိုအပ်တဲ့ အုတ်ဆိုတာကတော့ programing language တွေ နဲ့ တခြားအဓိက ကျတဲ့ language တွေကို ဆိုလိုတာဖြစ်ပါတယ်။ အိမ်ဆိုတာကတော့ website ကြီးပေါ့။ website ဆိုတာကြီး ဖြစ်လာဖို့က framework တွေ library ကြီးတွေ မလိုပါဘူး။ developer တွေနဲ့ programing language တွေပဲ လိုအပ်တာပါ။ framework တွေ library တွေဆိုတာက medium to large website တွေ ဆောက်တဲ့အခါ မြန်မြန်တည်ဆောက်နိုင်ဖို့ maintain လုပ်ရတာ ပိုလွယ်ကူစေဖို့ စတဲ့ ရည်ရွယ်ချက်တွေအတွက် developer တွေသုံးကြတဲ့ tool သက်သက်ပါပဲ။
နောက်ပြီး ကျောင်းသားတွေထင်နေတာက အလုပ်ရပြီဆိုရင် popular ဖြစ်နေတဲ့ framework တွေ library တွေ သုံးပြီး website အသစ်တွေကို craft လုပ်ရမယ်ပဲတွေးထားကြတာပါ။ မလုပ်ရဘူးဆိုတော့ မဟုတ်ပါဘူး လုပ်ရမှာပါ။ ဒါပေမဲ့ အသစ်တွေတင်မဟုတ်ဘဲ legacy site တွေကိုပါ maintain / migrate ပြုလုပ်ရပါသေးတယ်။ နှစ်တိုင်း နှစ်တိုင်း company တွေက website အသစ်ရေးနေကြတာမဟုတ်ပါဘူး။ နဂိုရှိပြီးသား website အဟောင်းတွေကိုပဲ feature အသစ်ထည့်ချင်လို့ဖြစ်ဖြစ် maintain အတွက်ဖြစ်ဖြစ် codebase ကို update လုပ်ဖို့ ဖြစ်ဖြစ် လာအပ်တဲ့အခါ site တွေက PHP နဲ့ ရေးထားတွေ template engine တွေနဲ့ ရေးထားတာ တွေ SSG နဲ့ ရေးထားတဲ့ site တွေက မနည်းမနောပါပဲ။ ဒီအချိန်ကြရင် next js framework တွေ Laravel တွေက အသုံးမဝင်တော့ပါဘူး။ သူတို့ရဲ့ အဓိက language တွေဖြစ်တဲ့ PHP , JavaScript, Node JS စတာတွေအပေါ်မှာ ဘယ်လောက်အခြေခံရှိခဲ့လဲ။ web development နဲ့ သက်ဆိုင်တဲ့ နည်းပညာတွေကို ဘယ်လောက်ထိ အချိန်ပေး လေ့လာခဲ့လဲ။ အခြေခံက စကားပြောပါပြီ။ ဒီနေရာမှာ တိုင်ပတ်ပြီး မလုပ်တတ် မကိုင်တတ်ရင်တော့ လုပ်ငန်းခွင်ထဲမှာ အခက်အခဲတွေ ရှိလာနိုင်ပါတယ်။
စပြီးလေ့လာထဲက အခြေခံကနေ တစ်ဆင့်ချင်းလေ့လာပါ။ language တွေရဲ့ concept တွေကို သေချာလေ့လာပါ။ language ကိုပိုင်နိုင်မှ framework တွေ library တွေကို လေ့လာပါ။ language သီးသန့်နဲ့ project တွေကို မဖြစ်မနေ ရေးပါ။ နောက်မှ framework library တွေနဲ့ ရေးပါ။ သင်တန်းတွေကိုပဲ အရမ်းအားမကိုးပါနဲ့။ ကို့ဘာသာလဲ အားစိုက်ပြီး လေ့လာရပါမယ်။ documentation ဖတ်တဲ့ အလေ့အကျင့်ကို လုပ်ပါ။ ဒီလောက်
ပါပဲ။ see you guys.