أول عملة ميم عربية تُطلق في 1 مارس
ArabMarketCap
  • Login
  • من نحن؟
    • اتصل بنا
    • اعمل معنا
  • اخبار
    • دليل العملات الرقمية
    • التحليل الفني
    • فيديو
    • NFTs
    • التعدين
    • ميتافيرس
  • الشركاء
    • Zulu Trade
الأكاديمية
No Result
View All Result
  • من نحن؟
    • اتصل بنا
    • اعمل معنا
  • اخبار
    • دليل العملات الرقمية
    • التحليل الفني
    • فيديو
    • NFTs
    • التعدين
    • ميتافيرس
  • الشركاء
    • Zulu Trade
No Result
View All Result
ArabMarketCap
عملة ميم
Home طور نفسك الأكاديمية

بناء التطبيقات اللامركزية (Dapp) على شبكة سولانا

ArabMarketCap by ArabMarketCap
02/08/2022
in الأكاديمية
0
بناء التطبيقات اللامركزية (Dapp) على شبكة سولانا

في هذا المقال سنتعلم كيفية بناء التطبيقات اللامركزية من الصفر على شبكة سولانا المحلية ومن ثم نقلها إلى شبكة سولانا العامة.

ماهي شبكة سولانا؟

CwCE x3ElTqCVcPDsr861x65SaLnutMa0gIr17zw2NEiXtzOOtaAezrtJaFgzkAjlxAPOc7kz4V2mF2K 6UB1g8rnb7K6FFCuaTuwrBa3sIr1PhzO7YGyFnt f1tPrLindA5H9WO3RSoZOCU5apRYA

سولانا هي شبكة بلوكتشين عامة ومفتوحة المصدر تستخدم لتشغيل التطبيقات اللامركزية والبرامج والمعروفة ايضاً باسم العقود الذكية (Smart Contracts). تم إنشاء شبكة سولانا لتمكين قابلية التوسع وانخفاض تكاليف المعاملات خاصة بالنسبة للشركات المتنامية.

تعتبر شبكة سولانا أسرع شبكة بلوكتشين في العالم قادرة على معالجة 50 ألف إلى 65 ألف معاملة في الثانية واستكمال الكتل في 429 مللي ثانية. من الجدير بالذكر إن متوسط تكلفة المعاملات البالغ 0.00025 دولار هو الحافز الأكبر الذي حث المطورين على إنشاء مشاريعهم على هذه الشبكة.

تستخدم سولانا بروتوكول البلوكتشين الذي يعمل بخوارزمية إثبات الحصة (Proof Of Stake) وإثبات التاريخ (Proof Of History) لحل مشاكل قابلية التوسع داخل البلوكتشين مع الحفاظ على لامركزية الشبكة وأمانها.

بمعنى آخر، سولانا عبارة عن مجموعة من التقنيات التي تعمل معاً لتحسين سرعة البلوكتشين وقابلية التوسع. إضافةَ إلى ذلك، يحتوي  نظام الشبكة على مجموعة من التطبيقات اللامركزية (dApps) المبنية على شبكة سولانا مفتوحة المصدر.

ماهي اللغات والتقنيات المستخدمة ولماذا؟

pemRx 4Bm f4tJO811vNObtbfo0QB Z9FS pGd2Il InJhmg1brXFkZyOktj PKp2uepemo6HmNBECsWUObvOXs0bj3fUzIvbIGlVikzEe L pUY 2ZVs01Tcq2rjutwzWDVwMg12DDbWPGaKm IsQ

يجب أن يكون لدى المطور بعض الخبرة في البرمجة فهي مطلوبة لتطوير تطبيق على الشبكة من الألف إلى الياء. تستخدم سولانا لغات مثل لغة راست (Rust) وكذلك C و C ++. 

إذا كنت مطور، حتما سوف تعرف لغات C و C ++، فهما من أكثر لغات البرمجة الأساسية والمعروفة لدى مجتمع المطورين، لكن لغة Rust هي التي ستكون جديدة عليك نسبيا. على عكس الاعتقاد الشائع، لا تحتاج إلى خبرة كبيرة أو معرفة متعمقة لبدء العمل على لغة Rust.

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

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

أما من جانب الواجهة الرسومية (GUI)، سيتم استخدام لغات مثل جافاسكربت (JavaScript) ومكاتب مثل React.js لتسهيل تفاعل العميل مع التطبيق اللامركزي على سولانا، لذا سيكون مطلوب الفهم الأساسي للغة جافاسكربت التي بدورها ستوفر المظهر والواجهه للتطبيق اللامركزي التفاعلي، سيؤدي ذلك إلى تحسين تجربة المستخدم وتوسيع قاعدة المستخدمين.

لماذا تعتبر سولانا الشبكة الافضل للمشاريع التجارية؟

xullrP2 5PAU1Bq9L1lTK8xX7weER59u HvVDTh65yDnDoLtE7NxcPp2wjysd7VSNGRNEwgcau7JcUq3OddKZ 07apUZwoDXqtbV1OiLIH y5p0FPX11OwqZQobjNo5yaZABEbV E24iWcCm8RDSA

بسبب كون شبكة سولانا تتمتع بالعديد من الميزات سهلة الاستخدام وبسيطة البرمجة، يحتوي نظام سولانا على عدد من الأدوات الجاهزة التي سيجدها المستخدمين المبتدئين مفيدة.

توفر سولانا صفات تحويلية للشركات من خلال توفير تجربة تطوير للتطبيقات اللامركزية بشكل فريد وقوي. تفتح الشبكة إمكانية عمل تجاري واسع النطاق من خلال توفير سرعة عالية وقابلية التوسع بتكلفة منخفضة للمعاملات، لكن ماهي المميزات التي تجعل منها الافضل للمشاريع التجارية؟

  • السرعة في التوسع: على شبكة جيجابت قياسية، يمكن لشبكة سولانا معالجة 710000 معاملة بحجم يساوي أو أقل من 176 بايت في الثانية لقاعدة بيانات مركزية، مع وقت كتلة يبلغ 400 مللي ثانية. لذلك تعتبر الشبكة أسرع شبكة بلوكتشين في العالم، حيث تساهم السرعة العالية في السهولة التي يمكن بها توسيع نطاق الأعمال.
  • تكلفة معاملات منخفضة: الميزة المهمة التالية لشبكة سولانا للشركات هي رسوم الغاز المنخفضة المفروضة على كل معاملة. إن رسوم الغاز هي الرسوم التي يجب على المستخدمين دفعها لاستخدام منصة سولانا للمعاملات، حيث تبلغ تكلفة المعاملة الواحدة على سولانا حوالي 0.00025 دولار، وهو جزء بسيط مقارنة بما تتقاضاه شبكات البلوكتشين المنافسة الأخرى.
  • سهولة التطوير والبرمجة: سولانا عبارة عن شبكة بلوكتشين مفتوحة المصدر سهلة الاستخدام. هذا يعني أنه يمكن للمستخدمين والمطورين تنزيل الأكواد الجاهزة مباشرة واستخدامها لإنشاء منتجات جديدة وعملية، وهو ما يجذب مطوري التطبيقات اللامركزية من جميع أنحاء العالم إلى نظام الشبكة بحثاً عن تطوير أسهل وأسرع.
  • مميزات لغة راست (Rust): ترث برمجة سولانا مزايا برمجة لغة راست، مثل أمان الذاكرة والتزامن، وهذا يرجع إلى حقيقة أن غالبية التطبيقات اللامركزية في نظام سولانا مكتوبة بلغة برمجة راست.

بناء التطبيقات اللامركزية على شبكة سولانا

ZoPAOtLLHhj0wuxO1rpYsW 3dois44IVLRlS4Bw8q7l5o9MS4hhzCKzI4tay8QvPjcvarraMbGyRb1GCn8XAOmyZ8TizqU8htnV grFPY aYX3wAvROvVNUch

لغرض البدء في بناء التطبيقات اللامركزية على شبكة سولانا نحتاج إلى القيام ببضع خطوات:

الخطوة الأولى: تثبيت جميع البرمجيات المطلوبة للمشروع

سيشمل تثبيت البرمجيات تقنيات مثل Rust، Solana، Node.js, Yarn, Anchor.

تستخدم لغة راست لغرض كتابة العقود الذكية على شبكة سولانا، ولتثبيتها نقوم بكتابة الامر التالي:

curl — proto ‘=https’ — tlsv1.2 -sSf https://sh.rustup.rs | sh

اما بالنسبة لأصحاب الويندوز، يمكنهم تثبيت أي من خدمات الاستضافة لمشاريع مفتوحة المصدر مثل Github و Gitlab وغيرها. او يمكنك تحميل مثبت Rust بصيغة exe من الموقع الرسمي.

بمجرد تثبيت لغة راست قم بإضافة ملفات اللغة التنفيذية عن طريق الامر التالي: 

export PATH="$HOME/.cargo/bin:$PATH"

قم بالتحقق من عملية التثبيت عن طريق الأوامر التالية التالية:

rustup --version
rustc --version
cargo --version

بعد تثبيت لغة Rust نقوم بتثبيت Solana عن طريق الامر التالي:

sh -c "$(curl -sSfL https://release.solana.com/v1.9.8/install)"

تحقق من عملية التثبيت الخاصة بـ Solana عن الأمر التالي:

solana --version

الآن نقوم بتنصيب مكتبة Node.js وكذلك Yarn بسبب كونهم مهمين جدا للعمل مع برامج Anchor. يمكن تثبيت Node.js من الموقع الرسمي الخاص بالمكتبة، يمكن التحقق من التثبيت عن طريق الامر التالي:

node --version
npm --version

نقوم بتثبيت Yarn عن طريق الامر التالي:

npm i -g yarn

اخيراً وليس اخراً، نقوم بتثبيت Anchor، وهو بروتوكول يسهل بناء التطبيقات على سولانا، نقوم بتثبيته عن طريق الأمر التالي:

cargo install --git GitHub - project-serum/anchor: ⚓ Solana Sealevel Framework  anchor-cli --locked

قم بتأكيد التثبيت: 

anchor --version
cargo install --git GitHub - project-serum/anchor: ⚓ Solana Sealevel Framework  anchor-cli --locked

تأكد من إتمام العملية عن طريق:

anchor --version

الخطوة الثانية: تنسيق المشروع

يتم تنسيق سولانا للعمل على الشبكة الرئيسية بشكل افتراضي، هذا يعني إن كل معاملة تحتوي على رسوم غاز.

عليك تكوين Solana CLI Utility للاستفادة من الـ Devnet وتهيئة المشروع بأستخدام Anchor، اعداد سولانا و Devnet للعمل معاً عن طريق الامر التالي:

solana config set --url devnet

الأن نحتاج الى تشغيل ونشر البرنامج مع المحفظة الرقمية، نقوم بكتابة الامر التالي:

solana-keygen new --force

نؤكد عنوان المحفظة:

solana address

استخدم عملات اختبار سولانا من خلال أمر airdrop,  للتحقق من رصيد الحساب نقوم بكتابة الأمر التالي:

solana balance

اخيراً نقوم بإعداد الـ Anchor عن طريق تشغيل الأمر:

anchor init solana-global-article
cd solana-global-article

الخطوة الثالثة: بدء التطوير على لغة راست

استخدم أي محرر لكتابة الكود للوصول إلى المشروع

افتح الملف وقم بإعداد Lib.rs، وهي الصفحة الرئيسية لـ Rust والملف الرئيسي لتطبيق سولانا.

بعد ذلك، قم ببناء هيكلة البيانات لتخزين المحتوى عن طريق تشغيل الأمر التالي:

#[account]pub struct Article { pub content: String,}

Then continue to create the Initialize struct by running the following command:
#[derive(Accounts)]
pub struct Initialize<'info> {
 #[account(
 init,
 payer = person_that_pays,
 space = 8 // account discriminator
 + 32 // pubkey
 + 10000 // make the message max 10k bytes long
 )]
 pub article: Account<'info, Article>,
 #[account(mut)]
 pub person_that_pays: Signer<'info>,
 pub system_program: Program<'info, System>,
}

انتقل إلى قسم #program وقم بتطوير الدالة الرئيسية من خلال التالي:

#[program]
pub mod solana_global_article {
    use super::*;
    pub fn initialize(ctx: Context<initialize>) -> ProgramResult {
        // Get the article
        let article_account = &mut ctx.accounts.article;
        // Initialize the variables (this is required)
        article_account.content = ("").to_string(); Ok(())
    }
}
</initialize>

الأن بيئة تطوير سولانا الخاصة بك جاهزة لتطوير التطبيق اللامركزي.

الخطوة الرابعة: تحديث سولانا Anchor

انتقل إلى المسار التالي “programs/mysolanaapp/src/lib.rs” وقم بتحديثه من خلال الكود التالي:

use anchor_lang::prelude::*;
declare_id!("Fg6PaFpoGXkYsidMpWTK6W2BeZ7FEfcYkg476zPFsLnS");
#[program]
mod mysolanaapp {
    use super::*;
    pub fn create(ctx: Context<create>) -> ProgramResult {
        let base_account = &mut ctx.accounts.base_account;
        base_account.count = 0;
        Ok(())
    }
    pub fn increment(ctx: Context<increment>) -> ProgramResult {
        let base_account = &mut ctx.accounts.base_account;
        base_account.count += 1;
        Ok(())
    }
}
// Transaction instructions
#[derive(Accounts)]
pub struct Create<'info> {
    #[account(init, payer = user, space = 16 + 16)]
    pub base_account: Account<'info, BaseAccount>,
    #[account(mut)]
    pub user: Signer<'info>,
    pub system_program: Program <'info, System>,
}
// Transaction instructions
#[derive(Accounts)]
pub struct Increment<'info> {
    #[account(mut)]
    pub base_account: Account<'info, BaseAccount>,
}
// An account that goes inside a transaction instruction
#[account]
pub struct BaseAccount {
    pub count: u64,
</increment></create>

الخطوة الخامسة: انشاء تطبيق رياكت (React)

قم بإنشاء تطبيق جديد في ملف مشروع Anchor، استخدم الأمر التالي:

npx create-react-app app

شغل الأمر التالي لتثبيت البرمجيات المطلوبة لـ Anchor و Solana Web3:

cd app
npm install @project-serum/anchor @solana/web3.js

الخطوة السادسة: تركيب محول المحفظة

قم بإدارة محفظة سولانا الخاصة بك عن طريق تثبيت محول محفظة سولانا، قم تشغيل الأمر التالي:

npm install @solana/wallet-adapter-react \
@solana/wallet-adapter-react-ui @solana/wallet-adapter-wallets \
@solana/wallet-adapter-base

قم بإنشاء ملف جديد idl.json، في مجلد src، انسخ IDL JSON المدمج في مجلد المشروع الرئيسي.

الخطوة السابعة: اختار شبكة للمحفظة 

من المهم استضافة المحفظة على شبكة محلية قبل أن تبدأ في التفاعل مع التطبيق، انتقل إلى إعدادات المحفظة، ثم تغيير الشبكة، وحدد localhost.

بعد ذلك قم بإضافة العملات الى المحفظة، افتح التيرمنال الخاص بك وقم بكتابة الامر التالي:

solana airdrop 10

هذا الأمر سيقوم بإضافة الكمية المطلوبة من عملات سولانا لتشغيل واختبار التطبيق اللامركزي.

بمجرد استلام العملات، قم بالتبديل إلى دليل التطبيق وقم بتشغيل الأمر التالي:

npm start

الخطوة الاخيرة: نشر التطبيق اللامركزي

انسخ الأمر إلى الواجهة الأمامية لنشر التطبيق اللامركزي الخاص بك، قم بتشغيل الأمر التالي:

anchor run copy-idl

قم بتشغيل الأمر المحدد لخدمة تطبيق الواجهة الأمامية بشكل محلي:

npm run serve

لنشر التطبيق اللامركزي، قم بالتبديل إلى devnet باستخدام الأمر:

solana config set --url devnet
and update the Anchor.toml file

اخيراً، انشر التطبيق على الشبكة الرئيسية من خلال الأمر:

anchor deploy
Tags: Solana
ArabMarketCap

ArabMarketCap

هل ترغب في دخول عالم العملات الرقمية؟ هل تريد معرفة المزيد عن تقنية البلوكتشين والاستثمار الرقمي؟ كل ذلك وأكثر نقدّمه لك في عرب ماركت كاب (دليلك الشامل وطريقك الأسرع نحو الحرية المالية).

Related Posts

ثلاث نصائح ستساعدك على الاستثمار في الركود العالمي … تعرف عليها
الأكاديمية

ثلاث نصائح ستساعدك على الاستثمار في الركود العالمي … تعرف عليها

19/12/2022
أكاديمية عرب ماركت كاب
الأكاديمية

أكاديمية عرب ماركت كاب..انطلاقة جديدة نحو آفاقٍ أوسع من العلم والمعرفة

15/12/2022
منصات التداول الموثوقة
الأكاديمية

بعد انهيار FTX.. ما هي منصات التداول الموثوقة؟

11/01/2025
ما الذي يجعل دبي أكبر مركز بلوكتشين في الوطن العربي وواحدة من أهمّها في العالم أجمع؟ تعرّف معنا على هذه المدينة المميّزة، وعلاقتها بمجال الكريبتو..
الأكاديمية

دبي.. أكبر مركز بلوكتشين في العالم العربي

15/12/2022
Next Post
ارتفاع مبيعات مجموعة CryptoPunks من الـ NFTs بنسبة 248%

ارتفاع مبيعات مجموعة CryptoPunks من الـ NFTs بنسبة 248%

عرب ماركت كاب هي أكبر منصة عربية تعليمية ومركز تثقيفي بمجال العملات الرقمية، البلوكتشين والاستثمار بشتى أشكاله، تأسسّت في عام 2020.

منتجاتنا

  • عرب ماركت كاب+
  • الاكاديمية
  • الجريدة الاسبوعية
  • المجلة الشهرية

عنا

  • من نحن؟
  • إعمل معنا
  • تواصل معنا

المدونة

  • آخر المقالات
  • الأخبار
  • التعدين
  • العملات الرقمية
  • الفيديو
Twitter Facebook-f Youtube Instagram

All rights reserved © ArabMarketCap

Welcome Back!

Login to your account below

Forgotten Password?

Retrieve your password

Please enter your username or email address to reset your password.

Log In
No Result
View All Result
  • من نحن؟
    • اتصل بنا
    • اعمل معنا
  • اخبار
    • دليل العملات الرقمية
    • التحليل الفني
    • فيديو
    • NFTs
    • التعدين
    • ميتافيرس
  • الشركاء
    • Zulu Trade
الأكاديمية