Libra

(日本語訳) Chain Castle – Lesson 2 Chapter 6

Chapter 6 城の設計を完了する チャプタ3で、どうやって構造体を定義するか学びました。ここでは、構造体をどうやって初期化するかmain()プロシージャでどの様に使っていくかについて学んでいきましょう。 次の図の様に、構造体を初期化するためのプロシージャを作ることがあります。このプロシージャは、同じモジュールで宣言されて初期化される必要があります。構造体を初期化するために使われるプロシージャ...
Libra

(日本語訳) Chain Castle – Lesson 2 Chapter 5

Chapter 5 複数の戻り値があるプロシージャ チャプタ5では、プロシージャについて説明し、一つの戻り値があるプロシージャの使い方を示しました。しかし、多くのシナリオでは、この章で説明する様な複数の戻り値があるプロシージャを使う必要があります。 チャプタ5では、一つの戻り値があるプロシージャを次の様に定義しました。 public procedure name( parameter name 1...
Libra

(日本語訳) Chain Castle – Lesson 2 Chapter 4

Capter 4 演算子 前のセクションで、足し算や掛け算の様な、いくつかの基本的な算術演算子を使いました。このチャプタではMoveが実装している演算子についてより詳しく見ていきましょう。 現在、Moveは次の算術演算子を実装しています。「足す:+」「引く:-」「掛ける:*」「割る:/」「剰余演算:%」。以下はこれらを利用するサンプルです。 main() { let a: u64; ...
スポンサーリンク
Libra

(日本語訳) Chain Castle – Lesson 2 Chapter 3

Chapter 3 構造体 ムーブの構造体は他の言語の構造体と同じ様に、同じ型か異なる型のデータのコレクションからなるデータセットです。struct name{data: type, data:type, …}という形で構造体を定義できます。例えば… module Test { // 空のstruct struct Empty1 { } // 二つのメンバーのあるstruct st...
Libra

(日本語訳) Chain Castle – Lesson 2 Chapter 2

Chapter 2 プログラムの構造 他の言語と似た様に、Moveは選択やループの様な一般的なプログラム構造を持っています。 次のようなルールのif-else構文を使って単純な選択構造を実装できます。 もしステートメントが一つだったとしても、分岐構文はブレース({})で括る必要があります。次の例は間違いです。 main() { let x: u64; if (true) x = 3...
Libra

(日本語訳) Chain Castle – Lesson 2 Chapter 1

Chapter 1 所有権 所有権の使用例 前のチャプタで、バインディングというワードに言及しました。実際には、このワードは「所有権のバインディング」を指します。ある識別子がある値の所有権を持っている場合に限って、私たちはこの識別子を通して値にアクセスできます。 値を名前(識別子)にバインディングするとき、この値(リソース)の所有権を識別子にバインドしています。例えば… let x: u64; x...
Libra

(日本語訳) Chain Castle – Lesson 1 Chapter 5

Chapter 5 プロシージャ チャプタ2で言及した様に、プロシージャは他のプログラミング言語における関数と同じ様に、モジュール内で定義できます。 プロシージャの定義 プロシージャを宣言するために、そのビジビリティ(アクセス権)、名前、パラメータと戻り値を次のフォーマットで宣言します。 Visibility Procedure name (parameter name): The type of...
Libra

(日本語訳) Chain Castle – Lesson 1 Chapter 4

Chatper 4 変数バインディングとデータ型 変数バインディング 変数バインディングは、後の利用のために、値を変数にバインディングすることです。 Rustの様にMoveはlet variable: variable type;のフォーマットでletを変数バインディングに使います。例えば次の様にです。 let x: u64; 変数バインディングの後、=で変数をイニシャライズできます。例えば次の様...
Libra

(日本語訳) Chain Castle – Lesson 1 Chapter 3

Chapter 3 コントラクトのmain関数 main() 前のチャプタでは、モジュール構築の仕方を学びました。そして、このチャプタではモジュールをベースにしてコントラクトを完成させましょう。 私たちは、コントラクト内に「トランザクションスクリプト」と呼ばれる、他のどのコードからもコールされない様な、ワンタイム実行コードを埋め込むことができます。トランザクションスクリプトはscript:の記述か...
Libra

(日本語訳) Chain Castle – Lesson 1 Chapter 2

Chapter 2 スマートコントラクトとモジュール スマートコントラクトはブロックチェーン上で動作するプログラムです。私たちは「送金」や「お買い物」といった一連の操作をブロックチェーン上で行うためにコントラクトを使います。 Moveのコントラクトのコードは、次の二つのパートに分けられます。 「modules:」で始まるモジュールセクション 「script:」で始まるmain() このチャプタ...
スポンサーリンク
タイトルとURLをコピーしました