ワークステーションのセットアップ

最初のガイドでは、NEM で開発を始めるために必要なツールのインストールをステップバイステップに進めていきます。

Catapult サービスのブートストラップの実行

../_images/four-layer-architecture-basic.png

Catapult サーバノード (第1層) はP2Pブロックチェーンネットワークを構築します。Catapult Rest ノード (第2層) はアプリケーションがブロックチェーンとその機能にアクセスするためのAPIゲートウェイを提供します。

Catapult Service Bootstrap を使用して学習用のプライベートチェーンを可動させていきます。このサービスは、Catapult サーバーインスタンスと Catapult RESTノードをローカルで実行します。

  1. 以下のコマンドを実行する前に、 dockerdocker-compose がインストールされていることを確認してください:
$> git clone https://github.com/tech-bureau/catapult-service-bootstrap.git --branch v0.1.0
$> cd catapult-service-bootstrap
$> docker-compose up

注釈

catapult service bootstrap が動作しませんか? these troubleshooting tips を確認してみてください。

  1. 最初のブロックの情報が取得できるかどうかを確認します:
$> curl localhost:3000/block/1

テストアカウントの作成

アカウントとは、NEM ブロックチェーン内に保存される変更可能な状態に関連付くキーペア(秘密鍵と公開鍵)です。言い換えると、ブロックチェーン上に金庫があり、あなたのキーペアでのみ変更をすることができます。秘密鍵はその名の通り、常に秘密にしておかなければなりません。秘密鍵にアクセスできる人は誰でも、アカウントを完全にコントロールできてしまいます。

公開鍵 は暗号理論によって秘密鍵から算出されます。秘密鍵を公開鍵から逆算するには100万年程度はかかるため、共有しても安全です。

最後に、アカウントのアドレスは、NEM ブロックチェーンプロトコルに従って、公開鍵から生成されます。このアドレスには正当性チェックや使用されているネットワーク(パブリック、テストネットまたはプライベート)などのより多くの情報が含まれているので、公開鍵の代わりにアドレスを共有してください。

NEM2-CLI conveniently allows you to perform the most commonly used commands from your terminal i.e. using it to interact with the blockchain, setting up an account, sending funds, etc.

  1. npm を使って NEM2-CLI をインストールします。
$> sudo npm install --global nem2-cli
  1. コマンドラインツールでアカウントを作成します。
$> nem2-cli account generate --network MIJIN_TEST --save --url http://localhost:3000

network フラグ は MIJIN_TEST にセットします。テストネットワークとは開発やテストに使うための代替の NEM ブロックチェーンです。

コンピュータにアカウントを保存するために save フラグ を使います。NEM2-CLI は開始したトランザクションに署名をするために保存済みのアカウントを使用します。

  1. アカウントの認証情報を含む、以下の行がターミナルに表示されるはずです:

    New Account: SCVG35-ZSPMYP-L2POZQ-JGSVEG-RYOJ3V-BNIU3U-N2E6

    Public Key: 33E0…6ED

    Private Key: 0168…595

XEM とは何ですか?どうやって入手できますか?

NEM ネットワークの基軸となる暗号通貨は XEM と呼ばれます。NEM ブロックチェーン上のすべてのアクションはコストとして XEM を消費します。ネットワークの検証と保護を行う人へのインセンティブを提供するためです。

すでに XEM を保有しているアカウントを使用しましょう。ネームスペースとモザイクを登録するのに必要です。

  1. ターミナルを開き、 Catapult Bootstrap Service をダウンロードしたディレクトリへ移動してください。
$> cd  build/generated-addresses/
$> cat addresses.yaml
  1. nemesis_addresses のセクションから、XEM を保有するキーペアを見つけてください。
  2. NEM2-CLI に最初のアカウントを読み込みます。
$> nem2-cli profile create

Introduce network type (MIJIN_TEST, MIJIN, MAIN_NET, TEST_NET): MIJIN_TEST
Introduce your private key: 41************************************************************FF
Introduce NEM 2 Node URL. (Example: http://localhost:3000): http://localhost:3000
Insert profile name (blank means default and it could overwrite the previous profile):

開発環境のセットアップ

それではプログラミング言語を選択しましょう。あなたが一番使いやすいと思う、またはあなたのプロジェクトに必要な言語を選んでください。

新しいプロジェクトのフォルダを作り、選択した言語のインストラクションを実行しましょう。

  1. package.json を作成します。バージョン 8.9.X 以上の Node.js が必要です。
$> npm init
  1. nem2-sdk と rxjs ライブラリのインストール。
$> npm install nem2-sdk rxjs
  1. nem2-sdk は TypeScript で実装されています。NEM ブロックチェーンのアプリケーションの構築には JavaScript の代わりに TypeScript を使うことを推奨します。

バージョン 2.5.X 以上がインストールされていることを確認してください。

$> sudo npm install --global typescript
$> typescript --version
  1. ts-node を使うと TypeScript ファイルを node で実行できます。
$> sudo npm install --global ts-node
  1. package.json を作成します。バージョン 8.9.X 以上の Node.js が必要です。
$> npm init
  1. nem2-sdk と rxjs ライブラリのインストール。
$> npm install nem2-sdk rxjs
  1. 新しく Java gradle プロジェクトを開いてください。JDK は最低でも JDK 8 が必要です。お気に入りのIDEを使用するか、コマンドラインからプロジェクトを作成してください。
gradle init --type java-application
  1. Maven セントラルリポジトリを使うため build.gradle を編集します。
repositories {
    mavenCentral()
}
  1. dependencies として nem2-sdk とリアクティブライブラリを追加します。
dependencies {
    compile "io.nem:sdk:0.9.1"
    compile "io.reactivex.rxjava2:rxjava:2.1.7"
}
  1. プログラムを開始するために gradle buildgradle run を実行します。
  1. C# IDE で新しくプロジェクトを作成します。Visual Studio であれば、nem2-sdk のインストールにパッケージマネージャコンソールを使用してください。
  2. Tools > NuGet Package Manager > Package Manager Console を開きます。
  3. nem2-sdk とリアクティブライブラリパッケージ名をターミナルで入力してください。
$> Install-Package nem2-sdk
$> Install-Package System.Reactive

他のIDEをお使いですか? different ways to install a NuGet Package を参考にしてみてください。

次へ: はじめてのアプリケーションを作成