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