2

区块链开发者权威指南【2022】

 1 year ago
source link: http://blog.hubwiz.com/2022/07/03/blockchain-developer-guide-2022/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

区块链开发课程精选

成为区块链开发人员是当今你可以做出的最佳决定之一。本文将介绍开始区块链开发所需的 主要工具和技术。

cover.jpeg

用熟悉的语言学习 以太坊Web3 DApp开发Java | Php | Python | .Net / C# | Golang | Node.JS | Flutter / Dart

如今,区块链是超级热门趋势。该领域有数以千计的项目不断发展,对专家级编码人员的需求是真实的。由于我们仍处于开发的早期阶段, 因此获得工作的竞争也没有网络、移动、桌面或游戏开发等常见领域那么激烈。最后,区块链开发人员在软件开发领域的薪水最高。

1、支持智能合约的区块链

在讨论工具/技术之前,我强调一个重要说明。

并非所有区块链都支持智能合约和 dApp 功能。

例如,bitcoin区块链中仍然不存在这样的概念。bitcoin主要是一种点对点交易系统,被认为是一种价值储存手段。因此, 你不能成为bitcoin开发者。嗯……理论上,你可以!但即使发生这种情况,你也将使用核心bitcoin软件(而不是任何智能合约或 dApp)。

在考虑工具和技术之前,你必须研究支持开发智能合约或 dApp 的区块链/平台。

以下是此类生态系统的非详尽列表:

  • Ethereum
  • Solana
  • Polkadot
  • Binance Smart Chain
  • Cardano
  • Tezos
  • Algorand
  • Fantom
  • Zilliqa

查找这些项目列表的一种好方法是浏览CoinGecko等网站上基于智能合约的项目列表:

区块链开发者指南

在所有这些平台中,都启用了“智能合约”功能。这意味着你可以使用这些生态系统中提供的工具包来构建区块链应用程序。

关于工具包,我的意思是:

  • 开发环境/IDE
  • 测试区块链
  • 区块链库和框架
  • 前端库和框架

因此,在接下来的 6 节中,我将介绍这些类别中的一些工具。

我不得不提一下,这绝不是一个完整的列表,因为涵盖所有基于智能合约的区块链和工具需要更全面的研究。我的主要目标是为你 提供一些关于区块链开发中使用的不同类别工具的基本想法和一些示例。

2、主流的编程语言

成为区块链开发人员所需的第一个也是最重要的技术技能是熟悉编程语言。

你首先需要决定要在哪个区块链中编码。

我在另一篇文章中 分享了 41 个区块链项目背后的编程语言和工具。阅读上面的故事应该会让你对这个领域最流行的编程语言有一个很好的了解。

在我个人看来,市场上有三大玩家:

  • Solidity是在以太坊区块链中开发智能合约和 dApp 的编程语言。它是迄今为止软件开发人员中最受欢迎的选择。主要原因是 以太坊区块链的广泛采用、平滑的学习曲线和庞大的社区。
  • Rust是另一种流行的选择。Solana或Polkadot等项目使用 Rust 作为其主要编程语言。Rust 是一种现代编程语言,具有许多很酷的特性。 但是,它不像 C 或 Solidity 那样简单。
  • Haskell是Cardano生态系统的编程语言。它是一种主要由学术研究人员或数学家使用的编程语言。然而,对于区块链开发来说,它是一个 令人着迷的选择,主要是因为它具有安全实现的特性。

除了这 3 个选项之外,还有一些不太流行的编程语言,例如:

  • Michelson (Tezos)
  • OCaml (Zilliqa)
  • C# (NEO)
  • Python (Algorand)
  • Scala (Fantom)
  • Clarity (Algorand)

3、合适的开发环境/IDE

IDE(集成开发环境)是一个帮助你编写、编辑、调试、测试和执行源代码的工具。它是一个一体化环境,可帮助程序员访问编程生命周期 中最常见的功能。

市场上有数百个单一用途或通用 IDE。其中一些可以免费使用。对于其他一些人,则必须付费。

更具体地说,在智能合约和区块链开发中,每个平台和生态系统都有一些使用原生或第三方 IDE 的建议。这里有些例子:

  • Ethereum: Remix, EthFiddle (Web), Visual Studio Code (Desktop)
  • Binance Smart Chain: BSC Studio
  • Cardano: Sublime-Haskell
  • Solana: SWI (Web), Visual Studio Code (Desktop)
  • Fantom: Eclipse F4, Netbeans Fantom IDE
  • Tezos: SmartPy, LIGO

在这里,一个重要的考虑因素是安装和使用不同的选项,直到你对所选工具感到满意为止。

4、兼容的加密钱包

钱包是区块链应用程序的网关。它们允许你管理帐户、资金和安全密钥。

在你的 dApp 或智能合约的开发过程中,需要在不同的场合测试你的代码的各种功能。这里使用的工具之一是钱包。例如, 钱包允许你跨测试链发送/接收通证。

市场上有许多软件钱包选项。但是,大多数开发人员都将“Metamask”钱包用于测试目的。

Metamask有一个非常简单和用户友好的界面。配置和使用 Metamask 非常简单。此外,Metamask 可以作为插件安装在 Chrome 等浏览器中。 这将允许你同时使用浏览器和钱包进行开发和测试。

一个重要的考虑因素是你必须检查钱包与您选择的区块链的兼容性。如果不兼容,通常不同的区块链会为此推荐一些解决方案。例如, “ Phantom ”和“ Terra Station ”是 Solana 和 Terra 生态系统的推荐和官方钱包。

5、区块链库和框架

dApp/智能合约开发的一个重要方面是定义用于调试、测试和部署的不同管道。IDE 或钱包等工具为这些领域的开发人员提供了非凡的功能 和选项。然而,这些工具的功能范围是有限的。因此,你可能需要考虑使用“库和框架”。

“区块链库和框架”通常是一组工具套件,用于:

  • 在本地运行测试区块链
  • 为智能合约/dApps 定义执行管道
  • 定义单元测试
  • 定义集成测试
  • 编译和部署合约
  • 将部件注入外部平台(网络等)
  • 与网络通信

例如,在以太坊生态系统中,有三个必不可少的库/框架:

  • Ganache:用于测试 Solidity 合约的个人以太坊区块链
  • Truffle:用于在以太坊区块链中编译、测试和部署智能合约的开发工具套件。
  • web3.js:一组库,允许您使用 HTTP、IPC 或 WebSocket 与本地或远程以太坊节点进行交互。

值得一提的是,与其他类别的工具一样,你必须检查选择的区块链的本地或第三方库/框架。例如,“Cardano”生态系统使用“ Plutus ”平台 进行智能合约开发。它是该项目开发的原生工具,由开发人员的 Cardano 社区内部用于不同目的。

6、前端库和框架

基于区块链的 dApp 的一个重要方面是它们的用户界面。如果开发人员不能为项目开发用户友好的界面,那么这些应用程序中的大多数 都是毫无价值的。

dApps/智能合约的用户界面有助于:

  • 介绍应用程序
  • 用户与应用程序的通信
  • 用户与区块链的沟通
  • 其他更多…

好消息是这些库/框架非常通用。换句话说,你学习了一次前端开发,你就可以将你的知识应用到不同的区块链中。

前端开发的基本组件是 HTML、CSS 和 Javascript。使用这三个工具,任何开发人员都应该开始他们的 Web 开发之旅。但是,为了制作 更好的网站和用户界面,建议学习一些标准库/框架,例如Angular、Vue或React JS。

7、区块浏览器

每个区块链开发人员都应该熟悉的最后一类工具是“区块浏览器”。

“区块浏览器”是每个人都可以查看链上活动的网站,例如交易历史和智能合约详细信息。

你必须了解“区块浏览器”背后的机制,因为在很多情况下您都需要查看详细信息,例如区块链上的交易执行情况。我们知道可以使用 区块链的本地实例(例如,ganache)进行测试。但是,归根结底,我们希望在不同区块链的测试网或主网上部署和测试应用程序。因此, 需要浏览“Block Explorer”网站。

以下是不同区块链中此类浏览器的一些示例:

  • Ethereum: https://etherscan.io/

  • Cardano: https://explorer.cardano.org/

  • Solana: https://explorer.solana.com/

  • Tezos:https://tzstats.com/

这些网站上有很多有价值的信息。根据选择的区块链,你必须花一些时间来了解每个区块浏览器的不同选项和部分。

8、结束语

区块链开发是当今编程领域的热门趋势。作为区块链开发人员,你必须掌握有关不同工具和技术的技能。

在这个故事中,我简要地解释了你应该获得技能的七个类别。为了回顾这些类别并总结这个故事,这里有一些要点:

  • 有各种具有智能合约/dApps兼容性的区块链平台。首先,你必须选择要开始编码的生态系统。
  • 一旦拿起你的区块链,你必须开始学习生态系统的原生编程语言(例如,Solidity、Rust)。
  • 集成开发环境 (IDE)可帮助你在代码编写、调试、测试和发布方面节省一些时间。
  • 你必须熟悉不同的钱包选择。将智能合约/dApp 连接到钱包可以帮助你测试区块链交易和部署。
  • 区块链库和框架是一组工具,可帮助你在代码编译、调试、测试或部署中执行有价值的任务。
  • 前端库和框架可帮助你为应用程序制作用户界面。
  • 通过区块浏览器,可以监控链上活动并获取有关智能合约和交易的有用信息。

原文链接:Step-By-Step Guide for Becoming a Blockchain Developer In 2022

汇智网翻译整理,转载请标明出处


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK