SKILL BENCHMARK

Blockchain Smart Contract Competency

  • 15m
  • 15 questions
The Blockchain Smart Contract Competency benchmark measures your ability to use the Remix IDE to develop, deploy, and then interact with smart contracts, as well as how to define and use abstract contracts. You will be evaluated on your knowledge about how to perform assignment operations, work with data structures like maps, and use structs with composite data. A learner who scores high on this benchmark demonstrates that they have the skills to build the back end and front end of any decentralized application and become a full-stack blockchain developer.

Topics covered

  • access properties related to the next block to be added to the blockchain and the current transaction from within a smart contract
  • build a smart contract and examine the outputs generated by the Solidity compiler
  • connect the Remix IDE to the private Ganache network and deploy your smart contract to it
  • create smart contracts with functions of varying visibility and recognize their access restrictions
  • define a setter function to update the state variables of a smart contract
  • demonstrate how to invoke a function to transmit Ether to a specified Ethereum account
  • deploy a smart contract to the private network on Ganache via Metamask
  • distinguish between while and do while loops
  • invoke the selfdestruct function to remove the bank smart contract from the Ethereum network
  • recognize the effect of using the "pure" access modifier for a function which does not access the contract state
  • recognize the effects of provisioning variables in memory or storage during assignment operations
  • use a struct to store and access composite data within one object
  • use the deployed escrow smart contract to supply the required approvals for ether transfer and verify the behavior when the transfer is rejected
  • use the selfdestruct function to delete a smart contract from the Ethereum network
  • work with events and use them in smart contracts to log activities