设为首页收藏本站

LUPA开源社区

 找回密码
 注册
文章 帖子 博客
LUPA开源社区 首页 业界资讯 技术文摘 查看内容

JVM 平台上的各种语言的开发指南2

2013-7-9 14:16| 发布者: 红黑魂| 查看: 3086| 评论: 0|来自: 51CTO

摘要: Groovy“Groovy有超过Java将能够提供的甜点,例如它具有轻易地在宿主程序中嵌入并编译,以提供定制业务规则的能力,还有它如何为领域特定语言(Domain-Specific Language)提供优雅,简洁并且可读性好的语法的能力.” ...

你最喜欢的,用Groovy写成的应用程序/框架/库是什么?还有为什么你对它饱含激情?你能说出超过一种么?

“那很简单,我最感到热情的就是Griffon,一个基于JVM的桌面应用程序开发平台。Groovy被用于作为框架中的原生语言,而其他JVM语言可能 也被这样对待。对于web开发,没有Grails我不会知道我会怎样编写web应用,简单来说这东西不用提刷新,还有点意思。Gradle是我工具箱中另 外一个宝贝,不管什么时候一有机会我就用它。最后,Spock展示了Groovy编译器的强大,还有AST表达式通过一个简单但是十分强大的测试DSL进 行处理。”

Andres Almiray,
Groovy 提交贡献者

Fantom

“Fantom是一个优雅的,强烈关注并发和可移植性的新一代语言。不可变性深深融入了Fantom 的类型系统,并且并发使用了演员(actor)模型。Fantom是着意于轻便性来设计的,并且对于Java VM和JavaScript/HTML都有产品质量级别的实现。Fantom务实于关注静态类型的风格,但是也能轻易的允许进行动态编程。它是一种面向对 象语言,但也包含了第一类函数(first class functions),并且许多的标准API都应用了闭包。”

Brian Frank,
Fantom创始人

Fantom入门

Fantom同我们在这个报告中观察的大部分其他语言有一点点不同之处,它的目标是多平台。基于JVM、.Net和JavaScript的编译现在都已经提供支持了,并且鉴于他们已经就位的基础设施,它应该也可能瞄准了其它的目标平台。

但是尽管可移植性和平台成熟度因素是Fantom作者(Brian 和 Andy Frank)考虑的重要问题,它也不是他们要定义这门语言的出处。他们声称Fantom是一个实用的语言,就是为了干实事的。

第一步要做的就是设置环境还有工具。幸运的是,Fantom使得这对于我们来说很容易。Xored搞了一个称作F4的基于Eclipse的IDE,它包含了我们需要让Fantom运行起来的一切。

Pod/脚本(Script)

Fantom可以将文件作为脚本执行,你只需要在文件中放置一个带有main方法的类,并且有一个可执行的扇子(fan)就可以运行它了。

class HelloWorldishScript

{
 static Void main() { echo("Woah! Is it that easy?") }
}

然而那不是构建Fantom程序的主要方法。对于大型的项目和提前编译好模块的产品级系统,称作Pod,是使用Fantom的构建工具创建的。

构建是通过一个构建脚本编排的,它本质上是Fantom代码的另一块。下面是HTTP服务器样本Fantom实现的构建脚本:

using build
class Build : build::BuildPod
{
 new make()
 {
  podName = "FantomHttpProject"
  summary = ""
  srcDirs = [`./`, `fan/`]
  depends = ["build 1.0", "sys 1.0", "util 1.0", "concurrent

1.0"]
 }
}

这里有几个事项需要注意,例如依赖规范允许我们用比jar包更少烦恼的方式,更加容易的构建更大型的系统。另外,一个Pod不单单只定义部署命名空间,还 有类型命名空间,统一和简化了两者。现在你可以发现我们的服务器依赖的Pod:sys、util和concurrent。



酷毙
2

雷人

鲜花

鸡蛋
1

漂亮

刚表态过的朋友 (3 人)

  • 快毕业了,没工作经验,
    找份工作好难啊?
    赶紧去人才芯片公司磨练吧!!

最新评论

关于LUPA|人才芯片工程|人才招聘|LUPA认证|LUPA教育|LUPA开源社区 ( 浙B2-20090187 浙公网安备 33010602006705号   

返回顶部