تحدثنا في المقال السابق عن الحسابات والمحافظ على شبكة نِير واليوم سنتحدث عن كيفية التعامل مع البلوك تشين برمجياً
سبق و ذكرنا أن البلوك تشين (blockchain) هو عبارة عن خدمة (service) نستطيع استخدامها كمنصة تطوير لنا نقوم بإرسال واستقبال البيانات عليها و أيضاً وضع كود برمجي عليها.
هذا المقال متاح أيضاً فى صورة فيديو يمكنك مشاهدته من خلال الرابط
البلوك تشين (blockchain) يحتوي على الكثير من المكونات مثل:
- Peers: وهي الأجهزة المكونة للشبكة.
- protocols البروتوكولات: التي تحكم العمليات التي تتم على البلوك تشين.
- standards: الأسس والبرمجيات التي تقوم بتشغيل البلوك تشين (blockchain) بشكل كامل.
كما نشاهد في الصورة التالية:
ما يهمنا نحن كمطورون (developers) أن الخدمات (services) التي نستطيع القيام بها على بلوك تشين متاحة لنا عن طريق واجهات برمجية (APIs ) نستطيع استخدامها لتنفيذ المهام البرمجية و إرسال أو استقبال البيانات من وإلى البلوك تشين.
و فى شبكة نيــر لدينا، كما هو موضح في الصورة عدة مكونات:
- شبكة البلوك تشين والتي ترسل وتستقبل المعلومات.
- (RPC interface) لا نستخدمه بشكل مباشر فهو نقطة وصل.
- (near-api-js) وهذا هو ال (API) الذي تستطيع كمطور استخدامه للتطبيق الخاص بك.
- الأدوات الخاصة بنِير (NEAR tools) التي ذكرنا منها (NEAR explorer and NEAR wallet) مسبقاً، هذه الأدوات أيضاً تستخدم (near-api-js) لكي تتعامل مع بلوك تشين (blockchain)
- بإمكانك بكل بساطة بواسة ل API أن تتواصل مع شبكة البلوك تشين. في الصورة التالية مثال على post request إلى https://rpc.testnet.near.org
-عندما يتم تنفيذ هذا الطلب (request) ستقوم ال (network) بالرد عليه (response)بمعلومات الحساب و منها الرصيد (balance) الموجود في هذا الحساب.
-نلاحظ هنا أنه يمكننا كتابة الكود والتعامل مع بلوك تشين blockchain حتى بدون عمل حساب لأن (view_account method) هي من ضمن ال (methods) التي لا تحتاج إلى وجود حساب لعمل استدعاء لها.
وفي الصورة مثال للنتيجة:
كما ذكرنا سابقاً فهناك بعض الأدوات التي تستخدم (near-api-js) مثل أداة (NEAR CLI) والتي سنتعرف عليها وهي (command line interface) نستطيع من خلالها تنفيذ عمليات (transactions) على بلوك تشين blockchain وسوف نستخدمها كثيراً عند رفع أو عمل (deployment) للكود الخاص بنا على البلوك تشين وممكن استخدامها أيضاً عند تجربة بعض ال (method calls)
ما هي NEAR CLI ؟
وهي عبارة عن (command line interface) تم عمله بواسطة (NodeJS) تمكنك من استخدام (near-api-js) عن طريق عمل أوامر من أي واجهة عمل كتابية لديك (command line comments) مثل:
-أمر send لإرسال أموال من حساب لحساب.
-أمر deploy لرفع أو عمل deploy لل contact كما سنرى فيما بعد.
-أمر call لعمل call ل method معينة من contract معين.
و المزيد من خلال الرابط
كيفية تحميل الأداة near-cli
لكي نقوم بعمل تحميل (download) للأداة (NEAR CLI) سنقوم بتحميل كل من:
- node.js يمكنك تحميله من خلال الرابط
- near-cli . وهو موجود ك (package) داخل (npm) node package manager
npm i -g near-cli
-للتعرف على رقم الإصدار لديك من نير يمكنك استخدام:
near version
- لمعرفة معلوماتك حسابك يمكنك استخدام near state مع اسم الحساب :
near state msaudi.testnet
يمكنك متابعة الخطوات السابقة كلها في الفيديو من خلال الرابط.
الملخص:
تعرفنا في هذا الدرس على:
- طريقة التعامل برمجياً مع البلوك تشين من خلال ال API
- طريقة تثبيت و تجربة NEAR CLI
- تعرفنا على بعض الأوامر مثل state, call