ブロックチェーン

Solidityをゲーム感覚で勉強できるCrypto Zombiesのクオリティ高すぎ

こんにちは、フリーランスエンジニアのとだこうき(cohki0305)です。

最近、ブロックチェーンを仕事で扱うようになり、Solidity を書く機会が増えてきました。それゆえに、いろんな学習コンテンツを通して勉強してきました。

その中で、Solidity を学ぶのに最適な教材を見つけたので紹介していきます。

Crypto Zombies というコンテンツです。

Crypto Zombies とは

Crypto Zombies とは、Loom Network というブロックチェーンを使ったアプリケーションを作っている会社が作った Dapp の学習コンテンツです。無料で利用できて、日本語に対応しています。

すべてのコースを終えると、Solidity を一通り書けるようになり、JavaScript でブロックチェーンのデータにアクセス・書き込みができるようになります。

※ 僕はすべて受講しましたが、メインは Solidity の学習です。詳しくは後述します。

Progate のように、web 上で学習が完結するようになっています。レッスンが始めると以下のような画面が表示されます。

左側にそのレッスンについて学ぶ内容が表示されます。そして、与えられた課題をコードを書いて解いていくというものです。

Crypto Zombies は Crypto Kitties という実際にある Dapp の模倣アプリを作ることができるので、実践的な知識を得られますし、ゲームを作っていくので飽きずに進められました。

どんなに勉強になる教材でも飽きてやめちゃえば効果が少ない!そういう意味でも優れたコンテンツです!

レッスンを進めていくと、ゾンビ軍団を作れるようになっていますよw下のは僕のゾンビたちです。

カリキュラム

レッスンは 1 ~ 6 で構成されています。

Solidity の学習が 1 ~ 5, JavaScript によるフロントエンドの開発が 6 になっています。フロントエンドの開発は入門程度になっていますが、Solidity の学習はかなり優れていました。

Solidity の基本文法を一通り学べます。さらに、Solidity のデザインパターンやセキュリティ対策などを学べたのがよかったです。

レッスンごとにどんなことが学べるのか詳細に説明していきます。

レッスン 1

レッスン 1 では、Solidity の基礎の基礎を学んでいきます。

Class(Contract)、関数をどう定義するのかなど Solidity がどういう言語なのかを解説することをメインにしています。

レッスン 2

レッスン 2 では、少し複雑なコードになってきます。

アプリの開発に必要になる require、継承、グローバル変数、Solidity に特有のインターフェースを学びます。

レッスン 2 では、ゾンビに CryptoKitties を食べさせて、ゾンビを成長させるというチャプターもありますw

レッスン 3

1 ~ 2 にて Solidity の言語仕様を学んだので、レッスン 3 からはより実践的な知識を学びます。

gas(手数料)の節約方法、セキュリティレベルの向上、など Solidity を開発する上でのデザインパターンを学びます。

Solidity の言語としての特徴とブロックチェーンの特徴を理解した上で、実装しないと信頼性の高い Dapp は作れないことがよく分かるでしょう。

レッスン 4

レッスン 4 はコードが複雑化します。今ままで学んだことの応用です。

ゾンビのバトルシステムを作るのですが、継承関係が深くなったり、扱う関数がどんどん増えてきます。

レッスン 5

レッスン 5 はトークンについて学ぶことができます。

トークンとは、ブロックチェーンの中で発行した独自の仮想通貨のことです。つまり、このレッスンでは仮想通貨を作ります。

ERC721トークン というトークンの規格に従い、ゾンビをトークンにして交換可能にします。面白そうでしょ?

レッスン6

レッスン 6 は、JavaScript でブロックチェーンのデータにアクセスしたり、書き込んだりします。

今まで Solidity で作成してきたブロックチェーンにあるコードを操作することをメインにしています。

最後に

Crypto Zombies をやれば、ブロックチェーン初心者でも Solidity エンジニアになれるので、興味ある方はぜひやりましょう!

ただ、Crypto Zombies では、フロントエンドの開発において最新技術を利用していません。現在は truffle というフレームワークを用いて開発することがスタンダードになりつつあります。

僕は note にて truffle を使って dapp を作るチュートリアルを作成しているので、興味ある方は参考にしてください!JavaScript が書けるのであれば最後までできるようなレベルです。

より本格的にブロックチェーンを学ばれたい方は、僕も通っている Techboost のブロックチェーンエキスパートに通うことをおすすめします。ブロックチェーンの最先端の研究をしている Cryptoeconomics Lab が監修している授業でかなり満足度が高いです。

あわせて読みたい
DAppsエンジニアが今更Tech boostブロックチェーンコースを受ける3つの理由こんにちは、フリーランスエンジニアのとだこうき(cohki0305)です。 僕は今はフリーランスとして、web サービスを作っているの...
ABOUT ME
cohki0305
不必要に下ネタいっちゃうゲスエンジニア。 週3フルリモートで働くが気持ちは過労死寸前。それでも生きていけるのは、25歳・実務経験1年だけど、ノリでフリーランスエンジニアになって時給が4倍になったから。元営業なので、性格は最低。 自分の経験を元に、未経験からエンジニアになる方法や業界のことを発信してます。
プログラマーになって年収1000万目指そう

学歴・職歴関係なく、数年間で年収 1000 万円を目指せる職業って何が思いつきますか??

僕はソフトウェアエンジニア(プログラマー)しか思いつかないです。

僕は実務一年でフリーランスになって年収1000万稼げるようになりましたが、別にこの業界なら普通です。学歴も職歴も関係ないです。

プログラマーを目指して稼ぎたい方は、僕が紹介している「プログラマーになるための最短ステップ 3」を是非読んでチャレンジしてください。

未経験からプログラマーになるための方法を知る