看板 Soft_Job 關於我們 聯絡資訊
因為世界往往不是由我們所料想的發展 從歷史來看 JavaScript的作者根本沒想過會有紅的一天 一個十天寫出來的語言 加上沒有開源社區貢獻的年代 這個語言一定是超多漏洞 外加超級不嚴謹的 當初只是為了搶瀏覽器市佔 誰能料想的到會發揚光大 如果這個語言沒人理就算了 誰知道還一統江山 大量的使用者出現 這個語言的缺點與漏洞自然就慢慢被挖掘出來 然後被批評為垃圾語言 那當然就會有一堆語言想要把它取代掉 Dart TypeScript coffee就出現 可惜的是瀏覽器各家做各家的 廠商也不想幫別廠商主導的語言做嫁裳 那只好山不轉路轉弄個轉譯 至少JavaScript各家瀏覽器支援 不過這樣的思考模式也不光是瀏覽器上啦 JVM上面也一堆啊 像是groovy Kotlin Scala 也是建立在轉譯 我們無法控制底層市佔已經被搶走了 那只好做一層功夫來符合底層 當哪天市佔已經強過原本底層支援的 相信原生支援就會出現了 不過很難啦 中間牽涉到廠商的利益衝突 很多時候發展上考量的不只是 語言本身優不優秀 還有參雜了 廠商利益 法律 開發人員成本 等等問題 計算機概論不是計算機定律 所以也別放在心上了 ※ 引述《shter (飛梭之影)》之銘言: : 工作後覺得產業界很多觀念跟計算機概論完全顛倒,不知道有沒有調適期? : 當然去看一下原理以及接觸一下產業文化就會知道原因,只是一時間不習慣 : 但後來想一想又覺得發展變化很有趣 : 例如 : 1.並列傳輸速度比序列傳輸快 : 但現在高速通訊都是序列傳輸的,並列傳輸的最後堡壘陣亡大概是在硬碟排線 ? : 高速後雜訊干擾問題反而並列傳輸嚴重太多,結果不管 USB SATA SAS 都走序列 : 2.高階語言是用來編譯成低階語言執行 : 機器語言 > 組合語言 > Basic , C , COBOL ..... 以前書上大概是這樣寫發展的 : 這個道理很容易理解,每一門語言最終目標都是編譯成機器語言執行 : 後來 JAVA 跟 .NET 出現了虛擬機器、CLR、中繼層之類的概念 : 我包一層中繼,你用什麼寫都行,要在什麼環境上跑都好,交給我來處理 : 當然早期這樣包一層中繼是有執行效率問題的,以前 IE 3 看到咖啡就直覺要變慢了 : 後來看到 Flash 就想到耗能、吃資源.... : 到這邊都還可以理解,但近年前端生態真的讓人哭笑不得 : Javascript 幾乎是非常好上手的語言了,可是還跑出 Coffe Script、Type Script : 甚至用它自己 (ES6) 寫的 都要用工具編譯成 ES5 code 再跑 : 從以前隨寫隨用變成至少要搞 babel 跟 webpack 或 rollup 之類東西弄開發環境 : 甚至其他語言也有許多以編譯成 Javascript 當目標的專案 : 結果現在寫 Javascript 要編譯卻又沒有專業的 IDE : source map + live server + live update + console 盡量做到最友善的開發體驗 : 會有感而發是因為還有一個以前教科書說請大家不要用的 eval : 現在卻變成 webpack 開發良伴,看了一下轉譯的 code 那精美的 eval 令人興奮 : 在這個什麼都可以轉譯到 Javascript 的時代,它幾乎快變成組合語言的感覺 : 大家都要轉成它,它再餵給瀏覽器或 node.js 或其他 Runtime 跑 : 在可預見的未來,Progressive Web App 應該會繼續 Javascript 榮光 : 還真是任何可以用 Javascript 寫的東西,最終都將用 Javascript 寫 : 在瀏覽器實做 ESModule 的現在,有機會回到過去不用再編譯了嗎? : 看著 webpack 包出來的東西有點頭痛 : 不知道 vue-cli 有沒有辦法把打包工具換成 rollup ? : 反正 CSS 也不要輸出實體檔了,通通包進 Javascript inline code 裡塞到 head -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 117.19.229.67 ※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1551511782.A.4DA.html
single4565: 推 03/02 15:34
cuteSquirrel: 推 03/02 15:57
thund: 簡單講不就「盡信書不如無書」嗎 03/02 16:13
s29940: 推 03/02 16:59
bil193: 推 03/02 21:22
bil193: js 真的很垃圾 03/02 21:22
jlhc: 推 不是盡信書不如無書, 是政治/市場/利益擺在書前面 03/03 01:42
lemon651: js有些問題還不是為了抄java才變的那麼醜的 03/03 02:39
shortoneal: js是出生的時候根本不預期要拿來做那麼多事啊 03/03 23:44
y3k: js出來的時候因為有跟Java業配才搞成那樣XD 不然他其實是另一 03/03 23:46
y3k: 個忘記叫什麼語言的變種而已 03/03 23:46