"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > دمج Stellar مع JavaScript: إنشاء تطبيق dApp أمر سهل (للمبتدئين تمامًا)

دمج Stellar مع JavaScript: إنشاء تطبيق dApp أمر سهل (للمبتدئين تمامًا)

تم النشر بتاريخ 2024-08-31
تصفح:343

Integrating Stellar with JavaScript: Building dApp is Easy (for Absolute Beginners)

Stellar هي شبكة blockchain مفتوحة المصدر للمعاملات المالية السريعة والعابرة للحدود. إذا كنت مطور JavaScript وترغب في إنشاء تطبيق dApp على شبكة ممتازة، فهذا هو الشيء المناسب لك. في هذا البرنامج التعليمي، سنتعلم كيفية دمج Stellar مع JavaScript، بدءًا من إعداد البيئة وحتى إجراء معاملتك الأولى.

لذلك، دعونا نبدأ.

أوه، قبل أن نبدأ، نحتاج إلى معرفة أساسية بجافا سكريبت وتثبيت npm وNode.js على جهازك.

1. الحفاظ على البيئة

أولاً، افتح المحطة الطرفية أو موجه الأوامر وقم بإنشاء دليل جديد للمشروع:

mkdir stellar-js
cd stellar-js
npm init -y

سيعمل هذا الأمر على تهيئة مشروع Node.js جديد.

الآن، قم بتثبيت Stellar SDK لجافا سكريبت.

npm install stellar-sdk

ولكن، انتظر ما هو Stellar-SDK؟

تعد Stellar SDK مكتبة قوية للتفاعل مع شبكة Stellar باستخدام JavaScript.

2. الاتصال بالشبكة النجمية

الآن، بعد أن تم إعداد البيئة، سنتواصل مع شبكة Stellar. نحن بحاجة إلى Stellar SDK ونتصل بشبكة الاختبار.

ما هو Testnet؟

Testnet عبارة عن شبكة مجانية الاستخدام للمطورين لاختبار تطبيقاتهم دون الاتصال بأموال حقيقية. عندما تكون هناك شبكة رئيسية تتصل بأموال حقيقية وتتطلب XLM لتغطية رسوم المعاملات، وما إلى ذلك. تشبه شبكة الاختبار الشبكة الرئيسية، فهي تحتوي على وحدات Lumens (XLM) مجانية للاختبار تسمى Friendbot.

const StellarSdk = require("stellar-sdk");
const server = new StellarSdk.Server("https://horizon-testnet.stellar.org");

سيؤدي هذا إلى تهيئة SDK وتعيين الخادم للاتصال بشبكة الاختبار.

3. إنشاء حساب جديد

للتفاعل مع شبكة Stellar، يجب أن يكون لديك حساب Stellar. يمكنك بسهولة إنشاء حساب جديد باستخدام SDK عن طريق إنشاء زوج من القيمة الرئيسية. يتكون زوج القيمة من مفتاح عام ومفتاح خاص.

const pair = StellarSdk.Keypair.random();

console.log('Public Key:', pair.publicKey());
console.log('Secret Key:', pair.secret());

المفتاح العام () هو معرف حسابك، في حين أن السر () هو مفتاحك الخاص، والذي يجب أن يظل آمنًا.

4. تمويل الحساب

في شبكة الاختبار، يمكنك تمويل حسابك باستخدام خدمة Friendbot من Stellar.

const fetch = require("node-fetch");

const fundAccount = async (publicKey) => {
  try {
    const response = await fetch(
      `https://friendbot.stellar.org?addr=${publicKey}`
    );
    const data = await response.json();
    console.log("Account funded:", data);
  } catch (error) {
    console.error("Error funding account:", error);
  }
};

fundAccount(pair.publicKey());

ترسل وظيفة FundAccount طلبًا إلى Friendbot لإيداع 10 آلاف لومن اختبار في حسابك. وبناءً على ذلك، سيتم تسجيل الرسالة وفقًا لحالة المعاملة.

5. إجراء الصفقة

الآن، بعد إنشاء حسابك، يمكنك إجراء أول معاملة لك على الشبكة النجمية. سنقوم ببناء المعاملة وتوقيعها وإرسالها إلى الشبكة النجمية. سنرسل 10 XLM من حسابنا إلى حساب آخر.

const sendPayment = async (publicKey) => {
  try {
    const account = await server.loadAccount(pair.publicKey());

    const transaction = new StellarSdk.TransactionBuilder(account, {
      fee: StellarSdk.BASE_FEE,
      networkPassphrase: StellarSdk.Networks.TESTNET,
    })
      .addOperation(
        StellarSdk.Operation.payment({
          destination: publicKey,
          asset: StellarSdk.Asset.native(),
          amount: "10",
        })
      )
      .setTimeout(30)
      .build();

    transaction.sign(pair);

    const result = await server.submitTransaction(transaction);
    console.log("Transaction successful:", result);
  } catch (error) {
    console.error("Error sending payment:", error);
  }
};

sendPayment("Another_Account's_Public_Key");

6. معالجة الأخطاء وتصحيح الأخطاء

حتى الفاصلة الواحدة ( , ) يمكن أن تدمر التعليمات البرمجية الخاصة بك. يعد التعامل مع الأخطاء أمرًا مهمًا للغاية للحفاظ على الكود في المسار المتوقع.

try {
  const result = await server.submitTransaction(transaction);
  console.log("Success:", result);
} catch (error) {
  console.error("Error:", error.response.data.extras.result_codes);
}

يكتشف هذا أي أخطاء أثناء المعاملة ويسجل الخطأ المحدد الذي يساعد في تصحيح التعليمات البرمجية.

خاتمة

لقد قمنا للتو بدمج Stellar مع JavaScript وأجرينا أول معاملة لنا على شبكة اختبار Stellar. نظرًا لاعتماد جافا سكريبت على نطاق واسع بين المطورين، فإن الانتقال إلى blockchain باستخدام Stellar يعد أكثر ملاءمة.

أفضل طريقة لتعلم أي مهارة جديدة هي ممارسة المزيد من المشاريع. بناء مشاريع صغيرة وتجربة المفاهيم.

إذا وجدت هذا المنشور مفيدًا، فلا تنسَ أن تستمر في إظهار حبك لي. حتى المرة القادمة، قم بالإعجاب والمشاركة والتعلم.

يمكنك أيضًا البقاء على اتصال معي من خلال متابعتي هنا وعلى X وGitHub وLinkedIn.

بيان الافراج تم إعادة نشر هذه المقالة على: https://dev.to/jitendrachoudhary/integrating-stellar-with-javascript-building-dapp-is-easy-for-absolute-beginners-4n66?1 إذا كان هناك أي انتهاك، يرجى الاتصال بـ Study_golang @163.com حذف
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3