论坛首页 Java企业应用论坛

我觉得WEB页面的开发用模版语言很多余

浏览 16585 次
精华帖 (0) :: 良好帖 (1) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2004-11-12  
goldrain 写道

我当然反对在jsp页面写业务逻辑,我写的jsp都只是拿出数据进行展示而已。当然模版语言做这个可能更简单点。但模版语言现在对我甚至对很多人而言都是可有可无的,至少我接触的多数开发员是这样,可能他们通常更了解Java吧。

感谢大家的提示,我会重新审视模版语言,再回来讨论。

如果模板语言做显示比jsp更简单而且不容易带来混乱。我为什么不用呢?在框架下模板语言才能真真体现优势。
0 请登录后投票
   发表时间:2004-11-12  
goldrain 写道
除非你能告诉我它还有其他jsp无法完成的功能,否则我认为自己还是有资格评论的。


口气怎么有点象在骂版?
引用

除非你能告诉我java还有其他c/c++无法完成的功能,否则我认为自己还是有资格评论的。


我也赞同jsp的缺点就是它的功能太强大,不过jsp编程规约可以解决这一点。
0 请登录后投票
   发表时间:2004-11-14  
我认为JSP的功能应该被定位在接收参数,传递参数上。

至于参数的展示可以交给JS,var i = <%=i%> 也是可以的。

剩下的交给JS吧,起码页面看起来清爽,灵活性也很高。
0 请登录后投票
   发表时间:2004-11-14  
JAVA的VIEW层描述语言从jsp到摸板语言的转变 整个就是让程序员从"不能有话好好说"到"不会有话好好说"的过程 都是陷入了一种两难境地
模板引擎的设计最早是来自于 webmacro 我在使用PHP做B/S结构的软件时比较多的接触了 模板功能用比,PHP本身做为弱类型语言在在开发

VIEW层时容易做出大堆大堆的PHP+HTML的页面 模板的引入使得HTML页面清爽了许多,程序员们想当然的认为这样一来在HTML没有了那些该死的

php标签影响美工,可这只是一相情愿罢了。在美工看来这些乱七八糟的{$name} {#while} <--while--> 比以前还糟:"从前我还能分清哪块是

程序代码,现在这些新出来的标签让我头晕"--美工如是说。
在这些模板中 if ,while, for 之类的东西一个都没少,只是换了个样子出来罢了。要完成稍复杂的页面逻辑,模板语言必然面对IF,WHILE 之

类的流程控制语句,模板中不断加入新功能,包含外部文件、使用外部对象、函数什么的简直成了另一种程序语言。smarty模板就是这方面的

代表
至少就我所知道的聪明点的PHP的程序员 无论是大的网站还是B/S的软件都不在使用模板了,当然更不能退回到PHP+HTML的时代,他们用自己的

所谓UI框架+php代码。

说了这些PHP那边的事,
再说JAVA这边
JSP的被否定是自然的从其它语言转过来的开发人员对这个是很敏感 jsp+html比php+html 更让人恶心,
JAVA里也有模板而且好像功能更强,当然在PHP里的模板问题都在JAVA WEB开发中都出现了
"模板语言+html" 相比"JSP+HTML"除了分离控制逻辑和显示逻辑之类的好处外 相对JSP来说明显的好处有: 只提供比较基本的流程控制功能、

可以控制对象的访问、可以被一些MVC框架支持等等吧

实质问题是这样的:无论是模板语言还是JSP都试图用传统的控制流程语句去描述日益复杂的"页面流"
都是基于IF ,ELSE ,iterator的。当页面越来越复杂、控制流程也相应增加。而且比较多的需求修改其实是显示格局(逻辑)的变化比如三列变

四列,行显示变列显示之类的,或许你可以把这些都做相应的类抽象出来,但也只是救一时之需

我想说的是JAVA世界中模板的引入是换汤不换药的,使用它可能会提高你的生产力,但那很有可能是因为其它的原因。
我想现阶段在VIEW层 如果你的手下更熟悉JSP,你完全可以制定出严格的JSP的使用规则比如只使用基本的if,else,while 不要用new AClass()
只用<jsp:useBean>  JSP里只有VO 什么的  如果最后形成的页面仍然混乱不堪,至少还有重构这个稻草吧,把那些IF,ELSE 放到相应的VO里

或许有好的WEB UI framework 才是减轻页面开发的途径 (像dotnet 或者 像DLEE的团队)
0 请登录后投票
   发表时间:2005-05-25  
人们认为 servlet 中 print HTML 太麻烦了,于是 jsp 出现了;
人们又认为 jsp 中的 scriptlet 太强大,容易混乱,于是模板出现了;
人们又认为模板功能太弱了,于是模板有了脚本语言、控制逻辑...;
......
我们到底想要什么?!
0 请登录后投票
   发表时间:2005-05-26  
巴豆 写道

在这些模板中 if ,while, for 之类的东西一个都没少,只是换了个样子出来罢了。要完成稍复杂的页面逻辑,模板语言必然面对IF,WHILE 之类的流程控制语句,模板中不断加入新功能,包含外部文件、使用外部对象、函数什么的简直成了另一种程序语言。


phpbb, fastm, jdynamite, jivan, xmlc, wicket(?) 等,都没有逻辑控制语句、外部文件包含、外部对象,这些东西。

myy 写道

人们又认为模板功能太弱了,于是模板有了脚本语言、控制逻辑...;


velocity, freemarker等一开始出现的时候,就是 脚本,就是语法树。而不是后来加的。
phpbb, fastm, jdynamite, jivan, xmlc, wicket(?) 等,一开始出现的时候,就不是脚本,只是结构树。
0 请登录后投票
   发表时间:2005-05-26  
不明白各位同事都是做什么样子的项目。还能出现让美工去改JSP页面,或是velocity的页面,看看我的这个系统切图,美工的工作是什么呢?最大工作就是对不同的ID做些美化的CSS,在者就是一些小图的制作。

JSP也好,velocity也好,关键是你怎么用,在我的印象中他只不过是个展示。
JSP中可用的tiles tags ,velocity中有可用的layout,美工要做什么,程序员要做什么,我想应该分得出来吧。
如果是非要让美工完成很多的话。那倒不如换一些模式,
html + xmlhttp,会不会好一些呢。

0 请登录后投票
   发表时间:2005-05-26  
我用XML+XSLT。
0 请登录后投票
   发表时间:2005-05-30  
myy 写道
人们认为 servlet 中 print HTML 太麻烦了,于是 jsp 出现了;
人们又认为 jsp 中的 scriptlet 太强大,容易混乱,于是模板出现了;
人们又认为模板功能太弱了,于是模板有了脚本语言、控制逻辑...;
......
我们到底想要什么?!


to myy:
非常经典的解释
0 请登录后投票
论坛首页 Java企业应用版

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