有沒有一種編譯語言像python一樣方便高效?
問題描述
現在用到的python 開發效率很快,但是存在執行效率較慢的問題。這畢竟只是一種腳本語言。
有沒有其他語言,有這種開發效率和大量的三方庫做支持,但是是編譯語言,因為,我覺得編譯語言會比腳本這種語言快很多 !
不對之處還請指正!!!
問題解答
回答1:編譯性的概念應該相對于解釋性。python除了語法上比較友好,另外一個特點就是大量三方庫。
根據你的要求大概符合:
Golang是靜態強類型編譯語言。性能和開發效率都不錯,語法比C/C++現代,比Python/Ruby還差不少,第三庫比不上python,常用的基礎庫也都有。
Swift是靜態強類型編譯語言。語法也比較現代,客戶端和服務端都能hold住。三方庫數量還行,社區活躍。
Erlang是動態強類型編譯語。語法略古怪,適合分布式IO密集性操作。三方庫嘛,自身的OTP平臺強大得令人發指。
Elixir是基于Elrang VM,類ruby語法的動態編譯性語言。既可以當腳本解釋執行,也可以編譯成二進制可執行文件。用老爺子的話就是:既有ruby的快樂,也有Erlang的性能。三方庫不是太多,但是社區活躍。
做項目的話推薦Golang和Erlang,畢竟用的人多。學習編程范式和自己玩的話推薦Elixir
回答2:關鍵還是看你的應用場景
做web后端的,Go是最符合的,學起來快,庫也很成熟,最大的缺點可能是社區較小,碰到問題不知道問誰。當然,你也可以去學tornado。
做數據方面的,Python就不用換了,一大堆C extension的庫,對于非BAT級別的應用,效率絕對夠了。
至于說scala容易學的那位同學,你知道下劃線_有四種用法嗎(逃
回答3:js: 不是編譯語言,不過node.js有不錯的JIT。再用上TypeScript就很接近編譯語言了。
庫不差于py又是完全編譯語言的,現階段可能只有JVM.. 你愿意付出學習成本的話scala可以少寫很多代碼。
回答4:Scala!
優雅的語法!
支持所有Java庫
我也正在學習..... 推薦一本書 《快學Scala》
相關文章:
1. javascript - js setTimeout在雙重for循環中如何使用?2. atom開始輸入!然后按tab只有空格出現沒有html格式出現3. java - 線上應用,如果數據庫操作失敗的話應該如何處理?4. MySQL中的enum類型有什么優點?5. MYSQL 根據兩個字段值查詢 但兩個值的位置可能是互換的,這個怎么查?6. css - 如何選擇字體?7. javascript - 有適合開發手機端Html5網頁小游戲的前端框架嗎?8. javascript - h5微信中怎么禁止橫屏9. mysql - linux連接數據庫報錯10. mysql - 這種分級一對多,且分級不平衡的模型該怎么設計表?
