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

Python開發人員,請不要低估TypeScript!

譯文 精選
開發
TypeScript可能不適合數據科學。但不要著急。盡管它可能并不適用于數據科學的每個部分,但在某些領域它比Python具有明顯的優勢。

  作者 | Ari Joury

  譯者 | 康少京

  審校 | Noe

  Python是我的生計,我喜歡它。盡管我對這門語言有一些意見,但我強烈建議從事數據科學的新手去嘗試使用Python語言。不管怎樣,在該領域具有豐富經驗的人往往是 Python傳道者。

  但是,這并不是意味著不能挑戰您所在領域的限制,例如通過探索不同的編程范式或新語言。

  大約在十年前,微軟的軟件工程師注意到JavaScript已經不能滿足他們的所有需求。一方面,這門語言發展迅速,增加了非常有趣的新功能,管道中的所有功能都無法解決一個基本問題,JavaScrip對于小程序來說很好,但用它編寫整個應用程序卻一團糟。

  解決這一問題有幾種可能性:例如,使用不同的語言,或者用更好的語法重新設計JavaScript。微軟的開發團隊采用了不同的方法:他們通過擴展JavaScript創建了TypeScript。通過這種方式,他們能夠使用JavaScript的所有新功能,同時擺脫對大型項目不利的東西。

  與 Python類似,JavaScript是在運行時編譯的,這意味著您需要運行代碼來調試它。另一方面,TypeScript 是經過編譯的。這提供了額外的安全層,因為程序員在執行之前就有可能得到有關錯誤的信息。對于像Python或JavaScript 這樣的非編譯語言,一旦意識到代碼沒有按預期運行,在查找bug時可能會非常耗時。

  然而,JavaScript和TypeScript之間的主要區別在于類型檢查器。編譯后,每個TypeScript程序都會檢查數據類型是否相互一致。

  這可能聽起來很簡單,但是當你做一個有數千行代碼的項目時,你會特別驚訝,感謝上帝擁有它。

  還有一些其他差異,例如TypeScript具有匿名函數和異步函數這一事實。匿名函數是函數式編程的一個關鍵特性,它可以使程序在大數據的負載下更高效。

  當您需要并行執行多個操作,或者處理不應中斷后臺進程I/O 操作時,異步編程非常有用。在Python和Javascript中可以進行異步編程,但在TypeScript中它是從核心內置的。

TypeScript是javaScript的超集

  Python的競爭對手名單很長:Rust、Go、Scala、Haskell、Julia、Swift、C++、Java和R都在上面找到了一個條目。可以理解的是,JavaScript和TypeScript 在如此擁擠的領域得不到那么多認可

  這并不意味著TypeScript不是通用編程世界中的主流。然而,在數據科學家中,它從來就不是特別受歡迎。

  由此可以得出結論,TypeScript可能不適合數據科學。但不要著急。盡管它可能并不適用于數據科學的每個部分,但在某些領域它比Python具有明顯的優勢。

  如果你碰巧在其中一個領域工作,就得嘗試一下TypeScript。如果你沒有嘗試過,誰知道你接下來會在哪里著陸呢?該領域發展的很快。如果你能看得更遠,你就有了競爭優勢。

 TypeScript是如何流行起來的

  如果你討厭JavaScript中不斷發生的不合邏輯但又很滑稽的WTF時刻,那么我要告訴你一個壞消息:你也會在TypeScript中看到所有這些東西。

  但這些語法問題并不是程序員喜歡TypeScript的愿因。相反,它歸結為這樣一種想法:使用一個很棒的產品——JavaScript——并添加一些更強大的東西——靜態類型。

  當然,我并不是說JavaScript總是很棒,或者靜態類型總是最好的做事方式。但是對于構建大型的微軟風格的應用程序來說,這似乎非常有效。

  也就是說,TypeScript的流行程度只是 JavaScript 的一小部分。這可以歸因于年齡:TypeScript是8歲了。但JavaScript的歷史是TypeScript的三倍!Python也是該領域的老前輩,已有三十年歷史。

  盡管TypeScript成立的時間不長,但在一些領域是不可避免的。同時也增加了它的受歡迎程度。例如,當Google在2016年宣布 Angular.js 將與TypeScript一起運行時,StackOverflow上的標簽數量呈爆炸式增長。

堆棧溢出趨勢

  TypeScript只分享了Python和JavaScript所具有的一小部分吸引力。不過,在某些領域這是不可避免的

 TypeScript可能比Python更有優勢的地方

  當年JavaScript之所以流行,是因為它無處不在。您可以在服務器、瀏覽器或任何您喜歡的地方運行它。只要編譯一次,它就可以在任何地方運行。當它首次出現的時候,簡直跟變魔術一樣。

  由于它是基于JavaScript構建的,因此TypeScript也具有這種魔力。Python也可以!當然,它的實現略有不同,因為它使用解釋器而不是虛擬機。但這并沒有改變這樣一個事實,即在run-me-anywhere方面,TypeScript 和Python不相上下。

  泛型和靜態類型等特性使用TypeScript進行函數編程比用Python更容易。這可能是一個優勢,因為由于數據科學、并行編程、異步編程等方面的發展,對函數代碼的需求正在增長。

  另一方面,Python也增加了越來越多的函數式編程功能。在數據科學、機器學習等領域,Python處于最前沿。

  這使得并行編程和異步編程成為可能。盡管這兩種語言都可以實現,但有一個很大的區別:在Python中,需要使用特定的庫來完成任務。在TypeScript中,所有庫從核心開始都是異步的。由于后者在默認情況下更具功能性,所以進行并行編程通常更容易一些。

  換句話說,如果你是一名涉及異步進程和并行計算的Python開發人員,你可能想嘗試一下TypeScript。

 是什么讓TypeScript對數據科學如此重要——或者不是

  許多數據科學家處理異步和并行編程。可能首先考慮得是TypeScript而不是Python編寫,不過,這是否是個好點子取決于很多因素。

  首先,TypeScript不會用直接的方式進行列表推導,例如,在處理大型數組時,這可能會令人苦惱。

  其次,TypeScript 中沒有原生矩陣運算Python具有NumPy以及許多其他工具,用起來會很簡單。因此,如果項目涉及大量的線性代數,這個時候可能你會不想采用TypeScript。

  第三,如果你對JavaScript不太熟悉,肯定會有感到困惑的時候。由于 TypeScript是基JavaScript構建的,它繼承了它的所有特性——好的、壞的和WTF。不過,老實說,遇到這些現象也很有趣……

  最后,要考慮到編程不是個獨立的職業,在數據科學領域中,有個龐大的Python社區可以提供支持和建議,但目前TypeScript在數據科學家中還不是很流行。所以你可能找不到那么多關于StackOverflow和其他問題的有用答案。

  話雖如此,如果開發一個沒有太多大數據和矩陣運算的項目,你可能還是想試試TypeScript,尤其是當它涉及到一些并行或異步編程時。

  沒有一種語言適用于所有的項目要求。當然,有些語言比其他語言更有趣或更直觀。當然,你喜歡的工具也是非常重要,因為這會讓你在困難時期繼續前進。因此,從TypeScript或Python等深受歡迎的語言開始學習是個不錯的主意。

  但歸根結底,你不應該像宗教一樣堅持一種語言。編程語言是工具。哪種工具最適合您取決于您嘗試使用它做什么。取決于它做什么。

  目前,Python對于數據科學來說非常重要。但在一個快速發展的領域,你需要能夠看得更遠。隨著任務的變化,工具也會發生變化。

  另一方面,TypeScript有一個關于前端 Web、后端Node和移動開發的熱門社區。有趣的是,這些領域與數據科學的交集比人們想象的要多。尤其是 Node,它在數據科學家中獲得了越來越多的關注。

  當然,這并不意味著您應該一次涉足十幾種語言。精通一門語言是很有價值的。但對其他語言和技術保持好奇將幫助你長期保持領先地位。

  所以,當你想嘗試新事物的時候。請不要猶豫,為什么不用TypeScript?

  原文標題:??Hey Python devs, don’t underestimate TypeScript???

  譯者介紹

  康少京,51CTO社區編輯,目前從事通訊類行業,底層驅動開發崗位,研究過數據結構,Python,現對操作系統和數據庫等相關領域感興趣。

責任編輯:張潔 來源: 51CTO技術棧
相關推薦

2022-03-03 23:30:27

TypeScrip開發前端

2020-10-29 12:53:28

JavaScriptTypeScript開發

2010-02-24 13:45:40

Python開發人員

2012-05-30 15:15:42

ibmdw

2023-03-15 07:12:53

企業開發人員提供商

2009-11-23 20:07:51

ibmdw開發

2021-02-19 09:33:01

kubernetesJAVA服務

2009-12-11 14:50:14

Visual Basi

2010-02-02 16:07:17

Python開發人員

2009-05-31 08:31:07

GoogleWaveTechCrunch

2023-08-14 15:23:37

2011-09-05 14:21:29

webOS

2013-04-15 10:00:09

程序員

2022-12-19 07:33:49

開發人員谷歌制度

2010-08-09 16:09:25

2019-11-27 18:54:07

物聯網數字孿生機器學習

2018-07-09 14:05:16

編程語言PythonPipenv

2012-02-15 09:17:02

Python編程

2021-02-05 16:55:09

前端樣式規則開發架構

2019-09-27 10:04:57

集成開發環境人生第一份工作電腦
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 天天草夜夜骑 | 综合精品在线 | 午夜精品一区二区三区在线视频 | 日韩网站免费观看 | 国产美女黄色片 | 夜夜精品浪潮av一区二区三区 | 亚洲播放一区 | 亚洲视频在线看 | 日韩三区 | 精品国产1区2区3区 一区二区手机在线 | 免费一级片 | 国产综合视频 | 国产成人网 | 久久久久久免费精品一区二区三区 | 婷婷色成人 | 成人国产在线视频 | 午夜丁香视频在线观看 | 日韩影院在线 | 久久精品亚洲国产 | 色婷婷久久 | 一级片成人 | 中文字幕乱码一区二区三区 | 日韩成人影院在线观看 | 久久精品国产99国产 | 青青久久久 | 一区二区三区日韩 | 国产精品久久久久无码av | 日韩欧美三级电影 | 亚洲成人免费视频在线 | 黄视频免费观看 | 黄色网毛片 | 国产精品视频中文字幕 | 91精品国产91久久久久久 | 亚洲精品一区二区三区在线观看 | 爱爱视频网 | xx视频在线| 日本欧美黄色片 | 欧美国产精品久久久 | 鲁一鲁资源影视 | 中文字幕欧美一区 | 91影院在线观看 |