التصنيفات

عشر أدوات لتطوير البلوك تشين: قائمة 2023

mm
أضف Securities.io إلى مصادرك المفضلة على Google
إفصاح: قد تتلقى Securities.io تعويضًا عند استخدام روابط لمنتجات نراجعها. لا يؤثر ذلك في تقييماتنا التحريرية. لسنا مستشارًا استثماريًا مسجلًا، وهذا ليس نصيحة استثمارية. اقرأ إفصاح الشراكات التسويقية.
Top 10 Blockchain Programming Tools

قد توفر أدوات التطوير الوقت عند بناء تطبيقات البلوك تشين. تضم هذه القائمة المنشورة في 2023 عشر لغات وبرامج وفئات من البنية التحتية. وتختلف حالة صيانتها؛ فبعض المشاريع كان قد توقف بالفعل أو كان في طريقه إلى الإغلاق.

1. Solidity

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

ساهمت منظومة واسعة من المكتبات والأدوات في انتشارها. تناسب Solidity تطبيقات كثيرة متوافقة مع إيثيريوم، لكنها لم تخترع مفهوم العقد الذكي نفسه.

المصدر: Soliditylang.org — أدوات تطوير البلوك تشين

المصدر – Soliditylang.org


تتوفر لـ Solidity وثائق وأمثلة ومكتبات كثيرة. تُترجم الشيفرة المصدرية إلى شيفرة تستطيع آلة إيثيريوم الافتراضية (EVM) تنفيذها. ويعود رابط وثائق الإصدار 0.8.21 إلى الفترة الأصلية للمقال.

2. MetaMask

يستخدم المطور غالبًا محفظة للتفاعل مع التطبيقات اللامركزية. توفر MetaMask إضافة للمتصفح وتطبيقًا للهاتف، إلى جانب وظائف لإدارة الحسابات والاتصال بالتطبيقات وتوقيع المعاملات.

يمكنها الاتصال بالشبكات وشبكات الاختبار المدعومة. ولا يؤدي تغيير الشبكة تلقائيًا إلى نقل الأصول بين سلاسل الكتل؛ فهذا يتطلب وظائف أو خدمات منفصلة. المحفظة ليست شبكة بلوك تشين بحد ذاتها ولا تضمن أمان التطبيق أو سيولته.

3. Truffle

كانت Truffle بيئة معروفة لتطوير عقود إيثيريوم الذكية، وليس رموز ERC-20 وحدها. وقدمت ترجمة الشيفرة ونشر العقود وربط المكتبات والاختبارات الآلية بأدوات مثل Mocha وChai.

في 21 سبتمبر 2023، أعلنت Consensys إنهاء Truffle وGanache وأرشفة مستودعات الشيفرة علنًا اعتبارًا من 20 ديسمبر 2023. ووجهت المستخدمين إلى بدائل منها Hardhat وFoundry. لذلك تظهر Truffle هنا كأداة تاريخية، لا كنقطة بداية ضرورية تحظى بصيانة نشطة للمشاريع الجديدة.

4. شبكات اختبار البلوك تشين

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

تختلف شبكات الاختبار العامة عن شبكات التطوير المحلية. كانت Ganache سلسلة كتل محلية للتطوير ضمن منظومة Truffle، وليست شبكة اختبار عامة لإيثيريوم. وقد وُضح توقف صيانتها أعلاه.

تتيح البيئة المحلية التحكم وإجراء تجارب سريعة. وتساعد شبكة الاختبار العامة على تجربة التفاعلات في بيئة مشتركة، لكن الأحمال والظروف الاقتصادية قد تختلف عن الشبكة الرئيسية. رموز الاختبار مخصصة للتجارب دون استخدام أصول حقيقية من الشبكة الرئيسية؛ ولا يخفض استخدام شبكة الاختبار تلقائيًا رسوم الغاز للتطبيق عند تشغيله الفعلي.

5. البلوك تشين كخدمة (BaaS)

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

يبقى العميل مسؤولًا عن أمور مثل منطق التطبيق وصلاحيات الوصول والإعدادات والاختبارات. ولا تلغي الخدمة السحابية المُدارة تلقائيًا جميع مهام الصيانة والأمان.

يعتمد التكامل مع الأنظمة القائمة على الواجهات المتاحة والمتطلبات التقنية. توفر Amazon (AMZN ) خدمة AWS Managed Blockchain؛ أما AWS Amplify فهي أدوات لتطبيقات الويب والهاتف يمكن دمجها مع خدمات أخرى. وكانت Microsoft (MSFT ) تقدم Azure Blockchain Service، لكن هذه الخدمة المحددة توقفت في 10 سبتمبر 2021. ولا يعني ذلك توقف جميع خدمات Azure. وينبغي التمييز بين هذه الأسماء عند تقييم الأمثلة التاريخية في المقال.

6. Geth

Geth هو عميل تنفيذ لإيثيريوم مكتوب بلغة Go. يتولى وظائف منها معالجة المعاملات وتنفيذ EVM وإدارة الحالة وواجهات البرمجة. ويمكن للمطورين استخدامه لنشر العقود وقراءة معلومات الشبكة.

منذ انتقال إيثيريوم إلى إثبات الحصة في 2022، تحتاج العقدة الكاملة أيضًا إلى عميل إجماع. ولا ينشئ Geth جسورًا تلقائية بين شبكات ERC-20؛ إذ إن ERC-20 معيار للرموز وليس شبكة مستقلة. ولم يعد تعدين الكتل مستخدمًا على شبكة إيثيريوم الرئيسية، ولا يلزم كتابة العقود بلغة Go.

7. Mist

كان Mist متصفحًا مستقلًا للتطبيقات اللامركزية، مع وظائف محفظة واتصال بعقدة إيثيريوم. وكان مختلفًا عن إضافة المتصفح، وتوفر تاريخيًا لأنظمة Linux وmacOS وWindows. وكان تشغيل عقدة كاملة يتطلب مساحة تخزين كبيرة.

في 27 مارس 2019، أعلن المطورون توقف دعم Mist وEthereum Wallet. وقد أُرشف مستودع الشيفرة. لذلك لم يكن Mist توصية حديثة حتى في 2023، ولا يثبت وضعه الرسمي السابق أنه آمن. ويُذكر هنا لشرح تاريخ المنظومة.

8. Remix IDE

Remix IDE بيئة تطوير تدعم Solidity وغيرها من مهام التطوير، وتتوفر في المتصفح وكتطبيق مكتبي. تساعد في كتابة العقود الذكية وترجمة الشيفرة وتحليلها واختبارها ونشرها. ويمكن البدء بمحاكاة محلية ثم استخدام شبكة اختبار أو الشبكة الرئيسية عبر اتصال متوافق. ولا تحل الأداة محل تقييم شامل للأمان.

9. Ethlint

يفحص Ethlint، المعروف سابقًا باسم Solium، قواعد الأسلوب وبعض مشكلات الأمان في شيفرة Solidity، ويمكنه إصلاح بعض المشكلات تلقائيًا. ووفق الوثائق، لا تتلقى حزمة solium القديمة تحديثات بعد ديسمبر 2019، ويُوجَّه المستخدمون إلى ethlint.

لا يكتشف المدقق جميع الأخطاء ولا يحل محل الاختبارات أو التدقيق الأمني. ولا تؤدي مخالفة قاعدة أسلوبية بالضرورة إلى تعطل التطبيق؛ فالتنسيق والأخطاء الوظيفية مختلفان. ويجب أيضًا التحقق من التوافق مع إصدار Solidity المستخدم.

10. Solc

Solc هو مترجم Solidity. ينتج من الشيفرة المصدرية مخرجات منها الشيفرة البايتية ووصف ABI الذي تستخدمه التطبيقات للتواصل مع العقد.

كُتب المترجم الأصلي بلغة C++، وتتيح solc-js الوصول إلى المترجم نفسه من JavaScript. ولا يعني ذلك أن solc يترجم عقودًا مكتوبة بلغة C++ أو JavaScript؛ فلغة الإدخال هي Solidity. ويجب أن تلائم الإعدادات العقد والشبكة المستهدفة.

اختيار أدوات تطوير البلوك تشين

تغطي البنود العشرة مراحل مختلفة من التطوير. قيّم الوظائف وحالة الصيانة والتوافق قبل الاختيار. قد تسهل الأدوات العمل، لكن صحة العقود تتطلب أيضًا البحث والاختبار ومراجعة الأمان.

ديفيد هاميلتون هو صحفي بدوام كامل ومستخدم لبيتكوين منذ فترة طويلة. يختص في كتابة مقالات عن البلوك تشين. تم نشر مقالاته في منشورات بيتكوين متعددة بما في ذلك Bitcoinlightning.com