Windows environment setup with Solidity
Sebastien Arbogastからの無料ビデオチュートリアル
Entrepreneur, software developer, speaker and trainer
1のコース
24,887人の受講生
コース全体からもっと学ぶ
Getting Started with Web3 Development
Develop your first decentralized application from scratch on the Ethereum blockchain with Solidity
17:04:00のオンデマンドビデオ • 更新日: 12月 2021
Understand the basic philosophy behind the blockchain and distributed/decentralized applications
The basics of how a blockchain generally works, just enough to be able to use it as a development platform
Develop a web3 app, create a project, deploy it in production, write smart contracts, unit test them, and create a user interface for them
How to combine the right tools to put together a consistent and real world pragmatic development environment
The fundamentals of the Solidity smart contract language
How to use the Truffle build and testing framework (covers Truffle 4)
How to deploy a decentralized app to various Ethereum instances (testrpc, private chain, test chain, main net)
How to unit test smart contracts
日本語 [自動]
この講義では、 Ethereum用のスマートコントラクトを開発するために必要なすべてのツールを備えたWindows用の開発環境をセットアップします。 ここでは、 そのすべてを説明するのではなく、 コミュニティで広く使われているものを中心に紹介します。 ちなみに、 この講義はWindowsに特化したものです。 MacOSやLinuxをお使いの場合は、 専用のレッスンがあります。 ツールボックスは、 Geth、 Ganache、 Truffle、 Atomの4つのツールで構成される予定です。 まず、 インストールするのはGethです。 現在、 GethまたはGo-Ethereumは、 完全なEthereumノードを実行・操作するためのコマンドラインインターフェースです。 GethはGoで実装されており、 ブロックの採掘、 イーサーの生成、 スマートコントラクトの展開と対話、 資金移動、 ブロック履歴の検査、 アカウントの作成などを行うことができます。 Gethは、 メインネットのようなパブリックなEthereumネットワークに接続したり、 このコースの後半で実演する、 開発目的の独自のプライベートネットワークを作成するために使用することができます。 開発プロセスでGethを使用する利点は、 メインネットにデプロイする前に、 アプリケーションを完全にテストできることです。 そのため、 GethのインストーラーはEthereumのWebサイトに掲載されています。 そこで、 ブラウザを開いてみる。 ちなみに、 ブラウザはEdgeかInternet Explorerしか使っていない人は、 メインで使っているChromeか、 せめてFirefoxをインストールした方がいいと思います。 しかし、 EdgeやInternet Explorerはブロックチェーンのテストには向かないでしょう。 そこで、 ここでは「イーサリアム」に行ってみることにします。 github io」 ちなみに、 このビデオで紹介したウェブサイトはすべて、 対応する講義のリソースに必ずリンクを貼っています。 だから「go-ethereum/downloads」。 だからここで、 ゲス1にも行ける。 7. 3 Windows用。 ダウンロードしたら、 開いてセキュリティの警告を受け入れ、 インストールウィザードを実行すればよい。 このステップでは、 開発ツールのチェックボックスをオンにすることを忘れないでください。 そして、 それが終わったら、 Nextをクリックして、 デフォルトのディレクトリのままにしておくと、 すべてインストールされます。 終了したら、 閉じればいいのです。 さて、 このコースでは、 多くのことをコマンドラインで行うことになります。 Windowsでは、 CMDランタイムとPowerShellの2つのコマンドラインインタフェースがデフォルトで用意されています。 PowerShellはより強力で、 コマンドも他のUNIXシステムのものに近いので、 PowerShellを使うことを強くお勧めします。 そこで、 ここでは検索でWindows PowerShellを探し、 PowerShellを起動することにします。 ちなみに、 一度起動したら、 バーの中で右クリックして、 「タスクバーにピン留め」をクリックするといいかもしれませんね。 そうすれば、 必要なときに簡単に戻ることができます。 そして、 これが使うべきコマンドラインインターフェイスです。 また、 例えばここで「geth version」と入力すると、 どのバージョンのGethがインストールされているかを確認することができます。 そして、 ここに1があります。 7. 3安定していて、 良いですね。 とりあえずPowerShellを終了し、 ブラウザに戻ってGanacheをインストールすることができます。 さて、 ganacheは開発用に使えるEthereumブロックチェーンエミュレータです。 Ganache は、 このコースの以前のバージョンで使用した TestRPC の代替品と見なすことができます。 Ganacheの強みは、 ブロックやトランザクションをより使いやすく検査できるUIにあります。 GanacheはGethと比較して、 インメモリのEthereumノードで、 より高速に動作し、 実際のEthereum実装にデプロイする前にコントラクトをローカルでテストするのに必要なすべての視覚的コンポーネントを提供します。 Windows用のインストールパッケージを "truffleframework "でダウンロードして、 Ganacheをインストールします。 com/ganache」です。 今回もこのリンクはこの講座の資料の中に入れておきますね。 そこで、 このウェブサイトは、 私がどのオペレーティング・システムを使用しているかを自動的に検出し、 Windows版をダウンロードするよう提案するはずです。 そこで、 ホームページのダウンロードボタンをクリックし、 ダウンロードが完了したら、 .NET Frameworkを開くだけです。 APPXのパッケージで、 しばらくするとセキュリティの警告が出ます。 それでも開くとこの画面になるので、 「準備ができたら起動する」のチェックボックスをオンにしたままインストールをクリックするだけです。 インストールが完了すると、 Analyticsを有効にしてGanacheをサポートするかどうかを尋ねるこの画面が表示されます。 このまま、 「続ける」をクリックしてください。 それでは、 Ganacheの主な機能をおさらいしてみましょう。 Ganacheを起動すると、 この部分にあるネットワーク識別子5777のメモリ上に新しいイーサリアムノードが起動します。 また、 10個のアカウントを作成し、 各アカウントに100Ethersを置く。 TestRPCとは逆に、 Ganacheは常に同じアカウントを作成し、 同じニーモニックを使用します。 これは後々、 MetaMaskでこれらのアカウントをインポートする際に非常に実用的です。 つまり、 最初に見る画面は「アカウント」ビューで、 そこには、 現在のブロック(ノードが最後に採掘したブロックの番号)、 ガス価格(このノードが採掘するために取引に要求する最低ガス価格)、 ガス限度(このノードがブロックごとに受け入れる最大ガス)、 ネットワーク識別子、 RPCサーバーは後で接続するRPC部分のエンドポイント、 採掘状況といった実行中のノードの情報がいくつかあり、 重要視されています。 デフォルトでは、 この偽ノードは新しいトランザクションを受信したときにのみ新しいブロックを採掘する。 それが「オートマイニング」です。 そして、 これは実際のノードが行うこととは全く異なる。 通常のノードは、 保留中の取引があろうとなかろうと、 一定時間ごとに新しいブロックを採掘するからである。 自動採掘を無効にしたり、 より通常の動作に戻したり、 設定で採掘ブロック時間を設定することも可能です。 そして最後に、 Ganacheが最初のアカウントを生成するために使用するシードであるニーモニックをご覧ください。 口座のアドレス、 小数点以下2桁の残高、 この口座から送られた取引数、 口座のインデックス、 そして最後に口座の秘密鍵を見ることができるボタンがあります。 次に「Blocks」タブでは、 そのノードで採掘されたブロックの一覧が表示されます。 また、 「取引」タブでは、 すべての取引のリストが表示されますが、 今のところ何もありません。 最後に、 "Logs "タブでは、 実行中のノードのログが表示されます。 また、 検索フィールドがあり、 ブロックやトランザクションをハッシュや番号で検索することができます。 そして最後に、 この歯車のアイコンは、 設定にアクセスするためのものです。 そこで、 ホスト名、 ポート番号、 ネットワーク識別子を変更することができます。 オートマイニングはオンにしておきます。 アカウントとキー」では、 起動時に生成されるアカウント数を定義できるほか、 ニーモニックの変更やランダムな生成も可能です。 ここでは、 設定をそのままにしておきます。 チェーン」では、 ガスの上限やガス料金をカスタマイズでき、 最後に「アドバンス」では、 Google Analyticsの有効・無効を設定することができます。 設定を変更した場合は、 保存して再起動すると、 新しい設定が反映されますので、 忘れずに行ってください。 ここでは、 戻るだけです。 これでとりあえずガナッシュは辞められますね。 そして、 次にインストールする必要があるのは、 NodeJSとNPMです。 NodeJSは、 Ethereumノードと相互作用するアプリケーションを作成するためのサーバーサイドJavaScriptプラットフォームです。 NodeJSをインストールすると、 Ethereum向けの開発に必要なツールやライブラリのほとんどをセットアップするために必要なNode Package Manager、 つまりNPMもインストールされます。 NodeJSとNPMがすでにインストールされているかどうかを確認するには、 WindowsのPowerShellで次のコマンドを使用します。 PowerShellを開いて、 「node -v」でNodeにインストールされているバージョンがあれば表示し、 今回はインストールされていないので「npm -v」でNPMのバージョンを表示します。 そしてこちらも同様に、 何もインストールされていません。 そのため、 すでにインストールされている場合は、 NodeJSがバージョン8以上、 NPMがバージョン5以上であることを確認してください。 これらのバージョンは、 このコンテンツを制作するためにテストしたもので、 それ以前のバージョンを使用すると、 動作しない場合があります。 NodeJSは様々な方法でインストールできますが、 最も簡単な方法は、 NodeJSのWebサイトにあるMSIインストール・パッケージです。 では、 とりあえずPowerShellを終了して、 ブラウザに戻り、 「nodejs」にアクセスしてみましょう。 org」です。 この場合も、 リンクは説明文に記載されています。 そして、 ここでは「9. 3. 0 Current」であり、 LTSのものではありません。 パッケージのダウンロードが完了したら、 あとはインストールウィザードを実行するだけです。 よく見えるように、 とりあえずChromeブラウザをやめてみる。 そこで、 「次へ」をクリックし、 使用許諾契約書の条項に同意します。 次に、 インストール先をデフォルトのままにしておきます。 次に、 すべてのデフォルトをそのままにして、 「インストール」をクリックします。 このアプリが私のデバイスに変更を加えることを許可して、 「完了」をクリックします。 これで、 新しいPowerShellに戻れますね。 すでに起動していた場合は、 一旦終了し、 戻ってきてから新たに起動して、 すべてが同期していることを確認する必要があります。 そして、 もう一度「node -v」と入力し、 「npm -v」と入力すればいいのです。 これらのバージョンは、 私たちがすべてのコンテンツをテストしたものですので、 少なくともこれらのバージョンをお持ちであることをご確認ください。 次にインストールするのは、 Truffle 4です。 スマートコントラクトをコンパイル、 テスト、 デプロイするためには、 手動で行うよりも開発速度を向上させるビルドフレームワークが必要になります。 そして、 その事実をこの講座の後半で実証していきます。 ここでは、 Truffle 4の使い方を説明します。 Truffleは、 先ほどGanacheも見つけたWebサイト「truffleframework.Truffle」で見つけることができます。 com」を発表しました。 現在、 以前のバージョンのTruffleをお持ちの方は、 アンインストールをお願いします。 このコースの以前のバージョンで使用したTruffle 3をお持ちの場合、 新しいバージョンをインストールする前に削除してください。 そして、 Truffleをインストールするために、 Nodeのパッケージとしてインストールすることになります。 だから、 PowerShellに行けばいいんです。 まず、 古いバージョンの可能性があるものをアンインストールしましょう。 「npm uninstall -g truffle」、 そして「npm install -g truffle」ですが、 ここでバージョンを「@4.Truffle」と追加しておきます。 0. 4". これは、 このコースのコードにいくつかの破壊的な変更をもたらすかもしれない最新バージョンをインストールしたくないからです。 ですから、 もしあなたがより新しいバージョン、 特により新しいメジャーバージョンを使っているのであれば、 問題が発生しても驚かないでください。 ここで、 4. 0. 4は、 この収録時点では本当に最新版です。 これができたら、 "truffle version "を実行して、 コマンドが存在することと、 正しいバージョンであることを確認することができます。 そして、 ここに4つあるのがお分かりいただけると思います。 0. 4でトリュフ、 0になります。 4. JavaScriptで実装されたSolidityコンパイラのための18。 この講義の最後のステップは、 スマートコントラクトやその他のテキストファイルを編集するために使用する、 テキストエディタをインストールすることです。 現時点では、 本当の意味でのEthereum IDEはないんです。 IntelliJ、 Webstorm、 Microsoft Visual Studioなどのプラグインはありますが、 すべての開発チェーンをカバーする完全なIDEはありません。 でも、 ここで紹介したいのは、 十分に使える面白いフリーテキストエディターなので、 大丈夫です。 このコースでは、 Mac、 Windows、 Linuxで自由に使えるという理由でAtomを選びました。 しかし、 もちろん、 より使い慣れたものを使うのは自由です。 Atomをインストールするために、 まずPowerShellを終了して、 「github. com/atom/atom」です。 そこで、 ここの「リリース」に行くことができます。 また、 1.のインストールは行いません。 24 β その代わり、 最新の安定版リリース(私たちの場合は1.0)にこだわることにします。 23. 2. あなたにとってはもっと新しい情報かもしれませんが、 この収録の時点ではこれが私たちの手元にあるものです。 そして、 ここではatom-setupの実行ファイルを使用することになります。 また、 今回は64ビットマシンでの実行なので、 "atom-setup-x64 "を使用します。 exe "です。 パッケージのダウンロードが完了したら、 あとは開くだけです。 ここでは、 ブラウザを終了させます。 このパッケージはAtomをインストールし、 インストールが完了すると起動します。 また、 デスクトップにショートカットを作成し、 後でAtomを起動するのに非常に実用的なものになります。 そこで、 アトムです。 Atomプロトコルのデフォルトハンドラとして登録を受け付ける:「はい、 いつも」。 そして、 これでPowerShellに必要なatomとapmのコマンドも全てインストールされたはずです。 これで、 必要ならAtomを離れてPowerShellに戻り、 「atom -v」を実行すれば、 インストールされているバージョンを確認することができるようになりました。 そして、 "apm -v "でAtomパッケージマネージャのバージョンを確認します。 そこで、 Atomテキストエディタ用の拡張機能やプラグインをインストールするために、 Atomパッケージマネージャが非常に便利です。 この場合、 Solidity言語のサポートを追加するlanguage-ethereumエクステンションをインストールするために使用し、 スマートコントラクトを書くために使用します。 そのため、 インストールは「apm install language-ethereum」を実行すればよい。 この種の拡張機能はAtom自体からインストールすることもできますが、 せっかくコマンドラインにいるのですから、 ここでやっておいた方がいいでしょうし、 これで完了です。 これが最後のツールだと言ったんです。 実はもう一つ、 Windowsにインストールする必要があるものがあります。 Windowsには残念ながら、 GitのバージョンがOSにプリインストールされていないからです。 また、 GitはNPMが多用するバージョン管理システムなので、 NPMのパッケージをインストールするときに、 Gitが必要になることがあります。 そこで、 それを先取りするために、 ブラウザにアクセスすることができます。 まずPowerShellを終了し、 ブラウザを開いて「git-scm」にアクセスしましょう。 com/download/win "です。 そして、 これで自動的にインストーラーがダウンロードされます。 インストールパッケージは、 この「ダウンロード」の下にあります。 このパッケージを開いて、 とりあえずブラウザを閉じ、 セキュリティ警告を受け入れ、 すべてのデフォルトを受け入れ、 すべてのファイルをコピーさせればよいのです。 Gitについてよくご存じない方のためにもう一度説明すると、 これはSubversionやCVSに似たバージョン管理システムですが、 NPMのエコシステムで多用されています。 そして、 「Finish」をクリックすると、 リリースノートを開くようにプロポーズされるのです。 OKです。 それを閉じればいいんです。 この段階で、 Windows上でスマートコントラクトの開発を開始するために必要なツールはすべて揃いました。 今後のための注意点:このコースの残りの部分では、 コマンドラインプロンプトで多くのコマンドを入力することになりますが、 Windowsでは、 レガシーコマンドラインインターフェースかWindows PowerShellのどちらかを使用することができます。 このコースでもWindows PowerShellを使用することを強くお勧めします。 そうしないと、 いくつかのコマンドが失敗する可能性があります。 また、 このコースのビデオのほとんどは、 MacでUNIXターミナルを使って撮影されたものですが、 まったく同じコマンドが、 特に明記されていない限り、 すべてWindowsのPowerShellで動作することが確認されています。 そこで、 再度、 すべてのテストを行いました。 異なる点がある場合は、 明示的に記載します。 次回の講義では、 Ethereumのプライベートノードのセットアップと起動方法を紹介します。