区块链智能合约编程solidity到web3.js与ethers.js
Author:zhoulujun Date:
以太坊用于创建和编写智能合约的编程语言有 Serpent、Solidity、Mutan 和 LLL。Solidity 是目前用户最多、社区支持最强且相对更容易学习的以太坊智能合约开发语言。
智能合约
智能合约是指在发布到以太坊区块链上执行之前编译到 EVM 中的高级程序代码。
它使您能够在没有第三方参与的情况下进行可信交易;这些交易是可追溯和不可逆转的。
对于新入门的开发者或希望在以太坊上进行智能合约开发的人来说,学习Solidity是最好的选择。
有兴趣还是可以多学习学习,深入研究一下,这是未来互联网、元宇宙的一个底层基础技术支持,但是,没必要急冲冲进入这个"种菠菜割韭菜"行业
Solidity 是以太坊网络团队专门为在区块链平台上构建和设计智能合约而创建的面向对象编程语言。
它用于创建实现业务逻辑的智能合约,并在区块链系统中生成交易记录链。
它是创建机器级代码并在以太坊虚拟机(EVM)上编译的工具。
它与 C 和 C++ 有很多相似之处,学习和理解起来非常简单。例如,C 语言中的 "main "相当于 Solidity 语言中的 "contract"。
Solidity主要特征
静态类型语言:Solidity 是静态类型语言,这意味着每一个变量和表达式的类型在编译时就已经确定。
合约指向:Solidity 使得创建合约成为可能,这些合约包括函数和可以在以太坊虚拟机(EVM)上执行的数据。
继承和库:Solidity 支持多重继承和库的使用。库是一种特殊类型的合约,它们包含了可重用的代码。
安全特性:Solidity 具有多项安全特性来避免常见的编程错误,如溢出保护、避免重入攻击等。
教程很多:
https://docs.soliditylang.org/en/v0.8.24/
http://uinio.com/Web/Solidity/
作为前端工程师,个人觉得 还是看下 web3.js、ethers.js,然后再了解下IPFS协议就得了
web3.js 与ethers.js
web3.js 是以太坊官方提供的JavaScript库,非常早就被以太坊社区广泛接受和使用。
ethers.js 是另一个流行的以太坊交互库,由RicMoo开发。它力求提供一个更轻量级、简洁的API,对初学者和开发者都很友好。
虽然ethers.js在设计更加轻量和简洁,但web3.js提供了更多直接对应于以太坊JSON RPC的API。而且web3.js由于较早出现,具有广泛的社区支持和使用案例。
web3.js 教程:
https://web3js.readthedocs.io/en/v1.10.0/
人们对于Web3.0的构想是一个相对去中心化的,以用户个人数字身份、数字资产和数据完全回归个人为前提的自动化、智能化的下一代互联网。用户的每一个互动都应该被记录且量化,并且用户掌握自己的数据所有权、使用权、收益权。天津大学教授李克秋表示,Web3.0时代,用户所创数字内容的所有权和控制权都归属于用户,用户所创造的价值可以由用户自主选择与他人签订协议进行分配。互联网随着用户的需求和使用而发展,最终归于用户,Web3.0将是“可读﹢可写﹢可拥有”的互联网。
更多参看:https://ethereum.org/zh/web3/
但是,当前,Web3.0仍处在概念阶段!
转载本站文章《区块链智能合约编程solidity到web3.js与ethers.js》,
请注明出处:https://www.zhoulujun.cn/html/theory/ComputerScienceTechnology/blockchain/9070.html