【Kotlin】编码规范

本文主要针对一些常用的编码规范进行总结,后续还会不断补充,整体跟java除了某些语法不一致,大体格式都是一样的。

源代码组织

目录结构

  • 纯kotlin项目中,目录结构中可以省略公共根包的包结构
  • 对于JVM平台的项目,Kotlin文件应该与java文件遵循同意规则,即根据文件的包结构存储在对应的目录结构中

源文件名称

文件只有一个类(可以有也可以没有顶层声明)

文件名应该与类名保持一致

文件包含多个类,或者没有类只有顶层声明

文件名为可以描述文件中的功能业务内容,命名规则采取大驼峰的规则(如TeacherList.kt)

源文件组织

  • 鼓励多个声明(类,顶层函数或者属性)放在同一kotlin源文件中,只要它们语义密切关联即可,但是文件不要太大(不超过几百行)
  • 为类定义的扩展函数和与所有客户均相关的扩展函数,建议放在类定义的地方,作为类的一部分
  • 与特定客户相关的扩展函数,放在特定客户代码之后
  • 不要为了某个类或者某个函数的所有扩展函数而单独创建文件

类布局

类中的内容通常排序

  • 属性声明与初始化块
  • 次构造函数
  • 方法声明
    • 相关方法均放在一起,方便阅读。如funA()中调用了funB(),那么funA和funB()就需要放在一起
  • 伴生对象

嵌套类

  • 放在紧挨着调用嵌套类的地方
  • 如果只有外部类调用了嵌套类(当前类并没有调用),那么我们尽量把它们放在类末尾,在伴生对象之后

接口实现布局

  • 实现成员的顺序与接口中定义成员的顺序一致(如果成员实现需要额外的私有方法,私有方法紧跟该实现成员之后)

重载布局

  • 类中的重载要放在一起

命名规则

包名

  • 小写且不适用下划线。 ex:com.example.project
  • 不建议适用多个单词组成的名称,如果需要则使用小驼峰形式。 ex:com.example.myProject

类名

  • 大驼峰形式。
class TestClass {}

函数及变量名

  • 小驼峰形式。
fun testFuction() {}

var teacherName
val teacherNumber

修饰符

当存在多个修饰符的时候,需要遵循以下顺序:

public / protected / private / internal
expect / actua
final / open / abstract / sealed / const
external
override
lateinit
tailrec
vararg
suspend
inner
enum / annotation / fun // 在 fun interface 中是修饰符
companion
inline
infix
operator
data

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值