Ethereum[CryptoZombies][コントラクト・状態変数・四則演算]


EthereumをSolidityで開発する

CryptoZombiesのチュートリアルで学習を進めて行きます。
その前にMetaMask
MetaMastインストール参考
環境はRemixで行なっていきます。
Remixのインストールの仕方はこちらを参考にしてください。

1. Version pragma

これは、コードが使用するSolidityのコンパイラのバージョンを宣言するものですあり、コンパイラのバージョンを原因でコードが壊れることを防ぐために必要なものです。
以下のように書きます。

contract.sol
pragma solidity ^0.4.19;

2. コントラクト

コントラクトとはイーサリアムアプリケーションの基本ブロックのことです。
変数や関数は全てコントラクトに属しています。
コントラクトは以下のように書きます。

contract.sol
contract HelloWorld{

}

復習

ZombieFactoryという空のコントラクトを作成してください。
また、バージョンは0.4.19を指定してください。

contract.sol
pragma solidity ^0.4.19;

contract ZombieFactory{

}

3. 状態変数

状態変数とは、コントラクト内に保管され、イーサリアムのブロックチェーン上に記載されます。

contract.sol
contract Example {
  // この部分がブロックチェーン上に記載される
  uint myUnsignedInteger = 100;
}

uintとは

整数のデータ型で、負の数ではないことを示しています。

注: Solidityでは、 uintは256ビットの符号なし整数であるuint256のエイリアスです。 uint8、uint16、 uint32など、少ないビット数でuintを宣言することもできます。しかし、一般的には、後で説明するような特定の場合を除いて、単にuintを使います。

復習

dnaDigitsというuintを16に設定してください。

contract.sol
pragma solidity ^0.4.19;

contract ZombieFactory {

    uint dnaDigits =16;

}

4.四則演算

・加算(足し算): x + y
・減算(引き算): x - y
・乗算(掛け算): x * y
・除算(割り算): x / y
・剰余(余り): x % y
・乗数(乗数計算): x ** y

復習

dnaModulusというuintを作成し、10のdnaDigits乗に設定してください。

contract.sol
pragma solidity ^0.4.19;

contract ZombieFactory {

    uint dnaDigits = 16;
    uint dnaModulus = 10 ** dnaDigits;

}

次は、構造体などを扱っていきます。

こちらも参考にしてください。
Ethereum [基礎知識]
thereum [プライベートネットワークに接続する]
Ethereum [etherの採掘・送金]

次回

Ethereum[CryptoZombies][ハッシュ関数・キャスト・イベント]