Code igniter ကို မသုံးဖြစ်ခင်က ကျမကို web application framework လို့ လာပြောရင် အူကြောင်ကြောင် ပြန်ကြည့်မိပါလိမ့်မယ်။ (အဲလို ဗဟုသုတ ကြွယ်ဝတာ။)
web application တစ်ခုကို သုညကနေ စလုပ်မယ် ဆိုပါစို့။ folder တွေကို ကိုယ့်နည်း ကိုယ့်ဟန်နဲ့ structure လုပ်ရမယ်။ လိုအပ်မယ့် plugin တွေကို ရှာပြီး download လုပ်ရမယ်။ ဘယ် architecture (MVC, Model1, Model2, …) သုံးမလဲဆိုတာ စဉ်းစားရမယ် စသဖြင့် အချိန် တော်တော် ကြာပါတယ်။ သူများတွေ သုံးလေ့ရှိတဲ့ ဥပမာနဲ့ ပြောရရင် ကားတစ်စီး ထုတ်ဖို့အတွက် ကားဘီးကနေစပြီး ပြန်တီထွင်နေတာပေါ့။ (Reinventing the wheels. My favorite lecturer’s favorite quote.)
လိုရင်းပြန်ရောက်အောင် တစ်ခြား အကြောင်းတွေကို ရပ်ပြီး code igniter အကြောင်း ဆက်ဦးမယ်။ သူ့ကို စသုံးဖြစ်ပုံက ရုံးမှာ project တစ်ခုကို open-source သုံးပြီး extreme programming ပုံစံနဲ့ develop လုပ်ရမယ့် project တစ်ခု ရှိနေတယ်။ database ကလည်း ကြီးကြီးမားမား တစ်ခုကို handle လုပ်ဖို့ လိုနေတယ်။ ဒီလိုနဲ့ project manager ရဲ့ ဆုံးဖြတ်ချက်အရ PHP နဲ့ PostgreSQL သုံးမယ်ပေါ့။ ပြီးတော့ code igniter framework သုံးရမယ်တဲ့။ ဒီလိုနဲ့ဘဲ စလေ့လာ ဖြစ်သွားတာ။
INSTALLATION
ကိုယ့်မှာ PHP ရယ် ကို်ယ်သုံးမယ့် database တစ်ခုခုကို ကြိုသွင်းထားပြီးပြီဆိုရင် CI ကို သုံးဖို့အတွက် ထွေထွေထူးထူး ထပ်ပြီး install လုပ်စရာ မလိုတော့ဘူး။ Download page ကို သွားပြီး download ပြီး ကိုယ့်ရဲ့ development folder ထဲကို unzip လုပ်ချလိုက်ရုံဘဲ။ development folder သပ်သပ် လုပ်မထားဘူးဆိုရင် Program Files\Apache\htdocs အောက်မှာ folder တစ်ခုလုပ်ပြီး အဲဒီ folder ထဲကို unzip လုပ်လိုက်ရုံပါဘဲ။ ဥပမာ project နာမည်က myNewProject ဆိုရင် CI ရဲ့ directory structure ကို အောက်က ပုံအတိုင်း မြင်ရပါမယ်။
ကိုယ်နဲ့ဆိုင်တာက application အောက်က controllers, models နဲ့ views ဆိုတဲ့ folder တွေပါဘဲ။ MVC (Model-View-Controller) architecture မသုံးချင်ဘူးဆိုရင် controllers နဲ့ views folder တွေကိုဘဲ သုံးလည်း ရတယ်။ ကိုယ့်ရဲ့ design files တွေအားလုံးကို views အောက်မှာ ထားပြီး PHP code တွေ ကို controllers မှာ ရေးရမှာပေါ့။ (model သုံးမယ်ဆိုရင် database queries တွေကို model အောက်မှာ ရေးပြီး controller ကနေ ယူသုံးရမယ်။) CI စစသုံးချင်း URL နဲ့တော့ နည်းနည်း ကြောင်သွားတယ်။ MVC သုံးထားတော့ Java Servlet တွေကို ခေါ်ပုံမျိုးနဲ့ သွားတူတယ်။ အကြိုက်ဆုံးကတော့ configuration တွေ များများ စားစား လုပ်စရာ မလိုလို့။ config အောက်က config.php မှာ host address (e.g., http://localhost/myNewProject) ပေးပြီး database.php မှာ အောက်က အတိုင်း configure လုပ်ရုံဘဲ။
detail တော့ မရေးတော့ပါဘူး။ tutorial link လေးတွေ စုထားတာ တင်လိုက်တယ်။
DEVELOPMENT ENVIRONMENT
IDE အနေနဲ့တော့ pirate version ရရင် Dreamweaver MX ကတော့ အကောင်းဆုံးပေါ့။ ကျမတော့ open-source နောက်လိုက်နေရလို့ EasyEclipse for PHP ကို သုံးပါတယ်။ Java အတွက်တော့ EasyEclipse က တော်တော် နာမည်ရပြီးသားပါ။
နောက်များမှ ကြုံရင် PostgreSQL အကြောင်းနဲ့ CodeIgniter အတွက် အရမ်း handy ဖြစ်တဲ့ Rapyd ဆိုတဲ့ CRUD (Create, Read, Update, Delete) extension အကြောင်း ရေးပါဦးမယ်။
~hApPy PrOgRaMmInG~
References worth to take a look:
CodeIgniter (Home Page)
Comparison of Web application framework (Wikipedia)
Video tutorials at CodeIgniter Home Page
Godbit Project (Introduction to Code Igniter: Part 1)
How I use CodeIgniter's MVC (Jim O'Halloran)
Building a Complete CodeIgniter Application: Part 1 (Jim O'Halloran)
Building a Complete CodeIgniter Application: Part 2 (Jim O'Halloran)
CI Quick Ref Chart (Cheat Sheet)
P.S mmopenlibrary မှာ MrDBA က codeIgniter ebook တင်ထားပေးပါတယ်။