【Effective Objective-C 2.0 讀書筆記】第一條:了解Objective-C的起源

第一條:了解Objective-C的起源

Objective-C使用“消息結(jié)構”(messaging structure)而非“函數(shù)調(diào)用”(function calling)機制枷颊。

消息機制與函數(shù)調(diào)用的區(qū)別在于:

1.使用消息結(jié)構的語言,其運行時所應執(zhí)行的代碼由運行時環(huán)境決定;

2.使用函數(shù)調(diào)用的語言顶吮,其運行時所應執(zhí)行的代碼由編譯器決定散吵;

3.如果函數(shù)是多態(tài)的,那么在運行時就要按照“虛方法表”來查找到底應該執(zhí)行哪個函數(shù)實現(xiàn)

4.而采用消息結(jié)構的語言梗夸,不論是否多態(tài)羞迷,總是在運行時才會去查找所要執(zhí)行的方法。

5.采用消息結(jié)構的語言盐须,編譯器也不關系接受消息的對象的類型玩荠,在運行時才會去處理,其過程叫做“動態(tài)綁定”贼邓,在運行時才會檢查對象類型

Objective-C的重要工作都由“運行期組件”(runtime component)而非編譯器來完成阶冈。

運行期組件:本質(zhì)上就是一種與開發(fā)者所編代碼相鏈接的“動態(tài)庫”,能把開發(fā)者所編寫的所有程序粘合起來塑径。

所有的Objective-C對象所占的內(nèi)存空間總是分配在“堆空間”(heap space)中女坑,而絕不會分配在“棧”(stack)上统舀。

如果有一個新的變量匆骗,指向同一對象地址,那么并不拷貝對象誉简,只是這兩個變量都指向此對象碉就。

分配在堆中的內(nèi)存必須由程序員直接管理束世,而分配在棧上的內(nèi)存會在“棧幀”(stack frame)彈出時自動清理凸克。

【要點】

Objective-C 為C語言添加了面向?qū)ο筇匦园吡唬瞧涑唷bjective-C使用動態(tài)綁定的消息結(jié)構喇勋,也就是說涤姊,在運行時才會檢查對象類型籽懦。接收一條消息后财骨,究竟應執(zhí)行何種代碼肋拔,由運行時環(huán)境而非編譯器來決定锈津。

理解C語言的核心概念有助于寫好Objective-C程序。尤其要掌握內(nèi)存模型與指針凉蜂。

最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末一姿,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子跃惫,更是在濱河造成了極大的恐慌叮叹,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,681評論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件爆存,死亡現(xiàn)場離奇詭異蛉顽,居然都是意外死亡,警方通過查閱死者的電腦和手機先较,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,205評論 3 399
  • 文/潘曉璐 我一進店門携冤,熙熙樓的掌柜王于貴愁眉苦臉地迎上來悼粮,“玉大人,你說我怎么就攤上這事曾棕】勖ǎ” “怎么了?”我有些...
    開封第一講書人閱讀 169,421評論 0 362
  • 文/不壞的土叔 我叫張陵翘地,是天一觀的道長申尤。 經(jīng)常有香客問我,道長衙耕,這世上最難降的妖魔是什么昧穿? 我笑而不...
    開封第一講書人閱讀 60,114評論 1 300
  • 正文 為了忘掉前任,我火速辦了婚禮橙喘,結(jié)果婚禮上时鸵,老公的妹妹穿的比我還像新娘。我一直安慰自己厅瞎,他們只是感情好饰潜,可當我...
    茶點故事閱讀 69,116評論 6 398
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著和簸,像睡著了一般彭雾。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上比搭,一...
    開封第一講書人閱讀 52,713評論 1 312
  • 那天,我揣著相機與錄音南誊,去河邊找鬼身诺。 笑死,一個胖子當著我的面吹牛抄囚,可吹牛的內(nèi)容都是我干的霉赡。 我是一名探鬼主播,決...
    沈念sama閱讀 41,170評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼幔托,長吁一口氣:“原來是場噩夢啊……” “哼穴亏!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起重挑,我...
    開封第一講書人閱讀 40,116評論 0 277
  • 序言:老撾萬榮一對情侶失蹤嗓化,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后谬哀,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體刺覆,經(jīng)...
    沈念sama閱讀 46,651評論 1 320
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,714評論 3 342
  • 正文 我和宋清朗相戀三年史煎,在試婚紗的時候發(fā)現(xiàn)自己被綠了谦屑。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片驳糯。...
    茶點故事閱讀 40,865評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖氢橙,靈堂內(nèi)的尸體忽然破棺而出酝枢,到底是詐尸還是另有隱情,我是刑警寧澤悍手,帶...
    沈念sama閱讀 36,527評論 5 351
  • 正文 年R本政府宣布帘睦,位于F島的核電站,受9級特大地震影響谓苟,放射性物質(zhì)發(fā)生泄漏官脓。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 42,211評論 3 336
  • 文/蒙蒙 一涝焙、第九天 我趴在偏房一處隱蔽的房頂上張望卑笨。 院中可真熱鬧,春花似錦仑撞、人聲如沸赤兴。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,699評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽桶良。三九已至,卻和暖如春沮翔,著一層夾襖步出監(jiān)牢的瞬間陨帆,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,814評論 1 274
  • 我被黑心中介騙來泰國打工采蚀, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留疲牵,地道東北人。 一個月前我還...
    沈念sama閱讀 49,299評論 3 379
  • 正文 我出身青樓榆鼠,卻偏偏與公主長得像纲爸,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子妆够,可洞房花燭夜當晚...
    茶點故事閱讀 45,870評論 2 361

推薦閱讀更多精彩內(nèi)容