2007年web开发技术预言(下)

Web开发技术流行趋势

PHP——高效、稳定的圣殿轻骑兵


图-5 web开发语言平台分布图


         评论: 很欣慰地看到作为“开源常青树”的PHP获得如此殊荣。由于PHP的高效、全能、强适应能力、强扩展能力,所以获得了众多开发者的青睐。
        同时作为传统语言的ASP和JSP依然在势均力敌的博弈,而春风得意的后生Ruby可谓潜力无限,当然这也得益于RoR的流行。但是从Ruby占5.31%的比例来看,RoR还不是企业应用开发的主流

        
         PHP何以如此红火?
        1.高效性:
        基于C语言的特性已经使其具备了高效的潜质,再加上支持页面模板技术的 smart引擎 、提供代码重用能力的 PEAR 、可替代循环的正则表达式等,使其在服务器端执行效率得到了加强。

        2.应用范围广:
        服务端脚本——这是PHP的传统领域,也是最主要的目标领域;
        命令行脚本——可以编写一段 PHP 脚本,并且不需要任何服务器或者浏览器来运行它;
        桌面应用——编写可以利用 PHP-GTK 来编写桌面应用程序。

        3.强适应能力:
        使用PHP开发时不但可以自由地选择操作系统和web服务器,而且可以根据需要选择使用面对过程和 面对对象 ,或者两者混和的方式来开发。

        4.强扩展能力:
        PHP 最强大最显著的特性之一,是它支持很大范围的数据库。
        PHP 还支持利用诸如 LDAP、IMAP、SNMP、NNTP、POP3、HTTP、COM(Windows 环境)等不计其数的协议的服务。
        而且它具有极其有效的文本处理特性,支持从 POSIX 扩展或者 Perl 正则表达式到 XML 文档解析。
        如果将 PHP 用于电子商务领域,会发现其 Cybercash CyberMUT VeriSign Payflow Pro 等支付方式以及 MCVE 函数 对于在线交易程序来说是非常有用的。

        另外, eweek 网站完成的 《2006年10大应该学习语言》 ,也值得大家作为学习的参考:
         1. PHP
        2. C#
        3. AJAX (Asynchronous JavaScript and XML)
        4. JavaScript
        5. Perl
        6. C
        7. Ruby and Ruby on Rails(RoR)
        8. Java
        9. Python
        10. VB.Net (Visual Basic .Net)


聚合推动web运转的车轮


图-6 当前web应用项目的技术分布图


         评论: 由 此可见,经过仅仅2、3年的发展,聚合技术已经撑起了web前进的舵盘,随之兴起的AJAX、JavaScript、Blog、Wiki、Podcast 也依靠聚合技术传遍了世界每个角落。Flash虽然份额不小,但其也缓慢地转向客户端脚本的方向以进一步提高优雅的用户体验。
        回到我前面的原理:“用户体验决定了技术发展方向,而不是理论。”,聚合技术的兴起必定带动客户端和服务端的技术提升。我相信未来几年web属于结构化blog和Feed网络:


         结构化Blog(Structured Blog):
        一种新兴的、实验性的Blog,它最终把信息传送到语义网(Semantic web)。尤其是它提供了自描述内容,这种自描述内容可以被轻松地植入到web站点或者Blog中,提供给Blog作者建立和聚合结构化信息(比如评论、事件、媒体)的工具。
         在传统Blog记录和结构化Blog记录之间的不同之处——后者发布的内容是计算机可读取的格式,其它的聚合服务可以理解它们,使用它们来生产事件日历 (calendars of events)、任务板(job boards)、书籍评论(book reviews)或者影视投票。当然,结构化Blog也遵循RSS和Atom标准。结构化Blog通常处理结构化的内容格式,比如微内容 (microcontent)。

         注:语义网(Semantic web):是在万维网上,通过放置计算机可处理的文档来进行信息交换最终建立一个全球媒介的项目。目前语义网在万维网协会Tim Berners-Lee先生的指导下,正通过使用标准、标记语言和相关的处理工具对web进行着扩展。

         注:微内容(microcontent):微内容是一种以短小形式发布的信息,它的长度受到了话题长度的限定和软件的技术限制。

         Feed网络(FeedMesh):
        FeedMesh是一组用来建立“结对网络(peering network)”、完成对分散的web更新通知和内容发布的技术。采用web聚合的在线服务商,包括 PubSub Feedster Technorati Bloglines Yahoo 共同参加制定了一项共享weblog更新通知服务(“pings”时常见的一种更新通知服务方式)的标准。
        它使blog作者和聚合发布者从中获益:更快速的内容发布、可靠的可升级的通知服务。而对于在线服务的客户来讲,好处则是带宽的节省和低延迟。

Ajax成为开发者未来一年的学习趋向


图-7 web开发者希望从web或者出版物获得技术的分布图


         评论: 从分布图来看,47%被调查的web开发者通过web或者出版物来希望获得更多的AJAX知识,而将近34%和29%的被调查者希望获得XHTML/CSS和PHP的web文章或者书籍。
         本人认为:"Web2.0之所以如此精彩,这正是web聚合(syndication)作用的结果。Blog、Wiki都被广泛地应用在web写作领域, 而Blog比Wiki更流行,真是由于其更加易于聚合、推广。聚合技术所依仗的便是RSS、Atom之类的标准,而这些标准的技术支持便是 XHTML/CSS/XML,而AJAX为Blog、Wiki提供了完成优良的用户体验。"


        国内已经出版的Ajax图书:
         《Ajax基础教程》 《Foundations of Ajax》 中文版)
         《Ajax实战》 《Ajax in Action》 中文版)
         《Ajax修炼之道》 《Pragmatic Ajax》 中文版)

        本人感觉《Ajax实战》是最为深入全面的AJAX开发手册(详情见: 书评:《Ajax实战》 )。大家还可以看看 第二书店的 Ajax专题 ,包括了目前国内已经出版和即将出版的所有Ajax图书。

在web业界的下一件重大事件将是什么?


图-8 在未来每个人都会在15分钟成为大明星?


         不妨让我们了解一下SitePoint&Ektron调查报告中的大众观点,也许看过之后,你也想说说自己idea:
{

—“实时虚拟3D视图和站点导航,你的鼠标指针不仅可以在x、y轴上移动,而且还可以在网站的内部(z轴)移动。”

—“我想象不出下一件大事是什么,而在向标准靠拢的趋势下,利用有依据的技术和语义将帮助我们在资源之间建立更加紧密牢靠地关系。”

—“我认为我们将继续看到优雅性、功能性占有统治地位。我认为那些现在‘热’的东西将像时尚一样过去,只有真正有功能的、可访问的、具有市场的、有用的才会存在。”

—“你将不必为获取信息而搜索web。只要定义你想要的和收集这些东西所用的web就可以坐等其成了,比如:我作为一名消费者,定义了我想购买的一台显示器。这个信息将被潜在的商品提供商所发布或者收集。而他们会提供给我产品信息,使我轻松地购买他们的产品。”

—“以我的观点看,未来( web3.0时代 ?)会关注内容、非功能性。这个站点可以提供给访问者到达最深层内容的最轻松的访问。而其它任何网站,包括复制其它站点做法的跟风(copy-cat)站点将继续走老路。”

—“Fragrant 网站采用XHTML2.5来驱动安装在手机和PDA的USB棒或者植入到SD卡中的信息素散发器。在数码相机上安装可捕捉味道的扩展卡,拍照的同时还捕捉 到了味道,这难道不是为网络上的图片又增加了一个新特性吗?在看食物图片的同时,闻一下味道如何?然后在餐厅预定一下位置?哇,全新的平面+嗅觉广告!”

—“我相信现在网络连接的速度这么快,像video这样的东西可以应用在电子商务网站和服务网站。直接和你的顾客面对面地交流、赢得他们的信任,让他们知道你是谁。”

—“搜索引擎将代替web和web的内容!越来越多的搜索引擎和目录会保存web站点的内容,这样就没有人需要去真正的网站。”

—“在 web领域的下一件大事是建立家族(或者继承)的门户(portal),家族成员或者继承人在那里一起建立一个家族站点。这些站点维护家族信息——以数字 格式保存家族成员姓名、财产、相片等。这样,全球气候不会破坏或者抹去整个家族的记忆——它将被安全地保存在冗余服务器上,并供奉在‘家族拱顶’页面上。 你将拥有关于自己家族和成员之间相互关系的巨大数据池。无论这个家族是否都居住在同一座城镇、州县或者同一个国家、甚至同一个星球上,通过照片和简介上的 链接可以直接获得相关信息。很cool吧!另外,可建立一个收费的服务:通过发送的口腔采样药签(mouth swabs)来获得与之匹配的家族成员的DNA序列。并且保存这些信息用来进行DNA比对等不时之需…”
}


cleverpig的Idea:

         1.XM传输协议取代传统的HTTP: “老旧的HTTP已经完全过时,它会被XMTP(eXtensible Markup Transport Protocol)所替代。这种XMTP是专为传输XML和聚合而设计,在数据传输上突破了HTTP的瓶颈,而且更加安全。”

         2.浏览器厂商制定“XML序列化/反序列化”标准: 主流的浏览器将在接收XML后进行解析,将XML反序列化为支持JavaScript或者其它浏览器脚本语言的Object,使client直接读取服务器push过来的数据,并将用户的请求序列化发送到服务器。

         3.订阅模式将转变为“推送”模式: 聚 合程序不再是单调的周期性查询服务器,而是服务器上面维护一系列用户订阅列表,只要打开浏览器便可以及时看到自己的订阅信息,无论何时何地,具备浏览器和 访问网络能力即可。并且这些消息会跟随服务器的update而被push到client,有效地保证了信息的及时性。建立上文提到的FeedMesh之上 的聚合服务器,专门提供信息检索、订阅、推送,接收结构化Blog提交的新信息。

         4.浏览器更加智能: 不但应有设备范围被扩充到移动设备、电器,而且更加智能。比如可以通过设置电冰箱的购买策略,使其在食品放入时通过RFID扫描其条形码,记录过期时间,并制定提醒功能,而在库存量不足时在通过主人确认后自动发送给杂货店的订货单。

相关资源:

SitePoint&Ektron的2006/2007web开发状况报告

极限编程组织官方网站

Javaeye的《ruby on rails为什么暂时无法成为企业应用开发的主流?》

Jasonkolb的《The Next Big Thing on the Web》

Knownow技术介绍

eweek的《2006年10大应该学习语言》


感谢阅读此文

请支持 cleverpig 发起的

你可能感兴趣的:(Web,Ajax,PHP,应用服务器,网络应用)