Book Image

Ethereum Smart Contract Development

By : Mayukh Mukhopadhyay
Book Image

Ethereum Smart Contract Development

By: Mayukh Mukhopadhyay

Overview of this book

Ethereum is a public, blockchain-based distributed computing platform featuring smart contract functionality. This book is your one-stop guide to blockchain and Ethereum smart contract development. We start by introducing you to the basics of blockchain. You'll learn about hash functions, Merkle trees, forking, mining, and much more. Then you'll learn about Ethereum and smart contracts, and we'll cover Ethereum virtual machine (EVM) in detail. Next, you'll get acquainted with DApps and DAOs and see how they work. We'll also delve into the mechanisms of advanced smart contracts, taking a practical approach. You'll also learn how to develop your own cryptocurrency from scratch in order to understand the business behind ICO. Further on, you'll get to know the key concepts of the Solidity programming language, enabling you to build decentralized blockchain-based applications. We'll also look at enterprise use cases, where you'll build a decentralized microblogging site. At the end of this book, we discuss blockchain-as-a-service, the dark web marketplace, and various advanced topics so you can get well versed with the blockchain principles and ecosystem.
Table of Contents (18 chapters)
Title Page
Dedication
Packt Upsell
Contributors
Preface
Index

Common design patterns


Recently, my dad retired and found comfort in his passion of cooking. He has his own set of spices that he does not even share with my mom. From chicken to chickpeas, whatever dishes he prepares have a typical hint of his signature masala mix. He argues that the flavor is not about the spices he uses, but the pattern he applies to mix his spices while designing his recipes.

So, what is a design pattern? In software engineering parlance, it is generally a piece of pseudo-code that represents a generic solution that can be reused while developing applications to avoid reinventing-wheel scenarios. A common example would be the functionality of passcode-based user-authentication. Most applications require this basic functionality and they are almost similar in design. A user has to first register with the application. The application then sends an OTP or confirmation link to set up up a new passcode and registers a new user. Once a registered user has to log in, they have...