-
bitcoin $87959.907984 USD
1.34% -
ethereum $2920.497338 USD
3.04% -
tether $0.999775 USD
0.00% -
xrp $2.237324 USD
8.12% -
bnb $860.243768 USD
0.90% -
solana $138.089498 USD
5.43% -
usd-coin $0.999807 USD
0.01% -
tron $0.272801 USD
-1.53% -
dogecoin $0.150904 USD
2.96% -
cardano $0.421635 USD
1.97% -
hyperliquid $32.152445 USD
2.23% -
bitcoin-cash $533.301069 USD
-1.94% -
chainlink $12.953417 USD
2.68% -
unus-sed-leo $9.535951 USD
0.73% -
zcash $521.483386 USD
-2.87%
スマートコントラクトの上にシンプルなDAPPを構築する方法は?
Set up Truffle, Ganache, and MetaMask to build and test a simple Ethereum dApp with a Solidity smart contract.
2025/07/10 16:50
開発環境を設定します
スマートコントラクトの上にシンプルなDAPPの構築を開始するには、まず適切な開発環境を確立する必要があります。 Ethereumベースの開発に最も人気のあるツールの1つは、トリュフで、スマートコントラクトをコンパイル、展開、テストするためのフレームワークを提供します。
- node.jsとnpmをインストールして、JavaScriptパッケージを管理します
npm install -g truffle実行してトリュフスイートをグローバルに取り付ける- プロジェクトディレクトリで
truffle initを使用して、新しいプロジェクトを足場にする
トリュフがセットアップされると、テスト目的でローカルブロックチェーンも必要になります。 Ganacheは、Ethereum Networkをローカルでシミュレートする一般的に使用されるツールです。 Ganacheをダウンロードしてインストールし、新しいワークスペースを起動して、テストアカウントとプライベートキーを生成します。
さらに、分散型アプリケーションとの相互作用を可能にするイーサリアムウォレットであるMetamaskを使用して、ブラウザをブロックチェーンに接続します。 Seamless Testingのために、Ganacheが提供するLocal NetworkをMetamaskに追加してください。
基本的なスマートコントラクトを書く
環境の準備が整ったので、基本的なスマートコントラクトを書く時が来ました。 Solidityは、Ethereum Smart Contractsの作成に使用される主要言語です。トリュフで生成されたcontractsフォルダー内に新しい.solファイルを作成します。
これがサンプル契約です:
pragma solidity ^0.8.0;契約simplestorage {uint storedData; function set(uint x) public { storedData = x; } function get() public view returns (uint) { return storedData; }}
この契約は、変数のstoredDataと2つの機能を定義します。1つはその価値を更新し、もう1つはそれを取得するために。 Solidityバージョンが、トリュフの構成で指定されたバージョンと一致していることを確認してください。
契約書を書いた後、 migrationsフォルダーに移行スクリプトを作成します。このスクリプトは、トリュフに契約をブロックチェーンに展開する方法を伝えます。
スマートコントラクトのコンパイルと展開
スマートコントラクトが書かれていると、次のステップはコンパイルして展開することです。ターミナルで、プロジェクトルートに移動して実行します。
-
truffle compile- これにより、ソリッドコードがイーサリアム仮想マシン(EVM)によって読み取り可能なbytecodeにコンパイルされます truffle migrate- これにより、Ganacheが管理するローカルブロックチェーンに契約を展開します
移行コマンドを実行する前に、Ganacheが実行されていることを確認してください。展開が成功したことを示すトランザクションログが表示されます。
展開後、コンソールに印刷された契約アドレスに注意してください。このアドレスは、フロントエンドアプリケーションをスマートコントラクトに接続するときに後で使用されます。
また、ガナッシュのトランザクションをチェックするか、トリュフコンソールをtruffle consoleで使用し、展開された契約と手動で対話することにより、展開を検証することもできます。
フロントエンドインターフェイスの構築
DAPPのフロントエンドにより、ユーザーはスマートコントラクトと対話できます。 DAPPを構築するための一般的なスタックには、UIおよびWeb3.jsまたはEthers.jsのReact.jsがブロックチェーンインタラクションに含まれます。
Reactアプリを作成することから始めます:
-
npx create-react-app my-dapp新しいReactプロジェクトを足場にします - Project Directoryに移動し、
npm install web3またはnpm install ethersインストールします
次に、スマートコントラクトABI(アプリケーションバイナリインターフェイス)を統合し、アドレスをフロントエンドに統合します。 ABIはコンピレーション中に自動的に生成され、 build/contractsディレクトリにあります。
Reactコンポーネントでは、Web3をインポートし、ユーザーのウォレット(メタマスクなど)への接続をインスタンス化します。
import Web3 from 'web3'; const web3 = new web3(window.ethereum); window.ethereum.enable();次に、ABIと契約アドレスを使用して、契約インスタンスを作成します。
const contractInstance = new web3.eth.Contract(abi, contractAddress);このセットアップを使用すると、ボタンハンドラー内のスマートコントラクトからsetを呼び出しget 、画面に結果を表示することができます。
フロントエンドをスマートコントラクトに接続します
契約インスタンスが作成されたら、ユーザーがブラウザを介して直接対話できる機能を実装できます。
たとえば、 get関数を呼び出すには:
contractInstance.methods.get().call() .then(result => console.log(result)); set関数を使用してトランザクションを送信するには:
contractInstance.methods.set(42).send({ from: accountAddress }) .on('transactionHash', hash => console.log(hash));トランザクションを実行する前に、メタマスクが接続されてロック解除されていることを確認してください。また、ユーザーエクスペリエンスを向上させるためにエラーを優雅に処理します。
UIコンポーネントを更新して、ブロックチェーンに保存されている現在の値を反映し、新しい値を設定するための入力フィールドを許可します。これにより、DAPPの完全に機能的なインターフェイスが作成されます。
npm startでReactアプリを実行し、ガナッシュとブラウザコンソールの変化を観察しながらボタンと対話することにより、フロー全体をテストします。
よくある質問
DAPPと通常のWebアプリの違いは何ですか?DAPP(分散型アプリケーション)はブロックチェーンネットワークで動作し、バックエンドロジックにスマートコントラクトを使用しますが、通常のWebアプリは集中サーバーに依存しています。 Dappsは、分散型の性質による透明性、不変性、検閲抵抗を提供します。
スマートコントラクトをローカルに展開するときにガス料金を支払う必要がありますか?いいえ、ガナッシュなどのローカルブロックチェーンを使用する場合、ガス料金はシミュレートされ、実際のエーテルは必要ありません。トランザクションは実際のコストなしで即座に処理されるため、テストに最適です。
DAPPのフロントエンドに反応する以外に、他のフレームワークを使用できますか?
はい、Vue.js、Angular、またはPlain HTML/CSS/JavaScriptなどのフロントエンドフレームワークを使用できます。重要なのは、Web3プロバイダーを統合し、スマートコントラクトと正しく対話することです。
ローカルブロックチェーンの代わりにDAPPをテストネットに展開することは可能ですか?はい、より広範なテストのために、Rinkeby、Ropsten、Goerliなどのネットワークに展開できます。これらのネットワークに関連する蛇口から入手できるテストエーテルが必要です。トリュフの構成には、正しいネットワーク設定とニーモニックが含まれていることを確認してください。
免責事項:info@kdj.com
提供される情報は取引に関するアドバイスではありません。 kdj.com は、この記事で提供される情報に基づいて行われた投資に対して一切の責任を負いません。暗号通貨は変動性が高いため、十分な調査を行った上で慎重に投資することを強くお勧めします。
このウェブサイトで使用されているコンテンツが著作権を侵害していると思われる場合は、直ちに当社 (info@kdj.com) までご連絡ください。速やかに削除させていただきます。
- ミーム スーパーサイクルへのコスト平均化: SPX6900 のレッスンが Maxi Doge への道を開く
- 2026-02-05 19:20:02
- 米国政府のビットコインスタンスは市場のボラティリティの中での仮想通貨の乱高下を安定させる
- 2026-02-05 19:05:01
- 弱気市場シナリオの解明: アナリスト PlanB の洞察と市場展望
- 2026-02-05 19:00:02
- UpbitのZKsync価格操作捜査が韓国の規制監視に火をつける
- 2026-02-05 19:00:02
- FxWirePro、トレンドコイン、CoinGecko の洞察: 暗号通貨の状況をナビゲートする
- 2026-02-05 19:15:01
- バンガードの静かなビットコイン財務省の賭けが主流の暗号通貨シフトを示唆
- 2026-02-05 19:20:02
関連知識
感情と先物における「リベンジ取引」を管理する方法?
2026-02-05 00:19:32
先物市場における感情的なトリガーを理解する1. 市場のボラティリティは心理状態に直接影響を与え、急速な価格変動に基づいて恐怖や高揚感を増幅させることがよくあります。 2. 喪失は脳の脅威反応システムを活性化し、系統的な分析ではなく衝動的な決定を引き起こします。 3. ソーシャルメディアのフィードやグ...
先物エントリーにキャンドルクローズ確認を使用するにはどうすればよいですか?
2026-02-05 16:20:22
ローソク足のクローズ確認を理解する1. ローソク足の終値確認は、ローソク足の最終価格が事前定義されたレベルを超えて安定したときに発生し、トレンド継続または反転の可能性を示します。 2. トレーダーは、日中のウィックや始値ではなく、終値に依存します。これは、終値がその時間間隔での市場全体のコンセンサス...
恐怖と貪欲指数を使用して市場センチメントを分析するにはどうすればよいですか?
2026-02-05 07:40:21
恐怖と貪欲の指数を理解する1. 恐怖と貪欲指数は、仮想通貨投資家の間で蔓延している感情状態を定量化するために設計された複合指標です。ボラティリティ、市場の勢い、ソーシャルメディア活動、調査結果、Bitcoin の優位性、検索傾向など、複数のソースからデータを集約します。 2. スコア 0 は極度の恐...
出来高プロファイルを使用して主要な先物エントリーレベルを見つけるにはどうすればよいですか?
2026-02-04 23:39:35
ボリュームプロファイル構造の理解1. 出来高プロファイルは、定義された期間にわたる特定の価格レベルでの取引高の分布を表示し、チャート上に水平方向のヒストグラムを形成します。 2. コントロールポイント (POC) は、出来高集中が最も高い価格レベルを表し、多くの場合、価格反転の磁石として機能します。...
ヘッジのために初めての暗号オプション取引を設定するにはどうすればよいですか?
2026-02-05 17:59:32
市場のボラティリティパターン1. Bitcoin やイーサリアムを含む主要な暗号通貨では、24 時間以内に 15% を超える価格変動が定期的に発生します。 2. 取引所ベースのオーダーブックの不均衡は、特に週末やアジアの取引時間などの流動性の低い期間に、連鎖的な清算を引き起こすことがよくあります。 ...
Bitcoin 先物を 100 倍のレバレッジで取引するにはどうすればよいですか? (ハイリスクセットアップ)
2026-02-05 11:00:08
Bitcoin 先物メカニズムを理解する1. Bitcoin 先物契約は、規制対象またはオフショアのデリバティブ取引所で取引される、将来の所定の価格および日付で BTC を売買する契約を表します。 2. スポット取引とは異なり、先物ではトレーダーはロングポジションとショートポジションを通じて価格の上...
感情と先物における「リベンジ取引」を管理する方法?
2026-02-05 00:19:32
先物市場における感情的なトリガーを理解する1. 市場のボラティリティは心理状態に直接影響を与え、急速な価格変動に基づいて恐怖や高揚感を増幅させることがよくあります。 2. 喪失は脳の脅威反応システムを活性化し、系統的な分析ではなく衝動的な決定を引き起こします。 3. ソーシャルメディアのフィードやグ...
先物エントリーにキャンドルクローズ確認を使用するにはどうすればよいですか?
2026-02-05 16:20:22
ローソク足のクローズ確認を理解する1. ローソク足の終値確認は、ローソク足の最終価格が事前定義されたレベルを超えて安定したときに発生し、トレンド継続または反転の可能性を示します。 2. トレーダーは、日中のウィックや始値ではなく、終値に依存します。これは、終値がその時間間隔での市場全体のコンセンサス...
恐怖と貪欲指数を使用して市場センチメントを分析するにはどうすればよいですか?
2026-02-05 07:40:21
恐怖と貪欲の指数を理解する1. 恐怖と貪欲指数は、仮想通貨投資家の間で蔓延している感情状態を定量化するために設計された複合指標です。ボラティリティ、市場の勢い、ソーシャルメディア活動、調査結果、Bitcoin の優位性、検索傾向など、複数のソースからデータを集約します。 2. スコア 0 は極度の恐...
出来高プロファイルを使用して主要な先物エントリーレベルを見つけるにはどうすればよいですか?
2026-02-04 23:39:35
ボリュームプロファイル構造の理解1. 出来高プロファイルは、定義された期間にわたる特定の価格レベルでの取引高の分布を表示し、チャート上に水平方向のヒストグラムを形成します。 2. コントロールポイント (POC) は、出来高集中が最も高い価格レベルを表し、多くの場合、価格反転の磁石として機能します。...
ヘッジのために初めての暗号オプション取引を設定するにはどうすればよいですか?
2026-02-05 17:59:32
市場のボラティリティパターン1. Bitcoin やイーサリアムを含む主要な暗号通貨では、24 時間以内に 15% を超える価格変動が定期的に発生します。 2. 取引所ベースのオーダーブックの不均衡は、特に週末やアジアの取引時間などの流動性の低い期間に、連鎖的な清算を引き起こすことがよくあります。 ...
Bitcoin 先物を 100 倍のレバレッジで取引するにはどうすればよいですか? (ハイリスクセットアップ)
2026-02-05 11:00:08
Bitcoin 先物メカニズムを理解する1. Bitcoin 先物契約は、規制対象またはオフショアのデリバティブ取引所で取引される、将来の所定の価格および日付で BTC を売買する契約を表します。 2. スポット取引とは異なり、先物ではトレーダーはロングポジションとショートポジションを通じて価格の上...
すべての記事を見る














