Course details

Ethereum Smart Contracts with Solidity: Features of the Solidity Language

Ethereum Smart Contracts with Solidity: Features of the Solidity Language

Expected Duration
Lesson Objectives
Course Number
Expertise Level


In this 12-video course, participants sample various features of the Solidity language, such as the different types which are available; the kinds of functions which can be included within your smart contracts; and the object-oriented concepts that are supported, such as abstract contracts, inheritances, and interfaces. You will survey some of the special operations in Ethereum, which can be coded in Solidity, such as the transfer of Ether and the development tools which are available, such as the Remix IDE (integrated developer environment) and the Truffle Suite. Learn about the array types contained within Solidity—fixed length or dynamic—which are similar to those in other programming languages, and the important differences: no real null types or undefined types, an attribute which results in default values if not explicitly set. By the end of this course, you will have a firm grasp of the concepts and features of the Solidity programming language, and its benefits, as well as its limitations when creating your Blockchain solutions.

Expected Duration (hours)

Lesson Objectives

Ethereum Smart Contracts with Solidity: Features of the Solidity Language

  • outline the key concepts covered in this course
  • identify the primitive data types supported in the Solidity language such as boolean and int and the kinds of operations which can be performed with them
  • describe the composite types in Solidity such as structs and mappings and their limitations
  • recognize what constitutes a reference type in Solidity and the way such data need to be handled
  • specify integer types to represent ether or time units and recall the globally accessible properties and functions
  • set the visibility level of functions to restrict access when required
  • describe payable functions in Solidity and the use of function modifiers to control the execution of functions
  • recognize the control structures supported by Solidity and the use of events and inheritance
  • list the different functions available in Solidity to transfer ether to a contract account and their features
  • identify the role of the solc compiler and the Remix IDE in building and working with Solidity smart contracts
  • describe the steps involved in contract development and recognize how the Truffle Suite can simplify them
  • recall the characteristics of fallback functions and the features of the Truffle Suite
  • Course Number:

    Expertise Level