数字货币
-
【开发智能合约—Solidity系列】状态的可变性限制(State Mutability)_链圈子
这次的篇章主要在介绍智能合约状态的可变性,透过约束来限制状态,避免随意更改状态导致错误的合约出现。 我们都知道状态在智能合约中扮演着非常重要的角色,经过什么事件之后变化为什么状态,…
-
【开发智能合约—Solidity系列】货币与时间单位_链圈子
「人」与「人」之间无非时时刻刻都在交易,只是每一种交易的形式与媒介有所不同,而区块链的世界也有特定的交易单位,主要分为两大类型的单位, 分别是以太币单位以及时间单位。 以太币单位 …
-
【开发智能合约—Solidity系列】如何使用Remix进行Debug_链圈子
Remix IDE的Debug方式其实也类似于我们开发软件程序过程中的Debug流程,编辑好程序代码之后,经过编译,发布到暂存链上,对每一个区块进行Debug,过程中逐步排查出每一…
-
【开发智能合约—Solidity系列】错误处理的机制(Error Handling)_链圈子
Solidity语言的错误检查提供了Require()、Revert()、Assert(),这三种方便的API调用,而这三种用途分别不同,毕竟牵涉到瓦斯费的问题,因此才会与过往的程…
-
【开发智能合约—Solidity系列】关于可视范围(Visibility)_链圈子
为什么要特别介绍可视范围呢?试想,假如我们的合约里有些非常重要的内容只能局限于合约内使用,此时就可以运用可视范围的技巧,将某些重要的功能、状态锁定在合约内使用,不随意开放给外部调用…
-
【开发智能合约—Solidity系列】与交易有关的功能(Fallback & Receive)_链圈子
Solidity支持两种特殊的函数,分别是Fallback以及Receive,一个是处理合约中不存在的功能时进行的回退机制,而另一个Receive则是负责收款后的动作,但两者称为特…
-
【开发智能合约—Solidity系列】何谓继承(Inheritance)_链圈子
一个功能越趋完善且复杂的合约,势必会拆成许多合约共同组成,而其实这些组成的合约之中许多的方法、元素都是重复的,因此我们可以使用Inheritance(继承)的技巧,将共同的属性、方…
-
【开发智能合约—Solidity系列】标准化的界面(Interfaces)_链圈子
Interface我们就将之想像成是一种标准化的规范,在产品还没开发出来之前,我们心中想必已经有个蓝图,嗯…,这个功能需要什么样的功能,这时候就可以来制定界面,以「设…
-
区块链也要燃料费用?到底什么是Gas呢?_链圈子
在讲Gas这个概念之前,我们先以汽车为例子,不论是上高速公路还是加油,都是需要费用的,而费用的计算方式也跟我们使用的资源多寡有关,因此整个Gas就是围绕在使用者付费的基础之上,而计…
-
【Solidity系列】继承同源但不同意图的函数覆写(Function Overriding)_链圈子
我们在「【开发智能合约— Solidity系列】何谓继承(Inheritance)」有提到继承的一些基本概念,然而在继承的过程中我们可能会用到上游的方法,甚至加工,而方…
