PHP ကို မလုပ္ျဖစ္တာ အေတာ့္ကို ၾကာခဲ့ျပီ။ PHP ျပန္လုပ္မယ့္ ဆိုမွ ဘယ္ framework ေတြ ရိွလဲ ျမန္မာႏိုင္ငံမွာ ဘယ္ framework အားေကာင္းလဲဆိုတာ ေလ့လာၾကည့္ေတာ့ Laravel ပဲ။ ကၽြန္ေတာ္ PHP framework ေတြ စထြက္တုန္းက CodeIgniter , Symfony, Cake စတာေတြက အေတာ္ကို ေခတ္စားသည့္ အခ်ိန္။ အဲဒီအခ်ိန္တုန္းကေတာ့ အေတာ္ကို ေရြးရခက္တာ။ CodeIgniter က ေလ့လာရတာ အလြယ္ဆံုးျဖစ္ျပီး share hosting ေတြမွာ တင္လို႕ ရေတာ့ အသံုးျပဳခဲ့တယ္။ အဲဒီ အခ်ိန္ေတြက Digital Ocean လိုမ်ဳိး $10 ေလာက္နဲ႕ VPS ေကာင္းေကာင္းရဖို႕ မလြယ္ဘူး။ အခုအခ်ိန္မွာေတာ့ Digital Ocean, Linode စတာေတြမွာ VPS ကို ေစ်းသက္သက္သာသာ နဲ႕ ရႏိုင္ပါတယ္။
Larvel က သေဘာအက်ဆံုးကေတာ့ documentation ပဲ။ CodeIgniter ကို ေလ့လာျဖစ္တာလည္း documentation ေကာင္းတာေၾကာင့္။ ေနာက္ျပီး Offline documentation ရတာေၾကာင့္လည္း ပါတယ္။ Laravel documentation ကို အေတာ္ေလး ျပည့္ျပည့္စံုစံု ဖန္တီးထားတာ သူ႕ရဲ႕ အားသာခ်က္ ဆိုရမယ္။ ေနာက္ျပီးေတာ့ Laravel ကို စေလ့လာမယ္ဆိုရင္ သူ႕ရဲ႕ documentation ကေန ဖတ္ျပီး ေလ့လာလိုက္တာနဲ႕ အေျခခံ အဆင့္ကို ေကာင္းေကာင္း သိသြားႏုိင္ပါတယ္။
တေန႕က Log ထည့္မယ္ဆိုျပီး စဥ္းစားလုိက္တာ laravel မွာ log အတြက္ Facades ပါထားျပီးသား ျဖစ္ေနတာ ေတြ႕ေတာ့ developer ေတြ အတြက္ ေသခ်ာ ဖန္တီးထားသည့္ framework ဆိုတာကို သိႏုိင္တယ္။
ပံုမွန္ အားျဖင့္ ကၽြန္ေတာ္ ORM ကို သေဘာမက်ဘူး။ ေႏွးတယ္။ မလြတ္လပ္ဘူး လို႕ ထင္ခဲ့ေပမယ့္ Eloquent ကို ေတာ့ ေတာ္ေတာ္ သေဘာက်တယ္။ Query Builder နဲ႕ တြဲထားျပီး ဖန္တီးထားျပီး relationship ပိုင္းေတြမွာ development အပိုင္းေတြ ေတာ္ေတာ္ေလးကို သက္သာသြားတယ္။ သို႕ေပမယ့္ raw query ေလာက္ေတာ့ powerful မျဖစ္ေပမယ့္ development နဲ႕ ေရရွည္ maintaince အပိုင္းအတြက Eloquent ကို ပိုသေဘာက်မိတယ္။
ေနာက္ျပီး laravel က အရမ္းလြတ္လပ္တယ္။ Eloquent သံုးလည္း ျဖစ္တယ္။ မသံုးလည္းျဖစ္တယ္။ Laravel Mix ကို သံုးလည္း ျဖစ္တယ္။ မသံုးလည္းျဖစ္တယ္။ Laravel အတြက္ Package ေတြ ဖန္တီးလို႕ရ သလို အျခားသူဖန္တီးထားသည့္ package ေတြကိုလည္း ယူသံုးလို႕ ရတာကေတာ့ အေတာ္ေလးကို သေဘာက်တယ္။ Laravel မွာ tinker က တကယ့္ကို powerful ျဖစ္ပါတယ္။ Tinker ကေတာ့ Laravel REPL framework ပါ။
Laravel က အရမ္းကို powerful ျဖစ္ေတာ့ ျပႆနာကေတာ့ PHP ကုိ ေသေသခ်ာခ်ာ မေလ့လာပဲ laravel နဲ႕ စသည့္ ျပႆနာပဲ။ PHP ကို မေလ့လာဘူးပဲနဲ႕ laravel ကို စျပီးေလ့လာဖို႕ေတာ့ အားမေပးခ်င္ဘူး။ Ruby ကို မေလ့လာပဲ Rails ကို စလုပ္သလို ျဖစ္ေနလိမ့္မယ္။ အခုမွ စေလ့လာမယ့္ သူေတြကို ခ်က္ျခင္း framework ေတြကို မေလ့လာေစခ်င္ဘူး။ အရင္ဆံုး PHP basic ပိုင္းေတြ syntax ေတြ logical thinking ေတြကို ေလ့လာေစခ်င္တယ္။ framework ကို စေလ့လာမယ္ဆိုရင္ framework ေပၚမွာ အရမ္းအားကိုးျပီးေတာ့ အခ်ဳိ႕ ပိုင္းေတြ စဥ္းစားတတ္မွာ မဟုတ္ဘူး။ ဥပမာ SQL query ေကာင္းေကာင္း မေရးတတ္ေတာ့ဘူး။ Log အတြက္ ကိုယ့္ဘာသာကိုယ္ ဘယ္လို တည္ေဆာက္ရမလဲ တည္ေဆာက္သင့္ သလဲေတြ မစဥ္းစားျဖစ္ေတာ့ဘူး။ laravel မွာ package ရွာမေတြ႕သည့္ အခါ မွာ ကိုယ္ပိုင္ package တစ္ခု ေရးဖို႕ လန္႕ေနလိမ့္မယ္။ ေနာက္ျပီးေတာ့ အျခား language ကို ေျပာင္းဖို႕ အခက္အခဲ ျဖစ္လိမ့္မယ္။ ေျပာင္းမယ္ဆုိရင္လည္း အဲဒီလိုမ်ဳိး framework ရိွလား ဆိုျပီး ရွာတာကေန စရွာ ျဖစ္ လိမ့္မယ္။ ဒါေၾကာင့္ စေလ့လာမယ့္ သူေတြကိုေတာ့ laravel ထက္ စာရင္ vanilla php နဲ႕ project ေတြ ေရးၾကည့္ေစခ်င္တယ္။ ဒါမွသာ ပိုျပီး စဥ္းစားတတ္လာလိမ့္မယ္။ လုပ္ငန္းခြင္ထဲမွာ ဆိုရင္ေတာ့ pure php နဲ႕ project ေရးတာထက္ laravel နဲ႕ စလိုက္ရင္ေတာ့ အေတာ့္ကို ျမန္တာ အမွန္ပါပဲ။ ကၽြန္ေတာ္ ထင္ထားတာထက္ development ပိုင္းက laravel နဲ႕ဆို ေတာ္ေတာ္ေလးျမန္သြားပါတယ္။
Leave a Reply