歡迎 Objective-C 新手們隨我一起踏上這次Objective-C之旅!本章首先簡要介紹了這門語言,然后就介紹了蘋果公司的 Objective-C 開發平臺,隨后再介紹了蘋果公司提供的集成開發環境(IDE)Xcode,最后我們就開始編寫代碼。
<h3 id="briefintroduction">簡介</h3>
C程序設計語言是由AT&T貝爾實驗室的Dennis Ritchie于20世紀70年代早期首創的。但是,直到20世紀70年代晚期,這種程序設計語言才獲得了廣泛的支持并流行起來。
Brad.J.Cox在20世紀80年代早期設計了Objective-C語言,它以一種叫作SmallTalk-80的語言為基礎。Objective-C在C語言的基礎上加了一層,這意味著對C進行擴展,從而創造出一門新的程序設計語言,支持對象的創建和操作。
1988年,NeXT計算機公司獲得了Objective-C語言授權,并發展了Objective-C的語言庫和一個開發環境,即NEXTSTEP。1994年,NeXT計算機公司和Sun公司聯合發布了一個針對NEXTSTEP系統的標準規范,名為OPENSTEP。Next計算機公司在1994年更名為NeXT軟件公司。
1996年12月30日,蘋果公司宣布收購NeXT軟件公司,NEXTSTEP/OPENSTEP環境將成為蘋果操作系統下一個主要發行版本OS X的基礎。這個開發環境的版本被蘋果公司稱為Cocoa。它內置了對Objective-C語言的支持,并結合了Project Builder(或它的后繼版本Xcode)和 Interface Builder等開發工具,蘋果公司為Mac OS X上的應用程序開發創建了一個功能強大的開發環境。
2007年,蘋果公司發布了Objective-C語言的升級版,并稱為Objective-C 2.0。該版本新增了許多特性,其中包括自動聲明和補全屬性、點語法、快速枚舉、異常處理、運行時性能提升和支持64位機。
Objective-C語言一直在不斷發展,產通過新增的特性獲得更強大的編程和表達能力。該語言最近的一些較大改進包括:Objective-C 對象的自動引用計數特性、改進的數據隱藏特性、改進的枚舉類型安全性,以及塊、常量和其它特性的新語言結構。
<h3 id="appleocplatform">蘋果公司的 Objective-C 平臺</h3>
蘋果公司的Objective-C開發環境由以下四部分組成:
-
Objective-C編程語言
Objective-C語言支持面向對象的程序設計。
-
Objective-C運行時環境
Objective-C程序在Objective-C運行時環境中執行,因此可動態編程。Objective-C擁有相當多的動態特性,這些特性在運行程序時發揮作用,而不是在編譯或鏈接代碼時發揮作用。Objective-C運行時系統實現了這一特性,而這些功能為Objective-C語言提供了非常多的強大功能和靈活性。開發人員使用它們能夠以實時方式促進程序的開發和更新,而無需重新編譯和重新部署軟件,而且隨著時間的推移,也可以將對現有軟件影響降至最低或對現在軟件完全沒有影響。
-
軟件庫
軟件庫中含有一系列功能的框架、庫和服務,使用它們可以簡化應用開發工作。框架是由許多類、方法、函數和文檔按照一定的邏輯組織起來的集合。術語Cocoa總的來說指的是Foundation框架、Application Kit框架和名為Core Data的第三方框架。術語Cocoa Touch是指Foundation框架、UIKit框架和名為Core Data的第三方框架。
Foundation框架,在Mac OS中,它是基于Core Foundation的。作為通用的面向對象的函數庫,Foundation提供了字符串,數值的管理,容器及其枚舉,分布式計算,事件循環,以及一些其它的與圖形用戶界面沒有直接關系的功能。其中用于類的常數的“NS”前綴來自于Cocoa的來源,NEXTSTEP。它可以在Mac OS X 和iOS中使用。
應用程序工具包,或稱AppKit(Application Kit),是直接衍生自NEXTSTEP的AppKit的。它包含了程序圖形用戶界面交互所需的代碼。它是基于Foundation建立的,也使用前綴“NS”,它只能在Mac OS X 中使用。
用戶界面工具包,或稱UIKit(User Interface Kit),是用于iOS的圖形用戶界面工具包。與AppKit不同,它使用“UI”的前綴。
-
軟件開發工具
Xcode是用于在Mac上進行Objective-C開發的完整IDE,它不僅徹底整合了iOS和OS X,而且還含有編寫和編譯源代碼、開發精妙的用戶界面、測試和調試軟件、發布和管理版本、管理項目以及實現許多其它特性所需的所有工具。你可以從Mac App Store免費下載Xcode。本人使用Xcode 7.1.1,它是當前最新版本。
<h3 id="firstprogram">開發第一個簡單的 Objective-C 程序</h3>
(1)、新建一個工程:Create a new Xcode project
(2)、選擇OS X -> Application -> Command Line Tool 類型
(3)、設置工程名稱為 HelloWorld,語言選擇 Objective-C
(4)、下一步,將文件保存到電腦上,然后會自動生成以下文件
(5)、編寫程序顯示當前日期,編譯并運行,快捷鍵 Command + R,控制臺輸出 Hello World ! 字條串和當前日期
<h3 id="introductionsummary">小結</h3>
本節簡要介紹了Objective-C,并演示了如何用它編寫Objective-C程序。Objective-C語言融合了蘋果公司提供的工具和軟件,是一個非常不錯的軟件開發平臺。