我不认为网络浏览器会随着网络的下一次大变革而消失,但如果浏览器在某些时候被重新发明以更好地适应我们上网的方式,我也不会感到惊讶。
并非Web浏览器自首次出现以来未发生变化。他们经历了大规模的变革,但这是一个渐进的过程,新的想法,如Java,Javascript,ActiveX,Flash和其他附加组件爬进浏览器。
我作为程序员学到的一件事是,当应用程序以最初未开发的方式发展时,它开始变得笨重。在这一点上,通常最好从头开始并设计一些考虑到你想要它做的事情。
这是网络浏览器的最佳时机。事实上,当我在90年代末开始编写Web应用程序时,我认为现在是时候创建一个全新的Web浏览器了。从那以后,网络变得更加复杂。
Web浏览器不适合做我们想要的事情
这是真的。当你考虑我们今天要求他们做什么时,Web浏览器的设计非常糟糕。要理解这一点,您必须首先了解Web浏览器最初设计为基本上是Web的文字处理器。 Web的标记语言与文字处理器的标记语言非常相似。虽然Microsoft Word使用特殊字符指定粗体某些文本或更改其字体,但它 是 基本上做同样的事情:开始大胆。文本。结束大胆。这与我们用HTML做的是一回事。
在过去二十年中发生的事情是,这个用于网络的文字处理器已被修改,以解释我们想要它做的一切。它就像一个房子,我们把车库变成了书房,阁楼变成了一个备用卧室,地下室变成了一个客厅,现在我们想把储藏室连接起来,然后把它变成一个新的房间。房子 - 但是,我们将遇到各种各样的问题,提供电力和管道,因为我们所有的电线和管道都已经变得如此疯狂了。
这就是网络浏览器发生的事情。今天,我们希望将我们的Web浏览器用作Web应用程序的客户端,但他们并不打算这样做。
我在网络编程方面遇到的根本问题,也就是浏览器为Web应用程序制造不良客户端的一个主要原因是,没有好的方法与Web服务器通信。事实上,从那时起,你可以从用户那里获得信息的唯一方法是让他们点击一些东西。基本上,只有在加载新页面时才能传递信息。
可以想象,这使得拥有一个真正的交互式应用程序非常困难。您不能让某人在文本框中键入内容并在键入时检查服务器上的信息。你必须等他们按一个按钮。
解决方案:Ajax。
Ajax代表异步JavaScript和XML。从本质上讲,它是一种做旧Web浏览器无法做到的事情:与Web服务器通信而无需客户端重新加载页面。这是通过Internet Explorer中的XMLHTTP ActiveX对象或几乎所有其他浏览器中的XMLHttpRequest实现的。
基本上,这允许Web程序员做的是在客户端和服务器之间交换信息,就像用户重新加载页面而用户没有实际重新加载页面一样。
听起来不错,对吗?这是向前迈出的一大步,这也是Web 2.0应用程序比以前的Web应用程序更具交互性和易用性的关键原因。但是,它仍然是一个创可贴。基本上,客户端向服务器发送一些信息,然后它返回一个文本块,让客户端完成解释该文本的工作。然后,客户端使用称为动态HTML的东西来使页面看起来像是交互式的。
这与正常的客户端 - 服务器应用程序的工作方式有很大不同。对数据来回传递没有任何限制,并且整个架构都着眼于让客户端动态操作屏幕,使用Ajax技术在网络上实现这一点就像跳过篮球去到那里。
Web浏览器是未来的操作系统
微软在90年代就知道了。这就是他们与Netscape进行浏览器战争的原因,这就是为什么微软在赢得那场战争时没有采取任何措施。不幸的是 - 至少对于微软而言 - 存在一场新的浏览器战争,它正在许多不同的平台上进行。 Mozilla Firefox现在被大约30%的互联网用户使用,而Internet Explorer在过去五年中的市场份额从80%以上下降到略高于50%。
随着Web 2.0和Office 2.0等当前网络趋势将历史上的桌面应用程序带入Web,在操作系统的选择上变得更加独立,对标准化浏览器更加重要。这两个对于微软来说都不是好消息,因为它的Internet Explorer浏览器往往与大多数其他浏览器的做法不同。对微软来说,这不是一个好消息。
但是在操作系统上使用开发工具的一个好处是可以使用标准化对象来创建界面。您还可以很好地控制与这些对象的交互方式,甚至可以创建自己的替换。使用Web编程,实现这种级别的控制更加困难,主要是因为Web浏览器最初并不打算成为大型应用程序的复杂客户端 - 更不用说未来的操作系统了。
但是,越来越多,这就是他们正在变成的东西。 Google文档已经提供了文字处理程序,电子表格和演示文稿软件。将此与Google的邮件客户端相结合,您就拥有了基本的办公软件生产力套餐。我们正在慢慢地,但肯定地,达到我们大多数应用程序将在线提供的那一点。
智能手机和PocketPC的日益普及为互联网创造了一个全新的前沿。而且,虽然目前的趋势是移动互联网与“真正的”互联网融合,但这并没有将移动领域视为塑造“未来互联网”外观的关键参与者。
一个关键方面是它在网络浏览器大战中创造了一个新的前沿。如果微软要继续保持其Internet Explorer浏览器的主导地位,它必须在移动设备上占据主导地位,使用“Pocket IE”,微软的Internet Explorer for Mobile浏览器。
移动设备如何访问Internet的另一个有趣方面是使用Java应用程序取代传统的Web门户。移动用户可以下载这些网站的Java版本,而不是访问Microsoft Live或Yahoo。这将创建一个与任何客户端 - 服务器应用程序相同的交互式体验,而不会遇到Web浏览器遇到的所有陷阱。
它还表明主要的网络运营商愿意为新的应用程序开发平台设计他们的网站。
未来的浏览器
我不打算任何赌注,我们会看到在不久的将来随时随地设计网页浏览器的重大变化。无论Web 3.0是否会引入新型浏览器,或是朝着完全不同的方向发展,任何人都会猜测这一点。
但是,与此同时,我不会惊讶地看到一种全新类型的浏览器完全被Web应用程序重写,从而彻底改变了网络。它可能需要一个主要的播放器设计它,谷歌和雅虎等主要参与者和其他人支持它,这不是最容易实现的,但它是可能的。
这个未来的浏览器会是什么样的?我想这就像合并我们当前的浏览器,ActiveX和Java来创建既可以是迷你操作系统又可以是开发平台的东西。
对于你我来说,这就像加载我们的办公应用程序,在文字处理器和电子表格之间无缝切换,就像无缝切换到大型多人在线角色扮演游戏一样。
从本质上讲,每个网站都是自己的应用程序,我们可以轻松地从一个网站/应用程序转到下一个网站。
您认为Web 3.0会带来什么?