如今,基于JavaScript的框架在Web开发的世界中占据着主导地位,JavaEE的JSF是否仍然有意义,您是否应该将其用于下一个项目?
什么是JSF?
JSF是基于组件的Web框架,是JavaEE的一部分。在JavaEE8添加其新的MVC框架之前,它是JavaEE下唯一的前端框架。
JSF有什么好处?
对我而言,JSF的主要优势在于JSF生态系统中的组件框架,尤其是PrimeFaces或诸如omnifaces之类的实用程序库。它们使您可以快速开始项目,有大量示例,特别适合团队或开发人员缺乏前端技能的项目。部署模型通常很简单,每台服务器只有一个WAR或EAR文件
JSF有什么不好的地方?
年,JSF受到ThoughtWorksTechRadar的批评,该批评被搁置了。
批评的主要部分是,JSF模型存在缺陷,因为它...
“鼓励使用自己的抽象,而不是完全拥抱底层的网络模型”
他们确实做出让步,认为Web模型在JSF的更高版本中变得越来越重要。
对这篇文章提出了反驳,特别是与JSF的最新版本有关,但是它使JSF被认为是难以使用的框架。
JSF是Marmite
JSF是前端开发的代名词。
什么是软糖?这是您在吐司面包上铺开的酵母提取物。有些人喜欢它,有些讨厌它,但没有中间立场。出于记录,我讨厌marmite,但我喜欢JSF。
我喜欢JSF的原因是,您可以访问成熟且有据可查的高质量组件。它还具有允许前端技能较弱的团队开发具有专业外观的网站的优势。不利之处在于,由于JSF下的Request/Response模型更加抽象,因此难以交付更复杂的需求。
您应该将JSF用于新项目吗?
JSF模型已失宠。它被视为具有RESTfulAPI后端的当今JavaScript框架的遗留框架。这使Java朝着实现RESTful微服务的方向发展。这种方法通常可以比JSF更好地扩展。
StackOverflow博客文章显示在前端JavaScript世界中并非一帆风顺。这些框架的寿命相对较短,尽管有迁移策略,但您确实冒着JavaScript框架过时的风险。
在这方面,JSF具有成为成熟模型的优势。还值得记住的是,如果您的团队缺乏前端技能,那么JSF将帮助您快速提供具有专业外观的网站。
最后,开发这么多年我也总结了一套学习Java的资料与面试题,如果你在技术上面想提升自己的话,可以