iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >Web3.0对前端友好吗
  • 119
分享到

Web3.0对前端友好吗

2023-07-05 13:07:59 119人浏览 八月长安
摘要

本篇内容介绍了“WEB3.0对前端友好吗”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!首先先介绍一下 web3.0 是如何衍生的互联网我们先

本篇内容介绍了“WEB3.0对前端友好吗”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

首先先介绍一下 web3.0 是如何衍生的

互联网

我们先聊一下啥是web,在1989 年,由CERN(欧洲粒子物理研究所)中 Tim Berners-Lee 领导的技术小组提交了一个针对互联网的新协议和一个使用该协议的文档系统,该系统命名为 World Wide Web,简称 WWW(万维网),就是我们现在熟知的“互联网”,它的目的在于使全球的科学家能够利用互联网来交流自己的工作文档。它采用的技术主要是 html、URI 、URL、Http 等,可以通过静态的方式展示网页内容。也就是我们

Web1.0

通常来说,Web1.0 指的是20世纪90年代和21世纪初的互联网。说白了,就是由博客、留言板以及AOL和CompuServe等早期门户网站组成的互联网,国内咱们所熟知得就是新浪、搜狐网易等网站就是当时的产物。在 Web1.0 上基本上都是被动地阅读静态网页,网页构建协议都是使用 HTTP、FTP 等。在Web1.0 的情况下,网页内容是只读的、静态的,类似于杂志,只能看不能修改、不能互动。在Web1.0下,用户只是信息(网页)的消费者,不能与之交互。Web1.0也是拨号上网,平均宽带50k。

总的来说,Web1.0 是只读、去中心化的。

Web2.0

而 Web2.0 大概在2005年左右凸显出来。 Web2.0 大概的含义就是用户可以在网页上创建和发布自己的内容,主动参与到互联网中,不再是单纯地被动阅读网页。整个网页最终的资金和控制权还是被网页的拥有者所占据。比如 Facebook、Twitter和YouTube等社交媒体也是这个时代的产物。当然通过这种方式让用户生成内容的激增也造成了自然垄断,这样也会导致几个问题的产生:1.用户数据是中心化的;2. 用户数据不可移植;3. 用户数据被出售

总而言之,Web2.0 是读写并存的

Web3.0

Web3.0 是一个去中心化的网络,通过将权力和数据集中到用户手中,而不是某个公司所独有。将数据分布到网络上其中内含去中心化的区块链技术。Web3.0 这个词语已存在多年了,只是在过去一年才开始流行起来。使用 Web3,网络是去中心化的,因此没有权威机构对其进行控制,并且构建在网络之上的去中心化应用程序(dapps)是开放的。去中心化网络的开放性意味着任何一方都无法控制数据或限制访问。任何人都可以在未经中央公司许可的情况下构建和连接不同的 dapp。

Web3.0 的主要特点包括如下几点:

  • 语义 Web——它是 Web3.0 的关键,使机器易于处理数据。

  • ai——AI是影响 Web3.0 技术流行的主要关键因素之一。它使机器通过大量的Web数据变得更加智能,以满足用户的需求。

  • 3D图形——Web3.0 已经超越了传统的互联网,因为它的三维技术,它提供了一个比2D更现实的三维在线世界。

  • 无处不在——同时存在或无处不在的概念,移动设备的兴起日益增加,许多人更容易随时随地访问互联网。

  • 开放性和互操作性,这指的是在应用程序编程接口、数据格式、协议和设备与平台之间的互操作性方面的开放性。

  • 全球数据存储库,这是一种跨程序和跨网络访问信息的能力。

总之:Web3.0 是读、写、拥有网络的一切。

介绍

对于我们前端开发者来说,我们应该掌握哪些技术或者应该了解什么呢?简单来说,web3 开发人员创建了分散的全栈应用程序,这些应用程序存在于区块链上并与之交互。下面简单得说一下。

我们先了解一下专业术语有哪些:

  • Web3:它是以太坊区块链 Ethereum blockchain 和你的智能合约 Smart Contracts 之间的连接。

  • 以太坊 Ethereum:一个去中心化的开源区块链 blockchain,允许用户通过创建智能合约 creating smart contracts 与网络进行交互。它的原生加密货币是以太币。就市值而言,以太币是仅次于比特币的第二大最有价值的加密货币。它由 Vitalik Buterin 于 2013 年创建。

  • 智能合约 Smart Contracts :它们是存储在区块链上的计算机程序 computer programs ,在满足预定条件时运行。智能合约是用 Solidity 语言编写的。

  • 去中心化 Decentralized :数据状态不由中央实体 central entity、平台 platfORM 或个人 individual 收集

  • 区块链:区块链网络是一种点对点连接,其中信息在多个设备之间共享,几乎不可能被黑客入侵。它是一种记录信息的系统,其方式使得很难或不可能更改保存在网络上的信息。

  • Solidity:一种用于编写智能合约 writing smart contracts 的面向对象 object-oriented 的编程语言。它用于在各种区块链平台上实施智能合约,最著名的是以太坊。Solidity 的语法类似于 javascript。要了解 Solidity,最好有 javascript 等编程语言的背景。直接跳入 Solidity 是一个坏主意

  • Dapp:代表去中心化应用程序 Decentralized App 。它们是在去中心化网络或区块链上运行其后端代码(主要用 Solidity 编写的智能合约)的应用程序。可以使用 ReactVueangular 等前端框架构建 Dapps。

  • Bitcoin比特币:世界上第一个被广泛应用的加密货币。

  • Crypto: 又称 Cryptocurrency,加密货币,一种去中心化的数字货币。

  • NFT:Non-Fungible Token,一种在链上被记录的、有所有权的数字资产。

  • DAO:Decentralized Autonomous Organization,去中心化的自治组织。

  • Metaverse元宇宙:一种由科技手段创造的虚拟世界的构想。

  • DeFiDecentralized Finance:去中心化金融系统。

  • Token代币:可以理解为加密货币、NFT 等数字资产的统称。

  • GameFi:Game + DeFi,中文说法链游,游戏中的金融系统可通过加密货币和 NFT 映射到现实。

介绍完以上这些,我们再聊下区块链对于开发人员也是分类得。主要是核心区块链开发(核心区块链工程师负责区块链系统的架构安全协议)和区块链软件开发(这些区块链开发人员利用核心区块链开发人员提供的设计架构创建 Dapp)。

开始

下面我们来点实在得,对于我们前端开发,我们想要开发驻留并与区块链交互的去中心化应用程序,就必须使用 web3.js 和 Ethers.js 库。

web3.js

web3.js 是一个JavaScript api库。要使 DApp 在以太坊上运行,我们可以使用web3.js库提供的web3对象。web3.js 通过rpc调用与本地节点通信,它可以用于任何暴露了RPC层的以太坊节点。web3 包含 eth 对象 - web3.eth(专门与以太坊区块链交互)和 shh 对象 - web3.shh(用于与 Whisper 交互)

添加web3

web3 引入到你的工程中,其实跟我们现有的引用方式基本一致

  • npm: npm install web3

  • bower: bower install web3

  • metor: meteor add ethereum:web3

  • vanilla: dist./web3.min.js

使用

然后你需要创建一个web3的实例,设置一个provider。为了保证你不会覆盖一个已有的provider,比如使用Mist时有内置,需要先检查是否web3实例已存在

if (!web3) {  web3 = new Web3(web3.currentProvider);} else {  web3 = new Web3(new Web3.providers.HttpProvider("http://localhost:8545"));}

由于这套API被设计来与本地的RPC结点交互,所有函数默认使用同步的HTTP的请求。如果你想发起一个异步的请求。大多数函数允许传一个跟在参数列表后的可选的回调函数来支持异步

web3.eth.getBlock(48, function(error, result){  if(!error)      console.log(result)  else      console.error(error);})

API的具体目录可以点击查看

Ethers.js

为以太坊区块链及其生态系统提供一个小而完整的 JavaScript API 库 它最初是与 ethers.io 一起使用,现在已经扩展为更通用的库。功能上基本和web3.js差不多。

特点如下:

  • 将私钥保存在客户端,安全 可信赖

  • 可支持导入和导出的 JSON钱包文件 (Geth,Parity和crowdsale)

  • 从任何合同ABI创建JavaScript 元类对象,包括 ABIv2 和 可读的 ABI

  • 支持通过 JSON-RPC,INFURA , Etherscan 或 MetaMask 连接到以太坊节点。

  • 库 非常小 (压缩~88kb;未压缩284kb)

工具

当然除了上面这些,我们也会用到很多工具去完善我们的开发

  • Truffle: 提供了一个使用以太坊虚拟机编译和测试智能合约的开发环境,用作项目中的构建依赖项

  • Remix IDE: 编写和使用智能合约的完美环境,我们可以使用它直接从浏览器创建、修改和执行智能合约。它更像是一个编辑器

  • MetaMask: 一个 Chrome 扩展程序,可让您从浏览器连接到以太坊区块链网络

  • Ganache: 提供了一个本地区块链环境来测试您的智能合约

构建

我们想构建一个全栈 Dapp 如果您想为项目添加用户界面,react.js、vue.js 或 angular.js 是很好的 javascript 前端框架,因为它们可以使用 ethers.js 或 web3.js 轻松与区块链网络集成。有多种平台可让您在不编写代码的情况下创建完整的 Dapp比如:Bunz、Dapp builder、Atra io、Bubble io

“Web3.0对前端友好吗”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

--结束END--

本文标题: Web3.0对前端友好吗

本文链接: https://www.lsjlt.com/news/351783.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Web3.0对前端友好吗
    本篇内容介绍了“Web3.0对前端友好吗”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!首先先介绍一下 web3.0 是如何衍生的互联网我们先...
    99+
    2023-07-05
  • Web3.0来了,它对前端友好吗?
    最近 web3.0 的呼声真的是越来越高,也越来越疯狂。对于我们前端来说,我们需要具备什么技术呢?它对前端友好吗?下面本篇文章就来带大家聊聊,希望对大家有所帮助!首先先介绍一下 web3.0 是如何衍生的互联网我们先聊一下啥是web,在19...
    99+
    2023-05-14
    前端 前端框架 web3
  • Web3.0来了!它对前端很友好吗?
    最近 web3.0 的呼声真的是越来越高,也越来越疯狂。对于我们前端来说,我们需要具备什么技术呢?(学习视频分享:web前端)首先先介绍一下 web3.0 是如何衍生的互联网我们先聊一下啥是web,在1989 年,由CERN(欧洲粒子物理研...
    99+
    2022-11-22
    web web前端 前端
  • javascript对新手友好吗
    JavaScript是一种广泛使用的编程语言,它被广泛应用于网站和各种应用程序的前端和后端开发中。它是一种基于对象的语言,具有动态类型和强类型特性。但是,对于初学者来说,JavaScript是否友好是一个有争议的话题。在本文中,我们将探讨J...
    99+
    2023-05-22
  • 移动前端框架配vue好吗
    近年来,随着移动互联网的快速发展,许多前端框架应运而生。现在,以vue为代表的前端框架已经成为了众多Web开发者的首选。那么,移动前端框架和vue相结合会产生怎样的效果呢?在选择合适的移动前端框架时,我们需要考虑哪些因素?一、移动前端框架的...
    99+
    2023-05-14
  • 微信好友加入黑名单后对方会知道吗
    微信好友加入黑名单后对方不会知道。尽管对方不会明确知道自己被加入了黑名单,但他们可能会根据一些迹象猜测到这一点。这可能会导致一些尴尬和不舒服的局面。因此,在将某人加入黑名单之前,我们应该考虑清楚是否真的需要这样做,以及是否有其他更好的解决方...
    99+
    2023-08-14
  • 搜索引擎是否对html5友好
    这篇文章主要介绍搜索引擎是否对html5友好,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完! 搜索引擎对html5友好,搜索引擎蜘蛛能够更加轻易的抓取和索引...
    99+
    2024-04-02
  • html5属于前端吗
    本篇内容主要讲解“html5属于前端吗”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“html5属于前端吗”吧! html5不是前端,...
    99+
    2024-04-02
  • golang能做前端吗
    golang可以做前端,但并不是传统的前端开发语言。原因是:JavaScript是前端开发的主流语言,JavaScript 是一种动态、解释性的语言,专用于在浏览器中构建交互式网页和应用程序。与之相比,Golang是一种静态类型的编程语言,...
    99+
    2023-08-04
  • 如何学好web前端
    这篇文章主要介绍“如何学好web前端”,在日常操作中,相信很多人在如何学好web前端问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何学好web前端”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!  1、一...
    99+
    2023-06-04
  • 好程序员前端教程css对齐方案总结
    好程序员前端教程css对齐方案总结垂直居中通用布局方式(内敛元素和块状元素都适用)...
    99+
    2023-06-05
  • JavaScript是前端语言吗
    这篇文章主要介绍“JavaScript是前端语言吗”,在日常操作中,相信很多人在JavaScript是前端语言吗问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”JavaScri...
    99+
    2024-04-02
  • Python 索引对象 IDE:对于新手来说是否友好?
    Python 是一门广泛应用于数据分析、机器学习、Web 开发等领域的编程语言。在 Python 开发过程中,开发者经常需要处理大量的数据,因此熟练使用 Python 的索引对象是非常重要的。为了方便开发者对 Python 索引对象进行操...
    99+
    2023-10-20
    索引 对象 ide
  • 你适合做web前端吗?web前端发展前景怎么样?
    当我们决定学习一个技能的时候,首先会考虑到零基础学不学的会,这个技术的前景怎么样,赚钱多吗?别着急,今天小编就来为你揭开web前端的神秘面纱,认真看完。前端开发是什么?首先,了解前端开发Web前端开发是从网页制作演变而来的,名称上有很明显的...
    99+
    2023-06-03
  • JavaScript 错误对象 101:对初学者友好的完整指南
    JavaScript 错误对象是当 JavaScript 脚本执行过程中遇到错误或异常时创建的。它提供了有关错误的信息,包括错误类型、错误消息和错误堆栈跟踪。了解和有效使用错误对象对于调试 JavaScript 代码、处理异常并提高代码稳...
    99+
    2024-03-05
    JavaScript、错误对象、异常处理、调试、代码稳定性
  • 学好WEB前端之CSS规范
    CSS 指层叠样式表 (Cascading Style Sheets),定义如何显示 HTML 元素,但由于 CSS 天生全局性,随着项目复杂度增加,极易出现样式覆盖以及其它的问题。1. 通用规范文件编码为了避免内容乱码,统一使用 ...
    99+
    2023-06-03
  • Web前端入门容易吗
    这篇文章主要为大家展示了“Web前端入门容易吗”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Web前端入门容易吗”这篇文章吧。Web前端工程师使用Html、CS...
    99+
    2024-04-02
  • golang可以开发前端吗
    golang可以写前端,golang是一种高性能且通用的编程语言,它最初是为了解决后端开发的问题而设计的,但通过使用golang来编写前端,可以摆脱JavaScript等语言引起的一系列问题,例如类型安全性差、性能低下,以及代码难以维护等问...
    99+
    2023-07-17
  • C++对Json数据的友好处理实现过程
    目录背景设计目标:效果:实现基本数据类型转换自定义数据结构类型成员变量处理成员变量注册模板匹配防止编译报错成员变量匹配Key重命名Object2Json实现亮点源码参考文档总结背景 ...
    99+
    2024-04-02
  • Laravel 和 CodeIgniter 的用户友好程度对比如何?
    laravel 和 codeigniter 的用户友好度对比:安装:laravel 提供易用的 cli,而 codeigniter 需要手动安装。配置:laravel 使用简单的 .en...
    99+
    2024-05-11
    laravel
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作