Mobile Apps Development : Part 5

iOS ကို ကျွန်တော် Standford iTune U ကနေ လေ့လာခဲ့ပါတယ်။ ရုံးသွားရုံးပြန် Bus ကားပေါ်မှာ iPod Touch နဲ့ လေ့လာဖြစ်တယ်။ ပြီးတော့ Ornagai App ကို စပြီးရေးဖြစ်ခဲ့တယ်။ iOS Development အခုအချိန်မှာ လေ့လာစရာ နေရာတွေ အများကြီး ဖြစ်နေပါပြီ။ ကျွန်တော် စလေ့လာကာစ လေ့လာစရာဆိုလို့ iTune U , Apple iOS Developer Website လောက်ပဲ ရှိတယ်။ နောက်ပြီး အချို့ blog တွေပေါ့။ သီးသန့်ကြီး iOS development အကြောင်းရေးတာ မတွေ့မိဘူး။ အခုအချိန်မှာတော့ iOS development ပိုင်းတွေ လေ့လာစရာ website တွေ အများကြီး ရှိနေပါပြီ။

ပထမဆုံး ကျွန်တော့် အနေနဲ့ အကြံပေးချင်တာက ကိုယ် project လုပ်ချင်တာလဲ အရင် စဉ်းစားပါ။ ဘာ project မှ လုပ်မယ်လို့ စဉ်းစားထားတာ မရှိရင်တော့ iOS Development လေ့လာပေမယ့် သိပ်ပြီးတော့ လေ့လာဖြစ်မှာ မဟုတ်ဘူး။ လေ့လာပြီး ဘာမှ ရေးစရာ မရှိတဲ့အခါ အတွေ့အကြုံလည်း ရှိမှာမဟုတ်ဘူး။

ပထမဆုံး အခြေခံကနေ advence level ထိ သင်ပေးတဲ့ Standford က iTune U ကို နေ့တိုင်း ကြည့်သင့်တယ်။ သူပေးထားတဲ့ Tutorial တွေကို လိုက်လုပ်ပါ။ တကယ်လို့ အလုပ်တဖက်နဲ့ မအားဘူး ဖြစ်နေခဲ့ရင် ကိုယ့် ဖုန်းထဲမှာ ဖြစ်ဖြစ် Tablet ထဲမှာ ဖြစ်ဖြစ် ထည့်ပြီး ကြည့်ပါ။ လိုက်မရေးနိုင်ရင်တောင် အစ အဆုံး ပြီးအောင် ကြည့်ပါ။ ဒါဆိုရင် iOS နဲ့ ဘာတွေ ဘယ်လိုရေးလို့ ရမလဲ။ ဘယ်လို ရေးသင့်လဲဆိုတာကို သိနိုင်တယ်။

ပြီးရင်တော့ Project တစ်ခု စပါ။ Project တစ်ခုကို weekend မှာ ပုံမှန် လုပ်ပါ။ Dead line ထားပါ။ ဒါမှ အပတ်တိုင်း Objective-C ကို ရေးဖြစ်နေမှာပါ။ Programming language ဆိုတာ တောက်လျှောက် ရေးနေမှ တတ်မှာပါ။ လေ့လာလိုက် ရပ်ထားလိုက် နဲ့ဆိုရင် မလုပ်ဖြစ်တော့ပါဘူး။ ဒါကြောင့် Project တစ်ခုထားပြီး အပတ်တိုင်း လုပ်သင့်ပါတယ်။

iOS Dev အတွက် ဖတ်သင့်တဲ့ website တွေက

ပြီးရင် မသိတာတွေကို www.stackoverflow.com မှာ မေးနိုင်ပါတယ်။ တကယ်လို့ မြန်မာလို မေးချင်ရင်တော့ http://mysteryzillion.org/ မှာ မေးလို့ရပါတယ်။

iOS Development နဲ့ အတူ နားလည်ထားသင့်တာတွေက

  • Database
  • Restful API

Database

iOS development မှာ database အတွက် Sqlite Database ကို အသုံးပြုပါတယ်။ Core Data ကို အသုံးပြုပြီးတော့ Sqlite ကို သုံးရအောင် လွယ်အောင် ORM ဖြစ်အောင် ဖန်တီးလို့ရပါတယ်။ Database ဆိုတာ ဘာမှန်း မသိရင် sql ဆိုတာ မသိရင် database ကို သုံးပြီးရေးရမယ့် App တွေမှာ ဆို ပြဿနာလေးတွေ ရှိလာနိုင်ပါတယ်။ ဒါကြောင့် developer တစ်ယောက် အနေနဲ့ sql ကို သိအောင် လုပ်ထားဖို့လိုပါတယ်။

RESTFUL API

Database ကို online မှာ သိမ်းထားမယ်။ iPhone , iPad စတာတွေ အကုန်လုံးအတွက် data အတူတူပဲ ဖြစ်ချင်တယ်။ နောက်ပြီး Cross platform အတွက် Data အတူတူပဲ ဖြစ်ချင်တဲ့ အခါမှာ backend API ရေးပြီးတော့ data တွေကို server ဘက်မှာ သိမ်းပါတယ်။ တနည်းပြောရင် Data တွေကို URL ကနေ GET နဲ့ ယူပြီးတော့ POST method နဲ့ create လုပ်တယ်။ JSON format server ဘက်က return ပြန်မယ်။ JSON format က NSArray ပြောင်းနိုင်သလို NSDictionary လည်း ဖြစ်နိုင်ပါတယ်။ online နဲ့ ချိတ်ဆက်ပြီး data တွေကို အလုပ်လုပ်စေချင်ရင်တော့ RESTFUL အကြောင်းကို အနည်းငယ်လေ့လာထားဖို့လိုပါတယ်။ JSON ဆိုတာ ဘာလဲဆိုတာကို သိဖို့လိုပါတယ်။

ဘယ် language ဆို အစ လေ့လာကာစ ခက်ပေမယ့် နေ့တိုင်း နီးပါး လုပ်နေတဲ့အခါမှာ အတွေ့အကြုံကြောင့် ခက်ခဲမှုတွေ တဖြည်းဖြည်း နည်းသွားပါလိမ့်မယ်။ ပုံမှန်လေး နေ့တိုင်း နီးပါးလုပ်နေနိုင်ရင် ဘယ် language မဆို လေ့လာလို့ရပါတယ်။ iOS development ပိုင်းက လေ့လာရင်းနဲ့ ထင်သလောက် မခက်ဘူးဆိုတာကို သိလာပါလိမ့်မယ်။

4 responses to “Mobile Apps Development : Part 5”

  1. အကို ကျွန်တော် ios developer ဖြစ်ဖို့ ကြိုးစား မလို့ပါ ဘယ်ဘာသာရပ်ကို စလေ့လာရမလည် ပီးတော့ window 7 နဲ့ ios ဆွဲလို့ရလာ mac မှာ လုပ်လို့ရတာလာ တချက်လောက် ဖြေပေးပါလာ

  2. ကျွန်တော် က Beginner iOS Developer တယောက်ပါ။ ကျွန်တော် project တစ်ခုလုပ်ပီးသွားတဲ့အခါ မှာ ဝိဝါဒ လေးတွေ ဖြစ်လာပါတယ်။ ခု Apple က storyboard နဲ့ARC ကို မိတ်ဆက်လာပါတယ်။ storyboard က လွယ်ကူရိုးရှင်းပေမယ့် MVC pattern ပုံစံမျိုးရေးရတာ XIB လောက်မဆင်မပြေသလိုပါပဲ။ ARC ရဲ ့strong နဲ့weak က Non-ARC ရဲ့retain လောက်မရှင်းဘူး ဖြစ်နေလို့ပါ.. အစ်ကို့အနေနဲ့(Non-ARC + XIB) or (storyboard + ARC)ဘယ်ဟာကို prefer ဖြစ်သလဲဆိုတာသိချင်ပါတယ်။

    1. I am writing with XIB + ARC .

      Arc is easy and you don’t need to think about retain and release. Strong , you don’t need to retain or release. Weak is the same like assign. Example, we are using IBOutlet with weak because it don’t need to alloc and already allocate in xib

      Storyboard is not easy for me. I am learning about Storyboard and auto layout because it need to use in iOS 7.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.