成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

JavaScript成功背后的四個關鍵人物!

開發 前端
在90年代已經出現了令人驚嘆的虛擬世界,你可以擁有一個Avartar(化身),在3D世界中到處走走,還可以瞬間從一個地方被傳送到另外一個地方,在里邊和其他人交談,買賣物品,建造東西。

JavaScript能如此成功,至少有四位關鍵人物:

1. JavaScript作者Brendan Eich

2. JSLint,JSON作者Douglas Crockford

3. jQuery作者John Resig 

4. Node.js作者Ryan Dahl。

Brendan Eich以及JavaScript的發明過程大家已經非常熟悉了,我們從Douglas Crockford這位JS的二號人物開始說起。

圖片圖片

1、結盟

上世紀90年代,微軟霸權籠罩著整個世界。

這時候,兩個挑戰者出現了,一個是IT巨頭Sun,另外一個是IT新星Netscape。

Sun認為:Java程序只能看到JVM,至于底層的操作系統?愛誰誰。

Netscape更加激進:以后都是Web應用程序,有瀏覽器就行了,管操作系統啥事兒?

“屏蔽操作系統”的共同目標讓兩家走到了一起,成功結盟,挑戰微軟霸權。

雙方“結盟”以后,第一件事就是將Java以Applet的形式在Netscape瀏覽器中運行,Applet讓Java迅速躥紅,成為了編程語言界的明星。

但是,結盟的雙方也不是親密無間的。

Netscape內部居然也在發展一個語言叫LiveScript。

Sun:兄弟,咱們不是說好了嗎,Java是大家所需要的最后一種語言,你們家的Brendan Eich怎么又搞了一個LiveScript啊?我們之間牢不可破的友誼已經出現裂痕了!

Netscape:不不不,JVM太重量級了,Web編程需要一個腳本語言,得讓新手快速上手才行。這樣吧,我們妥協,把LiveScript改名為JavaScript,可以嗎?

Sun:看起來像Java的子集,Java的縮水版,Java的弟弟,行,就這樣。

2、上世紀的元宇宙

這個時候,我們的主人公Douglas Crockford(下文就簡稱為“道哥”吧)還在創業中,他的公司叫做Electric Communities,就在JavaSoft的隔壁。

公司的創業項目非常牛逼:元宇宙。

沒錯,在90年代已經出現了令人驚嘆的虛擬世界,你可以擁有一個Avartar(化身),在3D世界中到處走走,還可以瞬間從一個地方被傳送到另外一個地方,在里邊和其他人交談,買賣物品,建造東西。

圖片圖片

也許是離Java很近的緣故,道哥選擇了Java來實現它。

但是這個概念實在是太超前,90年代的網絡速度根本支持不了,Java啟動也超級慢,“元宇宙”三分鐘時間才能把環境加載完成。

2000年左右,網絡泡沫破滅,元宇宙無疾而終。

為了生存,道哥接了一個特納廣播公司的一個項目:在線紙牌游戲。

特納公司要求,這個游戲一定要在瀏覽器中運行,不要讓用戶點擊安裝任何東西。

道哥環顧四周,發現只有JavaScript滿足這個要求。

但是公司的程序員都看不上JavaScript這門“爛”語言,不想做,道哥只好找來《JavaScript:權威指南》,親自動手。

在開發的過程,道哥逐漸發現:JavaScript根本不是Java的子集,它是一個完全獨立的編程語言。

JavaScript的優秀部分有著遠超Java的能力,它是第一個為我們提供Lambda的語言,這是一個了不起的突破。

一旦明白了這一點,道哥瞬間從Java的擁躉變身為JavaScript的粉絲。

他寫了一篇文章《 JavaScript,世界上最容易被誤解的編程語言》的文章,說JavaScript是披著C語言外衣的Lisp,從此走上JavaScript的布道之路。

3、JSLint

項目做完以后,道哥無事可做,開始將時間花在JavaScript新聞組上,回答各式各樣的問題。

比如“這是我寫的一些 JavaScript 代碼,我不明白為什么它有問題,誰能告訴我?”

這樣的問題回答多了,道哥干脆寫了一個神器:JSLint。這也是第一個JavaScript語法分析器

圖片圖片

只需要把有問題的代碼放進去,一運行就能發現問題所在。

道哥發現,JavaScript的某些用法更容易導致Bug,如果不用這些形式,錯誤更容易被發現,程序會變得更好。

于是道哥提出了一個原則:如果在JS中有兩種方法可以做事,請選擇不太可能導致錯誤的一種。

比如:使用分號來消除語法歧義;

不要使用++,用+=1代替。

但是在那個“蠻荒”的年代,大家對道哥建議的原則并不感冒,甚至認為這樣的要求冒犯了他們,他們依然是我行我素,想怎么寫就怎么寫。

4、重新創業

閑了一段時間以后,道哥按捺內心的沖動,打算第二次創業。

這一次,他和前同事成立了一個叫做State Software的公司,要用JavaScript做一個叫做“單頁應用程序”的東西。

此時的Web應用基本上都是用ASP,JSP實現頁面,用戶需要在頁面之間來回跳轉,單頁應用程序聞所未聞,可見道哥的理念是非常超前的。

單頁應用程序必然涉及到瀏覽器的JavaScript代碼和服務器接口之間的數據交互,用什么格式呢?

當時最熱門的是XML,微軟、IBM、Sun、HP當時都在鼓吹Web Service,其中核心技術如SOAP、WSDL全是用XML來描述的。

但是XML是個非常笨重的格式,解析它、驗證它需要的工具可不少。

道哥發明了一種新的數據格式:JSON(JavaScript Object Notation )

道哥拿著單頁應用程序和JSON去忽悠客戶:“看看我們的系統和技術棧,JSON是瀏覽器和服務器交互的最方便的方式。”

客戶:“我們都用Web Service,SOAP,XML!JSON是啥?”

道哥:“JSON可以直接把數據轉化成JavaScript,非常方便!”

客戶:“JSON是標準嗎?不是標準我可不用!”

JSON不是標準,沒有大廠的背書。

和“元宇宙”一樣,道哥的創業再次因為過于超前而失敗。

不過,這次創業留下了一個重要的遺產:www.json.org。

5、AJAX革命

2004年,Google發布了Gmail。2005年,又發布了GMap。

異步調用,局部刷新,新奇的用戶體驗引發了全世界的關注。

用戶體驗設計師Jesse James Garrett在一篇文章中造了一個詞:AJAX(Asynchronous JavaScript and XML),來描述Gmail ,GMap背后的技術。

AJAX迅速火遍全球。

AJAX中的X就是XML,但是人們很快發現,XML復雜的格式和語義并不是傳輸數據的最好選擇。

XML數據需要經過復雜的解析器解析以后才能使用,而JSON格式和JavaScript對象非常接近,可以輕松轉換,并且簡單明了。

程序員開始覺醒,越來越多的人采用JSON,而RESTful風格更是添了一把火,RESTful+JSON形成絕配,向繁雜的SOAP+XML發起猛烈攻擊。

XML的疆域不斷退縮,最后偏安于配置文件的領地,繼續發揮余熱。

圖片圖片

(藍色為XML,紅色為JSON)

互聯網的發展就是這么神奇,巨頭們為了控制,為了賺錢,經常是聯合制定標準,通過強大的營銷推給程序員。

這種方式能贏得一時,但不會贏得一世。

拍腦袋制定的標準,很快就會被民間的最佳實踐給打敗,扔到歷史的垃圾堆中,SOAP,EJB都是典型代表。

6、布道者

道哥在前同事的邀請下,加入了雅虎公司,成為了一名真正的JavaScript布道者。

他會去世界各地,參與各種各樣的會議,教大家如何正確地使用JavaScript,使用分號,使用JSLint,使用函數式風格,不要用eval......

道哥向大家展示如果使用正確的話,JavaScript將是一門強大的語言。

道哥甚至拜訪了MIT,因為這里有一本著名的書《計算機程序的構造和解釋》,用的編程語言是Scheme, 這也是JavaScript的函數式編程的設計來源,道哥去了一趟MIT,向他們描述JavaScript的工作原理和如何執行閉包。

多年后,MIT出了《計算機程序的構造和解釋》:JavaScript版本。

圖片圖片

道哥寫了一本書《JavaScript語言精粹》,這本書只有薄薄的150頁,但是卻剝除了JavaScript丑陋的外衣,讓我們看到了JavaScript的真實面目:一個簡潔的、優雅的,富有表現力的語言。

圖片圖片

道哥去了ITEF(互聯網工程任務組),給JSON爭取應有的名分:MIME類型經過了一個痛苦的流程,他得到了application/json,而不是text/json。

道哥感到困惑,JSON只是個文本格式,并不是應用程序啊,這可能是一些對JSON不滿的XML粉絲搞的鬼吧。

7、JavaScript的二號人物

當年Brendan Eich為了向公司交差,用十天時間發明了JavaScript,倉促的設計讓它一直背負各種罵名,例如沒有命名空間,難以控制的全局變量,神奇的加號運算符,反直覺的==...... 都讓初學者掉進無數坑中。

但是JavaScript能如此流行,語言層面肯定有優秀的成分。 

道哥慧眼識珠,他從一堆丑陋的JavaScript特性中把精華撿了出來,展示給大眾,讓我們意識到JavaScript也可以如此簡潔、高效、靈活。

“JavaScript Lambda編程的精神領袖”,JavaScript的二號人物,道哥實至名歸!

對不住了!各位!這篇已經太長了。

就此打住吧...... 下一篇再寫John Resig......

圖片圖片

參考資料:https://corecursive.com/json-vs-xml-douglas-crockford/

https://www.youtube.com/watch?v=_kFrf-zafFU

如需轉載,請通過作者微信公眾號coderising獲取授權。

責任編輯:武曉燕 來源: 碼農翻身
相關推薦

2022-06-09 17:45:29

AI人工智能數據科學

2021-10-11 09:30:21

零信任網絡安全網絡攻擊

2022-08-02 10:33:11

JavaScript代碼

2023-04-18 14:21:36

2011-08-25 10:39:19

云計算

2023-08-02 16:14:51

2022-12-07 10:06:19

2021-09-26 13:55:33

5G切片網絡切片5G

2017-10-12 10:35:01

私有云公有云云計算

2011-09-20 16:59:21

微軟Windows人物

2023-06-06 15:47:26

人工智能ChatGPT

2021-08-30 10:14:48

數字孿生數字化CIO

2021-07-12 10:38:51

預測分析數據分析大數據

2021-08-24 08:00:00

人工智能數字孿生技術

2022-06-27 23:31:01

JavaScript框架開發

2022-01-12 15:50:24

JavaScript開發循環

2020-04-21 15:35:19

谷歌量子計算John Martin

2015-08-05 11:34:23

谷歌云計算基金會OpenStack

2011-05-24 14:28:00

云計算
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧洲国产精品视频 | 伦理二区| 日韩精品视频在线 | 日产精品久久久一区二区福利 | 色综合一区二区 | 成人小视频在线观看 | 91精品久久久久久久久久入口 | 欧美4p | 色婷婷综合久久久中字幕精品久久 | 在线观看日本网站 | 欧洲视频一区二区 | 国产91丝袜在线播放 | av黄色在线| 欧美日韩三级视频 | 亚洲精品日韩综合观看成人91 | 高清久久 | 国产色播av在线 | 欧美在线视频不卡 | 久久久国产精品入口麻豆 | 久久精品一区 | 伊人久久在线 | 亚洲精品一二三区 | 懂色中文一区二区三区在线视频 | 欧美偷偷操 | 久久精品一级 | 一区二区三区免费看 | 全免费a级毛片免费看视频免 | 午夜免费精品视频 | 69性欧美高清影院 | 一级黄色毛片子 | 日本一区二区三区免费观看 | 啪啪免费 | 亚洲精品免费在线观看 | 久热精品在线 | 男人天堂网址 | 91网在线播放 | 黄色一级免费观看 | 久久亚洲欧美日韩精品专区 | 精精国产xxxx视频在线播放7 | 久久久久91| 视频一区在线观看 |