http://blog.csdn.net/lin1986lin/article/details/21180007

目录(?)[-]

  1. 引言
  2. 什么是Code Snippets
  3. 如何新建Code Snippets
 

引言

  在项目开发中,我们经常可以看到如下所示的代码:

1 @property (nonatomic, copy) NSString *isbatchapprove;
2 @property (nonatomic, copy) NSString *currentResult;
3 @property (nonatomic, copy) NSString *strVersion;
4 @property (nonatomic, copy) NSString *operateType;

  初看一下,没什么问题,但在做项目开发的过程中,实际上是比较麻烦的,因为如下所示的相同内容,我们需要书写多次,无形中给我们的开发增加了工作量。那么有什么办法可以避免这样重复的工作量吗?这就是这里要说的Code Snippets Library。

@property (nonatomic, copy) NSString

什么是Code Snippets

  其实,在项目开发的过程中,我们已经多次享受了Code Snippets 给我们带来的便利,比如下图所示:

  当我们输入sw的时候,就会自动的出现后面的这么多内容,按一下回车键,这些内容就自动编写好了。这就是Code Snippets ,目的是使程序员以最快的速度输入常用的代码片段,提高编程效率。该功能从Xcode4开始引入,我们可以在如下地方设置显示Code Snippets:

  设置显示后,我们可以在如下地方看到Code Snippet,里面有很多Xcode自带的代码片段,上例中的switch就是其中的一个。双击具体的一个Code Snippet,可以看到该Code Snippet的详情,单击Edit按钮,可以看到更多内容(新建Code Snippet的时候再介绍)

如何新建Code Snippets

  通过上面的介绍,对于Code Snippets的好处,大家应该很清楚了。清楚用处之后,大家会有一个问题:XCode中可以自己新建Code Snippets吗?答案是肯定的,下面我们通过引言中的property的创建,来一步步介绍Code Snippets创建的流程。

  第一步:书写Code Snippets。在声明@property属性的地方写下如下语句:

@property (nonatomic, copy) NSString *<#name#>;

  上面<#name#>的作用,在后面的使用效果中可以知道。

  第二步:新建Code Snippets。选中第一步中编写的语句,用鼠标左键拖到上图中指示的Code Snippets在Xcode中的区域里,就新建了一个Code Snippets。新建之后的效果如下所示:
  【属性说明】:
  • 1.Title:Code Snippets的标题;
  • 2.Summary:Code Snippets的描述文字;
  • 3.Platform:可以使用Code Snippets的平台,有IOS/OS X/All三个选项
  • 4.Language:可以在哪些语言中使用该Code Snippets
  • 5.Completion Shortcut:Code Snippets的快捷方式,比如本文第二部分编写switch代码段用到的sw,在这里,把属性设置的快捷方式设为pc
  • 6.Completion Scopes:可以在哪些文件中使用当前Code Snippets,比如全部位置,头文件中等,当然可以添加多个支持的位置。
  • 7.最后的一个大得空白区域是对Code Snippets的效果预览。
  一切设置完成以后,点击该菜单右下角的Done按钮,新建工作就结束了。
Code Snippets的使用
  我们有两种方式使用Code Snippets,还是以刚定义的pc属性Code Snippets为例:
  方式一:在适当的位置(因为定义代码片段的时候可以设置使用平台,使用语言,使用文件等限制条件),输入pc,即可弹出如下所示提示框。
 
  单击回车,即可出现如下代码:
  方式二:直接在Code Snippets部分找到我们需要使用的Code Snippets,用鼠标左键拖动该Code Snippets到合适的位置。
 

Code Snippets的备份

  Xcode中的Code Snippets默认放在下面的目录中:
~/Library/Developer/Xcode/UserData/CodeSnippets   
  我们可以将目录中的Code Snippets备份,也可以将其直接拷出来放在不同的电脑上使用,因此多台电脑之间的协作也毫无压力。

项目开发中常用的Code Snippets

  下面是我在项目中经常使用到的一些snippet,仅供参考。

  1.Notification Add:添加通知。

  2.Notification Remove:移除通知。

  3.Notification Post:发布通知。

  4.Property Copy:NSString类型的属性。

  5.Property Retain:retain属性。

  6........

Xcode开发技巧之Code Snippets Library的更多相关文章

  1. Xcode开发技巧之code snippets(代码片段)

    一.什么是代码片段 当在Xcode中输入dowhile并回车后,Xcode会出现下图所示的提示代码: 这就是代码片段,目的是使程序员以最快的速度输入常用的代码片段,提高编程效率.该功能是从Xcode4 ...

  2. Xcode开发中 Code Snippets Library 的相关用法

    当在进行项目的时候,总会遇到很多相同的写法.因此,我们可以使用Code Snippets Library 来进行代码小片段的“封装”: 以Xcode中常用的属性为例: 使用步骤如下: 1.在Xcode ...

  3. Mac/Xcode - 开发技巧快捷键

    Xcode是iPhone和iPad开发者用来编码或者开发iOS app的IDE.Xcode有很多小巧但很有用的功能,很多时候我们可能没有注意到它们,也或者我们没有在合适的水平使用这些功能简化我们的iO ...

  4. Xcode开发技巧

    1.Xcode 中的 Code Snippets 默认放在下面的目录中: ~/Library/Developer/Xcode/UserData/CodeSnippets 2.自定义的代码背景颜色和代码 ...

  5. xcode自动完成代码 Code Snippet Library

    今天发现Xcode里一个好东西:代码片段库 你可以将自己常用的代码放到里面,给它命名,设置快捷键,以后想用这段代码的时候只要按快捷键,就会出现提示,直接将这段代码显示出来,十分高效. 比如我经常会用到 ...

  6. xcode开发的6个小技巧

    Xcode是iPhone和iPad开发者用来编码或者开发iOS app的IDE.Xcode有很多小巧但很有用的功能,很多时候我们可能没有注意到它们,也或者我们没有在合适的水平使用这些功能简化我们的iO ...

  7. (转)可简化iOS 应用程序开发的6个Xcode小技巧

    Xcode是iPhone和iPad开发者用来编码或者开发iOS app的IDE.Xcode有很多小巧但很有用的功能,很多时候我们可能没有注意到它们,也或者我们没有在合适的水平使用这些功能简化我们的iO ...

  8. Xcode开发中的6个小技巧

    Xcode是iPhone和iPad开发者用来编码或者开发iOS app的IDE.Xcode有很多小巧但很有用的功能,很多时候我们可能没有注意到它们,也或者我们没有在合适的水平使用这些功能简化我们的iO ...

  9. 可视化iOS应用程序开发的6个Xcode小技巧

    FIXME 该标签用来提醒你代码中存在稍后某个时间需要修改的部分.(编辑注:网络上有一些可以用来收集项目中`TODO`和`FIXME`标签的辅助插件,比如XToDo https://github.co ...

随机推荐

  1. CDN技术

    CDN 是构建在数据网络上的一种分布式的内容分发网. CDN 的作用是采用流媒体服务器集群技术,克服单机系统输出带宽及并发能力不足的缺点,可极大提升系统支持的并发流数目,减少或避免单点失效带来的不良影 ...

  2. c#之Redis队列

    摘要 这两天一直在考虑redis队列:一个生产者,多个消费者的情况,这里弄了一个demo进行测试. 一个例子 关于如何引用Redisclient 可以参考之前的这篇文章:c#之Redis实践list, ...

  3. CFgym Board Queries (旋转、翻转简化)

    http://codeforces.com/gym/100497 codeforces 2014-2015 CT S02E04: Codeforces Trainings Season 2 Episo ...

  4. C语言动态内存分配

    考虑下面三段代码: 片段1 void GetMemory(char *p) { p = (); } void Test(void) { char *str = NULL; GetMemory(str) ...

  5. POJ 1061 青蛙的约会

                            青蛙的约会 Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 82859   A ...

  6. OC第三节——NSArray和NSMutableArray

    1.OC数组和c数组的区别        C语言的数组:            相同类型变量的有序结合. 类型:可以是简答数据类型.构造数据类型                int     a[10 ...

  7. python 多线程就这么简单(转)

    多线程和多进程是什么自行google补脑 对于python 多线程的理解,我花了很长时间,搜索的大部份文章都不够通俗易懂.所以,这里力图用简单的例子,让你对多线程有个初步的认识. 单线程 在好些年前的 ...

  8. webrtc公开课

    http://blog.csdn.net/yangzhenping/article/details/51152376 http://edu.csdn.net/huiyiCourse/live

  9. php中向mysql插入数据

     $sql='insert into news(title,subtitle,source,publishtime,content,image,author) values("'.unico ...

  10. C/C++开发者必不可少的15款编译器+IDE

    1)Best IDE for C/C++ –  kDevelop(http://kdevelop.org/) Kdevelop是一个专为C/C++及其他语言的开源扩展插件IDE.它基于KDevPlat ...