Practical Blockchain for Developers: The Big Book: Programming Blockchain Networks, Consensus Algorithms, Mining, Cryptography, Wallets, Transactions, DApps, Smart Contracts, Ethereum, Solidity, IPFS

Предна корица
5.07.2018 г. - 683 страници

The “Practical Blockchain for Developers” book is a textbook developed as teaching content for an intensive practical training course for blockchain developers, written by Svetlin Nakov and his team at SoftUni. The training consists of:

 - Lectures, practical exercises, learning and coding in class (blockchain networks, wallets, DApps, smart contracts, Solidity)

 - Remote working on practical blockchain projects (online, remote work, in teams / individually)

The course content covers deeply the modern blockchain technologies from the developer’s perspective (blockchain networks, cryptography, wallets, transactions and APIs, consensus algorithms, mining, and offchain transactions) and the practical aspects of DApp development (Ethereum and IPFS, Solidity and smart contracts, the Web3 API to connect Ethereum with JavaScript and other languages, MetaMask and wallets, Truffle and Ganache).

The book follows the “learn by doing” concept and involves the course attendees in live coding exercises and projects every day. Attendees create two practical projects: implement a blockchain network and develop a DApp in Solidity.

The book consists of lessons (represented as slides, designed for teaching in class) and tutorial-style exercises (designed to be followed individually in class or at home).

Table of Contents

Contents ... 2
Detailed Table of Contents ... 4
Preface ... 7
Part I. Blockchain Networks ... 8
Chapter 1.1. Blockchain Introduction ... 9
Chapter 1.2. Blockchain Cryptography ... 39
Chapter 1.3. Consensus Algorithms ... 64
Chapter 1.4. Mining and Pools ... 94
Chapter 1.5. Practical Project: Building a Blockchain Network (Node and Chain) ... 152
Chapter 1.6. Wallets and Wallet APIs ... 162
Chapter 1.7. Transactions in Blockchain ... 206
Chapter 1.8. Crypto-Exchanges ... 246
Chapter 1.9. Practical Project: Building a Blockchain Network (Wallet and Faucet) ... 293
Chapter 1.10. Scaling Blockchains: Offchain, Payment Channels, Sidechains ... 296
Chapter 1.11. Anonymous Transactions ... 329
Part II. DApps and Solidity ... 344
Chapter 2.1. Ethereum Introduction ... 345
Chapter 2.2. Solidity Basics ... 402
Chapter 2.3. Solidity Advanced ... 415
Chapter 2.4. Ganache and Truffle ... 443
Chapter 2.5. DApp Architectures ... 503
Chapter 2.6. Decentralized Storage and IPFS ... 532
Chapter 2.7. Web3 API and MetaMask ... 538
Chapter 2.8. Practical Project: DApp Architecture ... 572
Chapter 2.9. Server-Side Ethereum APIs ... 574
Chapter 2.10. Blockchain and Smart Contract Security ... 623
Chapter 2.11. Other DApp Platforms ... 648
Chapter 2.12. Practical Project: DApp Implementation ... 677
Conclusion ... 681

Информация за автора (2018)

Svetlin Nakov (http://nakov.com) is a passionate blockchain engineer, trainer and experienced developer in broad range of technologies. He is a technical advisor in several blockchain ICO projects (LockTrip, Academy School of Blockchain, Tokenize Xchange, Bountie, WeiDex). Svetlin has 20+ years of technical background as software engineer, software project manager, consultant, trainer, and entrepreneur with rich experience with the .NET, Java EE, information systems, databases, Web development, JavaScript, PHP and software engineering. He is author of 10 books on computer programming and software technologies, C# and Java, and tens of technical and scientific publications. Svetlin has been a speaker at hundreds of conferences, seminars, courses and other trainings. He holds a PhD degree in computer science, medals from the International Informatics Olympiads (IOI) and the Bulgarian President’s award “John Atanasoff”. He has been a part-time lecturer in Sofia University, New Bulgarian University and the Technical University of Sofia. Currently Svetlin drives the largest training center for software engineers in Bulgaria – the Software University where he teaches thousands of young people in computer science, software development and information technologies.

Библиография