官术网_书友最值得收藏!

Concise yet expressive code

While being interoperable, Kotlin code is far superior to Java code. Like Scala, Kotlin uses type inference to cut down on a lot of boilerplate code and makes it concise. (Type inference is a better feature than dynamic typing as it reduces the code without sacrificing the robustness of the end product). However, unlike Scala, Kotlin code is easy to read and understand, even for someone who may not know Kotlin.

Kotlin's data class construct is the most prominent example of being concise as shown in the following:

    data class Employee (val id: Long, var name: String) 

Compared to its Java counterpart, the preceding line has packed into it the class definition, member variables, constructor, getter-setter methods, and also the utility methods, such as equals() and hashCode(). This will easily take 15-20 lines of Java code.

The data classes construct is not an isolated example. There are many others where the syntax is concise and expressive. Consider the following as additional examples:

  • Kotlin's default values to function parameters save the need to overload the functions
  • Kotlin's extension functions can be used to add domain-specific functionality to existing classes, making it easy for someone from the domain to understand
主站蜘蛛池模板: 邛崃市| 安阳县| 巨鹿县| 宁阳县| 陵水| 麟游县| 宁河县| 夹江县| 黑河市| 兴安盟| 建始县| 凤山市| 泰来县| 祥云县| 和林格尔县| 阿克陶县| 上犹县| 合水县| 治多县| 当阳市| 白河县| 沈丘县| 马山县| 泊头市| 体育| 天门市| 弋阳县| 佳木斯市| 连城县| 响水县| 固始县| 辽阳县| 永济市| 汾阳市| 兴仁县| 济源市| 都兰县| 诸暨市| 鸡西市| 阳东县| 邢台市|