iOS
成都創(chuàng)新互聯(lián)始終堅(jiān)持【策劃先行,效果至上】的經(jīng)營理念,通過多達(dá)10多年累計(jì)超上千家客戶的網(wǎng)站建設(shè)總結(jié)了一套系統(tǒng)有效的營銷解決方案,現(xiàn)已廣泛運(yùn)用于各行各業(yè)的客戶,其中包括:加固等企業(yè),備受客戶贊譽(yù)。
開發(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ì)模式,通讀完后,你就對iOS
SDK有了比較全面的認(rèn)識,各種框架和組件有了一定的認(rèn)識;
3、選擇性閱讀了Matt
Neubury
的《iOS程序設(shè)計(jì)》:本書是iOS最系統(tǒng)的教程,對iOS框架的底層有比較詳細(xì)的介紹,深刻了我對iOS的理解。如果你是一名不僅僅想使用iOS
SDK開發(fā),還想理解底層是怎么運(yùn)行實(shí)現(xiàn)的,那就閱讀它。如果沒看David
Mark的《精通iOS開發(fā)》直接閱讀這本教程會(huì)非常的吃力和枯燥無味,所以我建議在學(xué)習(xí)的過程中,把它作為資料庫來查詢,遇到想深入學(xué)習(xí)的某一方面,就選擇性閱讀本書的一些章節(jié);
4、有了上面的一些知識,研究一些github上的優(yōu)秀的項(xiàng)目或者從cocoaChina上找些感興趣的代碼推薦內(nèi)容并且閱讀源碼,最好還可以在自己的DIY項(xiàng)目中使用上它們。還可以閱讀Bear
Cahill
的《iOS
in
Practice》:通過9個(gè)上架的應(yīng)用,加深對iOS
SDK的認(rèn)識和理解;
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ā)展。
一、
準(zhǔn)備工作
1. Mac、iOS設(shè)備、開發(fā)者賬號
這些是做iOS開發(fā)必須要有的,而且是一大筆錢,但不要怕花錢,因?yàn)檫@些都是值得的。如果能夠?qū)W有所成,一兩個(gè)月的工資基本就回本了。就當(dāng)是自己交的一筆“培訓(xùn)費(fèi)”吧。
2. 心態(tài)上的準(zhǔn)備
如果你是零基礎(chǔ)轉(zhuǎn)行iOS,那么一定要有破釜沉舟的勇氣和決心,并做好打持久戰(zhàn)的心理準(zhǔn)備。
二、
學(xué)習(xí)路線
1. 對編程的基本認(rèn)識
如果你是完全的零基礎(chǔ),我建議先要對編程有個(gè)基本的認(rèn)識。建議從C語言入手,因?yàn)镃語言比較簡潔易上手,并且和Objective-C很相似。
“計(jì)算機(jī)專業(yè)體系”課程,很適合入門。
書籍的話,推薦《C
Primer Plus》。
2. Objective-C語言學(xué)習(xí)
當(dāng)對C語言有個(gè)大致的了解后,就可以開始學(xué)習(xí)Objective-C了。
推薦書籍:
《Objective-C基礎(chǔ)教程》
《Objective-C程序設(shè)計(jì)》
注:這兩本內(nèi)容都差不多,但《Objective-C基礎(chǔ)教程》寫的更好、更經(jīng)典,建議以這本為重點(diǎn)精讀。但是這本寫的比較籠統(tǒng),難度稍高,所以如果遇到不懂的地方就看看《Objective-C程序設(shè)計(jì)》,這一本寫的簡單、詳細(xì)一些。
需要掌握并熟練運(yùn)用的地方:
1) 面向?qū)ο缶幊痰幕A(chǔ)知識。包括:面向?qū)ο笈c面向過程的區(qū)別、為什么要面向?qū)ο缶幊?,類、對象、繼承、方法、屬性、接口等概念的理解與使用。
2) Foundation框架。主要是NSString類、NSArray類、NSDictionary類、NSNumber類、NSRange類的熟練運(yùn)用。
3) 內(nèi)存管理MRC、ARC的原理,委托delegate、協(xié)議protocol、類別category、塊block的理解與使用。
3. iOS SDK/Cocoa Touch學(xué)習(xí)
有了Objective-C基礎(chǔ),就可以開始邊看斯坦福公開課邊做APP了(個(gè)人覺得沒有OC基礎(chǔ)直接看這個(gè)會(huì)很吃力)。視頻如下:
斯坦福大學(xué)公開課CS193P《iOS7應(yīng)用開發(fā)》(Objective-C語言)
斯坦福大學(xué)公開課CS193P《iOS8開發(fā) 》(Swift語言)
推薦書籍:《精通iOS開發(fā)》
第一個(gè)iOS應(yīng)用:
蘋果官方有個(gè)做iOS應(yīng)用的教程——《馬上著手開發(fā)iOS應(yīng)用程序(Start
Developing iOS Apps Today)》。強(qiáng)烈建議以這個(gè)Demo作為你的第一個(gè)iOS應(yīng)用,因?yàn)檫@個(gè)教程能讓你對一個(gè)iOS應(yīng)用的搭建有個(gè)非常全面、細(xì)致的認(rèn)識。完成了這個(gè)Demo后,就可以結(jié)合斯坦福公開課學(xué)到的東西創(chuàng)建屬于你自己的APP了。
需要掌握的地方:
1) MVC設(shè)計(jì)模式。只有理解了iOS的MVC架構(gòu),才能把一個(gè)應(yīng)用解剖成一個(gè)個(gè)單獨(dú)的部分,這樣你在開始做一個(gè)項(xiàng)目的時(shí)候才不會(huì)茫無頭緒。
2)UIKit的各種控件。特別是UITableView和UICollectionView一定要掌握,因?yàn)榇蟛糠值膇OS應(yīng)用都是由這兩種視圖搭建,吃透了它們那可玩的花樣就很多了,其樂無窮。
3) 導(dǎo)航控制器UINavigationController和選項(xiàng)卡控制器UITabBarController。同上,這兩個(gè)控制器也是絕大多數(shù)iOS應(yīng)用UI框架的根基,也是多個(gè)MVC協(xié)同工作的最典型例子。
4) 場景切換的實(shí)現(xiàn)——Segue。熟練使用Segue很重要,因?yàn)橐粋€(gè)應(yīng)用一般都是各個(gè)界面輪流出現(xiàn)的,兩個(gè)界面之間怎樣實(shí)現(xiàn)跳轉(zhuǎn)、怎樣將一個(gè)界面的數(shù)據(jù)傳遞到下個(gè)界面,這都是實(shí)際開發(fā)中會(huì)遇到的問題。
5) Storyboard和AutoLayout的使用。這兩者是一個(gè)應(yīng)用的UI界面設(shè)計(jì)不可或缺的部分。
6) 其它iOS高級編程。包括:數(shù)據(jù)存取CoreData/SQLite、多線程GCD、繪圖CoreGraphics、動(dòng)畫CoreAnimation、網(wǎng)絡(luò)編程、手勢Gesture、多媒體AVFoundation等等,這些內(nèi)容都可以實(shí)際用到時(shí)再深入學(xué)習(xí)。
7) 第三方庫的使用。參考:GitHub 上都有哪些值得關(guān)注學(xué)習(xí)的 iOS 開源項(xiàng)目? - 編程
4. 堅(jiān)持寫代碼、查文檔、讀技術(shù)博客
學(xué)習(xí)編程,一定要勤于動(dòng)手,看再多的書、再多的視頻,如果不動(dòng)手敲代碼都是白搭。哪怕書上和視頻上的代碼你一行都看不懂,也要親手把代碼敲一遍、把Demo親自實(shí)現(xiàn)一遍,這很重要。編程是手敲會(huì)的,不是眼睛看會(huì)的。
學(xué)習(xí)iOS開發(fā)的過程中,有遇到不懂是正常的,別害怕不懂,Cocoa的內(nèi)容細(xì)節(jié)本來就多,每年的WWDC還會(huì)發(fā)布一些新技術(shù)。所以遇到不懂的知識一定要學(xué)會(huì)查蘋果官方API文檔:iOS Dev Center
做APP時(shí),如果一個(gè)地方不會(huì)實(shí)現(xiàn),或者遇到解決不了的問題,一定要學(xué)會(huì)使用Google搜索。一般來說,初學(xué)iOS遇到的問題,Stack Overflow上都有類似的提問,基本一搜一個(gè)準(zhǔn)。
此外,CSDN等一些技術(shù)博客上的文章也很有參考價(jià)值。推薦一些優(yōu)秀的iOS技術(shù)博客——中文 iOS/Mac 開發(fā)博客列表:tangqiaoboy/iOSBlogCN · GitHub
參考: iOS開發(fā)-項(xiàng)目設(shè)置默認(rèn)語言為中文
添加Localizations,打開列表可以看到第一個(gè)選項(xiàng)是英語,在最右邊打開列表,選中簡體中文就可以了
一、IOS是由蘋果公司開發(fā)的手持設(shè)備操作系統(tǒng)。iPhone Operating System 的縮寫,不是單詞,所以直接讀字母就行。
二、iOS是由蘋果公司開發(fā)的移動(dòng)操作系統(tǒng)?。蘋果公司最早于2007年1月9日的Macworld大會(huì)上公布這個(gè)系統(tǒng),最初是設(shè)計(jì)給iPhone使用的,后來陸續(xù)套用到iPod touch、iPad以及Apple TV等產(chǎn)品上。
iOS與蘋果的Mac OS X操作系統(tǒng)一樣,屬于類Unix的商業(yè)操作系統(tǒng)。原本這個(gè)系統(tǒng)名為iPhone OS,因?yàn)閕Pad,iPhone,iPod touch都使用iPhone OS,所以2010WWDC大會(huì)上宣布改名為iOS(iOS為美國Cisco公司網(wǎng)絡(luò)設(shè)備操作系統(tǒng)注冊商標(biāo),蘋果改名已獲得Cisco公司授權(quán))。
擴(kuò)展資料
Cisco的網(wǎng)際操作系統(tǒng)(iOS)是一個(gè)為網(wǎng)際互連優(yōu)化的操作系統(tǒng)。
類似一個(gè)局域操作系統(tǒng)(NOS)。簡而言之,它是一個(gè)與硬件分離的軟件體系結(jié)構(gòu),隨網(wǎng)絡(luò)技術(shù)的不斷發(fā)展,可動(dòng)態(tài)地升級以適應(yīng)不斷變化的技術(shù)(硬件和軟件)。
iOS可以被視作一個(gè)網(wǎng)際互連中樞。一個(gè)高度智能的管理員,負(fù)責(zé)管理、控制復(fù)雜的分布式網(wǎng)絡(luò)資源。
iOS系統(tǒng)的中文名稱是:蘋果移動(dòng)設(shè)備操作系統(tǒng)。
參考資料:百度百科-ios系統(tǒng)