Edited at

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][ハッシュ関数・キャスト・イベント]