Home > Online Courses > Training.eos.io Platform

Training.eos.io Platform

eos-coin-eos4853

Eos.io

via Training.eos.io Platform

06.02.2020

Online Educational Course “Smart Contracts 201”

The content of the modules:

Module 1: Assets

  • Introduction to tokens
  • The eosio.token contract
  • The asset type

Module 2: Receiving Transfers

  • on_notify, especially [[eosio::on_notify(“eosio.token::transfer”)]]
  • The old way: custom apply()

Module 3: In-line Actions

  • Review of the eosio.code permission
  • require_recipient()
  • Explanation of why we must use require_auth(get_self()) with require_recipient()
  • <action type>.send(…), the action constructor (permission, action, data)
  • Action wrappers
  • Custom permissions

Module 4: Singletons

  • Appropriate for single-row use cases, such as contract settings
  • Using get() and set()

Module 5: Bonus Lab: Add a “Pot”  to Tic Tac Toe Games

Module 6: Updating Table Schemas and Migrating Data

  • Review of inability to update structure of contract table containing data
  • Description of migration options, including the binary_extension wrapper

Module 7: Getting Data from the Outside World

  • The Oracle Problem
  • Potential exploits (frontrunning, collusion, etc.)
  • Delphi
  • Provable
  • Native EOSIO Oracles
  • LiquidOracles

Module 8: Organizing Action Parameters

  • Action parameter list organization and serializiation
  • Situations requiring packed parameters

Module 9: Randomness

  • Recap of the need for determinism in blockchains
  • Pseudo-randomness and its dangers
  • Multi-party randomness
  • Oracle-based randomness

Module 10: Scheduled and Recurring Actions

  • Deprecated: deferred transactions
  • Provable, LiquidOracles, and other methods for scheduling actions
  • Using contract design to mitigate the need for scheduled actions

Module 11: User-Friendly Resource Management

  • RAM Payer
  • ONLY_BILL_FIRST_AUTHORIZER

Module 12: More to Explore: Interoperability and Testing Frameworks

  • Intro to interoperability/IBC
  • Survey of testing tools available for EOSIO smart contracts
  1. No comments yet.
  1. No trackbacks yet.

Leave a comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.