آکادمی برنامه نویسان

لوگو

توضیحات دوره

این دوره چکیده‌‌ی کاربردی بیش از 20 دوره مختلف در حوزه بلاکچین و برنامه‌نویسی بر بستر بلاکچین و بالغ بر 500 ساعت تجربه در حوزه بلاکچین و رمز ارزها می‌باشد. در این دوره، سعی ما بر انتقال مطالب مهم و کاربردی، و همچنین ایجاد تفکر و خط مشی مناسب در یادگیری بلاکچین برای دانشجویان بوده است.

شما در این دوره چگونگی طراحی، کدنویسی، توسعه، ایجاد و اجرای قراردادهای هوشمند را خواهید آموخت. در واقع قرارداد های هوشمند و امکان اجرای عملیات و ویژگی های تعریف شده توسط کاربر را که از طریق پروتکل های ساده رمز نگاری امکان پذیر نیست را فراهم می سازند. به بیان ساده تر کاربران در قراردادهای هوشمند  می توانند شرایط، قوانین و سیاست های برنامه خود بر بستر بلاکچین را تعریف کنند.

در پایان این دوره به طراحی و توسعه برنامه های غیر متمرکز می پردازیم. توسعه بلاکچین با ایجاد  DApp ها، تکنولوژی نوظهور و برتری است که هم اکنون نیاز آن احساس شده و تضمین کننده آینده شغلی برنامه نویسان و علاقه مندان این حوزه می باشد. به طور کلی در پایان این دوره شما می توانید خود را بعنوان توسعه دهنده و برنامه نویس بلاکچین معرفی کنید.

ضمناً تجارب فعالیت‌های دنیای واقعی بلاکچین و برنامه نویسی اتریوم در این دوره با دانشجویان دوره مطرح خواهد شد.

پیش نیازها

  • برای شرکت در این دوره بهتر است که حداقل با یک زبان برنامه نویسی آشنا باشید. سایر مطالب آموزش داده خواهند شد و پس از پایان دوره آمادگی لازم جهت کدنویسی و توسعه بلاکچین را خواهید داشت. البته اگر آشنایی زیادی با برنامه‌نویسی هم نداشته باشید جای نگرانی نیست، و موارد مورد نیاز در طول دوره شرح داده خواهد شد.

مخاطبان این دوره

مخاطبین این دوره می توانند هر یک از افراد زیر باشند:

  • برنامه نویسان
  • دانشجویان علاقه مند به فناوری
  • علاقه مندان به تکنولوژی بلاکچین
  • ایده پردازان و سرمایه گذاران حوزه بلاکچین که با استفاده از DApp ایده خود را پیاده سازی و اجرا نمایند.

سرفصل دوره

مبانی بلاکچین :

  • کلیات و مقدمات موردنیاز
  • انواع شبکه‌ها
  • متمرکز و غیر متمرکز
  • توزیع شده و غیرتوزیع شده
  • همتا به همتا
  • تحول در اینترنت
  • مقدمات لازم رمزنگاری
  • بلاک چین چیست؟
  • داستان بلاک چین
  • پول فیات/پول دیجیتال
  • رمز ارز(کریپتو)
  • اجزای یک شبکه بلاک چین
  • ساختار بلاکچین
  • بلاک چین چگونه کار می کند؟
  • مفهوم node
  • ردیابی بلاک‌ها
  • انواع اجماع در بلاک چین:
  • POW یا اثبات کار
  • POS یا اثبات سهام
  • سایر الگوریتم های اجماع
     

معماری اتریوم

  • بیت کوین در مقابل اتریوم
  • ماشین مجازی اتریوم
  • مکانیزم های اجماع
  • DAO
  • قراردادهای هوشمند
  • سالیدیتی
  • مفهوم گس
  • هزینه‌ی حافظه در اتریوم
  • درخت مرکل
  • ساختار اتریوم
  • EIP
     

قرارداد هوشمند(اسمارت کانترکت)

  • قرارداد هوشمند چیست؟
  • مزایا و معایب قرارداد هوشمند
  • محیط های توسعه قرارداد هوشمند
  • بررسی استفاده های موردی قرارداد هوشمند
     

 

 

شروع سالیدیتی

  • معرفی زبان سالیدیتی
  • پیشنیازها
  • آشنایی با Remix Ide
  • بررسی کلیات فایل سالیدیتی
  • لایسنس های سالیدیتی
  • نسخه‌های سالیدیتی
  • ایمپورت در سالیدیتی
  • متغیرها در سالیدیتی
  • انواع داده‌ای یا دیتا تایپ های سالیدیتی
  • Mapping، Address
  • Modifier و کاربردش
  • Struct، Enum
  • Payable
  • Msg.sender
  • فانکشن ها
  • Constructor و اهمیتش در سالیدیتی
  • انواع دسترسی
  • event ها
  • ....
     

مباحث پیشرفته‌تر در سالیدیتی

  • ABI
  • ارث‌بری در سالیدیتی
  • کنترل خطا
  • بررسی توابع پرکاربرد و استاندارد ERC20
  • Gas Price و Gas Cost
  • Interface ها
  • Oracleها
  • قرارداد مدیریت دسترسی
  • Unit Testing
  • ...
     

آماده‌سازی ابزارهای توسعه بلاکچین

  • آشنایی با کیف پول‌ها
  • RPCها
  • شروع با Faucet
  • متامسک
  • Truffle
  • Ganache
  • Hardhat
     

دیپلوی قرارداد هوشمند

  • آشنایی با شبکه‌های اتریوم
  • Infura، Alchemy و ...
  • شبکه‌های منطبق بر اتریوم
  • فلت کردن قرارداد هوشمند
  • پیگیری وضعیت کانترکت در بلاکچین
  • برقراری ارتباط با قرارداد هوشمند
  • تثبیت و وریفای اسمارت کانترکت در اکسپلورر
     

اتصال به UI و شروع DApp

  • Web1/Web2
  • Web3 و ویژگی ها؟
  • تفاوت web3 با web2
  • شروع کار با UI
  • آشنایی با Web3.js / Web3.py / Web3.php
  • تعامل با شبکه اتریوم با Web3
  • تعامل با قرارداد هوشمند
  • دریافت اطلاعات والت کاربر
  • دریافت اطلاعات دارایی کاربر
  • ...
     

ساخت توکن استاندارد

  • توکن و کوین
  • انواع توکن
  • استاندارد ERC20
  • ساخت توکن اتریوم منطبق بر استاندارد ERC20
  • ساخت توکن اسمارت چین بایننس منطبق بر استاندارد BEP20
  • دیپلوی توکن‌ها بر بستر شبکه های موجود
  • افزودن ویژگی‌های خاص به توکن
  • ...
     

لیست کردن توکن در صرافی

  • آشنایی با مفاهیم صرافی های ارز دیجیتال
  • لیست کردن عملی توکن در صرافی
  • نحوه تعیین قیمت در صرافی
  • فرمول تغییرات قیمتی در صرافی
  • آشنایی با مفاهیم نقدینگی
  • مارکت کپ
     

سایر مباحث

  • Mempool
  • آشنایی با Moralis
  • آشنایی با Swarm و IPFS
  • بررسی مشاغل حوزه بلاکچین
  • راهنمایی و هدایت دانشجویان برای انتخاب مسیر در فضای بلاکچین
  • ....
     

برخی پروژه های این دوره

  • پیاده‌سازی یک بانک
  • پیاده‌سازی قرارداد هوشمند کیف پول
  • پیاده‌سازی سیستم رای‌گیری انتخابات
  • پیاده‌سازی صرافی غیرمتمرکز (پروژه انحصاری مخصوص سرآشپز!)
  • ...

اهداف این آموزش

  • یادگیری برنامه نویسی بلاک چین