我眼中javascript的這些年

寫了兩年多的js了吧,一開始的目標並無很學術,我只想安安靜靜作個很厲害的開發者。可是老是沉溺在一種語言裏,會讓人誤覺得這種語言很厲害,就像只在村子裏混的話,我以爲我本身能夠逆天,村外有人,編程世界也須要出去走走,因此我想寫一下學習js這段時間所看到的東西,做爲出發前的檢討javascript

 

我是Javascriptphp

javascript做爲一種解釋型語言,執行效率很低,雖然在google v8的推動下,性能提升了幾十倍,可是依然是要比中低級語言的性能差不少,因此網頁性能很難上去,瀏覽器呈現網頁的能力仍是有限的,webAssembly成爲突破這種有限的可能。對了,提及個人身世,很重要的是二十多年前,一個偉大的程序員爲了完成老闆的任務用十天的時間製造了我,因此,大家會知道我其實自己會有不少自打出身就擁有的毛病,好比我是解釋型和弱類型的,再好比我只是寫在瀏覽器的腳本文件裏的,因此你們起初使用我都是比較混亂的。還有typescript,nodejs,coffeescript,react,angular,vue什麼的都是在說我。後來你會明白說web好像就是再說我同樣css

 

瀏覽器的不服輸前端

回顧一下web和h5vue

之前的網頁都是靜態頁面,php和jsp的後端開發們替前端們寫頁面和js腳本,這些都是由於js很菜,網頁搞不了什麼名堂。java

世界在改變,瀏覽器執行代碼和cpu執行代碼都是執行代碼,憑什麼js要輸,因此nodejs v8 h5出現了。node

 

技術和經濟的互相推進react

h5規範一出現,canvas和vedio就淘汰了flash,網頁三劍客什麼的都變成了歷史故事。webpack

而v8的出現致使了前端渲染和單頁應用,渲染再也不是php和jsp作的事情了。css3

nodejs讓js的開發變得工程化,同時也挺身成爲了一個不錯的後臺語言。

固然這些事情都被營銷者們看在眼裏,他們注視着這些變化,去探究裏邊的每個商機。

 

市場所賦予的名利 

網頁傳播成本很低,網頁的生產成本也很低,網頁能作這麼多事情,這即是一個偉大的商機

這個商機包括建站開發,h5開發,豐富的網頁應用以及小程序應用

商業的發展和技術的發展老是互相驅動的,有人投資就有人搞事情,技術的發展製造的商機也會讓投資者更加願意投入資金進去,這是一個良性循環

因此這便迎來了h5最火爆的時期

短短的三四年時間裏 js從一個無人問津,被看成玩具的語言躋身成爲了一個很受歡迎,需求巨大的語言

js的獲取的名利讓更多的人介入其中,也讓他得以蓬勃發展,好比nodejs,react,angular,天才華裔尤雨溪,rn,webpack,css3,h5,ecma2015-2018等等等等

哦對了,比較可怕的是webVR也出來了,想當年咱們瀏覽網頁只是爲了百度百科,如今均可以玩vr遊戲了,發展的很牛逼吧

 

執行效率的提高

無論什麼執行效率,這些對於開發者之外的全部人來講都只是兩個字,體驗,

執行效率和網速,帶寬和寬帶,光纖,js仍是jsp .net除了開發者之外,其餘人一律不會思考,反應在瀏覽器上就是打開的快不快。

什麼canvas flash vedio,響應式,組件化對於用戶來講也只是炫不炫

什麼UI UE UX 對用戶都是舒不舒服

至此感謝http協議 ws協議 GPU以及英偉達 英特爾 AMD 光纖傳輸 廣電總局爲提升執行效率在背後做出的貢獻

其實說白了就是js效率的提高,從另外一個層面上來看是網速變快了和CPU 變強大了 GPU加速渲染了

 

入侵了APP和後端

這種名利和發展也讓js獲得了史無前例的經濟驅動,js彷佛不但願本身只是混跡在瀏覽器圈子裏的人物了,nodejs和react分別做爲js的表明在後端界和app界得到了崇高的地位。

這兩個事情也讓js贏得了新的名利,一切均可以用js完成,桌面端,app端,瀏覽器端,後端都有個人身影。

因此js工程師也變得更加受歡迎,由於想要開發一個應用程序,我只須要招js就行了。

全棧在js上變得彷佛很實際

 

CPU能夠作的瀏覽器應該都能作 

說到這裏,js彷佛能夠作不少事情了,不少人會以爲我爲我是一個jser而自豪,我爲我學到了世界上最划算的知識而感到慶幸

加入當時的js設計者可讓js的詬病少點,執行效率高一些的話,那麼js或許要遠遠不止如今的火爆,獲取不少年前就風靡了,而不須要等到網絡大發展和硬件大發展以後。

其實js並非那麼強,好比LOL不能用js開發吧,有人說一切都有可能,如今的webVR不是js寫的麼

其實說js不能寫LOL,不是說js的API不夠,也不是說js寫不了炫酷的效果,只是說js性能的問題會致使他老是開發一些性能要求並不高的東西

這也能夠看出js出於自己語言特性的緣由致使的瓶頸

我相信js可能寫出在任何環境場合平臺運行的hello world,但我不相信js能夠寫出比它性能高的語言寫的性能更好的程序

 

開始提到了webAssembly,這玩意呢,可讓其餘語言被瀏覽器執行,效率很高很高,這是一個是性能的突破口

還有一個突破口諸如typescript,dart之類的,固然也很難比c++快,對吧

 

不幸的消息是這些是瀏覽器端應用豐富的一個途徑,但也是js地位在瀏覽器端被動搖的極大可能

 

javascript的可能

js的可能老是那麼有趣,我不會懷疑它的樂趣,但會懷疑它的地位,或許終究會被取代,也可能得到了新的方式,也或者性能的大發展,讓開發語言之間的。就像加入過有錢,服務器足夠多的話,那麼數據庫的不少優化好像就不必了

js仍然是一個不二選擇,由於它很優秀

相關文章
相關標籤/搜索