关于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”则是告诉你如何恰当的提问。

相关推荐