لعبت Ethereum دورًا مهمًا في زيادة اعتماد تقنية blockchain على نطاق واسع ، من خلال Ethereum Virtual Machine (EVM) والعقود الذكية. إنها منصة تتيح للمطورين إنشاء تطبيقات موزعة (DApps) وإطلاقها ، وقد استجاب المطورون ببناء أكثر من 1500 DApps حتى الآن! هل أنت مطور مهتم ببناء DApps؟ يمكن أن يساعدك دليل تطوير DApp عالي المستوى على البدء.
تطوير DApps ليس مشروعًا بسيطًا للتشغيل ، ويتطلب برمجة جادة. لا يهدف دليل تطوير DApp هذا إلى تغطية تفاصيله ، ولكنه يوفر نظرة عامة عالية المستوى للخطوات. كما يوفر قسم “الموارد” في الجزء الأخير من المقالة ، موضحًا أين يمكنك معرفة المزيد حول خطوة معينة.
تطوير DApp: الخطوات التي يجب على المرء القيام بها
فيما يلي نظرة عامة عالية المستوى على ما يحتاج المطور إلى القيام به ، خطوة بخطوة ، لإنشاء وإطلاق تطبيق Ethereum DApp:
1. تعلم Ethereum:
يحتاج DApp إلى اتباع إطار عمل مفاهيمي محدد والطريقة الوحيدة لفهم ذلك هي تعلم Ethereum.
على سبيل المثال ، يجب أن يكون DApp مفتوح المصدر ويجب أن يعمل بشكل مستقل دون أن يتحكم أي كيان في غالبية الرموز المميزة للعملات المشفرة. يجب أن تتبع التغييرات في DApp إجماعًا في المجتمع. يجب أن يشتمل رمز الواجهة الخلفية على عقود ذكية ويجب أن يعمل على blockchain لامركزي. يجب أن يستخدم DApp رمزًا مميزًا للتشفير تم إنشاؤه باستخدام خوارزمية تشفير قياسية ، ويجب تخزين البيانات في blockchain أثناء اتباع معايير التشفير.
يعد تعلم منصة Ethereum blockchain اللامركزية القائمة على الإجماع أول خطوة غير قابلة للتفاوض يتعين على المطور اتخاذها.
2. احصل على blockchain الخاص بك:
في حين أن هناك العديد من العملاء الذين يمكن للمطور الاختيار من بينهم ، فإننا نوصي “testrpc” لمطور DApp جديد. هذه الأداة هي الآن جزء من مجموعة أدوات Truffle ، فهي سهلة الاستخدام وسهلة البدء باستخدام واجهة سطر الأوامر (CLI).
لا تقوم الأداة بتعدين الكتل افتراضيًا ، ولكن لأغراض التطوير ، يمكن تحديد الفاصل الزمني للحظر باستخدام CLI.
3. التواصل مع blockchain:
الأداة الأسهل والأكثر شيوعًا للتواصل مع blockchain هي “web3.js”. التثبيت سهل ، وهناك تعليمات محددة لتكوين المعلمات الضرورية ، على سبيل المثال:
- تكوين ملف acongig.js ؛
- تكوين وظائف web3 API للتواصل مع blockchain.
4. تعلم الصلابة:
Solidity هي اللغة المملوكة لشركة Ethereum لكتابة العقود الذكية. إنها لغة غنية بالميزات مصممة خصيصًا لهذا الغرض ، وقد تم استلهام لغة البرمجة عالية المستوى هذه من C ++ و Java و Python و JavaScript. يمكن أن يكون لـ DApp رمز الواجهة الأمامية الخاص به بأي لغة ، ولكن يجب أن يشتمل رمز الواجهة الخلفية على عقود ذكية ، وبالتالي فإن هذا التعلم غير قابل للتفاوض مع مطور DApp جديد.
5. كود العقود الذكية:
يجب أن يتبع المطور الذي يقوم بترميز العقود الذكية الإرشادات العامة التالية للفعالية:
- حافظ على منطق الحوسبة ومتطلبات التخزين في حدها الأدنى ، لأن تنفيذ العقود الذكية يتطلب “غاز” ، أي مقياس لقوة الحوسبة. إنه ليس مجانيًا ، “سعر الغاز” ، أي يجب دفع عدد معين من الرموز المميزة. هذا يعني إيثر (ETH) ، أي العملة المشفرة الأصلية لإيثريوم يجب إنفاقها على تنفيذ عقد ذكي. منطق الحوسبة البسيط يتطلب غازًا أقل.
- يجب أن تتجنب الكود التعقيد ، لأنه كلما كانت الشفرة أكثر تعقيدًا ، زاد احتمال حدوث أخطاء. نتيجة العقد الذكي لا رجعة فيها ، وبالتالي فإن ترميز العقود الذكية البسيطة الخالية من الأخطاء أمر حتمي.
6. نشر العقود الذكية:
مجموعة الأدوات الموصى بها لهذا هي “الكمأة”. لها المزايا التالية:
- دليل يسمح للمطور بالاحتفاظ بجميع عقودها الذكية ؛
- يمكن دمج الأداة بسهولة في إطار عمل الاختبار لأن البرامج النصية يمكنها نشر العقود في بيئة الاختبار وتشغيل “اختبار الكمأة” وإجراء اختبارات منتظمة.
- يعد النشر باستخدام مجموعة الأدوات هذه أمرًا سهلاً ، ويمكن بسهولة تعيين المعلمات المطلوبة في ملف config.js. يجب تشغيل Testrpc في نافذة منفصلة للنشر للعمل.
7. استدعاء العقد الذكي:
يجب أن تكون استدعاءات العقود الذكية في سلاسل سداسية عشرية ، ومع ذلك ، توجد مكتبات “واجهة تطبيق ثنائية” (ABI) لعقد Ethereum للمساعدة في ذلك.
8. قم بإنشاء حساب Ethereum:
لتنفيذ العقود الذكية ، يحتاج المطور إلى إنفاق إيثر ، وعليها إنشاء حساب إيثريوم لذلك. يوصى باستخدام “eth-lightwallet” لأن إنشاء زوج من المفاتيح العامة والخاصة وإدارتها أمر سهل مع هذا. يحتاج المطور إلى تحديث ملف config.js بالتفاصيل الأساسية. يمكن للمطور العودة إلى اختبار الكمأة ومشاهدة انتقال الأثير بين الحسابات.
ملاحظة طارئة: يجب على المطور عدم مشاركة مفتاحه الخاص مع أي شخص ، أو نشره في أي منتدى عبر الإنترنت.
9. التعامل مع العقد الذكي:
بعد شراء بعض إيثر وتخزينه في حسابها ، يحتاج المطور إلى اتخاذ الخطوة الأخيرة في تطوير DApp ، وهي التعامل باستخدام إيثر. هناك 3 خيارات:
- التحويل إلى عنوان آخر كقيمة ؛
- اتصل بوظيفة العقد التي ستعمل على تحديث حالة الشبكة ، وإنفاق الأثير لدفع الرسوم إلى عامل التعدين ؛
- ضمِّن عقدًا يُحدِّث حالة الشبكة ويقبل إيثر كدفعة. يحتاج المطور أيضًا إلى دفع الرسوم إلى عامل التعدين.
10. تطوير DApp: موارد مفيدة
للحصول على نظرة عامة على خطوات تطوير DApp ، يمكن للمطور قراءة هذه شامل مقالة هاكرنون. فيما يلي موارد الخطوات الفردية:
- لتعلم Ethereum: البرنامج التعليمي لتطوير Ethereum, ورقة بيضاء Ethereum, و ورقة صفراء Ethereum.
- جيثب مواد ل Testrpc.
- جيثب مواد لـ web3.js.
- متصل مسار للصلابة.
- جيثب مواد لمجموعة أدوات الكمأة.
- جيثب مواد لمكتبة ABI.
- جيثب مواد من أجل eth-lightwallet.
بالإضافة إلى، ‘dapps للمبتدئين“هو موقع ويب جيد للمطور الجديد للحصول على إرشادات. إذا لم تكن متأكدًا بعد ، فإليك 5 أسباب لتعلم تطوير blockchain. لا يزال البحث عن بعض الإلهام هنا هو أفضل 10 dapps لمتابعة في 2018.
من يحب أن تسمع تجربتك في تجربة تطوير dapp الأولى في قسم التعليقات أدناه.