آموزش Solidity & Ethereum in React (JS بعدی): راهنمای کامل

Solidity & Ethereum in React (Next JS): The Complete Guide

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
توضیحات دوره: با React & Next JS قراردادهای هوشمند واقعی در Solidity و DApps ایجاد کنید. نحوه عملکرد بلاک چین اتریوم را درک کنید. برنامه های واقعی را در بلاک چین ایجاد کنید. قراردادهای هوشمند و DApps را به راحتی بسازید. موضوعات پیچیده اتریوم را به روشی کاربردی و سرگرم‌کننده درک کنید، جعبه ابزار کاملی را برای کار با هر بلاک‌هین دریافت کنید. پیش نیازها: دانش پایه React JS. داشتن دانش HTML و CSS خوب است اما الزامی نیست. تمایل به یادگیری مفاهیم جدیدی که از ابتدا می تواند سخت به نظر برسد.

اتریوم چیست؟

اتریوم فناوری است که به شما امکان می‌دهد ارز دیجیتال را برای هر کسی بفرستید، اما در وهله اول برنامه‌هایی را نیز تقویت می‌کند که همه می‌توانند از آنها استفاده کنند و هیچ‌کس نمی‌تواند آن را حذف کند. این بلاک چین قابل برنامه ریزی در جهان است.

اتریوم بر پایه نوآوری بیت کوین استوار است، با چند تفاوت بزرگ.

هر دو به شما امکان می دهند بدون ارائه دهندگان پرداخت یا بانک از پول دیجیتال استفاده کنید. اما اتریوم قابل برنامه ریزی است، بنابراین می توانید از آن برای بسیاری از دارایی های دیجیتال مختلف - حتی بیت کوین - استفاده کنید.

این همچنین به این معنی است که اتریوم بیشتر از پرداخت است. این بازار خدمات مالی، بازی‌ها و برنامه‌هایی است که نمی‌توانند داده‌های شما را بدزدند یا شما را سانسور کنند. این آینده است.

Solidity چیست؟

Solidity یک زبان شی گرا و سطح بالا برای اجرای قراردادهای هوشمند است. قراردادهای هوشمند برنامه‌هایی هستند که رفتار حساب‌ها را در حالت اتریوم کنترل می‌کنند.

Solidity یک زبان فرفری است. این برنامه تحت تأثیر C++، پایتون و جاوا اسکریپت است و برای هدف قرار دادن ماشین مجازی اتریوم (EVM) طراحی شده است. می‌توانید جزئیات بیشتری درباره زبان‌هایی که Solidity از آنها الهام گرفته است را در بخش تأثیرات زبان پیدا کنید.

Solidity به صورت ایستا تایپ می‌شود، از وراثت، کتابخانه‌ها، و انواع پیچیده تعریف‌شده توسط کاربر، از جمله ویژگی‌های دیگر پشتیبانی می‌کند.

با Solidity، می‌توانید قراردادهایی برای استفاده‌هایی مانند رای دادن، تأمین مالی جمعی، حراج‌های کور و کیف پول‌های چند امضایی ایجاد کنید.

این دوره شامل چه مواردی است؟

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

دانش آموزان یاد خواهند گرفت که قراردادهای هوشمند چیست و چگونه آنها را ایجاد کنند. قراردادهای هوشمند دست در دست هم با dApps (برنامه های غیرمتمرکز) پیش می روند. این دوره آنها را نیز پوشش می دهد.

فروند برای dApps تحت پوشش این دوره از کتابخانه React و چارچوب Next JS استفاده شد. CSS و طراحی با کمک چارچوب های Bulma و Tailwind ساخته شده اند.

دو برنامه کاربردی در دنیای واقعی در دوره ایجاد می شود. هر بخش از ایجاد برنامه به خوبی توضیح داده شده و مستند شده است.

برنامه شیر آب:

اولین کاربرد دوره. دانش‌آموزان با کار بر روی برنامه‌های کاربردی، اصول و دانش اصلی شبکه اتریوم را خواهند آموخت.

قسمت جلویی برنامه با کتابخانه React و چارچوب Bulma ساخته شده است، برای ایجاد قرارداد هوشمند از محیط توسعه Truffle و Ganache (بلاک چین خصوصی) استفاده شده است.

برنامه Faucet به کاربران این امکان را می دهد که از قرارداد هوشمند کمک مالی کرده و از آن برداشت کنند. کاربران از طریق وب سایت متصل به شبکه بلاک چین از طریق کیف پول Metamask با یک قرارداد هوشمند تعامل خواهند داشت.

هدف اولین برنامه این است که اصول اولیه را پوشش دهد و در عین حال از کار کردن بر روی چیزی کاربردی لذت ببرید.

مهم ترین سؤالاتی که این برنامه به آنها پاسخ می دهد عبارتند از:

  • اتریوم (تراکنش ها، بلاک چین) چیست

  • EVM چیست (بایت کد، ذخیره سازی)

  • نحوه ایجاد قراردادها و برنامه های هوشمند

  • نحوه ادغام قراردادهای هوشمند با React

برنامه بازار:

این برنامه ایجاد یک بازار تعاملی را پوشش می دهد. مشتریان این برنامه دوره ها را با ارز دیجیتال اتر خریداری می کنند (دانشجویان می توانند محصولات دلخواه خود را انتخاب کنند).

با توجه به تمامی اصول اولیه پوشش داده شده در برنامه قبلی، تمرکز بر روی بخش توسعه عملی شبکه اتریوم خواهد بود. موضوعات چالش برانگیزتر خواهند بود و سخنرانی ها از نظر کد کاربردی تر خواهند بود.

برنامه دوم تعداد زیادی از ویژگی‌ها را پوشش می‌دهد، به عنوان مثال، صفحه بازار با به‌روزرسانی‌های هم‌زمان ارز اتر و قیمت دوره در مقایسه با دلار آمریکا.

پنجره مودال به سفارش دادن اختصاص داده شده است. راه حل هش ایمیل برای حفظ حریم خصوصی مشتری. مشاهده سفارش با فیلتر کردن سفارش و صفحه بندی و بسیاری موارد دیگر.

این برنامه در چارچوب Next JS با Tailwind به عنوان چارچوب CSS ساخته خواهد شد. بعدی JS به صورت داخلی از کتابخانه React استفاده می کند. استفاده از آن ساده است و به طور پیش فرض SSR (رندر سمت سرور) را ارائه می دهد.

SSR مزایای زیادی ارائه می‌دهد، اما مشکلات کمی را از نظر یکپارچه‌سازی با بلاک چین به همراه دارد.

کل بخش ادغام Next JS با بلاک چین پوشش داده شده است، به خوبی توضیح داده شده و مستند شده است. برنامه نهایی در اینترنت مستقر خواهد شد. قرارداد هوشمند در شبکه اصلی "زنده" مستقر خواهد شد.

موضوعات قابل ذکر در این برنامه عبارتند از:

  • ادغام بعدی js(SSR) با Web3 و Blockchain

  • ایجاد قرارداد هوشمند پیچیده‌تر

  • ویژگی هش کردن ایمیل و تأیید سفارش

  • راه حل آزمایشی (تست ها همه ویژگی های قرارداد هوشمند را پوشش می دهند)

  • صفحه بندی و فیلتر کردن سفارشات


سرفصل ها و درس ها

معرفی Introduction

  • معرفی Introduction

  • معرفی Introduction

  • نحوه برخورد با خطاها How to approach errors

معرفی Introduction

  • نحوه برخورد با خطاها How to approach errors

راه اندازی برنامه App Setup

  • برنامه Init Init App

  • برنامه Init Init App

  • محتوای React JS را حذف کنید Remove React JS content

  • محتوای React JS را حذف کنید Remove React JS content

  • واژه شناسی Terminology

راه اندازی برنامه App Setup

  • واژه شناسی Terminology

[AI] Ethereum Essentials [AI] Ethereum Essentials

  • [AI] بلاک چین چیست؟ [AI] What is Blockchain

  • [AI] بلاک چین چیست؟ [AI] What is Blockchain

  • [AI] قراردادهای هوشمند [AI] Smart Contracts

  • [AI] قراردادهای هوشمند [AI] Smart Contracts

  • [AI] استخراج کنندگان، شبکه ها، کیف پول [AI] Miners, Networks, Wallet

  • [AI] استخراج کنندگان، شبکه ها، کیف پول [AI] Miners, Networks, Wallet

  • [AI] ریمیکس اتریوم [AI] Ethereum Remix

  • [AI] ریمیکس اتریوم [AI] Ethereum Remix

  • امتحان Quiz

[AI] Ethereum Essentials [AI] Ethereum Essentials

  • امتحان Quiz

بلاک چین و ترافل خصوصی Private blockchain & Truffle

  • نکته مهم - ترافل Important Note - Truffle

  • نکته مهم - ترافل Important Note - Truffle

  • شروع ترافل Truffle init

  • شروع ترافل Truffle init

  • نصب گاناش Installing Ganache

  • نصب گاناش Installing Ganache

  • اولین قرارداد هوشمند First Smart Contract

  • اولین قرارداد هوشمند First Smart Contract

  • [AI] Ints [AI] Ints

  • [AI] Ints [AI] Ints

  • [AI] تصحیح Int [AI] Int Correction

  • [AI] تصحیح Int [AI] Int Correction

  • شیر آب مهاجرت Migrating Faucet

  • امتحان Quiz

بلاک چین و ترافل خصوصی Private blockchain & Truffle

  • شروع ترافل Truffle init

  • شیر آب مهاجرت Migrating Faucet

[AI] جزئیات تراکنش [AI] Transaction Details

  • [AI] هزینه های گاز [AI] Gas fees

  • [AI] پاداش هزینه گاز [AI] Gas Fees Bonus

  • [AI] پاداش هزینه گاز [AI] Gas Fees Bonus

  • [AI] Keccak256 [AI] Keccak256

  • [AI] امضای تابع [AI] Function Signiture

  • [AI] امضای تابع [AI] Function Signiture

  • [AI] بیت، هگز، اعشاری [AI] Bits, Hex, Decimal

  • [AI] بیت، هگز، اعشاری [AI] Bits, Hex, Decimal

  • امتحان Quiz

[AI] جزئیات تراکنش [AI] Transaction Details

  • [AI] Keccak256 [AI] Keccak256

  • امتحان Quiz

دسترسی به قرارداد هوشمند Access Smart Contract

  • قرارداد دسترسی با کنسول Access Contract with console

  • بخش تعامل Web3 Web3 Interaction part

  • [AI] EVM و ترافل [AI] EVM & Truffle

  • دریافت تابع Receive function

  • دریافت تابع Receive function

  • ارسال تراکنش Send transaction

  • [AI] etHash و nonce [AI] etHash and nonce

  • [AI] etHash و nonce [AI] etHash and nonce

  • [AI] اپراتور ماژول [AI] Modulo Operator

  • لینک بلاک چین Blockchain link

  • لینک بلاک چین Blockchain link

  • امتحان Quiz

دسترسی به قرارداد هوشمند Access Smart Contract

  • قرارداد دسترسی با کنسول Access Contract with console

  • بخش تعامل Web3 Web3 Interaction part

  • [AI] EVM و ترافل [AI] EVM & Truffle

  • ارسال تراکنش Send transaction

  • [AI] اپراتور ماژول [AI] Modulo Operator

  • امتحان Quiz

درباره بایت کد About Bytecode

  • [AI] دستورالعمل بایت کد [AI] Bytecode instruction

  • [AI] دستورالعمل بایت کد [AI] Bytecode instruction

  • منابع اضافی Additional Resources

  • وجوه اضافه کنید Add funds

  • فراخوانی تابع با امضای آن Call function by its signiture

  • نمایش تابع در ریمیکس Show function in Remix

  • فراخوانی روش + JSON RPC Method Calls + JSON RPC

  • فراخوانی روش + JSON RPC Method Calls + JSON RPC

  • امتحان Quiz

درباره بایت کد About Bytecode

  • منابع اضافی Additional Resources

  • فراخوانی تابع با امضای آن Call function by its signiture

  • نمایش تابع در ریمیکس Show function in Remix

  • امتحان Quiz

توابع قراردادهای هوشمند Smart Contracts Functions

  • تامین کنندگان مالی Funders

  • فاندرس را دریافت کنید Get Funders

  • عمومی در مقابل خارجی Public vs External

  • عمومی در مقابل خارجی Public vs External

توابع قراردادهای هوشمند Smart Contracts Functions

  • تامین کنندگان مالی Funders

  • فاندرس را دریافت کنید Get Funders

[AI] حافظه [AI] Memory

  • [AI] جزئیات حافظه قسمت 1 [AI] Memory details part 1

  • [AI] جزئیات حافظه قسمت 1 [AI] Memory details part 1

  • [AI] جزئیات حافظه قسمت 2 [AI] Memory details part 2

  • [AI] حافظه و Ascii [AI] Memory & Ascii

  • [AI] آفست حافظه [AI] Memory Offset

  • خصوصی و داخلی Private & Internal

  • امتحان Quiz

  • امتحان Quiz

[AI] حافظه [AI] Memory

  • [AI] جزئیات حافظه قسمت 2 [AI] Memory details part 2

  • [AI] حافظه و Ascii [AI] Memory & Ascii

  • [AI] آفست حافظه [AI] Memory Offset

  • خصوصی و داخلی Private & Internal

  • امتحان Quiz

[AI] ذخیره سازی [AI] Storage

  • [AI] ذخیره سازی [AI] Storage

  • [AI] ذخیره سازی [AI] Storage

  • [AI] اشکال زدایی حافظه [AI] Storage Debugging

[AI] ذخیره سازی [AI] Storage

  • [AI] اشکال زدایی حافظه [AI] Storage Debugging

نقشه برداری ها Mappings

  • نقشه برداری سرمایه گذاران Funders mapping

  • نقشه برداری سرمایه گذاران Funders mapping

  • همه تامین کنندگان مالی را دریافت کنید Get all funders

  • همه تامین کنندگان مالی را دریافت کنید Get all funders

  • جلوگیری از تکراری بودن Prevent duplications

  • lutFunders lutFunders

نقشه برداری ها Mappings

  • جلوگیری از تکراری بودن Prevent duplications

  • lutFunders lutFunders

[AI] ذخیره سازی قسمت 2 [AI] Storage part 2

  • [AI] نگاشت ذخیره سازی [AI] Storage mappings

  • [AI] مقادیر Keccak256 [AI] Keccak256 values

  • [AI] مقادیر Keccak256 [AI] Keccak256 values

  • [AI] آرایه های ذخیره سازی [AI] Storage arrays

  • [AI] آرایه های ذخیره سازی [AI] Storage arrays

[AI] ذخیره سازی قسمت 2 [AI] Storage part 2

  • [AI] نگاشت ذخیره سازی [AI] Storage mappings

ویژگی های استحکام Solidity features

  • کنار کشیدن Withdraw

  • نیاز به بیانیه Require statement

  • نیاز به بیانیه Require statement

  • اصلاح کننده ها Modifiers

  • فقط مالک Only owner

  • وراثت Inheritance

  • وراثت Inheritance

  • قرارداد انتزاعی Abstract contract

  • قرارداد انتزاعی Abstract contract

  • رابط Interface

  • لوازم جانبی تابع Function Accessors

ویژگی های استحکام Solidity features

  • کنار کشیدن Withdraw

  • اصلاح کننده ها Modifiers

  • فقط مالک Only owner

  • رابط Interface

  • لوازم جانبی تابع Function Accessors

متاماسک Metamask

  • نصب متاماسک Metamask Installation

  • نصب متاماسک Metamask Installation

  • حساب های متاماسک Metamask Accounts

  • [AI] امضای معامله [AI] Signing transaction

  • [AI] امضای تراکنش + [AI] Signing transaction+

  • [AI] نونها [AI] nonces

متاماسک Metamask

  • حساب های متاماسک Metamask Accounts

  • [AI] امضای معامله [AI] Signing transaction

  • [AI] امضای تراکنش + [AI] Signing transaction+

  • [AI] نونها [AI] nonces

برنامه پروژه 1 Project 1 Application

  • Bulma را اضافه کنید Add Bulma

  • Bulma را اضافه کنید Add Bulma

  • اتریوم را فعال کنید Enable ethereum

  • موضوع پک وب Webpack Issue

  • موضوع پک وب Webpack Issue

  • ادغام وب 3 Web3 integration

  • ادغام وب 3 Web3 integration

  • حساب ها را دریافت کنید Get accounts

  • درخواست حساب Request accounts

  • درخواست حساب Request accounts

  • ارائه دهنده را دریافت کنید Get provider

  • ارائه دهنده را دریافت کنید Get provider

  • با کلیک وصل شوید Connect on click

  • با کلیک وصل شوید Connect on click

برنامه پروژه 1 Project 1 Application

  • اتریوم را فعال کنید Enable ethereum

  • حساب ها را دریافت کنید Get accounts

قرارداد بار Load Contract

  • تغییر قراردادها کارگردان Change contracts dir

  • قرارداد بار Load Contract

  • قرارداد مستقر دریافت کنید Get deployed contract

  • تعادل بار Load Balance

  • وجوه اضافه کنید Add funds

  • وجوه اضافه کنید Add funds

  • اثر بارگذاری مجدد Reload effect

  • برداشت تابع Withdraw func

  • برداشت تابع Withdraw func

  • کنترل تغییرات حساب کاربری Handle account changes

  • کنترل تغییرات حساب کاربری Handle account changes

قرارداد بار Load Contract

  • تغییر قراردادها کارگردان Change contracts dir

  • قرارداد بار Load Contract

  • قرارداد مستقر دریافت کنید Get deployed contract

  • تعادل بار Load Balance

  • وجوه اضافه کنید Add funds

  • اثر بارگذاری مجدد Reload effect

پروژه 1 - بهبودهای UX Project 1 - UX Improvements

  • قفل حساب Account Lock

  • بدون ارائه دهنده No Provider

  • بدون ارائه دهنده No Provider

  • بهبود ارائه دهنده Provider improvement

  • رفع هشدارها Fix Warnings

  • رفع هشدارها Fix Warnings

  • بار قرارداد را بررسی کنید Check contract load

  • بار قرارداد را بررسی کنید Check contract load

  • زنجیر عوض شد Chain changed

  • زنجیر عوض شد Chain changed

پروژه 1 - بهبودهای UX Project 1 - UX Improvements

  • قفل حساب Account Lock

  • بهبود ارائه دهنده Provider improvement

[AI] معاملات [AI] Transactions

  • [AI] کلید عمومی-خصوصی [AI] Public-Private key

  • [AI] کلید عمومی-خصوصی [AI] Public-Private key

  • [AI] مهندس معکوس TX [AI] Reverse engineer TX

  • [AI] مهندس معکوس TX قسمت 2 [AI] Reverse engineer TX part 2

  • [AI] مهندس معکوس TX قسمت 3 [AI] Reverse engineer TX part 3

  • [AI] مهندس معکوس TX قسمت 3 [AI] Reverse engineer TX part 3

[AI] معاملات [AI] Transactions

  • [AI] مهندس معکوس TX [AI] Reverse engineer TX

  • [AI] مهندس معکوس TX قسمت 2 [AI] Reverse engineer TX part 2

[AI] درختان مرکل [AI] Merkle Trees

  • [AI] درخت معامله [AI] Transaction Tree

  • [AI] درخت معامله [AI] Transaction Tree

  • [AI] درخت ریشه [AI] Radix Tree

  • [AI] درخت ریشه [AI] Radix Tree

  • [AI] Radix Impl [AI] Radix Impl

  • [AI] Radix Impl [AI] Radix Impl

  • [AI] مرکل پاتریشیا [AI] Merkle Patricia

  • [AI] گره دوم در درخت پاتریشیا [AI] Second Node in Patricia tree

  • [AI] گره دوم در درخت پاتریشیا [AI] Second Node in Patricia tree

  • [AI] RLP Merkle [AI] RLP Merkle

  • [AI] هش نهایی [AI] FInal Hash

  • [AI] هش نهایی [AI] FInal Hash

[AI] درختان مرکل [AI] Merkle Trees

  • [AI] مرکل پاتریشیا [AI] Merkle Patricia

  • [AI] RLP Merkle [AI] RLP Merkle

پروژه 2 (بازار) - بعدی JS Project 2 (Marketplace) - Next JS

  • برنامه بعدی JS Init Next JS app Init

  • ادغام Tailwind Tailwind Integration

  • گزینه های کامپایلر Compiler options

  • Init Components Init Components

  • پاورقی و نوار ناوبری Footer and Navbar

  • پاورقی و نوار ناوبری Footer and Navbar

  • اجزای بیشتر More Components

  • اجزای بیشتر More Components

  • اجزای شاخص باقیمانده Remaining Index Components

  • اجزای شاخص باقیمانده Remaining Index Components

  • اجزای دوره Course components

  • اجزای دوره Course components

  • چیدمان پایه Base layout

  • چیدمان پایه متفاوت است Base Layout Different

پروژه 2 (بازار) - بعدی JS Project 2 (Marketplace) - Next JS

  • برنامه بعدی JS Init Next JS app Init

  • ادغام Tailwind Tailwind Integration

  • گزینه های کامپایلر Compiler options

  • Init Components Init Components

  • چیدمان پایه Base layout

  • چیدمان پایه متفاوت است Base Layout Different

اجزای مرتبط با دوره Course Related Components

  • داده های دوره Course Data

  • دریافت اطلاعات دوره Get course data

  • لیست دوره Course List

  • لیست دوره Course List

  • بهبود تصاویر Images Improvements

  • بهبود تصاویر Images Improvements

  • مهم! 13 به روز رسانی بعدی Important! Next 13 Updates

  • مهم! 13 به روز رسانی بعدی Important! Next 13 Updates

  • صفحه جزئیات دوره Course detail page

  • دوره تک بگیرید Get single course

  • دوره تک بگیرید Get single course

  • قهرمان دوره Course hero

  • سخنرانی ها و نکات کلیدی Lectures and Keypoints

  • سخنرانی ها و نکات کلیدی Lectures and Keypoints

  • دکمه اتصال و تصویر Connect button & Image

اجزای مرتبط با دوره Course Related Components

  • داده های دوره Course Data

  • دریافت اطلاعات دوره Get course data

  • صفحه جزئیات دوره Course detail page

  • قهرمان دوره Course hero

  • دکمه اتصال و تصویر Connect button & Image

ارائه دهنده Web3 Web3 Provider

  • ارائه دهنده وب 3 web3 provider

  • ارائه دهنده وب 3 web3 provider

  • ارائه دهنده بار Load Provider

  • ارائه دهنده بار Load Provider

  • بارگیری ارائه دهنده Provider loading

  • به متاماسک متصل شوید Connect to metamask

  • به متاماسک متصل شوید Connect to metamask

  • isWeb3Loaded isWeb3Loaded

  • isWeb3Loaded isWeb3Loaded

  • دکمه بارگیری Loading button

  • دکمه غیر فعال کردن Disable button

  • صفحه را در پنجره جدید باز کنید Open page in new window

  • useAccount useAccount

  • useAccount useAccount

  • Refactor کوچک ارائه می دهد Provider tiny refactor

  • از Hooks Abstraction استفاده کنید Use Hooks Abstraction

  • از Hooks Abstraction استفاده کنید Use Hooks Abstraction

ارائه دهنده Web3 Web3 Provider

  • بارگیری ارائه دهنده Provider loading

  • دکمه بارگیری Loading button

  • دکمه غیر فعال کردن Disable button

  • صفحه را در پنجره جدید باز کنید Open page in new window

  • Refactor کوچک ارائه می دهد Provider tiny refactor

قلاب Hooks

  • حساب ها را دریافت کنید Get accounts

  • حساب Navbar Navbar account

  • حساب Navbar Navbar account

  • رویداد useAccount useAccount event

  • نمایش آدرس Display address

  • نمایش آدرس Display address

  • از swr استفاده کنید Use swr

  • از swr استفاده کنید Use swr

  • ادمین است Is Admin

  • ادمین است Is Admin

  • هش ادمین Hash Admin

  • هش ادمین Hash Admin

  • بازار Marketplace

  • بازار Marketplace

  • آدرس را در بازار پنهان کنید Hide address on Marketplace

  • آدرس را در بازار پنهان کنید Hide address on Marketplace

قلاب Hooks

  • حساب ها را دریافت کنید Get accounts

  • رویداد useAccount useAccount event

هوک شبکه Network Hook

  • استفاده از شبکه useNetwork

  • تغییرات شبکه Network changes

  • شناسه زنجیره ای ChainID

  • شناسه زنجیره ای ChainID

  • کارت دوره Course Card

  • کارت دوره Course Card

  • شبکه هدف Target network

  • پیام شبکه اشتباه است Wrong network message

  • اولین واکشی را به پایان رساند Has Finished First Fetch

  • قلاب را تقویت کنید Enhance hook

  • رفع قلاب های راه اندازی Setup Hooks fix

  • رفع قلاب های راه اندازی Setup Hooks fix

  • نیاز به نصب Require Install

  • از Require install استفاده کنید Use Require install

هوک شبکه Network Hook

  • استفاده از شبکه useNetwork

  • تغییرات شبکه Network changes

  • شبکه هدف Target network

  • پیام شبکه اشتباه است Wrong network message

  • اولین واکشی را به پایان رساند Has Finished First Fetch

  • قلاب را تقویت کنید Enhance hook

  • نیاز به نصب Require Install

  • از Require install استفاده کنید Use Require install

سفارش Order

  • دکمه کارت Card Button

  • دکمه کارت Card Button

  • یک ظاهر طراحی کارت دوره Course Card Styling

  • مدال Modal

  • مدال Modal

  • سفارش مدال Order Modal

  • سفارش مدال Order Modal

  • محتوای مودال Modal Content

  • Modal را با کد باز کنید Open Modal with Code

  • Modal را با کد باز کنید Open Modal with Code

سفارش Order

  • یک ظاهر طراحی کارت دوره Course Card Styling

  • محتوای مودال Modal Content

کامپوننت های Web3 Web3 Components

  • قیمت ETH را دریافت کنید Get ETH Price

  • قیمت ETH را دریافت کنید Get ETH Price

  • قیمت Eth Eth Price

  • قیمت هر مورد Price per item

  • قیمت هر مورد Price per item

  • تصویر Eth Eth image

  • می توان خرید Can Purchase

  • از اطلاعات کیف پول استفاده کنید use wallet info

  • از اطلاعات کیف پول استفاده کنید use wallet info

  • [AI] شهود قلاب [AI] Hooks Intuition

  • [AI] شهود قلاب [AI] Hooks Intuition

  • پودرهای سوخاری Breadcrumbs

  • بازارگردان Marketheader

  • صفحات بازار Market pages

  • صفحات بازار Market pages

  • لینک فعال Active Link

  • لینک فعال Active Link

  • لینک فعال 2 Active Link 2

  • لینک فعال 2 Active Link 2

کامپوننت های Web3 Web3 Components

  • قیمت Eth Eth Price

  • تصویر Eth Eth image

  • می توان خرید Can Purchase

  • پودرهای سوخاری Breadcrumbs

  • بازارگردان Marketheader

تکمیل فرم سفارش Finishing Order Form

  • قیمت سفارش Order Price

  • فعال کردن قیمت Enable Price

  • فعال کردن قیمت Enable Price

  • دریافت داده های فرم Get form data

  • دریافت داده های فرم Get form data

  • وضعیت فرم Form status

  • موافقت TOS Agree TOS

  • تغییرات مؤلفه + پیام Component changes + Message

  • لودر 1 Loader 1

  • لودر 1 Loader 1

  • لودر 2 Loader 2

  • لودر 2 Loader 2

تکمیل فرم سفارش Finishing Order Form

  • قیمت سفارش Order Price

  • وضعیت فرم Form status

  • موافقت TOS Agree TOS

  • تغییرات مؤلفه + پیام Component changes + Message

قرارداد بازار Marketplace Contract

  • شروع ترافل Truffle init

  • شروع ترافل Truffle init

  • هش دوره Course hash

  • دوره فروشگاهی Store Course

  • دوره فروشگاهی Store Course

  • توابع گیرنده Getter functions

  • توابع گیرنده Getter functions

  • صاحب دوره را بررسی کنید Check course owner

  • صاحب دوره را بررسی کنید Check course owner

  • صاحب قرارداد Owner of the contract

  • انتقال مالکیت Transfer ownership

  • مهاجرت به بازار Remigrate marketplace

  • مهاجرت به بازار Remigrate marketplace

قرارداد بازار Marketplace Contract

  • شروع ترافل Truffle init

  • هش دوره Course hash

  • صاحب قرارداد Owner of the contract

  • انتقال مالکیت Transfer ownership

قرارداد در Next JS Contract in Next JS

  • قرارداد بارگذاری LoadContract

  • راه حل اول قرارداد بار Load Contract first solution

  • راه حل دوم قرارداد بار Load Contract second solution

  • راه حل سوم قرارداد بار Load Contract third solution

  • راه حل سوم قرارداد بار Load Contract third solution

  • مقادیر را آماده کنید Prepare values

  • خرید دوره Purchase Course

قرارداد در Next JS Contract in Next JS

  • قرارداد بارگذاری LoadContract

  • راه حل اول قرارداد بار Load Contract first solution

  • راه حل دوم قرارداد بار Load Contract second solution

  • مقادیر را آماده کنید Prepare values

  • خرید دوره Purchase Course

دوره های اختصاصی Owned Courses

  • UseOwnedCourses شروع می شود UseOwnedCourses Start

  • UseOwnedCourses شروع می شود UseOwnedCourses Start

  • ایجاد حالت web3 Create web3 state

  • دوره های اختصاصی Owned Courses

  • دریافت دوره توسط هش در قلاب Get course by hash in hook

  • عادی کردن دوره Normalize course

  • نمایش دوره های متعلق به Display owned courses

دوره های اختصاصی Owned Courses

  • ایجاد حالت web3 Create web3 state

  • دوره های اختصاصی Owned Courses

  • دریافت دوره توسط هش در قلاب Get course by hash in hook

  • عادی کردن دوره Normalize course

  • نمایش دوره های متعلق به Display owned courses

بهبودهای سبک Style Improvements

  • سبک های کارت دوره Course Card styles

  • سبک های کارت دوره Course Card styles

  • بهبود نرخ Eth Eth rates improvements

  • بهبود نرخ Eth Eth rates improvements

  • بهبود نوار کیف پول Walletbar improvements

  • بهبود نوار ناوبری و فیلتر Navbar and Filter improvements

  • بهبود نوار ناوبری و فیلتر Navbar and Filter improvements

  • بهبود وضعیت دوره Course Status improvement

  • بهبود وضعیت دوره Course Status improvement

  • بهبود کارت Card improvements

  • بهبود کارت Card improvements

بهبودهای سبک Style Improvements

  • بهبود نوار کیف پول Walletbar improvements

دوره متعلق به Owned Course

  • از دوره اختصاصی استفاده کنید Use owned course

  • از دوره اختصاصی استفاده کنید Use owned course

  • بررسی کنید که آیا مالک Check if owner

  • بررسی کنید که آیا مالک Check if owner

  • پیام های دولتی دوره Course state messages

  • برنامه درسی دولتی State curriculum

  • برنامه درسی دولتی State curriculum

  • عدم وجود دوره را بررسی کنید Check for no courses

  • IsEmpty را چک کنید Check isEmpty

  • بررسی کنید که آیا حساب خالی است Check if empty account

  • بررسی کنید که آیا حساب خالی است Check if empty account

  • بهبود قلاب Hook improvements

  • رویداد یک بار One time event

  • رویداد یک بار One time event

  • دسته در مسیر قفل شده است Handle locked in course

  • دسته در مسیر قفل شده است Handle locked in course

دوره متعلق به Owned Course

  • پیام های دولتی دوره Course state messages

  • عدم وجود دوره را بررسی کنید Check for no courses

  • IsEmpty را چک کنید Check isEmpty

  • بهبود قلاب Hook improvements

دوره های مدیریت شده Managed Courses

  • از دوره های مدیریت شده استفاده کنید Use managed courses

  • از دوره های مدیریت شده استفاده کنید Use managed courses

  • دوره های مدیریت شده را واکشی کنید Fetch managed courses

  • دوره های مدیریت شده را واکشی کنید Fetch managed courses

  • ManagedCourseCard ManagedCourseCard

  • ManagedCourseCard ManagedCourseCard

  • مقادیر کارت مدیریت شده Managed card values

  • تایید هویت Verify identity

  • تایید اثبات Verify Proof

  • ورودی تأیید Verification input

  • دوره های مدیریت شده را غیرفعال کنید Disable managed courses

  • دوره های مدیریت شده را غیرفعال کنید Disable managed courses

  • useAdmin useAdmin

  • useAdmin useAdmin

دوره های مدیریت شده Managed Courses

  • مقادیر کارت مدیریت شده Managed card values

  • تایید هویت Verify identity

  • تایید اثبات Verify Proof

  • ورودی تأیید Verification input

تست های واحد Unit Tests

  • قرارداد دوره را فعال کنید Activate Course contract

  • آماده سازی آزمون Preparing test

  • دوره آزمایشی بر اساس شاخص Test course by index

  • دوره آزمایشی بر اساس شاخص Test course by index

  • داده های دوره آزمایشی Test course data

  • داده های دوره آزمایشی Test course data

  • فعال سازی تست Test activation

  • Catch Revert Catch revert

  • Catch Revert Catch revert

  • آزمون انتقال مالکیت Transfer ownership test

  • آزمون دوره خرید مجدد Repurchase course test

  • آزمون دوره خرید مجدد Repurchase course test

تست های واحد Unit Tests

  • قرارداد دوره را فعال کنید Activate Course contract

  • آماده سازی آزمون Preparing test

  • فعال سازی تست Test activation

  • آزمون انتقال مالکیت Transfer ownership test

  • آزمون دوره خرید مجدد Repurchase course test

فعال و غیرفعال کنید Activate & Deactivate

  • فرانتند دوره را فعال کنید Activate course frontend

  • غیرفعال کردن دوره Deactivate course

فعال و غیرفعال کنید Activate & Deactivate

  • فرانتند دوره را فعال کنید Activate course frontend

  • غیرفعال کردن دوره Deactivate course

آزمون های واحد - قسمت 2 Unit tests - part 2

  • دوره بازخرید در قرارداد Repurchase course in contract

  • دوره بازخرید در قرارداد Repurchase course in contract

  • غیرفعال کردن آزمون دوره Deactivate course test

  • آزمون دوره خرید مجدد Repurchase course test

  • آزمون دوره خرید مجدد Repurchase course test

  • موجودی خریدار را بررسی کنید Check buyer balance

  • موجودی خریدار را بررسی کنید Check buyer balance

  • انتزاع GetGas GetGas abstraction

  • انتزاع GetGas GetGas abstraction

  • مانده قرارداد را بررسی کنید Check contract balance

  • مانده قرارداد را بررسی کنید Check contract balance

  • پس از غیرفعال کردن، تعادل را بررسی کنید Check balance after deactivate

آزمون های واحد - قسمت 2 Unit tests - part 2

  • غیرفعال کردن آزمون دوره Deactivate course test

  • آزمون دوره خرید مجدد Repurchase course test

  • پس از غیرفعال کردن، تعادل را بررسی کنید Check balance after deactivate

غیرفعال کردن، خرید مجدد و تجربه کاربری Deactivate, Repurchase & UX

  • غیرفعال کردن دوره impl Deactivate course impl

  • غیرفعال کردن دوره impl Deactivate course impl

  • مدیریت تغییرات کیف پول Handle wallet changes

  • مدیریت تغییرات کیف پول Handle wallet changes

  • جدول جست و جو Lookup table

  • جدول جست و جو Lookup table

  • نمایش وضعیت های دوره Course states display

  • نمایش وضعیت های دوره Course states display

  • کنترل شبکه های سوئیچینگ Handle Switching Networks

  • شنوندگان را تنظیم کنید Set Listeners

  • شنوندگان را تنظیم کنید Set Listeners

  • دکمه خرید مجدد Repurchase button

  • تغییر وضعیت دوره Move course state

  • اندازه دکمه ها Button sizes

  • اندازه دکمه ها Button sizes

  • بهبودهای UX UX Improvements

  • خرید را متمایز کنید Differentiate purchase

  • خرید را متمایز کنید Differentiate purchase

  • بازخرید کار Repurchase working

  • بازخرید کار Repurchase working

غیرفعال کردن، خرید مجدد و تجربه کاربری Deactivate, Repurchase & UX

  • کنترل شبکه های سوئیچینگ Handle Switching Networks

  • دکمه خرید مجدد Repurchase button

  • تغییر وضعیت دوره Move course state

  • بهبودهای UX UX Improvements

فیلترها Filters

  • ورودی جستجو Search input

  • ورودی جستجو Search input

  • دوره جستجو Search Course

  • نمایش دوره جستجو Search course display

  • فیلترهای حالت State Filters

  • نمایش دوره های فیلتر Display filter courses

فیلترها Filters

  • دوره جستجو Search Course

  • نمایش دوره جستجو Search course display

  • فیلترهای حالت State Filters

  • نمایش دوره های فیلتر Display filter courses

برداشتن توابع و تست ها Withdraw Functions & Tests

  • قرارداد را متوقف کنید Stop contract

  • برداشت توابع Withdraw functions

  • برداشت توابع Withdraw functions

  • انتقال آزمایشی Test transfer

  • انتقال آزمایشی Test transfer

  • انصراف آزمایشی Test withdraw

  • تست خروج اضطراری Emergency withdraw test

  • خود تخریبی را آزمایش کنید Test Selfdestruct

  • تست خود تخریبی Test Selfdestruct

برداشتن توابع و تست ها Withdraw Functions & Tests

  • قرارداد را متوقف کنید Stop contract

  • انصراف آزمایشی Test withdraw

  • تست خروج اضطراری Emergency withdraw test

استقرار قرارداد هوشمند Smart Contract Deployment

  • تغییرات اتریوم Ethereum Changes

  • تغییرات اتریوم Ethereum Changes

  • Ropsten Ether را دریافت کنید Get Ropsten Ether

  • پیکربندی ترافل ropsten Truffle ropsten config

  • راه اندازی اینفورا Setting up infura

  • تولید یادگاری Generating mnemonic

  • گسترش Deployment

  • [AI] هزینه های گاز [AI] Gas fees

  • [AI] هزینه های گاز [AI] Gas fees

  • انتقال مالکیت Transfer ownership

  • انتقال مالکیت Transfer ownership

استقرار قرارداد هوشمند Smart Contract Deployment

  • Ropsten Ether را دریافت کنید Get Ropsten Ether

  • پیکربندی ترافل ropsten Truffle ropsten config

  • راه اندازی اینفورا Setting up infura

  • تولید یادگاری Generating mnemonic

  • گسترش Deployment

  • [AI] هزینه های گاز [AI] Gas fees

برنامه با Ropsten App with Ropsten

  • خرید آزمایشی در Ropsten Test Purchase on Ropsten

  • خرید آزمایشی در Ropsten Test Purchase on Ropsten

  • React Toastify React Toastify

  • بهبود پیام نان تست Improve toast message

  • بهبود پیام نان تست Improve toast message

  • نمایش نان تست با tx Display toast with tx

  • نمایش نان تست با tx Display toast with tx

  • دوره در حال انجام Course in Progress

  • جهش دوره ها Mutate courses

  • جهش دوره ها Mutate courses

  • جهش خرید مجدد Mutate repurchase

برنامه با Ropsten App with Ropsten

  • React Toastify React Toastify

  • دوره در حال انجام Course in Progress

  • جهش خرید مجدد Mutate repurchase

استقرار برنامه App Deployment

  • پیش از استقرار Pre-deployment

  • پیش از استقرار Pre-deployment

  • رفع رنگ ها Fix Colors

  • رفع رنگ ها Fix Colors

  • استقرار برنامه App Deployment

  • نرم افزار تست Testing Application

  • پایان دوره End of Course

  • پایان دوره End of Course

استقرار برنامه App Deployment

  • استقرار برنامه App Deployment

  • نرم افزار تست Testing Application

نمایش نظرات

نظری ارسال نشده است.

آموزش Solidity & Ethereum in React (JS بعدی): راهنمای کامل
خرید اشتراک و دانلود خرید تکی و دانلود | 360,000 تومان (6 روز مهلت دانلود) در صورت خرید اشتراک، این آموزش بدلیل حجم بالا معادل 3 دوره است و 3 دوره از اشتراک شما کم می شود. زمان تقریبی آماده سازی لینک دانلود این دوره آموزشی حدود 5 تا 24 ساعت می باشد.
جزییات دوره
38.5 hours
280
Udemy (یودمی) udemy-small
12 اسفند 1401 (آخرین آپدیت رو دریافت می‌کنید، حتی اگر این تاریخ بروز نباشد.)
7,359
4.7 از 5
ندارد
دارد
دارد

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Eincode by Filip Jerga Eincode by Filip Jerga

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

Eincode by Filip Jerga Eincode by Filip Jerga

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

Filip Jerga Filip Jerga

مهندس نرم افزار نام من فیلیپ جرگا است و من یک مهندس نرم افزار با تجربه و توسعه دهنده آزاد هستم. من دارای مدرک کارشناسی ارشد در هوش مصنوعی و چندین سال تجربه کار بر روی طیف گسترده ای از فناوری ها و پروژه ها از توسعه ++C برای دستگاه های اولتراسوند گرفته تا برنامه های موبایل و وب مدرن در React و Angular هستم. در طول زندگی حرفه‌ای‌ام، دانش فنی پیشرفته و توانایی توضیح موضوعات برنامه‌نویسی را به وضوح و با جزئیات برای مخاطبان گسترده کسب کرده‌ام. از شما دعوت می‌کنم دوره آموزشی خود را بگذرانید، جایی که من تلاش زیادی کرده‌ام تا مفاهیم مهندسی وب و نرم‌افزار را به صورت مفصل، عملی و قابل درک توضیح دهم.

Filip Jerga Filip Jerga

مهندس نرم افزار نام من فیلیپ جرگا است و من یک مهندس نرم افزار با تجربه و توسعه دهنده آزاد هستم. من دارای مدرک کارشناسی ارشد در هوش مصنوعی و چندین سال تجربه کار بر روی طیف گسترده ای از فناوری ها و پروژه ها از توسعه ++C برای دستگاه های اولتراسوند گرفته تا برنامه های موبایل و وب مدرن در React و Angular هستم. در طول زندگی حرفه‌ای‌ام، دانش فنی پیشرفته و توانایی توضیح موضوعات برنامه‌نویسی را به وضوح و با جزئیات برای مخاطبان گسترده کسب کرده‌ام. از شما دعوت می‌کنم دوره آموزشی خود را بگذرانید، جایی که من تلاش زیادی کرده‌ام تا مفاهیم مهندسی وب و نرم‌افزار را به صورت مفصل، عملی و قابل درک توضیح دهم.

Udemy (یودمی)

یودمی یکی از بزرگ‌ترین پلتفرم‌های آموزشی آنلاین است که به میلیون‌ها کاربر در سراسر جهان امکان دسترسی به دوره‌های متنوع و کاربردی را فراهم می‌کند. این پلتفرم امکان آموزش در زمینه‌های مختلف از فناوری اطلاعات و برنامه‌نویسی گرفته تا زبان‌های خارجی، مدیریت، و هنر را به کاربران ارائه می‌دهد. با استفاده از یودمی، کاربران می‌توانند به صورت انعطاف‌پذیر و بهینه، مهارت‌های جدیدی را یاد بگیرند و خود را برای بازار کار آماده کنند.

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