Solana Web3.js 2.x yayını: Modüler tasarım ve sıfır bağımlılığa sahip fonksiyonel programlamanın yeni çağı

Solana Web3.js 2.x Sürümü: Fonksiyonel Programlamanın Yeni Çağı

Solana Web3.js 2.x versiyonu bu yılın Kasım ayında resmi olarak piyasaya sürüldü. 1.x versiyonuna kıyasla, yeni versiyon önemli değişiklikler getirdi. Bu makalede ana değişiklikler özetlenecek ve geliştiricilerin gelecekteki geçişleri için hazırlık yapmaları sağlanacaktır.

Web3 Yeni Başlangıç Serisi: Şimdi @solana/web3.js 2.x ile Fonksiyonel Programlamaya Geçin

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

1.x sürümü basit bir kullanım sunsa da bazı sorunlar barındırıyor. Tüm işlevler tek bir paket içinde toplanmış durumda, bu da kullanıcı cihazlarının, belki de hiç kullanmayacakları büyük miktarda kod indirmesine neden oluyor.

2.x sürümü modüler bir tasarım benimseyerek, kod kütüphanesini @solana/accounts, @solana/codecs gibi birden fazla küçük modüle ayırmıştır. Yeni sürüm, sınıf tabanlı uygulamayı terk ederek tek bir fonksiyon kullanma yöntemine geçmiştir; bu, JavaScript kodunun derleme sürecinde optimizasyonu kolaylaştırır. Resmi verilere göre, yeni sürümü kullanan DApp'ler genellikle %30 boyut optimizasyonu elde etmektedir; yalnızca az sayıda işlev kullanan uygulamalar için optimizasyon oranı daha yüksek olabilir.

Ancak bu, Solana ekibinin belgelerinin kalitesi için daha yüksek talepler getirmektedir. Şu anda, paket adlarının anlamsallığı oldukça iyi ve geliştiricilerin geçiş zorluklarını azaltmaya yardımcı olmaktadır. Ancak yeni versiyon henüz yeni yayınlandığı için, birçok proje henüz geçiş yapmamıştır ve Solana Cookbook üzerindeki 2.x sürüm örnekleri de görece azdır.

2.x sürümünün bir diğer önemli özelliği sıfır bağımlılıktır. Bu özellik, özellikle 1.95.5 ve 1.95.6 sürümlerinde meydana gelen tedarik zinciri saldırılarını dikkate aldığımızda, güvenliği artırma açısından büyük bir öneme sahiptir.

Önemli Değişiklik Noktaları

bağlantı

2.x sürümü, bağlantıları işlemek için daha işlevsel 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.

anahtar çifti

Yeni versiyonla birlikte, Keypair ve PublicKey sınıfları bir dizi fonksiyonla değiştirilmiştir. Örneğin, artık anahtar çiftlerini oluşturmak için await generateKeyPair() kullanıyoruz, önceden kullanılan Keypair.generate() yerine. Yeni yöntem bir Promise döndürmektedir, bu JavaScript'in Web Crypto API'sini kullanmasından kaynaklanmakta ve yerel Ed25519 uygulamasını kullanmaktadı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 başka yerlerden getirilmelidir. Örneğin, transfer talimatı artık @solana-program/system içindeki getTransferSolInstruction fonksiyonunu çağırmayı gerektiriyor.

Yeni sürüm, fonksiyonel programlamada sıkça kullanılan pipe biçimini sunmaktadır. İşlemler artık Connection üzerinden başlatılmıyor, bunun yerine tanımlanan RPC Provider aracılığıyla belirli fonksiyonlar oluşturularak işlemler başlatılıyor. Bu, kodun özelleştirilebilirliğini artırıyor, ancak kod miktarını da biraz artırıyor.

React desteği

@solana/web3.js projesi ayrıca @solana/react kütüphanesini de içermektedir, bazı React Hook'ları sunmakta ve signIn gibi yerleşik işlevlere sahiptir.

Özet

@solana/web3.js 2.x sürümünün yayımlanması, Solana ekibinin sürekli iyileştirme taahhüdünü gösteriyor. Yeni sürüm, geliştiricilere Solana ağı ile etkileşim kurmak için daha verimli, esnek ve özelleştirilebilir bir yol sunarak, platformun daha fazla gelişimini ve benimsenmesini teşvik etmesi bekleniyor.

Web3 Yeni Başlangıç Serisi: Şimdi @solana/web3.js 2.x'e geçerek fonksiyonel programlamayı başlatın

SOL3.6%
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
  • 6
  • Share
Comment
0/400
JustHodlItvip
· 07-21 20:58
2.x stabil oldu, ileri!
View OriginalReply0
CryptoMomvip
· 07-20 08:14
Sonunda güncellendi, 2.x'e bir bakayım.
View OriginalReply0
ETHReserveBankvip
· 07-19 17:40
Şampanya açıyoruz, ön sırada güncellemeyi bekliyoruz.
View OriginalReply0
LuckyHashValuevip
· 07-19 17:40
sola yine yeni bir hayata başladı
View OriginalReply0
LiquidityNinjavip
· 07-19 17:37
Solana hala boğa mı
View OriginalReply0
EyeOfTheTokenStormvip
· 07-19 17:13
Veriler başka bir boğa öncesi dalgası mı gösteriyor? bir pozisyon girin mi?
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)