• <option id="cacee"><noscript id="cacee"></noscript></option>
  • <table id="cacee"><noscript id="cacee"></noscript></table>
  • <td id="cacee"></td>
  • <option id="cacee"></option>
  • <table id="cacee"></table>
  • <option id="cacee"><option id="cacee"></option></option>
  • <table id="cacee"><source id="cacee"></source></table><td id="cacee"><rt id="cacee"></rt></td>
    <option id="cacee"><option id="cacee"></option></option>
     找回密碼
     立即注冊

    掃一掃,登錄網站

    首頁 百科 查看內容
    • 4885
    • 0
    • 分享到

    區塊鏈編程語言 Top 5

    2019-3-19 10:19

    來源: 鏈門戶

    C++
    讓我們從最具歷史、最受推崇的語言——C++ 開始,幾乎所有人都知道 C++ 是 C 語言的擴展。在 C++ 中,若創建了一個變量、函數或對象,就可以在其他程序中輕松的調用并復用,可以大大減少編程時間。

    但是現在已經有很多高級語言了,為什么還要用 C++ 呢?

    因為 C++ 具有的某些特性仍然很吸引人,考慮到區塊鏈開發要面臨的諸多挑戰,其應用更應該像是一個堡壘,同時還要兼備高效的資源管理特性,區塊鏈應用不僅要與許多不被信任的節點進行交互,同時還要為每個節點甚至是所有節點提供快速服務。尤其是對加密貨幣來說,這種快速服務更是至關重要。要滿足所有這些需求并能在最高優先級執行,你需要能完全控制 CPU 和內存的使用,而 C++ 剛好就能夠滿足用戶這方面的需求。

    C++ 另一個有趣的地方是移動語義(move semantic)。移動語義提供了一種在對象之間移動內容而不是復制內容的方法。移動語義的優點是:只有在需要時才會獲得某些數據的副本,通過減少代碼冗余來提高性能。而高效的內存管理和高性能都是區塊鏈開發所必須的特性。

    除此之外,區塊鏈編程的挑戰還包括并行任務和非并行任務的集成。

    可以想到的另一個關于區塊鏈編程的挑戰是并行任務和非并行的任務的集成。大多數編程語言只擅長其中一種,但是,C++ 語言的線程能力使其可以同時處理并行和非并行任務。C++ 語言允許多線程任務進行有效的線程間通信,并優化了單線程處理的性能。

    C++ 的優點和缺點

    1

    基于 C++ 語言的區塊鏈開發案例

    C++ 主要用于加密貨幣和重要的區塊鏈項目,如比特幣,Ripple,Litecoin,Stellar 和 Monero 等。

     

    JavaScript

    JavaScript 是目前最流行的軟件開發語言之一。JavaScript 語言及其相關的庫和框架,例如:jQuery、React、Angular 和 Node.js,是推動現代 Web 開發技術快速發展的引擎。JavaScript 通常與 HTML 和 CSS 一起,用以增強 Web 在行為交互方面的功能,當前 JavaScript 主要用于創建交互性強的網頁。

    JavaScript 非常擅長處理異步操作,這一主要特性使得它非常適用于區塊鏈開發。隨著區塊鏈上的用戶數量的增加,所有的操作都需要同時執行,JavaScript 可以更輕松地處理不同區塊鏈節點之間的通信。但同時我們也不能否認,在最大化的密集計算處理能力方面 JavaScript 不如 C++ 高效。

    JavaScript 的優點和缺點

    2

    基于 JavaScript 語言的區塊鏈開發案例

    區塊鏈開發人員可以在 web3.js 和 ethereum.js 中使用 JavaScript,用來構建應用程序的前端,用以連接以太坊網絡和智能合約。
    另外在區塊鏈中經常采用 JavaScript 語言的是基于 node.js 平臺的 Hyperledger Fabric SDK,這是一個在 IT 行業和企業中經常使用的大型框架。

     

    Python

    Python 是一種相對現代的編程語言,通常是新程序員的最愛,因為它語法簡單,可以在服務器上創建基于 Web 的應用程序,還可以用來連接數據庫系統,也可以處理大數據并執行復雜的數學運算。

    Python 最吸引人的地方是它通過“另起一行”來作為命令的結束標識,而不像其他編程語言使用分號或括號。

    無論你采用哪一種區塊鏈平臺進行開發,都不能忽略 Python 的存在,因為幾乎每個區塊鏈的生態系統中都有一個或多個用 Python 編寫的公共工具。Python 已經成為區塊鏈領域中的流行編程語言。

    Python 的優點和缺點

    3

    基于 Python 語言的區塊鏈開發案例

    在區塊鏈領域,Python 用于為 Hyperledger 編寫智能合約,除此之外還有許多其他的項目也采用了 Python,如 Ethereum(pyethereum)也有自己的 Python 實現。同時 Python 也被用來為 NEO 創建智能合約,這是一個基于社區的非營利性區塊鏈項目。

     

    Go

    GoLang,俗稱 Go,是谷歌公司于 2007 年開發的一種相對現代的領域通用語言,并于 2012 年面向公眾開放。它是一種靜態類型的語言,語法有點類似于 C 語言。作為一種健壯的、多用途的語言,Go 試圖將現代高級語言 (如 Python 和 JavaScript) 的語法和用戶友好性與 C 語言的性能和安全優勢結合起來。Go 是一種編譯語言,提供了豐富的標準庫。當你在區塊鏈項目的多個組件中使用 Go 語言時,該特性將為你帶來最大的靈活性。

    在 Go 中,名為 Goroutines 的方法提供了異步或并行運行多個程序的能力,這也是區塊鏈項目所需要的一個重要的特性。而在 Java 和其他語言中往往會使用線程來實現該特性。

    Go 的優點和缺點

    640

    基于 Go 語言的區塊鏈開發案例

    區塊鏈領域有很多與 Go 語言相關的項目,其中包含一些很受歡迎的項目,例如 Go-Ethereum 是 Ethereum 的 Go 語言實現,也是基于 Go 語言的最重要的項目之一。用 Go 語言實現的另一個重要項目是 Hyperledger Fabric,它是大公司中最受歡迎的區塊鏈解決方案之一。另一個是去中心化在線游戲項目 Loom Network,它采用 Go 語言實現了其鏈碼。

     

    Solidity

    Solidity 是由 Ethereum 團隊(Gavin Wood,Christian Reitwiessner 等)開發的一款類似于 JavaScript 、針對于特定領域、面向對象的高級語言。Solidity 受 C++,Python 和 JavaScript 的影響,為了在 Ethereum 平臺的以太坊虛擬機(EVM)上創建去中心化應用程序而設計的。EVM 是在 Ethereum 平臺上編寫智能合約的運行時環境。

    Solidity 是一種靜態類型語言,支持繼承、庫和復雜的用戶自定義類型。到目前為止,它是 Ethereum 社區和區塊鏈行業中最適合的領域特定語言(DSL)。

    若要嘗試運行 Solidity 的代碼示例,可以使用 Remix IDE,這是一款基于 Web 瀏覽器的 IDE 工具,同時集成 Solidity 的編譯器和運行時環境,且沒有服務器端組件。你可以在該 IDE 中編寫 Solidity 代碼并部署和運行智能合約。

    Solidity 的優點和缺點

    640

    基于 Solidity 語言的區塊鏈開發案例

    Solidity 語言主要用于開發以太坊智能合約,目前還沒有看到其他項目使用 Solidity,但以太坊生態系統是巨大的,并且也是目前區塊鏈開發中最重要的一部分。

    Solidity 是用于智能合約開發的最流行的語言之一。

    版權申明:本內容來自于互聯網,屬第三方匯集推薦平臺。本文的版權歸原作者所有,文章言論不代表鏈門戶的觀點,鏈門戶不承擔任何法律責任。如有侵權請聯系QQ:3341927519進行反饋。
    相關新聞
    發表評論

    請先 注冊/登錄 后參與評論

      回頂部
    • <option id="cacee"><noscript id="cacee"></noscript></option>
    • <table id="cacee"><noscript id="cacee"></noscript></table>
    • <td id="cacee"></td>
    • <option id="cacee"></option>
    • <table id="cacee"></table>
    • <option id="cacee"><option id="cacee"></option></option>
    • <table id="cacee"><source id="cacee"></source></table><td id="cacee"><rt id="cacee"></rt></td>
      <option id="cacee"><option id="cacee"></option></option>
      妖精视频