欢迎来到 黑吧安全网 聚焦网络安全前沿资讯,精华内容,交流技术心得!

为什么你必须摒弃 Java,全面转向 Kotlin 语言

来源:本站整理 作者:佚名 时间:2017-06-04 TAG: 我要投稿

我想告诉你一个名为 Kotlin 的新的编程语言,以及为什么你要开始考虑使用它来开发你的下一个项目。我以前喜欢 Java ,但是去年我发现了 Kotlin ,只要有可能我就会用 Kotlin 来写代码。现在我实在无法想象有什么地方只有 Java 能做,而 Kotlin 不能的。
Kotlin 是 JetBrains 开发的,这是一家开发了一整套 IDEs 的公司,诸如 IntelliJ 和 ReSharper, 还有正在闪耀光芒的 Kotlin。这是一个务实而且简洁的编程语言,真正让人感觉身心愉悦的编程语言,而且效率非常高。
尽管 Kotlin 最终编译成 JavaScript ,很快也将编译成 机器码,但我们仍将聚焦于其主要的环境 —— JVM。
这里有一堆你应该完全转向 Kotlin 语言的理由:
0# Java 互操作性
Kotlin是 100% 与 Java 具备互操作性的。你可以使用 Kotlin 继续你老的 Java 项目开发。所有你熟悉的 Java 框架仍然可用,任何框架,不管是 Kotlin 写的,还是你固执 Java 小伙伴写的都可以。
1# 熟悉的语法
Kotlin 不是诞生于学术界的怪异语言。其语法是 OOP 领域的任何开发者都熟悉的,可以或多或少的有一些了解。当然和 Java 还是有些不同的,例如重构后的构造函数以及使用 val 的变量声明等等。下面是一个基本的 Kotlin 示例代码:

2# 字符串插值
这相当于是更智能,更具备可读性的 Java 的 String.format() 方法的 Kotlin 实现:

3# 类型推断

4# 智能类型转换
Kotlin 编译器会跟踪你的逻辑代码并在需要的时候进行自动的类型转换,这意味着我们不需要在显示转换时做更多的 instanceof 检查:

5# 更直观的相等性比较
你不再需要调用 equals(),因为 == 操作符也可以用来比较结构的相等性:

6# 默认参数值
不需要像 Java 那样定义很多包含不同参数的相似方法:

7# 命名参数
结合默认参数值,命名参数可以消除 builders 的使用:

8# When 表达式

9# Properties
可以给公共字段自定义 set 和 get 行为,这意味着不再会因为那些没用的 getters & setters 导致代码疯狂膨胀。

10# Data 类
这是一个 POJO 类,包含 toString(), equals(), hashCode(), 和 copy()方法,和 Java 不同的是,它不会超过 100 行代码:

11# 操作符重载
可以重载预定义的一组操作符来提升代码的可读性:

12# 解构声明
一些对象是可以解构的,一个很有用的例子就是对 Map 进行迭代:

13# Ranges

14# 扩展函数
还记得你第一次用 Java 实现一个 List 的排序吗?你找不到一个 sort() 函数,然后你就四处求助,最终找到了Collections.sort()。后来你需要将一个字符串的首字符变成大写,最终你还是自己写了一个方法来实现,因为你当时还不知道有这么个东西StringUtils.capitalize().
如果只有一种方法可以向已有的类添加新的函数,这样 IDE 就可以帮助你在代码完成时找到正确的函数。在 Kotlin 里你可以这么做:

[1] [2]  下一页

【声明】:黑吧安全网(http://www.myhack58.com)登载此文出于传递更多信息之目的,并不代表本站赞同其观点和对其真实性负责,仅适于网络安全技术爱好者学习研究使用,学习中请遵循国家相关法律法规。如有问题请联系我们,联系邮箱admin@myhack58.com,我们会在最短的时间内进行处理。
  • 最新更新
    • 相关阅读
      • 本类热门
        • 最近下载