Ava Lite

Ava framework ကို ရေးပြီးတာတော့ ကြာပြီ။ ဒါပေမယ့် bluehost မှာ တင်တော့ ပြဿနာ တက်တာပဲ။ ဘာလို့လည်းဆိုတော့ memory usages အရမ်းများနေလို့။ ဘာကြောင့်များတာလဲလို့ code ကို ကြည့်လိုက်တော့ class ကို recursive ဖြစ်နေတာတွေ့ ရတယ်။

 $this->load=$this; 

အဲဒါက အဓိက ပြဿနာပဲ။ အဲဒီ recursive က dead lock ဖြစ်သွားပြီး memory limit ပြည့်သွားတာ။ အစက hosting ကို သွားပြီး အပြစ်တင်သေးတယ်။ ဒါပေမယ့် ကိုယ့်ဘာသာ code ကို သေချာပြန်စစ်တော့ အဲဒီ နေရာက ပြဿနာ တက်ပါလေရော။ ပြန်ပြင်မယ်ဆိုတော့လည်း လက်ရှိ ရေးထားတဲ့ အပိုင်းတွေကို အကုန်လိုက်မပြင်ချင်ဘူး။ application folder က အပိုင်းကို မပြင်ရအောင် core တစ်ခုလုံး ပြင်ဖို့ ကြိုးစားရကော။ သို့သော် မရ။ ဘယ်လို ရေးရမယ်ဆိုတဲ့ idea ကို ကောင်းကောင်းမရဘူး။ Google ကလိုက်ရှာတော့လည်း မတွေ့ဘူး။ တော်တော်များများက $this->load=$this; နဲ့ ရေးထားတဲ့ tutorial တွေ အရမ်းများနေတယ်။

မဖြစ်သေးပါဘူး။ light version ကနေ စရေးရမယ်ဆိုပြီး စဖြစ်လိုက်တာပဲ။ ရေးမယ်တာ ပြောတာ။ ဘယ်က စရမှန်း မသိ။ UML တွေ ဆွဲကြည့်ရင်းနဲ့ သဘောတစ်ခုပေါက်သွားတာက Singleton ကို ငါ သုံးသင့်တာပဲ ဆိုပြီး သဘောပေါက်သွားတယ်။ Objective-c ကို အဲမှာ ကျေးဇူးတင်ရမယ်။ Objective-C လေ့လာရင်းနဲ့ memory တွေ အတတ်နိုင်ဆုံး နည်းအောင် ဘယ်လိုရေးသင့်လဲဆိုတာကို စဉ်းစားတတ်လာတာ။ iPhone 3Gs လို memory နည်းနည်းလေးမှာ ဘယ်လိုမျိုး သုံးရင် အဆင်ပြေမလဲဆိုတာကို ထည့်သွင်းစဉ်းစားလာရတာကြောင့်လည်း ပါတယ်။ အဲဒါက လက်ရှိ Ava framework ကို ပြန်ပြင်ဖို့ အများကြီး အထောက်အပံ့လာဖြစ်တယ်။ Core တစ်ခုလုံးကို Singleton ထားပြီး အဲဒီမှာပဲ initialize လုပ်သွားရင် သက်သာသွားမယ်။ recursive မဖြစ်တော့ဘူး။
Continue reading

Change Nifty to Ava

အခုခေတ်ကြီးက နာမည်ပေးရတာ ခက်တဲ့ ခေတ်လို့ပဲ ဆိုရမလားမသိဘူး။ Nifty ဆိုတဲ့ နာမည်လေး ကြိုက်လို့ ပေးထားတာ အခု ကို ဒီဘီ ပြောလို့ ရှာကြည့်လိုက်တာ Nifty PHP framework က ရှိပြီးသားဖြစ်နေတယ်။ အခြား နာမည်လှလှလေး နောက်ပြီး Nifty နဲ့ အဓိပ္ပာယ်တူတဲ့ စာလုံးတွေကို ရှာကြည့်တော့လည်း ရှိပြီးသားတွေပဲ။ Nod ဆိုတာကတော့ ခေါင်းညိတ် တယ်ဆိုတဲ့ အဓိပ္ပာယ်ပါ။ ornagai မှာတော့

ခေါင်းညိတ်သည် ။ ခေါင်းညိတ်ပြသည်။ ။ ခေါင်းတစ်ညိမ့်ညိမ့်လုပ်သည် ။ ပန်းစသည် လေ၌တစ်ညိမ့်ညိမ့်လှုပ်ရှားနေသည် ။ ခေါင်းညိတ်ခြင်း ။ ခေါင်းညိတ်ပြခြင်း ။

လို့ ဆိုထားပါတယ်။ NOD 32 ရဲ့ Nemocnica na Okraji Disku (“Hospital at the end of the disk”) လို့ အမည်ရပါတယ်။ အဲဒီ အမည်က ဘယ်က လာတာလဲဆိုတော့ Nemocnice na okraji města (Hospital at the End of the City) ဆိုတဲ့ TV series နာမည်ကို ပြန်လည် ပြုပြင်ထားတယ်လို့ ဆိုပါတယ်။။ Nod Framework ဆိုတာကတော့ လက်ရှိ နာမည်မရှိသေးတာကြောင့် အဲဒီ နာမည်ပဲ ယူလိုက်ရတယ်။ ဒီနေ့ MRT ပေါ်မှာ စဉ်းစားမိတဲ့ နာမည်က Ava လို့ ခေါ်ကြတဲ့ အင်းဝ ပဲ။ အဲဒီ နာမည်လေးကို ပိုကြိုက်တာနဲ့ မနက်မှာပဲ Ava လို့ ထပ်ပြောင်းလိုက်တယ်။

နာမည်ရှာရတာ တော်တော်ခက်တာပဲဗျာ။ နာမည်လှလှလေးတွေ မြန်သမျှ Framework တွေ က ရှိပြီးသား ဆိုတော့ နာမည်ထပ်ပေးလို့ မကောင်းဘူး။ PHP framework မဟုတ်ခဲ့ရင်တော့ python , ruby စတဲ့ framework နာမည်တွေက ရှိပြီးသားတွေ ဖြစ်နေတယ်။ ဒီနေ့ document စရေးဖို့ ကြိုးစားနေတာ။ CodeIgniter လိုမျိုး Document ပုံစံကို သဘောကျပေမယ့် HTML template အတွက် Dreamweaver လိုမျိုး Application သုံးနေရလိမ့်မယ်။ Dreamweaver ကလည်း ဝယ်မသုံးနိုင်။ ခိုးပြီးလည် းမသုံးချင်တော့ မသုံးဘူးပေါ့ ။ ဒါနဲ့ ကိုယ့်ဘာသာ ကိုယ် document ရေးဖို့ php နဲ့ပဲ Ava Framework ကို သုံးပြီး ရေးကြည့်အုံးမယ်။
Continue reading

Font Embed problem in Unicode

ဒီနေ့ ရုံးမှာ MMUnicode Embed အတွက် ထပ်ပြီး update လုပ်ဖို့ စဉ်းစားမိလာတယ်။ မနေ့ညကတည်းက စဉ်းစားမိပေမယ့် ရေးဖို့က ပျင်းနေတယ်။ ရုံးရောက်တော့ လူပျိုကြီးကိုတော့ လှမ်းပြီး အကြောင်းကြားလိုက်သေးတယ်။ ကျွန်တော် ဒီနေ့ comment မှာ ဇော်ဂျီနဲ့ ရိုက်ရိုက် unicode နဲ့ ရိုက်ရိုက် ရိုက်လို့ရအောင် လုပ်တော့မယ်လို့။ တကယ်တန်းတော့ ကျွန်တော် ငပျင်းမို့ပါ။ comment တဲ့သူတွေက unicode နဲ့ ဖတ်ပြီး comment တာတွေကို ဇော်ဂျီ နဲ့ ရိုက်သွားတယ်။ ဒါနဲ့ ကိုယ့်ဘာသာကိုယ် ပြန်ပြောင်းရတာပေါ့။ အဲလို ပြောင်းရတာ ပျင်းလို့ comment ရေးတာတွေကို ဇော်ဂျီနဲ့ ရေးရေး Unicode နဲ့ ရေးရေး ရအောင် လုပ်မယ်ဆိုပြီး ဆုံးဖြတ်ထားတာ။
Continue reading

Zawgyi Keyboard for iOS Development

Zawgyi keyboard ကို iOS အတွက်ကတော့ MMKeyboard အကြောင်းပြောခဲ့ပြီးပါပြီ။ ကျွန်တော့်မှာ လက်ရှိ Ornagai အတွက်ရေးထားတဲ့ MMKeyboard ရှိတယ်။ Ornagai Myanmar To English Dictionary အတွက်ပေါ့။ MMKeyboard ကို တွေ့တော့ စဉ်းစားမိတာ တစ်ခုရှိတယ်။ မြန်မာစာ iPhone Application တွေလုပ်တဲ့အခါမှာ မြန်မာစာ keyboard ပြဿနာ ဖြစ်နေတာပဲ။ မြန်မာစာ keyboard မပါတော့ မြန်မာလိုရိုက်လို့မရဘူးပေါ့။ ဒါကြောင့် Ornagai မှာ သုံးမယ့် Keyboard ကို Open Source ပေးဖို့ စဉ်းစားမိတယ်။ သာမာန်လူတွေ အနေနဲ့ကတော့ မြန်မာစာရိုက်ဖို့ MMKeyboard က အဆင်ပြေပါတယ်။ Developer တွေအတွက်ကတော့ ကိုယ်ပိုင် Keyboard ရှိမှပဲ မြန်မာလိုရိုက်မယ့် Application တွေ အဆင်ပြေမှာ။ တစ်ခြား အပိုင်းတွေက လေ့လာလို့ရပေမယ့် keyboard ရေးဖို့ကတော့ ရှာလို့တွေ့မှာ မဟုတ်ဘူး။ ကျွန်တော်လည်း အစက မရေးတတ်ပါ။ အခု အလုပ်မှာ Objective C ကြီးပဲ တောက်လျှောက်ရေးနေရတော့ နည်းနည်းလေး သိသွားတယ်ဆိုရမယ်။ အခု ကျွန်တော် ရေးထားတဲ့ဟာလေးကို လေ့လာပြီး ယူသုံးလိုက်ရင် iOS developer တွေအနေနဲ့ မြန်မာ App တွေ များများထွက်လာမယ်လို့ မျှော်လင့်ပါတယ်။

Continue reading

Ornagai Setup

Ornagai ကို localhost မှာ ဘယ်လို သွင်းရမလဲ ဆိုသူများအတွက်

https://github.com/saturngod/ornagai-V2/wiki/Ornagai-Setup

အရင်ဆုံးတော့ Ornagai ကို download ချထားဖို့တော့ လိုတာပေါ့။

Nifty Framework

MVC ဘယ်လို ရေးရလဲ။ MVC ကို ကိုယ့်ဘာသာ ကိုယ် PHP နဲ့ရေးချင်တယ်။ MVC ကို CI တို့အခြား Framework မသုံးချင်ဘူး။ ကိုယ်တိုင် စမ်းရေးကြည့်ချင်တယ်။ ဘယ်လို ရေးရမှန်းမသိဘူး။ အဲလိုမျိုး မေးခွန်းလေးတွေ ခဏခဏ ကြားနေရတဲ့အတွက် ကျွန်တော် Nifty ဆိုတဲ့ framework ကို ရေးထားပါတယ်။ အရမ်းကို ရိုးရှင်းပြီး OOP ကိုပဲ အသုံးပြုထားပါတယ်။ MVC ပဲ ပါပါတယ်။ helper တို့ database class တို့ မပါပါဘူး။ core ပဲပေါ့။ core တည်ဆောက်ပုံ သိရှိသွားရင် အပေါ်မှာ ကိုယ့်ဘာသာကိုယ် helper class ထည့်တာတို့ database class ထည့်တာတို့ကို လွယ်လွယ်ကူကူ ဖန်တီးနိုင်ပါလိမ့်မယ်။
Continue reading

Deprecated features in PHP 5.3.x

PHP 5.3 မှာ သုံးလို့မရတော့တဲ့ function တွေပါလာပါတယ်။ ကျွန်တော်တောင် ornagai မှာ split function သုံးထားတာကို ပြန်ပြင်လိုက်ရတယ်။ အဲလိုအခါတွေမှာ ဘာ function အစားထိုးရမလဲဆိုတာကို သိထားဖို့လိုပါတယ်။ အဲဒီအတွက်လည်း php.net မှာ ညွှန်းဆိုထားပြီးသားပါ။ split အစား preg_split() ကို အစားထိုးသုံးရပါတယ်။ အခြား function တွေလည်း အစားထိုးပြောင်းလဲသုံးရတာတွေ ရှိပါတယ်။ deprecated လုပ်လိုက်တာလည်း ကောင်းပါတယ်။ အချို့ function တွေ duplicate ဖြစ်နေတာတွေရှိနေတယ်။ လိုလည်း မလိုလောက်ဘူးထင်တာပဲ။ အချို့ function တွေက သုံးတဲ့လူတော်တော် ရှားပါတယ်။
Continue reading

MySQL Workbench

ရန်ကုန်မှာတုန်းက မသုံးဖြစ်ခဲ့ဘူး။ MySQL က မြန်မာနိုင်ငံကနေ download ချခွင့်မရှိလို့ပါ။ SUN က သူ့ product တွေကို အဲတုန်းက မြန်မာနိုင်ငံကို download ချခွင့်မပေးထားဘူး။ အခုတော့ oracle လက်အောက် ရောက်သွားပြီဆိုတော့ ဘယ်လိုလဲတော့မသိဘူး။ MySQL Workbench version 4 တုန်းက သုံးဖူးသေးတယ်။ အဲတုန်းကတော့ သုံးရတာ တော်တော်လက်ပေါက်ကပ်တယ်။ ဘာဖြစ်လို့လည်းမသိဘူး။ သုံးလို့ကို မကောင်းဘူးဖြစ်နေတာ။ အခုတလောတော့ MySQL Workbench နဲ့ တော်တော်အဆင်ပြေနေတယ်။ Database Design ကို MySQL အတွက်ဆွဲရင် MySQL Workbench က တော်တော်လေးကို မိုက်တယ်။ Index တွေကော Foreign Key တွေကော အကုန် လုပ်လို့ရတယ်။ phpMyadmin နဲ့ realitionship ချိတ်တာ တော်တော်လေးကို ခက်တယ်လို့ ဆိုရမယ်။ MySQL Workbench က GUI မှာ အကုန်လုပ်။ ပြီးရင် SQL ထုတ်။ phpMyadmin မှာ import လုပ်။ ပြီးတာပဲ။ ပြင်စရာတွေရှိရင်လည်း Create Table မဟုတ်ပဲ Alter Table လည်း လုပ်လို့ရသေးတယ်။ နောက်ပြီး လက်ရှိ databaes ကနေပြီး reverse engine လည်းလုပ်လို့ရတော့ တော်တော်အဆင်ပြေတယ်။ MySQL သမားတွေ သုံးသင့်တဲ့ Program တစ်ခုလို့ဆိုရလိမ့်မယ်။ MySQL Workbench ကိုတော့ http://dev.mysql.com/downloads/workbench/5.0.html အဲမှာ download ချလို့ရပါတယ်။