العملات الرقميةبلوكشينوظائف المستقبل

Web3.js للمطورين

في هذه المقالة سوف أتحدث لكم عن ما هي مكتبة Web3.js للمطورين ، وكيفية عملها ، وحزم والتبعيات الخاصة بهذه المكتبة .

ما هو Web3.js ؟

يزدهر Web3.js كمجموعة مكتبة قوية تسهل التفاعل بين المطورين والنظام البيئي بلوكتشين الإثيريوم. نظرًا لأن جميع متصفحات الويب تقريبًا تدعم الجافا سكربت ، فإن Web3.js تمثل ارتباط لغة الجافا سكربت لواجهة الإثيريوم JSON RPC. تجعله الخاصية مصدرًا قويًا للاستخدام المباشر في تكنولوجيا الويب. تستخدم تطبيقات سطح المكتب المصممة باستخدام Electron و Node.js بشكل متكرر Web3.js على جانب الخادم.

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

يتضمن تطوير التطبيقات اللامركزية على بلوكتشين الإثيريوم معلمتين حصريتين:

  • تطوير العقود الذكية – يتضمن كتابة الأكواد باستخدام لغة برمجة السوليدتي لنشرها على البلوكتشين.
  • يتضمن تصميم مواقع الويب أو التطبيقات التي تتواصل مع دفتر الأستاذ الموزع- كتابة رمز عقد ذكي يقرأ ويكتب البيانات من وإلى البلوكتشين.

يفي Web3.js بالمعامل الثاني لإنشاء عملاء يتواصلون مع قناة بلوكتشين الإثيريوم. تدعم مكتبة الجافا سكريبت مجموعة متنوعة من الوظائف ، بما في ذلك:

  • قراءة وكتابة البيانات من العقود الذكية
  • استرجاع حسابات المستخدمين
  • إرسال إيثر عبر الحسابات الرقمية
  • إنشاء عقود ذكية ، إلخ.

تتمثل إحدى الطرق النموذجية لدمج تطبيق الويب مع الإثيريوم في استخدام المكون الإضافي لمتصفح الميتاماسك و Web3.js. الميتاماسك عبارة عن محفظة الإثيريوم شائعة في المتصفح تقوم بنقل كائن مزود الويب 3 إلى الشبكة. موفر الويب هو منتج بيانات يربط المستخدمين بعقد الإثيريوم المتاحة للجمهور. يمكن للمستخدمين التحكم في مفاتيحهم الخاصة وتوقيع المعاملات عبر متصفحات الويب الخاصة بهم باستخدام Metamask. طريقة سهلة للتواصل مع شبكة الإثيريوم هي استخدام الميتاماسك في واجهة الويب و Web3.js.

علاوة على ذلك ، سنتحدث عن عمل Web3.js الذي سيساعد القراء على تطوير فهم الخبراء للموضوع.

كيف يعمل Web3.js ؟

يتم نشرها على البلوكتشين والأصول الافتراضية والعملات المشفرة والرموز القابلة للبرمجة والعقود الذكية هي مكونات حيوية لـ التطبيقات اللامركزية. ومع ذلك ، يجب إنشاء المعاملات على البلوكتشين للتفاعل مع هذه العناصر على السلسلة. يجب أن تنقل العقدة المعاملة إلى شبكة الند للند الأساسية لبرنامج خارج السلسلة لتأسيسها على البلوكتشين. يساعد Web3.js المطورين على الاتصال بهذه العناصر الموجودة على السلسلة من خلال بناء رابط مع عقد الإثيريوم. على الإثيريوم ، يتم استلام المعاملات بواسطة عقدة عبر واجهة JSON RPC. إنه يرمز إلى بروتوكول استدعاء الإجراءات عن بُعد وهو عبارة عن بنية تشفير نصية تسمح للعمليات بتلقي بيانات المعاملات. يمكن لعقد الشبكة على الإثيريوم استغلال هذه الواجهة بطرق مختلفة اعتمادًا على كيفية تكوينها وكيفية تنفيذ البرنامج الأساسي. اتصالات IPC و WebSockets و HTTP هي بدائل شائعة. على سبيل المثال ، باستخدام خيار سطر الأوامر “geth -rpc” ، قد يتم إعداد تنفيذ Go الإثيريوم (geth) لتوفير واجهة RPC بواسطة خبير الويب 3.

يتم الاحتفاظ بنسخة من جميع المعلومات والرموز الموجودة على البلوكتشين في شبكة عقد الإثيريوم من نظير إلى نظير. على غرار استخدام jQuery مع واجهة برمجة تطبيقات JSON ، يتلقى Web3.js البيانات ويكتبها إلى الشبكة عن طريق إرسال استعلامات JSON RPC إلى عقدة الإثيريوم.

يستخدم Web3.js موفرًا ويقوم بتنفيذ وظيفة الطلب المسؤولة عن استدعاء طريقة الإثيريوم RPC لتحويل كود الجافا سكريبت إلى طلبات json-rpc. يتم تنفيذ المواصفات المذكورة أعلاه بسهولة عبر Web3.js. يمكن الوصول إليه من خلال web3.providers و HttpProvider و WebsocketProvider و IpcProvider.

ما هي حزم Web3.js ؟

وهناك خمس حزم مرتبطة بـ web3.js. يعد تعليم الويب 3 على هذه الحزم أمرًا حيويًا لفهم Web3.js جيدًا. لذلك ، دعونا نلقي نظرة:

  • web3.eth : تتواصل مع بلوكتشين الإثيريروم والعقود الذكية.
  • web3.bzz : يتواصل مع مخازن الملفات اللامركزية.
  • web3.shh : يتواصل مع بروتوكول Whisper للبث.
  • web3.utils : يسهل القدرات الأساسية مثل تحويل السلاسل إلى حرفية سداسية عشرية وقيم الأثير إلى Wei.
  • web3.*.net : يتصل بخصائص شبكة عقد الإثيريوم مثل معرف الشبكة أو عدد الأقران.

التبعيات

يتم تطوير الويب 3 على قدم وساق ، حيث تستثمر الشركات مبالغ ضخمة في البحث والتطوير للمنتجات المبتكرة المتعلقة بالتكنولوجيا. بعد هذا الاتجاه ، تطورت Web3.js أيضًا. يتم تقديمه حاليًا في نسختين. لقد حل الإصدار 1.0 بالكامل تقريبًا محل أحدث إصدار ثابت (0.3). الإصدار 1.0 ، ومع ذلك ، لا يزال يعتبر في المرحلة التجريبية. يجب أن يحصل المستخدمون أولاً على نسخة من Web3.js لاستخدامها في المشروع. ويمكن القيام بذلك في مجموعة متنوعة من الطرق.

  • Node Package Manager (NPM)

يعد مدير الحزم NPM أحد أكثر الخيارات شيوعًا. يستخدم مبرمجو جافا سكريبت NPM على نطاق واسع. يأتي مع Node.js. يعد تنزيل شفرة المصدر من مستودع GitHub الخاص بالمشروع خيارًا أيضًا. يجب تضمين ملف يسمى Web3.js في كود HTML لاستخدامه على صفحة الويب.

  • Web3.js مكتبة

يمكن لتطبيق Node.js استخدام المكتبة من خلال تضمينها مع:

;const Web3 = require(‘web3′)

يجب أن يوفر المبرمج موفر الويب 3 قبل استخدام Web3.js للاتصال بـ الإثيريوم. بطبيعة الحال ، يعتمد هذا الرمز على العقدة المحددة التي يريد المبرمج الاتصال بها. فيما يلي توضيح لكيفية استخدام المكون الإضافي لمتصفح الميتاماسك المذكور أعلاه في تطبيق ويب:

;const web3 = new Web3(Web3.givenProvider, null, {})

يتم حقن موفر الويب 3 في المتصفح من خلال الميتاماسك. يقوم الكود أعلاه بتهيئة Web3.js لاستخدام هذا الموفر ويساعد Web3.js على استخدامه.

مطلوب عنوان العقد الذكي الذي تم نشره والواجهة الثنائية للتطبيق (ABI) للتواصل معه. ABI هو كائن JSON يعمل بمثابة وصف للواجهة العامة للعقد.

يمكن الإشارة إلى العقد في كائن العقد بالشفرة التالية ، بافتراض حفظ وصف ABI في متغير يسمى “abi” وعنوان العقد في متغير باسم “العنوان”:

;let contract = new web3.eth.Contract(abi, address)

الآن ، يمكن إرسال المعاملات إلى العقد باستخدام هذا الكائن ، كما في:

;contract.methods.transfer(toAddress, value).send({from: myAddress})

الخلاصة

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

اظهر المزيد

م. عبد الله احمد

مطور ومحاضر في مجال البلوكتشين

مقالات ذات صلة

زر الذهاب إلى الأعلى