您的位置:首页 > 其它

Kotlin学习(4):编码规范

2017-09-12 18:26 162 查看
开发环境:IntelliJ IEDA

个人博客:http://blog.csdn.net/IInmy

项目源码:https://github.com/Rushro2m/KotlinForOfficial

官方文档中文版:https://www.kotlincn.net/docs/reference/coding-conventions.html

1、命名风格

Kotlin一般默认使用Java的编码规范

使用驼峰式命名(避免命名含有下划线)

类型名以大写字母开头

方法和属性以小写字母开头

使用4个空格缩进

共有函数应撰写函数文档,这样这些文档才会出现在Kotlin Doc中

//驼峰命名
val lastName = "张三"

//类名或接口,大写开头
interface Foo<out T : Any> : Bar {
//...
}

interface Bar {
//...
}

//方法名小字母开头,遵循驼峰式命名
fun foo(a: Int){

}


2、Lambda表达式

在Lambda表达式中, 大括号左右要加空格,分隔参数与代码体的箭头左右也要加空格 。

Lambda表达应尽可能不要写在圆括号中。

Lambda中一般使用it代替对象

fun main(args: Array<String>) {
val list = listOf(9, 10, 11, 12, 13)
val a = list
.filter { it > 10 }
.map { it -> it * 2 }
println(a.forEach { print("$it--") })
}


3、类头格式化

具有较长类头的类应该格式化

每个主构造函数参数位于带有缩进的单独一行中。

右括号应该另起一行。

使用继承时,那么超类构造函数调用或者实现接口列表 应位于与括号相同的行上。

对于多个接口,应首先放置超类构造函数调用,然后每个接口应位于不同的行中。

构造函数参数可以使用常规缩进或连续缩进(双倍的常规缩进)。

class People(
id: Int,
name: String,
surname: String
) : Human(id, name),
Bar {
//...
}


4、Unit

一般而言,如果函数返回Unit,也就是没有返回值,这种情况下,Unit是直接省略的。

//带有Unit
fun foo() : Unit{

}

//省略掉Unit
fun fzz(){

}


5、函数还是属性

很多场合无参的函数可与只读属性互换,尽管语义相近,也有一些取舍的风格约定,底层算法优先使用属性而不是函数。

这样做的好处:

不会抛异常

O(1)复杂度

计算廉价(或缓存第一次运行)

不同调用返回相同结果
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Kotlin 编码规范