Mobile Apps Devleopment ဆိုပေမယ့် ကျွန်တော့် အနေနဲ့ iOS နဲ့ Android ကိုပဲ အဓိကထားပြီး ဆက်ရေးသွားမှာပါ။ တခြား platform တွေနဲ့ ပတ်သက်ပြီး တစ်ခါမှ သေသေချာချာ မလေ့လာဘူးတာကြောင့် မရေးတော့ပါဘူး။
Tools
iOS
iOS Development ကို စလုပ်တော့မယ်ဆိုရင် Xcode နဲ့ Mac မဖြစ်မနေ လိုအပ်ပါတယ်။ Xcode ကိုတော့ Mac Apple Store ကနေ download ချယူနိုင်ပါတယ်။ Xcode ကို Download ချပြီးသွားပြီဆိုရင် Xcode ဖွင့်ပြီးတော့ Xcode Menu > Preference .. > Download ကို သွားပြီးတော့ iOS 5.0 , iOS 5.1 နဲ့ Command Line Tools simulator တွေကို download ချဖို့လိုအပ်ပါတယ်။
iOS အတွက် Development လုပ်မယ်ဆိုရင် ဘာမှ ထွေထွေထူးထူး ရှိနေဖို့ မလိုပါဘူး။ mac OS X မှာ xcode သွင်းပြီးတာ နဲ့ စပြီး ရေးလို့ရပြီ။ Device ရှိရင်တော့ iOS Developer Account ကို ၁ နှစ်စာ ပေးပြီး ဝယ်စမ်းမှ ရပါမယ်။
iOS Developer Account ကို တစ်နှစ်စာ ပေးပြီး ဝယ်သင့်မသင့်ဆိုတာကတော့ ကိုယ်တိုင် App ထုတ်မထုတ်ပေါ်မှာ မူတည်ပါတယ်။ အဲဒီ အကြောင်း ကို Pricing ဆိုတဲ့ အထဲမှာ ရေးထားဖူးပါတယ်။
Android
Android ကို စပြီးလုပ်တော့မယ်ဆိုရင် အရင်ဆုံး Android SDK ကို download ချပါ။ ပြီးရင် ဘယ် IDE သုံးမလဲဆိုတာကို ရွေးပါ။ ကျွန်တော်တို့မှာ ရွေးဖို့ ၂ ခု ရှိပါတယ်။
Eclipse နဲ့ Android SDK သွင်းပုံကိုတော့ Installing the Eclipse Plugin မှာ ဖတ်နိုင်ပါတယ်။
Help > Install New Software > Add ပြီးရင် ADT Plugin URL ကို
https://dl-ssl.google.com/android/eclipse/
ထည့်ပေးဖို့လိုပါတယ်။
တကယ်လို့ Offline သွင်းချင်ရင်တော့ Installing the Eclipse Plugin မှာ ADT plugin offline ကို download ချနိုင်ပါတယ်။
plugin သွင်းပြီးရင်တော့ Android SDK သွင်းထားတဲ့ နေရာကို ပြန်ပြီး ညွှန်ပေးဖို့လိုပါတယ်။
IntelliJ IDEA ကို အသုံးပြုမယ်ဆိုရင် plugin သွင်းဖို့ မလိုအပ်ပါဘူး။ Android SDK သွင်းထားတဲ့ နေရာကိုသာ ညွှန်ပြပေးဖို့လိုပါတယ်။ IntelliJ IDEA မှာ Android Plugin ပါပြီးသားပါ။
Update:
http://developer.android.com/sdk/index.html မှာ download ချရင် ADT bundle တစ်ခုလုံး download ချပါလိမ့်မယ်။ Android အတွက် Eclipse ပါပြီးသားဖြစ်ပြီး ဘာမှ config လုပ်စရာမလိုပါဘူး။
Language
Objective-C
Objective-C ကတော့ Mac App နဲ့ iOS App ရေးတဲ့ နေရာတွေမှာ အသုံးပြုပါတယ်။ Objective-C မှာ .h နဲ့ .m file ၂ ခု ရှိပါတယ်။ .h ဆိုတာကတော့ header file ဖြစ်ပြီး .m ဆိုတာကတော့ message file ပါ။ .h မှာ သုံးမယ့် public method တွေ variable တွေ ကြေငြာထားပြီး .m မှာ implemention တွေ ရေးပါတယ်။ ဥပမာ။
//HelloWorldViewController.h
@interface HelloWorldViewController : UIViewController
@property (nonatomic,strong) NSString* titleName;
-(void)showHelloWorld;
@end
//HelloWorldViewController.m
@interface HelloWorldViewController()
-(NSString*)updateValue;
@end
@implementation HelloWorldViewController
-(void)showHelloWorld {
self.titleName = [self updateValue];
console.log("Message : %@",self.titleName");
}
-(NSString*)updateValue {
return @"Hello World";
}
@end
.h ထဲမှာ titleName ဆိုတဲ့ variable တစ်ခုနဲ့ showHelloWorld ဆိုတဲ့ function တစ်ခုပါပါတယ်။ UIViewController ကို inheritance လုပ်ထားပါတယ်။ .m ထဲမှာတော့ showHelloWorld ကို implement လုပ်ထားပြီးတော့ private function အနေနဲ့ updateValue ဆိုတာ ပါပါတယ်။ Objective-C မှာ string ကို @ နဲ့ စပြီးရေးရပါတယ်။ “value” နဲ့ ရေးလို့ မရပါဘူး။ @”value” လို့ ရေးရပါတယ်။ function ကို ခေါ်ချင်ရင် [ နဲ့ စပြီးတော့ object လာပါတယ်။ ပြီးရင် function name လာတယ်။ အဆုံးမှာ ]; နဲ့ ပြန်ပိတ်ပါတယ်။ Parameter ပို့ချင်ရင် အောက်ကလို ရေးပါတယ်။
-(void)updateValue:(NSString*)str WithAppend:(BOOL)append {
if(append)
{
self.titleName = [self.titleName stringByAppendingString:str];
}
else {
self.titleName = str;
}
}
အဲဒီ function ကို paramter နဲ့ ခေါ်ချင်ရင်တော့
[self updateValue:@"Awesome" WithAppend:YES];
Boolean value ကို Obj-C မှာ YES နဲ့ NO သုံးပါတယ်။ true နဲ့ false မသုံးပါ။
Java
Java ကတော့ ထွေထွေထူးထူး မရှိပါ။ လက်ရှိ ကျွန်တော်တို့ လေ့လာထားတဲ့ Java ကို Android မှာ အသုံးချလို့ရပါတယ်။ တကယ်လို့ Java မတတ်ပဲနဲ့ Android ကို စလေ့လာမယ်ဆိုရင် ရမလား ဆိုရင်တော့ OOP ကို ကျွမ်းကျွမ်းကျင်ကျင် နားလည်ထားလား ? တခြား တတ်ကျွမ်းတဲ့ programming language မှာကို လက်ရှိ ရေးနေတဲ့ ပုံစံက OOP လား ? တကယ်လို့ အဖြေက ဟုတ် ဆိုရင်တော့ Java အစား Andrid ကို ချက်ခြင်း လေ့လာနိင်ပါတယ်။ Java က အလွန်ကျယ်ပြန့်ပါတယ်။ Beginner level ကနေ enterprise level အဓိက java ကို အသုံးပြုနေကြပါတယ်။ တကယ်လို့ ကို က Android တစ်ခုတည်းအတွက် အသုံးပြုချင်တယ် OOP လည်း သိထားတယ်ဆိုရင်တော့ Android SDK ကို စလေ့လာလို့ ရပါတယ်။ သို့ပေမယ့် Java အခြေခံကိုတော့ အနည်းနဲ့ အများ တီးမိခေါက်မိအောင် ဖတ်ထားဖို့လိုတယ်။ Java မှာ ဘယ်လို Array သုံးလဲ String သုံးလဲ။ Dynamic Array ကို ဘယ်လို ရေးရလဲ။ OOP ကို ဘယ်လို မျိုး သုံးထားလဲ စတာတွေကို လေ့လာဖို့လိုပါတယ်။
Leave a Reply