论坛首页 编程语言技术论坛

这是一篇我也不知道该往哪里发的帖子

浏览 53545 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2006-04-16  
zkj_beyond 写道
引用
现在的问题是我们很难招到人,2个人做界面编程实在是忙得焦头烂额,面试了不少人,要说很长JavaScript经验的人就不多,要在Ajax方面一直在探索的那就更少了

想想跟着potian做几年,那感觉肯定不一样.


学习RoR是跟风,相信和我一样工作4-5年的人,很难全面的把握是否该多学一门语言,算是技术储备吧.

看了一下ruby中文站东西,感觉ruby语言和javascript脚本语言很多类似,但从脚本语言角度来看成熟了不少.
如变量定义,确定了全局,局部等....
都是基于对象,没基本类型.难道整型也是对象, 那常量定义还有什么意义?
明确了"全局对象","局部对象","函数的调用对象"

但这种语言的IDE不好做吧.看例子了GUI界面,和swing差不多,晕!


用脚本语言最容易产生的置疑就是没有好的IDE工具怎么办?

不过我1999-2000年用PHP开发了两年的互联网站,那时候可不是只有UltraEdit吗,也没有觉得有什么不爽的。这种问题似乎只来自于习惯了在IDE下面写代码的Java程序员。
0 请登录后投票
   发表时间:2006-04-16  
firebody 写道
robbin 写道
工作当中我的开发工具目前肯定仍然是Java,但是我已经决定用ruby on rails开发新版的JavaEye网站了。最近JavaEye的新的发展方向已经浮现出来了,我会争取在国庆节launch JavaEye2.0 on rails(网站策划我已经找到了合适的人选,而这是过去限制我开发JavaEye最重要的原因之一)。

至于为什么用ruby on rails,而不是Java,原因其实很简单,就是我发现做互联网应用它的特点和企业应用不太一样,这里强调的是及其快速的反馈速度,与发展规模相匹配的性能要求。我最近考察了一下比较成功的互联网站,发现他们的模式无不是如此,而能够匹配他们这种商业发展模式的开发方式,基本上也是PHP+Tuexdo,在这种领域,用Java开发(即使是Webwork/Spring/Hibernate仍然显得开发速度太慢,但这已经是Java框架目前能够做到的快速开发极限了)显得太慢了。我现在也在开发web2.0网站,用Webwork/Spring/Hibernate,一边开发一边抱怨,这样领域太强调反馈的速度了,Java还做不到那么理想,而PHP其实是可以的(然而我现在肯定不会用PHP,其实在上一波互联网时代,我就用PHP做了两年的网站开发),而我知道目前最合适的选择就是ruby on rails。我已经决定从今天开始学习ruby 和rails。计划6月份开始动手开发。

即使是Webwork/Spring/Hibernate仍然显得开发速度太慢,但这已经是Java框架目前能够做到的快速开发极限了
随着Rails的推广,j2ee 会从他们身上学到很多东西,知道应该舍弃一些灵活而带来更多的好处。
虽然语言级别的灵活比不过脚本动态语言,但是除了这些之外,还有很多很多优秀的思想可以借鉴。
我认为,J2EE以后会朝着这方面发展。


我到很想和firebody探讨这个问题,因为大概从去年年底我就一直在思考这个问题,J2EE如何继续简化下去。从目前的趋势来看,Hibernate无非就是改用annotation取代hbm.xml,而spring的xml无非就是加了namespace来简化配置,而webwork也使用了annotation来消除validation xml,这些改进能够有所简化,但是没有根本性的改变。除此之外,看不到其他方面大的改进可能性了。

所以我也挺同意gigix的观点,J2EE经过这几年opensource框架的锐意改革,已经进入了语言所能够达到的成熟度了,想再取得更大的改变,只能看Sun在JDK6.0里面怎么做手脚了。

总之组合性框架的发展,hibernate/spring/webwork/freemarker已经是最高峰了,只能考虑其他方向,有两个方向:

1、full-stack的框架
提供单一的全功能框架,可以简化学习和开发,这方面的代表作是rife。我春节的时候仔细研究了rife,结果是令人失望的,rife的persistence不是O/R Mapping,业务bean的组装也不是IoC方式,View的template则更加怪异。是一个很难另人接受的怪胎。

2、模仿rails的框架
这方面的代表作是grails,前段时间我刚研究了这玩意。非常近似rails,但是离Java开发方式很远。既然已经接近rails方式,远离Java方式,那何妨直接用rails呢?

这也反过来说明一个问题,Java的强项在于严格的类型检查带来的强大的IDE支持下的各种功能,重构,调试,补齐,编译检查什么的。Java的强项决定了它不适合走快速简化的开发路子。

从去年11月到杭州和potian见面聊rails之后到最近和potian 在JavaEye论坛讨论rails,我的探索简化开发之路基本上是这样的路线:

尝试探索webwork/spring/hibernate更加简化的框架模板,发现虽然有帮助,但是仍然达不到理想效果;

放弃框架组合,寻找full-stack的Java框架,最后找到rife,深入研究,失望,放弃;

开始意识到编译语言的限制,开始寻找脚本语言方案,尝试grails,发现开发方式已经远离Java;

意识到编译语言的强项,尝试使用Java语言方式替代annotation,强调编译语言本身的类型安全特点;

开始开发互联网应用,越来越觉得Java开发互联网应用缓慢(我用Java基本上都是开发企业项目,头一次用Java开发互联网网站);

经过调查,发现成功的互联网网站的模式基本上是PHP+Tuexdo,经过和potian在JavaEye论坛大讨论,心里的Java适合互联网开发的观点开始动摇;

联想到过去两年使用PHP开发互联网站的经历,心里开始彻底否定Java开发互联网网站的方式,决心采用ruby on rails;
0 请登录后投票
   发表时间:2006-04-16  
引用
不过我1999-2000年用PHP开发了两年的互联网站,那时候可不是只有UltraEdit吗,也没有觉得有什么不爽的。这种问题似乎只来自于习惯了在IDE下面写代码的Java程序员。


对我来说,用jsptaglib,java mvc好处还有就是不用在jsp中写很多逻辑.在IDE里语法检查就差不多了.我是能把逻辑放到服务器端就服务器端.这也是ajax中,我喜欢服务器端生成javascript,而不是xml的原因之一.把最复杂的逻辑放到最容易实现的地方.

javascript我也写了不少,不过我习惯了editplus,那是没办法,如果有好的ide,我是不会用edit写大量的脚本的,连oracle的存储过程都有个编译语法检查.

ruby不会象javascript一样没有个象样的  xunit,重构工具 吧?(我喜欢与javascript比较,反而不与java比较,层次低啊 )
0 请登录后投票
   发表时间:2006-04-16  
charon 写道
其实ajax的兴起给了大家一个以对付服务器端的精神来对付script端的机会。
而想用taglib或者所谓的封装的方式,用服务器端语言来取代或者部分取代javascript编程的做法,我觉得会死得很难看.  这些代码和client端的view结合太紧密了。而关键的一点,从本质上来说,完全取代javascript的做法是不经济的,而不能完整取代,那就是画地为牢。同时,这个做法比较的是ruby用于封装javascript的dsl在编写客户端代码的方便性上与javascript相比有无优越之处。而同为动态语言,这个非常难说。
我有个疑问,为什么不想用javascript?难道真想让ruby包打天下?


那你为什么用Hibernate不去直接用SQL? HQL和SQL不也是差不多? 用SQL可以获得强大的性能但是需要考虑不同数据库平台的不同实现细节. javascript也是一样的情况, 可能国内ajax都只针对IE设计的吧, 那这个问题就不用提了. 国外的话不能不考虑firefox和safari, 否则的话丢掉小部分用户事小, 造成的舆论影响事大. 以Hibernate的强大也不可能完全取代SQL一样不能让用它的人不用去学SQL, RJS也不可能完全取代javascript并让人不用去学javascript. 但是思想都是用更高的抽象层次尽可能地对一般性问题进行简化. 仅此而已.
0 请登录后投票
   发表时间:2006-04-16  
hehe, IDEA永远比Eclipse 聪明一点点阿一点点,比如Annotation ,它就会search and load annotation in class path,弹出提示....
0 请登录后投票
   发表时间:2006-04-16  
江南白衣 写道
hehe, IDEA永远比Eclipse 聪明一点点阿一点点,比如Annotation ,它就会search and load annotation in class path,弹出提示....

这样的特性在eclipse3.2中会提供
0 请登录后投票
   发表时间:2006-04-16  
我也来插两句:

我公司负责几个web2.0网站的运营和开发。在运营过程中有很多问题,我们团队一直在java上开发多年,因此整个系统架构顺理成章采用了java,并使用了spring来作为核心。

但是一些问题随之而来,网站不断发展,而用户需求/bug不断涌现,还有时不时能蹦出来的合作项目。这个时候发现即便采用了最最简便的方式,基于spirng还是开发起来太慢。很多时候功能增加、修改都是需要以天作为时间才能赶上市场的步伐。有时候还想,算了不管它了,干脆用jsp得了,也能重用spring的组件,不过基于安全和性能上的考虑还是没敢放开。

可巧的是我跟robbin一样也在99-2000年用php开发过web应用,那时候还用过perl,对脚本语言开发web网站的便利、效率和优势有着深刻了解。于是也曾想过用脚本语言开发来搞定公司的网站开发速度问题。于是去年也去了解了一下python和ruby,然而我自己评估来看,python我还时不时用用(主要用于主机系统维护),而ruby我则没怎么用。我对ruby和python都不是很精通,但是一个基本的感觉,至少python比ruby在应用和库的支持上要丰富得多,python上的重量级应用不少,国内我最爱的douban也是其中之一;看看ruby呢,好像没见到几个?虽然不是以是否有成功应用来论断一个技术的优劣,但是我想有人做过成功的东西,至少表明这个东西能够做成成功的事情。如果让我来选择php/python/ruby,或许会直接选php,毕竟语法简单明了,没有排版要求,而且会的人一抓一大把。下来我才会选择python,最后才是ruby。

同事中有一个哥们使用了ROR差不多一年时间了,在来我公司之前也给客户开发过web网站,也自己搞过自己的blog系统,也是一个公司的CTO,对ROR算是有点研究。我也跟他探讨过使用ROR是否可行的问题,他说基于负责任的态度,他还是比较谨慎,只限于私人研究和应用,用于公司开发还是要在考察考察。

后来大家讨论结果,还是基于java来搞,毕竟java的那么多代码在哪里,还有异步处理的jms服务器这个东西也不好处理。因此把系统分成2块:第一块属于业务系统,比较慎重的东西,因此还走java传统方式。另外一块是时间性非常强的,比如短期合作项目等,就用gails之类的方式来处理。不过这样下来,估计也很难再转到其它脚本语言上去了。不知道,大家可否有建议?
0 请登录后投票
   发表时间:2006-04-16  
怎么感觉讨论来讨论去,现在这么多的语言/库/框架没有一个是完全适合开发WEB的?
0 请登录后投票
   发表时间:2006-04-17  
wangzy 写道
我也来插两句:

我公司负责几个web2.0网站的运营和开发。在运营过程中有很多问题,我们团队一直在java上开发多年,因此整个系统架构顺理成章采用了java,并使用了spring来作为核心。

但是一些问题随之而来,网站不断发展,而用户需求/bug不断涌现,还有时不时能蹦出来的合作项目。这个时候发现即便采用了最最简便的方式,基于spirng还是开发起来太慢。很多时候功能增加、修改都是需要以天作为时间才能赶上市场的步伐。有时候还想,算了不管它了,干脆用jsp得了,也能重用spring的组件,不过基于安全和性能上的考虑还是没敢放开。

可巧的是我跟robbin一样也在99-2000年用php开发过web应用,那时候还用过perl,对脚本语言开发web网站的便利、效率和优势有着深刻了解。于是也曾想过用脚本语言开发来搞定公司的网站开发速度问题。于是去年也去了解了一下python和ruby,然而我自己评估来看,python我还时不时用用(主要用于主机系统维护),而ruby我则没怎么用。我对ruby和python都不是很精通,但是一个基本的感觉,至少python比ruby在应用和库的支持上要丰富得多,python上的重量级应用不少,国内我最爱的douban也是其中之一;看看ruby呢,好像没见到几个?虽然不是以是否有成功应用来论断一个技术的优劣,但是我想有人做过成功的东西,至少表明这个东西能够做成成功的事情。如果让我来选择php/python/ruby,或许会直接选php,毕竟语法简单明了,没有排版要求,而且会的人一抓一大把。下来我才会选择python,最后才是ruby。

同事中有一个哥们使用了ROR差不多一年时间了,在来我公司之前也给客户开发过web网站,也自己搞过自己的blog系统,也是一个公司的CTO,对ROR算是有点研究。我也跟他探讨过使用ROR是否可行的问题,他说基于负责任的态度,他还是比较谨慎,只限于私人研究和应用,用于公司开发还是要在考察考察。

后来大家讨论结果,还是基于java来搞,毕竟java的那么多代码在哪里,还有异步处理的jms服务器这个东西也不好处理。因此把系统分成2块:第一块属于业务系统,比较慎重的东西,因此还走java传统方式。另外一块是时间性非常强的,比如短期合作项目等,就用gails之类的方式来处理。不过这样下来,估计也很难再转到其它脚本语言上去了。不知道,大家可否有建议?


grails? 最好还是等真有网站跑在那个上面再看吧, 如果你不想过于冒险的话.
0 请登录后投票
   发表时间:2006-04-17  
robbin 写道
用脚本语言最容易产生的置疑就是没有好的IDE工具怎么办?

不过我1999-2000年用PHP开发了两年的互联网站,那时候可不是只有UltraEdit吗,也没有觉得有什么不爽的。这种问题似乎只来自于习惯了在IDE下面写代码的Java程序员。


IDE的作用,说穿了无非是帮助你更快地写出一大堆跟你想做的事情不搭嘎的代码罢。
0 请登录后投票
论坛首页 编程语言技术版

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