|
![]() |
|||
|
||||
OverviewUnlock the future of programming on the Ethereum blockchain with Solidity smart contracts Explore and learn smart contract development on the Ethereum blockchain with Beginning Solidity: Learn to Program Smart Contracts with Solidity by Alexandros Dolgov. This book is a guide to taking your first steps and becoming comfortable with Solidity programming, providing accessible learning material for existing and aspiring programmers who wish to build decentralised applications on the Ethereum platform. This book provides insights into the creation, compilation and deployment of smart contracts and decentralised applications. Beginning Solidity demystifies the complexities of the Ethereum blockchain and the Solidity language. From understanding the origins and use of money to basic blockchain concepts such as accounts, transactions, block explorers, wallets and consensus mechanisms, to applications like understanding and creating fungible (ERC-20) and Non-fungible tokens (NFTs) or developing a decentralized auction platform, Alexandros Dolgov covers it all. Through practical examples and real-world scenarios, this book equips you with the knowledge to design, develop, and deploy smart contracts and decentralized apps, positioning you at the forefront of the blockchain revolution. You'll also: Learn Solidity programming through the Foundry framework making Solidity programming incredibly accessible for those with or without prior coding experience Become comfortable with the development of Ethereum smart contracts and the deployment of decentralized applications across various sectors Stay up to date in the rapidly evolving field of blockchain technology with cutting-edge practices and adaptable learning strategies For both practicing and aspiring programmers and developers eager to explore the possibilities of the Ethereum blockchain and Solidity programming, Beginning Solidity is an essential read. Embark on an exciting journey to become proficient in creating blockchain-based applications that can transform the digital world. Grab your copy today and take the first step towards mastering the future of decentralized technology. Full Product DetailsAuthor: Alexandros DolgovPublisher: John Wiley & Sons Inc Imprint: John Wiley & Sons Inc Dimensions: Width: 18.80cm , Height: 3.80cm , Length: 23.10cm Weight: 0.794kg ISBN: 9781394290611ISBN 10: 1394290616 Pages: 576 Publication Date: 25 March 2025 Audience: Professional and scholarly , Professional & Vocational Format: Paperback Publisher's Status: Active Availability: Available To Order ![]() We have confirmation that this item is in stock with the supplier. It will be ordered in for you and dispatched immediately. Table of ContentsIntroduction xix Chapter 1: What Is Money and a Brief History of It? 1 What Is Money? 1 Money as a Technology 2 Medium of Exchange 3 Store of Value 4 Unit of Account 5 The History and Evolution of Money 5 Barter 6 Primitive Money 7 Primitive Money: Conclusion 10 Modern Types of Money 10 Coins 11 Paper Money 11 Bretton Woods Conference 12 Modern Types of Money: Conclusion 12 Cryptocurrencies 13 Bitcoin 13 Bitcoin’s Monetary Properties 14 Bitcoin’s “Monetary Policies” 14 Ethereum and Smart Contracts 16 What Are Smart Contracts? 17 Tokenization of Real-World Assets 17 Decentralized Autonomous Organizations 22 Decentralized Exchanges 22 Lending/Borrowing: Aave 23 Travala 23 VitaDAO 24 BeerDAO 24 CityDAO 24 Cryptocurrencies and Smart Contracts: Conclusion 24 Chapter 1 Questions 25 Chapter 2: An Introduction to Ethereum’s Architecture 27 Basics of Ethereum 27 The Blockchain Trilemma 31 Smart Contracts 31 The Ethereum Virtual Machine 34 The Ether Coin 34 The Byzantine General’s Problem and Ethereum’s Consensus Mechanism 35 Gas Fees 36 The Scaling Problem of Ethereum 38 Layer 2 Solutions 40 Rollups 40 Validiums 42 Side-Chains 42 Sharding 43 Danksharding 44 Layer 3 Solutions 44 Ethereum: Toward Finalization 44 Chapter 2 Questions 45 Chapter 3: Wallets, Metamask, and Block Explorers 47 Understanding Wallets 48 Hosted Wallets 48 Advantages, Disadvantages, Best Practices, and Case Studies 48 Browser Wallets 51 Advantages, Disadvantages, and Case Studies 51 Desktop Wallet (Full Nodes) 52 Advantages and Disadvantages 53 Desktop Wallet (Lightweight) 53 Advantages and Disadvantages 53 Mobile Wallets 54 Advantages, Disadvantages, and Case Studies 54 Cold Storage/Hardware Wallet 55 Advantages, Disadvantages, and Best Practices 55 Convert Your Old Phone into a Hardware Wallet 57 Multisignature Wallets 59 Hierarchical Deterministic Wallets 59 Installing MetaMask 60 Logging In Again with the Seed Phrase 62 Changing Networks 64 Engaging with Faucets 65 Sending Your First Transaction 71 Block Explorers 74 Test Network (Testnet) Block Explorer 77 Block Explorer: Transaction Anatomy 78 Block Explorer: Block Anatomy 78 Connecting to DApps 82 Block Explorer: Anatomy of a Wallet 88 Chapter 3 Questions 98 Chapter 4: Remix, Data Types, Visibility, and Helloworld 101 What Is Programming? 101 Starting with Solidity, Remix, and HelloWorld 102 Creating the HelloWorld.sol File in Remix 103 SPDX-License-Identifier 106 Solidity Versions and the pragma Line 107 Contract HelloWorld {} 110 Data Types and Variables in Solidity 111 int 111 uint 112 string 112 address 113 bool 113 bytes 114 Function Visibility Levels 116 Function Anatomy 116 Visibility Levels 116 View and Pure Keywords 117 HelloWorld Contract 117 Chapter 4 Questions 120 Chapter 5: Zoomanagement 123 Setting Up the ZooManagement Contract 123 Structs 130 Arrays 132 Dynamic Arrays 134 Fixed-Size Arrays 135 addAnimal 137 getAnimal 138 Mappings 139 Creating a Mapping 140 Contract Importing 144 Inheritance 149 Single Inheritance 150 Multilevel Inheritance 152 Multiple Inheritance 154 Hierarchical Inheritance 156 Deploying and Running a Contract from Another Contract 158 Chapter 5 Questions 166 Chapter 6: Installing Microsoft Visual Studio Code And Foundry 169 What Is Microsoft VS Code? 169 Microsoft Visual Studio Code Layout 172 Explorer Pane 172 Search Pane 174 Extensions 176 Night Owl 177 Polacode 179 Bookmarks 179 Cloak 180 Solidity Juan Blanco 180 Even Better TOML 180 GitHub Copilot 181 VS Code Keyboard Shortcuts 181 Working on Different Files at the Same Time 184 Mirror/Mini-Map 186 Zen Mode 187 VS Code Terminal 187 Installing Foundry 191 Installing libusb and Homebrew 192 Starting a Foundry Project 196 Chapter 6 Questions 202 Chapter 7: Foundry Zoomanagement 205 The Foundry Project Files 205 Compiling a Contract 208 Introduction to Anvil 211 Local Smart Contract Deployment 215 Using Scripting to Deploy a Contract 218 Contract Interaction with Foundry 224 Deploying a Smart Contract to a Test Network Through Foundry 227 Chapter 7 Questions 235 Chapter 8: Fundraising Contract 237 Setting Up a Fundraising Contract 237 Oracles 240 Deploying the Price Feed Contract Through Remix 251 Solidity Interfaces 254 Creating Libraries 259 Withdraw Function 262 Resetting the Mappings 263 Resetting the listOfSenders Array 264 Sending ETH from a Contract 265 Transfer 265 Send 265 Call 266 Constructor 267 Modifiers 269 Testing the Contract by Deploying It on a Test Network 270 Immutability and Constants 278 Custom Errors 283 Receive and Fallback Functions 284 Chapter 8 Questions 285 Chapter 9: Building An Erc-20 Cryptocurrency 287 Introduction to ERC-20 287 The Process of Creating an Ethereum Improvement Proposal 289 Building an ERC-20 Token with OpenZeppelin 290 Building an ERC-20 Manually 299 Deploy Your ERC-20 Cryptocurrency 307 Chapter 9 Questions 311 Chapter 10: Borrowing and Lending Protocol 313 What Is a Stablecoin? 313 Types of Stablecoins 316 Creating the Stablecoin 322 The Stablecoin Skeleton 327 Chapter 10 Questions 338 Chapter 11: Building An Erc-721 Nonfungible Token 341 What Is an NFT? 341 Setting Up the NFT Project 343 ERC-721 Contract Breakdown 347 Introduction to IPFS 362 Downloading, Installing, and Using IPFS 363 Downloading IPFS 363 Installing the Browser Extension 368 Using IPFS 371 OpenSea 377 Creating the ERC-721 Contract 382 Writing a Deployment Script and Deploying on Sepolia 384 Deploying the Contract 387 Chapter 11 Questions 394 Chapter 12: Upgradable Smart Contracts 397 Introducing Upgradable Contracts 397 Preset Versatility Upgrades 398 Introduction to CertiK 399 Contract Succession Upgrade 405 Proxy Delegated Upgrade 406 Using Delegatecall 410 OpenZeppelin UUPS Proxies 417 Importing UUPSUpgradeable.sol 422 Initializer 426 Deploying the Proxy Contract 431 Chapter 12 Questions 433 Chapter 13: Decentralized Autonomous Organizations 435 What Is a DAO? 435 Exploring the Aave Protocol 439 Snapshot 444 Potential Voting Architectures for a DAO 447 The DAO Toolkit 448 Setting Up the DAO Project 448 Adding the RetrievableNumber.sol Contract 451 Voting Token Contract 454 OpenZeppelin’s Contracts Wizard 457 The Governance Contract 460 Timelock Contract 469 Chapter 13 Questions 470 Chapter 14: Introduction to Smart Contract Security 471 The Importance of Smart Contract Security 471 Smart Contract Auditing and Security Best Practices 472 Security Techniques Used for Auditing 478 Having High Confidence and Assurance That Your Smart Contract Is Safe 479 Chapter 14 Questions 480 Chapter 15: THE FIRST (OR One OF THE FIRST) Stepping Stones 481 Uploading Projects to GitHub 481 Finding a Job in the Crypto Industry 484 Continuing with Solidity Education 484 Appendix: Answers to Chapter Questions 487 Chapter 1 What Is Money and a Brief History of It? 487 Chapter 2 An Introduction to Ethereum’s Architecture 491 Chapter 3 Wallets, MetaMask, and Block Explorers 494 Chapter 4 Remix, Data Types, Visibility, and HelloWorld 499 Chapter 5 ZooManagement 502 Chapter 6 Installing Microsoft Visual Studio Code and Foundry 505 Chapter 7 Foundry ZooManagement 508 Chapter 8 Fundraising Contract 511 Chapter 9 Building an ERC-20 Cryptocurrency 515 Chapter 10 Borrowing and Lending Protocol 519 Chapter 11 Building an ERC-721 Nonfungible Token 522 Chapter 12 Upgradable Smart Contracts 524 Chapter 13 Decentralized Autonomous Organizations 528 Chapter 14 Introduction to Smart Contract Security 531 Index 535ReviewsAuthor InformationALEXANDROS DOLGOV grew up questioning the limits of centralized systems, inspired by Greece’s financial turmoil and his father’s stories of post-Soviet economic collapse. Discovering Bitcoin, DeFi, and DAOs ignited his vision for a decentralized future, leading him to master Solidity as a tool for change. Holding an MSc in Blockchain and Digital Currency from the University of Nicosia and the Chartered Blockchain Analyst Certification, Alexandros has contributed to key areas of the blockchain ecosystem, including DeFi, Decentralized Identity, and Token Economics. A guest lecturer and passionate advocate, Alexandros now brings his expertise to this book, empowering readers to unlock the potential of smart contract development. Tab Content 6Author Website:Countries AvailableAll regions |