如果已經在區塊鏈上進行了構建,或者計劃構建,那么這里有關于創建區塊鏈應用程序的一些最佳工具的介紹。
要開發區塊鏈應用程序,就需要學習一種編程語言。這些語言可以讓我們創建智能合約代碼,以作為應用程序的后端。
目前,Solidity 是區塊鏈開發中最流行的編程語言。它是一種高級的,面向對象的語言,它從其他語言 (尤其是 C++) 中借鑒了一些元素。
許多開發人員更喜歡學習 Solidity,是因為被看作是事實上的區塊鏈的以太坊使用了 Solidity 來編寫智能合約。除此之外,Solidity 是圖靈完備的,允許我們創建功能豐富的復雜應用程序。
學習 Solidity 是作為區塊鏈開發人員開始旅程的一個很好的開端。Solidity 的流行意味著我們可以訪問為初學者設計的有用的教程、指南和文檔。
Solidity 也可以在其他區塊鏈上運行,只要它們與以太坊虛擬機 (EVM) 兼容。這就意味著我們可以在兼容 EVM 的區塊鏈上部署項目,如幣安智能鏈、Avalanche、Polygon、Matic Network 等。
Solidity 并不是創建智能合約的唯一語言。一種流行的替代方案是 Vyper—— 一種基于 Python 且兼容 EVM 的語言。
雖然 Vyper 的功能和流行程度不如 Solidity,但對于熟悉 Python 的開發人員來說,它是理想的選擇。此外,Vyper 的簡單架構減少了軟件錯誤,簡化了智能合同審計。
Rust 是一種較新的編程語言,它在區塊鏈開發社區中越來越受歡迎。它是一種用于編寫智能合約的低級語言,因其存儲效率、簡單性和可靠性而備受贊譽。
問題是 Rust 不兼容 EVM,所以我們不能在以太坊和 EVM 兼容鏈上部署項目。但是像 Solana, Terra, NEAR, Polkadot 和 Elrond 這樣較新的鏈可以使用 Rust,所以學習這門語言仍然是一項很好的投資。
Solana官網更新開發者資源頁面,為新開發人員聚合學習資源和內容:1月3日消息,Solana開發者生態系統負責人Chase Barker發推稱,上個月更新了Solana Dev頁面,重點是為進入該領域的新開發人員獲得高質量的學習內容,未來的迭代可能會包括更多面向更有經驗的開發人員的開源存儲庫、工具和高級內容。[2023/1/3 22:22:13]
從頭構建去中心化應用程序 (dApp) 可能是一項困難的任務,特別是如果我們必須自己處理每一個微小的細節。幸運的是,我們可以受益于「即插即用」基礎設施的軟件框架,以便輕松創建 dapp。
框架附帶了用于創建、測試和部署代碼的資源 (庫和工具)。從頭開始編寫 dApp 是沒有必要的,因為我們可以使用現成包,然后添加額外的功能。此外,大多數框架都是由經驗豐富的工程師開發和優化的,所以它們都是強大、高效和通用的。
在我們的區塊鏈開發框架列表中,第一個就是 Truffle。Truffle 是一個基于 javascript 的框架,用于開發、測試和部署智能合約。它仍然是區塊鏈行業中最常用的框架之一。
Truffle 提供了創建功能齊全的 dApp 所需的資源,它可以提供從內置的智能合約創建工具到測試區塊鏈的環境。它還具有現成的庫,使得構建以太坊 dApp 的前端更容易。
Hardhat 是另一個被強烈推薦給智能合約開發者的框架。與 Truffle 一樣,Hardhat 是一個基于 javascript 的框架,用于在以太坊上創建、測試、部署和調試應用程序。
Hardhat 是一個全面的工具平臺,它抽象出與區塊鏈軟件開發相關的大多數底層通用功能。因此,我們可以專注于更重要的任務,比如為 dApp 構建核心基礎設施。
Embark 是一個完整的棧開發框架,它允許我們同時構建 dApp 的前端和后端。雖然位列列表的最后,但 Embark 與本節中列出的其他框架一樣好。
Embark 為 dApp 數據存儲、實時代碼測試和智能合約部署提供資源。此外,我們還可以訪問重要的插件,如 Etherscan、Solc、Solium 等。
約50名加密和隱私倡導者在荷蘭抗議Tornado Cash開發者Alexey Pertsev被捕:8月21日消息,一個由大約50名加密和隱私倡導者組成的團體在荷蘭阿姆斯特丹水壩廣場抗議Tornado Cash開發者Alexey Pertsev被捕,其妻子幫助組織并參加了這次示威活動,抗議者認為Alexey Pertsev不應該對編寫開源代碼負責,無論不良行為者如何使用它。
此外未來幾周倫敦可能會舉行第二次抗議活動,目前已有近1500人簽署請愿書參與抗議。(The Block )[2022/8/21 12:38:28]
集成開發環境 (IDE) 通過將核心開發工具組合成一個圖形用戶界面 (GUI) 來幫助應用程序開發。大多數 IDE 都具有代碼編譯、編輯、語法高亮顯示、構建自動化和調試等功能。
Remix 被許多區塊鏈開發人員認為是 IDE 的行業標準。使用 Remix IDE,我們可以編譯、測試和調試智能合約 — 所有操作都可以通過一個直觀的界面完成。
Remix IDE 是用 JavaScript 編寫的,我們可以在任何瀏覽器上使用它,我們也可以在自己的計算機上本地運行它 (作為桌面應用程序)。它提供了一套全面的庫、插件和其他功能,以推動智能合約開發。
EthFiddle 是一個基于瀏覽器的 IDE,用于編寫和調試 Solidity 代碼。如果我們在一個項目上與他人合作,那么 Loom Network 開發的 EthFiddle 是一個很好的工具,有了這個軟件,我們可以輕松地編輯、查找代碼片段,并與他人共享代碼片段以獲得反饋。
EthFiddle 不像 Remix IDE 那樣功能豐富,但它能在演示文稿中共享代碼這一點卻很有用。它提供了設計良好的測試和原型功能,使其成為了所有區塊鏈開發人員的好工具。
我們也推薦 Ethcode,一個用于開發以太坊智能合約的 Visual Studio Code 插件。Ethcode 為編寫、調試和單元測試合約代碼提供了一個初學者友好的開發環境。
代碼是開源的,新的開發人員可以在需要時尋求支持。Ethcode 適用于 Vyper 和 Solidity,可以將智能合約部署到以太坊主網和 Goerli 測試網等。
DFINITY互聯網計算機自5月以來吸引500名開發者:DFINITY基金會表示,互聯網計算機(ICP)在推出后僅10周內就吸引500名開發者和近25萬名用戶使用其應用程序,已經在網絡上運行的應用包括與Reddit、WhatsApp、LinkedIn和Medium類似的應用程序以及各種金融相關項目。在談到日活用戶時,DFINITY創始人Dominic Williams稱,“我們估計,到年底互聯網計算機的DAU將大大超過其他區塊鏈。”(彭博社)[2021/7/30 1:24:16]
除了框架和 IDE 之外,API 和 SDK 也是 Web3 開發者最重要的工具之一。幫助區塊鏈工程師解決開發過程中遇到的具體問題,并幫助 dApp 的創建。
為了簡化不同軟件之間的交互,設計了一個 API (Application Programming Interface)。通過使用 API 請求數據來改進 dApp,我們可以在現有功能的基礎上進行構建。
SDK 是「軟件開發工具包」(Software Development Kit)的簡稱,是針對特定平臺構建應用程序的軟件產品集合。區塊鏈開發 SDK 降低了構建特定于平臺的 dapp 的復雜性。
隨著 NFT 價值的飆升,許多開發人員開始將注意力轉向這個行業。如果打算創建一個 NFT 應用,Alchemy 的 NFT API 是一個完美的工具。
Alchemy NFT API 允許開發人員在用戶友好的界面中顯示不同 NFT 的元數據。它跨多個鏈 (以太坊、Polygon,、Flow 等) 工作,所以買家在選擇 NFT 方面有更大的靈活性。
NFT API 抽象了 NFT 交互所涉及的大多數技術任務。通過將 NFT API 集成到我們的平臺中,買家在驗證和購買 NFT 之前不需要閱讀智能合約。
Thirdweb SDK 對于構建 Web3 應用程序或將 Web3 特性集成到現有應用程序非常有用。例如,我們可以在我們的應用程序中添加「連接錢包」特性,而不需要編寫代碼。
動態 | 閃電開發者提出解決比特幣支付問題路由提案:據CoinDesk消息,一項新的路由提案預計將于今日(5月14日)并入閃電的官方“規范”中,諸多倡導使用閃電技術的用戶表示,該技術可以解決比特幣長期存在的支付問題。科技初創企業Blockstream工程師、該協議作者Christian Decker稱其為“多幀”提議,“允許我們在Onion routing中包含更多信息”,與流行的隱私瀏覽器使用的技術相同。此外,這項提議正進入CoinDesk 2019年共識會議的下一階段。他強調,這一改變將為許多備受期待的閃電功能鋪平道路。[2019/5/14]
Thirdweb 可以用于以下方面:
創建 NFT 市場
在不編寫代碼的情況下啟動 NFT
為治理、社區成員資格和其他目的創建代幣
編程版稅分成 NFT
Thirdweb 目前支持 Fantom, Avalanche, Ethereum 和 Polygon,并承諾在未來支持更多的鏈。雖然智能合約可以免費使用,但 Thirdweb 通過收取代幣合約未來版稅的 5% 來賺錢。
Moralis 是一個 Web3 開發平臺,提供 API 和 SDK,以加快區塊鏈開發周期。Moralis SDK 通過提供現成的功能降低了構建全功能 dApp 的復雜性,例如:
用戶身份驗證
發送和獲取交易
監聽智能合約事件
與智能合約互動
Moralis 的跨鏈 Web3 API 還可以聚合關于賬戶余額、代幣、鏈上交易等的全面信息。它支持最流行的鏈,包括 Avalanche, Polygon, Ethereum 和幣安智能鏈。
默認情況下,大多數智能合約是不可變的,一旦代碼部署到區塊鏈上,就無法做出任何修改。因此,不鼓勵在以太坊主網上測試,因為我們不能在部署后進行更改。
為了解決這個問題,以太坊開發人員可以使用測試區塊鏈網絡 (testnet) 來測試 dapp。測試網絡可以讓我們看到智能合約在區塊鏈上如何工作,允許我們在啟動它之前找到缺陷。
動態 | EOS Canada 宣布為中國 EOS 開發者提供漢化工具:據 IMEOS 報道,EOS Canada 今日在微博宣布為中國EOS 開發者提供漢化工具: eosc — EOS 錢包、投票、賬號管理、與EOS區塊鏈實現各種交互的 cmd 命令行工具。截止目前,EOS Canada 已經為全球 EOS 社區提供如下工具:*eos-go —— 首個在Go語言環境中與 EOS.IO 區塊鏈交互的,成熟的工具包(包括API庫);eos-bios;eosc;eosio.forum;eos-blocksigner;eos-claimer ;BP節點收入預測、分析表 (目前還未漢化)。[2018/9/11]
Ganache 是用于以太坊開發的本地區塊鏈,可以作為命令行工具或桌面應用程序使用。區塊鏈開發人員可以使用 Ganache 部署智能合約和執行測試。
Ganache 工具擁有用戶友好的界面,可以訪問調試信息和區塊鏈數據 (帳戶、區塊、交易)。我們還可以配置其他元素,如區塊時間,以滿足我們的開發需求。
我們可以使用 Ropsten、Goerli 或 Rinkeby 等公共測試網來代替 Ganache。主要的區別是 Ganache 可以離線使用,不需要在線訪問。
一些開發人員更喜歡公共測試網,因為它們模擬了以太坊的行為,可能更適合測試假設。例如,Ropsten 使用類似于以太坊主網的工作證明共識。
雖然測試網是免費使用的,但我們需要在瀏覽器錢包中測試以太幣 (ETH) 才能完成交易。
雖然智能合約有令人興奮的應用程序,但它們的功能有限,因為它們只能訪問存儲在鏈上的信息。這給任何構建依賴外部信息來執行功能的智能合約的開發人員帶來了問題。
這就是預言機發揮作用的地方。
區塊鏈預言機從不同的來源收集真實世界的信息,并將其傳遞給運行在區塊鏈上的智能合約。這些信息可以以多種形式顯示:實時價格、天氣信息、體育結果等等。
選擇去中心化的預言機是很重要的,因為它們更難被惡意的參與者操縱,并且 (主要) 提供可靠的信息。許多流行的 dapp,如 Kyber、Synthetix 和 Compound,都使用去中心化的預言機來執行智能合約。
目前,Chainlink 是市場份額領先的去中心化預言機解決方案。Chainlink 于 2017 年推出,為多個區塊鏈的智能合約提供「可靠和防篡改」數據。
通過 Chainlink,我們可以將智能合約連接到現實世界的各種數據源。例如,我們可以創建一個 dApp,獎勵預測現實事件結果的用戶。
其他去中心化預言機解決方案包括 Band Protocol, Witnet 和 Universal Market Access (UMA)。這些應用激勵選定的先知提供準確的信息,保持鏈下數據的完整性。
在構建 dApp 時,我們將需要與區塊鏈交互 — 無論是讀取鏈上數據還是向區塊鏈寫入數據。為此,我們那需要連接到區塊鏈節點;區塊鏈節點保存了整個區塊鏈的歷史記錄,可以發送 / 查詢區塊鏈數據。
問題是維護完整的以太坊節點是昂貴的、耗時的和復雜的。因此,建議區塊鏈開發人員使用區塊鏈節點提供者 (node-as-a-service)。節點提供程序為客戶端處理區塊鏈基礎設施,使我們可以專注于構建和擴展 dApp。
如果我們正在尋找合適的區塊鏈節點提供商,那么 Alchemy Supernode 值得一試。Supernode 提供了一套完整開發的 API,用于與區塊鏈交互并獲取關鍵的區塊鏈數據。
使用該工具,連接到區塊鏈網絡層就像注冊和接收 API 密鑰一樣簡單。該服務不僅適用于以太坊,也適用于其他項目 —— 因此在使用區塊鏈方面會有充分的靈活性。
Alchemy 的「節點即服務」工具還有以下優點:
免費注冊
隨量擴展基礎設施
增強的 API
可靠
Supernode 旨在適應我們的需求,并提供無縫的可擴展性。這樣,我們就不會因為節點基礎設施而失眠,并且我們的用戶可以享受更好的體驗。
如果我們想了解其他可用項目,還可以查看其他節點提供程序。包括 QuickNode、Infura、GetBlock、BlockDaemon 和 Chainstack。
在構建 dapp 時,許多 Web3 開發人員很快發現跟蹤鏈上活動是困難的。在大多數情況下,在獲得關鍵的應用程序信息 (如實時使用信息、用戶采納率和代幣指標) 之前,我們需要做一些繁重的工作。
然而,如果我們想要改進 dApp 并擴大用戶基礎,分析這些數據點是很重要的。為此,我們需要使用像 Alchemy Monitor 這樣的工具,它可以更容易地為我們的 Web3 應用程序進行分析。
Alchemy Monitor 是一個強大的,專門用于監控 dApp 基礎設施和獲得用戶活動的工具。Alchemy Monitor 提供 dApp 健康狀況的實時更新,并可以顯示 API 調用、錯誤率和響應時間。
Alchemy Monitor 儀表板還可以跟蹤 dApp 的使用情況,并為用戶行為提供有用的見解。它還有一個漂亮的自動警報系統,可以在我們的 dApp 出現重大故障之前盡早標記問題。
開發人員并不是唯一需要 dApp 活動實時信息的人;用戶也需要知道 dApp 上發生了什么。例如,用戶可能想知道在 dApp 中執行的交易是否成功。
這就是為什么使用 Alchemy Notify 推送通知服務是一個很好的主意。添加推送通知到我們的 dApp 可能是優秀和糟糕用戶體驗的區別。Notify 為應用程序用戶提供以下信息:
交易通知;
解決活動警報;
Gas 價格警報,以及更多。
如果今年有什么啟示的話,那就是安全性應該是任何區塊鏈項目的第一優先級。加強智能合約的安全性比在我們的新 dApp 中添加花哨的功能更值得考慮。以下是今年一些最大的漏洞:
Axie Infinity (被黑 6.15 億美元)
Inverse Finance (被黑 1500 萬美元)
Elephant Money (被黑 2250 萬美元)
還有更多的黑客攻擊,但這些應該會給我們一個基本的概念,智能合約安全是一件嚴肅的事情。如果沒有正確的安全措施,這可能會破壞我們的聲譽并阻止用戶采用。
在我們的加強智能合約安全性的工具列表中,首先是 Octopus,這是一個用于對智能合約代碼進行詳細分析的解決方案。Octopus 提供了符號執行、調用流分析和控制流分析 —— 所有這些都可以幫助我們發現合約錯誤并在為時已晚之前修復它們。
下一個是 Mythril, ConsenSys 支持的智能合約安全工具。Mythril 用于分析以太坊虛擬機 (EVM) 字節碼,并使用污染分析、符號執行和污染解決來識別以太坊軟件中的漏洞。
最后,我們還有 Securify—— 一個由以太坊基金會支持的智能合約掃描器。Securify 可以檢測多達 37 個不同的軟件漏洞,并為基于 Solidity 的智能合約實現上下文特定的分析。
如果我們要創建 dApp,我們需要一個錢包來存放資金,即使它是測試以太幣 (ETH)。為此,我們可以在幾分鐘內在瀏覽器中設置一個加密貨幣錢包。
我們建議使用 MetaMask,因為除了持有 ETH,它還提供了很多功能。作為一個瀏覽器擴展,MetaMask 注入 Web3js API 到網站中,這允許用戶直接在他們的瀏覽器與 dapp 交互。MetaMask 還可以執行其他功能,如密鑰管理、讀取區塊鏈數據等。
區塊鏈開發可能是一個令人興奮的過程,但前提是我們一開始就擁有正確的工具。創建一個強大的開發棧可以更容易地創建應用程序,并提高輸出的質量。
Tags:區塊鏈APPDAPPDAP區塊鏈的未來發展前景肖磊avi幣appblockchainresearchandapplicationDAPS價格
這篇文章著眼于以太坊的 Layer2 Rollup 宇宙 (僅包括 Secured rollup), 會從簡單易懂的核心概念與機制設計出發, 探討目前 Rollup 的好與壞.
1900/1/1 0:00:00元宇宙的熱潮,推動著各種虛擬數字人頻繁出現在公眾視野,在娛樂、社交、營銷等領域發揮其價值。在理解虛擬數字人時,需要對其詞組進行拆分.
1900/1/1 0:00:00從親近媒體到選擇直接發聲,Andreessen Horowitz(a16z)的轉變只是科技產業與媒體產業關系惡化的一個縮影.
1900/1/1 0:00:00NFT已成為加密世界不可或缺的重要篇章。自 2021 年出現 NFT Summer 熱潮至今,以太坊最大的 NFT 平臺 Opensea 周交易量已達十億美金量級,獨立錢包數維持在 30 萬以上.
1900/1/1 0:00:00去中心化資產管理 2022 什么是資產管理? 資產管理(通常可與投資管理、資金管理、投資組合管理、財富管理互換使用)是指代表他人處理金融資產和投資的服務.
1900/1/1 0:00:002013 年我購買了比特幣,開始進入加密貨幣領域。上周,我終于賣掉了最后一個BTC ,換倉 ETH.
1900/1/1 0:00:00