当前位置:嗨网首页>书籍在线阅读

01-Kotlin编程风格

  
选择背景色: 黄橙 洋红 淡粉 水蓝 草绿 白色 选择字体: 宋体 黑体 微软雅黑 楷体 选择字体大小: 恢复默认

4.1 Kotlin编程风格

制定编程规范的目的是增强代码的一致性,让程序具有良好的可读性,利于项目成员和后期代码的维护。

作为一门比较年轻的编程语言,Kotlin在保留了面向对象编译语言优点的同时,也借鉴了现代函数式编程语言的诸多特点。

1.命名规范

在Kotlin开发中,对于包、类、常量和方法都会涉及命名,Kotlin默认使用Java的命名规范。

  • 使用驼峰法命名,避免命名含有下划线。
  • 类型名命名时以大写字母开头。
  • 对方法和属性进行命名时以小写字母开头。
  • 对于公有函数,应撰写相关函数文档。

良好的命名风格,可以极大地提高代码的可阅读性和可维护性,是软件开发人员需要具备的基本技能。

2.Lambda表达式

在Lambda表达式中,大括号左右两边要加空格,分隔参数与代码体的箭头左右两边也要加空格。在使用Lambda表达式时,应尽可能避免将其写在圆括号中。在非嵌套的Lambda表达式中,最好使用默认参数“it”来替代显式声明参数名,而在嵌套参数的Lambda表达式中,参数应该显式声明。

list.filter { it > 10 }.map { element -> element * 2 }

3.冒号

类型和超类型之间的冒号前要有一个空格,而实例和类型之间的冒号前不要有空格。代码如下。

interface Foo<out T : Any> : Bar {  // T和Any是继承关系,冒号前面有空格
      fun foo(a: Int): T    // a和Int是类型和对象的关系,冒号前面不需要空格
}

4.类头格式化

类头如果只有少数几个参数,则可以写在一行。

class Person(id: Int, name: String)

如果参数比较多,则应当进行格式化。同时,对于包含多个接口的情况,应放置在超类构造函数中。代码如下。

class Person(
    id: Int, 
    name: String,
    surname: String
) : Human(id, name),
    KotlinMaker {
    // ……
}

5.Unit类型

如果函数返回Unit类型,则该返回类型需要省略。

fun foo() { 
   // 省略": Unit"返回类型
}

6.注释

有编程经验的读者对注释肯定不会陌生,注释可以提高程序代码的可读性,方便人们更加轻松地了解代码。和大多数编程语言一样,Kotlin支持行注释及块注释。

// 这是一个行注释
/* 这是一个多行的
   块注释。 */

7.方法和属性的选择

在某些情况下,无参的函数与只读属性可互换通用。虽然语义相似,但在以下情况中,更多的是选择使用属性而不是方法。

  • 不会抛出任何异常。
  • 具有O(1)的复杂性。
  • 容易计算(或者运行一次之后缓存结果)。
  • 每次调用返回同样的结果。