آموزش جامع توسعه اپلیکیشنهای Hyperledger Fabric 2.1 با GoLang و Node SDK
توسعه اپلیکیشنهای Fabric 2.1 از ابتدا تا انتها با استفاده از GoLang و Fabric Node SDK
توسعه Chaincode با GoLang
توسعه اپلیکیشن با Fabric Node SDK
استفاده از Private Data
کاربرد Instantiation & Endorsement Policies
پشتیبانی از Rich Queries & Asset History
پیادهسازی کنترل دسترسی برنامهنویسی با "Client Identity Library"
ابزارهای تست Chaincode مانند Golang Testing Framework & MockStub
پیشنیازهای دوره
- درک پایه از Hyperledger Fabric | Distributed Ledger Technology
- دانش پایه GoLang (نیازی به تخصص نیست)
- آشنایی با Docker (امکان مراجعه به مستندات وجود دارد)
- راحتی کار با ترمینال لینوکس | اسکریپتهای Shell
- توانایی نصب نرمافزار بر روی سیستم
- آشنایی با Node.js مزیت محسوب میشود (چون دوره Node SDK را نیز پوشش میدهد)
- یک کامپیوتر شخصی (PC یا Mac) با اتصال اینترنت مناسب
نکته:
- آپدیت دوره برای Fabric 2.1 در آوریل ۲۰۲۰
چالشهای توسعه Chaincode Hyperledger Fabric برای توسعهدهندگان:
- کمبود مستندات از دیدگاه توسعهدهنده
- نیاز به راهاندازی محیط توسعه Fabric
- عدم وجود ابزارهای توسعه | رویههای استاندارد
- عدم وجود راهنمای جامع برای توسعه پربازده chaincode
این دوره تلاشی است برای رفع تمام این چالشها.
- مثال: دانشجو نیازی به صرف وقت برای راهاندازی محیط توسعه از ابتدا ندارد – دوره "اجرای یک کلیک" را ارائه میدهد.
- مثال: دوره ابزارهای توسعهای را ارائه میدهد که به توسعهدهندگان کمک میکند بر یادگیری کد تمرکز کنند.
- مثال: نحوه بهرهبرداری از مفاهیم مختلف Fabric برای ساخت chaincode کاربردی به صورت گام به گام نمایش داده میشود.
- مثال: chaincode کاربردی برای تمام مفاهیم پوشش داده شده در دوره.
- مثال: دستورات مورد استفاده برای اهداف توسعه (که در اسکریپتهای کمکی به عنوان بخشی از دوره بستهبندی شدهاند).
اسکریپتهای کمکی
- اسکریپتهای کمکی برای افزایش بهرهوری توسعهدهنده ارائه شدهاند؛ دستورات طولانی در خط فرمان دشوار هستند.
- ممکن است لازم باشد دانشجو به تنهایی برخی از اسکریپتهای کمکی را بررسی کند.
لطفاً اگر تمایلی به استفاده از اسکریپتهای بهرهوری/توسعه ندارید و ترجیح میدهید دستورات طولانی را در ترمینال وارد کنید، در این دوره شرکت نکنید :-)
نکات مهم:
- این دوره عملی است. اگر تجربه کدنویسی ندارید، لطفاً شرکت نکنید.
- پیشنمایش درسها را مشاهده کنید. اگر لهجه یا سرعت تدریس من را متوجه نمیشوید، لطفاً شرکت نکنید :-)
ویژگیهای برجسته دوره:
- محیط توسعه آماده استفاده با پیکربندیهای مختلف (مخزن پروژه قابل دانلود است).
- راهاندازی Hyperledger Explorer که دانشجویان میتوانند برای مشاهده گرافیکی شبکه از آن استفاده کنند.
- ارائه ابزارها/اسکریپتهای کاربرپسند تا توسعهدهندگان بتوانند بر یادگیری توسعه Chaincode تمرکز کنند.
- بخشها با بررسی مفاهیم آغاز میشوند. درسهای راهنما، مفاهیم را در عمل با کد واقعی نشان میدهند.
- هر بخش نیاز به کدنویسی (تمرین) توسط دانشجو دارد.
- تمام بخشها | تقریباً تمام درسها نیاز به فعالیت عملی توسط دانشجو دارند.
چیدمان دوره:
- راهاندازی محیط توسعه
- مبانی پلتفرم Fabric از دیدگاه توسعه
- ساختار Chaincode GoLang
- تست واحد | تست یکپارچگی chaincode
- طراحی برای Private Data | تراکنشها
- تنظیم Endorsement Policies
- پرسوجو با توابع Rich Query (با استفاده از CouchDB)
- دسترسی به تاریخچه دارایی (Asset History)
- پیادهسازی کنترل دسترسی | احراز هویت با استفاده از "Client Identity Library"
- ساخت اپلیکیشن با استفاده از Fabric Node SDK
چه مواردی در این دوره پوشش داده نمیشود؟
- مبانی Hyperledger Fabric
- جزئیات باینریهای Fabric مانند peer, orderer, configtxgen, cryptogen ...
- Hyperledger Fabric Certificate Authority (دوره عمدتاً از crypto تولید شده توسط cryptogen استفاده میکند)
- طراحی و راهاندازی Multi Org Setup
تمام موارد بالا در دورههای دیگر من پوشش داده شدهاند. لطفاً آنها را بررسی کنید.
Rajeev Sakhuja
نمایش نظرات