إصدار النسخة 2.x من Solana Web3.js: التصميم المعياري يعزز كفاءة التطوير

robot
إنشاء الملخص قيد التقدم

Web3.js إصدار 2.x: فصل جديد في تطوير Solana

تم إصدار الإصدار 2.x من مكتبة Solana Web3.js رسميًا في نوفمبر من هذا العام، والذي جاء مع تغييرات ملحوظة مقارنة بالإصدار 1.x. ستستعرض هذه المقالة النقاط الرئيسية لتحديثاته، استعدادًا لعمل النقل للمطورين في المستقبل.

مقارنة الإصدارات

تعتبر مكتبة Web3.js بالإصدار 1.x سهلة الاستخدام نسبيًا، حيث تتركز جميع الوظائف في حزمة واحدة هي @solana/web3.js. وهي تعتمد على تصميم يعتمد على الفئات، حيث تغلف العديد من العمليات الشائعة، مثل فئة Connection التي تحتوي على عشرات الأساليب، مما يغطي بشكل أساسي معظم الوظائف المطلوبة من قبل المطورين.

ومع ذلك، فإن هذا التصميم يسبب بعض المشاكل. حتى لو استخدم المطورون جزءًا صغيرًا فقط من الوظائف، سيتم تنزيل مكتبة الشفرات بالكامل على جهاز المستخدم، مما قد يؤدي إلى زيادة وقت التحميل.

اعتمد الإصدار 2.x استراتيجية مختلفة. قام فريق التطوير بتقسيم قاعدة الشيفرة الأصلية إلى عدة وحدات صغيرة، مثل @solana/accounts و @solana/codecs و @solana/rpc و @solana/signers و @solana/transactions. تخلت النسخة الجديدة عن التنفيذ القائم على الفئات، وبدلاً من ذلك اعتمدت أكثر على أسلوب الوظائف الفردية، مما يساعد على تحسين بناء الشيفرة بلغة JavaScript. سيتم حذف الشيفرة غير المستخدمة، وبالتالي لن يتم تنزيلها على أجهزة المستخدمين. وفقًا للإحصاءات الرسمية، عادةً ما تحقق DApps التي تستخدم الإصدار الجديد تحسينًا في الحجم بنسبة 30%، وإذا تم استخدام عدد قليل من الوظائف فقط، فقد تكون نسبة التحسين أعلى.

الخاصية المهمة الأخرى في الإصدار 2.x هي عدم الاعتماد على أي شيء. بالنظر إلى الهجمات التي حدثت مؤخرًا في الإصدارات 1.95.5 و 1.95.6 على سلسلة التوريد، يمكن أن يقلل تقليل الاعتماد الخارجي بشكل كبير من مخاطر الأمان. قرر فريق تطوير Web3.js استخدام الميزات الأصلية بشكل أكبر، وإلغاء الاعتماد الخارجي وإدخال Polyfills.

Web3 للمبتدئين: الآن قم بتحديث @solana/web3.js 2.x لبدء البرمجة الوظيفية

نقاط التغيير المهمة

الاتصال

تعتمد النسخة 2.x على طريقة أكثر وظيفية لتنفيذ وظيفة الاتصال. يمكن للمطورين الآن إنشاء مُرسل طلبات عن طريق تكوين عنوان طلب RPC، ثم استخدامه لإرسال طلبات متنوعة.

زوج المفاتيح

فيما يتعلق بمعالجة أزواج المفاتيح، هناك تغييرات كبيرة في الإصدار 2.x. لم تعد الفئات Keypair و PublicKey موجودة، بل تم استبدالها ببعض الوظائف الجديدة. على سبيل المثال، يمكنك الآن استخدام await generateKeyPair() لإنشاء أزواج المفاتيح، بدلاً من Keypair.generate() السابقة. يستفيد التنفيذ الجديد بشكل كامل من واجهة برمجة تطبيقات Web Crypto في JavaScript، ويستخدم تنفيذ Ed25519 الأصلي.

إرسال الصفقة

تم إزالة فئات Transaction و VersionedTransaction في الإصدار 2.x. لم تعد الطرق المتعلقة ببرنامج النظام متاحة مباشرة، ويجب استيرادها من مكان آخر. على سبيل المثال، تتطلب تعليمات transfer الآن استدعاء دالة getTransferSolInstruction من @solana-program/system.

تقدم النسخة الجديدة شكل pipe المستخدم بشكل شائع في البرمجة الوظيفية، مما يسمح للمطورين بتجميع وتنفيذ عمليات التداول بطريقة أكثر مرونة.

دعم React

من الجدير بالذكر أن مشروع @solana/web3.js يتضمن أيضًا مكتبة تُسمى @solana/react، والتي توفر بعض React Hooks، مع ميزات مدمجة مثل signIn، مما يوفر المزيد من الراحة لمطوري React.

ملخص

إصدار النسخة 2.x من Solana Web3.js يظهر التزام فريق Solana المستمر بتحسين وابتكار. توفر النسخة الجديدة للمطورين طريقة أكثر كفاءة ومرونة وقابلية للتخصيص للتفاعل مع شبكة Solana، مما يُتوقع أن يدفع بالنمو والتطبيقات الإضافية لهذه المنصة.

Web3 مبتدئين سلسلة: الآن ترقية @solana/web3.js 2.x لبدء البرمجة الوظيفية

SOL-1.61%
شاهد النسخة الأصلية
قد تحتوي هذه الصفحة على محتوى من جهات خارجية، يتم تقديمه لأغراض إعلامية فقط (وليس كإقرارات/ضمانات)، ولا ينبغي اعتباره موافقة على آرائه من قبل Gate، ولا بمثابة نصيحة مالية أو مهنية. انظر إلى إخلاء المسؤولية للحصول على التفاصيل.
  • أعجبني
  • 1
  • مشاركة
تعليق
0/400
NotAFinancialAdvicevip
· 07-25 07:27
أخيرًا استخدمت البرمجة الوظيفية
شاهد النسخة الأصليةرد0
  • تثبيت