写点什么

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

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

关注

评论

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

现代应用开发模式:PWA vs 小程序

Onegun

小程序 PWA

实例解读华为云数字工厂平台的逻辑模型编排器

华为云开发者联盟

数据库 后端 华为云 华为云开发者联盟 企业号 5 月 PK 榜

GitHub上13个高赞Java项目推荐,会一个就能跟面试官谈笑风生

Java你猿哥

Java 微服务 秒杀系统 网约车项目 java项目

SpringBoot 中实现定时任务的几种方式

做梦都在改BUG

Java Spring Boot

嘉为蓝鲸CMP多云管理平台解决方案成功入选!

嘉为蓝鲸

多云管理 IT运维 蓝鲸

发挥数据价值!数据驱动的日志解析与异常检测方法介绍!

嘉为蓝鲸

日志分析 管理日志 日志统计

嘉为蓝鲸DevOps流水线工具如何为企业研发赋能?

嘉为蓝鲸

DevOps 流水线 蓝鲸

胜面试官半子!阿里SpringBoot全栈笔记首发,源码实战齐飞

做梦都在改BUG

Java spring 微服务 Spring Boot 框架

还在服务器上捞日志?试试这款可视化监控系统吧,真香!

Java你猿哥

Java 日志 ssm 监控系统 Frostmourne

开源赋能 普惠未来|XuperCore诚邀您参与2023开放原子全球开源峰会

开放原子开源基金会

开源

浅谈财务共享未来发展趋势

用友BIP

业财融合 财务共享

火山引擎多云安全平台,破解多云异构场景下的安全挑战

科技热闻

开源赋能 普惠未来|铜锁/Tongsuo诚邀您参与2023开放原子全球开源峰会

开放原子开源基金会

开源

理解JVM工作机制(二) 对象的创建

Geek漫游指南

Java JVM Java web

百度工程师移动开发避坑指南——Swift语言篇

百度Geek说

swift 移动端 开发语言 企业号 5 月 PK 榜

Velocity不用愁!Velocity系统的前端工程化之路 | 京东云技术团队

京东科技开发者

Java 前端工程化 Web H5 Velocity.js 企业号 5 月 PK 榜

AntDB数据库参加开源数据库技术沙龙,分享全栈业务能力

亚信AntDB数据库

AntDB AntDB数据库 企业号 5 月 PK 榜

阿里SpringBoot实战手册横空出世!从此不再是易学难精

做梦都在改BUG

Java spring 微服务 Spring Boot 框架

JMeter笔记7 | JMeter脚本回放

测试 Jmeter 性能测试 自动化测试 接口测试

涅槃重生!字节大牛力荐大型分布式手册,凤凰架构让你浴火成神

Java你猿哥

架构 Kubernetes 分布式 架构师 分布式架构

40亿个QQ号,限制1G内存,如何去重?

Java你猿哥

Java ssm 布隆过滤器 BitMap 过滤器

使用 PAI-Blade 优化 Stable Diffusion 推理流程(二)

阿里云大数据AI技术

人工智能 优化 推理 Stable Diffusion 企业号 5 月 PK 榜

软件测试丨SeleniumIDE 自动化用例录制、测试用例结构分析

测试人

软件测试 自动化测试 测试开发 测试用例 selenium

JMeter笔记8 | JMeter关联

测试 Jmeter 性能测试 自动化测试 接口测试

我用ChatGPT,给RabbitMQ加了个连接池

Java你猿哥

Java 源码 ssm RabbitMQ ChatGPT

不吹不黑!阿里新产微服务架构进阶笔记我粉了!理论实战齐飞

做梦都在改BUG

Java 架构 微服务 Spring Cloud

背完这套Java面试八股文,自动解锁面试牛逼症被动技能

Java你猿哥

MySQL redis java面试 java基础 分布式微服务

又爆神作!阿里首发并发编程神仙笔记,差距不止一点点

做梦都在改BUG

Java 并发编程

面试官:怎么保证Kafka的消息不丢失

做梦都在改BUG

Java kafka 面试 消息队列 消息中间件

为什么老有人想让我们“程序员”失业?征文获奖作品合集

InfoQ写作社区官方

技术专题合集 热门活动 三周年征文

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