接觸 iOS App 開發至今也快要兩年了,把一些心得感想記錄下來,或許能幫助一些人。
進入這個世界,有些東西是你需要事先準備好的,說穿了,就是你的設備跟知識。
開發蘋果的東西,沒有蘋果電腦怎麼行呢?如果你手頭拮据的話,買台 Mac Mini 就能動工了,但如果預算足夠的話,建議買台 MacBook Air 或 MacBook Pro,方便你能隨時移動,走到哪就寫到哪。至於要買 Pro 或是 Air,那就看你需求跟預算了,反正若只是要開發程式,這兩者都綽綽有餘。
開發 iOS App 用的程式語言是 Objective-C,它是 C 語言的 superset,支援所有 C 語言的功能,並且加上物件導向的能力。所以你只要熟悉 C 語言以及物件導向的觀念,就可以快速上手 Objective-C,剩下的就只是習慣 Objective-C 的語法及特性而已。
Objective-C 有個特色就是它寫出來的程式碼「就像在閱讀一段句子、一篇文章」,你怎麼說話的,就怎麼寫程式 - 當然,指的是用英文說話。所以你英文能力不能太差,否則你將無法寫出順暢的程式碼,也無法輕易看懂別人的程式碼。這是它跟其他常見的程式語言最大的不同點,一開始可能會不太適應,但久了之後你會愛上它的。另外你會需要看大量的文件,這些幾乎都是英文,所以需要有一定的英文底子。
好了,事前準備都完成了,接下來可以開始動工。我當初完全是自學,所以我的分享基本上就是我自學的過程。我自學的方式很簡單,就是大量閱讀(看教學、看書、看官方文件)跟實做,實做的部份我幫不了你,所以來聊聊我看了哪些東西。
Stanford University: CS193p
這是國外史丹佛大學的開放課程,你可以在 iTunes U 找到它,整個課程看完之後,對於如何開發就已經有一定的理解了。我強烈建議一定要先看完這整套課程,再繼續去閱讀其他的東西。它大概也是 iOS 開發最有名的課程,我相信很多開發者其實都是「同學」。
iOS 5 & iOS 6 by Tutorials
當你對如何開發有個基本的理解,知道整個開發流程要怎麼套起來,可是卻對許多比較細節的部份還懵懵懂懂,這時候你需要的是有人一步步告訴你每個元件是做什麼用的、還有要怎麼去用它。因此你需要看這本書,它是由國外知名的 iOS 開發教學網站所編寫的,每一篇教學都從頭到尾寫得很仔細,非常適合新手。有了它,你將可以減少許多摸索的時間。
當你對基礎開發已經有一定的熟悉度之後,我建議你一定要看看以下這幾本書,它們會讓你知道更多 Objective-C 的細節,也會知道如何寫出更好、更有效率的程式碼。但,拜託,如果你對基礎還很不熟的話,請千萬不要來看這些東西,學會一些花俏的技巧、腦袋塞了一堆一知半解的理論,對你來說不是件好事。
iOS 6 Programming: Pushing the Limits
由 Rob Napier 跟 Mugunth Kumar 共同撰寫的這本書,提到該如何設計程式架構,以及怎麼做才能讓 App 執行得更順暢。看了之後你會發覺「阿~原來要這樣子設計架構比較順」或是「原來還有這種技巧」。
Effective Objective-C 2.0: 52 Specific Ways to Improve Your iOS and OS X Programs
由 Matt Galloway 撰寫的這本書,講到了許多比較細節的東西,包含一些語言特性是如何運作的,以及開發的一些 Best Practice。適當的使用他提到的方法,會讓你更輕易的完成某些功能,也能讓程式碼更簡潔、更不易出錯。
WWDC Videos
每年蘋果開發者大會(WWDC)總是會推出一堆新東西,開發者們要接收這些資訊的最快方法就是把這些大會錄影看過一遍。當然,我們的時間有限,只要挑感興趣的看就好。
現在網路這麼發達,很多資訊都在網路上流通,當然吸收新知最快最方便的管道就是透過無遠弗屆的網路。底下列出我有在觀看的部落格跟我 follow 的 twitter,我每天從這些地方吸收到許多的新知。
我總是能從這些 twitter 的發文以及他們跟他人的交談互動中,學到一些新的東西。
現在要學習 iOS 開發的門檻已經比當初我學習的時候低太多了,如果你對這一塊有興趣有熱情,那就快跳進來吧!相對於其他平台的開發者而言,iOS 開發者最開心的事情就是一般使用者非常樂意接受新版的作業系統(根據 Apple 統計,目前 iOS 6 的普及率有 9x%,iOS 5 + iOS 6 有 99%),所以我們可以開心的使用最新的技術去打造 App;但相對的,最痛苦的事情就是我們得一直追著最新的技術,每年的 WWDC(蘋果開發者大會)大概是我們最期待也最害怕的時刻。
最後,就以這句大家耳熟能詳的話來總結吧:
Stay Hungry, Stay Foolish!
联系客服