Solana Web3.js 2.x güncellemesi: Modüler tasarım performansı ve güvenliği artırıyor

robot
Abstract generation in progress

Solana Web3.js 2.x Sürüm Güncellemesi: Fonksiyonel Programlamayı Kucaklayın

Solana Web3.js, zengin özelliklere sahip bir JavaScript kütüphanesi olarak, bu yılın Kasım ayında 2.x sürümünü yayınladı. 1.x sürümüne kıyasla, yeni sürüm belirgin değişiklikler getirdi. Şu anda 2.x sürümünün kullanımı çok yüksek olmasa da, birçok yaygın kullanılan kütüphane henüz geçiş yapmamış durumda; ancak bu değişiklikleri anlamak gelecekteki geliştirme ve geçiş çalışmaları açısından son derece önemlidir.

Web3 Yeni Başlangıç Serisi: Şimdi @solana/web3.js 2.x'i güncelleyerek fonksiyonel programlamaya başlayın

Sürüm Karşılaştırması

1.x sürümünün kullanımı nispeten basittir, tüm işlevler tek bir paket içinde @solana/web3.js'de toplanmıştır ve sınıf tabanlı bir tasarım, yaygın olarak kullanılan birçok işlemi kapsar. Örneğin, Connection sınıfı, geliştiricilerin ihtiyaç duyduğu tüm işlevlerin neredeyse tamamını kapsayan onlarca yöntem sunar. Ancak, bu tasarım bazı sorunlar da getirmektedir; örneğin, kod kütüphanesinin boyutunun çok büyük olması, kullanıcı cihazlarının tüm kütüphaneyi indirmesi gerektiği anlamına gelir, bu da yalnızca küçük bir işlevselliği kullansalar bile geçerlidir.

2.x versiyonu modüler bir tasarım benimsedi ve kod deposunu @solana/accounts, @solana/codecs, @solana/rpc, @solana/signers, @solana/transactions gibi birçok küçük modüle böldü. Yeni sürüm, sınıf tabanlı uygulamadan vazgeçerek tek bir fonksiyon yöntemini benimsemiştir, bu da JavaScript kodunun oluşturulmasında optimizasyonu kolaylaştırır. Kullanılmayan kodlar silinecek ve kullanıcı cihazlarına indirilmeyecektir. Resmi verilere göre, yeni sürümü kullanan uygulamalar genellikle %30 oranında boyut optimizasyonu elde etmektedir; eğer sadece az sayıda özellik kullanılıyorsa, optimizasyon oranı daha yüksek olabilir.

2.x versiyonunun bir diğer önemli özelliği sıfır bağımlılıktır. 1.95.5 ve 1.95.6 versiyonlarında gerçekleşen tedarik zinciri saldırılarını göz önünde bulundurarak, dış bağımlılıkların azaltılması güvenliği artırmaya yardımcı olur. Geliştirme ekibi, daha fazla yerel işlevsellik kullanmaya ve dış bağımlılıkların yanı sıra Polyfills'in getirilmesini bırakmaya karar verdi.

Önemli Değişiklik Noktaları

bağlan

2.x sürümü, bağlantıları işlemek için daha fonksiyonel bir yaklaşım benimsemektedir. Artık Connection sınıfı kullanılmamakta, bunun yerine RPC istek adresi yapılandırılarak istek göndericisi oluşturulmaktadır. Örneğin, işlem gönderildiğinde otomatik olarak HTTPS isteği başlatılır ve WSS bağlantısı kurulur, işlem durumu için abonelik yapılır ve işlem onaylandıktan sonra işlem hash'i döndürülür.

anahtar çifti

2.x sürümünde, mevcut Keypair ve PublicKey sınıfları bir dizi fonksiyonla değiştirilmiştir. Örneğin, artık await generateKeyPair() kullanarak anahtar çiftleri oluşturulmaktadır, Keypair.generate() yerine. Yeni uygulama, JavaScript'in Web Crypto API'sini kullanmakta ve yerel Ed25519 implementasyonunu kullanmaktadır, bu da birçok yöntemin asenkron hale gelmesine neden olmaktadır.

işlem gönder

2.x sürümü artık Transaction ve VersionedTransaction sınıflarını kullanmıyor. System Program ile ilgili yöntemler de kaldırıldı ve başka paketlerden getirilmesi gerekiyor. Örneğin, transfer talimatı artık @solana-program/system içindeki getTransferSolInstruction fonksiyonunu çağırmayı gerektiriyor.

Yeni sürüm, fonksiyonel programlamada yaygın olarak kullanılan pipe biçimini sunuyor. İşlemler artık Connection üzerinden başlatılmıyor, bunun yerine tanımlı RPC Sağlayıcısı aracılığıyla belirli fonksiyonlar üretilerek işlem başlatılıyor. Bu yöntem, kod miktarında biraz artış sağlasa da, daha güçlü bir özelleştirilebilirlik sunuyor.

React destekli

@solana/web3.js projesinde ayrıca signIn gibi işlevleri içeren bazı React Hook'ları sağlayan @solana/react adlı bir kütüphane bulunmaktadır.

Özet

@solana/web3.js 2.x sürümünün çıkışı, Solana ekibinin sürekli gelişim ve iyileştirme taahhüdünü göstermektedir. Yeni sürüm, geliştiricilere Solana ağıyla etkileşimde bulunmak için daha verimli, esnek ve özelleştirilebilir bir yol sunmakta olup, bu platformun benimsenmesini ve gelişimini teşvik etmesi beklenmektedir. Şu anda hala erken aşamalarda olmasına rağmen, zamanla daha fazla projenin bu yeni sürüme geçeceğine inanılmaktadır.

Web3 Yeni Başlayanlar Serisi: Şimdi yükselt @solana/web3.js 2.x ile işlevsel programlamayı başlat

SOL-2.32%
View Original
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
  • Reward
  • 5
  • Share
Comment
0/400
DiamondHandsvip
· 07-27 11:54
sol'un v2'si nihayet geldi
View OriginalReply0
GasGrillMastervip
· 07-26 04:37
Tamamen sıfır bağımlılık mı? Bakalım.
View OriginalReply0
GweiObservervip
· 07-24 21:40
Solana sonunda yola çıktı.
View OriginalReply0
ThreeHornBlastsvip
· 07-24 21:22
Solana nihayet bir kez destek oldu.
View OriginalReply0
PretendingSeriousvip
· 07-24 21:20
Bu güncelleme sonunda geldi, akıllı davranıyorsun.
View OriginalReply0
Trade Crypto Anywhere Anytime
qrCode
Scan to download Gate app
Community
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)