2008-08-19 84 views
25

我想開始嘗試使用Cocoa併爲Mac OSX編程。在這一點上,我並不十分關心Objective C的語法/構造/ bheaviors,但是對編輯器和/或IDE方面的高效設置會更加好奇,這會讓我快速進入。在解決方案/項目概念方面,是否有任何IDE甚至與Visual Studio遠程類似(因爲這是我在過去7年中花費了大部分時間的地方)?任何其他工具,技巧,建議和/或資源可以快速起步和嘗試?開始於可可/ Mac編程的開發人員設置

我想避免很多介紹性內容,並進入諸如「如果您想創建Mac桌面應用程序,您可以使用 Acme IDE並設置您的項目。」


我害怕Xcode會成爲答案! :P我嘗試過玩這個遊戲 - 簡直就是把它從DVD中拿出來,只是潛入不知道會發生什麼(在我甚至知道你使用Objective C作爲語言之前)。我想,我是那種聰明的人,我可以摸索一下,並得到一個簡單的應用程序工作......錯了。

@Andrew - 感謝您對這些配置設置的洞察。基於我對Xcode的第一印象,我認爲這些可能有所幫助。

+0

是的,我知道那種感覺:)如果它的任何安慰聽起來就像我們有非常相似的經歷(VS中7年以上的C/C++),並且我的第一次XCode/Cocoa體驗完全相同。我發現花了大約兩週(也許是10個小時)閱讀Cocoa Programming for OSX,並在通過一些樣本進行工作,然後才真正「獲得」它並開始感到高效。一個好的C/C++背景對於長期來說肯定會有所幫助,但是在早期它幾乎感覺像是一種障礙,因爲事物會讓人感覺熟悉而錯誤:) – 2008-08-19 04:51:44

回答

18

我建議你挑一個有趣的小產品,並潛入。如果你正在尋找一本書,我建議Cocoa Programming for Max OSX這是一個非常好的介紹Objective-C和可可。

XCode幾乎是事實上的IDE,並免費使用OSX。它應該在您的原始安裝DVD上。這很好,但不如Visual Studio(對不起,實際上不是)。

作爲一個長期的VS用戶,我發現默認的XCode配置有點奇怪,難以適應,特別是每個源文件都會打開一個新的浮動窗口。我發現一些調整特別有用;

  • 設置/常規 - >全合一(統一編輯/調試器窗口)
  • 設置/常規 - >在同一個編輯器中打開同行(單窗口編輯)
  • 設置/調試 - 「在編輯器調試器控件中「
  • 設置/調試 - 」自動清除調試控制檯「
  • 設置/鍵綁定 - 大量綁定以匹配VS(Ctrl + F5/Shift + F5,Shift + Home,Shift + End等)

我發現調試器有一些煩人的問題,如斷點沒有正確映射到行,異常不會立即被調試器困住。沒有什麼好處,但有點麻煩。

我建議您使用爲Objective-C 2.0引入的新屬性語法。他們在許多地方打字少得多。它們僅限於OSX 10。5只有(是的,語言功能與操作系統版本相關,這有點奇怪)。

同樣不要被愚弄到淡化C/C++和Objective-C之間的差異。他們非常相關,但是是不同的語言。嘗試並開始使用Objective-C,而不用考慮如何在C/C++中執行X,Y,Z。它會使它更容易。

0

AFAIK,幾乎每個OS X開發者都使用Xcode。

那和Interface Builder用於創建GUI。

FWIW,試着找到Hillegas的書的副本,因爲它是一個很好的介紹性教程,Apple提供的參考文檔實際上不是。 (不過,它們通常都是很好的參考文檔)。

4

第一個要閱讀和摘要的文檔是the Mem management guide,在繼續之前瞭解這一點。 This也是Objective-C的很好的指南。事實上,蘋果公司的開發者網站非常好 - 但你可能會首先閱讀Hillegas書。

關於Xcode vs Visual Studio - 它們是不同的。我不會說其中一個比另一個更好--Windows開發者從VS中過來並期望它是相同的。這只是一種傲慢的態度,請不要落入這羣人。自AppStudio開始使用VS和Xcode一年左右後,現在都有優勢和劣勢。 Xcode是開箱即用的東西(特別是來自VS)看起來不太好,但一旦你開始使用和理解它 - 它變得非常強大。

此外,還有很多更多的工具包含在Xcode等中,例如Instruments和Shark,除非你打開錢包,否則恕我直言,你根本用VS無法獲得。

無論如何,祝你好運。我仍然喜歡C#,但Objective-C/Cocoa莫名其妙地讓編程變得有趣一旦你進入它...

0

可可是巨大的。學習如何在Mac上編寫應用程序最困難的部分是學習Cocoa。順便一提。你不需要知道ObjC(雖然它有助於噸)。你可以用Python或Ruby編寫Cocoa應用程序(在IDE中)。

我同意VS是一個更好的IDE,然後Xcode。但是如果你投入界面生成器和所有其他工具,我不太確定。 Mac開發並不是每個事物都有1個巨大的IDE。但VS對開發者來說是「親切」,然後是Xcode。

此外,如果你想跨平臺應用程序看看RealBasic。一個好工具(雖然是基本的,但它也可以在Linux上運行)。您會驚訝地發現有多少個Mac應用程序是用RB編寫的。

0

我聽說現在的書已經非常過時了。整個生態系統似乎進化得非常快,每個操作系統版本都發生了巨大的變化。

他寫了一個tutorial,它將一些Apple文檔和其他教程組合在一起,這些教程將幫助您開始。我認爲它涵蓋了使用IDE的基礎知識,編寫簡單的應用程序,然後繼續更先進的東西。

2

另一個建議:如果您有功能或增強請求或您遇到的錯誤,請務必將其提交給Apple的Bug Reporter。這是開發人員將他們的需求傳達給Apple的最佳方式,因爲每個問題都通過系統進行跟蹤。

1

你可以試試textmate的演示,看看你是如何喜歡它與真正的objective-c或任何其他類型的文本。它將導入xcode項目設置,以便您仍然可以編譯並從textmate運行,而不必返回到xcode。

1

Xcode是編輯源文件的標準,但如果您真的想要,可以將其他編輯器與命令行xcodebuild工具一起使用。在最終讓步到Xcode之前,我使用Vim進行了所有可可編輯。它不是世界上最偉大的IDE,但它完成了工作,最近的3.x版本已經有了一些不錯的改進。

Cocoa開發的實用工具是Interface Builder。 IB不會像許多UI工具那樣生成源代碼。相反,它會操作真正的Cocoa視圖,控件和對象,然後將其捆綁到由程序在運行時加載的存檔(nib)中。大多數Cocoa程序至少使用一個nib文件,而且經常使用更多。

無論您選擇何種IDE /編輯器組合來選擇源文件,我建議您儘可能使用IB。即使你不是其他用戶界面佈局/生成工具的粉絲,我建議保持開放的態度,給予「可可方式」一個機會,至少要了解Interface Builder可以爲你的開發過程做些什麼。

0

我在過去的幾年裏一直在可可公司工作,最近又找到了Fritz Anderson的「Xcode 3 Unleashed」。強烈推薦進入Xcode —,特別是3.0/Leopard帶來的一些重大變化。

別忘了Hillegass的事實上的可可聖經,「可可編程爲Mac OS X - 第三版。」

0

@peter我不知道爲什麼你有一個簡單的應用程序工作的麻煩,馬上就沒有做任何事情你的應用程序從Cocoa框架中獲得很多好處。如果你的意思是你試圖做一些事情,比如把一個按鈕連接到一個動作,並讓它在屏幕上打印一個提示或類似的東西,那麼是的,我可以看到你的操作很困難。

多年前我從可可開始就存在的問題是,它與其他任何東西都有很大不同,它有一點學習曲線。儘管許多其他系統是面向編譯時間的,但Cocoa非常動態且面向運行時。一旦你瞭解瞭如何將行爲與類連接起來,它就成爲學習Cocoa框架如何工作的問題。

4

不要打擾挖掘你的OSX DVD,因爲他們從那以後發佈了新版本(3.1)的XCode。

首先,你會想加入Apple Developer Connection(它是免費的,你需要它來訪問他們的MSDN版本) - 它使用你的Apple ID,所以如果你曾經有iTunes的存儲等,那就是相同的用戶名/密碼

一旦你做到了這一點,點擊下載,然後點擊開發者工具,可以查看this page,並去爲XCode 3.1 Developer DVD

相關問題