大咖直播-鸿蒙原生开发与智能提效实战!>>> 了解详情
写点什么

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:592180
用户头像

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

关注

评论

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

前沿成果 | 澳鹏Appen团队两篇研究论文被国际顶会收录

澳鹏Appen

人工智能 机器学习 计算机视觉 nlp 数据标注

安全可信| 天翼云算力调度平台通过信通院首批可信算力云服务评估!

天翼云开发者社区

Springfox与SpringDoc——swagger如何选择(SpringDoc入门)

天翼云开发者社区

分布式政企应用如何快速实现云原生的微服务架构改造

华为云开源

微服务 云原生

算云融合促发展,天翼云以领先云网算力助推数字中国建设!

天翼云开发者社区

再获权威认可!MIAOYUN入选中国信通院2022年度《云原生产品目录》

MIAOYUN

云计算 容器 云原生 容器云 容器云平台

数据库原理及MySQL应用 | 程序流程控制

TiAmo

数据库 sql

容器化,让数据库如虎添翼

沃趣科技

MySQL 数据库 云原生 容器化

智改数转:这个制造业的必答题该如何作答?

加入高科技仿生人

低代码 数字化 制造业 智能化 智改数转

国营单位工作4年转行网络安全,成功上岸安全开发!

网络安全学海

黑客 网络安全 信息安全 渗透测试 WEB安全

5月上海线下 · CSM认证周末班【提前报名特惠】“全球金牌课程”CST导师亲授

ShineScrum

保证高效写入查询的情况下,如何实现 CPU 资源和磁盘 IO 的最低开销?

TDengine

大数据 tdengine 数据处理 时序数据库 资源消耗

软件测试/测试开发丨如何高效使用 Requests 做接口自动化测试

测试人

软件测试 自动化测试 接口测试 测试开发 requests

软件测试/测试开发丨Chrome 浏览器+Postman还能这样做接口测试 ?

测试人

软件测试 Postman 自动化测试 接口测试 测试开发

【特别策划】2022年银行年报金融科技系列专题(一)

易观分析

金融科技 金融 银行

基于SpringBoot实现单元测试的多种情境/方法(二)

天翼云开发者社区

如何通过Java代码将添加页码到PDF文档?

在下毛毛雨

Java PDF 添加页码

从“卖船”到提供建造“航母” 的基础设施,用友BIP有底气

用友BIP

打破软件开发“不可能三角” 只需一个低代码方案

力软低代码开发平台

FastAPI 快速开发 Web API 项目: 定义路径参数和查询参数

宇宙之一粟

Python FastApi

明道云技术路径选择及与LCDP的比较

明道云

哪里有免费大文件传输平台?通过这4个网站免费来进行大文件传输

镭速

大咖说丨云计算:数字世界的“中枢神经”

天翼云开发者社区

5月在线 · A-CSM认证周末班【提前报名特惠】“敏捷教练必修课程”CST导师亲授

ShineScrum

5月上海线下 · CSPO认证周末班【提前报名特惠】“价值交付课程”CST导师亲授

ShineScrum

网上说低代码的一大堆,JNPF凭什么可以火?

引迈信息

前端 敏捷开发 低代码 快速开发 JNPF

龙蜥开发者说:历时三周,记录如何从 0 到 1 构建龙蜥衍生版 | 第 18 期

OpenAnolis小助手

开源 操作系统 龙蜥社区 浪潮信息 衍生版

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