在卡爾達諾區塊鏈開發人員路線圖部落格系列中,我們研究了卡爾達諾生態系統的不同類型的開發人員角色。 在我們之前的部落格中,我們討論了卡爾達諾開發人員專業化的需求,並解釋了鏈上和鏈下卡爾達諾開發人員的角色。
在本部落格中,我們討論前端區塊鏈開發人員的角色。 前端是 dApp 最關鍵的部分之一,因為它是大多數用戶會定期與之互動的技術。
一個好的應用程式前端可以決定一個專案的成敗。 這也是區塊鏈開發人員與網路開發聯繫的主要方式。 大多數 Web 技術堆疊也存在於區塊鏈世界中,許多區塊鏈開發人員以 Web3 甚至 Web2 專案的 Web 開發人員開始他們的職業生涯。
區塊鏈前端開發
在這種情況下,前端指的是網頁。 在 Web 開發領域,前端不僅僅是網站,但對於區塊鏈技術來說,大多數 dApp 主要透過瀏覽器提供服務。
傳統的網路開發工具在區塊鏈領域中得到了廣泛的應用。 主要的語言是 Javascript 和 Typescript。 長期以來,每一個都是區塊鏈生態系統的重要組成部分。
Vue.js 和 React 等最受歡迎的框架是創建響應式網頁的主要方式。 大多數專案對熟悉這些工具的開發人員有很高的要求,他們透過了解如何使用這些工具可以輕鬆進入該行業。
最後,大多數專案都使用節點套件管理器(npm)來進行這些專案。 這是標準,但最近 Deno(由一些相同的開發人員開發的 npm 競爭對手)在業界獲得了極大的關注。
任何具有一定 Web 開發知識的人都應該熟悉這些工具。 它們以相同的方式應用於區塊鏈世界,或幾乎沒有什麼區別。
那麼,區塊鏈發展有哪些具體要求呢?
區塊鏈開發需求
所提及的工具與普通的 Web 開發相同。
區塊鏈開發的主要區別在於與區塊鏈連接並允許加密錢包形成和執行交易。
這兩項技術不同於大多數 Web 開發人員所熟悉的技術。 讓我們看看這意味著什麼
連接到卡爾達諾區塊鏈
為了擁有一個功能性的 dApp,前端需要向用戶顯示來自區塊鏈的資訊。 這就需要前端主動從網路中查詢資料並按需展示。
這是節點或伺服器的工作。 在區塊鏈中,節點是下載整個分類帳並在從一個狀態移動到另一個狀態時與網路同步的系統。 節點積極參與將最新區塊下載到本地系統。
由於節點在本地擁有帳本最新狀態的副本,因此它可以充當中繼點。 前端開發人員可以快速設定連接點並接收所要求的資訊。
當然,節點對硬體的要求很高,也需要大量的配置。 這導致了一個提供者產業快速提供 API 點供 dApp 使用,這樣開發人員就可以避免設定本機節點。 其中一些是:
- Blockfrost:也許是 Cardano 網路領先的 API 供應商。 當涉及到從帳本和節點通常提供的其他角色查詢資料時,它是最完整的服務之一。
- Koios:一種流行的替代方案,它為 Cardano 提供開源公共 API 查詢層。 使開發人員能夠快速從帳本獲取數據,並為 dApp 提供所有所需資訊。
- Ogmios:它是 Cardano 節點的輕量級橋接口,可建立 Cardano 網路的入口點。
可能其他服務也提供類似的功能,但這三個服務是最受歡迎的。 API 的使用在 Web 開發中很常見,因此該行業的人員應該熟悉使用這些服務。
連接到卡爾達諾加密錢包
前端的另一個主要組件是錢包連接器。 這意味著加密錢包有一種方法可以連接到站點,以便將資訊轉發到後端。 最後,它將指令傳達給區塊鏈,並記錄交易。
錢包連接器可作為使用者和 dApp 之間的主要介面。 錢包控制著用戶的私鑰,只有經過其授權,交易才能轉發。
錢包連接器還必須考慮卡爾達諾上存在的無數不同錢包,包括 Yoroi,這是一個開源錢包,也是卡爾達諾 ADA 持有者的第一個輕錢包。
考慮到其複雜性,許多專案已經開發出管理這部分 dApp 的方法,因此 CIP-30 中指定了將 dApp 連接到錢包的所有要求
- Mesh:是擁有最友善的錢包連接器的項目。 他們的網站上有關於該過程的大量文件和範例。 這是目前實現錢包連接器的最用戶友好的方式。
- Lucid:還具有設定錢包連接器的能力。 它使用許多與傳統 Web 開發相同的技術堆疊,因此大多數人應該熟悉它。
卡爾達諾生態系統發展迅速,因此新專案也可能附帶針對這部分 dApp 的解決方案。 目前,上述兩個是最廣泛採用的,並且已經為卡爾達諾上的許多項目提供服務。