`

被我抛弃的开源框架

阅读更多
1. GWT ,它是个javascript的编译器,生成的是浏览器端的HTML和js,但他和服务器端的交互让人痛苦,他有自己的调试器,但集合到服务器端代码一起发布调试,真是让人痛苦。生成垃圾文件多,执行速度慢,总之,它带来了多少快感,就带来了多少痛苦。(补充:他可以ajax,但它生成的只是静态html+js页面,是静态的,想让它接受参数是不可能的。当然我曾试过把他的html再变成jsp接受参数,将接受到的信息放到html的head meta中,然后再用GWT的DOM在meta中取信息,再用RPC到服务器上取信息填入各个元素,上帝饶恕我的SB吧。)

2. Tapestry 5,我试用了两周。帮了不少忙,把GWT的残局收拾了,把当初用GWT写的东西彻底重写了一遍。但渐渐也发现了它的不爽。还真是不太好表达,总体感觉,它太霸道了,封装了一切。事实上它对静态资源(html,js)的支持并不够好。对页面跳转,支持也不够好,ActionLink和PageLink只能跳到他自己的页面,必须自己写个组件实现动态的asdfa,。国际化的解决办法是自动根据request头分析出来源地,自动选择匹配的语言,乍看很cool,事实上又是霸道的表现,如果用户想自定义语言,无法做到。就连中国的开发者想看看自己开发出的英文版页面是什么样子都会很麻烦。他的角色不再是助手,而是Boss,我想大家都不希望助手成为Boss。

3. Struts 1.x,说她被抛弃,并不适合,因为我从未选择过她。曾N次下决心与她亲近,但她太麻烦了,磨磨唧唧,但始终无法了解她的心,最终与她的缘分还没有开始就结束了。

4.Grails,我没有完整的玩过Grails,我只是稍稍了解了一下,但我已经可以断言,它不会有太大的灵活性。基于脚本语言,我一直认为脚本语言的用处应该是热修改,而不是写源代码。所谓热修改,比如魔兽争霸3的RPG地图,不可能让玩家用C语言写地图,但也不可能让开发者用lua来开发WAR3。用户的需求中有个经常变动的公式,这时可以用脚本。用脚本语言写源代码!!!我不想多说。

5.ROR。RoR开发的javaeye,很不错啊,为什么抛弃RoR。也许是成见吧,理由同上。但RoR确是给快速开发开辟出一条新的模式。它的优点是他的开发模式,而不是Ruby或Rails。仅仅因为他模式的优秀,而选择一项建立在脚本语言上的框架,颇有委曲求全的感觉。

寻求一条优秀的开发模式,真是不简单。
接下来打算了解webwork2和velocity,希望不要让我失望。
分享到:
评论
15 楼 dennis_zane 2007-03-21  
giscat 写道
经典MVC框架
  把service,dao等统统合并到controller(action)里
      
  会发现,java版的ROR就这样不经意间浮出水面
    


这完全是对ROR的误解,rails的Controller集合了service,dao的功能?话不能乱说
14 楼 giscat 2007-03-21  
pengjun_lovecoding@hotmail.com 写道
引用
giscat     1 小时前
经典MVC框架
把service,dao等统统合并到controller(action)里

会发现,java版的ROR就这样不经意间浮出水面


很悬啊!

 
  没啥悬不悬的,好使就好了,
      分太多的层没啥必要,有过度设计的嫌疑
        不过MVC是合并层的底限
13 楼 minimu 2007-03-21  
关注一下
其实每一个开源的东西都是有缺点的,看自己的取舍了
12 楼 过河卒 2007-03-21  
引用
giscat     1 小时前
经典MVC框架
把service,dao等统统合并到controller(action)里

会发现,java版的ROR就这样不经意间浮出水面


很悬啊!
11 楼 dengyin2000 2007-03-21  
<br/>
<strong>
引用
ActionLink和PageLink只能跳到他自己的页面,必须自己写个组件实现动态的<a href='xxx'>asdfa</a>,。
<br/>
<br/>
我不清楚你为什么这样说。TAPESTRY使用的时html模板,难道你不能直接用 <a>么,或者用@Any。<br/>
<br/>
引用
<br/>
国际化的解决办法是自动根据request头分析出来源地,自动选择匹配的语言,乍看很cool,事实上又是霸道的表现,如果用户想自定义语言,无法做 到。就连中国的开发者想看看自己开发出的英文版页面是什么样子都会很麻烦。他的角色不再是助手,而是Boss,我想大家都不希望助手成为Boss。
<br/>
<br/>
我只是是可以inject httprequest的,你可以像在servlet中操作httprequest httpresponse一样,所以servlet中能实现的 T应该也一定行。<br/>
<br/>
引用
1. GWT ,它是个javascript的编译器,生成的是浏览器端的HTML和js,但他和服务器端的交互让人痛苦,他有自己的调试器,但集合到服务器端代码一起发布调试,真是让人痛苦。生成垃圾文件多,执行速度慢,总之,它带来了多少快感,就带来了多少痛苦。
<br/>
<br/>
我现在在家里也在试着用gwt,很多人都说gwt生成的js很大, 我看了下我的项目编译后,好像每个js大约在80多k左右,确实是比较大。而且项目中还没有多少东西。但是我喜欢gwt,因为我可以很方便的使用IDE中的refactor功能。太爽了。当你看见别人在javascript中收索时。现在公司的项目也是ajax项目,使用dojo,jsonrpc-java。我觉得我不会对javascript太陌生,但不强。我比较反感javascript的那种松散性,所以IDE的重构能够帮助我。当你编辑java代码时, 我感觉对代码的控制会比写javascript强。LZ说道gwt 的rpc的交互很痛苦? 我并没有感觉到, 现在我已经能够与spring整合了。请看我的这篇文章。http://www.iteye.com/topic/58084</a></strong>
10 楼 giscat 2007-03-21  
经典MVC框架
  把service,dao等统统合并到controller(action)里
      
  会发现,java版的ROR就这样不经意间浮出水面
    
9 楼 shaucle 2007-03-21  
appfuse(with webwork)
seam(with a lot)

楼主似乎最近专开源?
8 楼 jvincent 2007-03-21  
企业ERP应用还是Applet来的爽..
7 楼 dennis_zane 2007-03-21  
对脚本语言的偏见真是根深蒂固啊
6 楼 Arden 2007-03-21  
Java开发框架可以试试JBoss Seam.
5 楼 jasongreen 2007-03-21  
dengyin2000 写道
LZ 可能jsp比较适合你。


agree, 事实上,我以前都在用servlet和jsp,但servlet和jsp没有办法形成开发规范,没有自制力的程序员,情绪稍有失控就很容易把代码搞的乱七八糟。
servlet和jsp应该是最没有侵入性的,最能自由发挥的。
4 楼 dengyin2000 2007-03-20  
LZ 可能jsp比较适合你。
3 楼 lighter 2007-03-20  
"5.ROR。RoR开发的javaeye,很不错啊,为什么抛弃RoR。也许是成见吧,理由同上。但RoR确是给快速开发开辟出一条新的模式。它的优点是他的开发模式,而不是Ruby或Rails。仅仅因为他模式的优秀,而选择一项建立在脚本语言上的框架,颇有委曲求全的感觉。"

觉得人有各种各样的想法,我个人是很喜欢RoR(就当乱吹,没有RoR项目经验)
我把《Agile Web Development with Rails》和<<Programming Ruby>>都看了一两遍,动手试了一些程序,感觉就是爽;没有觉得脚本语言的框架不好,而且感觉写的代码更简洁啊,有一种别异的风味与java相比
2 楼 lighter 2007-03-20  
现在让我感觉很好常用的语言层面上的东西有:
Webwork2,jsp2的jstl,spring,hibernate
RoR
楼主说的,GWT没有试用,Tapestry5也没有用过,Struts1.x可能是用得最多的,但也是很很讨厌的一个,麻烦;Grails,有了解,小试了一把,感觉挺不错的
velocity很容易上手的
webwork2觉得看 webwork in action这一本书已足够了解,其他的就是在项目慢慢体现啦
1 楼 jvincent 2007-03-20  
用过GWT,编译的时候巨慢,但是对于不熟悉js的来说还是蛮好的,直接用java代码就可以写出ajax的程序了.

相关推荐

    AirPHP轻型开源框架 兼容SAE平台 v1.1 beta

    AirPHP是一款轻型开源框架.设计思想取于多款框架。取其精华思想。AirPHP是一款轻型开源框架,本着“简单 快速 优雅 拓展”的开发思想.使新手也能快速写入标准的MVC程式.基于AirTemplate加速渲染页面输出.简单的模板...

    Maticsoft.Framework中小企业数据库开发框架

    Maticsoft.Framework,短小精悍,超级实用,甚至可以抛弃代码生成工具(它只解决数据新增,删除,修改,分页一旦数据库字段发生改变所有方法都得重新生成,那是一件多么麻烦的事!而此框架正可以解决此问题,使用此...

    xtoon-boot:DDD开源框架-基于DDD领域模型并支持SaaS平台的开发脚手架

    抛弃MVC框架,拥抱更适合复杂业务的开发框架;网上基本讲的都是DDD的理论很少有讲怎么落地,xtoon-boot提供了完整的落地方案和实践;可以快速开发,框架提供了系统管理和组织架构等核心模块;支持多租户的SaaS平台;...

    阿里开源的EasyExcel

    无意间查询到阿里开源的EasyExcel框架,发现可以将解析的EXCEL的内存占用控制在KB级别,并且绝对不会内存溢出(内部实现待研究),还有就是速度极快, 大概100W条记录,十几个字段, 只需要70秒即可完成下载。遂抛弃...

    抛弃LCDS和FMS,在tomcat下开发Red5应用(第十一篇)-电子白板协同浏览

    Flex是一种构建富互联网应用(RIA)的开源框架,基于ActionScript和MXML,可以创建与Red5服务器交互的前端界面。 5. `flexhtml.htm`:这可能是一个包含Flex组件的HTML文件,用于在浏览器中嵌入Flex应用,使用户能够...

    MFEXECOM论坛开源

    为了造福我朝程序猿,作者将框架独立出来了,便于二次开发和整合到其他项目中,并且保留全部中文注释。 【mfexePHP 3.0】 mfexephp 3.0,采用简单结构,有利于 HHVM 编译 / opcode 缓存,提前与 PHP7 契合做好准备...

    新版ThinkPHP微信屏蔽投诉按钮域名防封源码 带搭建教程

    thinkphp框架开发屏蔽举报按钮代码,完全开源无加密,代码核心主要是屏蔽微信投诉按钮技术,全面兼容新(安卓/苹果)系统的微信app,也是市面上较新的微信域名防封技术之一 现在市面上都是一个JS和一个php文件的...

    使用Puppet框架管理基础设施

    本书适用于对系统管理和Ruby语言有一定了解的读者,帮助他们快速上手Puppet这一开源工具。 #### 二、主要内容概述 本书分为四个章节,覆盖了从入门到进阶的主要知识点: - **第一章:Baby Steps to Automation**...

    这是一个全新的表格软件,类似于Excel,但抛弃了Excel臃肿的外壳,存储方式与内核全部自制

    Qt是一个跨平台的应用程序开发框架,广泛用于创建图形用户界面(GUI)。PyQt则是Python语言对Qt库的接口,它允许开发者使用Python编写Qt应用,结合了Python的易用性和Qt的强大功能。因此,我们可以推断这个表格软件...

    一款适合中国网站的前端框架H-ui.zip

     只有抛弃陈旧的东西,才能迎合新一代人的审美和品质需求,才能建立自己的品牌基础!官网地址:http://www.h-ui.net入门地址:http://www.h-ui.net/Hui-overview.shtml 标签:前端框架

    SDSC Syslog-开源

    6. **安全性**:考虑到日志信息可能包含敏感数据,SDSC Syslog通常会提供安全功能,如加密传输、访问控制和审计日志,以保护日志不被未经授权的访问和篡改。 7. **性能优化**:由于SDSC Syslog面向的是大规模系统,...

    Lerx 开源网站内容管理系统(CMS) v5.5

    Lerx CMS V5版(以下简称V5版)采用了基于Java的SpringMVC框架,抛弃了V2-V3版本使用的Struts 2。SpringMVC框架更加安全、稳定。ORM持久化框架依旧使用Hibernate,版本为5.4。开发时采用的数据库为M

    Personal Calculator.NET-开源

    这种设计方式抛弃了传统图形用户界面(GUI),转而采用命令行交互,使得用户可以通过键盘输入指令进行计算。这种方式不仅简洁高效,也更适合程序员和高级用户,他们可以利用其快速执行复杂的计算任务,而无需通过...

    teachManager:早期个人项目(很烂的项目),开启重构及更新为springboot项目

    决定继续使用amazeUI作为前端前台框架(非常喜欢这个妹子开源框架,作为一个大老爷们,感觉自己也是个小公举啦) 采用layui作为前端后台框架(这个前端框架真心好用) 决定使用amazeUI的最新版本(2.7.2),翻新重做...

    Spring的数据源配置 DBCP、C3P0、JNDI.txt

    - **被抛弃连接超时时间** (`removeAbandonedTimeout`):被抛弃连接的超时时间(秒),默认为300秒。 - **记录被抛弃的连接** (`logAbandoned`):是否记录被抛弃的连接,默认为`false`。 #### 三、C3P0 **C3P0**...

    Webx3_Guide_Book.pdf 用户指南

    Webx 3.0抛弃了Webx 2.0中过时的、从Turbine中发展而来的 Service框架,直接采用Spring作为其基础,并对Spring作了重大改进。Webx 3.0完全兼容 Webx 2.0的代码,只需要修改配置文件就可完成升级。 • 2010年底,Webx...

    大气背景扁平化UI设计bootstrap模板4971.zip

    Bootstrap模板是一种基于HTML、CSS和JavaScript的开源框架,由Twitter开发并维护,旨在加速Web应用程序的前端开发。扁平化设计是近年来流行的界面设计风格,它抛弃了过度装饰的元素,强调简洁、清晰和易用性。"大气...

    ThinkPHP微信屏蔽投诉按钮域名防封源码 带搭建教程

    Thinkphp框架开发屏蔽举报按钮代码,完全开源无加密,代码核心主要是屏蔽微信投诉按钮技术,全面兼容新(安卓/苹果)系统的微信app,也是市面上较新的微信域名防封技术之一 现在市面上都是一个JS和一个php文件的版本...

    OneBase v1.3.4.zip

    高效: 自动缓存设计,抛弃了处处判断的尴尬,使您不知不觉中已经使用了缓存。 特色: 无限级权限控制,垃圾资源回收,系统通用回收站,SEO变量支持,性能与操作监控,等各种脑洞大开的设计思想。 OneBase截图 ...

    扁平化设计师展示bootstrap模板是一款绿色扁平化风格的设计公司宽屏模板下载 .rar

    Bootstrap模板是一种基于HTML、CSS和JavaScript的开源框架,由Twitter开发并维护,旨在加速Web应用程序的前端开发。扁平化设计是近年来非常流行的一种设计趋势,它抛弃了传统的深度感和立体元素,转而采用简洁、清晰...

Global site tag (gtag.js) - Google Analytics