実践DApp開発入門 〜NFT編ステージ2〜


Price: 10000$
【注意事項】コース制作時はEthereum のテストチェーンとして「Rinkeby」を使用していましたが、先般実施された大型アップデート「ETH Merge」にてRinkebyが廃止となったため「Goerli」読み替え、聞き替えをお願いします。動画レクチャーは順次アップデートしていきます。ご不便おかけしますが、よろしくお願いいたします。NFTを所有している特別なアカウントのみが使える機能(トークン移転、預入、引出)を提供するDApp(分散アプリケーション)を開発していきます。スマートコントラクトは2つ開発します。1つは、NFTスマートコントラクトです。ERC-721に準拠したものをOpen ZeppelinのContractsライブラリを使って開発します。もう一つは、ERC-20に完全準拠はしていないもののERC-20の一部をスクラッチ開発していきます。さらに、銀行機能をイメージしたようなトークンの移転、預入、引出機能を開発します。具体的に何をどのような順番で学んでいくかについては、以下と『コースの内容』をご参照ください。開発の流れなど開発する順番NFTスマートコントラクト->FTスマートコントラクト->フロントエンドスマートコントラクト開発開発->ユニットテストを繰り返していくスタイルで開発していきますユニットテストは品質向上だけでなく、フロントエンドアプリからスマートコントラクトを操作するために使うEthers. jsの習熟も目的にしています。開発が終わったら最終的にテストネットのGoerliにデプロイしますフロントエンドアプリ開発大きく2セクションに分けていますMeta Maskを開発するサイトに接続する機能開発スマートコントラクトに接続し、クエリやトランザクションを発行する機能開発注意Ethers. jsを使ったDApp開発に主眼を置いていますNext. js/Tail Wind CSSについては「学ぶ」というより「体験する」を重視しているため、深く解説することは行っていません本コースで扱う主な技術・規格・サービス開発言語 :Solidity (v0.8.9)ライブラリ :Open Zeppelin(v4.7.0)開発フレームワーク :Hardhat(v2.9.9)クライアントライブラリ : Ethers. js(v5.6.9)ユニットテスト : Waffle(v3.4.4)/Chai(4.3.6)フロントエンドアプリ : Next(v12.2)CSS : Trail Wind CSS(v3.1.4)ホスティングサービス : Vercel(フロントエンドのデプロイ先として使用)Ethereum規格 :ERC-721,(ERC-20は参考程度)ブロックチェーン(テスト用ネット):Ethereum Goerliエクスプローラ :Etherscanウォレット :Metamask(ブラウザ: Chrome)ソースコードリポジトリサービス :Git Hub NFTマーケットプレイス :Open Sea分散型ストレージ :NFTStorage(IPFS/File Coin)注意事項・本コース制作の中で発生したエラーやWarning、バグについて本コースでは開発の中で出たエラーやWarning、バグなどについてあまり編集をせず残しています。本コースは教材なので、あえてエラーを発生させ修正する方法学ぶ、というものも当然多くありますが、私自身意図していないエラーの発生やタイポなどお見せするのも恥ずかしいようなものも少し残しています。このような類のエラー、不具合は、ユニットテストなどテストで気づけることが多いので、テストの重要性をより強調するための意図で残すことにしました。あらかじめご了承ください。・質問の受付についてコースで扱っているレクチャー内容やレクチャーを進めていくにあたり進められず詰まってしまったなどあれば質問をください。可能な限り回答するようにしますので活用ください!また、講義に解説を追加して欲しい!というリクエストも随時受け付けていますので連絡ください。お待ちしています。ただ1点、コースで扱っているレクチャー内容以外のご質問は基本的に受け付けていませんので予めご了承願います(コース関係ない内容だけどご自身が今開発してるコードのレビューなどはご勘弁ください)。・本コースで扱うソースコードについて本コースで扱う2つのスマートコントラクトとフロントエンドアプリのソースコードは学習目的のものですが、本コースの受講者か否かに限らず提供できるようパブリックリポジトリにし、コードもMITライセンスを採用しています。(この形でスタートして何か問題が出て来ればそのタイミングで見直します。)利用者の権利はMITライセンスの内容通りですので必ず確認をお願いします。また、ソースコードをそのまま使ったり、切り貼りしたりしてご自身のNFTコントラクトを開発し、Ethereumなどのメインネットワークにデプロイするのは推奨しません。・免責事項このコースで多くのサービスを使いながら学びますが、全て学習目的です。技術を学ぶためのコースであり、特定の銘柄や商品の投資や投機を促すものではありません。いかなる責任も賠償もできませんので予めご了承の上受講ください。