Cocoa/Cocoa Touch
生活随笔
收集整理的這篇文章主要介紹了
Cocoa/Cocoa Touch
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
前言
Cocoa包含Foundation和AppKit(Application Kit)框架,用于開發Mac OS X系統的應用程序.
Cocoa Touch則是他的一個子類,包含Foundation和UIKit(UserInterface Kit)框架,他所支持的Foundation框架與Cocoa相同,但他的用戶圖形類庫為UIKit,為iOS系統設計,提供了iOS的界面,用于開發iPhone OS系統的應用程序.細心的朋友在這里也不難看出:
Foundation:
??Foundation框架實現了NSObjec類(即根類),這個類定義基本對象行為.此外,該框架還實現了用于表示基本類型(例如,字符串和數字)和群體類型(例如,數組和字典)的類,同時也提供一些基本工具,例如用于國際化、對象持久化、文件管理以及XML處理的工具.你還可以使用Foundation框架中的類訪問底層系統的實體和服務,例如可以用它來訪問端口、線程、鎖和進程.Foundation框架以Core Foundation框架為基礎,Core Foundation框架提供的是過程化(ANSI C)接口.
??Foundation框架為所有應用程序提供基本的系統服務.應用程序以及UIKit和其他框架,都是建立在Foundation框架的基礎結構之上.Foundation框架提供許多基本的對象類和數據類型,使其成為應用程序開發的基礎.它還制定了一些約定(如用于取消分配等任務),使代碼更加一致,可復用性更好.
AppKit/UIKit:
??所有iOS應用程序都是基于UIKit,UIKit基于Foundation 架,沒有這個框架,就無法交付應用程序.UIKit提供應用程序的基礎架構,用于在屏幕上繪圖、處理事件,以及創建通用用戶界面及其中元素.UIKit還通過管理屏幕上顯示的內容,來組織應用程序.
??AppKit和UIKit框架開發應用程序的用戶接口.二者用途相同,但是針對平臺不同.框架中的類很多,各有不同用途:有的用于事件處理、有的用于畫圖、有的用于圖像處理、有的用于文本處理、有的用于用戶排版、還有用于應用程序間數據傳輸.框架中還包含表視圖、滑動條、按鍵、文本字段以及警告對話框等用戶接口元素.
Cocoa與Cocoa Touch都包含Objective-C運行時和Foundation核心框架
Cocoa Touch構建基礎
大部分 Cocoa Touch 的功能是用 Objective-C 實現的.Objective-C 是一種面向對象的語言,它編譯運行的速度令人難以置信.更值得一提的是采用了真正的動態運行時系統,從而增添了難能可貴的靈活性.由于 Objective-C 是 C 的超集,因此您可以輕松地將 C 甚至是 C++ 融入 Cocoa Touch 應用程序中.
當應用程序運行時,Objective-C 運行時會根據執行邏輯(而不僅是編譯期間定義的方式)實例化對象.例如,運行中的 Objective-C 應用程序可以載入界面(Interface Builder 創建的 nib 文件),將界面中的 Cocoa 對象連接到應用程序代碼,然后在按下 UI 按鈕后運行正確的方法.無需進行重新編譯.
Cocoa Touch框架
除 UIKit 之外,Cocoa Touch 包含創建世界一流 iOS 應用程序所需的所有框架,從 3D 圖形、專業音頻到網絡,甚至提供特殊設備訪問 API 以控制攝像機或從 GPS 硬件獲取位置.Cocoa Touch 既包含只需要幾行代碼就可以完成全部任務的強大的 Objective-C 框架,也在需要時提供基礎的 C 語言 API 來直接訪問系統.這些框架示例包括:
??Core Animation:通過 Core Animation,您就可以通過基于組合獨立圖層的簡單編程模型來創建豐富的用戶體驗.
??Core Audio:播放、處理和錄制音頻的專業級技術,能夠輕松為您的應用程序添加強大的音頻功能.
??Core Data: 提供面向對象的數據管理解決方案,該方案易于使用和理解,甚至可處理任何應用或大或小的數據模型.
語言
Objective-C是開發Cocoa和Cocoa Touch應用程序的本地語言,也是最重要的語言.但是Cocoa和Cocoa Touch應用程序也可以包含C++和ANSI C代碼.另外,你也可以使用橋接Objective-C運行時的腳本語言—例如PyObjC和RubyCocoa—開發Cocoa應用程序.
iphone 技術層
??Cocoa Touch 層由多個框架組成,他們為應用程序提供了核心功能.
??UIKit 負責啟動和結束應用程序,控制界面和多觸點事件
??Map Kit 提供地圖的相關服務,定位或者區域檢測等
??Game Kit 創建和使用網絡機制
??Message UI/Address Book UI 提供操作電子郵件和聯系人的信息
??iAd 可以通過該框架在應用程序中發布橫幅廣告。在合適的時機向用戶展現。
??Event Kit UI 提供一個視圖控制鍵可以展現查看并編輯事件的標準系統界面
總結
以上是生活随笔為你收集整理的Cocoa/Cocoa Touch的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Uptime Kuma一款开源监控工具
- 下一篇: 判断用户首次登录的两种方式