声明
この記事は、Vue3.0 +Quasar+ ethers.js と Ethereum スマート コントラクトの間の対話に関する一連のチュートリアルの 1 つです 。
この一連のチュートリアル (vue+Quasar+ ethers.js) のタイトルからわかるように、イーサリアム スマート コントラクトとの対話はフロントエンドで行われます。
したがって、Web サイトとイーサリアム スマート コントラクト間の対話はフロントエンド開発のカテゴリに属することが十分に理解できます。
従来のフロントエンド開発
経験のあるフロントエンド開発者は、一般的なフロントエンド開発は、コードを使用してフロントエンド インターフェイスを完成させることであることを知っています。フロントエンドとバックエンドが分離されている場合、バックエンドはインターフェイスを作成し、フロントエンド開発者は、インターフェイスを呼び出して関数を完了するだけで十分です。
現時点では、フロントエンド機能の実現はバックエンドに向いています。
スマートコントラクトインタラクションのフロントエンド開発
実際、スマートコントラクトインタラクションのフロントエンド開発は上記の開発と同じです。
ここで直面しているバックエンドが変わっただけです。現時点で、私たちが直面しているバックエンドはスマート コントラクトになっています。
したがって、スマート コントラクトは、一般的なフロントエンド開発者が直面しなければならないインターフェイスであると理解できます。
もちろん、両者にはまだ違いがありますが、私たちフロントエンド開発者にとって、両者の最大の違いは呼び出しメソッドの違いです。
2つを比較してください
ここで、2 つの間で次のことが得られます。
従来の API インターフェイス呼び出しでは、フロントエンドがネットワーク リクエストを開始し、バックエンド コードがネットワーク リクエストに従って対応するメソッドを見つけて実行します。
現時点で、ユーザーと呼ばれるインターフェイスと、Web サイトに戻る必要があるユーザーがあると仮定すると、実装ロジックは次のようになります。
前端发起网络请求(xxx.com/users)->后端路由匹配users->后端代码调用对应方法->返回数据。
そして、スマート コントラクトを呼び出すと次のようになります。
前端调用智能合约对应方法(users)->智能合约返回数据
ここで私が言ったのは「対応するメソッド」であることに注意してください。つまり、それらの最大の違いは、前者はネットワークリクエストを開始するのに対し、後者はスマートコントラクト内のメソッドを呼び出すだけでよいということです。
もちろん、ここでは、フロントエンドがスマート コントラクト メソッドを呼び出すときに、メソッドがどのように実行されるか、従来のインターフェイスのようにネットワーク リクエストがあるかどうかを心配する必要はありません。知っておく必要があるのは次のことだけです。
従来のフロントエンド開発では、ネットワーク リクエストを開始してバックエンド インターフェイスを呼び出しますが、スマート コントラクトとの対話では、コントラクト内のメソッドを呼び出して機能を完了します。