Skip to content

An online course of learning Solidity from 0 to 1 (Chinese)

Notifications You must be signed in to change notification settings

RamonLiao/Solidity_From0to1_Hahow

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 

Repository files navigation

Solidity From 0 to 1

This repo are learning notes of an online course of Learning Solidity from 0 to 1 (Chinese) on Hahow.

Lecturer: XiXi Huang


1. Introduction

This course includes the introduction to blockchain, Bitcoin, Ethereum. Each student can learn the fundamental skills of Solidity and practical tips of saving Gas fees and security methods.


2. Courses and Assignments

Classes Description Material Links
Class 1 - 5 Introduction to Blockchain
Class 6 Cyber security and key pairs
Class 7 Crypto ecosystems, crypto exchanges, crypto wallets
Class 8 - 13 Introduction to Ethereum, EVM, Ether, EIP, ERC
Class 14 - 19 Introduction to Smart Contract 14.sol / 17.sol / 18.js
Class 20 Basic Solidity: Data type (Integer, Float, boolean, Address, Bytes, String 20.sol
Class 21 Basic Solidity: Storage (mapping, array, struct) 21.sol
Class 22 Basic Solidity: Functions 22.sol
Class 23 Basic Solidity: Events 23.sol / 23_erc.sol
Class 24 Basic Solidity: Transaction and blockchain info (sender, ETH, time, difficulty, block height 24.sol
Class 25 Basic Solidity: Callback, Payble, Fallback 25.sol
Class 26 Basic Solidity: ERC20 tokens 26_erc20.sol
Assignment 1 Create your own ERC20 tokens RLC tokens
Class 27 Intermediate Solidity: Exception (Revert, Assert, Require) 27.sol
Class 28 Intermediate Solidity: Modifier 28.sol
Class 29 Intermediate Solidity: Unit conversion (Ether & Time) 29.sol
Class 30 Intermediate Solidity: Structures of contracts & Hash 30.sol
Class 31 Intermediate Solidity: Libraries (Import & using) 31.sol
Class 32 Intermediate Solidity: address() & Self Destruct 32.sol
Class 33 Intermediate Solidity: Reference Types (Memory & Storage) 33.sol
Class 34 Intermediate Solidity: Encapsulation and Constants 34.sol
Class 35 Intermediate Solidity: Abstract contracts, Inherited contract, Polymorphism 35_erc20.sol
Class 36 Intermediate Solidity: Function Types (Public, External, Internal, Private) 36.sol
Class 37 Advanced Solidity: Interface 37.sol
Class 38 Advanced Solidity: ERC721 38_erc721.sol
Assignment 2 Create Animal Capsule Toys Animal Capsule Toys
Class 39 Advanced Solidity: Call API (Oraclize) 39.sol
Class 40 Advanced Solidity: ECRecover and Signature Verification 40.sol
Class 41 Advanced Solidity: Interaction between contracts 41.sol
Class 42 Advanced Solidity: EVM Opcodes 42.sol
Class 43 Advanced Solidity: Overflow 43-1.sol / 43-2.sol
Class 44 Advanced Solidity: getting random numbers 44.sol / 44_attack.sol / 45_oraclize.sol
Assignment 3 Create a game of rock-paper-scissors
Class 45 Advanced Solidity: Attacks samples by invalidating contracts 45-1.sol / 45-2.sol
Class 46 Advanced Solidity: Re-entrancy attack 46.sol / 46_attack.sol
Class 47 Advanced Solidity: Saving Gas fees by compress data 47.sol
Class 48 Advanced Solidity: Saving Gas fees by optimizing the sequence of declaring variables, avoiding repeatitive functions 48.sol
Class 49 Install Ganache and test smart contracts
Class 50 Instantiate EC2 on AWS and deploy a website index_50.html (Demo)
Class 51 - 52 Introduction to frontend and JavaScripts index_51.html (Demo) / index_52.html (Demo)
Class 53 Introduction to Web3.js index_53.html (Demo)
Class 54 Call a wallet to read wallet address, balances index_54.html (Demo) / index_54_v2.html (Demo)
Class 55 Using Infura to read public parameters index_55.html (Demo)
Assignment 4 Create a game of Greedy599 (similar to Fomo3D)

Disclaimer

The assignment and solutions are only for reference purposes to support new learners who may get stuck in assignments. Learning is a long-term journey. Never give up and you will make it!!

About

An online course of learning Solidity from 0 to 1 (Chinese)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published