论坛首页 Web前端技术论坛

JavaScript version of SWT

浏览 12791 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2005-12-31  
我很看好,SWT/JFace是一个卓越的技术,不仅仅在于它优越的运行表现,也在于它良好的设计。

j2s之所以和SWT搭上关系,无非也就是借鉴了这个“设计”,都是做GUI,能用一套已经成熟的理论,为什么要另外再发明一套呢?

现在大家对于用JavaScript来构造GUI的web应用很有信心,似乎还听说过Swing 的 JavaScript port,相信这类项目还会有很多,期望他们的技术实现早日成熟。
0 请登录后投票
   发表时间:2005-12-31  
edge_hh 写道
可是对控件的事件响应怎么做到呢?


这是一个核心问题,我试过一个另外的实现(忘了名字了),它是将全部的 swt 事件代理到服务器上运行的 swt 程序,然后将 swt 的反馈再代理回 brower 显示。

这样做对于开发者是简单了,但这浪费了 browser 的计算能力,是不理想的。

我觉得,能够利用浏览器本地的计算能力来处理事件,这是一个基本的规格。

从tour来看,j2s是走“Java Swt generate JavaScript code”方式的,似乎是一个纯粹的 clientside 应用,要如何嵌入 javascript xmlhttp 的 rpc 呢?这似乎是个问题。
0 请登录后投票
   发表时间:2005-12-31  
partech 写道
醒来 写道
对这样的方式,忍不住又想举个例子,犹如一座山挡在路前,上有一条近捷的山路,旁有一条环山的远路,都能到达山对面。你会选择哪条路。

我是愿意上山的,为了可以远眺的风景。

老兄,俺现在正在发愁呢。
客户希望有些功能做成RCP和WEB的两种方式,而我们想最好只实现RCP方式,把View同ApplicationModel先分离,这样WEB和RCP可以共享ApplicationModel部分,如果有软件能够把View翻译成WEB方式,那么我们就不用再开发另外一套View了,岂不美哉。
另外如果交互方式不一样,那么ApplicationModel就复用不了,那么就是完全的另外再开发一套Application层,不爽阿。

有哪位高手仔细研究了一下么?俺也不太清楚它是如何同原来的应用同步状态的。


我以为主流的方式还是应该使用 XUL系 的技术,统一使用xml文件定义UI,然后Swing/SWT 与 WEB 分别实现。

XUL2Swing/SWT 论坛上有不少讨论,web上面则可能更多需要浏览器方的支持,因为这样最native,效率最好。

标准的统一是一个漫长的过程,在现在到实现上述统一标准的过程中,Ajax则成为最实效的选择。
0 请登录后投票
   发表时间:2005-12-31  
2006年必然是xul轰轰烈烈的一年。
j2s就算再好,也是生不逢时的。

引用
在现在到实现上述统一标准的过程中,Ajax则成为最实效的选择

你们(abwg)说的ajax分外具体了,我估计连dojo都不包括吧。

最时效,我理解是在一两年内不会变成完全过时的技术,xul-like,或者等WAFWG把第一个Specification讨论出来的那种。
但其实这个Specification中又免费又跨浏览器的,也只有Laszlo了。
对我来说最时效的选择,更是Laszlo。:)
0 请登录后投票
   发表时间:2005-12-31  
我试了一下,laszlo很慢呢。

运行时往一个list里增加1000项,要老半天
0 请登录后投票
   发表时间:2006-02-18  
partech 写道
醒来 写道
对这样的方式,忍不住又想举个例子,犹如一座山挡在路前,上有一条近捷的山路,旁有一条环山的远路,都能到达山对面。你会选择哪条路。

我是愿意上山的,为了可以远眺的风景。

老兄,俺现在正在发愁呢。
客户希望有些功能做成RCP和WEB的两种方式,而我们想最好只实现RCP方式,把View同ApplicationModel先分离,这样WEB和RCP可以共享ApplicationModel部分,如果有软件能够把View翻译成WEB方式,那么我们就不用再开发另外一套View了,岂不美哉。
另外如果交互方式不一样,那么ApplicationModel就复用不了,那么就是完全的另外再开发一套Application层,不爽阿。

有哪位高手仔细研究了一下么?俺也不太清楚它是如何同原来的应用同步状态的。


我想你的问题可以这样解决: 提供一个统一的UI描述语言, 用类似XUL的机制来描述UI层. 这个UI层可以被不同的namespace来引用,遇到SWT namespace,那么就用SWT的机制,生成RCP UI; 遇到Web namespace,就用一套CSS来解析,生成Web UI. 同步机制可以通过在UI层嵌入一些java scprit 同步代码来解决. 目前有open source的framework...
0 请登录后投票
   发表时间:2006-02-21  
好像是我们公司的一个同事做的这个项目。。。
0 请登录后投票
   发表时间:2006-03-04  
edge_hh 写道
没时间试试看,
对一些SWT控件的翻译成js我相信没问题。
可是对控件的事件响应怎么做到呢?


对事件的响应,也是完全使用Java中的Event和Listener的机制,譬如SWT中Button的点击事件触发后,而被发送到相应的Listener的实现上,进而运行Listener的对应方法,譬如widgetSelected方法。

对于需要返回服务器的响应动作,可以通过调用ajax.HttpRequest来提交请求到服务器。
0 请登录后投票
   发表时间:2006-03-04  
目前J2S已经发布到0.5.0,添加和完善了Eclipse IDE的更密切集成,SWT的UI库也是得到了进一步完善。

Java2Script Pacemaker:
http://j2s.sourceforge.net/index.html

J2S的一些简单教程:
http://j2s.sourceforge.net/tutorial.html

集成Eclipse IDE和相关SWT设计工具的截图:
http://j2s.sourceforge.net/screenshots.html

已基本完成的SWT控件截图:
http://j2s.sourceforge.net/widgets.html
0 请登录后投票
   发表时间:2006-03-04  
jossonsmith 写道
edge_hh 写道
没时间试试看,
对一些SWT控件的翻译成js我相信没问题。
可是对控件的事件响应怎么做到呢?


对事件的响应,也是完全使用Java中的Event和Listener的机制,譬如SWT中Button的点击事件触发后,而被发送到相应的Listener的实现上,进而运行Listener的对应方法,譬如widgetSelected方法。

对于需要返回服务器的响应动作,可以通过调用ajax.HttpRequest来提交请求到服务器。

不知道,我使用了RCP的插件构造出来的应用,不只是SWT,能否转化为这种WEB应用?
0 请登录后投票
论坛首页 Web前端技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics