文档章节

《从零开始学Swift》学习笔记(Day 59)——代码排版

智捷课堂
 智捷课堂
发布于 2016/01/13 12:04
字数 881
阅读 30
收藏 2

原创文章,欢迎转载。转载请注明:关东升的博客  

代码排版包括: 空行、空格、断行和缩进等内容。代码排版内容比较多工作量很多,但是非常重要。

空行

空行将逻辑相关的代码段分隔开,以提高可读性。下列情况应该总是添加空行:

  • 类型声明之前。

  • import语句前后。

  • 两个方法或函数之间。

  • 块注释或单行注释之前。

  • 方法或函数内的两个逻辑段之间,用以提高可读性。

  • 一个源文件的两个片段之间。

 空格

在代码中有些位置是需要有空格的,这个工作量也是很大的。下列是使用空格的规范:

1.赋值符号“=”前后有一个空格。var或let与标识符之间有一个空格。所有的二元运算符,应该使用空格将之与操作数分开。一元操作符和操作数之间不因该加空格,如:++、--等。示例如下。

var a = 10
var c = 10
a += c + d

 

2. 小左括号“(”之后,小右括号“)”之前不要有空格。示例如下。

a = (a + b) / (c * d)

 

3. 大左括号“{”之前有一个空格。示例如下。

while a == d {
    n++
}
 

4. 在方法或函数参数之前间有一个空格,参数冒号与数据类型之间有一个空格。

推荐使用:

func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
 
    ...
}

不推荐使用:

func tableView ( tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath ) {
    ...
}

 断行

一行代码的长度尽量避免超过80个字符,为了便于查看是否一行代码超出80个字符,很多IDE开发工具都可以在编辑窗口设置显示80行竖线。在Xcode中设置过程是打开菜单Xcode→Preferences,选择Text Editing标签,选中Show→Page guide at column。 

由于有的代码比较长需要断行,可以依据如下一般规范断开:

  • 在一个逗号后面断开。

  • 在一个操作符前面断开,要选择较高级别运算符断开,而非较低级别运算符断开。

  • 新的一行应该与上一行缩进两个级别(8个空格)

 缩进

4个空格常被作为缩进排版的一个单位,在开发时候使用制表符进行缩进,虽然默认情况下一个制表符等于8个空格,但是在不同的IDE工具中可能设置的一个制表符与空格对应个数会有所不同。在Xcode中默认是一个制表符对应4个空格,我们可以在Xcode中打开菜单Xcode→Preferences,选择Text Editing→Indentation标签,可以在Tab width中进行设置。 

缩进可以依据如下一般规范:

  • 在函数、方法、闭包、控制语句、计算属性等包含大括号“{}”代码块中,代码块中的内容与首行缩进一个级(4个空格)。

  • 如果是if语句中条件表达式的断行,那么新的一行应该与上一行缩进两个级别(8个空格),再往后的断行要与第一次的断行对齐。 

 

 

欢迎关注关东升新浪微博@tony_ 关东升。
关注智捷课堂微信公共平台,了解最新技术文章、图书、教程信息
 
更多精品iOSCocos、移动设计课程请关注智捷课堂官方网站:
http://www.zhijieketang.com
智捷课堂论坛网站:
http://51work6.com/forum.php

 

© 著作权归作者所有

智捷课堂

智捷课堂

粉丝 40
博文 239
码字总数 215495
作品 0
东城
私信 提问
Go语言基础学习:变量

Go语言基础学习(一)变量 猜你喜欢 Ceylon语言学习笔记(1) 《从零开始学Swift》学习笔记(Day 69)——Swift与Objective-C混合编程之语言 go语言学习-常量 GO语言学习-复杂类型(2) Go语言学习...

d_watson
2016/04/15
13
0
《从零开始学Swift》学习笔记(Day 69)——Swift与Objective-C混合编程之语言

《从零开始学Swift》学习笔记(Day 69)——Swift与Objective-C混合编程之语言 原创文章,欢迎转载。转载请注明:关东升的博客 在Swift语言出现之前,开发iOS或OS X应用主要使用Objective-C...

智捷课堂
2016/02/24
27
0
《从零开始学Swift》学习笔记(Day 2)——使用Web网站编写Swift代码

Swift2.0学习笔记(Day 2)——使用Web网站编写Swift代码 Swift程序不能在Windows其他平台编译和运行,有人提供了一个网站swiftstub.com,左栏是代码编辑窗口,右栏是运行结果窗口。可以在任...

智捷课堂
2015/08/19
184
0
《从零开始学Swift》学习笔记(Day 3)——Swift 2.0之后增加的关键字

Swift 2.0学习笔记(Day 3)——Swift 2.0之后增加的关键字 原创文章,欢迎转载。转载请注明:关东升的博客 看了之前的学习笔记知道了什么是关键字,现在提示各位在Swift 2.0之后增加defer、...

智捷课堂
2015/08/20
158
0
《从零开始学Swift》学习笔记(Day4)——用Playground工具编写Swift

Swift 2.0学习笔记(Day4)——用Playground工具编写Swift 原创文章,欢迎转载。转载请注明:关东升的博客 Playground程序运行①区域是代码编写视图;②区域是运行结果视图;③区域是时间轴视...

智捷课堂
2015/08/24
368
0

没有更多内容

加载失败,请刷新页面

加载更多

常用正则表达式整理

本文转载于:专业的前端网站➩常用正则表达式整理 /*以下为亲自验证过,备用*/   数字,0-100,包含0和100,且小数点后最多有三位: /^(\d{1,2}(\.\d{1,3})?|100)$/ 匹配正整数:^[1-9]*[1-9][...

前端老手
5分钟前
0
0
Java 中可重入锁、不可重入锁的测试

Java 中可重入锁、不可重入锁的测试 可重入锁 指在同一个线程在外层方法获取锁的时候,进入内层方法会自动获取锁。 为了避免死锁的发生,JDK 中基本都是可重入锁。 下面我们来测试一下 sync...

ConstXiong
5分钟前
0
0
怎么给视频变音

怎么让录制视频中的声音变得可爱吗?其实方法非常的简单,只要进行视频变音制作就好了,那怎么给视频变音呢?下面就一起来看看视频变音的具体制作方法吧! 具体步骤如下: 第一步: 打开手机...

白米稀饭2019
9分钟前
2
0
学习记录(ECMAScript 6.0入门_day01重点总结)

课程目标 1、ECMAScript6和JAVAScript关系 ES6是JAVAScript的规格,JavaScript是ES6的一种实现。 变量声明: 局部变量:let 它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内...

庭前云落
21分钟前
2
0
springboot 源码SpringApplication的run方法解析

public ConfigurableApplicationContext run(String... args) {//记录启动应用启动时间StopWatch stopWatch = new StopWatch();stopWatch.start();ConfigurableApplicationCo......

dudu
23分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部