Reader small image

You're reading from  Learn Ethereum - Second Edition

Product typeBook
Published inAug 2023
PublisherPackt
ISBN-139781804616512
Edition2nd Edition
Concepts
Right arrow
Authors (3):
Xun (Brian) Wu
Xun (Brian) Wu
author image
Xun (Brian) Wu

Xun (Brian) Wu is a senior blockchain architect and consultant. With over 20 years of hands-on experience across various technologies, including Blockchain, big data, cloud, AI, systems, and infrastructure, Brian has worked on more than 50 projects in his career. He has authored nine books, which have been published by O'Reilly, Packt, and Apress, focusing on popular fields within the Blockchain industry. The titles of his books include: Learn Ethereum (First Edition), Learn Ethereum (Second Edition), Blockchain for Teens, Hands-On Smart Contract Development with Hyperledger Fabric V2, Hyperledger Cookbook, Blockchain Quick Start Guide, Security Tokens and Stablecoins Quick Start Guide, Blockchain by Example, and Seven NoSQL Databases in a Week.
Read more about Xun (Brian) Wu

Zhihong Zou
Zhihong Zou
author image
Zhihong Zou

Zhihong Zou is an innovative technology leader with over 20 years of experience delivering cutting-edge enterprise solutions. He has led transformative solutions in telecommunications, healthcare, and government that leverage blockchain, AI/ML, and modern cloud architectures to solve complex business challenges. As an insightful visionary and trusted advisor, Zhihong is passionate about driving digital transformation and future-proofing organizations. He holds an M.Sc degree in computational mathematics and an M.Sc in computer science. Zhihong has authored multiple papers on numerical computing and two popular editions of the book Learn Ethereum. In his free time, Zhihong enjoys sharing his blockchain expertise as an advocate and writer.
Read more about Zhihong Zou

Dongying Song
Dongying Song
author image
Dongying Song

Dongying Song has been a noteworthy leader in Blockchain, Ethereum, big data, ML, data science, and the cloud application development space for over 8 years. As an experienced software engineer and data scientist, she has worked for top-tier banks and pharmaceutical and technology companies. Dongying holds a master's degree in statistics from Columbia University and majored in mathematics during her undergraduate years. Her recent activities focus on Blockchain, Ethereum, and smart contract developments.
Read more about Dongying Song

View More author details
Right arrow

Ethereum Tools and Frameworks

In the world of blockchain technology, Ethereum has emerged as a leading platform for Decentralized Applications (DApps) and smart contract development. As you embark on your journey to learn Ethereum, it’s essential to familiarize yourself with the tools and frameworks that form the backbone of this dynamic ecosystem.

In this chapter, we will delve into the popular tools and frameworks that you are bound to encounter frequently throughout your Ethereum learning experience. By gaining an understanding of these tools, you will be equipped with the knowledge necessary to navigate the Ethereum ecosystem effectively and apply it to your own Ethereum project development endeavors. The topics that we will cover in this chapter are as follows:

  • Understanding the Ethereum development tools and framework
  • Introducing Alchemy
  • Working with Ethereum storage
  • Getting to know the popular smart contract libraries
  • Programming languages and...

Technical requirements

For all the source code for this book, please refer to the following GitHub link: https://github.com/PacktPublishing/Learn-Ethereum-Second-Edition/.

Understanding the Ethereum development tools and framework

For the DApp software development life cycle, efficient use of popular tools, frameworks, and libraries can help reduce the time from prototype to production and reduce the risks that come with smart contracts. As more people are using and testing these tools, they are becoming more stable.

There are many different Ethereum development tools and frameworks on the market today, all of which represent different standards. Here are some of the most popular tools and frameworks:

  • Hardhat
  • Truffle
  • Infura
  • Alchemy
  • IPFS

In Chapter 9, Smart Contract Development and Test Fundamentals, we discussed the Truffle tool. In this section, we will review one of the most popular tools listed here—Infura. To gain a comprehensive understanding of the other tools available, it is highly recommended to visit their official websites. These websites serve as valuable resources where you can explore in-depth information...

Introducing Alchemy

Alchemy provides a powerful blockchain developer platform to build scalable and reliable decentralized applications with a suite of developer tools. It has millions of users in 197 countries worldwide. Many top crypto projects, including CryptoKitties, OpenSea, Augur, 0X, Deversifi, Trust Wallet, Kyber, Radar Relay, and so on, use the Alchemy platform to support their core infrastructure needs. Developers can simply set up Alchemy’s development environment and use Alchemy’s powerful APIs to build and prototype DApps quickly.

Alchemy offers a suite of core products for blockchain developers. Here are the four core products that are available:

  • Alchemy Supernode: This is an innovative infrastructure engine built with dedicated distributed systems and maintains real-time data correctness and supports node auto scalability. Here is the Supernode architecture diagram:
Figure 11.13 – Alchemy architecture

Figure 11.13 – Alchemy architecture

...

Working with Ethereum storage

In Chapter 5, Deep Research and Latest Developments in Ethereum, we provided a high-level overview of different decentralized data and storage solutions in Ethereum, including IPFS and Swamp. In this section, we will delve into more detail and review some steps to get started with some of the most popular decentralized solutions.

In the current cloud-based data storage model, data is centralized and stored on servers owned by a cloud vendor. Access to the data is provided via location-based addressing, and the vendor assumes responsibility for the various background processes and operations. By utilizing the vendor’s services, users can upload their data to a cloud server and establish a data recovery strategy to ensure availability.

With a security access policy, data encryption, and other approaches, you can secure your data in cloud storage. The centralized storage solution makes data easier to manage, scale, and secure. However, because...

Programming languages and integrated development environments

In Ethereum, most smart contract developers use the Solidity programming language to create and write contracts. With powerful tools provided by the community, including Truffle, Hardhat, Infura, Alchemy, OpenZepplin, Remix, and so on, Solidity development has become much easier. In this section, we will explore another Ethereum smart contract programming language – Vyper, which is an experimental Python-based, statically typed, and contract-oriented programming language.

Vyper

Vyper seeks to be a general-purpose, auditable, secure, and human-readable programming language that compiles contracts down to EVM bytecode, similar to Solidity. It has a deliberately limited set of features compared to Solidity with the aim of producing contracts that are more secure, have optimized gas usage, and are easier to understand.

Main features of Vyper

By prioritizing security, simplicity, and readability, Vyper offers...

Summary

In this chapter, we learned about various Ethereum tools, frameworks, and APIs. First, we reviewed Ethereum’s development tools and frameworks and explored Infura, the Alchemy level one node provider.

Then, we studied popular testing tools, running Solhint as an example linting utility tool, along with the smart contract static analysis framework Slither. Then, we reviewed the Web3j Ethereum client API. By working through examples using IPFS and Swarm, we understood the basics of the Ethereum storage concept. We also discussed the most popular smart contract library: OpenZeppelin. At the end of this chapter, we introduced the Vyper programming language. Having written a simple contract, we now understand how to compile and deploy a Vyper contract on the blockchain.

In the next chapter, we will continue our journey by creating an Ethereum private chain.

lock icon
The rest of the chapter is locked
You have been reading a chapter from
Learn Ethereum - Second Edition
Published in: Aug 2023Publisher: PacktISBN-13: 9781804616512
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
undefined
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $15.99/month. Cancel anytime

Authors (3)

author image
Xun (Brian) Wu

Xun (Brian) Wu is a senior blockchain architect and consultant. With over 20 years of hands-on experience across various technologies, including Blockchain, big data, cloud, AI, systems, and infrastructure, Brian has worked on more than 50 projects in his career. He has authored nine books, which have been published by O'Reilly, Packt, and Apress, focusing on popular fields within the Blockchain industry. The titles of his books include: Learn Ethereum (First Edition), Learn Ethereum (Second Edition), Blockchain for Teens, Hands-On Smart Contract Development with Hyperledger Fabric V2, Hyperledger Cookbook, Blockchain Quick Start Guide, Security Tokens and Stablecoins Quick Start Guide, Blockchain by Example, and Seven NoSQL Databases in a Week.
Read more about Xun (Brian) Wu

author image
Zhihong Zou

Zhihong Zou is an innovative technology leader with over 20 years of experience delivering cutting-edge enterprise solutions. He has led transformative solutions in telecommunications, healthcare, and government that leverage blockchain, AI/ML, and modern cloud architectures to solve complex business challenges. As an insightful visionary and trusted advisor, Zhihong is passionate about driving digital transformation and future-proofing organizations. He holds an M.Sc degree in computational mathematics and an M.Sc in computer science. Zhihong has authored multiple papers on numerical computing and two popular editions of the book Learn Ethereum. In his free time, Zhihong enjoys sharing his blockchain expertise as an advocate and writer.
Read more about Zhihong Zou

author image
Dongying Song

Dongying Song has been a noteworthy leader in Blockchain, Ethereum, big data, ML, data science, and the cloud application development space for over 8 years. As an experienced software engineer and data scientist, she has worked for top-tier banks and pharmaceutical and technology companies. Dongying holds a master's degree in statistics from Columbia University and majored in mathematics during her undergraduate years. Her recent activities focus on Blockchain, Ethereum, and smart contract developments.
Read more about Dongying Song