برگزاری دوره جامع آموزش برنامهنویسی سالیدیتی برای ورود به حوزه بلاکچین
آکادمی سیتکس «دوره جامع آموزش برنامهنویسی سالیدیتی» را برگزار میکند. شرکتکنندگان پس از گذراندن این دوره قادر خواهند بود تا مهارتهای لازم برای ورود به حوزه برنامهنویسی بلاکچین و به صورت خاص شبکههایی مانند اتریوم که از زبان سالیدیتی (Solidity) پشتیبانی میکنند را کسب کنند.
این دوره از تاریخ پنجشنبه ۱۲ مرداد آغاز خواهد شد و مدت زمان آن حدود ۴۰ ساعت خواهد بود و تا ۳۱ شهریور ادامه خواهد داشت. کاربران میهن بلاکچین با وارد کردن کد تخفیف اختصاصی میهن بلاکچین MIHANBLOCKCHAIN02 میتوانند با ۱۵٪ تخفیف در این دوره شرکت کنید. لازم به ذکر است این دوره هم برای علاقهمندان ورود به این حوزه و هم کسانی که تجربه در برنامهنویسی داشته باشند، مفید خواهد بود.
با فراگیر شدن قراردادهای هوشمند در فضای بلاکچین، نیاز به برنامهنویسان و توسعهدهندگان این حوزه نیز بسیار زیاد شده است. در این میان سالیدیتی یکی از محبوبترین زبانهای برنامهنویسی در میان توسعهدهندگان بلاکچین است که در شبکههای زیادی از آن استفاده میشود.
آکادمی سیتکس این دوره آموزشی را از روز پنجشنبه ۱۲ مرداد ساعت ۸ صبح شروع خواهد کرد تا با ارائه آموزش صفر تا صد برنامه نویسی با زبان سالیدیتی، دانش پذیران علاقمند به این حوزه را در هر سطحی از برنامه نویسی، در مسیر ایجاد تحول در مسیر شغلی، تحصیلی و مهاجرتی یاری نماید.
مدرس این دوره بهادر قدمخیر است که سابقه تالیف کتاب «آموزش برنامهنویسی سالیدیتی» را در کارنامه خود دارد. قرار است به استثنای جلسه اول، این دوره در روزهای پنجشنبه و جمعه برگزار شود که مدت برگزاری هر جلسه ۳ ساعت خواهد بود. لازم به ذکر است که تاریخ دقیق این جلسات پس از ثبت نام متقاضی از طریق تماس تلفنی به او اعلام خواهد شد.
سرفصلهای دوره آموزشی برنامهنویسی سالیدیتی
مدت زمان دوره آموزشی برنامهنویسی سالیدیتی حدود ۴۰ ساعت خواهد بود که مطابق با سر فصلهای زیر برگزار خواهد شد:
اصول اولیه توسعه قرارداد هوشمند: (۳ ساعت)
- آشنایی با برنامه نویسی مبتنی بر قرارداد (Contract Oriented Programming)
- ساختار یک قرارداد هوشمند
- معرفی زبان Solidity (یک زبان تورینگ کامل برای کدنویسی قرارداد هوشمند)
- آشنایی با محیط برنامه نویسی آنلاین Remix برای توسعه قرارداد هوشمند
- کامپایل اولین کد سالیدیتی
- ساختار کلی یک فایل سالیدیتی
- دیپلوی قرارداد هوشمند روی شبکه تست نت اتریوم
برنامهنویسی مقدماتی به زبان Solidity: (۱۵ ساعت)
- دیتا تایپهای سالیدیتی
- ساختارهای دادهای(متغیرها) در سالیدیتی
- معرفی انواع متغیرهای سالیدیتی
- سطوح دسترسی متغیرها در سالیدیتی
- scope ها در سالیدیتی
- Data Location ها در سالیدیتی
- مقادیر عددی در سالیدیتی
- Boolean در سالیدیتی
- Address ها در سالیدیتی
- انواع Address در اتریوم
- Enum / دیتا تایپ تعریف شده توسط کاربر
- BytesX
- آرایهها در سالیدیتی
- String در سالیدیتی
- Mapping در سالیدیتی
- Struct در سالیدیتی
- Bytes
- سطوح دسترسی توابع در سالیدیتی
- تعریف تابع در سالیدیتی
- ۴ گونه از توابع در سالیدیتی
- Modifier و کاربرد آن در سالیدیتی
- انواع روش های دریافت خروجی از توابع سالیدیتی
- overload کردن توابع سالیدیتی
- memory و calldata
- Constructor در قراردادهای هوشمند
- Constant و Immutable
- GlobalVariable ها (دسترسی به اطلاعات بلاک، گس، حافظه کانترکت، اطلاعات تراکنشها، timestamp و …)
- واحدهای زمانی سالیدیتی
- واحدهای پولی سالیدیتی
- Event ها در سالیدیتی
- ساختارهای شرطی سالیدیتی
- ساختارهای کنترلی و مدیریت حلقهها
- مدیریت خطا توسط Require ،Assert ،Revert
- تبدیل نوع در سالیدیتی
- نحوه حذف عنصری خاص از آرایه
- پیادهسازی قابلیت پیمایش در Mapping
- آشنایی و کار با Balance اکانتها و موجودی قرارداد هوشمند
- کار با توابع transfer و send و call جهت انتقال موجودی به یک اکانت دیگر
- توابع Fallback
- مدیریت پرداختهای اتر به یک قرارداد هوشمند
- شی گرایی در سالیدیتی (Object Oriented Programming)
- شروع ارث بری در سالیدیتی
- انواع ارث بری در سالیدیتی
- توابع Virtual
- بازنویسی یا Override کردن توابع سالیدیتی
- ارث بری Constructor ها در سالیدیتی
- ارث بری متغیرها در سالیدیتی
- polymorphism در سالیدیتی
- روش های ارتباط با قراردادهای هوشمند دیگر
- اینترفیس (Interface) در سالیدیتی
- کتابخانه (Library) در سالیدیتی
- شباهت و تفاوت کتابخانه و قرارداد
- از بین بردن قرارداد هوشمند
- آشنایی با کتابخانههای OpenZeppelin
- کار با کتابخانههای OpenZeppelin
- تولید اعداد تصادفی در سالیدیتی
برنامهنویسی پیشرفته در Solidity : (۶ ساعت)
- Storage Layout در سالیدیتی
- Function Selectors
- Function Signature / Function Body
- Call
- Static call
- Delegate call
- Factory Pattern
- آشنایی با Proxy Contract ها
- پیاده سازی قرارداد هوشمند به کمک Proxy
- Assembly در سالیدیتی
مدیریت دیتای خارج از زنجیره (off-chain) به کمک اوراکل ها (ChainLink, VRF, DataFeeds): (۲.۵ ساعت)
- آشنایی با مفهوم دیتای خارج از زنجیره (Off-Chain)
- آشنایی با اوراکل ها (دیتاسورس/ساختمان داده های شخص ثالث)
- مدیریت دیتای خارج از زنجیره با استفاده از Oracle ها در قرارداد هوشمند
- ChainLink
- DataFeeds
- تولید اعداد تصادفی در سالیدیتی با استفاده از اوراکل(VRF)
استانداردهای اتریوم: (۱ ساعت)
- بررسی استانداردهای مختلف در سالیدیتی
- آشنایی با استاندارد توکن ERC20
- پیاده سازی و توضیح توکن ERC20
- نصب و آماده سازی ابزارهای توسعه بلاک چین: (۱ ساعت)
- Metamsk
- Node.js و npm
- VSCode
- آشنایی با فریمورک های برنامه نویسی سالیدیتی
- Hardhat
- Truffle
- Ganache
کار با ابزارهای توسعه بلاک چین: (۴ ساعت)
- آشنایی با ساختار Hardhat
- انواع بلاکچین ها و نحوه استفاده در Hardhat
- آشنایی با کتابخانه Ethers.js
- پیاده سازی و کامپایل توکن استاندارد ERC20 در Hardhat
- اسکریپت نویسی در Hardhat
- دیپلوی توکن استاندارد ERC20 با استفاده از Hardhat در شبکه Local
- دیپلوی توکن استاندارد ERC20 با استفاده از Hardhat در شبکه Testnet
- دیپلوی توکن استاندارد ERC20 با استفاده از Hardhat در شبکه MainNet
- ساختار مورد نیاز جهت ارتباط با قراردادهای هوشمند توسط Ethers
- ارتباط با قراردادهای هوشمند با استفاده از کتابخانه Ethers
- ادغام قراردادهای هوشمند
- وریفای قراردادهای هوشمند بر روی بلاکچین
- نصب و تنظیم Truffle
- آشنایی با ساختار Truffle
- پیاده سازی قرارداد هوشمند ToDo list در Truffle
- کامپایل و دیپلوی قرارداد هوشمند ToDo list در Truffle
- تنظیم بلاکچین لوکال ganache
- آشنایی با کتابخانه web3.js
- ارتباط با قرارداد هوشمند در Truffle با استفاده از کتابخانه Web3.js
تست نویسی در سالیدیتی: (۱.۵ ساعت)
- نصب و آشنایی با Mocha و Chai
- تست نویسی (Unit-Test) قراردادهای هوشمند به کمک ابزارهای مربوطه
بهینه سازی Gas در سالیدیتی: (۲ ساعت)
- مفهوم Gas و اهمیت مدیریت گس در قرارداد هوشمند
- بهینه سازی قرارداد هوشمند جهت کاهش هزینه GAS
- تکنیک Pack کردن متغیرها و سایر تکنیک ها …
امنیت قراردادهای هوشمند: (۱.۵ ساعت)
- بررسی موارد امنیتی در قراردادهای هوشمند
- بررسی برخی از حمله های امنیتی در قراردادهای هوشمند
NFT ها: (۲.۵ ساعت)
- آشنایی با استاندارد ERC721 – توکن غیر مثلی(NFT)
- پیاده سازی یک کالکشن NFT
- مشاهده NFT در مارکت پلیس
- IPFS چیست؟
- نصب و استفاده از IPFS Desktop
- کار با nft.storage
- آپلود فایل بر روی IPFS و بدست آوردن CID
- دسترسی به فایل های ذخیره شده روی IPFS
نحوه شرکت در این دوره
شما از طریق سایت ایوند میتوانید برای شرکت در دوره آموزشی برنامهنویسی سالیدیتی اقدام کنید. هزینه این دوره برابر ۶,۸۰۰,۰۰۰ تومان است. برای دریافت مشاوره در مورد این دوره میتوانید از طریق شماره تلفن ۰۲۱۴۹۱۲۶ داخلی ۳۱۳ با آکادمی سیتکس تماس بگیرید. برای شرکت در این دوره و خواندن جزییات بیشتر به این لینک مراجعه کنید.
کاربران عزیز توجه داشته باشید که با وارد کردن کد تخفیف اختصاصی میهن بلاکچین میتوانید با ۱۵٪ تخفیف در این دوره شرکت کنید. کد تخفیف: MIHANBLOCKCHAIN02