# Web3.js 2.xバージョン:ソラナ開発の新たな章ソラナ Web3.jsライブラリは、今年11月に正式に2.xバージョンをリリースしました。1.xバージョンと比較して、新しいバージョンは顕著な変化をもたらしました。本記事では、主な更新点を概説し、開発者の今後の移行作業に備えます。## バージョン比較1.xバージョンのWeb3.jsライブラリは比較的簡単に使用でき、すべての機能が@solana/web3.jsという1つのパッケージに集約されています。これはクラスベースの設計で、多くの一般的な操作をカプセル化しており、Connectionクラスには数十種類のメソッドが含まれており、開発者が必要とするほとんどの機能を基本的に網羅しています。しかし、このような設計は幾つかの問題も引き起こします。たとえ開発者がその一部の機能しか使用しなくても、全体のコードベースがユーザーのデバイスにダウンロードされ、読み込み時間が延びる可能性があります。2.xバージョンは異なる戦略を採用しています。開発チームは従来のコードベースを@solana/accounts、@solana/codecs、@solana/rpc、@solana/signers、@solana/transactionsなどの複数の小さなモジュールに分割しました。新しいバージョンではクラスベースの実装を放棄し、単一の関数の形を多く採用しています。これによりJavaScriptコードの構築時の最適化が助けられます。未使用のコードは削除され、ユーザーのデバイスにはダウンロードされません。公式統計によると、新しいバージョンのDAppを使用すると通常30%のサイズ最適化が得られ、少数の機能のみを使用する場合は最適化率がさらに高くなる可能性があります。2.xバージョンのもう一つの重要な特徴はゼロデペンデンシーです。最近1.95.5および1.95.6バージョンで発生したサプライチェーン攻撃を考慮すると、外部依存を減らすことはセキュリティリスクを大幅に低減できます。Web3.jsの開発チームは、外部依存とポリフィルの導入を廃止し、ネイティブ機能の使用を増やすことを決定しました。! [Web3スターターシリーズ:今すぐ@solana/web3.js 2.xをアップグレードして関数型プログラミングを有効にする](https://img-cdn.gateio.im/social/moments-0fa0888db1937c21f03f2851ec3bd095)## 重要な変更点### つながる2.xバージョンは、より関数型の方法で接続機能を実現しました。開発者は現在、RPCリクエストアドレスを設定することでリクエスト送信器を作成し、それを使用してさまざまなリクエストを送信できます。### 鍵ペア鍵ペアの処理に関して、2.xバージョンには重大な変更があります。以前のKeypairおよびPublicKeyクラスはもはや存在せず、新しい関数に置き換えられました。例えば、今ではawait generateKeyPair()を使用して鍵ペアを生成できるようになり、以前のKeypair.generate()ではなくなりました。新しい実装はJavaScriptのWeb Crypto APIを十分に活用し、ネイティブのEd25519実装を使用しています。### トランザクションを送信するバージョン 2.x では、Transaction クラスと VersionedTransaction クラスが削除されました。 システムプログラム関連の方法は、もはや直接利用できないため、他の場所で導入する必要があります。 たとえば、transfer ディレクティブは、@solana-program/system の getTransferSolInstruction 関数を呼び出す必要があります。新しいバージョンでは、関数型プログラミングで一般的に使用されるpipe形式を提供しており、開発者がより柔軟に取引操作を組み合わせて実行できるようになっています。### Reactのサポート注目すべきは、@solana/web3.jsプロジェクトに@solana/reactというライブラリが含まれており、signInなどの機能を備えたReact Hookを提供し、React開発者にさらなる利便性を提供していることです。## まとめソラナ Web3.js 2.x バージョンのリリースは、ソラナチームの継続的な改善と革新への決意を示しています。新しいバージョンは、開発者に対してソラナネットワークとやり取りするためのより効率的で柔軟かつカスタマイズ可能な方法を提供し、このプラットフォームのさらなる発展と応用を促進することが期待されています。! [Web3スターターシリーズ:今すぐ@solana/web3.js 2.xをアップグレードして関数型プログラミングを有効にする](https://img-cdn.gateio.im/social/moments-d3e17fab6bb8c485a8bdac5b1e385273)
ソラナ Web3.js 2.xバージョンリリース:モジュール化設計が開発効率の向上を支援
Web3.js 2.xバージョン:ソラナ開発の新たな章
ソラナ Web3.jsライブラリは、今年11月に正式に2.xバージョンをリリースしました。1.xバージョンと比較して、新しいバージョンは顕著な変化をもたらしました。本記事では、主な更新点を概説し、開発者の今後の移行作業に備えます。
バージョン比較
1.xバージョンのWeb3.jsライブラリは比較的簡単に使用でき、すべての機能が@solana/web3.jsという1つのパッケージに集約されています。これはクラスベースの設計で、多くの一般的な操作をカプセル化しており、Connectionクラスには数十種類のメソッドが含まれており、開発者が必要とするほとんどの機能を基本的に網羅しています。
しかし、このような設計は幾つかの問題も引き起こします。たとえ開発者がその一部の機能しか使用しなくても、全体のコードベースがユーザーのデバイスにダウンロードされ、読み込み時間が延びる可能性があります。
2.xバージョンは異なる戦略を採用しています。開発チームは従来のコードベースを@solana/accounts、@solana/codecs、@solana/rpc、@solana/signers、@solana/transactionsなどの複数の小さなモジュールに分割しました。新しいバージョンではクラスベースの実装を放棄し、単一の関数の形を多く採用しています。これによりJavaScriptコードの構築時の最適化が助けられます。未使用のコードは削除され、ユーザーのデバイスにはダウンロードされません。公式統計によると、新しいバージョンのDAppを使用すると通常30%のサイズ最適化が得られ、少数の機能のみを使用する場合は最適化率がさらに高くなる可能性があります。
2.xバージョンのもう一つの重要な特徴はゼロデペンデンシーです。最近1.95.5および1.95.6バージョンで発生したサプライチェーン攻撃を考慮すると、外部依存を減らすことはセキュリティリスクを大幅に低減できます。Web3.jsの開発チームは、外部依存とポリフィルの導入を廃止し、ネイティブ機能の使用を増やすことを決定しました。
! Web3スターターシリーズ:今すぐ@solana/web3.js 2.xをアップグレードして関数型プログラミングを有効にする
重要な変更点
つながる
2.xバージョンは、より関数型の方法で接続機能を実現しました。開発者は現在、RPCリクエストアドレスを設定することでリクエスト送信器を作成し、それを使用してさまざまなリクエストを送信できます。
鍵ペア
鍵ペアの処理に関して、2.xバージョンには重大な変更があります。以前のKeypairおよびPublicKeyクラスはもはや存在せず、新しい関数に置き換えられました。例えば、今ではawait generateKeyPair()を使用して鍵ペアを生成できるようになり、以前のKeypair.generate()ではなくなりました。新しい実装はJavaScriptのWeb Crypto APIを十分に活用し、ネイティブのEd25519実装を使用しています。
トランザクションを送信する
バージョン 2.x では、Transaction クラスと VersionedTransaction クラスが削除されました。 システムプログラム関連の方法は、もはや直接利用できないため、他の場所で導入する必要があります。 たとえば、transfer ディレクティブは、@solana-program/system の getTransferSolInstruction 関数を呼び出す必要があります。
新しいバージョンでは、関数型プログラミングで一般的に使用されるpipe形式を提供しており、開発者がより柔軟に取引操作を組み合わせて実行できるようになっています。
Reactのサポート
注目すべきは、@solana/web3.jsプロジェクトに@solana/reactというライブラリが含まれており、signInなどの機能を備えたReact Hookを提供し、React開発者にさらなる利便性を提供していることです。
まとめ
ソラナ Web3.js 2.x バージョンのリリースは、ソラナチームの継続的な改善と革新への決意を示しています。新しいバージョンは、開発者に対してソラナネットワークとやり取りするためのより効率的で柔軟かつカスタマイズ可能な方法を提供し、このプラットフォームのさらなる発展と応用を促進することが期待されています。
! Web3スターターシリーズ:今すぐ@solana/web3.js 2.xをアップグレードして関数型プログラミングを有効にする