為什么開發人員從Java轉Go

jopen 10年前發布 | 12K 次閱讀 Go語言

英文原文:Why one developer switched from Java to Google Go

  使用 Java 來開發企業級的應用可能是一個不錯的選擇,但是使用 Google 的 Go 語言來開發系統軟件會更有優勢,一名來自 PivotalJava 開發者如是說,目前他已經成為 Go 語言的支持者。

  Pivotal 的一個使用 Go 語言開發其 Cloud Foundry 云平臺的工程師 Matt Stine 說:Go 語言在包、模塊化和并發方面有很大優勢,如果你嘗試解決的問題是 Go 語言所擅長的領域,如大型、高性能服務器端程序,我可以說 Go 非常適合這樣的場景。”

  Stine 認為 Go 是一個“相當無聊”的語言,而不是一個神奇的、現代的、功能豐富的語言,但是盡管如此,“你仍然可以使用它開發出一些令人興奮的東西”。他認為 Go 是一個構建系統級軟件的工具。開發者可以使用 Go 語言標準庫來構建系統級軟件,而不像其他語言一樣需要第三方框架。

  Stine 提到,在處理并發時,Golang 有內建的功能,這與 Java 不同,Java 的并發的工具類是通過類庫支持的。Stine 說:“我認為 Go 語言本身的語法結構就非常適合處理并發。”另外,Go 支持多返回值。

  Go 也提供了閉包和 Map,Map 可以將一種類型的值(Key)與其他類型的值關聯起來,他們都是 Go 的內建數據結構。Stine 還稱贊了 Go 的 slice。通過 slice,被包裝后的數組可以方便地為序列的數據提供接口。在 Go 中,很多與數組相關的編程都通過 slice 來實現。

  在 Go 語言中,半自動資源管理是通過 defer 關鍵字來提供的。“取代創建資源、使用資源、然后在下面關閉資源的是,我可以馬上告訴它,‘在該函數其余功能執行完后再執行這個函數’”,stine 說。

  Stine 強調,Go 語言在面對包和模塊化的時候比 Java 更有優勢,原因是在 Go 語言中它們比 Java 簡單得多。“在 Go 里面,所有類型和函數必須屬于一個包,但是每一個源文件必須申明它所屬的包。”

  Java,由 Sun Microsystems 公司在 1995 年推出,在語言流行排行榜(包括 Tiobe,PyPL 和 RedMonk 編程語言排行榜)中得分最高或者接近最高。Go 語言,在 RedMonk 排行中正在上升,在 6 月的排行中來到第 21 位。在 7 月的 Tiobe 排行中,Go 被排在 30 位。

來自: ifeve.com
                    <span id="shareA4" class="fl">                            
                        </span>
 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!