写点什么

AsWing:Java 开发者的 ActionScript 朋友?

  • 2009-03-01
  • 本文字数:1404 字

    阅读完需:约 5 分钟

长久以来 Java Swing 一直是 Java 开发者主要的图形界面构建包,那么 Java Swing 的经验和技巧能否用于构建基于 ActionScript 3 的 RIA 系统呢? AsWing Framework 的目标就在于此。InfoQ 有幸采访了 AsWing 的首席开发者 iiley Chen 以了解 AsWing 是如何有助于 RIA 开发的。

在被问到为何创建 AsWing 而不是使用其他的 UI 框架时,iiley Chen 说到:

确实,Flex 出现之前有很多很酷的框架,但大多数都不易使用并且功能不完全。很多框架都缺少一些重要的组件,如 Tree、DataGrid 及强大的布局管理器等等。在 2005 年开发第一个大型应用(一个 Flash 做的在线社区)时,我需要一个强大的 UI 框架。我有 Java Swing 的经验并且喜欢 Swing 的架构和设计模式。但我坚信如果有一个类似于 Swing 的 Flash UI 框架的话,我可以快速且舒服的构建出应用的 UI。因此我开始用 ActionScript2 语言开发 AsWing 并保持其大部分 API 与 Swing 一致。现在 AsWing 已经基于 ActionScript3 了并且重新进行了设计,同时还多次进行了重构。一些家伙甚至告诉我它比 Swing 和 Flex 还要好用。谢谢他们,他们让我觉得开发 AsWing 是件有意义的事。

关于 AsWing 的主要优势和特点,Chen 说到:

主要优势在于你可以使用纯 ActionScript 编码轻松构建流式 / 动态的 UI。AsWing 的核心仅仅是一些易于操纵和管理的 ActionScript 类。如果你具有 Java Swing 经验,那么这些技巧也可以用到 AsWing 上。 AsWing 提供了 40 多个现代的 UI 组件,包括专业的 ColorMixiers 和一些特别的组件,如 JLabelButton、Form、Folder 及 GridList。

此外,凭借设计良好的 MVC 模式,你可以轻松将数据更新到 UI 视图上。就像 Flex 拥有数据绑定一样,AsWing 也有各种数据模型,他们会自动通知视图进行更新。

其中的 SkinBuilder 工具可以帮助开发者创建完全不同的皮肤,所用的方式仅仅是提供一些组件图片或是 Flash 符号。除此之外,GuiBuilder 有助于 UI 的布局设计并生成 ActionScript 源代码。

最后,AsWing 不是重量级的。并不像其他的 UI 框架(他们也是应用框架),AsWing 只关注于 UI。你可以将 AsWing 与任何其他的应用框架组合起来使用。

就开发环境来说,AsWing 非常灵活。Chen 说到:

AsWing 的开发没有什么特别之处。任何 ActionScript 开发环境都可以,比如说 Flex Builder、FDT 及 FlashDevelop 等等。AsWing 仅仅是个项目中可以使用的 ActionScript 库。你可以使用 Flex 编译器或是 Flash 编译器来编译 AsWing 应用。其中的 GuiBuilder 工具是个 AIR 应用,因此需要 AIR 运行时才能运行它。

就 AsWing 的路线图,Chen 说到:

目前我正忙于 AsWing2.0,这是个主版本。我们将用更好的方式重新设计其感官样式。最重要的新特性就是新的皮肤技术的引入。你只需就倾斜度、色调、圆角或阴影属性编写几行代码就可以改变组件样式而无需开发复杂的 ComponentUI 类。同时我们还会增加一些新组件,如 Numeric Stepper、Date Chooser、Advanced TextArea 及 Advanced Table 等等。

Chen 给出了如下的 Hello World AsWing 应用代码:

package{
import flash.display.Sprite;
import org.aswing.*;
public class HelloWorld extends Sprite{
public function HelloWorld(){
AsWingManager.initAsStandard(this);
JOptionPane.showMessageDialog(“Title”, “Hello World!”);

}
}
}

Java Swing 开发者对此是不是很熟悉呢?

查看英文原文: AsWing, An ActionScript Fiend of Java Developers?

2009-03-01 08:382380
用户头像

发布了 88 篇内容, 共 273.7 次阅读, 收获喜欢 9 次。

关注

评论

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

【课程汇总】OpenHarmony成长计划知识赋能第三期系列课程(附链接)

OpenHarmony开发者

OpenHarmony ETS Openharmony啃论文俱乐部

Apache ShardingSphere 企业行|走进怪兽充电

SphereEx

开源 ShardingSphere SphereEx apache 社区 怪兽充电

最全讲解:GPU技术架构知识

Finovy Cloud

人工智能 GPU服务器 GPU算力

直播回顾| Apache Pulsar 2.10.0 新特性概览

Apache Pulsar

开源 架构 云原生 Apache Pulsar Apache Pulsar 社区

uni-app技术分享| uni-app转小程序_实时音视频

anyRTC开发者

小程序 音视频 WebRTC uniapp 实时通讯

好代码和坏代码

博文视点Broadview

Flink 在 B 站的多元化探索与实践

Apache Flink

大数据 flink 编程 流计算 实时计算

Element Plus 和 Ant Design Vue 对比测评,哪个更好?

蒋川

Vue antd vue Element Plus Element UI Ant Design

有了这款工具,定位线上问题事半功倍|云效工程师指北

阿里云云效

云计算 阿里云 程序员 云原生 开发

jackson学习之二:jackson-core

程序员欣宸

4月月更

做网工还是运维好?小白求解!

行云管家

云计算 运维 网络 IT运维

Element Plus for Vue 3 入门教程

蒋川

Element Element Plus Element UI

我国将筹建工业元宇宙服务平台

CECBC

Linux驱动开发-编写FT5X06触摸屏驱动

DS小龙哥

4月月更

Ali266首次商用落地,助力优酷码率最高节省40%

阿里云CloudImagine

阿里云 音视频 优酷 编码器 视频云

新手指南,带你启航:如何给OpenMLDB社区贡献代码

第四范式开发者社区

机器学习 数据库 开源 开源社区

浅谈Vue开发小程序

Speedoooo

小程序 Vue 开发框架 小程序容器

Flink on K8s 在京东的持续优化实践

Apache Flink

大数据 flink 编程 流计算 实时计算

java培训-不干程序员了还能干什么

@零度

JAVA开发

KubeEdge-Sedna边云协同终身学习:迈向次时代AI范式

华为云原生团队

人工智能 开源 AI 边缘计算 边缘技术

虚拟货币网络犯罪愈演愈烈 安全防护更要“多管齐下”

CECBC

使用APICloud开发多端短视频应用

YonBuilder低代码开发平台

前端开发 APP开发 APICloud 多端开发 小程序开发

使用混合云平台企业,怎样才能做好运维?

行云管家

私有云 混合云 多云管理 云管平台

浅谈电商网站开发中用户会话管理机制的设计和实现原理

汪子熙

JavaScript 电商 用户管理 电商系统 4月月更

分享回顾|木兰技术开放日,建木团队与你一同畅聊「云原生」

Jianmu

ci 开源 云原生 开发运维

解读加密市场13种NFT类型

CECBC

高性能云桌面服务提供商酷栈科技加入龙蜥社区,共建开源新生态

OpenAnolis小助手

开源 云桌面 龙蜥社区 CLA 酷栈科技

Zadig 构建缓存如何配置才好用?

Zadig

云原生 CI/CD 软件交付 Zadig

云效·Insight(效能洞察)一款面向企业研发管理层的研发效能数字化度量服务

阿里云云效

阿里云 云原生 研发管理 研发效能 效能洞察

大数据培训-程序员坚持不断的学习能成大神吗

@零度

大数据开发

主流跨端开发技术方案对比

Speedoooo

跨端开发 跨端 降本增效 小程序容器 轻应用

AsWing:Java开发者的ActionScript朋友?_Java_Moxie Zhang_InfoQ精选文章