groovy、kotlin、scala等都是基于jvm平台的语言(都会编译成字节码),并且可以和java混合使用。
他们对java进行了不同程度的改良,语法结构、集合 *** 作方式、更多的语法糖、泛型的支持(java是伪泛型),更好的lambda表达式语法等等。一般来讲这些语言可以大幅度提高生产效率, 比如kotlin可以节省1/3的代码量。
从日常使用的角度,建议学习kotlin,当前kotlin已经被google确定为新任官方语言。如果做android开发,不至于再多学习一门语言。
这通常会提供更快捷
的应用程序开发能力,以及更高的编程生产力。但是,脚本语言和系统编程语言的目标是不同的。脚本语言被设计用于把应用程序集成起来,而不是实现复杂的数据
结构和算法。因此,为了保证实用性,脚本语言必须能够访问不同类型的组件。
通常,脚本语言不会替代系统编程语言。它们相互补充(Ousterhout, 1998)。一般来说,系统编程语言应该被用于如下目的:
开发复杂的算法或者数据结构
实现计算密集型应用
*** 作大型数据集
实现良好定义的、缓慢变更的需求
是大型项目的一部分。
但是,脚本语言应该被用于如下目的:
连接已有的组件
处理经常变化的多种类型的实体
拥有快速变化的功能
是小型或者中型项目的一部分。
相对于系统编程语言,脚本语言的主要长处是所需的编码工作量相对少。通常,系统编程语言的代码看起来非常复杂,难以维护。这是因为系统编程语言的代码需要大量的模板或者转换代码。
系统编程语言是强类型的,能够确保代码的安全性和健壮性。在强类型语言中,变量必须被指定为一种类型,只能按照固定方式使用。尽管强类型特性使得大
型程序的可管理性更好,并且允许编译器(静态地)检测特定类型的错误,但可能有时候起不到类型安全保护作用。比如,当事先很难或者不可能决定变量的类型
时,强类型是没有用处的。当连接组件时,这种情况会经常发生。
为简化组件连接任务,脚本语言被设计成弱类型。这意味着,在不同环境下,变量可以以多种方式使用。但是,当代码被实际执行时,才会检测变量是否被非
法使用。比如,尽管Groovy在编译时(静态地)检查程序的语法,(动态地)检测方法调用是否正确发生在运行时。最终结果是,正确编译的Groovy脚
本在运行时也许会抛出异常,甚至导致非正常结束。
弱类型并不意味着代码是不安全的,或者不健壮。极限编程(Beck,
2004)已经成为一种软件开发方法。这个方法注重测试,使用全面的单元测试方案(Link,
2003)来驱动开发过程。通过在不同环境下执行所编写的代码,就可以保证代码的安全性和健壮性。当开发Groovy脚本时,单元测试应该是基础的开发过
程。实际上,开发经验已经证明,在弱类型语言中,综合运用弱类型和单元测试通常比传统系统编程语言的强类型检测更好。这样的话,就同时拥有弱类型的灵活性和单元测试的全面保障。
以上就是关于Java程序员为什么学习Groovy全部的内容,包括:Java程序员为什么学习Groovy、为什么使用脚本语言、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)