天天看點

ios軟體開發-第一課-入門篇

                                                                                  Objective-C

一、蘋果公司的發展史

        1976年蘋果公司由喬布斯,沃茲尼雅克和韋恩三人聯合創立;在當年釋出了apple 1,也就是一塊可擴充的電路闆;1977年釋出了apple II,他配置了機箱,鍵盤,電源以及彩色圖像處理能力; 1979年開始研發apple III(1980)。liSA(1983)以及  macintosh(1984)是桌面系統的鼻祖。

二、Objective-C與C的淵源

      Objective-C誕生于 20 世紀 80 年代,由Brad Cox 發明,意在将流行的、可移植的 C 語言與優雅的 Smalltalk 語言結合在一起。Objective-C 是 C 語言的一個擴充集,它以 C 語言為基礎,在語言中添加了一些微妙但意義重大的特性。

      蘋果公司的iphone平台采用Objective-C做為native language的開發,Objective-C的核心是C語言的,并基于C語言實作OOP的一些特性。Objective-C是對C語言的擴充,這和C++的前身Better-c有很大的相似之處,Objective-C的新版本裡實作了和Java類似的垃圾回收機制,但基于iphone平台的資源限制,iphone平台并不支援垃圾回收機制。

      oc的頭檔案格式為“.h”,實作檔案格式為“.m”,如果需要使用C++的文法和内容,那麼實作檔案格式為“.mm”。

三、初識Objective-C

      1、Cocoa的組成

      蘋果公司将Cocoa、Carbon、QuickTime和OpenGL等技術作為架構集提供Cocoa組成部分有:(1)Foundation架構(有很多有用的,面向資料的低級類和資料結    構);(2)Application Kit(也稱AppKit)架構(包含了所有的使用者接口對象和進階類,例如NS……),還有一個支援架構的套件,包括Core Animation和Core Image。

     2、NSLog相當于printf()

    比如:NSLog(@"hello Objective-C");

    注:@是Objective-C在标準C語言基礎上添加的特征之一,雙引号的字元串前面有一個@,這表示引用的字元串應該作為Cocoa的NSString元素處理

    NSLog(@"are %d and %d different? %@",5,5,boolString(areTheyDifferent));

    注意%@:使用NSLog輸出任何對象值時,都會使用這個格式說明

    3、BOOL使用8位存儲,YES定義為1,NO定義為0,大于1不為YES,跟标準C不同。

    若不小心将一個長于1位元組的整型值賦給BOOL,則隻截取低八位 ;

    Obejective-C中1不等于1,絕對不要将BOOL值和YES比較 。