よく進んだ、というか必死に進めた。
そろそろ、折り返し地点なので、早期にさ50%のところまで行きたいという思いだ。
写したコードにいくつかバグがあり、その対処に時間がかかった。
■コード整理
Blockchain関連のものをサブディレクトリにまとめコードを整理する。
これから作成するWallet関連は別フォルダ下でスタートする。
■ウォレットのテストスクリプト作成
もういつものことだが、TDDのため、テストコードを作成して、失敗させることからスタートする。
Walletのクラスが持つ、プロパティの確認やメソッドの確認のコードを追加する。
■ウォレットのコード追加
電子署名のモジュールであるellipticを導入する。
署名の際の暗号化アルゴリズムはビットコインと同じもの(secp256k1)を使用する。
電子署名のVerifyや、サイン実行の機能実装を行う。
■トランザクションの実装
テストがなかなかパスできず長時間、デバッグに時間を使ってしまった。
console.logを使いながら、変数の内容を可視化して、バグの特定を行った。
バグのポイントは下記の2点。
- コンストラクタの{}が抜けていて、値がうまく初期化されていなかった。
- config内の定数定義のexportが抜けていて、変数の内容がundefinedのままになっていた。
動画を見ながら、すぐにコードを書いているつもりだが、書き忘れなどが発生して、以外に時間かかる。
コードの答えを見てしまうのでもいいのだが。。。
まあ、デバッグをするとNode JS自体の勉強にはなる。違う切り口からポイントを理解できる。
■次は?
ウォレット自体の生成と複数に対するトランザクションの実装などを行う。
この後は平日5%、土日10%進捗を目標に進めたい。
このコースへのリンク
Build a Blockchain & Cryptocurrency | Full-Stack Edition
全般ランキング
【このカテゴリーの最新記事】
- no image
- no image
- no image
- no image
- no image