写点什么

全面支持 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:581476

评论

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

打造垂直领域内容的问答机器人

霍格沃兹测试开发学社

利用Python和API接口获取1688商品列表数据的方法

tbapi

1688 1688API 1688商品列表数据接口 关键词搜索1688接口

如何创建良好的数据模型?

NocoBase

低代码 数据模型 无代码

【参赛总结】第二届云原生编程挑战赛-冷热读写场景的RocketMQ存储系统设计 - Ninety Percent 战队

阿里云天池

深入探索:淘宝/天猫商品详情API返回值实战解析与应用

代码忍者

API 接口 API 测试

机器学习算法: 朴素贝叶斯(Naive Bayes)

阿里云天池

苹果Mac图像修图软件Photomator和Pixelmator Pro 有什么区别?

Rose

苹果Mac电脑怎么设置动态桌面,heic动态桌面壁纸怎么使用

Rose

mac上怎么卸载office应用程序

Rose

CVPR 2021 ImageNet 无限制对抗攻击 TOP 4 (Advers) 方案分享

阿里云天池

【数梦工场】【智慧航空AI大赛】比赛分享

阿里云天池

俄罗斯加密货币挖矿合法化:重新定义全球挖矿行业的格局

区块链软件开发推广运营

dapp开发 区块链开发 链游开发 NFT开发 公链开发

一本小册子,咋就让IT人水灵灵地「由I变E」了?

脑极体

AI

TDengine 签约协鑫鑫光,优化光伏数据管理

TDengine

苹果电脑如何修改hosts文件?mac修改Hosts文件教程

Rose

万界星空科技低代码云MES--快速实现数字化

万界星空科技

低代码平台 mes 云mes 万界星空科技 低代码云MES

一本小册子,咋就让IT人水灵灵地「由I变E」了?

白洞计划

AI

IROS 2020 OCRTOC比赛总结 - Team PHAI Robotics

阿里云天池

CloudMounter for mac 一站式网盘管理工具

Rose

如何在Mac之间进行数据迁移?

Rose

人工智能丨打造垂直领域内容的问答机器人

测试人

软件测试

一文让你知道为什么电力行业需要堡垒机

行云管家

电力 等保 堡垒机

NFS v3及v4协议区别

天翼云开发者社区

云计算 NFS

Go语言手写本地 LRU 缓存

FunTester

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