Blockchain Developer Ethereum (TDBD01)

Obiettivo

Al termine del corso i partecipanti saranno in grado di:

  • Approfondire i benefici e svantaggi delle tecnologie Blockchain
  • Scrivere e leggere Smart Contract sicuri utilizzando il linguaggio Solidity
  • Comprendere il concetto di Gas e come viene calcolato il suo costo
  • Comprendere come sono strutturate le transazioni
  • Comprendere ed evitare bug costosi ed errori di programmazione
  • Creare applicazioni che interagiscono con gli Smart Contract
  • Web3.js
  • Installare, configurare e usare il framework Truffle
  • Scrivere test con il framework Truffle
  • Comprendere il workflow di sviluppo e deployment
  • Utilizzare e creare private network, test network and the public main network


Durata

3 giornate


Destinatari

Professionisti sia in ambito aziendale che IT che mirano ad avere un ruolo professionale come architetti/sviluppatori blockchain su Ethereum


Prerequisiti

  • È necessario avere una conoscenza di base di JavaScript e HTML.
  • È consigliato avere una conoscenza di base di C ++ o Java, data types, git repositories.


Argomenti trattati

BLOCKCHAIN AND SMART CONTRACT BASICS

  • What is Blockchain and how does it work?
  • Centralized vs. Decentralized vs. Distributed
  • Blockchain vs. Databases
  • Bitcoin vs Ethereum
  • What are Smart Contracts?
  • How are Smart Contracts used?

SMART CONTRACT PROGRAMMING BASICS

  • Advantages and Drawbacks of Smart Contracts
  • High-Level Language vs. Low-Level
  • Smart Contracts with Solidity
  • Types of Variables in Solidity
  • Function/Variable Visibility
  • Smart Contract Constructors
  • Setter- and Getter-Functions

UNDERSTANDING DECENTRALIZED INFORMATION AND WEB3

  • Blockchain Access structures and Architectures
  • Blockchain Access vs. centralized RESTful API
  • Understanding Web3.js API
  • Understanding Transactions and Consensus
  • Private Keys, Public Keys and Signatures
  • Understanding privacy on pubic Blockchains
  • Understanding the architecture of KeyStore’s such as MetaMask or MIST

BASICS OF ETHEREUM AND THE EVM

  • Ethereum Denominations
  • Understanding EVM and the ABI Interface
  • Calls vs. Transactions
  • Concurrency and Events
  • Use cases of Events
  • LAB
    • Install and Use Ganache
    • Work with Web3.js
    • Define Events
    • Listen and React to Events

SOLIDITY ADVANCED: MODIFIERS, MAPPINGS, STRUCTS AND INHERITANCE

  • Understanding Functions, Mappings and Structs
  • When to use Modifiers
  • Libraries vs. Inheritance
  • Understand and use Modifiers
  • Add Mappings and Structs
  • Use Inheritance to increase auditability

UNDERSTANDING DEPLOYMENT AND COSTS

  • Understand Development and Deployment Cycles
  • Understanding Solidity Compilation and Deployment
  • Gas and Gas-Costs
  • Upgradeability and Data Migration Techniques
  • Understand the moving Parts: Compiler, Blockchain, API, KeyStore

MINING, PROOF OF WORK VS. PROOF OF AUTHORITY

  • What is Mining in PoW? Consider bestes online casino 2021.
    • How blocks are generated
    • PoW vs. PoA (vs. PoS)
  • Understanding Go-Ethereum or Ganache/TestRPC for local development
  • Understanding Private Blockchains vs. Public Blockchains
  • LAB
    • Installing and using Ganache
    • Installing and using Go-Ethereum
    • Connecting to Ganache/Go-Ethereum from Remix and Web3.js
    • Interact with the Blockchain from HTML/JS

WORKING IN TEAMS, TESTING AND VERSIONING

  • Understanding what Truffle is
  • How Manage Code for Teams
  • Understanding Migrations
  • Understanding Unit-Testing with Truffle
  • LAB
    • Download and Setup Truffle
    • Adapt the standard Truffle-Project
    • Write A Unit Test


Esame di Certificazione

I dettagli della certificazione del Blockchain Developer Ethereum possono essere reperiti al seguente link: https://blockchaintrainingalliance.com/products/cbde.

L’esame di Certificazione (in modalità on line) viene effettuato in un centro Person Vue autorizzato