17th 四月 2009
在云计算基础设施提供的开放存储和弹性计算环境上,搭建与自身业务相关的应用程序或Web服务,需要公有云为开发者提供良好的API支持。
前不久的CommunityOne East大会上,Sun发布了完整的云计算解决方案策略和线路图,同时介绍了云计算实现的核心组件,包含虚拟数据中心(Virtual Data Center);源于加州大学圣巴巴拉分校,提供开源云计算基础设施且兼容Amazon EC2接口的Eucalyptus项目;与S3相似的云存储服务(Storage Service);开源的数据存储备份与恢复工具Zmanda,以及Sun云计算的Open API和RESTful API开发接口。
Sun Cloud API项目托管在Kenai项目主页上,旨在通过RESTful API形式为开发者提供创建和管理云计算资源的调用接口,可操作的资源包括计算、存储和云端网络组件等。服务端资源以JSON格式进行描述,其绝大多数API方法使用HTTP的GET和POST操作实现。
目前Cloud API规范已趋于完善,规范包含资源请求响应的通用行为(Common Behaviors)、描述JSON格式数据结构的资源模型、发送至云端资源的请求和响应格式等。Cloud API定义的资源模型是用户可获取云端资源的展现,同时提供对云计算环境、相关组件、以及云计算环境中多个虚拟数据中心(VDC)的访问。
Could API的实现非常简化,避免了操作上不必要的复杂性。除了已提到的通用行为和资源模型,还定义了VDC资源、虚拟机资源、集群(Cluster)资源以及公用地址(Public Address )资源等操作的规范。Could API使用方式,可以参看官方提供的起步示例。
QCon北京大会上,看到了使用Q-Layer部署虚拟数据中心(VDC)的演示视频,能够直接在可视化设计器的预置虚拟组件中,以拖拽连接的方式设计应用,组件囊括云端应用系统架构、建模、保存和部署的整个环节,同时提供了监控、管理与重新配置特性。演示中的云计算应用目前还没有正式发布,希望能够早日让开发者亲身使用。
Posted in 编程语言 | No Comments »
13th 四月 2009
JavaFX是运行在JVM上的脚本语言,能够帮助Java开发者快速编写RIA富互联网应用。
自2007年JavaOne大会上推出以来,由Chris Oliver创建的F3演变而来的JavaFX目前最新为1.1.1版本。在语法上,JavaFX融合了JavaScript、ActionScript等脚本语言的特征,当然如果经常接触Java代码,那么一定会对JavaFX的语法感到非常熟悉。
RIA技术的雏形在2002年Micromedia收购ColdFusion后首次出现,尽管其后以无页面刷新技术著称的Ajax因Google等厂商推动而变得流行,但在Micromedia被Adobe并购后,凭借在Flash技术上多年积累的经验和广大的用户群,Adobe的Flex和AIR(曾被称为Apollo的跨平台桌面应用开发库)又一次在RIA纷争中取得先机。
较之Flex、Ajax、Silverlight等主流的RIA技术,尽管JavaFX起步较晚,但在技术上自有其独到之处。除了可以使用JavaFX SDK提供的特效、动画功能之外,在JavaFX的代码中可以无缝调用JavaAPI和第三方Java类库,而Flex的ActionScript则没有多线程支持,尽管这在远程站点通讯调用时没有问题,但在编写客户端应用时则有其局限之处。并且,有开发者正尝试在Java代码中反向调用JavaFX定义的类,以便在应用的MVC分层中,表现层使用JavaFX代替Swing,而逻辑和控制层则由Java代码实现。
除此之外,已发布的JavaFX Mobile,让所有支持JavaME的移动终端成为展现JavaFX最富有表现力的平台。借助于JavaME的广泛应用,JavaFX在移动终端平台的优势是Flex和Silverlight短期内不容易超越的。
在IDE支持方面,NetBeans提供的JavaFX模块中,已集成了不少可拖拽添加的JavaFX组件。但在用户界面控件方面,较之Flex与Silverlight的开发工具还相对薄弱。不过Sun已计划发布JavaFX的2.0版本,并提供完整的用户界面组件,包含容器、导航条和布局控制等各个层面。
入手JavaFX的最好方式,是参考NetBeans JavaFX支持模块中自带的十多个示例项目,如果你熟悉Java,又想尝试RIA开发,那么从JavaFX开始将是个不错的选择。
Posted in 编程语言 | No Comments »