イーサリアムでDappsを開発してみたので、勉強方法を紹介します

  • このエントリーをはてなブックマークに追加

どうも!
先日、イーサリアムを使って簡単な宝くじのDApps(分散型アプリケーション)を作ってみました。
(フロントエンドも含む)

作る前は僕もそうだったのですが、

  • 「イーサリアムでアプリを作りたいが、何から勉強したらいいのか分からない…」
  • 「なんか難しそうだし、情報がまとまってなくて困る…」
  • 「スマートコントラクトの書き方は分かるけど、フロントエンドとの繋げ方が分からない…」

っていう方って結構いるかと思います。

ちゃんと勉強したら、意外と難しくないですよ!

そこで今回は、僕がイーサリアムでアプリを開発できるようになるまでにした勉強を紹介します。

まずブロックチェーンの基本を勉強しよう

正直ここをすっ飛ばしてもアプリは(多分)作れますが、

「アプリは作れるけどブロックチェーンの仕組みはよくわからない…」

ってのもあれかと思うので、ちゃんと勉強した方がいいと思います。

きっとこれを読んでる方は、「アプリ開発を通してブロックチェーンの勉強をしたい」と思ってる方が多いと思うので。

やっぱり何事も基礎は大事です。

理論のことを既によくわかっている人は飛ばしましょう。

こちらのがオススメです。

ビットコインとブロックチェーン:暗号通貨を支える技術

ブロックチェーンは動きが激しく、流行りを追っただけの表面的な内容の本はすぐに陳腐化しがちです。

そんな中で、この本はブロックチェーンの根本の仕組みを体系的に書いてあります。

今でも原理は同じなので、読んでおくべき本だと思います。

この本は、「ニュースやネットなどで、ブロックチェーンのことは何となく知っているが、原理はちゃんと理解できてない」という方にオススメです。

こちらから無料でPDFも読めるみたいです。

(気が向いたら要約もアップします。)

イーサリアムの勉強

ブロックチェーンの仕組みがよくわかったら、イーサリアムのことを少し勉強してみましょう。

世間的には同じ「仮想通貨」として捉えられていますが、ビットコインとイーサリアムは全く異なる思想を基に作られていますし、目指す世界も違います。

特にイーサリアムでは「スマートコントラクト」などの、ビットコインには無い概念が重要になるので、しっかり抑えておきましょう。

で、具体的にどうやって勉強するのか?という話なのですが、イーサリアムのホワイトペーパー(日本語)にざっくり目を通せばいいと思います。

ただまあ、正直ちょっと分かりにくいので、本を読んでもいいかもしれないです。

以下がオススメです。

ブロックチェーンアプリケーション開発の教科書

ブロックチェーンアプリケーション開発の教科書

この本では、ブロックチェーンの基礎から始まり、イーサリアム、スマートコントラクト。
そして、イーサリアムでのアプリ開発について、コードを書きながら学ぶことができます。
(この1冊だけでは、アプリ開発には不十分ですが…)

この本は「イーサリアムに興味があって、何冊か入門書を買ってみたい」という方にオススメです。

アプリを実装していく過程で、色んな概念の理解が深まってくると思うので、この段階ではざっくりとした理解でも大丈夫だと思います。

Crypto Zombies で Solidity を勉強しよう

現在、イーサリアムの開発では、主に ”Solidity” という言語が使われています。

なので、Solidity の書き方を勉強しましょう。

Solidity は Javascript に似ている言語なので、Javascript 経験者には簡単だと思います。

そうでなくても、プログラミング経験者なら大丈夫だと思います。

僕も Javascript はほとんど触ったことがなかったので。

Solidity の勉強には、Crypto Zombies というサイトを使いましょう。
(日本語版あり!)

>> Crypto Zombies の日本語サイトはこちら

このサイトでは、ゾンビのゲームを作りながら、Solidity を自分で書いてDapp開発を勉強することができます。

全部やっても1日はかからないぐらいだと思います。

Solidity の書き方がざっくり分かれば全部やらなくてもOKだと思います。

プログラミング未経験者の方は

プログラミング未経験者の方は、先にプログラミング自体に慣れた方がいいかもしれません。

無料でも受けられるオンラインの progatedotinstall などのサービスがオススメです。
(プログラミングの考え方を学ぶのが大事なので、言語は何でも良いですが、Solidity を勉強することを考えるとオススメは Javascript です。)

Dapps(分散型アプリ)を開発してみよう

ここまで来たら、あとは自分でアプリを開発してみましょう。

アプリを作るためには、Solidity でコントラクトが書けるだけではなく、Web3 や Metamask などのツールを理解し、使える必要があります。
(Web3 は、ブラウザからコントラクトにアクセスするためのJavascriptライブラリのこと)

なのですが、いかんせん新しい技術なので、あまり分かりやすく纏まった情報が無いんですよね。。
(気が向いたらこのブログに書きます。)

なので、基本的には何らかの外部サービスを使ってしまうのが効率的かと思います。

Udemy で学ぶ

ベネッセがやっているUdemyというサイトで、イーサリアムで1からアプリを作る方法を教えている講座があるので、それを観ると良いと思います。
(僕はこれで勉強しました。)

>> 講座の詳細はこちら

ブロックチェーン、イーサリアムの基礎のおさらい、宝くじアプリの作り方、クラウドファンディングアプリの作り方について、24時間ものビデオが観られます。

おまけに、ブロックチェーンとは直接関係ない、React.js の基礎まで入っていて、超盛りだくさんです。
(React.js が Dapps のフロントエンド開発に役立つ)

英語なのですが、日本語字幕もあるので問題ありませんでした。
(若干翻訳が不自然な箇所がありますが、理解できる範囲内です。)

>> 講座の詳細はこちら

TechAcademyのブロックチェーン講座

ある程度エンジニア経験があり、「バグやトラブルが出ても自分で解決できる!」という方には、上のUdemyの講座がオススメです。

そうでない方や、英語に抵抗がある方は、TechAcademy のブロックチェーン講座を受けるのもいいかと思います。

こちらの講座では、ブロックチェーンを使った、

  • オークションシステム
  • 宝くじ
  • 投げ銭ができる掲示板

などの開発が学べるみたいです。

確かに独学で頑張っても身に付けることはできますが、こういうキッカケがないと人間中々行動しないので、そういう意味では良いと思います。

>> ブロックチェーン講座の詳細

これらの講座がオススメな人・そうでない人

ブロックチェーンやイーサリアムの技術にキャッチアップ、あるいは投資したい人にオススメです。

一方、「ブロックチェーンでアプリを作れるようになって今すぐ儲けたい!」という人には向いてないかと思います。

ブロックチェーンは未成熟

正直、これらの講座を受けたからといって「すぐに稼げるようになる」ということは無いんですよね。

ブロックチェーンは技術としては全然成熟しておらず、導入している企業も少ないです。

現段階ではブロックチェーンエンジニアの募集は少ないので、ブロックチェーンを学んでDapps を作れるようになったからといって、すぐに就職できる訳ではありません。

将来的に価値になる

だからと言って、勉強することが無駄ということは絶対にないと思います。

実際に手を動かして学ぶことで、技術に対する理解が圧倒的に深まることも間違いなく事実です。

ブロックチェーンにしてもAIにしても、

「ニュースや書籍で読んで分かった気になってる状態」
と、
「自分で手を動かして実装してみた状態」

では理解度が格段に違いますからね。

僕は今のところ、ブロックチェーンエンジニアになろうというつもりはありません。

しかし、技術にキャッチアップすることで将来得になると信じているので、自分の時間を投資して勉強しています。
(純粋に好奇心もありますが…)

ITベンチャー企業界隈でブロックチェーン関連の勉強会がよく開かれていますが、それもまさに同じモチベーションですね。

今すぐにブロックチェーンで事業を興す訳ではなくても、将来の技術の為にそういった投資をしている訳です。

まとめ

いかがでしょうか。
イーサリアムでDappsを開発するためにした勉強方法を紹介してきました。
まとめると、勉強のプロセスは、

  • ブロックチェーン自体の理解
  • イーサリアムの理解
  • Solidity の勉強
  • Web3, Metamask などの周辺技術の理解

といった感じになります。

実際に開発してみると、かなり理解が深まるので、是非やってみることをオススメします。
意外と難しくないですよ。

Sponsored Link

SNSでもご購読できます。

コメントを残す

*