摘要:月日,宣布聯(lián)合創(chuàng)始人和之父被任命為。在年秋季,的市場(chǎng)部門將命名為,和服務(wù)器端的保持一致。實(shí)際上,的思想主要來自和。的發(fā)型主要受影響。標(biāo)準(zhǔn)的公布,昭示著激動(dòng)人心的未來。
3月24日,Mozilla宣布聯(lián)合創(chuàng)始人和 CTO Brendan Eich (JavaScript 之父)被任命 為Mozilla CEO。
Brendan Eich 是 Mozilla 的聯(lián)合創(chuàng)始人,同時(shí)也是 JavaScript 之父。
1995年,在 Netscape 公司工作的 Brendan Eich 受命開發(fā)一個(gè)在瀏覽器上運(yùn)行的客戶端腳本語言。當(dāng)時(shí) Netscape 交給 Brendan Eich 的任務(wù)是開發(fā)一個(gè)看上去像 Java 的腳本語言。當(dāng)時(shí),由于 Netscape 正和 Sun 談合作,讓 Netscape 瀏覽器支持 Java,因此有些員工懷疑是否有必要開發(fā)一種新語言。Netscape 的另一些開發(fā)者則打算開發(fā)一個(gè)在服務(wù)器端運(yùn)行的 HTML 模板語言,類似 PHP,他們把這個(gè)語言稱作 LiveWire。為了打消大家的顧慮,Brendan Eich 花了 10 天時(shí)間做出了一個(gè)原型 Mocha 。 兩周不到的時(shí)間就做出了一個(gè)語言的編譯器和運(yùn)行時(shí)環(huán)境,小伙伴們都驚呆了。在1995年秋季,Netscape 的市場(chǎng)部門將 Mocha 命名為 LiveScript,和服務(wù)器端的 LiveWire 保持一致。由于當(dāng)時(shí) Java 比較時(shí)髦,Netscape 和 Sun 合作,在 1995 年 12 月將其改名為 JavaScript,希望能沾上一點(diǎn)光。實(shí)際上,JavaScript 的思想主要來自 Scheme 和 Self。
Brendan Eich 曾在 JSConf 2010 上介紹過JavaScript的歷史,其中透露了一些有關(guān) JavaScript 以及他本人的趣聞:
Brendan Eich 在 1977 年的時(shí)候和 John McCarthy (Lisp 之父)見過面。
Brendan Eich 的發(fā)型主要受 Morrissey 影響。
JS 的 function 關(guān)鍵字確實(shí)源于 AWK。
由于 NodeJS 的興起,JavaScript 的影響力從前端(瀏覽器端)向后端(服務(wù)器端)發(fā)展。NodeJS 的興起在 Brendan Eich 的意料之中:
我并不對(duì) NodeJS 的出現(xiàn)感到意外,因?yàn)?Netscape 當(dāng)年就想做一個(gè)類似的東西。開發(fā)者們喜歡全棧的、覆蓋前后端的、單語言的開發(fā)模式。
Brendan Eich 所說的“Netscape 當(dāng)年就想做一個(gè)類似的東西”就是指上文提到的 LiveWire。LiveWire 使用的是阻塞的 I/O,所以伸縮性并不好。而 NodeJS 默認(rèn)使用異步處理,避免了這個(gè)問題。Brendan Eich 認(rèn)為 NodeJS 內(nèi)置非阻塞 I/O 是一個(gè)明智的選擇。他對(duì) NodeJS 短小精悍的語言核心和優(yōu)秀的模塊系統(tǒng)也倍加贊譽(yù)。
另一方面,由于 JavaScript 性能的持續(xù)改進(jìn),有越來越多的語言支持編譯到 JavaScript 執(zhí)行。因此有人說:“JavaScript 是 Web 的匯編。” Brendan Eich 對(duì)此的看法是:
幾年前,我曾說過“JS 是 Web 的x86”(好像是在一次 JSConf 上),不過我不敢說我是第一個(gè)這么說的。Nick Thompson 今年(2011)也在 Hacker News 中這么說過。
關(guān)鍵在于,JS確實(shí)在按照我們想的,越來越往低級(jí)方向發(fā)展了。但它也具備高級(jí)的特性。
Shaver說得沒錯(cuò),匯編缺少可靠的宏處理器,因此不適合程序員,也不夠安全。但JS可不是這樣。所以,這個(gè)比喻需要加點(diǎn)限制條件,不然就要鬧出笑話來了。
無論從高級(jí)函數(shù)式編程還是內(nèi)存安全角這個(gè)角度看,還是從低級(jí)特性,像類型化數(shù)組以及即將成為現(xiàn)實(shí)的ES中類型化數(shù)組的擴(kuò)展、二進(jìn)制數(shù)據(jù),等等來說,JS都是一個(gè)比匯編更加強(qiáng)大的編程語言。當(dāng)然了,內(nèi)存安全是首要的區(qū)別。
近兩年, JavaScript 的演進(jìn)非常迅速。 ECMAScript 6 標(biāo)準(zhǔn)的公布,昭示著 JavaScritp 激動(dòng)人心的未來。
編撰 SegmentFault
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/87499.html
摘要:所有網(wǎng)頁(yè)瀏覽器電子郵件客戶端以及其它需要根據(jù)表示性的標(biāo)記語言來顯示內(nèi)容的應(yīng)用程序都需要排版引擎。瀏覽器內(nèi)核現(xiàn)時(shí)主要的四大排版引擎為應(yīng)用于應(yīng)用于應(yīng)用于應(yīng)用于和早期版本的。主要的網(wǎng)頁(yè)瀏覽器引擎,第一款引擎,由在時(shí)編寫,用于版本。 瀏覽器內(nèi)核與js渲染引擎: 簡(jiǎn)介: 在維基百科上是這樣介紹瀏覽器內(nèi)核的,網(wǎng)頁(yè)瀏覽器的排版引擎(Layout Engine或Rendering Engine)也...
摘要:目前,和基本是同義的,只有一些細(xì)微的差別。表示沒有對(duì)象,即該處不應(yīng)該有值。作為對(duì)象原型鏈的終點(diǎn)。五新增持續(xù)更新中一般是意外情況產(chǎn)生的,則是有意為對(duì)象賦值來說明這是一個(gè)空的對(duì)象的返回值是的類型是 摘自阮一峰博客,另附自己的理解分析。 大多數(shù)計(jì)算機(jī)語言,有且僅有一個(gè)表示無的值,比如,C語言的NULL,Java語言的null,Python語言的None,Ruby語言的nil。有點(diǎn)奇怪的是,J...
摘要:起源在了解學(xué)習(xí)一個(gè)東西時(shí),了解其誕生的背景及歷史是十分有必要的,這能讓你多一個(gè)發(fā)展的維度去看待它,原文。布蘭登艾奇,在年受聘于網(wǎng)景公司。當(dāng)時(shí)網(wǎng)景公司急需一種網(wǎng)頁(yè)腳本語言,使得瀏覽器可以與網(wǎng)頁(yè)互動(dòng),用了天的時(shí)間創(chuàng)造了。 JavaScript 起源 在了解、學(xué)習(xí)一個(gè)東西時(shí),了解其誕生的背景及歷史是十分有必要的,這能讓你多一個(gè)發(fā)展的維度去看待它,原文。 布蘭登·艾奇(Bremdan Eich...
摘要:第條盡量少使用全局對(duì)象避免聲明全局變量盡量聲明局部變量避免對(duì)全局變量增加屬性第條始終聲明局部變量第條避免使用語句第條熟練使用閉包的函數(shù)值包含了比調(diào)用他們時(shí)執(zhí)行所需要的代碼還要更多的信息。那些在其所涵蓋的作用域內(nèi)跟蹤變量的函數(shù)稱為閉包。 書還沒看完。一遍看,一遍寫讀書筆記。 這本書的序是JavaScript之父Brendan Eich寫的,作者是JavaScript標(biāo)準(zhǔn)化委員會(huì)專家。可想...
摘要:?jiǎn)栴}中的面向?qū)ο笤屠^承等特性不同于等其他面向?qū)ο笳Z言,初看起來非常怪異為什么中有操作符構(gòu)造函數(shù),卻沒有類為什么中使用原型,用原型來模擬類和繼承看起來很別扭參考了講述誕生歷史的幾篇文章后,我總算了解這些特性的來歷,簡(jiǎn)單總結(jié)如下。 問題 JS中的面向?qū)ο蟆⒃屠^承等特性不同于Java等其他面向?qū)ο笳Z言,初看起來非常怪異: 為什么JS中有new操作符、構(gòu)造函數(shù),卻沒有類? 為什么JS中使...
閱讀 703·2021-11-18 10:02
閱讀 3579·2021-09-02 10:21
閱讀 1725·2021-08-27 16:16
閱讀 2058·2019-08-30 15:56
閱讀 2386·2019-08-29 16:53
閱讀 1373·2019-08-29 11:18
閱讀 2952·2019-08-26 10:33
閱讀 2641·2019-08-23 18:34