DApp开发初探

前言最近DApp的开发貌似很火,学习了区块链的一些知识之后,相信有很多人和我一样,也想了解开发一个DApp是一个怎样的流程。 下面将通过一个简单的栗子来初识一下DApp的开发流程,届时,我们也将开发出第一个DApp应用–《永存的留言》。 项目介绍《永存的留言》是一个基于以太坊的在线留言平台。它的功能十分简单–用户可以在平台上进行留言,平台每10s随机的展示留...

阅读全文

Solidity函数修改器的基本概念及应用

基本概念函数修改器可以一定程度上改变函数的行为。可以作为函数执行的先行条件,如果符合函数修改器定义的条件,才可以执行函数体内容。关于函数修改器,可以把理解成if的变相。 函数修改器定义函数修改器的定义语法如下: 12345678modifier 修改器名 { 条件体.. _; } function a() ...

阅读全文

Solidity的函数类型以及可见性分析(类比Java)

函数类型函数也是一种类型(值类型),它是函数的调用方式。函数类型可以被赋值吗,作为参数和返回结果。函数可以分为两类:内部函数(Internal)和外部函数(External)。 内部函数Internal(默认): 只能在当前合约内被调用(在当前的代码块内,包括内部库函数,和继承的函数中)。 外部函数External: 由地址和函数方法签名两部分组成,可作为外...

阅读全文

比特币挖矿原理

记账工作由于记账是有奖励的,每次记账都可以给自己凭空增加一定数量的个比特币(当前是12.5比特币,博文写作时每个比特币是4万人民币以上,大家可以算算多少钱),因此就出现大家争相记账,大家一起记账就会引起问题:出现记账不一致的问题,比特币系统引入工作量证明来解决这个问题,规则如下:一段时间内(10分钟左右,具体时间会与密码学难题难度相互影响)只有一人可以记账成...

阅读全文