Kotlin删除了Java“每个文件的一个顶级公共类”限制,这是我学会了爱。我想知道是否有理由讨论这个问题以及是否有一些指导如何应对这种新的自由?
答案 0 :(得分:12)
您仍然可以将该Java规则用作约定,并在课程后命名您的文件。或者你可以开始将更多的类放入一个Kotlin文件中,在这种情况下,我建议在文件命名之后命名文件。每个文件通常都包含彼此相关的类或其他顶级元素(如果它们不相同,也许它们首先不属于同一个文件?)。应该有单个单词或少量单词表示单个文件中所有类的目的,这是文件名的自然候选者。
答案 1 :(得分:2)
在Kotling.org上,您可以找到Coding Conventions文档来回答所有疑问。
如果可以的话,我认为上述网页中的这些部分可能对您有用:
源文件名
如果Kotlin文件包含一个类(可能带有相关的顶级声明),则其名称应与该类的名称相同,并附加.kt扩展名。如果文件包含多个类,或仅包含顶级声明,请选择一个描述文件包含内容的名称,然后相应地命名该文件。骆驼驼峰使用大写的首字母(例如ProcessDeclarations.kt)。
文件名应描述文件中的代码。因此,应避免在文件名中使用无意义的词,例如“ Util”。
和...
源文件组织
鼓励在同一Kotlin源文件中放置多个声明(类,顶级函数或属性),只要这些声明在语义上紧密相关并且文件大小保持合理(不超过几百行) 。 特别是,当为一个类定义与该类的所有客户端相关的扩展功能时,请将它们放在定义该类本身的同一文件中。在定义仅对特定客户端有意义的扩展功能时,请将其放在该客户端代码旁边。不要仅为了保留“ Foo的所有扩展名”而创建文件。
...但是,请您参考文档,以解决您可能遇到的其他问题。
我认为要点是选择适合您团队的编码约定。就是说,我认为Kotlin.org约定可以被视为一种标准,除非有令人信服的理由,否则我希望任何Kotlin开发人员至少知道该标准,如果没有遵循,则是任何项目的默认选择。改变。