2022年完整的Web3.0和Solidity开发路线图
今天学习 Web3.0 和区块链开发就像昨天以 10 美元购买比特币一样。
进入区块链行业, 平均程序员的年薪约为 14 万美元, 这可能是您作为开发人员可以做出的最佳投资。
不幸的是,网络缺乏好的资源,找到一个好的区块链开发路线图可能很快就会变得乏味。
我花时间收集了最好的在线视频、课程和网站,并整理了 最好的 web3.0 和 Solidity 开发路线图。
从完全零编程知识到 Solidity 和区块链专家,这就是我们将从计算机科学基础开始的原因。
1. Web3.0和区块链之前:计算机科学基础
一座摩天大楼需要坚实的地基才能不倒塌。
区块链开发这是一个艰难的主题,我不会撒谎。在深入研究节点和块并开始您的路线图之前,请更好地学习计算机科学的基础知识:
哈佛大学自己发布的著名的 CS50(计算机科学基础)免费课程 将教您了解计算机和数据处理基础知识所需的一切。
一旦您对 CS 有了一定的了解,就该了解区块链的工作原理、为什么有用以及它的局限性。
2. 学习区块链的基础知识
作为一名 Web3.0 开发人员,您需要了解 区块链是什么、它是如何工作的,以及它为什么会破坏我们商品交换和支付的方式。 区块链技术不再仅与加密货币相关,而是已成为真正的分布式云计算系统,能够运行完整的后端来为尖端的去中心化应用程序 (DApps) 提供动力。
在 Coursera 上通过 Blockchain 101 免费学习区块链的基础知识。
3. 什么是去中心化应用程序?
当您了解了区块链、节点、共识以及该技术的所有主要组件时,您会开始怀疑:
“我可以使用区块链开发什么样的应用程序?”
建立在区块链之上的应用程序被称为去中心化应用程序或 DApps,并且具有:
- 使用 JavaScript 或 React、Vue、Svelte 等框架/库构建的标准前端。
- Solidity/Solana/Rust 后端,建立在区块链之上。
了解什么是去中心化应用程序:
视频:https://youtu.be/F50OrwV6Uk8
查看 DApp Radar 以查看 Defi(去中心化金融)和其他基于区块链的应用程序的真实示例
要了解 DApp 的前端和后端如何协同工作:通信和交换数据,您需要 学习前端开发 以及标准后端开发、API 和模式的基本原理。
4. 2022年学习前端开发
如前所述 ,去中心化应用程序有一个标准的原生 JavaScript 或 JavaScript 框架前端,这就是为什么在深入开发你的第一个 DApp 之前,学习前端开发的基础知识和 Web 的工作原理是关键。
学习 HTML、CSS、HTTP、JavaScript,选择一个框架并开始构建静态网站。
完整的 2022 年前端开发路线图,包含 15 多种免费资源 ,可启动您的旅程并开始通过您的技能获利。
5. 我应该学习后端开发以成为 Web3 开发人员吗?
是的,现在。
去中心化的应用程序后端与“标准”应用程序后端有很大不同,首先是区块链技术被用作分散式数据存储的主要来源,而标准后端通常使用数据库或对象存储。
但是,大多数技术原则保持不变,如果没有标准 Web 开发的主要原则的坚实基础,不建议直接跳入区块链和 web3.0 开发
2022 年学习后端开发
学习后端开发是一个非常有益的过程:连接数据库、创建您自己的 REST API 并构建将为您的工具提供动力的业务逻辑,是迈出的重要一步。
我最近发布了更新至 2022 年的后端开发终极路线图。您可能想读一读!
学习:Node、Express、DB、HTTP,如何开发 API,并开始部署尖端应用程序。
6. Web3.0 和 Solidity 开发路线图:了解什么是以太坊及其工作原理
web3.0 开发人员需要了解以太坊的工作原理。
以太坊是运行在计算机网络上的软件,确保复制和处理称为智能合约的小程序。
大多数去中心化的应用程序,现在运行在以太坊区块链之上,智能合约也已经由以太坊联盟实施,然后被其他区块链 “复制 “了。
至少在 2022 年成为 web3.0 和 Solidity 开发人员是成为以太坊专家的关键。
在这个视频中,以太坊区块链的发明者之一Vitalik Buterin谈论了这项技术,了解更多关于以太坊的信息。
如果你想进一步探索以太坊是什么,我强烈建议你去查看文档和原始以太坊网站。
7. 区块链上的软件:智能合约
以太坊和智能合约就像面包和黄油,你需要了解两者。
智能合约是存储在基于区块链的平台上的软件,可自动执行协议。
它是用 Solidity、Rust 或 Vyper(Solidity,但使用 Python 风格)编写的,它是任何去中心化应用程序的关键组件,支持其业务逻辑并允许您在区块链上存储信息,就像您在标准中所做的那样数据库。
8. 学习 Solidity 来开发和部署智能合约
当然,知道什么是 智能合约 是不够的,作为 Web3.0 或区块链开发人员,您必须知道 如何编写自己的智能合约并使用它们来支持您自己的去中心化应用程序。 这是 Solidity 派上用场的时候。
Solidity 是一种用于编写智能合约的高级、面向合约的编程语言,允许程序员编写为区块链 DApp 提供动力的自执行代码。
不幸的是,正如我们所说,网络缺乏了解 Solidity 和区块链开发的良好资源。
这是我发现的最好的 2022 Solidity 免费课程/平台:
- web3.university
- Buildspace.so
- Nader Dabit – 全栈 web3 开发教程
- CryptoZombies
- 16 小时内的 Solidity + 区块链 – freecodecamp
9. 成熟的 Web3 开发者路径
Web3.university收集了关于 Web3 开发的最佳教程,从零到英雄,从什么是智能合约,到如何创建Market Maker。
web3.university的内容来自 web3 领域的最佳创**作者,**可能是您在网上找到的关于区块链开发和 Web3 教程的最全面的知识库。
成为web3.university的 Web3 开发人员
10. 通过构建项目来学习 Solidity – Buildspace
可能是目前最受欢迎的web3网站之一,buildspace.so是一个平台,每两周举办一次基于组群的课程,完全免费。
创建您的第一个 NFT 市场、全栈 DeFi 应用程序或基于区块链的游戏,最重要的是?
buildspace为所有参加课程的学生提供了一个独家的工作委员会,其中包含来自最好的 Web3 公司的职位。
最后,一旦你完成课程项目,他们会给你一个免费的 NFT!
12. 通过创建僵尸来学习 Solidity
事实证明,学习 Solidity 的最佳资源之一是游戏化编程课程,您将在其中学习如何开发智能合约,同时创建僵尸工厂以开始您的世界统治计划。
游戏分为几个部分,从完全的新手到高级的 Solidity 开发人员。我建议您在遵循其他建议的课程之一的同时演奏它,因为它有助于练习。
13. 连接你的 DApp 前端:学习 Web3.js 或 Ethers.js
现在您知道如何创建 智能合约,您需要一种方法来连接您的前端与本地或远程 Solidity(或类似)后端,使用从 HTTP 到 Websocket 的任何东西。
为此,您可以在两个 JavaScript 库之间进行选择:
- Web3.js
- Ethers.js
13.1 学习 Web3.js
web3.js是一个库的集合,允许你使用HTTP、Websockets和其他通信协议直接从你的基于JavaScript的前端与本地或远程以太坊节点连接。
这是 DApp 大学提供的完整的 web3.js 速成课程。
13.2 学习 Ethers.js
Ethers.js 是一个轻量级的 JavaScript 库 ,用作 Web3.js 的替代品,用于连接 JavaScript 前端和智能联系人。
学习使用 Nader Dabit 的 Ethers.js 进行前端 DApp 开发。
14 - 学习Alchemy
将 Alchemy想象成区块链中的 AWS,它为您提供了立即部署 DApp 所需的基础设施,以及可靠且可用于分析的节点提供商和工具。
Alchemy 还将为您提供API 来部署 NFT 集合,而无需编写一条 Solidity 行、连接到链上事件的通知,以及带有智能套接字和扩展以太坊 API的增强型 Web3 库。
了解更多关于 Alchemy 的最佳位置是在其广泛的文档中。
15 – 学习 Remix IDE
Remix是一个基于 Web 的 IDE,专为使用 Solidity 和 YUL 开发以太坊智能合约而开发。无需设置,导航到其主页,将自动带您进入功能齐全的代码编辑器,其中包含一些示例。
通过Remix IDE,您将能够编写、编译、测试和部署您的 Solidity 智能合约,只需按下一个按钮。
还对其方法检查功能表示敬意,该功能允许您直接使用 UI 手动测试智能合约功能。
哦,它是完全免费的。
通过 EatTheBlocks 在 YouTube 上了解 Remix IDE。
16. 开发你的第一个 Web 项目
通过练习和解决问题来学习是关键,这实际上是我们的大脑保留信息的最佳方式。
开始构建您的第一个 DApp,以加强您对区块链开发的理解。
使用 Solidity、HardHat 和 Ethers.js 开发一个成熟的 NFT 市场。
其他 DApp 项目灵感
在您的区块链开发人员组合中寻找项目创意可能并不那么直观。
给大家分享6个项目思路来实践你的web3.0知识。
17. 学习HardHat
有时REMIX IDE是不够的,把你的项目带到古老的VSCode将是唯一的决定。
为此,您需要设置一个本地以太坊开发环境,而这正是 HardHat 可以提供的帮助。
HardHat具有一组基本功能,可用于在多条链上创建、测试和部署分散式应用程序,例如 Polygon、Ropsten、以太坊主网等。
它还将使您能够启动本地以太坊节点来测试您的智能合约,而无需将它们部署在公共区块链上。
在 Nader Dabit 的这个全栈以太坊开发教程中了解 HardHat。
18. 学习Truffle和Ganache
使用 Truffle 加速您的开发:适用于任何 EVM 区块链的开发环境、测试框架和资产管道。
它附带:
- 内置智能合约编译
- 可编写脚本的迁移框架
- 和更多。
另一方面, Ganache 包含在Truffle 套件中,用于 测试以太坊合约。它本质上创建了一个带有帐户的模拟区块链来测试您的交易并避免设置无用的样板来启动您的 DApp 开发。
19. 学习如何测试你的智能合约
测试您的区块链智能合约是关键。
区块链如此特别的原因在于其不可逆转性:一旦添加了智能合约,就无法编辑或召回,而且其部署也需要花费真金白银(GAS 费用)。
这就是为什么 你应该学习如何 在部署智能合约之前彻底测试它们的原因。
20. 如何测试我的去中心化应用程序?
有 4 种测试类型可以测试您的智能合约:
- 节点测试。
- 功能测试。
- 性能测试。
- API 测试。
在这个 1 小时的免费区块链测试介绍中了解更多关于测试您的去中心化应用程序和智能合约的信息。
21. 学习 Moralis, 快速创建 DApp。
想想加密的 Firebase。Moralis 是这样描述自己的:“Moralis 为区块链项目提供托管后端。自动将您的用户余额同步到数据库中,允许您设置链上警报、观看智能合约事件、构建索引等等。所有功能都通过易于使用的 SDK 访问。Moralis 提供的所有功能默认都是跨链的。”
简而言之,Moralis 是一个改变游戏规则的人。在几秒钟内启动一个成熟的 DApp,利用基于钱包的身份验证系统的强大功能并直接从区块链获取数据,将其保存在 NoSQL 数据库中,所有这些都只需要几行代码。
想学吗? 从文档开始学习。
结论
学习 Web3.0 和区块链开发一开始听起来可能会让人望而生畏,但每个人都可以做到。
从计算机科学的基础到 JavaScript,从 Solidity 到尖端的 DeFi 应用程序,逐步学习。
你不会在 1 周内学习区块链开发,但你可以在 1 年内完全投入。
如果你觉得这篇文章对你有所帮助,欢迎赞赏~
赞赏