`
hk200
  • 浏览: 49777 次
  • 来自: SH
最近访客 更多访客>>
社区版块
存档分类
最新评论

不使用Appfuse 的5个理由

阅读更多

Appfuse 为 J2EE 项目开发指明了一条可行的道路。如果你看过为什么使用AppFuse的七个理由,以及深入研究过AppFuse。那么毫无疑问Matt Raible 值得令人尊敬,他是J2EE的开拓者之一。

这里我想说明一点,AppFuse并不是项目的灵丹妙药。在项目应用中,我不推荐采用appfuse。

理由1:ant绑定

为了加快项目的开发工作,我们经常使用IDE环境,但是,appfuse对IDE环境的支持并不是很好。万宝全书式的ant脚本,让你感到手脚被绑,一次次的ant编译,反而会影响项目开发效率。严重反对使用。

理由2:目录结构过于分割

影响效率的重要原因之一,光在调试ant及目录问题上,也可能成为你项目的绊脚石。

理由3:开源项目滥用

Appfuse会使你开源项目使用过渡,不可否认J2EE 开源项目是一个巨大的知识宝库,但是实际终究是实际,开源项目使用过渡,会使你项目变得臃肿不堪。

理由4:束缚创造性

J2EE语言是标准式的工业式的语言,本身已经拥有众多JCP标准,Appfuse为了加强J2EE项目开发标准化,作出了卓越的努力。但是,任何事务都有两面性,more standard ,less creation。 压抑了创造的权力,所有的解决方案均有解,并非是一种对现实问题真理追求的本来面目。

理由5:团队工作学习曲线变陡

并不是所有人都非常熟悉appAnt,app目录结构,很可能打破原有的知识体系,增加开发成本和风险。

 

 

 

 

分享到:
评论
19 楼 pior 2007-08-24  
现在好像appfuse2已经不推荐用ANT了`而是maven``
18 楼 LucasLee 2007-08-23  
对于第一点很同意。
每次都用ANT来编译部署,实在是太慢了,每次都要两分钟,什么编译、自动生成web.xml、tld、自动打包部署。。。随便改一个文件也要等两分钟,实在太不爽了。

当然hack过好一些了,但比起经典方式和还是慢。
17 楼 jncz 2007-08-22  
appfuse我始终觉得应该是个拿来学习的东西,怎么会有人直接在其基础上开发项目呢。。。。。

框架性的东西总会带有这样那样的束缚,而且需要理解透彻才能很好的修改这个“框架”。
16 楼 hunter006 2007-08-20  
没有绝对的对与错,只有适合不适合。 Appfuse 楼主说的这些都是问题,但是从我的角度来说这不是问题,2.3.4 是项目经理和架构师没有尽到应尽的工作,项目经理和架构师需要对一个已有的框架进行合理的剪裁,已适合本公司本项目的需要;1和5 是开发人员的能力问题,如果有一个好的入门级培训,我想任何一个开发人员都不会拒绝使用ant或者maven。
15 楼 movingboy 2007-08-20  
胡说几句:

AppFuse自动生成的项目框架还是很棒的,感觉如果自己做一个,从无到有,从小到大,到最后就变得跟AppFuse差不多了;另一方面,如果你并不熟悉AppFuse用到的各种技术框架,而它一下子把所有的东西都放到你面前,学习曲线非常陡

还有一个感觉,AppFuse就是一个模板,除了它为你生成的基础框架,还有很多业务代码你还是不得不写的。写这些代码时如果忘了AppFuse所应用的思想(比如各种技术是如何集成的,各个层是如何划分的),写出来的东西还是一团糟

此外,感觉AppFuse还是有一些缺陷的,在真正应用它之前建议去官网看看相关的缺陷报告
14 楼 lgx522 2007-08-20  
Appfuse伴随我2年了,使用越久,愈发感受到Matt Raible对Spring+Hibernat+XX架构的深入理解,由此可以充分体味J2EE组件化、分层设计的与实践。强烈推荐大家学习使用。

ant是个宝,大家玩久了自有体会。
开发做久之后,大家就不会在意什么IDE了。我现在基本上不用IDE了,只用点EditPlus这类的字处理器。由此对代码正确、重用的要求及实践不断提高,代码质量大有改进。
建议诸位Java老fans逐渐扔掉IDE。这是进阶的重要方法。
13 楼 D-tune 2007-08-20  
最近我们公司开发一个内部系统,采用APPFUSE框架,但是没有使用ANT,而是改为MAVEN来做配置
12 楼 toeo 2007-07-03  
对啊.生成的代码很保准.都差不多一样.
而且多目录也可以修改ant脚本吧.
而且appfuse本身是个Eclipse工程.
使用习惯不同吧.人家老外就喜欢用ant.
人家觉得敲击命令行编译.比较快吧.
11 楼 koalant 2007-06-30  
可以尝试一下 "Equinox"
http://raibledesigns.com/rd/entry/ann_appfuse_light_1_0
10 楼 hunter_gd 2007-06-29  
使用Appfuse有一点好的地方,可以快速生成代码(只要你将模版改为适合你的产品风格就可以了),在项目中的确感到生产效率的提升!
9 楼 hk200 2007-06-11  
我知道不是你投的。你人不错。

几年前也为这个问题吵过,其他不说了。

只是觉得很遗憾。




8 楼 抛出异常的爱 2007-06-11  
hk200 写道
入门贴?这是软工问题么?哪一个入门的人知道这些问题??这是实践问题,你懂什么?

很搞笑,而且扣了我10分,我只不过说了自己的经验。

有什么理由扣分?

那边版主是不是脑子有问题?发一个帖子就被扣分。

很早就认为javaeye 专制得不得了,总是认为自己说得是权威,因为看不顺眼所以不想在这里发什么讨论,随便发一张,就扣10分,这里的确搞不好了。

不要太激动。。。。
我并没给你投票。。

如果你没看明白可以参考版规再看我的发言。

很多投你票的人可能不太了解架构师的工作。
7 楼 hk200 2007-06-11  
入门贴?这是软工问题么?哪一个入门的人知道这些问题??这是实践问题,你懂什么?

很搞笑,而且扣了我10分,我只不过说了自己的经验。

有什么理由扣分?

那边版主是不是脑子有问题?发一个帖子就被扣分。

很早就认为javaeye 专制得不得了,总是认为自己说得是权威,因为看不顺眼所以不想在这里发什么讨论,随便发一张,就扣10分,这里的确搞不好了。

6 楼 gigix 2007-06-11  
daquan198163 写道
害怕ant绑定却不害怕ide绑定?

恩恩……
5 楼 我想我是海 2007-06-11  
使用这样的东西,除非团队里面真正有人能完全掌握它。
其实自己在项目里慢慢积累起来,就算达不到Appfuse那样的高度和强度,都远远比直接用它来得好。
4 楼 抛出异常的爱 2007-06-11  
真可怜,如果发到软工版的话可能理解你的人会更多一些

PS:我也一样建议不使用appuse这样子的一个框架底子。。。
如非必要,什么都不要加在项目中,
如非有利,不轻尝新的技术。

项目要考虑的方面很多。、
PS:不是完全同意楼主的观点。
但不介意讨论这个问题。

引用
精华帖 (0) :: 良好帖 (0) :: 入门贴 (24) :: 隐藏帖 (0)


败了。。。
3 楼 daquan198163 2007-06-11  
害怕ant绑定却不害怕ide绑定?
2 楼 hk200 2007-06-11  
自己根据实际情况选择使用编写

1 楼 fhjxp 2007-06-11  
在Eclipse中开发完全可以不使用ant

相关推荐

    appfuse

    描述中提到的是使用AppFuse 2.0版本的情况,这可能是指一个基于早期MVC架构的示例项目。在AppFuse 2.0时代,它主要支持Struts或 Tapestry 框架,而非现代的Spring Boot。由于描述中提到“没有jar包”,这可能意味着...

    使用 AppFuse 快速构建 java

    为了开始使用AppFuse,首先需要准备一个合适的开发环境。以下是一些基本步骤: 1. **下载AppFuse**: 从AppFuse的官方网站下载最新版本的源码包(本文使用的版本是appfuse-tapestry-1.9.3-src.zip)。将其解压至所需...

    使用appfuse构建环境

    - 注意:AppFuse 1.9.4版本暂时不支持Tomcat 6.0及以上版本,推荐使用Tomcat 5.5。 **4. 安装Ant** - 访问Apache Ant官网下载最新版的Ant,并解压到指定目录。 - 设置环境变量`ANT_HOME`指向Ant安装目录,并确保`%...

    玩转appfuse--使用appfuse建设MVC网站

    **玩转AppFuse:使用AppFuse建设MVC网站** AppFuse是一个开源项目,它提供了一个快速启动MVC(Model-View-Controller)Web应用程序开发的框架。基于Java,AppFuse集成了Spring、Struts2、Hibernate等流行的技术,极...

    可直接使用的appfuse项目

    AppFuse是一个集成了众多当前最流行开源框架与工具(包括Hibernate、ibatis、Struts、Spring、DBUnit、Maven、Log4J、Struts Menu、Xdoclet、SiteMesh、OSCache、JUnit、JSTL等(现在还有lucene的,无敌了))于一身的...

    AppFuse

    AppFuse是一个用于启动J2EE项目的工具包,它提供了一种快速而简便的方法来构建基于Java的应用程序。该工具包由Matt Raible创建,他在网络开发领域拥有丰富的经验,并且是多个开源项目的贡献者,包括Roller Weblogger...

    appfuse学习笔记(一)安装部署

    使用 Maven 的 archetype:generate 命令创建一个新的 AppFuse 项目。在命令行中输入以下命令: ``` mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=my-app -DarchetypeGroupId=org.appfuse -...

    APPFUSE工具研究.doc

    AppFuse分为1.x和2.0两个主要版本,其中2.0版是重构建的,采用了Maven 2作为构建工具,而1.x版本则使用Ant。 Maven 2的引入带来了许多优势,包括自动下载依赖项、简化维护(因为所有组件可以一次编译)以及方便最终...

    appfuse 学习笔记

    Appfuse 2.0 要求使用 JDK5 或更高版本。安装完成后,需要设置 `JAVA_HOME` 环境变量,确保指向 JDK 的安装目录。这是后续安装其他工具的基础。 **2. 下载与安装 MySQL 5.x** MySQL 用于搭建数据库环境,为 ...

    使用 AppFuse 快速构建 J2EE 应用

    AppFuse 是一个开源项目,旨在简化 J2EE 应用程序的开发过程。它提供了一个基础框架,结合了多种流行的技术和最佳实践,使得开发者能够快速地创建企业级的 Java Web 应用。通过使用 AppFuse,你可以避免从零开始搭建...

    AppFuse2.1所需包

    AppFuse 是一个开源项目,旨在简化Java Web应用程序的开发。它提供了一个基础架构,开发者可以在此基础上快速构建安全、可扩展的应用程序。AppFuse 2.1 版本是该项目的一个较早版本,但仍然包含了现代Web开发的核心...

    使用AppFuse快速构建J2EE应用.doc

    AppFuse 是一个开源项目,旨在帮助开发者快速构建J2EE应用...本文提供的示例和步骤是基于一个使用Tapestry、Hibernate和Spring的简单应用,但AppFuse也支持其他技术栈,如Struts、JSF等,可以根据项目需求进行选择。

    appfuse使用手册

    代码自动生成工具appfuse的中文使用手册

    AppFuse项目研究

    在项目初始化阶段,AppFuse 使用了一个名为 `StartupListener` 的监听器。这个监听器是 Spring 的 `ContextLoaderListener` 和 Servlet API 的 `ServletContextListener` 的子类,它在Web应用程序启动时执行一些关键...

    MAVEN 搭建APPFUSE

    【MAVEN 搭建APPFUSE】是一个关于使用Maven构建基于AppFuse的应用程序的教程。AppFuse是一个开源项目,旨在简化Web应用程序的开发,它提供了一个基础框架,可以帮助开发者快速启动新项目,整合了Spring、Hibernate、...

    Appfuse开发教程

    Appfuse 是一个开源项目,它提供了一种快速开发Web应用程序的方式,尤其在使用Java技术栈时。本教程将深入探讨如何利用Appfuse创建数据访问对象(DAO)和简单Java对象(POJO),并进行数据库操作。 **一、在APPFUSE...

Global site tag (gtag.js) - Google Analytics