はじめに
初投稿かつプログラミング完全未経験で緊張しています、
Takeno Kinoko です。
- 本記事では Smart Contract を記述するための準備作業を紹介します。
- 主題の件を思い立った理由について
先日コロナにかかったのですが、病院で「お薬手帳はお持ちですか?」と聞かれました。
初めてのことでなんじゃそりゃ?と思いましたが、どうも飲んでいるお薬を記録する手帳で、
普段から何かしらの薬を飲んでいる人に対して飲み合わせの悪い薬を処方しないようにするためのものらしいです。
””手帳持っていくのだるいし、なくしたら終わりやん””
そう思い、自分のスマホやPCが壊れてもデータが消えない Ethereum の分散台帳上に記録すればいいじゃないか!
と考えた次第です。
※すべては自分の Solidity スキルの向上のためです
事前準備
環境構築は以下のYouTube動画を参考にしました。
英語ですがとても分かりやすいです。
長めの動画で、私も最後のほうは飛ばしてしまいましたが、宝くじを作るところまでは一通りやってみるといいかもしれません。
- brownie のインストールでハマった人へ
-
以下のChainlinkのサイトを参考にして
C++ build tools
をインストール
参考URL: https://chain.link/bootcamp/brownie-setup-instructions -
setuptoolsをアップグレードする
pip install --upgrade setuptools
-
その後、brownie を実施する
pip install eth-brownie
-
ターミナル上の以下の記載が黄色くなっているはずで、そこの近くに書かれているPathをシステム環境変数に設定する
Consider adding this directory to the PATH, or if you prefer to suppress this warning, use --no-warn-script-location
上記記載が出ない人は下記のコマンドで一度アンインストールしてから 4 を実施すると黄色いパスが出てくる...はず
pip uninstall eth-brownie
-
作業フォルダーを作成する
私は上の動画に出てくる Visual Studio Code を使用しています。
以下のコマンドで作業フォルダーを作成します。
PS C:\Users\taken\Documents\demos> mkdir medicineNotebook
PS C:\Users\taken\Documents\demos> cd medicineNotebook
PS C:\Users\taken\Documents\demos\medicineNotebook> brownie init
- 各種コマンドの意味
コマンド | 意味 |
---|---|
mkdir ~ | 例の場合、demosフォルダに「medicineNotebook」のフォルダを作成する |
cd ~ | 例の場合、demosフォルダーにある「medicineNotebook」に入る |
brownie init | 例の場合、brownieを使って開発するためのフォルダが自動で作成される |
Brownieとは?
https://eth-brownie.readthedocs.io/en/stable/
上記のサイトに以下の記述があります。
Brownie is a Python-based development and testing framework for smart contracts targeting the Ethereum Virtual Machine.
”EVMをターゲットにした、pythonベースのスマートコントラクト開発&テスト用フレームワーク” のようです。
フォルダ構成の確認
ここまでで、作業フォルダーは以下のようになっているはず。(2022/08/13現在)
demos/
└─ medicineNotebook/
├─ build/
│ ├─ contracts/
│ ├─ deployments/
│ └─ interfaces/
├─ contracts/
├─ interfaces/
├─ reports/
├─ scripts/
├─ tests/
├─ .gitattributes
└─ .gitignore
Solidity Scriptファイル ( 拡張子 .sol ) の作成
- Smart Contractを記述するための .sol ファイルを作成する。
medicineNotebook 直下の contractsフォルダに”medicineNotebook.sol”というファイルを作成する。
※ build フォルダ内の contracts には絶対に作成しないこと。
いったん休憩
今回は Smart Contract を書き始めるまでの準備作業を紹介した。
ここで休憩。次回へ続く