NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

WidgetFX: 用 JavaFX 编写的桌面 Widget 平台

  • 2008-09-06
  • 本文字数:1775 字

    阅读完需:约 6 分钟

WidgetFX 是一个使用 JavaFX 脚本语言编写的开源桌面 widget 平台。它利用了 Java Consumer JRE 的最新功能,能够运行在所有主流操作系统上,包括 Windows XP/Vista、Linux 和 Mac OS X。WidgetF 宣称其具备若干胜过其他 widget 容器的优点

  • 开源——WidgetFX 是一个完全开源的 widget 容器(widget 本身可以商业注册)。
  • 支持跨平台——目前存在很多 widget 框架,但彼此并不兼容,没有实现真正跨平台。WidgetFX 能够运行在所有主流操作系统上,包括 Windows XP/Vista、Linux 和 Mac OS X。
  • 健壮的安全模型——将 web 技术迁移到 widget 上导致了巨大的安全漏洞,这是一个所有基于 Javascript 的 widget 框架都要面临的问题。然而,WidgetFX 通过利用 Java 平台的安全沙箱实现了健壮的安全模型(预计在 0.2 版中发布)。
  • 富 桌面应用——大多数 widget 容器将传统 web 技术比如 HTML、CSS 和 Javascript 等移植到桌面上,而桌面系统又不允许它们利用富互联网应 用(RIA)的优点。然而,WidgetFX 设计目标就是通过提供一套非常丰富的视觉、动画和媒体库实现富桌面应用(RDA)的前端。

WidgetFX 的部署也有别于目前的 Java (Applets/Web Start):

  • 内存占用低——applets 在同一个浏览器中可以使用同一个虚拟机,一旦把它们拖拽到桌面上它们就失去了这个能力。对于大量的 widget 来说,这会导致内存和 JVM 启动时间的猛增。

  • 开放启动过程——Widget 容器会随着系统自动启动,并运行所有上一次关闭时还在工作的 widget。虽然你可以对一个 web-start 应用添加一个 hook 来实现这个功能,但是这不如让用户“期望”你的 widget 在启动时就存在。

  • Widget 共鸣——Widgets 正在成为主流,虽然它们可以与桌面应用相提并论,但是如果 Java 无法提供一个可行的产品,它将被踢出这个舞台。最尖锐的观点可能来自 w3c 的 Widget Landscape 报告:

  • “ 3.2 与 Java Applets 的区别…… 人们已经证实最明显的区别是 widget 比 Java applets 更便于用户创建……Applets 被用来运行在网页内,而 widget 在本文档中被描述成作为独立于浏览器的应用运行的。”

  • WidgetFX 通过 JavaFX 脚本语言直接满足了这些需求,简化了 widget 的创建和桌面集成特性,这使得 WidgetFX 有别于标准的 Java applets。

WidgetFX 开发人员Stephen Chin通过 InfoQ 解释了自己的观点:

WidgetFX 0.1 版的目标用户是对创建新型桌面 widget 感兴趣的开发人员。Widgets 可以混合采用 JavaFX 脚本和 Java,充分利用一整套丰富的视觉、动画和媒体库。为了简化开发,WidgetFX SDK 包括了一个轻量级的 Widget Runner、完整的 API 文档和入门教程。0.1 WidgetFX Dock 和 Developer SDK 可以通过 http://widgetfx.org/ 下载。

桌 面 widget 引擎作为一种部署轻量级常用应用(例如时钟、幻灯片播放和 web feeds)的方式已经变得日益受欢迎。WidgetFX 是一个全功能的桌面 widget 组装系统,支持半透明效果、阴影窗口、重置大小、配置和一键安 装。不像其他商业产品,WidgetFX 完全开源,全部采用 JavaFX 脚本编写,可以运行在任何支持 Java 运行的平台上,包括 Windows XP/Vista,Linux 和 Mac OS X。

正如Joshua Marinacci所说, Widget 基于 AB5k(又名 Glossitope)项目的代码库

当我很忙以致于无法完成我发起的开源项目时,我总是很难过。但是,当我提出一个想法,得到别人的认可,并觉得他们能把这个想法做的更好,并且结果也的确是这 样时,我真的非常高兴。典型的例子就是 AB5k(又名 Glossitope、Java 新的 widget 系统)。我在两年之前开始这个项目,在 JavaOne 2007 会议上做了演示。在我使用 JavaFX 开始工作之后,该项目就遇到了技术难题,花费了我全部的时间。因此,项目终止了。

今年早些时候,Stephen Chin给我发电子邮件提到 AB5k 项目的代码,询问这个项目是否在进行中。我说没有,但是代码依然可以分享给任何人。同时,我也建议采用 JavaFX 取代 Java,因为 JavaFX 已经解决了很多我曾经遇到的很多问题(例如透明窗口和可视化组件)。因此,Stephen发起了一个新的项目: WidgetFX: JavaFX 桌面 Widget 平台

虽然该项目依然在萌芽阶段,但是依靠 JavaFX,相信它可以成长为优秀的平台。

您可以阅读 WidgetFX 的快速指南或者下载最新版本。更多富因特网应用的信息,请访问: http://www.infoq.com/ria

查看英文原文: WidgetFX: A Desktop Widget Platform Written in JavaFX

2008-09-06 06:591662
用户头像

发布了 501 篇内容, 共 248.4 次阅读, 收获喜欢 57 次。

关注

评论

发布
暂无评论
发现更多内容

【高并发】导致并发编程频繁出问题的“幕后黑手”

冰河

并发编程 多线程 高并发 高性能 异步

JavaScript 对象 — 重学 JavaScript

三钻

Java 大前端 对象

手撕面试题:多个线程顺序执行问题

大头星

Java 面试 多线程

第二周作业

小兵

与其思考公司该为员工提供什么福利,不如思考有哪些 “福利” 不应该提供!

非著名程序员

个人成长 管理 福利

甲方日常 41

句子

工作 随笔杂谈 日常

Netty源码解析 -- 内存对齐类SizeClasses

binecy

Netty 内存管理

架构师训练营 - 第 6、7、8、9、10 、11、12、13周学习总结(1 期)

阿甘

GitHub上最励志的计算机自学教程(重制版),前端小白到亚马逊工程师

沉默王二

GitHub 学习 程序员 面试

对抗验证概述

计算机与AI

学习 数据验证

TronChain波场链合约系统开发技术

薇電13242772558

区块链 智能合约

第二周总结

小兵

架构师训练营 - 第二周学习总结

joshuamai

架构师训练营 -week06-作业

大刘

极客大学架构师训练营

面试官问我:看过sharding-jdbc的源码吗?我吧啦吧啦说了一通!!

冰河

分布式事务 微服务 分布式数据库 系统架构 中间件

【JSRC小课堂】Web安全专题(三)SRC漏洞挖掘技巧:三步走收集高质量信息

京东科技开发者

WEB安全

架构师训练营 - 第 6 周课后作业(1 期)

阿甘

Javassist实现JDK动态代理

AI乔治

Java 编程 架构 jdk

京东推荐系统中的兴趣拓展如何驱动业务持续增长?

京东科技开发者

算法 推荐系统 知识图谱

使用 Maven Archetype 基于 IDEA 快速创建项目

程序员小航

Java maven 开发 项目 Archetype

会展云技术解读丨多重安全保障护航云上会展

京东科技开发者

云计算 云服务 云平台

Mac/Windows 连接 Ubuntu 的 samba 服务器

jiangling500

ubuntu Mac windows Samba

创新方案百花齐放,英特尔助力2020 EdgeX中国挑战赛推动智能边缘行业创新及人才发展

E科讯

从实际案例聊聊Java应用的GC优化

AI乔治

Java 编程 架构 JVM GC

直播带货需要运营者实名验证:规范行业有利于健康发展

石头IT视角

架构师第一期作业(第 6 周)

Cheer

工作5年的阿里Java程序员分享从业心得总结与面试笔记分享

Java架构师迁哥

本文将大数据学习门槛降到了地平线

MySQL从删库到跑路

大数据 hadoop hdfs mapreduce

JVM 源码解读之 CMS GC 触发条件

AI乔治

Java 架构 JVM GC

英特尔第十一代处理器 (代号Rocket Lake-S) 架构详情

E科讯

架构师训练营第六周作业

Shunyi

极客大学架构师训练营

WidgetFX: 用JavaFX编写的桌面Widget平台_Java_Dio Synodinos_InfoQ精选文章