java开发ria是指什么_Java对RIA的解释:JavaFX

最近JavaOne会议正在如火如荼的进行中

SUN每年都会发布一些新产品

今年我比较感兴趣的是JavaFX

粗一看以为是SUN的一个动态语言

看了几个例子以后发现远不是那么简单啊~

SUN是想要靠这个东西和

Microsoft: WPF/SliverLight

Adobe: FLEX/Apolo

在RIA市场上拼一把的!

JavaFX不是一个产品,是一个家族

目前发布的JavaFX家族的产品有JavaFX Script,JavaFX Mobile

当然,这个家族的东西都是开源的(Java都开源了嘛!)

下了几个例子,感觉都不错,效果完全可以和Flash一拼了!

09053818421.jpg

09054401071.jpg

以上是JavaFX官网的两个例子(需

要JRE

1.5以上),是模仿Flash的Application用JavaFX重写的。据我使用下来的结果看,和原版的Flash相似度达到98%,只有字体和

Flash有点不一样。最重要的是这些Applicaton都是基于Swing的,用Java2D或者Java3D渲染。所以,所有能用Swing的地

方,都能用JavaFX,再所以,所有有JRE的地方就能跑JavaFX,cool~cool~而且,SUN还创建了JavaFX

Script这样的动态语言来帮助编写这类应用程序。

在我看来JavaFX Script是Java和VRML的混血儿,看一段代码:

import javafx.ui.canvas.*;

import javafx.ui.*;

Canvas {

content: Group {

transform: translate(20, 20)

content: ImageView {

transform: []

image: Image { url: "javafxpad/images/duke.gif" }

}

}

}

再来一段

import javafx.ui.*;

import javafx.ui.canvas.*;

class AnimationExample extends CompositeNode {

attribute width: Number;

attribute height: Number;

attribute opacityValue: Number;

attribute rotationValue: Number;

}

// Initial values

attribute AnimationExample.width = 200;

attribute AnimationExample.height = 100;

attribute AnimationExample.opacityValue = 1.0;

attribute AnimationExample.rotationValue = 0;

function AnimationExample.composeNode() =

Group {

content:

[Rect {

width: bind width

height: bind height

arcHeight: 20

arcWidth: 20

opacity: bind opacityValue

transform: bind [translate(80, 50), rotate(rotationValue, width/2, height/2)]

fill: dodgerblue

stroke: darkblue

strokeWidth: 2

},

//......

}

;

Canvas {

content: AnimationExample {

}

}

熟悉VRML和Java的人一定觉得很眼熟。既有Java的优点(面向对象,继承等等),又有VRML的优点(图形描述)。而且这个东西非常适合开发拖拉式的IDE。现在Netbeans 5.5已经支持JavaFX语法了,GUI的估计也快了。再说VRML/X3D,这个东西确实是扶不起的阿斗!如果以后WPF/FLEX/JavaFX都彻底支持3D了,那VRML/X3D就彻底GAME OVER了。

JavaFX确实是让人眼前一亮的东西,不过我还是优点为她的前途担忧:

1. 推出时间太晚

现在Flash已经非常成熟,FLAX/Apollo也已经到了推广阶段,SilverLight也开始提供下载,而SUN现在才推出JavaFX的测试版本,是不是太晚了?如果早了一年呢?

2. 速度

Swing慢是众所周知的,虽然SUN已经花了大力气,而且确实有成效,不过相对其他应用程序来说还是慢了一点。如果SUN能解决Swing的速度问题,那么凭借JavaFX,Java Applet翻身的机会也不是没有,Web Start更可以和Apollo拼一拼。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值