Experience on iOS Development within a Year

iOS app development ၁ နှစ်တာ အတွေ့အကြုံ
ရေးသားသူ : ခန့်သူလင်း

လွန်ခဲ့တဲ့ တစ်နှစ်က iOS App ကိုစလေ့လာခဲ့ပါတယ်။ ရေးချင်ခဲ့တာကြာပါပြီ။ ဒါပေမယ့် ကျောင်း project လုပ်နေရတာနဲ့ မရေးဖြစ်ခဲ့ပါ။ Poly ကျောင်းပြီးတော့ Uni မတက်ခင် စပ်ကြားမှာ စလေ့လာဖြစ်ခဲ့ပါတယ်။ မလေ့လာခင်မှာ iphone ကိုင်ခဲ့ဖူးတဲ့အတွက် iphone မှာ ဘယ်လို ပုံစံတွေရှိလဲဆိုတာ သတိအရင်စထားမိပါတယ်။ ကိုယ်တိုင် စရေးမယ်လုပ်တဲ့အခါ အိုင်ဖုန်းမှာ မြင်ခဲ့ဖူးတဲ့ tabview (အောက်မှာ tab တွေရှိပြီး လိုအပ်တဲ့ viewဆီသွားနိုင်တဲ့ ပုံစံ) ကို Program မှာဘယ်လိုခေါ်လဲဆိုတာတောင် မသိခဲ့ပါ။ ဝေါဟာရ အရင်မသိတဲ့အတွက် google မှာအဲလိုရေးဖို့ tutorial ရှာဖို့အတွက်လည်း ခက်ခဲခဲ့ဖူးပါတယ်။ ထို့နောက် project တစ်ခုအရင်စရေးကြည့်မယ့်ဟာကို ခဏထားလိုက်ပါတယ်။ အရင်ဆုံး လွယ်မယ်ထင်တဲ့ စာအုပ်ကို စဖတ်ကြည့်ပါတယ်။ Beginning iphone development စာအုပ်မျိုး စဖတ်ကြည့်ပါတယ်။ ထုံးစံအတိုင်း Hello World စရေးပါတယ်။ UIlabel ဘယ်လိုခေါ်ရမလဲဆိုတာမျိုးစသိခဲ့ပါတယ်။

ထို့နောက် တစ်ဆင့်တက်ပြီး အဲဒီစာအုပ် content ကိုဖတ်ကြည့်ပါတယ်။ Content page မှာ tableview, tabview, master-detail application တို့ရေးထားတာတွေ့မိတဲ့အခါ အဲဒါတွေရှာကြည့်ပါတယ်။ ကိုယ်လိုချင်တဲ့ ပုံစံမျိုးတွေ တွေ့လာပါတယ်။ လမ်းစက အဲကနေစရလာပါတယ်။ ဘာရှာရမလဲဆိုတာ သိလာပါတယ်။ tutorial ဆိုဒ်တွေမှာ ဘယ်လိုရေးရမလဲဆိုတာ စလေ့လာပါတယ်။ Tutorial ဖတ်ရတာပျင်းတဲ့အခါ source code လိုက် အရင် download ပြီးသူတို့ရဲ့ behavior ကိုလေ့လာဖြစ်ပါတယ်။ သူများတွေရဲ့ source code ကိုဖတ်နိုင်လာခဲ့တဲ့အချိန်မှာ နဲနဲလိပ်ပတ်လည်လာပါတယ်။ သူများ Program ကိုကြည့်ပြီး နဲနဲပြင်ရေးနိုင်လာတဲ့အချိန်မှာ ကိုယ့်ကိုယ်ပိုင် program တစ်ခုစရေးဖို့ပြင်ဆင်ခဲ့ပါတယ်။ ဘယ်သူတွေ ဘယ် လို program မျိုးရေးပြီးကြပြီလဲဆိုတာသိဖို့ app store မှာ Myanmar ဆိုပြီးရှာကြည့်ပါတယ်။ ဘယ် App တွေရှိလဲဆိုတာ သိလာပါတယ်။ ထို့နောက် ကိုယ်ပိုင် ဘာရေးရင်ကောင်းမလဲဆိုပြီး လွယ်မယ့်ဟာတစ်ခု ချရေးမိပါတယ်။ စရေးဖို့ ပြင်ဆင်တုန်းက မြန်မာ App တစ်ခုလောက်လုပ်ရင်ကောင်းမယ်ဆိုပြီး စဉ်းစားမိပါတယ်။ Browser တို့လိုရေးဖို့အတွက်ကျတော့ Beginner Level အတွက်မြင့်လောက်မယ်ထင်ပြီး မရေးဖြစ်ခဲ့ပါ။ Dictionary ရေးဖို့ လိုအပ်တဲ့ data ကိုအဲတုန်းက ဘယ်ကယူရမလဲ မသိတဲ့အတွက် မရေးဖြစ်ခဲ့ပါ။

ထို့နောက်တွင်မှု UITableView ကိုသုံးပြီး နိုင်ငံခြားသားတွေ မြန်မာစာပြောရာမှာ အထောက်အကူပြုနိုင်လောက်မယ့် MMSpeaker ကိုရေးဖြစ်ခဲ့ပါတယ်။ App Store မှာ အလားတူ App တစ်ခုပဲ တွေ့မိပါတယ်။ လိုအပ်တဲ့ အသံသွင်းမှုတစ်ချို့လုပ်ခဲ့ပါတယ်။ ထို့နောက် ကိုယ့်ရဲ့ App အတွက် Specific Feature တစ်ခုကိုရေးဖို့စဉ်းစားရပါတယ်။ တခြား App မှာမတွေ့နိုင်လောက်တဲ့ Featureလိုမျိုးပါ။ အဲဒါအတွက် မြန်မာနာမည်ကို English လိုရေးပြီး (e.g. khant thu linn) မြန်မာလို အသံထွက်ပေးမယ့် Feature တစ်ခုထည့်ဖြစ်သွားပါတယ်။ ကိုယ်ရဲ့ App Unique ဖြစ်ဖို့ Specific feature လည်း အရေးကြီးပါတယ်။ MMSpeaker App ကတော့ ကိုယ်လုပ်ချင်တဲ့ App ကိုလုပ်ခဲ့တာပါ။ Market ဘက်ကိုအရင်စမကြည့်ဘဲ ကိုယ်ဘာလုပ်ချင်လဲအပေါ် စစဉ်းစားခဲ့တာပါ။

အဲဒီနောက် ကျောင်းပြန်တက်ရသဖြင့် ios development နှင့် အဆက်နဲနဲပြတ်သွားပါတယ်။ MMSpeaker ကိုတော့ upgrade တွေလုပ်ဖြစ်ပါတယ်။ user တွေနဲ့ အဆက်မပြတ်ဖို့ fb page တစ်ခု create ထားသင့်ပါတယ်။

တစ်နှစ်ခန့်အကြာတွင် နောက်ထပ် App တစ်ခုလုပ်ဖို့စပြင်ဆင်ပါတယ်။ ဒီတစ်ခေါက်တွင် Market ထဲတွင် similar app မရှိသေးသည့် app ကိုစစဉ်းစားပါတယ်။ ထို့နောက် MMSubPlayer ကိုစလုပ်ဖြစ်ပါတယ်။ မြန်မာစာ (subtitle) နှင့် ရုပ်ရှင်ကြည့် MV ကြည့်နိုင်သည့် App မျိုးပါ။ စလုပ်သည့်အခါတွင် အရင်ကလို default button, default label တွေသုံးတာမျိုးကို မလုပ်တော့ဘဲ customize တွေလုပ်ဖြစ်ပါတယ်။ အနည်းဆုံး uibutton နဲ့ background ကိုစပြောင်းပါတယ်။ Default UIButton , UILabel တွေက စလုပ်ခါစအတွက်မှာ အဆင်ပြေပေမယ့် နောက်ပိုင်း တခြား App တွေနှင့် နှိုင်းယှဉ်လာရသည့်အခါတွင် Design အောက်ပါတယ်။ ပြင်ဆင်နိုင်သည့် နေရာများမှာ structure of app (single view, master-detail, etc), custom xib file, background ၊ uitableviewcell စသဖြင့် ရှိပါတယ်။

Tutorial ဆိုဒ်၊ source code ရနိုင်မယ့်နေရာ နှင့် template site တစ်ချို့ကို ဖော်ပြထားပါတယ်။

Raywenderlich (Tutorial)

Beginner Level မှ High level အထိ Tutorial ကောင်းများရှိပါတယ်။ Source code များကိုလည်း download နိုင်ပြီး App သဘောသဘာဝများကိုလည်း သေချာရှင်းပြထားပါတယ်။

Github (Source code)

သူ့ရဲ့ search ကနေတစ်ဆင့် iPhone iPad project များကိုရှာနိုင်ပါတယ်။ သူကတော့ developer ပေါင်းများစွာက share လေ့ရှိတဲ့ Site ဆိုတော့ project စုံပါတယ်။

App Design Vault (Design Template)

 iOS Design  Template များကိုဝယ်ယူနိုင်ပါတယ်။ ဈေးကြီးပေမယ့် design များကလှပါတယ်။ အကယ်၍ မဝယ်ဖြစ်ရင်တောင် သူများ design ကောင်းများကိုလေ့လာနိုင်တဲ့ နေရာတစ်ခုပါ။

iOS User Interface Controls (UI Custom Control) , Cocoa Controls/ (UI Custom Control)

UIbutton , UIlabel, gauge, switch, table စသဖြင့် custom control ပေါင်းများစွာကို စုထားပါတယ်။ အခမဲ့ download နိုင်ပါတယ်။

Dribble , Pixeden , Psdcovers

iPhone iPad App များကို design ဆွဲရာတွင်ဖြစ်စေ ၊ App ရေးပြီးသွား၍ ကြော်ငြာလိုသည့်အခါ တွင်ဖြစ်စေ သုံးနိုင်ပါတယ်။ မိမိ App ကို screenshot ရိုက်ပြီး သူတို့ရဲ့ template ထဲထည့်လိုက်ပါ။ image quality လည်းမကျပါဘူး။

iPhone, iPad App များရေးရာတွင် အသုံးပြုရလွယ်သည့်၊ အထောက်အကူပြုမည့် software များကိုဖော်ပြလိုက်ပါတယ်။

Pixelmator

Photoshop လိုအသုံးပြုနိုင်သည့် software ပါ။ ပုံများကိုအလွယ်တကူပြင်နိုင်ပါတယ်။ Photoshop ဖိုင် - psd ဖိုင်အဖြစ်လည်း ထုတ်ပေး/ဖွင့် နိုင်ပါတယ်။

Omnigraffle professional

App တစ်ခုကို စမရေးခင် brainstorming လုပ်လေ့ရှိပါတယ်။ ထိုအခါ App design ကို လက်ဖြင့်ချဆွဲသည်ဖြစ်စေ၊ ကွန်ပြူတာပေါ်တွင်ဖြစ်စေ ဆွဲလေ့ရှိပါတယ်။ ကွန်ပြူတာပေါ်တွင် design ကောင်းများကိုဆွဲလိုလျှင် Omnigraffle professional ကိုသုံးနိုင်ပါတယ်။ iPhone, iPad stencil များကို အလွယ်တကူ download နိုင်ပြီး drag and drop ဆွဲနိုင်ပါတယ်။

Paintcode

App များကို ပေးထားတဲ့ label , button များကိုသုံးနိုင်သလို ကိုယ်ကိုတိုင်လည်း Program အရဆွဲနိုင်ပါတယ်။ သို့သော် Program ကို ကိုယ်တိုင်ရေးဖို့ ခက်ခဲနိုင်ပါတယ်။ ထိုအခါ Paintcode ကိုသုံးနိုင်ပါတယ်။ Paintcode ဖြင့် ပုံများကို ရေးဆွဲပြီး ထိုမှ code များကို copy/paste လုပ်နိုင်ပါတယ်။

Prepo (app icon generator)

App များတွင် အမြဲလိုလို အလုပ်နဲနဲရှုပ်တာက app icon လုပ်တာပါ။ retina, normal, iphone, ipad စသဖြင့် size မျိုးစုံကို ထုတ်ပေးရပါတယ်။ ကိုယ်ကိုယ်တိုင် resize လုပ်လည်းရပါတယ်။ Auto လုပ်ချင်ရင်တော့ Prepo ကိုသုံးနိုင်ပါတယ်။

Art text 2

တစ်ခါတစ်လေ ကိုယ့် Program မှာ custom button , label တွေလုပ်ချင်လာတယ်။ ကိုယ်ကလည်း ပုံကို မဆွဲတတ်ဘူးဆိုရင် art text 2 ကိုသုံးနိုင်ပါတယ်။ အသုံးများတဲ့ ပုံတွေရှိပါတယ်။ Design ဆွဲရတာ၊ အရောင်ချိန်ရတာတွေ လွယ်ပါတယ်။

အထက်ပါ app တွေနဲ့ link တွေက iOS development စလုပ်တဲ့ လူတွေအတွက် အသုံးဝင်ပါလိမ့်မယ်။