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

詳解Mac OS Cocoa基礎(chǔ)框架

移動(dòng)開發(fā) iOS
Cocoa基礎(chǔ)框架是本文要介紹的主要內(nèi)容,Cocoa/cocoa touch框架是Mac/IOS上目前最流行的框架。優(yōu)點(diǎn)我們來看詳細(xì)內(nèi)容。

Cocoa基礎(chǔ)框架是本文要介紹的主要內(nèi)容,Cocoa/cocoa touch框架Mac/IOS上目前***的框架。優(yōu)點(diǎn)我就不多說了,主要講一下從Linux命令行程序員轉(zhuǎn)變過來的程序員要如何入門。

1、以前在linux命令行下寫代碼的時(shí)候,只需要知道幾個(gè)系統(tǒng)調(diào)用,libc的庫(kù)函數(shù),就可以自己隨心所欲的寫代碼來完成需要的功能。但在cocoa下就不行,他們是自包含,能夠完整運(yùn)行的代碼,咱們一行代碼都不加,他們也能正常運(yùn)行。

也就說在cocoa下,程序的主框架是定死了的,不能由程序員修改,程序員需要做的,就是在cocoa指定的地方加上“hook”,只有在這些hook上加上我們自己的代碼,這樣cocoa框架才能調(diào)用我們自己的代碼,來實(shí)現(xiàn)各種各樣的功能。cocoa編程實(shí)際是一個(gè)在為cocoa框架添磚加瓦的過程。

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

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

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

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

通過delegate擴(kuò)充view控件,因?yàn)関iew獲得消息以后,都會(huì)把消息還遞給自己的delegate notification centers等

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

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

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

小結(jié):詳解Mac OS Cocoa基礎(chǔ)框架的內(nèi)容介紹完了,希望本文對(duì)你有所幫助!

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

2011-07-28 16:52:34

Cocoa 框架 Mac Os

2011-05-31 15:41:00

Cocoa TouchCocoaiOS

2011-07-07 13:51:24

Cocoa 框架

2011-06-17 16:23:49

Cocoa蘋果

2011-08-10 18:47:18

Cocoa字符串

2011-07-08 18:03:30

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

2011-08-15 14:47:28

Cocoa嵌入資源文件

2011-07-26 15:29:36

Cocoa 模式

2011-07-20 14:41:53

Cocoa Zip 框架

2011-06-15 16:11:51

UIKitCocoa TouchiOS

2011-07-07 10:07:19

Cocoa 框架

2011-07-22 15:50:06

Cocoa MVC 視圖

2011-08-15 14:27:51

CocoaRunLoop

2011-07-25 14:32:40

Cocoa 框架 函數(shù)

2011-08-15 15:56:29

Cocoa編程模塊

2011-08-08 09:51:52

Cocoa 框架

2011-05-11 15:19:01

CocoaObjective-C

2011-07-26 10:42:00

Cocoa Cocoa2d 游戲

2011-08-10 16:27:07

Cocoa TouchPlist

2011-08-11 15:46:55

CocoaCocoa Touch框架
點(diǎn)贊
收藏

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