Xcode 中 Objective-C 代码的样式哪种更标准的对比分析
2013-12-15 10:11
405 查看
Xcode 中 Objective-C 代码的样式哪种更标准的对比分析
太阳火神的美丽人生 (http://blog.csdn.net/opengl_es)
本文遵循“署名-非商业用途-保持一致”创作公用协议
转载请保留此句:太阳火神的美丽人生 - 本博客专注于 敏捷开发及移动和物联设备研究:iOS、Android、Html5、Arduino、pcDuino,否则,出自本博客的文章拒绝转载或再转载,谢谢合作。
Xcode 中 Objective-C 代码的样式在不断升级过程中,示例代码中留下如下两种,这可能是主导人的风格不同导致,甚至项目模板都在变,但具体哪种更标准呢,我们分的一下,这涉及到阅读代码在开发小组中的统一性,以及代码格式化的应用效果。
风格1:
风格2:
以上两种的根本差别,就在于代码块的起始大括号是单起一行,还是与所属指令在同一行,类和方法的创建时,也涉及到此问题。
那么我们利用XCode自带的Re-Indent代码格式化功能来格式化一下,就能看出真伪了,请往下看:
分别选中上面的两种风格的代码,点右键,找到Structure->Re-Indent,点按Re-Indent后,以上代码将发生变化,即使不对齐,也会成如下的格式化后的效果
风格1格式化后:
风格2格式化后:
由此可见,风格2是XCode内置代码格式化功能所支持的,真不知为什么有些XCode版本的模板居然也用风格1,而没有考虑XCode内置功能要求。
而且从XCode3开始就是风格2,后续又在不断的变,这样对代码风格的影响可不少,分析代码来说,不同风格总不会那么顺畅,感觉格格不入,一条记忆法则就是,在特定环境中重现,如果不能很快记个大概,阅读别人的代码到另一部分时,就没办法在头脑里建立起有效果的上下文关联,逻辑怎么能清晰地出现呢?!
再有,XCode的代码格式化功能确实有些差强人意,白瞎了完整单词命名那么长串了,希望苹果有空儿时,能在没没落之前,把这个活儿给干了!
太阳火神的美丽人生 (http://blog.csdn.net/opengl_es)
本文遵循“署名-非商业用途-保持一致”创作公用协议
转载请保留此句:太阳火神的美丽人生 - 本博客专注于 敏捷开发及移动和物联设备研究:iOS、Android、Html5、Arduino、pcDuino,否则,出自本博客的文章拒绝转载或再转载,谢谢合作。
Xcode 中 Objective-C 代码的样式在不断升级过程中,示例代码中留下如下两种,这可能是主导人的风格不同导致,甚至项目模板都在变,但具体哪种更标准呢,我们分的一下,这涉及到阅读代码在开发小组中的统一性,以及代码格式化的应用效果。
风格1:
if (1>2) { NSLog(@"true"); } else { NSLog(@"false"); }
风格2:
if (1>2) { NSLog(@"true"); } else { NSLog(@"false"); }
以上两种的根本差别,就在于代码块的起始大括号是单起一行,还是与所属指令在同一行,类和方法的创建时,也涉及到此问题。
那么我们利用XCode自带的Re-Indent代码格式化功能来格式化一下,就能看出真伪了,请往下看:
分别选中上面的两种风格的代码,点右键,找到Structure->Re-Indent,点按Re-Indent后,以上代码将发生变化,即使不对齐,也会成如下的格式化后的效果
风格1格式化后:
if (1>2) { NSLog(@"true"); } else { NSLog(@"false"); }
风格2格式化后:
if (1>2) { NSLog(@"true"); } else { NSLog(@"false"); }
由此可见,风格2是XCode内置代码格式化功能所支持的,真不知为什么有些XCode版本的模板居然也用风格1,而没有考虑XCode内置功能要求。
而且从XCode3开始就是风格2,后续又在不断的变,这样对代码风格的影响可不少,分析代码来说,不同风格总不会那么顺畅,感觉格格不入,一条记忆法则就是,在特定环境中重现,如果不能很快记个大概,阅读别人的代码到另一部分时,就没办法在头脑里建立起有效果的上下文关联,逻辑怎么能清晰地出现呢?!
再有,XCode的代码格式化功能确实有些差强人意,白瞎了完整单词命名那么长串了,希望苹果有空儿时,能在没没落之前,把这个活儿给干了!
相关文章推荐
- Html-1-标准的HTML5代码样式
- 用自定义代码分析来标准开发人员的开发规范
- XCode里查询本机IP的Objective-C代码
- Objective-C 【电商APP应用代码-系统分析-详细注释-代码实现】
- 使用Uncrustify在Xcode中格式化Objective-C代码
- GCC Coverage代码分析-GCC插桩前后汇编代码对比分析
- Objective-C 【完整OC项目-购票系统-系统分析-代码实现】
- [转载]Xcode创建的默认iOS OpenGL ES 2.0 project代码分析
- OCLint:静态代码分析工具(C、C++和Objective-C)
- 一段标准的数据库连接的代码及详细分析
- 使用Xcode工具静态检查分析代码
- 对比分析Objective_C和Swift懒加载的区别
- Xcode常用技巧(1)-使用Xcode进行代码分析及GDB调试
- 【C#开发iOS】Objective-C与C# with Xamarin的开发代码对比
- Xcode插件 为Objective-C代码自动生成类关系图 - ObjectGraph-Xcode
- 搭建SonarQube分析Objective-C代码遇到的问题
- 黑马程序员---objective-c基础学习--第一个oc程序及代码分析
- Objective-C block实现代码分析
- 使用Xcode 查看objective-C的汇编代码
- Xcode 静态代码分析