谈谈兔子的《关于浏览器的一些观点》

2011/4/21注:此文已被《UCDCHINA火花集2》收录。
早上在蓝色理想的更新推荐里看到了这篇文章。总感觉有些不舒服的地方,随便说说。
[coolcode]浏览器的出现
互联网的出现是人类信息交流方式的一次划时代的革命,在这场革命中有两个技术对互联网的发展起到了决定性的作用:一个技术带来的人类信息交换方式的改变,人们普遍的使用电子邮件时信息交流方式;另一个技术则是由伯纳斯-李和安德里森带来的网络使用方式的改变,人们普遍的使用万维网和网络浏览器。
网络浏览器的出现,不仅使超文本文件格式的优点得到了充分的发挥,而且也使对互联网用户的技术要求降到了最低点。不用任何电脑方面的知识,不用经过任何训练,只要用一个小小的鼠标,就可以操作。正是浏览器的使用,才使得每个人都可以享受到上网的乐趣。
浏览器是桌面系统的掘墓者
从浏览器诞生之日起,就成为了互联网扩张势力的神兵利器。Google以浏览器为自己实力的施展平台,为用户提供着具有丰富想象力的,具有良好用户体验的一系列产品;在线文件处理系统、在线日程安排等日益威胁着以微软为代表的传统的桌面文字处理软件系统。
在传统的桌面软件时代,用户必须在自己的电脑上安装不同的软件来获的不同的需要,虽然很多时候很多软件都很少用,我们必须要安装,必须要给这些软件留出很多的储存空间;而在互联网时代,我们可以把软件储存在一台远方的服务器上,当我们需要的时候,就可以从该服务器上直接调取就可以了,我们不再需要把他安装在本机了。我们都可以把应用软件的端口都整合在浏览器的平台上。[/coolcode]
诚然浏览器的诞生,促进了互联网的发展。而互联网的发展,推动力确不仅仅是浏览器。深层原因是人对互联网服务的需求。
浏览器只是一个实现需要的工具,而且又受制于其载体——系统平台。
浏览器真的是桌面系统的掘墓者么?
我认为,浏览器与系统平台是一种寄生关系。
Mosaic起于Unix,由于在Mac与Windows平台的推广而普及。
Netscape风光无限,但为什么会败在IE手下?
与时下Firefox、Opera的功能强大、高效相比,IE甘拜下风。
但是为什么后者的市场占有率仍然高达70%以上,无数的网站前台人员将对其的兼容性测试置于首位?
原因归为一点,微软主导了系统平台从而主导了浏览器市场。
看起来Google的在线服务非常强大,甚至有超过微软桌面平台的势头。
但是,请清醒一下。
你不担心数据安全性么?
你会将重要的公司数据档案交给Google编辑管理么?
你有应急措施,在Google服务器突然出现故障的一天,保证业务的正常运转么?
显然,答案只有一个——在本地存有备份,并能够在本地平台编辑管理。
因此建议将类似Google提供的一些在线服务做为第二选择。重要数据仍应由桌面平台处理,比较重要或者可有可无的服务酌情在存有本地备份的情况下转移到网站的在线服务。
[coolcode]
浏览器时代的用户体验
因为浏览器的出现,使得使用互联网的技术门槛已经降得很低。不用任何电脑方面的知识,不用经过任何训练,一般的普通老百姓就可以操作。所以使得浏览器时代的用户体验设计变得更加复杂和多样化。不同层次的用户对于浏览器着不同的心理和生理上的感受,所以浏览器的个性化设计就是用户体验的一个重要方向,我们需要为不同的用户设计出面向不同的需求的浏览器。另一个方面是浏览器作为一个各种Wed服务接口的平台,其平台设计的易用性是很重要的一部分,毕竟对于用户来说浏览器只是一个中转站,浏览器本身并不提供信息内容,所以对于浏览器的设计来说,怎样设计好其跳转、怎样设计好众多信息接口的布局和信息构建就是比较重要的内容了。[/coolcode]
当前廉价的硬件使得人们更有愿望来利用本地客户端的强大计算能力实现需求,对浏览器的需求将大大降低。
如有一个简单的调查,您是喜欢基于浏览器的游戏,还是喜欢由客户端执行的网络游戏。
事实是后者将占有绝对优势。
带宽的持续增长使得基于Internet网络交互更为丰富,人们对互联互通的需求持续增长,简单的B/S结构已经不能适应。这是一个趋势。
观察一下IE最近几个版本的公布时间,IE5(2000年) IE6 (2001年) IE7(2005年) IE8(推测2009年)。
可以发现,微软正在逐渐放缓对浏览器的研发,而将网络实现的注意力转移到桌面平台之上。
当前的Silverlight技术也只是一个由浏览器到桌面平台的过渡产品。
在平台发展的带动下,浏览器所实现的功能将会由桌面平台瓜分。
浏览器将和RSS合作主要用于静态信息展示,绝大多数动态的计算任务将交给“网络服务+胖客户端”。
一家之言,给大家增加一些饭后的谈资。^^
下面提供一个强大的桌面搜索引擎,基于WPF。
下载点击这里。
WPF_search

Silverlight Object 标签的结构

接上一篇《呈现Silverlight:HTML vs. Script》 E文
水平有限,出现不准确的地方请指正。谢谢。
Silverlight 2 的安装模型使用Silverlight object标签模板。在上一篇文章《呈现Silverlight:HTML vs. Script 》提到过,这个模板的设计遵循的5条标准:
1.兼容Silverlight1.0。
2.仅基于静态的HTML。
3.为客户端提供合适的安装文件(Mac,Windows,其它)。
4.为不能够使用Silverlight的用户提供可行的反馈。
5.提供一个易用的可定制的安装升级体验。
这篇文章会解释上述标准在模板中如何体现。
[coolcode lang=”xml”]
Get Microsoft Silverlight

[/coolcode]
示例1:Silverlight 2 Beta 2 object标签模板(局部)
兼容Silverlight 1.0
Silverlight 1.0安装/实例化模型建立在一个名为Silverlight.js的JavaScript帮助文件之上。这个文件拥有一系列参数,通过函数与参数的使用将Silverlight控件嵌入网页的DIV标签内。Silverlight 2控件在IE中使用object标签嵌入DIV标签,而在Firefox与Safari中使用embed标签。
在未定义classid的object标签中使用MIME类型,一个网页即可在支持Silverlight的浏览器中正确地实例化Silverlight控件。当浏览器的classid属性不一致甚至不兼容的情况下,MIME类型定义的类型属性都能以相同的方式被解释。因此,在object标签中使用类型属性,能够满足Silverlight 1.0与Silverlight 2控件通过一个单独的HTML标签进行实例化。

仅基于静态的HTML
脱离对Silverlight.js模型中的js依赖:
*一些虚拟主机不允许用户在网页中加入JavaScript。
*在一个网页中加入一个应用程序需要作者同时连接应用程序与Silverlight.js文件。
*不开启Silverlight的浏览器不能够访问Silverlight内容。
你需要安装控件以查看内容。
Install Control

如果在浏览器有一个控件映射到“fake/mimetype”MIME类型:

运行时浏览器中object标签与param标签将被忽略:

你需要安装控件以查看内容。
Install Control


当Silverlight不可用时,Silverlight object标签模板会使用下面的应急机制显示安装提示。如果已经安装Silverlight的用户访问一个Silverilght页面时,Silverlight应用程序会正常显示。如果用户没有安装Silverlight时,浏览器会忽视Silverlight标签并显示嵌入的HTML。默认情况下,用于Silverlight 2 Beta 2的HTML:

Get Microsoft Silverlight

将呈现如下UI元素:
Silverlight2安装画面
为客户端提供合适的安装文件
如果你查看用于HTML安装的默认Silverlight object标签模板,你会注意到一个a标签链接到Silverlight 2 Beta 的地址:http://go.microsoft.com/fwlink/?LinkID=115261。在Silverlight.js文件中,为各个操作系统提供了唯一的安装地址:适用于Windows的.exe、适用于Mac的.dmg,以及一个未知平台的链接地址。在Silverlight 2 中微软将这个侦测功能转移到了服务器端。当用户运行到上述的安装程序地址,服务器会为这个用户侦测适用的安装程序。如果可能,安装程序会打开安装程序而无需离开当前页面。如果浏览器不支持Silverilght,如64位的IE,这时会跳转到一个微软的网页,告诉他们关于安装Silerlight控件的平台要求。
服务器端的工具是很有用的。第一,一个网站只需要为控件提供一个单一的下载地址。第二,网站作者不必担心用户的操作环境,如不支持的平台。第三,如果先前一个不支持Silverlight的平台得到支持,这时使用这个单一地址的网站会自动的为那个平台提供支持。
提供给用户可行的反馈
这个部分包含了先前的一些章节。如果侦测到部分用户系统中Silverlight不能正常工作。有3个可能的原因:
*不支持的操作系统。
*不支持的浏览器。
*不支持的64位浏览器。
在确定向特定的客户端提供安装程序之前,系统会检查上述条件。如果碰到其中的一项会发送给用户一个微软的网页告知侦测到的问题。在有些情况下,系统会告诉用户他们的操作系统不被支持。在另外一些情况下,用户会被告知他们应该更换一个被支持的浏览器。在使用64位浏览器时,用户会被告知使用32位浏览器替代64位浏览器。
这个系统会跟随由错误造成的问题而升级。这个系统的目的是,避免用户陷入安装的死循环。这样做的原因是将检测环境的责任由网站作者转移到微软。
其它的模板元素
data=”data:…,”
有两个object标签模板元素,他们的作用不是太容易理解。object标签的data属性与iframe标签。
Silverlight object标签增加data属性是在Silverlight 1.0发布不久。如果我们增加object标签到一个网页,而没有在object标签中加入一个data属性,浏览器就会忽略包含object标签的html文件。我会用这个例子说明它:
test1.html
————————————————-





————————————————-
当被浏览器运行时,网页会呈现这样的效果:
test1.html
————————————————-


(function () { var c = document.body.className; c = c.replace(/woocommerce-no-js/, 'woocommerce-js'); document.body.className = c; })();