【入門ガイド】Solidityを学習する方法【初心者向けに解説】

悩む人「Solidityの入門記事を知りたいな。初心者だけどSolidityを学習して、ブロックチェーン技術やDappsを開発してみたいな。具体的な勉強方法を教えて下さい!」
今回はこういった悩みに答えていきます。
本日の内容
- 【完全入門】Solidityを学習する前の基礎知識
- 【完全入門】Solidityを学習する方法
この記事を書いている僕は、Solidityを独学しています。
よし、Solidityの勉強を始めます。
「お金を稼ぎたい」「スキルを身につけたい」といった理由ではなく、スマートコントラクトの理解を深めるためです。突撃することが1番の学習になると思うので、完全初心者ですが、ゼロからプログラミングを学びます。学習方法はのちにブログの方でまとめますね☺️
— いっぺい.NFT (@ippei_torigoe) January 1, 2022
学習開始から3ヶ月がたち、簡単なDappsやDEXを作れるようになりました。
この記事の目的は「Solidityを学習しDappsを作れるようになろう!」です。延長線上には個人開発やブロックチェーンエンジニアといった選択肢もありますが、今回はその第一歩というわけです。
[ Solidity 入門
]と検索しても、難しい記事が多かったので、今回は最高級のわかりやすさで解説していきます。学習には動画を使うので、初心者でもOKです。
【完全入門】Solidityを学習する前の基礎知識
Solidityの入門講座を始める前に、基礎知識を解説していきます。
そもそもSolidityってなに?
Solidityとは、スマートコントラクトを記述するための手続き型プログラミング言語であり、キャビン・ウッドによって作成された。JavaSriptやC++に似た構文を持つとされる。SolidityによってコンパイルしたプログラムはEthereum Virtual Machine上での実行が想定されている。
引用:Wikipedia
簡単に言うと、SolidityとはEthereum上で動かせるプログラム言語のことです。そして動かすためにスマートコントラクトという技術を記述する必要があるということ。
※スマートコントラクトの詳細が知りたい方は下記をどうぞ。
» スマートコントラクトとは何か?その仕組みや事例、実装への課題を解説
よくある質問:Solidityは難しい?
Solidityは、JavaScriptに似た文法をしているので、JavaScriptに扱いなれている人にとっては学習しやすい言語なのかなと思います。
また、Solidity は C++ や Python といったプログラミング言語と同様の特徴も持っています。いろいろな言語が複合しているイメージで、難しく考える方もいると思いますが、それぞれを紐解いていけば、さほど難度は高くありません。
Ethereumがよくわからない方へ
上記書籍で学習することをおすすめします。
SolidtyはEthereumを始めとしたブロックチェーン技術の知識がないと理解できませんので、まずは基礎学習から入ったほうが効率的な学習に繋がります。
Solidityではなにができるの?
スマートコントラクトを実装することができます。
- その①:投票機能
- その②:ブラインドオークション
- その③:クラウドファンディング
具体的な使用用途はこんな感じ。
意味不明だと思うので、詳細は「別記事」でまとめます。後日公開です。
スマートコントラクトを導入するのが、Solidtyの主な使用用途と考えていただければOKです。上記例はスマートコントラクトという技術と相性抜群の事例と言えますね。
Solidityを学習する方法【完全入門】
Solidityの入門ガイドを解説します。
- 手順①:CryptoZombiesで学習する
- 手順②:Solidityの環境構築する
- 手順③:Dappsを作ってみる
手順①:CryptoZombiesで学習する
まずはCryptoZombiesで基礎学習しましょう。
» CryptoZombies公式サイト
プロゲートのSolidityバージョンといった感じで、ゲーム形式で学習することができます。Solidity学習用の書籍や記事はないので、このサイトがおすすめ。
手順②:Solidityの環境構築する
次にあなたのパソコンで環境構築しましょう。
とはいえ、この手順は飛ばしてしまってOKです。基本的に次の「手順③」の動画内で解説されているので、手を動かす必要はありません。
手順③:Dappsを作ってみる
最後にDappsを作っていきましょう。
おすすめの動画を3つご紹介します。
- レベル1:Uniswap風のDEX
- レベル2:スーパーチャットのDapps
- レベル3:WEBサイトのDapps
レベル1:Uniswap風のDEXを作る
まずはDEXを作ってみましょう。
コインとコインの交換所を作るイメージです。
基本的に上記動画を見つつ手を動かせば、簡単に作れると思います。環境構築も解説してくれているので、安心です。日本語での解説動画となります。
レベル2:スーパーチャットを作る
続いてはチャットのDappsを作ってみましょう。
難度は上がりますが、動画を見ながら手を動かせばOKです。英語での解説になりますが、プログラムは基本的に同じ。視覚的に理解できるので、言語は関係ありません。
レベル3:WEB3.0対応のサイトを作る
最後にWEB3.0対応するサイトを作ってみましょう。
3時間と長い解説動画ですが、初心者でもわかるよう丁寧に解説してくれています。この動画を理解できるようになれば、ある程度の技術力はついた証拠です。個人開発等もやっていけるでしょう。
さあ、Solidity入門を学習してみよう!
さいごにまとめておわります。
Solidity学習は価値ありです
クリプト業界で働くエンジニアはなぜ年に1億円も稼げるのか?
音声放送チャンネル「中島聡 起業家・エンジニア」の「クリプト業界で働くエンジニアはなぜ年に1億円も稼げるのか?」。
マイクロソフトのエンジニアだった中嶋聡さんの放送です。
ラジオ放送内で「Solidityを学習する価値はあるし、これからの需要も激的に高まっていく」と述べています。次の10年を見据えて今のうちからSolidityを学習することで、将来の選択肢が増えるのかなと。
Solidityエンジニアは稼ぎやすい
クリプトの発展には、ブロックチェーンエンジニアが必須です。しかし現状、Solidityを書ける人は極少数。
資本主義社会ではレアな人に富が集まる仕組みなので、ゆえに稼ぎやすいというお話です。事実、年1億円ほど稼ぐ人が普通にいるみたいですね。(参照元)
未来のために早めに学習しよう
日本語での解説記事や書籍がないことを見ればわかりますが、Solidityは超絶ブルーオーシャンです。
今のうちから学習することで、皆さんの市場価値を高めることができます。プログラミングの習得には「学歴」は必要ないため、誰にでもチャンスはあり、事実行動するかどうかだけなのです。
動かないと何も始まらないので、迷っているなら行動してみましょう。基本的に無料で学習できるので、とにかく始めてもらいたい。
以上となります。優雅なライフを贈りましょうヽ(=´▽`=)ノ