Opleiding: Solidity Programming
In the course Solidity Programming from SpiralTrain the participant learn the Solidity Language for writing smart contracts that run on the Ethereum Virtual Machine (EVM).Solidity Intro
The course Solidity Programming starts by explaining the basics of the Solidity language syntax and role of the Ethereum Virtual Machine (EVM). Also attention is paid to setting up a development environment for Solidity.
Smart Contracts
Next the structure of smart contracts and how smart contracts work is discussed. The role of state variables, functions and events is explained as well. Several common use cases for smart contracts are demonstrated.
Data Types
The different data types that are available in the Solidity language are part of the course Solidity Programming as well. Covered are basic data types like integers, booleans, addresses and strings. And also more complex data types and user defined data types like arrays, structs and enums are treated.
Creating Contracts
Subsequently the writing of a basic contract in Solidity is treated. Attention is paid to contract constructors, functions and the handling of events. Also logging in contracts and testing and debugging Solidity contracts is covered.
Contract Inheritance
Next it is explained what contract inheritance is and and why is it useful. Function visibility, function modifiers, immutable and constant state variables are part of subject matter in this respect. And the use of polymorphism in Solidity is treated as well.
Decentralized Apps (DApps)
Finally attention is paid to the creation of decentralized apps (DApps) in Solidity.
It is demonstrated how to build a DApp using Solidity and a front-end framework like React. Interacting with a DApp using web3.js, a local blockchain like Ganache and a wallet like MetaMask is also shown.
Audience Course Solidity Programming
The course Solidity Programming is intended for developers who want to learn how to develop applications for the Ethereum blockchain with the Solidity programming language.
Prerequisites Course Solidity Programming
Basic knowledge of blockchain technology, cryptocurrencies and programming is required to participate in the course Solidity Programming.
Realization Training Solidity Programming
The theory is treated on the basis of presentation slides. The theory is explained in more detail by means of demos. There is an opportunity to practice after each module.
Certificate Course Solidity Programming
After successful completion of the course participants receive a certificate Solidity Programming.
Modules
Module 1 : Solidity Intro
- What is Solidity?
- Blockchains
- Cryptocurrencies
- Smart Contracts
- Ethereum Virtual Machine
- Curly Bracket Language
- Remix IDE
- Compiler Usage
- Source File Layout
- Pragma's
- Import Paths
Module 2 : Smart Contracts
- Structure of a Contract
- State Variables
- Functions
- Function Modifiers
- Events
- Errors
- EVM Logging
- Revert Statements
- Struct Types
- Enum Types
- Inheritance
Module 3 : Data Types
- Value Types
- Booleans
- Integers
- Strings
- Fixed Point Numbers
- Address
- Address Members
- Fixed Size Byte Arrays
- Address Literals
- User Defined Types
- Arrays and Structs
Module 4 : Creating Contracts
- Constructors
- State Variable Visibility
- Function Visibility
- Immutable State Variables
- Constant State Variables
- Getter Functions
- Function Modifiers
- Parameters and Return Variables
- Ether Units
- Time Units
- Transaction Properties
Module 5 : Contract Inheritance
- Inheritance
- Function Overloading
- Function Overriding
- Modifier Overriding
- Constructors Calling
- Base Constructors
- Multiple Inheritance
- Linearization
- Abstract Contracts
- Interfaces
- Libraries
Module 6 : Decentralized Apps
- What are DApps?
- Benefits of DApps
- Self Executing Contracts
- Decentralization
- Open Source
- Cryptography
- Token System
- Decentralized Finance
- Ganache
- Metamask
- web3.js