1. Web 的誕生歷史
現在幾乎每個人都花時間上網。閱讀文章、使用瀏覽器、點擊連結。但是很少有人問過這樣的問題:網際網路是什麼時候由誰發明的?我們雖然知道答案,但事情並不那麼簡單。
問題就在於什麼可以稱為網際網路。大多數人指的是一種,而技術人員指的是另一種。連接全球主要數據中心的計算機網路早在70年代就被創建了。而對於普通用戶來說的網際網路(瀏覽器、鏈接、各種頁面),則是由一個人在90年代初發明的。故事是這樣的…
在上世紀90年代初,英國人蒂姆·柏納-李重新發明了網際網路 🌐。不過其實,更準確地說他發明的是 Web:World Wide Web,也就是 www,全球資訊網。沒錯,一個人發明了全球資訊網 💪。
在1986到1991年間,他在位於瑞士日內瓦的 CERN 研究中心工作,開發一個新的科學文獻標準。你看,科學家習慣將科研成果以文章形式發表,並在文章末尾列出參考文獻。換句話說,科學知識就是由相互鏈接的文章構成的。
順便說一句, 現代的維基百科非常像全球資訊網的創建者當初的構想:相互鏈接的科學文章、資料來源以及參考文獻列表。如果蒂姆當時足夠幸運,現在的 Web 可能還會是這樣。但在通往美好未來的道路上,人類似乎拐錯了方向 :)
Web 的核心技術包括三部分:
- HTML 頁面,它包含文本、圖片以及指向其他 HTML 頁面的鏈接。
- 瀏覽器,它可以將 HTML 頁面以最方便人類閱讀的方式顯示出來。
- http 協議——用於 Web 服務器與瀏覽器及彼此間通信的標準。
蒂姆·柏納-李並非完全發明了這些技術,而是對它們進行了標準化。HTML 是基於 SGML 標準創建的。標籤也是從中借鑒過來的。而世界上第一個被稱為 WorldWideWeb 的瀏覽器則是蒂姆在遙遠的1990年自己編寫的。
2. HTML 不是程式語言
HTML 不是程式語言,也從來不是。千萬別這麼說。即使是撰寫簡歷時,也不要將 HTML 歸類到程式語言部分,而是列在 "Tools"(技術)部分。說自己掌握了 HTML 程式語言是一個大錯誤。為什麼呢?
原因在於 HTML 是一種文檔標記語言。簡單來說,HTML 文檔就是帶有圖片、表格、鏈接等嵌入物的文字(文檔)。
假設你想寫一篇文章,其中包括:
- 文章標題。
- 正文,其中包括一段文字。
- 圖片。
- 一些重要的句子要用加粗字體。
- 文章中間附上一個指向某些有用資訊的鏈接。
這篇文檔在瀏覽器中的樣子可能是這樣的:
| 家貓 從科學分類的角度來看,家貓是 哺乳動物,屬於貓科,為肉食動物目的一員。家貓經常被認為是野貓的一個亞種,但根據現代生物學分類(2017年),家貓 是一個獨立的生物物種。 |
看起來不錯吧?而 HTML 標準允許這份文檔同時對人類和計算機都可以讀得懂。以下是用 HTML 標準展示的版本:
| <h1> 家貓</h1> 從科學分類的角度來看,家貓是 <a href="http://">哺乳動物</a>,屬於貓科,為肉食動物目的一員。家貓經常被認為是野貓的一個亞種,但根據現代生物學分類(2017年),家貓 <b> 是一個獨立的生物物種</b>。 <img src="cat.jpg"> |
文章的文本中加入了 特定標籤,既可以被人類閱讀,也可以被計算機(瀏覽器)理解。瀏覽器可以美觀地顯示供讀者閱讀,而文章作者則能輕鬆編輯它。
3. HTTP 協議的出現
縮寫 HTML 代表的是 Hyper Text Markup Language——超文本標記語言。超文本是由相互鏈接的頁面組成的文檔。那麼 http 是什麼?
HTTP 代表的是 Hyper Text Transfer Protocol——超文本傳輸協議(標準)。你可以在瀏覽器的地址列中看到 http(或 https),比如當你嘗試複製當前頁面的鏈接時。
典型的頁面鏈接是這樣的:
http://google.com/logo.jpg
鏈接的開頭是 協議名稱,後加冒號和兩個斜杠。蒂姆·柏納-李在一次採訪中提到過,他說如果早知道協議 http 會如此普及,他會想出一個更簡短的名字(因為幾乎世界上所有鏈接都以 http:// 或 https:// 開頭)。
有趣的是:蒂姆仍然在世,現在大約70歲。他每天都使用網際網路,他最喜歡的一句話是“想把事情做好——就自己動手”。如果你的發明被全球人口每天使用,你會有怎樣的感受呢?
GO TO FULL VERSION