Showing posts with label Programming. Show all posts
Showing posts with label Programming. Show all posts

November 19, 2009

Framework and Redistributable Package

အရင္တုန္းက Programming Language ေတြမွာ Program တစ္ခုေရးၿပီးရင္ Binary code လို႔ ေခၚတဲ့ .exe ဖိုင္ ထုတ္ေပး ပါတယ္။ အဲဒီ .exe ဖိုင္ကို ဘယ္ကြန္ပ်ဴတာမွာပဲ run ၾကည့္ၾကည့္ run လို႔ ရပါတယ္။ အခုအခ်ိန္မွာ ေခတ္စားေနတဲ့ .Net တို႔ Java တို႔ကေတာ့ အဲဒီလိုမဟုတ္ပါဘူး။ ဥပမာ C#.Net တို႔ VB.Net တို႔နဲ႔ ေရးသားထားတဲ့ Program ေတြဟာ ကြန္ပ်ဴတာတိုင္းမွာ run လို႔ မရပါဘူး။ အဲဒီ ကြန္ပ်ဴတာမွာ .Net Framework ဆိုတာရွိမွ run ႏိုင္ပါတယ္။ Java ဆိုလည္း အဲဒီအတိုင္းပါပဲ။ JRE လို႔ေခၚတဲ့ Java Runtime Environment ရွိမွ Java Program ေတြက run ႏိုင္ပါတယ္။

.Net Framework က Version 1.1, 2.0, 3.0 စသည္ျဖင့္ ရွိၾကပါတယ္။ Programmer တစ္ေယာက္က .Net 2.0 Framework ကိုအေျခခံၿပီး ေရးသားလိုက္တဲ့ Program တစ္ခုကို စာဖတ္သူက အသံုးျပဳခ်င္ရင္ စာဖတ္သူ ကြန္ပ်ဴတာထဲမွာ .Net Framework 2.0 ရွိရပါမယ္။ 1.1 ရွိရံုနဲ႔ မရပါဘူူး။

အခုေနာက္ပိုင္း Program ေတြ ေတာ္ေတာ္မ်ားမ်ားဟာ .Net နဲ႔ ေရးထားတာေတြ မ်ားပါတယ္။ ဒါေၾကာင့္မို႔ စာဖတ္သူ ကြန္ပ်ဴတာထဲမွာ .Net Framework ရွိမွ အဲဒီ Program ေတြကို အသံုးျပဳႏိုင္မွာပါ။ (Control Panel ထဲက Add/Remove Programs ကိုဖြင့္ၿပီး စစ္ေဆးႏိုင္ပါတယ္) တခ်ိဳ႕ Program ေတြက Install လုပ္တဲ့အခ်ိန္ကတည္းက .Net မရွိလို႔ မရပါဘူးလို႔ ေျပာပါတယ္။ တခ်ိဳ႕ကက် ဘာမွ မေျပာဘဲ တင္သြားတယ္။ သံုးၾကည့္ေတာ့ သံုးမရဘူး။ တခ်ိဳ႕ကက် .Net မရွိရင္ .Net ကို သူ႔အလိုလို install လုပ္သြားပါတယ္။ တခ်ိဳ႕ကက် .Net မရွိဘူး၊ တင္လိုက္ဦးဆိုၿပီး ခိုင္းပါတယ္။ အဲဒီအခ်ိန္မွာ ကိုယ့္ဆီမွာ .Net Installer မရွိရင္ အဆင္ေျပမွာမဟုတ္ဘူး။ ကၽြန္ေတာ္တို႔ဆို .Net ကို Version မ်ိဳးစံု ေဆာင္ထားရပါတယ္။ JRE ကိုလည္း အဲဒီအတိုင္းပါပဲ။

Framework လိုမ်ိဳး လိုအပ္တဲ့ေနာက္တစ္ခုက Redistributable Package ပါ။ ဥပမာ Program တစ္ခုက Database သံုးထားတယ္၊ SQL Server ကိုသံုးတယ္ ဆိုပါစို႔။ အဲဒီအခါမွာ စာဖတ္သူကြန္ပ်ဴတာ SQL Server Package ရွိရပါလိမ့္မယ္။ Package ဟာ Application ေတြက ေတာင္းတဲ့ Request ကို ျဖည့္ဆည္းေပးရံုေလာက္ပဲ ရွိၿပီး ကၽြန္ေတာ္တို႔က သြားအသံုးျပဳလို႔မရပါဘူး။ စာဖတ္သူ Database တစ္ခု ဖန္တီးဖို႔အတြက္ SQL Package ေလး ရွိရံုနဲ႔ မရပါဘူး။

အဲဒီလိုမ်ိဳးပါဘဲ။ Visual C++ Package ေတြလိုမ်ိဳးလည္း တခ်ိဳ႕ Program ေတြအတြက္ လိုအပ္ပါတယ္။ ဒါေၾကာင့္ Package ေတြကိုလည္း ေဆာင္ထားသင့္ပါတယ္။

ေနာက္ DirectX တို႔ Windows Installer တို႔ကိုလည္း ေဆာင္ထားရင္ မမွားပါဘူး။ အဲဒီႏွစ္ခုက Windows ထဲမွာ ပါၿပီးသားျဖစ္ေပမယ့္ Version ျမင့္တာကို ေဆာင္ဖို႔ေျပာတာပါ။ တစ္ခ်ိဳ႕က ေျပာပါတယ္။ PowerDVD တင္တာ DirectX မရွိလို႕ တင္မရဘူးျဖစ္ေနတယ္ဆိုၿပီးေတာ့ပါ။ အမွန္က DirectX က Windows ထဲမွာ ပါၿပီးသားပါ။ PowerDVD က Version ျမင့္တာကို ေတာင္းတာပါ။ မွတ္မွတ္ရရ DirectX 9.0c ကို ေတာင္းပါတယ္။

October 29, 2008

Java IDE

စကားႀကိဳ ခံထားပါရေစ။ ကၽြန္ေတာ္ Programmer မဟုတ္ပါ။ ဒါေပသိ ကြန္ပ်ဴတာတကၠသိုလ္မွာ ေလးႏွစ္ၾကာ ပ်င္းရိစြာေနခဲ့ရေသာ ေက်းဇူးေတြေၾကာင့္ အနည္းငယ္ တီးမိေခါက္မိပါတယ္။ ေက်ာင္းက Language ကိုလည္း မ်ိဳးစံုသင္ေသာေၾကာင့္ ဟိုစပ္စပ္ ဒီစပ္စပ္နဲ႔ အကုန္လံုးကို အနည္းငယ္စီသိပါတယ္။

ေက်ာင္းက အဲဒီလိုပါ။ C++, VB, Java စတာေတြကို တစ္ႏွစ္ခ်င္းစီ သင္ပါတယ္။ ဒါေပမဲ့ ေက်ာင္းသာ ၿပီးသြားေရာ၊ ဘယ္ေက်ာင္းသားမွ ျဖစ္ျဖစ္ေျမာက္ေျမာက္ မတတ္ပါ။ ဘာေၾကာင့္လဲဆိုေတာ့ ဟိုဟာလည္း အင္ထရို၊ ဒီဟာလည္း အင္ထရိုနဲ႔ ကၽြန္ေတာ္တို႔လည္း အင္ထရိုကေန မတတ္ေတာ့တာပါ။အခုလည္း ၾကည့္ပါဦး။ Third Year မွာ Java သင္တယ္။ Hons မွာ မသင္ေတာ့ဘူး။ Master မွာလည္း မသင္ဘူး။ အဲ အခု Master ေျဖၿပီးေတာ့ Thesis လုပ္ရမယ္တဲ့။ Theory တစ္ခုခုကို အေျခခံၿပီးSoftware တစ္ခု ေရးရမယ္တဲ့။ Java နဲ႔ဆို ပိုေကာင္းတယ္တဲ့။ သူတို႔ ေျပာသြားတာ တစ္ခြန္းရယ္။ ေက်ာင္းသားေတြမွာေတာ့ ဖုန္တက္ေနတဲ့ Java စာအုပ္ေတြကို ျပန္ရွာ၊ ျပန္က်င့္။

အဲ. အဲဒီမွာ ေက်ာင္းသားေတြ ဒုကၡစေတြ႕ေတာ့ပါပဲ။ သိတဲ့အတိုင္း Software တစ္ခုေရးေပးရမွာဆိုေတာ့ GUI လိုလာၿပီေလ။ Form ေတြေရးရမည္။ Button ေတြထည့္ရမယ္။ ဘယ္ Button ကို ႏိွပ္ရင္ ဘာျဖစ္ေစ၊ ညာျဖစ္ေစေပါ့။ မန္းေပးရမွာ။ ၿပီးေတာ့Menu Bar ေတြ ေဖာက္ရမယ္။ File ကေန Exit ကို ႏိွပ္ရင္ Program ႀကီးပိတ္။ အဲဒီလိုေလ။ခက္တာက ကြန္ပ်ဴတာတကၠသိုလ္က သင္ေပးတဲ့ Java ဆိုတာက အဲဒီအဆင့္ထိ သင္မေပးပါဘူး။ ေျပာမယ္ဆို CUI (Command-line User Interface) ပဲ သင္တယ္။ GUI (Graphical User Interface) မသင္ဘူး။ လံုး၀ မသင္ဘူး။ အဲ အခု Thesis က်ေတာ့ GUI နဲ႔ လုပ္ရမွာ။ ဘယ္လိုႀကီးမွန္းကို မသိပါဘူးဗ်ာ။ ဒါေပမဲ့ ကြန္ပ်ဴတာေက်ာင္းသားေတြေလ။ Master ထိ တက္ၿပီးၿပီ။ Thesis လုပ္မွ ဘဲြ႕ရမွာ။ ဘာရမလဲ။ လုပ္ၾကမယ္ေပါ့။ ကဲ. လာ Java နဲ႔ GUI Program ေရးၾကမယ္ေပါ့။ေက်ာင္းမွာ သင္သေလာက္က SDK ေလးနဲ႔တင္ Run တဲ့အထိပဲေလ။ Notepad ေလးဖြင့္၊ Java Code ေတြရိုက္၊ သိမ္း၊ ၿပီးရင္ cmd ကေန သြား Run။ ဒီထိပဲ။အခု GUI က်ေတာ့ Notepad မွာ ထိုင္ၿပီး Code ေနလို႔ မရေတာ့ဘူးေလ။ ရေအာင္လုပ္လည္း လခ်ီၾကာမွာပဲ။

ကဲ အဲဒီေတာ့ Java ကို GUI ေရးလို႔ရတဲ့ Program ေတြ ရွာရေတာ့တာေပါ့။ ေတြ႕တယ္။ NetBeans တဲ့။ JBuilder တဲ့။ ေနာက္လည္း က်န္ေသးတယ္။ ဒါေပမဲ့ ဒီႏွစ္မ်ိဳးက လူသံုးမ်ားတယ္တဲ့။အဲ ႏွစ္ခုႀကီးမ်ားေတာင္။ ဘယ္ဟာက ပိုေကာင္းသလဲေပါ့။ Master တန္းက သူငယ္ခ်င္းေတြက Master မပါတဲ့ အေနာ့္ဆီ အပူလာကပ္ၿပီး ေမးပါတယ္။ အဟမ္း.. အေနာ္လည္း နည္းနည္းပါးပါးစမ္းၿပီး NetBeans ကိုသာ သံုးလို႔ ေျပာလိုက္ပါတယ္။ ဘာေၾကာင့္လဲဆိုေတာ့ NetBeans က Free ရတာပါ။ JBuilder က ၀ယ္သံုးရတာပါ။

JBuilder ဟာ NetBeans ထက္ အမ်ားႀကီး သာေပမယ့္ ၀ယ္သံုးရတာဆိုေတာ့ အဆင္မေျပေတာ့ပါဘူး။ဒီႏုိင္ငံမွာပဲေနမယ္။ ဒီမွာပဲ ေရးစားမယ္ဆိုရင္ေတာ့ JBuilder ပဲကိုင္ေပါ့။ အဲ အျပင္ထြက္မယ္ဆိုရင္ေတာ့ ဟိုမွာေတြက Copyright ရိွတယ္ေလ။ ကိုယ္ အလုပ္လုပ္မယ့္ ကုမၸဏီက JBuilder ကို ၀ယ္သံုးသလား၊ မသံုးလားဆိုတာ ကိုယ္သိႏိုင္တဲ့ ကိစၥမွမဟုတ္ပဲ။ ဒါေပမဲ့ သူတို႔လည္း Free ရတဲ့ NetBeans ကိုပဲ သံုးဖို႔မ်ားပါတယ္လို႔ ထင္ထားတာ။ ဟိုတစ္ေန႔က စလံုးက သူငယ္ခ်င္းႏွစ္ေယာက္ကိုေမးၾကည့္ေတာ့ ဟုတ္တယ္ NetBeans ပဲ သံုးၾကတာတဲ့။ တစ္ေယာက္ကေတာ့ ေျပာပါတယ္။ မင္းဘာသာမင္း ဘယ္ IDE ပဲ သံုးသံုး ကိစၥမရိွဘူးတဲ့။ အဓိကက ေပးတဲ့အလုပ္ ၿပီးဖို႔ပဲတဲ့။ ကၽြန္ေတာ္ဆိုရင္ေတာ့ ရတဲ့လခေလးနဲ႔ JBuider ႀကီး ၀ယ္ၿပီး လာအပ္တဲ့အလုပ္ကိုေတာ့ ေရးမေပးႏိုင္ေပါင္။ Free ရတဲ့ဟာနဲ႔ပဲ ေရးမွာေပါ့။