著作權(quán)歸作者所有。
十載的壽寧網(wǎng)站建設(shè)經(jīng)驗(yàn),針對(duì)設(shè)計(jì)、前端、開發(fā)、售后、文案、推廣等六對(duì)一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。全網(wǎng)整合營銷推廣的優(yōu)勢(shì)是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整壽寧建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。創(chuàng)新互聯(lián)公司從事“壽寧網(wǎng)站設(shè)計(jì)”,“壽寧網(wǎng)站推廣”以來,每個(gè)客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。
商業(yè)轉(zhuǎn)載請(qǐng)聯(lián)系作者獲得授權(quán),非商業(yè)轉(zhuǎn)載請(qǐng)注明出處。
作者:Franz Fang
鏈接:
來源:知乎
不管是斯坦福大學(xué)的CS193p公開課、蘋果官方文檔、絕大多數(shù)市場(chǎng)上龐雜的教學(xué)書籍都不是很適合入門同學(xué)看,想入門的話應(yīng)該選用學(xué)習(xí)成本最低的方法,從最最基本開始講起,并不是一味的講解語法與知識(shí),而是一邊實(shí)踐一邊學(xué)習(xí)知識(shí)才是最好的學(xué)習(xí)方法。
并且我想告訴題主,你問的是iOS 開發(fā)怎么入門,但是你補(bǔ)充說明里說道的設(shè)計(jì)模式、內(nèi)存管理等內(nèi)容暫時(shí)不用你關(guān)心,等你真正iOS入門了以后在研究吧。也許我可以這么定義你的問題:
一個(gè)略懂編程的人并且完全沒有接觸過IOS開發(fā)的人想要學(xué)習(xí)IOS開發(fā)應(yīng)如何學(xué)習(xí)?
--------------- 2015.5.15 更新 --------------
增加了怎么在Github上找優(yōu)質(zhì)OC項(xiàng)目
動(dòng)畫效果推薦的教程
部分段落重新組織了語言
(一)objective-c語言開發(fā)iOS應(yīng)用
為什么不讓初學(xué)者看斯坦福教程:我以為,斯坦福大學(xué)IOS公開課不適合入門的同學(xué)看,里面第一課講解的就是MVC模式。對(duì)于一個(gè)剛?cè)腴T想要學(xué)習(xí)的IOS的同學(xué)可能就完全懵了,心里想:“我特么第一課都聽不懂我后面還學(xué)個(gè)P啊”。如果以前沒接觸過面向?qū)ο蟮恼Z言學(xué)習(xí)的熱情肯定大打折扣。
為什么不讓初學(xué)者看蘋果官方文檔:我還以為,蘋果官方文檔的內(nèi)容雖然權(quán)威但example對(duì)初學(xué)者一點(diǎn)都不友好,而且個(gè)人認(rèn)為中文譯文翻譯不是令初學(xué)者很容易理解。初學(xué)階段,教程的易理解程度我認(rèn)為是非常重要的一點(diǎn)。(實(shí)在要看請(qǐng)看英文原版。)
我不否認(rèn)以上兩者是極好的學(xué)習(xí)材料,如果你入門了iOS開發(fā)并且有一定的英文功底,我是非常推薦你去看的,尤其官方文檔,應(yīng)該經(jīng)常翻閱。但是我認(rèn)為保持學(xué)習(xí)的熱情是最重要的。本著這個(gè)理念,我推薦的學(xué)習(xí)方法難度非常低,希望你們能滿意。
第一階段: RayWenderlich網(wǎng)站中的 The iOS Apprentice教程 (難度指數(shù):※)
img src="" data-rawwidth="646" data-rawheight="560" class="origin_image zh-lightbox-thumb" width="646" data-original=""以上有幾個(gè)答案提到了這個(gè)網(wǎng)站,但看什么教程沒有細(xì)說,我在這里簡(jiǎn)單說說。The iOS Apprentice的教程針對(duì)完全沒有編程經(jīng)驗(yàn)的人設(shè)計(jì)。這個(gè)教程是外國人寫的并且有免費(fèi)試讀版,感興趣的人要看看。里面說的東西都非常非常基本,里面一個(gè)共講解了4個(gè)不同類型app,強(qiáng)烈建議一步一步按照上面所寫的步驟敲一遍代碼。其中你會(huì)遇到很多復(fù)雜的語句和長(zhǎng)的可怕的函數(shù),你不用感到恐慌,照著敲,知道它干嘛用完全OK了,隨著你編程時(shí)間以及經(jīng)驗(yàn)的增加,你都會(huì)懂得。以上有幾個(gè)答案提到了這個(gè)網(wǎng)站,但看什么教程沒有細(xì)說,我在這里簡(jiǎn)單說說。The iOS Apprentice的教程針對(duì)完全沒有編程經(jīng)驗(yàn)的人設(shè)計(jì)。這個(gè)教程是外國人寫的并且有免費(fèi)試讀版,感興趣的人要看看。里面說的東西都非常非?;?,里面一個(gè)共講解了4個(gè)不同類型app,強(qiáng)烈建議一步一步按照上面所寫的步驟敲一遍代碼。其中你會(huì)遇到很多復(fù)雜的語句和長(zhǎng)的可怕的函數(shù),你不用感到恐慌,照著敲,知道它干嘛用完全OK了,隨著你編程時(shí)間以及經(jīng)驗(yàn)的增加,你都會(huì)懂得。
附鏈接:
注:這個(gè)教程是英文原版,并且收費(fèi),只免費(fèi)提供一個(gè)app的教程。如果看完了這個(gè)免費(fèi)的教程覺得還挺想繼續(xù)學(xué)的請(qǐng)參考 @王寒 老師的翻譯教程(只有前3個(gè)app教程,第4個(gè)教程剛出,國內(nèi)應(yīng)該還沒有人翻譯,如果想看只能付費(fèi))。PS:(現(xiàn)在開發(fā)iOS應(yīng)用基本都是用Objective-C,至于剛出來的Swift現(xiàn)階段暫時(shí)不推薦學(xué)習(xí),如果想了解王寒老師也做了swift版本的The iOS Apprentice教程翻譯,自己去找)
附上王寒老師教程下載地址:
第二階段:培訓(xùn)班的網(wǎng)絡(luò)課程及入門書籍
經(jīng)過第一個(gè)階段你應(yīng)該已經(jīng)大致掌握IOS開發(fā)流程,能編寫一個(gè)非常簡(jiǎn)單的應(yīng)用了。這時(shí)候相信你的熱情應(yīng)該會(huì)很高漲,但接下來的學(xué)習(xí)可能會(huì)很枯燥,做好準(zhǔn)備。網(wǎng)絡(luò)課程的話推薦李明杰的課程,不推薦其他的。(他目前在廣州創(chuàng)業(yè)建立自己的培訓(xùn)品牌,沒有自制力看網(wǎng)絡(luò)課程的請(qǐng)去找他。杰哥開源了一些非常優(yōu)秀的框架如:MJExtension )
建議首先要惡補(bǔ)基礎(chǔ)知識(shí)。經(jīng)過第一個(gè)階段你可能覺得你懂不少了,但是只是表面,尤其是沒學(xué)過編程的應(yīng)該好好學(xué)習(xí)一下視頻前面的課程,主要看看語法。等你看惡心了看煩了就去看視頻里UI部分,這里相對(duì)于來說比較輕松,一定要把視頻里寫的語句打一遍,相信這樣你理解會(huì)更深刻。里面說的不清楚的地方上網(wǎng)可以百度,可以查書(如果你有書的話)。
Q:視頻教程是用來做什么的?
A:光有實(shí)踐沒有知識(shí)是寫不好程序的,第一階段基本都是實(shí)踐,第二部分則是用來查缺補(bǔ)漏。 之所以推薦網(wǎng)絡(luò)課程是因?yàn)橹v解的比較系統(tǒng),各種入門知識(shí)都會(huì)涉及。因?yàn)閕OS所涉及內(nèi)容龐 大單看幾本書還是涉及不全的。
Q:上不上培訓(xùn)班?
A:個(gè)人意見是不推薦去,自學(xué)足夠了?,F(xiàn)在學(xué)習(xí)iOS的環(huán)境比前幾年好太多了,光憑借網(wǎng)上的資料是 完全可以的學(xué)得很好的,如果你連這點(diǎn)學(xué)習(xí)能力還沒有我也不相信你將來能成為一個(gè)很優(yōu)秀的工程師。而且你會(huì)發(fā)現(xiàn)在社會(huì)上一些互聯(lián)網(wǎng)公司是拒絕接收培訓(xùn)班出來的人。
推薦入門書籍:
tips:以下所有書籍有英文版看英文版,有最新版看最新版
1、《Objective-C 程序設(shè)計(jì)》(難度指數(shù):※※)
2、《iOS 7應(yīng)用開發(fā)入門經(jīng)典》(難度指數(shù):※※)
3、《iOS開發(fā)指南-0基礎(chǔ)到AppStore上架》(難度指數(shù):※※※)
4、《iOS編程實(shí)戰(zhàn)》(難度指數(shù):※※※※)
這里面講解的很清楚,后面甚至有簡(jiǎn)單的項(xiàng)目可以練手,這對(duì)于看視頻教程看惡心的同學(xué)是個(gè)福音~你可以先做項(xiàng)目遇到不懂的再看視頻。
這里我想多說一句,買iOS開發(fā)的輔導(dǎo)書千萬別買過時(shí)太久的,我看以上有答案還推薦iOS4系列叢書呢...拜托現(xiàn)在都什么年代了,現(xiàn)在iOS8教程都要出來了,你iOS6的教程都過時(shí)好久了更別提iOS4了...對(duì)于新出的swift語言好多人難以選擇不知道該學(xué)OC好還是Swift好。我個(gè)人建議現(xiàn)在學(xué)OC,一門新語言的誕生需要經(jīng)過時(shí)間的考驗(yàn)與洗禮。等你學(xué)好了OC以后再看也不遲。
第三階段及以后
到這個(gè)階段你應(yīng)該擁有了充分的自學(xué)能力,已經(jīng)達(dá)到了入門水平。
這時(shí)候以下網(wǎng)址將成為你的家常便飯:
Github,StackOverFlow
如果你編程遇到困難,在StackOverFlow上面應(yīng)該都能找到合適的解答。(前提是你英文不要太差)。Github上好多開源代碼足夠豐富你的眼界。如果你想成為一個(gè)iOS開發(fā)者的話這上面兩個(gè)網(wǎng)站是你經(jīng)常以及必須會(huì)用到的。
Github上怎么搜牛人們的項(xiàng)目:
img src="" data-rawwidth="425" data-rawheight="360" class="origin_image zh-lightbox-thumb" width="425" data-original=""
想學(xué)一點(diǎn)UI的同學(xué)可以看:
1、iOS by Tutorials
2、design+code 網(wǎng)址:
想學(xué)一點(diǎn)動(dòng)效/交互的同學(xué)可以看:
1、下載QuartzComposer及相關(guān)插件如Origami,教程: Quartz Composer學(xué)習(xí)
想學(xué)applewatch開發(fā)的同學(xué)可以看:
1、《watchKit》raywenderlich剛推出這個(gè)教程,英文版無譯文。
進(jìn)價(jià)書單:
1、《Effective Objective-C 2.0》(必看)
2、《Objective-C高級(jí)編程 iOS與OS X多線程和內(nèi)存管理》
3、《iOS開發(fā)進(jìn)階》
4、《iOS Auto Layout 開發(fā)秘籍》
推薦博客及網(wǎng)站:
1、Github:
2、StackOverFlow:
3、Code4App:
4、cocoachina:
5、objc中國:
進(jìn)階博客(排名不分先后..)
1、王巍的博客(我們都叫它喵神,他很萌噠)
鏈接: (難度指數(shù):※※※※※)
理由:他的swift的新書講解的非常好,但不適合入門,進(jìn)階的話這是很適合的一本書。其他關(guān)于OC的內(nèi)容可以翻看喵神的博客。
2、唐巧哥的技術(shù)博客
鏈接: iOS開發(fā)如何提高 (難度指數(shù):※※※※※)
理由:據(jù)傳說是iOS圈的劉德華。巧哥05年1月會(huì)出一本進(jìn)階的書,可以關(guān)注以下。
3、葉孤城的技術(shù)博客 :
鏈接:葉孤城帶你讀源碼之RESideMenu (難度指數(shù):※※※)
理由:葉孤城童鞋的風(fēng)格就是講解細(xì)膩,通俗易懂。
4、破船之家:
鏈接:beyondvincent.com 的頁面 (難度指數(shù):※※※)
理由:破船的博客內(nèi)容很全面,一些開發(fā)筆記,技巧他都會(huì)教給你。
5、Xcode Dev
鏈接: Xcode Dev (難度指數(shù):※※※※)
理由:也是一位大神的原創(chuàng)博客,內(nèi)容很值得學(xué)習(xí)。
6、txx's 的博客(我們都叫它蝦神,他也超萌噠)
鏈接: txx's blog
理由: 90后非常優(yōu)秀的iOS開發(fā)者,看看他的大學(xué)時(shí)期的經(jīng)歷才發(fā)現(xiàn)我們過的是多么懈怠,大神之所以為大神也是有原因的。
7、Kevin的博客
鏈接: Kevin Blog
理由:周楷雯是一個(gè)非常厲害的90后iOS開發(fā)者,他前些年寫的項(xiàng)目在Github上擁有2500+star (PNchat?忘了)非??植?。
8、念茜姐姐的blog
鏈接: 新博客: 舊博客:念茜的博客
理由: iOS圈里的女神級(jí)人物,她寫的iOS安全類的文章非常值得一看。
9、孫源的blog
鏈接: sunnyxx的技術(shù)博客
理由:90后iOS開發(fā)者,技術(shù)同樣非常強(qiáng),目前似乎在百度知道任職。
等等...iOS圈內(nèi)值實(shí)力很強(qiáng)又懂得分享知識(shí)的開發(fā)者絕不止以上幾位,我隨時(shí)想到隨時(shí)再補(bǔ)充。
(二)swift語言開發(fā)iOS應(yīng)用
這里推薦兩個(gè)入門學(xué)習(xí)比較好的方法
1、的網(wǎng)站(難度指數(shù):※)
非常淺顯易懂的入門級(jí)swift教程:
這個(gè)網(wǎng)站可以看兩方面:
(1)、隨時(shí)更新的swift tips (有一定水平在看)
(2)、新手主要看以下這本書img src="" data-rawwidth="390" data-rawheight="434" class="content_image" width="390"
2、《Swift Tutorials》 依然是raywenderlich出品,目前只有英文版。(難度指數(shù):※)
3、官方swift譯文教程 《The Swift Programming Language》中文版 (難度指數(shù):※※)
4、上文提到的王巍的博客(喵神)《Swifter - 100 個(gè) Swift 必備 tips》(難度指數(shù):※※※※)
喵神的這本書網(wǎng)上就有售賣,請(qǐng)支持正版,絕對(duì)是不可多得的進(jìn)價(jià)書籍,此書并非傳統(tǒng)意義上的教程,是以tip的方式呈獻(xiàn)給大家的。
iOS
開發(fā)最難的是堅(jiān)持!下面來推薦一些入門書籍。
1、精讀
Stephen
G.
Kochan
的《Objective-C程序設(shè)計(jì)》:Objective-C語言基礎(chǔ),iOS開發(fā)的第一技能就是精通Objective-C;
2、有了語言基礎(chǔ),精讀
David
Mark
的《精通iOS開發(fā)》:通過各種單獨(dú)的項(xiàng)目,熟悉iOS
SDK,XCode開發(fā)環(huán)境,明白MVC、委托等設(shè)計(jì)模式,通讀完后,你就對(duì)iOS
SDK有了比較全面的認(rèn)識(shí),各種框架和組件有了一定的認(rèn)識(shí);
3、選擇性閱讀了Matt
Neubury
的《iOS程序設(shè)計(jì)》:本書是iOS最系統(tǒng)的教程,對(duì)iOS框架的底層有比較詳細(xì)的介紹,深刻了我對(duì)iOS的理解。如果你是一名不僅僅想使用iOS
SDK開發(fā),還想理解底層是怎么運(yùn)行實(shí)現(xiàn)的,那就閱讀它。如果沒看David
Mark的《精通iOS開發(fā)》直接閱讀這本教程會(huì)非常的吃力和枯燥無味,所以我建議在學(xué)習(xí)的過程中,把它作為資料庫來查詢,遇到想深入學(xué)習(xí)的某一方面,就選擇性閱讀本書的一些章節(jié);
4、有了上面的一些知識(shí),研究一些github上的優(yōu)秀的項(xiàng)目或者從cocoaChina上找些感興趣的代碼推薦內(nèi)容并且閱讀源碼,最好還可以在自己的DIY項(xiàng)目中使用上它們。還可以閱讀Bear
Cahill
的《iOS
in
Practice》:通過9個(gè)上架的應(yīng)用,加深對(duì)iOS
SDK的認(rèn)識(shí)和理解;
5、到這時(shí)候,就會(huì)遇到瓶頸,希望更上一層樓。我自己的做法是通過看公開課或者網(wǎng)上的開發(fā)視頻,不是讓你重新學(xué)習(xí),因?yàn)樯磉厸]人帶,所以這么做讓你看到別人是怎么編碼,別人的編程思路是什么,并且能將你前段時(shí)間學(xué)習(xí)的內(nèi)容進(jìn)一步鞏固。
6、接下來當(dāng)然是iOS進(jìn)階了??梢蚤_始閱讀David
Mark的另一本暢銷書《iOS6開發(fā)進(jìn)階與實(shí)戰(zhàn)》,主要深入講解了Core
data,map
Kit,Game
Kit,iCloud,iOS安全等。
7、在第5和第6步的過程中,可以一點(diǎn)一點(diǎn)閱讀Matt
Galloway
的《Effective
Objective-C
2.0》:介紹52個(gè)編寫高質(zhì)量IOS與OS
X代碼的方法;
8、與此同時(shí),要學(xué)會(huì)使用下面一些網(wǎng)站和工具,學(xué)會(huì)使用網(wǎng)站和工具,才能是你的開發(fā)之路可持續(xù)發(fā)展。
首先,我們需要確認(rèn)自己的設(shè)備是否在iOS6固件支持之列,根據(jù)蘋果公布的信息,以下設(shè)備可以順利升級(jí)到iOS6:
iPhone4S、iPhone4、iPhone3GS、iPad2、iPad3以及iPod Touch4,與iOS5固件相比,蘋果取消了iPad一代和iPod touch3升級(jí)到新版本的支持。
同時(shí),我們需要下載專門為iOS6固件升級(jí)準(zhǔn)備的iTunes10.6.3新版本,以及iOS6測(cè)試版固件。
提醒:目前下載的iOS6測(cè)試版固件,格式為dmg,這是一種光盤的壓縮包格式,你可以使用一些虛擬光驅(qū)或其他軟件打開,將其中的ipsw格式的固件文件拷貝出來,即可使用。
擁有了以上條件,并不代表你可以參與iOS6的測(cè)試,由于蘋果僅面向付費(fèi)加入iOS開發(fā)者資格的開發(fā)者發(fā)布iOS6測(cè)試,所以你如果想要體驗(yàn)iOS6,還必須將你的設(shè)備,加入到一名開發(fā)者賬號(hào)下的允許設(shè)備列表中。只要你認(rèn)識(shí)一名開發(fā)者,相信他還是會(huì)愿意幫助把你的設(shè)備加入開發(fā)者賬號(hào)列表的,因?yàn)槊棵_發(fā)者賬號(hào)下,可以注冊(cè)多達(dá)100部iOS設(shè)備參與測(cè)試(公司賬號(hào)設(shè)備限制為500臺(tái))。
當(dāng)然,如果你是高富帥,完全可以到蘋果的開發(fā)者中心,注冊(cè)一個(gè)付費(fèi)的開發(fā)者賬號(hào),年費(fèi)僅需99美元,是目前所有移動(dòng)平臺(tái)中收費(fèi)最低的操作系統(tǒng)之一。
擁有以上條件以后,我們就可以很簡(jiǎn)單的按照正常升級(jí)iOS固件的步驟,來進(jìn)行iOS6測(cè)試版的升級(jí)。
打開iTunes10.6.3
將iPhone4S等iOS設(shè)備連接到電腦上
右鍵點(diǎn)擊iTunes左側(cè)菜單欄里的iOS圖標(biāo),選擇備份,以免數(shù)據(jù)丟失。
提醒:根據(jù)蘋果的說明,升級(jí)iOS6之后,將無法降級(jí)至iOS5。
點(diǎn)擊Shift鍵(Mac下點(diǎn)擊Option鍵),同時(shí)點(diǎn)擊iTunes中的恢復(fù)按鈕,在彈出的文件框中,選擇下載的iOS6固件。
耐心等待iTunes恢復(fù)完成。
OK,進(jìn)入iOS6的世界吧!
分享標(biāo)題:ios6開發(fā)進(jìn)階與實(shí)戰(zhàn),ios6優(yōu)化
分享URL:http://www.rwnh.cn/article10/dssdgdo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開發(fā)、品牌網(wǎng)站制作、微信公眾號(hào)、Google、網(wǎng)站營銷、全網(wǎng)營銷推廣
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)