關于Xcode開發學習那些事
關于Xcode開發學習那些事是本文要介紹的內容,主要介紹了在學習xcode開發的過程中一些常用到的筆記,與大家分享一下,從而讓我們在此接觸了xcode開發,不多說,先來看內容。
1、蘋果的程序和普通的C程序一樣,每一個程序必須包含main( )函數。
2、自己使用的類名不要使用“NS”做前綴,以免引起混淆。
NS是蘋果自有的類專用的,它代表NeXTStep。Mac OS X就是在NeXTStep操作系統的基礎上發展起來的,蘋果公司收購了NeXT公司,此舉使喬布斯(Steve Jobs)重返蘋果并重坐第一把交椅。
3、所有類里面,頂級的是被稱作“對象類”(NSObject)的類。
幾乎所有的你創建或使用的類都直接或間接的是對象類的“子類”(subclass)。比如類NSWindow是類NSResponder的子類,類NSResponder又是類NSObject的子類。
4、Cocoa 屏幕輸入函數:
- NSLog(@"Julia is a pretty actress.");
以@開通的字符串表示Objective-C的字符串
Object c包含頭文件使用#import
例如:
- #import <Foundation/Foundation.h>
5、XCode開發的主要窗口分為兩個部分:
左邊一欄叫做“Groups & Files”,用來處理組成你整個程序的各個素材文件。當前這里面沒有太多內容,等后面你開始寫多語言圖形程序時,將在這一欄里找到圖形界面程序和多語言程序需要的素材文件。如果你要在硬盤上一一去查找分散的素材文件可能會比較麻煩,Xcode中提供了虛擬文件夾(被稱為“組”(Group))概念,素材文件被分類存放在這些Groups中,可以幫助你方便的組織這些素材。
界面資源文件為nib文件,類似于Windows開發的資源編輯器。Cocoa-Controls被稱作“調板”,類似于Windows開發的資源工具箱。里面存放著可以用于你的圖像界面的各種對象。把光標停留在某控件上方時便會顯示改控件的類名。選中一個對象,使用command-shitf-i就可以修改它的屬性
6、創建好了窗口界面資源以后,還需要為窗口創建類:
在該窗口的nib文件界面,選擇“Classes”標簽頁。在第一欄中你會看到“NSObject”。選擇它,并在“Classes”菜單中選擇“Subclass NSObject”。創建一個類MyClass之后,回到界面編輯界面中在Classes菜單選擇"Instantiate MyClass"一項。就有了一個新的叫做MyClass的圖標。這個圖標代表了我們剛剛創建的類的實例。
7、為了關聯上控件和類的消息處理聯系。
現在來建立界面上某控件和改類的關聯:在“*.nib”窗口中單擊“Instances”標簽頁。按住鍵盤上的Ctrl鍵并用鼠標將“控件”拖拽到MyClass的實例上。(千萬不要使用別的方法創建關聯!)一條代表關聯關系的線會顯示在屏幕上,確認這條線是從按鈕連到了MyClass的實例上就可以松開鼠標了。
當松開鼠標,檢視窗口會顯示關聯調板,調板中列出了對象MyClass中可用的方法。選擇正確的方法并單擊“Connect”按鈕來完成關聯過程。
當然這些方法要在事先在MyClass中添加好
8、Cocoa有一個很重要的awakeFromNib函數。
當窗口打開,方法awakeFromNib就會自動被調用。這個方法用來初始化窗口的狀態很有用
9、字符串:
由類NSString創建的字符串被叫做固定字符串,因為它不可修改。不可以修改的字符串有什么優點?應當說這樣的字符串更容易為操作系統處理,所以你的程序也可以更快的運行。
- NSString * foo;
- foo = @"Julia!";
有時你確實要修改它們。你可以使用另外一個類——NSMutableString
- NSMutableString *foo;
- foo = [@"Julia!" mutableCopy];
- [foo appendString:@" I am happy"];
方法mutableCopy(由類NSString提供)復制了一個新的可變字符串作為方法信息的接收方。
10、數組:
有兩個類提供了數組:NSArray和NSMutableArray。帶有字符串的數組分為固定數組和可變數組兩種。
- [NSMutableArray array]
這個語句會產生一個空數組
- NSMutableArray *myArray = [NSMutableArray array];
- [myArray addObject:@"first string"];
- [myArray addObject:@"second string"];
- [myArray addObject:@"third string"];
- int count = [myArray count];
- NSLog(@"There are %d elements in my array", count);
置換數組內元素要使用到方法“replaceObjectAtIndex:… withObject:…”。
- [myArray replaceObjectAtIndex:1 withObject:@"Hello"];
內存管理:
為了幫助你處理那些不在被使用的對象,Cocoa給每個對象關聯了一個計數器,被稱做“保留計數器”。編程時,給對象增加一條援引信息,就要讓對象在它的計數器里加一;當減少一次援引,則減一。當保留計數器的計數為0的時候,對象就知道自己已經不再被援引了,可以被安全的毀掉了。這時候的對象會毀掉自己并釋放出內存空間。
11、開發常用網站資源:
蘋果開發者主頁:
- http://www.apple.com/developer。
- http://osx.hyperjeff.net/reference/CocoaArticles.php
- http://www.cocoadev.com/
- http://www.cocoabuilder.com/
- http://www.stepwise.com/
上述網站還提供大量的鏈接指向其他更多的資源。你還應該訂閱“cocoa-dev”郵件列表(網址http://lists.apple.com/mailman/listinfo/cocoa-dev)。在這里你可以進行提問,熱心的網友們總會盡己所能幫助你解決問題。
當然,你要注意禮貌,而且應當首先自己試著解決(參考http://www.cocoabuilder.com/ )http://www.catb.org/~esr/faqs/smart-questions.html頁面上的“How To Ask Questions The Smart Way”則是告訴你如何恰當的提問。
還有一些優秀的關于Cocoa開發的書籍。Stephen Kochan編寫的《Programming in Objective-C》是為初學者準備的。其它一些書則要求你具備本書所將到的基礎知識。我們比較推崇Aaron Hillegass編寫的《Cocoa Programming for Mac OS X》,他本人則是在Big Nerd Ranch教授這方面的課程。我們同樣向您推薦James Duncan Davidson和
小結:關于Xcode開發學習那些事的內容介紹完了,希望本文對你有所幫助!