Kotlin文件应该放在Android的单独源目录中吗?

Far*_*deh 25 java android kotlin

由于它的好处,我将开始使用Kotlin进行Android开发以及Java.我已经安装了Android Studio插件,并在gradle文件中包含了相关的依赖项.

所以我从Kotlin文档和Stack Overflow中读到,可以为Kotlin文件包含一个单独的源目录,如下所示:

app:
-manifest
-java
-kotlin
-res

我知道我可以通过在我的build.gradle文件中添加以下内容来创建此目录:

sourceSets {
    main.java.srcDirs += 'src/main/kotlin'
}
Run Code Online (Sandbox Code Playgroud)

我的问题是:Kotlin应该在同一目录中使用Java文件"直播"吗?

除了意见之外,我想知道是否有一个特定的惯例,如果是这样,为什么它是这样的.

如果没有,那么每个选项的优缺点是什么?

yol*_*ole 29

将Kotlin文件放在单独的源目录中是一种记录的可能性,因为在Kotlin的早期(1.0版之前)版本中,这是唯一受支持的设置.之后,Kotlin Gradle插件变得更加灵活,因此不再需要目录分离.我不知道将Kotlin文件放在单独的源目录中可以获得任何好处.

当你有一个逐渐转换为Kotlin的Java项目时,拥有一个单独的源目录尤其不方便.将每个转换后的文件移动到不同的源目录会使转换过程变得更加麻烦.


vod*_*dan 5

由于文件的放置对 Kotlin 编译器没有多大意义,因此约定是“逻辑地”放置在模块中,就像处理 Java 文件一样。

例如,如果您决定通过将 Java 类转换为 Kotlin 来重构它,则生成的 Kotlin 文件应取代原始 Java 文件。