لطفا جهت اطلاع از آخرین دوره ها و اخبار سایت در
کانال تلگرام
عضو شوید.
آموزش (تسلط بر) Solidity، زبان برنامه نویسی اتریوم
دانلود (Mastering) Solidity, the Ethereum Programming Language
نکته:
آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره:
راهنمای عملی توسعهدهنده درک اولیه از بلاکچین اتریوم بدانید درباره ابزارهایی که برای برنامهنویسی در Solidity استفاده میشوند (Hardhat و Remix) مقدمهای سریع برای Solidity بدانید چگونه با قراردادهای هوشمند از طریق اترها و کتابخانههای JavaScript web3 تعامل داشته باشید درباره کیف پولها بدانید. (MetaMask و WalletConnect) بدانید که چگونه یک بلاک چین آزمایشی محلی راه اندازی کنید و چگونه با یک شبکه بلاکچین تعامل کنید بدانید چگونه کیف پول ها را در یک رابط کاربری ادغام کنید و چگونه با بلاک چین تعامل کنید درک عناصر واژگانی Solidity پیش نیازها: سعی می کنم برای اینکه این دوره تا حد امکان در دسترس باشد و تجربه برنامه نویسی قبلی به شدت مورد نیاز نیست، اما مطمئنا مفید است. برای فصل های 3 تا 5 که ابزارهای کار با Solidity را توضیح می دهند، خوب است که با جاوا اسکریپت آشنا باشید. برای فصل 6 که نشان می دهد چگونه یک رابط کاربری ایجاد کنید که با یک قرارداد هوشمند مستقر در بلاک چین اتریوم تعامل داشته باشد، خوب است که با جاوا اسکریپت و سایر فناوری های وب آشنا باشید.
هدف این دوره ارائه یک نمای کلی از چیزهایی است که برای برنامه نویسی در Solidity باید بدانید.
این دوره از دو بخش تشکیل شده است:
در قسمت اول، بهترین روشها در مورد توسعه کد Solidity را بدون توضیح زیاد زبان Solidity توضیح میدهم. ایده بخش اول این است که به سرعت برنامه نویسی کد Solidity را شروع کنید.
در قسمت دوم، زبان Solidity را به طور عمیق توضیح می دهم.
قسمت اول دوره آماده است و شامل فصول 2 - 6 است. من ویدیوها را برای شبکه تست Sepolia ضبط کرده ام. قبل از پایان عمر شبکه آزمایشی Sepolia در سه ماهه چهارم سال 2026، دوباره ویدیوها را برای شبکه آزمایشی اتریوم زیر ضبط خواهم کرد.
در فصل 2، برخی از نظریههای اساسی را برای افرادی که نمیدانند بلاک چین چیست توضیح میدهم.
در فصل 3 تا 5، ابزارهایی را توضیح می دهم که برای توسعه برنامه های بلاک چین استفاده می شوند:
این فصلها ابزارهای توسعه Hardhat و Remix را توضیح میدهند.
کد Solidity را برای ساخت ارز دیجیتال خود مشاهده خواهید کرد.
کتابخانههای جاوا اسکریپت ethers.js و web3.js را خواهید دید که برای تعامل با بلاک چین اتریوم استفاده میشوند.
خواهید دید که چگونه می توانید یک کیف پول را با یک برنامه بلاک چین متصل کنید. MetaMask را که یک کیف پول محبوب است و همچنین WalletConnect را نشان خواهم داد که به عنوان پلی برای اتصال انواع کیف پول با یک برنامه عمل می کند. من همچنین نشان خواهم داد که چگونه می توانید ارزهای دیجیتال را در MetaMask انتقال دهید.
خواهید دید که چگونه یک بلاک چین آزمایشی محلی را در رایانه خود راه اندازی کنید و همچنین نحوه تعامل با یک شبکه آزمایشی اتریوم در اینترنت را مشاهده خواهید کرد.
خواهید دید که چگونه می توانید نام اتریوم را ثبت و پیکربندی کنید.
در فصل 6، نشان میدهم که چگونه میتوانید یک رابط کاربری ایجاد کنید که با بلاک چین اتریوم از طریق کتابخانه ethers.js تعامل داشته باشد، نشان میدهد
نحوه بازیابی آدرس قرارداد هوشمند از طریق نام اتریوم
نحوه خواندن دادهها از زنجیره بلاک از طریق ارائهدهنده پیشفرض
نحوه اتصال MetaMask یا کیف پول از طریق WalletConnect با رابط کاربری
نحوه اجرای عملکردهایی که داده ها را از طریق یک کیف پول متصل به زنجیره بلوکی می نویسند
نحوه جستجو برای رویدادهای منتشر شده توسط یک قرارداد هوشمند
من هنوز روی قسمت دوم دوره کار می کنم که شامل تمام فصل هایی است که از فصل 7 شروع می شود. به مرور فصل های بیشتری اضافه خواهم کرد. در زمان نوشتن، من فصل های زیر را آنلاین دارم:
فصل 7 که توضیح می دهد که فصل های بعدی این بخش چه خواهند بود.
فصل 8 که عناصر واژگانی Solidity را توضیح می دهد.
فصل 9 که مجوز SPDX و دستورالعملهای پراگما را توضیح میدهد
سرفصل ها و درس ها
مقدمه
Introduction
مطالب دوره
Course Contents
پس زمینه من
My Background
به روز رسانی برنامه
Update Schedule
نظریه پایه بلاک چین
Basic Blockchain Theory
بررسی اجمالی فصل
Chapter Overview
مبانی بلاک چین
Blockchain Basics
مکانیسم های اجماع
Consensus Mechanisms
تست تئوری بلاک چین
Blockchain Theory Test
بلاک چین در عمل
Blockchain in Practice
سرمایه گذاری روی بلاک چین اتریوم
Investing on the Ethereum Blockchain
نسخه ی نمایشی بلاک چین
Blockchain Demo
کاغذ سفید بیت کوین
Bitcoin White Paper
اوراق اتریوم
Ethereum Papers
ابزار: Hardhat
Tools: Hardhat
بررسی اجمالی فصل
Chapter Overview
npm
npm
ترافل و هاردات
Truffle and Hardhat
راه اندازی Hardhat
Hardhat Setup
خلاصه راه اندازی Hardhat
Hardhat Setup Summary
کد ویژوال استودیو
Visual Studio Code
پروژه نمونه هاردات
Hardhat Sample Project
برنامه های افزودنی کد ویژوال استودیو
Visual Studio Code Extensions
استاندارد ERC-20
ERC-20 Standard
یک قرارداد اول
A First Contract
خلاصه قرارداد اول
A First Contract Summary
تعامل با بلاک چین اتریوم
Interacting With the Ethereum Blockchain
آزمایش اولین قرارداد ما
Testing Our First Contract
آزمایش اولین خلاصه قرارداد ما
Testing Our First Contract Summary
محدودیت اندازه قرارداد
Contract Size Limit
محدودیت اندازه قرارداد آزمایشی
Test Contract Size Limit
خلاصه محدودیت اندازه قرارداد آزمایشی
Test Contract Size Limit Summary
پیکربندی Hardhat
Hardhat Configuration
تغییر پیکربندی Hardhat
Changing the Hardhat Config
اخطار در برابر کدهای شلخته
Warning Against Sloppy Code
تغییر خلاصه پیکربندی Hardhat
Changing the Hardhat Config Summary
هاردات لاگ
Hardhat Log
خلاصه گزارش Hardhat
Hardhat Log Summary
پیکربندی Hardhat برای استفاده از web3.js
Configuring Hardhat to Use web3.js
پیکربندی Hardhat برای استفاده از خلاصه web3.js
Configuring Hardhat to Use web3.js Summary
تست اندازه قرارداد را به کد web3.js تغییر دهید
Change Contract Size Test to web3.js Code
آزمایش اندازه قرارداد را به خلاصه کد web3.js تغییر دهید
Change Contract Size Test to web3.js Code Summary
SeedToken Test را به کد web3.js تغییر دهید
Change SeedToken Test to web3.js Code
SeedToken Test را به خلاصه کد web3.js تغییر دهید
Change SeedToken Test to web3.js Code Summary
نگاهی دقیق تر به Hardhat، Truffle، ethers.js و web3.js
A Closer Look at Hardhat, Truffle, ethers.js and web3.js
Consensys Sunsets Truffle and Ganache
Consensys Sunsets Truffle and Ganache
ارز رمزنگاری شده خود را ایجاد کنید و تست ها را اضافه کنید
Create Your Own Cryptocurrency and Add Tests
ابزار: MetaMask
Tools: MetaMask
بررسی اجمالی فصل
Chapter Overview
وب سایت متاماسک
MetaMask Website
راه اندازی MetaMask
MetaMask Set Up
عبارت بازیابی مخفی
Secret Recovery Phrase
بلاک چین تست Hardhat را راه اندازی کنید
Set Up Hardhat Test Blockchain
راه اندازی بلاک چین تست هاردات: اسکریپت ها
Initialize Hardhat Test Blockchain: Scripts
خلاصه Blockchain Test Hardhat را راه اندازی کنید
Initialize Hardhat Test Blockchain Summary
راه اندازی بلاک چین تست هاردات: اسکریپت ها را اجرا کنید
Initialize Hardhat Test Blockchain: Run Scripts
راه اندازی بلاک چین تست هاردات: بررسی متاماسک
Initialize Hardhat Test Blockchain: MetaMask Check
انتقال ارزهای دیجیتال با MetaMask: بدون تخمین گاز برای بلاک چین آزمایشی
Transfer Cryptocurrencies With MetaMask: No Gas Estimate for Test Blockchain
خلاصه انتقال ارزهای دیجیتال با متاماسک
Transfer Cryptocurrencies With MetaMask Summary
انتقال ارزهای دیجیتال با MetaMask: نمایش
Transfer Cryptocurrencies With MetaMask: Demonstration
انتقال ارزهای دیجیتال با MetaMask: Clear Activity
Transfer Cryptocurrencies With MetaMask: Clear Activity
کار با شبکه های بلاک چین
Working With Blockchain Networks
با بلاک چین Sepolia تعامل کنید
Interact With the Sepolia Blockchain
تعامل با خلاصه بلاک چین Sepolia
Interact With the Sepolia Blockchain Summary
فرمت کلید خصوصی در پیکربندی Hardhat
Private Key Format in Hardhat Configuration
کیف پول MetaMask را بازیابی کنید
Recover MetaMask Wallet
متاماسک و تست بلاک چین
MetaMask and Test Blockchains
ابزار: ریمیکس
Tools: Remix
بررسی اجمالی فصل
Chapter Overview
معرفی ریمیکس
Remix Introduction
دسترسی به فایل ها با ریمیکس
Accessing Files With Remix
Remix به عنوان یک برنامه دسکتاپ و WalletConnect
Remix as a Desktop Application and WalletConnect
Remix و Solidity Dependencies
Remix and Solidity Dependencies
قرارداد هوشمند کارخانه و استقرار از طریق ریمیکس
Factory Smart Contract and Deploy Through Remix
قرارداد هوشمند کارخانه و استقرار از طریق خلاصه Remix
Factory Smart Contract and Deploy Through Remix Summary
سرویس نام اتریوم
Ethereum Name Service
ریمیکس
Remix
رابط کاربری
User Interface
بررسی اجمالی فصل
Chapter Overview
نمای کلی رابط کاربری
User Interface Overview
UI: تاریخچه چارچوب های وب
UI: History of Web Frameworks
رابط کاربری: Angular را تنظیم کنید
UI: Set Up Angular
رابط کاربری: تنظیم خلاصه زاویه ای
UI: Set Up Angular Summary
رابط کاربری: طراحی متریال را تنظیم کنید
UI: Set Up Material Design
UI: خلاصه طراحی متریال را تنظیم کنید
UI: Set Up Material Design Summary
UI: نوار اتصال
UI: Connection Bar
رابط کاربری: خلاصه نوار اتصال
UI: Connection Bar Summary
Web3: ادغام ethers.js در Angular
Web3: Integration of ethers.js in Angular
Web3: ادغام ethers.js در Angular Summary
Web3: Integration of ethers.js in Angular Summary
Web3: رویکردی برای ادغام MetaMask و WalletConnect با ethers.js
Web3: Approach to Integrate MetaMask and WalletConnect With ethers.js
Web3: با دکمه نوار اتصال به MetaMask متصل شوید
Web3: Connect to MetaMask With the Connection Bar Button
Web3: با خلاصه دکمه نوار اتصال به MetaMask متصل شوید
Web3: Connect to MetaMask With the Connection Bar Button Summary
Web3: به تغییرات در حساب و شبکه انتخابی کیف پول گوش دهید
Web3: Listen to Changes in the Selected Wallet Account and Network
Web3: به تغییرات در حساب انتخابی کیف پول و خلاصه شبکه گوش دهید
Web3: Listen to Changes in the Selected Wallet Account and Network Summary
UI: انتشار تغییرات در حساب و شبکه انتخابی کیف پول به رابط کاربری
UI: Propagate Changes in the Selected Wallet Account and Network to the UI
UI: انتشار تغییرات در حساب انتخابی کیف پول و خلاصه شبکه
UI: Propagate Changes in the Selected Wallet Account and Network Summary
Web3: اتصال از طریق WalletConnect با دکمه نوار اتصال
Web3: Connect Through WalletConnect With the Connection Bar Button
Web3: اتصال از طریق WalletConnect با دکمه نوار اتصال خلاصه
Web3: Connect Through WalletConnect With the Connection Bar Button Summary
Web3: اتصال خودکار یا قطع اتصال WalletConnect
Web3: Automatically Connect or Disconnect WalletConnect
Web3: اتصال خودکار یا قطع اتصال خلاصه WalletConnect
Web3: Automatically Connect or Disconnect WalletConnect Summary
Web3: تغییر شبکه و حساب با WalletConnect
Web3: Change Network and Account With WalletConnect
Web3: تغییر شبکه و حساب با خلاصه WalletConnect
Web3: Change Network and Account With WalletConnect Summary
Web3: ارائه دهنده پیش فرض برای دسترسی خواندن به بلاک چین اتریوم
Web3: Default Provider for Read Access to the Ethereum Blockchain
Web3: ارائه دهنده پیش فرض برای دسترسی خواندن به خلاصه بلاک چین اتریوم
Web3: Default Provider for Read Access to the Ethereum Blockchain Summary
Web3: تعامل با قرارداد هوشمند SeedTokenFactory
Web3: Interaction With the SeedTokenFactory Smart Contract
Web3: تعامل با SeedTokenFactory خلاصه قرارداد هوشمند
Web3: Interaction With the SeedTokenFactory Smart Contract Summary
Web3: تعمیر ارائه دهنده پیش فرض برای تعامل قرارداد هوشمند
Web3: Fixing the Default Provider for Smart Contract Interaction
Web3: تعمیر ارائه دهنده پیش فرض برای خلاصه تعامل قرارداد هوشمند
Web3: Fixing the Default Provider for Smart Contract Interaction Summary
UI: افزودن یک دکمه برای ایجاد رمز ارز دیجیتال جدید
UI: Adding a Button to Create a New Cryptocurrency Token
UI: اضافه کردن یک دکمه برای ایجاد خلاصه رمز ارزهای دیجیتال جدید
UI: Adding a Button to Create a New Cryptocurrency Token Summary
UI: پنجره گفتگوی رمز جدید
UI: New Token Dialog Window
UI: خلاصه پنجره گفتگوی رمز جدید
UI: New Token Dialog Window Summary
رفع UI: پاک کردن کد رویداد
UI Fix: Clean Up Event Code
رفع UI: پاک کردن خلاصه کد رویداد
UI Fix: Clean Up Event Code Summary
رفع رابط کاربری: هنگام تعویض شبکه، فهرستهای نشانهها را با ترتیب مناسب واکشی کنید
UI Fix: Fetch Token Lists in the Right Order When Switching Networks
رفع رابط کاربری: فهرستهای نشانهها را به ترتیب درست هنگام تعویض شبکه جمعبندی کنید
UI Fix: Fetch Token Lists in the Right Order When Switching Networks Summary
رفع UI: پس از ایجاد یک توکن جدید، لیست توکن ها را بازخوانی کنید
UI Fix: Refresh Token List After Creating a New Token
رفع رابط کاربری: پس از ایجاد یک خلاصه توکن جدید، فهرست توکن را بازخوانی کنید
UI Fix: Refresh Token List After Creating a New Token Summary
رفع رابط کاربری: خطای تعویض شبکه هنگام بارگیری لیست رمزها را مدیریت کنید
UI Fix: Handle Error on Switching Networks When Loading Token List
رفع رابط کاربری: هنگام بارگیری خلاصه فهرست نشانه ها، خطای تعویض شبکه را کنترل کنید
UI Fix: Handle Error on Switching Networks When Loading Token List Summary
رفع UI: نوار پیشرفت را هنگام بارگیری توکن ها به روز کنید
UI Fix: Update Progress Bar When Tokens Are Loaded
رفع UI: بهروزرسانی نوار پیشرفت وقتی توکنها بارگیری میشوند خلاصه
UI Fix: Update Progress Bar When Tokens Are Loaded Summary
رفع UI: رویدادهایی را که SeedTokenFactory جدیدی تنظیم شده است جستجو کنید
UI Fix: Search for Events When a New SeedTokenFactory Is Set
رفع رابط کاربری: خلاصه رویدادهایی را که SeedTokenFactory جدیدی تنظیم شده است جستجو کنید
UI Fix: Search for Events When a New SeedTokenFactory Is Set Summary
رفع رابط کاربری: تغییر نام تابع Copy Pasted (onCreateNewToken)
UI Fix: Rename Copy Pasted Function (onCreateNewToken)
یک رابط کاربری برای ایجاد و فهرست کردن ارزهای دیجیتال ایجاد کنید
Create a User Interface To Create and List Cryptocurrencies
استحکام: مقدمه
Solidity: Introduction
بررسی اجمالی Solidity In Depth
Solidity In Depth Overview
چرا Solidity
Why Solidity
منابع استحکام
Solidity Resources
فصل های بعدی
Following Chapters
برنامه افزودنی کد ویژوال استودیو برای بررسی گرامر Solidity
Visual Studio Code Extension to Inspect Solidity Grammar
استحکام: عناصر واژگانی
Solidity: Lexical Elements
بررسی اجمالی فصل
Chapter Overview
مقدمه عناصر واژگانی
Lexical Elements Intro
فضای سفید
White Space
نظرات
Comments
کلمات کلیدی
Keywords
جداکننده ها و اپراتورها
Separators and Operators
لفظ رشته
String Literals
حروف اعداد صحیح
Integer Literals
شناسه ها
Identifiers
عناصر واژگانی یول
Lexical Elements of Yul
دستورالعمل پراگما
Pragma Directive
حذف مشکلات اپراتور
Delete Operator Issues
مسائل خود تخریبی
Selfdestruct Issues
خلاصه عناصر واژگانی
Lexical Elements Summary
Solidity: مجوز SPDX و دستورالعمل های Pragma
Solidity: SPDX License and Pragma Directives
بررسی اجمالی فصل
Chapter Overview
قرارداد هوشمند خالی
Empty Smart Contract
مجوز SPDX
SPDX License
دستورالعمل پراگما نسخه کامپایلر Solidity
Solidity Compiler Version Pragma Directive
نمایش نظرات