火星链 火星链
Ctrl+D收藏火星链

区块链:Web3 堆栈开发人员指南

作者:

时间:1900/1/1 0:00:00

在Alchemy,我们将Web3定义为基于区块链技术的去中心化的互联网生态系统。

首先,作为开发人员和构建人员,我们在理解去中心化时,通常会提起碎片化的技术堆栈概念。虽然Web3仍然处于新生阶段并在迅速发展,但我们发现它的基础构件已经开始成形。

为了更好地理解Web3和去中心化互联网的内部工作原理,让我们直接进入Web3开发堆栈。

在较高的层次上,构建任何Web3应用程序都需要深入理解区块链网络、Web3基础设施和Web3开发环境。

Web3技术堆栈的基础是区块链网络层。Web2应用程序依赖于中心化数据库,而Web3应用程序构建在区块链架构之上,以实现无需信任和无需许可的访问。

网络层:基础区块链架构

在选择构建去中心化应用程序(dApp)的区块链网络时,开发人员有两个主要选择:兼容EVM的区块链和不兼容EVM的区块链。

以太坊一直是Web3开发的主要框架,其虚拟环境(即其以太坊虚拟机或EVM)存储帐户和余额等关键信息。以太坊的虚拟机还存储了一个机器状态,它能够根据EVM制定的一组预定义规则,随着每个新区块的变化而变化。对于开发人员来说,最重要的是,EVM为智能合约的存储和执行提供了一个框架,允许开发人员对链上逻辑进行编程。

金色财经CEO:Web2巨头进驻,将为Web3带来海量用户:金色财经报道,1月18日,火必Huobi携手26位华语区大咖开启“Huobi闹新春Web3之夜”活动。金色财经CEO王瑜琨在回答“Web3如何进入大众生活”这一问题时表示,大众充分融入Web3主要会从以下四个方面,首先在NFT领域,目前包括Instagram、Reddit在内的平台已经支持NFT铸造或推出NFT,预计将会有更多的互联网平台积极接触NFT;其次在支付领域,目前美国PayPal用户能够直接从MetaMask内购买ETH,加密货币支付将会越来越方便;再次是投资领域,预计传统金融机构可能会允许投资者在401(k)账户中投资加密货币,设立托管平台为大众用户托管数字资产;最后预计更多的社交或者游戏平台将开发新功能,使大众用户无缝接入Web3,这将为Web3直接迎来10亿级用户。[2023/1/19 11:19:41]

随着以太坊区块链和EVM的兴起,许多旨在解决以太坊可扩展性限制或昂贵交易成本的不同网络都选择开发与EVM完全兼容的框架。这意味着与 EVM 兼容的链都共享相同的软件层——即 Solidity——运行智能合约。

与EVM兼容的区块链允许开发人员利用专门为EVM链构建的所有相同的工具、文档和社区,以此节省时间和金钱。

以太坊- 原始 EVM 智能合约平台

Polygon?- 以太坊侧链

Arbitrum?- 使用 Optimistic rollups和多轮欺诈证明的L2区块链

Optimism?- 使用 Optimistic rollups 和单轮欺诈证明的L2区块链

阿迪达斯将于11月16日发布“全新Web3旅程”:金色财经报道,据阿迪达斯的无聊猿 BAYC #8774 二创 NFT “Indigo Herz”官方社交媒体账户披露信息,阿迪达斯将在 11 月 16 日“开箱”全新 Web3 旅程,同时还链接了阿迪达斯元宇宙官方网站。Indigo Herz 写道:“我们如何利用遗赠来激发未来?什么是不可能的?大概什么都没有。我们,来了。” 此外,Indigo Herz 还披露一些其他合作信息,并补充称:“阿迪达斯接下来要做什么,新的面貌、新的战略、对下一步的可视化正在酝酿之中。未来的日子里,在 CONFIRMED、adidas Originals 和其他合作伙伴支持下,全世界将看到我们前进的方向。未来非常有趣。”[2022/11/8 12:29:43]

Hermez?- 由 Polygon 管理的 ZK-rollups以太坊L2网络

ZKSync?- 使用 SNARK 的 ZK-rollups以太坊L2网络

Starknet?- 使用 STARK 的 ZK-rollups以太坊L2网络

Avalanche?- 与 EVM 兼容的L1

Cronos?- 与EVM 兼容的L1

在选择构建 dApp 的区块链网络时,Web3开发人员应该考虑可用的开发人员工具的深度和广度。幸运的是,EVM兼容链受益于多年的以太坊开发,在开发环境方面有许多久经考验的选择。

Hardhat

Hardhat是一个javascript软件开发环境,允许开发人员编译、测试、部署和调试以太坊软件,Hardhat可以通过灵活的插件进行扩充,使开发人员能够轻松自定义本地区块链开发环境,并附带一套强大的故障排除和调试文档集。

Web3社交协议Lens Protocol获FTX Ventures投资,具体金额暂未披露:11月4日消息,加密行业巨头FTX旗下风险投资部门FTX Ventures已对Web3社交协议Lens Protocol进行了投资,但拒绝透露具体投资金额。Aave Protocol和Lens Protocol背后开发团队发言人证实了Lens Protocol正在募集资金,但没有确认本轮融资的规模以及融资交易的结束时间。

据悉,Lens Protocol是一个可组合的去中心化社交图谱,具有一般的社交媒体功能,例如个人资料编辑、评论、转发帖子等,允许用户创建NFT拥有和控制自己所创作的所有内容。(《财富》杂志)[2022/11/4 12:16:20]

Truffle

一个由三种不同的,基于javascript的开发工具组成的套件——Truffle、Ganache和Drizzle——Truffle帮助构建者编译、测试和部署EVM代码,同时也为前端dApp开发提供工具。

Truffle——主要的开发环境、测试框架和部署管道

Ganache——允许开发人员快速创建本地区块链

Drizzle——各种前端库,用来连接前端组件和智能合约

Brownie

作为基于python框架的,用于EVM开发的替代品,Brownie提供了一套完整的Web3开发工具,主要基于Web3 .py包构建,用于编译、测试和部署dApp。

最近,开发人员开始在区块链上构建更多不遵循以太坊框架的dapp,因此不兼容EVM。

Mirror推出Web3订阅服务,读者可连接钱包订阅内容:7月27日消息,Mirror宣布推出web3订阅服务。新功能允许读者用钱包订阅任何Mirror发布的内容,并在新内容发布时接收电子邮件通知。

对于内容创作者来说,该功能可以辅助建立一个基于钱包的社区。[2022/7/27 2:39:52]

非EVM网络工程师认为,EVM链太受以太坊框架的限制,而选择通过设计新的结构进行创新。一般来说,非EVM区块链从一开始就具有数据和交易可扩展性,并允许较高的TPS。

Flow?- L1,使用 Cadence,Flow 的原生的面向资源的编程语言

NEAR?- L1,其智能合约使用 Rust 或 Assemblyscript?

Solana?- 使用 Rust C、C++ 的L1智能合约

Terra?- 将 Rust 用于智能合约的L1

虽然对于非EVM链有一些开发环境还不太成熟,但一些网络已经开始为各自的链提供开发工具。

Flow让开发者能够使用原生的Visual Studio Code Extension测试Cadence智能合约的漏洞。

另一个非EVM开发环境的例子是Anchor,它允许构建和测试 Solana 合约,具有与 Solidity 和 Truffle 类似的感觉。总的来说,Anchor 的环境降低了 Rust 和 Solana 开发的障碍。

由于单个区块链通常具有独特的架构和共识机制,它们不可避免地会针对特定的用例进行更好的优化。因此,我们坚定地相信一个多链Web3的未来。

Reddit联创与Polygon合作推出2亿美元基金,专注于Web3和社交媒体:12月17日消息,Reddit联合创始人Alexis Ohanian旗下风险投资公司Seven Seven Six和Polygon将投资2亿美元用于利用区块链技术的社交媒体项目。(Venture Beat)

据悉,Ohanian于2005年参与创立新闻和内容论坛Reddit,他于去年成立了风投机构SevenSevenSix,其第一个基金获得了1.5亿美元融资。同时,Ohanian还是Coinbase的早期投资者。

此前消息,Reddit联合创始人旗下Seven Seven Six将与Solana Ventures推出5000万美元Web3社交媒体基金。[2021/12/18 7:47:04]

考虑到可互操作工具的日益多样化,EVM框架是一个极其丰富的环境。此外,EVM兼容性为用户和开发人员提供了一个更流畅的过程,可以通过跨链dApp移动流动性,并提供了熟悉的用户和开发人员体验。对于早期的开发人员和新协议,我们相信围绕EVM兼容的区块链进行开发,利用现有的工具、基础设施和开发人员文档,是一个令人信服的条件。

话虽如此,我们也认识到非EVM区块链对于更有经验的开发人员的利基功能,他们不断增长的社区基础,以及对早期开发人员工具支持的增加。

在选择了区块链网络之后,Web3堆栈中的下一步是区块链交互层。这一层允许开发人员和用户向区块链读取和写入数据。

区块链交互层:用于向区块链网络读取/写入数据的开发人员构建块。

如果我们不熟悉区块链是如何工作的,这里有一个快速的回顾。

区块链由数据区块组成。

区块存储在分布式节点上。

区块链中的每个节点都充当一个“迷你服务器”,它允许操作者读写数据区块。

添加到区块链的任何区块都必须在网络上的所有节点之间传播,以实现同步。

在考虑Web3框架中的数据访问层时,链上存储是标准,因为它本质上是不可变的,并允许任何公众个人查看/验证它。

与区块浏览器一样,数据提供者是区块链交互层的关键部分。对于初学者来说,它们提供了一个进入较低网络层的窗口,并作为一个在线资源,用于检索有关交易、地址余额、gas 费用等的实时和历史数据。区块浏览器通常用于查找支付的关键细节、确定不同交易的状态或简单地了解区块链使用的总体趋势。数据提供者为公众提供了阅读和解释区块链的能力。

但是,如果没有适当的基础设施需求,访问和与区块链数据交互可能会非常困难。

由于直接在链上写入数据不具有成本效益,Web3开发人员使用EVM链的内置日志功能,这样智能合约就可以通过solidity事件以一种可搜索、成本效益高的方式在链上“打印”信息。虽然日志记录可以降低存储成本,并且是对区块链进行读写的最流行方式,但它需要一个强大的区块链交互层,以确保开发人员能够在事件发出时捕获它们。

从历史上看,使用区块链交互层需要运行一个自托管、自维护的节点。这是一个昂贵且耗时的过程,仅运行一个以太坊节点的平均成本为8.6万美元/年。开发人员没有构建协议和dapp,而是发现自己将工程资源花费在管理节点的bug、回归、磁盘问题、CPU流量峰值等方面。

运行我们自己的节点的成本导致了Alchemy的创建。在其核心,Alchemy公开了一套API,供开发人员在无需管理节点的情况下与区块链进行交互。

作为一个多链Web3的坚定支持者,Alchemy 的 API 套件在单一熟悉的 API 框架内提供跨L1(包括以太坊网络)、L2(包括 Arbitrum 和 Optimism)、侧链(包括 Polygon)和非 EVM 兼容的 L1(如 Flow)的多链支持。

最终,Alchemy允许区块链开发人员对整个Web3网络层进行可靠和可扩展的访问,从而使他们能够专注于构建Web3堆栈。

表示层:更高级别的软件抽象和前端库

在许多方面,Web3表示层紧密地反映了Web2开发的许多方面。

为了创建和开发前端组件,许多开发人员转向历经过检验的React.js库。有了大量的开发人员和Web3社区的追随者,它已经成为事实上的Web3前端的标准。

Web2和Web3前端栈的一个不同之处是用于与区块链数据交互的特定库。

当与数据访问层交互时,Web3的dApp 倾向于使用Ether.js 或 Web3.js,而不是更典型的 HTTP 请求库,如 Axios 和 Fetch。特别是,Ethers.js 和 Web3.js 都自然支持对托管在区块链交互层上的区块链节点的远程过程调用 (RPC),从而能够更无缝地集成到开发人员的Web3技术堆栈中,并在区块链读写数据。

在决定是选择Ether.js 还是 Web3.js时,有几点需要考虑。

Ether.js 是一个更轻量级的、对开发人员友好的库,具有强大的文档。虽然许多早期开发人员和资深开发人员都是通过Ether.js 开发dApp的,但它由少数人维护,限制了库的开发。

Web3.js拥有最多的分叉/提交,也是被使用最多次的以太坊javascript库。虽然它也被广泛使用,但它缺乏ether文档的广度和深度,可能不是早期Web3开发人员的最佳选择。

Web3.js的另一个替代品是Alchemy Web3,它是一个带有附加API方法、升级的websocket支持和自动重试功能的分支,允许开发者更轻松地采用。

虽然区块链为去中心化状态管理、智能合约存储/执行和交易价值提供了一个媒介,但更高级别的应用程序需要额外的组件。对于图像、视频和gif等前端内容,区块链存储非常昂贵,效率也非常低。去中心化存储填补了这一空白。

一种解决方案是IPFS (Interplanetary File System),这是一个由节点组成的分布式网络,每个人在其中存储和共享文件、网站、应用程序和数据。随着NFT的兴起,IPFS的使用激增,经常作为NFT媒体资产的底层存储介质。

另一个流行的去中心化存储解决方案是Arweave,它旨在激励个人永久存储数据。通过Arweave网络,矿工提供存储空间以换取代币,协议本身确保存储的数据在所有节点上保持正确和一致。

在Web3的背景下,应用层涵盖了DeFi、NFT、身份与认证、数据与分析以及许多其他令人兴奋的dApp类别。总之,这些去中心化的Web3应用包括一些最大的Web3公司,如OpenSea、Uniswap和Aave。

作为开发人员,这通常是最有趣的构建层。可以混合和匹配不同的去中心化应用程序,将强大的原语组合成新的、复杂的产品。

应用层主要允许公共消费者(其中许多人可能不完全理解Web3开发的复杂性)轻松地与直观的前端交互。最终,用户友好型前端让公众能够在日常生活中利用去中心化的互联网。

总结

随着Web3从目前的状态发展到成熟,肯定会有范式的转变,新的Web3基础设施工具,以及很多需要学习的东西。

Source:https://www.web3.university/article/web3-stack

标签:WEBWEB3区块链以太坊WEB3ALLBI币web3.0币种有哪些区块链域名比特币以太坊

中币交易所热门资讯
CRYP:区块链技术将如何通过价值传播改变世界?

互联网在发展中世界的迅速发展对世界上贫穷国家人民的生活方式产生了明显的影响。由于互联网的连接,数百万人摆脱了贫困,获得了更好的教育机会.

1900/1/1 0:00:00
EOS:金色数藏 | 520送你数藏女神 数字藏品空投来袭

经过3天预热,由金色财经孵化的数藏平台——【金色数藏】的Beta测试版,于今日正式上线,今日下午5:20西施限量数字藏品,等你来抢.

1900/1/1 0:00:00
BBK:晚间必读5篇 | 7件大事回顾加密史上最疯狂一周

1.7件大事回顾加密史上最疯狂一周回顾加密货币十多年发展史,每个人都知道这一领域曾经发生过很多疯狂的事情.

1900/1/1 0:00:00
联盟链:数字藏品=本土化NFT?关于二者的体系化区分

圈内的朋友,对于NFT已然非常熟悉,但对国内的数字藏品只闻其声,不闻其形,不知道怎么下手,各种花式局也防不胜防.

1900/1/1 0:00:00
NEAR:NEAR:USN与UST不同的四个主要原因

前段时间我们在圈内亲眼见证了一个算法稳定币巨头——UST的崩塌,当Terra陷入死亡漩涡之时,UST脱锚,LUNA价格一夕之间归零,这不由的使得圈内人士开始重新打量算法稳定币市场的风险.

1900/1/1 0:00:00
ITM:金色趋势丨知史鉴今 市场底在哪里?

如图所示,可以看到快慢两线自高位死叉后,依旧维持向下发散状态,快线距离0轴还需要段时间,BTC价格自前顶69000到目前整体也是震荡向下趋势.

1900/1/1 0:00:00