Objective-C 程式設計學習筆記 Ch01
- Objective-C 程式設計學習筆記 Ch01-基本介紹
- Ch01 將介紹簡單的歷史跟 Objective-C
- 你要跳坑了嗎?
(1) 歷史與簡介
Objective-C 一種高階,物件導向的程式語言,他承襲了 C 語言以及 Smalltalk 的特性。早期是來自於 NeXTSTEP 的作業系統,主要的實作環境是 GCC 以及 LLVM (前端實作為 Clang),目前比較新版的 Objective-C 都是以 Clang 實作。
- 1980 年,Bred J. Cox 與 Tom Love 發明 Objective-C。
- 1988 年,賈伯斯成立 Next Computer 公司,買下 Objective-C 的授權,並且發開 Appkit 以及 Foundation Kit...函式庫。
- 1994 年,NeXT 電腦 與 Sun Microsystem 發行了 NEXTSTEP 系統的規格,稱作為 OPENSTEP。而自由軟體基金會的 GUN 增加對 Objective-C 的支援,在自由軟體基金會的 ONESTEP 稱為 GUNstep。
(2) 關於 XCode v.s Objective-C v.s Cocoa
常常被人所搞混的部分就是 XCode 以及 Obejective-C,在這裡做這個簡單的介紹。
Xcode 是一個開發環境
,也具有編譯的功能,他的地位可以想像成類似 Visual Studio。Objective-C 是一種程式語言
,就好比 JavaScript, Java 等等也是程式語言。Cocoa 其實就是一堆函式庫的集合
,你可以直接使用這些現成的函式庫。
(3) C 語言與 Objective-C
- 為什麼叫 Objective-C ,因為承襲 C 語言的特性再加上物件導向的特性。
- Objective-C 承襲了 C 語言的特性 (Objective-C 是 C 語言的嚴格母集合),也就是說任何可以編譯過的 C 語言都可以直接用在 Objectve-C。
- 可以在 Objective-C 使用 C 語言。
- Objective-C 是 ANSI-C 的超集,可以混編 C 以及 C++ 語言。
- 而 Objective-C 的物件導向的語法承襲了 Smalltalk 訊息傳遞 (Message Passing) 風格,在一般的程式語言,都是物件呼叫方法 (ex:
obj->method(arg)
),而 Objective-C 裡,應該說是傳遞訊息給收訊息的對象 ([obj method: arg]
),並且在 Objective-C 物件呼叫方法的語法與其他 C 不太一樣,將會在往後的章節提到。 - Objective-C 除了物件宣告的方式與 C 語言不太一樣之外,其他像是型別的宣告 (int, float...),預處理器(preprocessing),流程控制,函式宣告與呼叫都與 C 類似。
下一章節,將會介紹開發 Objective-C 會用到的開發工具 Xcode。
- 有個很現實的問題是,你必須具備 Mac。
- 請先裝好 XCode (抱歉,下篇並不介紹安裝步驟),Xcode 連結網址。
- 我們會直接用 Xcode 講一個簡單的程式,並且告訴您從哪裡點按編譯的功能。
0 意見:
張貼留言