開發區塊鏈框架一直極具挑戰性。讓我們深入探討如何結束這些困難。
Cointelegraph 正在通過其由Koinos Group 的Andrew Levine 撰寫的《區塊鏈開發者的思維》系列,關注從開始到主網及以後的全新區塊鏈的開發。
我們最近發布了Koinos 測試網的第三個也是最終版本,這就是為什麼我想談論一些很少有項目喜歡談論的事情:構建區塊鍊是開發地獄。在本文中,我將解釋為什麼以及如何其他開發人員可以避免陷入困境。
乍一看,構建區塊鏈聽起來並不難。區塊鏈只是完善的加密貨幣學原語的組合,如果實施得當,可以構建一個包含網絡交易歷史可驗證歷史的分類賬。網絡越去中心化,歷史就越值得信賴。
區塊鏈“框架”
為了使構建新的區塊鏈更容易,其他團隊已經發布了區塊鏈“框架”,理論上應該消除開發人員擔心構建區塊鏈本身的需要,這樣他們就可以專注於他們想要構建的任何獨特功能。區塊鏈。 Cosmos、EOSIO 和Polkadot 的Substrate 就是此類區塊鏈框架的示例。
當我們的團隊停止在Steem(世界上第一個免費的區塊鏈)上工作時,我們的初衷是利用現有的區塊鏈框架來構建一個盡可能易於訪問的區塊鏈。我們花了四年時間完善Steem 的免費設計,並認為通過將該解決方案移植到現有的區塊鏈框架中,我們可以在相對較短的時間內交付比任何其他區塊鏈更易於訪問的區塊鏈。
相關:區塊鏈開發者的內心世界:銷毀證明區塊鏈共識
真正的免費和通用
但我們驚訝地發現,現有的框架都不允許我們創造我們希望將其推向市場的那種真正無感覺的用戶體驗。我們不只是想在技術層面上取消費用,我們還想授權開發人員構建免費使用的應用程序。他們還缺乏我們認為提供可接受的開發人員體驗所需的許多其他功能。
通用區塊鏈的力量不是來自區塊鏈工程師構建到區塊鏈中的功能,而是來自開發人員作為智能合約添加到該區塊鏈的功能。對於一個真正應該是可以想像的最通用的區塊鏈的區塊鏈框架來說,這是雙重的,因為整個想法是允許人們構建他們可以想像的任何類型的區塊鏈。然而,作為最有經驗的區塊鏈開發團隊之一,現有框架未能賦予我們以多種方式構建我們想要構建的區塊鏈的能力。
現有框架不僅使開發人員無法創建免費使用的應用程序,而且還迫使開發人員學習新的且通常很困難的編程語言,並極大地限制了應用程序和區塊鏈本身的改進速度。
相關:在區塊鏈開發者的心目中:構建一個免費使用的社交DApp
解放開發者
我們想建立一個區塊鏈,讓開發人員可以自由地構建普通人喜歡使用的非常棒的應用程序。這允許開發人員使用他們已經知道和喜愛的編程語言(我們稱之為“通用語言支持”)工作; 這使得他們的應用程序(以及區塊鏈本身)能夠迅速發展; 而且,最重要的是,它允許他們構建免費使用的應用程序。
但是為了構建區塊鏈,我們首先需要一個真正通用的區塊鏈框架,它不僅可以讓我們構建我們夢想中的區塊鏈,而且作為可以想像的最通用框架的自然結果,應該允許任何人構建他們夢想中的區塊鏈。
Koinos 是終極通用區塊鏈框架,將作為終極無費第一層的基礎:Koinos 主網。 Koinos區塊鏈框架(KBF) 旨在成為可以想像的最簡單的區塊鏈,僅包含構建區塊鏈所需的那些加密貨幣原語和正確的“系統調用”,以允許在帶內添加最廣泛的行為(沒有硬分叉)通過上傳智能合約。
無限升級能力
這種設計的好處是可無限升級,但代價是它使正確的系統調用變得更加重要。錯過系統調用或設計不正確將意味著不得不處理原本可以避免的硬分叉。由於硬分叉非常耗時、具有政治性和破壞性,因此它們是限制區塊鏈自我改進能力的最大單一因素,而應用程序構建在這樣一個平台上的每個開發人員最終都會感受到這一點。
現在我們可以看到應用程序和區塊鏈開發人員是如何陷入開發地獄的:使用他們不習慣的編程語言,在迫使他們納入費用並以蝸牛速度改進的平台上工作。在這種情況下,即使是微小的變化也會帶來令人難以置信的高風險,我們甚至沒有考慮到有數百萬甚至數十億美元處於危險之中的情況。
那是發展地獄。作為必須監督23 個硬分叉的Steem區塊鏈背後的核心開發團隊,我們比幾乎任何人都更了解這個地形,這就是為什麼我們如此致力於消除它,嗯……下地獄。
使用全新的微服務架構從頭開始構建Koinos區塊鏈框架並使其能夠啟動測試網的版本1 和2 是非常具有挑戰性的。但是整合我們從這些測試網獲得的反饋,修復他們暴露的錯誤,並最終確定最重要的系統調用是一個完全不同的層次。但我們經歷了那個開發地獄,希望能夠讓其他人永遠不必這樣做。
預兆
因此,測試網絡v3 不僅僅是測試網的“另一個”版本。它是Koinos區塊鏈框架的最終版本,這就是為什麼我們現在將引用測試網,而不是版本號,而是名稱:Harbinger。這是近兩年工作、識別和實施所需的所有必要係統調用的成果,這些系統調用為區塊鏈開發人員提供了終極自由度,並允許他們的應用程序開發人員從一個比任何其他平台都更快改進的平台中受益區塊鏈在那裡。
當然,每當你試圖解決一個非常重要的問題時,某種程度的開發地獄是不可避免的。你只是想確保你不會採用不必要地增加風險的技術,並且你正在努力實現的目標值得付出代價。
對我們來說,這個目標不僅是讓區塊鏈開發人員(包括我們自己)免於在開發者地獄中花費無數時間,而且還利用這項新技術來構建Koinos 主網:最終無感的第1 層,使開發人員能夠構建非常棒的基於區塊鏈的應用程序。
沒有更多的發展地獄
KBF 旨在通過允許開發人員通過編寫智能合約來構建他們可以想像的任何區塊鏈來消除開發地獄,這比在區塊鏈代碼本身中工作要容易得多。這正是我們現在所處的位置。雖然開發區塊鏈框架非常具有挑戰性,但現在已經結束,完成Koinos 主網所需的只是兩個智能合約:一個用於我們的銷毀證明共識算法,另一個用於治理。
編寫智能合約不僅比區塊鏈開發簡單得多,而且這也意味著區塊鏈開發人員現在可以利用智能合約開發人員可用的不斷擴展的工具,例如我們社區成員之一構建的AssemblyScript SDK。 AssemblyScript 不僅生成比用C++ 編寫的智能合約更高效的智能合約(這令人驚訝),它還使JavaScript 開發人員可以進行智能合約開發。
由於KBF 將任何智能合約開發人員轉變為潛在的區塊鏈開發人員,這意味著JavaScript 開發人員現在可以使用更多語言(例如Rust)來開發自定義區塊鏈。
如果你對運行Harbinger 感興趣,我們讓運行節點變得異常簡單,因此你可以在五分鐘內啟動並運行。
本文不包含投資建議或建議。每一個投資和交易動作都涉及風險,讀者在做出決定時應該進行自己的研究。
此處表達的觀點、想法和意見僅代表作者個人,並不一定反映或代表Cointelegraph 的觀點和意見。
Andrew Levine 是Koinos Group 的首席執行官,這是一個由行業資深人士組成的團隊,通過可訪問的區塊鏈技術加速去中心化。他們的基礎產品是Koinos,這是一種無感覺且可無限升級的區塊鏈,具有通用語言支持。
資訊來源:由0x資訊編譯自BITCOININSIDER。版權歸作者Anonymous所有,未經許可,不得轉載
0X簡體中文版:區塊鏈開發者心目中:如何避免開發地獄