论坛首页 Java企业应用论坛

只看代码是不够的,建议讨论标准问题

浏览 15312 次
该帖已经被评为精华帖
作者 正文
   发表时间:2004-07-22  
如何评价一个Web框架,你有些什么样的标准。

看着大家讨论Web框架的优劣,于是我开了一个代码擂台,现在我发现就算大家的代码都展示出来,还是很难得到一致的意见。看来还有一个评价标准的问题。

你如何评价一个Web框架,有些什么标准,这些标准的优先级如何?为什么?什么样的代码和架构,能够达到这样的标准,请举例说明。

欢迎大家热烈讨论。
   发表时间:2004-07-22  
首先一点,所有的技术人员都会先使用自己熟悉的技术,只有一种技术熟悉了,才能知道他的问题,然后才去寻找解决方案。
如果说一个框架好的标准,很显然,成本的控制很重要。其实可以说就是工作量的问题。
0 请登录后投票
   发表时间:2004-07-22  
列一下我对一个Web Framework的要求, 优先级别是从高到低:

1. 在展现层支持模板语言, 不能限制必须使用jsp, 可以方便地添加velocity, freemarker, fastm等等各种模板技术.
2. 提供基本的Form组件, 如input text, select, radio box等等, 并且能够方便地进行扩展.
3. 能够方便地和其他架构的集成, 如Hibernate, Spring等等.
4. 代码重用, 架构应该帮助我隔离掉对于servlet的依赖, 能够让大部分的代码在其他环境下可以重用.
5. 便于测试,
6. 用户输入的错误处理, 支持客户端和服务器端的双重校验.
7. 可以有效地做到页面编写人员和业务逻辑开发人员的分离, 页面编写人员只需要学习少量的知识就可以做相关的工作, 而不用了解具体的业务代码.
8. 方便的I18N支持
9. IDE的集成
0 请登录后投票
   发表时间:2004-07-22  
不如这样吧,给出一个明确的页面需求描述,各自写代码,谁用的代码数最少就是谁厉害,无谓作口舌之挣。
0 请登录后投票
   发表时间:2004-07-22  
age0 写道
不如这样吧,给出一个明确的页面需求描述,各自写代码,谁用的代码数最少就是谁厉害,无谓作口舌之挣。


这个和代码多少没有绝对关系吧
0 请登录后投票
   发表时间:2004-07-22  
Quake Wang 写道
列一下我对一个Web Framework的要求, 优先级别是从高到低:

1. 在展现层支持模板语言, 不能限制必须使用jsp, 可以方便地添加velocity, freemarker, fastm等等各种模板技术.
2. 提供基本的Form组件, 如input text, select, radio box等等, 并且能够方便地进行扩展.
3. 能够方便地和其他架构的集成, 如Hibernate, Spring等等.
4. 代码重用, 架构应该帮助我隔离掉对于servlet的依赖, 能够让大部分的代码在其他环境下可以重用.
5. 便于测试,
6. 用户输入的错误处理, 支持客户端和服务器端的双重校验.
7. 可以有效地做到页面编写人员和业务逻辑开发人员的分离, 页面编写人员只需要学习少量的知识就可以做相关的工作, 而不用了解具体的业务代码.
8. 方便的I18N支持
9. IDE的集成


1. 稳定性。大量的用户群,大量的成功案例。
2. 灵活性。不应该限制用户的主观能动性。
3. 独立性。不依赖于特定的工具,项目能够独立发展。
4. 通用性。能够和其它大多数框架组合使用。相当于Quake Wang的3.
0 请登录后投票
   发表时间:2004-07-22  
一、可测试。这是我现在最看重的,遵循TDD,方便了产品功能的不断增加。
二、扩展性。对于各个部分如Controller Servlet等需要有良好的扩展功能,这个对于将来扩展为Portal框架等至关重要。
三、参数的自动注入。页面表示层的参数可自动注入至Action部分,这个对于Action的移植以及扩展至与Spring等的集成较为重要。
四、View层支持多种格式的解析。如Velocity、XSLT等等。
五、Action层支持AOP的嵌入。会使得Action层变得灵活并且更为简单,只需要关注业务点。
0 请登录后投票
   发表时间:2004-07-22  
看来看去,像是在说spring,当然spring不仅仅是一个web框架。也正因为它不仅仅是一个web框架,才勉强能够满足那么多要求。
不过Quake Wang的第2条好象满足不了。
0 请登录后投票
   发表时间:2004-07-23  
Quake Wang 写道
列一下我对一个Web Framework的要求, 优先级别是从高到低:

1. 在展现层支持模板语言, 不能限制必须使用jsp, 可以方便地添加velocity, freemarker, fastm等等各种模板技术.
2. 提供基本的Form组件, 如input text, select, radio box等等, 并且能够方便地进行扩展.
3. 能够方便地和其他架构的集成, 如Hibernate, Spring等等.
4. 代码重用, 架构应该帮助我隔离掉对于servlet的依赖, 能够让大部分的代码在其他环境下可以重用.
5. 便于测试,
6. 用户输入的错误处理, 支持客户端和服务器端的双重校验.
7. 可以有效地做到页面编写人员和业务逻辑开发人员的分离, 页面编写人员只需要学习少量的知识就可以做相关的工作, 而不用了解具体的业务代码.
8. 方便的I18N支持
9. IDE的集成

spring第2点和第9点做的还不够好.

对于第2点,假如一个Web框架要支持多种view技术的话,不太可能做好.Struts提供这些组件不过也是为了data bind.   spring专门有个包是干这个的,可以直接使用也可以对它做做包装.因此,我觉得第2点的实质是完善的data bind机制

对于第9点,除了MS的东西有IDE支持外,java这边好象没有任何一个web框架做到了,jsf据说有ide支持但没看过,也就不知道它做的好不好
0 请登录后投票
   发表时间:2004-07-25  
Quake Wang 写道
列一下我对一个Web Framework的要求, 优先级别是从高到低:

1. 在展现层支持模板语言, 不能限制必须使用jsp, 可以方便地添加velocity, freemarker, fastm等等各种模板技术.
2. 提供基本的Form组件, 如input text, select, radio box等等, 并且能够方便地进行扩展.
3. 能够方便地和其他架构的集成, 如Hibernate, Spring等等.
4. 代码重用, 架构应该帮助我隔离掉对于servlet的依赖, 能够让大部分的代码在其他环境下可以重用.
5. 便于测试,
6. 用户输入的错误处理, 支持客户端和服务器端的双重校验.
7. 可以有效地做到页面编写人员和业务逻辑开发人员的分离, 页面编写人员只需要学习少量的知识就可以做相关的工作, 而不用了解具体的业务代码.
8. 方便的I18N支持
9. IDE的集成

同意quake wang的观点!
0 请登录后投票
论坛首页 Java企业应用版

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