• Complain

Kevin Solorio - Hands-On Smart Contract Development with Solidity and Ethereum: From Fundamentals to Deployment

Here you can read online Kevin Solorio - Hands-On Smart Contract Development with Solidity and Ethereum: From Fundamentals to Deployment full text of the book (entire story) in english for free. Download pdf and epub, get meaning, cover and reviews about this ebook. year: 2019, publisher: OReilly Media, genre: Computer. Description of the work, (preface) as well as reviews are available. Best literature library LitArk.com created for fans of good reading and offers a wide selection of genres:

Romance novel Science fiction Adventure Detective Science History Home and family Prose Art Politics Computer Non-fiction Religion Business Children Humor

Choose a favorite category and find really read worthwhile books. Enjoy immersion in the world of imagination, feel the emotions of the characters or learn something new for yourself, make an fascinating discovery.

Kevin Solorio Hands-On Smart Contract Development with Solidity and Ethereum: From Fundamentals to Deployment
  • Book:
    Hands-On Smart Contract Development with Solidity and Ethereum: From Fundamentals to Deployment
  • Author:
  • Publisher:
    OReilly Media
  • Genre:
  • Year:
    2019
  • Rating:
    5 / 5
  • Favourites:
    Add to favourites
  • Your mark:
    • 100
    • 1
    • 2
    • 3
    • 4
    • 5

Hands-On Smart Contract Development with Solidity and Ethereum: From Fundamentals to Deployment: summary, description and annotation

We offer to read an annotation, description, summary or preface (depends on what the author of the book "Hands-On Smart Contract Development with Solidity and Ethereum: From Fundamentals to Deployment" wrote himself). If you haven't found the necessary information about the book — write in the comments, we will try to find it.

Kevin Solorio: author's other books


Who wrote Hands-On Smart Contract Development with Solidity and Ethereum: From Fundamentals to Deployment? Find out the surname, the name of the author of the book and a list of all author's works by series.

Hands-On Smart Contract Development with Solidity and Ethereum: From Fundamentals to Deployment — read online for free the complete book (whole text) full work

Below is the text of the book, divided by pages. System saving the place of the last page read, allows you to conveniently read the book "Hands-On Smart Contract Development with Solidity and Ethereum: From Fundamentals to Deployment" online for free, without having to search again every time where you left off. Put a bookmark, and you can go to the page where you finished reading at any time.

Light

Font size:

Reset

Interval:

Bookmark:

Make
Hands-on Smart Contract Development with Solidity and Ethereum by Kevin Solorio - photo 1
Hands-on Smart Contract Development with Solidity and Ethereum

by Kevin Solorio , Randall Kanna , and David H. Hoover

Copyright 2020 Kevin Solorio, Randall Kanna, and David H. Hoover. All rights reserved.

Printed in the United States of America.

Published by OReilly Media, Inc. , 1005 Gravenstein Highway North, Sebastopol, CA 95472.

OReilly books may be purchased for educational, business, or sales promotional use. Online editions are also available for most titles (http://oreilly.com). For more information, contact our corporate/institutional sales department: 800-998-9938 or corporate@oreilly.com .

  • Editor: Michelle Smith
  • Production Editor: Kristen Brown
  • Copyeditor:
  • Proofreader:
  • Indexer:
  • Interior Designer: David Futato
  • Cover Designer: Karen Montgomery
  • Illustrator: Rebecca Demarest
  • December 2019: First Edition
Revision History for the Early Release
  • 2019-08-13: First Release

See http://oreilly.com/catalog/errata.csp?isbn=9781492045267 for release details.

The OReilly logo is a registered trademark of OReilly Media, Inc. Hands-on Smart Contract Development with Solidity and Ethereum, the cover image, and related trade dress are trademarks of OReilly Media, Inc.

The views expressed in this work are those of the authors, and do not represent the publishers views. While the publisher and the authors have used good faith efforts to ensure that the information and instructions contained in this work are accurate, the publisher and the authors disclaim all responsibility ...

Chapter 1. Blockchain Concepts

(illustration of blockchain data structure)

Fundamentally, a blockchain is a data structure. It is a list, or chain, of unique blocks. Each block is itself a list of transactions. On top of this relatively simple list-of-lists data structure is laid the key innovation that blockchains have given us: a protocol for how blocks are added to the chain without any central authority. The cryptocurrencies that have come along with blockchains are not the true innovation, they are a means to an end, providing incentives for people to run software that secures the network. For the first time in history, we have the ability to share digital information without trusting any person, government, organization, or corporation to facilitate the interaction. Ethereum provides a cryptographically secure platform for storing, updating, and removing data from a blockchain using what is referred to as smart contracts. We are still in the early days of learning how to use smart contracts to improve things in the real-world, and its hard to predict how the technology will be used in the future. Similar to the World Wide Web in the 1990s, there has been a global influx of inspiring and creative problem-solvers who are working every day to deploy decentralized applications (DApps) that they hope will make a dent in the universe.

We will be spending most of this book focused on the programming language Solidity and smart contract development. Solidity is a popular programming language for developing smart contracts, and was designed to run on the Ethereum Virtual Machine (EVM). Solidity wasnt the first programming language to run on the EVM, and it certainly isnt the last. Many other languages, such as Vyper, will be written to run on the EVM, attempting to improve on Soliditys design, or provide powerful domain-specific languages. Before we dig into the revolutionary world of smart contracts, we need to lay a conceptual foundation for you to build on. Due to the historically unique nature of running code on a blockchain, its critical for developers to have a sufficient understanding of how the pieces fit together underneath the wonderful abstractions that Ethereum provides.

A Brief History

The concept of a blockchain was born out of the Bitcoin white paper, published in 2008 by the pseudonymous Satoshi Nakamoto. Although the term blockchain doesnt actually appear in the paper, the concept was concisely articulated. Transactions of value exchange enter a peer-to-peer network, and are periodically grouped into blocks, or lists. When a block of transactions is persisted, it is chained to the previous block. This append-only data structure and the protocol that constructs it create an immutable record of transactions.

Bitcoins launch in early 2009 marked the beginning of public blockchain networks. Since then, countless cryptocurrencies have attempted to build on Bitcoins success as a new form of currency. Many early adopters of Bitcoin realized that the properties of a blockchain had applications beyond financial transactions. Communities spawned to try to extend, fork, and build on top of Bitcoin in order to stretch it in directions that were not previously conceived. Ultimately, though, the Bitcoin protocol is purposely constrained and ill-fitted for extension. Blockchain prodigy Vitalik Buterin made the ambitious decision to stop trying to extend Bitcoin and instead create a more general-purpose protocol from scratch. In 2013, Vitalik wrote the Ethereum white paper.

When Ethereum launched in 2015, it quickly became one of the most valuable cryptocurrencies on the planet, second only to Bitcoin. The markets valued Ethereum because it provided a platform for deploying and running smart contracts on a public blockchain. The term smart contract was coined by Nick Szabo in 1994. The idea then was that many legal contracts, notaries, and other analog agreements could be enforced nearly automatically using digital protocols and cryptographic signatures. Despite this historical context, the implementation of smart contracts on Ethereum actually feels more like general-purpose programming than anything specific to legal contracts. The virtual machine as defined by the Ethereum protocol is Turing-complete. This means that as long as you can fit your computations within the limitations of a single block, smart contract developers have few other constraints to contend with beyond their own imagination.

The Character of a Blockchain

Many software developers will have worked with a technology stack that includes: 1) a native mobile user interface and/or web user interface, 2) with a server-side programming language that ultimately interacts with 3) a database. In the most basic versions of these systems, the interactions with the database are essentially instantaneous and permanent.

Like a more typical database, blockchains can store arbitrary data, but they share few other similarities. Becoming a competent smart contract developer means understanding the character of a blockchain. One cannot simply treat Solidity like a server-side programming language, you will quickly find yourself lost and frustrated. Unlike typical databases, interactions with even the most basic smart contract systems are not instantaneous and are not guaranteed to be permanent.

Unlike a typical database which is a single program running on one computer, a blockchain is typically made up of many nodes in a world-wide network. When we refer to nodes in the context of a blockchain, we are referring to software that someone has installed on a computer and connected to the blockchain network. Just like there are many different implementations of the HTTP protocol (Apache, NGINX) called web servers, there are many implementations of the Ethereum protocol (geth, Parity) called Ethereum nodes.

Decentralized Networks

In order to work with a typical database, we need a database connection and sufficient rights to update the database. In the simplest cases theres a single database to contend with, so we need a single IP address to make the connection. The entire system relies on that database being available. If the database were to crash or lose connectivity, or if our rights were revoked, the application stops working. This is what is referred to as a centralized system.

Next page
Light

Font size:

Reset

Interval:

Bookmark:

Make

Similar books «Hands-On Smart Contract Development with Solidity and Ethereum: From Fundamentals to Deployment»

Look at similar books to Hands-On Smart Contract Development with Solidity and Ethereum: From Fundamentals to Deployment. We have selected literature similar in name and meaning in the hope of providing readers with more options to find new, interesting, not yet read works.


Reviews about «Hands-On Smart Contract Development with Solidity and Ethereum: From Fundamentals to Deployment»

Discussion, reviews of the book Hands-On Smart Contract Development with Solidity and Ethereum: From Fundamentals to Deployment and just readers' own opinions. Leave your comments, write what you think about the work, its meaning or the main characters. Specify what exactly you liked and what you didn't like, and why you think so.