دوره توسعه قراردادهای هوشمند با Solidity: صفر تا صد همراه با فلشکارت آموزشی — ارائه روی فلش مموری
📚 کتاب آموزشی جامع
📚 اطلاعات کتاب
عنوان کتاب: کتاب توسعه قراردادهای هوشمند با Solidity: صفر تا صد
موضوع کلی: برنامه نویسی
موضوع میانی: بلاکچین و قراردادهای هوشمند
📋 سرفصلهای کتاب (100 موضوع)
- 1. معرفی بلاکچین: چرا به آن نیاز داریم؟
- 2. مفاهیم اصلی بلاکچین: عدم تمرکز، رمزنگاری، دفتر کل توزیعشده
- 3. انواع بلاکچینها: عمومی، خصوصی، کنسرسیوم
- 4. اتریوم: پلتفرم قراردادهای هوشمند
- 5. ماشین مجازی اتریوم (EVM) و عملکرد آن
- 6. قراردادهای هوشمند چیستند و چگونه کار میکنند؟
- 7. کاربردهای قراردادهای هوشمند در دنیای واقعی
- 8. معرفی زبان Solidity و انتخاب ابزار توسعه (Remix IDE)
- 9. تنظیم محیط توسعه محلی: Node.js و NVM
- 10. ساختار کلی یک قرارداد Solidity: Pragma و SPDX License
- 11. انواع دادههای پایه: Boolean، Integer (int, uint)
- 12. انواع دادههای پایه: Address
- 13. انواع دادههای پایه: Bytes و Fixed-size Arrays
- 14. انواع دادههای پیچیدهتر: Enums و Structs
- 15. Reference Types: Arrays (Static, Dynamic)
- 16. Reference Types: Mappings
- 17. Reference Types: Strings
- 18. متغیرها: State Variables، Local Variables، Global Variables
- 19. عملگرها در Solidity (ریاضی، مقایسهای، منطقی، بیتی)
- 20. ساختارهای کنترلی: If/Else, Ternary Operator
- 21. حلقهها: For, While, Do-While
- 22. توابع: تعریف، ورودی، خروجی
- 23. Visibility توابع: Public, Private, Internal, External
- 24. توابع خالص (Pure) و View
- 25. Modifierها: چرا و چگونه از آنها استفاده کنیم؟
- 26. رویدادها (Events) برای لاگبرداری و ارتباط با فرانتاند
- 27. مدیریت خطا: Require, Revert, Assert
- 28. واحدهای اتر (Ether Units): Wei, Gwei, Ether
- 29. متغیرهای گلوبال مهم: msg.sender, msg.value, block.timestamp
- 30. Deployment و فراخوانی اولین قرارداد هوشمند در Remix
- 31. نوشتن اولین قرارداد: یک Storage ساده
- 32. ارثبری (Inheritance) در Solidity
- 33. واسطها (Interfaces) و کاربرد آنها
- 34. قراردادهای انتزاعی (Abstract Contracts)
- 35. کتابخانهها (Libraries) در Solidity و مزایای آنها
- 36. مفهوم Data Location: Storage, Memory, Calldata
- 37. توابع Fallback و Receive: مدیریت Ether ارسالی
- 38. ارسال و دریافت اتر: transfer, send, call
- 39. ارتباط بین قراردادها: فراخوانی توابع قراردادهای دیگر
- 40. Low-level Calls: call(), delegatecall(), staticcall()
- 41. خطرات امنیتی Delegatecall و نحوه جلوگیری از آن
- 42. Gas: مفهوم، محاسبه و بهینهسازی Gas Costs
- 43. مدیریت خودکار Gas با استفاده از OpenZeppelin
- 44. Hash Functions در Solidity: keccak256, sha256
- 45. امضاهای دیجیتال در اتریوم: ecrecover
- 46. توابع داخلی (Built-in Functions) و کاربردهای آنها
- 47. Type Casting و Conversion در Solidity
- 48. مدیریت زمان در قراردادهای هوشمند: block.timestamp vs block.number
- 49. استفاده از کتابخانههای خارجی (External Libraries)
- 50. شروع کار با Hardhat: نصب و تنظیمات اولیه
- 51. ساختار پروژه Hardhat: Contracts, Scripts, Tests
- 52. نوشتن تستهای واحد (Unit Tests) با Hardhat و Chai
- 53. استقرار قراردادها (Deployment) با Hardhat Scripts
- 54. شبکه Hardhat: شبیهساز لوکال برای توسعه
- 55. Hardhat Ethers و Hardhat Web3 برای تعامل با قرارداد
- 56. معرفی Ethers.js: اتصال به بلاکچین و کار با قراردادها
- 57. معرفی Web3.js: جایگزین Ethers.js و تفاوتها
- 58. اتصال DApp به کیف پولها (مثلاً MetaMask)
- 59. توسعه فرانتاند ساده با React/Vue و اتصال به قرارداد هوشمند
- 60. OpenZeppelin Contracts: مجموعهای از قراردادهای استاندارد و امن
- 61. استفاده از Access Control (Ownable, Roles) از OpenZeppelin
- 62. قراردادهای قابل توقف (Pausable) از OpenZeppelin
- 63. معرفی IPFS: ذخیرهسازی غیرمتمرکز فایلها
- 64. Chainlink Oracles: دریافت دادههای خارج از بلاکچین
- 65. توسعه DApp با Moralis/Alchemy/Infura (بررسی APIهای Node)
- 66. آسیبپذیری Reentrancy و نحوه جلوگیری از آن
- 67. Integer Overflow و Underflow: تهدیدها و راهکارها
- 68. حملات Front-running و Sandwiched Attacks
- 69. استفاده از tx.origin به جای msg.sender و خطرات آن
- 70. وابستگی زمانی (Timestamp Dependence) و ملاحظات امنیتی
- 71. حملات Denial of Service (DoS) در قراردادهای هوشمند
- 72. Short Address Attack و آسیبپذیریهای مرتبط
- 73. الگوهای امنیتی: Checks-Effects-Interactions
- 74. الگوهای امنیتی: Pull vs Push برای ارسال اتر
- 75. معرفی ابزارهای تحلیل استاتیک (Static Analysis): Slither
- 76. معرفی ابزارهای تحلیل دینامیک (Dynamic Analysis): MythX (concept)
- 77. برنامههای Bug Bounty و اهمیت آنها
- 78. مراحل انجام یک ممیزی امنیتی پایه (Basic Security Audit)
- 79. استاندارد ERC-20: ساخت یک توکن قابل مبادله
- 80. استاندارد ERC-721: ساخت توکنهای غیرمثلی (NFT)
- 81. استاندارد ERC-1155: Multitoken Standard
- 82. Upgradeability Patterns: Proxy Contracts (Transparent, UUPS)
- 83. پیادهسازی Proxy Contracts با OpenZeppelin Upgrades
- 84. مفهوم DAO (Decentralized Autonomous Organization)
- 85. ساختار کیف پولهای Multisig (چند امضایی)
- 86. Flash Loans: وامهای لحظهای بدون وثیقه
- 87. Meta-transactions: پرداخت Gas توسط شخص ثالث
- 88. معرفی Account Abstraction (ERC-4337) و مزایای آن
- 89. مقیاسپذیری اتریوم: Layer 2 Solutions (Rollups, Sidechains)
- 90. ارتباط Cross-chain: مفاهیم و چالشها
- 91. پروژه عملی: ساخت یک توکن ERC-20 با قابلیت Mint و Burn
- 92. پروژه عملی: ساخت یک مجموعه NFT با استفاده از ERC-721
- 93. پروژه عملی: ساخت یک پلتفرم رأیگیری غیرمتمرکز
- 94. پروژه عملی: پیادهسازی یک Crowdfunding ساده
- 95. پروژه عملی: ساخت یک Decentralized Exchange (DEX) Swap
- 96. پروژه عملی: پیادهسازی یک Market برای NFTها
- 97. استقرار قراردادها در شبکههای تستی (Testnets) و Mainnet
- 98. بهینهسازی Gas برای استقرار و تعامل با Mainnet
- 99. ملاحظات پس از استقرار: Monitoring و نگهداری
- 100. جمعبندی دوره و منابع بیشتر برای یادگیری پیشرفته
محتویات بسته آموزشی
🌐 سامانه آنلاین فلشکارت؛ مرور هدفمند و هوشمند
اکانت ارائهشده، دسترسی به نسخه تحت وب سامانه فلشکارت ویژه این دوره را فراهم میکند. این سامانه از الگوریتم زمانبندی مرور SM-2 استفاده میکند و بر اساس ارزیابی شما از میزان یادآوری هر کارت، زمان مرورهای بعدی را تنظیم میکند.
به این ترتیب، کارتهای دشوارتر میتوانند زودتر مرور شوند و برای تثبیت مطالب در حافظه، برنامه مرور متناسبتری داشته باشید.
مدتزمان معادل آموزشی بر اساس برآورد این دوره در گواهی درج میشود.
گواهی دوزبانه با استعلام آنلاین
پس از تکمیل فعالیتهای لازم و تأیید درخواست، گواهی پایان دوره به زبان فارسی و انگلیسی صادر میشود. گواهی دارای لینک اختصاصی و QR Code برای بررسی و استعلام آنلاین است.
این گواهی صرفاً بهعنوان گواهی اتمام دوره آموزشی صادر میشود و معادل مدرک دانشگاهی، آکادمیک یا مدرک رسمی مورد تأیید نهادهای دولتی نیست. صدور آن منوط به تکمیل شرایط دوره و تأیید نهایی درخواست است.
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.