不管是斯坦福大學的CS193p公開課、蘋果官方文檔、絕大多數市場上龐雜的教學書籍都不是很適合入門同學看,
想入門的話應該選用學習成本最低的方法,從最最基本開始講起,並不是一味的講解語法與知識,而是一邊實踐一邊學習知識才是最好的學習方法。
並且我想告訴題主,你問的是iOS 開發怎麼入門,但是你補充說明裡說道的設計模式、內存管理等內容暫時不用你關心,等你真正iOS入門了以後在研究吧。也許我可以這麼定義你的問題:
一個
略懂編程的人並且
完全沒有接觸過IOS開發的人想要學習IOS開發應如何學習?
(一)objective-c語言開發iOS應用
- 為什麼不讓初學者看斯坦福教程:我以為,斯坦福大學IOS公開課不適合入門的同學看,裡面第一課講解的就是MVC模式。對於一個剛入門想要學習的IOS的同學可能就完全懵了,心裡想:“我特麼第一課都聽不懂我後面還學個P啊”。如果以前沒接觸過面向對象的語言學習的熱情肯定大打折扣。
- 為什麼不讓初學者看蘋果官方文檔:蘋果文檔是學習iOS最權威的教程,許多許多iOS高手都是常年抱著它去看,但是我覺得它的內容雖然權威但example對初學者一點都不友好,相信你很快就會失去興趣與耐心因為你光看了好多語法但是收不到的學習效果反饋。而且個人認為中文譯文翻譯不是令初學者很容易理解。初學階段,教程的易理解程度我認為是非常重要的一點。(實在要看請看英文原版。)
我不否認以上兩者是極好的學習材料,如果你入門了iOS開發並且有一定的英文功底,我是非常推薦你去看的,尤其官方文檔,應該經常翻閱。但是我認為
保持學習的熱情是最重要的。本著這個理念,我推薦的學習方法難度非常低,希望你們能滿意。
- 第一階段: RayWenderlich網站中的 The iOS Apprentice教程
這個教程截止目前已經不更新OC語言的版本了,但是如果你是抱著求職為目的的學習還是請看OC版本的(兩年前的版本)。The iOS Apprentice的教程針對完全沒有編程經驗的人設計。這個教程是外國人寫的並且有免費試讀版,感興趣的人要看看。裡面說的東西都非常非常基本,裡面一個共講解了4個不同類型app,強烈建議一步一步按照上面所寫的步驟敲一遍代碼。其中你會遇到很多復雜的語句和長的可怕的函數,你不用感到恐慌,照著敲,知道它干嘛用完全OK了,隨著你編程時間以及經驗的增加,你都會懂得。
經過第一個階段你應該已經大致掌握IOS開發流程,能編寫一個非常簡單的應用了。這時候相信你的熱情應該會很高漲,但接下來的學習可能會很枯燥,做好准備。網絡課程的話推薦李明傑的課程,不推薦其他的。(他目前在廣州創業建立自己的培訓品牌,沒有自制力看網絡課程的請去找他。傑哥開源了一些非常優秀的框架如:MJExtension )之所以不推薦其他培訓班是因為優秀講師實在是少的可憐,至少我目前接觸過的人來說,許多人都是剛從培訓班出來就拿著不菲的薪水去當講師,所以還不如自己學。
建議首先要惡補基礎知識。經過第一個階段你可能覺得你懂不少了,但是只是表面,尤其是沒學過編程的應該好好學習一下視頻前面的課程,主要看看語法。等你看惡心了看煩了就去看視頻裡UI部分,這裡相對於來說比較輕松,一定要把視頻裡寫的語句打一遍,相信這樣你理解會更深刻。裡面說的不清楚的地方上網可以百度,可以查書(如果你有書的話)。
Q:視頻教程是用來做什麼的?
A:光有實踐沒有知識是寫不好程序的,第一階段基本都是實踐,第二部分則是用來查缺補漏。 之所以推薦網絡課程是因為講解的比較系統,各種入門知識都會涉及。因為iOS所涉及內容龐 大單看幾本書還是涉及不全的。
Q:上不上培訓班?
A:個人意見是不推薦去,
自學足夠了。現在學習iOS的環境比前幾年好太多了,光憑借網上的資料是 完全可以的學得很好的,如果你連這點學習能力還沒有我也不相信你將來能成為一個很優秀的工程師。而且你會發現在社會上一些互聯網公司是拒絕接收培訓班出來的人,如果你簡歷造假被揭穿以後會更要命,你當真不知道面試官看不出你水平到底是學了4個月的還是2年的麼?