1. 程式人生 > >聽說你買了 EOS ,連代碼什麽樣都不知道?

聽說你買了 EOS ,連代碼什麽樣都不知道?

EOS 區塊鏈 區塊鏈技術

最近發現很多人投資了 EOS,卻並不關心 EOS 目前的開發進度和技術細節,如果你投資了 EOS, 還有一定的技術基礎,那就更應該關心 EOS 的開發情況了,下面我們就從 EOS 的源代碼說起:

Github 是目前最流行的源碼管理網站,無數明星項目都在 Github 上開發,這其中當然也包括了 EOS。 EOS 在 Github 上的地址:

https://github.com/EOSIO/

裏面有多個目錄,首先就是白皮書,這是區塊鏈項目的根基:

https://github.com/EOSIO/Documentation

技術分享圖片

裏面的中文版翻譯的實在不怎麽樣,有基礎的推薦直接看英文版。

說點題外話:如果你想提高英語的話,持有一點 EOS 代幣吧,你會急於搞清楚白皮書在講什麽,要是想短時間快速提高英語,持有大量 EOS 代幣吧,別問我是怎麽知道的^_^。

源代碼在此:

https://github.com/EOSIO/eos

技術分享圖片

主要代碼都在這個工程裏,不過有一部分引用了別的工程,同步時使用 --recursive 命令可以全部下載下來。這裏可以看到,EOS 是用 C/C++ 開發的,Dan 說主要原因是 C/C++ 的效率非常高,可以支撐商業級的應用。

至於如何下載/同步源代碼,可以查看 Github 的教程或者搜索一下,這裏推薦使用 Github 的官方桌面客戶端:

https://desktop.github.com/

技術分享圖片

桌面客戶端最大的優點是可以圖形化地看到每天的代碼更新,就像看著一個 baby 在生長。你會發現 EOS 代碼的開發速度是非常快的。

另外怎麽能少了官方的 wiki:

https://github.com/EOSIO/eos/wiki

技術分享圖片

有了這個 wiki 基本就能指導你從零開始開發一個智能合約,需要一定基礎。不過別怕,誰也不是生下來就一米八的。

有了這些,我們來看看 EOS 源碼的目錄結構吧:

├─.git // github 工程配置文件

├─build // 編譯後的程序在此

├─CMakeModules // EOS 項目使用CMake構建

├─contracts // 示例智能合約代碼

│ ├─currency //示例代幣合約

│ ├─dice

│ ├─eos

│ ├─eoslib

│ ├─exchange

│ ├─infinite

│ ├─proxy

│ ├─simpledb

│ ├─skeleton

│ ├─social

│ ├─storage

│ ├─test_api

│ └─tic_tac_toe // 使用智能合約開發的小遊戲

├─Docker // EOS 支持 Docker 容器

├─docs // HTML 格式的 API 文檔

├─libraries //各種庫代碼

│ ├─abi_generator // 自動 abi 生成器

│ ├─appbase // eos 服務器端插件的框架

│ ├─chain

│ ├─chainbase

│ ├─egenesis

│ ├─fc

│ ├─src

│ ├─native_contract

│ ├─types

│ ├─utilities

│ └─wasm-jit // eos 智能合約使用 WabAssembly 架構

├─plugins // 服務器端的各種插件代碼

│ ├─account_history_api_plugin

│ ├─account_history_plugin

│ ├─chain_api_plugin

│ ├─chain_plugin

│ ├─database_plugin

│ ├─db_plugin

│ ├─faucet_testnet_plugin

│ ├─http_plugin

│ ├─net_api_plugin

│ ├─net_plugin

│ ├─producer_plugin

│ ├─template_plugin

│ ├─txn_test_gen_plugin

│ ├─wallet_api_plugin

│ └─wallet_plugin

├─programs // 主程序代碼

│ ├─abi_gen

│ ├─codegen

│ ├─debug_node

│ ├─eos-walletd // EOS 服務器端錢包插件

│ ├─eosc // EOS 客戶端

│ ├─eosd // EOS 服務器端

│ ├─launcher

│ └─snapshot

├─scripts

├─tests 測試程序

└─tools // 工具集

那麽下一步,我們就要嘗試建立 EOS 所需的環境,並編譯 EOS 工程了,敬請期待。


聽說你買了 EOS ,連代碼什麽樣都不知道?