源码
-
Asch源码core模块之delegates
背景 在上一篇文章 Asch源码core模块之accounts 中已经把 ./core 和 ./base 有映射(或者说冗余?)关系的三个模块阅读完。 ./core/blocks.js Asch源码core模块之blocks ./base/blocks.js [Asch源码base模块之block创建] ./c …阅读全文
-
Redux简介与源码分析
Redux介绍 随着业务需求越来越复杂,应用中需要开发者管理越来越多的状态。这些复杂的状态也直接对应UI上的表现。如果不能很好的管理这些状态,我们就无法对应 用的一些异常表现做出合理的解释。 redux 的主要作用是管理业务上越来越多的状态。要理解 redux,就需要先了解它的几个主要概念: State [代码片段] 表示应用的状态。对应到JS中就是一个普通的 obje …阅读全文
-
Asch源码core模块之accounts
背景 继续阅读以下映射关系中的 account: ./core/blocks.js Asch源码core模块之blocks ./base/blocks.js Asch源码base模块之block创建 ./core/transactions.js Asch源码core模块之transactions …阅读全文
-
tensorflow variant源码分析
tensorflow variant基本语义 通过分析tf.variant的源码可以知道它其实是一个any语义,即这个类型可以被任意类型赋值,它的主要目的就是做彻底的类型擦除。 这个名字取得有迷惑性,它和标准库和boost库中的variant语义是不一样的,而是和c++17中的std::any对应的。 tf.variant用法 可以从tf的测试代码中知道它的基本用法,用法很 …阅读全文
-
Asch源码core模块之transactions
背景 刚啃完 core/blocks.js ,接下来马上 core/transactions.js , 略辛苦,毕竟这两个源码文件应该是 core/ 目录下代码量最多的两个源码文件了。 源码概况 event: onBind public: Constructor addUnconf …阅读全文
-
Asch源码core模块之blocks
背景 在上一篇文章 Asch源码core模块之loader启动 已经基本上把 Asch 服务启动过程梳理清楚了。 本文开始阅读 ./src/core/blocks.js , 希望在此之前已经阅读过 Asch源码core模块之loader启动 。 源码概况 照旧先把主要功能函数框架罗列,如下: event: onR …阅读全文
-
Asch源码core模块之loader启动
背景 在 Asch源码阅读:启动过程概述 主要阅读了 src/init.js 的初始化过程, 但是在 init.js 初始化过程中最后环节就是通过 onBind 触发 src/core/loader.js 但是其实阅读 src/core/loader.js 的前提就是对 src/base 有所了解。因为里面大量的 library.base 开头的代码就是使用 src/ba …阅读全文
-
Asch源码base模块之transaction
背景 在 Asch源码base模块之block创建 中,已经介绍了 block 创建核心流程, 包括 序列化,签名,验证,数据库存储,transaction 交易的核心流程和 block 如出一辙, 只不过交易是更泛化的概念,含义比较广,可以代表转账,投票等类型,所以代码量更多。 接下来继续介绍 base 目录的 Transaction 模块。 consens …阅读全文
-
Tomcat源码分析之中文乱码(一)
欢迎点击「算法与编程之美」↑关注我们! 本文首发于微信公众号:"算法与编程之美",欢迎关注,及时了解更多此系列博客。 本系列博客我们将为大家介绍JavaWeb 大家可能遇到的各种烦人的中文乱码问题。虽然您可能已经知道了在某些情况下如何解决中文乱码的问题,但是您不一定知道为什 么会产生中文乱码?很多时候了解问题产生的原因远比问题解决方案重要。我们将带领大家从Tomcat源码的角度 …阅读全文
-
Asch源码base模块之block创建
背景 在 Asch源码base模块之Account 中,已经介绍了 Account 相关数据库增删改查。 接下来继续介绍 base 目录的 Block 模块。 consensus.js account.js block.js transaction.js 概览 block 模块对外提供的就是一个 Bl …阅读全文