`
sunguanxing
  • 浏览: 1097907 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

技术展望 —— 挽救B/S Webapp

阅读更多
确信,fastm一定会作为一种模板开发标准流行起来。

当然,其间必定会遭遇习惯和成见的巨大阻力,毕竟,fastm的作者只是一个名不见经传的无名之辈。但fastm终会胜出,只是时间早晚而已。

一旦fastm的知名度超过某个阀值,fastm必将以星火燎原之势攻城掠地,争夺所有“复杂”模板技术的用户。



短期来看,fastm消灭了复杂,就等于消灭了大量的商机。fastm本身又如此简单,提供不了足够的新的商机;技术作家连写《fastm in Action》的机会都没有,因为fastm的定义和用法都太简单了;而且fastm极大地降低了Java Webapp的技术门槛,是否会令Java Web程序员贬值?fastm对 Java 开发阵营有什么好处?



长期来看,fastm能够帮助Java开发阵营夺回ASP.net在Web开发领域夺走的领地,改变两大阵营的力量对比。

fastm足以与Visual Studio.net(ASP)相较,甚至更胜一筹。

fastm模板不需要任何特殊的支持,就能够在普通浏览器中“所见即所得”;ASP模板必须在Visual Studio.net中才能正确显示(而且是以form的形式显示)。

fastm模板比ASP模板简单多了。从用法来说,甚至比其源头PHP模板还要简单。使用fastm,大量的PHP程序员可以直接转到Java Web开发阵营,而不用学习那些庞杂复杂的新模板技术。

JSR-223是一个Java与PHP等脚本语言(还有Perl,Python,Ruby,Tcl)等互操作的JSR。http://www.jcp.org/en/jsr/detail?id=223 目前正处于初稿审定阶段。

这从另一个方面说明,fastm生逢其时,直接为Java和PHP程序员提供Java Native的PHP改进模板。

至于fastm是否会令Java Web程序员贬值。我想,可能会让某些复杂技术的专精高手(比如JSP调试高手,各种TagLib使用高手)贬值。但fastm不会令解决真正问题的高手贬值,相反,fastm会帮助这些高手把精力更集中在解决真正的问题上。



关于目前如火如荼的JSF,我很高兴看到这个功能强大的开发框架的出现。

但说实话,我不认为,TagLib可视化拖放开发足以和Visual Studio.net(ASP)竞争。那等于以己之短,较人之长。

而且,一个潜在的危险是,Java Web开发框架将被引上一条微软倡导的“C/S结构、桌面客户端”的不归之路。



目前的一个趋势是,B/S开发框架尽量向C/S开发框架靠拢。

几乎所有的现代Web开发框架都在努力地追求着基于事件机制的处理方式——把前台页面组件和后台处理代码绑定在一起。

Visual Studio.net的ASP开发工具是一个典型的类C/S的B/S开发结构。JSF的Webapp开发工具部分也亦步亦趋,跟着走上了这条路。

不仅在服务端的开发框架存在这种趋势,在客户端这种趋势也愈演愈烈。继ActiveX,Applet之后, XMLHTTP,FLEX等新一代的“浏览器插件客户端技术”方兴未艾。

开源社区Mozilla提出并支持XUL技术。微软的LongHorn 64位操作系统提出“桌面即浏览器”(其实等于宣告浏览器的消亡),力推XAML。

HTML不被双方看好。HTML前景堪忧。

一种可能性:将来HTML很可能只作为一种历史资料的记录格式而存在,而不会作为应用程序的UI存在;而HTML浏览器也只将作为一种历史资料查看器而存在;HTML B/S Webapp时代结束。



可以说, B/S Webapp正是毁于自身越来越复杂的内需和开发结构。

B/S Webapp的界面的互操作性要求越来越强,浏览器需要支持的特性越来越多,附带的插件也越来越多(Java Script,ActiveX,Flash,XUL)。既然这样,为什么还用浏览器?Web Service协议比HTTP协议格式更完善,直接用Web Service客户端不是更直接,更彻底?

微软把握并引导这个趋势,Java世界也做好了两手准备。

无论是Visual Studio.net,还是JSF,其重头戏都是支持Web Service应用程序开发。毕竟,Web Service是属于未来两年的技术。



Web将变得越来越来越强大,无处不在。Semantic Web更有效地把整个Web资源组织为一个巨大的文档库、数据库、资料库和服务库。在这个大好形势下,主角将是各种Web Service Agent,而现在正当红的主角——HTML B/S Webapp却面临着将来(几年)出局的可能。(呵呵,先别急着说这是危言耸听,我只是假设这样的可能性)



倾巢之下,岂有完卵?

如果HTML B/S Webapp消亡了。大量的HTML TagLib就随之淘汰了。Tapestry,XMLC,Echo也随之淘汰了。

XML + XSLT的项目也许还能够幸存——比如,改造XSL,输出XUL或XAML。

fastm当然也会幸存——fastm也能够“所见即所得”地生成XUL和XAML。只要有动态生成可视化XML UI的需求,fastm就有用武之地。



如果B/S Webapp注定要退出历史舞台,fastm也无力挽救,但fastm至少可以拖延这个过程。fastm极低的技术门槛能够吸引大量的页面开发人员,留连在HTML B/S Webapp的领域里。

而且,fastm既属于现在,又属于未来。既可以用作构建现在的HTML、WML UI,也可以用于构建将来的XUL、XAML UI。



在这样的朝不保夕的严峻形势下,为什么不选择fastm呢?^_^
分享到:
评论

相关推荐

    training/webapp镜像

    training/webapp镜像,方面一些内网用户无法直接pull镜像时下载: 使用方法: docker load -i training-webapp.tar.gz

    Web基础——WebApp之初体验(三)

    在本篇关于“Web基础——WebApp之初体验(三)”的文章中,我们将深入探讨Web应用程序(WebApp)的关键概念和技术,以及它们如何为用户提供便捷的在线体验。WebApp是互联网技术的重要组成部分,它们允许用户在浏览器...

    最好用免费报表开发工具Grid++Report 6.7.5.1 (6.7.20.405) 含演示Demo例子模板

    Grid++Report是一款同时支持C/S软件(桌面程序)与B/S软件(WEB程序)开发的报表工具,功能全面易学易用。C/S开发适用于VB.NET、C#、VB6、VB、VC、Delphi、C++Builder、QT与易语言等。B/S开发适用于ASP.NET(C# & VB.NET)...

    webapp1:webapp1

    在本解析中,我们将探讨Webapp1的核心要素、技术栈、开发流程以及与之相关的知识点。 【核心知识点】 1. **Web应用程序基础**:Webapp1是Web应用程序的一个实例,它由HTML、CSS和JavaScript等前端技术构建,通过...

    webApp1:webApp

    【标题】"webApp1:webApp" 涉及的知识点主要集中在Web应用程序的开发..."webApp1:webApp"这个项目可能就是对这些技术的实际应用,通过解压webApp1-master文件,可以进一步研究源代码和项目结构,加深对Web开发的理解。

    clearmin, Bootstrap 3响应 dashboard/webapp/admin 模板.zip

    clearmin, Bootstrap 3响应 dashboard/webapp/admin 模板 #Clearmin 网页模板 Bootstrap 3 dashboard/webapp/admin 模板检查演示:http://cm.paomedia.com/doc浏览器支持:IE9+,( 。Chrome,Firefox,O

    前端经典——webApp登录校验及封装.rar

    前端经典——webApp登录校验及封装

    001_WebApp.pdf

    001_WebApp.pdf 章节概述 • 网站部署规划 部署网站 配置网站 监视网站 流量管理器 创建和配置网站 演示 1 :中国版 Windows Azure 创建新网站 使用 FTP 部署网站 使用 Web 部署来部署网站 演示 2 :...

    AthTek WebXone:将C / S类型的软件转换为B / S类型的webapp。-开源

    AthTek WebXone是高级RIA(富Internet应用程序)... 它还可以轻松有效地将C / S类型的软件项目转换为B / S类型的Web应用程序。 WebXone支持Web应用程序开发中的所有VCL组件,并且所创建的Web应用程序受所有浏览器支持。

    jetty-webapp-7.6.10.v20130312.jar

    java运行依赖jar包

    移动端接口文档示例

    本文档详细介绍了移动端两个重要的接口——用户接口和极光接口的相关知识点。用户接口中的登录接口是任何应用的基础功能之一,其安全性尤为重要;而极光接口则是实现推送服务的关键,对于提高应用活跃度有重要作用。...

    webapp_游戏活动webapp_游戏活动h5自适应手机_

    【游戏活动webapp】是一种基于Web技术开发的互动平台,主要针对游戏爱好者提供各种活动参与、礼包兑换等服务。在移动互联网高度发达的今天,为了满足用户在不同设备上便捷地体验游戏活动,【游戏活动h5自适应手机】...

    证件照标准1寸、2寸模板 爱普生提供(爱普生官网需扣积分下载)

    2011年2月14日测试好用 ...https://myepson.epson.com.cn/frontweb/webapp/images/photo_binfendayin_idcard_2.jpg https://myepson.epson.com.cn/frontweb/webapp/images/photo_binfendayin_idcard_3.jpg ...

    spring 4.3.2全部jar

    spring 4.3.2全部jar,转自官网:...

    webkit webApp 开发技术要点总结

    ### WebKit WebApp 开发技术要点深度解析 在当今移动互联网时代,WebApp因其跨平台性和易维护性,成为开发者构建移动应用的重要选择之一。WebKit作为一款广泛应用于移动设备的浏览器引擎,其对WebApp的支持尤为关键...

    10个流行webapp项目.rar

    10个主流webapp小程序项目,是个非常好的资源,包括主流的:教育,电商,快递,外卖等;10个主流webapp小程序项目,是个非常好的资源,包括主流的:教育,电商,快递,外卖等;10个主流webapp小程序项目,是个非常好的...

    2022网站转换APP源代码WebAPP源代码网站生成APP源代码Flutter项目带控制端

    这是一款网站转换成APP的源代码,开发语言使用Flutter,开发工具使用的是AndroidStudio,你只需要在APP源代码里面填写你的域名,即可生成即可生成APP,包括安卓或者苹果,与此同时我们提供了APP的控制端....

    udptcp_demo.7z

    QT关于udp和tcp通信的demo,课程练习,有bug,以下为凑字数 adfu.khakesogfskjdzdhvsghp9uw04i-rpowm/dfiruaripdi;ewojgfi;worayistroucqmw90re]mur;oidswg;if34]r]3ru

    BBWeblog - BulletinBoard / Weblog webapp-开源

    BBWeblog是使用Jakarta Struts和Hibernate用Java开发的简单,可定制的公告板/ Weblog Web应用程序。

    刘炬光:千万级吞吐WebApp——QQ查找业务的最佳尝试

    刘炬光在w3ctech沙龙上分享的“千万级吞吐WebApp——QQ查找业务的最佳尝试”,展示了如何在高流量环境下实现Web应用的高效和稳定运行。本文将重点分析该分享中涉及的技术实践和解决方案。 一、实时错误监控的重要性...

Global site tag (gtag.js) - Google Analytics