-
Learning by doing
-
Trainers with practical experience
-
Classroom training
-
Detailed course material
-
Clear content description
-
Tailormade content possible
-
Training that proceeds
-
Small groups
In the course Solidity Programming the participant learn the Solidity Language for writing smart contracts that run on the Ethereum Virtual Machine (EVM). In addition to being used for writing smart contracts, Solidity is also used to build decentralized applications (DApps) that run on a decentralized platform like Ethereum.
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.
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.
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.
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.
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.
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.
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.
Basic knowledge of blockchain technology, cryptocurrencies and programming is required to participate in the course 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.
After successful completion of the course participants receive a certificate Solidity Programming.
Module 1 : Solidity Intro |
Module 2 : Smart Contracts |
Module 3 : Data Types |
What is Solidity? Blockchains Cryptocurrencies Smart Contracts Ethereum Virtual Machine Curly Bracket Language Remix IDE Compiler Usage Source File Layout Pragma's Import Paths |
Structure of a Contract State Variables Functions Function Modifiers Events Errors EVM Logging Revert Statements Struct Types Enum Types Inheritance |
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 |
Module 5 : Contract Inheritance |
Module 6 : Decentralized Apps |
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 |
Inheritance Function Overloading Function Overriding Modifier Overriding Constructors Calling Base Constructors Multiple Inheritance Linearization Abstract Contracts Interfaces Libraries |
What are DApps? Benefits of DApps Self Executing Contracts Decentralization Open Source Cryptography Token System Decentralized Finance Ganache Metamask web3.js |