電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>C語言|源代碼>Objective-C與Runtime的詳細(xì)資料介紹讓你不在問為什么

Objective-C與Runtime的詳細(xì)資料介紹讓你不在問為什么

2018-09-19 | rar | 0.24 MB | 次下載 | 免費(fèi)

資料介紹

  筆者非常高興能為Objective-C寫寫自己的理解和總結(jié),不僅僅因?yàn)槭枪P者是Objective-C多年的重度開發(fā)者,更是因?yàn)檫@是一門有獨(dú)特想法的,有創(chuàng)造性的,有優(yōu)美語法的,有歷史地位的編程語言。如果說對本文有什么預(yù)期的話,筆者希望能把一些類似“為什么是這樣”的問題說清楚。

  Objective-C發(fā)明于上世紀(jì)80年代,Objective-C的作者——Brad Cox和Tom Love,在接觸到SmallTalk語言之后,一方面受到SmallTalk的啟發(fā),另一方面也是看好C語言有著巨大影響力和廣闊前景,因此選擇在C語言的基礎(chǔ)上引入SmallTalk語言面向?qū)ο蠛拖⑴砂l(fā)的概念。最初的版本以C語言的擴(kuò)展的形式實(shí)現(xiàn)的,在C編譯器中編寫支持Objective-C的預(yù)處理模塊,預(yù)處理會先將Objective-C語法代碼轉(zhuǎn)化為C代碼,再繼續(xù)C代碼的編譯過程。1988年,以企業(yè)為目標(biāo)客戶的NeXT公司購買Objective-C的使用授權(quán),接著擴(kuò)展著名開源編譯器GCC,使其支持Objective-C,并且開發(fā)了AppKit和FoundationKit等基礎(chǔ)庫,Objective-C成為了NeXTSTEP系統(tǒng)(工作站)上“標(biāo)準(zhǔn)”的應(yīng)用程序開發(fā)語言。1996年,Apple公司收購了NeXT公司,NeXTSTEP/OPENSTEP系統(tǒng)成為Apple新一代操作系統(tǒng)OSX的研發(fā)基礎(chǔ)。 2005年,Apple引入了Chris Lattner以及他的LLVM技術(shù)團(tuán)隊(duì),Objective-C新特性和編譯優(yōu)化第一次得到高水平編譯器最高優(yōu)先級的支持,先從后端的代碼優(yōu)化和生成開始,逐步擴(kuò)展到前端的語法解析(Clang)。如今(2015),Objective-C已經(jīng)擁有GCC之外更為適合更為優(yōu)異的編譯器套裝選擇——LLVM編譯器,LLVM包括完整的前后端模塊,最新版本6.1(2015)。

  Objective-C是面向?qū)ο蟮?,這是Objective-C最基本的的概念。關(guān)于面向?qū)ο?,把一定?a href='http://ttokpm.com/v/tag/2562/' target='_blank' class='arckwlink_none'>算法(函數(shù))和數(shù)據(jù)(變量)因某種內(nèi)在的聯(lián)系綁定在一起,形成最基本的程序結(jié)構(gòu)單元,這些結(jié)構(gòu)單元即是經(jīng)常談及的對象,加上抽象二字,我們稱呼它為抽象對象,術(shù)語簡稱類;通過對變量的賦值(筆者認(rèn)為不僅是變量,邏輯運(yùn)算如閉包也是可以用于賦值)則會構(gòu)成實(shí)體對象,術(shù)語簡稱對象(Objective-C一般也稱作實(shí)例)。對象和對象之間不是完全獨(dú)立的,通過巧妙的方式,它們之間能建立緊密的聯(lián)系,比如繼承、派生,對事物的抽象以及對代碼的復(fù)用有著微妙而重大的價值。Brad Cox和Tom Lov出版的第一本正式Objective-C著作,書名即為《Object-Oriented Programming, An Evolutionary Approach》。那么,為什么要對象,為什么要面向?qū)ο??這是個好問題,觀察人類普遍的思維,我們理解這個世界使用最多的概念就是物體,我們擅長把感知到的一切抽象為一個個的物體,通過了解物體的構(gòu)成,以及物體之間的作用關(guān)系,實(shí)現(xiàn)對這個世界的認(rèn)知和作用的目的。這一直是非常奏效的!面向?qū)ο缶褪前讶祟惖乃季S的天賦和積累的思想財富應(yīng)用于編程,這樣,程序?qū)τ谠鰪?qiáng)生產(chǎn)能力/提高生活品質(zhì)的效率和能力方面會大大提高。

下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1電子電路原理第七版PDF電子教材免費(fèi)下載
  2. 0.00 MB  |  1490次下載  |  免費(fèi)
  3. 2單片機(jī)典型實(shí)例介紹
  4. 18.19 MB  |  92次下載  |  1 積分
  5. 3S7-200PLC編程實(shí)例詳細(xì)資料
  6. 1.17 MB  |  27次下載  |  1 積分
  7. 4筆記本電腦主板的元件識別和講解說明
  8. 4.28 MB  |  18次下載  |  4 積分
  9. 5開關(guān)電源原理及各功能電路詳解
  10. 0.38 MB  |  10次下載  |  免費(fèi)
  11. 6基于AT89C2051/4051單片機(jī)編程器的實(shí)驗(yàn)
  12. 0.11 MB  |  4次下載  |  免費(fèi)
  13. 7藍(lán)牙設(shè)備在嵌入式領(lǐng)域的廣泛應(yīng)用
  14. 0.63 MB  |  3次下載  |  免費(fèi)
  15. 89天練會電子電路識圖
  16. 5.91 MB  |  3次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234313次下載  |  免費(fèi)
  3. 2PADS 9.0 2009最新版 -下載
  4. 0.00 MB  |  66304次下載  |  免費(fèi)
  5. 3protel99下載protel99軟件下載(中文版)
  6. 0.00 MB  |  51209次下載  |  免費(fèi)
  7. 4LabView 8.0 專業(yè)版下載 (3CD完整版)
  8. 0.00 MB  |  51043次下載  |  免費(fèi)
  9. 5555集成電路應(yīng)用800例(新編版)
  10. 0.00 MB  |  33562次下載  |  免費(fèi)
  11. 6接口電路圖大全
  12. 未知  |  30320次下載  |  免費(fèi)
  13. 7Multisim 10下載Multisim 10 中文版
  14. 0.00 MB  |  28588次下載  |  免費(fèi)
  15. 8開關(guān)電源設(shè)計實(shí)例指南
  16. 未知  |  21539次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935053次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537791次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420026次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234313次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233045次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191183次下載  |  免費(fèi)
  13. 7十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
  14. 158M  |  183277次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138039次下載  |  免費(fèi)