ViolaWWW

第一个流行的互联网浏览器

ViolaWWW是第一個支援全球資訊網(WWW)指令碼和樣式表的瀏覽器,目前已停止開發。其首次在1991/1992年的UNIX作業系統上發布,並成為受全球資訊網發源組織CERN所推薦的瀏覽器[1],但其最常用瀏覽器的地位最終被Mosaic瀏覽器取代。

ViolaWWW
ViolaWWW 3.3
ViolaWWW 3.3
開發者魏培源[1]
首次發布1992年3月9日,​32年前​(1992-03-09
程式語言Viola[1][2]
平台UNIX
類型網頁瀏覽器
網站viola.org

Viola語言

Viola由魏培源在1991年開發,他也是加州伯克利大學eXperimental Computing Facility英語eXperimental Computing Facility(XCF)研究小組成員之一[1][3]。Viola是一個基於UNIX平台的程式語言,其名稱為視覺化互動的物件導向語言及應用(Visually Interactive Object-oriented Language and Application)的首字母縮寫[4]

魏培源對於圖形軟體的興趣始於1989年他接觸到的HyperCard,魏培源說:「當時HyperCard非常引人注目,這是一款眾人皆知的超連結程式,但只能在Mac上運作...而當時我甚至連Mac都沒有」。魏培源使用X終端英語X terminal於1990年創造了第一個版本的Viola語言:「我拿到了一本HyperCard手冊看了一下,基本上把這些概念完成了......」[4]

ViolaWWW歷史

畢業後魏培源與XCF及創業夥伴一起繼續開發Viola[4][5]。隨後其接受了歐萊禮公司的投資,這是一家美國電子出版公司。歐萊禮公司使用了其軟體以顯示旗下網站全球網路導航器[6]。魏培源的主要工作是建立一個適用於網際網路的Viola版本:

X Window是一個基於UNIX的作業系統,其內建了TCP/IP協定,所以支援網際網路是很合乎常理的,問題是如何透過網際網路傳輸他的Viola頁面,他處於網路超文字獨立發明的邊緣。在他看到提姆關於全球資訊網的郵件時他解釋說,URL非常非常聰明,這正是我所需要的。他向提姆發了一封郵件說他正在考慮為X Window編寫一個瀏覽器 。提姆在12月9日的www-talk上回覆說:聽起來不錯。四天後,魏培源在www-talk說,他做了一個瀏覽器。

——Gillies和Cailliau[4]

ViolaWWW建立於1992年,是第一個加入擴充功能的瀏覽器,如嵌入式指令碼對象、樣式表和表。早期版本在CERN獲得了諸多好評[4]。Ed Kroll還在其1992年很流行的文章全網際網路使用者目錄與指南英語Whole Internet User's Guide and Catalog中強調了該瀏覽器。

隨著ViolaWWW的開發,開始與HyperCard越來越相似:

它有一個書籤功能讓你可以追蹤自己喜歡的頁面,還有下一頁和上一頁按鈕及歷史記錄功能可以儲存你訪問過的網站。隨著時間的推移它有了顯示表格和圖形的功能,到了1993年5月它甚至開始可以直接執行程式。

——Gillies和Cailliau[4]

ViolaWWW基於Viola工具箱,該工具箱是用於開發與支援視覺互動式媒體應用的工具。Viola在X Window下執行,早在1992年就可以用來建立遠超HTML 3.0(當時最新版本的HTML)的複雜超媒體應用,包括小程式及其他可互動的內容[7]

首創

Viola是第一個擁有如下功能的瀏覽器[8]

  • 客戶端檔案插入,內嵌式框架及類Javascript輸出
Viola式內嵌框架 指定對象
<INSERT SRC="a_quote.html">
<object type="text/html" data="a_quote.html">
<p>如果浏览器不支持对象,本文字将会显示</p>
</object>
  • 一個簡單的樣式表機制用於指定文件中的樣式資訊,例如字型顏色,對齊方式。早在1998年CSS樣式表開發之前已經在Viola中實現了。
Viola式樣式表 CSS樣式表
 (BODY,INPUT,P   FGColor=black
                 BGColor=grey70
                 BDColor=grey70
                 align=left

 (H1             FGColor=white
                 BGColor=red
                 BDColor=black
                 align=center

 body, input, p {
  color: black;
  background-color: #707070;
  text-align: left;
}

 h1 {
  color: white;
  background-color: red;
  border: solid 1px black;
  text-align: center;
}
  • 一個側邊欄用於顯示網頁中的元資訊,如網頁內部導航連結等。類似但不那麼複雜的側邊欄功能也出現在一些現代瀏覽器中。
  • 一個HTML文件可以呼叫的手稿語言,讓網頁文件可以嵌入高度可互動的指令碼及小程式,其可以被視為JavaScript嵌入對象的先驅。
ViolaWWW實現語法 JavaScript實現語法
指令碼
\class {txtDisp}
\name {showTime}
\script { switch (arg[0]) {
  case "tick":
    set("content"), date());
    after(1000, self(), "tick");
    return; break;
  case "init":
    after(1000, self(), "tick");
    break;
  }
  usual();
}
\width {100}
\height {50} \
function showTimeInDoc() {
  var theTime = document.getElementById('theTime');
  var date = new Date();
  theTime.innerHTML = date.getHours() + ":" + date.getMinutes() + ":" + date.getSeconds();
  setTimeout(showTimeInDoc, 1000);
}
將指令碼插入網頁
<HTML>
<HEAD>
</HEAD>
<BODY>
<P>And, the time now is:
<LINK REL="viola"
HREF="showTime.v">
</BODY>
</HTML>

<html>
  <head>
    <script type="text/javascript" src="showTime.js"></script>
  </head>
  <body onload="showTimeInDoc()">
    <p id="theTime">&nbsp;</p>
  </body>
</html>

與Mosaic競爭

雖然ViolaWWW開啟通往全球資訊網的大門[8],但由於只能侷限在X Window系統上執行,意味著它無法 將全球資訊網帶入主流的Mosaic瀏覽器競爭[9]。除此之外,Mosaic更容易安裝在大多數人使用的電腦上[8]。最初只為UNIX開發的Mosaic,很快被移植到Microsoft Windows這個ViolaWWW從未運行過的平台[10]

參考文獻

  1. ^ 1.0 1.1 1.2 1.3 Tim Berners-Lee. What were the first WWW browsers?. World Wide Web Consortium. [2010-06-15]. (原始內容存檔於2018-10-03). 
  2. ^ See Viola in a Nutshell頁面存檔備份,存於網際網路檔案館) for details.
  3. ^ Pei-Yuan Wei. ViolaWWW Hypertext Browser. [28 July 2010]. (原始內容存檔於2021-06-22). 
  4. ^ 4.0 4.1 4.2 4.3 4.4 4.5 James Gillies; R. Cailliau. How the Web was born: the story of the World Wide Web. Oxford University Press. 2000: 213–217. ISBN 978-0-19-286207-5. 
  5. ^ WWW people. World Wide Web Consortium. [28 July 2010]. (原始內容存檔於2017-07-13). 
  6. ^ 歐萊禮, Tim. Why Kindle Should Be An Open Book. Forbes. 23 February 2009 [2016-01-14]. (原始內容存檔於2016-03-03). 
  7. ^ 存档副本 (PDF). [2016-01-14]. (原始內容存檔 (PDF)於2012-02-15). 
  8. ^ 8.0 8.1 8.2 Berners-Lee, Tim. A Brief History of the Web. World Wide Web Consortium. 9 August 1997 [c.1993] [17 August 2010]. (原始內容存檔於2010-12-29). 
  9. ^ Mosaic -- The First Global Web Browser. [2010-07-28]. (原始內容存檔於2007-07-02). 
  10. ^ Freedman, Alan. Computer Desktop Encyclopedia, 9th Edition. New York: Osborne, 2001, p. 629

外部連結