本篇博客介绍一些 Web3 领域相关知识,由于擦哥长期从事的 Python 研发工作,所以很多内容将从 Python 程序员的视角出发进行阐述。
本系列文章由擦哥撰写,下述用第三人称橡皮擦转述。
文章目录
- Web3 的学习路径
- Web3 是什么?
- 语义网络
- 移动互联网+社交网络
- 物联网
- 人工智能
- 总结一下什么是 Web3.0
- 那什么是 Web3.0 呢?
- 技术人员从哪里开始上手 Web3.0
Web3 的学习路径
- 了解基本的 JavaScript 编程。
- 了解区块链基础知识和以太坊的工作原理。
- 安装 Node.js 并在本地运行。
- 学习如何使用 npm 安装 web3.js 库。
- 学习如何使用 web3.js 连接到以太坊网络并执行智能合约。
- 学习如何使用 web3.js 查询区块链上的事务和账户信息。
- 学习如何使用 web3.js 部署和调用智能合约。
- 学习如何使用 web3.js 与 dApp(分布式应用程序) 交互。
- 学习如何使用 web3.js 与以太坊网络中的 ERC20 和 ERC721 代币交互。
- 学习如何使用 web3.js 与以太坊网络中的其他协议和应用程序交互。
由于橡皮擦不是纯编程小白,所以上述 10 条内容,1,3,4 可以无障碍转入,剩余的条目就是我们接下来要学习和展开的内容了。
但正式开始这个系列前,还是要先阐述清晰,什么是 Web3。
Web3 是什么?
先看大帽子,Web3 是对下一代互联网的设计和猜想,也是一些技术专家为一种新型互联网服务所取得名字,其中含有去中心化的区块链技术。
Web3 其实已经存在多年,只是最近才变的活跃起来,而且关于 Web3 的定义其实非常多。
有 3 就有 1 和 2。
橡皮擦查阅资料发现,Web3 有以下几种定义。
语义网络
- Web1.0:门户网站;
- Web2.0:搜索引擎;
- Web3.0:语义网络。
这时万维网之父,W3C 主席 Tim Berners-Lee 给的定义,他的出发点是万维网的结构。
- Web1.0 是由孤立的、静态的网页和超链接构成;
- Web2.0 增加了互动性和多媒体,有了搜索引擎;
- Web3.0 信息将以更有效、更结构化和更规整的方法被储存。
这时的 Web3.0 核心概念是 “一个可以由机器直接或间接处理的数据网络”
移动互联网+社交网络
- Web1.0:门户网站;
- Web2.0:搜索引擎;
- Web3.0:移动互联网+社交网络。
这个概念产生于移动互联网时代,目前看已经过时。
物联网
- Web1.0:门户网站;
- Web2.0:社交网络;
- Web3.0:物联网。
在物联网领域 Web3.0 是更好的网络连接,更多的智能设备和更频繁的互联需求。
人工智能
- Web1.0:门户网站;
- Web2.0:社交网络;
- Web3.0:人工智能(推荐算法)
在上面的四种定义中 Web3.0 在当下的概念慢慢被确定出来,但也因为技术体系的发展,Web3.0 的定义范围非常广,因此现在多数互联网从业者把 Web3.0 定义为 “更智能的互联网”,也为 Web3.0 贴上了下面 4 个标签。
- 统一身份认证系统
- 数据确权与授权
- 隐私保护与抗审查
- 去中心化运行
翻阅其他概念之后,橡皮擦发现了对 Web3.0 最简单的解释。
Web3.0 的核心特点是机器可以作为独立的参与者,与人类一样成为主体,成为生产者和消费者。
总结一下什么是 Web3.0
如果单纯的去看理论,其实所有描述对 Web3.0 都是模糊的,并没有唯一的定义,而橡皮擦觉得 Web3.0 更像是互联网与我们生活的一种融合形态,他通过灵活和动态的数字所有权,提供新的商业模式,而且在这种模式下,去中心化的组织和公共物品可以通过 token 直接与股权和收入流挂钩。
作为一个程序员,上来就跟市场,趋势去死磕,肯定不是我们的风格,咱应该从技术出发,逐步接触这个行业。
那什么是 Web3.0 呢?
Web3.0 沿用了区块链去中心化的概念,用户通过代币来创作和消费内容,还可以获得自己创作内容的所有权。
Web3 建立在点对点的计算机网络基础设施上,不需要通过中心化服务器进行分发。
技术人员从哪里开始上手 Web3.0
流程如下所示:
- 了解基本的区块链和以太坊概念。
- 了解 Web3.0 的基本概念,例如去中心化、自治组织和去中心化应用程序。
- 了解智能合约编程语言,例如 Solidity。
- 学习使用 web3.js 与以太坊网络进行交互。
- 学习如何部署和调用智能合约。
- 学习如何使用 Web3.0 协议和工具,如 IPFS 和 Swarm,构建去中心化应用程序。
- 研究 Web3.0
阅读文档,下面两个文档要经常看。
- ETHEREUM DEVELOPMENT DOCUMENTATION
- Solidity
了解各种专业名词
这些名词咱们后面慢慢去了解
- Web3:以太坊区块链 Ethereum blockchain 和智能合约 Smart Contracts 之间的连接;
- 以太坊 Ethereum:去中心化的开源区块链 blockchain,允许用户通过创建智能合约 creating smart contracts 与网络进行交互;
- 智能合约 Smart Contracts:一种可编程的自动执行合同,它可以在区块链网络上运行。它是用 Solidity 语言编写的,并存储在区块链上,在特定条件下自动执行。
- 去中心化 Decentralized:一种没有中央集权组织或中心点的架构和组织方式。 它通常指的是在网络中没有单一点可以控制或占用所有数据和资源的情况。
- Solidity:Solidity 是一种高级编程语言,用于编写智能合约。它是由以太坊基金会开发的,专为在以太坊区块链网络上运行而设计,Solidity 类似于 JavaScript。
- Dapp:Dapp 是 Decentralized Application 的缩写,是指一种去中心化的应用程序。它与传统的中心化应用程序不同,因为它不依赖于单一点的控制和管理。
以上就是本篇博客涉及 Web3.0 的所有内容,够今天的学习量了没?