Solidity Deep Dive — Syllabus + Video Tutorial Resources

Do you want to learn Solidity and create your own dApps and smart contracts? This free online course gives you a comprehensive overview that is aimed to be more accessible than the Solidity documentation but still complete and descriptive.

▢️ Multimodal Learning: Each tutorial comes with a tutorial video that helps you grasp the concepts in a more interactive manner.

Are you ready to build your skills as a highly sought-after Blockchain Developer or Solidity Engineer? Let’s dive right in! πŸ‘‡

πŸ”₯πŸ”₯πŸ”₯ Feel free to open each tutorial in a new tab and go over all of them for maximum learning effects!

Basic Introduction and Overview

  1. Introduction to Smart Contracts and Solidity
  2. How to Create Your Own Token in Solidity – Easy Example
  3. Blockchain Basics of Smart Contracts and Solidity
  4. Mastering the Ethereum Virtual Machine (EVM)
  5. Ethereum Virtual Machine (EVM) Message Calls

Installation and Technical Requirements

  1. [Overview] Installing Solidity Compiler
  2. How to Install the Solidity Compiler with npm?
  3. How to Install the Solidity Compiler via Docker on Ubuntu?
  4. How to Install the Solidity Compiler via Source Code Compilation?
  5. How to Install the Solidity Compiler via Static Binary and Linux Packages

Guided Example Smart Contracts

  1. [Overview] Top 5 Solidity Smart Contract Examples for Learning
  2. Example 1: How Does the Solidity Voting Smart Contract Work?
  3. Example 2: Simple Open Auction (Explained)
  4. Example 3: Mastering the Solidity Blind Auction Contract
  5. Example 4: Safe Remote Purchase
  6. Example 5: Understanding Modular Contracts

Solidity Layout

  1. Solidity File Layout – SPDX License ID and Version Pragmas
  2. Solidity Layout – Pragmas, Importing, and Comments

Solidity Types

  1. [Overview] Seven Simple Solidity Blocks to Build Your dApp (State Variables, Functions, Modifiers, Events, Errors, Structs, Enums)
  2. Boolean and Integer Types
  3. Fixed Point Numbers and Address Types
  4. Contract Types, Byte Arrays, and {Address, Int, Rational} Literals
  5. String Types, Unicode/Hex Literals, and Enums
  6. User-Defined Value Types
  7. Function Types
  8. Introduction to Solidity Reference Types and Arrays
  9. Solidity Bytes and String Arrays, Concat, Allocating Memory, and Array Literals
  10. Solidity Function Type Examples
  11. Solidity Reference Types – Array Slices and Structs
  12. Solidity Array Members and Manipulation Techniques
  13. Dangling References to Storage Array Elements – Solidity Reference Types
  14. Solidity Mapping Type Made Easy
  15. Solidity Iterable Mapping Type

Operators and Howtos

  1. Solidity Operators and Delete Keyword
  2. Solidity Conversions of Elementary Types
  3. Solidity Ether Units, Time Units, and Global Variables
  4. Solidity – Members of Address Types and Type Information
  5. Solidity: Bytes/String Members | Error Handling | Contract Functions

Expressions and Control Structures

  1. Solidity Control Structures
  2. Solidity Internal and External Function Calls
  3. Solidity Function Calls – Positional vs Named Arguments
  4. Solidity Omitted Function Parameter Names
  5. Smart Contracts – Discover How To Create Them Directly and Indirectly!
  6. Spice Up Your Solidity with Salted Contract Creations & create2
  7. Breaking Down Solidity Expression Trees and Tuple Assignments
  8. Solidity Assignments for Arrays and Structs
  9. Solidity Declarations – A Helpful Guide with Video
  10. Solidity Scoping

Functions and Language Features

  1. Solidity Checked and Unchecked Expressions
  2. Solidity Error Handling with Assert, Require, and Revert Functions
  3. Solidity Function Visibility Made Easy
  4. Solidity Receive Ether Function
  5. Solidity’s Fallback Function – A Simple Guide
  6. Solidity Function Overloading
  7. Solidity Function Constructors – A Helpful Simplified Guide with Video