作为Windows Vista的重要feature,XAML在浏览器中的应用让我心动不已。不过这东西比HTML复杂,以前ASPNET是浏览器端HTML/JavaScript+服务器端C#,HTML都是服务器端生成的;现在是浏览器端XAML/C#,服务器端可以没有,也可以是Web Service或者别的远程服务。JavaScript在浏览器里面能做的事情是很有限的,比如正常情况下不能访问文件系统;同样,运行在客户端的C#代码虽然能被自动加载,但也受安全沙箱模型限制。
假如你在运行在客户端的C#代码里面调用了个SqlCommand,那你的XBAP程序需要的安全级别就一下子变成了Full Trust。这会导致用户不能像访问普通网页一样访问你的XBAP程序,而需要通过MSI安装包安装,或者先下载个证书(就像下载ActiveX控件一样)。如果是一个普通的Internet应用,这显然不是理想的情况。
我想99%的Web应用都是需要访问数据库的。这样最佳设计应该是这样子:
XBAP (UI Layer) <-> Web Service (Business Layer) <-> Database
Business Layer里面可以根据需要分出数据层等等。Web 30是否会引发新一轮革命?与Web 20时代使用互联网是为了把人与人联系起来不同,在Web 30时代使用互联网是为了把信息与信息联系起来,并且能够利用这些信息结合你的个人偏好来回答你提出的各种问题。
你准备去看场**,然后吃点东西填填肚子。你偏爱喜剧**和辛辣的墨西哥菜,于是你启动计算机,打开网络浏览器,进入到谷歌搜索引擎,搜索影院、**和餐馆等方面的信息。
你需要知道附近的影院正在上映哪些**并了解这个**的主要内容,于是快速浏览了一下每部影片的简介以选择究竟要看哪部**。你还要看看这些影院附近各自有哪些墨西哥菜餐馆,以及其他顾客对这些餐馆的评价。这样下来,为了这次出行你出门之前总共要访问五六个网站。
在互联网日益普及的今天,这些上网行为都是再普通不过的。但是,随着互联网进入Web 20以及未来的Web 30时代,同样都是访问网站,个人体验却完全不同,特别是在Web 30时代。
一些互联网专家认为,下一代互联网Web 30可以让你更快速、更轻松地完成诸如搜索**和餐馆这些任务。你不再需要搜索好多次,也不要往Web 30浏览器中输入很多关键字,只要一两句较复杂的语句,网络就会自动帮你完成其余工作。
比如,你可以输入“我想看一部有趣的**,然后到一家不赖的墨西哥菜餐馆吃饭。我有哪些选择?”接下来Web 30浏览器会分析你输入的问题,在网上搜索所有可能合适的答案,然后整理好结果提供给你。
当然,这并不是Web 30的全部本领。许多互联网专家认为,Web 30浏览器可充当私人助理。当你在网上搜索时,浏览器会逐渐了解你对什么感兴趣。你越是能经常使用互联网,浏览器就越了解你,那样即使你提出的问题很笼统,网络也可以给你很满意的答复。
你甚至可以向浏览器提出这样的开放性问题:“我该上哪里吃午饭?”浏览器会查阅你喜欢什么、不喜欢什么的记录,并结合你目前所在位置,然后推荐一系列餐馆。尽管人们对Web 20的认识还处于众说纷纭状态,但性急的互联网专家已经提出了Web 30。实际上,继Web 20之后,Web30成为互联网专家们热议的新话题。
从Web 20到Web 30
在普通大众所熟悉的众多关于互联网的时髦词汇和专业术语之中,最有名的恐怕非“Web 20”莫属。然而,尽管许多人听说过Web 20,但真正了解其含义的人并不多。有的人认为,这个术语本身只是一种推销手段而已,目的在于吸引风险投资者,好让他们往网站投入巨资。
没错,从著名计算机图书出版公司O'Reilly Media的Dale Dougherty首次提出这个术语以来,何谓Web20其实一直没有明确的定义,甚至连Web 10至今也没有一致意见。而另一些人认为,Web 20是实际存在的,Web 20的特点,包括:
1 访客能够对网页进行修改。比如,亚马逊网站允许访客发布产品评述,访客可以使用网上表单把信息添加到亚马逊的网页上,以便将来的访客能够阅读。
2 可使用网页把你与其他用户联系起来。Facebook和MySpace等社交网络网站之所以大受欢迎,就是因为它们便于用户找到对方、保持联络。
3 提供了快速、高效地共享内容的方法。YouTube就是一个典例例子,YouTube会员制作好视频后,即可上传到网站上,供别人观看,整个过程不到一个小时。
4 提供了获得信息的新方法。如今,广大网民可以订阅网页的真正简单聚合(RSS)新闻源,只要保持互联网连接,就能收到关于该网页上所有最新信息的通知。
5 访问互联网的设备不局限于计算机。现在许多人通过手机或电子游戏机来访问互联网。一些专家预计,不久之后,消费者通过电视机及其他设备来访问互联网也将成为一件很普通的事。
通俗地说,Web 10就好比是图书馆。你可以把它当做信息来源来使用,但是无法以任何方式来添加或改动信息;Web 20则像是一个庞大的朋友和熟人圈子。虽然你仍可以用它来获得信息,而更重要的是可以参与到会话中,让会话变成一种更丰富的体验。
尽管到目前为止,还有很多人不太清楚Web 20到底是什么,但另一些人却已经在开始考虑接下来会出现什么:Web 30会是什么样?它与我们今天的互联网有何不同?它到底会是革命性的剧变,还是潜移默化的量变以至于我们甚至注意不到什么区别?
认识Web 30
互联网专家们认为,对于普通用户而言,Web 30带来的最大好处就是让你拥有了一个贴身的私人助理。根据专家们的观点,Web30时代网络对你无所不知,能够自主地查询互联网上的所有信息来回答任何问题。许多专家把Web 30比做是庞大的数据库。Web20使用互联网是为了把人与人联系起来,而Web 30使用互联网是为了把信息与信息联系起来。一些专家认为Web30会取代目前的互联网,另一些专家则认为它将作为独立的网络而存在。
还是用一个例子来说明Web 20与Web30的异同。假设你正考虑去休假,想去热带地区,为这趟旅行你准备了3000美元的预算。你想住在好的酒店,又不想太花钱,还想要一张便宜的机票。借助目前可以使用的互联网技术,你不得不多次搜索以便找到最佳的休假选择:你需要研究潜在的目的地,然后确定哪个适合自己;你还可能要访问若干个折扣旅游网站,然后比较机票和酒店客房的价格;最后,你还要把很多时间花在查阅各个搜索引擎结果网页的结果上,整个过程可能要花好几个小时。
而在一些互联网专家看来,在Web30时代你只要发出一个很简单的指令,剩下的事情则交给互联网,互联网完全可以替你做所有工作:它会根据你的偏好确定搜索参数,以缩小搜索服务的范围。然后,浏览器程序会收集并分析数据并提供给你,便于你进行比较。浏览器之所以有这个本领,是因为Web 30能够理解网上的信息。
今天,你使用互联网搜索引擎时,搜索引擎其实并不真正理解你要搜索的东西。它只是简单地查找出现搜索框中的关键字的众多网页,而无法告诉某网页是不是真与你搜索的东西相关。换句话说,它只能告诉你,关键字出现在该网页上。比如,搜索的是“土星”这个词,最后会得到有关土星的网页搜索结果和有关汽车生产商土星公司的其他搜索结果。
而Web30搜索引擎不但能找到出现搜索词中的关键字的网页,还能理解你搜索请求的具体语境。它会返回相关结果,并建议关注与搜索词有关的其他内容。在本文的休假例子中,如果你输入“热带休假目的地,预算不到3000美元”这个搜索请求,Web30浏览器可能会提供一份与搜索结果有关的趣味活动或美味餐馆列表。它会把整个互联网视做一个庞大的信息数据库,可以满足任何查询要求。
Web 30的主要技术
事实上,今天的人们根本不知道将来技术最终会发展成什么样。以Web 30为例,大多数互联网专家对于它的特点比较一致的看法是,Web30会为用户带来更丰富、相关度更高的体验。许多专家还认为,借助Web30,每个用户会有一个独有的互联网配置文件,该配置文件基于该用户的浏览历史记录。Web30会使用该配置文件为每个用户提供独特的浏览体验。这意味着,如果两个不同的人使用相同的服务,用相同的关键字在网上搜索,他们会得到由各自配置文件决定的不同结果。
这种应用所需的技术和软件还没有成熟。美国的TiVO和Pandora等服务提供了基于用户输入的个性化内容,但它们都依赖一种反复试验的方法,这种方法不如专家们所说的Web 30高效。更重要的是,TiVO和Pandora的服务范围都很有限:分别是电视节目和音乐,而Web30将动用互联网上的所有信息。
一些专家认为,Web30的基础将是应用编程接口(API)。API是一种接口,是一组让开发人员可以开发能充分利用某一组资源的应用程序。许多Web20网站含有的API让编程人员可以访问网站的独特数据和独特功能。比如,Facebook的API让开发人员开发出以Facebook为平台的程序,提供游戏、智力竞赛、产品评价及更多内容。
有望帮助Web 30进入实际应用的一个技术(实际上在Web20时代已经出现)是聚合(Mashup)。聚合是指把两个或更多个应用合并成一个应用。比如,开发人员可以把允许用户评价餐馆的程序与谷歌地图(GoogleMaps)组合起来。这个新的聚合应用不但可以显示餐馆信息评价,还能在地图上把餐馆标出来,那样用户就能查看餐馆位置。一些互联网专家认为,开发聚合应用在Web 30时代会轻而易举,谁都能开发。
也有一些专家认为,Web30会以崭新的面貌出现。它甚至可能不会使用HTML作为基本的编码语言,而是会依赖某种不知其名的新语言。这些专家表示,从头开始可能比试图改变当今的互联网更容易。不过,全新版本的Web 30纯属理论阶段,实际上目前还无法知道它会怎样工作。在有互联网之父之称的TimBerners-Lee看来,互联网的未来是语义网(Semantic Web),而许多互联网专家在谈论Web 30时也大量借鉴了他的理论。
关联数据(Linked Data): 结构化数据,但不一定是语义数据
关联数据这个概念来自W3C,该组织有一个关联开放数据(LOD)项目。以下图表列出了参与该项目的数据集。其中包括著名的ThomsonReuters的Open Calais项目 , Freebase,和DBpedia。这些数据集是在现有本体论(ontologies)基础之上建立的,如WordNet,FOAF,和SKOS,然后在它们之间建立关联。
构建语义网
TimBerners-Lee于1989年发明了互联网。他发明的互联网其最主要用途是作为统一的界面实现信息的彼此共享。不过,Berners-Lee对Web20到底是否存在表示怀疑,认为它只是毫无意义的专业术语。Berners-Lee坚持认为,他发明互联网就是为了能够让这一网络架构能处理Web20所能处理的所有任务。Berners-Lee设想未来的互联网与今天的Web 30概念很相似。它被称为语义网(Semantic Web)。
简单地说,今天的互联网架构是为方便人使用而设计的。它让我们容易访问网页,理解网页所呈现的一切,而计算机却不能理解。搜索引擎也许能查找关键字,但它理解不了这些关键字在网页语境下是如何使用的。
有了语义网,计算机将使用软件代理来搜索及理解网页上的信息。这些软件代理将是在互联网上搜索相关信息的程序。它们之所以有这种功能,就是因为语义网拥有信息的集合体,这种集合体就叫本体(ontology)。在互联网上,本体其实是一个文件,它定义了一组词语之间的关系。比如,“cousin(堂兄弟、堂姐妹、表兄弟或表姐妹)”这个词语是指有着同一对祖父母或外祖父母的两个人之间的家族关系。语义网本体有可能这样来定义每个家族角色:
◆ 祖父母或外祖父母:主体上两代的直系祖先;
◆ 父母:主体上一代的直系祖先;
◆ 兄弟或姐妹:与主体有着同一对父母的人;
◆ 侄子、外甥或侄女、外甥女:主体的兄弟或姐妹的子女;
◆ 阿姨、姑姑或叔叔、伯伯:主体的父母的姐妹或兄弟;
◆ 堂兄弟、堂姐妹或表兄弟、表姐妹:主体的阿姨、姑姑或叔叔、伯伯的子女。
语义网要发挥应有的功效,本体内容就必须详细而全面。按照Berners-Lee的概念,本体会以元数据(元数据是指网页代码中所含的人类看不见而计算机能读取的信息)的形式而存在。
构建本体需要大量的工作。实际上,这是语义网面临的重大障碍之一。人们是否愿意投入精力为自己的网站构建全面完整的本体?网站变化后,他们会维护本体吗?这些都是语义网构建时需要考虑的问题。批评人士认为,创建及维护语义网这种复杂的任务对大多数人来说工作量太大了。
另一方面,一些人很喜欢给互联网对象和信息做标签或做标记。互联网可以对做了标记的对象或信息进行分类。如果博客含有一个标记选项,这样很容易按特定主题对日志内容进行分类。Flickr等照片共享网站让用户可以对照片做标记。
谷歌甚至把它变成了一款游戏:“Google ImageLabeler”让两个人在做标签比赛中相互较量,看哪个玩家为一系列图像所做的相关标记数量最多。据一些专家声称,Web30将来能够搜索标记和标签,并将相关度最高的结果返回给用户。也许Web 30会将Berners-Lee的语义网概念与Web20的标记文化结合起来。
关于互联网未来的几个猜想
总体来说,Web 30还只是处于理论研究阶段,而少有明确的技术出现,但是,这没有阻止人们猜测接下来互联网的未来会走向何方。实际上,在这方面既有保守的预测也有激进的预言,还有听上去更像是科幻**的大胆猜想。
1 技术专家NovaSpivack认为,互联网的发展以十年为一个周期。在互联网的头十年,发展重心放在了互联网的后端即基础架构上。编程人员开发出我们用来生成网页的协议和代码语言;在第二个十年,重心转移到了前端,Web20时代就此拉开帷幕。现在,人们使用网页作为创建其他应用的平台。他们还开发聚合应用,并且尝试让互联网体验更具互动性的诸多方法。目前我们正处于Web 20周期的末端;下一个周期将是Web 30,重心会重新转移到后端。编程人员会完善互联网的基础架构,以支持Web30浏览器的高级功能。一旦这个阶段告一段落,我们将迈入Web 40时代。重心又将回到前端,我们会看到成千上万的新程序使用Web30作为基础。
2 互联网将发展成为一个三维环境。我们将来看到的是Web 3D,而不是Web30。互联网把虚拟现实元素与大型多人在线角色扮演游戏的在线世界结合起来,最后可能会变成融入了立体效果的一种数字环境。你可以以第一人的视角或通过你本人的数字化呈现(即化身),徜徉于互联网中。
3 互联网会立足于分布式计算领域的最新进展,从而实现真正的人工智能。在分布式计算中,几台计算机共同处理一项庞大的处理任务,其中每台计算机负责处理整项任务的一小部分。一些人认为,互联网会拥有思考能力,因为它能把任务分配到成千上万台计算机上,还能查询深层本体。这样互联网实际上会变成一个巨大的大脑组织,能够分析数据,并根据这些信息得出新想法。
4 访问互联网的设备绝不仅限于计算机和手机。从手表、电视机到衣服,将来一切东西都能连接至互联网。用户将与互联网保持持续不断的连接,反过来也是这样。每个用户的软件代理会以电子方式观察用户的活动,从而了解该用户的更多信息。这可能会引发争论:如何兼顾个人隐私与拥有个性化的互联网浏览体验带来的好处。
5 互联网会与其他形式的媒体融合,直至各种形式的媒体之间的所有区别都消失。广播节目、电视节目和故事片都将依赖互联网这种内容分发系统。
当然,现在判断这些未来的互联网当中哪些会变成现实还为时过早,也许未来真正的互联网比今天最大胆的预测还来得出人意料。不过,希望等到未来的互联网变成现实时,大家能就它的名称达成一致意见。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)