锁定老帖子 主题:GWT用来开发web程序会不会成为趋势
精华帖 (0) :: 良好帖 (12) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2012-01-15
osacar 写道 我个人认为,html+js+css这种原始的组合才是趋势。为何非要把它们用java给封起来?gwt真的好用么?反正我看过没用过。 咱们观点相同,一个不能很好掌握前端技术的程序员不是好程序员,尤其在今天越来越重视用户体验的时代。
|
|
返回顶楼 | |
发表时间:2012-01-15
feng2356 写道 看了前面的讨论,觉得有的有道理,有的和我理解的有偏颇.
我的理解是这样.首先为什么会有GWT呢.就像google自己说的.是因为支持js编辑的工具没有java的IDE那样功能完备.eclipse对java语言的编写支持粒度很好,而js的编辑工具(包括eclipse插件)对js的编码支持就相对弱,于是有人设想,如果用java编写js,那么就很好的弥补了这一缺点.事实上,由此带来的一系列优点.比如说跨浏览器,js的性能自动调优等. 另外,GWT的设计也有几大优点,一是对第三方js组件的支持;一是扩展性强,灵活度高;再就是API通俗易懂,接近AWT或者flex等命名和使用方式.有过相关经验的人,尤其是有过js开发经验的人,上手容易. 再来看看GWT的缺点.第一个缺点要数UI组件的缺乏.否则也不会有gxt等等这样的项目,也不会在gwt项目里使用较多第三方js组件了;第二个缺点类似flex等浏览器插件,就是和界面的交互性不好,举个例子,在一个html界面里,有两个div,一个div里用gwt来实现,另一个div里用其他方式(比如直接js编码或者html),那么要想在二者之间做一个交互动作,相当麻烦,尤其是在gwt项目已经成型后,想在gwt项目外做这件事,非常困难.换句话说,如果gwt项目开发前没有考虑做模块化接口设计,你想在html页面通过js来达到控制gwt生成的代码,很困难.第三个缺点呢就要算gwt的工程部署,编译了.稍微复杂了些,耗时些 既然它有这么多特点,到底gwt是好是好,市场前景如何呢,我是这样看的. 第一,gwt的出现,肯定为java程序员开发js代码带来福音,提高了效率.尤其解决了跨浏览器和性能调优的问题. 第二,gwt的UI,这个也是我主要想谈的,gwt的发展肯定有一个过程,一个从无到有从小到大的过程,用1.5版本的人再用2.4.就会发现,gwt在UI方面也不是没有建树,也是在一点点做.但是界面UI本身是一个比较复杂,灵活度要求高的东西,要想完善出一套美观易用扩展性强的UI来,不是一件容易事,ext做了这么多年,我想对人的审美疲劳也是一种考验,美观不是说换了皮肤可以解决的,有些时候要换的是架子,一个表格,换一种风格,换一种分页样式,甚至换一种布局方式.我用tab组件,我想把它变成操作系统任务栏的方式行不行,容易做吗,都是我们面临的问题.gwt能做吗,不知道,但是gwt的扩展性强灵活性高目前我们看得到,我可以用一个ext的组件组合一个DHTML组件,只要gwt里你做的接口合理,完全可以做到耦合度低的完美契合.gwt的这个优点弥补了它UI不足. 第三,对于gwt,它有另外一个特点,就是可以模块化,类似jar,但也有不同,一个项目积累的代码,你设计的好,可以完全独立或者部分独立,是可以随时打包带着走到其他项目里的.而gwt还有另外一个特点,那就是源码,它的模块化是必须带源码的,否则无法进行编译.很多公司现在在用gwt,累积的界面UI也会有一些,这些东西放出来,是不能加密的,否则用不了.这点让我们程序员对ext之流解除了些担心. 至于gwt的其他缺点,我觉得并不重要,比如说gae,这个可以不用,有什么关系呢.比如说编译时间长,在项目中,开发快和出一个版本耗时长一个小时两个小时的,哪个重要呢.当然我也深刻理解上线时微小变动带来漫长编译问题的痛苦(可以分工程啊,分成几个gwt工程,编译时就好办多了,不过设计时要想好,具体不谈了),框架搭建不容易?前期一个人做好,后面所有的人都不关心的事情,也是可以容忍的.我们做的一个项目,前期搭好框架,组员到位后,简单说了下工作方法(都是java开发老鸟),后面没有人觉得麻烦,反而有的人觉得很神奇.我相信随着gwt的发展,这些问题也会慢慢的解决. 最后,我要深恶痛绝gwt一个问题,那就是编译时的bug.就是运行时正常,编译后在浏览器上就有问题了,在操作dom组件数组时,有些情况下会有这个问题.调试这类问题,异常吐血.还好不多,一个项目能遇见一两个.也算在容忍之列. 此外.对于当前web2.0思潮下的前端开发,gwt思想完全符合这个潮流.对于所见即所得模式下的工厂式开发,使用插件方式,也完全可以做到gwt式的拖拉拽组建页面布局.gwt的插件虽然不完善,但是现在有些公司已经在开发类似的插件了(不过我看下来,由于gwt几无UI可言,也部分用自定义或者第三方js组件,并非完全gwt). 总之,我觉得,gwt尽管有这样或者那样的缺点,但是目前在业内,也的确找不到一款比gwt更好的给java开发人员编写js的工具了.felx在移动终端的世界里命运,gwt+html5?呵呵,可以简单畅想一下,呵呵,YY中... 对或不对,请大家指正. 单纯的“java开发人员”不会因为这些工具(gwt/zk/jsf之类)就能说自己跟上了web开发的发展(所谓的趋势)。 在一个javaer都很老鸟的web开发团队里,很多情况下是没有积累过之前的js的开发方式和代码库,所以觉得gwt/jsf是最好的选择,但如果有几个同时对js也很熟悉的javaer,我想他们的想法就是用js比用java更简单,如果积累的一些最佳实践,开发起来比java开发效率更高——不过这样的人一般都抛弃去选择ruby或nodejs了 就楼主的话题,如果换成gwt之类会不是是java web开发的趋势还有得讨论,去掉java,把php这些语言的份额都忽略了就不对了 还有就是即便去掉java,我个人以为gwt只是那些不熟悉js的团队的开发选择,也不是web开发趋势,传统的request请求式的mvc还是很主流的,js端一样也有丰富成熟的库去使用,这些库的使用用js操作比用java封装一层再去操作更容易 如果你把gwt可以更换js库当做一种有价值的用途的话(比如之前用jquery ui,后来换成dojo),那这个价值可能大多数都用不到——你在考虑jquery以后会不会流行的时候java说不定已经不流行了。。。 最后说明下,要做对比,希望能同时比较熟悉厚js开发和厚java开发的基础上通过实践再做比较(我本人比较详细了解ZK和JQuery + Css Template的开发过程的,我的结论是 ZK类方式 < Js类开发方式) |
|
返回顶楼 | |
发表时间:2012-01-16
大家不要用做网站的思维来看GWT,GWT更适合做企业应用,而不是做网站
|
|
返回顶楼 | |
发表时间:2012-01-16
devroller2 写道 大家不要用做网站的思维来看GWT,GWT更适合做企业应用,而不是做网站
可以我以为以“做网站的思路去做企业应用”说不定效果更好。。。哎,果然人人看法差别很大啊 |
|
返回顶楼 | |
发表时间:2012-01-17
我一直觉得GWT跟SL,FX之类的差不多。
|
|
返回顶楼 | |
发表时间:2012-01-17
谁也统一不了谁。共同存在,多种选择。
|
|
返回顶楼 | |
发表时间:2012-01-17
看不下去了,java都能掌握,怎么就怕js呢?
不就是学个js啦,不会太难的,GWT是个好东西,代价比较大,但他的出现补充了js没有编译环境,以及java的那一套框架, 不过退一步,js的最大特色是动态,为什么要java的那套静态语言的东西呢? 所以我还是纯净的js,毕竟说不定哪天后台不用java了,用。net或者php,难道web都要重新来过? |
|
返回顶楼 | |
发表时间:2012-01-18
hepeng421 写道 看不下去了,java都能掌握,怎么就怕js呢?
不就是学个js啦,不会太难的,GWT是个好东西,代价比较大,但他的出现补充了js没有编译环境,以及java的那一套框架, 不过退一步,js的最大特色是动态,为什么要java的那套静态语言的东西呢? 所以我还是纯净的js,毕竟说不定哪天后台不用java了,用。net或者php,难道web都要重新来过? 用gwt和后台使用什么语言没有关系 |
|
返回顶楼 | |
发表时间:2012-01-18
key232323 写道 feng2356 写道 看了前面的讨论,觉得有的有道理,有的和我理解的有偏颇.
我的理解是这样.首先为什么会有GWT呢.就像google自己说的.是因为支持js编辑的工具没有java的IDE那样功能完备.eclipse对java语言的编写支持粒度很好,而js的编辑工具(包括eclipse插件)对js的编码支持就相对弱,于是有人设想,如果用java编写js,那么就很好的弥补了这一缺点.事实上,由此带来的一系列优点.比如说跨浏览器,js的性能自动调优等. 另外,GWT的设计也有几大优点,一是对第三方js组件的支持;一是扩展性强,灵活度高;再就是API通俗易懂,接近AWT或者flex等命名和使用方式.有过相关经验的人,尤其是有过js开发经验的人,上手容易. 再来看看GWT的缺点.第一个缺点要数UI组件的缺乏.否则也不会有gxt等等这样的项目,也不会在gwt项目里使用较多第三方js组件了;第二个缺点类似flex等浏览器插件,就是和界面的交互性不好,举个例子,在一个html界面里,有两个div,一个div里用gwt来实现,另一个div里用其他方式(比如直接js编码或者html),那么要想在二者之间做一个交互动作,相当麻烦,尤其是在gwt项目已经成型后,想在gwt项目外做这件事,非常困难.换句话说,如果gwt项目开发前没有考虑做模块化接口设计,你想在html页面通过js来达到控制gwt生成的代码,很困难.第三个缺点呢就要算gwt的工程部署,编译了.稍微复杂了些,耗时些 既然它有这么多特点,到底gwt是好是好,市场前景如何呢,我是这样看的. 第一,gwt的出现,肯定为java程序员开发js代码带来福音,提高了效率.尤其解决了跨浏览器和性能调优的问题. 第二,gwt的UI,这个也是我主要想谈的,gwt的发展肯定有一个过程,一个从无到有从小到大的过程,用1.5版本的人再用2.4.就会发现,gwt在UI方面也不是没有建树,也是在一点点做.但是界面UI本身是一个比较复杂,灵活度要求高的东西,要想完善出一套美观易用扩展性强的UI来,不是一件容易事,ext做了这么多年,我想对人的审美疲劳也是一种考验,美观不是说换了皮肤可以解决的,有些时候要换的是架子,一个表格,换一种风格,换一种分页样式,甚至换一种布局方式.我用tab组件,我想把它变成操作系统任务栏的方式行不行,容易做吗,都是我们面临的问题.gwt能做吗,不知道,但是gwt的扩展性强灵活性高目前我们看得到,我可以用一个ext的组件组合一个DHTML组件,只要gwt里你做的接口合理,完全可以做到耦合度低的完美契合.gwt的这个优点弥补了它UI不足. 第三,对于gwt,它有另外一个特点,就是可以模块化,类似jar,但也有不同,一个项目积累的代码,你设计的好,可以完全独立或者部分独立,是可以随时打包带着走到其他项目里的.而gwt还有另外一个特点,那就是源码,它的模块化是必须带源码的,否则无法进行编译.很多公司现在在用gwt,累积的界面UI也会有一些,这些东西放出来,是不能加密的,否则用不了.这点让我们程序员对ext之流解除了些担心. 至于gwt的其他缺点,我觉得并不重要,比如说gae,这个可以不用,有什么关系呢.比如说编译时间长,在项目中,开发快和出一个版本耗时长一个小时两个小时的,哪个重要呢.当然我也深刻理解上线时微小变动带来漫长编译问题的痛苦(可以分工程啊,分成几个gwt工程,编译时就好办多了,不过设计时要想好,具体不谈了),框架搭建不容易?前期一个人做好,后面所有的人都不关心的事情,也是可以容忍的.我们做的一个项目,前期搭好框架,组员到位后,简单说了下工作方法(都是java开发老鸟),后面没有人觉得麻烦,反而有的人觉得很神奇.我相信随着gwt的发展,这些问题也会慢慢的解决. 最后,我要深恶痛绝gwt一个问题,那就是编译时的bug.就是运行时正常,编译后在浏览器上就有问题了,在操作dom组件数组时,有些情况下会有这个问题.调试这类问题,异常吐血.还好不多,一个项目能遇见一两个.也算在容忍之列. 此外.对于当前web2.0思潮下的前端开发,gwt思想完全符合这个潮流.对于所见即所得模式下的工厂式开发,使用插件方式,也完全可以做到gwt式的拖拉拽组建页面布局.gwt的插件虽然不完善,但是现在有些公司已经在开发类似的插件了(不过我看下来,由于gwt几无UI可言,也部分用自定义或者第三方js组件,并非完全gwt). 总之,我觉得,gwt尽管有这样或者那样的缺点,但是目前在业内,也的确找不到一款比gwt更好的给java开发人员编写js的工具了.felx在移动终端的世界里命运,gwt+html5?呵呵,可以简单畅想一下,呵呵,YY中... 对或不对,请大家指正. 单纯的“java开发人员”不会因为这些工具(gwt/zk/jsf之类)就能说自己跟上了web开发的发展(所谓的趋势)。 在一个javaer都很老鸟的web开发团队里,很多情况下是没有积累过之前的js的开发方式和代码库,所以觉得gwt/jsf是最好的选择,但如果有几个同时对js也很熟悉的javaer,我想他们的想法就是用js比用java更简单,如果积累的一些最佳实践,开发起来比java开发效率更高——不过这样的人一般都抛弃去选择ruby或nodejs了 .... 还有就是即便去掉java,我个人以为gwt只是那些不熟悉js的团队的开发选择,也不是web开发趋势,传统的request请求式的mvc还是很主流的,js端一样也有丰富成熟的库去使用,这些库的使用用js操作比用java封装一层再去操作更容易 .... 经鉴定.你没有用过gwt. 如果用过也就是学习阶段没有深入使用.对不对? |
|
返回顶楼 | |
发表时间:2012-01-18
如果有一天,对于js的编辑器支持能做到java的程度,那么gwt就没有什么存在价值了,
大家考虑gwt的未来趋势,那是因为js在前端越来越重要了. |
|
返回顶楼 | |