前端能讀懂的《區塊鏈開發入門》,外刊君專屬5折優惠碼!
最近掘金小冊子上線了一本關於前端開發區塊鏈的小書—— 《區塊鏈開發入門:從0到1構建基於以太坊智能合約的ICO DApp》 。本書是寫給前端開發者的第一本區塊鏈開發入門指南,通過從0 到1 實戰開發一個ICO DApp 項目(基於V 神的DAICO 設計思想),深入掌握區塊鍊及以太坊技術。
掘金與外刊君一同讀者們送點優惠,可以在購買過程中輸入專屬優惠碼: frontendmagazine ,5折購買本書!購買鏈接點這裡。

下面是關於本書和作者的詳細介紹。
為什麼要選擇區塊鏈開發?

未來已來,只是尚未流行!區塊鏈技術的爆炸式發展引起了很多人的注意,相信看到本文的你早就听說過比特幣、ICO,甚至購買過區塊鏈資產。
區塊鏈技術集密碼學、分佈式網絡、經濟學、社會學等多種學科之大成,使用共識算法(Consensus Algorithm)、公開賬本(Open Ledger)解決了一個實實在在的問題:分佈式環境下節點之間的信任和雙花(Double Spending)問題。
區塊鍊是個天然和錢離得很近的領域,離錢越近就越容易賺到錢,儘早開始準備並在區塊鏈領域站穩腳跟的人將能享受到行業崛起的巨大紅利,就像四年前的微信公眾號,兩年前的知識付費,一年前的微信小程序。
然而,從對身邊同學的觀察來看,前端工程師很容易產生區塊鍊是底層技術、離前端很遠的錯覺。實際上任何區塊鏈應用落地都需要以為用戶創造實實在在的價值為基礎,區塊鏈應用的用戶不會僅限於少數極客,有普通用戶就需要界面,有界面就需要前端工程師。

區塊鏈可以簡單理解為分佈式的、公開的、不可篡改的數據庫,區塊鏈應用在項目架構、前後端交互方式等方面和傳統的端應用會有比較大的差別。從技術棧的視角來看,如下圖,構建在分佈式網絡、公開賬本、共識算法等三個核心要素之上的智能合約和DApp才是未來百花齊放的地方,底層協議會逐漸趨於穩定。
那麼,作為前端工程師,我們在區塊鏈領域的機會到底在哪裡?炒幣?貌似不是長久之計。如果說做成任何事情都需要依賴技能和和運氣兩個要素,不同的事情只是兩種要素的比重不同,那麼理智的人會想盡辦法讓事情更依賴技能,而不是運氣。
隨著技術的發展,區塊鏈開發不再局限於底層的C++/Go 開發,在成熟的應用平台上構建DApp(Decentralized Application,去中心化的應用)要求工程師對區塊鏈底層技術有正確理解即可,大量的開發工作集中在業務邏輯和用戶界面上,隨著底層技術的成熟, 對DApp應用研發工程師的需求也會出現井噴式的增長,而前端工程師在這方面有著天然的優勢。
為什麼要選以太坊?
以太坊(Ethereum)是目前最成熟的、最被廣泛使用的、支持構建和部署基於智能合約的DApp的區塊鏈應用平台,根據State of DApps的統計,目前運行在以太坊上的應用多達1379個,這些DApp全部由兩部分組成:存儲在以太坊網絡上的智能合約(使用Solidity編寫,和JS很類似,未來EOS也會支持使用Solidity編寫智能合約),以及能和智能合約交互的用Web 技術開發的DApp。
圍繞以太坊的DApp開發生態是目前相對最成熟的,比如有開發框架Truffle ,有智能合約在線集成開發環境Remix ,還有專設的StackExchange開發者問答頻道。
為什麼有這本小冊?
雖然有大量的以太坊開發工具可以使用,但是它們的演化和迭代卻非常快,很多工具、框架、庫的教程可能過兩週就就過時了,或者接口不再兼容了,這成了很多新同學入門區塊鏈開發時最大的障礙,這也是這本小冊的切入點:前端工程師寫給前端工程師的以太坊智能合約和DApp開發入門指南。

學會某個新技術的最佳路徑是先掌握最小可用知識(Minimum Actionable Knowledge),然後立馬動手開始做,在做的過程中不斷優化和迭代自己對新技術的理解和掌握。
在這本小冊裡我會把最近半年摸索出來的以太坊智能合約、DApp 開發套路、最佳實踐悉數分享給你,無需花費大量的時間去做諸如啟動本地測試網絡、編譯和運行全節點之類的事情,在只依賴核心工具如solc、Chrome 的情況下,用由淺入深的方式手把手帶你熟悉Solidity 智能合約開發、測試、部署,搭建和智能合約交互的DApp 開發框架,為成為區塊鏈工程師做好準備。
文不如表,表不如圖,在小冊中使用了大量的圖片(目前完成度35%,插圖55副)和類比,即使你完全沒接觸過區塊鏈,也能輕鬆理解區塊鏈世界裡面的關鍵概念。
小冊的內容劃分為5 大部分:
- 入門篇(上):理解區塊鏈原理與以太坊的運行機制,熟悉以太坊開發的基本概念,如賬戶、交易等;
- 入門篇(下):Solidity 開發入門,基於Remix 的智能合約工作流;
- 進階篇:基於現代前端環境的智能合約開發、構建、部署、測試工作流;
- 實戰篇(上):設計、開發、部署、測試ICO 智能合約;
- 實戰篇(下):使用web3、next.js 開發能和智能合約交互的ICO DApp;

作者介紹

- 6 年以上前端開發經驗,4 年大型互聯網公司工作經驗;
- 前端周刊主筆,掘金專欄作者: 王仕軍;
- 掘金小冊作者: 《使用npm script構建超溜的前端工作流》 ;
- 熟知(是的,到現在我還不敢說精通) Javascript、Node.js;
- 入坑區塊鏈1 年,接觸區塊鏈開發半年,對區塊鏈技術有廣泛涉獵;
- 對開發效率和軟件質量有極致追求。
目標是Be a Power User of Everything 。
名人推薦


你會得到什麼?
在小冊中,你將學會在自己熟悉的前端開發環境中組合使用Ethereum、Solidity、JavaScript 編寫、調試、測試、部署和管理自己的DApp 的基本方法。具體包括:
- 理解在以太坊上構建DApp 需要掌握的關鍵概念,比如Gas、Transaction;
- 熟悉以太坊不同測試網絡,以及測試網絡提供工具的使用方法;
- 熟悉Solidity 語言,並用其開發真實的智能合約;
- 熟悉以太坊智能合約調試工具Remix 的基本用法;
- 掌握設計、開發、測試、部署智能合約的工作流和最佳實踐;
- 熟悉以太坊智能合約工具庫web3 最新版的基本使用方法;
- 熟悉web3 和next.js 結合使用的方方面面;
- 構建並掌握完整的、能被重用的智能合約、DApp 應用架構和構建工具鏈條;
適合什麼群體?
- 具備基本的JavaScript 知識,最好是寫過Web 應用,熟悉npm 使用的同學;
- 對區塊鏈、以太坊、智能合約技術感興趣,想做深入了解的前端同學;
- 期望使用區塊鏈技術開發能實際落地的應用的前端同學;
- 期望儲備區塊鏈開發技能,為跨界區塊鏈做好準備的前端同學;
- 期望從事區塊鏈行業的計算機相關專業學生;
- 想抓取區塊鏈行業紅利,靠技能賺更多錢的同學;