站内搜索: 请输入搜索关键词

当前页面: 开发资料首页J2SE 专题struts框架 是否是java面向对象特性的破坏者?

struts框架 是否是java面向对象特性的破坏者?

摘要: struts框架 是否是java面向对象特性的破坏者?


新加入一个使用 struts的工程, 感觉非常混乱。

1、Action或者ActionForm没有分类,类似的Action没有统一的接口。ActionFrom成了个大杂烩,你没法知道某个具体Action的方法,需要哪些元素。

2、Action或者ActionFrom修改后,相关的Action或者Jsp仍然可以编译通过,没有办法强制接口的统一。在多人开发的情况下,必须一个个通知相关开发者相关改变。

3、动不动就要修改struts-config,多人开发时 耦合程度极高,往往不得不等别人用完才能继续开发。

初步就这些感觉。

不知熟悉java开发的高手们 怎么看待 struts?


挺好的,真的,你看到C++的时候,就知道这很面向对象了。



很混乱么??还好,如果你用jsp+javabean+servlet感觉还要混乱,框架这个东西其实我不大喜欢,有时候不够灵活


1、Action或者ActionForm没有分类,类似的Action没有统一的接口。ActionFrom成了个大杂烩,你没法知道某个具体Action的方法,需要哪些元素。

不知道你这句话说什么的

2、Action或者ActionFrom修改后,相关的Action或者Jsp仍然可以编译通过,没有办法强制接口的统一。在多人开发的情况下,必须一个个通知相关开发者相关改变。

这个居然被你说成了缺点,你需要耦合么?

3、动不动就要修改struts-config,多人开发时 耦合程度极高,往往不得不等别人用完才能继续开发。

项目框架定下来后,struts-config需要经常改么?


healer_kx :

  我同时是c++ 和 delphi的程序员。 我觉得Struts 使得java工程看起来更像delphi的工程了,面对过程的特性超过了 面向对象特性! 根本无法同c++相比(当然C++的面向对象特性更多要靠程序员自身的水平实现)


flyforlove :

  强制统一接口 是有益的耦合, 当对某一重要方法做出做出重大改变时,所有使用者都会得到通知(因为他们编译将无法通过)。 而当我没有重大改变时,只要不动接口,自然可以避免耦合了。




gz





antimicro(钻了牛角尖) ( ) 信誉:100 Blog 2006-8-28 15:59:40 得分: 0



flyforlove :

  强制统一接口 是有益的耦合, 当对某一重要方法做出做出重大改变时,所有使用者都会得到通知(因为他们编译将无法通过)。 而当我没有重大改变时,只要不动接口,自然可以避免耦合了。


------------------------

之所以出现这样的情况是因为用了jsp,jsp的解析编译是在程序运行的时候进行的,所以出现这种情况也不奇怪,这不是struts的错。


-#62; Action或者ActionFrom修改后,相关的Action或者Jsp仍然可以编译通过,没有办法强制接口的统一。在多人开发的情况下,必须一个个通知相关开发者相关改变。

你这里“相关的Action或者Jsp”是指什么?

一个 xxxActtion.java 与其它的 yyyAction.java 和 zzz.jsp 之间是功能上的配合关系(比如操作 session 容器),并不是编译上的依赖关系,当然没有办法以“编译不通过”的方式来进行“通知”了。“重大改变”是要见诸于文档的,不能仅寄希望于“编译不通过”。


某个模块的重大改变虽然见诸于文档了,也并不意味着每个开发者都能意识到 自己是否用到了该功能和自己应该进行何种改变。 尤其是很多半路接手的开发者。




↑返回目录
前一篇: UUID格式的验证
后一篇: 新手想解决一个简单的程序