2010-08-24 50 views
1

我花了很多時間進入iOS開發。我花了很多時間熟悉objective-c和xcode。我花了很多時間去理解Cocoa的基本原理。你能幫我理解可可是什麼嗎?

我的整個生活都沒有像一些人那樣長大,理解編碼概念,當人們告訴我Cocoa是一個框架時,這對我來說並不意味着什麼。

有人可以承諾解釋簡單英語什麼可可是?什麼是框架?我作爲一個有抱負的開發人員應該如何使用它?它對我意味着什麼?我花了很多時間試圖從無意義的定義中理解它,我想嘗試一下,看看是否有東西可以點擊。

感謝您的時間

回答

0

想象一個像庫這樣的框架。所以讓我們來談談書籍。圖書館裏滿是書籍!在這種情況下,我們的書是我們的課程。現在書中有講述故事的頁面,而類也是這樣,它們被稱爲方法和屬性。

因此,根據上述內容,我們可以知道庫包含幫助我們處理事情的類。框架真的只是一個打包的庫。

當你寫的東西,如:

NSObject* foo = [[NSObject alloc] init]; 

後來電話:

[foo release]; 

你正在做的是用可可具體而言,內存管理的部分。 +alloc是創建對象的類方法,而-init是實例方法(+指類方法,-指實例方法 - 它們是如何在Objective-C代碼中定義的)。同樣,-release用於釋放您之前創建的對象的所有權。

這三種方法是Cocoa的一部分。在NSObject書。

我希望這很簡單,你可以理解。

+0

嘿謝謝你的回答!它幫助了很多。那麼篩選圖書館書籍的最佳方法是什麼?他們在可可的噸和噸噸吧?這只是尋找你需要的東西嗎? – Jeremy 2010-08-24 03:41:57

+0

有很多教程,蘋果示例代碼,並在Xcode中內置文檔瀏覽器。我推薦Stephen Kochan編寫的「Objective-C編程」一書(第二版,它涵蓋了Objective-C 2.0)。 – jer 2010-08-24 04:01:37

+1

Jeremy有一點需要注意,在編程iOS時,您使用的是Cocoa Touch框架,而不是Cocoa。Cocoa是Mac開發框架(由子框架Foundation,AppKit和Core Data組成),而Cocoa Touch是iOS開發框架(由子框架Foundation,UIKit和Core Data組成)。即使在兩個共同的子框架中,Cocoa Foundation/Core Data和Cocoa Touch Foundation/Core Data之間也存在差異。這些在文檔中被調用(通常只有一個可用而不是另一個)。 – 2010-08-24 04:57:35

0

除了包含庫例程,框架通常會強制您的應用程序進入某種範例,例如要求您的應用程序以某種方式構建,和/或在您的應用程序中需要大量定義的子例程/方法該框架可以調用。事實上,像Cocoa Touch這樣的框架通常可以調用您的應用程序,而不是您的應用程序可能調用框架中的任何庫代碼。

學習框架的一個好方法是閱讀很多示例應用程序的源代碼,並嘗試從框架膠中分離出應用程序邏輯。

相關問題