کتاب توسعه قراردادهای هوشمند با Solidity: صفر تا صد با فرمت AZW3 برای کتابخوان کیندل و فرمت EPUB
توسعه قراردادهای هوشمند با Solidity: صفر تا صد - دروازه شما به آینده بلاکچین توسعه قراردادهای هوشمند با Solidity: صفر تا صد - دروازه شما به آینده بلاکچین آیا آمادهاید تا وارد دنیای هیجانانگیز و پرتق...
🎓 دوره آموزشی جامع
📚 اطلاعات دوره
عنوان دوره: دوره توسعه قراردادهای هوشمند با Solidity: صفر تا صد
موضوع کلی: برنامه نویسی
موضوع میانی: بلاکچین و قراردادهای هوشمند
📋 سرفصلهای دوره
- 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. جمعبندی دوره و منابع بیشتر برای یادگیری پیشرفته
تگها:
Blockchain
Smart Contract
Smart Contract Development
Solidity
Solidity tutorial
آموزش Solidity
آموزش بلاکچین
برنامه نویسی
برنامه نویسی بلاکچین
بلاکچین
توسعه قرارداد هوشمند
دوره Solidity
دوره قرارداد هوشمند
قرارداد هوشمند
قرارداد هوشمند چیست
نظرات
هنوز نظری ثبت نشده است.
وارد شوید تا نظر ثبت کنید.