Solidity言語

レッスン5:ERC721はコレクター要素だ①

ERC20トークン、ERC223トークン、ERC721トークンに関しての内容となります!簡単にではありますが、説明しております!今回のレッスンは、Dappの根幹とも言える機能なので、ここを通らずしてDapp開発はありませんよ、という重要な部分なので、できれば楽しんで理解をしていきましょう!

ぶっちゃけムズイですけど、、ここまで読み進めた方であれば理解はできるはずです!私がそうでしたので!!

ということでいきましょうか!

CryptoZombies | イーサリアムでのゲーム開発を学ぶ

それでは開演しまっす!!

チャプター1:イーサリアム上トークン

22

早速、ERC20トークンという名前が出てきましたね。

ここの説明だとなかなかわかりにくい、という方には、こちらのブログを参照ください!
👉高妻智一さんEthereumのERC20トークンとは?

すごいよなぁ、、やっぱしSolidityを学びたいとか私のようにCryptoZombiesで勉強を始めた人には、高妻先生のブログは必読ですね。。私は要所要所しか見ていないので、まだまだ知らないであろう事がたくさんあるので、ゾンビちゃんが一定のところまで来たら、がっつり読みしようと思ってます!

先生(勝手に先生呼びしてますw)のブログに書いてますが、簡単に私なりに説明しますねw

Ethereum Request for Comment: Token Standard #20というのが正式な名称との事なので、略してERC20トークンと呼ばれているとの事ですね。

このERC20トークンは、Ethereumで発行できるトークンの仕様を決めているもの、との事なので、これ自体が通貨の単位という訳ではなく、共通ルールを持ったスマートコントラクトだ、という事です。

正式名称を読む限り、ERCとはディスカッションボードの事でトークンについての話し合いで20番目に話し合われた結果として、決まった基準がこのERC20トークンとなったという事ですねw

省略したりすると本質の意味なんて想像でしか描けないですが、こうやって分解してみるとなるほどなぁ〜と思いますよね、、

高妻さんの記事には追記がしてあり、ERC20には重大な欠点があり、それを解決した上位互換のあるERC223が今後のスタンダードになるとの事!

223ですよ、、、ERC20基準が誕生してから、200回以上も話し合いが行われて改善をすすめたって事ですね!!凡人ならそこで満足しちゃいそうですが、、技術者だったり開発者っていうのはとことん良くしよう、もっと良くできるはずだ、と考え、手を休める事をしないんですな。。素晴らしい!

次進みますね!
37

今後生まれてくるであろう、新しいトークンに関してもERC20トークンに準拠していれば簡単に取り扱うことができる、という事ですかね。

必要なのは、トークンとやり取りするためのスマートコントラクトをただ追加する事だ。との事なので、追加すればやりとりが可能となるって事だ!めちゃくちゃ簡単に書いているけど、簡単なんだろうか?w

59

ぐおっ、、ERC721トークンとな、、、721回目のディスカッションで生まれたトークンの仕様なのですな。。スクショデータにもありますように、クリプト収集物により適したトークン規格だという事。

金銭の取引という感覚ではなく、個体の取引をする際の規格と考えたらいいのでしょうかね。

ゾンビを交換・引き渡しするのに0.5ゾンビという単位で渡すことは基本できないからねw

11
ユニークとは、「一意・唯一」という意味なので個別と考えるとわかりやすいですかね。

Dappsのゲームで、育成されるキャラだったり、ゲットできるアイテムっていうのは、1以上の単位でしか獲得できないですもんね、小数点がある取引は不可能なので、それに特化した仕様っていうのがERC721なのですな。ってことは今出ているほとんどのゲームがこのERC721トークンを使用しているって事になりますね!!!

なるほどなるほどぉ〜、、、さあテストをやるぞ!w

22
おっと、、ここも真っさらなコーディングスペースからのスタートとなります!
思い出しながら進めていきましょう。

1ではバージョン情報を宣言せよ、ですね、これが無いと後で困るらしいので、、

pragma solidity ^0.4.19;

となりますな。

2ではimportせよ、なので、、ダブルクォーテーションとドットスラッシュを忘れるなよ!

import “./zombieattack.sol”;

となる。

3では新しいコントラクトを宣言し、継承させよ、なので、、

contract ZombieOwnership is ZombieAttack {
}

となりますね!

まとめると、、

pragma solidity ^0.4.19;
import “./zombieattack.sol”;

contract ZombieOwnership is ZombieAttack {

}

となります。

今回のテストはもう基本中の基本なので忘れたら見て、を繰り返す内に
身につきます!なぜなら本来の作業であれば毎度この作業が必要になるからですね。今で6個のコントラクトがあるわけですからね、インポートと継承は5回やっている事になりますからね!大丈夫です!!

っていう事で、本日朝の部はこれにて終了したいと思います!!

すげー重要な部分に入って来たので、ここはしっかり理解しとかないと今後の市場の流れがわからなくてチンプンカンプンになっちゃいますからね、、、ERCに関してはしっかり理解していきましょう!

私なんて、一回このレッスンだってやってるんですけどね、、1回やるくらいじゃ理解できないですからねw

こうやってブログに書いてアウトプットする事で理解を深めようと始めたブログなので、効果は抜群ですよ!w

本日もあと、午前と午後で更新できると思うので、また後で会いましょう。

CryptoZombies | イーサリアムでのゲーム開発を学ぶ

それではまた後ほど!

ABOUT ME
shidayuu
元バンドマンで読書・書評をしている函館在住32歳、しだゆうと申します! このブログでは主に読書した内容を元に、「ヒラメキを発信する」をテーマとして毎日更新しています。 書評をメインに、たまに元バンドマンの知識を発信していきます! あなたの役に立てる記事を書いていきます!