不使用Java Web框架改善life ?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (29)

学习另一个Java Web框架。 JSP,Struts,Wicket,JSF,JBoss Seam,Spring MVC等等 - 这些无数的框架都试图解决相同的问题。然而,他们中没有一个真正解决了基本问题 - 这就是为什么所有时间都会出现越来越多的新问题。

大多数人对第一印象看起来非常明亮和闪亮,因为他们简化了简单的事情。 但是一旦实现真实世界的用例,就会遇到问题。 框架通常不提供任何帮助,但是通过强迫事物根据框架自身的逻辑和环境来实施,从而阻碍和限制选择。

总之,使用框架时我看到以下缺点:

  1. 主要是一个陡峭的学习曲线,在开始之前,您首先需要了解一些相当学术的概念,并了解一堆配置文件的含义和位置。
  2. 文档通常或多或少都很糟糕,要么缺少公共可访问的在线参考,无法过时,将不同的不兼容版本或所有这些混在一起,并且通常不提供任何有用的示例。
  3. 该框架由数以万计的类组成,这使得仅通过浏览源来理解预期用途几乎是不可能的。
  4. 因此,您需要购买一些“21天内虚拟用户的XYZ”类型的用户界面不良的书籍,因为他们缺少全文搜索并且很难随身携带。
  5. 要真正使用这个框架之一,你需要通过记住足够的类和方法名称,直到你的脑袋里充满了你不能用于其他任何东西的愚蠢和无用信息。
  6. 这是一个很大的开销,会降低应用程序的性能,并在尝试了解真正发生的事情时让你的大脑感到麻木。
  7. 在现实世界中,由于生产力的压力,通常没有时间熟悉新事物。由于这种边干边学的方法,人们总是只看最快的方式完成下一项任务,而不是真正理解新工具及其可能性。
  8. 遵循标准的观点将允许新项目的人快速入门在我看来是无效的,因为即使在同一家公司内,每个项目都使用不同的框架(至少在我的情况下)。

在我看来,爱因斯坦以下的引用非常适合这里:

“我们不能用创造它们时使用的那种思维来解决问题。”

回到我过去很好的PHP编程时代,编码仍然很有趣且富有成效,我曾经为大多数事情编写自己的框架,并且只是从一个项目复制粘贴并将它们应用于下一个项目。 这种方法付出了很多,导致了快速开发,没有任何开销,并且框架实际上比大多数Java框架更强大,但在单个文件中只有几百行代码以及一些简单的mod_rewrite规则。 这当然不是解决网络开发的所有问题,但它简单,快速和直截了当。 虽然完全符合当前项目的要求,但它也易于扩展,并且由于零开销而具有非常高的性能。

那么为什么所有这些使用这个框架的麻烦,为什么不把它们全部扔掉,并回到根源呢? 当我们明天开始下一个项目时,我应该对我的老板说什么? 或者,有没有真正有所作为的框架? 还是我忽略了一些隐藏的优势?

提问于
用户回答回答于

提出自己的框架的问题在于,你会犯下所有既定框架已经遇到并解决的所有错误。这在安全方面尤其如此。

只要问杰夫和那些家伙,他们在堆栈溢出中实施WMD时必须考虑什么。我宁愿使用它们在项目中生成的内容,而不是从头开始实施它。这只是一个例子。

用户回答回答于

回到我过去很好的PHP编程时代,编码仍然很有趣且富有成效,我曾经为大多数事情编写自己的框架,只是从一个项目到下一个项目进行复制粘贴。这种方法付出了很多,导致了快速开发,没有任何开销,而且框架实际上比大多数Java框架更强大

原谅我相信那不是一秒钟。

但在单个文件中只有几百行代码加上一些简单的mod_rewrite规则。这当然不是解决网络开发的所有问题,但它简单,快速和直截了当。

因此,基本上,您在几个月或几年的时间内开发了自己的框架,根据自己的需求量身定制,并且可以非常快速地进行工作,因为您知道它的密切程度。

然而你不明白为什么其他人也这样做,然后试图将结果转化为每个人都可用的东西?

你开发这个伟大的框架在哪里?如果功能强大且易于使用,专用社区在哪里,那么成千上万的用户和数百个网站开发出来了?

即使在同一家公司内,每个项目都使用不同的框架(至少在我的情况下)

那么,那就是你的问题。为什么要在每个项目之后抛弃每个框架获得的专业知识?

这个想法是选择一个框架,并坚持在多个项目,以便你精通它。您必须投入一些时间来学习框架,然后通过允许您在更高层次上工作来节省时间。

扫码关注云+社区