Log In
Or create an account -> 
Imperial Library
  • Home
  • About
  • News
  • Upload
  • Forum
  • Help
  • Login/SignUp

Index
Copyright Brief Table of Contents Table of Contents Foreword Preface Acknowledgments About this book About the author About the cover illustration Part 1.
Chapter 1. A first look at decentralized applications
1.1. What is a Dapp? 1.2. Good and bad Dapps 1.3. A five-minute Dapp implementation Summary
Chapter 2. Understanding the blockchain
2.1. A deeper look at decentralized applications 2.2. What technologies make Dapps viable? 2.3. Ethereum’s history and governance Summary
Chapter 3. The Ethereum platform
3.1. Connecting to Ethereum through the wallet 3.2. Smart contracts: The brain of Dapps 3.3. Connecting to Ethereum with geth 3.4. Managing accounts with geth 3.5. Revisiting SimpleCoin’s contract Summary
Chapter 4. Deploying your first smart contract
4.1. Deploying a contract onto the network 4.2. Interacting with the contract 4.3. Nodeless deployment through MetaMask Summary
Part 2.
Chapter 5. Programming smart contracts in Solidity
5.1. EVM contract languages 5.2. High-level contract structure 5.3. Solidity language essentials 5.4. Time to improve and refactor SimpleCoin Summary
Chapter 6. Writing more complex smart contracts
6.1. Introducing SimpleCrowdsale, a crowdsale contract 6.2. Extending functionality with inheritance Summary
Chapter 7. Generalizing functionality with abstract contracts and interfaces
7.1. Making a contract abstract 7.2. Allowing multiple contract implementations with interfaces 7.3. Real-world crowdsale contracts 7.4. Recap of Solidity’s object-oriented features 7.5. Libraries 7.6. Making SimpleCoin ERC20 compliant Summary
Chapter 8. Managing smart contracts with Web3.js
8.1. Revisiting deployment through geth’s interactive console 8.2. Interacting with SimpleCoin through geth’s console 8.3. Simplifying command-based deployment with Node.js 8.4. Deploying on a private network 8.5. Making development more efficient by deploying on mock networks 8.6. Smoother interaction with SimpleCoin through a web UI Summary
Part 3.
Chapter 9. The Ethereum ecosystem
9.1. The core components 9.2. A bird’s-eye view of the full ecosystem 9.3. Decentralized address resolution with ENS 9.4. Decentralized content storage 9.5. Accessing external data through oracles 9.6. Dapp frameworks and IDEs Summary
Chapter 10. Unit testing contracts with Mocha
10.1. Installing Mocha 10.2. Setting up SimpleCoin in Mocha 10.3. Writing unit tests for SimpleCoin Summary
Chapter 11. Improving the development cycle with Truffle
11.1. Setting up Truffle 11.2. Moving SimpleCoin under Truffle Summary
Chapter 12. Putting it all together: Building a complete voting Dapp
12.1. Defining the requirements of a voting Dapp 12.2. The development plan 12.3. Starting the Truffle project 12.4. Implementing the voting contract 12.5. Compiling and deploying SimpleVoting 12.6. Writing unit tests 12.7. Creating a web UI 12.8. Food for thought Summary
Part 4.
Chapter 13. Making a Dapp production ready
13.1. Event logging 13.2. Designing an upgradeable library 13.3. Designing an upgradeable contract Summary
Chapter 14. Security considerations
14.1. Understanding general security weak spots 14.2. Understanding risks associated with external calls 14.3. How to perform external calls more safely 14.4. Avoiding known security attacks 14.5. General security guidelines Summary
Chapter 15. Conclusions
15.1. Evolution of Ethereum 15.2. Alternative Ethereum implementations 15.3. Beyond the Ethereum blockchain Summary
Appendix A. SimpleCoin inherited from Ownable Appendix B. Full SimpleCrowdsale application Appendix C. SimpleCoin Mocha unit testing suite Appendix D. impleVoting contract The Lifecycle of a Voting Transaction Full View of the Current Ethereum Ecosystem Index List of Figures List of Tables List of Listings
  • ← Prev
  • Back
  • Next →
  • ← Prev
  • Back
  • Next →

Chief Librarian: Las Zenow <zenow@riseup.net>
Fork the source code from gitlab
.

This is a mirror of the Tor onion service:
http://kx5thpx2olielkihfyo4jgjqfb7zx7wxr3sd4xzt26ochei4m6f7tayd.onion