تطوير تطبيقات Web3 وبرمجة العقود الذكية (Blockchain & Web3 Development)
🚀 مسار الدروس
- 1مدخل إلى Web3: ما هو البلوكتشين ولماذا يغير شكل الإنترنت والأنظمة المالية؟
- 2التشفير والمفاتيح: كيف تعمل المحافظ الرقمية (Public & Private Keys) برمجياً؟
- 3إعداد بيئة التطوير: تثبيت محفظة MetaMask والاتصال بشبكات الاختبار (Testnets)
- 4الحصول على عملات تجريبية مجانية (Faucet) للبدء في نشر واختبار العقود الذكية
- 5محرر Remix IDE: كتابة ونشر أول عقد ذكي (Smart Contract) على المتصفح مباشرة
- 6أساسيات لغة Solidity: أنواع البيانات والمتغيرات (State Variables)
- 7الدوال (Functions) في Solidity: من يمكنه قراءة وتعديل بيانات العقد؟
- 8التكاليف (Gas Fees): كيف يحسب البلوكتشين تكلفة تنفيذ الأكواد؟
- 9أنواع الدوال : فهم view و pure لتوفير رسوم الـ Gas
- 10المصفوفات (Arrays) في Solidity: تخزين وإدارة قوائم البيانات داخل العقد الذكي
- 11القواميس (Mappings): أسرع طريقة لربط عناوين المحافظ بأرصدتها (Key-Value)
- 12الهياكل (Structs): تصميم أنواع بيانات مخصصة (مثل: كائن يمثل موظف أو منتج)
- 13الأحداث (Events): كيف يخبر العقد الذكي واجهة الموقع (React) بأن شيئاً ما قد حدث؟
- 14الجمل الشرطية (If/Else) وحلقات التكرار (For/While) داخل العقود الذكية
- 15المعدلات (Modifiers): حماية الدوال برمجياً (مثل: السماح للمدير فقط بتنفيذ الأمر)
- 16التعامل مع الأخطاء وإرجاع الأموال: استخدام require, assert, revert
- 17استلام وإرسال الأموال (Ether) برمجياً: فهم الدوال payable و fallback
- 18مشروع مصغر: بناء عقد ذكي لـ “حصالة إلكترونية” (Piggy Bank) تستقبل وتسحب الأموال
- 19الوراثة (Inheritance): بناء عقود ذكية متقدمة بالاعتماد على أكواد عقود سابقة
- 20التفاعل بين العقود الذكية: كيف تجعل عقداً يستدعي دالة من عقد آخر؟
- 21الواجهات (Interfaces): التحدث مع عقود ذكية لا تملك كودها المصدري (مثل منصات التبادل)
- 22إدارة الذاكرة بذكاء: الفرق الحاسم بين Storage, Memory, و Calldata
- 23معيار ERC-20: ما هي الرموز المميزة (Tokens) وكيف يتم إنشاؤها؟
- 24استخدام مكتبة OpenZeppelin لكتابة عقود ذكية آمنة ومختبرة مسبقاً
- 25مشروع تطبيقي: برمجة وإطلاق عملتك الرقمية الخاصة (Cryptocurrency) على شبكة حقيقية
- 26معيار ERC-721: ما هي الرموز غير القابلة للاستبدال (NFTs) برمجياً؟
- 27مشروع تطبيقي: برمجة عقد ذكي لسك (Minting) مجموعة NFTs لصور فنية
- 28تخزين بيانات الـ NFTs: لماذا نستخدم IPFS بدلاً من السيرفرات العادية؟
- 29كتابة سكربت لرفع بيانات وصور الـ NFTs آلياً إلى شبكة IPFS اللامركزية
- 30الانتقال إلى بيئة العمل الاحترافية: تثبيت إطار عمل Hardhat باستخدام Node.js
- 31إعداد مشروع Hardhat وكتابة أول سكربت JavaScript لترجمة (Compile) العقد الذكي
- 32اختبار العقود الذكية محلياً: كتابة اختبارات الوحدة (Unit Tests) باستخدام Chai & Mocha
- 33أتمتة نشر العقود (Deployment): كتابة سكربت لرفع العقد إلى شبكة Ethereum و Polygon
- 34ربط العقد الذكي بالإنترنت (Oracles): استخدام Chainlink لجلب بيانات فعلية (مثل سعر الدولار)
- 35العشوائية الحقيقية في البلوكتشين: استخدام Chainlink VRF لبرمجة يانصيب أو ألعاب عادلة
- 36أمن العقود الذكية (1): ثغرة إعادة الدخول (Reentrancy Attack) الشهيرة وكيفية استغلالها
- 37أمن العقود الذكية (2): الحماية من ثغرة Reentrancy باستخدام ReentrancyGuard
- 38أمن العقود الذكية (3): ثغرة التلاعب بالأرقام الصحيحة (Integer Overflow/Underflow)
- 39هندسة الويب اللامركزي (Web3.js & Ethers.js): كيف نربط الواجهات بالعقود الذكية؟
- 40إعداد واجهة React.js وتثبيت مكتبة Ethers.js للاتصال بالبلوكتشين
- 41الاتصال بمحفظة المستخدم: كتابة كود يطلب من الزائر ربط محفظة MetaMask بموقعك
- 42قراءة البيانات من البلوكتشين وعرضها في واجهة الموقع مجاناً
- 43كتابة البيانات وإرسال المعاملات (Transactions) من واجهة الويب إلى العقد الذكي
- 44الاستماع إلى الأحداث (Events) وتحديث واجهة React لحظياً عند تغير البيانات
- 45مشروع شامل (الجزء 1): بناء منصة تمويل جماعي (Crowdfunding) لامركزية – العقد الذكي
- 46مشروع شامل (الجزء 2): كتابة اختبارات الأمان (Tests) لمنصة التمويل الجماعي
- 47مشروع شامل (الجزء 3): نشر العقد وبناء واجهة React للسماح للناس بالتبرع للمشاريع
- 48مقدمة في التمويل اللامركزي (DeFi): كيف تعمل منصات التبادل مثل Uniswap برمجياً؟
- 49برمجة مجمعات السيولة (Liquidity Pools): كيف يتم التبادل بدون وسيط مركزي؟
- 50ما هو القرض الخاطف (Flash Loan)؟ وكيف تقترض ملايين الدولارات لثوانٍ برمجياً؟
- 51كتابة عقد ذكي ينفذ Flash Loan عبر منصة Aave لتحقيق أرباح من فروقات الأسعار
- 52المنظمات المستقلة اللامركزية (DAOs): كيف تبرمج نظام تصويت إلكتروني غير قابل للتزوير؟
- 53ترقية العقود الذكية (Upgradeable Contracts): كيف تحدث الكود بعد نشره على البلوكتشين؟
- 54استخدام نمط Proxy Contracts لفصل البيانات عن المنطق لتسهيل التحديثات المستقبلية
- 55استكشاف البلوكتشين البديلة: لماذا يفضل المطورون Solana للسرعة العالية؟
- 56نظرة سريعة على لغة Rust: أساسيات لبرمجة العقود الذكية على شبكة Solana
- 57تثبيت بيئة عمل Solana وإطار عمل Anchor لتسهيل كتابة العقود
- 58كتابة ونشر أول برنامج (Program) على شبكة Solana المحلية
- 59تطوير واجهة (DApp) تتصل بشبكة Solana باستخدام محفظة Phantom
- 60فهرسة بيانات البلوكتشين: استخدام بروتوكول The Graph لاستعلام البيانات بسرعة عبر GraphQL
- 61التحقق من الكود المصدري: كيف تنشر كود عقدك علناً على Etherscan ليكسب ثقة المستخدمين؟
- 62تحسين استهلاك الـ Gas: حيل وأسرار متقدمة في Solidity لتقليل رسوم المعاملات
- 63النشر السحابي (Deployment): رفع واجهة تطبيق الـ DApp الخاص بك على Vercel
- 64إنشاء محفظة متعددة التوقيع (Multi-sig Wallet) لحماية أموال الشركات عبر العقود الذكية
- 65كيف تبدأ مسيرتك كمطور Web3 و Blockchain؟ وبناء معرض أعمالك (Portfolio)