現代語言Go、Rust、Swift和Dart的比較
Go
Go作為一種簡單的語言,非常適合構建網路應用程式,這是正確的,如果你不需要其他功能,如泛型。
優點
1.AOT編譯器
2.快速編譯
3.併發支援
4.豐富的標準庫
5.工具gofmt格式化程式碼
6.編譯後的可執行檔案可快速執行和低記憶體消耗
缺點
1.沒有泛型
2.沒有依賴管理的官方包管理器
快速幫助(在快速幫助中是用0到3的評分來表示是否足夠快得到幫助。)
IRC:2
Gitter:0
Slack(gophers):3
用法
它是網路的理想語言,因為標準庫包含所有這些任務所需要的,至少在Rust或Swift擁有良好的網路支援之前是這樣。
GUI
有一個名為一個實驗專案Shiny,我不知道它是否適合移動或桌面應用程式。
Rust
Rust絕對是一種偉大的語言。
優點
1.AOT編譯器
2.沒有垃圾收集器
3.記憶體安全預設
4.編譯的可執行檔案效能類似於C ++
5.具有依賴關係管理的包管理器
6.Packages host
7.更好的社群
缺點
1.Learning of lifetimes and borrowing
2.錯誤建語法建立是冗長
快速幫助
IRC:3
Gitter:2
Slack:0
用法
底層級別軟體,如核心模組和嵌入式軟體,以及庫包。
GUI
Conrod :一個易於使用的,2D GUI庫。
Dart
JavaScript的替代品,除非Swift可以轉換為JS。
作為一種現代語言,它看起來像一種舊語言,因為它使用類似於Java的語法;他們的設計師過於保守。 雖然語法可能在與Dart 2.0變得現代化
Dart的大問題是,一旦有其他語言(具有更好的語法),可以用於在移動平臺開發,然後Dart將不再有用了。 此外,使用WebASM,開發人員可以使用Rust或Swift等語言編寫Web應用程式。
注意:我無法將包上傳到Pub包管理器,因為您需要一個Google帳戶,我沒有(因為我不會給我的手機號碼註冊一個)。
優點
1.比JavaScript好
2.非同步/等待支援
3.有用的方法級聯
4.大程式碼分析器(由Visual Studio Code,Webstorm,Atom,DartPad使用)
5.工具dartfmt格式化程式碼
6.具有依賴關係管理的包管理器
7.Packages host
缺點
1.在控制流語句中使用圓括號
2.行終止符的分號的使用
3.錯誤構建的語法太詳細
快速幫助
IRC:0
Gitter:1
Slack(dartlang):3
用法
等同於JavaScript框架 Angular 和 Polymer 。
GUI
flutter :另類打造的Android和iOS移動應用。
Swift
Swift有一個偉大的語法,但由於長名稱它可能冗長。
Swift的一個很大的問題是沒有一個Package host,以便能夠搜尋不同於macOS的系統的有效包。
注意:在測試中有一個問題,我無法解決。
優點
1.AOT編譯器
2.偉大的語法
3.用於構建和處理錯誤的更好的語法
4.IBM支援,特別是對於伺服器端開發
缺點
1.長關鍵字的使用,如Character或public
2.像長的函式名稱的使用characters
3.在索引中使用String型別是太詳細
4.核心庫中質量較差
5.在Visual Studio程式碼中更糟的支援
快速幫助
IRC:0
Gitter:0
Slack:0
用法
蘋果世界的應用程式
當伺服器API準備就緒,可網路程式設計
結論
對於網路,要使用Go。
對於前端,使用Dart,並且可能是在iOS和Android中開發都不錯。
對於多平臺應用程式,要使用可以在多個系統和平臺中共享的語言(如Rust)。
Modern languages · Jonas Me
幾種語言的電子郵件格式檢查庫包下載:這裡
[該貼被banq於2016-12-01 15:43修改過]
[該貼被banq於2016-12-01 18:00修改過]
相關文章
- OC,swift,javascript,Dart語言比較SwiftJavaScriptDart
- Go語言的Web框架比較GoWeb框架
- Java,Go和Rust之間的比較 - DexterJavaGoRust
- Rust語言與Go語言各自特點概要比較 –thenewstackRustGo
- 從OOP和FP看蘋果Swift語言與Scala比較OOP蘋果Swift
- Rust, Go與Hasekll比較 - RedditRustGo
- Swift和Objective C比較SwiftObject
- Go和Rust都是系統語言和通用語言 - RedditGoRust
- 流行語言的比較 (轉)
- ABAP, Java和JavaScript三種語言的比較JavaScript
- k語言和q語言的比較
- PostgreSQL與Rust的聚合實現比較SQLRust
- 使用Go的Defer和Rust的Drop實現資料庫事務機制的比較 - DEVGoRust資料庫dev
- Go和Python比較的話,哪個比較好?GoPython
- Go 與 C++ 的對比和比較GoC++
- 從JS和Rust的析構比較中發現Rust哲學:顯性化 - PaulJSRust
- 跨語言通訊方案比較
- 幽默:程式語言與遊戲比較遊戲
- 網上體育彩票行業的程式語言:Go與Erlang/Elixir比較行業Go
- Rust與Go在區塊鏈中的應用比較 - definoobsRustGo區塊鏈
- C語言的比較庫函式--qsortC語言函式
- Python、JavaScript和Rust的Web效能比較 - AlexPythonJavaScriptRustWeb
- 從各方面比較現在多種語言 (轉)
- Swift3.0語言教程比較、判斷字串Swift字串
- badamczewski/PowerUp:Rust/Go語言的反編譯工具RustGo編譯
- 與其他語言的比較——瞭解ASP、PHP和JSP (轉)PHPJS
- 一個程式語言比較網站網站
- python開發-與其他語言的比較Python
- Ruby程式語言與Ruby之間的比較
- Dart語言概覽Dart
- dart語言基礎Dart
- Rust語言Rust
- Flutter與Swift比較 - evroneFlutterSwiftVR
- Java、Rust、Go、NodeJS、TypeScript併發程式設計比較 - foojayJavaRustGoNodeJSTypeScript程式設計
- 從錯誤處理看 Rust 的語言和 Go 語言的設計RustGo
- 使用Go語言開發iOS應用(Swift版)GoiOSSwift
- Go中泛型和反射比較指南Go泛型反射
- 什麼是 LLVM?Swift, Rust, Clang 等語言背後的支援LVMSwiftRust