黑马程序员技术交流社区

标题: Objective-C中一些 值得程序员注意的地方[3] [打印本页]

作者: ZXY66452    时间: 2015-12-2 21:48
标题: Objective-C中一些 值得程序员注意的地方[3]

7.任意搜索:Xcode项目窗口的右上角右一个搜索框,Xcode通过开发者输入的字符来过滤浏览器中显示的内容.要使用这个索搜框,首先要在Groups&Files列表中选定任意项,如Source文件夹,然后浏览器会显示该文件夹里的所有源文件。在搜索框中输入文本可以对这些文件进行筛选。

8.芝麻开门:假如开发者正在看某个源文件,看到了文件上方的#import,如果能够徐素打开这个头文件而不用鼠标点来点去,是不是会很方便呢?这个非常容易:只需要使用command+shift+o键就可以弹出一个对话框,然后在这个对话框中搜索栏中输入开发者看到的头文件名,然后在下面弹出来的信息中选取适合的文件即可查看此文件内容.

9.书签:在Xcode中与许开发者在代码中插入书签,在代码中可能又一些需要引起人们注意的地方,如:在代码某一个区域以后需要修改优化等操作的话,那么开发者在这里做一个标记的话,到动手操作的时候就可以快速定位此处了。做法为:首先在源文件中放入插入点或者选定一个文本区域,然后选中Edit->Add to Bookmarks,或者使用默认的快捷键command+D(与Safari中的一样),最后当出现提示的时候,输入书签名称即可.

10.集中注意力:紧挨着源代码的左边又两个空列,它们当中左边较宽的一列叫做边列(gutter),靠右较窄的一列叫做焦点列(focus ribbon):焦点列的作用能够让开发者在浏览代码段时集中注意力.焦点列的灰度:代码嵌套得越深,在它旁边的焦点列中,灰色也会越深.这种颜色编码能够使代码的复杂程度一目了然.用鼠标悬停在焦点列上时会突出显示相应的代码段,也可以点击焦点列来折叠相应的代码段。

11.开启导航条:在代码编辑器的顶部右一个小控件条,也就是导航条.这里面的很多控件可以让开发者快速地在项目中的源文件之间进行切换.关于#pragma的说明:“Pragma”源自希腊单词,意思是“行动”.#pragma指令将Objective-C常规代码之外的信息或说明传递给编辑器和代码编辑器.通常,Pragma是被忽略的,但它在一些软件开发工具中可能有其他含义,如果某个工具并不知道pragma是什么,则应该“点头微笑”并且忽略它,而不是生成警告或错误信息.

12.研究助手(Research Assistant)的浮动小窗口会根据逆在Xcode力的交互操作来更新所显示它的内容,要打开研究助手,选择菜单Help->Show Show Research Assistant。

13.文档管理程序:开发者想直接访问苹果公司官方API文档,最快的方法是按住Option键并双击某个符号,这是查找该符号相关文档的快捷方式.需要在Xcode其他窗口甚至是网页浏览器中打开文档也很容易,只需要按住control键并单击(或右键单击)文档区域来打开菜单即可.

14.调试:系统的在代码中查找程序哪里出错的过程叫做调试(debugging)。

15.暴力调试:最简单的调试方式就是暴力调试,暴力调试是指在程序中放入输出语句(如NSLog)来输出程序的控制流程和一些数据值.

16.Xcode调试器:Xcode还有一个调试器,调试器是位于开发者编写的程序和操作之间的程序,它能够中断开发者的程序,使之在运行中停止.这样就可移检查程序的数据及其修改程序.开发者也可以单不执行逐行进行检查程序.说明:Xcode使用的调试器就是GDB,GDB是GNU项目的一部分,它可以在很多不同平台上使用.若开发者愿意,也可以通过命令行来运行它,GDB有者完善的文档系统,尽管它的文档有些难于理解并且网络上流传者好几个版本的GDB教程.

17.精巧的调试符号:打算调试程序时,需要确保开发者正在使用Debug生成配置.可以通过Xcode工具栏中的弹出菜单Active Build Configuration来检验.Debug配置告诉编辑器发出额外的调试器符号,而调试器通过这些符号可以知道程序在什么地方都有写什么.同时,还要确认程序是用调试器来运行的,在Xcode里有两种运行程序的方法,选择菜单Run->Run或者按快捷键command+R,将会不使用调试器运行程序,若要使用调试器,选择菜单Run->Go(Debug)、Run->Debug,或者按快捷键command+Y.说明:多线程编程是一种同时处理多个执行流的编程方式,正确应用它是很困难的,通常,多线程编程所产生的错误非常难于找到,如果有人告诉你多线程很容易,那么他们不是被骗了或者试图向你推销什么东西。下面介绍是4个控件:第一个控件看起来cd机的开始按钮.,安继续键可以使用command+option+p。单击它之后,程序会接着运行到遇见下一个断点,然后结束或者崩溃.第二个控件看起像跳过按钮使用的快捷键是command+option+O.单击这个控件之后它就会执行下一行,然后又会吧程序控制权交还给开发者,第三个按钮,向下指向一个点的箭头,它是跳入按钮(也可以使用快捷键:键盘右上角的键+command+I),这个按键的功能就是跳入方法内部,显示其代码,最后箭头设置在代码的起始位置.第四个按钮是跳出按钮,快捷键是command+右上角的键+T,单击它会终止当前运行的函数并且程序会停在调用程序的下一行代码.若是在试验当中,那么就没有必要在试验当中按这个键了。再下一个按钮(又一个喷雾罐的方框)是用来打开Xcode调试窗口的,再下一个按钮用来打开GDB控制台,开发者可以再这个调试器种直接输入调试命令.最后一个控件是显示调用栈的弹出菜单,调用栈是当前处于活动状态的函数的集合,如果A调用B,B调用C,那么C就位于栈的顶部.再更为复杂的程序中,这种调用栈也称为栈跟踪


第八章节-Foundation Kit快速教程:

Cocoa的框架由两个不同的框架组成的:Foundation Kit和Application Kit组成,后者包含了所有的用户接口对象和高级类.main()函数的创建通过alloc、初始化通过init
1.有用的数据类型:a.范围的作用、b.几何数据类型。a.第一个结构体是NSRange,第一种是直接给自段赋值;第二种是应用c语言的聚合结构赋值机制;第三种是Cocoa提供的快捷函数NSMakeRange();如:x.NSRange range;range = 17;range = 4;y.NSRange range = {17,4};z.NSRange range = NSMakeRange(13,15);b.NSPoint来表示一个点,NSSize来储存长度和宽度.Cocoa提供一个由点和大小复合而成的矩形函数数据类型:其快捷函数为:NSMakePoint();NSMakeSize();和NSMakeRect();这里需要说明:Cocoa的这些数据类型是C的struct类型而不是对象呢?原因归结起来就是因为性能。程序(尤其是GUI程序)会用到许多临时的点、大小和矩形来完成他们的工作,还记得吧,所有的Objective-C对象都是动态分配的,而动态分配是一个代价较高的操作,它会消耗大量的时间,所以将这些结构创建成第一等级的对象都会在使用过程种增加大量的系统开销.
2.字符串:Cocoa种的NSString有很多内置方法,让字符串个的处理边的简单很多.a.创建字符串,通过接受格式字符串和一些参数来输出格式话的结果NSString和stringWithFormat:方法就是通过格式字符串和参数来创建NSString的;b.类方法,;c.关于大小、d.比较策略、e.不区分大小写的比较、f.字符串内是否还包含别的字符串.
4.字典NSDictionary:字典就是关键字及其定义的集合。Cocoa种有一个实现这种功能的集合类NSDictionary.NSDictionary在给定的关键字(通常是一个NSString字符串)下存储一个数值(可以是任何类型的对象)。然后开发者就可以用这个关键字来查找相应的数值,所以开发者有一个存储了某人所有联系信息的NSDictionary.那么开发者就可以对这个字典说,“给出关键字home-address下的值”,说明:字典(也被称为散列表或者关联数组)使用的是键查询的优化存储方式,它可以立即找出要查询的数据,而不需要便利整个数组进行查找,对于频繁的查询和大型的数据集来说,使用字典比数组要快得多,实际上字典非常快。






作者: 明哥132    时间: 2015-12-3 00:16
顶!顶!顶
作者: 石油小硕    时间: 2015-12-3 00:21
赞赞赞赞...
作者: 我就静静的听    时间: 2015-12-3 03:11
赞赞赞,顶
作者: liruixue    时间: 2015-12-3 08:35
写的很多,值得收藏
作者: 阳光下的枫叶    时间: 2015-12-4 23:04
说的很详细!!!!
作者: 刘炼1993    时间: 2015-12-4 23:30
好像很厉害的样子






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2