舉報

會員
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
推薦閱讀
- 普林斯頓微積分讀本(修訂版)
- 奇妙數學史:數字與生活
- 尖叫的數學:令人驚嘆的數學之美
- 世界是隨機的:大數據時代的概率統計學
- 粗糙集的論域擴展理論及在專家系統中的應用
- 其實你對數學的誤會很大(共5冊)
- 走近費曼叢書:費曼講物理:相對論
- MATLAB矩陣分析和計算
- 硅谷工程師爸爸的超強數學思維課:激發孩子的數感天賦
- Blockchain for Decision Makers
- 10堂極簡概率課
- 2頁紙圖解數學:以極聰明的方式,讓你三步讀懂數學
- 圖像處理的分數階微積分方法
- 現代啟發式優化方法及其應用
- 迷人的數學+美麗的數學(共2冊)
- 黎曼猜想漫談:一場攀登數學高峰的天才盛宴
- 概率論思想方法的歷史研究
- 數學簡史
- 12堂魔力數學課
- ANSYS 2020有限元分析從入門到精通(升級版)
- 圖算法:行業應用與實踐
- 數學極客:花椰菜、井蓋和糖果消消樂中的數學
- 簡明實用速算法:高位分段累加算術(第2版)
- 應用工程數學
- 牛津通識課:概率
- 兒童數學思維訓練·初階
- 高等數學(下冊)
- 數學教學探索與研究
- CAE分析大系:ANSYS CFD疑難問題實例詳解
- 兒童數學思維訓練·中階