語言基礎
語言
現在開發蘋果iOS系統軟件有兩種官方語言:Objective-C和Swift。我采用先學Objective-C語言,然后再學Swift語言的方案,達到能看懂理解Objective-C語言的程度后就開始學習Swift語言,再之后學習中進行對比學習的方式,逐步掌握這兩門語言。
資料
Objective-C語言的入門教材
我采用并推薦
Objective-C Programming: The Big Nerd Ranch Guide 2nd Edition
關于中英文版本:英語好的朋友可以直接看英語,英語不怎么好的建議先看中文版的,我自己學習過的經驗就是在你沒有積累一定專業概念的時候直接看英文效率會很低,而且容易打擊學習的積極性,只有你通過看中文版學習了一定的專業概念后,你才能更好的理解英語原文要表達的含義。等你掌握了一定基礎后,就優先使用英文版的。還有盡量使用新版本,內容更新更全面。
為什么學此書?
Objective-C方面的基礎學習書籍不是太多,還有兩本書也是被推薦比較多的,分別是Objective-C基礎教程(第2版)和Objective-C程序設計(第6版)。
這三本書我也都購買了,但我打算把BNR的Objective-C編程(第2版)作為主要學習資料,這本書對于沒什么編程經驗的人來說,非常友好,從C語言講起,內容很清晰,循序漸進,重點突出,每章后面也有小練習用來消化理解知識點。而且本書翻譯的很好,行文很流暢。
Apress出版的Objective-C基礎教程(第2版)針對于有一定編程經驗的學習者,我打算用來輔助參考下,加深對概念的理解。
Objective-C程序設計(第6版)這本書我已經放棄了,雖然它也是從 C語言開始講解的,但內容不精煉,而且翻譯的不怎么好,比較生硬,看的我有點痛苦。
Objective-C進階方面
推薦的比較多是這兩本:
Effective Objective C 2.0:編寫高質量iOS與OS X代碼的52個有效方法
和Objective-C高級編程:iOS與OS X多線程和內存管理。
這兩本我也都購買了,開始看了點,確實很好,雖然由于自己目前編寫的項目很少,有些知識點還只能一知半解的,但是也能幫我更好的理解概念了,絕對是Objective-C進階必讀之書。
Swift語言的入門教材
我采用并推薦Swift Apprentice - RayWenderlich
因為Swift是蘋果公司新開發的語言,還在不斷發展中,本來BNR和Apress也都出版了各自的Swift教材,但最權威最新最全面的還是蘋果官方的語言指南,在iBook上可以免費下載到。RayWenderlich編寫的Swift Apprentice電子文檔制作的很精美,彩色頁面,代碼示例就跟Xcode里的是一樣一樣的(其他大多數的都是黑色的)看著很舒服,內容通俗易懂,講的不深,非常適合入門,英文水平一般的看這個也很容易理解。想深入了解Swift就看官方文檔。
iOS開發
書籍
我采用并推薦The iOS Apprentice - RayWenderlich
關于版本問題,目前最新版本是第4版,采用的是最新的Swift2.0語言,但由于我計劃先學Objective-C語言,所以我先使用采用Objective-C的第2版(第3版采用的是Swift1.0),當我每學完一個項目(總共4個項目)后,對比學習相應的Swift版本。
做好任何事都需要興趣,尤其是編程這事。大學學C語言時被老師教的云里霧里,一點好感也沒有,導致后續的一些計算機課程也學的很渣,入門很重要!RayWenderlich的iOS Apprentice就是個很好的 iOS開發入門的教材,它包含4個項目,涉及大部分的iOS開發知識點,帶著你手把手的教你怎么寫一個項目,先實踐然后結合理論進行講解,有了前面的語言基礎,在這里你得到更多的是邏輯思維的鍛煉。
學完The iOS Apprentice后學習iOS 9 by Tutorials以及RayWenderlich其他相關系列的教程。
到這個階段了還要學習下iOS 9人機界面指南[騰訊ISUX譯]
以及國內大牛唐巧寫的iOS開發進階
和喵神王巍寫的Swifter - 100 個 Swift 必備 tips
視頻
我采用并推薦斯坦福大學公開課:iOS 7應用開發和斯坦福大學公開課:iOS 8開發
關于版本:iOS7版本采用的是Objective-C,所以我也要跟著學習,iOS8采用的是Swift語言。我下載的中英文字幕版本,iTunes U 下載速度較慢,沒有中文字幕,網易公開課上iOS7版本都有中文字幕,iOS8版本只有部分中文字幕,而且不方便離線學習(能下載的清晰度不高),所以我下載了高清帶有中文字幕的版本iOS7版本中文字幕Developing iOS 7字幕翻譯iOS8版本Github - Developing iOS 8 Apps with Swift 字幕翻譯,非常感謝他們的熱心的翻譯!
非常喜歡這位白胡子老頭的講課風格,基本沒什么廢話,努力跟上他的進度,你會學到真東西。
上面都是入門的好資料,入門之后最重要最全面最權威的學習資料就是蘋果公司的官方開發者文檔,隨時查閱保持學習!
學習方法
在需求中學習,根據自己的興趣,開發一款自己需要的App,培養自己的創造力,鍛煉自己解決問題的能力。
在項目中學習,接觸各種項目后,邊敲代碼邊分析項目的組成結構和邏輯關系,鍛煉自己的邏輯思維能力。
在問題中學習,我遇到的問題別人也會遇到(太陽底下無新事),遇到問題后善于利用搜索,上stackoverflow和Google搜問題,找解答。
在代碼中學習,多學習優秀的源代碼,從看別人的輪子量變到自己造輪子。
英語
利用上面的英文資料加強自己的英語能力,利用零碎時間堅持學習英語。
聽說方面
首先糾正自己的發音,學習賴世雄美語:美語音標。
然后多聽多跟讀,學習英語播客。
讀寫方面
復習語法知識,學習朗文英語語法(LG.亞歷山大)和施元佑文法。
多讀蘋果官方文檔,多上stackoverflow學習編程方面的知識。
常上quora用英語提問學知識。
在上述學習中鍛煉口語,培養語感,積累詞意,書面表達,達到聽懂能說看懂可寫的目標。
我在嘗試學習了很多網絡上別人推薦的資料后,發現資料貴在專且精,絕不在于多,尤其是入門的資料,一定要克服自己擁有資料后就以為自己已經學到卻束之高閣的心理毛病,切記切記切記!正所謂實踐出真知,只有經過自己深思熟慮的深度思考才能為己所用。只有經歷過才能真正理解它是什么,問什么,怎么樣。先追求深度,再來追求廣度。
目標明確了,計劃也有了,剩下的就是執行了!
來吧,這頭85年的老牛,再不行動你就動不了了!
堅持下去你就會得到你想要的
因為我知道
播種+耕地+施肥+. 好運,你就會有收獲!
你說呢,是吧???