舉報

會員
Hands-On Blockchain for Python Developers
Blockchainisseenasthemaintechnologicalsolutionthatworksasapublicledgerforallcryptocurrencytransactions.Thisbookservesasapracticalguidetodevelopingafull-fledgeddecentralizedapplicationwithPythontointeractwiththevariousbuildingblocksofblockchainapplications.Hands-OnBlockchainforPythonDevelopersstartsbydemonstratinghowblockchaintechnologyandcryptocurrencyhashingworks.Youwillunderstandthefundamentalsandbenefitsofsmartcontractssuchascensorshipresistanceandtransactionaccuracy.Asyousteadilyprogress,you'llgoontobuildsmartcontractsusingVyper,whichhasasimilarsyntaxtoPython.Thisexperiencewillfurtherhelpyouunraveltheotherbenefitsofsmartcontracts,includingreliablestorageandbackup,andefficiency.You'llalsouseweb3.pytointeractwithsmartcontractsandleveragethepowerofboththeweb3.pyandPopulusframeworktobuilddecentralizedapplicationsthatoffersecurityandseamlessintegrationwithcryptocurrencies.Asyouexplorelaterchapters,you'lllearnhowtocreateyourowntokenontopofEthereumandbuildacryptocurrencywalletgraphicaluserinterface(GUI)thatcanhandleEthereumandEthereumRequestforComments(ERC-20)tokensusingthePySide2library.Thiswillenableuserstoseamlesslystore,send,andreceivedigitalmoney.Towardtheend,you'llimplementInterPlanetaryFileSystem(IPFS)technologyinyourdecentralizedapplicationtoprovideapeer-to-peerfilesystemthatcanstoreandexposemedia.Bytheendofthisbook,you'llbewell-versedinblockchainprogrammingandbeabletobuildend-to-enddecentralizedapplicationsonarangeofdomainsusingPython.
目錄(180章)
倒序
- coverpage
- Title Page
- Copyright and Credits
- Hands-On Blockchain for Python Developers
- About Packt
- Why subscribe?
- Packt.com
- Foreword
- Contributors
- About the author
- About the reviewer
- Packt is searching for authors like you
- Preface
- Who this book is for
- What this book covers
- To get the most out of this book
- Download the example code files
- Download the color images
- Conventions used
- Get in touch
- Reviews
- Section 1: Blockchain and Smart Contracts
- Introduction to Blockchain Programming
- The rise of cryptocurrency and blockchain
- Blockchain technology
- Signing data in blockchain
- From linked list to blockchain
- Cryptography
- Symmetric and asymmetric cryptography
- The hashing function
- Proof of work
- Consensus
- Coding on the blockchain
- Other types of blockchain programmers
- Summary
- References
- Smart Contract Fundamentals
- Installing an Ethereum development environment
- Installing Node.js
- Installing Truffle and Solidity
- Installing Ganache
- Writing a smart contract
- Deploying a smart contract to Ethereum blockchain
- Interacting with smart contracts
- Sending ether to smart contracts
- Why smart contracts?
- Summary
- Further reading
- Implementing Smart Contracts Using Vyper
- Motivations behind Vyper
- Installing Vyper
- Creating a smart contract with Vyper
- Deploying a smart contract to Ganache
- Interacting with smart contracts
- Going deeper into Vyper
- Data types
- Withdrawing ethers
- Other data types
- Useful built-in functions
- Events
- Interacting with other smart contracts
- Compiling code programmatically
- Other tricks
- Summary
- Section 2: Web3 and Populus
- Interacting with Smart Contracts Using Web3
- Introduction to decentralized applications
- Installing web3
- Geth
- Geth console
- Understanding the web3.py library
- Gas and gas price
- Nonce
- Creating a transaction on Rinkeby
- Interacting with smart contracts using web3.py
- Launching a smart contract with Geth
- Launching a smart contract with web3
- Playing with a smart contract
- Summary
- Populus Development Framework
- Setting up Populus
- Adding support for Vyper
- Smart contract unit test
- Using arguments in the constructor
- Deploying a smart contract with Populus
- Summary
- Building a Practical Decentralized Application
- Developing a simple voting application
- Deploying a smart contract that has arguments in its constructor
- Developing a commercial voting application
- Developing a token-based voting application
- Summary
- Further reading
- Section 3: Frontend Decentralized Applications
- Frontend Decentralized Application
- Setting up the Qt GUI library
- Choosing a GUI library
- Installing Qt for Python
- Crash course on Qt for Python
- Layout
- Other widgets
- Callback
- Threading
- Writing the smart contract for the Twitter–like application
- Test
- Fixtures
- Building the GUI frontend for the Twitter–like application
- Summary
- Section 4: Cryptocurrency and Wallets
- Creating Token in Ethereum
- Token smart contract
- Mist
- ERC20
- Selling a token
- Stable coin
- Summary
- Further reading
- Cryptocurrency Wallet
- Advanced features of the PySide2 library
- Testing application
- Advanced features of Qt for Python or PySide2
- Building a cryptocurrency wallet
- Blockchain class
- Thread classes
- Identicon and Icons
- Building widgets
- Account widget
- Sending a transaction widget
- Token widget
- Test
- Considerations when building a cryptocurrency wallet
- Security
- User experience
- Summary
- Section 5: Decentralized Filesystem
- InterPlanetary - A Brave New File System
- The motivation behind IPFS
- Merkle DAG
- Merkle tree
- Directive Acrylic Graphs (DAGs)
- Content addressing
- The Merkle DAG data structure
- Peer-to-peer networking
- The notion of closeness of data and nodes
- XOR distance
- Buckets
- Summary
- Using ipfsapi to Interact with IPFS
- Installing the IPFS software and its library
- Content hashing
- Protobuf
- Multihash
- Base58
- Combining protobuf multihash and base58
- The ipfsapi API
- IPNS
- Pinning
- Pubsub
- Mutable File System
- Other APIs
- Summary
- Further reading
- Implementing a Decentralized Application Using IPFS
- Architecture of the decentralized video-sharing application
- Architecture of a video-sharing smart contract
- Architecture of a video-sharing web application
- Writing the video-sharing smart contract
- Launching a private Ethereum blockchain
- Creating a bootstrap script
- Building the video-sharing web application
- Views
- Models
- Templates
- Urls
- Demo
- Note
- Summary
- Further reading
- Other Books You May Enjoy
- Leave a review - let other readers know what you think 更新時間:2021-07-02 13:13:35
推薦閱讀
- 耀世數學明珠
- 世界是隨機的:大數據時代的概率統計學
- Origin 9.0科技繪圖與數據分析超級學習手冊
- 數學也可以這樣學:自然、空間和時間里的數學
- 你學的數學可能是假的
- 數獨游戲全集
- 小學數學廣角教學研究
- Hands-On Blockchain with Hyperledger
- CAE分析大系:ANSYS疑難問題實例詳解
- 跟愛因斯坦一起玩數學(進階篇)
- 概率論與數理統計
- 數學多大點事兒
- 迷人的數學+美麗的數學(共2冊)
- 線性代數
- 不可思議的自然對數
- 深度學習的數學
- 10倍速心算:寫給中小學生的56個心算技巧
- 不焦慮的數學:孩子怎么學,家長怎么教
- 為什么科學很重要
- 高維數據非負矩陣分解方法
- 線性代數與Python解法
- 數學糖果1
- 跟愛因斯坦一起玩數學(初級篇)
- 離散的世界:那些年我們談論的離散數學
- 矩陣力量:線性代數全彩圖解+微課+Python編程
- 微積分的歷程:從牛頓到勒貝格
- 薛定宇教授大講堂(卷Ⅱ):MATLAB微積分運算
- 關注四種意識,培養學生的問題解決能力:成都高新區區域數學課題推進的智慧實踐
- ANSYS Workbench 19.0結構分析從入門到精通
- 數學的故事