【Solidity】プログラミング忘備録(contract, public)

おはようございます。おーみんです。

今日は久しぶりにSolidityの勉強をしていました。Solidityというのは仮想通貨「Ethereum」の開発言語です。

復習のつもりで初歩的な部分から忘備録として書いていこうと思います。

 

pragma solidity ^0.4.11;

コンパイラバージョンの指定です。日々、Solidityもアップデートされており、現在だと0.4.23くらいいっているのかな?どうだろ?

 

contract HelloEthereum{}

スマートコントラクトの宣言をしています。

 

string public msg1; 

 コントラクト内で宣言された変数をステートと呼びます。プログラム例がないのでアレですが、contract HelloEthereum内で定義した場合にステートとなるようです。イメージ的にはオブジェクト指向言語で言うところのインスタンス変数。

stringは文字型、publicはアクセス修飾子を指します。アクセス修飾子にはprivateもあり、こちらは限られた範囲にしか見られたくない場合に使います。

 

uint8 public counter;

整数型の宣言例です。uint8は8ビットで表現できる符号なし整数です。整数型にはuintやintがあり、uint8やint8のようにビット数を指定することも可能です。ちなみにuintで定義すると256ビットのビット数が扱えるらしい・・・

 

コンストラクタについて

 function HelloEthereum(string _msg1){

        msg1 = _msg1;

}

コンストラクタはスマートコントラクトの生成時に実行されます。

引数なしに設定することもでき、 その場合はHelloEthereumのカッコ内を空白にします。

堅牢なスマートコントラクト開発のためのブロックチェーン[技術]入門

堅牢なスマートコントラクト開発のためのブロックチェーン[技術]入門

 

基礎的な範囲ですが、結構大事ですなぁ。

たまにこんな感じで勉強した復習としてサラッと書いていこうと思います。

 

では!

「読者になる」ボタンも押していただけると嬉しいです。