蘋果創(chuàng)始人喬布斯在1985被董事會(huì)趕出蘋果公司后,成立了一家NeXT電腦公司,NeXT在1988年推出了第一個(gè)工作站電腦產(chǎn)品NeXT computer. ?推出了對(duì)應(yīng)的系統(tǒng)NEXTSTEP, 同時(shí)objective c(oc) 應(yīng)運(yùn)而生,是擴(kuò)充C的面向?qū)ο?/a>編程語(yǔ)言.所以oc中有大量ns開(kāi)頭的命名方法和變量.
ios 主流也使用oc進(jìn)行開(kāi)發(fā),當(dāng)然蘋果新退出的swift(意在取代oc)也在蓬勃發(fā)展中,不過(guò)其在中國(guó)公司的使用率太低,現(xiàn)在學(xué)習(xí)oc仍然是不二的選擇哦.
學(xué)習(xí)ios開(kāi)發(fā)本質(zhì)上就是掌握oc和蘋果api的過(guò)程, 在此特別提醒紙質(zhì)書(shū)并不需要購(gòu)買,快速入門可以通過(guò)讀本系列或者看第三方視頻(如:極客學(xué)院,威鋒)來(lái)掌握基礎(chǔ)知識(shí).
在開(kāi)始ios編程前,強(qiáng)烈要求同學(xué)先學(xué)習(xí)面向?qū)ο蟮木幊讨R(shí)!!!!!!(也提醒一下你不需要先學(xué)習(xí)c語(yǔ)言)
此外,準(zhǔn)備一臺(tái)mac電腦,一個(gè)順手的鍵盤,我們就可以開(kāi)始啦.
1 下載Xcode (注意,每次升級(jí)ios后,你的xocde可能就要升級(jí)一次了)
我們將使用這個(gè)IDE :集成開(kāi)發(fā)環(huán)境(IDE障涯,Integrated Development Environment )開(kāi)發(fā)ios程序
2 新建項(xiàng)目
3 選擇single view app 點(diǎn)擊next,product Name 起一個(gè)喜歡的名字,中文也可以.(注意:organization identifier 一般以com.機(jī)構(gòu)名.項(xiàng)目名填寫)
4 ?一路next 后Xcode 就會(huì)呈現(xiàn)一個(gè)新的編輯項(xiàng)目在你面前了。
各位同學(xué)看到這里就會(huì)開(kāi)始懵逼了,這里我來(lái)詳細(xì)解釋.oc 源自于c, 故而有頭文件.h 和 主文件 .m,他們是一對(duì)兒的關(guān)系九秀。 .h文件中通常聲明對(duì)外暴露的方法和變量, .m文件則包含有方法的具體實(shí)現(xiàn)和私有變量颤霎。
打開(kāi)Appdelegate 文件后,首先看到的是?#import?<UIKit/UIKit.h>
#import ?作用為引入其他文件,這樣你就能使用引入文件的功能.
<UIKit/UIKit.h> 表示?UIKit 代碼包內(nèi)的UIKit.h文件
合起來(lái)就是理解為引入?UIKit 代碼包內(nèi)的UIKit.h文件
你在頭部還會(huì)發(fā)現(xiàn)一段灰色的字符,這段表示為注釋,幫助你或者其他開(kāi)發(fā)人員理解你寫的代碼.
注意:注釋有兩種方法
// 表示這一行是注釋
/**/內(nèi)包含的內(nèi)容都是注釋,可以跨行 ? ? ??
[@interface ]作為聲明類的關(guān)鍵字表示你想聲明一個(gè)類, 名字叫Appdelegate (有關(guān)類是什么,你可以搜索面向?qū)ο缶幊?
[UIResponder] 則是表示Appdelegate 繼承了UIResponder (同樣是面向?qū)ο蟮闹R(shí),所以不知道的還是感覺(jué)去學(xué)習(xí)吧)
[<UIApplicationDelegate>]表示Appdelegate 遵循了UIApplicationDelegate這個(gè)協(xié)議(后面的章節(jié)會(huì)詳細(xì)介紹)
[@property ]表示是一個(gè)屬性
[strong ]表示是強(qiáng)類型 (后面會(huì)具體介紹)
[nonatomic] ?表示非原子性,是一種操作模式(后面介紹喲~)
[UIWindow *window] 表示?window為UIWindow 類型的對(duì)象, window是你其的名字,叫其他名字也是可以的.
注意到";"了嗎? ?他表示一段代碼的結(jié)束,所以一行代碼其實(shí)可以寫多段代碼的.
[@end ] 對(duì)應(yīng)@interface 表示這個(gè)類聲明結(jié)束了
看完頭文件,我們來(lái)看看方法體文件吧
@interface AppDelegate ()?
@end 內(nèi)你可以聲明私有變量(私有變量也是面向?qū)ο蟮闹R(shí))
[@implementation AppDelegate ] 表示你將實(shí)現(xiàn)你所聲明AppDelegate所需的方法
接下來(lái)重點(diǎn)介紹oc 聲明方法 分為三段
1 ?方法名以及接受的參數(shù)
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
表示方法接受2個(gè)參數(shù)?(UIApplication *)application 和?(NSDictionary *)launchOptions
2 方法具體實(shí)現(xiàn)
return yes 表示返回布爾類型YES
3 {........}表示里面的都是方法的具體實(shí)現(xiàn)
看到這里,又引出新的問(wèn)題 其中 YES,NSDictionary 又是什么東西呢?
我們進(jìn)入下一篇"數(shù)據(jù)類型篇"