開始瞭解 iOS 開發,覺得獲得的信息量很雜。像 Git、Ruby、PHP、Cocoa 這些名詞洶湧的撲面而來。而我對著一本《iPhone 開發基礎教程》與 Xcode 4.3.3 發現一開始就有很多對應不上的東西,學起來很迷茫。

我的基礎是學過 Basic、C++、VB,都學的不是很深刻。程序的大概思路明白,但是像 C 中的指針什麼的還不是很懂。應該如何慢慢從淺入深的學習呢?有哪寫容易消化的學習方式?如果我想研究一個類似於 Evernote 的軟體的開發,又需要學習哪些其他的知識呢?比如雲儲存應該怎麼用?用什麼伺服器?比如用戶的註冊會要怎麼辦?好多不瞭解的東西啊 ...


8個月前,我和樓主一樣迷茫,那時候的我對於OB-C一點瞭解也沒有,手上的也是《iPhone 開發基礎教程》這本該死的教材,我這還是英文版的。當時,在我看了今天教材還沒有一點頭緒之後,我選擇了一條不同的道路:看代碼。當然,一開始我什麼都看不懂,我只能在代碼上改一改,然後運行程序看看會發生什麼變化。一開始可能因為改的地方不對,導致程序一改就不能運行了,不過改了一段時間之後,漸漸的我就摸著門道了。我還記得我第一個拿來改的程序,那貨不是你們想的那樣就是個Hello World,這裡貼上地址:http://cocoawithlove.com/2010/09/zoomingviewcontroller-to-animate-uiview.html 這個程序使用了UIView和UIImageView的各種功能,還包含了各種參數設置,但是我就靠著改這個,踏上了iOS開發的不歸路。再之後,進度就飛快了,在中途把整個iOS放下了4個多月的情況下,我做出了一個微博軟體,這裡貼上主頁地址: http://weipulse.so898.me

所以以我個人的經歷來說,iOS開發並不是一條很困難的道路,要學,很快就能學成,自己的軟體也很快就能製作出來,所以樓主不要去管什麼亂七八糟的系統化學習,先寫點東西出來,然後等你碰到了軟體製作瓶頸的時候再去一點點填補你的整個構架

與其整天讀書研究,不如在實踐中探索學習最後祝樓主成功(唉,這樣我不是增加了一個對手了?)
首先不要著急和還怕,這樣什麼都不會學會。題主想研究一個類似於 Evernote 的軟體的開發,那牽扯到的東西太多了,一個人可以完成,但是非常困難。像Evernote這樣企業級的軟體,一定是一個團隊在做,包括軟體的UI,軟體的後臺,還有你說的軟體的雲存儲等。沒有一步登天的辦法。下面我分享一下我學習iOS開發的過程。(無恥的使用一個回答 回答了很多問題。^^)

  1. 第一步,精讀 Stephen G. Kochan 的《Objective-C程序設計》:Objective-C語言基礎,iOS開發的第一技能就是精通Objective-C;
  2. 第二步,有了語言基礎,精讀 David Mark 的《精通iOS開發》:通過各種單獨的項目,熟悉iOS SDK,XCode開發環境,明白MVC、委託等設計模式,通讀完後,你就對iOS SDK有了比較全面的認識,各種框架和組件有了一定的認識;
  3. 選擇性閱讀了Matt Neubury 的《iOS程序設計》:本書是iOS最系統的教程,對iOS框架的底層有比較詳細的介紹,深刻了我對iOS的理解。如果你是一名不僅僅想使用iOS SDK開發,還想理解底層是怎麼運行實現的,那就閱讀它。如果沒看David Mark的《精通iOS開發》直接閱讀這本教程會非常的喫力和枯燥無味,所以我建議在學習的過程中,把它作為資料庫來查詢,遇到想深入學習的某一方面,就選擇性閱讀本書的一些章節;
  4. 有了上面的一些知識,研究一些github上的優秀的項目或者從cocoaChina上找些感興趣的代碼推薦內容並且閱讀源碼,最好還可以在自己的DIY項目中使用上它們。還可以閱讀Bear Cahill 的《iOS in Practice》:通過9個上架的應用,加深對iOS SDK的認識和理解;
  5. 到這時候,就會遇到瓶頸,希望更上一層樓。我自己的做法是通過看公開課或者網上的開發視頻,不是讓你重新學習,因為身邊沒人帶,所以這麼做讓你看到別人是怎麼編碼,別人的編程思路是什麼,並且能將你前段時間學習的內容進一步鞏固。
  6. 接下來當然是iOS進階了。可以開始閱讀David Mark的另一本暢銷書《iOS6開發進階與實戰》,主要深入講解了Core data,map Kit,Game Kit,iCloud,iOS安全等。
  7. 在第5和第6步的過程中,可以一點一點閱讀Matt Galloway 的《Effective Objective-C 2.0》:介紹52個編寫高質量IOS與OS X代碼的方法;
  8. 與此同時,要學會使用下面一些網站和工具,學會使用這些網站和工具,才能是你的開發之路可持續發展:1.GitHub 路 Build software better, together. 2.Ray Wenderlich 3.Phabricator 4.Stack Overflow 等等。


推薦看下這個總結吧(一些ios開發者總結的經驗) http://segmentfault.com/q/1010000000095589
有編程基礎直接學Object c,沒編程基礎先學c再學obj c,我覺得不存在什麼系統化,就是個編程語言而已
我也正在學ios dev,年紀也30出了。剛接觸,發現很多問題真是譯了過來,你也看不懂。接著就找基礎書來看。有一本最近看了後受益非淺。-我的第一本C++書,真正做到的不是無基礎學編程。簡直算是無文化學編程了。推薦你看看。會有幫助的。網上有D版,不過出於人道,最後我還是買了實體的。祝你成功!


推薦閱讀:
相關文章