有個同事問我是如何學習IOS的,做產品的不一定會代碼啊~
嗯啊,是的,不需要會,但是會的話,可以和程式員更好的溝通,最起碼我們都能聽懂同一種語言了。
那我來推薦一下相關資料吧~
之前有過編程經驗的人就不要看我的這個文章啦,如果你不知道字串是什麼?那太好了,你可以來看看我的文章,說不定還能少走點彎路~
我比較喜歡多緯度組合手中的資料,這樣我能多個角度看我的資源~嗯嗯,資源還是比較重要的~所以在介紹某個資料的時候,會按照緯度來標註。
第一緯度:按照難度係數來歸類我的資料和學習路徑;
第二緯度:按照資料的屬性或者來源來歸類
第三緯度:按照資料與資料之間的關聯關係來歸類
A.麥子學院課程
特點:免費,有層次階段性,當我們註冊登入之後,選擇了IOS課程之後,麥子學院出展現4個階段的課程,按照他的要求一點一點學習即可。這個我會寫一個專門的文章來點評麥子學院的課程以及我的學習路線~
目前更新到資料存放區了。
難度係數:從易到難一次遞進,各個階段的課程都有。
來源+屬性:麥子學院。視頻。
與其他學習資料的關聯:和蘋果官方開發人員中的資料關聯較多,尤其是Sundy老師講解的課程,來源於蘋果的官網,權威資料。
B.趙哲的系列課程
這個我是在優酷上看的,也可以下載到本地。關注趙哲的微信公眾號或者微博能獲得相關資料,直接在百度雲端硬碟下載可免去優酷的各種廣告。
趙哲的課程有快速版本,翻譯的是蘋果官網的視頻,但是也加入了自己的理解,所以有編程基礎且英文又不咋地的人適合看他的A系列高速課程。
沒有編程基礎的人強烈推薦趙哲S005的視頻,講解的非常詳細,適合一點基礎都沒有的人。就是說,如果你連字號串、運算子都不知為何物,那就可以學習這個系列。這個系列目前正在更新中。
難度係數:高速課程難度係數高+低速課程難度係數低
來源+屬性:開發人員大會視頻翻譯+自己的編製和錄製的課程
與其他學習資料的關聯:開發人員大會視頻
C.小波說雨燕系列課程
小波是國內出視頻最快的一位,當xcode還在beta版本的時候,就開始出現了視頻了。當然,也會出現代碼報錯情況,是因為beta幾次迭代中改了一些要求。不過小波出視頻速度比較快,所以著急的同學總能從他這裡獲得有意思的資料和講解。
不過我是在沒有其他的課程的時候才會去看小波的課程【小波永遠是第一個出視頻的,所以這句話的意思就是,我最先看的視頻都是小波的】。不過因為小波說話有點慢語調平緩,我聽著聽著就走神了或者睡著了,往往反應過來的時候就一句話:這是怎麼實現的?
當然,非常感謝小波的課程,我這樣都學完小波課程了,再來說人家這個有點慢容易走神好像好木有良心。。。。
目前更新到Core Data了~
難度係數:從低到高
來源+屬性:小波個人視頻
與其他學習資料的關聯:蘋果官網文檔。Core Data課程中推薦了一本書,是外國人寫的。
D.apple官網推薦讀物
D-1.
馬上著手開發IOS應用程式(Start Developing IOS Apps Today)
這本書是入門層級的,這也是蘋果開發人員官網裡,那麼多的guidelines/Reference中,唯一的一本中文。也說明這個文檔的重要。
麥子學院的Sundy老師也推薦過這本書,在學習UI前,看一下這本書,對理解IOS編程有協助。
如果你是資深程式員,當看雜誌看看這本書吧,花不了太多時間。對於沒有編程基礎的人來說,這本書就是一個“三字經”層級的入門書籍。
用OC寫的。但是道理沒有變。講述的內容實際上就是麥子學院的“IOS開發快速入門”,Sundy老師用swift講解了這個指南。
蘋果官方文件引導模式
蘋果官方文件引導模式英文
當你看完了《Start Developing iOS Apps Today》文檔後,還需要看什麼呢?上面的圖是蘋果官方的建議,需要看的文檔大約分為圖中的8大類(D1-D10)。
D-1.
App Distribution Guide
1.Register/註冊:註冊成為開發人員
《App Distribution Guide 》(應用程式分髮指南)中的“Managing Accounts”(管理帳戶)這一章節會帶您逐步完成註冊為Apple開發人員的過程。
D-2.
iOS Human Interface Guidelines
D-3.
Auto Layout Guide
2.Interface/介面:學習設計美觀的應用程式介面。
《iOS Human Interface Guidelines》(iOS使用者介面指南)會指導您如何讓應用程式符合iOS使用者介面規範。
《Auto Layout Guide》(自動布局指南)會指導您如何讓你的介面能夠自動布局,適應多個尺寸的apple裝置。
D-4.
The Swift Programming Language
3.Language/語言:學習語言
《The Swift Programming Language》(Swift程式設計語言)描述了如何使用Swift程式設計語言定義類、發送訊息、封裝資料,以及完成各種其他任務。
文檔中說的OC文檔,我在這裡換成了Swift。
如果想用swift編程,這個必須掌握,蘋果寫了將近五百多頁,非常不錯。
D-5.
App Programming Guide for iOS
4.Develop/開發:學習開發優秀的應用程式
《App Programming Guide for iOS》(iOS應用程式編程指南)講解了在開發iOS應用程式時,您必須要瞭解並做到的基本事項。
D-6.
Swift Standard Library Reference
這個是swift的參考指南(可以理解為公式表)
如果說D-5 The Swift Programming Language是數學課本,那麼D-6 Swift Standard Library Reference就是去考試時必帶的公式表了。是D-5的濃縮,如果哪個知識點忘記了,也是一個快速查詢的參考。當然了,更詳細的解釋還是要看D-5。這兩本書的關係就是一個是課本,一個是只是重點。
D-7.
iOS Technology Overview
5.Technologies/技術:瞭解可用的技術
《iOS Technology Overview》(iOS技術概述)介紹了可以在iOS應用程式中使用的架構和其他技術。
D-8.
Start Developing iOS Apps Today
6.Documentation/文稿:瀏覽文檔
《Start Developing iOS Apps Today》中的“尋找資訊(第109頁)”這一章節講解了如何充分利用所提供的文檔。
D-9.
Xcode Overview
7.Test/Debug / 測試/調試:調試並測試您的應用程式
《XcodeOverview》(Xcode概述)中的“DebugYourApp”(“調試您的應用程式”)會教您如何在Xcode中徹底調試和測試應用程式。
D-10.
AppDistributionGuide
8.Ship/交付發布:發布應用程式。
《AppDistributionGuide》(應用程式分髮指南)會帶您逐步完成這些過程:預備測試裝置,提交應用程式到App Store。
E.其他的學習書籍(英文)
E-1.
Introducing IOS 8: swift programming from idea to app store
這本書是為純粹的初學者設計的,為進入IOS編程世界提供個人指導。去掉了複雜的術語,用生活中相關的實際例子取而代之,本書用一些常見的情境,例如去雜貨店,開車,在餐廳裡吃飯,來教授編程知識。每章節都會用清晰簡明地講解概念。
這本書的目標是講解的內容從最初的概念一直到如何發布應用到ihpone的應用市場(APP store),你將會學到基本的編程知識概念,開發APP的步驟和過程,以及如何將APP發布到APP市場,無需編程經驗即可閱讀此書。You will learn to think differently and see the world from a new perspective.(你將學會如何從不同的角度思考,從一個新的角度來看世界。)這本書將給你一個工具來改變你和其他人的生活。別擔心別害怕,這本書已經去掉了可怕的複雜編程術語了。
英文版,目前我在翻譯其中一部分的內容,感興趣的可以訂閱我的翻譯專題:http://www.jianshu.com/notebooks/541987/latest
E-2.
Programming iOS 8 Dive Deep into Views, View Controllers, and Frameworks
看完E-1後可以接著看這本書,這本書比E-1更多的講解了視圖、視圖控制器以及架構的知識,英文版的。
E-3.
Core.Data.by.Tutorials.iOS.8.and.Swift.Edition.2014.12
如果你也會swift了,也學會各種控制項了,那還需要學習什麼呢?當然是資料庫了,蘋果官方提供的資料庫是Core Data。麥子學院的老師在講解資料庫的時候說過這個Core Data,分上和下兩節課介紹的。當時老師表達了這麼個意思:Core Data呢我大體一說就行了,要是想全部說完,那就是一本書了(潛台詞:太多了,講不完了,所以用兩節視頻講解一下就OK了)。
E-1這本書是講解如何用swift使用蘋果官方資料庫CORE DATA。
《小波說雨燕第五季 Core Data實戰》的教學視頻裡,使用的就是這本書
~
E-4.
iOS 8 Swift Programming Cookbook_Solutions & Examples for iOS Apps-O'Reilly(2014)
這本書主要是講解IOS一些中進階的功能和一些拓展。對於想提供自己IOS開發能力的人來說,這是一個比較好的書籍。
不過這個一看就是國內技術牛人寫的,幾乎不用xcode裡的storyboard,全部是代碼實現的效果。。。這對我來說絕對是災難,我離不開storyboard。
不過我看這本書也只是關注書中介紹Core Data章節,其他章節我還沒有學到那麼深入。
F.Stanford課程:Developing IOS8 Apps with Swift
哈哈,這個白鬍子教授一直在斯坦福教授開發IOS APP的課程,當年還有Objective-C編程的時候,他就在教。當蘋果推出了swift後,他的課程立即就使用了swift,國外的課程是多麼接地氣與時俱進接近現實啊!國內的那些課程,學了之後畢業都用不上,坑爹。斯坦福的學生也好幸福的~ 目前中文字幕還在由志願者們在翻譯,已經更新到第五課還是第六課了。itunes上也有,可以訂閱。
目前就是這些了,如果有什麼新發現,隨時更新這個文章。
《App Distribution Guide 》(應用程式分髮指南)中的“Managing Accounts”(管理帳戶)這一章節會帶您逐步完成註冊為Apple開發人員的過程。
2.Interface/介面:學習設計美觀的應用程式介面。
《iOS Human Interface Guidelines》(iOS使用者介面指南)會指導您如何讓應用程式符合iOS使用者介面規範。
《Auto Layout Guide》(自動布局指南)會指導您如何讓你的介面能夠自動布局,適應多個尺寸的apple裝置。
3.Language/語言:學習語言
《The Swift Programming Language》(Swift程式設計語言)描述了如何使用Swift程式設計語言定義類、發送訊息、封裝資料,以及完成各種其他任務。
文檔中說的OC文檔,我在這裡換成了Swift。
4.Develop/開發:學習開發優秀的應用程式
《App Programming Guide for iOS》(iOS應用程式編程指南)講解了在開發iOS應用程式時,您必須要瞭解並做到的基本事項。
5.Technologies/技術:瞭解可用的技術
《iOS Technology Overview》(iOS技術概述)介紹了可以在iOS應用程式中使用的架構和其他技術。
6.Documentation/文稿:瀏覽文檔
《Start Developing iOS Apps Today》中的“尋找資訊(第109頁)”這一章節講解了如何充分利用所提供的文檔。
7.Test/Debug / 測試/調試:調試並測試您的應用程式
《XcodeOverviewinXcodeOverview》(Xcode概述)中的“DebugYourApp”(“調試您的應用程式”)會教您如何在Xcode中徹底調試和測試應用程式。
8.Ship/交付發布:發布應用程式。
《AppDistributionGuide》(應用程式分髮指南)會帶您逐步完成這些過程:預備測試裝置,提交應用程式到App Store。