我为什么要学习和使用支柱?[已关闭]

2022-09-01 16:52:00

我是一名Java开发人员,经验不丰富,但我对大多数概念都相当熟悉。

我最近使用Tomcat / JSP(约30个动态页面)建立了一个网站。我犯了一个新手的错误,在JSP中包含了大部分核心逻辑,使用了“只是一个简单的项目”的合理化。

我以艰难的方式学习。因此,我现在正在使用servlet在google应用程序引擎中重新构建应用程序,并计划使用Velocity通过模型 - 视图 - 控制器设计模式来实现它。

我也在研究Struts,但以前没有使用过这个框架。

有人能说服我为什么我应该将支柱纳入这个项目吗?对于一个只有一两个人的中型项目,它真的会给我带来很多好处吗?

在带有支柱的额外学习曲线中有明显的成本,收益会超过成本吗?还是使用速度就足以分离逻辑?意见?


答案 1

我会比这个项目看得更久。正如你所看到的,你第一次使用任何技术主要是关于犯错误并从中学习。因此,一旦你完成,第一个项目不太可能成为Struts使用的光辉典范。

然而,使用Struts(以及你指出的主要问题:JSP复制和粘贴)将是一个很好的深入研究“适当”的MVC,即它迫使你以一种特别结构化的方式做事,我碰巧很欣赏,我是一个强大的Struts粉丝。

也就是说,还有其他选择,例如Spring包含Spring MVC以及更多。如果你打算投资克服学习曲线,想想哪个框架在中期对你最有利:例如,你所在地区的雇主倾向于寻找哪些框架?在这个时间点上,我会选择春天,我觉得势头很好,但斯特鲁茨非常擅长它所做的事情。


答案 2

如果你要学习一个框架,那么我会推荐Spring MVC而不是Struts。学习曲线不是太陡峭,互联网上有很多Spring资源。

一旦你有了Spring,你会发现你的应用程序更容易维护和支持。您还可以更轻松地添加增强功能,例如安全性。