Solana Web3.js 2.x ra mắt: Thiết kế mô-đun nâng cao hiệu suất và tính bảo mật

robot
Đang tạo bản tóm tắt

Solana Web3.js 2.x phiên bản: Kỷ nguyên mới của lập trình hàm

Thư viện JavaScript phong phú Solana Web3.js đã chính thức phát hành phiên bản 2.x vào tháng 11 năm nay. So với phiên bản 1.x, phiên bản mới mang đến những thay đổi lớn, bài viết này sẽ tóm tắt những thay đổi chính.

Mặc dù phiên bản 2.x vừa mới ra mắt và lượng sử dụng chưa bằng phiên bản cũ, nhưng việc hiểu những thay đổi này là rất quan trọng cho việc di chuyển các dự án trong tương lai.

Web3 người mới series: Bây giờ nâng cấp @solana/web3.js 2.x để bắt đầu lập trình hàm

So sánh phiên bản

Không thể phủ nhận rằng trải nghiệm sử dụng của phiên bản cũ đơn giản hơn. Phiên bản 1.x tập trung vào một gói duy nhất, sử dụng thiết kế dựa trên lớp, bao gồm nhiều thao tác thông dụng. Ví dụ, lớp Connection cung cấp hàng chục phương pháp, gần như bao quát tất cả các chức năng mà nhà phát triển cần. Tuy nhiên, thiết kế này cũng mang lại một số vấn đề, chẳng hạn như mã thừa và thời gian tải lâu hơn.

Phiên bản 2.x áp dụng thiết kế mô-đun, chia tách thư viện mã nguồn gốc thành nhiều mô-đun nhỏ, chẳng hạn như @solana/accounts, @solana/codecs, @solana/rpc, v.v. Đồng thời, phiên bản mới từ bỏ việc triển khai dựa trên lớp, thay vào đó áp dụng phương pháp hàm đơn, điều này có lợi cho việc tối ưu hóa khi xây dựng mã JavaScript. Theo thống kê, các ứng dụng sử dụng phiên bản mới thường có thể đạt được tối ưu hóa kích thước lên đến 30%, đối với các ứng dụng chỉ sử dụng một số chức năng ít ỏi, tỷ lệ tối ưu hóa có thể cao hơn.

Thiết kế mô-đun phiên bản mới đặt ra yêu cầu cao hơn đối với chất lượng tài liệu. Hiện tại, cách đặt tên của các mô-đun có tính ngữ nghĩa tốt, điều này phần nào giảm bớt khó khăn cho các nhà phát triển trong việc chuyển đổi.

Cần lưu ý rằng phiên bản 2.x đã thực hiện không có sự phụ thuộc. Xét đến các cuộc tấn công chuỗi cung ứng gần đây xảy ra trên các phiên bản 1.95.5 và 1.95.6, việc giảm sự phụ thuộc vào bên ngoài chắc chắn đã tăng cường tính bảo mật của thư viện. Nhóm phát triển đã quyết định tận dụng nhiều hơn các chức năng gốc, loại bỏ việc sử dụng các phụ thuộc bên ngoài và Polyfills.

Điểm thay đổi quan trọng

kết nối

Phiên bản 2.x áp dụng phương pháp hàm nhiều hơn để xử lý kết nối. Phiên bản mới tạo ra bộ gửi yêu cầu bằng cách cấu hình địa chỉ yêu cầu RPC, sau đó sử dụng bộ gửi này để thực hiện các yêu cầu khác nhau.

cặp khóa

Việc xử lý liên quan đến khóa công khai và khóa riêng tư cũng có sự thay đổi lớn. Các lớp Keypair và PublicKey thường được sử dụng trong phiên bản 1.x đã được thay thế bằng một loạt các hàm. Ví dụ, bây giờ có thể sử dụng hàm bất đồng bộ generateKeyPair() để tạo ra các cặp khóa. Sự thay đổi này xuất phát từ việc phiên bản mới tận dụng nhiều hơn API Web Crypto của JavaScript, sử dụng triển khai Ed25519 nguyên bản.

gửi giao dịch

Phiên bản 2.x không còn sử dụng các lớp Transaction và VersionedTransaction. Các phương thức liên quan đến System Program cũng cần được nhập từ các nơi khác. Ví dụ, chỉ thị transfer bây giờ cần gọi hàm getTransferSolInstruction trong @solana-program/system.

Phiên bản mới cung cấp hình thức pipe thường được sử dụng trong lập trình hàm, giúp cho quá trình khởi xướng và xác nhận giao dịch trở nên linh hoạt và tùy chỉnh hơn.

React hỗ trợ

Đáng chú ý là, dự án @solana/web3.js hiện đã bao gồm một thư viện có tên là @solana/react, cung cấp một số React Hook, tích hợp sẵn các chức năng như signIn.

Web3 người mới系列:bây giờ nâng cấp @solana/web3.js 2.x mở khóa lập trình hàm

Tóm tắt

Việc phát hành phiên bản 2.x của @solana/web3.js thể hiện quyết tâm đổi mới liên tục của đội ngũ Solana. Phiên bản mới cung cấp cho các nhà phát triển cách tương tác với mạng Solana hiệu quả, linh hoạt và tùy chỉnh hơn, hứa hẹn sẽ thúc đẩy thêm việc áp dụng và phát triển nền tảng này.

SOL1%
Xem bản gốc
Trang này có thể chứa nội dung của bên thứ ba, được cung cấp chỉ nhằm mục đích thông tin (không phải là tuyên bố/bảo đảm) và không được coi là sự chứng thực cho quan điểm của Gate hoặc là lời khuyên về tài chính hoặc chuyên môn. Xem Tuyên bố từ chối trách nhiệm để biết chi tiết.
  • Phần thưởng
  • 6
  • Chia sẻ
Bình luận
0/400
SellTheBouncevip
· 07-08 14:55
Có kỹ thuật không bằng có nhân tính, thua lỗ chính là số phận.
Xem bản gốcTrả lời0
just_another_fishvip
· 07-07 22:21
Mã viết rất tốt, nhập một vị thế sao chép bài tập.
Xem bản gốcTrả lời0
AllInDaddyvip
· 07-06 22:49
Cuối cùng cũng ra phiên bản mới! Mua đáy chuẩn bị lướt sóng!
Xem bản gốcTrả lời0
MEV_Whisperervip
· 07-06 22:45
Solana thật sự rất tốt, tốc độ như đạn bắn.
Xem bản gốcTrả lời0
BlockchainTherapistvip
· 07-06 22:42
Nhanh chóng đi mua một gói lớn ở sol
Xem bản gốcTrả lời0
AirdropHarvestervip
· 07-06 22:34
Solana lại làm trò mới rồi.
Xem bản gốcTrả lời0
  • Ghim
Giao dịch tiền điện tử mọi lúc mọi nơi
qrCode
Quét để tải xuống ứng dụng Gate
Cộng đồng
Tiếng Việt
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)