自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

詳解Mac Os Cocoa框架概述

移動開發(fā) iOS
本文介紹的是詳解Mac Os Cocoa框架概述,主要是愛對cocoa框架進一步的去了解,先來看內(nèi)容詳解。

詳解Mac Os Cocoa框架概述是本文要接的內(nèi)容,很詳細(xì)的介紹了cocoa框架,不多說了,先來了解內(nèi)容。本文主要講一下從linux命令行程序員轉(zhuǎn)變過來的程序員要如何入門。

1. 以前在linux命令行下寫代碼的時候,只需要知道幾個系統(tǒng)調(diào)用,libc的庫函數(shù),就可以自己隨心所欲的寫代碼來完成需要的功能。但在cocoa下就不行,他們是自包含,能夠完整運行的代碼,咱們一行代碼都不加,他們也能正常運行。也就說在cocoa下,程序的主框架是定死了的,不能由程序員修改,程序員需要做的,就是在cocoa指定的地方加上“hook”,只有在這些hook上加上我們自己的代碼,這樣cocoa框架才能調(diào)用我們自己的代碼,來實現(xiàn)各種各樣的功能。cocoa編程實際是一個在為cocoa框架添磚加瓦的過程。

2.在圖形界面下編程,引入了新的概念,叫design pattern,名字很抽象,但具體點來說,就是為了解決某種問題,而創(chuàng)造的一種編程方式。比如cocoa下很重要的有MVC,delegate, target-action等模式,這些模式都是為了解決某類編程問題,比如MVC這種設(shè)計模式,是為了解決圖形化編程的時候,讓class的設(shè)計更清晰,delegate是為了方便擴充一種控制類(controller class)的一種設(shè)計模式。

這樣說可能難以理解,如果熟悉了cocoa的教程再回過頭來看,就會發(fā)現(xiàn)理解各種design pattern是理解cocoa的關(guān)鍵,因為這些design patter解釋了在哪里添加自己的代碼以及為什么要再那里添加代碼。

3。在cocoa框架下,程序的驅(qū)動是各種消息,也就是程序的***目的就是為了響應(yīng)處理系統(tǒng)或用戶對界面的操作產(chǎn)生的消息。消息傳遞的路徑可以參考apple的cocoa fundamentals guide。那各種class是怎么相應(yīng)這些消息的呢(也就是我們的hook怎么加到這個框架中呢)?主要有以下幾種方式

通過sub class的方式擴展view控件,重載或添加新的消息響應(yīng)函數(shù)

通過delegate擴充view控件,因為view獲得消息以后,都會把消息還遞給自己的delegate notification centers等

4.開發(fā)mac/ios程序一般使用xcode+interface builder來做的,這兩個程序是什么關(guān)系呢?簡單的說,xcode是源代碼編輯環(huán)境,而interface builder是運行時的編輯器。為什么這么說呢,回憶一下咱們編程都時在干什么?定義對象模版(聲明class)+生成對象+處理對象之間的關(guān)系。

這些動作在xcode環(huán)境中都是可以通過敲代碼的方式完成的,那么為什么還需要用interface builder呢?interface builder實際上時用來完成后兩項任務(wù)的,也就是生成對象+處理對象之間的關(guān)系。interface build處理這兩項任務(wù)有天然的優(yōu)勢,就是可以用圖形化拖拽的方式來完成。所以用它來創(chuàng)建程序的界面涉及到的對象直觀又方便。

cocoa框架方面的入門知識就是這些,掌握呢這些東西以后,其他的就需要去學(xué)習(xí)cocoa提供的class,并思考怎么組合這些class來完成自己的工作,就是一個搭積木的過程。

小結(jié):詳解Mac Os Cocoa框架概述的內(nèi)容介紹完了,希望本文對你有所幫助!

責(zé)任編輯:zhaolei 來源: 互聯(lián)網(wǎng)
相關(guān)推薦

2011-08-02 13:58:18

Cocoa 框架 Mac OS

2011-07-07 13:51:24

Cocoa 框架

2011-06-17 16:23:49

Cocoa蘋果

2011-07-08 18:03:30

Cocoa Touch 網(wǎng)絡(luò)

2011-08-10 18:47:18

Cocoa字符串

2011-07-20 14:41:53

Cocoa Zip 框架

2011-06-15 16:11:51

UIKitCocoa TouchiOS

2011-08-15 14:27:51

CocoaRunLoop

2011-08-15 14:47:28

Cocoa嵌入資源文件

2011-07-26 15:29:36

Cocoa 模式

2011-08-08 09:51:52

Cocoa 框架

2011-05-11 15:19:01

CocoaObjective-C

2011-07-25 14:32:40

Cocoa 框架 函數(shù)

2011-08-15 15:56:29

Cocoa編程模塊

2011-05-31 15:41:00

Cocoa TouchCocoaiOS

2011-08-10 16:27:07

Cocoa TouchPlist

2013-01-14 13:21:09

Firefox os

2012-02-23 13:13:00

JavaPlay Framew

2011-08-05 14:25:11

iPhone 架構(gòu) 音頻

2010-01-11 09:58:33

谷歌蘋果Chrome OS
點贊
收藏

51CTO技術(shù)棧公眾號