|
-- 會員 / 註冊 --
|
|
|
|
精通以太坊智能合約開發 ( 簡體 字) |
作者:熊麗兵 | 類別:1. -> 程式設計 -> 區塊鏈 |
譯者: |
出版社:電子工業出版社 | 3dWoo書號: 49920 詢問書籍請說出此書號!【缺書】 NT售價: 295 元 |
出版日:9/1/2018 |
頁數:252 |
光碟數:0 |
|
站長推薦: |
印刷:黑白印刷 | 語系: ( 簡體 版 ) |
|
加入購物車 │加到我的最愛 (請先登入會員) |
ISBN:9787121349515 |
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 序 |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證) |
作者序: |
譯者序: |
前言:一、本書特色 從2017年開始,我在博客《深入淺出區塊鏈》中發表了30多篇關于區塊鏈的入門文章,廣受大家的好評,也因此收到了電子工業出版社編輯的邀請,希望我寫一本關于區塊鏈開發的書籍。我對市面上的書籍做了調查,發現介紹比特幣和以太坊入門知識的書比較多,但如果想系統全面地學習智能合約開發,卻并沒有更好的資源。于是,在跟出版社編輯商議后,我決定寫一本全面系統介紹智能合約開發的書,本書由此誕生。 本書并沒有對比特幣或區塊鏈的基礎概念進行過多的介紹,因為市面上已經有很多這方面的文章了,大家也可以參考我的博文《區塊鏈技術學習指引》。本書系統介紹以太坊智能合約的開發,并盡量覆蓋智能合約的方方面面,尤其是對智能合約開發語言Solidity進行了詳細解讀。因此本書可以作為一本案頭手冊,方便開發者在開發智能合約時隨時查閱。 本書涉及的Solidity內容是以官方文檔0.4.24版本為標準的,同時加入了很多我自己的理解以及大量的實例。 另外,本書有時將智能合約簡稱為“合約”。 二、讀者對象 本書適合那些對區塊鏈有過基本了解,并想進一步學習智能合約或者去中心化應用的開發人員閱讀。 本書的讀者最好應了解一門語言。例如了解C、JavaScript、Python語言會對學習Solidity有幫助,因為Solidity中的很多思想都參考了這些語言。 本書主要適合以下人員閱讀: ? 區塊鏈應用開發者; ? 區塊鏈技術的從業者; ? 對區塊鏈技術感興趣的人員。 三、本書內容 第1章初探以太坊智能合約,初步認識以太坊、智能合約、Solidity,以及如何使用Solidity編寫一個簡單的智能合約。 第2章介紹以太坊核心概念,例如交易、區塊、費用gas、以太坊虛擬機、以太坊賬戶等概念。 第3章介紹一個使用Solidity編寫的智能合約的組成部分。 第4章介紹Solidity的類型系統,詳細介紹Solidity的各種類型,例如整型、布爾類型、地址類型、函數類型、數組類型及結構體類型等。 第5章介紹Solidity中的單位,包括貨幣單位和時間單位,通過代碼講解單位如何換算。 第6章介紹Solidity 的全局變量及函數,它們其實就是Solidity語言提供的API,例如獲取區塊和交易的屬性、有關數學及加密功能的函數等。 第7章介紹Solidity中的表達式、控制結構、變量作用范圍、錯誤處理等。 第8章介紹合約,包括如何創建合約、合約函數的可見性、合約函數修飾符等。 第9章介紹合約編譯、部署、交互、調試,包括對編譯器的選擇、不同工具的合約部署方法。 第10章介紹合約ABI的作用,以及如何生成ABI。 第11章介紹編寫合約的最佳實踐,一是從編碼規范來考量;二是從安全性來考量。 第12章介紹一些合約案例,如最常見的ERC20標準代幣合約,介紹如何實現代幣增發、資產凍結,以及如何實現一個眾籌(ICO)合約,并詳細介紹ERC721合約的實現方法。 第13章介紹去中心化應用的開發,重點介紹如何使用web3以合約進行交互,以及Truffle框架的使用。 |
內容簡介:本書系統介紹以太坊智能合約的開發,對智能合約相關知識進行全面梳理,尤其是對智能合約開發語言Solidity進行了詳細解讀,智能合約的開發者可以從書中獲得一些啟發和指導。本書可以作為一本案頭手冊,方便開發者在開發智能合約時隨時查閱。 |
目錄:第1章 初探以太坊智能合約 以太坊誕生 智能合約 Solidity語言 一個貨幣合約的例子 本章小結
第2章 以太坊核心概念 區塊鏈基礎概念 共識協議:工作量證明(PoW) 以太坊虛擬機(EVM) 賬戶 以太坊錢包 交易 消息調用 費用(gas) 以太坊網絡 存儲、內存和棧 指令集 委托調用和庫 日志 自毀 以太坊路線圖 本章小結
第3章 Solidity合約內容 Solidity文件結構 合約結構 本章小結
第4章 Solidity數據類型 類型概述及分類 布爾類型(Boolean) 整型(Integer) 定長浮點型(Fixed Point Number) 定長字節數組(Fixed-size Byte Array) 有理數和整型常量(Rational and Integer Literal) 字符串常量(String Literal) 十六進制常量(Hexadecimal Literal) 枚舉(Enum) 函數類型(Function Type) 地址類型(Address) 地址常量(Address Literal) 數據位置(Data Location) 數組(Array) 數組成員 字符串string及字節數組bytes 結構體(Struct) 映射(Mapping) 類型轉換 var類型推導 運算符 本章小結
第5章 Solidity中的單位 貨幣單位(Ether Unit) 時間單位(Time Unit) 本章小結
第6章 Solidity全局變量及函數 區塊和交易的屬性 地址相關屬性和函數 合約相關屬性和函數 本章小結
第7章 Solidity表達式及控制結構 函數參數 控制結構 函數調用表達式 賦值表達式 變量聲明與作用范圍 錯誤處理 本章小結
第8章 合約 合約概述 創建合約 可見性 訪問函數(Getter Function) 函數修改器(Function Modifier) 狀態常量 視圖函數(View Function) 純函數(Pure Function) 回退函數(Fallback Function) 函數重載(Function Overloading) 事件 繼承 構造函數(Constructor) 抽象合約(Abstract Contract) 接口(Interface) 庫 Using for 指令 本章小結
第9章 合約編譯、部署、交互、調試 Solidity編譯器 合約編譯 合約部署及調用 使用geth 使用Remix + MetaMask 合約調試 本章小結
第10章 應用程序二進制接口(ABI) 簡單理解ABI ABI手冊 本章小結
第11章 智能合約最佳實踐 編碼規范 代碼格式 函數編寫規范 安全性考慮 一些安全陷阱 編寫合約的安全建議 本章小結
第12章 合約案例 代幣 高級功能代幣 眾籌(ICO)合約 眾籌智能合約代碼 非同質化代幣ERC721 本章小結
第13章 去中心化應用開發 JSON RPC Web3.js 在geth中使用Web3.js 在應用中使用Web3.js 去中心化應用案例 搭建測試環境 創建智能合約 合約加入事件 使用Web3監聽事件、刷新UI Truffle框架 安裝Truffle Truffle使用案例 在瀏覽器中運行 本章小結 |
序: |
|