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

如你所愿?如果有一天,JavaScript徹底消失了……

開發 前端
“世界上只有兩種語言:一種為人抱怨,一種無人使用。”并不是每個人都愛JavaScript。時不時就會有人抱怨說JavaScript應由其他語言代替。

 “世界上只有兩種語言:一種為人抱怨,一種無人使用。”

——C++語言之父BjarneStroustrup 

[[286719]]

并不是每個人都愛JavaScript。

時不時就會有人抱怨說JavaScript應由其他語言代替。

理由是:JavaScript有許多地方十分莫名其妙,早該修復了。

由于開發人員尚未對這些地方進行修復,于是人們想當然地以為JavaScript就是一種蹩腳的語言,根本無法修復。既然如此,就應該用其他語言把它換掉,最好是用吐槽者們最喜歡的語言。

但事實真的如此嗎?

我們如何走到今天?

JavaScript很難稱得上是一種完美的語言,因為它確實有些地方很奇怪。僅僅十日之內開發者就完成了JavaScript的開發設計并使其更像Java,那么便不得不承受這一后果。

但是沒有一種語言是完美的,自ES6以來,JavaScript已經取得了巨大進步,而且還在持續改進。它從一種僅用于web頁面上制作動畫的“玩具語言”,現已演變為一種嚴格意義上的編程語言,現如今JavaScript運用于各類大型且復雜的web應用程序中。

JavaScript幾乎無處不在,成為目前世界上使用最多的編程語言。

那么,為什么有些開發人員還在吵著要換掉它?

了解這門語言

人們對JavaScript的諸多吐槽源于他們的無知,他們不了解這門語言,也不愿意真正用心去學習這門語言。

this關鍵字、原型繼承和不變性缺乏是JavaScript中的三大混淆源。如果開發人員已經習慣了另一種語言,筆者能理解。同樣的,筆者也能理解由此造成的困惑和憤怒。

但這些都并非不可逾越。只要愿意學,JavaScript也沒那么高深莫測。

開發人員以為用另一種語言換掉JavaScript,便能一勞永逸,雖然這種想法可以理解,但這既不現實,也非真正的解決之策。

“不破壞web”原則

JavaScript、HTML和CSS的首要設計原則是新特征可能永遠不會破壞現有的網站。

這實質上是將JavaScript變成了一種只可添加的編程語言:只要不破壞現有的網站,就可以添加特征,而新添加的特征可能永遠不會改變或者移除現有的特征。

這一原則能夠確保現有網站永不崩潰,即便這些網站創建于幾十年前,第39號技術專家委員會(TC39) 也會不遺余力堅持這一原則。

這固然是件好事,但也確實給JavaScript增添了負擔,因為特征只能添加到其中而不能更改。

因此,雖然JavaScript中令人混淆的方面在理論上是可以修復的,比如this關鍵字,但可能會破壞現有的網站,而這些網站在修復之前是可以完美運行的。顯然這是不可接受的,因為它違反了“不破壞web”的原則。

使用另一種語言并非解決之策

理論上可以用一種新的語言取代JavaScript,不過在技術和邏輯處理上卻十分棘手,且無休無止,這也不無可能。

但是這種語言也需要遵循“不破壞web”的原則,這基本上也把這種語言變成了一種只可添加的語言。可能已經可以預測到,人們對該種語言的熱情將會下降,很快人們就會聽到同樣的呼聲要求替換掉該種語言。

這個原則對JavaScript的約束,限制了其發展的方式,這也將適用于任何需要遵守該原則的語言。這就造就了今天的JavaScript,任何一種語言都無法取代它而不受該原則的約束。

在過去20多年里,JavaScript保持著前所未有的向后兼容性,這實際上是一巨大成就。web發展到今天,JavaScript功不可沒,它該因此而受到喝彩,而不該遭到人們的痛恨。

從頭開始? 

希望開發人員現在已經意識到,用另一種語言完全替代JavaScript是不太可能的。但如果真的不想好好學習JavaScript,還可以通過WebAssembly和其他十幾種可編譯成JavaScript的語言來學習。

筆者對TypeScript印象深刻,這是因為它可以將靜態類型的特征添加到JavaScript和PureScript中,這就好比瀏覽器中的Haskell,可以進行成熟的函數式編程。

但是額外的編輯步驟一如既往,使學習變得更加復雜,那么問題來了:這樣做是否值得。目前筆者建議使用TypeScript,因為它是JavaScript的一個超集,兩者非常類似。TypeScript也在積極發展壯大,擁有一個龐大的社區。

需要花時間去學習它,也可以用這些時間好好學習JavaScript。它沒那么高深莫測,不可學習,一旦掌握它的奇怪之處,就會發現它是一種非常強大且通用的語言。它并非完美無暇,但卻是必不可少的。

話說回來,沒有一種語言是完美的。

選擇權在你。

 

責任編輯:華軒 來源: 今日頭條
相關推薦

2022-06-09 09:27:16

前端行業生存

2024-09-26 11:21:09

2013-10-15 10:02:24

IEIE10IE11

2016-05-06 10:02:33

CSSJavaScript工具

2012-10-18 13:26:53

Wi-Fi以太網FDDI

2019-12-26 10:47:55

程序員Google電腦

2018-10-22 17:52:28

GitHub代碼開發者

2023-09-25 10:24:47

CIOIT團隊

2018-12-09 14:55:07

區塊鏈加密貨幣比特幣

2019-04-28 09:56:15

程序員互聯網脫發

2021-04-01 07:44:45

排名調整Java Java基礎

2019-12-10 09:08:29

分布式開源RocketMQ

2021-03-29 08:20:51

入職后端官場

2024-10-07 09:49:14

2017-11-02 15:04:15

2018-03-19 10:30:17

程序員永久斷網

2022-12-12 16:37:31

云遷移云計算IaaS

2020-05-11 08:36:21

程序員工作生活

2015-11-18 10:44:12

智能

2012-08-10 22:44:52

ArchSummit
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 九九精品久久久 | 奇米久久久 | 日本精品一区二区三区视频 | 欧美视频免费在线观看 | 久久性色| 色婷婷久久久亚洲一区二区三区 | 欧美日韩在线观看视频网站 | 亚洲午夜三级 | 日本一区不卡 | 成人午夜激情 | 国产蜜臀97一区二区三区 | 中文字幕一区二区三区不卡 | 欧美日韩精品亚洲 | 一级片网站视频 | 日本三级黄视频 | 91精品国产乱码久久久久久久 | 老外黄色一级片 | 午夜精品久久久久99蜜 | 国色天香成人网 | 成人免费在线观看 | 91av免费观看| 九九热精品视频 | 男女爱爱网站 | 日韩三级精品 | 日韩精品一区二区三区在线观看 | 野狼在线社区2017入口 | 亚洲精品一二三 | 日本黄色免费大片 | 日韩视频一区在线观看 | 国产一区免费 | 亚洲黄色一级毛片 | 特一级毛片 | 亚洲一区二区三区四区视频 | 日韩欧美不卡 | 免费一区二区 | 午夜欧美| 亚州精品天堂中文字幕 | 91在线电影| 日韩美女在线看免费观看 | 久久久精品视频一区二区三区 | 欧美日韩综合视频 |