甲骨文收购Sun公司的同时,也将Java纳入其羽翼之下,有人认为JavaServer Faces (JSF)会重蹈Latin和Sanskrit的覆辙。然而和这些预测相反,甲骨文关注与业级,并没有将JSF推到其他受欢迎技术的幕后。相反,甲骨文继续将JSF作为处理前端开发的一种方式。
Java开发者和专家表示JSF依然盛行,而且泰然自若地补充了HTML5和JavaScript,在一些案例中,取代了Adobe Flash。
“在2011年四月份,我们开始进行JSF标准的下一个大修改,2.2版本,”Ed Burns表示,他是甲骨文技术咨询的咨询成员以及JSF标准的领导,“就在这周,我们发布了里程碑式的标准快照,仍旧处于积极的发展中。”
“它处于一种健康的状态,”Ray Ploski介绍,他是红帽开发者编程和战略总监。JFS有两个实现,Mojarra和MyFaces,而且“具有竞争力并能够围绕它快速转移组件生态系统。这项标准处于一种积极的发展中,通过支持这种大型的生态系统带来了变革建议,”Ploski说道。
正在使用Java企业版本的企业通常采用JSF,Kito Mann表示,他是Virtua公司的首席咨询师,“对于那些具有复杂用户界面的应用来说更加流行,”他说道,并指出JSF在金融、政府和保险行业中的而应用正在增加。
“很多大型企业和政府机构正在采用JSF作为一项标准,”Ted Goddard说,他是ICEsoft Technologies的首席软件架构师,“这也正是JSF本意最适合的地方,高度的互操作企业应用,”他补充道。
JSF并不会取代JavaScript
不要期望JSF会取代JavaScript。“它不是一种二选一的题目,”Mann表示,JSF“拥有组件库,这个组件库是一些像表格、树、按钮和微调控制项这样的插件。所有的这些现在使用JavaScript。好处就是JSF对于更为熟悉JAVA而不是JavaScript的开发者来说更加好。你可以通过编写更少JavaScript来获取所需。”但是在大多数复杂的应用中,开发者还是必须要编写一些JavaScript。JSF可以进行起重,他说,因此开发者不必非要自己手动编写。
“理想上,JSF的目标是HTML,因为它使用标签来构建,”Goddard说,以这种方式,JSF类似HTML。JavaScript是作为一种“粘合语言”来使用,但是构建一个完整的具有大量JavaScript的应用,Goddard反对使用JFS。相反,开发者应该使用Java Web Toolit(JWT),JavaScript在此是作为一种可执行的任务,或者它们应该直接用jQuery的JavaScript取代工作。
根据专家所说,在使用JSF的时候最佳实践很重要。Ploski建议开发者要让组件树的大小得到控制,不要大刀阔斧地用异步 JavaScript和XML (Ajax)升级,只掉典型的DRY和代码重用问题。“此外,我也要说使用JSF时利用CDI是一种新兴的最佳实践,”Ploski说道。
同时,Goddard建议选择一个组件库并在开发应用中贯穿使用它。“避免在JSF中使用组件绑定,因为将模型拖到视图,会导致更加难以维护代码。在构建JSF页面的时候开发者需要更加明确的方式。”
根据Burns所说,另一种有用的最佳实践是不要“盲目地买入炒作中的数据传输对象(DTO)这种反模式。正确使用时,尤其是和JSF一起,DTO可以提供刚好正确的抽象,促进松耦合和最小化应用维护。”
开发者也需要和这种框架一起工作,而不是反对,Mann介绍,“有时候人们为其应用增加了功能和特性,在JSF上构建框架,但没有理解它工作的方式。”
令Mann恼怒的是在JSF一场处理时让异常处理“冒泡”。“不要把异常吃了,”他警告。“这会吞噬用户体验,因为应用不同步。”
如果开发者遵循最佳实践,JSF对于用HTML5构建前端应用来说是一种非常卓越的补充,尤其是随着移动浏览器逐渐成为主流。所有的移动浏览器是HTML5浏览器。
“HTML5允许你将大多数UI流程放大客户端,但是你必须根据安全和跨浏览器可移植性非常小心地考虑选择的后果。”
JSF可以规定不同的标记类型,Mann表示,“对于HTML5你有不同的页面,以及一个HTML的旧版本,”他说,“对于移动设备应该有不同的页面,他们都应该使用相同的后端代码。”
期望使用JSF2.2的HTML5会带来更多的机会,Mann表示。2.2中有更好的门户整合和流管理。“我们正在致力于一件事情就是减少服务器端封装,”他说。云支持也逐渐成为Java企业版7的一部分,JSF将会工作的更好。
“因为这种技术的方式是定义清晰的,有益于其他的显示模型,”Mann表示,“相同的应用可以升级来同智能手机或者HTML工作,”这也是最大的好处之一,JSF可以随着其可用支持新的技术。
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
相关推荐
-
AWS MEAN堆栈+JavaScript=快速搭建应用
开发人员在构建Web应用时有许多选择。市面上有无数的框架和语言可选,而像AWS这样的云平台可以方便地部署和扩展应用程序。
-
对话陈本峰:HTML5究竟给企业带来了什么?
智能手机的普及,移动计算的应用,带火了HTML5技术。尤其,当我们看到微软朋友圈被“故宫与腾讯合作”的广告刷屏,我们不得不承认,HTML5技术确实很重要,但是HTML5究竟带来了什么,与以往移动技术有什么不同?
-
HTML5促进企业移动化服务走向极致
在企业困扰于传统移动化方式过于复杂时, HTML5凭借其天然的跨平台特性,乘势而起并逐渐得到企业的关注。可是,由于HMTL5标准建立时间不长,展示性能及稳定性更是需要和浏览器有一个良好的兼容,除此之外企业更是缺乏实际应用经验,所以基于HTML5技术的企业级服务市场还处于一片初创状态。
-
HTML5如何在企业中深入使用?
据调查显示全球拥有490亿 在线设备,比人口数量多几倍,这说明平均每人拥有不只一部分在线设备。由此可见,全球移动生态系统是多么的庞大。