プラットフォーム、言語および結論:コンプリートガイドブロック鎖のプログラミング

開発者や学生のために設計チェーンオフ、インサイダー!

この記事ブロック鎖Q&コミュニティオフチェーンは、許可なく複製拒否しました。

ここに画像を挿入説明

ブロック鎖は、開発の将来の方向性を表しています。はい、資料の冒頭には、まず、このような結論を与えます。もちろん、将来的にはこの新技術の延長線上に焦点を当てることはこじつけされるものではないことを発見します。ブロック鎖はもともとオープンな技術だったとアクセス制限はありませんが、別の新しいタイプのその後の発展とともに徐々に現れ、及び各ブロック鎖は、ユースケースの独自の特定のセットを持っています。プライベート/アクセスタイプのチェーンブロックが部分的または完全に閉じた集中管理を取っている間出版/ NOアクセス特性は、開鎖ブロックを含まない、中央に低速。

今日の記事では、我々はアプリケーションを開発するためにチェーンベースの技術をブロックすることを学ぶ必要があるものな知識について説明します。私自身(原作者)はちょうど皆のように、ブロック鎖を学び始めたとき、私は彼の頭が曖昧で不明瞭な質問を詰めたと思います。ブロック鎖の異なるタイプが何をとして分類されていますか?私は、効率的なプログラミングのためにはどのプログラミング言語を使用する必要がありますか?オプションのブロックチェーンの開発プラットフォームは何ですか?心配しないで、これらの問題は11、今日の記事で答えられるだろう。

それでは、プログラミング言語で開始し、結果のアプリケーションの利点をフルに活用することができ、ブロックチェーン技術を開発する方法の理解を開発してみましょう。

プログラミングブロック鎖型

・ブロック・チェーン・アーキテクチャプログラム

ブロックチェーンのリリース前に、開発者は、最初にそのアーキテクチャ及びプロトコルを構成し、コードの天然の機能が書き込まれなければならない重要な機能を解決する必要があります。例えば、2009年に公式リリース、管理ルールとビットコインプロジェクトの用語はC ++で書かれています。コードのこの態様は、典型的には、機械に使用されるプロセスに近い表現を特徴とする、完了するためにそのようなCやJavaなどの言語で使用されます。

・インテリジェントビルの契約は、またはアプリケーションの中央に(DAPPと呼ばれます)

典型的なアプリケーションのコードの後端部の中央には、中央サーバー上で実行されたのに対し、DAPPネットワークの中心などで実行するバックエンド・コード。他のアプリケーションと同様に、DAPPは、フロントエンドおよびユーザインターフェースコードを記述する任意の言語を使用することができ、かつ提供バックエンド機能を直接呼び出します。

共通ブロックチェーンプログラミングプラットフォーム

・Hyperledger

Hyperledgerグローバルブロック鎖分散台帳の共同開発をサポートするために、実際の合計関連技術の開発を促進するために設計されたチェーンブロックの分野におけるオープンソース・プロジェクトのセット、および独自のガイドパブリッシングツールを使用して、研修や活動。このプロジェクトの目的は、(APIと呼ばれる)、リッチで使いやすいアプリケーション・プログラミング・インターフェースのすべての種類を含む、モジュラーブロックチェーン技術を提供することにあります。Hyperledgerは大幅にセキュリティ上のリスクを減らすことができ、およびトランザクションに関連するすべての当事者が唯一のプロセスがトランザクションに追加されることを期待できることを保証します。すべてのすべてで、Hyperledgerはブロックチェーンアーキテクチャ、データのプライバシー保護、情報の共有、および不変性を提供し、すべての密接ブロック鎖機能に関連することができます。

・イーサネット・スクエア

エーテルスクエアブロック鎖はブロック鎖を開発するためのオープンソースプラットフォームは、技術又はDAPPのアプリケーションの中心に上で実行されます。イーサネットスクエアブロックチェーンプラットフォームは、強力なスクリプトまたはスクリプト契約支援機能を提供し、かつそれらの間でネットワークの各ノード上で実行されます。イーサネット・スクエアは、取引活動を追跡することができるようにもプログラムすることができないだけで。現在、イーサネット広場ようにC ++、ゴー、PythonとJavaとを含むプログラミング言語のための、さまざまなオプションを提供しています。スマートソリディティ契約は、契約のための高レベルのプログラミング言語である、構築するために必要です。

五本の一般的に使用されるプログラミング言語ブロックチェーン

  1. C ++

常緑のコミュニティが開始++プログラミング言語C - レッツ最古の中からリスト、そして最も尊敬語。私はC ++言語拡張は、C言語プログラムに属している、私たちはよく知っていると信じています。C ++では、我々は、データ、機能、およびオブジェクトパッケージを作成し、簡単にそれらを呼び出すと、大幅に時間符号化の期間を短縮します他のプログラムで再利用することができます。

しかし、なぜ我々はCを使用する必要があり、オプションの高レベルの言語、現在の様々なを与え++?

C ++は、特定の特性を交換することができない持っている、との強い魅力を受信して​​いるので、簡単に言えば、これはあります。効率的なリソース管理機能を提供するために必要な一方で、アカウントにブロックチェーンの課題の発展を考えると、私たちは、安全の砦として理想的なブロック鎖開発することができます。ブロック鎖は、すべてのノードに迅速なサービスを提供するために確保しながら、信頼されていない多くのノードと対話する必要があります。さらに重要なのは、高速なサービスは、直接暗号通貨プロジェクトの運命を決めることが多いです。ここでの焦点、C ++は、ユーザーが良いを達成するのを助けることができます - そのため、開発者が問題とリソース要件の競合コア機能は完全にCPUとメモリリソースの使用を制御するために私たちを必要と最も高い優先度に設定されている直面しなければなりませんこの目標。

C ++についてのもう一つの興味深い事、そしてそれは移動の意味を持っていること。移動セマンティクスは、コンテンツをコピーするのではなく、オブジェクト間のコンテンツ移動のための方法が提供されます。移動セマンティクスの利点は、我々は必要なときだけ大幅にコードの冗長性を削減し、パフォーマンスレベルを向上させるためにいくつかのデータのコピーを入手することができるということです。そのため、メモリ管理とちょうどブロック鎖技術の実用化のニーズに合わせ表し++強いパフォーマンスC。

ブロック鎖のプログラミングでは、私は考えることができるもう一つの重要な課題は、タスクを並列化し、非並列タスクを統合する方法です。ほとんどの言語は一つだけに集中する傾向があるが、それは同時に並行して非並列タスクに対応できるように、C ++の機能をスレッド。C ++は、最適化したシングルスレッド性能ながら、複数のスレッド設備は、効率的なスレッド間通信を達成することを可能にします。

C ++の長所と短所

ブロック鎖C ++例

C ++言語は、主に、通貨と同様にビットコイン、リップル、ビットコインの現金、ライトコイン、ステラとMoneroを含む他の重要なブロックチェーン・プロジェクトを、暗号化するために使用されます。

  1. JavaScriptを

JavaScriptは、現在では最も人気のあるソフトウェア開発言語の一つです。そして、などのjQuery、反応して、角度およびノー​​ドを含むJavaScriptライブラリやフレームワークは、最新のWeb開発・ドライブ・エンジンとなっています。HTMLとCSSで使用するためには、その機能がさらに強化されます。JavaScriptのの主な目的は、相互作用効果がたくさんあるページを作成することです。

実際には、JavaScript自体も非常にその取り扱いの非同期操作を懸念されるブロックチェーンオペレーションのための非常に重要な特性を有しています。同時に実行される操作量のブロック鎖プラットフォームサージ上のユーザの数は急速に成長し、およびJavaScriptをより容易鎖ノードに、異なるブロック間のすべての通信を処理することができるように。しかし、我々は、JavaScriptのC ++は、コンピュータの処理能力をフルに活用でより良い効率であることを認めなければなりません。

JavaScriptの長所と短所

例JavaScriptのブロック鎖を持ちます

ブロックチェーンの開発者が現在web3.jsではJavaScriptを使用して、それらをethereum.js、それはフロントエンドのイーサネットネットワークと接続されているインテリジェントスクエア契約アプリケーションで私たちを助けることができます。ブロックチェーン分野でのNode.jsのための別の主要なJavaScriptアプリケーション方向HyperledgerファブリックSDK。これは、大きなフレーム間でIT業界やビジネスで広く使用されています。あなたがエンコードが好きなのであれば、その後、JavaScriptは良い選択かもしれません。

  1. パイソン

比較的近代的なプログラミング言語としては、Pythonは問わず、初心者プログラマが通常です。本質的には、Pythonは簡単な英語のような構文を持っています。あなたは、そのドッキングデータベースシステムであっても、大量のデータを活用し、複雑な数学演算を実行できるWebベースのアプリケーションを作成するには、サーバー上のPythonコードを利用することができます。また、Pythonの最も魅力的な場所は、コマンドを完了するために、新しい行を使用する能力である - これとは対照的に、他のプログラミング言語は、一般的に間違いなく、コードの構造が複雑に見えるようになり、セミコロン、または括弧の使用を必要としています。

どんなにあなたの実際の方向、Pythonはこの推奨リストで場所を占有するためにバインドされています。Pythonで書かれ開示されているツールの使用の1つ以上が存在している事実に、ほぼすべてのブロックのチェーンエコシステム。Pythonの人気も急速に改善されました。

Pythonの長所と短所

パイソンを有する例示的なブロックチェーン

ブロック鎖の分野では、PythonはスマートHyperledgerプラットフォームのための契約の調製のために使用されます。また、このようなイーサネットの広場のような多数の他のプロジェクトでPythonはまた、結果(例えばpyethereum)の独自の実績を持っています。Pythonはまた、NEO契約を作成するために使用されてきました。

  1. 行きます

GoLang言語、または我々はGOを呼び出すために使用され、グーグル社が2007年に開発された、比較的近代的な汎用言語、および2012年に公式の公共のリリースです。ゴーは、その構文はC言語に似てい、静的型付け言語です。そして、言語の述べた目的として、堅牢性と汎用性のため、C言語のパフォーマンスとセキュリティの利点と組み合わせる(などのPythonやJavaScriptなど)現代語構文と使いやすさにしようとします。Goでは、コンパイル言語である標準ライブラリの富を提供します。我々はいくつかのコンポーネントブロック鎖のプロジェクトに移動言語を使用する場合、この機能は柔軟性の利点の最大の度合いを私たちに提供することができます。

ゴルーチンは、プログラムまたはプログラム部分、複数の方法を実装の移動では、我々は、並列または非同期、と強調した項目が強調されているチェーンちょうどフィット機能をブロックするには、この機能を実行し、複数を使用することができます。一般的には、Javaや他のプログラミング言語では、これを達成するためにスレッドを必要とされます。

長所と短所を行きます

例で使用されるブロック鎖を行きます

非常に多くのGolangブロック鎖関連プロジェクトは、ここで私はほんの数高い人気エントリーを記載されています。最初に行く-Ehtereum Golang言語を使用するための最も重要な項目の一つです、。同じゴーで調製したもう1つのメインプロジェクトは、それが企業の巨大なブロック・チェーン・ソリューションの好きなタイプの一つとなっている、Hyperledgerファブリック行われます。ここでも、このエキサイティングな結果の中心にオンラインゲームのために特に織機のネットワークプロジェクトでは、ゴー・チェーン・コードを書くの使用が含まれています。

5.Solidity

ソリディティはJavaScriptに似たイーサネットスクエアチーム(ギャビン・ウッド、クリスチャンReitwiessner、など)、専用の、高レベルのオブジェクト指向言語の開発です。C ++、PythonとJavaScriptのに多大な影響により、堅牢性は、(EVMと呼ばれる)、イーサネットとイーサネット・スクエア広場プラットフォームの仮想マシン上の分散型アプリケーションを作成するために使用されます。ちなみに、EVMは、インテリジェントイーサネットスクエアプラットフォーム環境で書かれた契約を実行する必要があります。ソリディティは、継承、ライブラリ、および複雑なユーザー定義型をサポートして静的型付け言語です。今のところ、それはまだほとんどの分散型アプリケーションの開発言語の中に適用ブロックチェーンイーサネット広場のコミュニティや業界です。

経験のコードソリディティをサンプリングするには、リミックスIDEを使用することができます。リミックスは、統合されたコンパイラとランタイム環境ソリディティを提供し、任意のサーバー側のコンポーネントを必要としないWebブラウザベースのIDE、です。ソリディティリミックスは、コードと展開して実行するスマート契約を書くことができます。

ソリディティの長所と短所

実施例で用いたソリディティブロックチェーン

インテリジェントイーサネットスクエア契約の開発のための主ソリディティ言語。現時点では、私は実際にプロジェクトの他のタイプで使用されていることを見ていません。しかし、良いニュースは、エーテル体の質量スクエア開発エコシステム自体は非常に印象的でした、とブロック鎖開発の分野となっていることを、現在の最も重要な部分です。最も人気のある言語のオプションのいずれかの開発を委託するために十分にスマートの中でこれだけでは、ソリディティ。

概要

ブロックチェーン・テクノロジーは、あらゆる業界や市場のレベルに大きな影響をもたらすことが期待されます。私たちは、ブロック鎖技術は最終的に新しい主流の技術になるだろうしながら、数年に今後数ヶ月で、グローバル分散化レベルは、増加し続けると確信しています。開発のためのこの無限の空間の顔は、まだ躊躇しますか?そして、すぐにそれを学びます!

おすすめ

転載: blog.csdn.net/weixin_44172023/article/details/91414418