50万奖金+官方证书,深圳国际金融科技大赛正式启动,点击报名 了解详情
写点什么

全面支持 Java、PHP 以及 Ruby!jMaki Ajax 框架发布 1.0 版本

  • 2007-09-30
  • 本文字数:1809 字

    阅读完需:约 6 分钟

jMaki 项目近日发布了 1.0 版本。jMaki 是用于创建 Web 2.0 应用的 C/S 结构框架。它通过提供各种 Widget 的方式抽象了 JavaScript 和 CSS,同时 JavaScript 与 CSS 被设计得易于界面开发人员访问并进行修改。不久之前 InfoQ 对 jMaki 的主要开发者 Greg Murray 进行了采访并就即将发布的 1.0 版本进行了讨论。在讨论之前 Murry 对 jMaki 的背景进行了简要的介绍。

大约在两年前,一个以 jMaki 命名的项目在日本诞生了。简单来说,jMaki 就是一个用于开发 AJAX 应用的 C/S 框架,它的主要关注对象已经转变成一般公司中的开发人员,虽然这些开发人员一直在致力于拓展他们的知识领域。jMaki 团队的最终目标是:

[……] 希望 jMaki 成为进行 Ajax 功能开发的 WordPress。

Murray 解释道:

在开发的初期 jMaki 主要用于描述可移植及可复用的 JavaScript。不久,我们发现将不断增长的 JavaScript 工具箱包装起来是非常有用的。通过设计这样一个 C/S 结构的框架,我们可以通过服务器来加速 Widgets 以及其依赖的 JavaScript、CSS 和 HTML 模板文本的定义过程。

他继续解释到,jMaki 项目的总体目标是:

从根本上说,我们希望开发者通过使用 jMaki,可以创建出基于标准的应用,将自己的代码和目前可用到的精巧绝伦的工具包以及功能黏合在一起。这些工具包和功能包括了 Dojo 或者 Yahoo Widgets,使用 Google Gears 进行本地存储,Scriptataculus/Protoscript 进行效果展现,并且有能力调用 Yahoo 或者 Google 地图之类的服务。

此外,Murray 特别强调了 jMaki 并非一个排它性的平台:

不论是单独作为 Widget 还是作为应用,jMaki 都是一个有良好表现的平台。我们在设计框架的时候就非常注意让它能拥有良好的性能,包含全部核心功能的客户端脚本仅仅 18k 大小,而且,下载文件的尺寸根据你所需要的功能决定的,我们在确保所用的工具包能够良好表现上作了很多努力。

InfoQ 提出这样一个问题:“如果你有机会指导一位开发者开发新的 Web 项目,你认为 jMaki 可以提供的最重要的的 5 个特性或者功能是什么?”Murray 回答到,jMaki 1.0 版本向开发者提供了丰富的功能,其中包括:

  1. Widget 或者扩展组件可以提供缺省配置 > jMaki 遵循习惯优于配置(Convention over Configuration)的原则。Widgets 和组件扩展都位于易于寻找的位置。特别是当你使用 IDE 时,将 Widget 拖拽至页面就可以正常工作。我们所使用的模板都带有内建数据(数据也可以在使用 Ajax 调用的时候加载)。
  2. 工具支持 > 我们提供了 NetBeans/Eclipse 插件以及用于构建 Web 项目的 Ant 脚本。
  3. 标准化的事件以及数据模型 > 用于描述 Widget 和描述多个 Widget 之间交互的方式是一致的,这样开发者可以仅学习一种模型并轻易的将其应用于各种工具包。我们在 Widget 包装器这一层屏蔽了种种的不一致。
  4. 一致的编程模型 > 在不同的工具包中,与 Widget 进行交互的方法是一致的。例如, Actions 就是一个通过声明进行事件处理的简单方式。jMaki 同样支持使用编程的方式在 Widget 或扩展组件上,或者响应用户行为进行事件处理。
  5. 可移植的Widget/ 扩展组件库 > jMaki 的 Widgets 是可移植的,并且它们也可以被包装在各个库中,每个库包含它们所需要的资源。这使得用户具备可以以 zip 压缩文件的格式来分享一组 Widget。
  6. 扩展组件 > jMaki 不再仅仅意味着 Widget,你也可以将 Google Gears、Protoscript、JavaScript 或者任何其他 JavaScript 可以访问的功能包装为一个可移植的库。
  7. 平台无关 > jMaki 完全支持 Java(JSP/JSF 1.1-2/Facelets/Portlets)、PHP 5.x、 Phobos 以及时下最流行的 Ruby(不过我们还没有实现代理,因为目前还没有标准的 XSLT 处理器)。

jMaki1.0 的发布是社区花费了大量时间和精力的巅峰之作。然而,随着 9 月 25 日的发布,Murray 以及团队的其他成员已经开始讨论 jMaki 1.1 版本。未来的方向包括了通过服务器组件改进客户端事件总线连接的一致性,扩展 Widget 的种类(即 jQuery 或者 Prototype)以及充分利用服务器端应用缩短响应时间。

查看英文原文: jMaki Ajax Framework Releases 1.0 with Support for Java, PHP, and Ruby - - - - - -

译者简介:胡凯,2006 年加入 ThoughtWorks ,通过在 ThoughtWorks 多个国家和多个项目的敏捷实践,坚定地站在了敏捷阵营中,目前在进行 CruiseControl 相关的敏捷开源项目。他和许多敏捷开发者一样活跃在敏捷中国 CruiseControl-China 社区中。参与 InfoQ 中文站内容建设,请邮件至 china-editorial[at]infoq.com

2007-09-30 23:581638

评论

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

聚焦中国算力大会 | 浪潮集团肖雪: 数字化转型新场景激发算力需求

云计算

基于 spring-cloud-k8s 跨NS坑续集

Damon

微服务架构 云原生 6月月更

网络七层结构是干啥的? 看这篇文章就够了

郑州埃文科技

TCP/IP 网络结构 传输网络

系统运维 SIG 直播: libbpf 编译平台 LCC——eBPF从入门到享受 | 第 20 期

OpenAnolis小助手

Linux 运维 内核 ebpf LCC

Vue 中 JSX 的基本用法

CRMEB

这本书押中了2022北京高考作文题!

博文视点Broadview

大数据培训 Yarn和Spark配置与说明

@零度

spark YARN 大数据开发

Web Service进阶(七)浅谈SOAP Webservice和RESTful Webservice

No Silver Bullet

6月月更 SOAP Webservice RESTful Webservice

Linux驱动开发_倒车影像项目介绍

DS小龙哥

6月月更

数字货币持币生息质押理财dapp系统开发

开发微hkkf5566

使用 JavaScript 开发AR(增强现实)移动应用的预备知识和环境搭建

汪子熙

JavaScript AR SAP 增强现实 6月月更

模块八:作业

本人法海

「架构实战营」

Wallys/Network_Card/DR9074-2.4G-PN01.1-Wifi-6-Qualcomm-QCN9074

wallys-wifi6

wifi6 m.2 802.11AX QCN9074

面试突击55:delete、drop、truncate有什么区别?

王磊

Java 面试

什么是加密?有哪些加密类型和加密算法?逆天原创神作,值得一读!

wljslmz

加密 密码学 加密算法 网络技术 6月月更

GIT 常见问题

甜甜的白桃

git 版本管理 6月月更

java培训流Stream循环遍历list

@零度

stream JAVA开发

JWT 登录认证及 Token 自动续期

源字节1号

软件开发 前端开发 后端开发 小程序开发

【Python技能树共建】正则表达式

梦想橡皮擦

6月月更

OA协同办公系统的发展趋势

力软低代码开发平台

如何搭建短视频app源码,实现短视频内容的播放优化

开源直播系统源码

APP开发 短视频源码

一二三线互联网公司划分标准和榜单

laofo

研发效能 互联网公司 一线大厂 二线互联网 一线互联网

帮助中心对企业有用吗?要不要做帮助中心页面?

小炮

写入速度提升数十倍,TDengine 在拓斯达智能工厂解决方案上的应用

TDengine

数据库 tdengine 时序数据库

我常用的两个翻译神器!程序员必备 | JavaGuide

JavaGuide

电商后台权限设置有哪些规范你知道吗!

CRMEB

刘勇智:一码通缺陷分析与架构设计方案丨声网开发者创业讲堂 Vol.02

声网

架构 创业讲堂

架构实战营|模块3

KDA

#架构实战营

优酷端侧弹幕穿人技术实战之:PixelAI移动端实时人像分割

阿里巴巴文娱技术

音视频 弹幕 人像 移动端 移动端开发

C#/VB.NET 在Word中设置纯色/渐变/图片背景

在下毛毛雨

C# .net word文档 背景设置

SAS击球实验室向青少年展示数据与分析的价值

E科讯

全面支持Java、PHP以及Ruby!jMaki Ajax框架发布1.0版本_Java_Craig Wickesser_InfoQ精选文章