代码A来自official document,val Yellow200
使用的大写字母,但在许多示例项目中,我可以发现代码B是小写的.
我认为B代码是很好的方法,yellow200
不是常量,因为它经常使用大写字母.
为什么官方文件中的val变量使用大写字母?
Code A个
val Yellow200 = Color(0xffffeb46)
Code B个
val yellow200 = Color(0xffffeb46)
代码A来自official document,val Yellow200
使用的大写字母,但在许多示例项目中,我可以发现代码B是小写的.
我认为B代码是很好的方法,yellow200
不是常量,因为它经常使用大写字母.
为什么官方文件中的val变量使用大写字母?
Code A个
val Yellow200 = Color(0xffffeb46)
Code B个
val yellow200 = Color(0xffffeb46)
这是Jetpack Compose中的标准命名约定,并在API Guidelines中进行了描述.它在整个框架和库中使用,应用程序开发人员也可以 Select 性地遵循它.
Jetpack Compose framework development必须按照允许的对象声明约定
PascalCase
命名深度不可变的常量,作为对CAPITALS_AND_UNDERSCORES
的任何用法的替代.枚举类值还必须使用PascalCase
命名,如同一节中所述.当瞄准或扩展Jetpack Compose时,Library development应该遵循相同的约定.
App Development人可以遵循这一惯例.
如果您对阅读更多内容感兴趣,在同一文档中,他们为这一决定提供了一些理由.他们在那里引用的来源是Kotlin coding conventions,这实际上给了房产名称是否应该以大写字母开头的一些回旋余地.这并不像"所有变量都比卡梅尔凯斯低"那么简单.
Kotlin 风格指南说的是:
包含具有行为或可变数据的对象的顶级或对象属性的名称应使用驼峰大小写名称:
val mutableCollection: MutableSet<String> = HashSet()
个包含对单例对象的引用的属性的名称可以使用与对象声明相同的命名样式:
val PersonComparator: Comparator<Person> = /*...*/
个https://kotlinlang.org/docs/coding-conventions.html#property-names个
因此,在一般的Kotlin代码中,根据变量的使用方式, Select 使用小写还是大写首字母在某种程度上取决于您.
所谓的"单例对象"可能只是指使用对象表达式声明的对象,但将相同的命名约定扩展到像Color
类的单个不可变实例这样的东西并不是太大的飞跃.
同样的UpperCamelCase命名约定也可以用于枚举条目.您的示例中的Color
个实例在用法和用途上与枚举条目非常相似,我认为这是支持或更喜欢这里的大写首字母的另一个论点.
当前版本的Android Kotlin style guide在这里有点不那么宽松.它建议所有变量名都应该是LowerCamelCase,除了常量应该是UPERVOKE_CASE.在此基础上,Color
个变量的名称应以小写字母开头.
我认为你的‘A代码’和‘B代码’在风格上都是不错的,双方都有很好的论点.这取决于你读的是哪种风格指南,以及你是如何解读它的.当然,这还取决于您自己的个人偏好,以及您可能已经与合作者就您的代码库达成一致的共同约定.