跳到主要内容

1 篇博文 含有标签「Cell-Model」

查看所有标签

· 阅读需 19 分钟
Jan Xie

喜欢函数式编程的工程师应该很熟悉一个名词:First-class Function,翻译成中文应该叫“头等函数”或者“一等函数”。First-class Function指的是一类编程语言,在这些语言中函数是一个完全独立的概念:函数可以被当作值赋给一个变量,可以被当作参数传递给其他函数,也可以被当作返回值从其它函数传出来。在这样的语言中我们可以像操纵数据一样操纵函数,所以在这些语言中函数和数据一样是“一等公民”(First-class citizen)。First-class Function是函数式语言的一个关键特性,很多函数式编程的强大能力来源于此。

Nervos CKB使用Cell模型来构建整个共同知识库的状态。Cell模型是一个非常简单但是与现有区块链设计非常不同的状态模型,我们在设计Cell模型的时候已经意识到,基于Cell模型的DApp将拥有一些非常不同的性质,就像函数式编程和面向对象编程会产生风格迥异的设计模式和程序特性一样。在这篇文章中,我想阐述Cell模型可以支持的一种非常有趣的DApp设计模式,我们把它叫做First-class Asset,因为通过它我们可以将用户自定义的加密资产变成区块链中的“一等公民”。