Pembaruan Solana Web3.js 2.x: Desain modular meningkatkan kinerja dan keamanan

robot
Pembuatan abstrak sedang berlangsung

Pembaruan Versi 2.x Solana Web3.js: Menyambut Pemrograman Fungsional

Solana Web3.js sebagai perpustakaan JavaScript yang kaya fitur, meluncurkan versi 2.x pada bulan November tahun ini. Dibandingkan dengan 1.x, versi baru ini membawa perubahan yang signifikan. Meskipun saat ini penggunaan versi 2.x belum tinggi, banyak perpustakaan yang banyak digunakan masih belum bermigrasi, tetapi memahami perubahan ini sangat penting untuk pengembangan dan pekerjaan migrasi di masa depan.

Web3 Pemula Series: Sekarang Upgrade @solana/web3.js 2.x untuk Memulai Pemrograman Fungsional

Perbandingan Versi

Penggunaan versi 1.x relatif sederhana, semua fungsi terkonsentrasi dalam satu paket @solana/web3.js, yang membungkus banyak operasi umum berdasarkan desain berbasis kelas. Misalnya, kelas Connection menyediakan puluhan metode, hampir mencakup semua fungsi yang dibutuhkan oleh pengembang. Namun, desain ini juga membawa beberapa masalah, seperti ukuran kode yang terlalu besar, perangkat pengguna perlu mengunduh seluruh perpustakaan, bahkan jika hanya menggunakan sebagian kecil dari fungsinya.

Versi 2.x mengadopsi desain modular, membagi repositori kode menjadi beberapa modul kecil, seperti @solana/accounts, @solana/codecs, @solana/rpc, @solana/signers, @solana/transactions, dan lainnya. Versi baru ini meninggalkan implementasi berbasis kelas dan beralih ke penggunaan fungsi tunggal, yang menguntungkan optimasi saat membangun kode JavaScript. Kode yang tidak digunakan akan dihapus dan tidak akan diunduh ke perangkat pengguna. Menurut data resmi, aplikasi yang menggunakan versi baru biasanya dapat mencapai optimasi ukuran hingga 30%, dan jika hanya menggunakan sedikit fitur, rasio optimasi mungkin lebih tinggi.

Salah satu fitur penting dari versi 2.x adalah tanpa ketergantungan. Mengingat serangan rantai pasokan yang baru-baru ini terjadi pada versi 1.95.5 dan 1.95.6, mengurangi ketergantungan eksternal membantu meningkatkan keamanan. Tim pengembang memutuskan untuk lebih banyak menggunakan fungsi bawaan, menghindari ketergantungan eksternal dan pengenalan Polyfills.

Poin Perubahan Penting

terhubung

Versi 2.x menggunakan pendekatan yang lebih fungsional untuk menangani koneksi. Tidak lagi menggunakan kelas Connection, tetapi membuat pengirim permintaan dengan mengonfigurasi alamat RPC. Misalnya, saat mengirim transaksi, permintaan HTTPS akan secara otomatis diluncurkan dan koneksi WSS akan dibangun, berlangganan status transaksi, dan mengembalikan hash transaksi setelah konfirmasi transaksi.

pasangan kunci

Dalam versi 2.x, kelas Keypair dan PublicKey yang ada sebelumnya digantikan oleh serangkaian fungsi. Misalnya, sekarang gunakan await generateKeyPair() untuk menghasilkan pasangan kunci, bukan Keypair.generate(). Implementasi baru memanfaatkan Web Crypto API dari JavaScript, menggunakan implementasi Ed25519 asli, yang mengakibatkan banyak metode menjadi asinkron.

Kirim transaksi

Versi 2.x tidak lagi menggunakan kelas Transaction dan VersionedTransaction. Metode terkait Program Sistem juga telah dihapus dan perlu diimpor dari paket lain. Misalnya, instruksi transfer sekarang perlu memanggil fungsi getTransferSolInstruction dari @solana-program/system.

Versi baru menyediakan bentuk pipe yang umum digunakan dalam pemrograman fungsional. Transaksi tidak lagi dimulai melalui Connection, tetapi melalui penyedia RPC yang didefinisikan untuk menghasilkan fungsi tertentu untuk memulai transaksi. Meskipun cara ini sedikit meningkatkan jumlah kode, tetapi memberikan kustomisasi yang lebih kuat.

Dukungan React

Proyek @solana/web3.js juga mencakup pustaka bernama @solana/react, yang menyediakan beberapa React Hook dan memiliki fungsi bawaan seperti signIn.

Ringkasan

Peluncuran versi 2.x dari @solana/web3.js menunjukkan komitmen tim Solana terhadap pengembangan dan perbaikan yang berkelanjutan. Versi baru ini memberikan pengembang cara yang lebih efisien, fleksibel, dan dapat disesuaikan untuk berinteraksi dengan jaringan Solana, dan diharapkan dapat mendorong adopsi dan perkembangan platform tersebut. Meskipun saat ini masih dalam tahap awal, seiring waktu, diyakini akan ada lebih banyak proyek yang bermigrasi ke versi baru ini.

Web3 Pemula Series: Sekarang Upgrade @solana/web3.js 2.x Mulai Pemrograman Fungsional

SOL-2.85%
Lihat Asli
Halaman ini mungkin berisi konten pihak ketiga, yang disediakan untuk tujuan informasi saja (bukan pernyataan/jaminan) dan tidak boleh dianggap sebagai dukungan terhadap pandangannya oleh Gate, atau sebagai nasihat keuangan atau profesional. Lihat Penafian untuk detailnya.
  • Hadiah
  • 5
  • Bagikan
Komentar
0/400
DiamondHandsvip
· 07-27 11:54
v2 sol akhirnya datang
Lihat AsliBalas0
GasGrillMastervip
· 07-26 04:37
Sepenuhnya tanpa ketergantungan? Saya ingin melihatnya.
Lihat AsliBalas0
GweiObservervip
· 07-24 21:40
Solana akhirnya jalan
Lihat AsliBalas0
ThreeHornBlastsvip
· 07-24 21:22
Solana akhirnya memberikan dukungan sekali ini!
Lihat AsliBalas0
PretendingSeriousvip
· 07-24 21:20
Pembaruan ini akhirnya datang, kamu tahu diri.
Lihat AsliBalas0
  • Sematkan
Perdagangkan Kripto Di Mana Saja Kapan Saja
qrCode
Pindai untuk mengunduh aplikasi Gate
Komunitas
Bahasa Indonesia
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)