Implementacja DApps w Ethereum z wykorzystaniem kontraktów w Solidity
Czas trwania szkolenia:4 dni (32h)
Kod kursu:ETHER/DAPPS
Poziom zaawansowania:
O szkoleniu Implementacja DApps w Ethereum z wykorzystaniem kontraktów w Solidity
W cenie otrzymasz:
- Materiały szkoleniowe
- Certyfikat ukończenia szkolenia
- W przypadku szkolenia w trybie stacjonarnym zapewnimy Ci również lunch oraz sprzęt niezbędny do nauki
Dla kogo?
- Programiści, którzy w praktyce chcą uruchomić i poznać zasady działania inteligentnych kontraktów oraz aplikacji rozproszonych wykorzystujących blockchain Ethereum, rozproszony system plików oraz protokół rozproszonej komunikacji
Wymagania
- Od uczestników wymagana jest znajomość obsługi komputera, pracy z wierszem poleceń oraz znajomość podstawowych zasad programowania, podstaw składni HTML, CSS i JavaScript
Zalety
- Podczas warsztatów uczestnicy samodzielnie uruchomią własną instancję środowiska Ethereum
- Uczestnicy zaimplementują i przetestują kontrakty inteligentne dla tokenu oraz systemu trwałego nośnika wykorzystując ekosystem OpenZeppelin
- W trakcie szkolenia uczestnicy utworzą aplikacje rozproszone DApps korzystające z uruchomionych kontraktów
- Uczestnicy uruchomią rozproszony system plików do przechowywania aplikacji i dokumentów oraz rozproszoną komunikację pomiędzy węzłami sieci
- Praktyka przed teorią - wszystkie szkolenia technologiczne prowadzone są w formie warsztatowej. Konieczna teoria jest wyjaśniana na przykładzie praktycznych zadań
- Konkretne umiejętności - w ramach każdego szkolenia rozwijamy praktyczne umiejętności związane z daną technologią i tematyką
- Nauka z praktykami - wszyscy trenerzy na co dzień pracują w projektach, gwarantuje to dostęp do eksperckiej wiedzy i praktycznego know-how
Cele szkolenia
- Poznanie zasad działania i zastosowań ekosystemu rozproszonego Internetu Ethereum obejmującego blockchain i kontrakty inteligentne, rozproszony system plików oraz rozproszoną komunikację
Program
Architektura i działanie Ethereum
- Blockchain jako rozproszona baza danych
- Architektura Ethereum
- Budowa blockchain w Ethereum oraz wykorzystywane algorytmy
- Uruchamianie prywatnego blockchain
- Przebieg i realizacja transakcji
- Aplikacja jako element blockchain
- Ether i gas jako paliwo dla transakcji
Kontrakty inteligentne (smart contracts) i programowanie w Solidity
- Maszyna wirtualna Ethereum
- Składnia języka Solidity
- Dostępne kompilatory i inne narzędzia dla Solidity
- Kompilacja i uruchamianie kontraktu
- Rodzaje dostępnej pamięci
- Typy danych oraz zmienne globalne
- Rejestracja zdarzeń
- Ekosystem OpenZeppelin
- Wybrane wzorce kontraktów: tokeny ERC20, ERC721, ERC777 i ERC1155
- Komunikacja pomiędzy kontraktami
- Techniki i narzędzia testowania
- Usuwanie i aktualizacja kontraktów w blockchain
- Zasady bezpiecznej implementacji kontraktów, wzorce typowych operacji
- Ataki na kontrakty
Ekosystem Ethereum
- Blockchain jako baza danych transakcji
- Rozproszony system plików jako nośnik aplikacji
- Protokół rozproszonej komunikacji Whisper
- Architektura aplikacji rozproszonej DApps
Aplikacje rozproszone DApps
- Interfejs programisty DApps dla Ethereum i jego rozszerzanie
- Komunikacja za pomocą RPC i WebSocket
- Interakcja przeglądarki z blockchain
- Zlecanie transakcji oraz przeglądanie blockchain, interakcja z kontraktami
- Wykorzystanie rozproszonego systemu plików
- Uruchomienie rozproszonej komunikacji
- Niezawodność i bezpieczeństwo aplikacji rozproszonych
- Komunikacja z kontraktami w aplikacji Java
Zastosowania i kierunki rozwoju DApps
- Kierunki rozwoju kontraktów inteligentnych oraz języka Solidity
- Wybrane zastosowania DApps na przykładzie dostępnych aplikacji