您当前的位置:首页 > 电脑百科 > 程序开发 > 编程百科

开发人员必须知道的 Web3 基本工具和技术

时间:2022-11-16 09:36:14  来源:  作者:AI前线

图片

作者 | Tyler Hawkins

译者 | 叙缘

策划 | 李冬梅

Web 3 开发人员缺口很大,相对来说,目前只有一少部分开发人员成为该领域的专家。因此,如果一位成熟的 Web 2 工程师,想要进入 Web 3 行业,应该从哪里开始呢?要了解哪些基本概念、学习哪些工具和技术?

本文将探讨 Web 3,包括它的重要性以及与 Web 2 的区别。然后再来看看,有志于 Web 3 开发人员应该熟悉的技术栈。

Web3 第一课

在深入研究 Web 3 应用程序中使用的技术之前,让我们首先了解 Web 3 是什么,以及它为什么重要。

Web 3 的五个关键特性是去中心化、区块链、安全性、可扩展性和隐私。在 Web 3 的去中心化世界中,区块链技术和其他协议从根本上改变了数据的存储、分发和访问方式,同时提供了一个本地事务层。当下流行的 Web3 应用案例是去中心化金融(DeFi 和加密货币)、在称为“DAO”的去中心化治理模式中投票、以及作为所有权证明的不可伪造代币(NFT)。

Web 3 背后的许多动机,都是基于用户、公司和政府之间的信任受到侵蚀。看上去好像有点愤世嫉俗,但确是如此。

在去中心化金融里,用户将资金存储在自己的私人钱包中,交易时无需与中心化机构互动或依赖国家的法定货币。

建立在区块链上的投票应用程序,所有投票数据都是透明的,且任何人验证起来都很简便,因此不必再担心选举中发生徇私舞弊。这就是让 Web 3 “无需信人”的原因:该技术是透明的,并且通过密码学得到保护,因此不再是只能盲目信任某些机构。

NFT 可用于证明任何数字资产(如音乐或艺术)的所有权,让你可以更直接地支持创作者。

所有这些例子,其核心都牵涉到不再需要依赖中央机构或中介机构。

需要注意的是,Web 3 并不是要取代 Web 2,就像 Web 2 没有取代 Web 1 一样。对于 Web 1 中出现的静态网站,在 Web 上仍然占有重要地位。即使 Web 3 越来越受欢迎和使用,Web 2 应用程序也将有一席之地。

去中心化的应用程序(DApps)

我们现在大致了解了什么是 Web 3,以及为什么去中心化的概念很重要。那么 Web3 应用程序实际上是什么样子的呢?

嗯……它们看起来很像 Web 2 应用程序!去中心化的应用程序,也称为“dapps”(或“dApps”),由一个前端 UI 组成,其与部署在区块链上的“智能合约”(一个小代码程序)交互。在交易或将数据写入区块链时,前端还可以与用户的钱包交互。与 Web 2 应用程序的主要区别在于,智能合约和区块链取代了由单个人或公司拥有和维护的经典的服务器和数据库。

图片

去中心化应用架构

定义 Web 3 技术栈的技术

那么,如何真正构建一个去中心化的应用程序(dapp)?好消息是,可以从已有的编程技能和经验开始!我们已经知道 dapp 有一个前端,这意味着需要了解 htmlcssJAVAScript。可能还会使用 Angular、React 或 Vue 等框架或库,除非你喜欢用原生 JavaScript。这对于已经精通这些技术的前端开发人员来说是个好消息。

现在,让我们看看需要专门为 Web3 学习哪些语言、工具和框架:

Solidity 是一种编程语言,用于编写在以太坊区块链上运行的智能合约。它看起来像是 C++、Python/ target=_blank class=infotextkey>Python 和 JavaScript 的混合体。如果你现在已经学习了几种编程语言,那么你每次去学一门新语言都会变得更容易。由于大多数智能合约都涉及某种货币兑换,因此遵循适当的标准和在安全方面的最佳实践至关重要。

Solidity 项目地址:https://soliditylang.org/

Truffle 是一个框架,可以用来编写、测试和部署智能合约。其网站将其描述为“使用以太坊虚拟机 (EVM) 的区块链开发环境、测试框架和资产管道”。就像 React 帮助你构建 JavaScript 应用程序一样,Truffle 帮助你构建智能合约。使用 Truffle 并不是绝对必要的,但是这个框架将极大地帮助你,因为它抽象了一些开发复杂性。对于 VS Code 用户,Truffle for VS Code 扩展会让开发周期更加容易。

Truffle 项目地址:https://trufflesuite.com/docs/truffle/

Ganache 是用于本地开发和测试智能合约的个人区块链。开发人员只需要通过几个简单的命令,就可以创建以太坊区块链的本地实例。Ganache 允许你在本地开发 Web 3 应用,就像在本地或测试环境而非生产环境中开发 Web 2 应用程序一样。

Ganache 项目地址:https://trufflesuite.com/docs/ganache/

Web3.js 是一个用于与以太坊交互的 JavaScript 库。你将在前端应用程序中使用 web3.js 来执行诸如连接到用户的钱包、授予对智能合约的访问权限以及调用智能合约上的函数等操作。智能合约可以通过命令行或 UI 访问,因此 web3.js 可以帮助你从 UI 使用智能合约。

Web3.js 项目地址:https://web3js.readthedocs.io/en/v1.8.0/

MetaMask 是一个 Web 3 钱包,你可以使用它的浏览器扩展程序或移动应用程序。我们之前提到过钱包,但还没有真正描述过钱包是什么。钱包为你的数字资产提供接口。你使用只有你自己知道的私钥保护钱包里的内容。MetaMask 为用户提供了一种安全的方式,连接到基于区块链的应用程序,并与它们的钱包交互。对于开发人员来说,需要钱包来部署智能合约并与之交互。通常,私钥必须写在代码中才能交互,但 Truffle Dashboard 能够将 MetaMask 钱包连接到项目而无需暴露密钥。

MetaMask 项目地址:https://metamask.io/

Infura 是连接以太坊和其他区块链以及去中心化存储网络(如 IPFS)的基础设施提供商。无需过多介绍,与区块链的任何交互都需要通过 JSON-RPC 或 WebSockets 访问节点。Infura 提供了基础设施,因此你不必找机器来启动自己的节点。如果你实在想运行自己的节点,Infura 也可以作为备用。Infura 还提供了一个开发套件和工具包,包括监控、指标、日志记录、事务管理和其他用于构建 dapp 的功能。这是对我们已谈论过的其他一些技术的进一步抽象,可以使 Web3 开发更加容易。

Infura 项目地址:https://infura.io/zh

结论

Web 3 是支持下一代软件的下一代互联网。区块链是更透明的技术,不但消费者在采用,主要机构也在采用,这让区块链成为了主流。

了解 Web 3 技术以及构建方法,将为你打入市场提供优势。

对于已经拥有强大的 Web 2 基础,又有志于 Web3 的开发人员,我希望现在你对自己充满信心,因为你已掌握的知识就是良好的开端!花一些时间学学上面的技术,你可能会比你想象的更快做好准备,以迎接 Web3 的到来。

https://dzone.com/articles/the-essential-web3-tools-and-technologies-develope



Tags:Web3   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
作者 | Tyler Hawkins译者 | 叙缘策划 | 李冬梅Web 3 开发人员缺口很大,相对来说,目前只有一少部分开发人员成为该领域的专家。因此,如果一位成熟的 Web 2 工程师,想要进入 Web...【详细内容】
2022-11-16  Tags: Web3  点击:(0)  评论:(0)  加入收藏
上月底,苹果公司首次正式为iOS应用程序制定了NFT相关规则。根据规则,海外iOS开发者将可以在苹果应用中增加NFT铸造、发行和二次交易功能。...【详细内容】
2022-11-15  Tags: Web3  点击:(7)  评论:(0)  加入收藏
文章转载来源:区块链资讯来源:财联社记者 崔铭图片来源:由无界版图AI工具生成Web3.0概念近期在二级市场持续发酵。截至发稿,相关概念公司二六三(6.770, 0.62, 10.08%)(002467.SZ)...【详细内容】
2022-11-15  Tags: Web3  点击:(6)  评论:(0)  加入收藏
昨日,沪深两市虚拟现实板块集体上涨,Web3.0概念板块领涨。截至收盘,福石控股、宣亚国际20%幅度涨停,天地在线、天下秀、华扬联众等10余只个股涨停,值得买、中文在线涨逾10%。本轮...【详细内容】
2022-11-11  Tags: Web3  点击:(70)  评论:(0)  加入收藏
近期,Web3.0概念颇受市场关注。11月10日,Web3.0概念股掀起涨停潮。天地在线获10天8板,榕基软件4连板。...【详细内容】
2022-11-11  Tags: Web3  点击:(90)  评论:(0)  加入收藏
  图片来源:由无界版图AI工具生成  “大部分项目方都解释不清楚Web3是啥,就不要互相为难了”,近日某知名加密投资人在朋友圈发表了对寻求投资的Web3项目方进行吐槽。  每...【详细内容】
2022-11-11  Tags: Web3  点击:(21)  评论:(0)  加入收藏
【笔者简介】松果出自私募冠军团队,累积规模10位数。13年投资经验,擅长抄底和重组,现为阳光私募基金经理。A股近期WEB 3.0概念持续活跃于市场,作为时下热门科技赛道元宇宙的分支...【详细内容】
2022-11-10  Tags: Web3  点击:(12)  评论:(0)  加入收藏
元宇宙最后的形态必然是去中心化的,目前的网络生态并不能完全满足元宇宙去中心化的需要。有些人认为即将到来的Web3.0时代与元宇宙所需的网络生态高度重合。Web3.0也许能成为...【详细内容】
2022-11-03  Tags: Web3  点击:(977)  评论:(0)  加入收藏
尝试改变现状是人类的天性,当这一动力与科技、资本、信息、数据结合时,人类社会将不可避免地发生变化,不可避免地朝新兴社会形态、生产关系发展。Web3.0——互联网的下一阶段,便是这一过程最好的例证。基于区块链及相关技...【详细内容】
2022-11-03  Tags: Web3  点击:(114)  评论:(0)  加入收藏
如果你关注新闻的话,你会经常听到像ICO、Airdrop和Metaverse这样的词汇。即使在商业和科技版之外,像《傲骨贤妻》这样的电视剧也有涉及比特币的情节。显然,数字货币正变得越来越主流,但这种建立在区块链上的新型经济到底...【详细内容】
2022-11-02  Tags: Web3  点击:(21)  评论:(0)  加入收藏
▌简易百科推荐
引言VHDL编程语言语法内容很多很杂,包括用于编程的规定、用于仿真的规定以及用于描述的规定。对于刚刚接触VHDL语言的设计者而言,拿到厚厚的VHDL编程语言书籍,往往有无从下手感...【详细内容】
2022-11-17  newpowerleader  今日头条  Tags:VHDL   点击:(3)  评论:(0)  加入收藏
OKHttpUtil在Java的世界中,Http客户端之前一直是Apache家的HttpClient占据主导,但是由于此包较为庞大,API又比较难用,因此并不使用很多场景。而新兴的OkHttp、Jodd-http固然好用...【详细内容】
2022-11-16  JAVA我要发大财  今日头条  Tags:OkHttp   点击:(2)  评论:(0)  加入收藏
作者 | Tyler Hawkins译者 | 叙缘策划 | 李冬梅Web 3 开发人员缺口很大,相对来说,目前只有一少部分开发人员成为该领域的专家。因此,如果一位成熟的 Web 2 工程师,想要进入 Web...【详细内容】
2022-11-16  AI前线    Tags:Web3   点击:(0)  评论:(0)  加入收藏
作者 | 苏宓出品 | CSDN(ID:CSDNnews)如果说此前 Kotlin、Dart、Julia、Carbon 等后起之秀向老牌编程语言发起挑战进攻都是小打小闹,那么这一次 C、C++ 这几种常青藤编程语言则...【详细内容】
2022-11-15    CSDN  Tags: C/C++   点击:(10)  评论:(0)  加入收藏
什么是Gateway Worker分离部署GatewayWorker有三种进程,Gateway进程负责网络IO,BusinessWorker进程负责业务处理,Register进程负责协调Gateway与BusinessWorker之间建立TCP长连...【详细内容】
2022-11-14  it程序员  今日头条  Tags:gateway   点击:(4)  评论:(0)  加入收藏
CONTINUE(100, "Continue"), SWITCHING_PROTOCOLS(101, "Switching Protocols"), PROCESSING(102, "Processing"), CHECKPOINT(103, "Checkpoint"), OK(20...【详细内容】
2022-11-10  男神是孟德大人啊  今日头条  Tags:http   点击:(7)  评论:(0)  加入收藏
作为服务端的程序员,我们可能会经常需要通过查找日志来分析定位问题。由一个常见的场景引出下面要讲的内容,在一个目录下查找一个待匹配的字符串所在的行,来定位问题。很容易可...【详细内容】
2022-11-08  Paul  今日头条  Tags:xargs   点击:(11)  评论:(0)  加入收藏
一:背景1.讲故事这篇文章起源于昨天的一位朋友发给我的dump文件,说它的程序出现了卡死,看了下程序的主线程栈,居然又碰到了 OnUserPreferenceChanged 导致的挂死问题,真的是经典...【详细内容】
2022-11-08  会写Java的阿伟  今日头条  Tags:WinForm   点击:(114)  评论:(0)  加入收藏
大家好,Echa。今天来分享常见的浏览器数据存储方案:localStorage、sessionStorage、IndexedDB、Cookies。1. 概述现代浏览器中提供了多种存储机制,打开浏览器的控制台(Mac 可以...【详细内容】
2022-11-08  Echa攻城狮  今日头条  Tags:数据存储   点击:(13)  评论:(0)  加入收藏
这是发生在我朋友身上的真实故事,他的绰号叫胖头。由于JSON.stringify的错误使用,他负责的其中一个业务模块上线后出现了bug,导致某个页面无法使用,进而影响用户体验,差点让他失去年终奖。...【详细内容】
2022-11-07  Echa攻城狮  今日头条  Tags:JSON   点击:(24)  评论:(0)  加入收藏
站内最新
站内热门
站内头条