国产福利片久久精品,日韩中文字幕在线观看高清,动漫人物去掉小内打扑克游戏,亚洲欧美日韩国产综合精品久久

免費(fèi)獲取策劃方案多一份參考,總有益處

重慶網(wǎng)站公司

Company website

案例778

重慶網(wǎng)站公司

有替代Javascript的可行方案嗎?

來源:派臣科技|時(shí)間:2019-12-07|瀏覽:

關(guān)于JavaScript是好是壞,還沒有定論,所以在本文中,我們將討論JavaScript的優(yōu)點(diǎn)、缺點(diǎn)和替代方案。

標(biāo)題問題的簡短回答是“不”。

較長的答案比較復(fù)雜,以“kindof…”開頭,對(duì)于開發(fā)人員有幾種JavaScript替代方案,但是(目前)在部署之前必須將它們轉(zhuǎn)換成JavaScript。

人們討厭JavaScript

如果我們考慮到這種編程語言的一些明顯缺陷(包括IEEE 754的雙精度),即許多函數(shù)和屬性在不同的瀏覽器中執(zhí)行的方式不同,強(qiáng)制轉(zhuǎn)換和有問題的全局變量(僅舉幾個(gè)例子),這并不奇怪。

然而,最近一項(xiàng)有98,000名開發(fā)人員參與的調(diào)查顯示,JavaScript實(shí)際上是第二大最受歡迎的編程語言,49%的人支持JavaScript。

在我看來,編程語言允許自動(dòng)完成、滾動(dòng)和下拉菜單效果、在頁面上動(dòng)畫化不同的元素、播放音頻和視頻以及許多其他能夠帶來豐富客戶體驗(yàn)的很酷的特性,有什么理由不喜歡它呢?

此外,我們正在討論的是一種與許多其他語言兼容的常青語言,而這種通用性是極其重要的。

JavaScript的好處

說到JavaScript,我們真的很喜歡它,下面是它是最受歡迎和使用最廣泛的編程語言之一的一些原因:

當(dāng)涉及到前端開發(fā)和客戶端接口時(shí),它是惟一的實(shí)際選擇,因?yàn)樗试S程序員創(chuàng)建各種交互元素和動(dòng)態(tài)web頁面;

JavaScript很輕,語法簡單,使用單線程事件循環(huán)模型,消除了很多編程復(fù)雜性;

這是prototype-oriented;

隨著Node的引入。JavaScript打開了后端編程選項(xiàng),這些選項(xiàng)曾經(jīng)只保留給服務(wù)器端語言,如Java、Python或Ruby。

JavaScript的壞處

以下是一些開發(fā)者盡量避免使用JavaScript的原因:

它是弱類型的,這使得代碼比較模糊;

由于用戶可以看到代碼,JavaScript可能被用于惡意目的,危害客戶端安全;

代碼發(fā)布之前必須在不同的瀏覽器上測(cè)試,因?yàn)樗粫?huì)以相同的方式在每個(gè)瀏覽器上執(zhí)行;

缺乏調(diào)試使得開發(fā)人員很難發(fā)現(xiàn)問題。

JavaScript的可行替代品

公平地說,JavaScript沒有真正的替代品,因?yàn)檎麄€(gè)JS框架都可以被繞過。

所有這些替代方案實(shí)際上都是權(quán)宜之計(jì),只允許在編寫代碼時(shí)避免使用JavaScript,但問題是,為典型用戶計(jì)算機(jī)編寫的代碼需要在其上運(yùn)行。這些替代方案使用將另一種語言轉(zhuǎn)換為JavaScript的過程。

下面是5個(gè)顯著改進(jìn)JavaScript的值得注意的替代方案。

1. 飛鏢

Dart是一種面向?qū)ο蟮念愃朴赾的語言谷歌,旨在取代JavaScript。Dart是靜態(tài)類型的,這意味著它消除了JS代碼中一些最常見的錯(cuò)誤來源。它支持類型推斷,這是一個(gè)很大的優(yōu)點(diǎn)。

盡管如此,這個(gè)JS替代方案最有利的特性之一是,它允許您超越客戶端開發(fā),創(chuàng)建獨(dú)立的應(yīng)用程序。使用谷歌的UI工具包,可以構(gòu)建本地web、桌面和移動(dòng)應(yīng)用程序。然而,作為程序員的新手,Dart在市場(chǎng)上并不常用,它提供的在線資源有限,這意味著一旦遇到問題,就很難找到解決方案。

2. 打印稿

由Microsoft開發(fā)的TypeScript實(shí)際上更像是一個(gè)JavaScript的超集,這意味著它基本上添加了新的方法,改進(jìn)和更新了現(xiàn)有的JS特性,并消除了它的某些限制,最重要的是添加了可選的靜態(tài)類型。換句話說,在編譯成JS后,用TypeScript編寫的應(yīng)用程序幾乎可以在任何瀏覽器中查看。

例如,Angular.js完全是在TypeScript中構(gòu)建的。

這個(gè)JS的另一個(gè)優(yōu)點(diǎn)是它與Node.js兼容。

但是,社區(qū)比較小,用TypeScript編碼需要更多的時(shí)間。

3.KAFFEINE見面吧

Kaffeine實(shí)際上是JavaScript語法的一組擴(kuò)展,目的是使某些任務(wù)更容易。例如,它幫助前端開發(fā)人員使用JavaScript的回調(diào)函數(shù),因?yàn)樗С之惒讲僮鳌?/p>

對(duì)于Kaffeine,調(diào)試的過程要簡單得多,而且除了對(duì)開發(fā)人員來說很容易之外,這個(gè)JS擴(kuò)展對(duì)終端用戶也很有好處,因?yàn)闉g覽器不會(huì)凍結(jié),這意味著用戶體驗(yàn)是平穩(wěn)的。

同樣,一個(gè)小得多的社區(qū)和資源的缺乏使得這種編程語言有點(diǎn)晦澀。

4. 榆樹

Elm是一種靜態(tài)類型的函數(shù)語言,它與Haskell的相似度超過了與C的相似度,但與前者不同的是,它不會(huì)讓開發(fā)人員對(duì)其復(fù)雜性感到困惑。

它與JavaScript的主要區(qū)別在于,它不是一種通用語言,而是一種提供高級(jí)前端web應(yīng)用程序開發(fā)經(jīng)驗(yàn)的解決方案。

在Elm中編碼時(shí),當(dāng)錯(cuò)誤發(fā)生時(shí),開發(fā)人員可以立即得到通知,以便他們能夠及時(shí)地修正它,這可以防止在以后的開發(fā)階段出現(xiàn)大量的bug。這個(gè)程序使用的口號(hào)是“在實(shí)踐中沒有運(yùn)行時(shí)異常”,這基本上意味著如果用Elm編寫的應(yīng)用程序開始運(yùn)行,它就不太可能崩潰。

它的一些缺點(diǎn)包括缺乏服務(wù)器端,學(xué)習(xí)曲線比較陡峭,以及缺少一些高級(jí)功能。

5. COFFEESCRIPT

據(jù)說CoffeeScript可以提高原始語言的可讀性,簡化代碼并使其更短。它與Node.js的兼容性是另一個(gè)優(yōu)點(diǎn)。

然而,值得一提的是,希望使用CoffeeScript的開發(fā)人員仍然需要大量使用JavaScript。它的主要缺點(diǎn)之一是一組有限的特性,以及JavaScript發(fā)布的ES6版本升級(jí)實(shí)際上使CoffeeScript變得多余(這次升級(jí)加速了JavaScript,使其幾乎與CoffeeScript一樣快)。

簡而言之,JavaScript目前是一種客戶端編程語言,它將一直存在下去。

這些替代方案可以增強(qiáng)它,并解決它的一些缺點(diǎn),但實(shí)際上不能在沒有JavaScript框架的情況下運(yùn)行,因此可以肯定地說,我們?nèi)匀恍枰却齁avaScript真正的繼承者能夠獨(dú)立于它工作。

留言

返回頂部

君
重慶網(wǎng)站建設(shè)重慶網(wǎng)站公司有替代Javascript的可行方案嗎?