影视公司网站建设,中山全麦网站建设,法律咨询网站建设方案,网站建设drwhcmgradle groovyJava开发人员最感兴趣的Groovy用例有哪些#xff1f; 尽管已经有一段时间了#xff0c;但似乎只有Groovy最近才开始使用Groove。 对于某些人来说#xff0c;它基本上只是另一种深奥的JVM语言#xff0c;但是由于一些流行的工具可以帮助您使用Java#xff0c… gradle groovy Java开发人员最感兴趣的Groovy用例有哪些 尽管已经有一段时间了但似乎只有Groovy最近才开始使用Groove。 对于某些人来说它基本上只是另一种深奥的JVM语言但是由于一些流行的工具可以帮助您使用Java因此它比您想象的要流行。 在下面的文章中我们将检查Groovy和Java之间的连接是什么并尽力抓住Groovy双关语。 我们提前致歉。 几乎和Java一样 是什么让Groovy变得如此时髦呢 这是一种面向对象的JVM语言。 这种动态语言是开源的并得到Apache和Groovy社区的支持。 这意味着您将找到围绕它的选项功能和工具包括Web框架桌面应用程序框架并发/异步/并行库测试框架等等。 Groovy使用大括号语法这使Java开发人员更容易学习和使用。 但是它包括一系列与Java区别的功能例如 静态和动态类型化在运行时解释变量的类型时 运算符重载 关联数组 嵌入字符串中的表达式 安全导航操作员“”。 自动检查是否存在null –这很有意义因为NullPointerException是生产中最常见的异常类型 没有分号 在Groovy官方网站上指出该语言旨在通过简洁熟悉和易于学习的语法来提高开发人员的生产率。 换句话说如果您了解Java就可以立即学习和使用Groovy。 您可以将Groovy与任何Java程序集成在一起以获得脚本功能特定领域的语言编写运行时和编译时元编程以及函数式编程。 其他功能包括闭包构建器类型推断和静态编译。 Groovy还具有“脚本和测试胶”。 这意味着Groovy是编写“紧凑”和可维护的测试以及构建和自动化任务的理想选择。 但是这里最大的问题是特定领域语言创作DSL它使您可以创建关键字和语法来表达问题域的更高抽象表示。 更容易将其视为非程序员获取信息的解决方案。 如果公司中有需要提取数据创建剪切或执行任何其他任务的分析师则可以为他们创建自定义语言。 这样他们不必知道如何编程而只需熟悉所需测试所需的语法。 以下是一些DSL示例可使其更加清晰 // equivalent to: turn(left).then(right)
turn left then right// equivalent to: take(2.pills).of(chloroquinine).after(6.hours)
take 2.pills of chloroquinine after 6.hours// equivalent to: select(all).unique().from(names)
select all unique() from namesshow { println it }
square_root { Math.sqrt(it) }def please(action) {[the: { what -[of: { n - action(what(n)) }]}]
}// equivalent to: please(show).the(square_root).of(100)
please show the square_root of 100
// 10.0 如果您想开始使用Groovy我们建议您查阅官方文档 。 数字不说谎 万一您仍然对Groovy 持反对态度 还可以快速了解一下TIOBE索引该索引衡量编程语言的流行性。 在其中您会发现Groovy是2016年7月最受欢迎的20种编程语言之一。 在就业市场上也有兴趣。 在我们的最新职位之一中 我们处理了351,799个职位空缺 发现对Groovy开发人员的需求不断增长。 美国JVM语言工作趋势 Groovy在我们的Java项目中适合什么地方 当开始一个全新的Java项目时我们大多数人选择的第一个入门工具是Maven和JUnit。 但是随着项目的发展一段时间后需求发生了变化我们发现自己想要比以前更多的自定义。 那时Maven通常被Gradle取代。 或者至少这就是我们在开发Takipi时经历的旅程。 Gradle是Groovy内置的工具可帮助我们使用Java。 听起来很棘手但实际上使用一种语言与另一种语言一起工作确实很有趣。 另外在使用了一段时间并了解了Groovy之后我们可以使用一种新的语言这对我们总是很有趣。 现在唯一剩下的问题是我们还能将其用于什么 简单的答案就是工具。 但是哪一个呢 从Gradle开始 Gradle是一个开放源码的构建自动化系统它使用用Groovy编写的特定领域语言而不是Maven的XML配置。 它可以帮助您自动化不同的任务例如构建测试发布部署等。 您还可以创建其他类型的项目来生成静态网站文档或其他任何内容。 它是为具有增长潜力的大型多项目构建而设计的同时仍为增量构建提供支持您可以在其中添加一些小软件直到达到最终目标。 Gradle可以确定构建树的哪些部分是最新的因此依赖于那些部分的任何任务都无需重新执行。 这样Gradle消除了代码冻结并允许QA团队在处理另一个零件时检查某个零件。 您甚至可以使用它来协调单个开发人员版本到IDE级别的持续集成CI版本。 如果您发现您的队友正用他们的nerf枪弄乱或者只是放松一下 Gradle也会在该领域提供帮助。 有了它您可以快速发货而不会在办公室中浪费太多的“编译”时间因此您实际上可以完成一些工作。 如果您是Maven爱好者或者仍然不确定转移到Gradle可以如何帮助您的项目则后者在下面的链接中创建了两者之间的完整功能比较。 不只是DSLGrails Web框架 Grails Web框架希望通过Convention-over-Configuration范式帮助您提高生产率。 怎么样 通过为您提供独立的开发环境同时隐藏大部分配置细节使您可以专注于重要的事情。 或者换句话说 它旨在使开发尽可能简单。 它支持在单个界面上重用Hibernate和Spring等现有Java技术提供可自定义和可扩展的Ajax支持并且基本上提供了完整的开发模式包括Web服务器和资源的自动重载。 在官方网站上您可以找到选择Grails的主要网站包括Netflix Asgard用于Amazon Web ServicesVodafone 等应用程序部署和云管理的Netflix开源Web界面。 转向Spock 如果Gradle已经是您公司的一部分那么该该看看Groovy必须提供哪些其他工具了。 Spock最近已成为许多Java开发人员选择的模拟和测试框架的领先者。 Spock由Peter Niederwieser和Luke Daley于2008年创建专门为Java和Groovy应用程序而开发。 该单元测试工具与大多数IDE构建工具和持续集成服务器兼容能够处理软件应用程序的整个生命周期。 它扩展了JUnit运行器该运行器用于运行测试类因此它可以与您在JUnit框架中使用的当前工具配合使用。 如果您要从一个框架迁移到另一个框架那将是一个非常平稳的过程。 DSL在此框架中起着很大的作用使您可以使用简单的语法编写测试。 这意味着测试可以由公司中的任何人完成而不仅仅是开发人员。 您可以通过其Web控制台测试Spock。 也检查这些 尽管我们只选择关注这3个与Groovy相关的项目但还有许多其他选项值得一看。 感谢社区您可以找到与Groovy相关的项目的一长串例如 GPars –直观安全的方式同时处理Java或Groovy任务 Ratpack –用于创建高性能Web应用程序的工具包 Griffon –在JVM中开发桌面应用程序的应用程序框架 Sdkman –用于在大多数基于Unix的系统上管理多个软件开发套件的并行版本的工具 这些只是冰山一角还有更多的Groovy项目。 最好的开始方法是检查Github上热门的Groovy项目 。 最后的想法 当涉及可用的框架工具和实用程序时Java开发人员有很多选择而不是全部用Java编写。 实际上由于Java开发人员编写了令人印象深刻的工具因此他们在一个或另一个项目中有很好的机会接触Groovy。 由于该语言与Java非常相似因此它的优点是立即可以轻松学习和使用。 牢记所有这些根据您当前项目的需求最终选择使用GradleSpockGrails还是任何其他Groovy或非Groovy框架。 如果您遇到任何其他Groovy或简单的groovy框架我们很乐意在下面的评论中听到它们。 翻译自: https://www.javacodegeeks.com/2016/08/groovy-java-developers-meet-gradle-grails-spock.htmlgradle groovy