Book Image

Learn Ethereum

By : Xun (Brian) Wu, Zhihong Zou, Dongying Song
Book Image

Learn Ethereum

By: Xun (Brian) Wu, Zhihong Zou, Dongying Song

Overview of this book

Ethereum is a blockchain-based, decentralized computing platform that allows running smart contracts. This book provides a basic overview of how Ethereum works, its ecosystem, mining process, and the consensus mechanism. It also demonstrates a step-by-step approach for building decentralized applications. This book begins with the very basics of Blockchain technology. Then it dives deep into the Ethereum architecture, framework and tools in its ecosystem. It also provides you an overview of ongoing research on Ethereum, for example, Layer 1 and 2 scaling solution, Stablecoin, ICO/STO/IEO, etc. Next, it explains Solidity language in detail, and provides step-by-step instructions for designing, developing, testing, deploying, and monitoring decentralized applications. In addition, you’ll learn how to use Truffle, Remix, Infura, Metamask, and many other Ethereum technologies. It’ll also help you develop your own cryptocurrency by creating ERC20, and ERC721 smart contracts from scratch. Finally, we explain private blockchains, and you learn how to interact with smart contracts through wallets.
Table of Contents (19 chapters)
Free Chapter
1
Section 1: Blockchain and Ethereum Basics
5
Section 2: Blockchain Development Cycle
8
Section 3: Ethereum Implementations
12
Section 4: Production and Deployment
16
Section 5: Conclusion

The Ethereum client API

The Ethereum client API allows you to connect to the Ethereum node and send a transaction to the blockchain. Through the Ethereum client, you can create and run a smart contract. There are many client libraries that have been written by different programming languages. Here is a list of some of them:

Ethereum client API

Programming language

web3.js

JavaScript Web3

ethers.js

Similar to JavaScript Web3

EthereumJS

Provide collections of utility functions

Web3.py

Python web3 API

web3j

Java web3 API

web3.php

PHP web3 API

Nethereum

.net Web3 API

ethereum.rb

Ruby Web3 API

Web3.hs

Haskell Web3 API

KEthereum 

Kotlin Web3 API

Ethereumex

Elixir JSON-RPC client for the Ethereum blockchain

Java, as one of the most popular and influential programming languages, has a large number of...