From 7f90771dc908856ad2c4f6872ba5fbdee0f25e24 Mon Sep 17 00:00:00 2001 From: luxin Date: Mon, 26 Jul 2021 22:47:38 +0800 Subject: [PATCH] update node level --- .DS_Store | Bin 6148 -> 6148 bytes data/java_tree.txt | 8111 +-- data/python_tree.txt | 7258 +-- data/tree_java_mapping.json | 42507 ++++++++++------ data/tree_python_mapping.json | 34060 +++++++++---- ...\221\345\216\237\347\224\237_mapping.json" | 30670 +++++++---- ...\272\221\345\216\237\347\224\237_tree.txt" | 7428 +-- 7 files changed, 84295 insertions(+), 45739 deletions(-) diff --git a/.DS_Store b/.DS_Store index d7c19338fb3ecbddf6fff2bae9a4ad2c6ad86ffd..d3dda4a28fc989b74d6a0eb38b933e82fa9264d9 100644 GIT binary patch delta 96 zcmZoMXfc=|#>B)qu~2NHo+;zW&4NtJ87CWvuuSG>6k$9$S%tBITcWz!%+f?h!PvrR y@;XLY#+j4PFv>H|+Wdx5ighzP2R{c;KTzLy=E?jbmK=->3_!%dusJ|v3o`)bUKiK^ delta 97 zcmZoMXfc=|#>B`mu~2NHo+;yriG|B28;Gz>=4TRNJTX~?sewzpy4uu2N5RC{VDfq< zS;iTY&oap~&fNT#Ns4u210&;Rb`E|HpaGi&nZGkn<`=Q#U;qL}1_q|h0U}$N0Y&N= A3IG5A diff --git a/data/java_tree.txt b/data/java_tree.txt index 3e01d37..8a79618 100644 --- a/data/java_tree.txt +++ b/data/java_tree.txt @@ -1,4038 +1,4073 @@ -java --> ( 难度等级: 无 || 挂载数据: 无 ) -├── java初阶 --> ( 难度等级: 无 || 挂载数据: 无 ) -│ ├── Java的历史和演变 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Java的家世 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 现代编程语言的诞生:C语言 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── C++:下一个阶段 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ └── Java出现的时机已经成熟 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Java的诞生 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Java改变Internet的方式 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Java applet --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 安全性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 可移植性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Java的魔力:字节码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── servlet:服务器端的Java --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Java的关键特性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 简单性 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 面向对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 面向对象概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 面向对象程序设计的特点 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) -│ │ │ │ ├── Java中的类与对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 类的定义 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) -│ │ │ │ │ ├── 对象的创建与使用 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ │ │ ├── 存储到什么地方 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ │ │ └── Java中的数组 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ │ │ ├── 访问控制符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── String类与StringBuffer类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── String类的初始化 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ │ │ ├── String类的常见操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── StringBuffer类 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ │ │ │ ├── 声明字符串 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ │ └── 创建字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── System类与Runtime类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── System类 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ │ │ └── Runtime类 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ │ ├── Math类与Random类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── Math类 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ │ │ │ ├── Random类 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ │ │ │ ├── Math类概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ └── 常用数学运算方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 包装类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── Integer类 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ │ │ ├── Number类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ │ ├── Integer --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ │ │ │ ├── Boolean --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ │ │ │ ├── Character --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ │ │ └── Number --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ │ ├── 日期与时间类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── Date类 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ │ │ ├── Calendar类 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ │ │ │ └── JDK 8的日期与时间类 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ │ ├── 格式化类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── DateFormat类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── SimpleDateFormat类 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ │ │ └── DateTimeFormatter类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ ├── 用引用操纵对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 永远不需要销毁对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 作用域 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ └── 对象的作用域 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ │ ├── 构建一个Java程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 名字可见性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ └── 运用其他构件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 编码风格 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 访问对象的属性和行为 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ │ ├── 对象的引用 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) -│ │ │ │ │ ├── 对象的销毁 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ ├── 打印对象和toString方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ │ └── ==和equals方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) -│ │ │ │ ├── 类的封装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 如何实现封装 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) -│ │ │ │ ├── 构造方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ ├── 构造方法的定义 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ │ │ └── 构造方法的重载 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── static关键字 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ │ ├── 静态变量 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ │ ├── 静态方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 静态代码块 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ │ ├── 类的继承 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ ├── 继承的概念 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) -│ │ │ │ │ ├── 重写父类方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ │ ├── extends关键字 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ │ │ ├── 所有类的父类——Object类 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ │ │ ├── super限定 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 调用父类构造器 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── final关键字 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── final关键字修饰类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── final关键字修饰方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── final关键字修饰变量 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ │ │ ├── final数据 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ ├── final方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ ├── final类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 有关final的忠告 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 多态 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ │ ├── 多态概述 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ │ ├── 对象的类型转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 转机 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 方法调用绑定 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 产生正确的行为 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 可扩展性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ └── 缺陷:“覆盖”私有方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 多态性 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ │ └── 引用变量的强制类型转换 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── JDK 8的Lambda表达式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ └── Lambda表达式入门 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 结构化程序设计简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 程序的三种基本结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 面向对象程序设计简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 面向对象的基本特征 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 方法详解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 方法的所属性 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ ├── 方法的参数传递机制 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ │ ├── 形参个数可变的方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ │ └── 递归方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── 类成员 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 理解类成员 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) -│ │ │ │ │ └── 单例(Singleton)类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── final修饰符 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ ├── final成员变量 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ │ │ ├── final局部变量 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ │ │ │ ├── final修饰基本类型变量和引用类型变量的区别 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ │ ├── 可执行“宏替换”的final变量 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ └── 不可变类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Java 9改进的接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 接口的概念 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Java 9中接口的定义 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 接口的继承 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ │ │ └── 面向接口编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Java 11增强的Lambda表达式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 在Lambda表达式中使用var --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 使用Lambda表达式调用Arrays的类方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 枚举类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 手动实现枚举类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 枚举类入门 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 实现接口的枚举类 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ │ └── 包含抽象方法的枚举类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 修饰符的适用范围 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 多版本JAR包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── jar命令详解 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 创建可执行的JAR包 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ │ └── 关于JAR包的技巧 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 健壮性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 多线程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 体系结构中立 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 解释执行和高性能 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 分布式 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 动态性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Java的演变历程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Java SE 8 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ └── 文化革新 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Java综述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 面向对象编程 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 两种范式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 抽象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── OOP三原则 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 面向对象基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Java核心类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── StringJoiner --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 包装类型 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 记录类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 第一个简单程序 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 输入程序 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 编译程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 深入分析第一个示例程序 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 第二个简短程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 两种控制语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── if语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ └── for循环 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── 使用代码块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── Java类库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 数据类型、变量和数组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Java是强类型化的语言 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 基本类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 整型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── byte --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── short --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── int --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ └── long --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ ├── 浮点型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── float --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── double --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ ├── 字符型 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 布尔型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 深入分析字面值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 整型字面值 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 浮点型字面值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 布尔型字面值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 字符型字面值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 字符串字面值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 变量的声明 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 动态初始化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 变量的作用域和生存期 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 类型转换和强制类型转换 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Java的自动类型转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 强制转换不兼容的类型 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ ├── 表达式中的自动类型提升 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 数组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 一维数组 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 多维数组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 另一种数组声明语法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 关于字符串的一些说明 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 字符串的连接 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 连接字符串 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ └── 连接其他数据类型 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 提取字符串信息 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 获取字符串长度 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 获取指定位置的字符 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ │ ├── 获取子字符串索引位置 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 判断字符串首尾内容 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) -│ │ │ │ ├── 获取字符数组 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ └── 判断子字符串是否存在 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 字符串的操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 截取字符串 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 字符串替换 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ │ │ ├── 字符串分割 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 大小写转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 去除空白内容 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 获取子字符串 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ │ ├── 去除空格 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── 判断字符串的开始与结尾 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 按字典顺序比较两个字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 字母大小写转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 可变字符串StringBuffer类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 不可变String --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 重载"+"与StringBuilder --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 无意识的递归 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── String上的操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 格式化输出 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── printf() --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── System.out.format() --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Formatter类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 格式化说明符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Formatter转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── String.format() --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 正则表达式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 基础 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) -│ │ │ │ ├── 创建正则表达式 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── 限定符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Pattern和Matcher --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── split() --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 替换操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── reset() --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 正则表达式与Java I/O --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 扫描输入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Scanner定界符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 用正则表达式扫描 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── StringTokenizer --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 获取字符串信息 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 字符串查找 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 获取指定索引位置的字符 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 格式化字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 常规类型格式化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 字符串生成器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 子串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 拼接 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 不可变字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 检测字符串是否相等 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 空串与Null串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 码点与代码单元 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── String API --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 阅读联机API文档 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ └── 构建字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 向C/C++程序员提供指针方面的说明 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ ├── 数组的定义 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── 数组的常见操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 整数类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 浮点类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 字符类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 布尔类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 数组的概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 创建一维数组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 给一维数组赋值 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ ├── 获取数组长度 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 一维数组的使用场景 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 不规则数组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 数组的基本操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 遍历数组 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 填充和批量替换数组元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 填充替换数组元素 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ └── 数组查询 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 数组是第一级对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 返回一个数组 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 创建测试数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Arrays.fill() --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 数据生成器(Generator) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 从Generator中创建数组 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ ├── Arrays实用功能 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 复制数组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 数组元素的比较 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 数组排序 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ └── 在已排序的数组中查找 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 数组排序算法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 冒泡排序 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 直接选择排序 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ └── 反转排序 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── 数值中使用下画线分隔 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用var定义变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 内存中的数组 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 基本类型数组的初始化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 引用类型数组的初始化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 操作数组的工具类:Arrays --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 数组应用举例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── char类型 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── boolean类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 声明数组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 访问数组元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── for each循环 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 数组拷贝 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 运算符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 算术运算符 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 基本算术运算符 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 求模运算符 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 算术与赋值复合运算符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 自增与自减运算符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 位运算符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 位逻辑运算符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 左移 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 右移 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 无符号右移 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ └── 位运算符与赋值的组合 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) -│ │ ├── 关系运算符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 布尔逻辑运算符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 赋值运算符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── “?”运算符 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ ├── 运算符的优先级 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 使用圆括号 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 自增和自减运算符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 扩展后的赋值运算符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 三目运算符 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── 数值类型之间的转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 关系和boolean运算符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 括号与运算符级别 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ ├── 控制语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Java的选择语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── if语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── switch语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ ├── 迭代语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── while语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── do-while语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── for语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── for循环的for-each版本 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 嵌套的循环 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 跳转语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ ├── 使用break语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 使用continue语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── return语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ ├── 类 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ ├── 类的基础知识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 类的一般形式 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 一个简单的类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 声明对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 为对象引用变量赋值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 为Box类添加方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 返回值 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ └── 添加带参数的方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 构造函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── this关键字 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 在构造器中调用构造器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── static的含义 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 垃圾回收 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── finalize方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 堆栈类 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 基本成员默认值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 成员变量 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 成员方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 权限修饰符 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 操作对象的Objects工具类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── ThreadLocalRandom与Random --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── BigDecimal类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 方法和类的深入分析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 重载方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 区分重载方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ │ ├── 涉及基本类型的重载 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 以返回值区分重载方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 将对象用作参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 参数传递的深入分析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 返回对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 递归 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ ├── 访问控制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Java类包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 类名冲突 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 完整的类路径 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ └── 创建包 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 理解static --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── final介绍 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 重新审视数组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 嵌套类和内部类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 成员内部类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 局部内部类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 静态内部类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 匿名内部类 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ │ │ └── 再访工厂方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 创建内部类 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 链接到外部类 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 使用.this与.new --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 接口内部的类 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 从多层嵌套类中访问外部类的成员 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 内部类的继承 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 内部类可以被覆盖吗 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ ├── 内部类标识符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用内部类访问对象状态 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 内部类的特殊语法规则 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 内部类是否有用、必要和 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 由外部方法访问变量 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── String类介绍 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用命令行参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── varargs:可变长度参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 重载varargs方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── varargs方法与模糊性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 继承 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 继承的基础知识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 成员访问与继承 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 一个更实际的例子 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 超类变量可以引用子类对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用super关键字 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用super调用超类的构造函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ └── super的另一种用法 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── 创建多级继承层次 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 构造函数的调用时机 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 方法重写 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 动态方法调度 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 重写方法的目的 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 应用方法重写 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── 使用抽象类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 抽象类的作用 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── 在继承中使用final关键字 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用final关键字阻止重写 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 使用final关键字阻止继承 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Object类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── “是一个”(is-a)与“像是一个”(is-like-a)关系 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── Object:所有类的超类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Object类型的变量 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ └── hashCode方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ ├── 泛型数组列表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 声明数组列表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 访问数组列表元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 类型化与原始数组列表的 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 参数数量可变的方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 继承的设计技巧 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 包和接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 定义包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 包查找与CLASSPATH --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 一个简短的包示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 代码组织 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 创建独一无二的包名 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 定制工具库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 用import改变行为 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ │ ├── 对使用包的忠告 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 包名 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 类的导入 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ ├── 在包中增加类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 包访问 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) -│ │ │ └── 设置类路径 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 访问保护 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 导入包 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ ├── 接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 定义接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ ├── 实现接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 嵌套接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 应用接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 接口中的变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 接口可以扩展 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 完全解耦 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ ├── Java中的“多重继承” --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 通过继承来扩展接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 组合接口时的名字冲突 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 适配接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 接口中的域 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 初始化接口中的域 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 接口的属性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 默认方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 解决默认方法冲突 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Comparator接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 对象克隆 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 默认接口方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 默认方法的基础知识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 一个更加实用的例子 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 在接口中使用静态方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 关于包和接口的最后说明 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 异常处理 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 异常处理的基础知识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 异常类型 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 未捕获的异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── try块 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 异常处理程序 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 错误 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 栈轨迹 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 重新抛出异常 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 异常链 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── f?inally子句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── try-with-Resources语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 分析堆栈轨迹元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用try和catch --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 多条catch子句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 嵌套的try语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── throw --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── throws --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── finally --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Java的内置异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 创建自己的异常子类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 链式异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 3个近期添加的异常特性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用异常 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── throws关键字 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── throw关键字 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 自定义异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 异常概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 捕捉处理异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── try-catch代码块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 在方法中抛出异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用throws关键字抛出异常 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ └── 使用throw关键字抛出异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 异常参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Java常见异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 运行时异常 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 异常处理机制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用try...catch捕获异常 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 异常类的继承体系 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 访问异常信息 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 使用finally回收资源 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 异常处理的嵌套 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ └── Java 9增强的自动关闭资源的try语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Checked异常和Runtime异常体系 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用throws声明抛出异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 方法重写时声明抛出异常的限制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用throw抛出异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 自定义异常类 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ └── 使用throw语句抛出异常 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ ├── Java的异常跟踪栈 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 异常处理规则 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 不要过度使用异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 避免使用Catch All语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── Java的异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── NullPointerException --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ ├── 使用断言 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用JDK Logging --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用Commons Logging --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 使用Log4j --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ └── 使用SLF4J和Logback --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ ├── 多线程编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Java线程模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 线程优先级 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 同步 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 消息传递 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Thread类和Runnable接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 主线程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 创建线程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 实现Runnable接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 扩展Thread类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 选择一种创建方式 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── Thread类实现多线程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Runnable接口实现多线程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Callable接口实现多线程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 三种实现多线程方式的对比分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 后台线程 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 创建多个线程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用isAlive和join方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 线程优先级 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 同步 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用同步方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── synchronized语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 竞态条件的一个例子 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 竞态条件详解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 锁对象 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 条件对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── synchronized关键字 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ ├── 监视器概念 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── volatile字段 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 线程局部变量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 线程间通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 挂起、恢复与停止线程 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 获取线程的状态 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 使用多线程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 线程概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 进程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 建立一个进程 --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) -│ │ │ │ ├── 运行一个进程 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ │ └── 进程句柄 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 线程 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ │ │ └── 多线程的优势 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 线程的生命周期及状态转换 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 新建和就绪状态 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 运行和阻塞状态 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 线程死亡 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 线程的调度 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 线程休眠 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 线程让步 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 线程插队 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 多线程同步 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ └── 同步锁 --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) -│ │ ├── 多线程通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 线程池 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Executor接口实现线程池管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── CompletableFuture类实现线程池管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用线程池管理线程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 使用ForkJoinPool利用多CPU --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) -│ │ ├── 线程简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 实现线程的两种方式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 继承Thread类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 操作线程的方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 线程的中断 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 线程的礼让 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 线程的同步 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 线程同步机制 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ ├── 释放同步监视器的锁定 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 同步锁(Lock) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 控制线程 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── join线程 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 线程睡眠:sleep --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ └── 改变线程优先级 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 线程通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 传统的线程通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Condition控制线程通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 使用阻塞队列(BlockingQueue)控制线程通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 线程组和未处理的异常 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 线程相关类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── ThreadLocal类 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 包装线程不安全的集合 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 线程安全的集合类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ └── Java 9新增的发布-订阅框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 枚举、自动装箱与注解(元数据) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 枚举 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 枚举的基础知识 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── values和valueOf方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Java枚举是类类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 枚举继承自Enum类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 另一个枚举示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 类型封装器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Character封装器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Boolean封装器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 数值类型封装器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 自动装箱 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 自动装箱与方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 表达式中发生的自动装箱/拆箱 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 布尔型和字符型数值的自动装箱/拆箱 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 自动装箱/拆箱有助于防止错误 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ └── 一些警告 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 注解(元数据) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 注解的基础知识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 指定保留策略 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 在运行时使用反射获取注解 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── AnnotatedElement接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用默认值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 标记注解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 单成员注解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 内置注解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 类型注解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 重复注解 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ ├── I/O、applet以及其他主题 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── I/O的基础知识 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 字节流和字符流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 字节流概述 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 字节流读写文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 文件的拷贝 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 字节流的缓冲区 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 字节缓冲流 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 字符流概述 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ │ │ │ ├── 字符流操作文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ │ └── 转换流 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ │ │ └── 预定义流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 读取控制台输入 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 读取字符 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ └── 读取字符串 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 向控制台写输出 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── PrintWriter类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 读/写文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 自动关闭文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── applet的基础知识 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── transient和volatile修饰符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用instanceof运算符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── strictfp --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 本地方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── 使用assert --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 静态导入 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 通过this调用重载的构造函数 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 紧凑API配置文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 转换数据 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 获取基本类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 视图缓冲器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 用缓冲器操纵数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 缓冲器的细节 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 内存映射文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 文件加锁 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 泛型 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ ├── 什么是泛型 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 一个简单的泛型示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 泛型只使用引用类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 基于不同类型参数的泛型类型是不同的 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ └── 泛型提升类型安全性的原理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 带两个类型参数的泛型类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 泛型类的一般形式 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 有界类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用通配符参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 创建泛型方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 泛型接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 原始类型与遗留代码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 泛型类层次 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 使用泛型超类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 泛型子类 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 泛型层次中的运行时类型比较 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 强制转换 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 重写泛型类的方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 泛型的类型推断 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 擦除 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 模糊性错误 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用泛型的一些限制 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ │ ├── 对静态成员的一些限制 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 对泛型数组的一些限制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 对泛型异常的限制 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 定义泛型类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 泛型的用法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 一个元组类库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 一个栈类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── RandomList --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 泛型方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 利用类型参数推断 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 可变参数与泛型方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 用于Generator的泛型方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 一个通用的Generator --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 简化元组的使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 一个Set实用工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 定义泛型方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── “菱形”语法与泛型构造器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 类型推断 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 构建复杂模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 擦除的神秘之处 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── C++的方式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 迁移的可兼容性 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 边界处的动作 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 擦除的补偿 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 泛型数组 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ ├── 边界 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 通配符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 编译器有多聪明? --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 抗变 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 无界通配符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 捕获转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 自限定的类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 离奇的循环泛型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 自限定 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 参数协变 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 动态类型安全 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 混用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── C++中的混用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 与接口混用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用装饰器模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 与动态代理混用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 潜在类型机制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 缺乏潜在类型机制的补偿 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 将一个方法应用于序列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 当你并未碰巧拥有正确的接口时 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 用适配器仿真潜在类型机制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 将函数对象用作策略 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 泛型的常规用法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 泛型的高级用法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 泛型入门 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 编译时不检查类型的异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Java 9增强的“菱形”语法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 从泛型类派生子类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 类型通配符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用类型通配符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 设定类型通配符的上限 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 设定类型通配符的下限 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 设定泛型形参的上限 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 通配符概念 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 通配符的超类型限定 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 无限定通配符 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 通配符捕获 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 编写泛型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 擦拭法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── extends通配符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── super通配符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── lambda表达式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── lambda表达式简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── lambda表达式的基础知识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 函数式接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 几个lambda表达式示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 块lambda表达式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 泛型函数式接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 作为参数传递lambda表达式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── lambda表达式与异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── lambda表达式和变量捕获 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 方法引用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 静态方法的方法引用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 泛型中的方法引用 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ ├── 构造函数引用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 预定义的函数式接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── lambda表达式的语法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 构造器引用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 再谈Comparator --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ └── 其他 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Java开发入门 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Java概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 什么是Java --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Java语言的特点 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── JDK的使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 什么是JDK --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 安装JDK --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ └── JDK目录介绍 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 系统环境变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── PATH环境变量 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── CLASSPATH环境变量 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) -│ │ ├── 第一个Java程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 编辑Java源代码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 编译Java程序 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ └── 根据CLASSPATH环境变量定位类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Java的运行机制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── Eclipse开发工具 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── Eclipse概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Eclipse的安装与启动 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── 使用Eclipse进行程序开发 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ ├── Java编程基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Java的基本语法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Java的基本语法格式 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ ├── Java中的注释 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Java中的关键字 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Java中的标识符 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── Java中的变量与常量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 变量的定义 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ ├── 变量的数据类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 变量的类型转换32目录Java基础入门(第2版)2.2.4变量的作用域 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Java中的常量 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ └── 指数记数法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Java中的运算符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 逻辑运算符 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ └── 条件运算符 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 选择结构语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── if条件语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ └── switch条件语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 循环结构语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── do…while循环语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ └── for循环语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ ├── 集合 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ ├── 集合概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Collection接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── List接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── List接口简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── ArrayList集合 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ └── LinkedList集合 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── Collection集合遍历 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Iterator遍历集合 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── foreach遍历集合 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ └── JDK 8的forEach遍历集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Set接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Set接口简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── HashSet集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── TreeSet集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Map接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Map接口简介 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── HashMap集合 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── Map集合遍历 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ ├── TreeMap集合 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── Properties集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 常用工具类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Collections工具类 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ └── Arrays工具类 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ ├── 聚合操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 聚合操作简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 创建Stream流对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Stream流的常用方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Parallel Stream(并行流) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Java集合框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 集合接口与实现分离 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ └── 泛型实用方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 集合框架中的接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 链表 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 数组列表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 散列集 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 树集 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 优先队列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 映射 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 基本映射操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 更新映射条目 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 映射视图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 弱散列映射 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 链接散列集与映射 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 枚举集与映射 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 标识散列映射 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 算法 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 二分查找 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 简单算法 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 批操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 编写自己的算法 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 遗留的集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 属性映射 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 栈 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ └── 位集 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Java集合简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 编写equals方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 编写equals和hashCode --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ ├── 使用TreeMap --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ ├── 使用Properties --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 使用Deque --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── I/O流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── I/O流概述 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── File类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── File类的常用方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 遍历目录下的文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 删除文件及目录 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 创建文件对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 文件操作 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 文件夹操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 目录列表器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 目录实用工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 目录的检查及创建 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 文件的创建与删除 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ └── 获取文件信息 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── RandomAccessFile --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── 对象序列化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 寻找类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 序列化的控制 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ └── 使用“持久性” --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── NIO --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── NIO概述 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ ├── Buffer(缓冲器) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Channel(通道) --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── Java新IO概述 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) -│ │ │ ├── 使用Buffer --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Channel --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 字符集和Charset --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ └── 文件锁 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── NIO. --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Path接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── Files工具类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── GUI(图形用户接口) --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── Swing概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Swing特点 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Swing包 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 常用Swing组件概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Swing顶级容器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── JFrame --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) -│ │ │ └── JDialog --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 布局管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── BorderLayout --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── FlowLayout --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── GridLayout --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── FlowLayout流布局管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── BorderLayout边界布局管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── GridLayout网格布局管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 流布局管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 边界布局管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 网格布局管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── FlowLayout布局管理器 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── BorderLayout布局管理器 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── GridLayout布局管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── GridBagLayout布局管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── CardLayout布局管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── BoxLayout布局管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 事件处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 事件处理机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Swing常用事件处理 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Java事件模型的流程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 事件适配器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用内部类实现监听器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用外部类实现监听器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 类本身作为事件监听器类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 匿名内部类实现监听器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 基本事件处理概念 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 简洁地指定监听器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 适配器类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 动作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── AWT事件继承层次 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Swing常用组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 面板组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 文本组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── JTextField文本框组件 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── JPasswordField密码框组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── JTextArea文本域组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 文本框组件 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 密码框组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 文本域组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 标签组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 按钮组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── JButton按钮组件 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── JRadioButton单选按钮组件 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── JCheckBox复选框组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 提交按钮组件 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── 单选按钮组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 复选框组件 --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) -│ │ │ ├── 下拉框组件 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 菜单组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Swing组件的整合使用——QQ登录 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 案例分析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 案例实现 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── JavaFX图形用户界面工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── JavaFX概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── JavaFX开发环境配置 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── JavaFX基础入门 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── JavaFX可视化管理工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── JDBC --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 什么是JDBC --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── JDBC常用API --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Driver接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── DriverManager类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Connection接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── Statement接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── PreparedStatement接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ └── ResultSet接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ ├── JDBC编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── JDBC的编程步骤 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ └── 实现第一个JDBC程序 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ └── 案例——使用JDBC实现QQ登录 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) -│ ├── 网络编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 网络编程基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 网络通信协议 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── IP地址和端口号 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── InetAddress --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── UDP与TCP协议 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── UDP通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── UDP通信简介 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── DatagramPacket --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── DatagramSocket --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── UDP网络程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── UDP案例——聊天程序 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ ├── TCP通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── TCP通信简介 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ │ │ ├── ServerSocket --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── Socket --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 简单的TCP网络程序 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 多线程的TCP网络程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── TCP案例——文件上传 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 网络编程的基础知识 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 网络基础知识 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── Java的基本网络支持 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用URLDecoder和URLEncoder --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── URL、URLConnection和URLPermission --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 基于TCP协议的网络编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── TCP协议基础 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 使用ServerSocket创建TCP服务器端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Socket进行通信 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 记录用户信息 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ ├── 半关闭的Socket --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用NIO实现非阻塞Socket通信 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 使用AIO实现非阻塞通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 基于UDP协议的网络编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── UDP协议基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用DatagramSocket发送、接收数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 使用MulticastSocket实现多点广播 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用代理服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 直接使用Proxy创建连接 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 使用ProxySelector自动选择代理服务器 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ └── Java 11标准化的HTTP Client --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 发送同步GET请求 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── 发送带请求体的请求 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 发送异步请求 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── WebSocket客户端支持 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 基于WebSocket的多人实时聊天 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 初识Java --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Java简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Java的版本 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── JavaAPI文档 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Java的应用领域 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 怎样学好Java --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Java API文档 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Java代码助手 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用IDE --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 使用IDE练习插件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 搭建Java环境 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── JDK的下载 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 配置JDK --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 测试开发环境 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ └── Windows系统的JDK环境 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── Eclipse开发环境 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Eclipse简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 下载Eclipse --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) -│ │ │ └── Eclipse工作台 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Eclipse的使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 创建Java类文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用编辑器编写程序代码 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 运行Java程序 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── 程序调试 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 难点解答 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── JDK常用的基本组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 配置环境变量后,javac运行正常,但编译的时候仍找不到文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) -│ │ │ ├── Java中变量一定要初始化吗? --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── switch多分支语句后expression表达式的数据类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 多维数组的长度 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── StringBuffer与String的不同之处 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 把数据抽象成类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 局部变量和全局变量 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 类的三大特性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 什么情况下会使用匿名内部类? --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ ├── 异常的使用原则 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 注意随机数的取值范围 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ ├── “装箱”与“拆箱” --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 集合的使用场合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 集合的元素数量是变化的 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Swing组件的层级关系 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 布局的使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 输入/输出流的使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 线程的核心方法:run方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) -│ │ │ ├── 线程的启动 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 无法连接数据库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── SQL语句的使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── AWT与Swing组件的区别 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── Java语言的特性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 简单 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 分布性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 解释型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 动态 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ ├── Java语言基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 代码注释 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 文档注释 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 注释的插入 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ ├── 类注释 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 方法注释 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 字段注释 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 通用注释 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 包注释 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ └── 注释抽取 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 数据类型转换 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 隐式转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 显式转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 隐式类型转换 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 显式类型转换 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ └── Java主类结构 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 包声明 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 编写主方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 导入API类库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 流程控制 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 程序结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 条件语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── switch多分支语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 循环语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── foreach语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ └── 循环语句的嵌套 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── 复合语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 循环控制 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ ├── 循环 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 中断控制流程的语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── if判断 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── switch多重选择 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── while循环 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ ├── 面向对象编程基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 类的主方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 面向对象核心技术 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 类的多态 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 向上转型 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ └── 忘记对象类型 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 向下转型 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── instanceof关键字 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ ├── Swing程序设计 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 常用窗体 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── JFrame窗体 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── JDialog对话框窗体 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── JDialog窗体 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ ├── 常用面板 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── JPanel面板 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── JScrollPane滚动面板 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── JScrollPane面板 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 列表组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── JComboBox下拉列表框组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── JList列表框组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 下拉列表框组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 列表框组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 事件监听器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 动作事件监听器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 键盘事件 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 鼠标事件 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── 窗体事件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 捕获窗体焦点变化事件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 捕获窗体状态变化事件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 捕获其他窗体事件 --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) -│ │ ├── 监听事件简介 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ └── 焦点事件监听器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── I/O(输入/输出) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 流概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 输入/输出流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 输入流 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ └── 输出流 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ ├── 文件输入/输出流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── FileInputStream类与FileOutputStream类 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ └── FileReader类与FileWriter类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 带缓冲的输入/输出流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── BufferedInputStream类与BufferedOutputStream类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── BufferedReader类与BufferedWriter类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 带缓存的输入/输出流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 数据输入/输出流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── ZIP压缩输入/输出流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 压缩文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ └── 解压缩ZIP文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ ├── 使用JDBC操作数据库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── JDBC概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── JDBC-ODBC桥 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── JDBC技术 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ └── JDBC驱动程序的类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 数据库操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 数据库基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 数据查询 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── 动态查询 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 添加、修改、删除记录 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 数据库基础知识 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 什么是数据库 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 数据库的种类及功能 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── SQL语言 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── 向数据库发送SQL语句 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ ├── 处理查询结果集 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 顺序查询 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 模糊查询 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ └── 预处理语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Java绘图 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Java绘图基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Graphics绘图类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Graphics2D绘图类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── Canvas画布类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 绘制几何图形 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 设置颜色与画笔 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 设置颜色 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ └── 设置画笔 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── 图像处理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 绘制图像 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 图像缩放 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 放大与缩小 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 图像翻转 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 图像旋转 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 图像倾斜 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Graphics --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Graphics2D --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 坦克大战游戏 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ ├── 开发背景 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 系统开发环境要求 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 系统功能设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 系统功能结构 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 系统业务流程 --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) -│ │ ├── 枚举设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 方向枚举 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 游戏模式枚举 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 坦克类型枚举 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 墙块类型枚举 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 公共类设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 绘图工具类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 地图工具类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 模型类设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 可显示图像的抽象类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 玩家坦克类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 电脑坦克类 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 子弹类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 基地类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 爆炸效果类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 地图类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 墙块设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 墙块抽象类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 墙块实体类 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ ├── 窗体类设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 主窗体 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 登录面板 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 显示关卡面板 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 游戏面板 --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) -│ │ └── 游戏核心功能设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 碰撞检测 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ └── 刷新帧 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ ├── 对象导论 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 抽象过程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 每个对象都有一个接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 每个对象都提供服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 被隐藏的具体实现 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 复用具体实现 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 伴随多态的可互换对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 单根继承结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 容器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 参数化类型(范型) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 并发编程 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ ├── 操作符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 更简单的打印语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用Java操作符 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 优先级 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 赋值 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ ├── 算术操作符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 一元加、减操作符 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 自动递增和递减 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 关系操作符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 测试对象的等价性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 逻辑操作符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 短路 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 按位操作符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 移位操作符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 三元操作符if-else --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 字符串操作符 + 和 += --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用操作符时常犯的错误 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 类型转换操作符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 截尾和舍入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 提升 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── Java没有“sizeof” --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 控制执行流程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── true和false --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) -│ │ ├── if-else --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── 迭代 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── do-while --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ └── 逗号操作符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Foreach语法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── return --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── break和continue --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ ├── 臭名昭著的“goto” --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── switch --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ ├── 初始化与清理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 用构造器确保初始化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 缺省构造器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 成员初始化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 指定初始化 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) -│ │ ├── 构造器初始化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 初始化顺序 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 静态数据的初始化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 显式的静态初始化 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 数组初始化 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ └── 可变参数列表 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ ├── 枚举类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 基本enum特性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 将静态导入用于enum --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 向enum中添加新方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 覆盖enum的方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) -│ │ │ ├── switch语句中的enum --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── values()的神秘之处 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 实现但不继承随机选取 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 为组织而使用接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用EnumSet替代标志 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用EnumMap --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 常数相关的方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用enum的职责链 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 使用enum的状态机 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 多路分发 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用enum分发 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 使用EnumMap分发 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用枚举类型设置常量 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 使用枚举类型的优势 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── 类初始化块 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ ├── 访问权限控制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Java访问权限修饰词 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 包访问权限 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── public:接口访问权限 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) -│ │ │ ├── private: 你无法访问 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) -│ │ │ └── protected:继承访问权限 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ └── 类的访问权限 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 复用类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 组合语法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 继承语法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 初始化基类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 代理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 创建代理对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 代理类的特性 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 在组合与继承之间选择 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── protected关键字 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ ├── 持有对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 基本概念 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 添加一组元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 容器的打印 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── List --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 迭代器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── ListIterator --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── LinkedList --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ ├── Stack --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── Set --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Map --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Queue --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── PriorityQueue --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Collection和Iterator --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── Foreach与迭代器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 适配器方法惯用法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 通过异常处理错误 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 概念 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 创建自定义异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Java标准异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 特例: RuntimeException(运行时异常) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用finally进行清理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── finally用来做什么 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 在return中使用finally --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 缺憾:异常丢失 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 构造器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用构造器执行初始化 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ └── 构造器重载 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 异常匹配 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 其他可选方式 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 历史 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 观点 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 把异常传递给控制台 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 把“受检查异常”转换为“不受检查的异常” --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 异常使用指南 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 类型信息 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Class对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 类字面常量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 泛化的Class引用 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ └── 新的转型语法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 类型转换前先做检查 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用类字面常量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 动态instanceof --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 递归计数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 注册工厂 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── instanceof与Class的等价性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 反射:运行时类信息 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 类方法抽取器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Class类与Java反射 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 访问构造方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 访问成员变量 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ └── 访问方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Annotation功能 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 定义Annotation类型 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ │ └── 访问Annotation信息 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 声明异常入门 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 资源 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 利用反射分析类的能力 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 使用反射在运行时分析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用反射编写泛型数组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 访问字段 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 调用方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 调用构造方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ └── 获取继承关系 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 动态代理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 空对象 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── 模拟对象与桩 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 容器深入研究 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 完整的容器分类法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 填充容器 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 一种Generator解决方案 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Map生成器 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 使用Abstract类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── Collection的功能方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 可选操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 未获支持的操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── List的功能方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 队列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 优先级队列 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) -│ │ │ └── 双向队列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 理解Map --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 性能 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── SortedMap --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── LinkedHashMap --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── 散列与散列码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 理解hashCode() --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ ├── 为速度而散列 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 覆盖hashCode() --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 选择接口的不同实现 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 性能测试框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 对List的选择 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ │ ├── 微基准测试的危险 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 对Set的选择 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 对Map的选择 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 实用方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── List的排序和查询 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 设定Collection或Map为不可修改 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Collection或Map的同步控制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 持有引用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── WeakHashMap --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── Java 1.0/1.1 的容器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Vector和Enumeration --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── Hashtable --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── BitSet --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Java I/O系统 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 输入和输出 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── InputStream类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── OutputStream类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 读取输入 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 添加属性和有用的接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 通过FilterInputStream从InputStream读取 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 通过FilterOutPutStream向OutputStream写入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Reader和Writer --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 数据的来源和去处 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 更改流的行为 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 未发生变化的类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── I/O流的典型使用方式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 缓冲的输入文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 从内存中输入 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 格式化的内存输入 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 基本文件输出 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 存储和恢复数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 读取和写入随机访问文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 管道流 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 文件读写的实用工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 读取二进制文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── 标准I/O --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 从标准输入中读取 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 将System.out转换成PrintWriter --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 标准I/O重定向 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── 进程控制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 压缩 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 用GZIP进行简单压缩 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 用Zip进行多文件存储 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Java档案文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── XML --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── Preferences --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 注解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 基本语法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 定义注解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 元注解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 编写注解处理器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 注解元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 缺省值限制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 生成外部文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 注解不支持继承 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 实现处理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用apt处理注解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 将观察者模式用于apt --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 基于注解的单元测试 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 将@Unit用于泛型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 不需要任何“套件” --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 实现@Unit --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 移除测试代码 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 限定重写父类方法:@Override --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Java 9增强的@Deprecated --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 抑制编译器警告:@SuppressWarnings --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── “堆污染”警告与Java 9增强的@SafeVarargs --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 并发 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 并发的多面性 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 更快的执行 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 改进代码设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 基本的线程机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 定义任务让步 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Executor --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 休眠 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 让步 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 编码的变体 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 术语 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 创建有响应的用户界面 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 共享受限资源 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 不正确地访问资源 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 解决共享资源竞争 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 原子性与易变性 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 原子类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 临界资源 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 在其他对象上同步 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 线程局部存储 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 终结任务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 装饰性花园 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 在阻塞时终结 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 中断 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 检查中断 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 线程之间的协作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── wait()与notifyAll() --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── notify()与notifyAll() --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) -│ │ │ ├── 生产者与消费者 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 任务间使用管道进行输入/输出 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 死锁 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 新类库中的构件 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── CountDownLatch --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── CyclicBarrier --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── DelayQueue --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── PriorityBlockingQueue --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用ScheduledExecutor的温室控制器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Semaphore --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Exchange --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 仿真 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 银行出纳仿真 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 饭店仿真 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 分发工作 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 性能调优 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 比较各类互斥技术 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 免锁容器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 乐观锁 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── ReadWriteLock --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 活动对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 进阶读物 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 线程状态 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 新建线程 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 可运行线程 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ ├── 阻塞和等待线程 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ └── 终止线程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 线程属性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 守护线程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 线程名 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 未捕获异常的处理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 线程安全的集合 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 阻塞队列 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 映射条目的原子更新 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 对并发散列映射的批操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 并发集视图 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 写数组的拷贝 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 并行数组算法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 较早的线程安全集合 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 异步计算 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 可完成Future --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 组合可完成Future --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 用户界面回调中的长时间运行任务 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ ├── 图形化用户界面 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Swing基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 一个显示框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 创建按钮 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 捕获事件 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 文本区域 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 控制布局 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── GridBagLayout --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 绝对定位 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── BoxLayout --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Swing事件模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 事件与监听器的类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 跟踪多个事件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Swing组件一览 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 按钮 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 图标 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 工具提示 --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) -│ │ │ ├── 文本域 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 边框 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 滚动面板 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 一个迷你编辑器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 复选框 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 单选按钮 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 组合框(下拉列表) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 列表框 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 页签面板 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 消息框 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 菜单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建菜单栏 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建弹出式菜单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 定制个性化菜单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 菜单构建 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ │ ├── 菜单项中的图标 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 弹出菜单 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── 键盘助记符和加速器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 启用和禁用菜单项 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 工具条 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 弹出式菜单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 绘图 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 对话框 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 选项对话框 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建对话框 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ │ └── 数据交换 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 文件对话框 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Swing组件上的HTML --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 滑块与进度条 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 选择外观 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 树、表格和剪贴板 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 传递文本 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用系统剪贴板传递图像 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用本地剪贴板传递对象引用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 通过系统剪贴板传递Java对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── JNLP与Java Web Start --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 可视化编程与JavaBean --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── JavaBean是什么 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 使用Introspector抽取出BeanInfo --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 一个更复杂的Bean --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 把Bean打包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 对更复杂的Bean的支持 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ └── 更多有关Bean的读物 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Swing的可替换选择 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 用Flex构建Flash Web客户端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Hello, Flex --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 编译MXML --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── MXML与ActionScript --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 效果与风格 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 事件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 连接到Java --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 数据模型与数据绑定 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 构建和部署 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 创建SWT应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 安装SWT --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Hello, SWT --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 根除冗余代码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 菜单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 页签面板、按钮和事件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 图形 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── SWT中的并发 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── SWT还是Swing --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 基础知识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 熟悉Eclipse开发工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 熟悉Eclipse --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 安装Eclipse的中文语言包 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 透视图与视图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 菜单栏 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 工具栏 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── “包资源管理器”视图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── “控制台”视图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 数字处理类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 数字格式化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 数学运算 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 随机数 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ └── Math.random方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 大数字运算 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── BigInteger --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── BigDecimal --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ ├── 核心技术 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 类的高级特性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── final变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 集合类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 集合类概述 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── List集合 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── List接口的实现类 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 改进的List接口和ListIterator接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── ArrayList和Vector实现类 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ │ └── 固定长度的List --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Set集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── HashSet类 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── LinkedHashSet类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── TreeSet类 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ │ ├── EnumSet类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 各Set实现类的性能分析 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ └── Map集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Map接口的实现类 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ └── 网络通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 网络程序设计基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 局域网与因特网 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 网络协议 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 端口和套接字 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── TCP程序设计基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── InetAddress类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── ServerSocket类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ └── UDP程序设计基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── DatagramPacket类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── DatagramSocket类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 高级应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Swing表格组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 利用JTable类直接创建表格 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 创建表格 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 定制表格 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 操纵表格 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 提供行标题栏的表格 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── Swing树组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 处理选中节点事件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 遍历树节点 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 定制树 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 维护树模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 处理展开节点事件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Swing其他高级组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 高级组件面板 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 分割面板 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 选项卡面板 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 桌面面板和内部窗体 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 文件选择器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 文件选择对话框 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ └── 使用文件过滤器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 系统托盘 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 桌面集成控件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 高级事件处理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 选项事件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 表格模型事件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── AWT绘图 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 绘制图形 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 绘图颜色与画笔属性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 画笔属性 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 绘制文本 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 设置字体 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 显示文字 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ │ ├── 绘制图片 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 画图的实现原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 使用Graphics类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ ├── 理解面向对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── UML(统一建模语言)介绍 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 用例图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 类图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 组件图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 部署图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 顺序图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 活动图 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ │ └── 状态机图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── Java的面向对象特征 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Java基础类库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 与用户互动 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 运行Java程序的参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 使用Scanner获取键盘输入 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 系统相关 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ ├── Java 11改进的国际化与格式化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Java国际化的思路 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ │ ├── Java支持的国家和语言 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 完成程序国际化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用MessageFormat处理包含占位符的字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用类文件代替资源文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Java 9新增的日志API --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用NumberFormat格式化数字 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用DateFormat格式化日期、时间 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 使用SimpleDateFormat格式化日期 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── Java 8新增的日期、时间格式器 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 使用DateTimeFormatter完成格式化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 使用DateTimeFormatter解析字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Java集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Java集合概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Java 11增强的Collection和Iterator接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Lambda表达式遍历集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Iterator遍历集合元素 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ │ ├── 使用Lambda表达式遍历Iterator --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用foreach循环遍历集合元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Predicate操作集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 使用Stream操作集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Queue集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── PriorityQueue实现类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Deque接口与ArrayDeque实现类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── LinkedList实现类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 各种线性表的性能分析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 增强的Map集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Java 8为Map新增的方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 改进的HashMap和Hashtable实现类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── LinkedHashMap实现类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Properties读写属性文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── SortedMap接口和TreeMap实现类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── WeakHashMap实现类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── IdentityHashMap实现类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── EnumMap实现类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 各Map实现类的性能分析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── HashSet和HashMap的性能选项 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 操作集合的工具类:Collections --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 排序操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 同步控制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 设置不可变集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── Java 9新增的不可变集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── AWT编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── AWT容器 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ ├── AWT常用组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 基本组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 对话框(Dialog) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── AWT菜单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 右键菜单 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 处理位图 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Image抽象类和BufferedImage实现类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Java 9增强的ImageIO --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── 拖放功能 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 拖放目标 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 拖放源 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ ├── Swing编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Swing基本组件的用法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── AWT组件的Swing实现 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 为组件设置边框 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Swing组件的双缓冲和键盘驱动 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用JToolBar创建工具条 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用JFileChooser和JColorChooser --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 使用JOptionPane --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Swing中的特殊容器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用JSplitPane --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用JTabbedPane --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 使用JLayeredPane、JDesktopPane和JInternalFrame --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Swing简化的拖放功能 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Java 7新增的Swing功能 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 使用JLayer装饰组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 创建透明、不规则形状窗口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用JProgressBar、ProgressMonitor和BoundedRangeModel创建进度条 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 创建进度条 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 创建进度对话框 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用JSlider和BoundedRangeModel创建滑动条 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用JSpinner和SpinnerModel创建微调控制器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用JList、JComboBox创建列表框 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 不强制存储列表项的ListModel和ComboBoxModel --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 强制存储列表项的DefaultListModel和DefaultComboBoxModel --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 使用ListCellRenderer改变列表项外观 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用JTree和TreeModel创建树 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 创建树 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ │ │ ├── 拖动、编辑树节点 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 监听节点事件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用DefaultTreeCellRenderer改变节点外观 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 扩展DefaultTreeCellRenderer改变节点外观 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 实现TreeCellRenderer改变节点外观 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用JTable和TableModel创建表格 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── TableModel和监听器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── TableColumnModel和监听器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 实现排序 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 绘制单元格内容 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 编辑单元格内容 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 使用JFormattedTextField和JTextPane创建格式文本 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 监听Document的变化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用JPasswordField --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用JFormattedTextField --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 使用JEditorPane --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 使用JTextPane --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 注解(Annotation) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── JDK的元注解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用@Retention --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 使用@Target --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用@Documented --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 使用@Inherited --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 自定义注解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 提取注解信息 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 使用注解的示例 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ └── 编译时处理注解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 输入/输出 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 理解Java的IO流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 流的分类 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ └── 流的概念模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 输入/输出流体系 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 处理流的用法 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 输入/输出流体系 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 推回输入流 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 重定向标准输入/输出 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Java虚拟机读写其他进程的数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Java 9改进的对象序列化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 序列化的含义和意义 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 使用对象流实现序列化 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 对象引用的序列化 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── Java 9增加的过滤功能 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 自定义序列化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 另一种自定义序列化机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 版本 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ └── NIO.2的功能和用法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Path、Paths和Files核心API --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用WatchService监控文件变化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 访问文件属性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Java程序设计概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Java程序设计平台 --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) -│ │ ├── Java“白皮书”的关键术语 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 解释型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Java发展简史 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 关于Java的常见误解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Java程序设计环境 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 安装Java开发工具包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 设置JDK --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 安装库源文件和文档 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用命令行工具 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 使用集成开发环境 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── JShell --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Java的基本程序设计结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 一个简单的Java应用程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 大数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 泛型程序设计 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 类型变量的限定 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 限制与局限性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 运行时类型查询只适用于原始类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 不能创建参数化类型的数组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Varargs警告 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 不能构造泛型数组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 泛型类的静态上下文中类型变量无效 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 可以取消对检查型异常的检查 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 注意擦除后的冲突 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 泛型类型的继承规则 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 反射和泛型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 泛型Class类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用Class参数进行类型匹配 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 虚拟机中的泛型类型信息 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ └── 类型字面量 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ ├── 图形用户界面程序设计 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Java用户界面工具包简史 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 显示窗体 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 创建窗体 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ └── 窗体属性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 在组件中显示信息 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 处理2D图形 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 使用颜色 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用字体 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 显示图像 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 首选项API --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Swing用户界面组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 布局管理概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 边框布局 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 网格布局 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 文本输入 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 密码域 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 文本区 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ └── 滚动窗格 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 选择组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 组合框 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 滑动条 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 复杂的布局管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 网格包布局 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ └── 定制布局管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Java快速入门 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Java程序基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Java程序基本结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 整数运算 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) -│ │ │ ├── 浮点数运算 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 布尔运算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 数组类型 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ └── 数组操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── IO --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ ├── File对象 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── InputStream --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── OutputStream --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Filter模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 操作Zip --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 读取classpath资源 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 序列化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── PrintStream和PrintWriter --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 使用Files --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ └── 单元测试 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 编写JUnit测试 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 使用Fixture --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ └── 参数化测试 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -├── java中阶 --> ( 难度等级: 无 || 挂载数据: 无 ) -│ ├── 字符串处理 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── String类的构造函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 字符串的长度 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 特殊的字符串操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 字符串字面值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 字符串连接 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 字符串和其他数据类型的连接 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 字符串转换和toString方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ ├── 提取字符 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── charAt --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── getChars --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── getBytes --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── toCharArray --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 比较字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── equals和equalsIgnoreCase --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── regionMatches --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── startsWith和endsWith --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── equals与== --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ └── compareTo --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ ├── 查找字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 修改字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── substring --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── concat --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── replace --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── trim --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 使用valueOf转换数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 改变字符串中字符的大小写 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 连接字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 其他String方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── StringBuffer类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── StringBuffer类的构造函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── length与capacity --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ ├── ensureCapacity --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── setLength --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── charAt与setCharAt --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── getChars --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── append --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── insert --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── reverse --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── delete与deleteCharAt --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── replace --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── substring --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ └── 其他StringBuffer方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── StringBuilder类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 探究java.lang --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 基本类型封装器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Number --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Double与Float --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ ├── 理解isInfinite与isNaN --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Byte、Short、Integer和Long --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Character --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 对Unicode代码点的附加支持 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── Boolean --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── Void类 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── Process类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Runtime类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 内存管理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 执行其他程序 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── ProcessBuilder类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── System类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用currentTimeMillis计时程序的执行 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用arraycopy --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 环境属性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Object类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用clone方法和Cloneable接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── Class类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── ClassLoader类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Math类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 三角函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 指数函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 舍入函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 其他数学方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── StrictMath类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Compiler类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── Thread类、ThreadGroup类和Runnable接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Runnable接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) -│ │ │ ├── Thread类 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ └── ThreadGroup类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── ThreadLocal和InheritableThreadLocal类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Package类 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ ├── RuntimePermission类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Throwable类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── SecurityManager类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── StackTraceElement类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── Enum类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── ClassValue类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── CharSequence接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Comparable接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── Appendable接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Iterable接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Readable接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── AutoCloseable接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Thread.UncaughtExceptionHandler接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── java.lang子包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── java.lang.annotation --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── java.lang.instrument --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── java.lang.invoke --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── java.lang.management --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── java.lang.ref --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── java.lang.reflect --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ ├── java.util第1部分:集合框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 集合概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── JDK 5对集合框架的修改 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 泛型从根本上改变了集合框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 自动装箱使得使用基本类型更加容易 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── for-each风格的for循环 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 集合接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Collection接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── List接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Set接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── SortedSet接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── NavigableSet接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Queue接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Deque接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 集合类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── ArrayList类 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── LinkedList类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── HashSet类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── LinkedHashSet类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── TreeSet类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── PriorityQueue类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── ArrayDeque类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── EnumSet类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 通过迭代器访问集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用迭代器 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 使用for-each循环替代迭代器 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── Spliterator --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 拆分过程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 在集合中存储用户定义的类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── RandomAccess接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用映射 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 映射接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 映射类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 对流中每一个元素应用函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 流的扁平化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 比较器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 集合算法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Arrays类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 遗留的类和接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Enumeration接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Vector类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Stack类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── Dictionary类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Hashtable类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Properties类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 使用store和load --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ ├── java.util第2部分:更多实用工具类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── StringTokenizer类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── BitSet类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Optional、OptionalDouble、OptionalInt和OptionalLong --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Date类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Calendar类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── GregorianCalendar类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── TimeZone类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── SimpleTimeZone类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Locale类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Random类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Observable类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Observer接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Observer示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Timer和TimerTask类 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── Currency类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Formatter类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Formatter类的构造函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Formatter类的方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ ├── 格式化的基础知识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 格式化字符串和字符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 格式化数字 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 格式化时间和日期 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── %n和%%说明符 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 指定最小字段宽度 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 指定精度 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用格式标志 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 对齐输出 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 空格、“+”、“0”以及“(”标志 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 逗号标志 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── “#”标志 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 大写选项 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用参数索引 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 关闭Formatter对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── printf方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Scanner类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Scanner类的构造函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 扫描的基础知识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 一些Scanner示例 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 设置定界符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 其他Scanner特性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── ResourceBundle、ListResourceBundle和 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 其他实用工具类和接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── java.util子包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── java.util.concurrent、java.util.concurrent.atomic和java.util.concurrent.locks --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── java.util.function --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ ├── java.util.jar --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── java.util.logging --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── java.util.prefs --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── java.util.regex --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── java.util.spi --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── java.util.stream --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── java.util.zip --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 输入/输出:探究java.io --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── I/O类和接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── File类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 目录 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 使用FilenameFilter接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── listFiles方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 创建目录 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── AutoCloseable、Closeable和Flushable接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── I/O异常 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 关闭流的两种方式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 流类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 字节流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── InputStream类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── OutputStream类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── FileInputStream类 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── FileOutputStream类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── ByteArrayInputStream类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── ByteArrayOutputStream类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 过滤的字节流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 缓冲的字节流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── SequenceInputStream类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── PrintStream类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── DataOutputStream和DataInputStream类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── RandomAccessFile类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 字符流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Reader类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Writer类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── FileReader类 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── FileWriter类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── CharArrayReader类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── CharArrayWriter类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── BufferedReader类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── BufferedWriter类 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ ├── PushbackReader类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── PrintWriter类 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── Console类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 串行化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Serializable接口 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── Externalizable接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── ObjectOutput接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── ObjectOutputStream类 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── ObjectInput接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── ObjectInputStream类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 串行化示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 流的优点 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 探究NIO --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── NIO类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── NIO的基础知识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 缓冲区 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 通道 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 字符集和选择器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── JDK 7对NIO的增强 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Path接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Files类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Path接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 文件属性接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── FileSystem、FileSystems和FileStore类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用NIO系统 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 为基于通道的I/O使用NIO --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 为基于流的I/O使用NIO --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 为路径和文件系统操作使用NIO --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── JDK 7之前基于通道的例子 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 读文件(JDK 7之前) --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ └── 写文件(JDK 7之前) --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ ├── 联网 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 联网的基础知识 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 联网类和接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── InetAddress类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 工厂方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Inet4Address类和Inet6Address类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── TCP/IP客户端套接字 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── URL类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── URLConnection类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── HttpURLConnection类 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── URI类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── cookie --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── TCP/IP服务器套接字 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 数据报 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── DatagramSocket类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── DatagramPacket类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 数据报示例 --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) -│ ├── Applet类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── applet的两种类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── applet的基础知识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── applet的架构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── applet的骨架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── applet的初始化和终止 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ └── 重写update方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 简单的applet显示方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 请求重画 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用状态栏窗口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── HTML APPLET标记 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 向applet传递参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── getDocumentBase和getCodeBase --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── AppletContext接口和showDocument方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── AudioClip接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── AppletStub接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 向控制台输出 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ ├── 事件处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 两种事件处理机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 委托事件模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 事件 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 事件源 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 事件监听器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 事件类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── ActionEvent类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── AdjustmentEvent类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── ComponentEvent类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── ContainerEvent类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── FocusEvent类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── InputEvent类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── ItemEvent类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── KeyEvent类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── MouseEvent类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── MouseWheelEvent类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── TextEvent类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── WindowEvent类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 事件源 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 事件监听器接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── ActionListener接口 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── AdjustmentListener接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── ComponentListener接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── ContainerListener接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── FocusListener接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── ItemListener接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── KeyListener接口 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── MouseListener接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── MouseMotionListener接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── MouseWheelListener接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── TextListener接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── WindowFocusListener接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── WindowListener接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用委托事件模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 处理鼠标事件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 处理键盘事件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 适配器类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 内部类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ ├── AWT介绍:使用窗口、图形和文本 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── AWT类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 窗口基本元素 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Component类 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── Container类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Panel类 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── Window类 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── Frame类 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ └── Canvas类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用框架窗口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 设置窗口的尺寸 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ ├── 隐藏和显示窗口 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ ├── 设置窗口的标题 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 关闭框架窗口 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 在基于AWT的applet中创建框架窗口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 创建基于窗口的程序 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 在窗口中显示信息 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用图形 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 绘制直线 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 绘制矩形 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 绘制椭圆和圆 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 绘制弧形 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 绘制多边形 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 演示绘制方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 改变图形的大小 --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) -│ │ ├── 使用颜色 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Color类的方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 设置当前图形的颜色 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 一个演示颜色的applet --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 设置绘图模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用字体 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 确定可用字体 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 创建和选择字体 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 获取字体信息 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 使用FontMetrics管理文本输出 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 显示多行文本 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 居中显示文本 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ └── 对齐多行文本 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ ├── 使用AWT控件、布局管理器和菜单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── AWT控件的基础知识 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 添加和移除控件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 响应控件 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ └── HeadlessException异常 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用标签 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ │ ├── 使用命令按钮 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用复选框 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用复选框组 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用下拉列表 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 使用列表框 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 管理滚动条 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用TextField --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 使用TextArea --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 理解布局管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── FlowLayout布局管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── BorderLayout布局管理器 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 使用Insets --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── GridLayout布局管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── CardLayout布局管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── GridBagLayout布局管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 菜单栏和菜单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 对话框 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── FileDialog类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 关于重写paint方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ ├── 图像 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 文件格式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 图像基础:创建、加载与显示 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 创建Image对象 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 加载图像 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ └── 显示图像 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── ImageObserver接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 双缓冲 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── MediaTracker类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── ImageProducer接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── ImageConsumer接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── ImageFilter类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── CropImageFilter类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── RGBImageFilter类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 其他图像类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 并发实用工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 并发API包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── java.util.concurrent包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── java.util.concurrent.atomic包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── java.util.concurrent.locks包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用同步对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Semaphore类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── CountDownLatch类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── CyclicBarrier类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Exchanger类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Phaser类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用执行器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 一个简单的执行器示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 使用Callable和Future接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Future接口的局限性 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ └── 使用CompletableFuture构建异步应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── TimeUnit枚举 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 并发集合 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 锁 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 原子操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 通过Fork/Join框架进行并行编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 主要的Fork/Join类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 分而治之的策略 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 一个简单的Fork/Join示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 理解并行级别带来的影响 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 一个使用RecursiveTask[V]的例子 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 异步执行任务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 取消任务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 确定任务的完成状态 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 重新启动任务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 深入研究 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 关于Fork/Join框架的一些提示 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 并发实用工具与Java传统方式的比较 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 流API --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 流的基础知识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 流接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 如何获得流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 一个简单的流示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 缩减操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用并行流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 将顺序流转换为并行流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 测量流性能 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 高效使用并行流 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 映射 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 收集 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 迭代器和流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 对流使用迭代器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Spliterator --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 筛选 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 用谓词筛选 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ └── 筛选各异的元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 流的切片 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用谓词对流进行切片 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 截短流 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) -│ │ │ │ └── 跳过元素 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 查找和匹配 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 检查谓词是否至少匹配一个元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 检查谓词是否匹配所有元素 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 查找元素 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ │ └── 查找第一个元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 归约 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 元素求和 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 最大值和最小值 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 付诸实践 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 领域:交易员和交易 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 解答 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 数值流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 原始类型流特化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 数值范围 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ │ └── 数值流应用:勾股数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 构建流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 由值创建流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 由可空对象创建流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 由数组创建流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 由文件生成流 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ └── 由函数生成流:创建无限流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 流API中更多值得探究的地方 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ ├── 正则表达式和其他包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 核心Java API包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 正则表达式处理 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ ├── Pattern类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Matcher类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 正则表达式的语法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 演示模式匹配 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 模式匹配的两个选项 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 探究正则表达式 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── 反射 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 远程方法调用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用java.text格式化日期和时间 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── DateFormat类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── SimpleDateFormat类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── JDK 8新增的时间和日期API --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 时间和日期的基础知识 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 格式化日期和时间 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 解析日期和时间字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 探究java.time包的其他方面 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 匹配字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 找出多个匹配 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 用分隔符来分割 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 替换匹配 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 正则表达式简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 匹配规则 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 分组匹配 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 非贪婪匹配 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 搜索和替换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ └── 其他 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 并发编程的挑战 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 上下文切换 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 多线程一定快吗 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 多线程基础 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 创建新线程 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 中断线程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 守护线程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 线程同步 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── 同步方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用wait和notify --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ │ ├── 使用ReentrantLock --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 使用Condition --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用ReadWriteLock --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用StampedLock --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用Concurrent集合 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用Atomic --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 使用ForkJoin --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 测试上下文切换次数和时长 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 如何减少上下文切换 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 死锁 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 资源限制的挑战 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Java并发机制的底层实现原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── volatile的应用 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── synchronized的实现原理与应用 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── Java对象头 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 锁的升级与对比 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ └── 原子操作的实现原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Java内存模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Java内存模型的基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Java内存模型的抽象结构 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 从源代码到指令序列的重排序 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 并发编程模型的分类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── happens-before简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 重排序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 数据依赖性 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── as-if-serial语义 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 程序顺序规则 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 重排序对多线程的影响 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── 顺序一致性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 数据竞争与顺序一致性 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ ├── 顺序一致性内存模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 同步程序的顺序一致性效果 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 未同步程序的执行特性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── volatile的内存语义 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── volatile的特性 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── volatile写-读建立的happens-before关系 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── volatile写-读的内存语义 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── volatile内存语义的实现 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── 锁的内存语义 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 锁的释放-获取建立的 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 锁的释放和获取的内存语义 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 锁内存语义的实现 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── concurrent包的实现 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── final域的内存语义 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── final域的重排序规则 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 写final域的重排序规则 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 读final域的重排序规则 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── final域为引用类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── final语义在处理器中的实现 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── happens-before --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── JMM的设计 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── happens-before的定义 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) -│ │ │ └── happens-before规则 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 双重检查锁定与延迟初始化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 双重检查锁定的由来 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 基于volatile的解决方案 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 基于类初始化的解决方案 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── Java内存模型综述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 处理器的内存模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 各种内存模型之间的关系 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ │ ├── JMM的内存可见性保证 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── JSR-133对旧内存模型的修补 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Java并发编程基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 线程简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 什么是线程 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 线程优先级 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 线程的状态 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Daemon线程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 启动和终止线程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 构造线程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 启动线程 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 理解中断 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ ├── 过期的suspend、resume和stop --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 安全地终止线程 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ └── 线程间通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 等待/通知机制 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 等待/通知的经典范式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 管道输入/输出流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Thread.join的使用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Java中的锁 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Lock接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── 队列同步器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 队列同步器的接口与示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Windows注册表概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 访问注册表的Java平台接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 以本地方法实现注册表访问函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 队列同步器的实现分析 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 重入锁 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 读写锁 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 读写锁的接口与示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 读写锁的实现分析 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── LockSupport工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── Condition接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Condition接口与示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── Condition的实现分析 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ ├── Java并发容器和框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── ConcurrentHashMap的实现原理与使用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── ConcurrentHashMap的结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── ConcurrentHashMap的初始化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 定位Segment --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── ConcurrentHashMap的操作 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── ConcurrentLinkedQueue --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── ConcurrentLinkedQueue的结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 入队列 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 出队列 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ ├── Java中的阻塞队列 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 什么是阻塞队列 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Java里的阻塞队列 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 阻塞队列的实现原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Fork/Join框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 什么是Fork/Join框架 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── 工作窃取算法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Fork/Join框架的设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用Fork/Join框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Fork/Join框架的异常处理 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ └── Fork/Join框架的实现原理 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ ├── Java中的13个原子操作类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 原子更新基本类型类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 原子更新数组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 原子更新引用类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 原子更新字段类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Java中的并发工具类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 等待多线程完成的CountDownLatch --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 同步屏障CyclicBarrier --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── CyclicBarrier简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── CyclicBarrier的应用场景 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── CyclicBarrier和CountDownLatch的区别 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 控制并发线程数的Semaphore --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ └── 线程间交换数据的Exchanger --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ ├── Java中的线程池 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 线程池的实现原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 线程池的使用 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 线程池的创建 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 向线程池提交任务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 关闭线程池 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── 合理地配置线程池 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 线程池的监控 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Executor框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Executor框架简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Executor框架的两级调度模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Executor框架的结构与成员 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── ThreadPoolExecutor详解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── FixedThreadPool详解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── SingleThreadExecutor详解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── CachedThreadPool详解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── ScheduledThreadPoolExecutor详解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── ScheduledThreadPoolExecutor的运行机制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── ScheduledThreadPoolExecutor的实现 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── FutureTask详解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── FutureTask简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── FutureTask的使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── FutureTask的实现 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Java并发编程实践 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 生产者和消费者模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 多生产者和多消费者场景 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ │ ├── 性能测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 异步任务池 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 基础知识 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── Java 8、9、10以及11的变化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Java怎么还在变 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Java在编程语言生态系统中的位置 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 用行为参数化把代码传递给方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 并行与共享的可变数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── Java需要演变 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Java中的函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 方法和Lambda作为一等值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 从Java程序中调用C函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ │ │ ├── 数值参数与返回值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 字符串参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 访问域 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ └── 访问静态域 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ │ │ ├── 编码签名 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ │ │ ├── 调用Java方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 静态方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ │ │ │ ├── 构造器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ └── 另一种方法调用 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ │ ├── 访问数组元素 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ └── 使用调用API --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 传递代码:一个例子 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 从传递方法到Lambda --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 默认方法及Java模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 不断演进的API --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 初始版本的API --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 第二版API --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 概述默认方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ │ ├── 默认方法的使用模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 行为的多继承 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ │ │ └── 解决冲突的规则 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── 选择提供了最具体实现的默认方法的接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 冲突及如何显式地消除歧义 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 来自函数式编程的其他好思想 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 通过行为参数化传递代码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 应对不断变化的需求 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 初试牛刀:筛选绿苹果 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 再展身手:把颜色作为参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 第三次尝试:对你能想到的每个属性做筛选 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 行为参数化 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 对付啰唆 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 匿名类 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 第五次尝试:使用匿名类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 第六次尝试:使用Lambda表达式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 第七次尝试:将List类型抽象化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 真实的例子 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 用Comparator来排序 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 用Runnable执行代码块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 通过Callable返回结果 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ └── GUI事件处理 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ └── Lambda表达式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Lambda管中窥豹 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 在哪里以及如何使用Lambda --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 函数式接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 函数描述符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 把Lambda付诸实践:环绕执行模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 第 1 步:记得行为参数化 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 第 2 步:使用函数式接口来传递行为 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 第 3 步:执行一个行为 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ └── 第 4 步:传递Lambda --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) -│ │ ├── 使用函数式接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Predicate --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Consumer --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── Function --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── 类型检查、类型推断以及限制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 类型检查 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 同样的Lambda,不同的函数式接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 类型推断 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ └── 使用局部变量 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── 方法引用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 管中窥豹 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 构造函数引用 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── 复合Lambda表达式的有用方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 比较器复合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 谓词复合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 函数复合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 数学中的类似思想 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 积分 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 与Java 8的Lambda联系起来 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 测试可见Lambda函数的行为 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 测试使用Lambda的方法的行为 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 将复杂的Lambda表达式分为不同的方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── 高阶函数的测试 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 使用流进行函数式数据处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 引入流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 流简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 流操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 中间操作 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ └── 终端操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 路线图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 用流收集数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 收集器简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 收集器用作高级归约 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 预定义收集器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 分组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 操作分组的元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 多级分组 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ └── 按子组收集数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 分区 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 分区的优势 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ └── 将数字按质数和非质数分区 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 收集器接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 理解Collector接口声明的方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 全部融合到一起 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 开发你自己的收集器以获得更好的性能 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 仅用质数做除数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 比较收集器的性能 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ ├── 无所不在的Java --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 用Optional取代null --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 如何为缺失的值建模 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 采用防御式检查减少NullPointerException --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 其他语言中null的替代品 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── Optional类入门 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 应用Optional的几种模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 创建Optional对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用map从Optional对象中提取和转换值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用flatMap链接Optional对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 操纵由Optional对象构成的Stream --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 默认行为及解引用Optional对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 两个Optional对象的组合 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 使用filter剔除特定的值 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── Java模块系统 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 模块化的驱动力:软件的推理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 关注点分离 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 信息隐藏 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── Java软件 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) -│ │ ├── 使用Java模块系统开发应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 从头开始搭建一个应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 细粒度和粗粒度的模块化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Java模块系统基础 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── 使用多个模块 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── exports子句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── requires子句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 命名 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 编译及打包 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── 自动模块 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── 模块声明及子句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── requires --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── exports --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── requires的传递 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── exports to --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ ├── open和opens --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ └── uses和provides --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 提升Java的并发性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── CompletableFuture及反应式编程背后的概念 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 为支持并发而不断演进的Java --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 其他的线程抽象:非嵌套方法调用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 你希望线程为你带来什么 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 同步及异步API --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Future风格的API --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 反应式风格的API --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 有害的睡眠及其他阻塞式操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 如何使用异步API进行异常处理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── “线框–管道”模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── “发布–订阅”以及反应式编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 背压 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 一种简单的真实背压 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 反应式系统和反应式编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── CompletableFuture:组合式异步编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 实现异步API --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 将同步方法转换为异步方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ └── 错误处理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 让你的代码免受阻塞之苦 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用并行流对请求进行并行操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用CompletableFuture发起异步请求 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 寻找更好的方案 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ │ └── 使用定制的执行器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 对多个异步任务进行流水线操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 实现折扣服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用Discount服务 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ │ ├── 构造同步和异步操作 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── 将两个CompletableFuture对象整合起来,无论它们是否存在依赖 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 对Future和Completable-Future的回顾 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 高效地使用超时机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 响应CompletableFuture的completion事件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 对最佳价格查询器应用的优化 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ └── 反应式编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 反应式宣言 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 应用层的反应式编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 反应式系统 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 反应式流以及Flow API --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Flow类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 创建你的第一个反应式应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 使用Processor转换数据 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ └── 使用反应式库RxJava --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ └── 转换及整合多个Observable --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ ├── 函数式编程以及Java未来的演进 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 函数式的思考 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 实现和维护系统 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 声明式编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 什么是函数式编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 函数式Java编程 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 引用透明性 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 面向对象的编程和函数式编程的对比 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 递归和迭代 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 函数式编程的技巧 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 无处不在的函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 柯里化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 持久化数据结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 破坏式更新和函数式更新的比较 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 另一个使用Tree的例子 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ │ └── 采用函数式的方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Stream的延迟计算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 自定义的Stream --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) -│ │ │ │ └── 创建你自己的延迟列表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 模式匹配 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 访问者模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 用模式匹配力挽狂澜 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 杂项 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 缓存或记忆表 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ └── “返回同样的对象”意味着什么 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 结论以及Java的未来 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 回顾Java 8的语言特性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Java 10的局部变量类型推断 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Java的未来 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 声明处型变 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 模式匹配 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 更加丰富的泛型形式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 对不变性的更深层支持 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 值类型 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 让Java发展得更快 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 写在最后的话 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── Lambda基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 使用Stream --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 创建Stream --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── 使用filter --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ ├── 使用reduce --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 输出集合 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ ├── Java 8的流库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 从迭代到流的操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 流的创建 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── f?ilter、map和f?latMap方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 抽取子流和组合流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 其他的流转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 简单约简 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Optional类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 获取Optional值 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ ├── 消费Optional值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 管道化Optional值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 不适合使用Optional值的方式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 创建Optional值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 用f?latMap构建Optional值的函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 将Optional转换为流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 收集到映射表中 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 下游收集器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 约简操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 基本类型流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 输入与输出 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 输入/输出流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 读写字节 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 完整的流家族 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 组合输入/输出流过滤器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 文本输入与输出 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 如何写出文本输出 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 如何读入文本输入 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 以文本格式存储对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 字符编码方式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 读写二进制数据 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── DataInput和DataOutput接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 随机访问文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── ZIP文档 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 对象输入/输出流与序列化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 保存和加载序列化对象 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 理解对象序列化的文件格式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 修改默认的序列化机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 序列化单例和类型安全的枚举 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 版本管理 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 为克隆使用序列化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 操作文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Path --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 读写文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 复制、移动和删除文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 获取文件信息 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 访问目录中的项 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用目录流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── ZIP文件系统 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 内存映射文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 内存映射文件的性能 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 缓冲区数据结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 文件加锁机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── XML --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── XML概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── XML文档的结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 解析XML文档 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ ├── 验证XML文档 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 文档类型定义 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── XML Schema --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ └── 一个实践示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用XPath来定位信息 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 使用命名空间 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 流机制解析器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用SAX解析器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 使用StAX解析器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 生成XML文档 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 不带命名空间的文档 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 带命名空间的文档 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 写出文档 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ └── 使用StAX写出XML文档 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ └── XSL转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 网络 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 连接到服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用telnet --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 用Java连接到服务器 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ ├── 套接字超时 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 因特网地址 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 实现服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 服务器套接字 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 为多个客户端服务 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 半关闭 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ └── 可中断套接字 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 获取Web数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── URL和URI --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 使用URLConnection获取信息 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 提交表单数据 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── HTTP客户端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 发送E-mail --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ ├── 数据库编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── JDBC的设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── JDBC驱动程序类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── JDBC的典型用法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 结构化查询语言 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── JDBC配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 数据库URL --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 驱动程序JAR文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 启动数据库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 注册驱动器类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 连接到数据库 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── 使用JDBC语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 执行SQL语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 管理连接、语句和结果集 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 分析SQL异常 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 组装数据库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 执行查询操作 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 预备语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 读写LOB --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── SQL转义 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ ├── 多结果集 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 获取自动生成的键 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ ├── 可滚动和可更新的结果集 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 可滚动的结果集 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 可更新的结果集 --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) -│ │ ├── 行集 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 构建行集 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 被缓存的行集 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 元数据 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ ├── 事务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 用JDBC对事务编程 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 批量更新 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 高级SQL类型 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ └── Web与企业应用中的连接管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 国际化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── locale --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 指定locale --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 默认locale --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 显示名字 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 数字格式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 格式化数字值 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 货币 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 排序和规范化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 消息格式化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 选择格式 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ └── 资源包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 定位资源包 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 属性文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 包类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Java平台模块系统 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 模块的概念 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 对模块命名 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 模块化的“Hello, World!”程序 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── 对模块的需求 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 导出包 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── 模块化的JAR --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 不具名模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 用于迁移的命令行标识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 传递的需求和静态的需求 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 限定导出和开放 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 服务加载 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 操作模块的工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 安全 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 类加载器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 类加载过程 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 类加载器的层次结构 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 将类加载器用作命名空间 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 编写你自己的类加载器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 字节码校验 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 安全管理器与访问权限 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 权限检查 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Java平台安全性 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 安全策略文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 定制权限 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 实现权限类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 用户认证 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ ├── JAAS框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── JAAS登录模块 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ ├── 数字签名 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 消息摘要 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ │ ├── 消息签名 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 校验签名 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 证书签名 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 证书请求 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 代码签名 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ └── 加密 --> ( 难度等级: 中阶 || 挂载数据: qa: 8 ) -│ │ ├── 对称密码 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 密钥生成 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── 密码流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 公共密钥密码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 高级Swing和图形化编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 表格 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 一个简单表格 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 表格模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 对行和列的操作 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 单元格的绘制和编辑 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 树 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 简单的树 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 节点枚举 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 绘制节点 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 监听树事件 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ └── 定制树模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 高级AWT --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 绘图操作流程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 形状 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 区域 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 笔画 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 着色 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 坐标变换 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 剪切 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 透明与组合 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 像素图 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 图像的读取器和写入器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 图像处理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 打印 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 图形打印 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── 打印多页文件 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 打印服务程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 流打印服务程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 打印属性 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ ├── Maven基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Maven介绍 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 依赖管理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 构建流程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用插件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 模块管理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用mvnw --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 发布Artifact --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 网络编程 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 网络编程基础 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── TCP编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── UDP编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 发送Email --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 接收Email --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── HTTP编程 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ └── RMI远程调用 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ └── JDBC编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── JDBC简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── JDBC查询 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── JDBC更新 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── JDBC事务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── JDBC Batch --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ └── JDBC连接池 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -├── java高阶 --> ( 难度等级: 无 || 挂载数据: 无 ) -│ ├── Swing简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Swing的起源 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Swing以AWT为基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 两个关键的Swing特性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Swing组件是轻量级的 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Swing支持可插入外观 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── MVC连接 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 组件与容器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 容器 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ └── 顶级容器窗格 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Swing包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 一个简单的Swing应用程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 事件处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 创建Swing applet --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 在Swing中绘图 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 绘图的基础知识 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 计算可绘制区域 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 一个绘图示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 探究Swing --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── JLabel与ImageIcon --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── JTextField --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Swing按钮 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── JButton --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── JToggleButton --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 复选框 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 单选按钮 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── JTabbedPane --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── JScrollPane --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── JList --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── JComboBox --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 树 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── JTable --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ ├── Swing菜单简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 菜单的基础知识 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── JMenuBar、JMenu和JMenuItem概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── JMenuBar --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── JMenu --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── JMenuItem --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 创建主菜单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 向菜单项添加助记符和加速键 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 向菜单项添加图片和工具提示 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用JRadioButtonMenuItem和JCheckBoxMenuItem --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 创建弹出菜单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 创建工具栏 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用动作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 完整演示MenuDemo程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 继续探究Swing --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── JavaFX GUI编程简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── JavaFX的基础概念 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── JavaFX包 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── Stage和Scene类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 节点和场景图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 布局 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Application类和生命周期方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ └── 启动JavaFX应用程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── JavaFX应用程序的骨架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 编译和运行JavaFX程序 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 应用程序线程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 一个简单的JavaFX控件:Label --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用按钮和事件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 事件的基础知识 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 按钮控件简介 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 演示事件处理和按钮 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 直接在画布上绘制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 探究JavaFX控件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用Image和ImageView --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 向标签添加图片 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ └── 在按钮中使用图片 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── ToggleButton --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── RadioButton --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 处理开关组中的变化事件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 处理单选按钮的另一种方式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── CheckBox --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── ListView --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── ListView的滚动条 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ └── 启用多项选择 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── ComboBox --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── TextField --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── ScrollPane --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── TreeView --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 效果和变换简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 效果 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 变换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 演示效果和变换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 添加工具提示 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 禁用控件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── JavaFX菜单简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 菜单的基础知识 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── MenuBar、Menu和MenuItem概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── MenuBar --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Menu --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ └── MenuItem --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 创建主菜单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 向菜单项添加助记符和加速键 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 向菜单项添加图片 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用RadioMenuItem和CheckMenuItem --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 创建上下文菜单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 创建工具栏 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 完整的MenuDemo程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 继续探究JavaFX --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Java Bean --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Java Bean是什么 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Java Bean的优势 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 内省 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 属性的设计模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 事件的设计模式 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ ├── 方法与设计模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建型模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 工厂方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ ├── 抽象工厂 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 生成器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 原型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 单例 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ │ ├── 结构型模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 适配器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 桥接 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 装饰器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 外观 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 享元 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 代理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 行为型模式 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 责任链 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 命令 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 解释器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 迭代器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 中介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 备忘录 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 观察者 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 状态 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 策略 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 模板方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 访问者 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 使用BeanInfo接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 绑定属性与约束属性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 持久性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 定制器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Java Bean API --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Introspector类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── PropertyDescriptor类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── EventSetDescriptor类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── MethodDescriptor类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 一个Bean示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── servlet --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 背景 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── servelet的生命周期 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── servlet开发选项 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用Tomcat --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 一个简单的servlet --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 创建和编译servlet源代码 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 启动Tomcat --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ └── 启动Web浏览器并请求servlet --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) -│ │ ├── Servlet API --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── javax.servlet包 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Servlet接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── ServletConfig接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── ServletContext接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── ServletRequest接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── ServletResponse接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── GenericServlet类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── ServletInputStream类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── ServletOutputStream类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── servlet异常类 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ ├── 读取servlet参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── javax.servlet.http包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── HttpServletRequest接口 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── HttpServletResponse接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── HttpSession接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Cookie类 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ └── HttpServlet类 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 处理HTTP请求和响应 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 处理HTTP GET请求 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ └── 处理HTTP POST请求 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── 使用cookie --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 会话跟踪 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ └── 其他 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 入门和技术基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 认识SSM框架和Redis --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Spring框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Spring IoC简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── Spring AOP --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── MyBatis简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Hibernate简介 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) -│ │ │ │ ├── MyBatis --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── Hibernate和MyBatis的区别 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ ├── Spring MVC简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 最流行的NoSQL——Redis --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── SSM+Redis结构框图及概述 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── Redis概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Redis在Java Web中的应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 高速读/写场合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Redis基本安装和使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 在Windows下安装Redis --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ │ └── 在Linux下安装Redis --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── Redis的Java API --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 在Java程序中使用Redis --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 在Spring中使用Redis --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ └── 简介Redis的6种数据类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Redis数据结构常用命令 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Redis数据结构——字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Redis数据结构——哈希 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ │ ├── Redis数据结构——链表(linked-list) --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── Redis数据结构——集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Redis数据结构——有序集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Redis基础命令 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── spring-data-redis对有序集合的封装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 使用Spring操作有序集合 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 基数——HyperLogLog --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Redis的一些常用技术 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Redis的基础事务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 探索Redis事务回滚 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 使用watch命令监控事务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 流水线(pipelined) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 发布订阅 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 超时命令 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 使用Lua语言 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 执行输入Lua程序代码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 执行Lua文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── Redis配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Redis基础配置文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Redis备份(持久化) --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── Redis内存回收策略 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 复制 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ │ ├── 主从同步基础概念 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Redis主从同步配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── Redis主从同步的过程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 哨兵(Sentinel)模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 哨兵模式概述 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 搭建哨兵模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 在Java中使用哨兵模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 哨兵模式的其他配置项 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用redis-cli --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 安全设置 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 基本操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── keys --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Redis List --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Redis Hash --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── Set --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── Pub/Sub --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Spring Boot集成Redis --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用StringRedisTemplate --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── opsFor --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 绑定Key的操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── RedisConnection --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 序列化策略 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 默认序列化策略 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 自定义序列化策略 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Java设计模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Java反射技术 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 通过反射构建对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 反射方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 9 ) -│ │ ├── 动态代理模式和责任链模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── JDK动态代理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── CGLIB动态代理 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ ├── 拦截器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 拦截器的定义 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ │ ├── 拦截器的执行流程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 开发拦截器 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ │ └── 多个拦截器执行的顺序 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ └── 责任链模式 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 观察者(Observer)模式 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 工厂模式和抽象工厂模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 普通工厂(Simple Factory)模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 抽象工厂(Abstract Factory)模式 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ └── 建造者(Builder)模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 互联网持久框架——MyBatis --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 认识MyBatis核心组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 准备MyBatis环境 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── MyBatis的核心组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── SqlSessionFactory(工厂接口) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用XML构建SqlSessionFactory --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 使用代码创建SqlSessionFactory --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── SqlSession --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 映射器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 用XML实现映射器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 注解实现映射器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── SqlSession发送SQL --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 用Mapper接口发送SQL --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ └── 对比两种发送SQL方式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 生命周期 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── SqlSessionFactoryBuilder --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── SqlSessionFactory --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── SqlSession --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Mapper --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ ├── MyBatis配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── properties属性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── property子元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用properties文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ └── 使用程序传递方式传递参数 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── settings设置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── typeAliases别名 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 系统定义别名 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 自定义别名 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── typeHandler类型转换器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 系统定义的typeHandler --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 自定义typeHandler --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 枚举typeHandler --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 文件操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── ObjectFactory(对象工厂) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 插件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── environments(运行环境) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── transactionManager(事务管理器) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── environment数据源环境 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── databaseIdProvider数据库厂商标识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用系统默认的databaseIdProvider --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 不使用系统规则 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 引入映射器的方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 映射器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── select元素——查询语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 简单的select元素的应用 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 自动映射和驼峰映射 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 传递多个参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用resultMap映射结果集 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 分页参数RowBounds --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── insert元素——插入语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 简单的insert语句的应用 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ │ │ ├── 主键回填 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 自定义主键 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── update元素和delete元素 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── sql元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 存储过程参数支持 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ └── 特殊字符串的替换和处理(#和$) --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── resultMap元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── resultMap元素的构成 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) -│ │ │ │ ├── 使用map存储结果集 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 使用POJO存储结果集 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 级联 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── MyBatis中的级联 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 建立POJO --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 配置映射文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 延迟加载 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 另一种级联 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 多对多级联 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 缓存 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 一级缓存和二级缓存 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ │ └── 缓存配置项、自定义和引用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 存储过程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── IN和OUT参数存储过程 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ └── 游标的使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 动态SQL --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── if元素 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── choose、when、otherwise元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── trim、where、set元素 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ ├── foreach元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 用test的属性判断字符串 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ └── bind元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── MyBatis的解析和运行原理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 构建SqlSessionFactory过程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 构建Configuration --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 构建映射器的内部组成 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 构建SqlSessionFactory --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── SqlSession运行过程 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 映射器(Mapper)的动态代理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── SqlSession下的四大对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 插件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 插件接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 插件的初始化 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) -│ │ ├── 插件的代理和反射设计 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 常用的工具类——MetaObject --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Spring基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Spring IoC的概念 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Spring的概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── Spring的简史 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── Spring IoC概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 主动创建对象 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 被动创建对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── Spring IoC阐述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Spring IoC容器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Spring IoC容器的设计 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Spring IoC容器的初始化和依赖注入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Spring Bean的生命周期 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 装配Spring Bean --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 依赖注入的3种方式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 构造器注入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用setter注入 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ └── 接口注入 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 装配Bean概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 通过XML配置装配Bean --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 装配简易值 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── 装配集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 命名空间装配 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 通过注解装配Bean --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用@Component装配Bean --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 自动装配——@Autowired --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ │ ├── 自动装配的歧义性(@Primary和@Qualifier) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 装载带有参数的构造方法类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 使用@Bean装配Bean --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ └── 注解自定义Bean的初始化和销毁方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 装配的混合使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Profile --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用注解@Profile配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用XML定义Profile --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 启动Profile --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 点睛 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 演示 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 加载属性(properties)文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用注解方式加载属性文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 使用XML方式加载属性文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 条件化装配Bean --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Bean的作用域 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 使用Spring表达式(Spring EL) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Spring EL相关的类 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ └── Spring EL运算 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── 面向切面编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 一个简单的约定游戏 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 约定规则 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 读者的代码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 笔者的代码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Spring AOP的基本概念 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── AOP的概念和使用原因 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 面向切面编程的术语 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── Spring对AOP的支持 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用@AspectJ注解开发Spring AOP --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 选择切点 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建切面 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 连接点 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 测试AOP --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 装配AOP --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ │ ├── 使用注解装配AOP --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ └── AOP避坑指南 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 环绕通知 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 织入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 给通知传递参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 引入 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 使用XML配置开发Spring AOP --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 前置通知、后置通知、返回通知和异常通知 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 环绕通知 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 给通知传递参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 引入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 经典Spring AOP应用程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 多个切面 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Spring和数据库编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 传统的JDBC代码的弊端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 配置数据库资源 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用简单数据库配置 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ │ ├── 使用第三方数据库连接池 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ │ └── 使用JNDI数据库连接池 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── JDBC代码失控的解决方案——jdbcTemplate --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── jdbcTemplate的增、删、查、改 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ │ ├── 执行多条SQL --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── jdbcTemplate的源码分析 --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ │ │ └── Spring的缺点 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 深入Spring数据库事务管理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Spring数据库事务管理器的设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 配置事务管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 用Java配置方式实现Spring数据库事务 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 编程式事务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 声明式事务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Transactional的配置项 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 使用XML进行配置事务管理器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 事务定义器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 声明式事务的约定流程 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 数据库的相关知识 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 数据库事务ACID特性 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 丢失更新 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 隔离级别 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 选择隔离级别和传播行为 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 选择隔离级别 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 传播行为 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 在Spring+MyBatis组合中使用事务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 典型错误用法的剖析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 错误使用Service --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 过长时间占用事务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 错误捕捉异常 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── Spring基础配置 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ └── Java配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Spring MVC框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Spring MVC的初始化和流程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── MVC设计概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Spring MVC的架构 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ └── Spring MVC组件与流程 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Spring MVC初始化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 初始化Spring IoC上下文 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 初始化映射请求上下文 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 使用注解配置方式初始化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Spring MVC开发流程详解 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 配置@RequestMapping --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 控制器的开发 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ └── 视图渲染 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 深入Spring MVC组件开发 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 控制器接收各类请求参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 接收普通请求参数 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 使用@RequestParam注解获取参数 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ │ ├── 使用URL传递参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 传递JSON参数 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) -│ │ │ │ └── 接收列表数据和表单序列化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 重定向 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 保存并获取属性参数 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 注解@RequestAttribute --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 注解@SessionAttribute和注解@SessionAttributes --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 注解@CookieValue和注解@RequestHeader --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 验证表单 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用JSR 303注解验证输入内容 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 使用验证器 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 数据模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 视图和视图解析器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 视图 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ └── 视图解析器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 上传文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── MultipartResolver概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 提交上传文件表单 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ └── Spring MVC高级应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Spring MVC的数据转换和格式化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── HttpMessageConverter和JSON消息转换器 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ ├── 一对一转换器(Converter) --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 数组和集合转换器GenericConverter --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 使用格式化器(Formatter) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 为控制器添加通知 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 处理异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 国际化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── MessageSource接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── CookieLocaleResolver和SessionLocaleResolver --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 国际化拦截器(LocaleChangeInterceptor) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 开发国际化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── SSM框架+Redis实践应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 高并发业务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 互联系统应用架构基础分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 高并发系统的分析和设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 有效请求和无效请求 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ ├── 系统设计 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 数据库设计 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 动静分离技术 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 锁和高并发 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── 搭建抢红包开发环境和超发现象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 搭建Service层和DAO层 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ └── 使用全注解搭建SSM开发环境 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 悲观锁 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 乐观锁 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── CAS原理概述 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 乐观锁实现抢红包业务 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ └── 乐观锁重入机制 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 使用Redis实现抢红包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用注解方式配置Redis --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 数据存储设计 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ └── 使用Redis实现抢红包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 各类方式的优缺点 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ ├── 点睛Spring 4.x --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── Spring常用配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Bean的Scope --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Spring EL和资源调用. --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Bean的初始化和销毁 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 事件(Application Event) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Spring高级话题 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── Spring Aware --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 多线程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 示例 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 计划任务 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 条件注解@Conditional --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 组合注解与元注解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── @Enable*注解的工作原理 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 第一类:直接导入配置类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 第二类:依据条件选择配置类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 第三类:动态注册Bean --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 测试 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 点睛Spring MVC 4.x --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── Spring MVC基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Spring MVC概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Spring MVC的常用注解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Spring MVC基本配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 静态资源映射 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 拦截器配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── @ControllerAdvice --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 其他配置 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) -│ │ ├── Spring MVC的高级配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 文件上传配置 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 自定义HttpMessageConverter --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 服务器端推送技术 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ └── Spring MVC的测试 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Java EE简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Java EE --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Java EE架构 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ └── Java EE的缺点 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Spring Boot --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── Hello,Spring Boot --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 创建一个Maven工程 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 增加Web支持 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Hello Spring Boot示例 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 使用热部署 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 添加REST支持 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Spring Boot基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 检查Java环境与安装Java --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 安装和配置Maven --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Maven介绍 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) -│ │ │ ├── 安装Maven --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 设置Maven --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用IDE设置Maven --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Maven的常用命令 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── Spring核心技术 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Spring的历史 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Spring容器介绍 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── Spring AOP介绍 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── MVC框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 集成MVC框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 引入依赖 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Web应用目录结构 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── Java包名结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用Controller --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── URL映射到方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── @RequestMapping --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── URL路径匹配 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── HTTP method匹配 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── consumes和produces --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── params和header匹配 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 方法参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── PathVariable --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Model&ModelAndView --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── JavaBean接受HTTP参数 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ ├── @RequsetBody接受JSON --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── MultipartFile --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── @ModelAttribute --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── @InitBinder --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 验证框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── JSR- --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── MVC中使用@Validated --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 自定义校验 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── WebMvcConfigurer --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 跨域访问 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ └── 注册Controller --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 视图技术 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Freemarker --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ │ ├── 使用Beetl --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Jackson --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Redirect和Forward --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Beetl模板引擎 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 安装Beetl --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 设置定界符号和占位符 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 配置Beetl --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── groupTemplate --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 全局变量 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 局部变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 共享变量 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ └── 模板变量 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 表达式 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 计算表达式 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ └── 逻辑表达式 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 控制语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 循环语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 条件语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── try catch --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ ├── 函数调用 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 格式化函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 直接调用Java --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 标签函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── HTML标签 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 安全输出 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 高级功能 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 自定义函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 自定义格式化函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 自定义标签函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 自定义HTML标签 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── AJAX局部渲染 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 脚本引擎 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── JSON技术 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 在Spring Boot中使用Jackson --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 自定义ObjectMapper --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Jackson的三种使用方式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Jackson树遍历 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── 对象绑定 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) -│ │ │ │ ├── 流式操作 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── Jackson注解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 集合的反序列化 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ └── MVC分离开发 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 集成WebSimulate --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 模拟JSON响应 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 模拟模板渲染 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 通用错误处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── curl命令 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 数据库访问 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 配置数据源 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Spring JDBC Template --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 查询 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 修改 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ └── JdbcTemplate增强 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── BeetlSQL介绍 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── BeetlSQL功能概览 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 添加Maven依赖 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 配置BeetlSQL --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── SQLManager --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用SQL文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 使用实体 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── SQLManager内置CRUD --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 内置的插入API --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 内置的更新(删除)API --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 内置的查询API --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 代码生成方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用sqlId --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── md文件命名 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── md文件构成 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 调用sqlId --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 翻页查询 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── TailBean --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── ORM查询 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 其他API --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ └── Mapper详解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── BeetlSQL的其他功能 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 常用函数和标签 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 主键设置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── BeetlSQL注解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── NameConversion --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用JDBC --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用DAO --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ ├── 集成Hibernate --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 集成JPA --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 集成MyBatis --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 设计ORM --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Spring Data JPA --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 集成Spring Data JPA --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 集成数据源 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 配置JPA支持 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ │ ├── 创建Entity --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 简化Entity --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── Repository --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── CrudRepository --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── PagingAndSortingRepository --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── JpaRepository --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 持久化Entity --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Sort --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── Pageable和Page --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 基于方法名字查询 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── @Query查询 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 使用JPA Query --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── Example查询 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Spring Boot配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 配置Spring Boot --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 服务器配置 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 使用其他Web服务器 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 配置启动信息 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ └── 配置浏览器显示ico --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 日志配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 读取应用配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Environment --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── @Value --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) -│ │ │ └── @ConfigurationProperties --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── Spring Boot自动装配 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── @Configuration和@Bean --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Bean条件装配 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Class条件装配 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Environment装配 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 其他条件装配 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── 联合多个条件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Condition接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 制作Starter --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ ├── 部署Spring Boot应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 以jar文件运行 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── 以war方式部署 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ ├── 多环境部署 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ └── @Profile注解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Testing单元测试 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── JUnit介绍 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── JUnit的相关概念 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── JUnit测试 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── Assert --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Suite --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Spring Boot单元测试 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 测试范围依赖 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── Spring Boot测试脚手架 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 测试MVC --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 完成MVC请求模拟 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 比较MVC的返回结果 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── JSON比较 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── Mockito --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 模拟对象 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 模拟方法参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 模拟方法返回值 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ └── 面向数据库应用的单元测试 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── @Sql --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── XLSUnit --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── XLSUnit的基本用法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── REST --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── REST简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── REST风格的架构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用“api”作为上下文 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 增加一个版本标识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 标识资源 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 确定HTTP Method --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 确定HTTP Status --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── REST VS. WebService --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── Spring Boot集成REST --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 集成REST --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── @RestController --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── REST Client --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ ├── Swagger UI --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 集成Swagger --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Swagger规范 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 接口描述 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 查询参数描述 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── URI中的参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── HTTP头参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 表单参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 文件上传参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 整个请求体作为参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 模拟REST服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── MongoDB --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 安装MongoDB --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── 使用shell --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 指定数据库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 插入文档 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 查询文档 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 更新操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 删除操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Spring Boot集成MongoDB --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 增删改查 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 增加API --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 根据主键查询API --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 查询API --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 修改API --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 删除API --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用MongoDatabase --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 打印日志 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) -│ ├── Elasticsearch --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Elasticsearch介绍 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 安装Elasticsearch --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Elasticsearch的基本概念 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 使用REST访问Elasticsearch --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 添加文档 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 根据主键查询 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 根据主键更新 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 根据主键删除 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 搜索文档 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 联合多个索引搜索 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用RestTemplate访问ES --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 创建Book --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ └── 使用RestTemplate获取搜索结果 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ └── Spring Data Elastic --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 安装Spring Data --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ ├── 编写Entity --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 编写Dao --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 编写Controller --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ ├── Cache --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 关于Cache --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Cache的组件和概念 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Cache的单体应用 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 使用专有的Cache服务器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 使用一二级缓存服务器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Spring Boot Cache --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 注释驱动缓存 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── @Cacheable --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Key生成器 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ ├── @CachePut --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── @CacheEvict --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── @Caching --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── @CacheConfig --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用Redis Cache --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 集成Redis缓存 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 禁止缓存 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 定制缓存 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Redis缓存原理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 实现Redis两级缓存 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 实现TwoLevelCacheManager --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 创建RedisAndLocalCache --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 缓存同步说明 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 将代码组合在一起 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Spring Session --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 水平扩展实现 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ └── Spring Session --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Spring Session介绍 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ └── Nginx+Redis --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) -│ ├── 监控Spring Boot应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 安装Acutator --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── HTTP跟踪 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 日志查看 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 线程栈信息 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 内存信息 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 查看URL映射 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 查看Spring容器管理的Bean --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 其他监控 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 编写自己的监控信息 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 编写HealthIndicator --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ └── 自定义监控 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ ├── Web开发 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Web基础 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── Servlet入门 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ ├── Servlet开发 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Servlet进阶 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── JSP开发 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── MVC开发 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── MVC高级开发 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用Filter --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ └── 修改响应 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用Listener --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 部署 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 集成Filter --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用Interceptor --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 处理CORS --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 异步处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 使用WebSocket --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ ├── Spring开发 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── IoC容器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── IoC原理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Annotation配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 定制Bean --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Resource --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ └── 注入配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 集成第三方组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 集成JavaMail --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ ├── 集成JMS --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用Scheduler --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 集成JMX --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 集成Open API --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 访问Redis --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 集成Artemis --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── 集成RabbitMQ --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ └── 集成Kafka --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Spring Boot开发 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用开发者工具 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 打包Spring Boot应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用Actuator --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用Profiles --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用Conditional --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 加载配置文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 禁用自动配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 添加Filter --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ └── Spring Cloud开发 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -└── 其他 --> ( 难度等级: 无 || 挂载数据: 无 ) - ├── 其他类别标签问题 --> ( 难度等级: 无 || 挂载数据: qa: 10 ) - ├── 应用类问题 --> ( 难度等级: 无 || 挂载数据: qa: 10 ) - └── 第三方包问题 --> ( 难度等级: 无 || 挂载数据: qa: 10 ) +java --> ( 难度等级: [0, 1) || 挂载数据: 无 ) +├── java初阶 --> ( 难度等级: [0.0, 0.25) || 挂载数据: 无 ) +│ ├── Java的历史和演变 --> ( 难度等级: [0.0, 0.0156) || 挂载数据: 无 ) +│ │ ├── Java的家世 --> ( 难度等级: [0.0, 0.0017) || 挂载数据: 无 ) +│ │ │ ├── 现代编程语言的诞生:C语言 --> ( 难度等级: [0.0, 0.0006) || 挂载数据: qa: 1 ) +│ │ │ ├── C++:下一个阶段 --> ( 难度等级: [0.0006, 0.0012) || 挂载数据: qa: 5 ) +│ │ │ └── Java出现的时机已经成熟 --> ( 难度等级: [0.0012, 0.0017) || 挂载数据: 无 ) +│ │ ├── Java的诞生 --> ( 难度等级: [0.0017, 0.0035) || 挂载数据: 无 ) +│ │ ├── Java改变Internet的方式 --> ( 难度等级: [0.0035, 0.0052) || 挂载数据: qa: 1 ) +│ │ │ ├── Java applet --> ( 难度等级: [0.0035, 0.0041) || 挂载数据: 无 ) +│ │ │ ├── 安全性 --> ( 难度等级: [0.0041, 0.0046) || 挂载数据: 无 ) +│ │ │ └── 可移植性 --> ( 难度等级: [0.0046, 0.0052) || 挂载数据: 无 ) +│ │ ├── Java的魔力:字节码 --> ( 难度等级: [0.0052, 0.0069) || 挂载数据: 无 ) +│ │ ├── servlet:服务器端的Java --> ( 难度等级: [0.0069, 0.0087) || 挂载数据: 无 ) +│ │ ├── Java的关键特性 --> ( 难度等级: [0.0087, 0.0104) || 挂载数据: 无 ) +│ │ │ ├── 简单性 --> ( 难度等级: [0.0087, 0.0089) || 挂载数据: qa: 1 ) +│ │ │ ├── 面向对象 --> ( 难度等级: [0.0089, 0.0091) || 挂载数据: 无 ) +│ │ │ │ ├── 面向对象概述 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: 无 ) +│ │ │ │ │ └── 面向对象程序设计的特点 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: qa: 8 ) +│ │ │ │ ├── Java中的类与对象 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: 无 ) +│ │ │ │ │ ├── 类的定义 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: qa: 9 ) +│ │ │ │ │ ├── 对象的创建与使用 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: qa: 10 ) +│ │ │ │ │ │ ├── 存储到什么地方 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: qa: 3 ) +│ │ │ │ │ │ └── Java中的数组 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: qa: 6 ) +│ │ │ │ │ ├── 访问控制符 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: 无 ) +│ │ │ │ │ ├── String类与StringBuffer类 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── String类的初始化 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: qa: 10 ) +│ │ │ │ │ │ ├── String类的常见操作 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── StringBuffer类 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: qa: 4 ) +│ │ │ │ │ │ ├── 声明字符串 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: qa: 1 ) +│ │ │ │ │ │ └── 创建字符串 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: 无 ) +│ │ │ │ │ ├── System类与Runtime类 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── System类 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: qa: 10 ) +│ │ │ │ │ │ └── Runtime类 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: qa: 2 ) +│ │ │ │ │ ├── Math类与Random类 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── Math类 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: qa: 6 ) +│ │ │ │ │ │ ├── Random类 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: qa: 5 ) +│ │ │ │ │ │ ├── Math类概述 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: 无 ) +│ │ │ │ │ │ └── 常用数学运算方法 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: 无 ) +│ │ │ │ │ ├── 包装类 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── Integer类 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: qa: 10 ) +│ │ │ │ │ │ ├── Number类 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: qa: 1 ) +│ │ │ │ │ │ ├── Integer --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: qa: 4 ) +│ │ │ │ │ │ ├── Boolean --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: qa: 7 ) +│ │ │ │ │ │ ├── Character --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: qa: 2 ) +│ │ │ │ │ │ └── Number --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: qa: 2 ) +│ │ │ │ │ ├── 日期与时间类 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── Date类 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: qa: 10 ) +│ │ │ │ │ │ ├── Calendar类 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: qa: 6 ) +│ │ │ │ │ │ └── JDK 8的日期与时间类 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: qa: 10 ) +│ │ │ │ │ ├── 格式化类 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── DateFormat类 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── SimpleDateFormat类 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: 无 ) +│ │ │ │ │ │ └── DateTimeFormatter类 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: 无 ) +│ │ │ │ │ ├── 用引用操纵对象 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: 无 ) +│ │ │ │ │ ├── 永远不需要销毁对象 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 作用域 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: 无 ) +│ │ │ │ │ │ └── 对象的作用域 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: qa: 10 ) +│ │ │ │ │ ├── 构建一个Java程序 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 名字可见性 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: 无 ) +│ │ │ │ │ │ └── 运用其他构件 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: 无 ) +│ │ │ │ │ ├── 编码风格 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: 无 ) +│ │ │ │ │ ├── 访问对象的属性和行为 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: qa: 10 ) +│ │ │ │ │ ├── 对象的引用 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: qa: 8 ) +│ │ │ │ │ ├── 对象的销毁 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: qa: 1 ) +│ │ │ │ │ ├── 打印对象和toString方法 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: qa: 10 ) +│ │ │ │ │ └── ==和equals方法 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: qa: 8 ) +│ │ │ │ ├── 类的封装 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: 无 ) +│ │ │ │ │ └── 如何实现封装 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: qa: 7 ) +│ │ │ │ ├── 构造方法 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: qa: 1 ) +│ │ │ │ │ ├── 构造方法的定义 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: qa: 5 ) +│ │ │ │ │ └── 构造方法的重载 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: 无 ) +│ │ │ │ ├── static关键字 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: qa: 10 ) +│ │ │ │ │ ├── 静态变量 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: qa: 10 ) +│ │ │ │ │ ├── 静态方法 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: qa: 1 ) +│ │ │ │ │ └── 静态代码块 --> ( 难度等级: [0.0089, 0.0089) || 挂载数据: qa: 5 ) +│ │ │ │ ├── 类的继承 --> ( 难度等级: [0.0089, 0.009) || 挂载数据: qa: 1 ) +│ │ │ │ │ ├── 继承的概念 --> ( 难度等级: [0.0089, 0.009) || 挂载数据: qa: 10 ) +│ │ │ │ │ ├── 重写父类方法 --> ( 难度等级: [0.009, 0.009) || 挂载数据: 无 ) +│ │ │ │ │ ├── extends关键字 --> ( 难度等级: [0.009, 0.009) || 挂载数据: qa: 5 ) +│ │ │ │ │ ├── 所有类的父类——Object类 --> ( 难度等级: [0.009, 0.009) || 挂载数据: qa: 5 ) +│ │ │ │ │ ├── 重写父类的方法 --> ( 难度等级: [0.009, 0.009) || 挂载数据: qa: 3 ) +│ │ │ │ │ ├── super限定 --> ( 难度等级: [0.009, 0.009) || 挂载数据: 无 ) +│ │ │ │ │ └── 调用父类构造器 --> ( 难度等级: [0.009, 0.009) || 挂载数据: qa: 1 ) +│ │ │ │ ├── final关键字 --> ( 难度等级: [0.009, 0.009) || 挂载数据: 无 ) +│ │ │ │ │ ├── final关键字修饰类 --> ( 难度等级: [0.009, 0.009) || 挂载数据: 无 ) +│ │ │ │ │ ├── final关键字修饰方法 --> ( 难度等级: [0.009, 0.009) || 挂载数据: 无 ) +│ │ │ │ │ ├── final关键字修饰变量 --> ( 难度等级: [0.009, 0.009) || 挂载数据: qa: 6 ) +│ │ │ │ │ ├── final数据 --> ( 难度等级: [0.009, 0.009) || 挂载数据: qa: 1 ) +│ │ │ │ │ ├── final方法 --> ( 难度等级: [0.009, 0.009) || 挂载数据: qa: 1 ) +│ │ │ │ │ ├── final类 --> ( 难度等级: [0.009, 0.009) || 挂载数据: 无 ) +│ │ │ │ │ └── 有关final的忠告 --> ( 难度等级: [0.009, 0.009) || 挂载数据: 无 ) +│ │ │ │ ├── 多态 --> ( 难度等级: [0.009, 0.009) || 挂载数据: qa: 2 ) +│ │ │ │ │ ├── 多态概述 --> ( 难度等级: [0.009, 0.009) || 挂载数据: qa: 10 ) +│ │ │ │ │ ├── 对象的类型转换 --> ( 难度等级: [0.009, 0.009) || 挂载数据: 无 ) +│ │ │ │ │ ├── 转机 --> ( 难度等级: [0.009, 0.009) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 方法调用绑定 --> ( 难度等级: [0.009, 0.009) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 产生正确的行为 --> ( 难度等级: [0.009, 0.009) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 可扩展性 --> ( 难度等级: [0.009, 0.009) || 挂载数据: 无 ) +│ │ │ │ │ │ └── 缺陷:“覆盖”私有方法 --> ( 难度等级: [0.009, 0.009) || 挂载数据: 无 ) +│ │ │ │ │ ├── 多态性 --> ( 难度等级: [0.009, 0.009) || 挂载数据: qa: 2 ) +│ │ │ │ │ └── 引用变量的强制类型转换 --> ( 难度等级: [0.009, 0.009) || 挂载数据: qa: 1 ) +│ │ │ │ ├── JDK 8的Lambda表达式 --> ( 难度等级: [0.009, 0.009) || 挂载数据: 无 ) +│ │ │ │ │ └── Lambda表达式入门 --> ( 难度等级: [0.009, 0.009) || 挂载数据: 无 ) +│ │ │ │ ├── 结构化程序设计简介 --> ( 难度等级: [0.009, 0.009) || 挂载数据: 无 ) +│ │ │ │ ├── 程序的三种基本结构 --> ( 难度等级: [0.009, 0.009) || 挂载数据: 无 ) +│ │ │ │ ├── 面向对象程序设计简介 --> ( 难度等级: [0.009, 0.009) || 挂载数据: 无 ) +│ │ │ │ ├── 面向对象的基本特征 --> ( 难度等级: [0.009, 0.009) || 挂载数据: 无 ) +│ │ │ │ ├── 方法详解 --> ( 难度等级: [0.009, 0.009) || 挂载数据: 无 ) +│ │ │ │ │ ├── 方法的所属性 --> ( 难度等级: [0.009, 0.009) || 挂载数据: qa: 1 ) +│ │ │ │ │ ├── 方法的参数传递机制 --> ( 难度等级: [0.009, 0.009) || 挂载数据: qa: 2 ) +│ │ │ │ │ ├── 形参个数可变的方法 --> ( 难度等级: [0.009, 0.009) || 挂载数据: qa: 2 ) +│ │ │ │ │ └── 递归方法 --> ( 难度等级: [0.009, 0.009) || 挂载数据: qa: 4 ) +│ │ │ │ ├── 类成员 --> ( 难度等级: [0.009, 0.0091) || 挂载数据: 无 ) +│ │ │ │ │ ├── 理解类成员 --> ( 难度等级: [0.009, 0.009) || 挂载数据: qa: 8 ) +│ │ │ │ │ └── 单例(Singleton)类 --> ( 难度等级: [0.009, 0.0091) || 挂载数据: 无 ) +│ │ │ │ ├── final修饰符 --> ( 难度等级: [0.0091, 0.0091) || 挂载数据: qa: 1 ) +│ │ │ │ │ ├── final成员变量 --> ( 难度等级: [0.0091, 0.0091) || 挂载数据: qa: 5 ) +│ │ │ │ │ ├── final局部变量 --> ( 难度等级: [0.0091, 0.0091) || 挂载数据: qa: 7 ) +│ │ │ │ │ ├── final修饰基本类型变量和引用类型变量的区别 --> ( 难度等级: [0.0091, 0.0091) || 挂载数据: qa: 3 ) +│ │ │ │ │ ├── 可执行“宏替换”的final变量 --> ( 难度等级: [0.0091, 0.0091) || 挂载数据: qa: 1 ) +│ │ │ │ │ └── 不可变类 --> ( 难度等级: [0.0091, 0.0091) || 挂载数据: 无 ) +│ │ │ │ ├── Java 9改进的接口 --> ( 难度等级: [0.0091, 0.0091) || 挂载数据: 无 ) +│ │ │ │ │ ├── 接口的概念 --> ( 难度等级: [0.0091, 0.0091) || 挂载数据: 无 ) +│ │ │ │ │ ├── Java 9中接口的定义 --> ( 难度等级: [0.0091, 0.0091) || 挂载数据: 无 ) +│ │ │ │ │ ├── 接口的继承 --> ( 难度等级: [0.0091, 0.0091) || 挂载数据: qa: 4 ) +│ │ │ │ │ └── 面向接口编程 --> ( 难度等级: [0.0091, 0.0091) || 挂载数据: 无 ) +│ │ │ │ ├── Java 11增强的Lambda表达式 --> ( 难度等级: [0.0091, 0.0091) || 挂载数据: 无 ) +│ │ │ │ │ ├── 在Lambda表达式中使用var --> ( 难度等级: [0.0091, 0.0091) || 挂载数据: 无 ) +│ │ │ │ │ └── 使用Lambda表达式调用Arrays的类方法 --> ( 难度等级: [0.0091, 0.0091) || 挂载数据: 无 ) +│ │ │ │ ├── 枚举类 --> ( 难度等级: [0.0091, 0.0091) || 挂载数据: 无 ) +│ │ │ │ │ ├── 手动实现枚举类 --> ( 难度等级: [0.0091, 0.0091) || 挂载数据: 无 ) +│ │ │ │ │ ├── 枚举类入门 --> ( 难度等级: [0.0091, 0.0091) || 挂载数据: 无 ) +│ │ │ │ │ ├── 实现接口的枚举类 --> ( 难度等级: [0.0091, 0.0091) || 挂载数据: qa: 3 ) +│ │ │ │ │ └── 包含抽象方法的枚举类 --> ( 难度等级: [0.0091, 0.0091) || 挂载数据: 无 ) +│ │ │ │ ├── 修饰符的适用范围 --> ( 难度等级: [0.0091, 0.0091) || 挂载数据: 无 ) +│ │ │ │ └── 多版本JAR包 --> ( 难度等级: [0.0091, 0.0091) || 挂载数据: 无 ) +│ │ │ │ ├── jar命令详解 --> ( 难度等级: [0.0091, 0.0091) || 挂载数据: qa: 10 ) +│ │ │ │ ├── 创建可执行的JAR包 --> ( 难度等级: [0.0091, 0.0091) || 挂载数据: qa: 4 ) +│ │ │ │ └── 关于JAR包的技巧 --> ( 难度等级: [0.0091, 0.0091) || 挂载数据: qa: 10 ) +│ │ │ ├── 健壮性 --> ( 难度等级: [0.0091, 0.0093) || 挂载数据: 无 ) +│ │ │ ├── 多线程 --> ( 难度等级: [0.0093, 0.0095) || 挂载数据: qa: 10 ) +│ │ │ ├── 体系结构中立 --> ( 难度等级: [0.0095, 0.0098) || 挂载数据: 无 ) +│ │ │ ├── 解释执行和高性能 --> ( 难度等级: [0.0098, 0.01) || 挂载数据: 无 ) +│ │ │ ├── 分布式 --> ( 难度等级: [0.01, 0.0102) || 挂载数据: qa: 1 ) +│ │ │ └── 动态性 --> ( 难度等级: [0.0102, 0.0104) || 挂载数据: 无 ) +│ │ ├── Java的演变历程 --> ( 难度等级: [0.0104, 0.0122) || 挂载数据: 无 ) +│ │ ├── Java SE 8 --> ( 难度等级: [0.0122, 0.0139) || 挂载数据: qa: 4 ) +│ │ └── 文化革新 --> ( 难度等级: [0.0139, 0.0156) || 挂载数据: 无 ) +│ ├── Java综述 --> ( 难度等级: [0.0156, 0.0312) || 挂载数据: 无 ) +│ │ ├── 面向对象编程 --> ( 难度等级: [0.0156, 0.0182) || 挂载数据: qa: 1 ) +│ │ │ ├── 两种范式 --> ( 难度等级: [0.0156, 0.0161) || 挂载数据: 无 ) +│ │ │ ├── 抽象 --> ( 难度等级: [0.0161, 0.0167) || 挂载数据: 无 ) +│ │ │ ├── OOP三原则 --> ( 难度等级: [0.0167, 0.0172) || 挂载数据: 无 ) +│ │ │ ├── 面向对象基础 --> ( 难度等级: [0.0172, 0.0177) || 挂载数据: 无 ) +│ │ │ │ └── 模块 --> ( 难度等级: [0.0172, 0.0177) || 挂载数据: 无 ) +│ │ │ └── Java核心类 --> ( 难度等级: [0.0177, 0.0182) || 挂载数据: 无 ) +│ │ │ ├── StringJoiner --> ( 难度等级: [0.0177, 0.0179) || 挂载数据: 无 ) +│ │ │ ├── 包装类型 --> ( 难度等级: [0.0179, 0.0181) || 挂载数据: qa: 1 ) +│ │ │ └── 记录类 --> ( 难度等级: [0.0181, 0.0182) || 挂载数据: 无 ) +│ │ ├── 第一个简单程序 --> ( 难度等级: [0.0182, 0.0208) || 挂载数据: qa: 2 ) +│ │ │ ├── 输入程序 --> ( 难度等级: [0.0182, 0.0191) || 挂载数据: qa: 10 ) +│ │ │ ├── 编译程序 --> ( 难度等级: [0.0191, 0.02) || 挂载数据: 无 ) +│ │ │ └── 深入分析第一个示例程序 --> ( 难度等级: [0.02, 0.0208) || 挂载数据: qa: 1 ) +│ │ ├── 第二个简短程序 --> ( 难度等级: [0.0208, 0.0234) || 挂载数据: 无 ) +│ │ ├── 两种控制语句 --> ( 难度等级: [0.0234, 0.026) || 挂载数据: 无 ) +│ │ │ ├── if语句 --> ( 难度等级: [0.0234, 0.0247) || 挂载数据: qa: 2 ) +│ │ │ └── for循环 --> ( 难度等级: [0.0247, 0.026) || 挂载数据: qa: 10 ) +│ │ ├── 使用代码块 --> ( 难度等级: [0.026, 0.0286) || 挂载数据: 无 ) +│ │ └── Java类库 --> ( 难度等级: [0.0286, 0.0312) || 挂载数据: 无 ) +│ ├── 数据类型、变量和数组 --> ( 难度等级: [0.0312, 0.0469) || 挂载数据: 无 ) +│ │ ├── Java是强类型化的语言 --> ( 难度等级: [0.0312, 0.0317) || 挂载数据: 无 ) +│ │ ├── 基本类型 --> ( 难度等级: [0.0317, 0.0321) || 挂载数据: 无 ) +│ │ ├── 整型 --> ( 难度等级: [0.0321, 0.0325) || 挂载数据: 无 ) +│ │ │ ├── byte --> ( 难度等级: [0.0321, 0.0322) || 挂载数据: qa: 10 ) +│ │ │ ├── short --> ( 难度等级: [0.0322, 0.0323) || 挂载数据: qa: 1 ) +│ │ │ ├── int --> ( 难度等级: [0.0323, 0.0324) || 挂载数据: qa: 10 ) +│ │ │ └── long --> ( 难度等级: [0.0324, 0.0325) || 挂载数据: qa: 7 ) +│ │ ├── 浮点型 --> ( 难度等级: [0.0325, 0.0329) || 挂载数据: 无 ) +│ │ │ ├── float --> ( 难度等级: [0.0325, 0.0327) || 挂载数据: 无 ) +│ │ │ └── double --> ( 难度等级: [0.0327, 0.0329) || 挂载数据: qa: 6 ) +│ │ ├── 字符型 --> ( 难度等级: [0.0329, 0.0333) || 挂载数据: qa: 1 ) +│ │ ├── 布尔型 --> ( 难度等级: [0.0333, 0.0337) || 挂载数据: 无 ) +│ │ ├── 深入分析字面值 --> ( 难度等级: [0.0337, 0.0341) || 挂载数据: 无 ) +│ │ │ ├── 整型字面值 --> ( 难度等级: [0.0337, 0.0338) || 挂载数据: qa: 2 ) +│ │ │ ├── 浮点型字面值 --> ( 难度等级: [0.0338, 0.0339) || 挂载数据: 无 ) +│ │ │ ├── 布尔型字面值 --> ( 难度等级: [0.0339, 0.034) || 挂载数据: 无 ) +│ │ │ ├── 字符型字面值 --> ( 难度等级: [0.034, 0.034) || 挂载数据: qa: 1 ) +│ │ │ └── 字符串字面值 --> ( 难度等级: [0.034, 0.0341) || 挂载数据: 无 ) +│ │ ├── 变量 --> ( 难度等级: [0.0341, 0.0345) || 挂载数据: 无 ) +│ │ │ ├── 变量的声明 --> ( 难度等级: [0.0341, 0.0343) || 挂载数据: qa: 1 ) +│ │ │ ├── 动态初始化 --> ( 难度等级: [0.0343, 0.0344) || 挂载数据: 无 ) +│ │ │ └── 变量的作用域和生存期 --> ( 难度等级: [0.0344, 0.0345) || 挂载数据: 无 ) +│ │ ├── 类型转换和强制类型转换 --> ( 难度等级: [0.0345, 0.035) || 挂载数据: qa: 1 ) +│ │ │ ├── Java的自动类型转换 --> ( 难度等级: [0.0345, 0.0347) || 挂载数据: 无 ) +│ │ │ └── 强制转换不兼容的类型 --> ( 难度等级: [0.0347, 0.035) || 挂载数据: qa: 4 ) +│ │ ├── 表达式中的自动类型提升 --> ( 难度等级: [0.035, 0.0354) || 挂载数据: 无 ) +│ │ ├── 数组 --> ( 难度等级: [0.0354, 0.0358) || 挂载数据: 无 ) +│ │ │ ├── 一维数组 --> ( 难度等级: [0.0354, 0.0355) || 挂载数据: qa: 10 ) +│ │ │ ├── 多维数组 --> ( 难度等级: [0.0355, 0.0356) || 挂载数据: 无 ) +│ │ │ └── 另一种数组声明语法 --> ( 难度等级: [0.0356, 0.0358) || 挂载数据: qa: 1 ) +│ │ ├── 关于字符串的一些说明 --> ( 难度等级: [0.0358, 0.0362) || 挂载数据: qa: 1 ) +│ │ │ ├── 字符串的连接 --> ( 难度等级: [0.0358, 0.0358) || 挂载数据: 无 ) +│ │ │ │ ├── 连接字符串 --> ( 难度等级: [0.0358, 0.0358) || 挂载数据: qa: 2 ) +│ │ │ │ └── 连接其他数据类型 --> ( 难度等级: [0.0358, 0.0358) || 挂载数据: qa: 10 ) +│ │ │ ├── 提取字符串信息 --> ( 难度等级: [0.0358, 0.0358) || 挂载数据: 无 ) +│ │ │ │ ├── 获取字符串长度 --> ( 难度等级: [0.0358, 0.0358) || 挂载数据: qa: 2 ) +│ │ │ │ ├── 获取指定位置的字符 --> ( 难度等级: [0.0358, 0.0358) || 挂载数据: qa: 4 ) +│ │ │ │ ├── 获取子字符串索引位置 --> ( 难度等级: [0.0358, 0.0358) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 判断字符串首尾内容 --> ( 难度等级: [0.0358, 0.0358) || 挂载数据: qa: 9 ) +│ │ │ │ ├── 获取字符数组 --> ( 难度等级: [0.0358, 0.0358) || 挂载数据: qa: 3 ) +│ │ │ │ └── 判断子字符串是否存在 --> ( 难度等级: [0.0358, 0.0358) || 挂载数据: 无 ) +│ │ │ ├── 字符串的操作 --> ( 难度等级: [0.0358, 0.0358) || 挂载数据: 无 ) +│ │ │ │ ├── 截取字符串 --> ( 难度等级: [0.0358, 0.0358) || 挂载数据: qa: 10 ) +│ │ │ │ ├── 字符串替换 --> ( 难度等级: [0.0358, 0.0358) || 挂载数据: qa: 7 ) +│ │ │ │ ├── 字符串分割 --> ( 难度等级: [0.0358, 0.0358) || 挂载数据: qa: 10 ) +│ │ │ │ ├── 大小写转换 --> ( 难度等级: [0.0358, 0.0358) || 挂载数据: 无 ) +│ │ │ │ ├── 去除空白内容 --> ( 难度等级: [0.0358, 0.0358) || 挂载数据: 无 ) +│ │ │ │ ├── 比较字符串是否相等 --> ( 难度等级: [0.0358, 0.0358) || 挂载数据: 无 ) +│ │ │ │ ├── 获取子字符串 --> ( 难度等级: [0.0358, 0.0358) || 挂载数据: qa: 6 ) +│ │ │ │ ├── 去除空格 --> ( 难度等级: [0.0358, 0.0358) || 挂载数据: qa: 4 ) +│ │ │ │ ├── 判断字符串的开始与结尾 --> ( 难度等级: [0.0358, 0.0358) || 挂载数据: qa: 10 ) +│ │ │ │ ├── 按字典顺序比较两个字符串 --> ( 难度等级: [0.0358, 0.0358) || 挂载数据: 无 ) +│ │ │ │ └── 字母大小写转换 --> ( 难度等级: [0.0358, 0.0358) || 挂载数据: 无 ) +│ │ │ ├── 可变字符串StringBuffer类 --> ( 难度等级: [0.0358, 0.0358) || 挂载数据: 无 ) +│ │ │ ├── 不可变String --> ( 难度等级: [0.0358, 0.0359) || 挂载数据: 无 ) +│ │ │ ├── 重载"+"与StringBuilder --> ( 难度等级: [0.0359, 0.0359) || 挂载数据: qa: 1 ) +│ │ │ ├── 无意识的递归 --> ( 难度等级: [0.0359, 0.0359) || 挂载数据: 无 ) +│ │ │ ├── String上的操作 --> ( 难度等级: [0.0359, 0.0359) || 挂载数据: 无 ) +│ │ │ ├── 格式化输出 --> ( 难度等级: [0.0359, 0.0359) || 挂载数据: 无 ) +│ │ │ │ ├── printf() --> ( 难度等级: [0.0359, 0.0359) || 挂载数据: 无 ) +│ │ │ │ ├── System.out.format() --> ( 难度等级: [0.0359, 0.0359) || 挂载数据: 无 ) +│ │ │ │ ├── Formatter类 --> ( 难度等级: [0.0359, 0.0359) || 挂载数据: 无 ) +│ │ │ │ ├── 格式化说明符 --> ( 难度等级: [0.0359, 0.0359) || 挂载数据: 无 ) +│ │ │ │ ├── Formatter转换 --> ( 难度等级: [0.0359, 0.0359) || 挂载数据: 无 ) +│ │ │ │ └── String.format() --> ( 难度等级: [0.0359, 0.0359) || 挂载数据: qa: 2 ) +│ │ │ ├── 正则表达式 --> ( 难度等级: [0.0359, 0.0359) || 挂载数据: qa: 6 ) +│ │ │ │ ├── 基础 --> ( 难度等级: [0.0359, 0.0359) || 挂载数据: qa: 8 ) +│ │ │ │ ├── 创建正则表达式 --> ( 难度等级: [0.0359, 0.0359) || 挂载数据: qa: 3 ) +│ │ │ │ ├── 限定符 --> ( 难度等级: [0.0359, 0.0359) || 挂载数据: 无 ) +│ │ │ │ ├── Pattern和Matcher --> ( 难度等级: [0.0359, 0.0359) || 挂载数据: qa: 1 ) +│ │ │ │ ├── split() --> ( 难度等级: [0.0359, 0.0359) || 挂载数据: qa: 10 ) +│ │ │ │ ├── 替换操作 --> ( 难度等级: [0.0359, 0.0359) || 挂载数据: 无 ) +│ │ │ │ ├── reset() --> ( 难度等级: [0.0359, 0.0359) || 挂载数据: qa: 1 ) +│ │ │ │ └── 正则表达式与Java I/O --> ( 难度等级: [0.0359, 0.0359) || 挂载数据: 无 ) +│ │ │ ├── 扫描输入 --> ( 难度等级: [0.0359, 0.036) || 挂载数据: 无 ) +│ │ │ │ ├── Scanner定界符 --> ( 难度等级: [0.0359, 0.036) || 挂载数据: 无 ) +│ │ │ │ └── 用正则表达式扫描 --> ( 难度等级: [0.036, 0.036) || 挂载数据: 无 ) +│ │ │ ├── StringTokenizer --> ( 难度等级: [0.036, 0.036) || 挂载数据: 无 ) +│ │ │ ├── 获取字符串信息 --> ( 难度等级: [0.036, 0.036) || 挂载数据: 无 ) +│ │ │ │ ├── 字符串查找 --> ( 难度等级: [0.036, 0.036) || 挂载数据: 无 ) +│ │ │ │ └── 获取指定索引位置的字符 --> ( 难度等级: [0.036, 0.036) || 挂载数据: qa: 10 ) +│ │ │ ├── 格式化字符串 --> ( 难度等级: [0.036, 0.036) || 挂载数据: 无 ) +│ │ │ │ └── 常规类型格式化 --> ( 难度等级: [0.036, 0.036) || 挂载数据: 无 ) +│ │ │ ├── 字符串生成器 --> ( 难度等级: [0.036, 0.036) || 挂载数据: 无 ) +│ │ │ ├── 子串 --> ( 难度等级: [0.036, 0.036) || 挂载数据: 无 ) +│ │ │ ├── 拼接 --> ( 难度等级: [0.036, 0.0361) || 挂载数据: 无 ) +│ │ │ ├── 不可变字符串 --> ( 难度等级: [0.0361, 0.0361) || 挂载数据: 无 ) +│ │ │ ├── 检测字符串是否相等 --> ( 难度等级: [0.0361, 0.0361) || 挂载数据: qa: 2 ) +│ │ │ ├── 空串与Null串 --> ( 难度等级: [0.0361, 0.0361) || 挂载数据: 无 ) +│ │ │ ├── 码点与代码单元 --> ( 难度等级: [0.0361, 0.0361) || 挂载数据: 无 ) +│ │ │ ├── String API --> ( 难度等级: [0.0361, 0.0361) || 挂载数据: 无 ) +│ │ │ ├── 阅读联机API文档 --> ( 难度等级: [0.0361, 0.0362) || 挂载数据: qa: 2 ) +│ │ │ └── 构建字符串 --> ( 难度等级: [0.0362, 0.0362) || 挂载数据: 无 ) +│ │ ├── 向C/C++程序员提供指针方面的说明 --> ( 难度等级: [0.0362, 0.0366) || 挂载数据: qa: 6 ) +│ │ ├── 数组的定义 --> ( 难度等级: [0.0366, 0.037) || 挂载数据: qa: 3 ) +│ │ ├── 数组的常见操作 --> ( 难度等级: [0.037, 0.0374) || 挂载数据: 无 ) +│ │ ├── 数组的概述 --> ( 难度等级: [0.0374, 0.0378) || 挂载数据: 无 ) +│ │ ├── 创建一维数组 --> ( 难度等级: [0.0378, 0.0382) || 挂载数据: 无 ) +│ │ ├── 给一维数组赋值 --> ( 难度等级: [0.0382, 0.0387) || 挂载数据: qa: 5 ) +│ │ ├── 获取数组长度 --> ( 难度等级: [0.0387, 0.0391) || 挂载数据: qa: 1 ) +│ │ ├── 一维数组的使用场景 --> ( 难度等级: [0.0391, 0.0395) || 挂载数据: qa: 1 ) +│ │ ├── 不规则数组 --> ( 难度等级: [0.0395, 0.0399) || 挂载数据: 无 ) +│ │ ├── 数组的基本操作 --> ( 难度等级: [0.0399, 0.0403) || 挂载数据: 无 ) +│ │ │ ├── 遍历数组 --> ( 难度等级: [0.0399, 0.04) || 挂载数据: qa: 4 ) +│ │ │ ├── 填充和批量替换数组元素 --> ( 难度等级: [0.04, 0.04) || 挂载数据: 无 ) +│ │ │ ├── 填充替换数组元素 --> ( 难度等级: [0.04, 0.0401) || 挂载数据: qa: 4 ) +│ │ │ ├── 对数组进行排序 --> ( 难度等级: [0.0401, 0.0402) || 挂载数据: 无 ) +│ │ │ └── 数组查询 --> ( 难度等级: [0.0402, 0.0403) || 挂载数据: qa: 2 ) +│ │ ├── 数组是第一级对象 --> ( 难度等级: [0.0403, 0.0407) || 挂载数据: 无 ) +│ │ ├── 返回一个数组 --> ( 难度等级: [0.0407, 0.0411) || 挂载数据: qa: 2 ) +│ │ ├── 创建测试数据 --> ( 难度等级: [0.0411, 0.0415) || 挂载数据: 无 ) +│ │ │ ├── Arrays.fill() --> ( 难度等级: [0.0411, 0.0413) || 挂载数据: qa: 1 ) +│ │ │ ├── 数据生成器(Generator) --> ( 难度等级: [0.0413, 0.0414) || 挂载数据: 无 ) +│ │ │ └── 从Generator中创建数组 --> ( 难度等级: [0.0414, 0.0415) || 挂载数据: qa: 5 ) +│ │ ├── Arrays实用功能 --> ( 难度等级: [0.0415, 0.0419) || 挂载数据: 无 ) +│ │ │ ├── 复制数组 --> ( 难度等级: [0.0415, 0.0416) || 挂载数据: 无 ) +│ │ │ ├── 数组元素的比较 --> ( 难度等级: [0.0416, 0.0417) || 挂载数据: qa: 3 ) +│ │ │ ├── 数组排序 --> ( 难度等级: [0.0417, 0.0418) || 挂载数据: qa: 4 ) +│ │ │ └── 在已排序的数组中查找 --> ( 难度等级: [0.0418, 0.0419) || 挂载数据: qa: 1 ) +│ │ ├── 数组排序算法 --> ( 难度等级: [0.0419, 0.0424) || 挂载数据: 无 ) +│ │ │ ├── 冒泡排序 --> ( 难度等级: [0.0419, 0.0421) || 挂载数据: qa: 4 ) +│ │ │ ├── 直接选择排序 --> ( 难度等级: [0.0421, 0.0422) || 挂载数据: qa: 4 ) +│ │ │ └── 反转排序 --> ( 难度等级: [0.0422, 0.0424) || 挂载数据: qa: 3 ) +│ │ ├── 内存中的数组 --> ( 难度等级: [0.0424, 0.0428) || 挂载数据: qa: 2 ) +│ │ ├── 基本类型数组的初始化 --> ( 难度等级: [0.0428, 0.0432) || 挂载数据: 无 ) +│ │ ├── 引用类型数组的初始化 --> ( 难度等级: [0.0432, 0.0436) || 挂载数据: 无 ) +│ │ ├── 操作数组的工具类:Arrays --> ( 难度等级: [0.0436, 0.044) || 挂载数据: 无 ) +│ │ ├── 数组应用举例 --> ( 难度等级: [0.044, 0.0444) || 挂载数据: 无 ) +│ │ ├── char类型 --> ( 难度等级: [0.0444, 0.0448) || 挂载数据: qa: 10 ) +│ │ ├── boolean类型 --> ( 难度等级: [0.0448, 0.0452) || 挂载数据: 无 ) +│ │ ├── 声明数组 --> ( 难度等级: [0.0452, 0.0456) || 挂载数据: 无 ) +│ │ ├── 访问数组元素 --> ( 难度等级: [0.0456, 0.0461) || 挂载数据: 无 ) +│ │ ├── for each循环 --> ( 难度等级: [0.0461, 0.0465) || 挂载数据: 无 ) +│ │ └── 数组拷贝 --> ( 难度等级: [0.0465, 0.0469) || 挂载数据: 无 ) +│ ├── 运算符 --> ( 难度等级: [0.0469, 0.0625) || 挂载数据: 无 ) +│ │ ├── 算术运算符 --> ( 难度等级: [0.0469, 0.0479) || 挂载数据: qa: 1 ) +│ │ │ ├── 基本算术运算符 --> ( 难度等级: [0.0469, 0.0471) || 挂载数据: qa: 1 ) +│ │ │ ├── 求模运算符 --> ( 难度等级: [0.0471, 0.0474) || 挂载数据: 无 ) +│ │ │ ├── 算术与赋值复合运算符 --> ( 难度等级: [0.0474, 0.0477) || 挂载数据: 无 ) +│ │ │ └── 自增与自减运算符 --> ( 难度等级: [0.0477, 0.0479) || 挂载数据: 无 ) +│ │ ├── 位运算符 --> ( 难度等级: [0.0479, 0.049) || 挂载数据: 无 ) +│ │ │ ├── 位逻辑运算符 --> ( 难度等级: [0.0479, 0.0481) || 挂载数据: 无 ) +│ │ │ ├── 左移 --> ( 难度等级: [0.0481, 0.0483) || 挂载数据: 无 ) +│ │ │ ├── 右移 --> ( 难度等级: [0.0483, 0.0485) || 挂载数据: 无 ) +│ │ │ ├── 无符号右移 --> ( 难度等级: [0.0485, 0.0488) || 挂载数据: qa: 4 ) +│ │ │ └── 位运算符与赋值的组合 --> ( 难度等级: [0.0488, 0.049) || 挂载数据: qa: 9 ) +│ │ ├── 关系运算符 --> ( 难度等级: [0.049, 0.05) || 挂载数据: 无 ) +│ │ ├── 布尔逻辑运算符 --> ( 难度等级: [0.05, 0.051) || 挂载数据: 无 ) +│ │ ├── 赋值运算符 --> ( 难度等级: [0.051, 0.0521) || 挂载数据: 无 ) +│ │ ├── “?”运算符 --> ( 难度等级: [0.0521, 0.0531) || 挂载数据: qa: 3 ) +│ │ ├── 运算符的优先级 --> ( 难度等级: [0.0531, 0.0542) || 挂载数据: qa: 1 ) +│ │ ├── 使用圆括号 --> ( 难度等级: [0.0542, 0.0552) || 挂载数据: 无 ) +│ │ ├── 自增和自减运算符 --> ( 难度等级: [0.0552, 0.0563) || 挂载数据: 无 ) +│ │ ├── 复合赋值运算符 --> ( 难度等级: [0.0563, 0.0573) || 挂载数据: 无 ) +│ │ ├── 扩展后的赋值运算符 --> ( 难度等级: [0.0573, 0.0583) || 挂载数据: 无 ) +│ │ ├── 三目运算符 --> ( 难度等级: [0.0583, 0.0594) || 挂载数据: qa: 3 ) +│ │ ├── 数值类型之间的转换 --> ( 难度等级: [0.0594, 0.0604) || 挂载数据: 无 ) +│ │ ├── 关系和boolean运算符 --> ( 难度等级: [0.0604, 0.0615) || 挂载数据: 无 ) +│ │ └── 括号与运算符级别 --> ( 难度等级: [0.0615, 0.0625) || 挂载数据: qa: 2 ) +│ ├── 控制语句 --> ( 难度等级: [0.0625, 0.0781) || 挂载数据: 无 ) +│ │ ├── Java的选择语句 --> ( 难度等级: [0.0625, 0.0677) || 挂载数据: 无 ) +│ │ │ ├── if语句 --> ( 难度等级: [0.0625, 0.0651) || 挂载数据: 无 ) +│ │ │ └── switch语句 --> ( 难度等级: [0.0651, 0.0677) || 挂载数据: qa: 5 ) +│ │ ├── 迭代语句 --> ( 难度等级: [0.0677, 0.0729) || 挂载数据: 无 ) +│ │ │ ├── while语句 --> ( 难度等级: [0.0677, 0.0687) || 挂载数据: qa: 1 ) +│ │ │ ├── do-while语句 --> ( 难度等级: [0.0687, 0.0698) || 挂载数据: 无 ) +│ │ │ ├── for语句 --> ( 难度等级: [0.0698, 0.0708) || 挂载数据: qa: 1 ) +│ │ │ ├── for循环的for-each版本 --> ( 难度等级: [0.0708, 0.0719) || 挂载数据: 无 ) +│ │ │ └── 嵌套的循环 --> ( 难度等级: [0.0719, 0.0729) || 挂载数据: 无 ) +│ │ └── 跳转语句 --> ( 难度等级: [0.0729, 0.0781) || 挂载数据: qa: 5 ) +│ │ ├── 使用break语句 --> ( 难度等级: [0.0729, 0.0747) || 挂载数据: qa: 2 ) +│ │ ├── 使用continue语句 --> ( 难度等级: [0.0747, 0.0764) || 挂载数据: 无 ) +│ │ └── return语句 --> ( 难度等级: [0.0764, 0.0781) || 挂载数据: qa: 10 ) +│ ├── 类 --> ( 难度等级: [0.0781, 0.0938) || 挂载数据: qa: 4 ) +│ │ ├── 类的基础知识 --> ( 难度等级: [0.0781, 0.0791) || 挂载数据: 无 ) +│ │ │ ├── 类的一般形式 --> ( 难度等级: [0.0781, 0.0786) || 挂载数据: qa: 1 ) +│ │ │ └── 一个简单的类 --> ( 难度等级: [0.0786, 0.0791) || 挂载数据: 无 ) +│ │ ├── 声明对象 --> ( 难度等级: [0.0791, 0.0801) || 挂载数据: 无 ) +│ │ ├── 为对象引用变量赋值 --> ( 难度等级: [0.0801, 0.0811) || 挂载数据: 无 ) +│ │ ├── 方法 --> ( 难度等级: [0.0811, 0.082) || 挂载数据: 无 ) +│ │ │ ├── 为Box类添加方法 --> ( 难度等级: [0.0811, 0.0814) || 挂载数据: 无 ) +│ │ │ ├── 返回值 --> ( 难度等级: [0.0814, 0.0817) || 挂载数据: qa: 2 ) +│ │ │ └── 添加带参数的方法 --> ( 难度等级: [0.0817, 0.082) || 挂载数据: 无 ) +│ │ ├── 构造函数 --> ( 难度等级: [0.082, 0.083) || 挂载数据: qa: 1 ) +│ │ ├── this关键字 --> ( 难度等级: [0.083, 0.084) || 挂载数据: qa: 3 ) +│ │ │ ├── 在构造器中调用构造器 --> ( 难度等级: [0.083, 0.0835) || 挂载数据: 无 ) +│ │ │ └── static的含义 --> ( 难度等级: [0.0835, 0.084) || 挂载数据: qa: 2 ) +│ │ ├── 垃圾回收 --> ( 难度等级: [0.084, 0.085) || 挂载数据: qa: 1 ) +│ │ ├── finalize方法 --> ( 难度等级: [0.085, 0.0859) || 挂载数据: 无 ) +│ │ ├── 堆栈类 --> ( 难度等级: [0.0859, 0.0869) || 挂载数据: qa: 2 ) +│ │ ├── 基本成员默认值 --> ( 难度等级: [0.0869, 0.0879) || 挂载数据: 无 ) +│ │ ├── 成员变量 --> ( 难度等级: [0.0879, 0.0889) || 挂载数据: qa: 2 ) +│ │ ├── 成员方法 --> ( 难度等级: [0.0889, 0.0898) || 挂载数据: qa: 1 ) +│ │ ├── 权限修饰符 --> ( 难度等级: [0.0898, 0.0908) || 挂载数据: qa: 1 ) +│ │ ├── 操作对象的Objects工具类 --> ( 难度等级: [0.0908, 0.0918) || 挂载数据: qa: 1 ) +│ │ ├── ThreadLocalRandom与Random --> ( 难度等级: [0.0918, 0.0928) || 挂载数据: 无 ) +│ │ └── BigDecimal类 --> ( 难度等级: [0.0928, 0.0938) || 挂载数据: 无 ) +│ ├── 方法和类的深入分析 --> ( 难度等级: [0.0938, 0.1094) || 挂载数据: 无 ) +│ │ ├── 重载方法 --> ( 难度等级: [0.0938, 0.095) || 挂载数据: 无 ) +│ │ │ ├── 区分重载方法 --> ( 难度等级: [0.0938, 0.0942) || 挂载数据: qa: 7 ) +│ │ │ ├── 涉及基本类型的重载 --> ( 难度等级: [0.0942, 0.0946) || 挂载数据: 无 ) +│ │ │ └── 以返回值区分重载方法 --> ( 难度等级: [0.0946, 0.095) || 挂载数据: qa: 1 ) +│ │ ├── 将对象用作参数 --> ( 难度等级: [0.095, 0.0962) || 挂载数据: 无 ) +│ │ ├── 参数传递的深入分析 --> ( 难度等级: [0.0962, 0.0974) || 挂载数据: 无 ) +│ │ ├── 返回对象 --> ( 难度等级: [0.0974, 0.0986) || 挂载数据: 无 ) +│ │ ├── 递归 --> ( 难度等级: [0.0986, 0.0998) || 挂载数据: qa: 4 ) +│ │ ├── 访问控制 --> ( 难度等级: [0.0998, 0.101) || 挂载数据: 无 ) +│ │ │ └── Java类包 --> ( 难度等级: [0.0998, 0.101) || 挂载数据: 无 ) +│ │ │ ├── 类名冲突 --> ( 难度等级: [0.0998, 0.1002) || 挂载数据: 无 ) +│ │ │ ├── 完整的类路径 --> ( 难度等级: [0.1002, 0.1006) || 挂载数据: 无 ) +│ │ │ └── 创建包 --> ( 难度等级: [0.1006, 0.101) || 挂载数据: qa: 1 ) +│ │ ├── 理解static --> ( 难度等级: [0.101, 0.1022) || 挂载数据: qa: 1 ) +│ │ ├── final介绍 --> ( 难度等级: [0.1022, 0.1034) || 挂载数据: 无 ) +│ │ ├── 重新审视数组 --> ( 难度等级: [0.1034, 0.1046) || 挂载数据: 无 ) +│ │ ├── 嵌套类和内部类 --> ( 难度等级: [0.1046, 0.1058) || 挂载数据: 无 ) +│ │ │ ├── 成员内部类 --> ( 难度等级: [0.1046, 0.1046) || 挂载数据: qa: 1 ) +│ │ │ ├── 局部内部类 --> ( 难度等级: [0.1046, 0.1047) || 挂载数据: qa: 1 ) +│ │ │ ├── 静态内部类 --> ( 难度等级: [0.1047, 0.1048) || 挂载数据: qa: 1 ) +│ │ │ ├── 匿名内部类 --> ( 难度等级: [0.1048, 0.1049) || 挂载数据: qa: 7 ) +│ │ │ │ └── 再访工厂方法 --> ( 难度等级: [0.1048, 0.1049) || 挂载数据: 无 ) +│ │ │ ├── 创建内部类 --> ( 难度等级: [0.1049, 0.1049) || 挂载数据: qa: 2 ) +│ │ │ ├── 链接到外部类 --> ( 难度等级: [0.1049, 0.105) || 挂载数据: qa: 3 ) +│ │ │ ├── 使用.this与.new --> ( 难度等级: [0.105, 0.1051) || 挂载数据: qa: 10 ) +│ │ │ ├── 接口内部的类 --> ( 难度等级: [0.1051, 0.1051) || 挂载数据: qa: 2 ) +│ │ │ ├── 从多层嵌套类中访问外部类的成员 --> ( 难度等级: [0.1051, 0.1052) || 挂载数据: 无 ) +│ │ │ ├── 内部类的继承 --> ( 难度等级: [0.1052, 0.1053) || 挂载数据: qa: 2 ) +│ │ │ ├── 内部类可以被覆盖吗 --> ( 难度等级: [0.1053, 0.1053) || 挂载数据: qa: 6 ) +│ │ │ ├── 内部类标识符 --> ( 难度等级: [0.1053, 0.1054) || 挂载数据: 无 ) +│ │ │ ├── 非静态内部类 --> ( 难度等级: [0.1054, 0.1055) || 挂载数据: 无 ) +│ │ │ ├── 使用内部类访问对象状态 --> ( 难度等级: [0.1055, 0.1056) || 挂载数据: qa: 2 ) +│ │ │ ├── 内部类的特殊语法规则 --> ( 难度等级: [0.1056, 0.1056) || 挂载数据: 无 ) +│ │ │ ├── 内部类是否有用、必要和 --> ( 难度等级: [0.1056, 0.1057) || 挂载数据: 无 ) +│ │ │ └── 由外部方法访问变量 --> ( 难度等级: [0.1057, 0.1058) || 挂载数据: qa: 1 ) +│ │ ├── String类介绍 --> ( 难度等级: [0.1058, 0.107) || 挂载数据: 无 ) +│ │ ├── 使用命令行参数 --> ( 难度等级: [0.107, 0.1082) || 挂载数据: 无 ) +│ │ └── varargs:可变长度参数 --> ( 难度等级: [0.1082, 0.1094) || 挂载数据: 无 ) +│ │ ├── 重载varargs方法 --> ( 难度等级: [0.1082, 0.1088) || 挂载数据: 无 ) +│ │ └── varargs方法与模糊性 --> ( 难度等级: [0.1088, 0.1094) || 挂载数据: 无 ) +│ ├── 继承 --> ( 难度等级: [0.1094, 0.125) || 挂载数据: qa: 7 ) +│ │ ├── 继承的基础知识 --> ( 难度等级: [0.1094, 0.1105) || 挂载数据: 无 ) +│ │ │ ├── 成员访问与继承 --> ( 难度等级: [0.1094, 0.1097) || 挂载数据: 无 ) +│ │ │ ├── 一个更实际的例子 --> ( 难度等级: [0.1097, 0.1101) || 挂载数据: 无 ) +│ │ │ └── 超类变量可以引用子类对象 --> ( 难度等级: [0.1101, 0.1105) || 挂载数据: 无 ) +│ │ ├── 使用super关键字 --> ( 难度等级: [0.1105, 0.1116) || 挂载数据: 无 ) +│ │ │ ├── 使用super调用超类的构造函数 --> ( 难度等级: [0.1105, 0.111) || 挂载数据: qa: 5 ) +│ │ │ └── super的另一种用法 --> ( 难度等级: [0.111, 0.1116) || 挂载数据: qa: 10 ) +│ │ ├── 创建多级继承层次 --> ( 难度等级: [0.1116, 0.1127) || 挂载数据: 无 ) +│ │ ├── 构造函数的调用时机 --> ( 难度等级: [0.1127, 0.1138) || 挂载数据: 无 ) +│ │ ├── 方法重写 --> ( 难度等级: [0.1138, 0.115) || 挂载数据: 无 ) +│ │ ├── 动态方法调度 --> ( 难度等级: [0.115, 0.1161) || 挂载数据: 无 ) +│ │ │ ├── 重写方法的目的 --> ( 难度等级: [0.115, 0.1155) || 挂载数据: qa: 1 ) +│ │ │ └── 应用方法重写 --> ( 难度等级: [0.1155, 0.1161) || 挂载数据: qa: 3 ) +│ │ ├── 使用抽象类 --> ( 难度等级: [0.1161, 0.1172) || 挂载数据: qa: 1 ) +│ │ │ └── 抽象类的作用 --> ( 难度等级: [0.1161, 0.1172) || 挂载数据: qa: 10 ) +│ │ ├── 在继承中使用final关键字 --> ( 难度等级: [0.1172, 0.1183) || 挂载数据: 无 ) +│ │ │ ├── 使用final关键字阻止重写 --> ( 难度等级: [0.1172, 0.1177) || 挂载数据: 无 ) +│ │ │ └── 使用final关键字阻止继承 --> ( 难度等级: [0.1177, 0.1183) || 挂载数据: 无 ) +│ │ ├── Object类 --> ( 难度等级: [0.1183, 0.1194) || 挂载数据: 无 ) +│ │ ├── “是一个”(is-a)与“像是一个”(is-like-a)关系 --> ( 难度等级: [0.1194, 0.1205) || 挂载数据: qa: 8 ) +│ │ ├── Object:所有类的超类 --> ( 难度等级: [0.1205, 0.1217) || 挂载数据: qa: 1 ) +│ │ │ ├── Object类型的变量 --> ( 难度等级: [0.1205, 0.1211) || 挂载数据: qa: 10 ) +│ │ │ └── hashCode方法 --> ( 难度等级: [0.1211, 0.1217) || 挂载数据: qa: 4 ) +│ │ ├── 泛型数组列表 --> ( 难度等级: [0.1217, 0.1228) || 挂载数据: 无 ) +│ │ │ ├── 声明数组列表 --> ( 难度等级: [0.1217, 0.122) || 挂载数据: 无 ) +│ │ │ ├── 访问数组列表元素 --> ( 难度等级: [0.122, 0.1224) || 挂载数据: 无 ) +│ │ │ └── 类型化与原始数组列表的 --> ( 难度等级: [0.1224, 0.1228) || 挂载数据: 无 ) +│ │ ├── 参数数量可变的方法 --> ( 难度等级: [0.1228, 0.1239) || 挂载数据: 无 ) +│ │ └── 继承的设计技巧 --> ( 难度等级: [0.1239, 0.125) || 挂载数据: 无 ) +│ ├── 包和接口 --> ( 难度等级: [0.125, 0.1406) || 挂载数据: 无 ) +│ │ ├── 包 --> ( 难度等级: [0.125, 0.1272) || 挂载数据: 无 ) +│ │ │ ├── 定义包 --> ( 难度等级: [0.125, 0.1252) || 挂载数据: 无 ) +│ │ │ ├── 包查找与CLASSPATH --> ( 难度等级: [0.1252, 0.1253) || 挂载数据: qa: 1 ) +│ │ │ ├── 一个简短的包示例 --> ( 难度等级: [0.1253, 0.1255) || 挂载数据: 无 ) +│ │ │ ├── 代码组织 --> ( 难度等级: [0.1255, 0.1256) || 挂载数据: 无 ) +│ │ │ ├── 创建独一无二的包名 --> ( 难度等级: [0.1256, 0.1258) || 挂载数据: 无 ) +│ │ │ ├── 定制工具库 --> ( 难度等级: [0.1258, 0.126) || 挂载数据: 无 ) +│ │ │ ├── 用import改变行为 --> ( 难度等级: [0.126, 0.1261) || 挂载数据: qa: 7 ) +│ │ │ ├── 对使用包的忠告 --> ( 难度等级: [0.1261, 0.1263) || 挂载数据: 无 ) +│ │ │ ├── 包名 --> ( 难度等级: [0.1263, 0.1264) || 挂载数据: 无 ) +│ │ │ ├── 类的导入 --> ( 难度等级: [0.1264, 0.1266) || 挂载数据: qa: 5 ) +│ │ │ ├── 在包中增加类 --> ( 难度等级: [0.1266, 0.1268) || 挂载数据: 无 ) +│ │ │ ├── 包访问 --> ( 难度等级: [0.1268, 0.1269) || 挂载数据: qa: 8 ) +│ │ │ ├── 类路径 --> ( 难度等级: [0.1269, 0.1271) || 挂载数据: qa: 3 ) +│ │ │ └── 设置类路径 --> ( 难度等级: [0.1271, 0.1272) || 挂载数据: qa: 1 ) +│ │ ├── 访问保护 --> ( 难度等级: [0.1272, 0.1295) || 挂载数据: 无 ) +│ │ ├── 导入包 --> ( 难度等级: [0.1295, 0.1317) || 挂载数据: qa: 5 ) +│ │ ├── 接口 --> ( 难度等级: [0.1317, 0.1339) || 挂载数据: qa: 1 ) +│ │ │ ├── 定义接口 --> ( 难度等级: [0.1317, 0.1318) || 挂载数据: qa: 6 ) +│ │ │ ├── 实现接口 --> ( 难度等级: [0.1318, 0.132) || 挂载数据: qa: 10 ) +│ │ │ ├── 嵌套接口 --> ( 难度等级: [0.132, 0.1321) || 挂载数据: qa: 3 ) +│ │ │ ├── 应用接口 --> ( 难度等级: [0.1321, 0.1322) || 挂载数据: 无 ) +│ │ │ ├── 接口中的变量 --> ( 难度等级: [0.1322, 0.1324) || 挂载数据: 无 ) +│ │ │ ├── 接口可以扩展 --> ( 难度等级: [0.1324, 0.1325) || 挂载数据: 无 ) +│ │ │ ├── 完全解耦 --> ( 难度等级: [0.1325, 0.1326) || 挂载数据: qa: 6 ) +│ │ │ ├── Java中的“多重继承” --> ( 难度等级: [0.1326, 0.1327) || 挂载数据: 无 ) +│ │ │ ├── 通过继承来扩展接口 --> ( 难度等级: [0.1327, 0.1329) || 挂载数据: 无 ) +│ │ │ │ └── 组合接口时的名字冲突 --> ( 难度等级: [0.1327, 0.1329) || 挂载数据: qa: 2 ) +│ │ │ ├── 适配接口 --> ( 难度等级: [0.1329, 0.133) || 挂载数据: qa: 1 ) +│ │ │ ├── 接口中的域 --> ( 难度等级: [0.133, 0.1331) || 挂载数据: 无 ) +│ │ │ │ └── 初始化接口中的域 --> ( 难度等级: [0.133, 0.1331) || 挂载数据: qa: 10 ) +│ │ │ ├── 接口的属性 --> ( 难度等级: [0.1331, 0.1333) || 挂载数据: 无 ) +│ │ │ ├── 静态和私有方法 --> ( 难度等级: [0.1333, 0.1334) || 挂载数据: 无 ) +│ │ │ ├── 默认方法 --> ( 难度等级: [0.1334, 0.1335) || 挂载数据: 无 ) +│ │ │ ├── 解决默认方法冲突 --> ( 难度等级: [0.1335, 0.1337) || 挂载数据: 无 ) +│ │ │ ├── Comparator接口 --> ( 难度等级: [0.1337, 0.1338) || 挂载数据: 无 ) +│ │ │ └── 对象克隆 --> ( 难度等级: [0.1338, 0.1339) || 挂载数据: 无 ) +│ │ ├── 默认接口方法 --> ( 难度等级: [0.1339, 0.1362) || 挂载数据: 无 ) +│ │ │ ├── 默认方法的基础知识 --> ( 难度等级: [0.1339, 0.135) || 挂载数据: 无 ) +│ │ │ └── 一个更加实用的例子 --> ( 难度等级: [0.135, 0.1362) || 挂载数据: 无 ) +│ │ ├── 在接口中使用静态方法 --> ( 难度等级: [0.1362, 0.1384) || 挂载数据: 无 ) +│ │ └── 关于包和接口的最后说明 --> ( 难度等级: [0.1384, 0.1406) || 挂载数据: 无 ) +│ ├── 异常处理 --> ( 难度等级: [0.1406, 0.1562) || 挂载数据: qa: 1 ) +│ │ ├── 异常处理的基础知识 --> ( 难度等级: [0.1406, 0.1411) || 挂载数据: 无 ) +│ │ ├── 异常类型 --> ( 难度等级: [0.1411, 0.1416) || 挂载数据: qa: 1 ) +│ │ ├── 未捕获的异常 --> ( 难度等级: [0.1416, 0.1421) || 挂载数据: 无 ) +│ │ ├── 使用try和catch --> ( 难度等级: [0.1421, 0.1426) || 挂载数据: qa: 1 ) +│ │ ├── 多条catch子句 --> ( 难度等级: [0.1426, 0.1431) || 挂载数据: 无 ) +│ │ ├── 嵌套的try语句 --> ( 难度等级: [0.1431, 0.1436) || 挂载数据: 无 ) +│ │ ├── throw --> ( 难度等级: [0.1436, 0.144) || 挂载数据: 无 ) +│ │ ├── throws --> ( 难度等级: [0.144, 0.1445) || 挂载数据: qa: 1 ) +│ │ ├── finally --> ( 难度等级: [0.1445, 0.145) || 挂载数据: 无 ) +│ │ ├── Java的内置异常 --> ( 难度等级: [0.145, 0.1455) || 挂载数据: 无 ) +│ │ ├── 创建自己的异常子类 --> ( 难度等级: [0.1455, 0.146) || 挂载数据: 无 ) +│ │ ├── 链式异常 --> ( 难度等级: [0.146, 0.1465) || 挂载数据: 无 ) +│ │ ├── 3个近期添加的异常特性 --> ( 难度等级: [0.1465, 0.147) || 挂载数据: 无 ) +│ │ ├── 使用异常 --> ( 难度等级: [0.147, 0.1475) || 挂载数据: qa: 1 ) +│ │ │ ├── 异常的类型 --> ( 难度等级: [0.147, 0.1471) || 挂载数据: qa: 8 ) +│ │ │ ├── throws关键字 --> ( 难度等级: [0.1471, 0.1472) || 挂载数据: 无 ) +│ │ │ ├── throw关键字 --> ( 难度等级: [0.1472, 0.1473) || 挂载数据: 无 ) +│ │ │ ├── 自定义异常 --> ( 难度等级: [0.1473, 0.1474) || 挂载数据: 无 ) +│ │ │ └── 异常参数 --> ( 难度等级: [0.1474, 0.1475) || 挂载数据: 无 ) +│ │ ├── 异常概述 --> ( 难度等级: [0.1475, 0.1479) || 挂载数据: 无 ) +│ │ ├── 捕捉处理异常 --> ( 难度等级: [0.1479, 0.1484) || 挂载数据: 无 ) +│ │ │ └── try-catch代码块 --> ( 难度等级: [0.1479, 0.1484) || 挂载数据: 无 ) +│ │ ├── 在方法中抛出异常 --> ( 难度等级: [0.1484, 0.1489) || 挂载数据: 无 ) +│ │ │ ├── 使用throws关键字抛出异常 --> ( 难度等级: [0.1484, 0.1487) || 挂载数据: qa: 2 ) +│ │ │ └── 使用throw关键字抛出异常 --> ( 难度等级: [0.1487, 0.1489) || 挂载数据: 无 ) +│ │ ├── 处理程序异常错误 --> ( 难度等级: [0.1489, 0.1494) || 挂载数据: 无 ) +│ │ │ └── 错误 --> ( 难度等级: [0.1489, 0.1494) || 挂载数据: 无 ) +│ │ ├── Java常见异常 --> ( 难度等级: [0.1494, 0.1499) || 挂载数据: 无 ) +│ │ ├── 运行时异常 --> ( 难度等级: [0.1499, 0.1504) || 挂载数据: 无 ) +│ │ ├── 异常处理机制 --> ( 难度等级: [0.1504, 0.1509) || 挂载数据: 无 ) +│ │ │ ├── 使用try...catch捕获异常 --> ( 难度等级: [0.1504, 0.1505) || 挂载数据: qa: 1 ) +│ │ │ ├── 异常类的继承体系 --> ( 难度等级: [0.1505, 0.1505) || 挂载数据: 无 ) +│ │ │ ├── 多异常捕获 --> ( 难度等级: [0.1505, 0.1506) || 挂载数据: qa: 1 ) +│ │ │ ├── 访问异常信息 --> ( 难度等级: [0.1506, 0.1507) || 挂载数据: qa: 3 ) +│ │ │ ├── 使用finally回收资源 --> ( 难度等级: [0.1507, 0.1507) || 挂载数据: 无 ) +│ │ │ ├── 异常处理的嵌套 --> ( 难度等级: [0.1507, 0.1508) || 挂载数据: qa: 6 ) +│ │ │ └── Java 9增强的自动关闭资源的try语句 --> ( 难度等级: [0.1508, 0.1509) || 挂载数据: 无 ) +│ │ ├── Checked异常和Runtime异常体系 --> ( 难度等级: [0.1509, 0.1514) || 挂载数据: 无 ) +│ │ │ ├── 使用throws声明抛出异常 --> ( 难度等级: [0.1509, 0.1511) || 挂载数据: 无 ) +│ │ │ └── 方法重写时声明抛出异常的限制 --> ( 难度等级: [0.1511, 0.1514) || 挂载数据: 无 ) +│ │ ├── 使用throw抛出异常 --> ( 难度等级: [0.1514, 0.1519) || 挂载数据: 无 ) +│ │ │ ├── 自定义异常类 --> ( 难度等级: [0.1514, 0.1516) || 挂载数据: qa: 4 ) +│ │ │ └── 使用throw语句抛出异常 --> ( 难度等级: [0.1516, 0.1519) || 挂载数据: qa: 4 ) +│ │ ├── Java的异常跟踪栈 --> ( 难度等级: [0.1519, 0.1523) || 挂载数据: 无 ) +│ │ ├── 异常处理规则 --> ( 难度等级: [0.1523, 0.1528) || 挂载数据: 无 ) +│ │ │ ├── 不要过度使用异常 --> ( 难度等级: [0.1523, 0.1525) || 挂载数据: 无 ) +│ │ │ ├── 不要使用过于庞大的try块 --> ( 难度等级: [0.1525, 0.1526) || 挂载数据: 无 ) +│ │ │ ├── 避免使用Catch All语句 --> ( 难度等级: [0.1526, 0.1527) || 挂载数据: qa: 1 ) +│ │ │ └── 不要忽略捕获到的异常 --> ( 难度等级: [0.1527, 0.1528) || 挂载数据: 无 ) +│ │ ├── Java的异常 --> ( 难度等级: [0.1528, 0.1533) || 挂载数据: 无 ) +│ │ ├── NullPointerException --> ( 难度等级: [0.1533, 0.1538) || 挂载数据: qa: 6 ) +│ │ ├── 使用断言 --> ( 难度等级: [0.1538, 0.1543) || 挂载数据: 无 ) +│ │ ├── 使用JDK Logging --> ( 难度等级: [0.1543, 0.1548) || 挂载数据: 无 ) +│ │ ├── 使用Commons Logging --> ( 难度等级: [0.1548, 0.1553) || 挂载数据: qa: 1 ) +│ │ ├── 使用Log4j --> ( 难度等级: [0.1553, 0.1558) || 挂载数据: qa: 4 ) +│ │ └── 使用SLF4J和Logback --> ( 难度等级: [0.1558, 0.1562) || 挂载数据: qa: 2 ) +│ ├── 多线程编程 --> ( 难度等级: [0.1562, 0.1719) || 挂载数据: 无 ) +│ │ ├── Java线程模型 --> ( 难度等级: [0.1562, 0.1577) || 挂载数据: 无 ) +│ │ │ ├── 线程优先级 --> ( 难度等级: [0.1562, 0.1566) || 挂载数据: 无 ) +│ │ │ ├── 同步 --> ( 难度等级: [0.1566, 0.157) || 挂载数据: 无 ) +│ │ │ ├── 消息传递 --> ( 难度等级: [0.157, 0.1573) || 挂载数据: 无 ) +│ │ │ └── Thread类和Runnable接口 --> ( 难度等级: [0.1573, 0.1577) || 挂载数据: 无 ) +│ │ ├── 主线程 --> ( 难度等级: [0.1577, 0.1591) || 挂载数据: 无 ) +│ │ ├── 创建线程 --> ( 难度等级: [0.1591, 0.1605) || 挂载数据: 无 ) +│ │ │ ├── 实现Runnable接口 --> ( 难度等级: [0.1591, 0.1593) || 挂载数据: 无 ) +│ │ │ ├── 扩展Thread类 --> ( 难度等级: [0.1593, 0.1594) || 挂载数据: 无 ) +│ │ │ ├── 选择一种创建方式 --> ( 难度等级: [0.1594, 0.1596) || 挂载数据: qa: 2 ) +│ │ │ ├── Thread类实现多线程 --> ( 难度等级: [0.1596, 0.1598) || 挂载数据: 无 ) +│ │ │ ├── Runnable接口实现多线程 --> ( 难度等级: [0.1598, 0.16) || 挂载数据: 无 ) +│ │ │ ├── Callable接口实现多线程 --> ( 难度等级: [0.16, 0.1602) || 挂载数据: 无 ) +│ │ │ ├── 三种实现多线程方式的对比分析 --> ( 难度等级: [0.1602, 0.1603) || 挂载数据: 无 ) +│ │ │ └── 后台线程 --> ( 难度等级: [0.1603, 0.1605) || 挂载数据: qa: 2 ) +│ │ ├── 创建多个线程 --> ( 难度等级: [0.1605, 0.1619) || 挂载数据: 无 ) +│ │ ├── 使用isAlive和join方法 --> ( 难度等级: [0.1619, 0.1634) || 挂载数据: 无 ) +│ │ ├── 线程优先级 --> ( 难度等级: [0.1634, 0.1648) || 挂载数据: 无 ) +│ │ ├── 同步 --> ( 难度等级: [0.1648, 0.1662) || 挂载数据: 无 ) +│ │ │ ├── 使用同步方法 --> ( 难度等级: [0.1648, 0.1649) || 挂载数据: qa: 1 ) +│ │ │ ├── synchronized语句 --> ( 难度等级: [0.1649, 0.1651) || 挂载数据: 无 ) +│ │ │ ├── 竞态条件的一个例子 --> ( 难度等级: [0.1651, 0.1652) || 挂载数据: 无 ) +│ │ │ ├── 竞态条件详解 --> ( 难度等级: [0.1652, 0.1653) || 挂载数据: 无 ) +│ │ │ ├── 锁对象 --> ( 难度等级: [0.1653, 0.1655) || 挂载数据: qa: 2 ) +│ │ │ ├── 条件对象 --> ( 难度等级: [0.1655, 0.1656) || 挂载数据: 无 ) +│ │ │ ├── synchronized关键字 --> ( 难度等级: [0.1656, 0.1658) || 挂载数据: qa: 10 ) +│ │ │ ├── 监视器概念 --> ( 难度等级: [0.1658, 0.1659) || 挂载数据: 无 ) +│ │ │ ├── volatile字段 --> ( 难度等级: [0.1659, 0.1661) || 挂载数据: 无 ) +│ │ │ └── 线程局部变量 --> ( 难度等级: [0.1661, 0.1662) || 挂载数据: 无 ) +│ │ ├── 线程间通信 --> ( 难度等级: [0.1662, 0.1676) || 挂载数据: 无 ) +│ │ ├── 挂起、恢复与停止线程 --> ( 难度等级: [0.1676, 0.169) || 挂载数据: qa: 1 ) +│ │ ├── 获取线程的状态 --> ( 难度等级: [0.169, 0.1705) || 挂载数据: 无 ) +│ │ └── 使用多线程 --> ( 难度等级: [0.1705, 0.1719) || 挂载数据: 无 ) +│ │ ├── 线程概述 --> ( 难度等级: [0.1705, 0.1706) || 挂载数据: 无 ) +│ │ │ ├── 进程 --> ( 难度等级: [0.1705, 0.1705) || 挂载数据: 无 ) +│ │ │ │ ├── 建立一个进程 --> ( 难度等级: [0.1705, 0.1705) || 挂载数据: qa: 8 ) +│ │ │ │ ├── 运行一个进程 --> ( 难度等级: [0.1705, 0.1705) || 挂载数据: qa: 6 ) +│ │ │ │ └── 进程句柄 --> ( 难度等级: [0.1705, 0.1705) || 挂载数据: 无 ) +│ │ │ ├── 线程 --> ( 难度等级: [0.1705, 0.1705) || 挂载数据: qa: 10 ) +│ │ │ └── 多线程的优势 --> ( 难度等级: [0.1705, 0.1706) || 挂载数据: 无 ) +│ │ ├── 线程的生命周期及状态转换 --> ( 难度等级: [0.1706, 0.1707) || 挂载数据: 无 ) +│ │ │ ├── 新建和就绪状态 --> ( 难度等级: [0.1706, 0.1706) || 挂载数据: qa: 4 ) +│ │ │ ├── 运行和阻塞状态 --> ( 难度等级: [0.1706, 0.1706) || 挂载数据: 无 ) +│ │ │ └── 线程死亡 --> ( 难度等级: [0.1706, 0.1707) || 挂载数据: 无 ) +│ │ ├── 线程的调度 --> ( 难度等级: [0.1707, 0.1708) || 挂载数据: 无 ) +│ │ │ ├── 线程休眠 --> ( 难度等级: [0.1707, 0.1707) || 挂载数据: qa: 1 ) +│ │ │ ├── 线程让步 --> ( 难度等级: [0.1707, 0.1707) || 挂载数据: 无 ) +│ │ │ └── 线程插队 --> ( 难度等级: [0.1707, 0.1708) || 挂载数据: 无 ) +│ │ ├── 多线程同步 --> ( 难度等级: [0.1708, 0.1709) || 挂载数据: qa: 3 ) +│ │ │ ├── 同步代码块 --> ( 难度等级: [0.1708, 0.1708) || 挂载数据: qa: 8 ) +│ │ │ └── 同步锁 --> ( 难度等级: [0.1708, 0.1709) || 挂载数据: qa: 1 ) +│ │ ├── 多线程通信 --> ( 难度等级: [0.1709, 0.171) || 挂载数据: 无 ) +│ │ ├── 线程池 --> ( 难度等级: [0.171, 0.1711) || 挂载数据: qa: 1 ) +│ │ │ ├── Executor接口实现线程池管理 --> ( 难度等级: [0.171, 0.171) || 挂载数据: 无 ) +│ │ │ ├── CompletableFuture类实现线程池管理 --> ( 难度等级: [0.171, 0.171) || 挂载数据: 无 ) +│ │ │ ├── 使用线程池管理线程 --> ( 难度等级: [0.171, 0.171) || 挂载数据: 无 ) +│ │ │ └── 使用ForkJoinPool利用多CPU --> ( 难度等级: [0.171, 0.1711) || 挂载数据: qa: 10 ) +│ │ ├── 线程简介 --> ( 难度等级: [0.1711, 0.1712) || 挂载数据: 无 ) +│ │ ├── 实现线程的两种方式 --> ( 难度等级: [0.1712, 0.1713) || 挂载数据: 无 ) +│ │ │ └── 继承Thread类 --> ( 难度等级: [0.1712, 0.1713) || 挂载数据: qa: 1 ) +│ │ ├── 操作线程的方法 --> ( 难度等级: [0.1713, 0.1714) || 挂载数据: 无 ) +│ │ │ ├── 线程的中断 --> ( 难度等级: [0.1713, 0.1713) || 挂载数据: qa: 1 ) +│ │ │ └── 线程的礼让 --> ( 难度等级: [0.1713, 0.1714) || 挂载数据: 无 ) +│ │ ├── 线程的同步 --> ( 难度等级: [0.1714, 0.1715) || 挂载数据: qa: 3 ) +│ │ │ ├── 线程同步机制 --> ( 难度等级: [0.1714, 0.1714) || 挂载数据: qa: 5 ) +│ │ │ ├── 释放同步监视器的锁定 --> ( 难度等级: [0.1714, 0.1714) || 挂载数据: 无 ) +│ │ │ └── 同步锁(Lock) --> ( 难度等级: [0.1714, 0.1715) || 挂载数据: qa: 2 ) +│ │ ├── 控制线程 --> ( 难度等级: [0.1715, 0.1716) || 挂载数据: qa: 1 ) +│ │ │ ├── join线程 --> ( 难度等级: [0.1715, 0.1715) || 挂载数据: 无 ) +│ │ │ ├── 线程睡眠:sleep --> ( 难度等级: [0.1715, 0.1715) || 挂载数据: qa: 5 ) +│ │ │ └── 改变线程优先级 --> ( 难度等级: [0.1715, 0.1716) || 挂载数据: 无 ) +│ │ ├── 线程通信 --> ( 难度等级: [0.1716, 0.1717) || 挂载数据: 无 ) +│ │ │ ├── 传统的线程通信 --> ( 难度等级: [0.1716, 0.1716) || 挂载数据: 无 ) +│ │ │ ├── 使用Condition控制线程通信 --> ( 难度等级: [0.1716, 0.1716) || 挂载数据: 无 ) +│ │ │ └── 使用阻塞队列(BlockingQueue)控制线程通信 --> ( 难度等级: [0.1716, 0.1717) || 挂载数据: 无 ) +│ │ ├── 线程组和未处理的异常 --> ( 难度等级: [0.1717, 0.1718) || 挂载数据: 无 ) +│ │ └── 线程相关类 --> ( 难度等级: [0.1718, 0.1719) || 挂载数据: 无 ) +│ │ ├── ThreadLocal类 --> ( 难度等级: [0.1718, 0.1718) || 挂载数据: qa: 2 ) +│ │ ├── 包装线程不安全的集合 --> ( 难度等级: [0.1718, 0.1718) || 挂载数据: qa: 1 ) +│ │ ├── 线程安全的集合类 --> ( 难度等级: [0.1718, 0.1718) || 挂载数据: qa: 1 ) +│ │ └── Java 9新增的发布-订阅框架 --> ( 难度等级: [0.1718, 0.1719) || 挂载数据: 无 ) +│ ├── 枚举、自动装箱与注解(元数据) --> ( 难度等级: [0.1719, 0.1875) || 挂载数据: 无 ) +│ │ ├── 枚举 --> ( 难度等级: [0.1719, 0.1745) || 挂载数据: qa: 2 ) +│ │ │ ├── 枚举的基础知识 --> ( 难度等级: [0.1719, 0.1724) || 挂载数据: qa: 1 ) +│ │ │ ├── values和valueOf方法 --> ( 难度等级: [0.1724, 0.1729) || 挂载数据: qa: 1 ) +│ │ │ ├── Java枚举是类类型 --> ( 难度等级: [0.1729, 0.1734) || 挂载数据: 无 ) +│ │ │ ├── 枚举继承自Enum类 --> ( 难度等级: [0.1734, 0.174) || 挂载数据: 无 ) +│ │ │ └── 另一个枚举示例 --> ( 难度等级: [0.174, 0.1745) || 挂载数据: 无 ) +│ │ ├── 类型封装器 --> ( 难度等级: [0.1745, 0.1771) || 挂载数据: 无 ) +│ │ │ ├── Character封装器 --> ( 难度等级: [0.1745, 0.1753) || 挂载数据: 无 ) +│ │ │ ├── Boolean封装器 --> ( 难度等级: [0.1753, 0.1762) || 挂载数据: 无 ) +│ │ │ └── 数值类型封装器 --> ( 难度等级: [0.1762, 0.1771) || 挂载数据: 无 ) +│ │ ├── 自动装箱 --> ( 难度等级: [0.1771, 0.1797) || 挂载数据: 无 ) +│ │ │ ├── 自动装箱与方法 --> ( 难度等级: [0.1771, 0.1776) || 挂载数据: qa: 10 ) +│ │ │ ├── 表达式中发生的自动装箱/拆箱 --> ( 难度等级: [0.1776, 0.1781) || 挂载数据: 无 ) +│ │ │ ├── 布尔型和字符型数值的自动装箱/拆箱 --> ( 难度等级: [0.1781, 0.1786) || 挂载数据: 无 ) +│ │ │ ├── 自动装箱/拆箱有助于防止错误 --> ( 难度等级: [0.1786, 0.1792) || 挂载数据: qa: 2 ) +│ │ │ └── 一些警告 --> ( 难度等级: [0.1792, 0.1797) || 挂载数据: 无 ) +│ │ ├── 注解(元数据) --> ( 难度等级: [0.1797, 0.1823) || 挂载数据: 无 ) +│ │ │ ├── 注解的基础知识 --> ( 难度等级: [0.1797, 0.18) || 挂载数据: 无 ) +│ │ │ ├── 指定保留策略 --> ( 难度等级: [0.18, 0.1803) || 挂载数据: qa: 2 ) +│ │ │ ├── 在运行时使用反射获取注解 --> ( 难度等级: [0.1803, 0.1807) || 挂载数据: qa: 2 ) +│ │ │ ├── AnnotatedElement接口 --> ( 难度等级: [0.1807, 0.181) || 挂载数据: 无 ) +│ │ │ ├── 使用默认值 --> ( 难度等级: [0.181, 0.1813) || 挂载数据: 无 ) +│ │ │ ├── 标记注解 --> ( 难度等级: [0.1813, 0.1816) || 挂载数据: 无 ) +│ │ │ ├── 单成员注解 --> ( 难度等级: [0.1816, 0.182) || 挂载数据: 无 ) +│ │ │ └── 内置注解 --> ( 难度等级: [0.182, 0.1823) || 挂载数据: 无 ) +│ │ ├── 类型注解 --> ( 难度等级: [0.1823, 0.1849) || 挂载数据: 无 ) +│ │ └── 重复注解 --> ( 难度等级: [0.1849, 0.1875) || 挂载数据: qa: 2 ) +│ ├── I/O、applet以及其他主题 --> ( 难度等级: [0.1875, 0.2031) || 挂载数据: 无 ) +│ │ ├── I/O的基础知识 --> ( 难度等级: [0.1875, 0.1882) || 挂载数据: 无 ) +│ │ │ ├── 流 --> ( 难度等级: [0.1875, 0.1877) || 挂载数据: 无 ) +│ │ │ ├── 字节流和字符流 --> ( 难度等级: [0.1877, 0.188) || 挂载数据: 无 ) +│ │ │ │ ├── 字符流概述 --> ( 难度等级: [0.1877, 0.1878) || 挂载数据: qa: 7 ) +│ │ │ │ ├── 字符流操作文件 --> ( 难度等级: [0.1878, 0.1879) || 挂载数据: qa: 3 ) +│ │ │ │ └── 转换流 --> ( 难度等级: [0.1879, 0.188) || 挂载数据: qa: 7 ) +│ │ │ └── 预定义流 --> ( 难度等级: [0.188, 0.1882) || 挂载数据: 无 ) +│ │ ├── 读取控制台输入 --> ( 难度等级: [0.1882, 0.1889) || 挂载数据: 无 ) +│ │ │ ├── 读取字符 --> ( 难度等级: [0.1882, 0.1886) || 挂载数据: qa: 10 ) +│ │ │ └── 读取字符串 --> ( 难度等级: [0.1886, 0.1889) || 挂载数据: 无 ) +│ │ ├── 向控制台写输出 --> ( 难度等级: [0.1889, 0.1896) || 挂载数据: 无 ) +│ │ ├── PrintWriter类 --> ( 难度等级: [0.1896, 0.1903) || 挂载数据: 无 ) +│ │ ├── 读/写文件 --> ( 难度等级: [0.1903, 0.1911) || 挂载数据: qa: 1 ) +│ │ ├── 自动关闭文件 --> ( 难度等级: [0.1911, 0.1918) || 挂载数据: 无 ) +│ │ ├── applet的基础知识 --> ( 难度等级: [0.1918, 0.1925) || 挂载数据: 无 ) +│ │ ├── transient和volatile修饰符 --> ( 难度等级: [0.1925, 0.1932) || 挂载数据: 无 ) +│ │ ├── 使用instanceof运算符 --> ( 难度等级: [0.1932, 0.1939) || 挂载数据: 无 ) +│ │ ├── strictfp --> ( 难度等级: [0.1939, 0.1946) || 挂载数据: 无 ) +│ │ ├── 本地方法 --> ( 难度等级: [0.1946, 0.1953) || 挂载数据: qa: 3 ) +│ │ ├── 使用assert --> ( 难度等级: [0.1953, 0.196) || 挂载数据: 无 ) +│ │ ├── 静态导入 --> ( 难度等级: [0.196, 0.1967) || 挂载数据: 无 ) +│ │ ├── 通过this调用重载的构造函数 --> ( 难度等级: [0.1967, 0.1974) || 挂载数据: qa: 1 ) +│ │ ├── 紧凑API配置文件 --> ( 难度等级: [0.1974, 0.1982) || 挂载数据: 无 ) +│ │ ├── 转换数据 --> ( 难度等级: [0.1982, 0.1989) || 挂载数据: qa: 1 ) +│ │ ├── 获取基本类型 --> ( 难度等级: [0.1989, 0.1996) || 挂载数据: 无 ) +│ │ ├── 视图缓冲器 --> ( 难度等级: [0.1996, 0.2003) || 挂载数据: 无 ) +│ │ ├── 用缓冲器操纵数据 --> ( 难度等级: [0.2003, 0.201) || 挂载数据: 无 ) +│ │ ├── 缓冲器的细节 --> ( 难度等级: [0.201, 0.2017) || 挂载数据: 无 ) +│ │ ├── 内存映射文件 --> ( 难度等级: [0.2017, 0.2024) || 挂载数据: 无 ) +│ │ └── 文件加锁 --> ( 难度等级: [0.2024, 0.2031) || 挂载数据: 无 ) +│ ├── 泛型 --> ( 难度等级: [0.2031, 0.2188) || 挂载数据: qa: 5 ) +│ │ ├── 什么是泛型 --> ( 难度等级: [0.2031, 0.2035) || 挂载数据: qa: 1 ) +│ │ ├── 一个简单的泛型示例 --> ( 难度等级: [0.2035, 0.2039) || 挂载数据: 无 ) +│ │ │ ├── 泛型只使用引用类型 --> ( 难度等级: [0.2035, 0.2036) || 挂载数据: 无 ) +│ │ │ ├── 基于不同类型参数的泛型类型是不同的 --> ( 难度等级: [0.2036, 0.2038) || 挂载数据: qa: 3 ) +│ │ │ └── 泛型提升类型安全性的原理 --> ( 难度等级: [0.2038, 0.2039) || 挂载数据: 无 ) +│ │ ├── 带两个类型参数的泛型类 --> ( 难度等级: [0.2039, 0.2043) || 挂载数据: 无 ) +│ │ ├── 泛型类的一般形式 --> ( 难度等级: [0.2043, 0.2046) || 挂载数据: qa: 2 ) +│ │ ├── 有界类型 --> ( 难度等级: [0.2046, 0.205) || 挂载数据: 无 ) +│ │ ├── 使用通配符参数 --> ( 难度等级: [0.205, 0.2054) || 挂载数据: 无 ) +│ │ ├── 创建泛型方法 --> ( 难度等级: [0.2054, 0.2058) || 挂载数据: 无 ) +│ │ ├── 泛型接口 --> ( 难度等级: [0.2058, 0.2062) || 挂载数据: qa: 1 ) +│ │ ├── 原始类型与遗留代码 --> ( 难度等级: [0.2062, 0.2066) || 挂载数据: 无 ) +│ │ ├── 泛型类层次 --> ( 难度等级: [0.2066, 0.2069) || 挂载数据: qa: 1 ) +│ │ │ ├── 使用泛型超类 --> ( 难度等级: [0.2066, 0.2066) || 挂载数据: 无 ) +│ │ │ ├── 泛型子类 --> ( 难度等级: [0.2066, 0.2067) || 挂载数据: 无 ) +│ │ │ ├── 泛型层次中的运行时类型比较 --> ( 难度等级: [0.2067, 0.2068) || 挂载数据: 无 ) +│ │ │ ├── 强制转换 --> ( 难度等级: [0.2068, 0.2069) || 挂载数据: qa: 1 ) +│ │ │ └── 重写泛型类的方法 --> ( 难度等级: [0.2069, 0.2069) || 挂载数据: 无 ) +│ │ ├── 泛型的类型推断 --> ( 难度等级: [0.2069, 0.2073) || 挂载数据: 无 ) +│ │ ├── 擦除 --> ( 难度等级: [0.2073, 0.2077) || 挂载数据: 无 ) +│ │ ├── 模糊性错误 --> ( 难度等级: [0.2077, 0.2081) || 挂载数据: 无 ) +│ │ ├── 使用泛型的一些限制 --> ( 难度等级: [0.2081, 0.2085) || 挂载数据: qa: 6 ) +│ │ │ ├── 对静态成员的一些限制 --> ( 难度等级: [0.2081, 0.2082) || 挂载数据: qa: 1 ) +│ │ │ ├── 对泛型数组的一些限制 --> ( 难度等级: [0.2082, 0.2083) || 挂载数据: 无 ) +│ │ │ └── 对泛型异常的限制 --> ( 难度等级: [0.2083, 0.2085) || 挂载数据: qa: 1 ) +│ │ ├── 定义泛型类 --> ( 难度等级: [0.2085, 0.2088) || 挂载数据: 无 ) +│ │ ├── 泛型的用法 --> ( 难度等级: [0.2088, 0.2092) || 挂载数据: 无 ) +│ │ ├── 一个元组类库 --> ( 难度等级: [0.2092, 0.2096) || 挂载数据: 无 ) +│ │ ├── 一个栈类 --> ( 难度等级: [0.2096, 0.21) || 挂载数据: 无 ) +│ │ ├── RandomList --> ( 难度等级: [0.21, 0.2104) || 挂载数据: 无 ) +│ │ ├── 泛型方法 --> ( 难度等级: [0.2104, 0.2107) || 挂载数据: 无 ) +│ │ │ ├── 利用类型参数推断 --> ( 难度等级: [0.2104, 0.2104) || 挂载数据: 无 ) +│ │ │ ├── 可变参数与泛型方法 --> ( 难度等级: [0.2104, 0.2105) || 挂载数据: qa: 3 ) +│ │ │ ├── 用于Generator的泛型方法 --> ( 难度等级: [0.2105, 0.2105) || 挂载数据: 无 ) +│ │ │ ├── 一个通用的Generator --> ( 难度等级: [0.2105, 0.2105) || 挂载数据: 无 ) +│ │ │ ├── 简化元组的使用 --> ( 难度等级: [0.2105, 0.2106) || 挂载数据: 无 ) +│ │ │ ├── 一个Set实用工具 --> ( 难度等级: [0.2106, 0.2106) || 挂载数据: 无 ) +│ │ │ ├── 定义泛型方法 --> ( 难度等级: [0.2106, 0.2107) || 挂载数据: qa: 1 ) +│ │ │ ├── “菱形”语法与泛型构造器 --> ( 难度等级: [0.2107, 0.2107) || 挂载数据: 无 ) +│ │ │ └── 类型推断 --> ( 难度等级: [0.2107, 0.2107) || 挂载数据: 无 ) +│ │ ├── 构建复杂模型 --> ( 难度等级: [0.2107, 0.2111) || 挂载数据: 无 ) +│ │ ├── 擦除的神秘之处 --> ( 难度等级: [0.2111, 0.2115) || 挂载数据: 无 ) +│ │ │ ├── C++的方式 --> ( 难度等级: [0.2111, 0.2113) || 挂载数据: 无 ) +│ │ │ ├── 迁移的可兼容性 --> ( 难度等级: [0.2113, 0.2114) || 挂载数据: qa: 1 ) +│ │ │ └── 边界处的动作 --> ( 难度等级: [0.2114, 0.2115) || 挂载数据: qa: 1 ) +│ │ ├── 擦除的补偿 --> ( 难度等级: [0.2115, 0.2119) || 挂载数据: 无 ) +│ │ │ └── 泛型数组 --> ( 难度等级: [0.2115, 0.2119) || 挂载数据: qa: 1 ) +│ │ ├── 边界 --> ( 难度等级: [0.2119, 0.2123) || 挂载数据: 无 ) +│ │ ├── 通配符 --> ( 难度等级: [0.2123, 0.2127) || 挂载数据: 无 ) +│ │ │ ├── 编译器有多聪明? --> ( 难度等级: [0.2123, 0.2124) || 挂载数据: qa: 1 ) +│ │ │ ├── 抗变 --> ( 难度等级: [0.2124, 0.2125) || 挂载数据: 无 ) +│ │ │ ├── 无界通配符 --> ( 难度等级: [0.2125, 0.2126) || 挂载数据: 无 ) +│ │ │ └── 捕获转换 --> ( 难度等级: [0.2126, 0.2127) || 挂载数据: 无 ) +│ │ ├── 自限定的类型 --> ( 难度等级: [0.2127, 0.213) || 挂载数据: 无 ) +│ │ │ ├── 离奇的循环泛型 --> ( 难度等级: [0.2127, 0.2128) || 挂载数据: 无 ) +│ │ │ ├── 自限定 --> ( 难度等级: [0.2128, 0.2129) || 挂载数据: 无 ) +│ │ │ └── 参数协变 --> ( 难度等级: [0.2129, 0.213) || 挂载数据: 无 ) +│ │ ├── 动态类型安全 --> ( 难度等级: [0.213, 0.2134) || 挂载数据: 无 ) +│ │ ├── 混用 --> ( 难度等级: [0.2134, 0.2138) || 挂载数据: 无 ) +│ │ │ ├── C++中的混用 --> ( 难度等级: [0.2134, 0.2135) || 挂载数据: 无 ) +│ │ │ ├── 与接口混用 --> ( 难度等级: [0.2135, 0.2136) || 挂载数据: 无 ) +│ │ │ ├── 使用装饰器模式 --> ( 难度等级: [0.2136, 0.2137) || 挂载数据: 无 ) +│ │ │ └── 与动态代理混用 --> ( 难度等级: [0.2137, 0.2138) || 挂载数据: 无 ) +│ │ ├── 潜在类型机制 --> ( 难度等级: [0.2138, 0.2142) || 挂载数据: 无 ) +│ │ ├── 缺乏潜在类型机制的补偿 --> ( 难度等级: [0.2142, 0.2146) || 挂载数据: 无 ) +│ │ │ ├── 将一个方法应用于序列 --> ( 难度等级: [0.2142, 0.2143) || 挂载数据: 无 ) +│ │ │ ├── 当你并未碰巧拥有正确的接口时 --> ( 难度等级: [0.2143, 0.2144) || 挂载数据: 无 ) +│ │ │ └── 用适配器仿真潜在类型机制 --> ( 难度等级: [0.2144, 0.2146) || 挂载数据: 无 ) +│ │ ├── 将函数对象用作策略 --> ( 难度等级: [0.2146, 0.2149) || 挂载数据: 无 ) +│ │ ├── 泛型的常规用法 --> ( 难度等级: [0.2149, 0.2153) || 挂载数据: 无 ) +│ │ ├── 泛型的高级用法 --> ( 难度等级: [0.2153, 0.2157) || 挂载数据: 无 ) +│ │ ├── 泛型入门 --> ( 难度等级: [0.2157, 0.2161) || 挂载数据: 无 ) +│ │ │ ├── 编译时不检查类型的异常 --> ( 难度等级: [0.2157, 0.2159) || 挂载数据: 无 ) +│ │ │ └── Java 9增强的“菱形”语法 --> ( 难度等级: [0.2159, 0.2161) || 挂载数据: qa: 1 ) +│ │ ├── 从泛型类派生子类 --> ( 难度等级: [0.2161, 0.2165) || 挂载数据: 无 ) +│ │ ├── 并不存在泛型类 --> ( 难度等级: [0.2165, 0.2168) || 挂载数据: 无 ) +│ │ ├── 类型通配符 --> ( 难度等级: [0.2168, 0.2172) || 挂载数据: 无 ) +│ │ │ ├── 使用类型通配符 --> ( 难度等级: [0.2168, 0.2169) || 挂载数据: 无 ) +│ │ │ ├── 设定类型通配符的上限 --> ( 难度等级: [0.2169, 0.217) || 挂载数据: 无 ) +│ │ │ ├── 设定类型通配符的下限 --> ( 难度等级: [0.217, 0.2171) || 挂载数据: 无 ) +│ │ │ └── 设定泛型形参的上限 --> ( 难度等级: [0.2171, 0.2172) || 挂载数据: qa: 1 ) +│ │ ├── 编写泛型 --> ( 难度等级: [0.2172, 0.2176) || 挂载数据: 无 ) +│ │ ├── 擦拭法 --> ( 难度等级: [0.2176, 0.218) || 挂载数据: 无 ) +│ │ ├── extends通配符 --> ( 难度等级: [0.218, 0.2184) || 挂载数据: 无 ) +│ │ └── super通配符 --> ( 难度等级: [0.2184, 0.2188) || 挂载数据: 无 ) +│ ├── lambda表达式 --> ( 难度等级: [0.2188, 0.2344) || 挂载数据: 无 ) +│ │ ├── lambda表达式简介 --> ( 难度等级: [0.2188, 0.2201) || 挂载数据: 无 ) +│ │ │ ├── lambda表达式的基础知识 --> ( 难度等级: [0.2188, 0.2192) || 挂载数据: 无 ) +│ │ │ ├── 函数式接口 --> ( 难度等级: [0.2192, 0.2196) || 挂载数据: 无 ) +│ │ │ └── 几个lambda表达式示例 --> ( 难度等级: [0.2196, 0.2201) || 挂载数据: 无 ) +│ │ ├── 块lambda表达式 --> ( 难度等级: [0.2201, 0.2214) || 挂载数据: 无 ) +│ │ ├── 泛型函数式接口 --> ( 难度等级: [0.2214, 0.2227) || 挂载数据: 无 ) +│ │ ├── 作为参数传递lambda表达式 --> ( 难度等级: [0.2227, 0.224) || 挂载数据: 无 ) +│ │ ├── lambda表达式与异常 --> ( 难度等级: [0.224, 0.2253) || 挂载数据: 无 ) +│ │ ├── lambda表达式和变量捕获 --> ( 难度等级: [0.2253, 0.2266) || 挂载数据: 无 ) +│ │ ├── 方法引用 --> ( 难度等级: [0.2266, 0.2279) || 挂载数据: 无 ) +│ │ │ ├── 静态方法的方法引用 --> ( 难度等级: [0.2266, 0.2272) || 挂载数据: 无 ) +│ │ │ └── 泛型中的方法引用 --> ( 难度等级: [0.2272, 0.2279) || 挂载数据: qa: 4 ) +│ │ ├── 构造函数引用 --> ( 难度等级: [0.2279, 0.2292) || 挂载数据: 无 ) +│ │ ├── 预定义的函数式接口 --> ( 难度等级: [0.2292, 0.2305) || 挂载数据: 无 ) +│ │ ├── lambda表达式的语法 --> ( 难度等级: [0.2305, 0.2318) || 挂载数据: 无 ) +│ │ ├── 构造器引用 --> ( 难度等级: [0.2318, 0.2331) || 挂载数据: 无 ) +│ │ └── 再谈Comparator --> ( 难度等级: [0.2331, 0.2344) || 挂载数据: 无 ) +│ └── 其他 --> ( 难度等级: [0.2344, 0.25) || 挂载数据: 无 ) +│ ├── Java开发入门 --> ( 难度等级: [0.2344, 0.2347) || 挂载数据: 无 ) +│ │ ├── Java概述 --> ( 难度等级: [0.2344, 0.2344) || 挂载数据: 无 ) +│ │ │ ├── 什么是Java --> ( 难度等级: [0.2344, 0.2344) || 挂载数据: 无 ) +│ │ │ └── Java语言的特点 --> ( 难度等级: [0.2344, 0.2344) || 挂载数据: 无 ) +│ │ ├── JDK的使用 --> ( 难度等级: [0.2344, 0.2345) || 挂载数据: 无 ) +│ │ │ ├── 什么是JDK --> ( 难度等级: [0.2344, 0.2344) || 挂载数据: qa: 10 ) +│ │ │ ├── 安装JDK --> ( 难度等级: [0.2344, 0.2345) || 挂载数据: qa: 2 ) +│ │ │ └── JDK目录介绍 --> ( 难度等级: [0.2345, 0.2345) || 挂载数据: 无 ) +│ │ ├── 系统环境变量 --> ( 难度等级: [0.2345, 0.2345) || 挂载数据: 无 ) +│ │ │ ├── PATH环境变量 --> ( 难度等级: [0.2345, 0.2345) || 挂载数据: qa: 1 ) +│ │ │ └── CLASSPATH环境变量 --> ( 难度等级: [0.2345, 0.2345) || 挂载数据: qa: 9 ) +│ │ ├── 第一个Java程序 --> ( 难度等级: [0.2345, 0.2346) || 挂载数据: 无 ) +│ │ │ ├── 编辑Java源代码 --> ( 难度等级: [0.2345, 0.2345) || 挂载数据: 无 ) +│ │ │ ├── 编译Java程序 --> ( 难度等级: [0.2345, 0.2346) || 挂载数据: qa: 10 ) +│ │ │ └── 根据CLASSPATH环境变量定位类 --> ( 难度等级: [0.2346, 0.2346) || 挂载数据: 无 ) +│ │ ├── Java的运行机制 --> ( 难度等级: [0.2346, 0.2346) || 挂载数据: 无 ) +│ │ └── Eclipse开发工具 --> ( 难度等级: [0.2346, 0.2347) || 挂载数据: qa: 1 ) +│ │ ├── Eclipse概述 --> ( 难度等级: [0.2346, 0.2347) || 挂载数据: 无 ) +│ │ ├── Eclipse的安装与启动 --> ( 难度等级: [0.2347, 0.2347) || 挂载数据: qa: 1 ) +│ │ └── 使用Eclipse进行程序开发 --> ( 难度等级: [0.2347, 0.2347) || 挂载数据: qa: 1 ) +│ ├── Java编程基础 --> ( 难度等级: [0.2347, 0.235) || 挂载数据: 无 ) +│ │ ├── Java的基本语法 --> ( 难度等级: [0.2347, 0.2347) || 挂载数据: 无 ) +│ │ │ ├── Java的基本语法格式 --> ( 难度等级: [0.2347, 0.2347) || 挂载数据: qa: 5 ) +│ │ │ ├── Java中的注释 --> ( 难度等级: [0.2347, 0.2347) || 挂载数据: 无 ) +│ │ │ ├── Java中的关键字 --> ( 难度等级: [0.2347, 0.2347) || 挂载数据: 无 ) +│ │ │ └── Java中的标识符 --> ( 难度等级: [0.2347, 0.2347) || 挂载数据: qa: 1 ) +│ │ ├── Java中的变量与常量 --> ( 难度等级: [0.2347, 0.2348) || 挂载数据: 无 ) +│ │ │ ├── 变量的定义 --> ( 难度等级: [0.2347, 0.2348) || 挂载数据: qa: 5 ) +│ │ │ ├── 变量的数据类型 --> ( 难度等级: [0.2348, 0.2348) || 挂载数据: 无 ) +│ │ │ ├── 变量的类型转换32目录Java基础入门(第2版)2.2.4变量的作用域 --> ( 难度等级: [0.2348, 0.2348) || 挂载数据: 无 ) +│ │ │ ├── Java中的常量 --> ( 难度等级: [0.2348, 0.2348) || 挂载数据: qa: 3 ) +│ │ │ └── 指数记数法 --> ( 难度等级: [0.2348, 0.2348) || 挂载数据: 无 ) +│ │ ├── Java中的运算符 --> ( 难度等级: [0.2348, 0.2349) || 挂载数据: 无 ) +│ │ │ ├── 比较运算符 --> ( 难度等级: [0.2348, 0.2348) || 挂载数据: qa: 2 ) +│ │ │ ├── 逻辑运算符 --> ( 难度等级: [0.2348, 0.2349) || 挂载数据: qa: 2 ) +│ │ │ └── 条件运算符 --> ( 难度等级: [0.2349, 0.2349) || 挂载数据: qa: 1 ) +│ │ ├── 选择结构语句 --> ( 难度等级: [0.2349, 0.2349) || 挂载数据: 无 ) +│ │ │ ├── if条件语句 --> ( 难度等级: [0.2349, 0.2349) || 挂载数据: qa: 10 ) +│ │ │ └── switch条件语句 --> ( 难度等级: [0.2349, 0.2349) || 挂载数据: 无 ) +│ │ └── 循环结构语句 --> ( 难度等级: [0.2349, 0.235) || 挂载数据: 无 ) +│ │ ├── do…while循环语句 --> ( 难度等级: [0.2349, 0.235) || 挂载数据: qa: 5 ) +│ │ └── for循环语句 --> ( 难度等级: [0.235, 0.235) || 挂载数据: qa: 2 ) +│ ├── 集合 --> ( 难度等级: [0.235, 0.2353) || 挂载数据: qa: 4 ) +│ │ ├── 集合概述 --> ( 难度等级: [0.235, 0.235) || 挂载数据: 无 ) +│ │ ├── Collection接口 --> ( 难度等级: [0.235, 0.235) || 挂载数据: 无 ) +│ │ ├── List接口 --> ( 难度等级: [0.235, 0.235) || 挂载数据: 无 ) +│ │ │ ├── List接口简介 --> ( 难度等级: [0.235, 0.235) || 挂载数据: 无 ) +│ │ │ ├── ArrayList集合 --> ( 难度等级: [0.235, 0.235) || 挂载数据: qa: 10 ) +│ │ │ └── LinkedList集合 --> ( 难度等级: [0.235, 0.235) || 挂载数据: qa: 1 ) +│ │ ├── Collection集合遍历 --> ( 难度等级: [0.235, 0.2351) || 挂载数据: 无 ) +│ │ │ ├── Iterator遍历集合 --> ( 难度等级: [0.235, 0.235) || 挂载数据: qa: 10 ) +│ │ │ ├── foreach遍历集合 --> ( 难度等级: [0.235, 0.235) || 挂载数据: qa: 2 ) +│ │ │ └── JDK 8的forEach遍历集合 --> ( 难度等级: [0.235, 0.2351) || 挂载数据: 无 ) +│ │ ├── Set接口 --> ( 难度等级: [0.2351, 0.2351) || 挂载数据: 无 ) +│ │ │ ├── Set接口简介 --> ( 难度等级: [0.2351, 0.2351) || 挂载数据: 无 ) +│ │ │ ├── HashSet集合 --> ( 难度等级: [0.2351, 0.2351) || 挂载数据: 无 ) +│ │ │ └── TreeSet集合 --> ( 难度等级: [0.2351, 0.2351) || 挂载数据: 无 ) +│ │ ├── Map接口 --> ( 难度等级: [0.2351, 0.2351) || 挂载数据: 无 ) +│ │ │ ├── Map接口简介 --> ( 难度等级: [0.2351, 0.2351) || 挂载数据: qa: 1 ) +│ │ │ ├── HashMap集合 --> ( 难度等级: [0.2351, 0.2351) || 挂载数据: qa: 10 ) +│ │ │ ├── Map集合遍历 --> ( 难度等级: [0.2351, 0.2351) || 挂载数据: qa: 5 ) +│ │ │ ├── TreeMap集合 --> ( 难度等级: [0.2351, 0.2351) || 挂载数据: qa: 1 ) +│ │ │ └── Properties集合 --> ( 难度等级: [0.2351, 0.2351) || 挂载数据: 无 ) +│ │ ├── 常用工具类 --> ( 难度等级: [0.2351, 0.2351) || 挂载数据: 无 ) +│ │ │ ├── Collections工具类 --> ( 难度等级: [0.2351, 0.2351) || 挂载数据: qa: 3 ) +│ │ │ └── Arrays工具类 --> ( 难度等级: [0.2351, 0.2351) || 挂载数据: qa: 4 ) +│ │ ├── 聚合操作 --> ( 难度等级: [0.2351, 0.2351) || 挂载数据: 无 ) +│ │ │ ├── 聚合操作简介 --> ( 难度等级: [0.2351, 0.2351) || 挂载数据: 无 ) +│ │ │ ├── 创建Stream流对象 --> ( 难度等级: [0.2351, 0.2351) || 挂载数据: 无 ) +│ │ │ ├── Stream流的常用方法 --> ( 难度等级: [0.2351, 0.2351) || 挂载数据: 无 ) +│ │ │ └── Parallel Stream(并行流) --> ( 难度等级: [0.2351, 0.2351) || 挂载数据: 无 ) +│ │ ├── Java集合框架 --> ( 难度等级: [0.2351, 0.2351) || 挂载数据: 无 ) +│ │ │ ├── 集合接口与实现分离 --> ( 难度等级: [0.2351, 0.2351) || 挂载数据: qa: 4 ) +│ │ │ └── 泛型实用方法 --> ( 难度等级: [0.2351, 0.2351) || 挂载数据: 无 ) +│ │ ├── 集合框架中的接口 --> ( 难度等级: [0.2351, 0.2351) || 挂载数据: 无 ) +│ │ ├── 链表 --> ( 难度等级: [0.2351, 0.2351) || 挂载数据: qa: 2 ) +│ │ ├── 数组列表 --> ( 难度等级: [0.2351, 0.2352) || 挂载数据: 无 ) +│ │ ├── 散列集 --> ( 难度等级: [0.2352, 0.2352) || 挂载数据: 无 ) +│ │ ├── 树集 --> ( 难度等级: [0.2352, 0.2352) || 挂载数据: 无 ) +│ │ ├── 优先队列 --> ( 难度等级: [0.2352, 0.2352) || 挂载数据: 无 ) +│ │ ├── 映射 --> ( 难度等级: [0.2352, 0.2352) || 挂载数据: 无 ) +│ │ │ ├── 基本映射操作 --> ( 难度等级: [0.2352, 0.2352) || 挂载数据: qa: 1 ) +│ │ │ ├── 更新映射条目 --> ( 难度等级: [0.2352, 0.2352) || 挂载数据: 无 ) +│ │ │ ├── 映射视图 --> ( 难度等级: [0.2352, 0.2352) || 挂载数据: 无 ) +│ │ │ ├── 弱散列映射 --> ( 难度等级: [0.2352, 0.2352) || 挂载数据: 无 ) +│ │ │ ├── 链接散列集与映射 --> ( 难度等级: [0.2352, 0.2352) || 挂载数据: 无 ) +│ │ │ ├── 枚举集与映射 --> ( 难度等级: [0.2352, 0.2352) || 挂载数据: 无 ) +│ │ │ └── 标识散列映射 --> ( 难度等级: [0.2352, 0.2352) || 挂载数据: 无 ) +│ │ ├── 算法 --> ( 难度等级: [0.2352, 0.2352) || 挂载数据: qa: 4 ) +│ │ │ ├── 二分查找 --> ( 难度等级: [0.2352, 0.2352) || 挂载数据: 无 ) +│ │ │ ├── 简单算法 --> ( 难度等级: [0.2352, 0.2352) || 挂载数据: qa: 10 ) +│ │ │ ├── 批操作 --> ( 难度等级: [0.2352, 0.2352) || 挂载数据: 无 ) +│ │ │ └── 编写自己的算法 --> ( 难度等级: [0.2352, 0.2352) || 挂载数据: qa: 2 ) +│ │ ├── 遗留的集合 --> ( 难度等级: [0.2352, 0.2352) || 挂载数据: 无 ) +│ │ │ ├── 属性映射 --> ( 难度等级: [0.2352, 0.2352) || 挂载数据: 无 ) +│ │ │ ├── 栈 --> ( 难度等级: [0.2352, 0.2352) || 挂载数据: qa: 2 ) +│ │ │ └── 位集 --> ( 难度等级: [0.2352, 0.2352) || 挂载数据: 无 ) +│ │ ├── Java集合简介 --> ( 难度等级: [0.2352, 0.2352) || 挂载数据: 无 ) +│ │ ├── 编写equals方法 --> ( 难度等级: [0.2352, 0.2353) || 挂载数据: 无 ) +│ │ ├── 编写equals和hashCode --> ( 难度等级: [0.2353, 0.2353) || 挂载数据: qa: 4 ) +│ │ ├── 使用TreeMap --> ( 难度等级: [0.2353, 0.2353) || 挂载数据: qa: 4 ) +│ │ ├── 使用Properties --> ( 难度等级: [0.2353, 0.2353) || 挂载数据: 无 ) +│ │ └── 使用Deque --> ( 难度等级: [0.2353, 0.2353) || 挂载数据: 无 ) +│ ├── I/O流 --> ( 难度等级: [0.2353, 0.2356) || 挂载数据: 无 ) +│ │ ├── I/O流概述 --> ( 难度等级: [0.2353, 0.2354) || 挂载数据: 无 ) +│ │ ├── 字节流 --> ( 难度等级: [0.2354, 0.2354) || 挂载数据: 无 ) +│ │ │ ├── 字节流概述 --> ( 难度等级: [0.2354, 0.2354) || 挂载数据: qa: 1 ) +│ │ │ ├── 字节流读写文件 --> ( 难度等级: [0.2354, 0.2354) || 挂载数据: qa: 2 ) +│ │ │ ├── 文件的拷贝 --> ( 难度等级: [0.2354, 0.2354) || 挂载数据: qa: 1 ) +│ │ │ ├── 字节流的缓冲区 --> ( 难度等级: [0.2354, 0.2354) || 挂载数据: qa: 3 ) +│ │ │ └── 字节缓冲流 --> ( 难度等级: [0.2354, 0.2354) || 挂载数据: qa: 1 ) +│ │ ├── File类 --> ( 难度等级: [0.2354, 0.2354) || 挂载数据: 无 ) +│ │ │ ├── File类的常用方法 --> ( 难度等级: [0.2354, 0.2354) || 挂载数据: qa: 10 ) +│ │ │ ├── 遍历目录下的文件 --> ( 难度等级: [0.2354, 0.2354) || 挂载数据: qa: 1 ) +│ │ │ ├── 删除文件及目录 --> ( 难度等级: [0.2354, 0.2354) || 挂载数据: qa: 1 ) +│ │ │ ├── 创建文件对象 --> ( 难度等级: [0.2354, 0.2354) || 挂载数据: 无 ) +│ │ │ ├── 文件操作 --> ( 难度等级: [0.2354, 0.2354) || 挂载数据: qa: 2 ) +│ │ │ ├── 文件夹操作 --> ( 难度等级: [0.2354, 0.2354) || 挂载数据: qa: 1 ) +│ │ │ ├── 目录列表器 --> ( 难度等级: [0.2354, 0.2354) || 挂载数据: 无 ) +│ │ │ ├── 目录实用工具 --> ( 难度等级: [0.2354, 0.2354) || 挂载数据: 无 ) +│ │ │ ├── 目录的检查及创建 --> ( 难度等级: [0.2354, 0.2354) || 挂载数据: 无 ) +│ │ │ ├── 文件的创建与删除 --> ( 难度等级: [0.2354, 0.2354) || 挂载数据: qa: 5 ) +│ │ │ └── 获取文件信息 --> ( 难度等级: [0.2354, 0.2354) || 挂载数据: 无 ) +│ │ ├── RandomAccessFile --> ( 难度等级: [0.2354, 0.2355) || 挂载数据: qa: 3 ) +│ │ ├── 对象序列化 --> ( 难度等级: [0.2355, 0.2355) || 挂载数据: 无 ) +│ │ │ ├── 寻找类 --> ( 难度等级: [0.2355, 0.2355) || 挂载数据: 无 ) +│ │ │ ├── 序列化的控制 --> ( 难度等级: [0.2355, 0.2355) || 挂载数据: qa: 3 ) +│ │ │ └── 使用“持久性” --> ( 难度等级: [0.2355, 0.2355) || 挂载数据: 无 ) +│ │ ├── NIO --> ( 难度等级: [0.2355, 0.2356) || 挂载数据: 无 ) +│ │ │ ├── NIO概述 --> ( 难度等级: [0.2355, 0.2355) || 挂载数据: qa: 6 ) +│ │ │ ├── Buffer(缓冲器) --> ( 难度等级: [0.2355, 0.2355) || 挂载数据: 无 ) +│ │ │ ├── Channel(通道) --> ( 难度等级: [0.2355, 0.2356) || 挂载数据: 无 ) +│ │ │ ├── Java新IO概述 --> ( 难度等级: [0.2356, 0.2356) || 挂载数据: qa: 8 ) +│ │ │ ├── 使用Buffer --> ( 难度等级: [0.2356, 0.2356) || 挂载数据: 无 ) +│ │ │ ├── 使用Channel --> ( 难度等级: [0.2356, 0.2356) || 挂载数据: qa: 2 ) +│ │ │ ├── 字符集和Charset --> ( 难度等级: [0.2356, 0.2356) || 挂载数据: qa: 2 ) +│ │ │ └── 文件锁 --> ( 难度等级: [0.2356, 0.2356) || 挂载数据: 无 ) +│ │ └── NIO. --> ( 难度等级: [0.2356, 0.2356) || 挂载数据: 无 ) +│ │ ├── Path接口 --> ( 难度等级: [0.2356, 0.2356) || 挂载数据: 无 ) +│ │ └── Files工具类 --> ( 难度等级: [0.2356, 0.2356) || 挂载数据: 无 ) +│ ├── GUI(图形用户接口) --> ( 难度等级: [0.2356, 0.2359) || 挂载数据: 无 ) +│ │ ├── Swing概述 --> ( 难度等级: [0.2356, 0.2357) || 挂载数据: 无 ) +│ │ │ ├── Swing特点 --> ( 难度等级: [0.2356, 0.2356) || 挂载数据: qa: 1 ) +│ │ │ ├── Swing包 --> ( 难度等级: [0.2356, 0.2357) || 挂载数据: qa: 1 ) +│ │ │ └── 常用Swing组件概述 --> ( 难度等级: [0.2357, 0.2357) || 挂载数据: 无 ) +│ │ ├── Swing顶级容器 --> ( 难度等级: [0.2357, 0.2357) || 挂载数据: 无 ) +│ │ │ ├── JFrame --> ( 难度等级: [0.2357, 0.2357) || 挂载数据: qa: 9 ) +│ │ │ └── JDialog --> ( 难度等级: [0.2357, 0.2357) || 挂载数据: qa: 2 ) +│ │ ├── 布局管理器 --> ( 难度等级: [0.2357, 0.2358) || 挂载数据: 无 ) +│ │ │ ├── BorderLayout --> ( 难度等级: [0.2357, 0.2357) || 挂载数据: 无 ) +│ │ │ ├── FlowLayout --> ( 难度等级: [0.2357, 0.2357) || 挂载数据: 无 ) +│ │ │ ├── GridLayout --> ( 难度等级: [0.2357, 0.2357) || 挂载数据: qa: 1 ) +│ │ │ ├── FlowLayout流布局管理器 --> ( 难度等级: [0.2357, 0.2357) || 挂载数据: 无 ) +│ │ │ ├── BorderLayout边界布局管理器 --> ( 难度等级: [0.2357, 0.2357) || 挂载数据: 无 ) +│ │ │ ├── GridLayout网格布局管理器 --> ( 难度等级: [0.2357, 0.2357) || 挂载数据: 无 ) +│ │ │ ├── 绝对布局 --> ( 难度等级: [0.2357, 0.2357) || 挂载数据: qa: 1 ) +│ │ │ ├── 流布局管理器 --> ( 难度等级: [0.2357, 0.2357) || 挂载数据: 无 ) +│ │ │ ├── 边界布局管理器 --> ( 难度等级: [0.2357, 0.2357) || 挂载数据: 无 ) +│ │ │ ├── 网格布局管理器 --> ( 难度等级: [0.2357, 0.2357) || 挂载数据: 无 ) +│ │ │ ├── 网格组布局管理器 --> ( 难度等级: [0.2357, 0.2357) || 挂载数据: 无 ) +│ │ │ ├── FlowLayout布局管理器 --> ( 难度等级: [0.2357, 0.2357) || 挂载数据: qa: 1 ) +│ │ │ ├── BorderLayout布局管理器 --> ( 难度等级: [0.2357, 0.2357) || 挂载数据: qa: 3 ) +│ │ │ ├── GridLayout布局管理器 --> ( 难度等级: [0.2357, 0.2358) || 挂载数据: 无 ) +│ │ │ ├── GridBagLayout布局管理器 --> ( 难度等级: [0.2358, 0.2358) || 挂载数据: 无 ) +│ │ │ ├── CardLayout布局管理器 --> ( 难度等级: [0.2358, 0.2358) || 挂载数据: 无 ) +│ │ │ └── BoxLayout布局管理器 --> ( 难度等级: [0.2358, 0.2358) || 挂载数据: 无 ) +│ │ ├── 事件处理 --> ( 难度等级: [0.2358, 0.2358) || 挂载数据: 无 ) +│ │ │ ├── 事件处理机制 --> ( 难度等级: [0.2358, 0.2358) || 挂载数据: 无 ) +│ │ │ ├── Swing常用事件处理 --> ( 难度等级: [0.2358, 0.2358) || 挂载数据: qa: 1 ) +│ │ │ ├── Java事件模型的流程 --> ( 难度等级: [0.2358, 0.2358) || 挂载数据: 无 ) +│ │ │ ├── 事件适配器 --> ( 难度等级: [0.2358, 0.2358) || 挂载数据: 无 ) +│ │ │ ├── 使用内部类实现监听器 --> ( 难度等级: [0.2358, 0.2358) || 挂载数据: 无 ) +│ │ │ ├── 使用外部类实现监听器 --> ( 难度等级: [0.2358, 0.2358) || 挂载数据: 无 ) +│ │ │ ├── 类本身作为事件监听器类 --> ( 难度等级: [0.2358, 0.2358) || 挂载数据: 无 ) +│ │ │ ├── 匿名内部类实现监听器 --> ( 难度等级: [0.2358, 0.2358) || 挂载数据: 无 ) +│ │ │ ├── 基本事件处理概念 --> ( 难度等级: [0.2358, 0.2358) || 挂载数据: 无 ) +│ │ │ ├── 简洁地指定监听器 --> ( 难度等级: [0.2358, 0.2358) || 挂载数据: 无 ) +│ │ │ ├── 适配器类 --> ( 难度等级: [0.2358, 0.2358) || 挂载数据: 无 ) +│ │ │ ├── 动作 --> ( 难度等级: [0.2358, 0.2358) || 挂载数据: 无 ) +│ │ │ └── AWT事件继承层次 --> ( 难度等级: [0.2358, 0.2358) || 挂载数据: 无 ) +│ │ ├── Swing常用组件 --> ( 难度等级: [0.2358, 0.2358) || 挂载数据: 无 ) +│ │ │ ├── 面板组件 --> ( 难度等级: [0.2358, 0.2358) || 挂载数据: 无 ) +│ │ │ ├── 文本组件 --> ( 难度等级: [0.2358, 0.2358) || 挂载数据: 无 ) +│ │ │ │ ├── JTextField文本框组件 --> ( 难度等级: [0.2358, 0.2358) || 挂载数据: qa: 2 ) +│ │ │ │ ├── JPasswordField密码框组件 --> ( 难度等级: [0.2358, 0.2358) || 挂载数据: 无 ) +│ │ │ │ ├── JTextArea文本域组件 --> ( 难度等级: [0.2358, 0.2358) || 挂载数据: 无 ) +│ │ │ │ ├── 文本框组件 --> ( 难度等级: [0.2358, 0.2358) || 挂载数据: qa: 2 ) +│ │ │ │ ├── 密码框组件 --> ( 难度等级: [0.2358, 0.2358) || 挂载数据: 无 ) +│ │ │ │ └── 文本域组件 --> ( 难度等级: [0.2358, 0.2358) || 挂载数据: 无 ) +│ │ │ ├── 标签组件 --> ( 难度等级: [0.2358, 0.2358) || 挂载数据: 无 ) +│ │ │ ├── 按钮组件 --> ( 难度等级: [0.2358, 0.2358) || 挂载数据: 无 ) +│ │ │ │ ├── JButton按钮组件 --> ( 难度等级: [0.2358, 0.2358) || 挂载数据: qa: 3 ) +│ │ │ │ ├── JRadioButton单选按钮组件 --> ( 难度等级: [0.2358, 0.2358) || 挂载数据: qa: 1 ) +│ │ │ │ ├── JCheckBox复选框组件 --> ( 难度等级: [0.2358, 0.2358) || 挂载数据: 无 ) +│ │ │ │ ├── 提交按钮组件 --> ( 难度等级: [0.2358, 0.2358) || 挂载数据: qa: 3 ) +│ │ │ │ ├── 单选按钮组件 --> ( 难度等级: [0.2358, 0.2358) || 挂载数据: 无 ) +│ │ │ │ └── 复选框组件 --> ( 难度等级: [0.2358, 0.2358) || 挂载数据: qa: 8 ) +│ │ │ ├── 下拉框组件 --> ( 难度等级: [0.2358, 0.2358) || 挂载数据: qa: 1 ) +│ │ │ └── 菜单组件 --> ( 难度等级: [0.2358, 0.2358) || 挂载数据: 无 ) +│ │ ├── Swing组件的整合使用——QQ登录 --> ( 难度等级: [0.2358, 0.2359) || 挂载数据: 无 ) +│ │ │ ├── 案例分析 --> ( 难度等级: [0.2358, 0.2359) || 挂载数据: 无 ) +│ │ │ └── 案例实现 --> ( 难度等级: [0.2359, 0.2359) || 挂载数据: 无 ) +│ │ └── JavaFX图形用户界面工具 --> ( 难度等级: [0.2359, 0.2359) || 挂载数据: 无 ) +│ │ ├── JavaFX概述 --> ( 难度等级: [0.2359, 0.2359) || 挂载数据: 无 ) +│ │ ├── JavaFX开发环境配置 --> ( 难度等级: [0.2359, 0.2359) || 挂载数据: qa: 1 ) +│ │ ├── JavaFX基础入门 --> ( 难度等级: [0.2359, 0.2359) || 挂载数据: 无 ) +│ │ └── JavaFX可视化管理工具 --> ( 难度等级: [0.2359, 0.2359) || 挂载数据: 无 ) +│ ├── JDBC --> ( 难度等级: [0.2359, 0.2362) || 挂载数据: qa: 1 ) +│ │ ├── 什么是JDBC --> ( 难度等级: [0.2359, 0.236) || 挂载数据: 无 ) +│ │ ├── JDBC常用API --> ( 难度等级: [0.236, 0.2361) || 挂载数据: 无 ) +│ │ │ ├── Driver接口 --> ( 难度等级: [0.236, 0.236) || 挂载数据: qa: 2 ) +│ │ │ ├── DriverManager类 --> ( 难度等级: [0.236, 0.236) || 挂载数据: 无 ) +│ │ │ ├── Connection接口 --> ( 难度等级: [0.236, 0.2361) || 挂载数据: qa: 10 ) +│ │ │ ├── Statement接口 --> ( 难度等级: [0.2361, 0.2361) || 挂载数据: qa: 2 ) +│ │ │ ├── PreparedStatement接口 --> ( 难度等级: [0.2361, 0.2361) || 挂载数据: qa: 6 ) +│ │ │ └── ResultSet接口 --> ( 难度等级: [0.2361, 0.2361) || 挂载数据: qa: 5 ) +│ │ ├── JDBC编程 --> ( 难度等级: [0.2361, 0.2362) || 挂载数据: 无 ) +│ │ │ ├── JDBC的编程步骤 --> ( 难度等级: [0.2361, 0.2361) || 挂载数据: qa: 2 ) +│ │ │ └── 实现第一个JDBC程序 --> ( 难度等级: [0.2361, 0.2362) || 挂载数据: qa: 10 ) +│ │ └── 案例——使用JDBC实现QQ登录 --> ( 难度等级: [0.2362, 0.2362) || 挂载数据: qa: 9 ) +│ ├── 网络编程 --> ( 难度等级: [0.2362, 0.2366) || 挂载数据: qa: 1 ) +│ │ ├── 网络编程基础 --> ( 难度等级: [0.2362, 0.2363) || 挂载数据: qa: 2 ) +│ │ │ ├── 网络通信协议 --> ( 难度等级: [0.2362, 0.2363) || 挂载数据: 无 ) +│ │ │ ├── IP地址和端口号 --> ( 难度等级: [0.2363, 0.2363) || 挂载数据: 无 ) +│ │ │ ├── InetAddress --> ( 难度等级: [0.2363, 0.2363) || 挂载数据: 无 ) +│ │ │ └── UDP与TCP协议 --> ( 难度等级: [0.2363, 0.2363) || 挂载数据: 无 ) +│ │ ├── UDP通信 --> ( 难度等级: [0.2363, 0.2363) || 挂载数据: 无 ) +│ │ │ ├── UDP通信简介 --> ( 难度等级: [0.2363, 0.2363) || 挂载数据: qa: 2 ) +│ │ │ ├── DatagramPacket --> ( 难度等级: [0.2363, 0.2363) || 挂载数据: 无 ) +│ │ │ ├── DatagramSocket --> ( 难度等级: [0.2363, 0.2363) || 挂载数据: qa: 1 ) +│ │ │ ├── UDP网络程序 --> ( 难度等级: [0.2363, 0.2363) || 挂载数据: 无 ) +│ │ │ └── UDP案例——聊天程序 --> ( 难度等级: [0.2363, 0.2363) || 挂载数据: qa: 4 ) +│ │ ├── TCP通信 --> ( 难度等级: [0.2363, 0.2364) || 挂载数据: 无 ) +│ │ │ ├── TCP通信简介 --> ( 难度等级: [0.2363, 0.2363) || 挂载数据: qa: 7 ) +│ │ │ ├── ServerSocket --> ( 难度等级: [0.2363, 0.2363) || 挂载数据: qa: 3 ) +│ │ │ ├── Socket --> ( 难度等级: [0.2363, 0.2363) || 挂载数据: qa: 10 ) +│ │ │ ├── 简单的TCP网络程序 --> ( 难度等级: [0.2363, 0.2363) || 挂载数据: qa: 1 ) +│ │ │ ├── 多线程的TCP网络程序 --> ( 难度等级: [0.2363, 0.2363) || 挂载数据: 无 ) +│ │ │ └── TCP案例——文件上传 --> ( 难度等级: [0.2363, 0.2364) || 挂载数据: qa: 1 ) +│ │ ├── 网络编程的基础知识 --> ( 难度等级: [0.2364, 0.2364) || 挂载数据: 无 ) +│ │ │ └── 网络基础知识 --> ( 难度等级: [0.2364, 0.2364) || 挂载数据: qa: 10 ) +│ │ ├── Java的基本网络支持 --> ( 难度等级: [0.2364, 0.2364) || 挂载数据: 无 ) +│ │ │ ├── 使用URLDecoder和URLEncoder --> ( 难度等级: [0.2364, 0.2364) || 挂载数据: qa: 1 ) +│ │ │ └── URL、URLConnection和URLPermission --> ( 难度等级: [0.2364, 0.2364) || 挂载数据: 无 ) +│ │ ├── 基于TCP协议的网络编程 --> ( 难度等级: [0.2364, 0.2365) || 挂载数据: 无 ) +│ │ │ ├── TCP协议基础 --> ( 难度等级: [0.2364, 0.2364) || 挂载数据: qa: 1 ) +│ │ │ ├── 使用ServerSocket创建TCP服务器端 --> ( 难度等级: [0.2364, 0.2364) || 挂载数据: 无 ) +│ │ │ ├── 使用Socket进行通信 --> ( 难度等级: [0.2364, 0.2364) || 挂载数据: qa: 4 ) +│ │ │ ├── 记录用户信息 --> ( 难度等级: [0.2364, 0.2364) || 挂载数据: qa: 5 ) +│ │ │ ├── 半关闭的Socket --> ( 难度等级: [0.2364, 0.2364) || 挂载数据: 无 ) +│ │ │ ├── 使用NIO实现非阻塞Socket通信 --> ( 难度等级: [0.2364, 0.2365) || 挂载数据: qa: 1 ) +│ │ │ └── 使用AIO实现非阻塞通信 --> ( 难度等级: [0.2365, 0.2365) || 挂载数据: 无 ) +│ │ ├── 基于UDP协议的网络编程 --> ( 难度等级: [0.2365, 0.2365) || 挂载数据: 无 ) +│ │ │ ├── UDP协议基础 --> ( 难度等级: [0.2365, 0.2365) || 挂载数据: 无 ) +│ │ │ ├── 使用DatagramSocket发送、接收数据 --> ( 难度等级: [0.2365, 0.2365) || 挂载数据: 无 ) +│ │ │ └── 使用MulticastSocket实现多点广播 --> ( 难度等级: [0.2365, 0.2365) || 挂载数据: 无 ) +│ │ ├── 使用代理服务器 --> ( 难度等级: [0.2365, 0.2365) || 挂载数据: 无 ) +│ │ │ ├── 直接使用Proxy创建连接 --> ( 难度等级: [0.2365, 0.2365) || 挂载数据: 无 ) +│ │ │ └── 使用ProxySelector自动选择代理服务器 --> ( 难度等级: [0.2365, 0.2365) || 挂载数据: qa: 1 ) +│ │ └── Java 11标准化的HTTP Client --> ( 难度等级: [0.2365, 0.2366) || 挂载数据: 无 ) +│ │ ├── 发送同步GET请求 --> ( 难度等级: [0.2365, 0.2365) || 挂载数据: qa: 3 ) +│ │ ├── 发送带请求体的请求 --> ( 难度等级: [0.2365, 0.2365) || 挂载数据: qa: 1 ) +│ │ ├── 发送异步请求 --> ( 难度等级: [0.2365, 0.2365) || 挂载数据: 无 ) +│ │ ├── WebSocket客户端支持 --> ( 难度等级: [0.2365, 0.2366) || 挂载数据: 无 ) +│ │ └── 基于WebSocket的多人实时聊天 --> ( 难度等级: [0.2366, 0.2366) || 挂载数据: 无 ) +│ ├── 初识Java --> ( 难度等级: [0.2366, 0.2369) || 挂载数据: 无 ) +│ │ ├── Java简介 --> ( 难度等级: [0.2366, 0.2366) || 挂载数据: 无 ) +│ │ │ ├── Java的版本 --> ( 难度等级: [0.2366, 0.2366) || 挂载数据: 无 ) +│ │ │ ├── JavaAPI文档 --> ( 难度等级: [0.2366, 0.2366) || 挂载数据: 无 ) +│ │ │ ├── Java的应用领域 --> ( 难度等级: [0.2366, 0.2366) || 挂载数据: 无 ) +│ │ │ ├── 怎样学好Java --> ( 难度等级: [0.2366, 0.2366) || 挂载数据: 无 ) +│ │ │ ├── Java API文档 --> ( 难度等级: [0.2366, 0.2366) || 挂载数据: 无 ) +│ │ │ ├── Java代码助手 --> ( 难度等级: [0.2366, 0.2366) || 挂载数据: 无 ) +│ │ │ ├── 使用IDE --> ( 难度等级: [0.2366, 0.2366) || 挂载数据: qa: 1 ) +│ │ │ └── 使用IDE练习插件 --> ( 难度等级: [0.2366, 0.2366) || 挂载数据: 无 ) +│ │ ├── 搭建Java环境 --> ( 难度等级: [0.2366, 0.2367) || 挂载数据: 无 ) +│ │ │ ├── JDK的下载 --> ( 难度等级: [0.2366, 0.2366) || 挂载数据: 无 ) +│ │ │ ├── 配置JDK --> ( 难度等级: [0.2366, 0.2366) || 挂载数据: 无 ) +│ │ │ ├── 测试开发环境 --> ( 难度等级: [0.2366, 0.2366) || 挂载数据: qa: 5 ) +│ │ │ └── Windows系统的JDK环境 --> ( 难度等级: [0.2366, 0.2367) || 挂载数据: qa: 1 ) +│ │ ├── Eclipse开发环境 --> ( 难度等级: [0.2367, 0.2367) || 挂载数据: 无 ) +│ │ │ ├── Eclipse简介 --> ( 难度等级: [0.2367, 0.2367) || 挂载数据: 无 ) +│ │ │ ├── 下载Eclipse --> ( 难度等级: [0.2367, 0.2367) || 挂载数据: qa: 10 ) +│ │ │ └── Eclipse工作台 --> ( 难度等级: [0.2367, 0.2367) || 挂载数据: 无 ) +│ │ ├── Eclipse的使用 --> ( 难度等级: [0.2367, 0.2367) || 挂载数据: 无 ) +│ │ │ ├── 创建Java类文件 --> ( 难度等级: [0.2367, 0.2367) || 挂载数据: 无 ) +│ │ │ ├── 使用编辑器编写程序代码 --> ( 难度等级: [0.2367, 0.2367) || 挂载数据: qa: 1 ) +│ │ │ └── 运行Java程序 --> ( 难度等级: [0.2367, 0.2367) || 挂载数据: qa: 10 ) +│ │ ├── 程序调试 --> ( 难度等级: [0.2367, 0.2368) || 挂载数据: 无 ) +│ │ ├── 难点解答 --> ( 难度等级: [0.2368, 0.2368) || 挂载数据: 无 ) +│ │ │ ├── JDK常用的基本组件 --> ( 难度等级: [0.2368, 0.2368) || 挂载数据: 无 ) +│ │ │ ├── 配置环境变量后,javac运行正常,但编译的时候仍找不到文件 --> ( 难度等级: [0.2368, 0.2368) || 挂载数据: qa: 9 ) +│ │ │ ├── Java中变量一定要初始化吗? --> ( 难度等级: [0.2368, 0.2368) || 挂载数据: 无 ) +│ │ │ ├── switch多分支语句后expression表达式的数据类型 --> ( 难度等级: [0.2368, 0.2368) || 挂载数据: 无 ) +│ │ │ ├── 多维数组的长度 --> ( 难度等级: [0.2368, 0.2368) || 挂载数据: qa: 1 ) +│ │ │ ├── StringBuffer与String的不同之处 --> ( 难度等级: [0.2368, 0.2368) || 挂载数据: 无 ) +│ │ │ ├── 把数据抽象成类 --> ( 难度等级: [0.2368, 0.2368) || 挂载数据: 无 ) +│ │ │ ├── 局部变量和全局变量 --> ( 难度等级: [0.2368, 0.2368) || 挂载数据: qa: 1 ) +│ │ │ ├── 类的三大特性 --> ( 难度等级: [0.2368, 0.2368) || 挂载数据: 无 ) +│ │ │ ├── 什么情况下会使用匿名内部类? --> ( 难度等级: [0.2368, 0.2368) || 挂载数据: qa: 6 ) +│ │ │ ├── 异常的使用原则 --> ( 难度等级: [0.2368, 0.2368) || 挂载数据: 无 ) +│ │ │ ├── 注意随机数的取值范围 --> ( 难度等级: [0.2368, 0.2368) || 挂载数据: qa: 5 ) +│ │ │ ├── “装箱”与“拆箱” --> ( 难度等级: [0.2368, 0.2368) || 挂载数据: 无 ) +│ │ │ ├── 集合的使用场合 --> ( 难度等级: [0.2368, 0.2368) || 挂载数据: 无 ) +│ │ │ ├── 集合的元素数量是变化的 --> ( 难度等级: [0.2368, 0.2368) || 挂载数据: 无 ) +│ │ │ ├── Swing组件的层级关系 --> ( 难度等级: [0.2368, 0.2368) || 挂载数据: 无 ) +│ │ │ ├── 布局的使用 --> ( 难度等级: [0.2368, 0.2368) || 挂载数据: 无 ) +│ │ │ ├── 输入/输出流的使用 --> ( 难度等级: [0.2368, 0.2368) || 挂载数据: 无 ) +│ │ │ ├── 线程的核心方法:run方法 --> ( 难度等级: [0.2368, 0.2368) || 挂载数据: qa: 8 ) +│ │ │ ├── 线程的启动 --> ( 难度等级: [0.2368, 0.2368) || 挂载数据: qa: 2 ) +│ │ │ ├── 无法连接数据库 --> ( 难度等级: [0.2368, 0.2368) || 挂载数据: qa: 1 ) +│ │ │ ├── SQL语句的使用 --> ( 难度等级: [0.2368, 0.2368) || 挂载数据: 无 ) +│ │ │ └── AWT与Swing组件的区别 --> ( 难度等级: [0.2368, 0.2368) || 挂载数据: 无 ) +│ │ └── Java语言的特性 --> ( 难度等级: [0.2368, 0.2369) || 挂载数据: 无 ) +│ │ ├── 简单 --> ( 难度等级: [0.2368, 0.2368) || 挂载数据: 无 ) +│ │ ├── 分布性 --> ( 难度等级: [0.2368, 0.2369) || 挂载数据: 无 ) +│ │ ├── 解释型 --> ( 难度等级: [0.2369, 0.2369) || 挂载数据: 无 ) +│ │ └── 动态 --> ( 难度等级: [0.2369, 0.2369) || 挂载数据: qa: 2 ) +│ ├── Java语言基础 --> ( 难度等级: [0.2369, 0.2372) || 挂载数据: 无 ) +│ │ ├── 代码注释 --> ( 难度等级: [0.2369, 0.237) || 挂载数据: qa: 1 ) +│ │ │ └── 文档注释 --> ( 难度等级: [0.2369, 0.237) || 挂载数据: qa: 1 ) +│ │ │ ├── 注释的插入 --> ( 难度等级: [0.2369, 0.2369) || 挂载数据: qa: 5 ) +│ │ │ ├── 类注释 --> ( 难度等级: [0.2369, 0.2369) || 挂载数据: 无 ) +│ │ │ ├── 方法注释 --> ( 难度等级: [0.2369, 0.2369) || 挂载数据: qa: 2 ) +│ │ │ ├── 字段注释 --> ( 难度等级: [0.2369, 0.2369) || 挂载数据: qa: 2 ) +│ │ │ ├── 通用注释 --> ( 难度等级: [0.2369, 0.2369) || 挂载数据: 无 ) +│ │ │ ├── 包注释 --> ( 难度等级: [0.2369, 0.2369) || 挂载数据: qa: 10 ) +│ │ │ └── 注释抽取 --> ( 难度等级: [0.2369, 0.237) || 挂载数据: 无 ) +│ │ ├── 基本数据类型 --> ( 难度等级: [0.237, 0.237) || 挂载数据: qa: 4 ) +│ │ │ ├── 整数类型 --> ( 难度等级: [0.237, 0.237) || 挂载数据: 无 ) +│ │ │ ├── 浮点类型 --> ( 难度等级: [0.237, 0.237) || 挂载数据: 无 ) +│ │ │ ├── 字符类型 --> ( 难度等级: [0.237, 0.237) || 挂载数据: qa: 1 ) +│ │ │ ├── 布尔类型 --> ( 难度等级: [0.237, 0.237) || 挂载数据: 无 ) +│ │ │ ├── 数值中使用下画线分隔 --> ( 难度等级: [0.237, 0.237) || 挂载数据: 无 ) +│ │ │ └── 使用var定义变量 --> ( 难度等级: [0.237, 0.237) || 挂载数据: 无 ) +│ │ ├── 数据类型转换 --> ( 难度等级: [0.237, 0.2371) || 挂载数据: qa: 2 ) +│ │ │ ├── 隐式转换 --> ( 难度等级: [0.237, 0.2371) || 挂载数据: 无 ) +│ │ │ ├── 显式转换 --> ( 难度等级: [0.2371, 0.2371) || 挂载数据: 无 ) +│ │ │ ├── 隐式类型转换 --> ( 难度等级: [0.2371, 0.2371) || 挂载数据: qa: 1 ) +│ │ │ └── 显式类型转换 --> ( 难度等级: [0.2371, 0.2371) || 挂载数据: qa: 6 ) +│ │ └── Java主类结构 --> ( 难度等级: [0.2371, 0.2372) || 挂载数据: qa: 1 ) +│ │ ├── 包声明 --> ( 难度等级: [0.2371, 0.2371) || 挂载数据: 无 ) +│ │ ├── 编写主方法 --> ( 难度等级: [0.2371, 0.2372) || 挂载数据: 无 ) +│ │ └── 导入API类库 --> ( 难度等级: [0.2372, 0.2372) || 挂载数据: 无 ) +│ ├── 流程控制 --> ( 难度等级: [0.2372, 0.2375) || 挂载数据: qa: 1 ) +│ │ ├── 程序结构 --> ( 难度等级: [0.2372, 0.2372) || 挂载数据: 无 ) +│ │ ├── 条件语句 --> ( 难度等级: [0.2372, 0.2372) || 挂载数据: 无 ) +│ │ │ └── switch多分支语句 --> ( 难度等级: [0.2372, 0.2372) || 挂载数据: 无 ) +│ │ ├── 循环语句 --> ( 难度等级: [0.2372, 0.2373) || 挂载数据: qa: 1 ) +│ │ │ ├── foreach语句 --> ( 难度等级: [0.2372, 0.2373) || 挂载数据: qa: 5 ) +│ │ │ └── 循环语句的嵌套 --> ( 难度等级: [0.2373, 0.2373) || 挂载数据: qa: 10 ) +│ │ ├── 复合语句 --> ( 难度等级: [0.2373, 0.2373) || 挂载数据: qa: 1 ) +│ │ ├── 循环控制 --> ( 难度等级: [0.2373, 0.2373) || 挂载数据: qa: 7 ) +│ │ ├── 循环 --> ( 难度等级: [0.2373, 0.2374) || 挂载数据: qa: 1 ) +│ │ ├── 中断控制流程的语句 --> ( 难度等级: [0.2374, 0.2374) || 挂载数据: 无 ) +│ │ ├── if判断 --> ( 难度等级: [0.2374, 0.2374) || 挂载数据: qa: 10 ) +│ │ ├── switch多重选择 --> ( 难度等级: [0.2374, 0.2375) || 挂载数据: 无 ) +│ │ └── while循环 --> ( 难度等级: [0.2375, 0.2375) || 挂载数据: qa: 5 ) +│ ├── 面向对象编程基础 --> ( 难度等级: [0.2375, 0.2378) || 挂载数据: 无 ) +│ │ └── 类的主方法 --> ( 难度等级: [0.2375, 0.2378) || 挂载数据: 无 ) +│ ├── 面向对象核心技术 --> ( 难度等级: [0.2378, 0.2381) || 挂载数据: 无 ) +│ │ └── 类的多态 --> ( 难度等级: [0.2378, 0.2381) || 挂载数据: 无 ) +│ │ ├── 向上转型 --> ( 难度等级: [0.2378, 0.2379) || 挂载数据: qa: 3 ) +│ │ │ └── 忘记对象类型 --> ( 难度等级: [0.2378, 0.2379) || 挂载数据: qa: 1 ) +│ │ ├── 向下转型 --> ( 难度等级: [0.2379, 0.238) || 挂载数据: qa: 1 ) +│ │ └── instanceof关键字 --> ( 难度等级: [0.238, 0.2381) || 挂载数据: qa: 1 ) +│ ├── Swing程序设计 --> ( 难度等级: [0.2381, 0.2384) || 挂载数据: 无 ) +│ │ ├── 常用窗体 --> ( 难度等级: [0.2381, 0.2382) || 挂载数据: 无 ) +│ │ │ ├── JFrame窗体 --> ( 难度等级: [0.2381, 0.2382) || 挂载数据: 无 ) +│ │ │ ├── JDialog对话框窗体 --> ( 难度等级: [0.2382, 0.2382) || 挂载数据: 无 ) +│ │ │ └── JDialog窗体 --> ( 难度等级: [0.2382, 0.2382) || 挂载数据: qa: 4 ) +│ │ ├── 常用面板 --> ( 难度等级: [0.2382, 0.2383) || 挂载数据: 无 ) +│ │ │ ├── JPanel面板 --> ( 难度等级: [0.2382, 0.2382) || 挂载数据: qa: 10 ) +│ │ │ ├── JScrollPane滚动面板 --> ( 难度等级: [0.2382, 0.2383) || 挂载数据: 无 ) +│ │ │ └── JScrollPane面板 --> ( 难度等级: [0.2383, 0.2383) || 挂载数据: qa: 1 ) +│ │ ├── 列表组件 --> ( 难度等级: [0.2383, 0.2384) || 挂载数据: 无 ) +│ │ │ ├── JComboBox下拉列表框组件 --> ( 难度等级: [0.2383, 0.2383) || 挂载数据: 无 ) +│ │ │ ├── JList列表框组件 --> ( 难度等级: [0.2383, 0.2383) || 挂载数据: 无 ) +│ │ │ ├── 下拉列表框组件 --> ( 难度等级: [0.2383, 0.2383) || 挂载数据: 无 ) +│ │ │ └── 列表框组件 --> ( 难度等级: [0.2383, 0.2384) || 挂载数据: 无 ) +│ │ └── 事件监听器 --> ( 难度等级: [0.2384, 0.2384) || 挂载数据: 无 ) +│ │ ├── 动作事件监听器 --> ( 难度等级: [0.2384, 0.2384) || 挂载数据: 无 ) +│ │ ├── 键盘事件 --> ( 难度等级: [0.2384, 0.2384) || 挂载数据: qa: 2 ) +│ │ ├── 鼠标事件 --> ( 难度等级: [0.2384, 0.2384) || 挂载数据: qa: 3 ) +│ │ ├── 窗体事件 --> ( 难度等级: [0.2384, 0.2384) || 挂载数据: 无 ) +│ │ │ ├── 捕获窗体焦点变化事件 --> ( 难度等级: [0.2384, 0.2384) || 挂载数据: 无 ) +│ │ │ ├── 捕获窗体状态变化事件 --> ( 难度等级: [0.2384, 0.2384) || 挂载数据: 无 ) +│ │ │ └── 捕获其他窗体事件 --> ( 难度等级: [0.2384, 0.2384) || 挂载数据: qa: 8 ) +│ │ ├── 监听事件简介 --> ( 难度等级: [0.2384, 0.2384) || 挂载数据: qa: 4 ) +│ │ └── 焦点事件监听器 --> ( 难度等级: [0.2384, 0.2384) || 挂载数据: 无 ) +│ ├── I/O(输入/输出) --> ( 难度等级: [0.2384, 0.2387) || 挂载数据: 无 ) +│ │ ├── 流概述 --> ( 难度等级: [0.2384, 0.2385) || 挂载数据: 无 ) +│ │ ├── 输入/输出流 --> ( 难度等级: [0.2385, 0.2385) || 挂载数据: 无 ) +│ │ │ ├── 输入流 --> ( 难度等级: [0.2385, 0.2385) || 挂载数据: qa: 10 ) +│ │ │ └── 输出流 --> ( 难度等级: [0.2385, 0.2385) || 挂载数据: qa: 10 ) +│ │ ├── 文件输入/输出流 --> ( 难度等级: [0.2385, 0.2386) || 挂载数据: qa: 2 ) +│ │ │ ├── FileInputStream类与FileOutputStream类 --> ( 难度等级: [0.2385, 0.2385) || 挂载数据: qa: 3 ) +│ │ │ └── FileReader类与FileWriter类 --> ( 难度等级: [0.2385, 0.2386) || 挂载数据: 无 ) +│ │ ├── 带缓冲的输入/输出流 --> ( 难度等级: [0.2386, 0.2386) || 挂载数据: 无 ) +│ │ │ ├── BufferedInputStream类与BufferedOutputStream类 --> ( 难度等级: [0.2386, 0.2386) || 挂载数据: qa: 1 ) +│ │ │ └── BufferedReader类与BufferedWriter类 --> ( 难度等级: [0.2386, 0.2386) || 挂载数据: qa: 1 ) +│ │ ├── 带缓存的输入/输出流 --> ( 难度等级: [0.2386, 0.2387) || 挂载数据: 无 ) +│ │ ├── 数据输入/输出流 --> ( 难度等级: [0.2387, 0.2387) || 挂载数据: 无 ) +│ │ └── ZIP压缩输入/输出流 --> ( 难度等级: [0.2387, 0.2387) || 挂载数据: 无 ) +│ │ ├── 压缩文件 --> ( 难度等级: [0.2387, 0.2387) || 挂载数据: qa: 1 ) +│ │ └── 解压缩ZIP文件 --> ( 难度等级: [0.2387, 0.2387) || 挂载数据: qa: 4 ) +│ ├── 使用JDBC操作数据库 --> ( 难度等级: [0.2387, 0.2391) || 挂载数据: 无 ) +│ │ ├── JDBC概述 --> ( 难度等级: [0.2387, 0.2389) || 挂载数据: 无 ) +│ │ │ ├── JDBC-ODBC桥 --> ( 难度等级: [0.2387, 0.2388) || 挂载数据: 无 ) +│ │ │ ├── JDBC技术 --> ( 难度等级: [0.2388, 0.2389) || 挂载数据: qa: 10 ) +│ │ │ └── JDBC驱动程序的类型 --> ( 难度等级: [0.2389, 0.2389) || 挂载数据: 无 ) +│ │ └── 数据库操作 --> ( 难度等级: [0.2389, 0.2391) || 挂载数据: 无 ) +│ │ ├── 数据库基础 --> ( 难度等级: [0.2389, 0.2389) || 挂载数据: 无 ) +│ │ ├── 数据查询 --> ( 难度等级: [0.2389, 0.2389) || 挂载数据: qa: 10 ) +│ │ ├── 动态查询 --> ( 难度等级: [0.2389, 0.239) || 挂载数据: qa: 1 ) +│ │ ├── 添加、修改、删除记录 --> ( 难度等级: [0.239, 0.239) || 挂载数据: qa: 2 ) +│ │ ├── 数据库基础知识 --> ( 难度等级: [0.239, 0.239) || 挂载数据: 无 ) +│ │ │ ├── 什么是数据库 --> ( 难度等级: [0.239, 0.239) || 挂载数据: qa: 10 ) +│ │ │ ├── 数据库的种类及功能 --> ( 难度等级: [0.239, 0.239) || 挂载数据: qa: 1 ) +│ │ │ └── SQL语言 --> ( 难度等级: [0.239, 0.239) || 挂载数据: qa: 10 ) +│ │ ├── 向数据库发送SQL语句 --> ( 难度等级: [0.239, 0.239) || 挂载数据: qa: 6 ) +│ │ ├── 处理查询结果集 --> ( 难度等级: [0.239, 0.239) || 挂载数据: 无 ) +│ │ ├── 顺序查询 --> ( 难度等级: [0.239, 0.239) || 挂载数据: 无 ) +│ │ ├── 模糊查询 --> ( 难度等级: [0.239, 0.239) || 挂载数据: qa: 2 ) +│ │ └── 预处理语句 --> ( 难度等级: [0.239, 0.2391) || 挂载数据: 无 ) +│ ├── Java绘图 --> ( 难度等级: [0.2391, 0.2394) || 挂载数据: 无 ) +│ │ ├── Java绘图基础 --> ( 难度等级: [0.2391, 0.2391) || 挂载数据: 无 ) +│ │ │ ├── Graphics绘图类 --> ( 难度等级: [0.2391, 0.2391) || 挂载数据: 无 ) +│ │ │ ├── Graphics2D绘图类 --> ( 难度等级: [0.2391, 0.2391) || 挂载数据: qa: 1 ) +│ │ │ └── Canvas画布类 --> ( 难度等级: [0.2391, 0.2391) || 挂载数据: 无 ) +│ │ ├── 绘制几何图形 --> ( 难度等级: [0.2391, 0.2392) || 挂载数据: 无 ) +│ │ ├── 设置颜色与画笔 --> ( 难度等级: [0.2392, 0.2392) || 挂载数据: 无 ) +│ │ │ ├── 设置颜色 --> ( 难度等级: [0.2392, 0.2392) || 挂载数据: qa: 2 ) +│ │ │ └── 设置画笔 --> ( 难度等级: [0.2392, 0.2392) || 挂载数据: qa: 10 ) +│ │ ├── 图像处理 --> ( 难度等级: [0.2392, 0.2393) || 挂载数据: 无 ) +│ │ │ ├── 绘制图像 --> ( 难度等级: [0.2392, 0.2392) || 挂载数据: 无 ) +│ │ │ ├── 图像缩放 --> ( 难度等级: [0.2392, 0.2392) || 挂载数据: qa: 1 ) +│ │ │ ├── 放大与缩小 --> ( 难度等级: [0.2392, 0.2392) || 挂载数据: 无 ) +│ │ │ ├── 图像翻转 --> ( 难度等级: [0.2392, 0.2393) || 挂载数据: 无 ) +│ │ │ ├── 图像旋转 --> ( 难度等级: [0.2393, 0.2393) || 挂载数据: qa: 1 ) +│ │ │ └── 图像倾斜 --> ( 难度等级: [0.2393, 0.2393) || 挂载数据: 无 ) +│ │ ├── Graphics --> ( 难度等级: [0.2393, 0.2393) || 挂载数据: 无 ) +│ │ └── Graphics2D --> ( 难度等级: [0.2393, 0.2394) || 挂载数据: 无 ) +│ ├── 坦克大战游戏 --> ( 难度等级: [0.2394, 0.2397) || 挂载数据: qa: 5 ) +│ │ ├── 开发背景 --> ( 难度等级: [0.2394, 0.2394) || 挂载数据: 无 ) +│ │ ├── 系统开发环境要求 --> ( 难度等级: [0.2394, 0.2394) || 挂载数据: 无 ) +│ │ ├── 系统功能设计 --> ( 难度等级: [0.2394, 0.2395) || 挂载数据: 无 ) +│ │ │ ├── 系统功能结构 --> ( 难度等级: [0.2394, 0.2395) || 挂载数据: qa: 1 ) +│ │ │ └── 系统业务流程 --> ( 难度等级: [0.2395, 0.2395) || 挂载数据: qa: 8 ) +│ │ ├── 枚举设计 --> ( 难度等级: [0.2395, 0.2395) || 挂载数据: 无 ) +│ │ │ ├── 方向枚举 --> ( 难度等级: [0.2395, 0.2395) || 挂载数据: qa: 1 ) +│ │ │ ├── 游戏模式枚举 --> ( 难度等级: [0.2395, 0.2395) || 挂载数据: 无 ) +│ │ │ ├── 坦克类型枚举 --> ( 难度等级: [0.2395, 0.2395) || 挂载数据: 无 ) +│ │ │ └── 墙块类型枚举 --> ( 难度等级: [0.2395, 0.2395) || 挂载数据: 无 ) +│ │ ├── 公共类设计 --> ( 难度等级: [0.2395, 0.2395) || 挂载数据: 无 ) +│ │ │ ├── 绘图工具类 --> ( 难度等级: [0.2395, 0.2395) || 挂载数据: 无 ) +│ │ │ └── 地图工具类 --> ( 难度等级: [0.2395, 0.2395) || 挂载数据: 无 ) +│ │ ├── 模型类设计 --> ( 难度等级: [0.2395, 0.2396) || 挂载数据: 无 ) +│ │ │ ├── 可显示图像的抽象类 --> ( 难度等级: [0.2395, 0.2396) || 挂载数据: 无 ) +│ │ │ ├── 玩家坦克类 --> ( 难度等级: [0.2396, 0.2396) || 挂载数据: 无 ) +│ │ │ ├── 电脑坦克类 --> ( 难度等级: [0.2396, 0.2396) || 挂载数据: qa: 2 ) +│ │ │ ├── 子弹类 --> ( 难度等级: [0.2396, 0.2396) || 挂载数据: qa: 1 ) +│ │ │ ├── 基地类 --> ( 难度等级: [0.2396, 0.2396) || 挂载数据: 无 ) +│ │ │ ├── 爆炸效果类 --> ( 难度等级: [0.2396, 0.2396) || 挂载数据: qa: 1 ) +│ │ │ └── 地图类 --> ( 难度等级: [0.2396, 0.2396) || 挂载数据: qa: 1 ) +│ │ ├── 墙块设计 --> ( 难度等级: [0.2396, 0.2396) || 挂载数据: 无 ) +│ │ │ ├── 墙块抽象类 --> ( 难度等级: [0.2396, 0.2396) || 挂载数据: 无 ) +│ │ │ └── 墙块实体类 --> ( 难度等级: [0.2396, 0.2396) || 挂载数据: qa: 4 ) +│ │ ├── 窗体类设计 --> ( 难度等级: [0.2396, 0.2397) || 挂载数据: 无 ) +│ │ │ ├── 主窗体 --> ( 难度等级: [0.2396, 0.2396) || 挂载数据: 无 ) +│ │ │ ├── 登录面板 --> ( 难度等级: [0.2396, 0.2396) || 挂载数据: qa: 10 ) +│ │ │ ├── 显示关卡面板 --> ( 难度等级: [0.2396, 0.2396) || 挂载数据: 无 ) +│ │ │ └── 游戏面板 --> ( 难度等级: [0.2396, 0.2397) || 挂载数据: qa: 8 ) +│ │ └── 游戏核心功能设计 --> ( 难度等级: [0.2397, 0.2397) || 挂载数据: 无 ) +│ │ ├── 碰撞检测 --> ( 难度等级: [0.2397, 0.2397) || 挂载数据: qa: 1 ) +│ │ └── 刷新帧 --> ( 难度等级: [0.2397, 0.2397) || 挂载数据: qa: 2 ) +│ ├── 对象导论 --> ( 难度等级: [0.2397, 0.24) || 挂载数据: 无 ) +│ │ ├── 抽象过程 --> ( 难度等级: [0.2397, 0.2397) || 挂载数据: 无 ) +│ │ ├── 每个对象都有一个接口 --> ( 难度等级: [0.2397, 0.2398) || 挂载数据: qa: 1 ) +│ │ ├── 每个对象都提供服务 --> ( 难度等级: [0.2398, 0.2398) || 挂载数据: 无 ) +│ │ ├── 被隐藏的具体实现 --> ( 难度等级: [0.2398, 0.2398) || 挂载数据: qa: 2 ) +│ │ ├── 复用具体实现 --> ( 难度等级: [0.2398, 0.2399) || 挂载数据: 无 ) +│ │ ├── 伴随多态的可互换对象 --> ( 难度等级: [0.2399, 0.2399) || 挂载数据: 无 ) +│ │ ├── 单根继承结构 --> ( 难度等级: [0.2399, 0.2399) || 挂载数据: 无 ) +│ │ ├── 容器 --> ( 难度等级: [0.2399, 0.24) || 挂载数据: 无 ) +│ │ │ └── 参数化类型(范型) --> ( 难度等级: [0.2399, 0.24) || 挂载数据: qa: 1 ) +│ │ └── 并发编程 --> ( 难度等级: [0.24, 0.24) || 挂载数据: qa: 2 ) +│ ├── 操作符 --> ( 难度等级: [0.24, 0.2403) || 挂载数据: 无 ) +│ │ ├── 更简单的打印语句 --> ( 难度等级: [0.24, 0.24) || 挂载数据: 无 ) +│ │ ├── 使用Java操作符 --> ( 难度等级: [0.24, 0.24) || 挂载数据: qa: 1 ) +│ │ ├── 优先级 --> ( 难度等级: [0.24, 0.2401) || 挂载数据: qa: 2 ) +│ │ ├── 赋值 --> ( 难度等级: [0.2401, 0.2401) || 挂载数据: qa: 6 ) +│ │ ├── 算术操作符 --> ( 难度等级: [0.2401, 0.2401) || 挂载数据: 无 ) +│ │ │ └── 一元加、减操作符 --> ( 难度等级: [0.2401, 0.2401) || 挂载数据: qa: 1 ) +│ │ ├── 自动递增和递减 --> ( 难度等级: [0.2401, 0.2401) || 挂载数据: qa: 1 ) +│ │ ├── 关系操作符 --> ( 难度等级: [0.2401, 0.2401) || 挂载数据: 无 ) +│ │ │ └── 测试对象的等价性 --> ( 难度等级: [0.2401, 0.2401) || 挂载数据: 无 ) +│ │ ├── 逻辑操作符 --> ( 难度等级: [0.2401, 0.2402) || 挂载数据: 无 ) +│ │ │ └── 短路 --> ( 难度等级: [0.2401, 0.2402) || 挂载数据: 无 ) +│ │ ├── 按位操作符 --> ( 难度等级: [0.2402, 0.2402) || 挂载数据: 无 ) +│ │ ├── 移位操作符 --> ( 难度等级: [0.2402, 0.2402) || 挂载数据: 无 ) +│ │ ├── 三元操作符if-else --> ( 难度等级: [0.2402, 0.2402) || 挂载数据: 无 ) +│ │ ├── 字符串操作符 + 和 += --> ( 难度等级: [0.2402, 0.2403) || 挂载数据: 无 ) +│ │ ├── 使用操作符时常犯的错误 --> ( 难度等级: [0.2403, 0.2403) || 挂载数据: 无 ) +│ │ ├── 类型转换操作符 --> ( 难度等级: [0.2403, 0.2403) || 挂载数据: 无 ) +│ │ │ ├── 截尾和舍入 --> ( 难度等级: [0.2403, 0.2403) || 挂载数据: 无 ) +│ │ │ └── 提升 --> ( 难度等级: [0.2403, 0.2403) || 挂载数据: qa: 1 ) +│ │ └── Java没有“sizeof” --> ( 难度等级: [0.2403, 0.2403) || 挂载数据: 无 ) +│ ├── 控制执行流程 --> ( 难度等级: [0.2403, 0.2406) || 挂载数据: 无 ) +│ │ ├── true和false --> ( 难度等级: [0.2403, 0.2404) || 挂载数据: qa: 9 ) +│ │ ├── if-else --> ( 难度等级: [0.2404, 0.2404) || 挂载数据: qa: 10 ) +│ │ ├── 迭代 --> ( 难度等级: [0.2404, 0.2404) || 挂载数据: 无 ) +│ │ │ ├── do-while --> ( 难度等级: [0.2404, 0.2404) || 挂载数据: qa: 10 ) +│ │ │ └── 逗号操作符 --> ( 难度等级: [0.2404, 0.2404) || 挂载数据: 无 ) +│ │ ├── Foreach语法 --> ( 难度等级: [0.2404, 0.2405) || 挂载数据: 无 ) +│ │ ├── return --> ( 难度等级: [0.2405, 0.2405) || 挂载数据: qa: 10 ) +│ │ ├── break和continue --> ( 难度等级: [0.2405, 0.2405) || 挂载数据: qa: 5 ) +│ │ ├── 臭名昭著的“goto” --> ( 难度等级: [0.2405, 0.2406) || 挂载数据: 无 ) +│ │ └── switch --> ( 难度等级: [0.2406, 0.2406) || 挂载数据: qa: 7 ) +│ ├── 初始化与清理 --> ( 难度等级: [0.2406, 0.2409) || 挂载数据: 无 ) +│ │ ├── 用构造器确保初始化 --> ( 难度等级: [0.2406, 0.2407) || 挂载数据: 无 ) +│ │ ├── 缺省构造器 --> ( 难度等级: [0.2407, 0.2407) || 挂载数据: 无 ) +│ │ ├── 成员初始化 --> ( 难度等级: [0.2407, 0.2408) || 挂载数据: 无 ) +│ │ │ └── 指定初始化 --> ( 难度等级: [0.2407, 0.2408) || 挂载数据: qa: 10 ) +│ │ ├── 构造器初始化 --> ( 难度等级: [0.2408, 0.2408) || 挂载数据: 无 ) +│ │ │ ├── 初始化顺序 --> ( 难度等级: [0.2408, 0.2408) || 挂载数据: qa: 2 ) +│ │ │ ├── 静态数据的初始化 --> ( 难度等级: [0.2408, 0.2408) || 挂载数据: 无 ) +│ │ │ └── 显式的静态初始化 --> ( 难度等级: [0.2408, 0.2408) || 挂载数据: qa: 2 ) +│ │ ├── 数组初始化 --> ( 难度等级: [0.2408, 0.2408) || 挂载数据: qa: 2 ) +│ │ │ └── 可变参数列表 --> ( 难度等级: [0.2408, 0.2408) || 挂载数据: qa: 5 ) +│ │ ├── 枚举类型 --> ( 难度等级: [0.2408, 0.2409) || 挂载数据: 无 ) +│ │ │ ├── 基本enum特性 --> ( 难度等级: [0.2408, 0.2409) || 挂载数据: 无 ) +│ │ │ │ └── 将静态导入用于enum --> ( 难度等级: [0.2408, 0.2409) || 挂载数据: 无 ) +│ │ │ ├── 向enum中添加新方法 --> ( 难度等级: [0.2409, 0.2409) || 挂载数据: 无 ) +│ │ │ │ └── 覆盖enum的方法 --> ( 难度等级: [0.2409, 0.2409) || 挂载数据: qa: 9 ) +│ │ │ ├── switch语句中的enum --> ( 难度等级: [0.2409, 0.2409) || 挂载数据: 无 ) +│ │ │ ├── values()的神秘之处 --> ( 难度等级: [0.2409, 0.2409) || 挂载数据: 无 ) +│ │ │ ├── 实现但不继承随机选取 --> ( 难度等级: [0.2409, 0.2409) || 挂载数据: qa: 1 ) +│ │ │ ├── 为组织而使用接口 --> ( 难度等级: [0.2409, 0.2409) || 挂载数据: 无 ) +│ │ │ ├── 使用EnumSet替代标志 --> ( 难度等级: [0.2409, 0.2409) || 挂载数据: 无 ) +│ │ │ ├── 使用EnumMap --> ( 难度等级: [0.2409, 0.2409) || 挂载数据: 无 ) +│ │ │ ├── 常数相关的方法 --> ( 难度等级: [0.2409, 0.2409) || 挂载数据: 无 ) +│ │ │ │ ├── 使用enum的职责链 --> ( 难度等级: [0.2409, 0.2409) || 挂载数据: 无 ) +│ │ │ │ └── 使用enum的状态机 --> ( 难度等级: [0.2409, 0.2409) || 挂载数据: 无 ) +│ │ │ ├── 多路分发 --> ( 难度等级: [0.2409, 0.2409) || 挂载数据: 无 ) +│ │ │ │ ├── 使用enum分发 --> ( 难度等级: [0.2409, 0.2409) || 挂载数据: 无 ) +│ │ │ │ └── 使用EnumMap分发 --> ( 难度等级: [0.2409, 0.2409) || 挂载数据: 无 ) +│ │ │ ├── 使用枚举类型设置常量 --> ( 难度等级: [0.2409, 0.2409) || 挂载数据: qa: 1 ) +│ │ │ └── 使用枚举类型的优势 --> ( 难度等级: [0.2409, 0.2409) || 挂载数据: qa: 1 ) +│ │ └── 类初始化块 --> ( 难度等级: [0.2409, 0.2409) || 挂载数据: qa: 1 ) +│ ├── 访问权限控制 --> ( 难度等级: [0.2409, 0.2412) || 挂载数据: 无 ) +│ │ ├── Java访问权限修饰词 --> ( 难度等级: [0.2409, 0.2411) || 挂载数据: 无 ) +│ │ │ ├── 包访问权限 --> ( 难度等级: [0.2409, 0.241) || 挂载数据: qa: 10 ) +│ │ │ ├── public:接口访问权限 --> ( 难度等级: [0.241, 0.241) || 挂载数据: qa: 9 ) +│ │ │ ├── private: 你无法访问 --> ( 难度等级: [0.241, 0.2411) || 挂载数据: qa: 9 ) +│ │ │ └── protected:继承访问权限 --> ( 难度等级: [0.2411, 0.2411) || 挂载数据: qa: 2 ) +│ │ └── 类的访问权限 --> ( 难度等级: [0.2411, 0.2412) || 挂载数据: 无 ) +│ ├── 复用类 --> ( 难度等级: [0.2412, 0.2416) || 挂载数据: 无 ) +│ │ ├── 组合语法 --> ( 难度等级: [0.2412, 0.2413) || 挂载数据: 无 ) +│ │ ├── 继承语法 --> ( 难度等级: [0.2413, 0.2414) || 挂载数据: 无 ) +│ │ │ └── 初始化基类 --> ( 难度等级: [0.2413, 0.2414) || 挂载数据: 无 ) +│ │ ├── 代理 --> ( 难度等级: [0.2414, 0.2414) || 挂载数据: 无 ) +│ │ │ ├── 创建代理对象 --> ( 难度等级: [0.2414, 0.2414) || 挂载数据: 无 ) +│ │ │ └── 代理类的特性 --> ( 难度等级: [0.2414, 0.2414) || 挂载数据: qa: 2 ) +│ │ ├── 在组合与继承之间选择 --> ( 难度等级: [0.2414, 0.2415) || 挂载数据: 无 ) +│ │ └── protected关键字 --> ( 难度等级: [0.2415, 0.2416) || 挂载数据: qa: 1 ) +│ ├── 持有对象 --> ( 难度等级: [0.2416, 0.2419) || 挂载数据: 无 ) +│ │ ├── 基本概念 --> ( 难度等级: [0.2416, 0.2416) || 挂载数据: 无 ) +│ │ ├── 添加一组元素 --> ( 难度等级: [0.2416, 0.2416) || 挂载数据: 无 ) +│ │ ├── 容器的打印 --> ( 难度等级: [0.2416, 0.2416) || 挂载数据: 无 ) +│ │ ├── List --> ( 难度等级: [0.2416, 0.2417) || 挂载数据: 无 ) +│ │ ├── 迭代器 --> ( 难度等级: [0.2417, 0.2417) || 挂载数据: 无 ) +│ │ │ └── ListIterator --> ( 难度等级: [0.2417, 0.2417) || 挂载数据: qa: 1 ) +│ │ ├── LinkedList --> ( 难度等级: [0.2417, 0.2417) || 挂载数据: qa: 5 ) +│ │ ├── Stack --> ( 难度等级: [0.2417, 0.2417) || 挂载数据: qa: 3 ) +│ │ ├── Set --> ( 难度等级: [0.2417, 0.2418) || 挂载数据: 无 ) +│ │ ├── Map --> ( 难度等级: [0.2418, 0.2418) || 挂载数据: 无 ) +│ │ ├── Queue --> ( 难度等级: [0.2418, 0.2418) || 挂载数据: 无 ) +│ │ │ └── PriorityQueue --> ( 难度等级: [0.2418, 0.2418) || 挂载数据: 无 ) +│ │ ├── Collection和Iterator --> ( 难度等级: [0.2418, 0.2418) || 挂载数据: qa: 2 ) +│ │ └── Foreach与迭代器 --> ( 难度等级: [0.2418, 0.2419) || 挂载数据: 无 ) +│ │ └── 适配器方法惯用法 --> ( 难度等级: [0.2418, 0.2419) || 挂载数据: 无 ) +│ ├── 通过异常处理错误 --> ( 难度等级: [0.2419, 0.2422) || 挂载数据: 无 ) +│ │ ├── 概念 --> ( 难度等级: [0.2419, 0.2419) || 挂载数据: qa: 1 ) +│ │ ├── 捕获异常 --> ( 难度等级: [0.2419, 0.2419) || 挂载数据: 无 ) +│ │ │ ├── try块 --> ( 难度等级: [0.2419, 0.2419) || 挂载数据: qa: 1 ) +│ │ │ ├── 异常处理程序 --> ( 难度等级: [0.2419, 0.2419) || 挂载数据: qa: 1 ) +│ │ │ ├── f?inally子句 --> ( 难度等级: [0.2419, 0.2419) || 挂载数据: 无 ) +│ │ │ ├── try-with-Resources语句 --> ( 难度等级: [0.2419, 0.2419) || 挂载数据: 无 ) +│ │ │ └── 分析堆栈轨迹元素 --> ( 难度等级: [0.2419, 0.2419) || 挂载数据: 无 ) +│ │ ├── 创建自定义异常 --> ( 难度等级: [0.2419, 0.242) || 挂载数据: 无 ) +│ │ ├── 异常说明 --> ( 难度等级: [0.242, 0.242) || 挂载数据: 无 ) +│ │ ├── 捕获所有异常 --> ( 难度等级: [0.242, 0.242) || 挂载数据: 无 ) +│ │ │ ├── 栈轨迹 --> ( 难度等级: [0.242, 0.242) || 挂载数据: 无 ) +│ │ │ ├── 重新抛出异常 --> ( 难度等级: [0.242, 0.242) || 挂载数据: qa: 10 ) +│ │ │ └── 异常链 --> ( 难度等级: [0.242, 0.242) || 挂载数据: 无 ) +│ │ ├── Java标准异常 --> ( 难度等级: [0.242, 0.242) || 挂载数据: 无 ) +│ │ │ └── 特例: RuntimeException(运行时异常) --> ( 难度等级: [0.242, 0.242) || 挂载数据: qa: 2 ) +│ │ ├── 使用finally进行清理 --> ( 难度等级: [0.242, 0.2421) || 挂载数据: 无 ) +│ │ │ ├── finally用来做什么 --> ( 难度等级: [0.242, 0.2421) || 挂载数据: qa: 10 ) +│ │ │ ├── 在return中使用finally --> ( 难度等级: [0.2421, 0.2421) || 挂载数据: qa: 1 ) +│ │ │ └── 缺憾:异常丢失 --> ( 难度等级: [0.2421, 0.2421) || 挂载数据: 无 ) +│ │ ├── 构造器 --> ( 难度等级: [0.2421, 0.2421) || 挂载数据: 无 ) +│ │ │ ├── 使用构造器执行初始化 --> ( 难度等级: [0.2421, 0.2421) || 挂载数据: qa: 5 ) +│ │ │ └── 构造器重载 --> ( 难度等级: [0.2421, 0.2421) || 挂载数据: qa: 2 ) +│ │ ├── 异常匹配 --> ( 难度等级: [0.2421, 0.2421) || 挂载数据: qa: 1 ) +│ │ ├── 其他可选方式 --> ( 难度等级: [0.2421, 0.2422) || 挂载数据: qa: 2 ) +│ │ │ ├── 历史 --> ( 难度等级: [0.2421, 0.2421) || 挂载数据: 无 ) +│ │ │ ├── 观点 --> ( 难度等级: [0.2421, 0.2421) || 挂载数据: 无 ) +│ │ │ ├── 把异常传递给控制台 --> ( 难度等级: [0.2421, 0.2422) || 挂载数据: 无 ) +│ │ │ └── 把“受检查异常”转换为“不受检查的异常” --> ( 难度等级: [0.2422, 0.2422) || 挂载数据: 无 ) +│ │ └── 异常使用指南 --> ( 难度等级: [0.2422, 0.2422) || 挂载数据: 无 ) +│ ├── 类型信息 --> ( 难度等级: [0.2422, 0.2425) || 挂载数据: 无 ) +│ │ ├── Class对象 --> ( 难度等级: [0.2422, 0.2422) || 挂载数据: 无 ) +│ │ │ ├── 类字面常量 --> ( 难度等级: [0.2422, 0.2422) || 挂载数据: 无 ) +│ │ │ ├── 泛化的Class引用 --> ( 难度等级: [0.2422, 0.2422) || 挂载数据: qa: 10 ) +│ │ │ └── 新的转型语法 --> ( 难度等级: [0.2422, 0.2422) || 挂载数据: 无 ) +│ │ ├── 类型转换前先做检查 --> ( 难度等级: [0.2422, 0.2423) || 挂载数据: 无 ) +│ │ │ ├── 使用类字面常量 --> ( 难度等级: [0.2422, 0.2422) || 挂载数据: 无 ) +│ │ │ ├── 动态instanceof --> ( 难度等级: [0.2422, 0.2423) || 挂载数据: qa: 1 ) +│ │ │ └── 递归计数 --> ( 难度等级: [0.2423, 0.2423) || 挂载数据: 无 ) +│ │ ├── 注册工厂 --> ( 难度等级: [0.2423, 0.2423) || 挂载数据: 无 ) +│ │ ├── instanceof与Class的等价性 --> ( 难度等级: [0.2423, 0.2424) || 挂载数据: 无 ) +│ │ ├── 反射:运行时类信息 --> ( 难度等级: [0.2424, 0.2424) || 挂载数据: 无 ) +│ │ │ ├── 类方法抽取器 --> ( 难度等级: [0.2424, 0.2424) || 挂载数据: 无 ) +│ │ │ ├── Class类与Java反射 --> ( 难度等级: [0.2424, 0.2424) || 挂载数据: 无 ) +│ │ │ │ ├── 访问构造方法 --> ( 难度等级: [0.2424, 0.2424) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 访问成员变量 --> ( 难度等级: [0.2424, 0.2424) || 挂载数据: qa: 2 ) +│ │ │ │ └── 访问方法 --> ( 难度等级: [0.2424, 0.2424) || 挂载数据: 无 ) +│ │ │ ├── 使用Annotation功能 --> ( 难度等级: [0.2424, 0.2424) || 挂载数据: qa: 10 ) +│ │ │ │ ├── 定义Annotation类型 --> ( 难度等级: [0.2424, 0.2424) || 挂载数据: qa: 5 ) +│ │ │ │ └── 访问Annotation信息 --> ( 难度等级: [0.2424, 0.2424) || 挂载数据: qa: 10 ) +│ │ │ ├── 声明异常入门 --> ( 难度等级: [0.2424, 0.2424) || 挂载数据: 无 ) +│ │ │ ├── 资源 --> ( 难度等级: [0.2424, 0.2424) || 挂载数据: 无 ) +│ │ │ ├── 利用反射分析类的能力 --> ( 难度等级: [0.2424, 0.2424) || 挂载数据: qa: 2 ) +│ │ │ ├── 使用反射在运行时分析 --> ( 难度等级: [0.2424, 0.2424) || 挂载数据: 无 ) +│ │ │ ├── 使用反射编写泛型数组 --> ( 难度等级: [0.2424, 0.2424) || 挂载数据: 无 ) +│ │ │ ├── 访问字段 --> ( 难度等级: [0.2424, 0.2424) || 挂载数据: 无 ) +│ │ │ ├── 调用方法 --> ( 难度等级: [0.2424, 0.2424) || 挂载数据: qa: 3 ) +│ │ │ ├── 调用构造方法 --> ( 难度等级: [0.2424, 0.2424) || 挂载数据: qa: 3 ) +│ │ │ └── 获取继承关系 --> ( 难度等级: [0.2424, 0.2424) || 挂载数据: qa: 2 ) +│ │ ├── 动态代理 --> ( 难度等级: [0.2424, 0.2425) || 挂载数据: 无 ) +│ │ └── 空对象 --> ( 难度等级: [0.2425, 0.2425) || 挂载数据: 无 ) +│ │ └── 模拟对象与桩 --> ( 难度等级: [0.2425, 0.2425) || 挂载数据: 无 ) +│ ├── 容器深入研究 --> ( 难度等级: [0.2425, 0.2428) || 挂载数据: 无 ) +│ │ ├── 完整的容器分类法 --> ( 难度等级: [0.2425, 0.2425) || 挂载数据: 无 ) +│ │ ├── 填充容器 --> ( 难度等级: [0.2425, 0.2426) || 挂载数据: qa: 1 ) +│ │ │ ├── 一种Generator解决方案 --> ( 难度等级: [0.2425, 0.2425) || 挂载数据: qa: 1 ) +│ │ │ ├── Map生成器 --> ( 难度等级: [0.2425, 0.2425) || 挂载数据: qa: 1 ) +│ │ │ └── 使用Abstract类 --> ( 难度等级: [0.2425, 0.2426) || 挂载数据: qa: 1 ) +│ │ ├── Collection的功能方法 --> ( 难度等级: [0.2426, 0.2426) || 挂载数据: 无 ) +│ │ ├── 可选操作 --> ( 难度等级: [0.2426, 0.2426) || 挂载数据: 无 ) +│ │ │ └── 未获支持的操作 --> ( 难度等级: [0.2426, 0.2426) || 挂载数据: 无 ) +│ │ ├── List的功能方法 --> ( 难度等级: [0.2426, 0.2426) || 挂载数据: 无 ) +│ │ ├── 队列 --> ( 难度等级: [0.2426, 0.2427) || 挂载数据: qa: 1 ) +│ │ │ ├── 优先级队列 --> ( 难度等级: [0.2426, 0.2426) || 挂载数据: qa: 7 ) +│ │ │ └── 双向队列 --> ( 难度等级: [0.2426, 0.2427) || 挂载数据: 无 ) +│ │ ├── 理解Map --> ( 难度等级: [0.2427, 0.2427) || 挂载数据: 无 ) +│ │ │ ├── 性能 --> ( 难度等级: [0.2427, 0.2427) || 挂载数据: qa: 1 ) +│ │ │ ├── SortedMap --> ( 难度等级: [0.2427, 0.2427) || 挂载数据: 无 ) +│ │ │ └── LinkedHashMap --> ( 难度等级: [0.2427, 0.2427) || 挂载数据: qa: 3 ) +│ │ ├── 散列与散列码 --> ( 难度等级: [0.2427, 0.2427) || 挂载数据: 无 ) +│ │ │ ├── 理解hashCode() --> ( 难度等级: [0.2427, 0.2427) || 挂载数据: qa: 10 ) +│ │ │ ├── 为速度而散列 --> ( 难度等级: [0.2427, 0.2427) || 挂载数据: qa: 1 ) +│ │ │ └── 覆盖hashCode() --> ( 难度等级: [0.2427, 0.2427) || 挂载数据: 无 ) +│ │ ├── 选择接口的不同实现 --> ( 难度等级: [0.2427, 0.2427) || 挂载数据: 无 ) +│ │ │ ├── 性能测试框架 --> ( 难度等级: [0.2427, 0.2427) || 挂载数据: 无 ) +│ │ │ ├── 对List的选择 --> ( 难度等级: [0.2427, 0.2427) || 挂载数据: qa: 7 ) +│ │ │ ├── 微基准测试的危险 --> ( 难度等级: [0.2427, 0.2427) || 挂载数据: 无 ) +│ │ │ ├── 对Set的选择 --> ( 难度等级: [0.2427, 0.2427) || 挂载数据: 无 ) +│ │ │ └── 对Map的选择 --> ( 难度等级: [0.2427, 0.2427) || 挂载数据: 无 ) +│ │ ├── 实用方法 --> ( 难度等级: [0.2427, 0.2428) || 挂载数据: qa: 1 ) +│ │ │ ├── List的排序和查询 --> ( 难度等级: [0.2427, 0.2427) || 挂载数据: 无 ) +│ │ │ ├── 设定Collection或Map为不可修改 --> ( 难度等级: [0.2427, 0.2428) || 挂载数据: 无 ) +│ │ │ └── Collection或Map的同步控制 --> ( 难度等级: [0.2428, 0.2428) || 挂载数据: 无 ) +│ │ ├── 持有引用 --> ( 难度等级: [0.2428, 0.2428) || 挂载数据: 无 ) +│ │ │ └── WeakHashMap --> ( 难度等级: [0.2428, 0.2428) || 挂载数据: 无 ) +│ │ └── Java 1.0/1.1 的容器 --> ( 难度等级: [0.2428, 0.2428) || 挂载数据: 无 ) +│ │ ├── Vector和Enumeration --> ( 难度等级: [0.2428, 0.2428) || 挂载数据: qa: 3 ) +│ │ ├── Hashtable --> ( 难度等级: [0.2428, 0.2428) || 挂载数据: 无 ) +│ │ └── BitSet --> ( 难度等级: [0.2428, 0.2428) || 挂载数据: 无 ) +│ ├── Java I/O系统 --> ( 难度等级: [0.2428, 0.2431) || 挂载数据: 无 ) +│ │ ├── 输入和输出 --> ( 难度等级: [0.2428, 0.2428) || 挂载数据: qa: 1 ) +│ │ │ ├── InputStream类型 --> ( 难度等级: [0.2428, 0.2428) || 挂载数据: 无 ) +│ │ │ ├── OutputStream类型 --> ( 难度等级: [0.2428, 0.2428) || 挂载数据: 无 ) +│ │ │ └── 读取输入 --> ( 难度等级: [0.2428, 0.2428) || 挂载数据: qa: 2 ) +│ │ ├── 添加属性和有用的接口 --> ( 难度等级: [0.2428, 0.2429) || 挂载数据: 无 ) +│ │ │ ├── 通过FilterInputStream从InputStream读取 --> ( 难度等级: [0.2428, 0.2429) || 挂载数据: qa: 1 ) +│ │ │ └── 通过FilterOutPutStream向OutputStream写入 --> ( 难度等级: [0.2429, 0.2429) || 挂载数据: qa: 1 ) +│ │ ├── Reader和Writer --> ( 难度等级: [0.2429, 0.2429) || 挂载数据: 无 ) +│ │ │ ├── 数据的来源和去处 --> ( 难度等级: [0.2429, 0.2429) || 挂载数据: 无 ) +│ │ │ ├── 更改流的行为 --> ( 难度等级: [0.2429, 0.2429) || 挂载数据: qa: 1 ) +│ │ │ └── 未发生变化的类 --> ( 难度等级: [0.2429, 0.2429) || 挂载数据: 无 ) +│ │ ├── I/O流的典型使用方式 --> ( 难度等级: [0.2429, 0.2429) || 挂载数据: 无 ) +│ │ │ ├── 缓冲的输入文件 --> ( 难度等级: [0.2429, 0.2429) || 挂载数据: qa: 1 ) +│ │ │ ├── 从内存中输入 --> ( 难度等级: [0.2429, 0.2429) || 挂载数据: 无 ) +│ │ │ ├── 格式化的内存输入 --> ( 难度等级: [0.2429, 0.2429) || 挂载数据: 无 ) +│ │ │ ├── 基本文件输出 --> ( 难度等级: [0.2429, 0.2429) || 挂载数据: 无 ) +│ │ │ ├── 存储和恢复数据 --> ( 难度等级: [0.2429, 0.2429) || 挂载数据: 无 ) +│ │ │ ├── 读取和写入随机访问文件 --> ( 难度等级: [0.2429, 0.2429) || 挂载数据: qa: 1 ) +│ │ │ └── 管道流 --> ( 难度等级: [0.2429, 0.2429) || 挂载数据: qa: 1 ) +│ │ ├── 文件读写的实用工具 --> ( 难度等级: [0.2429, 0.243) || 挂载数据: 无 ) +│ │ │ └── 读取二进制文件 --> ( 难度等级: [0.2429, 0.243) || 挂载数据: qa: 10 ) +│ │ ├── 标准I/O --> ( 难度等级: [0.243, 0.243) || 挂载数据: 无 ) +│ │ │ ├── 从标准输入中读取 --> ( 难度等级: [0.243, 0.243) || 挂载数据: 无 ) +│ │ │ ├── 将System.out转换成PrintWriter --> ( 难度等级: [0.243, 0.243) || 挂载数据: 无 ) +│ │ │ └── 标准I/O重定向 --> ( 难度等级: [0.243, 0.243) || 挂载数据: qa: 10 ) +│ │ ├── 进程控制 --> ( 难度等级: [0.243, 0.243) || 挂载数据: 无 ) +│ │ ├── 压缩 --> ( 难度等级: [0.243, 0.2431) || 挂载数据: 无 ) +│ │ │ ├── 用GZIP进行简单压缩 --> ( 难度等级: [0.243, 0.243) || 挂载数据: qa: 4 ) +│ │ │ ├── 用Zip进行多文件存储 --> ( 难度等级: [0.243, 0.2431) || 挂载数据: 无 ) +│ │ │ └── Java档案文件 --> ( 难度等级: [0.2431, 0.2431) || 挂载数据: 无 ) +│ │ ├── XML --> ( 难度等级: [0.2431, 0.2431) || 挂载数据: 无 ) +│ │ └── Preferences --> ( 难度等级: [0.2431, 0.2431) || 挂载数据: 无 ) +│ ├── 注解 --> ( 难度等级: [0.2431, 0.2434) || 挂载数据: 无 ) +│ │ ├── 基本语法 --> ( 难度等级: [0.2431, 0.2432) || 挂载数据: 无 ) +│ │ │ ├── 定义注解 --> ( 难度等级: [0.2431, 0.2431) || 挂载数据: 无 ) +│ │ │ └── 元注解 --> ( 难度等级: [0.2431, 0.2432) || 挂载数据: 无 ) +│ │ ├── 编写注解处理器 --> ( 难度等级: [0.2432, 0.2432) || 挂载数据: 无 ) +│ │ │ ├── 注解元素 --> ( 难度等级: [0.2432, 0.2432) || 挂载数据: qa: 6 ) +│ │ │ ├── 缺省值限制 --> ( 难度等级: [0.2432, 0.2432) || 挂载数据: 无 ) +│ │ │ ├── 生成外部文件 --> ( 难度等级: [0.2432, 0.2432) || 挂载数据: qa: 9 ) +│ │ │ ├── 注解不支持继承 --> ( 难度等级: [0.2432, 0.2432) || 挂载数据: 无 ) +│ │ │ └── 实现处理器 --> ( 难度等级: [0.2432, 0.2432) || 挂载数据: 无 ) +│ │ ├── 使用apt处理注解 --> ( 难度等级: [0.2432, 0.2432) || 挂载数据: 无 ) +│ │ ├── 将观察者模式用于apt --> ( 难度等级: [0.2432, 0.2433) || 挂载数据: qa: 1 ) +│ │ ├── 基于注解的单元测试 --> ( 难度等级: [0.2433, 0.2433) || 挂载数据: 无 ) +│ │ │ ├── 将@Unit用于泛型 --> ( 难度等级: [0.2433, 0.2433) || 挂载数据: 无 ) +│ │ │ ├── 不需要任何“套件” --> ( 难度等级: [0.2433, 0.2433) || 挂载数据: 无 ) +│ │ │ ├── 实现@Unit --> ( 难度等级: [0.2433, 0.2433) || 挂载数据: 无 ) +│ │ │ └── 移除测试代码 --> ( 难度等级: [0.2433, 0.2433) || 挂载数据: qa: 2 ) +│ │ ├── 限定重写父类方法:@Override --> ( 难度等级: [0.2433, 0.2433) || 挂载数据: 无 ) +│ │ ├── Java 9增强的@Deprecated --> ( 难度等级: [0.2433, 0.2434) || 挂载数据: 无 ) +│ │ ├── 抑制编译器警告:@SuppressWarnings --> ( 难度等级: [0.2434, 0.2434) || 挂载数据: 无 ) +│ │ └── “堆污染”警告与Java 9增强的@SafeVarargs --> ( 难度等级: [0.2434, 0.2434) || 挂载数据: 无 ) +│ ├── 并发 --> ( 难度等级: [0.2434, 0.2437) || 挂载数据: qa: 1 ) +│ │ ├── 并发的多面性 --> ( 难度等级: [0.2434, 0.2435) || 挂载数据: qa: 1 ) +│ │ │ ├── 更快的执行 --> ( 难度等级: [0.2434, 0.2434) || 挂载数据: 无 ) +│ │ │ └── 改进代码设计 --> ( 难度等级: [0.2434, 0.2435) || 挂载数据: 无 ) +│ │ ├── 基本的线程机制 --> ( 难度等级: [0.2435, 0.2435) || 挂载数据: 无 ) +│ │ │ ├── 定义任务让步 --> ( 难度等级: [0.2435, 0.2435) || 挂载数据: 无 ) +│ │ │ ├── 使用Executor --> ( 难度等级: [0.2435, 0.2435) || 挂载数据: 无 ) +│ │ │ ├── 从任务产生返回值 --> ( 难度等级: [0.2435, 0.2435) || 挂载数据: 无 ) +│ │ │ ├── 休眠 --> ( 难度等级: [0.2435, 0.2435) || 挂载数据: 无 ) +│ │ │ ├── 让步 --> ( 难度等级: [0.2435, 0.2435) || 挂载数据: 无 ) +│ │ │ ├── 编码的变体 --> ( 难度等级: [0.2435, 0.2435) || 挂载数据: 无 ) +│ │ │ ├── 术语 --> ( 难度等级: [0.2435, 0.2435) || 挂载数据: 无 ) +│ │ │ └── 创建有响应的用户界面 --> ( 难度等级: [0.2435, 0.2435) || 挂载数据: 无 ) +│ │ ├── 共享受限资源 --> ( 难度等级: [0.2435, 0.2435) || 挂载数据: 无 ) +│ │ │ ├── 不正确地访问资源 --> ( 难度等级: [0.2435, 0.2435) || 挂载数据: qa: 2 ) +│ │ │ ├── 解决共享资源竞争 --> ( 难度等级: [0.2435, 0.2435) || 挂载数据: 无 ) +│ │ │ ├── 原子性与易变性 --> ( 难度等级: [0.2435, 0.2435) || 挂载数据: qa: 1 ) +│ │ │ ├── 原子类 --> ( 难度等级: [0.2435, 0.2435) || 挂载数据: 无 ) +│ │ │ ├── 临界资源 --> ( 难度等级: [0.2435, 0.2435) || 挂载数据: 无 ) +│ │ │ ├── 在其他对象上同步 --> ( 难度等级: [0.2435, 0.2435) || 挂载数据: 无 ) +│ │ │ └── 线程局部存储 --> ( 难度等级: [0.2435, 0.2435) || 挂载数据: 无 ) +│ │ ├── 终结任务 --> ( 难度等级: [0.2435, 0.2435) || 挂载数据: 无 ) +│ │ │ ├── 装饰性花园 --> ( 难度等级: [0.2435, 0.2435) || 挂载数据: 无 ) +│ │ │ ├── 在阻塞时终结 --> ( 难度等级: [0.2435, 0.2435) || 挂载数据: 无 ) +│ │ │ ├── 中断 --> ( 难度等级: [0.2435, 0.2435) || 挂载数据: qa: 1 ) +│ │ │ └── 检查中断 --> ( 难度等级: [0.2435, 0.2435) || 挂载数据: 无 ) +│ │ ├── 线程之间的协作 --> ( 难度等级: [0.2435, 0.2435) || 挂载数据: 无 ) +│ │ │ ├── wait()与notifyAll() --> ( 难度等级: [0.2435, 0.2435) || 挂载数据: 无 ) +│ │ │ ├── notify()与notifyAll() --> ( 难度等级: [0.2435, 0.2435) || 挂载数据: qa: 1 ) +│ │ │ ├── 生产者与消费者 --> ( 难度等级: [0.2435, 0.2435) || 挂载数据: 无 ) +│ │ │ └── 任务间使用管道进行输入/输出 --> ( 难度等级: [0.2435, 0.2435) || 挂载数据: 无 ) +│ │ ├── 死锁 --> ( 难度等级: [0.2435, 0.2436) || 挂载数据: 无 ) +│ │ ├── 新类库中的构件 --> ( 难度等级: [0.2436, 0.2436) || 挂载数据: qa: 1 ) +│ │ │ ├── CountDownLatch --> ( 难度等级: [0.2436, 0.2436) || 挂载数据: 无 ) +│ │ │ ├── CyclicBarrier --> ( 难度等级: [0.2436, 0.2436) || 挂载数据: 无 ) +│ │ │ ├── DelayQueue --> ( 难度等级: [0.2436, 0.2436) || 挂载数据: 无 ) +│ │ │ ├── PriorityBlockingQueue --> ( 难度等级: [0.2436, 0.2436) || 挂载数据: 无 ) +│ │ │ ├── 使用ScheduledExecutor的温室控制器 --> ( 难度等级: [0.2436, 0.2436) || 挂载数据: 无 ) +│ │ │ ├── Semaphore --> ( 难度等级: [0.2436, 0.2436) || 挂载数据: 无 ) +│ │ │ └── Exchange --> ( 难度等级: [0.2436, 0.2436) || 挂载数据: 无 ) +│ │ ├── 仿真 --> ( 难度等级: [0.2436, 0.2436) || 挂载数据: 无 ) +│ │ │ ├── 银行出纳仿真 --> ( 难度等级: [0.2436, 0.2436) || 挂载数据: 无 ) +│ │ │ ├── 饭店仿真 --> ( 难度等级: [0.2436, 0.2436) || 挂载数据: 无 ) +│ │ │ └── 分发工作 --> ( 难度等级: [0.2436, 0.2436) || 挂载数据: qa: 2 ) +│ │ ├── 性能调优 --> ( 难度等级: [0.2436, 0.2436) || 挂载数据: 无 ) +│ │ │ ├── 比较各类互斥技术 --> ( 难度等级: [0.2436, 0.2436) || 挂载数据: 无 ) +│ │ │ ├── 免锁容器 --> ( 难度等级: [0.2436, 0.2436) || 挂载数据: 无 ) +│ │ │ ├── 乐观锁 --> ( 难度等级: [0.2436, 0.2436) || 挂载数据: 无 ) +│ │ │ └── ReadWriteLock --> ( 难度等级: [0.2436, 0.2436) || 挂载数据: 无 ) +│ │ ├── 活动对象 --> ( 难度等级: [0.2436, 0.2436) || 挂载数据: 无 ) +│ │ ├── 进阶读物 --> ( 难度等级: [0.2436, 0.2437) || 挂载数据: 无 ) +│ │ ├── 线程状态 --> ( 难度等级: [0.2437, 0.2437) || 挂载数据: 无 ) +│ │ │ ├── 新建线程 --> ( 难度等级: [0.2437, 0.2437) || 挂载数据: qa: 2 ) +│ │ │ ├── 可运行线程 --> ( 难度等级: [0.2437, 0.2437) || 挂载数据: qa: 4 ) +│ │ │ ├── 阻塞和等待线程 --> ( 难度等级: [0.2437, 0.2437) || 挂载数据: qa: 4 ) +│ │ │ └── 终止线程 --> ( 难度等级: [0.2437, 0.2437) || 挂载数据: 无 ) +│ │ ├── 线程属性 --> ( 难度等级: [0.2437, 0.2437) || 挂载数据: 无 ) +│ │ │ ├── 中断线程 --> ( 难度等级: [0.2437, 0.2437) || 挂载数据: 无 ) +│ │ │ ├── 守护线程 --> ( 难度等级: [0.2437, 0.2437) || 挂载数据: 无 ) +│ │ │ ├── 线程名 --> ( 难度等级: [0.2437, 0.2437) || 挂载数据: qa: 1 ) +│ │ │ └── 未捕获异常的处理器 --> ( 难度等级: [0.2437, 0.2437) || 挂载数据: 无 ) +│ │ ├── 线程安全的集合 --> ( 难度等级: [0.2437, 0.2437) || 挂载数据: 无 ) +│ │ │ ├── 阻塞队列 --> ( 难度等级: [0.2437, 0.2437) || 挂载数据: 无 ) +│ │ │ ├── 映射条目的原子更新 --> ( 难度等级: [0.2437, 0.2437) || 挂载数据: 无 ) +│ │ │ ├── 对并发散列映射的批操作 --> ( 难度等级: [0.2437, 0.2437) || 挂载数据: 无 ) +│ │ │ ├── 并发集视图 --> ( 难度等级: [0.2437, 0.2437) || 挂载数据: 无 ) +│ │ │ ├── 写数组的拷贝 --> ( 难度等级: [0.2437, 0.2437) || 挂载数据: 无 ) +│ │ │ ├── 并行数组算法 --> ( 难度等级: [0.2437, 0.2437) || 挂载数据: 无 ) +│ │ │ └── 较早的线程安全集合 --> ( 难度等级: [0.2437, 0.2437) || 挂载数据: 无 ) +│ │ └── 异步计算 --> ( 难度等级: [0.2437, 0.2437) || 挂载数据: 无 ) +│ │ ├── 可完成Future --> ( 难度等级: [0.2437, 0.2437) || 挂载数据: 无 ) +│ │ ├── 组合可完成Future --> ( 难度等级: [0.2437, 0.2437) || 挂载数据: 无 ) +│ │ └── 用户界面回调中的长时间运行任务 --> ( 难度等级: [0.2437, 0.2437) || 挂载数据: qa: 1 ) +│ ├── 图形化用户界面 --> ( 难度等级: [0.2437, 0.2441) || 挂载数据: 无 ) +│ │ ├── Swing基础 --> ( 难度等级: [0.2437, 0.2438) || 挂载数据: 无 ) +│ │ │ └── 一个显示框架 --> ( 难度等级: [0.2437, 0.2438) || 挂载数据: 无 ) +│ │ ├── 创建按钮 --> ( 难度等级: [0.2438, 0.2438) || 挂载数据: 无 ) +│ │ ├── 捕获事件 --> ( 难度等级: [0.2438, 0.2438) || 挂载数据: 无 ) +│ │ ├── 文本区域 --> ( 难度等级: [0.2438, 0.2439) || 挂载数据: 无 ) +│ │ ├── 控制布局 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: 无 ) +│ │ │ ├── GridBagLayout --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: qa: 1 ) +│ │ │ ├── 绝对定位 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: qa: 1 ) +│ │ │ └── BoxLayout --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: 无 ) +│ │ ├── Swing事件模型 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: 无 ) +│ │ │ ├── 事件与监听器的类型 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: 无 ) +│ │ │ └── 跟踪多个事件 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: 无 ) +│ │ ├── Swing组件一览 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: 无 ) +│ │ │ ├── 按钮 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: 无 ) +│ │ │ ├── 图标 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: qa: 1 ) +│ │ │ ├── 工具提示 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: qa: 10 ) +│ │ │ ├── 文本域 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: 无 ) +│ │ │ ├── 边框 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: 无 ) +│ │ │ ├── 滚动面板 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: 无 ) +│ │ │ ├── 一个迷你编辑器 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: 无 ) +│ │ │ ├── 复选框 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: qa: 2 ) +│ │ │ ├── 单选按钮 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: 无 ) +│ │ │ ├── 组合框(下拉列表) --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: 无 ) +│ │ │ ├── 列表框 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: 无 ) +│ │ │ ├── 页签面板 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: qa: 1 ) +│ │ │ ├── 消息框 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: qa: 6 ) +│ │ │ ├── 菜单 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: 无 ) +│ │ │ │ ├── 创建菜单栏 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: 无 ) +│ │ │ │ ├── 创建弹出式菜单 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: 无 ) +│ │ │ │ ├── 定制个性化菜单 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: 无 ) +│ │ │ │ ├── 菜单构建 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: qa: 6 ) +│ │ │ │ ├── 菜单项中的图标 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: 无 ) +│ │ │ │ ├── 弹出菜单 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: qa: 3 ) +│ │ │ │ ├── 键盘助记符和加速器 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: 无 ) +│ │ │ │ ├── 启用和禁用菜单项 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: qa: 1 ) +│ │ │ │ └── 工具条 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: 无 ) +│ │ │ ├── 弹出式菜单 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: 无 ) +│ │ │ ├── 绘图 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: 无 ) +│ │ │ ├── 对话框 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: 无 ) +│ │ │ │ ├── 选项对话框 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: 无 ) +│ │ │ │ ├── 创建对话框 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: qa: 2 ) +│ │ │ │ └── 数据交换 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: 无 ) +│ │ │ ├── 文件对话框 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: qa: 1 ) +│ │ │ ├── Swing组件上的HTML --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: 无 ) +│ │ │ ├── 滑块与进度条 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: 无 ) +│ │ │ ├── 选择外观 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: 无 ) +│ │ │ └── 树、表格和剪贴板 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: 无 ) +│ │ │ ├── 传递文本 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: qa: 1 ) +│ │ │ ├── 使用系统剪贴板传递图像 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: 无 ) +│ │ │ ├── 使用本地剪贴板传递对象引用 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: 无 ) +│ │ │ └── 通过系统剪贴板传递Java对象 --> ( 难度等级: [0.2439, 0.2439) || 挂载数据: 无 ) +│ │ ├── JNLP与Java Web Start --> ( 难度等级: [0.2439, 0.244) || 挂载数据: 无 ) +│ │ ├── 可视化编程与JavaBean --> ( 难度等级: [0.244, 0.244) || 挂载数据: 无 ) +│ │ │ ├── JavaBean是什么 --> ( 难度等级: [0.244, 0.244) || 挂载数据: qa: 10 ) +│ │ │ ├── 使用Introspector抽取出BeanInfo --> ( 难度等级: [0.244, 0.244) || 挂载数据: 无 ) +│ │ │ ├── 一个更复杂的Bean --> ( 难度等级: [0.244, 0.244) || 挂载数据: 无 ) +│ │ │ ├── 把Bean打包 --> ( 难度等级: [0.244, 0.244) || 挂载数据: qa: 4 ) +│ │ │ ├── 对更复杂的Bean的支持 --> ( 难度等级: [0.244, 0.244) || 挂载数据: qa: 3 ) +│ │ │ └── 更多有关Bean的读物 --> ( 难度等级: [0.244, 0.244) || 挂载数据: 无 ) +│ │ ├── Swing的可替换选择 --> ( 难度等级: [0.244, 0.244) || 挂载数据: 无 ) +│ │ ├── 用Flex构建Flash Web客户端 --> ( 难度等级: [0.244, 0.244) || 挂载数据: 无 ) +│ │ │ ├── Hello, Flex --> ( 难度等级: [0.244, 0.244) || 挂载数据: qa: 4 ) +│ │ │ ├── 编译MXML --> ( 难度等级: [0.244, 0.244) || 挂载数据: qa: 10 ) +│ │ │ ├── MXML与ActionScript --> ( 难度等级: [0.244, 0.244) || 挂载数据: 无 ) +│ │ │ ├── 效果与风格 --> ( 难度等级: [0.244, 0.244) || 挂载数据: 无 ) +│ │ │ ├── 事件 --> ( 难度等级: [0.244, 0.244) || 挂载数据: qa: 1 ) +│ │ │ ├── 连接到Java --> ( 难度等级: [0.244, 0.244) || 挂载数据: 无 ) +│ │ │ ├── 数据模型与数据绑定 --> ( 难度等级: [0.244, 0.244) || 挂载数据: qa: 1 ) +│ │ │ └── 构建和部署 --> ( 难度等级: [0.244, 0.244) || 挂载数据: 无 ) +│ │ └── 创建SWT应用 --> ( 难度等级: [0.244, 0.2441) || 挂载数据: 无 ) +│ │ ├── 安装SWT --> ( 难度等级: [0.244, 0.244) || 挂载数据: 无 ) +│ │ ├── Hello, SWT --> ( 难度等级: [0.244, 0.244) || 挂载数据: qa: 2 ) +│ │ ├── 根除冗余代码 --> ( 难度等级: [0.244, 0.244) || 挂载数据: 无 ) +│ │ ├── 菜单 --> ( 难度等级: [0.244, 0.244) || 挂载数据: 无 ) +│ │ ├── 页签面板、按钮和事件 --> ( 难度等级: [0.244, 0.2441) || 挂载数据: 无 ) +│ │ ├── 图形 --> ( 难度等级: [0.2441, 0.2441) || 挂载数据: qa: 1 ) +│ │ ├── SWT中的并发 --> ( 难度等级: [0.2441, 0.2441) || 挂载数据: 无 ) +│ │ └── SWT还是Swing --> ( 难度等级: [0.2441, 0.2441) || 挂载数据: 无 ) +│ ├── 基础知识 --> ( 难度等级: [0.2441, 0.2444) || 挂载数据: qa: 1 ) +│ │ ├── 熟悉Eclipse开发工具 --> ( 难度等级: [0.2441, 0.2442) || 挂载数据: 无 ) +│ │ │ └── 熟悉Eclipse --> ( 难度等级: [0.2441, 0.2442) || 挂载数据: 无 ) +│ │ │ ├── 安装Eclipse的中文语言包 --> ( 难度等级: [0.2441, 0.2441) || 挂载数据: qa: 10 ) +│ │ │ ├── 透视图与视图 --> ( 难度等级: [0.2441, 0.2441) || 挂载数据: 无 ) +│ │ │ ├── 菜单栏 --> ( 难度等级: [0.2441, 0.2441) || 挂载数据: 无 ) +│ │ │ ├── 工具栏 --> ( 难度等级: [0.2441, 0.2442) || 挂载数据: 无 ) +│ │ │ ├── “包资源管理器”视图 --> ( 难度等级: [0.2442, 0.2442) || 挂载数据: 无 ) +│ │ │ └── “控制台”视图 --> ( 难度等级: [0.2442, 0.2442) || 挂载数据: 无 ) +│ │ └── 数字处理类 --> ( 难度等级: [0.2442, 0.2444) || 挂载数据: 无 ) +│ │ ├── 数字格式化 --> ( 难度等级: [0.2442, 0.2443) || 挂载数据: 无 ) +│ │ ├── 数学运算 --> ( 难度等级: [0.2443, 0.2443) || 挂载数据: 无 ) +│ │ ├── 随机数 --> ( 难度等级: [0.2443, 0.2443) || 挂载数据: qa: 6 ) +│ │ │ └── Math.random方法 --> ( 难度等级: [0.2443, 0.2443) || 挂载数据: 无 ) +│ │ └── 大数字运算 --> ( 难度等级: [0.2443, 0.2444) || 挂载数据: qa: 10 ) +│ │ ├── BigInteger --> ( 难度等级: [0.2443, 0.2444) || 挂载数据: 无 ) +│ │ └── BigDecimal --> ( 难度等级: [0.2444, 0.2444) || 挂载数据: qa: 2 ) +│ ├── 核心技术 --> ( 难度等级: [0.2444, 0.2447) || 挂载数据: qa: 1 ) +│ │ ├── 类的高级特性 --> ( 难度等级: [0.2444, 0.2445) || 挂载数据: 无 ) +│ │ │ └── final变量 --> ( 难度等级: [0.2444, 0.2445) || 挂载数据: 无 ) +│ │ ├── 集合类 --> ( 难度等级: [0.2445, 0.2446) || 挂载数据: qa: 1 ) +│ │ │ ├── 集合类概述 --> ( 难度等级: [0.2445, 0.2445) || 挂载数据: qa: 1 ) +│ │ │ ├── List集合 --> ( 难度等级: [0.2445, 0.2445) || 挂载数据: qa: 1 ) +│ │ │ │ ├── List接口的实现类 --> ( 难度等级: [0.2445, 0.2445) || 挂载数据: qa: 10 ) +│ │ │ │ ├── 改进的List接口和ListIterator接口 --> ( 难度等级: [0.2445, 0.2445) || 挂载数据: 无 ) +│ │ │ │ ├── ArrayList和Vector实现类 --> ( 难度等级: [0.2445, 0.2445) || 挂载数据: qa: 6 ) +│ │ │ │ └── 固定长度的List --> ( 难度等级: [0.2445, 0.2445) || 挂载数据: 无 ) +│ │ │ ├── Set集合 --> ( 难度等级: [0.2445, 0.2446) || 挂载数据: 无 ) +│ │ │ │ ├── HashSet类 --> ( 难度等级: [0.2445, 0.2445) || 挂载数据: qa: 3 ) +│ │ │ │ ├── LinkedHashSet类 --> ( 难度等级: [0.2445, 0.2445) || 挂载数据: 无 ) +│ │ │ │ ├── TreeSet类 --> ( 难度等级: [0.2445, 0.2445) || 挂载数据: qa: 5 ) +│ │ │ │ ├── EnumSet类 --> ( 难度等级: [0.2445, 0.2446) || 挂载数据: 无 ) +│ │ │ │ └── 各Set实现类的性能分析 --> ( 难度等级: [0.2446, 0.2446) || 挂载数据: qa: 10 ) +│ │ │ └── Map集合 --> ( 难度等级: [0.2446, 0.2446) || 挂载数据: 无 ) +│ │ │ └── Map接口的实现类 --> ( 难度等级: [0.2446, 0.2446) || 挂载数据: qa: 10 ) +│ │ └── 网络通信 --> ( 难度等级: [0.2446, 0.2447) || 挂载数据: 无 ) +│ │ ├── 网络程序设计基础 --> ( 难度等级: [0.2446, 0.2446) || 挂载数据: 无 ) +│ │ │ ├── 局域网与因特网 --> ( 难度等级: [0.2446, 0.2446) || 挂载数据: qa: 1 ) +│ │ │ ├── 网络协议 --> ( 难度等级: [0.2446, 0.2446) || 挂载数据: 无 ) +│ │ │ └── 端口和套接字 --> ( 难度等级: [0.2446, 0.2446) || 挂载数据: 无 ) +│ │ ├── TCP程序设计基础 --> ( 难度等级: [0.2446, 0.2447) || 挂载数据: 无 ) +│ │ │ ├── InetAddress类 --> ( 难度等级: [0.2446, 0.2446) || 挂载数据: 无 ) +│ │ │ └── ServerSocket类 --> ( 难度等级: [0.2446, 0.2447) || 挂载数据: qa: 1 ) +│ │ └── UDP程序设计基础 --> ( 难度等级: [0.2447, 0.2447) || 挂载数据: 无 ) +│ │ ├── DatagramPacket类 --> ( 难度等级: [0.2447, 0.2447) || 挂载数据: 无 ) +│ │ └── DatagramSocket类 --> ( 难度等级: [0.2447, 0.2447) || 挂载数据: 无 ) +│ ├── 高级应用 --> ( 难度等级: [0.2447, 0.245) || 挂载数据: 无 ) +│ │ ├── Swing表格组件 --> ( 难度等级: [0.2447, 0.2447) || 挂载数据: 无 ) +│ │ │ ├── 利用JTable类直接创建表格 --> ( 难度等级: [0.2447, 0.2447) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 创建表格 --> ( 难度等级: [0.2447, 0.2447) || 挂载数据: 无 ) +│ │ │ │ ├── 定制表格 --> ( 难度等级: [0.2447, 0.2447) || 挂载数据: 无 ) +│ │ │ │ └── 操纵表格 --> ( 难度等级: [0.2447, 0.2447) || 挂载数据: 无 ) +│ │ │ └── 提供行标题栏的表格 --> ( 难度等级: [0.2447, 0.2447) || 挂载数据: qa: 3 ) +│ │ ├── Swing树组件 --> ( 难度等级: [0.2447, 0.2448) || 挂载数据: 无 ) +│ │ │ ├── 处理选中节点事件 --> ( 难度等级: [0.2447, 0.2448) || 挂载数据: 无 ) +│ │ │ ├── 遍历树节点 --> ( 难度等级: [0.2448, 0.2448) || 挂载数据: qa: 4 ) +│ │ │ ├── 定制树 --> ( 难度等级: [0.2448, 0.2448) || 挂载数据: 无 ) +│ │ │ ├── 维护树模型 --> ( 难度等级: [0.2448, 0.2448) || 挂载数据: 无 ) +│ │ │ └── 处理展开节点事件 --> ( 难度等级: [0.2448, 0.2448) || 挂载数据: 无 ) +│ │ ├── Swing其他高级组件 --> ( 难度等级: [0.2448, 0.2449) || 挂载数据: 无 ) +│ │ │ ├── 高级组件面板 --> ( 难度等级: [0.2448, 0.2448) || 挂载数据: 无 ) +│ │ │ │ ├── 分割面板 --> ( 难度等级: [0.2448, 0.2448) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 选项卡面板 --> ( 难度等级: [0.2448, 0.2448) || 挂载数据: 无 ) +│ │ │ │ └── 桌面面板和内部窗体 --> ( 难度等级: [0.2448, 0.2448) || 挂载数据: 无 ) +│ │ │ ├── 文件选择器 --> ( 难度等级: [0.2448, 0.2448) || 挂载数据: 无 ) +│ │ │ │ ├── 文件选择对话框 --> ( 难度等级: [0.2448, 0.2448) || 挂载数据: qa: 2 ) +│ │ │ │ └── 使用文件过滤器 --> ( 难度等级: [0.2448, 0.2448) || 挂载数据: 无 ) +│ │ │ ├── 系统托盘 --> ( 难度等级: [0.2448, 0.2449) || 挂载数据: 无 ) +│ │ │ └── 桌面集成控件 --> ( 难度等级: [0.2449, 0.2449) || 挂载数据: 无 ) +│ │ ├── 高级事件处理 --> ( 难度等级: [0.2449, 0.2449) || 挂载数据: 无 ) +│ │ │ ├── 选项事件 --> ( 难度等级: [0.2449, 0.2449) || 挂载数据: 无 ) +│ │ │ └── 表格模型事件 --> ( 难度等级: [0.2449, 0.2449) || 挂载数据: 无 ) +│ │ └── AWT绘图 --> ( 难度等级: [0.2449, 0.245) || 挂载数据: 无 ) +│ │ ├── 绘制图形 --> ( 难度等级: [0.2449, 0.245) || 挂载数据: 无 ) +│ │ ├── 绘图颜色与画笔属性 --> ( 难度等级: [0.245, 0.245) || 挂载数据: 无 ) +│ │ │ └── 画笔属性 --> ( 难度等级: [0.245, 0.245) || 挂载数据: qa: 2 ) +│ │ ├── 绘制文本 --> ( 难度等级: [0.245, 0.245) || 挂载数据: 无 ) +│ │ │ ├── 设置字体 --> ( 难度等级: [0.245, 0.245) || 挂载数据: qa: 1 ) +│ │ │ └── 显示文字 --> ( 难度等级: [0.245, 0.245) || 挂载数据: qa: 9 ) +│ │ └── 绘制图片 --> ( 难度等级: [0.245, 0.245) || 挂载数据: qa: 1 ) +│ ├── 理解面向对象 --> ( 难度等级: [0.245, 0.2453) || 挂载数据: 无 ) +│ │ ├── UML(统一建模语言)介绍 --> ( 难度等级: [0.245, 0.2452) || 挂载数据: 无 ) +│ │ │ ├── 用例图 --> ( 难度等级: [0.245, 0.245) || 挂载数据: 无 ) +│ │ │ ├── 类图 --> ( 难度等级: [0.245, 0.245) || 挂载数据: 无 ) +│ │ │ ├── 组件图 --> ( 难度等级: [0.245, 0.2451) || 挂载数据: 无 ) +│ │ │ ├── 部署图 --> ( 难度等级: [0.2451, 0.2451) || 挂载数据: 无 ) +│ │ │ ├── 顺序图 --> ( 难度等级: [0.2451, 0.2451) || 挂载数据: 无 ) +│ │ │ ├── 活动图 --> ( 难度等级: [0.2451, 0.2451) || 挂载数据: qa: 8 ) +│ │ │ └── 状态机图 --> ( 难度等级: [0.2451, 0.2452) || 挂载数据: 无 ) +│ │ └── Java的面向对象特征 --> ( 难度等级: [0.2452, 0.2453) || 挂载数据: 无 ) +│ ├── Java基础类库 --> ( 难度等级: [0.2453, 0.2456) || 挂载数据: 无 ) +│ │ ├── 与用户互动 --> ( 难度等级: [0.2453, 0.2454) || 挂载数据: qa: 4 ) +│ │ │ ├── 运行Java程序的参数 --> ( 难度等级: [0.2453, 0.2454) || 挂载数据: 无 ) +│ │ │ └── 使用Scanner获取键盘输入 --> ( 难度等级: [0.2454, 0.2454) || 挂载数据: qa: 2 ) +│ │ ├── 系统相关 --> ( 难度等级: [0.2454, 0.2455) || 挂载数据: qa: 5 ) +│ │ ├── Java 11改进的国际化与格式化 --> ( 难度等级: [0.2455, 0.2455) || 挂载数据: 无 ) +│ │ │ ├── Java国际化的思路 --> ( 难度等级: [0.2455, 0.2455) || 挂载数据: qa: 7 ) +│ │ │ ├── Java支持的国家和语言 --> ( 难度等级: [0.2455, 0.2455) || 挂载数据: qa: 1 ) +│ │ │ ├── 完成程序国际化 --> ( 难度等级: [0.2455, 0.2455) || 挂载数据: 无 ) +│ │ │ ├── 使用MessageFormat处理包含占位符的字符串 --> ( 难度等级: [0.2455, 0.2455) || 挂载数据: 无 ) +│ │ │ ├── 使用类文件代替资源文件 --> ( 难度等级: [0.2455, 0.2455) || 挂载数据: 无 ) +│ │ │ ├── Java 9新增的日志API --> ( 难度等级: [0.2455, 0.2455) || 挂载数据: 无 ) +│ │ │ ├── 使用NumberFormat格式化数字 --> ( 难度等级: [0.2455, 0.2455) || 挂载数据: 无 ) +│ │ │ ├── 使用DateFormat格式化日期、时间 --> ( 难度等级: [0.2455, 0.2455) || 挂载数据: 无 ) +│ │ │ └── 使用SimpleDateFormat格式化日期 --> ( 难度等级: [0.2455, 0.2455) || 挂载数据: qa: 1 ) +│ │ └── Java 8新增的日期、时间格式器 --> ( 难度等级: [0.2455, 0.2456) || 挂载数据: qa: 1 ) +│ │ ├── 使用DateTimeFormatter完成格式化 --> ( 难度等级: [0.2455, 0.2456) || 挂载数据: 无 ) +│ │ └── 使用DateTimeFormatter解析字符串 --> ( 难度等级: [0.2456, 0.2456) || 挂载数据: qa: 4 ) +│ ├── Java集合 --> ( 难度等级: [0.2456, 0.2459) || 挂载数据: 无 ) +│ │ ├── Java集合概述 --> ( 难度等级: [0.2456, 0.2457) || 挂载数据: 无 ) +│ │ ├── Java 11增强的Collection和Iterator接口 --> ( 难度等级: [0.2457, 0.2457) || 挂载数据: 无 ) +│ │ │ ├── 使用Lambda表达式遍历集合 --> ( 难度等级: [0.2457, 0.2457) || 挂载数据: 无 ) +│ │ │ ├── 使用Iterator遍历集合元素 --> ( 难度等级: [0.2457, 0.2457) || 挂载数据: qa: 7 ) +│ │ │ ├── 使用Lambda表达式遍历Iterator --> ( 难度等级: [0.2457, 0.2457) || 挂载数据: 无 ) +│ │ │ ├── 使用foreach循环遍历集合元素 --> ( 难度等级: [0.2457, 0.2457) || 挂载数据: 无 ) +│ │ │ ├── 使用Predicate操作集合 --> ( 难度等级: [0.2457, 0.2457) || 挂载数据: 无 ) +│ │ │ └── 使用Stream操作集合 --> ( 难度等级: [0.2457, 0.2457) || 挂载数据: 无 ) +│ │ ├── Queue集合 --> ( 难度等级: [0.2457, 0.2458) || 挂载数据: 无 ) +│ │ │ ├── PriorityQueue实现类 --> ( 难度等级: [0.2457, 0.2457) || 挂载数据: 无 ) +│ │ │ ├── Deque接口与ArrayDeque实现类 --> ( 难度等级: [0.2457, 0.2458) || 挂载数据: 无 ) +│ │ │ ├── LinkedList实现类 --> ( 难度等级: [0.2458, 0.2458) || 挂载数据: 无 ) +│ │ │ └── 各种线性表的性能分析 --> ( 难度等级: [0.2458, 0.2458) || 挂载数据: 无 ) +│ │ ├── 增强的Map集合 --> ( 难度等级: [0.2458, 0.2458) || 挂载数据: 无 ) +│ │ │ ├── Java 8为Map新增的方法 --> ( 难度等级: [0.2458, 0.2458) || 挂载数据: 无 ) +│ │ │ ├── 改进的HashMap和Hashtable实现类 --> ( 难度等级: [0.2458, 0.2458) || 挂载数据: qa: 1 ) +│ │ │ ├── LinkedHashMap实现类 --> ( 难度等级: [0.2458, 0.2458) || 挂载数据: 无 ) +│ │ │ ├── 使用Properties读写属性文件 --> ( 难度等级: [0.2458, 0.2458) || 挂载数据: 无 ) +│ │ │ ├── SortedMap接口和TreeMap实现类 --> ( 难度等级: [0.2458, 0.2458) || 挂载数据: 无 ) +│ │ │ ├── WeakHashMap实现类 --> ( 难度等级: [0.2458, 0.2458) || 挂载数据: 无 ) +│ │ │ ├── IdentityHashMap实现类 --> ( 难度等级: [0.2458, 0.2458) || 挂载数据: 无 ) +│ │ │ ├── EnumMap实现类 --> ( 难度等级: [0.2458, 0.2458) || 挂载数据: 无 ) +│ │ │ └── 各Map实现类的性能分析 --> ( 难度等级: [0.2458, 0.2458) || 挂载数据: 无 ) +│ │ ├── HashSet和HashMap的性能选项 --> ( 难度等级: [0.2458, 0.2459) || 挂载数据: 无 ) +│ │ └── 操作集合的工具类:Collections --> ( 难度等级: [0.2459, 0.2459) || 挂载数据: 无 ) +│ │ ├── 排序操作 --> ( 难度等级: [0.2459, 0.2459) || 挂载数据: 无 ) +│ │ ├── 同步控制 --> ( 难度等级: [0.2459, 0.2459) || 挂载数据: 无 ) +│ │ ├── 设置不可变集合 --> ( 难度等级: [0.2459, 0.2459) || 挂载数据: 无 ) +│ │ └── Java 9新增的不可变集合 --> ( 难度等级: [0.2459, 0.2459) || 挂载数据: 无 ) +│ ├── AWT编程 --> ( 难度等级: [0.2459, 0.2462) || 挂载数据: 无 ) +│ │ ├── AWT容器 --> ( 难度等级: [0.2459, 0.246) || 挂载数据: qa: 7 ) +│ │ ├── AWT常用组件 --> ( 难度等级: [0.246, 0.246) || 挂载数据: 无 ) +│ │ │ ├── 基本组件 --> ( 难度等级: [0.246, 0.246) || 挂载数据: 无 ) +│ │ │ └── 对话框(Dialog) --> ( 难度等级: [0.246, 0.246) || 挂载数据: qa: 3 ) +│ │ ├── AWT菜单 --> ( 难度等级: [0.246, 0.2461) || 挂载数据: 无 ) +│ │ │ └── 右键菜单 --> ( 难度等级: [0.246, 0.2461) || 挂载数据: qa: 1 ) +│ │ ├── 在AWT中绘图 --> ( 难度等级: [0.2461, 0.2461) || 挂载数据: 无 ) +│ │ │ ├── 画图的实现原理 --> ( 难度等级: [0.2461, 0.2461) || 挂载数据: qa: 1 ) +│ │ │ └── 使用Graphics类 --> ( 难度等级: [0.2461, 0.2461) || 挂载数据: qa: 1 ) +│ │ ├── 处理位图 --> ( 难度等级: [0.2461, 0.2462) || 挂载数据: 无 ) +│ │ │ ├── Image抽象类和BufferedImage实现类 --> ( 难度等级: [0.2461, 0.2462) || 挂载数据: 无 ) +│ │ │ └── Java 9增强的ImageIO --> ( 难度等级: [0.2462, 0.2462) || 挂载数据: qa: 1 ) +│ │ └── 拖放功能 --> ( 难度等级: [0.2462, 0.2462) || 挂载数据: 无 ) +│ │ ├── 拖放目标 --> ( 难度等级: [0.2462, 0.2462) || 挂载数据: 无 ) +│ │ └── 拖放源 --> ( 难度等级: [0.2462, 0.2462) || 挂载数据: qa: 1 ) +│ ├── Swing编程 --> ( 难度等级: [0.2462, 0.2466) || 挂载数据: 无 ) +│ │ ├── Swing基本组件的用法 --> ( 难度等级: [0.2462, 0.2463) || 挂载数据: 无 ) +│ │ │ ├── AWT组件的Swing实现 --> ( 难度等级: [0.2462, 0.2463) || 挂载数据: qa: 10 ) +│ │ │ ├── 为组件设置边框 --> ( 难度等级: [0.2463, 0.2463) || 挂载数据: 无 ) +│ │ │ ├── Swing组件的双缓冲和键盘驱动 --> ( 难度等级: [0.2463, 0.2463) || 挂载数据: 无 ) +│ │ │ ├── 使用JToolBar创建工具条 --> ( 难度等级: [0.2463, 0.2463) || 挂载数据: 无 ) +│ │ │ ├── 使用JFileChooser和JColorChooser --> ( 难度等级: [0.2463, 0.2463) || 挂载数据: qa: 1 ) +│ │ │ └── 使用JOptionPane --> ( 难度等级: [0.2463, 0.2463) || 挂载数据: 无 ) +│ │ ├── Swing中的特殊容器 --> ( 难度等级: [0.2463, 0.2463) || 挂载数据: 无 ) +│ │ │ ├── 使用JSplitPane --> ( 难度等级: [0.2463, 0.2463) || 挂载数据: 无 ) +│ │ │ ├── 使用JTabbedPane --> ( 难度等级: [0.2463, 0.2463) || 挂载数据: 无 ) +│ │ │ └── 使用JLayeredPane、JDesktopPane和JInternalFrame --> ( 难度等级: [0.2463, 0.2463) || 挂载数据: 无 ) +│ │ ├── Swing简化的拖放功能 --> ( 难度等级: [0.2463, 0.2463) || 挂载数据: 无 ) +│ │ ├── Java 7新增的Swing功能 --> ( 难度等级: [0.2463, 0.2464) || 挂载数据: qa: 1 ) +│ │ │ ├── 使用JLayer装饰组件 --> ( 难度等级: [0.2463, 0.2463) || 挂载数据: 无 ) +│ │ │ └── 创建透明、不规则形状窗口 --> ( 难度等级: [0.2463, 0.2464) || 挂载数据: 无 ) +│ │ ├── 使用JProgressBar、ProgressMonitor和BoundedRangeModel创建进度条 --> ( 难度等级: [0.2464, 0.2464) || 挂载数据: 无 ) +│ │ │ ├── 创建进度条 --> ( 难度等级: [0.2464, 0.2464) || 挂载数据: qa: 1 ) +│ │ │ └── 创建进度对话框 --> ( 难度等级: [0.2464, 0.2464) || 挂载数据: 无 ) +│ │ ├── 使用JSlider和BoundedRangeModel创建滑动条 --> ( 难度等级: [0.2464, 0.2464) || 挂载数据: 无 ) +│ │ ├── 使用JSpinner和SpinnerModel创建微调控制器 --> ( 难度等级: [0.2464, 0.2464) || 挂载数据: 无 ) +│ │ ├── 使用JList、JComboBox创建列表框 --> ( 难度等级: [0.2464, 0.2465) || 挂载数据: 无 ) +│ │ │ ├── 不强制存储列表项的ListModel和ComboBoxModel --> ( 难度等级: [0.2464, 0.2465) || 挂载数据: 无 ) +│ │ │ ├── 强制存储列表项的DefaultListModel和DefaultComboBoxModel --> ( 难度等级: [0.2465, 0.2465) || 挂载数据: 无 ) +│ │ │ └── 使用ListCellRenderer改变列表项外观 --> ( 难度等级: [0.2465, 0.2465) || 挂载数据: 无 ) +│ │ ├── 使用JTree和TreeModel创建树 --> ( 难度等级: [0.2465, 0.2465) || 挂载数据: 无 ) +│ │ │ ├── 创建树 --> ( 难度等级: [0.2465, 0.2465) || 挂载数据: qa: 7 ) +│ │ │ ├── 拖动、编辑树节点 --> ( 难度等级: [0.2465, 0.2465) || 挂载数据: 无 ) +│ │ │ ├── 监听节点事件 --> ( 难度等级: [0.2465, 0.2465) || 挂载数据: 无 ) +│ │ │ ├── 使用DefaultTreeCellRenderer改变节点外观 --> ( 难度等级: [0.2465, 0.2465) || 挂载数据: 无 ) +│ │ │ ├── 扩展DefaultTreeCellRenderer改变节点外观 --> ( 难度等级: [0.2465, 0.2465) || 挂载数据: 无 ) +│ │ │ └── 实现TreeCellRenderer改变节点外观 --> ( 难度等级: [0.2465, 0.2465) || 挂载数据: 无 ) +│ │ ├── 使用JTable和TableModel创建表格 --> ( 难度等级: [0.2465, 0.2465) || 挂载数据: 无 ) +│ │ │ ├── TableModel和监听器 --> ( 难度等级: [0.2465, 0.2465) || 挂载数据: 无 ) +│ │ │ ├── TableColumnModel和监听器 --> ( 难度等级: [0.2465, 0.2465) || 挂载数据: 无 ) +│ │ │ ├── 实现排序 --> ( 难度等级: [0.2465, 0.2465) || 挂载数据: qa: 1 ) +│ │ │ ├── 绘制单元格内容 --> ( 难度等级: [0.2465, 0.2465) || 挂载数据: 无 ) +│ │ │ └── 编辑单元格内容 --> ( 难度等级: [0.2465, 0.2465) || 挂载数据: 无 ) +│ │ └── 使用JFormattedTextField和JTextPane创建格式文本 --> ( 难度等级: [0.2465, 0.2466) || 挂载数据: 无 ) +│ │ ├── 监听Document的变化 --> ( 难度等级: [0.2465, 0.2465) || 挂载数据: 无 ) +│ │ ├── 使用JPasswordField --> ( 难度等级: [0.2465, 0.2465) || 挂载数据: 无 ) +│ │ ├── 使用JFormattedTextField --> ( 难度等级: [0.2465, 0.2466) || 挂载数据: 无 ) +│ │ ├── 使用JEditorPane --> ( 难度等级: [0.2466, 0.2466) || 挂载数据: 无 ) +│ │ └── 使用JTextPane --> ( 难度等级: [0.2466, 0.2466) || 挂载数据: 无 ) +│ ├── 注解(Annotation) --> ( 难度等级: [0.2466, 0.2469) || 挂载数据: 无 ) +│ │ ├── JDK的元注解 --> ( 难度等级: [0.2466, 0.2467) || 挂载数据: 无 ) +│ │ │ ├── 使用@Retention --> ( 难度等级: [0.2466, 0.2466) || 挂载数据: qa: 1 ) +│ │ │ ├── 使用@Target --> ( 难度等级: [0.2466, 0.2466) || 挂载数据: 无 ) +│ │ │ ├── 使用@Documented --> ( 难度等级: [0.2466, 0.2466) || 挂载数据: 无 ) +│ │ │ └── 使用@Inherited --> ( 难度等级: [0.2466, 0.2467) || 挂载数据: 无 ) +│ │ ├── 自定义注解 --> ( 难度等级: [0.2467, 0.2468) || 挂载数据: 无 ) +│ │ │ ├── 提取注解信息 --> ( 难度等级: [0.2467, 0.2467) || 挂载数据: qa: 1 ) +│ │ │ └── 使用注解的示例 --> ( 难度等级: [0.2467, 0.2468) || 挂载数据: qa: 6 ) +│ │ └── 编译时处理注解 --> ( 难度等级: [0.2468, 0.2469) || 挂载数据: 无 ) +│ ├── 输入/输出 --> ( 难度等级: [0.2469, 0.2472) || 挂载数据: 无 ) +│ │ ├── 理解Java的IO流 --> ( 难度等级: [0.2469, 0.2469) || 挂载数据: 无 ) +│ │ │ ├── 流的分类 --> ( 难度等级: [0.2469, 0.2469) || 挂载数据: qa: 10 ) +│ │ │ └── 流的概念模型 --> ( 难度等级: [0.2469, 0.2469) || 挂载数据: 无 ) +│ │ ├── 输入/输出流体系 --> ( 难度等级: [0.2469, 0.247) || 挂载数据: 无 ) +│ │ │ ├── 处理流的用法 --> ( 难度等级: [0.2469, 0.2469) || 挂载数据: qa: 3 ) +│ │ │ ├── 输入/输出流体系 --> ( 难度等级: [0.2469, 0.247) || 挂载数据: 无 ) +│ │ │ └── 推回输入流 --> ( 难度等级: [0.247, 0.247) || 挂载数据: 无 ) +│ │ ├── 重定向标准输入/输出 --> ( 难度等级: [0.247, 0.247) || 挂载数据: 无 ) +│ │ ├── Java虚拟机读写其他进程的数据 --> ( 难度等级: [0.247, 0.2471) || 挂载数据: 无 ) +│ │ ├── Java 9改进的对象序列化 --> ( 难度等级: [0.2471, 0.2471) || 挂载数据: 无 ) +│ │ │ ├── 序列化的含义和意义 --> ( 难度等级: [0.2471, 0.2471) || 挂载数据: qa: 1 ) +│ │ │ ├── 使用对象流实现序列化 --> ( 难度等级: [0.2471, 0.2471) || 挂载数据: qa: 1 ) +│ │ │ ├── 对象引用的序列化 --> ( 难度等级: [0.2471, 0.2471) || 挂载数据: qa: 2 ) +│ │ │ ├── Java 9增加的过滤功能 --> ( 难度等级: [0.2471, 0.2471) || 挂载数据: qa: 1 ) +│ │ │ ├── 自定义序列化 --> ( 难度等级: [0.2471, 0.2471) || 挂载数据: 无 ) +│ │ │ ├── 另一种自定义序列化机制 --> ( 难度等级: [0.2471, 0.2471) || 挂载数据: 无 ) +│ │ │ └── 版本 --> ( 难度等级: [0.2471, 0.2471) || 挂载数据: qa: 5 ) +│ │ └── NIO.2的功能和用法 --> ( 难度等级: [0.2471, 0.2472) || 挂载数据: 无 ) +│ │ ├── Path、Paths和Files核心API --> ( 难度等级: [0.2471, 0.2472) || 挂载数据: 无 ) +│ │ ├── 使用WatchService监控文件变化 --> ( 难度等级: [0.2472, 0.2472) || 挂载数据: 无 ) +│ │ └── 访问文件属性 --> ( 难度等级: [0.2472, 0.2472) || 挂载数据: 无 ) +│ ├── Java程序设计概述 --> ( 难度等级: [0.2472, 0.2475) || 挂载数据: 无 ) +│ │ ├── Java程序设计平台 --> ( 难度等级: [0.2472, 0.2473) || 挂载数据: qa: 9 ) +│ │ ├── Java“白皮书”的关键术语 --> ( 难度等级: [0.2473, 0.2473) || 挂载数据: 无 ) +│ │ │ └── 解释型 --> ( 难度等级: [0.2473, 0.2473) || 挂载数据: 无 ) +│ │ ├── Java发展简史 --> ( 难度等级: [0.2473, 0.2474) || 挂载数据: 无 ) +│ │ └── 关于Java的常见误解 --> ( 难度等级: [0.2474, 0.2475) || 挂载数据: 无 ) +│ ├── Java程序设计环境 --> ( 难度等级: [0.2475, 0.2478) || 挂载数据: 无 ) +│ │ ├── 安装Java开发工具包 --> ( 难度等级: [0.2475, 0.2476) || 挂载数据: 无 ) +│ │ │ ├── 设置JDK --> ( 难度等级: [0.2475, 0.2475) || 挂载数据: 无 ) +│ │ │ └── 安装库源文件和文档 --> ( 难度等级: [0.2475, 0.2476) || 挂载数据: 无 ) +│ │ ├── 使用命令行工具 --> ( 难度等级: [0.2476, 0.2477) || 挂载数据: qa: 1 ) +│ │ ├── 使用集成开发环境 --> ( 难度等级: [0.2477, 0.2477) || 挂载数据: 无 ) +│ │ └── JShell --> ( 难度等级: [0.2477, 0.2478) || 挂载数据: 无 ) +│ ├── Java的基本程序设计结构 --> ( 难度等级: [0.2478, 0.2481) || 挂载数据: 无 ) +│ │ ├── 一个简单的Java应用程序 --> ( 难度等级: [0.2478, 0.248) || 挂载数据: 无 ) +│ │ └── 大数 --> ( 难度等级: [0.248, 0.2481) || 挂载数据: 无 ) +│ ├── 泛型程序设计 --> ( 难度等级: [0.2481, 0.2484) || 挂载数据: 无 ) +│ │ ├── 定义简单泛型类 --> ( 难度等级: [0.2481, 0.2482) || 挂载数据: 无 ) +│ │ ├── 类型变量的限定 --> ( 难度等级: [0.2482, 0.2482) || 挂载数据: 无 ) +│ │ ├── 泛型代码和虚拟机 --> ( 难度等级: [0.2482, 0.2483) || 挂载数据: qa: 2 ) +│ │ │ ├── 类型擦除 --> ( 难度等级: [0.2482, 0.2482) || 挂载数据: qa: 5 ) +│ │ │ ├── 转换泛型表达式 --> ( 难度等级: [0.2482, 0.2482) || 挂载数据: 无 ) +│ │ │ ├── 转换泛型方法 --> ( 难度等级: [0.2482, 0.2482) || 挂载数据: qa: 4 ) +│ │ │ └── 调用遗留代码 --> ( 难度等级: [0.2482, 0.2483) || 挂载数据: 无 ) +│ │ ├── 限制与局限性 --> ( 难度等级: [0.2483, 0.2483) || 挂载数据: 无 ) +│ │ │ ├── 运行时类型查询只适用于原始类型 --> ( 难度等级: [0.2483, 0.2483) || 挂载数据: 无 ) +│ │ │ ├── 不能创建参数化类型的数组 --> ( 难度等级: [0.2483, 0.2483) || 挂载数据: 无 ) +│ │ │ ├── Varargs警告 --> ( 难度等级: [0.2483, 0.2483) || 挂载数据: 无 ) +│ │ │ ├── 不能构造泛型数组 --> ( 难度等级: [0.2483, 0.2483) || 挂载数据: 无 ) +│ │ │ ├── 泛型类的静态上下文中类型变量无效 --> ( 难度等级: [0.2483, 0.2483) || 挂载数据: qa: 1 ) +│ │ │ ├── 可以取消对检查型异常的检查 --> ( 难度等级: [0.2483, 0.2483) || 挂载数据: 无 ) +│ │ │ └── 注意擦除后的冲突 --> ( 难度等级: [0.2483, 0.2483) || 挂载数据: 无 ) +│ │ ├── 泛型类型的继承规则 --> ( 难度等级: [0.2483, 0.2483) || 挂载数据: 无 ) +│ │ ├── 通配符类型 --> ( 难度等级: [0.2483, 0.2484) || 挂载数据: 无 ) +│ │ │ ├── 通配符概念 --> ( 难度等级: [0.2483, 0.2484) || 挂载数据: 无 ) +│ │ │ ├── 通配符的超类型限定 --> ( 难度等级: [0.2484, 0.2484) || 挂载数据: 无 ) +│ │ │ ├── 无限定通配符 --> ( 难度等级: [0.2484, 0.2484) || 挂载数据: qa: 1 ) +│ │ │ └── 通配符捕获 --> ( 难度等级: [0.2484, 0.2484) || 挂载数据: qa: 1 ) +│ │ └── 反射和泛型 --> ( 难度等级: [0.2484, 0.2484) || 挂载数据: 无 ) +│ │ ├── 泛型Class类 --> ( 难度等级: [0.2484, 0.2484) || 挂载数据: 无 ) +│ │ ├── 使用Class参数进行类型匹配 --> ( 难度等级: [0.2484, 0.2484) || 挂载数据: qa: 1 ) +│ │ ├── 虚拟机中的泛型类型信息 --> ( 难度等级: [0.2484, 0.2484) || 挂载数据: 无 ) +│ │ └── 类型字面量 --> ( 难度等级: [0.2484, 0.2484) || 挂载数据: qa: 1 ) +│ ├── 图形用户界面程序设计 --> ( 难度等级: [0.2484, 0.2487) || 挂载数据: 无 ) +│ │ ├── Java用户界面工具包简史 --> ( 难度等级: [0.2484, 0.2485) || 挂载数据: 无 ) +│ │ ├── 显示窗体 --> ( 难度等级: [0.2485, 0.2486) || 挂载数据: 无 ) +│ │ │ ├── 创建窗体 --> ( 难度等级: [0.2485, 0.2486) || 挂载数据: qa: 2 ) +│ │ │ └── 窗体属性 --> ( 难度等级: [0.2486, 0.2486) || 挂载数据: 无 ) +│ │ ├── 在组件中显示信息 --> ( 难度等级: [0.2486, 0.2487) || 挂载数据: 无 ) +│ │ │ ├── 处理2D图形 --> ( 难度等级: [0.2486, 0.2486) || 挂载数据: qa: 1 ) +│ │ │ ├── 使用颜色 --> ( 难度等级: [0.2486, 0.2486) || 挂载数据: 无 ) +│ │ │ ├── 使用字体 --> ( 难度等级: [0.2486, 0.2487) || 挂载数据: 无 ) +│ │ │ └── 显示图像 --> ( 难度等级: [0.2487, 0.2487) || 挂载数据: 无 ) +│ │ └── 首选项API --> ( 难度等级: [0.2487, 0.2487) || 挂载数据: 无 ) +│ ├── Swing用户界面组件 --> ( 难度等级: [0.2487, 0.2491) || 挂载数据: 无 ) +│ │ ├── 布局管理概述 --> ( 难度等级: [0.2487, 0.2488) || 挂载数据: 无 ) +│ │ │ ├── 边框布局 --> ( 难度等级: [0.2487, 0.2488) || 挂载数据: 无 ) +│ │ │ └── 网格布局 --> ( 难度等级: [0.2488, 0.2488) || 挂载数据: 无 ) +│ │ ├── 文本输入 --> ( 难度等级: [0.2488, 0.2489) || 挂载数据: 无 ) +│ │ │ ├── 密码域 --> ( 难度等级: [0.2488, 0.2489) || 挂载数据: 无 ) +│ │ │ ├── 文本区 --> ( 难度等级: [0.2489, 0.2489) || 挂载数据: qa: 3 ) +│ │ │ └── 滚动窗格 --> ( 难度等级: [0.2489, 0.2489) || 挂载数据: 无 ) +│ │ ├── 选择组件 --> ( 难度等级: [0.2489, 0.249) || 挂载数据: 无 ) +│ │ │ ├── 组合框 --> ( 难度等级: [0.2489, 0.2489) || 挂载数据: qa: 1 ) +│ │ │ └── 滑动条 --> ( 难度等级: [0.2489, 0.249) || 挂载数据: 无 ) +│ │ └── 复杂的布局管理 --> ( 难度等级: [0.249, 0.2491) || 挂载数据: 无 ) +│ │ ├── 网格包布局 --> ( 难度等级: [0.249, 0.249) || 挂载数据: 无 ) +│ │ └── 定制布局管理器 --> ( 难度等级: [0.249, 0.2491) || 挂载数据: 无 ) +│ ├── Java快速入门 --> ( 难度等级: [0.2491, 0.2494) || 挂载数据: 无 ) +│ │ ├── Java程序基础 --> ( 难度等级: [0.2491, 0.2492) || 挂载数据: 无 ) +│ │ │ ├── Java程序基本结构 --> ( 难度等级: [0.2491, 0.2491) || 挂载数据: 无 ) +│ │ │ ├── 整数运算 --> ( 难度等级: [0.2491, 0.2491) || 挂载数据: qa: 8 ) +│ │ │ ├── 浮点数运算 --> ( 难度等级: [0.2491, 0.2492) || 挂载数据: qa: 3 ) +│ │ │ ├── 布尔运算 --> ( 难度等级: [0.2492, 0.2492) || 挂载数据: 无 ) +│ │ │ └── 数组类型 --> ( 难度等级: [0.2492, 0.2492) || 挂载数据: qa: 2 ) +│ │ └── 数组操作 --> ( 难度等级: [0.2492, 0.2494) || 挂载数据: 无 ) +│ ├── IO --> ( 难度等级: [0.2494, 0.2497) || 挂载数据: qa: 5 ) +│ │ ├── File对象 --> ( 难度等级: [0.2494, 0.2494) || 挂载数据: qa: 1 ) +│ │ ├── InputStream --> ( 难度等级: [0.2494, 0.2494) || 挂载数据: qa: 1 ) +│ │ ├── OutputStream --> ( 难度等级: [0.2494, 0.2495) || 挂载数据: 无 ) +│ │ ├── Filter模式 --> ( 难度等级: [0.2495, 0.2495) || 挂载数据: 无 ) +│ │ ├── 操作Zip --> ( 难度等级: [0.2495, 0.2495) || 挂载数据: qa: 1 ) +│ │ ├── 读取classpath资源 --> ( 难度等级: [0.2495, 0.2496) || 挂载数据: qa: 1 ) +│ │ ├── 序列化 --> ( 难度等级: [0.2496, 0.2496) || 挂载数据: 无 ) +│ │ ├── PrintStream和PrintWriter --> ( 难度等级: [0.2496, 0.2497) || 挂载数据: qa: 2 ) +│ │ └── 使用Files --> ( 难度等级: [0.2497, 0.2497) || 挂载数据: qa: 1 ) +│ └── 单元测试 --> ( 难度等级: [0.2497, 0.25) || 挂载数据: 无 ) +│ ├── 编写JUnit测试 --> ( 难度等级: [0.2497, 0.2498) || 挂载数据: 无 ) +│ ├── 使用Fixture --> ( 难度等级: [0.2498, 0.2498) || 挂载数据: 无 ) +│ ├── 异常测试 --> ( 难度等级: [0.2498, 0.2499) || 挂载数据: 无 ) +│ └── 参数化测试 --> ( 难度等级: [0.2499, 0.25) || 挂载数据: 无 ) +├── java中阶 --> ( 难度等级: [0.25, 0.5) || 挂载数据: 无 ) +│ ├── 字符串处理 --> ( 难度等级: [0.25, 0.2656) || 挂载数据: 无 ) +│ │ ├── String类的构造函数 --> ( 难度等级: [0.25, 0.2512) || 挂载数据: 无 ) +│ │ ├── 字符串的长度 --> ( 难度等级: [0.2512, 0.2524) || 挂载数据: 无 ) +│ │ ├── 特殊的字符串操作 --> ( 难度等级: [0.2524, 0.2536) || 挂载数据: 无 ) +│ │ │ ├── 字符串字面值 --> ( 难度等级: [0.2524, 0.2527) || 挂载数据: 无 ) +│ │ │ ├── 字符串连接 --> ( 难度等级: [0.2527, 0.253) || 挂载数据: 无 ) +│ │ │ ├── 字符串和其他数据类型的连接 --> ( 难度等级: [0.253, 0.2533) || 挂载数据: 无 ) +│ │ │ └── 字符串转换和toString方法 --> ( 难度等级: [0.2533, 0.2536) || 挂载数据: qa: 5 ) +│ │ ├── 提取字符 --> ( 难度等级: [0.2536, 0.2548) || 挂载数据: qa: 1 ) +│ │ │ ├── charAt --> ( 难度等级: [0.2536, 0.2539) || 挂载数据: qa: 1 ) +│ │ │ ├── getChars --> ( 难度等级: [0.2539, 0.2542) || 挂载数据: 无 ) +│ │ │ ├── getBytes --> ( 难度等级: [0.2542, 0.2545) || 挂载数据: 无 ) +│ │ │ └── toCharArray --> ( 难度等级: [0.2545, 0.2548) || 挂载数据: qa: 1 ) +│ │ ├── 比较字符串 --> ( 难度等级: [0.2548, 0.256) || 挂载数据: 无 ) +│ │ │ ├── equals和equalsIgnoreCase --> ( 难度等级: [0.2548, 0.255) || 挂载数据: 无 ) +│ │ │ ├── regionMatches --> ( 难度等级: [0.255, 0.2553) || 挂载数据: 无 ) +│ │ │ ├── startsWith和endsWith --> ( 难度等级: [0.2553, 0.2555) || 挂载数据: 无 ) +│ │ │ ├── equals与== --> ( 难度等级: [0.2555, 0.2558) || 挂载数据: qa: 5 ) +│ │ │ └── compareTo --> ( 难度等级: [0.2558, 0.256) || 挂载数据: qa: 4 ) +│ │ ├── 查找字符串 --> ( 难度等级: [0.256, 0.2572) || 挂载数据: 无 ) +│ │ ├── 修改字符串 --> ( 难度等级: [0.2572, 0.2584) || 挂载数据: 无 ) +│ │ │ ├── substring --> ( 难度等级: [0.2572, 0.2575) || 挂载数据: 无 ) +│ │ │ ├── concat --> ( 难度等级: [0.2575, 0.2578) || 挂载数据: 无 ) +│ │ │ ├── replace --> ( 难度等级: [0.2578, 0.2581) || 挂载数据: 无 ) +│ │ │ └── trim --> ( 难度等级: [0.2581, 0.2584) || 挂载数据: qa: 1 ) +│ │ ├── 使用valueOf转换数据 --> ( 难度等级: [0.2584, 0.2596) || 挂载数据: 无 ) +│ │ ├── 改变字符串中字符的大小写 --> ( 难度等级: [0.2596, 0.2608) || 挂载数据: 无 ) +│ │ ├── 连接字符串 --> ( 难度等级: [0.2608, 0.262) || 挂载数据: 无 ) +│ │ ├── 其他String方法 --> ( 难度等级: [0.262, 0.2632) || 挂载数据: 无 ) +│ │ ├── StringBuffer类 --> ( 难度等级: [0.2632, 0.2644) || 挂载数据: 无 ) +│ │ │ ├── StringBuffer类的构造函数 --> ( 难度等级: [0.2632, 0.2633) || 挂载数据: 无 ) +│ │ │ ├── length与capacity --> ( 难度等级: [0.2633, 0.2634) || 挂载数据: qa: 4 ) +│ │ │ ├── ensureCapacity --> ( 难度等级: [0.2634, 0.2635) || 挂载数据: 无 ) +│ │ │ ├── setLength --> ( 难度等级: [0.2635, 0.2636) || 挂载数据: 无 ) +│ │ │ ├── charAt与setCharAt --> ( 难度等级: [0.2636, 0.2637) || 挂载数据: 无 ) +│ │ │ ├── getChars --> ( 难度等级: [0.2637, 0.2638) || 挂载数据: 无 ) +│ │ │ ├── append --> ( 难度等级: [0.2638, 0.2639) || 挂载数据: qa: 3 ) +│ │ │ ├── insert --> ( 难度等级: [0.2639, 0.264) || 挂载数据: 无 ) +│ │ │ ├── reverse --> ( 难度等级: [0.264, 0.2641) || 挂载数据: 无 ) +│ │ │ ├── delete与deleteCharAt --> ( 难度等级: [0.2641, 0.2641) || 挂载数据: 无 ) +│ │ │ ├── replace --> ( 难度等级: [0.2641, 0.2642) || 挂载数据: 无 ) +│ │ │ ├── substring --> ( 难度等级: [0.2642, 0.2643) || 挂载数据: qa: 3 ) +│ │ │ └── 其他StringBuffer方法 --> ( 难度等级: [0.2643, 0.2644) || 挂载数据: 无 ) +│ │ └── StringBuilder类 --> ( 难度等级: [0.2644, 0.2656) || 挂载数据: 无 ) +│ ├── 探究java.lang --> ( 难度等级: [0.2656, 0.2812) || 挂载数据: 无 ) +│ │ ├── 基本类型封装器 --> ( 难度等级: [0.2656, 0.2661) || 挂载数据: 无 ) +│ │ │ ├── Number --> ( 难度等级: [0.2656, 0.2657) || 挂载数据: 无 ) +│ │ │ ├── Double与Float --> ( 难度等级: [0.2657, 0.2658) || 挂载数据: qa: 5 ) +│ │ │ ├── 理解isInfinite与isNaN --> ( 难度等级: [0.2658, 0.2658) || 挂载数据: 无 ) +│ │ │ ├── Byte、Short、Integer和Long --> ( 难度等级: [0.2658, 0.2659) || 挂载数据: qa: 1 ) +│ │ │ ├── Character --> ( 难度等级: [0.2659, 0.266) || 挂载数据: 无 ) +│ │ │ ├── 对Unicode代码点的附加支持 --> ( 难度等级: [0.266, 0.2661) || 挂载数据: qa: 1 ) +│ │ │ └── Boolean --> ( 难度等级: [0.2661, 0.2661) || 挂载数据: 无 ) +│ │ ├── Void类 --> ( 难度等级: [0.2661, 0.2667) || 挂载数据: qa: 2 ) +│ │ ├── Process类 --> ( 难度等级: [0.2667, 0.2672) || 挂载数据: 无 ) +│ │ ├── Runtime类 --> ( 难度等级: [0.2672, 0.2677) || 挂载数据: 无 ) +│ │ │ ├── 内存管理 --> ( 难度等级: [0.2672, 0.2674) || 挂载数据: 无 ) +│ │ │ └── 执行其他程序 --> ( 难度等级: [0.2674, 0.2677) || 挂载数据: qa: 3 ) +│ │ ├── ProcessBuilder类 --> ( 难度等级: [0.2677, 0.2682) || 挂载数据: 无 ) +│ │ ├── System类 --> ( 难度等级: [0.2682, 0.2687) || 挂载数据: 无 ) +│ │ │ ├── 使用currentTimeMillis计时程序的执行 --> ( 难度等级: [0.2682, 0.2684) || 挂载数据: 无 ) +│ │ │ ├── 使用arraycopy --> ( 难度等级: [0.2684, 0.2686) || 挂载数据: 无 ) +│ │ │ └── 环境属性 --> ( 难度等级: [0.2686, 0.2687) || 挂载数据: 无 ) +│ │ ├── Object类 --> ( 难度等级: [0.2687, 0.2693) || 挂载数据: 无 ) +│ │ ├── 使用clone方法和Cloneable接口 --> ( 难度等级: [0.2693, 0.2698) || 挂载数据: qa: 1 ) +│ │ ├── Class类 --> ( 难度等级: [0.2698, 0.2703) || 挂载数据: 无 ) +│ │ ├── ClassLoader类 --> ( 难度等级: [0.2703, 0.2708) || 挂载数据: 无 ) +│ │ ├── Math类 --> ( 难度等级: [0.2708, 0.2714) || 挂载数据: 无 ) +│ │ │ ├── 三角函数 --> ( 难度等级: [0.2708, 0.271) || 挂载数据: 无 ) +│ │ │ ├── 指数函数 --> ( 难度等级: [0.271, 0.2711) || 挂载数据: 无 ) +│ │ │ ├── 舍入函数 --> ( 难度等级: [0.2711, 0.2712) || 挂载数据: 无 ) +│ │ │ └── 其他数学方法 --> ( 难度等级: [0.2712, 0.2714) || 挂载数据: 无 ) +│ │ ├── StrictMath类 --> ( 难度等级: [0.2714, 0.2719) || 挂载数据: 无 ) +│ │ ├── Compiler类 --> ( 难度等级: [0.2719, 0.2724) || 挂载数据: qa: 1 ) +│ │ ├── Thread类、ThreadGroup类和Runnable接口 --> ( 难度等级: [0.2724, 0.2729) || 挂载数据: 无 ) +│ │ │ ├── Runnable接口 --> ( 难度等级: [0.2724, 0.2726) || 挂载数据: qa: 9 ) +│ │ │ ├── Thread类 --> ( 难度等级: [0.2726, 0.2727) || 挂载数据: qa: 10 ) +│ │ │ └── ThreadGroup类 --> ( 难度等级: [0.2727, 0.2729) || 挂载数据: 无 ) +│ │ ├── ThreadLocal和InheritableThreadLocal类 --> ( 难度等级: [0.2729, 0.2734) || 挂载数据: 无 ) +│ │ ├── Package类 --> ( 难度等级: [0.2734, 0.274) || 挂载数据: qa: 7 ) +│ │ ├── RuntimePermission类 --> ( 难度等级: [0.274, 0.2745) || 挂载数据: 无 ) +│ │ ├── Throwable类 --> ( 难度等级: [0.2745, 0.275) || 挂载数据: 无 ) +│ │ ├── SecurityManager类 --> ( 难度等级: [0.275, 0.2755) || 挂载数据: 无 ) +│ │ ├── StackTraceElement类 --> ( 难度等级: [0.2755, 0.276) || 挂载数据: qa: 1 ) +│ │ ├── Enum类 --> ( 难度等级: [0.276, 0.2766) || 挂载数据: 无 ) +│ │ ├── ClassValue类 --> ( 难度等级: [0.2766, 0.2771) || 挂载数据: 无 ) +│ │ ├── CharSequence接口 --> ( 难度等级: [0.2771, 0.2776) || 挂载数据: 无 ) +│ │ ├── Comparable接口 --> ( 难度等级: [0.2776, 0.2781) || 挂载数据: qa: 3 ) +│ │ ├── Appendable接口 --> ( 难度等级: [0.2781, 0.2786) || 挂载数据: 无 ) +│ │ ├── Iterable接口 --> ( 难度等级: [0.2786, 0.2792) || 挂载数据: 无 ) +│ │ ├── Readable接口 --> ( 难度等级: [0.2792, 0.2797) || 挂载数据: 无 ) +│ │ ├── AutoCloseable接口 --> ( 难度等级: [0.2797, 0.2802) || 挂载数据: 无 ) +│ │ ├── Thread.UncaughtExceptionHandler接口 --> ( 难度等级: [0.2802, 0.2807) || 挂载数据: 无 ) +│ │ └── java.lang子包 --> ( 难度等级: [0.2807, 0.2812) || 挂载数据: 无 ) +│ │ ├── java.lang.annotation --> ( 难度等级: [0.2807, 0.2808) || 挂载数据: qa: 10 ) +│ │ ├── java.lang.instrument --> ( 难度等级: [0.2808, 0.2809) || 挂载数据: 无 ) +│ │ ├── java.lang.invoke --> ( 难度等级: [0.2809, 0.281) || 挂载数据: qa: 3 ) +│ │ ├── java.lang.management --> ( 难度等级: [0.281, 0.2811) || 挂载数据: 无 ) +│ │ ├── java.lang.ref --> ( 难度等级: [0.2811, 0.2812) || 挂载数据: 无 ) +│ │ └── java.lang.reflect --> ( 难度等级: [0.2812, 0.2812) || 挂载数据: qa: 1 ) +│ ├── java.util第1部分:集合框架 --> ( 难度等级: [0.2812, 0.2969) || 挂载数据: 无 ) +│ │ ├── 集合概述 --> ( 难度等级: [0.2812, 0.2825) || 挂载数据: 无 ) +│ │ ├── JDK 5对集合框架的修改 --> ( 难度等级: [0.2825, 0.2837) || 挂载数据: 无 ) +│ │ │ ├── 泛型从根本上改变了集合框架 --> ( 难度等级: [0.2825, 0.2829) || 挂载数据: 无 ) +│ │ │ ├── 自动装箱使得使用基本类型更加容易 --> ( 难度等级: [0.2829, 0.2833) || 挂载数据: 无 ) +│ │ │ └── for-each风格的for循环 --> ( 难度等级: [0.2833, 0.2837) || 挂载数据: 无 ) +│ │ ├── 集合接口 --> ( 难度等级: [0.2837, 0.2849) || 挂载数据: 无 ) +│ │ │ ├── Collection接口 --> ( 难度等级: [0.2837, 0.2838) || 挂载数据: qa: 1 ) +│ │ │ ├── List接口 --> ( 难度等级: [0.2838, 0.284) || 挂载数据: 无 ) +│ │ │ ├── Set接口 --> ( 难度等级: [0.284, 0.2842) || 挂载数据: 无 ) +│ │ │ ├── SortedSet接口 --> ( 难度等级: [0.2842, 0.2843) || 挂载数据: 无 ) +│ │ │ ├── NavigableSet接口 --> ( 难度等级: [0.2843, 0.2845) || 挂载数据: 无 ) +│ │ │ ├── Queue接口 --> ( 难度等级: [0.2845, 0.2847) || 挂载数据: 无 ) +│ │ │ └── Deque接口 --> ( 难度等级: [0.2847, 0.2849) || 挂载数据: 无 ) +│ │ ├── 集合类 --> ( 难度等级: [0.2849, 0.2861) || 挂载数据: 无 ) +│ │ │ ├── ArrayList类 --> ( 难度等级: [0.2849, 0.285) || 挂载数据: qa: 2 ) +│ │ │ ├── LinkedList类 --> ( 难度等级: [0.285, 0.2852) || 挂载数据: qa: 1 ) +│ │ │ ├── HashSet类 --> ( 难度等级: [0.2852, 0.2853) || 挂载数据: 无 ) +│ │ │ ├── LinkedHashSet类 --> ( 难度等级: [0.2853, 0.2855) || 挂载数据: 无 ) +│ │ │ ├── TreeSet类 --> ( 难度等级: [0.2855, 0.2856) || 挂载数据: 无 ) +│ │ │ ├── PriorityQueue类 --> ( 难度等级: [0.2856, 0.2858) || 挂载数据: 无 ) +│ │ │ ├── ArrayDeque类 --> ( 难度等级: [0.2858, 0.2859) || 挂载数据: 无 ) +│ │ │ └── EnumSet类 --> ( 难度等级: [0.2859, 0.2861) || 挂载数据: 无 ) +│ │ ├── 通过迭代器访问集合 --> ( 难度等级: [0.2861, 0.2873) || 挂载数据: 无 ) +│ │ │ ├── 使用迭代器 --> ( 难度等级: [0.2861, 0.2867) || 挂载数据: qa: 1 ) +│ │ │ └── 使用for-each循环替代迭代器 --> ( 难度等级: [0.2867, 0.2873) || 挂载数据: qa: 1 ) +│ │ ├── Spliterator --> ( 难度等级: [0.2873, 0.2885) || 挂载数据: 无 ) +│ │ │ └── 拆分过程 --> ( 难度等级: [0.2873, 0.2885) || 挂载数据: 无 ) +│ │ ├── 在集合中存储用户定义的类 --> ( 难度等级: [0.2885, 0.2897) || 挂载数据: 无 ) +│ │ ├── RandomAccess接口 --> ( 难度等级: [0.2897, 0.2909) || 挂载数据: 无 ) +│ │ ├── 使用映射 --> ( 难度等级: [0.2909, 0.2921) || 挂载数据: 无 ) +│ │ │ ├── 映射接口 --> ( 难度等级: [0.2909, 0.2912) || 挂载数据: 无 ) +│ │ │ ├── 映射类 --> ( 难度等级: [0.2912, 0.2915) || 挂载数据: 无 ) +│ │ │ ├── 对流中每一个元素应用函数 --> ( 难度等级: [0.2915, 0.2918) || 挂载数据: 无 ) +│ │ │ └── 流的扁平化 --> ( 难度等级: [0.2918, 0.2921) || 挂载数据: 无 ) +│ │ ├── 比较器 --> ( 难度等级: [0.2921, 0.2933) || 挂载数据: 无 ) +│ │ ├── 集合算法 --> ( 难度等级: [0.2933, 0.2945) || 挂载数据: 无 ) +│ │ ├── Arrays类 --> ( 难度等级: [0.2945, 0.2957) || 挂载数据: 无 ) +│ │ └── 遗留的类和接口 --> ( 难度等级: [0.2957, 0.2969) || 挂载数据: 无 ) +│ │ ├── Enumeration接口 --> ( 难度等级: [0.2957, 0.2958) || 挂载数据: 无 ) +│ │ ├── Vector类 --> ( 难度等级: [0.2958, 0.296) || 挂载数据: 无 ) +│ │ ├── Stack类 --> ( 难度等级: [0.296, 0.2962) || 挂载数据: qa: 1 ) +│ │ ├── Dictionary类 --> ( 难度等级: [0.2962, 0.2964) || 挂载数据: 无 ) +│ │ ├── Hashtable类 --> ( 难度等级: [0.2964, 0.2965) || 挂载数据: 无 ) +│ │ ├── Properties类 --> ( 难度等级: [0.2965, 0.2967) || 挂载数据: 无 ) +│ │ └── 使用store和load --> ( 难度等级: [0.2967, 0.2969) || 挂载数据: qa: 1 ) +│ ├── java.util第2部分:更多实用工具类 --> ( 难度等级: [0.2969, 0.3125) || 挂载数据: 无 ) +│ │ ├── StringTokenizer类 --> ( 难度等级: [0.2969, 0.2977) || 挂载数据: 无 ) +│ │ ├── BitSet类 --> ( 难度等级: [0.2977, 0.2986) || 挂载数据: 无 ) +│ │ ├── Optional、OptionalDouble、OptionalInt和OptionalLong --> ( 难度等级: [0.2986, 0.2995) || 挂载数据: 无 ) +│ │ ├── Date类 --> ( 难度等级: [0.2995, 0.3003) || 挂载数据: 无 ) +│ │ ├── Calendar类 --> ( 难度等级: [0.3003, 0.3012) || 挂载数据: 无 ) +│ │ ├── GregorianCalendar类 --> ( 难度等级: [0.3012, 0.3021) || 挂载数据: 无 ) +│ │ ├── TimeZone类 --> ( 难度等级: [0.3021, 0.303) || 挂载数据: 无 ) +│ │ ├── SimpleTimeZone类 --> ( 难度等级: [0.303, 0.3038) || 挂载数据: 无 ) +│ │ ├── Locale类 --> ( 难度等级: [0.3038, 0.3047) || 挂载数据: 无 ) +│ │ ├── Random类 --> ( 难度等级: [0.3047, 0.3056) || 挂载数据: 无 ) +│ │ ├── Observable类 --> ( 难度等级: [0.3056, 0.3064) || 挂载数据: 无 ) +│ │ │ ├── Observer接口 --> ( 难度等级: [0.3056, 0.306) || 挂载数据: 无 ) +│ │ │ └── Observer示例 --> ( 难度等级: [0.306, 0.3064) || 挂载数据: 无 ) +│ │ ├── Timer和TimerTask类 --> ( 难度等级: [0.3064, 0.3073) || 挂载数据: qa: 2 ) +│ │ ├── Currency类 --> ( 难度等级: [0.3073, 0.3082) || 挂载数据: 无 ) +│ │ ├── Formatter类 --> ( 难度等级: [0.3082, 0.309) || 挂载数据: 无 ) +│ │ │ ├── Formatter类的构造函数 --> ( 难度等级: [0.3082, 0.3082) || 挂载数据: 无 ) +│ │ │ ├── Formatter类的方法 --> ( 难度等级: [0.3082, 0.3083) || 挂载数据: 无 ) +│ │ │ ├── 格式化的基础知识 --> ( 难度等级: [0.3083, 0.3083) || 挂载数据: 无 ) +│ │ │ ├── 格式化字符串和字符 --> ( 难度等级: [0.3083, 0.3084) || 挂载数据: 无 ) +│ │ │ ├── 格式化数字 --> ( 难度等级: [0.3084, 0.3084) || 挂载数据: 无 ) +│ │ │ ├── 格式化时间和日期 --> ( 难度等级: [0.3084, 0.3084) || 挂载数据: 无 ) +│ │ │ ├── %n和%%说明符 --> ( 难度等级: [0.3084, 0.3085) || 挂载数据: qa: 1 ) +│ │ │ ├── 指定最小字段宽度 --> ( 难度等级: [0.3085, 0.3085) || 挂载数据: 无 ) +│ │ │ ├── 指定精度 --> ( 难度等级: [0.3085, 0.3086) || 挂载数据: 无 ) +│ │ │ ├── 使用格式标志 --> ( 难度等级: [0.3086, 0.3086) || 挂载数据: 无 ) +│ │ │ ├── 对齐输出 --> ( 难度等级: [0.3086, 0.3087) || 挂载数据: 无 ) +│ │ │ ├── 空格、“+”、“0”以及“(”标志 --> ( 难度等级: [0.3087, 0.3087) || 挂载数据: 无 ) +│ │ │ ├── 逗号标志 --> ( 难度等级: [0.3087, 0.3088) || 挂载数据: 无 ) +│ │ │ ├── “#”标志 --> ( 难度等级: [0.3088, 0.3088) || 挂载数据: 无 ) +│ │ │ ├── 大写选项 --> ( 难度等级: [0.3088, 0.3089) || 挂载数据: 无 ) +│ │ │ ├── 使用参数索引 --> ( 难度等级: [0.3089, 0.3089) || 挂载数据: 无 ) +│ │ │ ├── 关闭Formatter对象 --> ( 难度等级: [0.3089, 0.309) || 挂载数据: 无 ) +│ │ │ └── printf方法 --> ( 难度等级: [0.309, 0.309) || 挂载数据: 无 ) +│ │ ├── Scanner类 --> ( 难度等级: [0.309, 0.3099) || 挂载数据: 无 ) +│ │ │ ├── Scanner类的构造函数 --> ( 难度等级: [0.309, 0.3092) || 挂载数据: qa: 2 ) +│ │ │ ├── 扫描的基础知识 --> ( 难度等级: [0.3092, 0.3094) || 挂载数据: 无 ) +│ │ │ ├── 一些Scanner示例 --> ( 难度等级: [0.3094, 0.3095) || 挂载数据: qa: 10 ) +│ │ │ ├── 设置定界符 --> ( 难度等级: [0.3095, 0.3097) || 挂载数据: 无 ) +│ │ │ └── 其他Scanner特性 --> ( 难度等级: [0.3097, 0.3099) || 挂载数据: 无 ) +│ │ ├── ResourceBundle、ListResourceBundle和 --> ( 难度等级: [0.3099, 0.3108) || 挂载数据: 无 ) +│ │ ├── 其他实用工具类和接口 --> ( 难度等级: [0.3108, 0.3116) || 挂载数据: 无 ) +│ │ └── java.util子包 --> ( 难度等级: [0.3116, 0.3125) || 挂载数据: 无 ) +│ │ ├── java.util.concurrent、java.util.concurrent.atomic和java.util.concurrent.locks --> ( 难度等级: [0.3116, 0.3117) || 挂载数据: qa: 1 ) +│ │ ├── java.util.function --> ( 难度等级: [0.3117, 0.3118) || 挂载数据: qa: 5 ) +│ │ ├── java.util.jar --> ( 难度等级: [0.3118, 0.3119) || 挂载数据: qa: 1 ) +│ │ ├── java.util.logging --> ( 难度等级: [0.3119, 0.312) || 挂载数据: 无 ) +│ │ ├── java.util.prefs --> ( 难度等级: [0.312, 0.3121) || 挂载数据: qa: 1 ) +│ │ ├── java.util.regex --> ( 难度等级: [0.3121, 0.3122) || 挂载数据: 无 ) +│ │ ├── java.util.spi --> ( 难度等级: [0.3122, 0.3123) || 挂载数据: qa: 1 ) +│ │ ├── java.util.stream --> ( 难度等级: [0.3123, 0.3124) || 挂载数据: 无 ) +│ │ └── java.util.zip --> ( 难度等级: [0.3124, 0.3125) || 挂载数据: 无 ) +│ ├── 输入/输出:探究java.io --> ( 难度等级: [0.3125, 0.3281) || 挂载数据: 无 ) +│ │ ├── I/O类和接口 --> ( 难度等级: [0.3125, 0.3139) || 挂载数据: 无 ) +│ │ ├── File类 --> ( 难度等级: [0.3139, 0.3153) || 挂载数据: 无 ) +│ │ │ ├── 目录 --> ( 难度等级: [0.3139, 0.3143) || 挂载数据: qa: 2 ) +│ │ │ ├── 使用FilenameFilter接口 --> ( 难度等级: [0.3143, 0.3146) || 挂载数据: 无 ) +│ │ │ ├── listFiles方法 --> ( 难度等级: [0.3146, 0.315) || 挂载数据: qa: 1 ) +│ │ │ └── 创建目录 --> ( 难度等级: [0.315, 0.3153) || 挂载数据: 无 ) +│ │ ├── AutoCloseable、Closeable和Flushable接口 --> ( 难度等级: [0.3153, 0.3168) || 挂载数据: 无 ) +│ │ ├── I/O异常 --> ( 难度等级: [0.3168, 0.3182) || 挂载数据: 无 ) +│ │ ├── 关闭流的两种方式 --> ( 难度等级: [0.3182, 0.3196) || 挂载数据: 无 ) +│ │ ├── 流类 --> ( 难度等级: [0.3196, 0.321) || 挂载数据: 无 ) +│ │ ├── 字节流 --> ( 难度等级: [0.321, 0.3224) || 挂载数据: 无 ) +│ │ │ ├── InputStream类 --> ( 难度等级: [0.321, 0.3211) || 挂载数据: 无 ) +│ │ │ ├── OutputStream类 --> ( 难度等级: [0.3211, 0.3213) || 挂载数据: 无 ) +│ │ │ ├── FileInputStream类 --> ( 难度等级: [0.3213, 0.3214) || 挂载数据: qa: 2 ) +│ │ │ ├── FileOutputStream类 --> ( 难度等级: [0.3214, 0.3215) || 挂载数据: qa: 1 ) +│ │ │ ├── ByteArrayInputStream类 --> ( 难度等级: [0.3215, 0.3216) || 挂载数据: 无 ) +│ │ │ ├── ByteArrayOutputStream类 --> ( 难度等级: [0.3216, 0.3217) || 挂载数据: 无 ) +│ │ │ ├── 过滤的字节流 --> ( 难度等级: [0.3217, 0.3219) || 挂载数据: 无 ) +│ │ │ ├── 缓冲的字节流 --> ( 难度等级: [0.3219, 0.322) || 挂载数据: 无 ) +│ │ │ ├── SequenceInputStream类 --> ( 难度等级: [0.322, 0.3221) || 挂载数据: 无 ) +│ │ │ ├── PrintStream类 --> ( 难度等级: [0.3221, 0.3222) || 挂载数据: 无 ) +│ │ │ ├── DataOutputStream和DataInputStream类 --> ( 难度等级: [0.3222, 0.3223) || 挂载数据: 无 ) +│ │ │ └── RandomAccessFile类 --> ( 难度等级: [0.3223, 0.3224) || 挂载数据: 无 ) +│ │ ├── 字符流 --> ( 难度等级: [0.3224, 0.3239) || 挂载数据: 无 ) +│ │ │ ├── Reader类 --> ( 难度等级: [0.3224, 0.3226) || 挂载数据: 无 ) +│ │ │ ├── Writer类 --> ( 难度等级: [0.3226, 0.3227) || 挂载数据: 无 ) +│ │ │ ├── FileReader类 --> ( 难度等级: [0.3227, 0.3229) || 挂载数据: qa: 2 ) +│ │ │ ├── FileWriter类 --> ( 难度等级: [0.3229, 0.323) || 挂载数据: 无 ) +│ │ │ ├── CharArrayReader类 --> ( 难度等级: [0.323, 0.3232) || 挂载数据: qa: 1 ) +│ │ │ ├── CharArrayWriter类 --> ( 难度等级: [0.3232, 0.3233) || 挂载数据: 无 ) +│ │ │ ├── BufferedReader类 --> ( 难度等级: [0.3233, 0.3234) || 挂载数据: qa: 1 ) +│ │ │ ├── BufferedWriter类 --> ( 难度等级: [0.3234, 0.3236) || 挂载数据: qa: 6 ) +│ │ │ ├── PushbackReader类 --> ( 难度等级: [0.3236, 0.3237) || 挂载数据: 无 ) +│ │ │ └── PrintWriter类 --> ( 难度等级: [0.3237, 0.3239) || 挂载数据: 无 ) +│ │ ├── Console类 --> ( 难度等级: [0.3239, 0.3253) || 挂载数据: qa: 1 ) +│ │ ├── 串行化 --> ( 难度等级: [0.3253, 0.3267) || 挂载数据: 无 ) +│ │ │ ├── Serializable接口 --> ( 难度等级: [0.3253, 0.3255) || 挂载数据: qa: 2 ) +│ │ │ ├── Externalizable接口 --> ( 难度等级: [0.3255, 0.3257) || 挂载数据: 无 ) +│ │ │ ├── ObjectOutput接口 --> ( 难度等级: [0.3257, 0.3259) || 挂载数据: 无 ) +│ │ │ ├── ObjectOutputStream类 --> ( 难度等级: [0.3259, 0.3261) || 挂载数据: qa: 2 ) +│ │ │ ├── ObjectInput接口 --> ( 难度等级: [0.3261, 0.3263) || 挂载数据: 无 ) +│ │ │ ├── ObjectInputStream类 --> ( 难度等级: [0.3263, 0.3265) || 挂载数据: 无 ) +│ │ │ └── 串行化示例 --> ( 难度等级: [0.3265, 0.3267) || 挂载数据: 无 ) +│ │ └── 流的优点 --> ( 难度等级: [0.3267, 0.3281) || 挂载数据: 无 ) +│ ├── 探究NIO --> ( 难度等级: [0.3281, 0.3438) || 挂载数据: 无 ) +│ │ ├── NIO类 --> ( 难度等级: [0.3281, 0.3312) || 挂载数据: 无 ) +│ │ ├── NIO的基础知识 --> ( 难度等级: [0.3312, 0.3344) || 挂载数据: 无 ) +│ │ │ ├── 缓冲区 --> ( 难度等级: [0.3312, 0.3323) || 挂载数据: 无 ) +│ │ │ ├── 通道 --> ( 难度等级: [0.3323, 0.3333) || 挂载数据: 无 ) +│ │ │ └── 字符集和选择器 --> ( 难度等级: [0.3333, 0.3344) || 挂载数据: 无 ) +│ │ ├── JDK 7对NIO的增强 --> ( 难度等级: [0.3344, 0.3375) || 挂载数据: 无 ) +│ │ │ ├── Path接口 --> ( 难度等级: [0.3344, 0.335) || 挂载数据: 无 ) +│ │ │ ├── Files类 --> ( 难度等级: [0.335, 0.3356) || 挂载数据: 无 ) +│ │ │ ├── Path接口 --> ( 难度等级: [0.3356, 0.3362) || 挂载数据: 无 ) +│ │ │ ├── 文件属性接口 --> ( 难度等级: [0.3362, 0.3369) || 挂载数据: 无 ) +│ │ │ └── FileSystem、FileSystems和FileStore类 --> ( 难度等级: [0.3369, 0.3375) || 挂载数据: 无 ) +│ │ ├── 使用NIO系统 --> ( 难度等级: [0.3375, 0.3406) || 挂载数据: 无 ) +│ │ │ ├── 为基于通道的I/O使用NIO --> ( 难度等级: [0.3375, 0.3385) || 挂载数据: 无 ) +│ │ │ ├── 为基于流的I/O使用NIO --> ( 难度等级: [0.3385, 0.3396) || 挂载数据: 无 ) +│ │ │ └── 为路径和文件系统操作使用NIO --> ( 难度等级: [0.3396, 0.3406) || 挂载数据: 无 ) +│ │ └── JDK 7之前基于通道的例子 --> ( 难度等级: [0.3406, 0.3438) || 挂载数据: 无 ) +│ │ ├── 读文件(JDK 7之前) --> ( 难度等级: [0.3406, 0.3422) || 挂载数据: qa: 1 ) +│ │ └── 写文件(JDK 7之前) --> ( 难度等级: [0.3422, 0.3438) || 挂载数据: qa: 3 ) +│ ├── 联网 --> ( 难度等级: [0.3438, 0.3594) || 挂载数据: 无 ) +│ │ ├── 联网的基础知识 --> ( 难度等级: [0.3438, 0.3451) || 挂载数据: 无 ) +│ │ ├── 联网类和接口 --> ( 难度等级: [0.3451, 0.3464) || 挂载数据: 无 ) +│ │ ├── InetAddress类 --> ( 难度等级: [0.3464, 0.3477) || 挂载数据: 无 ) +│ │ │ └── 工厂方法 --> ( 难度等级: [0.3464, 0.3477) || 挂载数据: 无 ) +│ │ ├── Inet4Address类和Inet6Address类 --> ( 难度等级: [0.3477, 0.349) || 挂载数据: 无 ) +│ │ ├── TCP/IP客户端套接字 --> ( 难度等级: [0.349, 0.3503) || 挂载数据: qa: 10 ) +│ │ ├── URL类 --> ( 难度等级: [0.3503, 0.3516) || 挂载数据: 无 ) +│ │ ├── URLConnection类 --> ( 难度等级: [0.3516, 0.3529) || 挂载数据: 无 ) +│ │ ├── HttpURLConnection类 --> ( 难度等级: [0.3529, 0.3542) || 挂载数据: qa: 2 ) +│ │ ├── URI类 --> ( 难度等级: [0.3542, 0.3555) || 挂载数据: 无 ) +│ │ ├── cookie --> ( 难度等级: [0.3555, 0.3568) || 挂载数据: qa: 3 ) +│ │ ├── TCP/IP服务器套接字 --> ( 难度等级: [0.3568, 0.3581) || 挂载数据: 无 ) +│ │ └── 数据报 --> ( 难度等级: [0.3581, 0.3594) || 挂载数据: 无 ) +│ │ ├── DatagramSocket类 --> ( 难度等级: [0.3581, 0.3585) || 挂载数据: 无 ) +│ │ ├── DatagramPacket类 --> ( 难度等级: [0.3585, 0.3589) || 挂载数据: 无 ) +│ │ └── 数据报示例 --> ( 难度等级: [0.3589, 0.3594) || 挂载数据: qa: 8 ) +│ ├── Applet类 --> ( 难度等级: [0.3594, 0.375) || 挂载数据: 无 ) +│ │ ├── applet的两种类型 --> ( 难度等级: [0.3594, 0.3605) || 挂载数据: 无 ) +│ │ ├── applet的基础知识 --> ( 难度等级: [0.3605, 0.3616) || 挂载数据: 无 ) +│ │ ├── applet的架构 --> ( 难度等级: [0.3616, 0.3627) || 挂载数据: 无 ) +│ │ ├── applet的骨架 --> ( 难度等级: [0.3627, 0.3638) || 挂载数据: 无 ) +│ │ │ ├── applet的初始化和终止 --> ( 难度等级: [0.3627, 0.3633) || 挂载数据: qa: 6 ) +│ │ │ └── 重写update方法 --> ( 难度等级: [0.3633, 0.3638) || 挂载数据: 无 ) +│ │ ├── 简单的applet显示方法 --> ( 难度等级: [0.3638, 0.365) || 挂载数据: 无 ) +│ │ ├── 请求重画 --> ( 难度等级: [0.365, 0.3661) || 挂载数据: 无 ) +│ │ ├── 使用状态栏窗口 --> ( 难度等级: [0.3661, 0.3672) || 挂载数据: 无 ) +│ │ ├── HTML APPLET标记 --> ( 难度等级: [0.3672, 0.3683) || 挂载数据: 无 ) +│ │ ├── 向applet传递参数 --> ( 难度等级: [0.3683, 0.3694) || 挂载数据: 无 ) +│ │ ├── getDocumentBase和getCodeBase --> ( 难度等级: [0.3694, 0.3705) || 挂载数据: 无 ) +│ │ ├── AppletContext接口和showDocument方法 --> ( 难度等级: [0.3705, 0.3717) || 挂载数据: 无 ) +│ │ ├── AudioClip接口 --> ( 难度等级: [0.3717, 0.3728) || 挂载数据: 无 ) +│ │ ├── AppletStub接口 --> ( 难度等级: [0.3728, 0.3739) || 挂载数据: 无 ) +│ │ └── 向控制台输出 --> ( 难度等级: [0.3739, 0.375) || 挂载数据: qa: 1 ) +│ ├── 事件处理 --> ( 难度等级: [0.375, 0.3906) || 挂载数据: 无 ) +│ │ ├── 两种事件处理机制 --> ( 难度等级: [0.375, 0.377) || 挂载数据: 无 ) +│ │ ├── 委托事件模型 --> ( 难度等级: [0.377, 0.3789) || 挂载数据: 无 ) +│ │ │ ├── 事件 --> ( 难度等级: [0.377, 0.3776) || 挂载数据: 无 ) +│ │ │ ├── 事件源 --> ( 难度等级: [0.3776, 0.3783) || 挂载数据: 无 ) +│ │ │ └── 事件监听器 --> ( 难度等级: [0.3783, 0.3789) || 挂载数据: 无 ) +│ │ ├── 事件类 --> ( 难度等级: [0.3789, 0.3809) || 挂载数据: 无 ) +│ │ │ ├── ActionEvent类 --> ( 难度等级: [0.3789, 0.3791) || 挂载数据: 无 ) +│ │ │ ├── AdjustmentEvent类 --> ( 难度等级: [0.3791, 0.3792) || 挂载数据: 无 ) +│ │ │ ├── ComponentEvent类 --> ( 难度等级: [0.3792, 0.3794) || 挂载数据: 无 ) +│ │ │ ├── ContainerEvent类 --> ( 难度等级: [0.3794, 0.3796) || 挂载数据: 无 ) +│ │ │ ├── FocusEvent类 --> ( 难度等级: [0.3796, 0.3797) || 挂载数据: 无 ) +│ │ │ ├── InputEvent类 --> ( 难度等级: [0.3797, 0.3799) || 挂载数据: 无 ) +│ │ │ ├── ItemEvent类 --> ( 难度等级: [0.3799, 0.38) || 挂载数据: 无 ) +│ │ │ ├── KeyEvent类 --> ( 难度等级: [0.38, 0.3802) || 挂载数据: 无 ) +│ │ │ ├── MouseEvent类 --> ( 难度等级: [0.3802, 0.3804) || 挂载数据: qa: 1 ) +│ │ │ ├── MouseWheelEvent类 --> ( 难度等级: [0.3804, 0.3805) || 挂载数据: 无 ) +│ │ │ ├── TextEvent类 --> ( 难度等级: [0.3805, 0.3807) || 挂载数据: 无 ) +│ │ │ └── WindowEvent类 --> ( 难度等级: [0.3807, 0.3809) || 挂载数据: 无 ) +│ │ ├── 事件源 --> ( 难度等级: [0.3809, 0.3828) || 挂载数据: 无 ) +│ │ ├── 事件监听器接口 --> ( 难度等级: [0.3828, 0.3848) || 挂载数据: 无 ) +│ │ │ ├── ActionListener接口 --> ( 难度等级: [0.3828, 0.383) || 挂载数据: qa: 2 ) +│ │ │ ├── AdjustmentListener接口 --> ( 难度等级: [0.383, 0.3831) || 挂载数据: 无 ) +│ │ │ ├── ComponentListener接口 --> ( 难度等级: [0.3831, 0.3833) || 挂载数据: 无 ) +│ │ │ ├── ContainerListener接口 --> ( 难度等级: [0.3833, 0.3834) || 挂载数据: 无 ) +│ │ │ ├── FocusListener接口 --> ( 难度等级: [0.3834, 0.3836) || 挂载数据: 无 ) +│ │ │ ├── ItemListener接口 --> ( 难度等级: [0.3836, 0.3837) || 挂载数据: 无 ) +│ │ │ ├── KeyListener接口 --> ( 难度等级: [0.3837, 0.3839) || 挂载数据: qa: 1 ) +│ │ │ ├── MouseListener接口 --> ( 难度等级: [0.3839, 0.384) || 挂载数据: 无 ) +│ │ │ ├── MouseMotionListener接口 --> ( 难度等级: [0.384, 0.3842) || 挂载数据: 无 ) +│ │ │ ├── MouseWheelListener接口 --> ( 难度等级: [0.3842, 0.3843) || 挂载数据: 无 ) +│ │ │ ├── TextListener接口 --> ( 难度等级: [0.3843, 0.3845) || 挂载数据: 无 ) +│ │ │ ├── WindowFocusListener接口 --> ( 难度等级: [0.3845, 0.3846) || 挂载数据: 无 ) +│ │ │ └── WindowListener接口 --> ( 难度等级: [0.3846, 0.3848) || 挂载数据: 无 ) +│ │ ├── 使用委托事件模型 --> ( 难度等级: [0.3848, 0.3867) || 挂载数据: 无 ) +│ │ │ ├── 处理鼠标事件 --> ( 难度等级: [0.3848, 0.3857) || 挂载数据: 无 ) +│ │ │ └── 处理键盘事件 --> ( 难度等级: [0.3857, 0.3867) || 挂载数据: 无 ) +│ │ ├── 适配器类 --> ( 难度等级: [0.3867, 0.3887) || 挂载数据: 无 ) +│ │ └── 内部类 --> ( 难度等级: [0.3887, 0.3906) || 挂载数据: qa: 1 ) +│ ├── AWT介绍:使用窗口、图形和文本 --> ( 难度等级: [0.3906, 0.4062) || 挂载数据: 无 ) +│ │ ├── AWT类 --> ( 难度等级: [0.3906, 0.392) || 挂载数据: 无 ) +│ │ ├── 窗口基本元素 --> ( 难度等级: [0.392, 0.3935) || 挂载数据: 无 ) +│ │ │ ├── Component类 --> ( 难度等级: [0.392, 0.3923) || 挂载数据: qa: 2 ) +│ │ │ ├── Container类 --> ( 难度等级: [0.3923, 0.3925) || 挂载数据: 无 ) +│ │ │ ├── Panel类 --> ( 难度等级: [0.3925, 0.3928) || 挂载数据: qa: 2 ) +│ │ │ ├── Window类 --> ( 难度等级: [0.3928, 0.393) || 挂载数据: qa: 3 ) +│ │ │ ├── Frame类 --> ( 难度等级: [0.393, 0.3932) || 挂载数据: qa: 2 ) +│ │ │ └── Canvas类 --> ( 难度等级: [0.3932, 0.3935) || 挂载数据: 无 ) +│ │ ├── 使用框架窗口 --> ( 难度等级: [0.3935, 0.3949) || 挂载数据: 无 ) +│ │ │ ├── 设置窗口的尺寸 --> ( 难度等级: [0.3935, 0.3938) || 挂载数据: qa: 5 ) +│ │ │ ├── 隐藏和显示窗口 --> ( 难度等级: [0.3938, 0.3942) || 挂载数据: qa: 6 ) +│ │ │ ├── 设置窗口的标题 --> ( 难度等级: [0.3942, 0.3945) || 挂载数据: 无 ) +│ │ │ └── 关闭框架窗口 --> ( 难度等级: [0.3945, 0.3949) || 挂载数据: qa: 1 ) +│ │ ├── 在基于AWT的applet中创建框架窗口 --> ( 难度等级: [0.3949, 0.3963) || 挂载数据: 无 ) +│ │ ├── 创建基于窗口的程序 --> ( 难度等级: [0.3963, 0.3977) || 挂载数据: qa: 1 ) +│ │ ├── 在窗口中显示信息 --> ( 难度等级: [0.3977, 0.3991) || 挂载数据: 无 ) +│ │ ├── 使用图形 --> ( 难度等级: [0.3991, 0.4006) || 挂载数据: 无 ) +│ │ │ ├── 绘制直线 --> ( 难度等级: [0.3991, 0.3994) || 挂载数据: 无 ) +│ │ │ ├── 绘制矩形 --> ( 难度等级: [0.3994, 0.3996) || 挂载数据: 无 ) +│ │ │ ├── 绘制椭圆和圆 --> ( 难度等级: [0.3996, 0.3998) || 挂载数据: 无 ) +│ │ │ ├── 绘制弧形 --> ( 难度等级: [0.3998, 0.4) || 挂载数据: 无 ) +│ │ │ ├── 绘制多边形 --> ( 难度等级: [0.4, 0.4002) || 挂载数据: 无 ) +│ │ │ ├── 演示绘制方法 --> ( 难度等级: [0.4002, 0.4004) || 挂载数据: 无 ) +│ │ │ └── 改变图形的大小 --> ( 难度等级: [0.4004, 0.4006) || 挂载数据: qa: 8 ) +│ │ ├── 使用颜色 --> ( 难度等级: [0.4006, 0.402) || 挂载数据: 无 ) +│ │ │ ├── Color类的方法 --> ( 难度等级: [0.4006, 0.401) || 挂载数据: 无 ) +│ │ │ ├── 设置当前图形的颜色 --> ( 难度等级: [0.401, 0.4015) || 挂载数据: 无 ) +│ │ │ └── 一个演示颜色的applet --> ( 难度等级: [0.4015, 0.402) || 挂载数据: qa: 1 ) +│ │ ├── 设置绘图模式 --> ( 难度等级: [0.402, 0.4034) || 挂载数据: 无 ) +│ │ ├── 使用字体 --> ( 难度等级: [0.4034, 0.4048) || 挂载数据: 无 ) +│ │ │ ├── 确定可用字体 --> ( 难度等级: [0.4034, 0.4039) || 挂载数据: 无 ) +│ │ │ ├── 创建和选择字体 --> ( 难度等级: [0.4039, 0.4044) || 挂载数据: 无 ) +│ │ │ └── 获取字体信息 --> ( 难度等级: [0.4044, 0.4048) || 挂载数据: 无 ) +│ │ └── 使用FontMetrics管理文本输出 --> ( 难度等级: [0.4048, 0.4062) || 挂载数据: 无 ) +│ │ ├── 显示多行文本 --> ( 难度等级: [0.4048, 0.4053) || 挂载数据: 无 ) +│ │ ├── 居中显示文本 --> ( 难度等级: [0.4053, 0.4058) || 挂载数据: qa: 1 ) +│ │ └── 对齐多行文本 --> ( 难度等级: [0.4058, 0.4062) || 挂载数据: qa: 8 ) +│ ├── 使用AWT控件、布局管理器和菜单 --> ( 难度等级: [0.4062, 0.4219) || 挂载数据: 无 ) +│ │ ├── AWT控件的基础知识 --> ( 难度等级: [0.4062, 0.4073) || 挂载数据: 无 ) +│ │ │ ├── 添加和移除控件 --> ( 难度等级: [0.4062, 0.4066) || 挂载数据: 无 ) +│ │ │ ├── 响应控件 --> ( 难度等级: [0.4066, 0.4069) || 挂载数据: qa: 4 ) +│ │ │ └── HeadlessException异常 --> ( 难度等级: [0.4069, 0.4073) || 挂载数据: 无 ) +│ │ ├── 使用标签 --> ( 难度等级: [0.4073, 0.4083) || 挂载数据: qa: 7 ) +│ │ ├── 使用命令按钮 --> ( 难度等级: [0.4083, 0.4094) || 挂载数据: 无 ) +│ │ ├── 使用复选框 --> ( 难度等级: [0.4094, 0.4104) || 挂载数据: 无 ) +│ │ ├── 使用复选框组 --> ( 难度等级: [0.4104, 0.4115) || 挂载数据: 无 ) +│ │ ├── 使用下拉列表 --> ( 难度等级: [0.4115, 0.4125) || 挂载数据: 无 ) +│ │ ├── 使用列表框 --> ( 难度等级: [0.4125, 0.4135) || 挂载数据: 无 ) +│ │ ├── 管理滚动条 --> ( 难度等级: [0.4135, 0.4146) || 挂载数据: 无 ) +│ │ ├── 使用TextField --> ( 难度等级: [0.4146, 0.4156) || 挂载数据: qa: 1 ) +│ │ ├── 使用TextArea --> ( 难度等级: [0.4156, 0.4167) || 挂载数据: 无 ) +│ │ ├── 理解布局管理器 --> ( 难度等级: [0.4167, 0.4177) || 挂载数据: 无 ) +│ │ │ ├── FlowLayout布局管理器 --> ( 难度等级: [0.4167, 0.4168) || 挂载数据: 无 ) +│ │ │ ├── BorderLayout布局管理器 --> ( 难度等级: [0.4168, 0.417) || 挂载数据: 无 ) +│ │ │ ├── 使用Insets --> ( 难度等级: [0.417, 0.4172) || 挂载数据: 无 ) +│ │ │ ├── GridLayout布局管理器 --> ( 难度等级: [0.4172, 0.4174) || 挂载数据: 无 ) +│ │ │ ├── CardLayout布局管理器 --> ( 难度等级: [0.4174, 0.4175) || 挂载数据: 无 ) +│ │ │ └── GridBagLayout布局管理器 --> ( 难度等级: [0.4175, 0.4177) || 挂载数据: 无 ) +│ │ ├── 菜单栏和菜单 --> ( 难度等级: [0.4177, 0.4188) || 挂载数据: 无 ) +│ │ ├── 对话框 --> ( 难度等级: [0.4188, 0.4198) || 挂载数据: 无 ) +│ │ ├── FileDialog类 --> ( 难度等级: [0.4198, 0.4208) || 挂载数据: 无 ) +│ │ └── 关于重写paint方法 --> ( 难度等级: [0.4208, 0.4219) || 挂载数据: qa: 3 ) +│ ├── 图像 --> ( 难度等级: [0.4219, 0.4375) || 挂载数据: 无 ) +│ │ ├── 文件格式 --> ( 难度等级: [0.4219, 0.4236) || 挂载数据: 无 ) +│ │ ├── 图像基础:创建、加载与显示 --> ( 难度等级: [0.4236, 0.4253) || 挂载数据: 无 ) +│ │ │ ├── 创建Image对象 --> ( 难度等级: [0.4236, 0.4242) || 挂载数据: qa: 1 ) +│ │ │ ├── 加载图像 --> ( 难度等级: [0.4242, 0.4248) || 挂载数据: qa: 5 ) +│ │ │ └── 显示图像 --> ( 难度等级: [0.4248, 0.4253) || 挂载数据: qa: 10 ) +│ │ ├── ImageObserver接口 --> ( 难度等级: [0.4253, 0.4271) || 挂载数据: 无 ) +│ │ ├── 双缓冲 --> ( 难度等级: [0.4271, 0.4288) || 挂载数据: 无 ) +│ │ ├── MediaTracker类 --> ( 难度等级: [0.4288, 0.4306) || 挂载数据: 无 ) +│ │ ├── ImageProducer接口 --> ( 难度等级: [0.4306, 0.4323) || 挂载数据: 无 ) +│ │ ├── ImageConsumer接口 --> ( 难度等级: [0.4323, 0.434) || 挂载数据: 无 ) +│ │ ├── ImageFilter类 --> ( 难度等级: [0.434, 0.4358) || 挂载数据: 无 ) +│ │ │ ├── CropImageFilter类 --> ( 难度等级: [0.434, 0.4349) || 挂载数据: 无 ) +│ │ │ └── RGBImageFilter类 --> ( 难度等级: [0.4349, 0.4358) || 挂载数据: 无 ) +│ │ └── 其他图像类 --> ( 难度等级: [0.4358, 0.4375) || 挂载数据: 无 ) +│ ├── 并发实用工具 --> ( 难度等级: [0.4375, 0.4531) || 挂载数据: 无 ) +│ │ ├── 并发API包 --> ( 难度等级: [0.4375, 0.4392) || 挂载数据: 无 ) +│ │ │ ├── java.util.concurrent包 --> ( 难度等级: [0.4375, 0.4381) || 挂载数据: 无 ) +│ │ │ ├── java.util.concurrent.atomic包 --> ( 难度等级: [0.4381, 0.4387) || 挂载数据: 无 ) +│ │ │ └── java.util.concurrent.locks包 --> ( 难度等级: [0.4387, 0.4392) || 挂载数据: 无 ) +│ │ ├── 使用同步对象 --> ( 难度等级: [0.4392, 0.441) || 挂载数据: 无 ) +│ │ │ ├── Semaphore类 --> ( 难度等级: [0.4392, 0.4396) || 挂载数据: 无 ) +│ │ │ ├── CountDownLatch类 --> ( 难度等级: [0.4396, 0.4399) || 挂载数据: 无 ) +│ │ │ ├── CyclicBarrier类 --> ( 难度等级: [0.4399, 0.4403) || 挂载数据: 无 ) +│ │ │ ├── Exchanger类 --> ( 难度等级: [0.4403, 0.4406) || 挂载数据: 无 ) +│ │ │ └── Phaser类 --> ( 难度等级: [0.4406, 0.441) || 挂载数据: 无 ) +│ │ ├── 使用执行器 --> ( 难度等级: [0.441, 0.4427) || 挂载数据: 无 ) +│ │ │ ├── 一个简单的执行器示例 --> ( 难度等级: [0.441, 0.4418) || 挂载数据: 无 ) +│ │ │ └── 使用Callable和Future接口 --> ( 难度等级: [0.4418, 0.4427) || 挂载数据: 无 ) +│ │ │ ├── Future接口的局限性 --> ( 难度等级: [0.4418, 0.4423) || 挂载数据: qa: 2 ) +│ │ │ └── 使用CompletableFuture构建异步应用 --> ( 难度等级: [0.4423, 0.4427) || 挂载数据: 无 ) +│ │ ├── TimeUnit枚举 --> ( 难度等级: [0.4427, 0.4444) || 挂载数据: qa: 1 ) +│ │ ├── 并发集合 --> ( 难度等级: [0.4444, 0.4462) || 挂载数据: 无 ) +│ │ ├── 锁 --> ( 难度等级: [0.4462, 0.4479) || 挂载数据: 无 ) +│ │ ├── 原子操作 --> ( 难度等级: [0.4479, 0.4497) || 挂载数据: 无 ) +│ │ ├── 通过Fork/Join框架进行并行编程 --> ( 难度等级: [0.4497, 0.4514) || 挂载数据: 无 ) +│ │ │ ├── 主要的Fork/Join类 --> ( 难度等级: [0.4497, 0.4498) || 挂载数据: 无 ) +│ │ │ ├── 分而治之的策略 --> ( 难度等级: [0.4498, 0.45) || 挂载数据: 无 ) +│ │ │ ├── 一个简单的Fork/Join示例 --> ( 难度等级: [0.45, 0.4501) || 挂载数据: 无 ) +│ │ │ ├── 理解并行级别带来的影响 --> ( 难度等级: [0.4501, 0.4503) || 挂载数据: 无 ) +│ │ │ ├── 一个使用RecursiveTask[V]的例子 --> ( 难度等级: [0.4503, 0.4504) || 挂载数据: 无 ) +│ │ │ ├── 异步执行任务 --> ( 难度等级: [0.4504, 0.4506) || 挂载数据: 无 ) +│ │ │ ├── 取消任务 --> ( 难度等级: [0.4506, 0.4508) || 挂载数据: 无 ) +│ │ │ ├── 确定任务的完成状态 --> ( 难度等级: [0.4508, 0.4509) || 挂载数据: 无 ) +│ │ │ ├── 重新启动任务 --> ( 难度等级: [0.4509, 0.4511) || 挂载数据: 无 ) +│ │ │ ├── 深入研究 --> ( 难度等级: [0.4511, 0.4512) || 挂载数据: 无 ) +│ │ │ └── 关于Fork/Join框架的一些提示 --> ( 难度等级: [0.4512, 0.4514) || 挂载数据: 无 ) +│ │ └── 并发实用工具与Java传统方式的比较 --> ( 难度等级: [0.4514, 0.4531) || 挂载数据: 无 ) +│ ├── 流API --> ( 难度等级: [0.4531, 0.4688) || 挂载数据: 无 ) +│ │ ├── 流的基础知识 --> ( 难度等级: [0.4531, 0.4554) || 挂载数据: 无 ) +│ │ │ ├── 流接口 --> ( 难度等级: [0.4531, 0.4539) || 挂载数据: 无 ) +│ │ │ ├── 如何获得流 --> ( 难度等级: [0.4539, 0.4546) || 挂载数据: 无 ) +│ │ │ └── 一个简单的流示例 --> ( 难度等级: [0.4546, 0.4554) || 挂载数据: 无 ) +│ │ ├── 缩减操作 --> ( 难度等级: [0.4554, 0.4576) || 挂载数据: 无 ) +│ │ ├── 使用并行流 --> ( 难度等级: [0.4576, 0.4598) || 挂载数据: 无 ) +│ │ │ ├── 将顺序流转换为并行流 --> ( 难度等级: [0.4576, 0.4583) || 挂载数据: 无 ) +│ │ │ ├── 测量流性能 --> ( 难度等级: [0.4583, 0.4591) || 挂载数据: 无 ) +│ │ │ └── 高效使用并行流 --> ( 难度等级: [0.4591, 0.4598) || 挂载数据: qa: 1 ) +│ │ ├── 映射 --> ( 难度等级: [0.4598, 0.4621) || 挂载数据: 无 ) +│ │ ├── 收集 --> ( 难度等级: [0.4621, 0.4643) || 挂载数据: 无 ) +│ │ ├── 迭代器和流 --> ( 难度等级: [0.4643, 0.4665) || 挂载数据: 无 ) +│ │ │ ├── 对流使用迭代器 --> ( 难度等级: [0.4643, 0.4645) || 挂载数据: 无 ) +│ │ │ ├── 使用Spliterator --> ( 难度等级: [0.4645, 0.4647) || 挂载数据: 无 ) +│ │ │ ├── 筛选 --> ( 难度等级: [0.4647, 0.465) || 挂载数据: 无 ) +│ │ │ │ ├── 用谓词筛选 --> ( 难度等级: [0.4647, 0.4648) || 挂载数据: qa: 2 ) +│ │ │ │ └── 筛选各异的元素 --> ( 难度等级: [0.4648, 0.465) || 挂载数据: 无 ) +│ │ │ ├── 流的切片 --> ( 难度等级: [0.465, 0.4652) || 挂载数据: 无 ) +│ │ │ │ ├── 使用谓词对流进行切片 --> ( 难度等级: [0.465, 0.465) || 挂载数据: 无 ) +│ │ │ │ ├── 截短流 --> ( 难度等级: [0.465, 0.4651) || 挂载数据: qa: 8 ) +│ │ │ │ └── 跳过元素 --> ( 难度等级: [0.4651, 0.4652) || 挂载数据: qa: 3 ) +│ │ │ ├── 查找和匹配 --> ( 难度等级: [0.4652, 0.4654) || 挂载数据: 无 ) +│ │ │ │ ├── 检查谓词是否至少匹配一个元素 --> ( 难度等级: [0.4652, 0.4652) || 挂载数据: 无 ) +│ │ │ │ ├── 检查谓词是否匹配所有元素 --> ( 难度等级: [0.4652, 0.4653) || 挂载数据: qa: 2 ) +│ │ │ │ ├── 查找元素 --> ( 难度等级: [0.4653, 0.4653) || 挂载数据: qa: 3 ) +│ │ │ │ └── 查找第一个元素 --> ( 难度等级: [0.4653, 0.4654) || 挂载数据: 无 ) +│ │ │ ├── 归约 --> ( 难度等级: [0.4654, 0.4656) || 挂载数据: 无 ) +│ │ │ │ ├── 元素求和 --> ( 难度等级: [0.4654, 0.4655) || 挂载数据: 无 ) +│ │ │ │ └── 最大值和最小值 --> ( 难度等级: [0.4655, 0.4656) || 挂载数据: qa: 1 ) +│ │ │ ├── 付诸实践 --> ( 难度等级: [0.4656, 0.4658) || 挂载数据: 无 ) +│ │ │ │ ├── 领域:交易员和交易 --> ( 难度等级: [0.4656, 0.4657) || 挂载数据: 无 ) +│ │ │ │ └── 解答 --> ( 难度等级: [0.4657, 0.4658) || 挂载数据: 无 ) +│ │ │ ├── 数值流 --> ( 难度等级: [0.4658, 0.4661) || 挂载数据: 无 ) +│ │ │ │ ├── 原始类型流特化 --> ( 难度等级: [0.4658, 0.4659) || 挂载数据: 无 ) +│ │ │ │ ├── 数值范围 --> ( 难度等级: [0.4659, 0.466) || 挂载数据: qa: 5 ) +│ │ │ │ └── 数值流应用:勾股数 --> ( 难度等级: [0.466, 0.4661) || 挂载数据: 无 ) +│ │ │ ├── 构建流 --> ( 难度等级: [0.4661, 0.4663) || 挂载数据: 无 ) +│ │ │ │ ├── 由值创建流 --> ( 难度等级: [0.4661, 0.4661) || 挂载数据: 无 ) +│ │ │ │ ├── 由可空对象创建流 --> ( 难度等级: [0.4661, 0.4662) || 挂载数据: 无 ) +│ │ │ │ ├── 由数组创建流 --> ( 难度等级: [0.4662, 0.4662) || 挂载数据: 无 ) +│ │ │ │ ├── 由文件生成流 --> ( 难度等级: [0.4662, 0.4662) || 挂载数据: qa: 5 ) +│ │ │ │ └── 由函数生成流:创建无限流 --> ( 难度等级: [0.4662, 0.4663) || 挂载数据: 无 ) +│ │ │ └── 概述 --> ( 难度等级: [0.4663, 0.4665) || 挂载数据: 无 ) +│ │ └── 流API中更多值得探究的地方 --> ( 难度等级: [0.4665, 0.4688) || 挂载数据: qa: 1 ) +│ ├── 正则表达式和其他包 --> ( 难度等级: [0.4688, 0.4844) || 挂载数据: 无 ) +│ │ ├── 核心Java API包 --> ( 难度等级: [0.4688, 0.4697) || 挂载数据: 无 ) +│ │ ├── 正则表达式处理 --> ( 难度等级: [0.4697, 0.4707) || 挂载数据: 无 ) +│ │ │ ├── Pattern类 --> ( 难度等级: [0.4697, 0.4699) || 挂载数据: 无 ) +│ │ │ ├── Matcher类 --> ( 难度等级: [0.4699, 0.4701) || 挂载数据: 无 ) +│ │ │ ├── 正则表达式的语法 --> ( 难度等级: [0.4701, 0.4702) || 挂载数据: 无 ) +│ │ │ ├── 演示模式匹配 --> ( 难度等级: [0.4702, 0.4704) || 挂载数据: 无 ) +│ │ │ ├── 模式匹配的两个选项 --> ( 难度等级: [0.4704, 0.4705) || 挂载数据: 无 ) +│ │ │ └── 探究正则表达式 --> ( 难度等级: [0.4705, 0.4707) || 挂载数据: qa: 10 ) +│ │ ├── 反射 --> ( 难度等级: [0.4707, 0.4717) || 挂载数据: qa: 1 ) +│ │ ├── 远程方法调用 --> ( 难度等级: [0.4717, 0.4727) || 挂载数据: 无 ) +│ │ ├── 使用java.text格式化日期和时间 --> ( 难度等级: [0.4727, 0.4736) || 挂载数据: qa: 1 ) +│ │ │ ├── DateFormat类 --> ( 难度等级: [0.4727, 0.4731) || 挂载数据: 无 ) +│ │ │ └── SimpleDateFormat类 --> ( 难度等级: [0.4731, 0.4736) || 挂载数据: 无 ) +│ │ ├── JDK 8新增的时间和日期API --> ( 难度等级: [0.4736, 0.4746) || 挂载数据: 无 ) +│ │ │ ├── 时间和日期的基础知识 --> ( 难度等级: [0.4736, 0.474) || 挂载数据: 无 ) +│ │ │ ├── 格式化日期和时间 --> ( 难度等级: [0.474, 0.4743) || 挂载数据: 无 ) +│ │ │ └── 解析日期和时间字符串 --> ( 难度等级: [0.4743, 0.4746) || 挂载数据: 无 ) +│ │ ├── 探究java.time包的其他方面 --> ( 难度等级: [0.4746, 0.4756) || 挂载数据: 无 ) +│ │ ├── 匹配字符串 --> ( 难度等级: [0.4756, 0.4766) || 挂载数据: 无 ) +│ │ ├── 找出多个匹配 --> ( 难度等级: [0.4766, 0.4775) || 挂载数据: 无 ) +│ │ ├── 用分隔符来分割 --> ( 难度等级: [0.4775, 0.4785) || 挂载数据: 无 ) +│ │ ├── 替换匹配 --> ( 难度等级: [0.4785, 0.4795) || 挂载数据: qa: 1 ) +│ │ ├── 正则表达式简介 --> ( 难度等级: [0.4795, 0.4805) || 挂载数据: 无 ) +│ │ ├── 匹配规则 --> ( 难度等级: [0.4805, 0.4814) || 挂载数据: 无 ) +│ │ ├── 分组匹配 --> ( 难度等级: [0.4814, 0.4824) || 挂载数据: 无 ) +│ │ ├── 非贪婪匹配 --> ( 难度等级: [0.4824, 0.4834) || 挂载数据: 无 ) +│ │ └── 搜索和替换 --> ( 难度等级: [0.4834, 0.4844) || 挂载数据: 无 ) +│ └── 其他 --> ( 难度等级: [0.4844, 0.5) || 挂载数据: 无 ) +│ ├── 并发编程的挑战 --> ( 难度等级: [0.4844, 0.4849) || 挂载数据: 无 ) +│ │ ├── 上下文切换 --> ( 难度等级: [0.4844, 0.4846) || 挂载数据: 无 ) +│ │ │ ├── 多线程一定快吗 --> ( 难度等级: [0.4844, 0.4844) || 挂载数据: 无 ) +│ │ │ │ ├── 多线程基础 --> ( 难度等级: [0.4844, 0.4844) || 挂载数据: qa: 10 ) +│ │ │ │ ├── 创建新线程 --> ( 难度等级: [0.4844, 0.4844) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 中断线程 --> ( 难度等级: [0.4844, 0.4844) || 挂载数据: 无 ) +│ │ │ │ ├── 守护线程 --> ( 难度等级: [0.4844, 0.4844) || 挂载数据: 无 ) +│ │ │ │ ├── 线程同步 --> ( 难度等级: [0.4844, 0.4844) || 挂载数据: 无 ) +│ │ │ │ ├── 同步方法 --> ( 难度等级: [0.4844, 0.4844) || 挂载数据: 无 ) +│ │ │ │ ├── 使用wait和notify --> ( 难度等级: [0.4844, 0.4844) || 挂载数据: qa: 10 ) +│ │ │ │ ├── 使用ReentrantLock --> ( 难度等级: [0.4844, 0.4844) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 使用Condition --> ( 难度等级: [0.4844, 0.4844) || 挂载数据: 无 ) +│ │ │ │ ├── 使用ReadWriteLock --> ( 难度等级: [0.4844, 0.4844) || 挂载数据: 无 ) +│ │ │ │ ├── 使用StampedLock --> ( 难度等级: [0.4844, 0.4844) || 挂载数据: 无 ) +│ │ │ │ ├── 使用Concurrent集合 --> ( 难度等级: [0.4844, 0.4844) || 挂载数据: 无 ) +│ │ │ │ ├── 使用Atomic --> ( 难度等级: [0.4844, 0.4844) || 挂载数据: qa: 1 ) +│ │ │ │ └── 使用ForkJoin --> ( 难度等级: [0.4844, 0.4844) || 挂载数据: 无 ) +│ │ │ ├── 测试上下文切换次数和时长 --> ( 难度等级: [0.4844, 0.4845) || 挂载数据: 无 ) +│ │ │ └── 如何减少上下文切换 --> ( 难度等级: [0.4845, 0.4846) || 挂载数据: qa: 2 ) +│ │ ├── 死锁 --> ( 难度等级: [0.4846, 0.4847) || 挂载数据: 无 ) +│ │ └── 资源限制的挑战 --> ( 难度等级: [0.4847, 0.4849) || 挂载数据: 无 ) +│ ├── Java并发机制的底层实现原理 --> ( 难度等级: [0.4849, 0.4855) || 挂载数据: 无 ) +│ │ ├── volatile的应用 --> ( 难度等级: [0.4849, 0.4851) || 挂载数据: qa: 1 ) +│ │ ├── synchronized的实现原理与应用 --> ( 难度等级: [0.4851, 0.4853) || 挂载数据: qa: 9 ) +│ │ │ ├── Java对象头 --> ( 难度等级: [0.4851, 0.4852) || 挂载数据: qa: 1 ) +│ │ │ └── 锁的升级与对比 --> ( 难度等级: [0.4852, 0.4853) || 挂载数据: qa: 2 ) +│ │ └── 原子操作的实现原理 --> ( 难度等级: [0.4853, 0.4855) || 挂载数据: 无 ) +│ ├── Java内存模型 --> ( 难度等级: [0.4855, 0.486) || 挂载数据: 无 ) +│ │ ├── Java内存模型的基础 --> ( 难度等级: [0.4855, 0.4856) || 挂载数据: 无 ) +│ │ │ ├── Java内存模型的抽象结构 --> ( 难度等级: [0.4855, 0.4855) || 挂载数据: qa: 1 ) +│ │ │ ├── 从源代码到指令序列的重排序 --> ( 难度等级: [0.4855, 0.4855) || 挂载数据: qa: 1 ) +│ │ │ ├── 并发编程模型的分类 --> ( 难度等级: [0.4855, 0.4855) || 挂载数据: 无 ) +│ │ │ └── happens-before简介 --> ( 难度等级: [0.4855, 0.4856) || 挂载数据: 无 ) +│ │ ├── 重排序 --> ( 难度等级: [0.4856, 0.4856) || 挂载数据: 无 ) +│ │ │ ├── 数据依赖性 --> ( 难度等级: [0.4856, 0.4856) || 挂载数据: qa: 1 ) +│ │ │ ├── as-if-serial语义 --> ( 难度等级: [0.4856, 0.4856) || 挂载数据: qa: 1 ) +│ │ │ ├── 程序顺序规则 --> ( 难度等级: [0.4856, 0.4856) || 挂载数据: 无 ) +│ │ │ └── 重排序对多线程的影响 --> ( 难度等级: [0.4856, 0.4856) || 挂载数据: qa: 10 ) +│ │ ├── 顺序一致性 --> ( 难度等级: [0.4856, 0.4857) || 挂载数据: 无 ) +│ │ │ ├── 数据竞争与顺序一致性 --> ( 难度等级: [0.4856, 0.4856) || 挂载数据: qa: 4 ) +│ │ │ ├── 顺序一致性内存模型 --> ( 难度等级: [0.4856, 0.4856) || 挂载数据: 无 ) +│ │ │ ├── 同步程序的顺序一致性效果 --> ( 难度等级: [0.4856, 0.4857) || 挂载数据: 无 ) +│ │ │ └── 未同步程序的执行特性 --> ( 难度等级: [0.4857, 0.4857) || 挂载数据: 无 ) +│ │ ├── volatile的内存语义 --> ( 难度等级: [0.4857, 0.4857) || 挂载数据: 无 ) +│ │ │ ├── volatile的特性 --> ( 难度等级: [0.4857, 0.4857) || 挂载数据: qa: 10 ) +│ │ │ ├── volatile写-读建立的happens-before关系 --> ( 难度等级: [0.4857, 0.4857) || 挂载数据: 无 ) +│ │ │ ├── volatile写-读的内存语义 --> ( 难度等级: [0.4857, 0.4857) || 挂载数据: 无 ) +│ │ │ └── volatile内存语义的实现 --> ( 难度等级: [0.4857, 0.4857) || 挂载数据: qa: 10 ) +│ │ ├── 锁的内存语义 --> ( 难度等级: [0.4857, 0.4858) || 挂载数据: 无 ) +│ │ │ ├── 锁的释放-获取建立的 --> ( 难度等级: [0.4857, 0.4858) || 挂载数据: 无 ) +│ │ │ ├── 锁的释放和获取的内存语义 --> ( 难度等级: [0.4858, 0.4858) || 挂载数据: qa: 3 ) +│ │ │ ├── 锁内存语义的实现 --> ( 难度等级: [0.4858, 0.4858) || 挂载数据: 无 ) +│ │ │ └── concurrent包的实现 --> ( 难度等级: [0.4858, 0.4858) || 挂载数据: 无 ) +│ │ ├── final域的内存语义 --> ( 难度等级: [0.4858, 0.4859) || 挂载数据: 无 ) +│ │ │ ├── final域的重排序规则 --> ( 难度等级: [0.4858, 0.4858) || 挂载数据: 无 ) +│ │ │ ├── 写final域的重排序规则 --> ( 难度等级: [0.4858, 0.4858) || 挂载数据: 无 ) +│ │ │ ├── 读final域的重排序规则 --> ( 难度等级: [0.4858, 0.4858) || 挂载数据: 无 ) +│ │ │ ├── final域为引用类型 --> ( 难度等级: [0.4858, 0.4859) || 挂载数据: 无 ) +│ │ │ └── final语义在处理器中的实现 --> ( 难度等级: [0.4859, 0.4859) || 挂载数据: 无 ) +│ │ ├── happens-before --> ( 难度等级: [0.4859, 0.4859) || 挂载数据: 无 ) +│ │ │ ├── JMM的设计 --> ( 难度等级: [0.4859, 0.4859) || 挂载数据: 无 ) +│ │ │ ├── happens-before的定义 --> ( 难度等级: [0.4859, 0.4859) || 挂载数据: qa: 10 ) +│ │ │ └── happens-before规则 --> ( 难度等级: [0.4859, 0.4859) || 挂载数据: 无 ) +│ │ ├── 双重检查锁定与延迟初始化 --> ( 难度等级: [0.4859, 0.486) || 挂载数据: 无 ) +│ │ │ ├── 双重检查锁定的由来 --> ( 难度等级: [0.4859, 0.4859) || 挂载数据: 无 ) +│ │ │ ├── 基于volatile的解决方案 --> ( 难度等级: [0.4859, 0.486) || 挂载数据: 无 ) +│ │ │ └── 基于类初始化的解决方案 --> ( 难度等级: [0.486, 0.486) || 挂载数据: 无 ) +│ │ └── Java内存模型综述 --> ( 难度等级: [0.486, 0.486) || 挂载数据: 无 ) +│ │ ├── 处理器的内存模型 --> ( 难度等级: [0.486, 0.486) || 挂载数据: 无 ) +│ │ ├── 各种内存模型之间的关系 --> ( 难度等级: [0.486, 0.486) || 挂载数据: qa: 7 ) +│ │ ├── JMM的内存可见性保证 --> ( 难度等级: [0.486, 0.486) || 挂载数据: 无 ) +│ │ └── JSR-133对旧内存模型的修补 --> ( 难度等级: [0.486, 0.486) || 挂载数据: 无 ) +│ ├── Java并发编程基础 --> ( 难度等级: [0.486, 0.4866) || 挂载数据: 无 ) +│ │ ├── 线程简介 --> ( 难度等级: [0.486, 0.4862) || 挂载数据: 无 ) +│ │ │ ├── 什么是线程 --> ( 难度等级: [0.486, 0.4861) || 挂载数据: qa: 3 ) +│ │ │ ├── 线程优先级 --> ( 难度等级: [0.4861, 0.4861) || 挂载数据: 无 ) +│ │ │ ├── 线程的状态 --> ( 难度等级: [0.4861, 0.4862) || 挂载数据: 无 ) +│ │ │ └── Daemon线程 --> ( 难度等级: [0.4862, 0.4862) || 挂载数据: 无 ) +│ │ ├── 启动和终止线程 --> ( 难度等级: [0.4862, 0.4864) || 挂载数据: 无 ) +│ │ │ ├── 构造线程 --> ( 难度等级: [0.4862, 0.4863) || 挂载数据: 无 ) +│ │ │ ├── 启动线程 --> ( 难度等级: [0.4863, 0.4863) || 挂载数据: qa: 10 ) +│ │ │ ├── 理解中断 --> ( 难度等级: [0.4863, 0.4863) || 挂载数据: 无 ) +│ │ │ ├── 过期的suspend、resume和stop --> ( 难度等级: [0.4863, 0.4864) || 挂载数据: 无 ) +│ │ │ └── 安全地终止线程 --> ( 难度等级: [0.4864, 0.4864) || 挂载数据: qa: 5 ) +│ │ └── 线程间通信 --> ( 难度等级: [0.4864, 0.4866) || 挂载数据: 无 ) +│ │ ├── 等待/通知机制 --> ( 难度等级: [0.4864, 0.4865) || 挂载数据: 无 ) +│ │ ├── 等待/通知的经典范式 --> ( 难度等级: [0.4865, 0.4865) || 挂载数据: 无 ) +│ │ ├── 管道输入/输出流 --> ( 难度等级: [0.4865, 0.4866) || 挂载数据: 无 ) +│ │ └── Thread.join的使用 --> ( 难度等级: [0.4866, 0.4866) || 挂载数据: 无 ) +│ ├── Java中的锁 --> ( 难度等级: [0.4866, 0.4872) || 挂载数据: 无 ) +│ │ ├── Lock接口 --> ( 难度等级: [0.4866, 0.4867) || 挂载数据: qa: 1 ) +│ │ ├── 队列同步器 --> ( 难度等级: [0.4867, 0.4868) || 挂载数据: 无 ) +│ │ │ ├── 队列同步器的接口与示例 --> ( 难度等级: [0.4867, 0.4867) || 挂载数据: 无 ) +│ │ │ │ ├── Windows注册表概述 --> ( 难度等级: [0.4867, 0.4867) || 挂载数据: 无 ) +│ │ │ │ ├── 访问注册表的Java平台接口 --> ( 难度等级: [0.4867, 0.4867) || 挂载数据: 无 ) +│ │ │ │ └── 以本地方法实现注册表访问函数 --> ( 难度等级: [0.4867, 0.4867) || 挂载数据: 无 ) +│ │ │ └── 队列同步器的实现分析 --> ( 难度等级: [0.4867, 0.4868) || 挂载数据: qa: 1 ) +│ │ ├── 重入锁 --> ( 难度等级: [0.4868, 0.4869) || 挂载数据: qa: 1 ) +│ │ ├── 读写锁 --> ( 难度等级: [0.4869, 0.487) || 挂载数据: 无 ) +│ │ │ ├── 读写锁的接口与示例 --> ( 难度等级: [0.4869, 0.4869) || 挂载数据: 无 ) +│ │ │ └── 读写锁的实现分析 --> ( 难度等级: [0.4869, 0.487) || 挂载数据: qa: 2 ) +│ │ ├── LockSupport工具 --> ( 难度等级: [0.487, 0.4871) || 挂载数据: 无 ) +│ │ └── Condition接口 --> ( 难度等级: [0.4871, 0.4872) || 挂载数据: 无 ) +│ │ ├── Condition接口与示例 --> ( 难度等级: [0.4871, 0.4871) || 挂载数据: 无 ) +│ │ └── Condition的实现分析 --> ( 难度等级: [0.4871, 0.4872) || 挂载数据: qa: 1 ) +│ ├── Java并发容器和框架 --> ( 难度等级: [0.4872, 0.4877) || 挂载数据: 无 ) +│ │ ├── ConcurrentHashMap的实现原理与使用 --> ( 难度等级: [0.4872, 0.4873) || 挂载数据: 无 ) +│ │ │ ├── ConcurrentHashMap的结构 --> ( 难度等级: [0.4872, 0.4872) || 挂载数据: 无 ) +│ │ │ ├── ConcurrentHashMap的初始化 --> ( 难度等级: [0.4872, 0.4872) || 挂载数据: 无 ) +│ │ │ ├── 定位Segment --> ( 难度等级: [0.4872, 0.4873) || 挂载数据: 无 ) +│ │ │ └── ConcurrentHashMap的操作 --> ( 难度等级: [0.4873, 0.4873) || 挂载数据: qa: 1 ) +│ │ ├── ConcurrentLinkedQueue --> ( 难度等级: [0.4873, 0.4874) || 挂载数据: 无 ) +│ │ │ ├── ConcurrentLinkedQueue的结构 --> ( 难度等级: [0.4873, 0.4874) || 挂载数据: 无 ) +│ │ │ ├── 入队列 --> ( 难度等级: [0.4874, 0.4874) || 挂载数据: qa: 1 ) +│ │ │ └── 出队列 --> ( 难度等级: [0.4874, 0.4874) || 挂载数据: qa: 5 ) +│ │ ├── Java中的阻塞队列 --> ( 难度等级: [0.4874, 0.4876) || 挂载数据: 无 ) +│ │ │ ├── 什么是阻塞队列 --> ( 难度等级: [0.4874, 0.4875) || 挂载数据: 无 ) +│ │ │ ├── Java里的阻塞队列 --> ( 难度等级: [0.4875, 0.4875) || 挂载数据: 无 ) +│ │ │ └── 阻塞队列的实现原理 --> ( 难度等级: [0.4875, 0.4876) || 挂载数据: 无 ) +│ │ └── Fork/Join框架 --> ( 难度等级: [0.4876, 0.4877) || 挂载数据: 无 ) +│ │ ├── 什么是Fork/Join框架 --> ( 难度等级: [0.4876, 0.4876) || 挂载数据: qa: 3 ) +│ │ ├── 工作窃取算法 --> ( 难度等级: [0.4876, 0.4876) || 挂载数据: 无 ) +│ │ ├── Fork/Join框架的设计 --> ( 难度等级: [0.4876, 0.4877) || 挂载数据: 无 ) +│ │ ├── 使用Fork/Join框架 --> ( 难度等级: [0.4877, 0.4877) || 挂载数据: 无 ) +│ │ ├── Fork/Join框架的异常处理 --> ( 难度等级: [0.4877, 0.4877) || 挂载数据: qa: 2 ) +│ │ └── Fork/Join框架的实现原理 --> ( 难度等级: [0.4877, 0.4877) || 挂载数据: qa: 1 ) +│ ├── Java中的13个原子操作类 --> ( 难度等级: [0.4877, 0.4883) || 挂载数据: 无 ) +│ │ ├── 原子更新基本类型类 --> ( 难度等级: [0.4877, 0.4879) || 挂载数据: 无 ) +│ │ ├── 原子更新数组 --> ( 难度等级: [0.4879, 0.488) || 挂载数据: 无 ) +│ │ ├── 原子更新引用类型 --> ( 难度等级: [0.488, 0.4881) || 挂载数据: 无 ) +│ │ └── 原子更新字段类 --> ( 难度等级: [0.4881, 0.4883) || 挂载数据: 无 ) +│ ├── Java中的并发工具类 --> ( 难度等级: [0.4883, 0.4888) || 挂载数据: 无 ) +│ │ ├── 等待多线程完成的CountDownLatch --> ( 难度等级: [0.4883, 0.4884) || 挂载数据: 无 ) +│ │ ├── 同步屏障CyclicBarrier --> ( 难度等级: [0.4884, 0.4886) || 挂载数据: 无 ) +│ │ │ ├── CyclicBarrier简介 --> ( 难度等级: [0.4884, 0.4885) || 挂载数据: 无 ) +│ │ │ ├── CyclicBarrier的应用场景 --> ( 难度等级: [0.4885, 0.4885) || 挂载数据: 无 ) +│ │ │ └── CyclicBarrier和CountDownLatch的区别 --> ( 难度等级: [0.4885, 0.4886) || 挂载数据: qa: 1 ) +│ │ ├── 控制并发线程数的Semaphore --> ( 难度等级: [0.4886, 0.4887) || 挂载数据: qa: 2 ) +│ │ └── 线程间交换数据的Exchanger --> ( 难度等级: [0.4887, 0.4888) || 挂载数据: qa: 1 ) +│ ├── Java中的线程池 --> ( 难度等级: [0.4888, 0.4894) || 挂载数据: 无 ) +│ │ ├── 线程池的实现原理 --> ( 难度等级: [0.4888, 0.4891) || 挂载数据: 无 ) +│ │ └── 线程池的使用 --> ( 难度等级: [0.4891, 0.4894) || 挂载数据: 无 ) +│ │ ├── 线程池的创建 --> ( 难度等级: [0.4891, 0.4892) || 挂载数据: qa: 2 ) +│ │ ├── 向线程池提交任务 --> ( 难度等级: [0.4892, 0.4892) || 挂载数据: 无 ) +│ │ ├── 关闭线程池 --> ( 难度等级: [0.4892, 0.4893) || 挂载数据: qa: 10 ) +│ │ ├── 合理地配置线程池 --> ( 难度等级: [0.4893, 0.4893) || 挂载数据: 无 ) +│ │ └── 线程池的监控 --> ( 难度等级: [0.4893, 0.4894) || 挂载数据: 无 ) +│ ├── Executor框架 --> ( 难度等级: [0.4894, 0.49) || 挂载数据: 无 ) +│ │ ├── Executor框架简介 --> ( 难度等级: [0.4894, 0.4895) || 挂载数据: 无 ) +│ │ │ ├── Executor框架的两级调度模型 --> ( 难度等级: [0.4894, 0.4895) || 挂载数据: 无 ) +│ │ │ └── Executor框架的结构与成员 --> ( 难度等级: [0.4895, 0.4895) || 挂载数据: qa: 10 ) +│ │ ├── ThreadPoolExecutor详解 --> ( 难度等级: [0.4895, 0.4897) || 挂载数据: 无 ) +│ │ │ ├── FixedThreadPool详解 --> ( 难度等级: [0.4895, 0.4896) || 挂载数据: 无 ) +│ │ │ ├── SingleThreadExecutor详解 --> ( 难度等级: [0.4896, 0.4896) || 挂载数据: 无 ) +│ │ │ └── CachedThreadPool详解 --> ( 难度等级: [0.4896, 0.4897) || 挂载数据: 无 ) +│ │ ├── ScheduledThreadPoolExecutor详解 --> ( 难度等级: [0.4897, 0.4898) || 挂载数据: 无 ) +│ │ │ ├── ScheduledThreadPoolExecutor的运行机制 --> ( 难度等级: [0.4897, 0.4897) || 挂载数据: 无 ) +│ │ │ └── ScheduledThreadPoolExecutor的实现 --> ( 难度等级: [0.4897, 0.4898) || 挂载数据: 无 ) +│ │ └── FutureTask详解 --> ( 难度等级: [0.4898, 0.49) || 挂载数据: 无 ) +│ │ ├── FutureTask简介 --> ( 难度等级: [0.4898, 0.4899) || 挂载数据: 无 ) +│ │ ├── FutureTask的使用 --> ( 难度等级: [0.4899, 0.4899) || 挂载数据: 无 ) +│ │ └── FutureTask的实现 --> ( 难度等级: [0.4899, 0.49) || 挂载数据: 无 ) +│ ├── Java并发编程实践 --> ( 难度等级: [0.49, 0.4905) || 挂载数据: 无 ) +│ │ ├── 生产者和消费者模式 --> ( 难度等级: [0.49, 0.4901) || 挂载数据: 无 ) +│ │ │ └── 多生产者和多消费者场景 --> ( 难度等级: [0.49, 0.4901) || 挂载数据: qa: 7 ) +│ │ ├── 性能测试 --> ( 难度等级: [0.4901, 0.4903) || 挂载数据: 无 ) +│ │ └── 异步任务池 --> ( 难度等级: [0.4903, 0.4905) || 挂载数据: 无 ) +│ ├── 基础知识 --> ( 难度等级: [0.4905, 0.4911) || 挂载数据: 无 ) +│ │ ├── Java 8、9、10以及11的变化 --> ( 难度等级: [0.4905, 0.4907) || 挂载数据: 无 ) +│ │ │ ├── Java怎么还在变 --> ( 难度等级: [0.4905, 0.4906) || 挂载数据: 无 ) +│ │ │ │ ├── Java在编程语言生态系统中的位置 --> ( 难度等级: [0.4905, 0.4905) || 挂载数据: 无 ) +│ │ │ │ ├── 用行为参数化把代码传递给方法 --> ( 难度等级: [0.4905, 0.4905) || 挂载数据: qa: 2 ) +│ │ │ │ ├── 并行与共享的可变数据 --> ( 难度等级: [0.4905, 0.4905) || 挂载数据: 无 ) +│ │ │ │ └── Java需要演变 --> ( 难度等级: [0.4905, 0.4906) || 挂载数据: 无 ) +│ │ │ ├── Java中的函数 --> ( 难度等级: [0.4906, 0.4906) || 挂载数据: 无 ) +│ │ │ │ ├── 方法和Lambda作为一等值 --> ( 难度等级: [0.4906, 0.4906) || 挂载数据: 无 ) +│ │ │ │ │ ├── 从Java程序中调用C函数 --> ( 难度等级: [0.4906, 0.4906) || 挂载数据: qa: 10 ) +│ │ │ │ │ ├── 数值参数与返回值 --> ( 难度等级: [0.4906, 0.4906) || 挂载数据: 无 ) +│ │ │ │ │ ├── 字符串参数 --> ( 难度等级: [0.4906, 0.4906) || 挂载数据: 无 ) +│ │ │ │ │ ├── 访问域 --> ( 难度等级: [0.4906, 0.4906) || 挂载数据: 无 ) +│ │ │ │ │ │ └── 访问静态域 --> ( 难度等级: [0.4906, 0.4906) || 挂载数据: qa: 5 ) +│ │ │ │ │ ├── 编码签名 --> ( 难度等级: [0.4906, 0.4906) || 挂载数据: qa: 5 ) +│ │ │ │ │ ├── 调用Java方法 --> ( 难度等级: [0.4906, 0.4906) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 静态方法 --> ( 难度等级: [0.4906, 0.4906) || 挂载数据: qa: 4 ) +│ │ │ │ │ │ ├── 构造器 --> ( 难度等级: [0.4906, 0.4906) || 挂载数据: 无 ) +│ │ │ │ │ │ └── 另一种方法调用 --> ( 难度等级: [0.4906, 0.4906) || 挂载数据: qa: 10 ) +│ │ │ │ │ ├── 访问数组元素 --> ( 难度等级: [0.4906, 0.4906) || 挂载数据: qa: 1 ) +│ │ │ │ │ └── 使用调用API --> ( 难度等级: [0.4906, 0.4906) || 挂载数据: 无 ) +│ │ │ │ ├── 传递代码:一个例子 --> ( 难度等级: [0.4906, 0.4906) || 挂载数据: 无 ) +│ │ │ │ └── 从传递方法到Lambda --> ( 难度等级: [0.4906, 0.4906) || 挂载数据: 无 ) +│ │ │ ├── 默认方法及Java模块 --> ( 难度等级: [0.4906, 0.4907) || 挂载数据: 无 ) +│ │ │ │ ├── 不断演进的API --> ( 难度等级: [0.4906, 0.4906) || 挂载数据: 无 ) +│ │ │ │ │ ├── 初始版本的API --> ( 难度等级: [0.4906, 0.4906) || 挂载数据: 无 ) +│ │ │ │ │ └── 第二版API --> ( 难度等级: [0.4906, 0.4906) || 挂载数据: qa: 10 ) +│ │ │ │ ├── 概述默认方法 --> ( 难度等级: [0.4906, 0.4906) || 挂载数据: qa: 6 ) +│ │ │ │ ├── 默认方法的使用模式 --> ( 难度等级: [0.4906, 0.4906) || 挂载数据: 无 ) +│ │ │ │ │ └── 行为的多继承 --> ( 难度等级: [0.4906, 0.4906) || 挂载数据: 无 ) +│ │ │ │ └── 解决冲突的规则 --> ( 难度等级: [0.4906, 0.4907) || 挂载数据: qa: 3 ) +│ │ │ │ ├── 选择提供了最具体实现的默认方法的接口 --> ( 难度等级: [0.4906, 0.4906) || 挂载数据: 无 ) +│ │ │ │ └── 冲突及如何显式地消除歧义 --> ( 难度等级: [0.4906, 0.4907) || 挂载数据: qa: 1 ) +│ │ │ └── 来自函数式编程的其他好思想 --> ( 难度等级: [0.4907, 0.4907) || 挂载数据: 无 ) +│ │ ├── 通过行为参数化传递代码 --> ( 难度等级: [0.4907, 0.4909) || 挂载数据: 无 ) +│ │ │ ├── 应对不断变化的需求 --> ( 难度等级: [0.4907, 0.4907) || 挂载数据: 无 ) +│ │ │ │ ├── 初试牛刀:筛选绿苹果 --> ( 难度等级: [0.4907, 0.4907) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 再展身手:把颜色作为参数 --> ( 难度等级: [0.4907, 0.4907) || 挂载数据: 无 ) +│ │ │ │ └── 第三次尝试:对你能想到的每个属性做筛选 --> ( 难度等级: [0.4907, 0.4907) || 挂载数据: qa: 1 ) +│ │ │ ├── 行为参数化 --> ( 难度等级: [0.4907, 0.4908) || 挂载数据: qa: 3 ) +│ │ │ ├── 对付啰唆 --> ( 难度等级: [0.4908, 0.4908) || 挂载数据: 无 ) +│ │ │ │ ├── 匿名类 --> ( 难度等级: [0.4908, 0.4908) || 挂载数据: qa: 2 ) +│ │ │ │ ├── 第五次尝试:使用匿名类 --> ( 难度等级: [0.4908, 0.4908) || 挂载数据: 无 ) +│ │ │ │ ├── 第六次尝试:使用Lambda表达式 --> ( 难度等级: [0.4908, 0.4908) || 挂载数据: 无 ) +│ │ │ │ └── 第七次尝试:将List类型抽象化 --> ( 难度等级: [0.4908, 0.4908) || 挂载数据: 无 ) +│ │ │ └── 真实的例子 --> ( 难度等级: [0.4908, 0.4909) || 挂载数据: 无 ) +│ │ │ ├── 用Comparator来排序 --> ( 难度等级: [0.4908, 0.4909) || 挂载数据: qa: 4 ) +│ │ │ ├── 用Runnable执行代码块 --> ( 难度等级: [0.4909, 0.4909) || 挂载数据: 无 ) +│ │ │ ├── 通过Callable返回结果 --> ( 难度等级: [0.4909, 0.4909) || 挂载数据: qa: 4 ) +│ │ │ └── GUI事件处理 --> ( 难度等级: [0.4909, 0.4909) || 挂载数据: qa: 10 ) +│ │ └── Lambda表达式 --> ( 难度等级: [0.4909, 0.4911) || 挂载数据: 无 ) +│ │ ├── Lambda管中窥豹 --> ( 难度等级: [0.4909, 0.4909) || 挂载数据: 无 ) +│ │ ├── 在哪里以及如何使用Lambda --> ( 难度等级: [0.4909, 0.4909) || 挂载数据: 无 ) +│ │ │ ├── 函数式接口 --> ( 难度等级: [0.4909, 0.4909) || 挂载数据: 无 ) +│ │ │ └── 函数描述符 --> ( 难度等级: [0.4909, 0.4909) || 挂载数据: 无 ) +│ │ ├── 把Lambda付诸实践:环绕执行模式 --> ( 难度等级: [0.4909, 0.4909) || 挂载数据: 无 ) +│ │ │ ├── 第 1 步:记得行为参数化 --> ( 难度等级: [0.4909, 0.4909) || 挂载数据: qa: 1 ) +│ │ │ ├── 第 2 步:使用函数式接口来传递行为 --> ( 难度等级: [0.4909, 0.4909) || 挂载数据: 无 ) +│ │ │ ├── 第 3 步:执行一个行为 --> ( 难度等级: [0.4909, 0.4909) || 挂载数据: qa: 10 ) +│ │ │ └── 第 4 步:传递Lambda --> ( 难度等级: [0.4909, 0.4909) || 挂载数据: qa: 9 ) +│ │ ├── 使用函数式接口 --> ( 难度等级: [0.4909, 0.4909) || 挂载数据: 无 ) +│ │ │ ├── Predicate --> ( 难度等级: [0.4909, 0.4909) || 挂载数据: 无 ) +│ │ │ ├── Consumer --> ( 难度等级: [0.4909, 0.4909) || 挂载数据: qa: 1 ) +│ │ │ └── Function --> ( 难度等级: [0.4909, 0.4909) || 挂载数据: qa: 3 ) +│ │ ├── 类型检查、类型推断以及限制 --> ( 难度等级: [0.4909, 0.491) || 挂载数据: 无 ) +│ │ │ ├── 类型检查 --> ( 难度等级: [0.4909, 0.491) || 挂载数据: qa: 2 ) +│ │ │ ├── 同样的Lambda,不同的函数式接口 --> ( 难度等级: [0.491, 0.491) || 挂载数据: 无 ) +│ │ │ ├── 类型推断 --> ( 难度等级: [0.491, 0.491) || 挂载数据: qa: 10 ) +│ │ │ └── 使用局部变量 --> ( 难度等级: [0.491, 0.491) || 挂载数据: qa: 3 ) +│ │ ├── 方法引用 --> ( 难度等级: [0.491, 0.491) || 挂载数据: 无 ) +│ │ │ ├── 管中窥豹 --> ( 难度等级: [0.491, 0.491) || 挂载数据: 无 ) +│ │ │ └── 构造函数引用 --> ( 难度等级: [0.491, 0.491) || 挂载数据: qa: 10 ) +│ │ ├── 复合Lambda表达式的有用方法 --> ( 难度等级: [0.491, 0.491) || 挂载数据: 无 ) +│ │ │ ├── 比较器复合 --> ( 难度等级: [0.491, 0.491) || 挂载数据: 无 ) +│ │ │ ├── 谓词复合 --> ( 难度等级: [0.491, 0.491) || 挂载数据: 无 ) +│ │ │ └── 函数复合 --> ( 难度等级: [0.491, 0.491) || 挂载数据: 无 ) +│ │ ├── 数学中的类似思想 --> ( 难度等级: [0.491, 0.491) || 挂载数据: qa: 1 ) +│ │ │ ├── 积分 --> ( 难度等级: [0.491, 0.491) || 挂载数据: 无 ) +│ │ │ └── 与Java 8的Lambda联系起来 --> ( 难度等级: [0.491, 0.491) || 挂载数据: 无 ) +│ │ ├── 测试可见Lambda函数的行为 --> ( 难度等级: [0.491, 0.491) || 挂载数据: 无 ) +│ │ ├── 测试使用Lambda的方法的行为 --> ( 难度等级: [0.491, 0.491) || 挂载数据: 无 ) +│ │ ├── 将复杂的Lambda表达式分为不同的方法 --> ( 难度等级: [0.491, 0.4911) || 挂载数据: qa: 1 ) +│ │ └── 高阶函数的测试 --> ( 难度等级: [0.4911, 0.4911) || 挂载数据: 无 ) +│ ├── 使用流进行函数式数据处理 --> ( 难度等级: [0.4911, 0.4916) || 挂载数据: 无 ) +│ │ ├── 引入流 --> ( 难度等级: [0.4911, 0.4914) || 挂载数据: 无 ) +│ │ │ ├── 流简介 --> ( 难度等级: [0.4911, 0.4912) || 挂载数据: 无 ) +│ │ │ ├── 流操作 --> ( 难度等级: [0.4912, 0.4913) || 挂载数据: 无 ) +│ │ │ │ ├── 中间操作 --> ( 难度等级: [0.4912, 0.4912) || 挂载数据: qa: 10 ) +│ │ │ │ └── 终端操作 --> ( 难度等级: [0.4912, 0.4913) || 挂载数据: 无 ) +│ │ │ └── 路线图 --> ( 难度等级: [0.4913, 0.4914) || 挂载数据: 无 ) +│ │ └── 用流收集数据 --> ( 难度等级: [0.4914, 0.4916) || 挂载数据: 无 ) +│ │ ├── 收集器简介 --> ( 难度等级: [0.4914, 0.4914) || 挂载数据: 无 ) +│ │ │ ├── 收集器用作高级归约 --> ( 难度等级: [0.4914, 0.4914) || 挂载数据: qa: 1 ) +│ │ │ └── 预定义收集器 --> ( 难度等级: [0.4914, 0.4914) || 挂载数据: 无 ) +│ │ ├── 分组 --> ( 难度等级: [0.4914, 0.4915) || 挂载数据: 无 ) +│ │ │ ├── 操作分组的元素 --> ( 难度等级: [0.4914, 0.4914) || 挂载数据: 无 ) +│ │ │ ├── 多级分组 --> ( 难度等级: [0.4914, 0.4914) || 挂载数据: qa: 8 ) +│ │ │ └── 按子组收集数据 --> ( 难度等级: [0.4914, 0.4915) || 挂载数据: 无 ) +│ │ ├── 分区 --> ( 难度等级: [0.4915, 0.4915) || 挂载数据: 无 ) +│ │ │ ├── 分区的优势 --> ( 难度等级: [0.4915, 0.4915) || 挂载数据: qa: 3 ) +│ │ │ └── 将数字按质数和非质数分区 --> ( 难度等级: [0.4915, 0.4915) || 挂载数据: 无 ) +│ │ ├── 收集器接口 --> ( 难度等级: [0.4915, 0.4916) || 挂载数据: 无 ) +│ │ │ ├── 理解Collector接口声明的方法 --> ( 难度等级: [0.4915, 0.4915) || 挂载数据: qa: 1 ) +│ │ │ └── 全部融合到一起 --> ( 难度等级: [0.4915, 0.4916) || 挂载数据: 无 ) +│ │ └── 开发你自己的收集器以获得更好的性能 --> ( 难度等级: [0.4916, 0.4916) || 挂载数据: 无 ) +│ │ ├── 仅用质数做除数 --> ( 难度等级: [0.4916, 0.4916) || 挂载数据: 无 ) +│ │ └── 比较收集器的性能 --> ( 难度等级: [0.4916, 0.4916) || 挂载数据: qa: 3 ) +│ ├── 无所不在的Java --> ( 难度等级: [0.4916, 0.4922) || 挂载数据: 无 ) +│ │ ├── 用Optional取代null --> ( 难度等级: [0.4916, 0.4919) || 挂载数据: 无 ) +│ │ │ ├── 如何为缺失的值建模 --> ( 难度等级: [0.4916, 0.4917) || 挂载数据: 无 ) +│ │ │ │ ├── 采用防御式检查减少NullPointerException --> ( 难度等级: [0.4916, 0.4917) || 挂载数据: 无 ) +│ │ │ │ └── 其他语言中null的替代品 --> ( 难度等级: [0.4917, 0.4917) || 挂载数据: qa: 10 ) +│ │ │ ├── Optional类入门 --> ( 难度等级: [0.4917, 0.4918) || 挂载数据: 无 ) +│ │ │ └── 应用Optional的几种模式 --> ( 难度等级: [0.4918, 0.4919) || 挂载数据: 无 ) +│ │ │ ├── 创建Optional对象 --> ( 难度等级: [0.4918, 0.4918) || 挂载数据: 无 ) +│ │ │ ├── 使用map从Optional对象中提取和转换值 --> ( 难度等级: [0.4918, 0.4918) || 挂载数据: 无 ) +│ │ │ ├── 使用flatMap链接Optional对象 --> ( 难度等级: [0.4918, 0.4919) || 挂载数据: 无 ) +│ │ │ ├── 操纵由Optional对象构成的Stream --> ( 难度等级: [0.4919, 0.4919) || 挂载数据: 无 ) +│ │ │ ├── 默认行为及解引用Optional对象 --> ( 难度等级: [0.4919, 0.4919) || 挂载数据: 无 ) +│ │ │ ├── 两个Optional对象的组合 --> ( 难度等级: [0.4919, 0.4919) || 挂载数据: qa: 1 ) +│ │ │ └── 使用filter剔除特定的值 --> ( 难度等级: [0.4919, 0.4919) || 挂载数据: qa: 1 ) +│ │ └── Java模块系统 --> ( 难度等级: [0.4919, 0.4922) || 挂载数据: 无 ) +│ │ ├── 模块化的驱动力:软件的推理 --> ( 难度等级: [0.4919, 0.492) || 挂载数据: 无 ) +│ │ │ ├── 关注点分离 --> ( 难度等级: [0.4919, 0.4919) || 挂载数据: qa: 2 ) +│ │ │ ├── 信息隐藏 --> ( 难度等级: [0.4919, 0.4919) || 挂载数据: 无 ) +│ │ │ └── Java软件 --> ( 难度等级: [0.4919, 0.492) || 挂载数据: qa: 8 ) +│ │ ├── 使用Java模块系统开发应用 --> ( 难度等级: [0.492, 0.492) || 挂载数据: 无 ) +│ │ │ ├── 从头开始搭建一个应用 --> ( 难度等级: [0.492, 0.492) || 挂载数据: 无 ) +│ │ │ ├── 细粒度和粗粒度的模块化 --> ( 难度等级: [0.492, 0.492) || 挂载数据: 无 ) +│ │ │ └── Java模块系统基础 --> ( 难度等级: [0.492, 0.492) || 挂载数据: qa: 10 ) +│ │ ├── 使用多个模块 --> ( 难度等级: [0.492, 0.492) || 挂载数据: qa: 1 ) +│ │ │ ├── exports子句 --> ( 难度等级: [0.492, 0.492) || 挂载数据: 无 ) +│ │ │ ├── requires子句 --> ( 难度等级: [0.492, 0.492) || 挂载数据: 无 ) +│ │ │ └── 命名 --> ( 难度等级: [0.492, 0.492) || 挂载数据: qa: 1 ) +│ │ ├── 编译及打包 --> ( 难度等级: [0.492, 0.4921) || 挂载数据: 无 ) +│ │ ├── 自动模块 --> ( 难度等级: [0.4921, 0.4921) || 挂载数据: qa: 1 ) +│ │ └── 模块声明及子句 --> ( 难度等级: [0.4921, 0.4922) || 挂载数据: 无 ) +│ │ ├── requires --> ( 难度等级: [0.4921, 0.4921) || 挂载数据: 无 ) +│ │ ├── exports --> ( 难度等级: [0.4921, 0.4922) || 挂载数据: 无 ) +│ │ ├── requires的传递 --> ( 难度等级: [0.4922, 0.4922) || 挂载数据: 无 ) +│ │ ├── exports to --> ( 难度等级: [0.4922, 0.4922) || 挂载数据: qa: 4 ) +│ │ ├── open和opens --> ( 难度等级: [0.4922, 0.4922) || 挂载数据: qa: 4 ) +│ │ └── uses和provides --> ( 难度等级: [0.4922, 0.4922) || 挂载数据: 无 ) +│ ├── 提升Java的并发性 --> ( 难度等级: [0.4922, 0.4927) || 挂载数据: 无 ) +│ │ ├── CompletableFuture及反应式编程背后的概念 --> ( 难度等级: [0.4922, 0.4924) || 挂载数据: 无 ) +│ │ │ ├── 为支持并发而不断演进的Java --> ( 难度等级: [0.4922, 0.4922) || 挂载数据: 无 ) +│ │ │ │ ├── 其他的线程抽象:非嵌套方法调用 --> ( 难度等级: [0.4922, 0.4922) || 挂载数据: 无 ) +│ │ │ │ └── 你希望线程为你带来什么 --> ( 难度等级: [0.4922, 0.4922) || 挂载数据: qa: 10 ) +│ │ │ ├── 同步及异步API --> ( 难度等级: [0.4922, 0.4922) || 挂载数据: 无 ) +│ │ │ │ ├── Future风格的API --> ( 难度等级: [0.4922, 0.4922) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 反应式风格的API --> ( 难度等级: [0.4922, 0.4922) || 挂载数据: 无 ) +│ │ │ │ ├── 有害的睡眠及其他阻塞式操作 --> ( 难度等级: [0.4922, 0.4922) || 挂载数据: 无 ) +│ │ │ │ └── 如何使用异步API进行异常处理 --> ( 难度等级: [0.4922, 0.4922) || 挂载数据: 无 ) +│ │ │ ├── “线框–管道”模型 --> ( 难度等级: [0.4922, 0.4923) || 挂载数据: 无 ) +│ │ │ ├── 为并发而生的CompletableFuture和结合器 --> ( 难度等级: [0.4923, 0.4923) || 挂载数据: qa: 1 ) +│ │ │ ├── “发布–订阅”以及反应式编程 --> ( 难度等级: [0.4923, 0.4923) || 挂载数据: 无 ) +│ │ │ │ ├── 背压 --> ( 难度等级: [0.4923, 0.4923) || 挂载数据: 无 ) +│ │ │ │ └── 一种简单的真实背压 --> ( 难度等级: [0.4923, 0.4923) || 挂载数据: 无 ) +│ │ │ └── 反应式系统和反应式编程 --> ( 难度等级: [0.4923, 0.4924) || 挂载数据: 无 ) +│ │ ├── CompletableFuture:组合式异步编程 --> ( 难度等级: [0.4924, 0.4926) || 挂载数据: 无 ) +│ │ │ ├── 实现异步API --> ( 难度等级: [0.4924, 0.4924) || 挂载数据: 无 ) +│ │ │ │ ├── 将同步方法转换为异步方法 --> ( 难度等级: [0.4924, 0.4924) || 挂载数据: qa: 2 ) +│ │ │ │ └── 错误处理 --> ( 难度等级: [0.4924, 0.4924) || 挂载数据: 无 ) +│ │ │ ├── 让你的代码免受阻塞之苦 --> ( 难度等级: [0.4924, 0.4925) || 挂载数据: 无 ) +│ │ │ │ ├── 使用并行流对请求进行并行操作 --> ( 难度等级: [0.4924, 0.4924) || 挂载数据: 无 ) +│ │ │ │ ├── 使用CompletableFuture发起异步请求 --> ( 难度等级: [0.4924, 0.4924) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 寻找更好的方案 --> ( 难度等级: [0.4924, 0.4925) || 挂载数据: qa: 3 ) +│ │ │ │ └── 使用定制的执行器 --> ( 难度等级: [0.4925, 0.4925) || 挂载数据: 无 ) +│ │ │ ├── 对多个异步任务进行流水线操作 --> ( 难度等级: [0.4925, 0.4925) || 挂载数据: 无 ) +│ │ │ │ ├── 实现折扣服务 --> ( 难度等级: [0.4925, 0.4925) || 挂载数据: 无 ) +│ │ │ │ ├── 使用Discount服务 --> ( 难度等级: [0.4925, 0.4925) || 挂载数据: qa: 6 ) +│ │ │ │ ├── 构造同步和异步操作 --> ( 难度等级: [0.4925, 0.4925) || 挂载数据: qa: 3 ) +│ │ │ │ ├── 将两个CompletableFuture对象整合起来,无论它们是否存在依赖 --> ( 难度等级: [0.4925, 0.4925) || 挂载数据: 无 ) +│ │ │ │ ├── 对Future和Completable-Future的回顾 --> ( 难度等级: [0.4925, 0.4925) || 挂载数据: 无 ) +│ │ │ │ └── 高效地使用超时机制 --> ( 难度等级: [0.4925, 0.4925) || 挂载数据: 无 ) +│ │ │ └── 响应CompletableFuture的completion事件 --> ( 难度等级: [0.4925, 0.4926) || 挂载数据: 无 ) +│ │ │ └── 对最佳价格查询器应用的优化 --> ( 难度等级: [0.4925, 0.4926) || 挂载数据: qa: 1 ) +│ │ └── 反应式编程 --> ( 难度等级: [0.4926, 0.4927) || 挂载数据: 无 ) +│ │ ├── 反应式宣言 --> ( 难度等级: [0.4926, 0.4926) || 挂载数据: 无 ) +│ │ │ ├── 应用层的反应式编程 --> ( 难度等级: [0.4926, 0.4926) || 挂载数据: 无 ) +│ │ │ └── 反应式系统 --> ( 难度等级: [0.4926, 0.4926) || 挂载数据: 无 ) +│ │ ├── 反应式流以及Flow API --> ( 难度等级: [0.4926, 0.4927) || 挂载数据: 无 ) +│ │ │ ├── Flow类 --> ( 难度等级: [0.4926, 0.4926) || 挂载数据: 无 ) +│ │ │ ├── 创建你的第一个反应式应用 --> ( 难度等级: [0.4926, 0.4927) || 挂载数据: 无 ) +│ │ │ └── 使用Processor转换数据 --> ( 难度等级: [0.4927, 0.4927) || 挂载数据: qa: 1 ) +│ │ └── 使用反应式库RxJava --> ( 难度等级: [0.4927, 0.4927) || 挂载数据: qa: 3 ) +│ │ └── 转换及整合多个Observable --> ( 难度等级: [0.4927, 0.4927) || 挂载数据: qa: 3 ) +│ ├── 函数式编程以及Java未来的演进 --> ( 难度等级: [0.4927, 0.4933) || 挂载数据: 无 ) +│ │ ├── 函数式的思考 --> ( 难度等级: [0.4927, 0.4929) || 挂载数据: qa: 1 ) +│ │ │ ├── 实现和维护系统 --> ( 难度等级: [0.4927, 0.4928) || 挂载数据: qa: 1 ) +│ │ │ │ └── 声明式编程 --> ( 难度等级: [0.4927, 0.4928) || 挂载数据: 无 ) +│ │ │ ├── 什么是函数式编程 --> ( 难度等级: [0.4928, 0.4928) || 挂载数据: 无 ) +│ │ │ │ ├── 函数式Java编程 --> ( 难度等级: [0.4928, 0.4928) || 挂载数据: qa: 10 ) +│ │ │ │ ├── 引用透明性 --> ( 难度等级: [0.4928, 0.4928) || 挂载数据: qa: 1 ) +│ │ │ │ └── 面向对象的编程和函数式编程的对比 --> ( 难度等级: [0.4928, 0.4928) || 挂载数据: qa: 1 ) +│ │ │ └── 递归和迭代 --> ( 难度等级: [0.4928, 0.4929) || 挂载数据: 无 ) +│ │ ├── 函数式编程的技巧 --> ( 难度等级: [0.4929, 0.493) || 挂载数据: 无 ) +│ │ │ ├── 无处不在的函数 --> ( 难度等级: [0.4929, 0.4929) || 挂载数据: 无 ) +│ │ │ │ └── 柯里化 --> ( 难度等级: [0.4929, 0.4929) || 挂载数据: 无 ) +│ │ │ ├── 持久化数据结构 --> ( 难度等级: [0.4929, 0.4929) || 挂载数据: 无 ) +│ │ │ │ ├── 破坏式更新和函数式更新的比较 --> ( 难度等级: [0.4929, 0.4929) || 挂载数据: 无 ) +│ │ │ │ ├── 另一个使用Tree的例子 --> ( 难度等级: [0.4929, 0.4929) || 挂载数据: qa: 4 ) +│ │ │ │ └── 采用函数式的方法 --> ( 难度等级: [0.4929, 0.4929) || 挂载数据: qa: 1 ) +│ │ │ ├── Stream的延迟计算 --> ( 难度等级: [0.4929, 0.4929) || 挂载数据: 无 ) +│ │ │ │ ├── 自定义的Stream --> ( 难度等级: [0.4929, 0.4929) || 挂载数据: qa: 8 ) +│ │ │ │ └── 创建你自己的延迟列表 --> ( 难度等级: [0.4929, 0.4929) || 挂载数据: 无 ) +│ │ │ ├── 模式匹配 --> ( 难度等级: [0.4929, 0.4929) || 挂载数据: 无 ) +│ │ │ │ ├── 访问者模式 --> ( 难度等级: [0.4929, 0.4929) || 挂载数据: 无 ) +│ │ │ │ └── 用模式匹配力挽狂澜 --> ( 难度等级: [0.4929, 0.4929) || 挂载数据: 无 ) +│ │ │ └── 杂项 --> ( 难度等级: [0.4929, 0.493) || 挂载数据: 无 ) +│ │ │ ├── 缓存或记忆表 --> ( 难度等级: [0.4929, 0.493) || 挂载数据: qa: 4 ) +│ │ │ └── “返回同样的对象”意味着什么 --> ( 难度等级: [0.493, 0.493) || 挂载数据: 无 ) +│ │ ├── 结论以及Java的未来 --> ( 难度等级: [0.493, 0.4931) || 挂载数据: 无 ) +│ │ │ ├── 回顾Java 8的语言特性 --> ( 难度等级: [0.493, 0.493) || 挂载数据: 无 ) +│ │ │ ├── Java 10的局部变量类型推断 --> ( 难度等级: [0.493, 0.493) || 挂载数据: 无 ) +│ │ │ ├── Java的未来 --> ( 难度等级: [0.493, 0.493) || 挂载数据: qa: 2 ) +│ │ │ │ ├── 声明处型变 --> ( 难度等级: [0.493, 0.493) || 挂载数据: 无 ) +│ │ │ │ ├── 模式匹配 --> ( 难度等级: [0.493, 0.493) || 挂载数据: 无 ) +│ │ │ │ ├── 更加丰富的泛型形式 --> ( 难度等级: [0.493, 0.493) || 挂载数据: 无 ) +│ │ │ │ ├── 对不变性的更深层支持 --> ( 难度等级: [0.493, 0.493) || 挂载数据: 无 ) +│ │ │ │ └── 值类型 --> ( 难度等级: [0.493, 0.493) || 挂载数据: qa: 10 ) +│ │ │ ├── 让Java发展得更快 --> ( 难度等级: [0.493, 0.4931) || 挂载数据: 无 ) +│ │ │ └── 写在最后的话 --> ( 难度等级: [0.4931, 0.4931) || 挂载数据: qa: 10 ) +│ │ ├── Lambda基础 --> ( 难度等级: [0.4931, 0.4932) || 挂载数据: 无 ) +│ │ └── 使用Stream --> ( 难度等级: [0.4932, 0.4933) || 挂载数据: qa: 1 ) +│ │ ├── 创建Stream --> ( 难度等级: [0.4932, 0.4932) || 挂载数据: qa: 3 ) +│ │ ├── 使用filter --> ( 难度等级: [0.4932, 0.4932) || 挂载数据: qa: 4 ) +│ │ ├── 使用reduce --> ( 难度等级: [0.4932, 0.4933) || 挂载数据: 无 ) +│ │ └── 输出集合 --> ( 难度等级: [0.4933, 0.4933) || 挂载数据: qa: 2 ) +│ ├── Java 8的流库 --> ( 难度等级: [0.4933, 0.4939) || 挂载数据: 无 ) +│ │ ├── 从迭代到流的操作 --> ( 难度等级: [0.4933, 0.4934) || 挂载数据: 无 ) +│ │ ├── 流的创建 --> ( 难度等级: [0.4934, 0.4934) || 挂载数据: 无 ) +│ │ ├── f?ilter、map和f?latMap方法 --> ( 难度等级: [0.4934, 0.4935) || 挂载数据: 无 ) +│ │ ├── 抽取子流和组合流 --> ( 难度等级: [0.4935, 0.4935) || 挂载数据: 无 ) +│ │ ├── 其他的流转换 --> ( 难度等级: [0.4935, 0.4936) || 挂载数据: 无 ) +│ │ ├── 简单约简 --> ( 难度等级: [0.4936, 0.4936) || 挂载数据: 无 ) +│ │ ├── Optional类型 --> ( 难度等级: [0.4936, 0.4937) || 挂载数据: 无 ) +│ │ │ ├── 获取Optional值 --> ( 难度等级: [0.4936, 0.4936) || 挂载数据: qa: 6 ) +│ │ │ ├── 消费Optional值 --> ( 难度等级: [0.4936, 0.4936) || 挂载数据: 无 ) +│ │ │ ├── 管道化Optional值 --> ( 难度等级: [0.4936, 0.4936) || 挂载数据: 无 ) +│ │ │ ├── 不适合使用Optional值的方式 --> ( 难度等级: [0.4936, 0.4936) || 挂载数据: 无 ) +│ │ │ ├── 创建Optional值 --> ( 难度等级: [0.4936, 0.4936) || 挂载数据: 无 ) +│ │ │ ├── 用f?latMap构建Optional值的函数 --> ( 难度等级: [0.4936, 0.4937) || 挂载数据: 无 ) +│ │ │ └── 将Optional转换为流 --> ( 难度等级: [0.4937, 0.4937) || 挂载数据: 无 ) +│ │ ├── 收集到映射表中 --> ( 难度等级: [0.4937, 0.4937) || 挂载数据: 无 ) +│ │ ├── 下游收集器 --> ( 难度等级: [0.4937, 0.4938) || 挂载数据: 无 ) +│ │ ├── 约简操作 --> ( 难度等级: [0.4938, 0.4938) || 挂载数据: 无 ) +│ │ └── 基本类型流 --> ( 难度等级: [0.4938, 0.4939) || 挂载数据: 无 ) +│ ├── 输入与输出 --> ( 难度等级: [0.4939, 0.4944) || 挂载数据: 无 ) +│ │ ├── 输入/输出流 --> ( 难度等级: [0.4939, 0.494) || 挂载数据: 无 ) +│ │ │ ├── 读写字节 --> ( 难度等级: [0.4939, 0.4939) || 挂载数据: 无 ) +│ │ │ ├── 完整的流家族 --> ( 难度等级: [0.4939, 0.4939) || 挂载数据: 无 ) +│ │ │ ├── 组合输入/输出流过滤器 --> ( 难度等级: [0.4939, 0.4939) || 挂载数据: 无 ) +│ │ │ ├── 文本输入与输出 --> ( 难度等级: [0.4939, 0.4939) || 挂载数据: qa: 10 ) +│ │ │ ├── 如何写出文本输出 --> ( 难度等级: [0.4939, 0.4939) || 挂载数据: 无 ) +│ │ │ ├── 如何读入文本输入 --> ( 难度等级: [0.4939, 0.4939) || 挂载数据: 无 ) +│ │ │ ├── 以文本格式存储对象 --> ( 难度等级: [0.4939, 0.4939) || 挂载数据: 无 ) +│ │ │ └── 字符编码方式 --> ( 难度等级: [0.4939, 0.494) || 挂载数据: 无 ) +│ │ ├── 读写二进制数据 --> ( 难度等级: [0.494, 0.494) || 挂载数据: qa: 1 ) +│ │ │ ├── DataInput和DataOutput接口 --> ( 难度等级: [0.494, 0.494) || 挂载数据: 无 ) +│ │ │ ├── 随机访问文件 --> ( 难度等级: [0.494, 0.494) || 挂载数据: qa: 1 ) +│ │ │ └── ZIP文档 --> ( 难度等级: [0.494, 0.494) || 挂载数据: 无 ) +│ │ ├── 对象输入/输出流与序列化 --> ( 难度等级: [0.494, 0.4941) || 挂载数据: 无 ) +│ │ │ ├── 保存和加载序列化对象 --> ( 难度等级: [0.494, 0.4941) || 挂载数据: qa: 2 ) +│ │ │ ├── 理解对象序列化的文件格式 --> ( 难度等级: [0.4941, 0.4941) || 挂载数据: 无 ) +│ │ │ ├── 修改默认的序列化机制 --> ( 难度等级: [0.4941, 0.4941) || 挂载数据: 无 ) +│ │ │ ├── 序列化单例和类型安全的枚举 --> ( 难度等级: [0.4941, 0.4941) || 挂载数据: 无 ) +│ │ │ ├── 版本管理 --> ( 难度等级: [0.4941, 0.4941) || 挂载数据: qa: 1 ) +│ │ │ └── 为克隆使用序列化 --> ( 难度等级: [0.4941, 0.4941) || 挂载数据: 无 ) +│ │ ├── 操作文件 --> ( 难度等级: [0.4941, 0.4942) || 挂载数据: 无 ) +│ │ │ ├── Path --> ( 难度等级: [0.4941, 0.4942) || 挂载数据: qa: 2 ) +│ │ │ ├── 读写文件 --> ( 难度等级: [0.4942, 0.4942) || 挂载数据: qa: 10 ) +│ │ │ ├── 复制、移动和删除文件 --> ( 难度等级: [0.4942, 0.4942) || 挂载数据: qa: 1 ) +│ │ │ ├── 获取文件信息 --> ( 难度等级: [0.4942, 0.4942) || 挂载数据: qa: 10 ) +│ │ │ ├── 访问目录中的项 --> ( 难度等级: [0.4942, 0.4942) || 挂载数据: 无 ) +│ │ │ ├── 使用目录流 --> ( 难度等级: [0.4942, 0.4942) || 挂载数据: 无 ) +│ │ │ └── ZIP文件系统 --> ( 难度等级: [0.4942, 0.4942) || 挂载数据: 无 ) +│ │ ├── 内存映射文件 --> ( 难度等级: [0.4942, 0.4943) || 挂载数据: 无 ) +│ │ │ ├── 内存映射文件的性能 --> ( 难度等级: [0.4942, 0.4943) || 挂载数据: 无 ) +│ │ │ └── 缓冲区数据结构 --> ( 难度等级: [0.4943, 0.4943) || 挂载数据: 无 ) +│ │ └── 文件加锁机制 --> ( 难度等级: [0.4943, 0.4944) || 挂载数据: 无 ) +│ ├── XML --> ( 难度等级: [0.4944, 0.495) || 挂载数据: 无 ) +│ │ ├── XML概述 --> ( 难度等级: [0.4944, 0.4945) || 挂载数据: 无 ) +│ │ ├── XML文档的结构 --> ( 难度等级: [0.4945, 0.4945) || 挂载数据: 无 ) +│ │ ├── 解析XML文档 --> ( 难度等级: [0.4945, 0.4946) || 挂载数据: 无 ) +│ │ ├── 验证XML文档 --> ( 难度等级: [0.4946, 0.4947) || 挂载数据: 无 ) +│ │ │ ├── 文档类型定义 --> ( 难度等级: [0.4946, 0.4946) || 挂载数据: 无 ) +│ │ │ ├── XML Schema --> ( 难度等级: [0.4946, 0.4946) || 挂载数据: qa: 10 ) +│ │ │ └── 一个实践示例 --> ( 难度等级: [0.4946, 0.4947) || 挂载数据: 无 ) +│ │ ├── 使用XPath来定位信息 --> ( 难度等级: [0.4947, 0.4947) || 挂载数据: qa: 1 ) +│ │ ├── 使用命名空间 --> ( 难度等级: [0.4947, 0.4948) || 挂载数据: qa: 1 ) +│ │ ├── 流机制解析器 --> ( 难度等级: [0.4948, 0.4949) || 挂载数据: 无 ) +│ │ │ ├── 使用SAX解析器 --> ( 难度等级: [0.4948, 0.4948) || 挂载数据: 无 ) +│ │ │ └── 使用StAX解析器 --> ( 难度等级: [0.4948, 0.4949) || 挂载数据: 无 ) +│ │ ├── 生成XML文档 --> ( 难度等级: [0.4949, 0.4949) || 挂载数据: 无 ) +│ │ │ ├── 不带命名空间的文档 --> ( 难度等级: [0.4949, 0.4949) || 挂载数据: 无 ) +│ │ │ ├── 带命名空间的文档 --> ( 难度等级: [0.4949, 0.4949) || 挂载数据: 无 ) +│ │ │ ├── 写出文档 --> ( 难度等级: [0.4949, 0.4949) || 挂载数据: qa: 10 ) +│ │ │ └── 使用StAX写出XML文档 --> ( 难度等级: [0.4949, 0.4949) || 挂载数据: qa: 2 ) +│ │ └── XSL转换 --> ( 难度等级: [0.4949, 0.495) || 挂载数据: 无 ) +│ ├── 网络 --> ( 难度等级: [0.495, 0.4955) || 挂载数据: 无 ) +│ │ ├── 连接到服务器 --> ( 难度等级: [0.495, 0.4951) || 挂载数据: 无 ) +│ │ │ ├── 使用telnet --> ( 难度等级: [0.495, 0.495) || 挂载数据: qa: 1 ) +│ │ │ ├── 用Java连接到服务器 --> ( 难度等级: [0.495, 0.495) || 挂载数据: qa: 5 ) +│ │ │ ├── 套接字超时 --> ( 难度等级: [0.495, 0.4951) || 挂载数据: 无 ) +│ │ │ └── 因特网地址 --> ( 难度等级: [0.4951, 0.4951) || 挂载数据: qa: 1 ) +│ │ ├── 实现服务器 --> ( 难度等级: [0.4951, 0.4952) || 挂载数据: 无 ) +│ │ │ ├── 服务器套接字 --> ( 难度等级: [0.4951, 0.4951) || 挂载数据: qa: 10 ) +│ │ │ ├── 为多个客户端服务 --> ( 难度等级: [0.4951, 0.4951) || 挂载数据: qa: 3 ) +│ │ │ ├── 半关闭 --> ( 难度等级: [0.4951, 0.4952) || 挂载数据: qa: 3 ) +│ │ │ └── 可中断套接字 --> ( 难度等级: [0.4952, 0.4952) || 挂载数据: 无 ) +│ │ ├── 获取Web数据 --> ( 难度等级: [0.4952, 0.4953) || 挂载数据: 无 ) +│ │ │ ├── URL和URI --> ( 难度等级: [0.4952, 0.4952) || 挂载数据: qa: 2 ) +│ │ │ ├── 使用URLConnection获取信息 --> ( 难度等级: [0.4952, 0.4953) || 挂载数据: qa: 1 ) +│ │ │ └── 提交表单数据 --> ( 难度等级: [0.4953, 0.4953) || 挂载数据: qa: 10 ) +│ │ ├── HTTP客户端 --> ( 难度等级: [0.4953, 0.4954) || 挂载数据: 无 ) +│ │ └── 发送E-mail --> ( 难度等级: [0.4954, 0.4955) || 挂载数据: qa: 5 ) +│ ├── 数据库编程 --> ( 难度等级: [0.4955, 0.4961) || 挂载数据: 无 ) +│ │ ├── JDBC的设计 --> ( 难度等级: [0.4955, 0.4956) || 挂载数据: 无 ) +│ │ │ ├── JDBC驱动程序类型 --> ( 难度等级: [0.4955, 0.4956) || 挂载数据: 无 ) +│ │ │ └── JDBC的典型用法 --> ( 难度等级: [0.4956, 0.4956) || 挂载数据: 无 ) +│ │ ├── 结构化查询语言 --> ( 难度等级: [0.4956, 0.4956) || 挂载数据: 无 ) +│ │ ├── JDBC配置 --> ( 难度等级: [0.4956, 0.4957) || 挂载数据: 无 ) +│ │ │ ├── 数据库URL --> ( 难度等级: [0.4956, 0.4957) || 挂载数据: 无 ) +│ │ │ ├── 驱动程序JAR文件 --> ( 难度等级: [0.4957, 0.4957) || 挂载数据: 无 ) +│ │ │ ├── 启动数据库 --> ( 难度等级: [0.4957, 0.4957) || 挂载数据: 无 ) +│ │ │ ├── 注册驱动器类 --> ( 难度等级: [0.4957, 0.4957) || 挂载数据: 无 ) +│ │ │ └── 连接到数据库 --> ( 难度等级: [0.4957, 0.4957) || 挂载数据: qa: 9 ) +│ │ ├── 使用JDBC语句 --> ( 难度等级: [0.4957, 0.4958) || 挂载数据: 无 ) +│ │ │ ├── 执行SQL语句 --> ( 难度等级: [0.4957, 0.4957) || 挂载数据: qa: 10 ) +│ │ │ ├── 管理连接、语句和结果集 --> ( 难度等级: [0.4957, 0.4957) || 挂载数据: qa: 1 ) +│ │ │ ├── 分析SQL异常 --> ( 难度等级: [0.4957, 0.4957) || 挂载数据: qa: 1 ) +│ │ │ └── 组装数据库 --> ( 难度等级: [0.4957, 0.4958) || 挂载数据: 无 ) +│ │ ├── 执行查询操作 --> ( 难度等级: [0.4958, 0.4958) || 挂载数据: qa: 1 ) +│ │ │ ├── 预备语句 --> ( 难度等级: [0.4958, 0.4958) || 挂载数据: 无 ) +│ │ │ ├── 读写LOB --> ( 难度等级: [0.4958, 0.4958) || 挂载数据: 无 ) +│ │ │ ├── SQL转义 --> ( 难度等级: [0.4958, 0.4958) || 挂载数据: qa: 5 ) +│ │ │ ├── 多结果集 --> ( 难度等级: [0.4958, 0.4958) || 挂载数据: 无 ) +│ │ │ └── 获取自动生成的键 --> ( 难度等级: [0.4958, 0.4958) || 挂载数据: qa: 5 ) +│ │ ├── 可滚动和可更新的结果集 --> ( 难度等级: [0.4958, 0.4959) || 挂载数据: 无 ) +│ │ │ ├── 可滚动的结果集 --> ( 难度等级: [0.4958, 0.4958) || 挂载数据: 无 ) +│ │ │ └── 可更新的结果集 --> ( 难度等级: [0.4958, 0.4959) || 挂载数据: qa: 9 ) +│ │ ├── 行集 --> ( 难度等级: [0.4959, 0.4959) || 挂载数据: 无 ) +│ │ │ ├── 构建行集 --> ( 难度等级: [0.4959, 0.4959) || 挂载数据: 无 ) +│ │ │ └── 被缓存的行集 --> ( 难度等级: [0.4959, 0.4959) || 挂载数据: 无 ) +│ │ ├── 元数据 --> ( 难度等级: [0.4959, 0.496) || 挂载数据: qa: 3 ) +│ │ ├── 事务 --> ( 难度等级: [0.496, 0.496) || 挂载数据: 无 ) +│ │ │ ├── 用JDBC对事务编程 --> ( 难度等级: [0.496, 0.496) || 挂载数据: qa: 3 ) +│ │ │ ├── 批量更新 --> ( 难度等级: [0.496, 0.496) || 挂载数据: qa: 1 ) +│ │ │ └── 高级SQL类型 --> ( 难度等级: [0.496, 0.496) || 挂载数据: qa: 2 ) +│ │ └── Web与企业应用中的连接管理 --> ( 难度等级: [0.496, 0.4961) || 挂载数据: 无 ) +│ ├── 国际化 --> ( 难度等级: [0.4961, 0.4967) || 挂载数据: 无 ) +│ │ ├── locale --> ( 难度等级: [0.4961, 0.4962) || 挂载数据: 无 ) +│ │ │ ├── 指定locale --> ( 难度等级: [0.4961, 0.4961) || 挂载数据: 无 ) +│ │ │ ├── 默认locale --> ( 难度等级: [0.4961, 0.4962) || 挂载数据: 无 ) +│ │ │ └── 显示名字 --> ( 难度等级: [0.4962, 0.4962) || 挂载数据: qa: 1 ) +│ │ ├── 数字格式 --> ( 难度等级: [0.4962, 0.4963) || 挂载数据: 无 ) +│ │ │ ├── 格式化数字值 --> ( 难度等级: [0.4962, 0.4963) || 挂载数据: qa: 1 ) +│ │ │ └── 货币 --> ( 难度等级: [0.4963, 0.4963) || 挂载数据: 无 ) +│ │ ├── 排序和规范化 --> ( 难度等级: [0.4963, 0.4964) || 挂载数据: 无 ) +│ │ ├── 消息格式化 --> ( 难度等级: [0.4964, 0.4965) || 挂载数据: 无 ) +│ │ │ └── 选择格式 --> ( 难度等级: [0.4964, 0.4965) || 挂载数据: qa: 2 ) +│ │ └── 资源包 --> ( 难度等级: [0.4965, 0.4967) || 挂载数据: 无 ) +│ │ ├── 定位资源包 --> ( 难度等级: [0.4965, 0.4966) || 挂载数据: qa: 1 ) +│ │ ├── 属性文件 --> ( 难度等级: [0.4966, 0.4966) || 挂载数据: 无 ) +│ │ └── 包类 --> ( 难度等级: [0.4966, 0.4967) || 挂载数据: 无 ) +│ ├── Java平台模块系统 --> ( 难度等级: [0.4967, 0.4972) || 挂载数据: 无 ) +│ │ ├── 模块的概念 --> ( 难度等级: [0.4967, 0.4967) || 挂载数据: 无 ) +│ │ ├── 对模块命名 --> ( 难度等级: [0.4967, 0.4967) || 挂载数据: 无 ) +│ │ ├── 模块化的“Hello, World!”程序 --> ( 难度等级: [0.4967, 0.4968) || 挂载数据: qa: 3 ) +│ │ ├── 对模块的需求 --> ( 难度等级: [0.4968, 0.4968) || 挂载数据: qa: 2 ) +│ │ ├── 导出包 --> ( 难度等级: [0.4968, 0.4969) || 挂载数据: qa: 3 ) +│ │ ├── 模块化的JAR --> ( 难度等级: [0.4969, 0.4969) || 挂载数据: qa: 1 ) +│ │ ├── 不具名模块 --> ( 难度等级: [0.4969, 0.497) || 挂载数据: 无 ) +│ │ ├── 用于迁移的命令行标识 --> ( 难度等级: [0.497, 0.497) || 挂载数据: 无 ) +│ │ ├── 传递的需求和静态的需求 --> ( 难度等级: [0.497, 0.4971) || 挂载数据: 无 ) +│ │ ├── 限定导出和开放 --> ( 难度等级: [0.4971, 0.4971) || 挂载数据: 无 ) +│ │ ├── 服务加载 --> ( 难度等级: [0.4971, 0.4972) || 挂载数据: 无 ) +│ │ └── 操作模块的工具 --> ( 难度等级: [0.4972, 0.4972) || 挂载数据: 无 ) +│ ├── 安全 --> ( 难度等级: [0.4972, 0.4978) || 挂载数据: 无 ) +│ │ ├── 类加载器 --> ( 难度等级: [0.4972, 0.4973) || 挂载数据: 无 ) +│ │ │ ├── 类加载过程 --> ( 难度等级: [0.4972, 0.4972) || 挂载数据: qa: 10 ) +│ │ │ ├── 类加载器的层次结构 --> ( 难度等级: [0.4972, 0.4973) || 挂载数据: qa: 1 ) +│ │ │ ├── 将类加载器用作命名空间 --> ( 难度等级: [0.4973, 0.4973) || 挂载数据: 无 ) +│ │ │ ├── 编写你自己的类加载器 --> ( 难度等级: [0.4973, 0.4973) || 挂载数据: 无 ) +│ │ │ └── 字节码校验 --> ( 难度等级: [0.4973, 0.4973) || 挂载数据: qa: 1 ) +│ │ ├── 安全管理器与访问权限 --> ( 难度等级: [0.4973, 0.4974) || 挂载数据: 无 ) +│ │ │ ├── 权限检查 --> ( 难度等级: [0.4973, 0.4973) || 挂载数据: 无 ) +│ │ │ ├── Java平台安全性 --> ( 难度等级: [0.4973, 0.4974) || 挂载数据: qa: 1 ) +│ │ │ ├── 安全策略文件 --> ( 难度等级: [0.4974, 0.4974) || 挂载数据: 无 ) +│ │ │ ├── 定制权限 --> ( 难度等级: [0.4974, 0.4974) || 挂载数据: qa: 1 ) +│ │ │ └── 实现权限类 --> ( 难度等级: [0.4974, 0.4974) || 挂载数据: 无 ) +│ │ ├── 用户认证 --> ( 难度等级: [0.4974, 0.4975) || 挂载数据: qa: 1 ) +│ │ │ ├── JAAS框架 --> ( 难度等级: [0.4974, 0.4975) || 挂载数据: 无 ) +│ │ │ └── JAAS登录模块 --> ( 难度等级: [0.4975, 0.4975) || 挂载数据: qa: 5 ) +│ │ ├── 数字签名 --> ( 难度等级: [0.4975, 0.4977) || 挂载数据: qa: 1 ) +│ │ │ ├── 消息摘要 --> ( 难度等级: [0.4975, 0.4976) || 挂载数据: qa: 1 ) +│ │ │ ├── 消息签名 --> ( 难度等级: [0.4976, 0.4976) || 挂载数据: 无 ) +│ │ │ ├── 校验签名 --> ( 难度等级: [0.4976, 0.4976) || 挂载数据: qa: 4 ) +│ │ │ ├── 证书签名 --> ( 难度等级: [0.4976, 0.4976) || 挂载数据: qa: 1 ) +│ │ │ ├── 证书请求 --> ( 难度等级: [0.4976, 0.4976) || 挂载数据: qa: 1 ) +│ │ │ └── 代码签名 --> ( 难度等级: [0.4976, 0.4977) || 挂载数据: qa: 2 ) +│ │ └── 加密 --> ( 难度等级: [0.4977, 0.4978) || 挂载数据: qa: 8 ) +│ │ ├── 对称密码 --> ( 难度等级: [0.4977, 0.4977) || 挂载数据: 无 ) +│ │ ├── 密钥生成 --> ( 难度等级: [0.4977, 0.4977) || 挂载数据: qa: 9 ) +│ │ ├── 密码流 --> ( 难度等级: [0.4977, 0.4977) || 挂载数据: 无 ) +│ │ └── 公共密钥密码 --> ( 难度等级: [0.4977, 0.4978) || 挂载数据: 无 ) +│ ├── 高级Swing和图形化编程 --> ( 难度等级: [0.4978, 0.4983) || 挂载数据: 无 ) +│ │ ├── 表格 --> ( 难度等级: [0.4978, 0.4979) || 挂载数据: 无 ) +│ │ │ ├── 一个简单表格 --> ( 难度等级: [0.4978, 0.4978) || 挂载数据: qa: 10 ) +│ │ │ ├── 表格模型 --> ( 难度等级: [0.4978, 0.4978) || 挂载数据: 无 ) +│ │ │ ├── 对行和列的操作 --> ( 难度等级: [0.4978, 0.4979) || 挂载数据: qa: 1 ) +│ │ │ └── 单元格的绘制和编辑 --> ( 难度等级: [0.4979, 0.4979) || 挂载数据: qa: 1 ) +│ │ ├── 树 --> ( 难度等级: [0.4979, 0.498) || 挂载数据: 无 ) +│ │ │ ├── 简单的树 --> ( 难度等级: [0.4979, 0.4979) || 挂载数据: qa: 2 ) +│ │ │ ├── 节点枚举 --> ( 难度等级: [0.4979, 0.4979) || 挂载数据: 无 ) +│ │ │ ├── 绘制节点 --> ( 难度等级: [0.4979, 0.4979) || 挂载数据: 无 ) +│ │ │ ├── 监听树事件 --> ( 难度等级: [0.4979, 0.498) || 挂载数据: 无 ) +│ │ │ └── 定制树模型 --> ( 难度等级: [0.498, 0.498) || 挂载数据: 无 ) +│ │ ├── 高级AWT --> ( 难度等级: [0.498, 0.4981) || 挂载数据: 无 ) +│ │ │ ├── 绘图操作流程 --> ( 难度等级: [0.498, 0.498) || 挂载数据: 无 ) +│ │ │ ├── 形状 --> ( 难度等级: [0.498, 0.498) || 挂载数据: 无 ) +│ │ │ ├── 区域 --> ( 难度等级: [0.498, 0.498) || 挂载数据: 无 ) +│ │ │ ├── 笔画 --> ( 难度等级: [0.498, 0.498) || 挂载数据: 无 ) +│ │ │ ├── 着色 --> ( 难度等级: [0.498, 0.4981) || 挂载数据: 无 ) +│ │ │ ├── 坐标变换 --> ( 难度等级: [0.4981, 0.4981) || 挂载数据: qa: 1 ) +│ │ │ ├── 剪切 --> ( 难度等级: [0.4981, 0.4981) || 挂载数据: 无 ) +│ │ │ └── 透明与组合 --> ( 难度等级: [0.4981, 0.4981) || 挂载数据: qa: 2 ) +│ │ ├── 像素图 --> ( 难度等级: [0.4981, 0.4982) || 挂载数据: 无 ) +│ │ │ ├── 图像的读取器和写入器 --> ( 难度等级: [0.4981, 0.4982) || 挂载数据: 无 ) +│ │ │ └── 图像处理 --> ( 难度等级: [0.4982, 0.4982) || 挂载数据: 无 ) +│ │ └── 打印 --> ( 难度等级: [0.4982, 0.4983) || 挂载数据: qa: 1 ) +│ │ ├── 图形打印 --> ( 难度等级: [0.4982, 0.4982) || 挂载数据: qa: 10 ) +│ │ ├── 打印多页文件 --> ( 难度等级: [0.4982, 0.4983) || 挂载数据: qa: 1 ) +│ │ ├── 打印服务程序 --> ( 难度等级: [0.4983, 0.4983) || 挂载数据: 无 ) +│ │ ├── 流打印服务程序 --> ( 难度等级: [0.4983, 0.4983) || 挂载数据: 无 ) +│ │ └── 打印属性 --> ( 难度等级: [0.4983, 0.4983) || 挂载数据: qa: 1 ) +│ ├── Maven基础 --> ( 难度等级: [0.4983, 0.4989) || 挂载数据: 无 ) +│ │ ├── Maven介绍 --> ( 难度等级: [0.4983, 0.4984) || 挂载数据: 无 ) +│ │ ├── 依赖管理 --> ( 难度等级: [0.4984, 0.4985) || 挂载数据: 无 ) +│ │ ├── 构建流程 --> ( 难度等级: [0.4985, 0.4986) || 挂载数据: 无 ) +│ │ ├── 使用插件 --> ( 难度等级: [0.4986, 0.4986) || 挂载数据: 无 ) +│ │ ├── 模块管理 --> ( 难度等级: [0.4986, 0.4987) || 挂载数据: 无 ) +│ │ ├── 使用mvnw --> ( 难度等级: [0.4987, 0.4988) || 挂载数据: 无 ) +│ │ └── 发布Artifact --> ( 难度等级: [0.4988, 0.4989) || 挂载数据: 无 ) +│ ├── 网络编程 --> ( 难度等级: [0.4989, 0.4994) || 挂载数据: 无 ) +│ │ ├── 网络编程基础 --> ( 难度等级: [0.4989, 0.499) || 挂载数据: 无 ) +│ │ ├── TCP编程 --> ( 难度等级: [0.499, 0.499) || 挂载数据: 无 ) +│ │ ├── UDP编程 --> ( 难度等级: [0.499, 0.4991) || 挂载数据: 无 ) +│ │ ├── 发送Email --> ( 难度等级: [0.4991, 0.4992) || 挂载数据: qa: 2 ) +│ │ ├── 接收Email --> ( 难度等级: [0.4992, 0.4993) || 挂载数据: 无 ) +│ │ ├── HTTP编程 --> ( 难度等级: [0.4993, 0.4994) || 挂载数据: qa: 2 ) +│ │ └── RMI远程调用 --> ( 难度等级: [0.4994, 0.4994) || 挂载数据: qa: 4 ) +│ └── JDBC编程 --> ( 难度等级: [0.4994, 0.5) || 挂载数据: 无 ) +│ ├── JDBC简介 --> ( 难度等级: [0.4994, 0.4995) || 挂载数据: 无 ) +│ ├── JDBC查询 --> ( 难度等级: [0.4995, 0.4996) || 挂载数据: 无 ) +│ ├── JDBC更新 --> ( 难度等级: [0.4996, 0.4997) || 挂载数据: 无 ) +│ ├── JDBC事务 --> ( 难度等级: [0.4997, 0.4998) || 挂载数据: 无 ) +│ ├── JDBC Batch --> ( 难度等级: [0.4998, 0.4999) || 挂载数据: 无 ) +│ └── JDBC连接池 --> ( 难度等级: [0.4999, 0.5) || 挂载数据: qa: 3 ) +├── java高阶 --> ( 难度等级: [0.5, 0.75) || 挂载数据: 无 ) +│ ├── Swing简介 --> ( 难度等级: [0.5, 0.5278) || 挂载数据: 无 ) +│ │ ├── Swing的起源 --> ( 难度等级: [0.5, 0.5028) || 挂载数据: 无 ) +│ │ ├── Swing以AWT为基础 --> ( 难度等级: [0.5028, 0.5056) || 挂载数据: 无 ) +│ │ ├── 两个关键的Swing特性 --> ( 难度等级: [0.5056, 0.5083) || 挂载数据: 无 ) +│ │ │ ├── Swing组件是轻量级的 --> ( 难度等级: [0.5056, 0.5069) || 挂载数据: 无 ) +│ │ │ └── Swing支持可插入外观 --> ( 难度等级: [0.5069, 0.5083) || 挂载数据: 无 ) +│ │ ├── MVC连接 --> ( 难度等级: [0.5083, 0.5111) || 挂载数据: 无 ) +│ │ ├── 组件与容器 --> ( 难度等级: [0.5111, 0.5139) || 挂载数据: 无 ) +│ │ │ ├── 组件 --> ( 难度等级: [0.5111, 0.512) || 挂载数据: 无 ) +│ │ │ ├── 容器 --> ( 难度等级: [0.512, 0.513) || 挂载数据: qa: 4 ) +│ │ │ └── 顶级容器窗格 --> ( 难度等级: [0.513, 0.5139) || 挂载数据: 无 ) +│ │ ├── Swing包 --> ( 难度等级: [0.5139, 0.5167) || 挂载数据: 无 ) +│ │ ├── 一个简单的Swing应用程序 --> ( 难度等级: [0.5167, 0.5194) || 挂载数据: 无 ) +│ │ ├── 事件处理 --> ( 难度等级: [0.5194, 0.5222) || 挂载数据: 无 ) +│ │ ├── 创建Swing applet --> ( 难度等级: [0.5222, 0.525) || 挂载数据: 无 ) +│ │ └── 在Swing中绘图 --> ( 难度等级: [0.525, 0.5278) || 挂载数据: 无 ) +│ │ ├── 绘图的基础知识 --> ( 难度等级: [0.525, 0.5259) || 挂载数据: 无 ) +│ │ ├── 计算可绘制区域 --> ( 难度等级: [0.5259, 0.5269) || 挂载数据: 无 ) +│ │ └── 一个绘图示例 --> ( 难度等级: [0.5269, 0.5278) || 挂载数据: 无 ) +│ ├── 探究Swing --> ( 难度等级: [0.5278, 0.5556) || 挂载数据: 无 ) +│ │ ├── JLabel与ImageIcon --> ( 难度等级: [0.5278, 0.5309) || 挂载数据: qa: 2 ) +│ │ ├── JTextField --> ( 难度等级: [0.5309, 0.534) || 挂载数据: 无 ) +│ │ ├── Swing按钮 --> ( 难度等级: [0.534, 0.537) || 挂载数据: 无 ) +│ │ │ ├── JButton --> ( 难度等级: [0.534, 0.5347) || 挂载数据: qa: 3 ) +│ │ │ ├── JToggleButton --> ( 难度等级: [0.5347, 0.5355) || 挂载数据: 无 ) +│ │ │ ├── 复选框 --> ( 难度等级: [0.5355, 0.5363) || 挂载数据: 无 ) +│ │ │ └── 单选按钮 --> ( 难度等级: [0.5363, 0.537) || 挂载数据: qa: 10 ) +│ │ ├── JTabbedPane --> ( 难度等级: [0.537, 0.5401) || 挂载数据: 无 ) +│ │ ├── JScrollPane --> ( 难度等级: [0.5401, 0.5432) || 挂载数据: 无 ) +│ │ ├── JList --> ( 难度等级: [0.5432, 0.5463) || 挂载数据: 无 ) +│ │ ├── JComboBox --> ( 难度等级: [0.5463, 0.5494) || 挂载数据: qa: 1 ) +│ │ ├── 树 --> ( 难度等级: [0.5494, 0.5525) || 挂载数据: 无 ) +│ │ └── JTable --> ( 难度等级: [0.5525, 0.5556) || 挂载数据: qa: 6 ) +│ ├── Swing菜单简介 --> ( 难度等级: [0.5556, 0.5833) || 挂载数据: 无 ) +│ │ ├── 菜单的基础知识 --> ( 难度等级: [0.5556, 0.5581) || 挂载数据: 无 ) +│ │ ├── JMenuBar、JMenu和JMenuItem概述 --> ( 难度等级: [0.5581, 0.5606) || 挂载数据: 无 ) +│ │ │ ├── JMenuBar --> ( 难度等级: [0.5581, 0.5589) || 挂载数据: 无 ) +│ │ │ ├── JMenu --> ( 难度等级: [0.5589, 0.5598) || 挂载数据: 无 ) +│ │ │ └── JMenuItem --> ( 难度等级: [0.5598, 0.5606) || 挂载数据: 无 ) +│ │ ├── 创建主菜单 --> ( 难度等级: [0.5606, 0.5631) || 挂载数据: 无 ) +│ │ ├── 向菜单项添加助记符和加速键 --> ( 难度等级: [0.5631, 0.5657) || 挂载数据: 无 ) +│ │ ├── 向菜单项添加图片和工具提示 --> ( 难度等级: [0.5657, 0.5682) || 挂载数据: 无 ) +│ │ ├── 使用JRadioButtonMenuItem和JCheckBoxMenuItem --> ( 难度等级: [0.5682, 0.5707) || 挂载数据: 无 ) +│ │ ├── 创建弹出菜单 --> ( 难度等级: [0.5707, 0.5732) || 挂载数据: 无 ) +│ │ ├── 创建工具栏 --> ( 难度等级: [0.5732, 0.5758) || 挂载数据: 无 ) +│ │ ├── 使用动作 --> ( 难度等级: [0.5758, 0.5783) || 挂载数据: 无 ) +│ │ ├── 完整演示MenuDemo程序 --> ( 难度等级: [0.5783, 0.5808) || 挂载数据: 无 ) +│ │ └── 继续探究Swing --> ( 难度等级: [0.5808, 0.5833) || 挂载数据: 无 ) +│ ├── JavaFX GUI编程简介 --> ( 难度等级: [0.5833, 0.6111) || 挂载数据: 无 ) +│ │ ├── JavaFX的基础概念 --> ( 难度等级: [0.5833, 0.5873) || 挂载数据: 无 ) +│ │ │ ├── JavaFX包 --> ( 难度等级: [0.5833, 0.584) || 挂载数据: qa: 10 ) +│ │ │ ├── Stage和Scene类 --> ( 难度等级: [0.584, 0.5847) || 挂载数据: 无 ) +│ │ │ ├── 节点和场景图 --> ( 难度等级: [0.5847, 0.5853) || 挂载数据: 无 ) +│ │ │ ├── 布局 --> ( 难度等级: [0.5853, 0.586) || 挂载数据: 无 ) +│ │ │ ├── Application类和生命周期方法 --> ( 难度等级: [0.586, 0.5866) || 挂载数据: 无 ) +│ │ │ └── 启动JavaFX应用程序 --> ( 难度等级: [0.5866, 0.5873) || 挂载数据: 无 ) +│ │ ├── JavaFX应用程序的骨架 --> ( 难度等级: [0.5873, 0.5913) || 挂载数据: 无 ) +│ │ ├── 编译和运行JavaFX程序 --> ( 难度等级: [0.5913, 0.5952) || 挂载数据: qa: 1 ) +│ │ ├── 应用程序线程 --> ( 难度等级: [0.5952, 0.5992) || 挂载数据: 无 ) +│ │ ├── 一个简单的JavaFX控件:Label --> ( 难度等级: [0.5992, 0.6032) || 挂载数据: 无 ) +│ │ ├── 使用按钮和事件 --> ( 难度等级: [0.6032, 0.6071) || 挂载数据: 无 ) +│ │ │ ├── 事件的基础知识 --> ( 难度等级: [0.6032, 0.6045) || 挂载数据: qa: 2 ) +│ │ │ ├── 按钮控件简介 --> ( 难度等级: [0.6045, 0.6058) || 挂载数据: qa: 1 ) +│ │ │ └── 演示事件处理和按钮 --> ( 难度等级: [0.6058, 0.6071) || 挂载数据: 无 ) +│ │ └── 直接在画布上绘制 --> ( 难度等级: [0.6071, 0.6111) || 挂载数据: 无 ) +│ ├── 探究JavaFX控件 --> ( 难度等级: [0.6111, 0.6389) || 挂载数据: 无 ) +│ │ ├── 使用Image和ImageView --> ( 难度等级: [0.6111, 0.6134) || 挂载数据: qa: 2 ) +│ │ │ ├── 向标签添加图片 --> ( 难度等级: [0.6111, 0.6123) || 挂载数据: qa: 2 ) +│ │ │ └── 在按钮中使用图片 --> ( 难度等级: [0.6123, 0.6134) || 挂载数据: qa: 10 ) +│ │ ├── ToggleButton --> ( 难度等级: [0.6134, 0.6157) || 挂载数据: 无 ) +│ │ ├── RadioButton --> ( 难度等级: [0.6157, 0.6181) || 挂载数据: 无 ) +│ │ │ ├── 处理开关组中的变化事件 --> ( 难度等级: [0.6157, 0.6169) || 挂载数据: 无 ) +│ │ │ └── 处理单选按钮的另一种方式 --> ( 难度等级: [0.6169, 0.6181) || 挂载数据: 无 ) +│ │ ├── CheckBox --> ( 难度等级: [0.6181, 0.6204) || 挂载数据: qa: 2 ) +│ │ ├── ListView --> ( 难度等级: [0.6204, 0.6227) || 挂载数据: 无 ) +│ │ │ ├── ListView的滚动条 --> ( 难度等级: [0.6204, 0.6215) || 挂载数据: qa: 5 ) +│ │ │ └── 启用多项选择 --> ( 难度等级: [0.6215, 0.6227) || 挂载数据: 无 ) +│ │ ├── ComboBox --> ( 难度等级: [0.6227, 0.625) || 挂载数据: qa: 2 ) +│ │ ├── TextField --> ( 难度等级: [0.625, 0.6273) || 挂载数据: 无 ) +│ │ ├── ScrollPane --> ( 难度等级: [0.6273, 0.6296) || 挂载数据: 无 ) +│ │ ├── TreeView --> ( 难度等级: [0.6296, 0.6319) || 挂载数据: 无 ) +│ │ ├── 效果和变换简介 --> ( 难度等级: [0.6319, 0.6343) || 挂载数据: 无 ) +│ │ │ ├── 效果 --> ( 难度等级: [0.6319, 0.6327) || 挂载数据: qa: 2 ) +│ │ │ ├── 变换 --> ( 难度等级: [0.6327, 0.6335) || 挂载数据: 无 ) +│ │ │ └── 演示效果和变换 --> ( 难度等级: [0.6335, 0.6343) || 挂载数据: 无 ) +│ │ ├── 添加工具提示 --> ( 难度等级: [0.6343, 0.6366) || 挂载数据: 无 ) +│ │ └── 禁用控件 --> ( 难度等级: [0.6366, 0.6389) || 挂载数据: 无 ) +│ ├── JavaFX菜单简介 --> ( 难度等级: [0.6389, 0.6667) || 挂载数据: 无 ) +│ │ ├── 菜单的基础知识 --> ( 难度等级: [0.6389, 0.6417) || 挂载数据: 无 ) +│ │ ├── MenuBar、Menu和MenuItem概述 --> ( 难度等级: [0.6417, 0.6444) || 挂载数据: 无 ) +│ │ │ ├── MenuBar --> ( 难度等级: [0.6417, 0.6426) || 挂载数据: 无 ) +│ │ │ ├── Menu --> ( 难度等级: [0.6426, 0.6435) || 挂载数据: qa: 2 ) +│ │ │ └── MenuItem --> ( 难度等级: [0.6435, 0.6444) || 挂载数据: 无 ) +│ │ ├── 创建主菜单 --> ( 难度等级: [0.6444, 0.6472) || 挂载数据: 无 ) +│ │ ├── 向菜单项添加助记符和加速键 --> ( 难度等级: [0.6472, 0.65) || 挂载数据: 无 ) +│ │ ├── 向菜单项添加图片 --> ( 难度等级: [0.65, 0.6528) || 挂载数据: 无 ) +│ │ ├── 使用RadioMenuItem和CheckMenuItem --> ( 难度等级: [0.6528, 0.6556) || 挂载数据: 无 ) +│ │ ├── 创建上下文菜单 --> ( 难度等级: [0.6556, 0.6583) || 挂载数据: 无 ) +│ │ ├── 创建工具栏 --> ( 难度等级: [0.6583, 0.6611) || 挂载数据: 无 ) +│ │ ├── 完整的MenuDemo程序 --> ( 难度等级: [0.6611, 0.6639) || 挂载数据: 无 ) +│ │ └── 继续探究JavaFX --> ( 难度等级: [0.6639, 0.6667) || 挂载数据: 无 ) +│ ├── Java Bean --> ( 难度等级: [0.6667, 0.6944) || 挂载数据: 无 ) +│ │ ├── Java Bean是什么 --> ( 难度等级: [0.6667, 0.6701) || 挂载数据: 无 ) +│ │ ├── Java Bean的优势 --> ( 难度等级: [0.6701, 0.6736) || 挂载数据: 无 ) +│ │ ├── 内省 --> ( 难度等级: [0.6736, 0.6771) || 挂载数据: 无 ) +│ │ │ ├── 属性的设计模式 --> ( 难度等级: [0.6736, 0.6745) || 挂载数据: 无 ) +│ │ │ ├── 事件的设计模式 --> ( 难度等级: [0.6745, 0.6753) || 挂载数据: qa: 5 ) +│ │ │ ├── 方法与设计模式 --> ( 难度等级: [0.6753, 0.6762) || 挂载数据: 无 ) +│ │ │ │ ├── 创建型模式 --> ( 难度等级: [0.6753, 0.6756) || 挂载数据: 无 ) +│ │ │ │ │ ├── 工厂方法 --> ( 难度等级: [0.6753, 0.6754) || 挂载数据: qa: 1 ) +│ │ │ │ │ ├── 抽象工厂 --> ( 难度等级: [0.6754, 0.6755) || 挂载数据: 无 ) +│ │ │ │ │ ├── 生成器 --> ( 难度等级: [0.6755, 0.6755) || 挂载数据: 无 ) +│ │ │ │ │ ├── 原型 --> ( 难度等级: [0.6755, 0.6756) || 挂载数据: 无 ) +│ │ │ │ │ └── 单例 --> ( 难度等级: [0.6756, 0.6756) || 挂载数据: qa: 6 ) +│ │ │ │ ├── 结构型模式 --> ( 难度等级: [0.6756, 0.6759) || 挂载数据: 无 ) +│ │ │ │ │ ├── 适配器 --> ( 难度等级: [0.6756, 0.6757) || 挂载数据: 无 ) +│ │ │ │ │ ├── 桥接 --> ( 难度等级: [0.6757, 0.6757) || 挂载数据: 无 ) +│ │ │ │ │ ├── 组合 --> ( 难度等级: [0.6757, 0.6758) || 挂载数据: 无 ) +│ │ │ │ │ ├── 装饰器 --> ( 难度等级: [0.6758, 0.6758) || 挂载数据: 无 ) +│ │ │ │ │ ├── 外观 --> ( 难度等级: [0.6758, 0.6758) || 挂载数据: 无 ) +│ │ │ │ │ ├── 享元 --> ( 难度等级: [0.6758, 0.6759) || 挂载数据: 无 ) +│ │ │ │ │ └── 代理 --> ( 难度等级: [0.6759, 0.6759) || 挂载数据: 无 ) +│ │ │ │ └── 行为型模式 --> ( 难度等级: [0.6759, 0.6762) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 责任链 --> ( 难度等级: [0.6759, 0.676) || 挂载数据: 无 ) +│ │ │ │ ├── 命令 --> ( 难度等级: [0.676, 0.676) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 解释器 --> ( 难度等级: [0.676, 0.676) || 挂载数据: 无 ) +│ │ │ │ ├── 迭代器 --> ( 难度等级: [0.676, 0.676) || 挂载数据: 无 ) +│ │ │ │ ├── 中介 --> ( 难度等级: [0.676, 0.6761) || 挂载数据: 无 ) +│ │ │ │ ├── 备忘录 --> ( 难度等级: [0.6761, 0.6761) || 挂载数据: 无 ) +│ │ │ │ ├── 观察者 --> ( 难度等级: [0.6761, 0.6761) || 挂载数据: 无 ) +│ │ │ │ ├── 状态 --> ( 难度等级: [0.6761, 0.6761) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 策略 --> ( 难度等级: [0.6761, 0.6762) || 挂载数据: 无 ) +│ │ │ │ ├── 模板方法 --> ( 难度等级: [0.6762, 0.6762) || 挂载数据: qa: 1 ) +│ │ │ │ └── 访问者 --> ( 难度等级: [0.6762, 0.6762) || 挂载数据: 无 ) +│ │ │ └── 使用BeanInfo接口 --> ( 难度等级: [0.6762, 0.6771) || 挂载数据: qa: 1 ) +│ │ ├── 绑定属性与约束属性 --> ( 难度等级: [0.6771, 0.6806) || 挂载数据: 无 ) +│ │ ├── 持久性 --> ( 难度等级: [0.6806, 0.684) || 挂载数据: 无 ) +│ │ ├── 定制器 --> ( 难度等级: [0.684, 0.6875) || 挂载数据: 无 ) +│ │ ├── Java Bean API --> ( 难度等级: [0.6875, 0.691) || 挂载数据: 无 ) +│ │ │ ├── Introspector类 --> ( 难度等级: [0.6875, 0.6884) || 挂载数据: 无 ) +│ │ │ ├── PropertyDescriptor类 --> ( 难度等级: [0.6884, 0.6892) || 挂载数据: 无 ) +│ │ │ ├── EventSetDescriptor类 --> ( 难度等级: [0.6892, 0.6901) || 挂载数据: 无 ) +│ │ │ └── MethodDescriptor类 --> ( 难度等级: [0.6901, 0.691) || 挂载数据: 无 ) +│ │ └── 一个Bean示例 --> ( 难度等级: [0.691, 0.6944) || 挂载数据: 无 ) +│ ├── servlet --> ( 难度等级: [0.6944, 0.7222) || 挂载数据: qa: 1 ) +│ │ ├── 背景 --> ( 难度等级: [0.6944, 0.6968) || 挂载数据: qa: 1 ) +│ │ ├── servelet的生命周期 --> ( 难度等级: [0.6968, 0.6991) || 挂载数据: qa: 1 ) +│ │ ├── servlet开发选项 --> ( 难度等级: [0.6991, 0.7014) || 挂载数据: 无 ) +│ │ ├── 使用Tomcat --> ( 难度等级: [0.7014, 0.7037) || 挂载数据: qa: 1 ) +│ │ ├── 一个简单的servlet --> ( 难度等级: [0.7037, 0.706) || 挂载数据: 无 ) +│ │ │ ├── 创建和编译servlet源代码 --> ( 难度等级: [0.7037, 0.7045) || 挂载数据: qa: 10 ) +│ │ │ ├── 启动Tomcat --> ( 难度等级: [0.7045, 0.7052) || 挂载数据: qa: 10 ) +│ │ │ └── 启动Web浏览器并请求servlet --> ( 难度等级: [0.7052, 0.706) || 挂载数据: qa: 8 ) +│ │ ├── Servlet API --> ( 难度等级: [0.706, 0.7083) || 挂载数据: 无 ) +│ │ ├── javax.servlet包 --> ( 难度等级: [0.7083, 0.7106) || 挂载数据: qa: 1 ) +│ │ │ ├── Servlet接口 --> ( 难度等级: [0.7083, 0.7086) || 挂载数据: qa: 1 ) +│ │ │ ├── ServletConfig接口 --> ( 难度等级: [0.7086, 0.7088) || 挂载数据: 无 ) +│ │ │ ├── ServletContext接口 --> ( 难度等级: [0.7088, 0.7091) || 挂载数据: qa: 2 ) +│ │ │ ├── ServletRequest接口 --> ( 难度等级: [0.7091, 0.7094) || 挂载数据: qa: 1 ) +│ │ │ ├── ServletResponse接口 --> ( 难度等级: [0.7094, 0.7096) || 挂载数据: qa: 1 ) +│ │ │ ├── GenericServlet类 --> ( 难度等级: [0.7096, 0.7099) || 挂载数据: qa: 1 ) +│ │ │ ├── ServletInputStream类 --> ( 难度等级: [0.7099, 0.7101) || 挂载数据: 无 ) +│ │ │ ├── ServletOutputStream类 --> ( 难度等级: [0.7101, 0.7104) || 挂载数据: 无 ) +│ │ │ └── servlet异常类 --> ( 难度等级: [0.7104, 0.7106) || 挂载数据: qa: 4 ) +│ │ ├── 读取servlet参数 --> ( 难度等级: [0.7106, 0.713) || 挂载数据: 无 ) +│ │ ├── javax.servlet.http包 --> ( 难度等级: [0.713, 0.7153) || 挂载数据: 无 ) +│ │ │ ├── HttpServletRequest接口 --> ( 难度等级: [0.713, 0.7134) || 挂载数据: qa: 1 ) +│ │ │ ├── HttpServletResponse接口 --> ( 难度等级: [0.7134, 0.7139) || 挂载数据: 无 ) +│ │ │ ├── HttpSession接口 --> ( 难度等级: [0.7139, 0.7144) || 挂载数据: 无 ) +│ │ │ ├── Cookie类 --> ( 难度等级: [0.7144, 0.7148) || 挂载数据: qa: 6 ) +│ │ │ └── HttpServlet类 --> ( 难度等级: [0.7148, 0.7153) || 挂载数据: qa: 2 ) +│ │ ├── 处理HTTP请求和响应 --> ( 难度等级: [0.7153, 0.7176) || 挂载数据: 无 ) +│ │ │ ├── 处理HTTP GET请求 --> ( 难度等级: [0.7153, 0.7164) || 挂载数据: qa: 10 ) +│ │ │ └── 处理HTTP POST请求 --> ( 难度等级: [0.7164, 0.7176) || 挂载数据: qa: 10 ) +│ │ ├── 使用cookie --> ( 难度等级: [0.7176, 0.7199) || 挂载数据: 无 ) +│ │ └── 会话跟踪 --> ( 难度等级: [0.7199, 0.7222) || 挂载数据: qa: 3 ) +│ └── 其他 --> ( 难度等级: [0.7222, 0.75) || 挂载数据: 无 ) +│ ├── 入门和技术基础 --> ( 难度等级: [0.7222, 0.7233) || 挂载数据: 无 ) +│ │ ├── 认识SSM框架和Redis --> ( 难度等级: [0.7222, 0.7228) || 挂载数据: 无 ) +│ │ │ ├── Spring框架 --> ( 难度等级: [0.7222, 0.7223) || 挂载数据: 无 ) +│ │ │ │ ├── Spring IoC简介 --> ( 难度等级: [0.7222, 0.7222) || 挂载数据: 无 ) +│ │ │ │ └── Spring AOP --> ( 难度等级: [0.7222, 0.7223) || 挂载数据: qa: 1 ) +│ │ │ ├── MyBatis简介 --> ( 难度等级: [0.7223, 0.7223) || 挂载数据: 无 ) +│ │ │ │ ├── Hibernate简介 --> ( 难度等级: [0.7223, 0.7223) || 挂载数据: qa: 9 ) +│ │ │ │ ├── MyBatis --> ( 难度等级: [0.7223, 0.7223) || 挂载数据: qa: 1 ) +│ │ │ │ └── Hibernate和MyBatis的区别 --> ( 难度等级: [0.7223, 0.7223) || 挂载数据: qa: 6 ) +│ │ │ ├── Spring MVC简介 --> ( 难度等级: [0.7223, 0.7224) || 挂载数据: 无 ) +│ │ │ ├── 最流行的NoSQL——Redis --> ( 难度等级: [0.7224, 0.7224) || 挂载数据: 无 ) +│ │ │ ├── SSM+Redis结构框图及概述 --> ( 难度等级: [0.7224, 0.7224) || 挂载数据: qa: 10 ) +│ │ │ ├── Redis概述 --> ( 难度等级: [0.7224, 0.7225) || 挂载数据: 无 ) +│ │ │ │ ├── Redis在Java Web中的应用 --> ( 难度等级: [0.7224, 0.7224) || 挂载数据: 无 ) +│ │ │ │ │ └── 高速读/写场合 --> ( 难度等级: [0.7224, 0.7224) || 挂载数据: 无 ) +│ │ │ │ ├── Redis基本安装和使用 --> ( 难度等级: [0.7224, 0.7225) || 挂载数据: 无 ) +│ │ │ │ │ ├── 在Windows下安装Redis --> ( 难度等级: [0.7224, 0.7225) || 挂载数据: qa: 3 ) +│ │ │ │ │ └── 在Linux下安装Redis --> ( 难度等级: [0.7225, 0.7225) || 挂载数据: qa: 10 ) +│ │ │ │ ├── Redis的Java API --> ( 难度等级: [0.7225, 0.7225) || 挂载数据: 无 ) +│ │ │ │ │ ├── 在Java程序中使用Redis --> ( 难度等级: [0.7225, 0.7225) || 挂载数据: 无 ) +│ │ │ │ │ └── 在Spring中使用Redis --> ( 难度等级: [0.7225, 0.7225) || 挂载数据: qa: 10 ) +│ │ │ │ └── 简介Redis的6种数据类型 --> ( 难度等级: [0.7225, 0.7225) || 挂载数据: 无 ) +│ │ │ ├── Redis数据结构常用命令 --> ( 难度等级: [0.7225, 0.7225) || 挂载数据: 无 ) +│ │ │ │ ├── Redis数据结构——字符串 --> ( 难度等级: [0.7225, 0.7225) || 挂载数据: 无 ) +│ │ │ │ ├── Redis数据结构——哈希 --> ( 难度等级: [0.7225, 0.7225) || 挂载数据: qa: 5 ) +│ │ │ │ ├── Redis数据结构——链表(linked-list) --> ( 难度等级: [0.7225, 0.7225) || 挂载数据: qa: 1 ) +│ │ │ │ ├── Redis数据结构——集合 --> ( 难度等级: [0.7225, 0.7225) || 挂载数据: 无 ) +│ │ │ │ ├── Redis数据结构——有序集合 --> ( 难度等级: [0.7225, 0.7225) || 挂载数据: 无 ) +│ │ │ │ │ ├── Redis基础命令 --> ( 难度等级: [0.7225, 0.7225) || 挂载数据: 无 ) +│ │ │ │ │ ├── spring-data-redis对有序集合的封装 --> ( 难度等级: [0.7225, 0.7225) || 挂载数据: 无 ) +│ │ │ │ │ └── 使用Spring操作有序集合 --> ( 难度等级: [0.7225, 0.7225) || 挂载数据: qa: 1 ) +│ │ │ │ └── 基数——HyperLogLog --> ( 难度等级: [0.7225, 0.7225) || 挂载数据: 无 ) +│ │ │ ├── Redis的一些常用技术 --> ( 难度等级: [0.7225, 0.7226) || 挂载数据: 无 ) +│ │ │ │ ├── Redis的基础事务 --> ( 难度等级: [0.7225, 0.7225) || 挂载数据: 无 ) +│ │ │ │ ├── 探索Redis事务回滚 --> ( 难度等级: [0.7225, 0.7225) || 挂载数据: qa: 2 ) +│ │ │ │ ├── 使用watch命令监控事务 --> ( 难度等级: [0.7225, 0.7225) || 挂载数据: 无 ) +│ │ │ │ ├── 流水线(pipelined) --> ( 难度等级: [0.7225, 0.7225) || 挂载数据: 无 ) +│ │ │ │ ├── 发布订阅 --> ( 难度等级: [0.7225, 0.7226) || 挂载数据: qa: 2 ) +│ │ │ │ ├── 超时命令 --> ( 难度等级: [0.7226, 0.7226) || 挂载数据: 无 ) +│ │ │ │ └── 使用Lua语言 --> ( 难度等级: [0.7226, 0.7226) || 挂载数据: 无 ) +│ │ │ │ ├── 执行输入Lua程序代码 --> ( 难度等级: [0.7226, 0.7226) || 挂载数据: 无 ) +│ │ │ │ └── 执行Lua文件 --> ( 难度等级: [0.7226, 0.7226) || 挂载数据: qa: 3 ) +│ │ │ ├── Redis配置 --> ( 难度等级: [0.7226, 0.7226) || 挂载数据: 无 ) +│ │ │ │ ├── Redis基础配置文件 --> ( 难度等级: [0.7226, 0.7226) || 挂载数据: 无 ) +│ │ │ │ ├── Redis备份(持久化) --> ( 难度等级: [0.7226, 0.7226) || 挂载数据: 无 ) +│ │ │ │ ├── Redis内存回收策略 --> ( 难度等级: [0.7226, 0.7226) || 挂载数据: 无 ) +│ │ │ │ ├── 复制 --> ( 难度等级: [0.7226, 0.7226) || 挂载数据: qa: 2 ) +│ │ │ │ │ ├── 主从同步基础概念 --> ( 难度等级: [0.7226, 0.7226) || 挂载数据: 无 ) +│ │ │ │ │ ├── Redis主从同步配置 --> ( 难度等级: [0.7226, 0.7226) || 挂载数据: 无 ) +│ │ │ │ │ └── Redis主从同步的过程 --> ( 难度等级: [0.7226, 0.7226) || 挂载数据: 无 ) +│ │ │ │ └── 哨兵(Sentinel)模式 --> ( 难度等级: [0.7226, 0.7226) || 挂载数据: 无 ) +│ │ │ │ ├── 哨兵模式概述 --> ( 难度等级: [0.7226, 0.7226) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 搭建哨兵模式 --> ( 难度等级: [0.7226, 0.7226) || 挂载数据: 无 ) +│ │ │ │ ├── 在Java中使用哨兵模式 --> ( 难度等级: [0.7226, 0.7226) || 挂载数据: 无 ) +│ │ │ │ └── 哨兵模式的其他配置项 --> ( 难度等级: [0.7226, 0.7226) || 挂载数据: 无 ) +│ │ │ ├── 使用redis-cli --> ( 难度等级: [0.7226, 0.7226) || 挂载数据: 无 ) +│ │ │ │ ├── 安全设置 --> ( 难度等级: [0.7226, 0.7226) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 基本操作 --> ( 难度等级: [0.7226, 0.7226) || 挂载数据: 无 ) +│ │ │ │ ├── keys --> ( 难度等级: [0.7226, 0.7226) || 挂载数据: 无 ) +│ │ │ │ ├── Redis List --> ( 难度等级: [0.7226, 0.7226) || 挂载数据: 无 ) +│ │ │ │ ├── Redis Hash --> ( 难度等级: [0.7226, 0.7226) || 挂载数据: qa: 2 ) +│ │ │ │ ├── Set --> ( 难度等级: [0.7226, 0.7226) || 挂载数据: 无 ) +│ │ │ │ └── Pub/Sub --> ( 难度等级: [0.7226, 0.7226) || 挂载数据: 无 ) +│ │ │ ├── Spring Boot集成Redis --> ( 难度等级: [0.7226, 0.7227) || 挂载数据: 无 ) +│ │ │ ├── 使用StringRedisTemplate --> ( 难度等级: [0.7227, 0.7227) || 挂载数据: qa: 1 ) +│ │ │ │ ├── opsFor --> ( 难度等级: [0.7227, 0.7227) || 挂载数据: 无 ) +│ │ │ │ ├── 绑定Key的操作 --> ( 难度等级: [0.7227, 0.7227) || 挂载数据: 无 ) +│ │ │ │ └── RedisConnection --> ( 难度等级: [0.7227, 0.7227) || 挂载数据: 无 ) +│ │ │ └── 序列化策略 --> ( 难度等级: [0.7227, 0.7228) || 挂载数据: 无 ) +│ │ │ ├── 默认序列化策略 --> ( 难度等级: [0.7227, 0.7228) || 挂载数据: 无 ) +│ │ │ └── 自定义序列化策略 --> ( 难度等级: [0.7228, 0.7228) || 挂载数据: 无 ) +│ │ └── Java设计模式 --> ( 难度等级: [0.7228, 0.7233) || 挂载数据: 无 ) +│ │ ├── Java反射技术 --> ( 难度等级: [0.7228, 0.7229) || 挂载数据: 无 ) +│ │ │ ├── 通过反射构建对象 --> ( 难度等级: [0.7228, 0.7228) || 挂载数据: 无 ) +│ │ │ └── 反射方法 --> ( 难度等级: [0.7228, 0.7229) || 挂载数据: qa: 9 ) +│ │ ├── 动态代理模式和责任链模式 --> ( 难度等级: [0.7229, 0.723) || 挂载数据: 无 ) +│ │ │ ├── JDK动态代理 --> ( 难度等级: [0.7229, 0.7229) || 挂载数据: 无 ) +│ │ │ ├── CGLIB动态代理 --> ( 难度等级: [0.7229, 0.7229) || 挂载数据: qa: 6 ) +│ │ │ ├── 拦截器 --> ( 难度等级: [0.7229, 0.723) || 挂载数据: 无 ) +│ │ │ │ ├── 拦截器的定义 --> ( 难度等级: [0.7229, 0.723) || 挂载数据: qa: 4 ) +│ │ │ │ ├── 拦截器的执行流程 --> ( 难度等级: [0.723, 0.723) || 挂载数据: 无 ) +│ │ │ │ ├── 开发拦截器 --> ( 难度等级: [0.723, 0.723) || 挂载数据: qa: 5 ) +│ │ │ │ └── 多个拦截器执行的顺序 --> ( 难度等级: [0.723, 0.723) || 挂载数据: qa: 5 ) +│ │ │ └── 责任链模式 --> ( 难度等级: [0.723, 0.723) || 挂载数据: qa: 2 ) +│ │ ├── 观察者(Observer)模式 --> ( 难度等级: [0.723, 0.7231) || 挂载数据: 无 ) +│ │ │ └── 概述 --> ( 难度等级: [0.723, 0.7231) || 挂载数据: 无 ) +│ │ ├── 工厂模式和抽象工厂模式 --> ( 难度等级: [0.7231, 0.7232) || 挂载数据: 无 ) +│ │ │ ├── 普通工厂(Simple Factory)模式 --> ( 难度等级: [0.7231, 0.7232) || 挂载数据: 无 ) +│ │ │ └── 抽象工厂(Abstract Factory)模式 --> ( 难度等级: [0.7232, 0.7232) || 挂载数据: qa: 3 ) +│ │ └── 建造者(Builder)模式 --> ( 难度等级: [0.7232, 0.7233) || 挂载数据: qa: 1 ) +│ │ └── 概述 --> ( 难度等级: [0.7232, 0.7233) || 挂载数据: 无 ) +│ ├── 互联网持久框架——MyBatis --> ( 难度等级: [0.7233, 0.7244) || 挂载数据: 无 ) +│ │ ├── 认识MyBatis核心组件 --> ( 难度等级: [0.7233, 0.7235) || 挂载数据: 无 ) +│ │ │ ├── 准备MyBatis环境 --> ( 难度等级: [0.7233, 0.7234) || 挂载数据: qa: 10 ) +│ │ │ ├── MyBatis的核心组件 --> ( 难度等级: [0.7234, 0.7234) || 挂载数据: 无 ) +│ │ │ ├── SqlSessionFactory(工厂接口) --> ( 难度等级: [0.7234, 0.7234) || 挂载数据: 无 ) +│ │ │ │ ├── 使用XML构建SqlSessionFactory --> ( 难度等级: [0.7234, 0.7234) || 挂载数据: 无 ) +│ │ │ │ └── 使用代码创建SqlSessionFactory --> ( 难度等级: [0.7234, 0.7234) || 挂载数据: 无 ) +│ │ │ ├── SqlSession --> ( 难度等级: [0.7234, 0.7235) || 挂载数据: 无 ) +│ │ │ ├── 映射器 --> ( 难度等级: [0.7235, 0.7235) || 挂载数据: 无 ) +│ │ │ │ ├── 用XML实现映射器 --> ( 难度等级: [0.7235, 0.7235) || 挂载数据: 无 ) +│ │ │ │ ├── 注解实现映射器 --> ( 难度等级: [0.7235, 0.7235) || 挂载数据: 无 ) +│ │ │ │ ├── SqlSession发送SQL --> ( 难度等级: [0.7235, 0.7235) || 挂载数据: 无 ) +│ │ │ │ ├── 用Mapper接口发送SQL --> ( 难度等级: [0.7235, 0.7235) || 挂载数据: qa: 3 ) +│ │ │ │ └── 对比两种发送SQL方式 --> ( 难度等级: [0.7235, 0.7235) || 挂载数据: 无 ) +│ │ │ └── 生命周期 --> ( 难度等级: [0.7235, 0.7235) || 挂载数据: 无 ) +│ │ │ ├── SqlSessionFactoryBuilder --> ( 难度等级: [0.7235, 0.7235) || 挂载数据: 无 ) +│ │ │ ├── SqlSessionFactory --> ( 难度等级: [0.7235, 0.7235) || 挂载数据: 无 ) +│ │ │ ├── SqlSession --> ( 难度等级: [0.7235, 0.7235) || 挂载数据: 无 ) +│ │ │ └── Mapper --> ( 难度等级: [0.7235, 0.7235) || 挂载数据: qa: 4 ) +│ │ ├── MyBatis配置 --> ( 难度等级: [0.7235, 0.7237) || 挂载数据: 无 ) +│ │ │ ├── properties属性 --> ( 难度等级: [0.7235, 0.7235) || 挂载数据: 无 ) +│ │ │ │ ├── property子元素 --> ( 难度等级: [0.7235, 0.7235) || 挂载数据: 无 ) +│ │ │ │ ├── 使用properties文件 --> ( 难度等级: [0.7235, 0.7235) || 挂载数据: qa: 10 ) +│ │ │ │ └── 使用程序传递方式传递参数 --> ( 难度等级: [0.7235, 0.7235) || 挂载数据: qa: 2 ) +│ │ │ ├── settings设置 --> ( 难度等级: [0.7235, 0.7236) || 挂载数据: 无 ) +│ │ │ ├── typeAliases别名 --> ( 难度等级: [0.7236, 0.7236) || 挂载数据: 无 ) +│ │ │ │ ├── 系统定义别名 --> ( 难度等级: [0.7236, 0.7236) || 挂载数据: 无 ) +│ │ │ │ └── 自定义别名 --> ( 难度等级: [0.7236, 0.7236) || 挂载数据: qa: 1 ) +│ │ │ ├── typeHandler类型转换器 --> ( 难度等级: [0.7236, 0.7236) || 挂载数据: 无 ) +│ │ │ │ ├── 系统定义的typeHandler --> ( 难度等级: [0.7236, 0.7236) || 挂载数据: 无 ) +│ │ │ │ ├── 自定义typeHandler --> ( 难度等级: [0.7236, 0.7236) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 枚举typeHandler --> ( 难度等级: [0.7236, 0.7236) || 挂载数据: 无 ) +│ │ │ │ └── 文件操作 --> ( 难度等级: [0.7236, 0.7236) || 挂载数据: 无 ) +│ │ │ ├── ObjectFactory(对象工厂) --> ( 难度等级: [0.7236, 0.7236) || 挂载数据: 无 ) +│ │ │ ├── 插件 --> ( 难度等级: [0.7236, 0.7236) || 挂载数据: 无 ) +│ │ │ ├── environments(运行环境) --> ( 难度等级: [0.7236, 0.7237) || 挂载数据: 无 ) +│ │ │ │ ├── transactionManager(事务管理器) --> ( 难度等级: [0.7236, 0.7237) || 挂载数据: 无 ) +│ │ │ │ └── environment数据源环境 --> ( 难度等级: [0.7237, 0.7237) || 挂载数据: qa: 2 ) +│ │ │ ├── databaseIdProvider数据库厂商标识 --> ( 难度等级: [0.7237, 0.7237) || 挂载数据: 无 ) +│ │ │ │ ├── 使用系统默认的databaseIdProvider --> ( 难度等级: [0.7237, 0.7237) || 挂载数据: 无 ) +│ │ │ │ └── 不使用系统规则 --> ( 难度等级: [0.7237, 0.7237) || 挂载数据: 无 ) +│ │ │ └── 引入映射器的方法 --> ( 难度等级: [0.7237, 0.7237) || 挂载数据: 无 ) +│ │ ├── 映射器 --> ( 难度等级: [0.7237, 0.7239) || 挂载数据: 无 ) +│ │ │ ├── select元素——查询语句 --> ( 难度等级: [0.7237, 0.7237) || 挂载数据: 无 ) +│ │ │ │ ├── 简单的select元素的应用 --> ( 难度等级: [0.7237, 0.7237) || 挂载数据: qa: 10 ) +│ │ │ │ ├── 自动映射和驼峰映射 --> ( 难度等级: [0.7237, 0.7237) || 挂载数据: 无 ) +│ │ │ │ ├── 传递多个参数 --> ( 难度等级: [0.7237, 0.7237) || 挂载数据: 无 ) +│ │ │ │ ├── 使用resultMap映射结果集 --> ( 难度等级: [0.7237, 0.7237) || 挂载数据: 无 ) +│ │ │ │ └── 分页参数RowBounds --> ( 难度等级: [0.7237, 0.7237) || 挂载数据: 无 ) +│ │ │ ├── insert元素——插入语句 --> ( 难度等级: [0.7237, 0.7237) || 挂载数据: 无 ) +│ │ │ │ ├── 简单的insert语句的应用 --> ( 难度等级: [0.7237, 0.7237) || 挂载数据: qa: 7 ) +│ │ │ │ ├── 主键回填 --> ( 难度等级: [0.7237, 0.7237) || 挂载数据: qa: 1 ) +│ │ │ │ └── 自定义主键 --> ( 难度等级: [0.7237, 0.7237) || 挂载数据: 无 ) +│ │ │ ├── update元素和delete元素 --> ( 难度等级: [0.7237, 0.7238) || 挂载数据: qa: 1 ) +│ │ │ ├── sql元素 --> ( 难度等级: [0.7238, 0.7238) || 挂载数据: 无 ) +│ │ │ ├── 参数 --> ( 难度等级: [0.7238, 0.7238) || 挂载数据: 无 ) +│ │ │ │ ├── 存储过程参数支持 --> ( 难度等级: [0.7238, 0.7238) || 挂载数据: qa: 2 ) +│ │ │ │ └── 特殊字符串的替换和处理(#和$) --> ( 难度等级: [0.7238, 0.7238) || 挂载数据: qa: 1 ) +│ │ │ ├── resultMap元素 --> ( 难度等级: [0.7238, 0.7238) || 挂载数据: 无 ) +│ │ │ │ ├── resultMap元素的构成 --> ( 难度等级: [0.7238, 0.7238) || 挂载数据: qa: 9 ) +│ │ │ │ ├── 使用map存储结果集 --> ( 难度等级: [0.7238, 0.7238) || 挂载数据: 无 ) +│ │ │ │ └── 使用POJO存储结果集 --> ( 难度等级: [0.7238, 0.7238) || 挂载数据: 无 ) +│ │ │ ├── 级联 --> ( 难度等级: [0.7238, 0.7238) || 挂载数据: 无 ) +│ │ │ │ ├── MyBatis中的级联 --> ( 难度等级: [0.7238, 0.7238) || 挂载数据: 无 ) +│ │ │ │ ├── 建立POJO --> ( 难度等级: [0.7238, 0.7238) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 配置映射文件 --> ( 难度等级: [0.7238, 0.7238) || 挂载数据: 无 ) +│ │ │ │ ├── 延迟加载 --> ( 难度等级: [0.7238, 0.7238) || 挂载数据: 无 ) +│ │ │ │ ├── 另一种级联 --> ( 难度等级: [0.7238, 0.7238) || 挂载数据: qa: 1 ) +│ │ │ │ └── 多对多级联 --> ( 难度等级: [0.7238, 0.7238) || 挂载数据: 无 ) +│ │ │ ├── 缓存 --> ( 难度等级: [0.7238, 0.7239) || 挂载数据: 无 ) +│ │ │ │ ├── 一级缓存和二级缓存 --> ( 难度等级: [0.7238, 0.7239) || 挂载数据: qa: 4 ) +│ │ │ │ └── 缓存配置项、自定义和引用 --> ( 难度等级: [0.7239, 0.7239) || 挂载数据: 无 ) +│ │ │ └── 存储过程 --> ( 难度等级: [0.7239, 0.7239) || 挂载数据: 无 ) +│ │ │ ├── IN和OUT参数存储过程 --> ( 难度等级: [0.7239, 0.7239) || 挂载数据: qa: 10 ) +│ │ │ └── 游标的使用 --> ( 难度等级: [0.7239, 0.7239) || 挂载数据: 无 ) +│ │ ├── 动态SQL --> ( 难度等级: [0.7239, 0.7241) || 挂载数据: qa: 1 ) +│ │ │ ├── if元素 --> ( 难度等级: [0.7239, 0.7239) || 挂载数据: qa: 1 ) +│ │ │ ├── choose、when、otherwise元素 --> ( 难度等级: [0.7239, 0.724) || 挂载数据: 无 ) +│ │ │ ├── trim、where、set元素 --> ( 难度等级: [0.724, 0.724) || 挂载数据: qa: 4 ) +│ │ │ ├── foreach元素 --> ( 难度等级: [0.724, 0.724) || 挂载数据: 无 ) +│ │ │ ├── 用test的属性判断字符串 --> ( 难度等级: [0.724, 0.724) || 挂载数据: qa: 3 ) +│ │ │ └── bind元素 --> ( 难度等级: [0.724, 0.7241) || 挂载数据: 无 ) +│ │ ├── MyBatis的解析和运行原理 --> ( 难度等级: [0.7241, 0.7243) || 挂载数据: 无 ) +│ │ │ ├── 构建SqlSessionFactory过程 --> ( 难度等级: [0.7241, 0.7242) || 挂载数据: 无 ) +│ │ │ │ ├── 构建Configuration --> ( 难度等级: [0.7241, 0.7241) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 构建映射器的内部组成 --> ( 难度等级: [0.7241, 0.7241) || 挂载数据: 无 ) +│ │ │ │ └── 构建SqlSessionFactory --> ( 难度等级: [0.7241, 0.7242) || 挂载数据: qa: 1 ) +│ │ │ └── SqlSession运行过程 --> ( 难度等级: [0.7242, 0.7243) || 挂载数据: qa: 10 ) +│ │ │ ├── 映射器(Mapper)的动态代理 --> ( 难度等级: [0.7242, 0.7242) || 挂载数据: 无 ) +│ │ │ └── SqlSession下的四大对象 --> ( 难度等级: [0.7242, 0.7243) || 挂载数据: 无 ) +│ │ └── 插件 --> ( 难度等级: [0.7243, 0.7244) || 挂载数据: 无 ) +│ │ ├── 插件接口 --> ( 难度等级: [0.7243, 0.7243) || 挂载数据: 无 ) +│ │ ├── 插件的初始化 --> ( 难度等级: [0.7243, 0.7244) || 挂载数据: qa: 8 ) +│ │ ├── 插件的代理和反射设计 --> ( 难度等级: [0.7244, 0.7244) || 挂载数据: 无 ) +│ │ └── 常用的工具类——MetaObject --> ( 难度等级: [0.7244, 0.7244) || 挂载数据: 无 ) +│ ├── Spring基础 --> ( 难度等级: [0.7244, 0.7256) || 挂载数据: 无 ) +│ │ ├── Spring IoC的概念 --> ( 难度等级: [0.7244, 0.7246) || 挂载数据: 无 ) +│ │ │ ├── Spring的概述 --> ( 难度等级: [0.7244, 0.7245) || 挂载数据: 无 ) +│ │ │ │ └── Spring的简史 --> ( 难度等级: [0.7244, 0.7245) || 挂载数据: qa: 10 ) +│ │ │ ├── Spring IoC概述 --> ( 难度等级: [0.7245, 0.7246) || 挂载数据: 无 ) +│ │ │ │ ├── 主动创建对象 --> ( 难度等级: [0.7245, 0.7245) || 挂载数据: qa: 2 ) +│ │ │ │ ├── 被动创建对象 --> ( 难度等级: [0.7245, 0.7245) || 挂载数据: 无 ) +│ │ │ │ └── Spring IoC阐述 --> ( 难度等级: [0.7245, 0.7246) || 挂载数据: 无 ) +│ │ │ └── Spring IoC容器 --> ( 难度等级: [0.7246, 0.7246) || 挂载数据: 无 ) +│ │ │ ├── Spring IoC容器的设计 --> ( 难度等级: [0.7246, 0.7246) || 挂载数据: 无 ) +│ │ │ ├── Spring IoC容器的初始化和依赖注入 --> ( 难度等级: [0.7246, 0.7246) || 挂载数据: 无 ) +│ │ │ └── Spring Bean的生命周期 --> ( 难度等级: [0.7246, 0.7246) || 挂载数据: 无 ) +│ │ ├── 装配Spring Bean --> ( 难度等级: [0.7246, 0.7248) || 挂载数据: 无 ) +│ │ │ ├── 依赖注入的3种方式 --> ( 难度等级: [0.7246, 0.7246) || 挂载数据: 无 ) +│ │ │ │ ├── 构造器注入 --> ( 难度等级: [0.7246, 0.7246) || 挂载数据: 无 ) +│ │ │ │ ├── 使用setter注入 --> ( 难度等级: [0.7246, 0.7246) || 挂载数据: qa: 3 ) +│ │ │ │ └── 接口注入 --> ( 难度等级: [0.7246, 0.7246) || 挂载数据: qa: 1 ) +│ │ │ ├── 装配Bean概述 --> ( 难度等级: [0.7246, 0.7247) || 挂载数据: 无 ) +│ │ │ ├── 通过XML配置装配Bean --> ( 难度等级: [0.7247, 0.7247) || 挂载数据: 无 ) +│ │ │ │ ├── 装配简易值 --> ( 难度等级: [0.7247, 0.7247) || 挂载数据: qa: 3 ) +│ │ │ │ ├── 装配集合 --> ( 难度等级: [0.7247, 0.7247) || 挂载数据: 无 ) +│ │ │ │ └── 命名空间装配 --> ( 难度等级: [0.7247, 0.7247) || 挂载数据: 无 ) +│ │ │ ├── 通过注解装配Bean --> ( 难度等级: [0.7247, 0.7247) || 挂载数据: 无 ) +│ │ │ │ ├── 使用@Component装配Bean --> ( 难度等级: [0.7247, 0.7247) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 自动装配——@Autowired --> ( 难度等级: [0.7247, 0.7247) || 挂载数据: qa: 4 ) +│ │ │ │ ├── 自动装配的歧义性(@Primary和@Qualifier) --> ( 难度等级: [0.7247, 0.7247) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 装载带有参数的构造方法类 --> ( 难度等级: [0.7247, 0.7247) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 使用@Bean装配Bean --> ( 难度等级: [0.7247, 0.7247) || 挂载数据: qa: 10 ) +│ │ │ │ └── 注解自定义Bean的初始化和销毁方法 --> ( 难度等级: [0.7247, 0.7247) || 挂载数据: 无 ) +│ │ │ ├── 装配的混合使用 --> ( 难度等级: [0.7247, 0.7247) || 挂载数据: 无 ) +│ │ │ ├── 使用Profile --> ( 难度等级: [0.7247, 0.7247) || 挂载数据: 无 ) +│ │ │ │ ├── 使用注解@Profile配置 --> ( 难度等级: [0.7247, 0.7247) || 挂载数据: 无 ) +│ │ │ │ ├── 使用XML定义Profile --> ( 难度等级: [0.7247, 0.7247) || 挂载数据: 无 ) +│ │ │ │ ├── 启动Profile --> ( 难度等级: [0.7247, 0.7247) || 挂载数据: 无 ) +│ │ │ │ ├── 点睛 --> ( 难度等级: [0.7247, 0.7247) || 挂载数据: 无 ) +│ │ │ │ └── 演示 --> ( 难度等级: [0.7247, 0.7247) || 挂载数据: 无 ) +│ │ │ ├── 加载属性(properties)文件 --> ( 难度等级: [0.7247, 0.7248) || 挂载数据: 无 ) +│ │ │ │ ├── 使用注解方式加载属性文件 --> ( 难度等级: [0.7247, 0.7248) || 挂载数据: 无 ) +│ │ │ │ └── 使用XML方式加载属性文件 --> ( 难度等级: [0.7248, 0.7248) || 挂载数据: qa: 4 ) +│ │ │ ├── 条件化装配Bean --> ( 难度等级: [0.7248, 0.7248) || 挂载数据: 无 ) +│ │ │ ├── Bean的作用域 --> ( 难度等级: [0.7248, 0.7248) || 挂载数据: 无 ) +│ │ │ └── 使用Spring表达式(Spring EL) --> ( 难度等级: [0.7248, 0.7248) || 挂载数据: 无 ) +│ │ │ ├── Spring EL相关的类 --> ( 难度等级: [0.7248, 0.7248) || 挂载数据: qa: 2 ) +│ │ │ └── Spring EL运算 --> ( 难度等级: [0.7248, 0.7248) || 挂载数据: qa: 10 ) +│ │ ├── 面向切面编程 --> ( 难度等级: [0.7248, 0.725) || 挂载数据: 无 ) +│ │ │ ├── 一个简单的约定游戏 --> ( 难度等级: [0.7248, 0.7248) || 挂载数据: 无 ) +│ │ │ │ ├── 约定规则 --> ( 难度等级: [0.7248, 0.7248) || 挂载数据: 无 ) +│ │ │ │ ├── 读者的代码 --> ( 难度等级: [0.7248, 0.7248) || 挂载数据: 无 ) +│ │ │ │ └── 笔者的代码 --> ( 难度等级: [0.7248, 0.7248) || 挂载数据: 无 ) +│ │ │ ├── Spring AOP的基本概念 --> ( 难度等级: [0.7248, 0.7249) || 挂载数据: 无 ) +│ │ │ │ ├── AOP的概念和使用原因 --> ( 难度等级: [0.7248, 0.7249) || 挂载数据: qa: 10 ) +│ │ │ │ ├── 面向切面编程的术语 --> ( 难度等级: [0.7249, 0.7249) || 挂载数据: 无 ) +│ │ │ │ └── Spring对AOP的支持 --> ( 难度等级: [0.7249, 0.7249) || 挂载数据: 无 ) +│ │ │ ├── 使用@AspectJ注解开发Spring AOP --> ( 难度等级: [0.7249, 0.7249) || 挂载数据: 无 ) +│ │ │ │ ├── 选择切点 --> ( 难度等级: [0.7249, 0.7249) || 挂载数据: 无 ) +│ │ │ │ ├── 创建切面 --> ( 难度等级: [0.7249, 0.7249) || 挂载数据: 无 ) +│ │ │ │ ├── 连接点 --> ( 难度等级: [0.7249, 0.7249) || 挂载数据: 无 ) +│ │ │ │ ├── 测试AOP --> ( 难度等级: [0.7249, 0.7249) || 挂载数据: 无 ) +│ │ │ │ │ ├── 装配AOP --> ( 难度等级: [0.7249, 0.7249) || 挂载数据: qa: 10 ) +│ │ │ │ │ ├── 使用注解装配AOP --> ( 难度等级: [0.7249, 0.7249) || 挂载数据: qa: 1 ) +│ │ │ │ │ └── AOP避坑指南 --> ( 难度等级: [0.7249, 0.7249) || 挂载数据: 无 ) +│ │ │ │ ├── 环绕通知 --> ( 难度等级: [0.7249, 0.7249) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 织入 --> ( 难度等级: [0.7249, 0.7249) || 挂载数据: 无 ) +│ │ │ │ ├── 给通知传递参数 --> ( 难度等级: [0.7249, 0.7249) || 挂载数据: 无 ) +│ │ │ │ └── 引入 --> ( 难度等级: [0.7249, 0.7249) || 挂载数据: qa: 1 ) +│ │ │ ├── 使用XML配置开发Spring AOP --> ( 难度等级: [0.7249, 0.7249) || 挂载数据: 无 ) +│ │ │ │ ├── 前置通知、后置通知、返回通知和异常通知 --> ( 难度等级: [0.7249, 0.7249) || 挂载数据: 无 ) +│ │ │ │ ├── 环绕通知 --> ( 难度等级: [0.7249, 0.7249) || 挂载数据: 无 ) +│ │ │ │ ├── 给通知传递参数 --> ( 难度等级: [0.7249, 0.7249) || 挂载数据: 无 ) +│ │ │ │ └── 引入 --> ( 难度等级: [0.7249, 0.7249) || 挂载数据: 无 ) +│ │ │ ├── 经典Spring AOP应用程序 --> ( 难度等级: [0.7249, 0.725) || 挂载数据: 无 ) +│ │ │ └── 多个切面 --> ( 难度等级: [0.725, 0.725) || 挂载数据: 无 ) +│ │ ├── Spring和数据库编程 --> ( 难度等级: [0.725, 0.7252) || 挂载数据: 无 ) +│ │ │ ├── 传统的JDBC代码的弊端 --> ( 难度等级: [0.725, 0.725) || 挂载数据: 无 ) +│ │ │ ├── 配置数据库资源 --> ( 难度等级: [0.725, 0.7251) || 挂载数据: 无 ) +│ │ │ │ ├── 使用简单数据库配置 --> ( 难度等级: [0.725, 0.7251) || 挂载数据: qa: 4 ) +│ │ │ │ ├── 使用第三方数据库连接池 --> ( 难度等级: [0.7251, 0.7251) || 挂载数据: qa: 3 ) +│ │ │ │ └── 使用JNDI数据库连接池 --> ( 难度等级: [0.7251, 0.7251) || 挂载数据: 无 ) +│ │ │ ├── JDBC代码失控的解决方案——jdbcTemplate --> ( 难度等级: [0.7251, 0.7251) || 挂载数据: 无 ) +│ │ │ │ ├── jdbcTemplate的增、删、查、改 --> ( 难度等级: [0.7251, 0.7251) || 挂载数据: qa: 5 ) +│ │ │ │ ├── 执行多条SQL --> ( 难度等级: [0.7251, 0.7251) || 挂载数据: qa: 1 ) +│ │ │ │ └── jdbcTemplate的源码分析 --> ( 难度等级: [0.7251, 0.7251) || 挂载数据: qa: 7 ) +│ │ │ └── Spring的缺点 --> ( 难度等级: [0.7251, 0.7252) || 挂载数据: 无 ) +│ │ ├── 深入Spring数据库事务管理 --> ( 难度等级: [0.7252, 0.7254) || 挂载数据: 无 ) +│ │ │ ├── Spring数据库事务管理器的设计 --> ( 难度等级: [0.7252, 0.7252) || 挂载数据: 无 ) +│ │ │ │ ├── 配置事务管理器 --> ( 难度等级: [0.7252, 0.7252) || 挂载数据: 无 ) +│ │ │ │ └── 用Java配置方式实现Spring数据库事务 --> ( 难度等级: [0.7252, 0.7252) || 挂载数据: qa: 1 ) +│ │ │ ├── 编程式事务 --> ( 难度等级: [0.7252, 0.7252) || 挂载数据: 无 ) +│ │ │ ├── 声明式事务 --> ( 难度等级: [0.7252, 0.7253) || 挂载数据: 无 ) +│ │ │ │ ├── Transactional的配置项 --> ( 难度等级: [0.7252, 0.7252) || 挂载数据: qa: 2 ) +│ │ │ │ ├── 使用XML进行配置事务管理器 --> ( 难度等级: [0.7252, 0.7253) || 挂载数据: 无 ) +│ │ │ │ ├── 事务定义器 --> ( 难度等级: [0.7253, 0.7253) || 挂载数据: 无 ) +│ │ │ │ └── 声明式事务的约定流程 --> ( 难度等级: [0.7253, 0.7253) || 挂载数据: qa: 1 ) +│ │ │ ├── 数据库的相关知识 --> ( 难度等级: [0.7253, 0.7253) || 挂载数据: qa: 2 ) +│ │ │ │ ├── 数据库事务ACID特性 --> ( 难度等级: [0.7253, 0.7253) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 丢失更新 --> ( 难度等级: [0.7253, 0.7253) || 挂载数据: qa: 1 ) +│ │ │ │ └── 隔离级别 --> ( 难度等级: [0.7253, 0.7253) || 挂载数据: 无 ) +│ │ │ ├── 选择隔离级别和传播行为 --> ( 难度等级: [0.7253, 0.7253) || 挂载数据: 无 ) +│ │ │ │ ├── 选择隔离级别 --> ( 难度等级: [0.7253, 0.7253) || 挂载数据: qa: 1 ) +│ │ │ │ └── 传播行为 --> ( 难度等级: [0.7253, 0.7253) || 挂载数据: 无 ) +│ │ │ ├── 在Spring+MyBatis组合中使用事务 --> ( 难度等级: [0.7253, 0.7253) || 挂载数据: 无 ) +│ │ │ └── 典型错误用法的剖析 --> ( 难度等级: [0.7253, 0.7254) || 挂载数据: 无 ) +│ │ │ ├── 错误使用Service --> ( 难度等级: [0.7253, 0.7254) || 挂载数据: qa: 10 ) +│ │ │ ├── 过长时间占用事务 --> ( 难度等级: [0.7254, 0.7254) || 挂载数据: 无 ) +│ │ │ └── 错误捕捉异常 --> ( 难度等级: [0.7254, 0.7254) || 挂载数据: qa: 1 ) +│ │ └── Spring基础配置 --> ( 难度等级: [0.7254, 0.7256) || 挂载数据: qa: 10 ) +│ │ └── Java配置 --> ( 难度等级: [0.7254, 0.7256) || 挂载数据: 无 ) +│ ├── Spring MVC框架 --> ( 难度等级: [0.7256, 0.7267) || 挂载数据: 无 ) +│ │ ├── Spring MVC的初始化和流程 --> ( 难度等级: [0.7256, 0.7259) || 挂载数据: 无 ) +│ │ │ ├── MVC设计概述 --> ( 难度等级: [0.7256, 0.7257) || 挂载数据: 无 ) +│ │ │ │ ├── Spring MVC的架构 --> ( 难度等级: [0.7256, 0.7256) || 挂载数据: qa: 10 ) +│ │ │ │ └── Spring MVC组件与流程 --> ( 难度等级: [0.7256, 0.7257) || 挂载数据: qa: 1 ) +│ │ │ ├── Spring MVC初始化 --> ( 难度等级: [0.7257, 0.7258) || 挂载数据: 无 ) +│ │ │ │ ├── 初始化Spring IoC上下文 --> ( 难度等级: [0.7257, 0.7257) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 初始化映射请求上下文 --> ( 难度等级: [0.7257, 0.7258) || 挂载数据: 无 ) +│ │ │ │ └── 使用注解配置方式初始化 --> ( 难度等级: [0.7258, 0.7258) || 挂载数据: 无 ) +│ │ │ └── Spring MVC开发流程详解 --> ( 难度等级: [0.7258, 0.7259) || 挂载数据: qa: 1 ) +│ │ │ ├── 配置@RequestMapping --> ( 难度等级: [0.7258, 0.7258) || 挂载数据: 无 ) +│ │ │ ├── 控制器的开发 --> ( 难度等级: [0.7258, 0.7259) || 挂载数据: qa: 10 ) +│ │ │ └── 视图渲染 --> ( 难度等级: [0.7259, 0.7259) || 挂载数据: 无 ) +│ │ ├── 深入Spring MVC组件开发 --> ( 难度等级: [0.7259, 0.7263) || 挂载数据: 无 ) +│ │ │ ├── 控制器接收各类请求参数 --> ( 难度等级: [0.7259, 0.726) || 挂载数据: 无 ) +│ │ │ │ ├── 接收普通请求参数 --> ( 难度等级: [0.7259, 0.7259) || 挂载数据: qa: 10 ) +│ │ │ │ ├── 使用@RequestParam注解获取参数 --> ( 难度等级: [0.7259, 0.7259) || 挂载数据: qa: 4 ) +│ │ │ │ ├── 使用URL传递参数 --> ( 难度等级: [0.7259, 0.726) || 挂载数据: 无 ) +│ │ │ │ ├── 传递JSON参数 --> ( 难度等级: [0.726, 0.726) || 挂载数据: qa: 8 ) +│ │ │ │ └── 接收列表数据和表单序列化 --> ( 难度等级: [0.726, 0.726) || 挂载数据: 无 ) +│ │ │ ├── 重定向 --> ( 难度等级: [0.726, 0.726) || 挂载数据: qa: 2 ) +│ │ │ ├── 保存并获取属性参数 --> ( 难度等级: [0.726, 0.7261) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 注解@RequestAttribute --> ( 难度等级: [0.726, 0.726) || 挂载数据: 无 ) +│ │ │ │ ├── 注解@SessionAttribute和注解@SessionAttributes --> ( 难度等级: [0.726, 0.7261) || 挂载数据: 无 ) +│ │ │ │ └── 注解@CookieValue和注解@RequestHeader --> ( 难度等级: [0.7261, 0.7261) || 挂载数据: 无 ) +│ │ │ ├── 验证表单 --> ( 难度等级: [0.7261, 0.7261) || 挂载数据: 无 ) +│ │ │ │ ├── 使用JSR 303注解验证输入内容 --> ( 难度等级: [0.7261, 0.7261) || 挂载数据: qa: 1 ) +│ │ │ │ └── 使用验证器 --> ( 难度等级: [0.7261, 0.7261) || 挂载数据: qa: 10 ) +│ │ │ ├── 数据模型 --> ( 难度等级: [0.7261, 0.7262) || 挂载数据: 无 ) +│ │ │ ├── 视图和视图解析器 --> ( 难度等级: [0.7262, 0.7262) || 挂载数据: 无 ) +│ │ │ │ ├── 视图 --> ( 难度等级: [0.7262, 0.7262) || 挂载数据: qa: 3 ) +│ │ │ │ └── 视图解析器 --> ( 难度等级: [0.7262, 0.7262) || 挂载数据: 无 ) +│ │ │ └── 上传文件 --> ( 难度等级: [0.7262, 0.7263) || 挂载数据: qa: 1 ) +│ │ │ ├── MultipartResolver概述 --> ( 难度等级: [0.7262, 0.7263) || 挂载数据: 无 ) +│ │ │ └── 提交上传文件表单 --> ( 难度等级: [0.7263, 0.7263) || 挂载数据: qa: 10 ) +│ │ └── Spring MVC高级应用 --> ( 难度等级: [0.7263, 0.7267) || 挂载数据: 无 ) +│ │ ├── Spring MVC的数据转换和格式化 --> ( 难度等级: [0.7263, 0.7264) || 挂载数据: 无 ) +│ │ │ ├── HttpMessageConverter和JSON消息转换器 --> ( 难度等级: [0.7263, 0.7263) || 挂载数据: qa: 6 ) +│ │ │ ├── 一对一转换器(Converter) --> ( 难度等级: [0.7263, 0.7263) || 挂载数据: qa: 1 ) +│ │ │ ├── 数组和集合转换器GenericConverter --> ( 难度等级: [0.7263, 0.7264) || 挂载数据: qa: 1 ) +│ │ │ └── 使用格式化器(Formatter) --> ( 难度等级: [0.7264, 0.7264) || 挂载数据: 无 ) +│ │ ├── 为控制器添加通知 --> ( 难度等级: [0.7264, 0.7265) || 挂载数据: 无 ) +│ │ ├── 处理异常 --> ( 难度等级: [0.7265, 0.7266) || 挂载数据: 无 ) +│ │ └── 国际化 --> ( 难度等级: [0.7266, 0.7267) || 挂载数据: 无 ) +│ │ ├── MessageSource接口 --> ( 难度等级: [0.7266, 0.7266) || 挂载数据: 无 ) +│ │ ├── CookieLocaleResolver和SessionLocaleResolver --> ( 难度等级: [0.7266, 0.7266) || 挂载数据: 无 ) +│ │ ├── 国际化拦截器(LocaleChangeInterceptor) --> ( 难度等级: [0.7266, 0.7266) || 挂载数据: 无 ) +│ │ └── 开发国际化 --> ( 难度等级: [0.7266, 0.7267) || 挂载数据: 无 ) +│ ├── SSM框架+Redis实践应用 --> ( 难度等级: [0.7267, 0.7278) || 挂载数据: 无 ) +│ │ └── 高并发业务 --> ( 难度等级: [0.7267, 0.7278) || 挂载数据: 无 ) +│ │ ├── 互联系统应用架构基础分析 --> ( 难度等级: [0.7267, 0.7268) || 挂载数据: 无 ) +│ │ ├── 高并发系统的分析和设计 --> ( 难度等级: [0.7268, 0.727) || 挂载数据: 无 ) +│ │ │ ├── 有效请求和无效请求 --> ( 难度等级: [0.7268, 0.7269) || 挂载数据: qa: 6 ) +│ │ │ ├── 系统设计 --> ( 难度等级: [0.7269, 0.7269) || 挂载数据: qa: 1 ) +│ │ │ ├── 数据库设计 --> ( 难度等级: [0.7269, 0.7269) || 挂载数据: qa: 10 ) +│ │ │ ├── 动静分离技术 --> ( 难度等级: [0.7269, 0.727) || 挂载数据: 无 ) +│ │ │ └── 锁和高并发 --> ( 难度等级: [0.727, 0.727) || 挂载数据: qa: 10 ) +│ │ ├── 搭建抢红包开发环境和超发现象 --> ( 难度等级: [0.727, 0.7271) || 挂载数据: 无 ) +│ │ │ ├── 搭建Service层和DAO层 --> ( 难度等级: [0.727, 0.7271) || 挂载数据: qa: 6 ) +│ │ │ └── 使用全注解搭建SSM开发环境 --> ( 难度等级: [0.7271, 0.7271) || 挂载数据: qa: 2 ) +│ │ ├── 悲观锁 --> ( 难度等级: [0.7271, 0.7273) || 挂载数据: 无 ) +│ │ ├── 乐观锁 --> ( 难度等级: [0.7273, 0.7275) || 挂载数据: 无 ) +│ │ │ ├── CAS原理概述 --> ( 难度等级: [0.7273, 0.7274) || 挂载数据: qa: 2 ) +│ │ │ ├── 乐观锁实现抢红包业务 --> ( 难度等级: [0.7274, 0.7274) || 挂载数据: qa: 3 ) +│ │ │ └── 乐观锁重入机制 --> ( 难度等级: [0.7274, 0.7275) || 挂载数据: qa: 1 ) +│ │ ├── 使用Redis实现抢红包 --> ( 难度等级: [0.7275, 0.7276) || 挂载数据: 无 ) +│ │ │ ├── 使用注解方式配置Redis --> ( 难度等级: [0.7275, 0.7275) || 挂载数据: 无 ) +│ │ │ ├── 数据存储设计 --> ( 难度等级: [0.7275, 0.7276) || 挂载数据: qa: 4 ) +│ │ │ └── 使用Redis实现抢红包 --> ( 难度等级: [0.7276, 0.7276) || 挂载数据: 无 ) +│ │ └── 各类方式的优缺点 --> ( 难度等级: [0.7276, 0.7278) || 挂载数据: qa: 1 ) +│ ├── 点睛Spring 4.x --> ( 难度等级: [0.7278, 0.7289) || 挂载数据: qa: 1 ) +│ │ ├── Spring常用配置 --> ( 难度等级: [0.7278, 0.7283) || 挂载数据: 无 ) +│ │ │ ├── Bean的Scope --> ( 难度等级: [0.7278, 0.7279) || 挂载数据: 无 ) +│ │ │ │ └── 示例 --> ( 难度等级: [0.7278, 0.7279) || 挂载数据: 无 ) +│ │ │ ├── Spring EL和资源调用. --> ( 难度等级: [0.7279, 0.7281) || 挂载数据: 无 ) +│ │ │ │ └── 示例 --> ( 难度等级: [0.7279, 0.7281) || 挂载数据: 无 ) +│ │ │ ├── Bean的初始化和销毁 --> ( 难度等级: [0.7281, 0.7282) || 挂载数据: 无 ) +│ │ │ └── 事件(Application Event) --> ( 难度等级: [0.7282, 0.7283) || 挂载数据: qa: 3 ) +│ │ │ └── 示例 --> ( 难度等级: [0.7282, 0.7283) || 挂载数据: 无 ) +│ │ └── Spring高级话题 --> ( 难度等级: [0.7283, 0.7289) || 挂载数据: qa: 1 ) +│ │ ├── Spring Aware --> ( 难度等级: [0.7283, 0.7284) || 挂载数据: 无 ) +│ │ │ └── 示例 --> ( 难度等级: [0.7283, 0.7284) || 挂载数据: 无 ) +│ │ ├── 多线程 --> ( 难度等级: [0.7284, 0.7285) || 挂载数据: 无 ) +│ │ │ └── 示例 --> ( 难度等级: [0.7284, 0.7285) || 挂载数据: qa: 1 ) +│ │ ├── 计划任务 --> ( 难度等级: [0.7285, 0.7286) || 挂载数据: qa: 1 ) +│ │ │ └── 示例 --> ( 难度等级: [0.7285, 0.7286) || 挂载数据: 无 ) +│ │ ├── 条件注解@Conditional --> ( 难度等级: [0.7286, 0.7287) || 挂载数据: 无 ) +│ │ │ └── 示例 --> ( 难度等级: [0.7286, 0.7287) || 挂载数据: 无 ) +│ │ ├── 组合注解与元注解 --> ( 难度等级: [0.7287, 0.7287) || 挂载数据: 无 ) +│ │ │ └── 示例 --> ( 难度等级: [0.7287, 0.7287) || 挂载数据: 无 ) +│ │ ├── @Enable*注解的工作原理 --> ( 难度等级: [0.7287, 0.7288) || 挂载数据: qa: 1 ) +│ │ │ ├── 第一类:直接导入配置类 --> ( 难度等级: [0.7287, 0.7288) || 挂载数据: 无 ) +│ │ │ ├── 第二类:依据条件选择配置类 --> ( 难度等级: [0.7288, 0.7288) || 挂载数据: 无 ) +│ │ │ └── 第三类:动态注册Bean --> ( 难度等级: [0.7288, 0.7288) || 挂载数据: 无 ) +│ │ └── 测试 --> ( 难度等级: [0.7288, 0.7289) || 挂载数据: 无 ) +│ │ └── 示例 --> ( 难度等级: [0.7288, 0.7289) || 挂载数据: 无 ) +│ ├── 点睛Spring MVC 4.x --> ( 难度等级: [0.7289, 0.73) || 挂载数据: 无 ) +│ │ └── Spring MVC基础 --> ( 难度等级: [0.7289, 0.73) || 挂载数据: 无 ) +│ │ ├── Spring MVC概述 --> ( 难度等级: [0.7289, 0.7291) || 挂载数据: 无 ) +│ │ ├── Spring MVC的常用注解 --> ( 难度等级: [0.7291, 0.7293) || 挂载数据: 无 ) +│ │ ├── Spring MVC基本配置 --> ( 难度等级: [0.7293, 0.7296) || 挂载数据: 无 ) +│ │ │ ├── 静态资源映射 --> ( 难度等级: [0.7293, 0.7294) || 挂载数据: qa: 3 ) +│ │ │ ├── 拦截器配置 --> ( 难度等级: [0.7294, 0.7294) || 挂载数据: 无 ) +│ │ │ ├── @ControllerAdvice --> ( 难度等级: [0.7294, 0.7295) || 挂载数据: 无 ) +│ │ │ └── 其他配置 --> ( 难度等级: [0.7295, 0.7296) || 挂载数据: qa: 8 ) +│ │ ├── Spring MVC的高级配置 --> ( 难度等级: [0.7296, 0.7298) || 挂载数据: 无 ) +│ │ │ ├── 文件上传配置 --> ( 难度等级: [0.7296, 0.7296) || 挂载数据: qa: 1 ) +│ │ │ ├── 自定义HttpMessageConverter --> ( 难度等级: [0.7296, 0.7297) || 挂载数据: 无 ) +│ │ │ └── 服务器端推送技术 --> ( 难度等级: [0.7297, 0.7298) || 挂载数据: qa: 2 ) +│ │ └── Spring MVC的测试 --> ( 难度等级: [0.7298, 0.73) || 挂载数据: 无 ) +│ ├── Java EE简介 --> ( 难度等级: [0.73, 0.7311) || 挂载数据: 无 ) +│ │ ├── Java EE --> ( 难度等级: [0.73, 0.7304) || 挂载数据: 无 ) +│ │ │ ├── Java EE架构 --> ( 难度等级: [0.73, 0.7302) || 挂载数据: qa: 4 ) +│ │ │ └── Java EE的缺点 --> ( 难度等级: [0.7302, 0.7304) || 挂载数据: 无 ) +│ │ ├── Spring Boot --> ( 难度等级: [0.7304, 0.7307) || 挂载数据: 无 ) +│ │ └── Hello,Spring Boot --> ( 难度等级: [0.7307, 0.7311) || 挂载数据: 无 ) +│ │ ├── 创建一个Maven工程 --> ( 难度等级: [0.7307, 0.7308) || 挂载数据: qa: 2 ) +│ │ ├── 增加Web支持 --> ( 难度等级: [0.7308, 0.7309) || 挂载数据: 无 ) +│ │ ├── Hello Spring Boot示例 --> ( 难度等级: [0.7309, 0.731) || 挂载数据: qa: 2 ) +│ │ ├── 使用热部署 --> ( 难度等级: [0.731, 0.731) || 挂载数据: 无 ) +│ │ └── 添加REST支持 --> ( 难度等级: [0.731, 0.7311) || 挂载数据: 无 ) +│ ├── Spring Boot基础 --> ( 难度等级: [0.7311, 0.7322) || 挂载数据: 无 ) +│ │ ├── 检查Java环境与安装Java --> ( 难度等级: [0.7311, 0.7315) || 挂载数据: 无 ) +│ │ ├── 安装和配置Maven --> ( 难度等级: [0.7315, 0.7319) || 挂载数据: 无 ) +│ │ │ ├── Maven介绍 --> ( 难度等级: [0.7315, 0.7316) || 挂载数据: qa: 9 ) +│ │ │ ├── 安装Maven --> ( 难度等级: [0.7316, 0.7316) || 挂载数据: qa: 2 ) +│ │ │ ├── 设置Maven --> ( 难度等级: [0.7316, 0.7317) || 挂载数据: 无 ) +│ │ │ ├── 使用IDE设置Maven --> ( 难度等级: [0.7317, 0.7318) || 挂载数据: 无 ) +│ │ │ └── Maven的常用命令 --> ( 难度等级: [0.7318, 0.7319) || 挂载数据: 无 ) +│ │ └── Spring核心技术 --> ( 难度等级: [0.7319, 0.7322) || 挂载数据: 无 ) +│ │ ├── Spring的历史 --> ( 难度等级: [0.7319, 0.732) || 挂载数据: 无 ) +│ │ ├── Spring容器介绍 --> ( 难度等级: [0.732, 0.7321) || 挂载数据: 无 ) +│ │ └── Spring AOP介绍 --> ( 难度等级: [0.7321, 0.7322) || 挂载数据: 无 ) +│ ├── MVC框架 --> ( 难度等级: [0.7322, 0.7333) || 挂载数据: 无 ) +│ │ ├── 集成MVC框架 --> ( 难度等级: [0.7322, 0.7323) || 挂载数据: 无 ) +│ │ │ ├── 引入依赖 --> ( 难度等级: [0.7322, 0.7323) || 挂载数据: 无 ) +│ │ │ ├── Web应用目录结构 --> ( 难度等级: [0.7323, 0.7323) || 挂载数据: qa: 1 ) +│ │ │ └── Java包名结构 --> ( 难度等级: [0.7323, 0.7323) || 挂载数据: 无 ) +│ │ ├── 使用Controller --> ( 难度等级: [0.7323, 0.7325) || 挂载数据: qa: 10 ) +│ │ ├── URL映射到方法 --> ( 难度等级: [0.7325, 0.7326) || 挂载数据: 无 ) +│ │ │ ├── @RequestMapping --> ( 难度等级: [0.7325, 0.7325) || 挂载数据: qa: 2 ) +│ │ │ ├── URL路径匹配 --> ( 难度等级: [0.7325, 0.7325) || 挂载数据: qa: 10 ) +│ │ │ ├── HTTP method匹配 --> ( 难度等级: [0.7325, 0.7325) || 挂载数据: qa: 2 ) +│ │ │ ├── consumes和produces --> ( 难度等级: [0.7325, 0.7326) || 挂载数据: 无 ) +│ │ │ └── params和header匹配 --> ( 难度等级: [0.7326, 0.7326) || 挂载数据: qa: 2 ) +│ │ ├── 方法参数 --> ( 难度等级: [0.7326, 0.7327) || 挂载数据: 无 ) +│ │ │ ├── PathVariable --> ( 难度等级: [0.7326, 0.7326) || 挂载数据: 无 ) +│ │ │ ├── Model&ModelAndView --> ( 难度等级: [0.7326, 0.7326) || 挂载数据: qa: 3 ) +│ │ │ ├── JavaBean接受HTTP参数 --> ( 难度等级: [0.7326, 0.7326) || 挂载数据: qa: 6 ) +│ │ │ ├── @RequsetBody接受JSON --> ( 难度等级: [0.7326, 0.7327) || 挂载数据: qa: 1 ) +│ │ │ ├── MultipartFile --> ( 难度等级: [0.7327, 0.7327) || 挂载数据: qa: 1 ) +│ │ │ ├── @ModelAttribute --> ( 难度等级: [0.7327, 0.7327) || 挂载数据: 无 ) +│ │ │ └── @InitBinder --> ( 难度等级: [0.7327, 0.7327) || 挂载数据: 无 ) +│ │ ├── 验证框架 --> ( 难度等级: [0.7327, 0.7328) || 挂载数据: 无 ) +│ │ │ ├── JSR- --> ( 难度等级: [0.7327, 0.7328) || 挂载数据: 无 ) +│ │ │ ├── MVC中使用@Validated --> ( 难度等级: [0.7328, 0.7328) || 挂载数据: 无 ) +│ │ │ └── 自定义校验 --> ( 难度等级: [0.7328, 0.7328) || 挂载数据: 无 ) +│ │ ├── WebMvcConfigurer --> ( 难度等级: [0.7328, 0.733) || 挂载数据: 无 ) +│ │ │ ├── 跨域访问 --> ( 难度等级: [0.7328, 0.7329) || 挂载数据: qa: 2 ) +│ │ │ └── 注册Controller --> ( 难度等级: [0.7329, 0.733) || 挂载数据: 无 ) +│ │ ├── 视图技术 --> ( 难度等级: [0.733, 0.7331) || 挂载数据: 无 ) +│ │ │ ├── 使用Freemarker --> ( 难度等级: [0.733, 0.733) || 挂载数据: qa: 7 ) +│ │ │ ├── 使用Beetl --> ( 难度等级: [0.733, 0.733) || 挂载数据: 无 ) +│ │ │ ├── 使用Jackson --> ( 难度等级: [0.733, 0.733) || 挂载数据: qa: 1 ) +│ │ │ ├── Redirect和Forward --> ( 难度等级: [0.733, 0.733) || 挂载数据: 无 ) +│ │ │ ├── Beetl模板引擎 --> ( 难度等级: [0.733, 0.733) || 挂载数据: 无 ) +│ │ │ │ ├── 安装Beetl --> ( 难度等级: [0.733, 0.733) || 挂载数据: 无 ) +│ │ │ │ ├── 设置定界符号和占位符 --> ( 难度等级: [0.733, 0.733) || 挂载数据: qa: 2 ) +│ │ │ │ ├── 配置Beetl --> ( 难度等级: [0.733, 0.733) || 挂载数据: 无 ) +│ │ │ │ └── groupTemplate --> ( 难度等级: [0.733, 0.733) || 挂载数据: 无 ) +│ │ │ ├── 使用变量 --> ( 难度等级: [0.733, 0.733) || 挂载数据: 无 ) +│ │ │ │ ├── 全局变量 --> ( 难度等级: [0.733, 0.733) || 挂载数据: qa: 2 ) +│ │ │ │ ├── 局部变量 --> ( 难度等级: [0.733, 0.733) || 挂载数据: 无 ) +│ │ │ │ ├── 共享变量 --> ( 难度等级: [0.733, 0.733) || 挂载数据: qa: 10 ) +│ │ │ │ └── 模板变量 --> ( 难度等级: [0.733, 0.733) || 挂载数据: qa: 4 ) +│ │ │ ├── 表达式 --> ( 难度等级: [0.733, 0.733) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 计算表达式 --> ( 难度等级: [0.733, 0.733) || 挂载数据: qa: 10 ) +│ │ │ │ └── 逻辑表达式 --> ( 难度等级: [0.733, 0.733) || 挂载数据: qa: 2 ) +│ │ │ ├── 控制语句 --> ( 难度等级: [0.733, 0.733) || 挂载数据: 无 ) +│ │ │ │ ├── 循环语句 --> ( 难度等级: [0.733, 0.733) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 条件语句 --> ( 难度等级: [0.733, 0.733) || 挂载数据: 无 ) +│ │ │ │ └── try catch --> ( 难度等级: [0.733, 0.733) || 挂载数据: qa: 6 ) +│ │ │ ├── 函数调用 --> ( 难度等级: [0.733, 0.733) || 挂载数据: qa: 1 ) +│ │ │ ├── 格式化函数 --> ( 难度等级: [0.733, 0.733) || 挂载数据: 无 ) +│ │ │ ├── 直接调用Java --> ( 难度等级: [0.733, 0.733) || 挂载数据: 无 ) +│ │ │ ├── 标签函数 --> ( 难度等级: [0.733, 0.733) || 挂载数据: 无 ) +│ │ │ ├── HTML标签 --> ( 难度等级: [0.733, 0.7331) || 挂载数据: qa: 10 ) +│ │ │ ├── 安全输出 --> ( 难度等级: [0.7331, 0.7331) || 挂载数据: qa: 4 ) +│ │ │ ├── 高级功能 --> ( 难度等级: [0.7331, 0.7331) || 挂载数据: 无 ) +│ │ │ │ ├── 自定义函数 --> ( 难度等级: [0.7331, 0.7331) || 挂载数据: qa: 2 ) +│ │ │ │ ├── 自定义格式化函数 --> ( 难度等级: [0.7331, 0.7331) || 挂载数据: 无 ) +│ │ │ │ ├── 自定义标签函数 --> ( 难度等级: [0.7331, 0.7331) || 挂载数据: 无 ) +│ │ │ │ ├── 自定义HTML标签 --> ( 难度等级: [0.7331, 0.7331) || 挂载数据: qa: 1 ) +│ │ │ │ └── AJAX局部渲染 --> ( 难度等级: [0.7331, 0.7331) || 挂载数据: qa: 10 ) +│ │ │ ├── 脚本引擎 --> ( 难度等级: [0.7331, 0.7331) || 挂载数据: qa: 1 ) +│ │ │ ├── JSON技术 --> ( 难度等级: [0.7331, 0.7331) || 挂载数据: qa: 10 ) +│ │ │ │ ├── 在Spring Boot中使用Jackson --> ( 难度等级: [0.7331, 0.7331) || 挂载数据: 无 ) +│ │ │ │ ├── 自定义ObjectMapper --> ( 难度等级: [0.7331, 0.7331) || 挂载数据: 无 ) +│ │ │ │ ├── Jackson的三种使用方式 --> ( 难度等级: [0.7331, 0.7331) || 挂载数据: 无 ) +│ │ │ │ ├── Jackson树遍历 --> ( 难度等级: [0.7331, 0.7331) || 挂载数据: qa: 3 ) +│ │ │ │ ├── 对象绑定 --> ( 难度等级: [0.7331, 0.7331) || 挂载数据: qa: 9 ) +│ │ │ │ ├── 流式操作 --> ( 难度等级: [0.7331, 0.7331) || 挂载数据: qa: 1 ) +│ │ │ │ ├── Jackson注解 --> ( 难度等级: [0.7331, 0.7331) || 挂载数据: 无 ) +│ │ │ │ └── 集合的反序列化 --> ( 难度等级: [0.7331, 0.7331) || 挂载数据: qa: 2 ) +│ │ │ └── MVC分离开发 --> ( 难度等级: [0.7331, 0.7331) || 挂载数据: 无 ) +│ │ │ ├── 集成WebSimulate --> ( 难度等级: [0.7331, 0.7331) || 挂载数据: 无 ) +│ │ │ ├── 模拟JSON响应 --> ( 难度等级: [0.7331, 0.7331) || 挂载数据: 无 ) +│ │ │ └── 模拟模板渲染 --> ( 难度等级: [0.7331, 0.7331) || 挂载数据: 无 ) +│ │ ├── 通用错误处理 --> ( 难度等级: [0.7331, 0.7332) || 挂载数据: 无 ) +│ │ └── curl命令 --> ( 难度等级: [0.7332, 0.7333) || 挂载数据: 无 ) +│ ├── 数据库访问 --> ( 难度等级: [0.7333, 0.7344) || 挂载数据: 无 ) +│ │ ├── 配置数据源 --> ( 难度等级: [0.7333, 0.7334) || 挂载数据: 无 ) +│ │ ├── Spring JDBC Template --> ( 难度等级: [0.7334, 0.7335) || 挂载数据: 无 ) +│ │ │ ├── 查询 --> ( 难度等级: [0.7334, 0.7335) || 挂载数据: qa: 2 ) +│ │ │ ├── 修改 --> ( 难度等级: [0.7335, 0.7335) || 挂载数据: qa: 10 ) +│ │ │ └── JdbcTemplate增强 --> ( 难度等级: [0.7335, 0.7335) || 挂载数据: 无 ) +│ │ ├── BeetlSQL介绍 --> ( 难度等级: [0.7335, 0.7336) || 挂载数据: 无 ) +│ │ │ ├── BeetlSQL功能概览 --> ( 难度等级: [0.7335, 0.7335) || 挂载数据: 无 ) +│ │ │ ├── 添加Maven依赖 --> ( 难度等级: [0.7335, 0.7335) || 挂载数据: 无 ) +│ │ │ ├── 配置BeetlSQL --> ( 难度等级: [0.7335, 0.7336) || 挂载数据: 无 ) +│ │ │ ├── SQLManager --> ( 难度等级: [0.7336, 0.7336) || 挂载数据: 无 ) +│ │ │ ├── 使用SQL文件 --> ( 难度等级: [0.7336, 0.7336) || 挂载数据: 无 ) +│ │ │ └── 使用实体 --> ( 难度等级: [0.7336, 0.7336) || 挂载数据: 无 ) +│ │ ├── SQLManager内置CRUD --> ( 难度等级: [0.7336, 0.7337) || 挂载数据: qa: 1 ) +│ │ │ ├── 内置的插入API --> ( 难度等级: [0.7336, 0.7336) || 挂载数据: 无 ) +│ │ │ ├── 内置的更新(删除)API --> ( 难度等级: [0.7336, 0.7337) || 挂载数据: 无 ) +│ │ │ ├── 内置的查询API --> ( 难度等级: [0.7337, 0.7337) || 挂载数据: 无 ) +│ │ │ └── 代码生成方法 --> ( 难度等级: [0.7337, 0.7337) || 挂载数据: 无 ) +│ │ ├── 使用sqlId --> ( 难度等级: [0.7337, 0.7338) || 挂载数据: 无 ) +│ │ │ ├── md文件命名 --> ( 难度等级: [0.7337, 0.7337) || 挂载数据: 无 ) +│ │ │ ├── md文件构成 --> ( 难度等级: [0.7337, 0.7337) || 挂载数据: qa: 1 ) +│ │ │ ├── 调用sqlId --> ( 难度等级: [0.7337, 0.7337) || 挂载数据: 无 ) +│ │ │ ├── 翻页查询 --> ( 难度等级: [0.7337, 0.7337) || 挂载数据: 无 ) +│ │ │ ├── TailBean --> ( 难度等级: [0.7337, 0.7338) || 挂载数据: 无 ) +│ │ │ ├── ORM查询 --> ( 难度等级: [0.7338, 0.7338) || 挂载数据: qa: 1 ) +│ │ │ ├── 其他API --> ( 难度等级: [0.7338, 0.7338) || 挂载数据: qa: 2 ) +│ │ │ └── Mapper详解 --> ( 难度等级: [0.7338, 0.7338) || 挂载数据: 无 ) +│ │ ├── BeetlSQL的其他功能 --> ( 难度等级: [0.7338, 0.7339) || 挂载数据: 无 ) +│ │ │ ├── 常用函数和标签 --> ( 难度等级: [0.7338, 0.7338) || 挂载数据: 无 ) +│ │ │ ├── 主键设置 --> ( 难度等级: [0.7338, 0.7338) || 挂载数据: 无 ) +│ │ │ ├── BeetlSQL注解 --> ( 难度等级: [0.7338, 0.7339) || 挂载数据: 无 ) +│ │ │ └── NameConversion --> ( 难度等级: [0.7339, 0.7339) || 挂载数据: 无 ) +│ │ ├── 使用JDBC --> ( 难度等级: [0.7339, 0.734) || 挂载数据: 无 ) +│ │ ├── 使用DAO --> ( 难度等级: [0.734, 0.7341) || 挂载数据: qa: 5 ) +│ │ ├── 集成Hibernate --> ( 难度等级: [0.7341, 0.7342) || 挂载数据: 无 ) +│ │ ├── 集成JPA --> ( 难度等级: [0.7342, 0.7343) || 挂载数据: 无 ) +│ │ ├── 集成MyBatis --> ( 难度等级: [0.7343, 0.7344) || 挂载数据: 无 ) +│ │ └── 设计ORM --> ( 难度等级: [0.7344, 0.7344) || 挂载数据: 无 ) +│ ├── Spring Data JPA --> ( 难度等级: [0.7344, 0.7356) || 挂载数据: 无 ) +│ │ ├── 集成Spring Data JPA --> ( 难度等级: [0.7344, 0.735) || 挂载数据: 无 ) +│ │ │ ├── 集成数据源 --> ( 难度等级: [0.7344, 0.7346) || 挂载数据: qa: 1 ) +│ │ │ ├── 配置JPA支持 --> ( 难度等级: [0.7346, 0.7347) || 挂载数据: qa: 7 ) +│ │ │ ├── 创建Entity --> ( 难度等级: [0.7347, 0.7349) || 挂载数据: 无 ) +│ │ │ └── 简化Entity --> ( 难度等级: [0.7349, 0.735) || 挂载数据: 无 ) +│ │ └── Repository --> ( 难度等级: [0.735, 0.7356) || 挂载数据: 无 ) +│ │ ├── CrudRepository --> ( 难度等级: [0.735, 0.7351) || 挂载数据: 无 ) +│ │ ├── PagingAndSortingRepository --> ( 难度等级: [0.7351, 0.7351) || 挂载数据: 无 ) +│ │ ├── JpaRepository --> ( 难度等级: [0.7351, 0.7352) || 挂载数据: 无 ) +│ │ ├── 持久化Entity --> ( 难度等级: [0.7352, 0.7352) || 挂载数据: 无 ) +│ │ ├── Sort --> ( 难度等级: [0.7352, 0.7353) || 挂载数据: qa: 3 ) +│ │ ├── Pageable和Page --> ( 难度等级: [0.7353, 0.7353) || 挂载数据: qa: 2 ) +│ │ ├── 基于方法名字查询 --> ( 难度等级: [0.7353, 0.7354) || 挂载数据: 无 ) +│ │ ├── @Query查询 --> ( 难度等级: [0.7354, 0.7354) || 挂载数据: qa: 2 ) +│ │ ├── 使用JPA Query --> ( 难度等级: [0.7354, 0.7355) || 挂载数据: 无 ) +│ │ └── Example查询 --> ( 难度等级: [0.7355, 0.7356) || 挂载数据: 无 ) +│ ├── Spring Boot配置 --> ( 难度等级: [0.7356, 0.7367) || 挂载数据: 无 ) +│ │ ├── 配置Spring Boot --> ( 难度等级: [0.7356, 0.7358) || 挂载数据: 无 ) +│ │ │ ├── 服务器配置 --> ( 难度等级: [0.7356, 0.7356) || 挂载数据: qa: 10 ) +│ │ │ ├── 使用其他Web服务器 --> ( 难度等级: [0.7356, 0.7357) || 挂载数据: qa: 1 ) +│ │ │ ├── 配置启动信息 --> ( 难度等级: [0.7357, 0.7358) || 挂载数据: qa: 2 ) +│ │ │ └── 配置浏览器显示ico --> ( 难度等级: [0.7358, 0.7358) || 挂载数据: qa: 1 ) +│ │ ├── 日志配置 --> ( 难度等级: [0.7358, 0.7361) || 挂载数据: 无 ) +│ │ ├── 读取应用配置 --> ( 难度等级: [0.7361, 0.7364) || 挂载数据: 无 ) +│ │ │ ├── Environment --> ( 难度等级: [0.7361, 0.7362) || 挂载数据: 无 ) +│ │ │ ├── @Value --> ( 难度等级: [0.7362, 0.7363) || 挂载数据: qa: 8 ) +│ │ │ └── @ConfigurationProperties --> ( 难度等级: [0.7363, 0.7364) || 挂载数据: 无 ) +│ │ └── Spring Boot自动装配 --> ( 难度等级: [0.7364, 0.7367) || 挂载数据: 无 ) +│ │ ├── @Configuration和@Bean --> ( 难度等级: [0.7364, 0.7364) || 挂载数据: 无 ) +│ │ ├── Bean条件装配 --> ( 难度等级: [0.7364, 0.7365) || 挂载数据: 无 ) +│ │ ├── Class条件装配 --> ( 难度等级: [0.7365, 0.7365) || 挂载数据: 无 ) +│ │ ├── Environment装配 --> ( 难度等级: [0.7365, 0.7365) || 挂载数据: 无 ) +│ │ ├── 其他条件装配 --> ( 难度等级: [0.7365, 0.7366) || 挂载数据: qa: 3 ) +│ │ ├── 联合多个条件 --> ( 难度等级: [0.7366, 0.7366) || 挂载数据: 无 ) +│ │ ├── Condition接口 --> ( 难度等级: [0.7366, 0.7366) || 挂载数据: 无 ) +│ │ └── 制作Starter --> ( 难度等级: [0.7366, 0.7367) || 挂载数据: qa: 7 ) +│ ├── 部署Spring Boot应用 --> ( 难度等级: [0.7367, 0.7378) || 挂载数据: 无 ) +│ │ ├── 以jar文件运行 --> ( 难度等级: [0.7367, 0.7369) || 挂载数据: qa: 3 ) +│ │ ├── 以war方式部署 --> ( 难度等级: [0.7369, 0.7372) || 挂载数据: qa: 4 ) +│ │ ├── 多环境部署 --> ( 难度等级: [0.7372, 0.7375) || 挂载数据: qa: 4 ) +│ │ └── @Profile注解 --> ( 难度等级: [0.7375, 0.7378) || 挂载数据: 无 ) +│ ├── Testing单元测试 --> ( 难度等级: [0.7378, 0.7389) || 挂载数据: 无 ) +│ │ ├── JUnit介绍 --> ( 难度等级: [0.7378, 0.7381) || 挂载数据: 无 ) +│ │ │ ├── JUnit的相关概念 --> ( 难度等级: [0.7378, 0.7378) || 挂载数据: 无 ) +│ │ │ ├── JUnit测试 --> ( 难度等级: [0.7378, 0.7379) || 挂载数据: qa: 3 ) +│ │ │ ├── Assert --> ( 难度等级: [0.7379, 0.738) || 挂载数据: 无 ) +│ │ │ └── Suite --> ( 难度等级: [0.738, 0.7381) || 挂载数据: 无 ) +│ │ ├── Spring Boot单元测试 --> ( 难度等级: [0.7381, 0.7383) || 挂载数据: 无 ) +│ │ │ ├── 测试范围依赖 --> ( 难度等级: [0.7381, 0.7381) || 挂载数据: qa: 2 ) +│ │ │ ├── Spring Boot测试脚手架 --> ( 难度等级: [0.7381, 0.7381) || 挂载数据: qa: 1 ) +│ │ │ ├── 测试MVC --> ( 难度等级: [0.7381, 0.7382) || 挂载数据: 无 ) +│ │ │ ├── 完成MVC请求模拟 --> ( 难度等级: [0.7382, 0.7382) || 挂载数据: 无 ) +│ │ │ ├── 比较MVC的返回结果 --> ( 难度等级: [0.7382, 0.7383) || 挂载数据: 无 ) +│ │ │ └── JSON比较 --> ( 难度等级: [0.7383, 0.7383) || 挂载数据: qa: 10 ) +│ │ ├── Mockito --> ( 难度等级: [0.7383, 0.7386) || 挂载数据: 无 ) +│ │ │ ├── 模拟对象 --> ( 难度等级: [0.7383, 0.7384) || 挂载数据: qa: 3 ) +│ │ │ ├── 模拟方法参数 --> ( 难度等级: [0.7384, 0.7385) || 挂载数据: 无 ) +│ │ │ └── 模拟方法返回值 --> ( 难度等级: [0.7385, 0.7386) || 挂载数据: qa: 2 ) +│ │ └── 面向数据库应用的单元测试 --> ( 难度等级: [0.7386, 0.7389) || 挂载数据: 无 ) +│ │ ├── @Sql --> ( 难度等级: [0.7386, 0.7387) || 挂载数据: qa: 10 ) +│ │ ├── XLSUnit --> ( 难度等级: [0.7387, 0.7388) || 挂载数据: 无 ) +│ │ └── XLSUnit的基本用法 --> ( 难度等级: [0.7388, 0.7389) || 挂载数据: 无 ) +│ ├── REST --> ( 难度等级: [0.7389, 0.74) || 挂载数据: 无 ) +│ │ ├── REST简介 --> ( 难度等级: [0.7389, 0.7392) || 挂载数据: 无 ) +│ │ │ ├── REST风格的架构 --> ( 难度等级: [0.7389, 0.7389) || 挂载数据: 无 ) +│ │ │ ├── 使用“api”作为上下文 --> ( 难度等级: [0.7389, 0.739) || 挂载数据: 无 ) +│ │ │ ├── 增加一个版本标识 --> ( 难度等级: [0.739, 0.739) || 挂载数据: 无 ) +│ │ │ ├── 标识资源 --> ( 难度等级: [0.739, 0.739) || 挂载数据: 无 ) +│ │ │ ├── 确定HTTP Method --> ( 难度等级: [0.739, 0.7391) || 挂载数据: qa: 4 ) +│ │ │ ├── 确定HTTP Status --> ( 难度等级: [0.7391, 0.7391) || 挂载数据: qa: 1 ) +│ │ │ └── REST VS. WebService --> ( 难度等级: [0.7391, 0.7392) || 挂载数据: qa: 10 ) +│ │ ├── Spring Boot集成REST --> ( 难度等级: [0.7392, 0.7394) || 挂载数据: 无 ) +│ │ │ ├── 集成REST --> ( 难度等级: [0.7392, 0.7393) || 挂载数据: 无 ) +│ │ │ ├── @RestController --> ( 难度等级: [0.7393, 0.7394) || 挂载数据: 无 ) +│ │ │ └── REST Client --> ( 难度等级: [0.7394, 0.7394) || 挂载数据: qa: 5 ) +│ │ ├── Swagger UI --> ( 难度等级: [0.7394, 0.7397) || 挂载数据: qa: 4 ) +│ │ │ ├── 集成Swagger --> ( 难度等级: [0.7394, 0.7395) || 挂载数据: 无 ) +│ │ │ ├── Swagger规范 --> ( 难度等级: [0.7395, 0.7395) || 挂载数据: qa: 3 ) +│ │ │ ├── 接口描述 --> ( 难度等级: [0.7395, 0.7395) || 挂载数据: qa: 1 ) +│ │ │ ├── 查询参数描述 --> ( 难度等级: [0.7395, 0.7396) || 挂载数据: qa: 1 ) +│ │ │ ├── URI中的参数 --> ( 难度等级: [0.7396, 0.7396) || 挂载数据: 无 ) +│ │ │ ├── HTTP头参数 --> ( 难度等级: [0.7396, 0.7396) || 挂载数据: 无 ) +│ │ │ ├── 表单参数 --> ( 难度等级: [0.7396, 0.7397) || 挂载数据: 无 ) +│ │ │ ├── 文件上传参数 --> ( 难度等级: [0.7397, 0.7397) || 挂载数据: 无 ) +│ │ │ └── 整个请求体作为参数 --> ( 难度等级: [0.7397, 0.7397) || 挂载数据: 无 ) +│ │ └── 模拟REST服务 --> ( 难度等级: [0.7397, 0.74) || 挂载数据: 无 ) +│ ├── MongoDB --> ( 难度等级: [0.74, 0.7411) || 挂载数据: 无 ) +│ │ ├── 安装MongoDB --> ( 难度等级: [0.74, 0.7403) || 挂载数据: qa: 3 ) +│ │ ├── 使用shell --> ( 难度等级: [0.7403, 0.7406) || 挂载数据: qa: 3 ) +│ │ │ ├── 指定数据库 --> ( 难度等级: [0.7403, 0.7403) || 挂载数据: 无 ) +│ │ │ ├── 插入文档 --> ( 难度等级: [0.7403, 0.7404) || 挂载数据: qa: 1 ) +│ │ │ ├── 查询文档 --> ( 难度等级: [0.7404, 0.7404) || 挂载数据: 无 ) +│ │ │ ├── 更新操作 --> ( 难度等级: [0.7404, 0.7405) || 挂载数据: 无 ) +│ │ │ └── 删除操作 --> ( 难度等级: [0.7405, 0.7406) || 挂载数据: 无 ) +│ │ ├── Spring Boot集成MongoDB --> ( 难度等级: [0.7406, 0.7408) || 挂载数据: 无 ) +│ │ └── 增删改查 --> ( 难度等级: [0.7408, 0.7411) || 挂载数据: qa: 2 ) +│ │ ├── 增加API --> ( 难度等级: [0.7408, 0.7409) || 挂载数据: qa: 1 ) +│ │ ├── 根据主键查询API --> ( 难度等级: [0.7409, 0.7409) || 挂载数据: 无 ) +│ │ ├── 查询API --> ( 难度等级: [0.7409, 0.741) || 挂载数据: 无 ) +│ │ ├── 修改API --> ( 难度等级: [0.741, 0.741) || 挂载数据: 无 ) +│ │ ├── 删除API --> ( 难度等级: [0.741, 0.741) || 挂载数据: 无 ) +│ │ ├── 使用MongoDatabase --> ( 难度等级: [0.741, 0.7411) || 挂载数据: 无 ) +│ │ └── 打印日志 --> ( 难度等级: [0.7411, 0.7411) || 挂载数据: qa: 9 ) +│ ├── Elasticsearch --> ( 难度等级: [0.7411, 0.7422) || 挂载数据: 无 ) +│ │ ├── Elasticsearch介绍 --> ( 难度等级: [0.7411, 0.7414) || 挂载数据: 无 ) +│ │ │ ├── 安装Elasticsearch --> ( 难度等级: [0.7411, 0.7412) || 挂载数据: 无 ) +│ │ │ └── Elasticsearch的基本概念 --> ( 难度等级: [0.7412, 0.7414) || 挂载数据: qa: 2 ) +│ │ ├── 使用REST访问Elasticsearch --> ( 难度等级: [0.7414, 0.7417) || 挂载数据: 无 ) +│ │ │ ├── 添加文档 --> ( 难度等级: [0.7414, 0.7414) || 挂载数据: qa: 4 ) +│ │ │ ├── 根据主键查询 --> ( 难度等级: [0.7414, 0.7415) || 挂载数据: 无 ) +│ │ │ ├── 根据主键更新 --> ( 难度等级: [0.7415, 0.7415) || 挂载数据: 无 ) +│ │ │ ├── 根据主键删除 --> ( 难度等级: [0.7415, 0.7416) || 挂载数据: qa: 2 ) +│ │ │ ├── 搜索文档 --> ( 难度等级: [0.7416, 0.7416) || 挂载数据: qa: 1 ) +│ │ │ └── 联合多个索引搜索 --> ( 难度等级: [0.7416, 0.7417) || 挂载数据: 无 ) +│ │ ├── 使用RestTemplate访问ES --> ( 难度等级: [0.7417, 0.7419) || 挂载数据: qa: 1 ) +│ │ │ ├── 创建Book --> ( 难度等级: [0.7417, 0.7418) || 挂载数据: qa: 2 ) +│ │ │ └── 使用RestTemplate获取搜索结果 --> ( 难度等级: [0.7418, 0.7419) || 挂载数据: qa: 3 ) +│ │ └── Spring Data Elastic --> ( 难度等级: [0.7419, 0.7422) || 挂载数据: 无 ) +│ │ ├── 安装Spring Data --> ( 难度等级: [0.7419, 0.742) || 挂载数据: qa: 7 ) +│ │ ├── 编写Entity --> ( 难度等级: [0.742, 0.7421) || 挂载数据: qa: 2 ) +│ │ ├── 编写Dao --> ( 难度等级: [0.7421, 0.7422) || 挂载数据: 无 ) +│ │ └── 编写Controller --> ( 难度等级: [0.7422, 0.7422) || 挂载数据: qa: 1 ) +│ ├── Cache --> ( 难度等级: [0.7422, 0.7433) || 挂载数据: 无 ) +│ │ ├── 关于Cache --> ( 难度等级: [0.7422, 0.7424) || 挂载数据: 无 ) +│ │ │ ├── Cache的组件和概念 --> ( 难度等级: [0.7422, 0.7423) || 挂载数据: 无 ) +│ │ │ ├── Cache的单体应用 --> ( 难度等级: [0.7423, 0.7423) || 挂载数据: qa: 1 ) +│ │ │ ├── 使用专有的Cache服务器 --> ( 难度等级: [0.7423, 0.7424) || 挂载数据: 无 ) +│ │ │ └── 使用一二级缓存服务器 --> ( 难度等级: [0.7424, 0.7424) || 挂载数据: 无 ) +│ │ ├── Spring Boot Cache --> ( 难度等级: [0.7424, 0.7426) || 挂载数据: 无 ) +│ │ ├── 注释驱动缓存 --> ( 难度等级: [0.7426, 0.7428) || 挂载数据: 无 ) +│ │ │ ├── @Cacheable --> ( 难度等级: [0.7426, 0.7426) || 挂载数据: qa: 1 ) +│ │ │ ├── Key生成器 --> ( 难度等级: [0.7426, 0.7427) || 挂载数据: qa: 5 ) +│ │ │ ├── @CachePut --> ( 难度等级: [0.7427, 0.7427) || 挂载数据: 无 ) +│ │ │ ├── @CacheEvict --> ( 难度等级: [0.7427, 0.7427) || 挂载数据: 无 ) +│ │ │ ├── @Caching --> ( 难度等级: [0.7427, 0.7427) || 挂载数据: 无 ) +│ │ │ └── @CacheConfig --> ( 难度等级: [0.7427, 0.7428) || 挂载数据: 无 ) +│ │ ├── 使用Redis Cache --> ( 难度等级: [0.7428, 0.743) || 挂载数据: 无 ) +│ │ │ ├── 集成Redis缓存 --> ( 难度等级: [0.7428, 0.7428) || 挂载数据: 无 ) +│ │ │ ├── 禁止缓存 --> ( 难度等级: [0.7428, 0.7429) || 挂载数据: 无 ) +│ │ │ └── 定制缓存 --> ( 难度等级: [0.7429, 0.743) || 挂载数据: 无 ) +│ │ ├── Redis缓存原理 --> ( 难度等级: [0.743, 0.7431) || 挂载数据: 无 ) +│ │ └── 实现Redis两级缓存 --> ( 难度等级: [0.7431, 0.7433) || 挂载数据: 无 ) +│ │ ├── 实现TwoLevelCacheManager --> ( 难度等级: [0.7431, 0.7432) || 挂载数据: 无 ) +│ │ ├── 创建RedisAndLocalCache --> ( 难度等级: [0.7432, 0.7432) || 挂载数据: 无 ) +│ │ ├── 缓存同步说明 --> ( 难度等级: [0.7432, 0.7433) || 挂载数据: 无 ) +│ │ └── 将代码组合在一起 --> ( 难度等级: [0.7433, 0.7433) || 挂载数据: 无 ) +│ ├── Spring Session --> ( 难度等级: [0.7433, 0.7444) || 挂载数据: 无 ) +│ │ ├── 水平扩展实现 --> ( 难度等级: [0.7433, 0.7439) || 挂载数据: qa: 2 ) +│ │ └── Spring Session --> ( 难度等级: [0.7439, 0.7444) || 挂载数据: 无 ) +│ │ ├── Spring Session介绍 --> ( 难度等级: [0.7439, 0.7442) || 挂载数据: qa: 10 ) +│ │ └── Nginx+Redis --> ( 难度等级: [0.7442, 0.7444) || 挂载数据: qa: 9 ) +│ ├── 监控Spring Boot应用 --> ( 难度等级: [0.7444, 0.7456) || 挂载数据: 无 ) +│ │ ├── 安装Acutator --> ( 难度等级: [0.7444, 0.7446) || 挂载数据: 无 ) +│ │ ├── HTTP跟踪 --> ( 难度等级: [0.7446, 0.7447) || 挂载数据: 无 ) +│ │ ├── 日志查看 --> ( 难度等级: [0.7447, 0.7448) || 挂载数据: qa: 2 ) +│ │ ├── 线程栈信息 --> ( 难度等级: [0.7448, 0.7449) || 挂载数据: 无 ) +│ │ ├── 内存信息 --> ( 难度等级: [0.7449, 0.7451) || 挂载数据: 无 ) +│ │ ├── 查看URL映射 --> ( 难度等级: [0.7451, 0.7452) || 挂载数据: 无 ) +│ │ ├── 查看Spring容器管理的Bean --> ( 难度等级: [0.7452, 0.7453) || 挂载数据: 无 ) +│ │ ├── 其他监控 --> ( 难度等级: [0.7453, 0.7454) || 挂载数据: 无 ) +│ │ └── 编写自己的监控信息 --> ( 难度等级: [0.7454, 0.7456) || 挂载数据: 无 ) +│ │ ├── 编写HealthIndicator --> ( 难度等级: [0.7454, 0.7455) || 挂载数据: qa: 10 ) +│ │ └── 自定义监控 --> ( 难度等级: [0.7455, 0.7456) || 挂载数据: qa: 2 ) +│ ├── Web开发 --> ( 难度等级: [0.7456, 0.7467) || 挂载数据: 无 ) +│ │ ├── Web基础 --> ( 难度等级: [0.7456, 0.7456) || 挂载数据: qa: 10 ) +│ │ ├── Servlet入门 --> ( 难度等级: [0.7456, 0.7457) || 挂载数据: qa: 6 ) +│ │ ├── Servlet开发 --> ( 难度等级: [0.7457, 0.7458) || 挂载数据: 无 ) +│ │ ├── Servlet进阶 --> ( 难度等级: [0.7458, 0.7459) || 挂载数据: qa: 1 ) +│ │ ├── JSP开发 --> ( 难度等级: [0.7459, 0.7459) || 挂载数据: qa: 10 ) +│ │ ├── MVC开发 --> ( 难度等级: [0.7459, 0.746) || 挂载数据: 无 ) +│ │ ├── MVC高级开发 --> ( 难度等级: [0.746, 0.7461) || 挂载数据: 无 ) +│ │ ├── 使用Filter --> ( 难度等级: [0.7461, 0.7461) || 挂载数据: qa: 2 ) +│ │ │ └── 修改响应 --> ( 难度等级: [0.7461, 0.7461) || 挂载数据: 无 ) +│ │ ├── 使用Listener --> ( 难度等级: [0.7461, 0.7462) || 挂载数据: 无 ) +│ │ ├── 部署 --> ( 难度等级: [0.7462, 0.7463) || 挂载数据: 无 ) +│ │ ├── 集成Filter --> ( 难度等级: [0.7463, 0.7464) || 挂载数据: 无 ) +│ │ ├── 使用Interceptor --> ( 难度等级: [0.7464, 0.7464) || 挂载数据: 无 ) +│ │ ├── 处理CORS --> ( 难度等级: [0.7464, 0.7465) || 挂载数据: 无 ) +│ │ ├── 异步处理 --> ( 难度等级: [0.7465, 0.7466) || 挂载数据: 无 ) +│ │ └── 使用WebSocket --> ( 难度等级: [0.7466, 0.7467) || 挂载数据: qa: 3 ) +│ ├── Spring开发 --> ( 难度等级: [0.7467, 0.7478) || 挂载数据: 无 ) +│ │ ├── IoC容器 --> ( 难度等级: [0.7467, 0.7472) || 挂载数据: 无 ) +│ │ │ ├── IoC原理 --> ( 难度等级: [0.7467, 0.7468) || 挂载数据: 无 ) +│ │ │ ├── 使用Annotation配置 --> ( 难度等级: [0.7468, 0.7469) || 挂载数据: 无 ) +│ │ │ ├── 定制Bean --> ( 难度等级: [0.7469, 0.747) || 挂载数据: 无 ) +│ │ │ ├── 使用Resource --> ( 难度等级: [0.747, 0.7471) || 挂载数据: qa: 2 ) +│ │ │ └── 注入配置 --> ( 难度等级: [0.7471, 0.7472) || 挂载数据: 无 ) +│ │ └── 集成第三方组件 --> ( 难度等级: [0.7472, 0.7478) || 挂载数据: 无 ) +│ │ ├── 集成JavaMail --> ( 难度等级: [0.7472, 0.7473) || 挂载数据: qa: 7 ) +│ │ ├── 集成JMS --> ( 难度等级: [0.7473, 0.7473) || 挂载数据: 无 ) +│ │ ├── 使用Scheduler --> ( 难度等级: [0.7473, 0.7474) || 挂载数据: qa: 1 ) +│ │ ├── 集成JMX --> ( 难度等级: [0.7474, 0.7475) || 挂载数据: 无 ) +│ │ ├── 集成Open API --> ( 难度等级: [0.7475, 0.7475) || 挂载数据: 无 ) +│ │ ├── 访问Redis --> ( 难度等级: [0.7475, 0.7476) || 挂载数据: 无 ) +│ │ ├── 集成Artemis --> ( 难度等级: [0.7476, 0.7477) || 挂载数据: qa: 3 ) +│ │ ├── 集成RabbitMQ --> ( 难度等级: [0.7477, 0.7477) || 挂载数据: qa: 3 ) +│ │ └── 集成Kafka --> ( 难度等级: [0.7477, 0.7478) || 挂载数据: 无 ) +│ ├── Spring Boot开发 --> ( 难度等级: [0.7478, 0.7489) || 挂载数据: 无 ) +│ │ ├── 使用开发者工具 --> ( 难度等级: [0.7478, 0.7479) || 挂载数据: qa: 1 ) +│ │ ├── 打包Spring Boot应用 --> ( 难度等级: [0.7479, 0.7481) || 挂载数据: 无 ) +│ │ ├── 使用Actuator --> ( 难度等级: [0.7481, 0.7482) || 挂载数据: 无 ) +│ │ ├── 使用Profiles --> ( 难度等级: [0.7482, 0.7483) || 挂载数据: 无 ) +│ │ ├── 使用Conditional --> ( 难度等级: [0.7483, 0.7485) || 挂载数据: 无 ) +│ │ ├── 加载配置文件 --> ( 难度等级: [0.7485, 0.7486) || 挂载数据: 无 ) +│ │ ├── 禁用自动配置 --> ( 难度等级: [0.7486, 0.7488) || 挂载数据: 无 ) +│ │ └── 添加Filter --> ( 难度等级: [0.7488, 0.7489) || 挂载数据: qa: 2 ) +│ └── Spring Cloud开发 --> ( 难度等级: [0.7489, 0.75) || 挂载数据: qa: 2 ) +└── 其他 --> ( 难度等级: [0.75, 1.0) || 挂载数据: 无 ) + ├── 其他类别标签问题 --> ( 难度等级: [0.75, 0.8333) || 挂载数据: qa: 10 ) + ├── 应用类问题 --> ( 难度等级: [0.8333, 0.9167) || 挂载数据: qa: 10 ) + └── 第三方包问题 --> ( 难度等级: [0.9167, 1.0) || 挂载数据: qa: 10 ) diff --git a/data/python_tree.txt b/data/python_tree.txt index 976ee8b..db8793f 100644 --- a/data/python_tree.txt +++ b/data/python_tree.txt @@ -1,3618 +1,3640 @@ -python --> ( 难度等级: 无 || 挂载数据: 无 ) -├── Python初阶 --> ( 难度等级: 无 || 挂载数据: 无 ) -│ ├── 预备知识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Python简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Python都能做什么 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 程序设计思想 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 安装Python --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Windows安装Python --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Linux安装Python --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── MacOS安装Python --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 运行方式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 以交互方式运行 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ └── 以脚本方式运行 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ ├── 常用开发工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── typing --- 类型提示支持 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── pydoc --- 文档生成器和在线帮助系统 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Python Development Mode --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Effects of the Python Development Mode --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── ResourceWarning Example --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Bad file descriptor error example --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── doctest --- 测试交互性的Python示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── unittest --- 单元测试框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── unittest.mock --- mock对象库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── unittest.mock上手指南 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 2to3 - 自动将Python 2 代码转为Python 3 代码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── test --- Python回归测试包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── test.support --- Utilities for the Python test suite --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── test.support.socket_helper --- Utilities for socket tests --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── test.support.script_helper --- Utilities for the Python execution tests --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── test.support.bytecode_helper --- Support tools for testing correct bytecode generation --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 编码规范 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 模块管理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── pip --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ ├── 基础语法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 缩进规则 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 建议使用4个空格 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 基础知识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 注释 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 如何编写注释 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ ├── 变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 变量的命名和使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 变量是标签 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) -│ │ │ ├── 语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 表达式语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 赋值语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── assert语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ │ ├── return语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── yield语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── raise语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── break语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── continue语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── import语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) -│ │ │ │ ├── global语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ │ └── nonlocal语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 标识符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 命名规则 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 运算与表达式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 代码风格 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 交互式解释器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 算法是什么 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 获取用户输入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 保存并执行程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 从命令提示符运行Python脚本 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 让脚本像普通程序一样 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 起步 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 搭建编程环境 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Python版本 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ │ │ ├── 运行Python代码片段 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ └── SublimeText简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 在不同操作系统中搭建Python编程环境 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 在Windows系统中搭建Python编程环境 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 在macOS系统中搭建Python编程环境 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 在Linux系统中搭建Python编程环境 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 运行HelloWorld程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 配置SublimeText以使用正确的Python版本 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ └── 运行程序hello_world.py --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ └── 从终端运行Python程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 在Windows系统中从终端运行Python程序 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 列表简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 修改、添加和删除元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 修改列表元素 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ │ │ │ ├── 在列表中添加元素 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ │ └── 从列表中删除元素 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 组织列表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 使用方法sort对列表永久排序 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ │ │ ├── 使用函数sorted对列表临时排序 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ ├── 倒着打印列表 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ └── 确定列表的长度 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 使用列表时避免索引错误 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 测试代码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 测试函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 函数定义def --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 参数var --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 返回值return --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 参数传递 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 函数调用 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 函数递归 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 函数编写风格 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 调用函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 函数的参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 递归函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── None值 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 调用栈 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 局部和全局作用域 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 局部变量不能在全局作用域内使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 局部作用域不能使用其他局部作用域内的变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 全局变量可以在局部作用域中读取 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 把函数视作对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 可调用对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 用户定义的可调用类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 函数内省 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 从定位参数到仅限关键字参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 获取关于参数的信息 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 支持函数式编程的包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 传递实参 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 位置实参 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 关键字实参 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 默认值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 等效的函数调用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 返回值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 返回简单值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 让实参变成可选的 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 返回字典 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 传递列表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 在函数中修改列表 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ └── 禁止函数修改列表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 传递任意数量的实参 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用任意数量的关键字实参 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 导入特定的函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用as给函数指定别名 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── 使用as给模块指定别名 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 导入模块中的所有函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 函数编写指南 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 编写可接受任意数量参数的函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 编写只接受关键字参数的函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 将元数据信息附加到函数参数上 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 从函数中返回多个值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 定义带有默认参数的函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 定义匿名或内联函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 在匿名函数中绑定变量的值 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 让带有N个参数的可调用对象以较少的参数形式调用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 用函数替代只有单个方法的类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 在回调函数中携带额外的状态 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 内联回调函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 访问定义在闭包内的变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 类定义class --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ ├── 作用域和命名空间 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 属性和方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 模拟数值类型 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 字符串表示形式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 自定义的布尔值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 类编码风格 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 初探类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 类定义语法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 类对象 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 方法对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 补充说明 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 私有变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 生成器表达式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 创建自定义类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 再谈隐藏 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 类的命名空间 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 指定超类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 深入探讨继承 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 多个超类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 接口和内省 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Python文化中的接口和协议 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Python喜欢序列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用猴子补丁在运行时实现协议 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Alex Martelli的水禽 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 定义抽象基类的子类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 标准库中的抽象基类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 定义并使用一个抽象基类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Tombola子类的测试方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Python使用register的方式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 鹅的行为有可能像鸭子 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 抽象基类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 导入类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 导入单个类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 在一个模块中存储多个类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 从一个模块中导入多个类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 导入模块中的所有类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用别名 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 自定义工作流程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Python标准库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 顺序语句结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 条件和分支 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── if --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── if-else语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── if-elif-else结构 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 省略else代码块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用if语句处理列表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 检查特殊元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 确定列表不是空的 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ │ └── 设置if语句的格式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── elif --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── else --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 条件判断 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 这正是布尔值的用武之地 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 代码块嵌套 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 字典列表 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 在字典中存储列表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 在字典中存储字典 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 检查是否相等 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 检查是否相等时忽略大小写 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 数值比较 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 检查多个条件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 检查特定值是否包含在列表中 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 布尔表达式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 循环 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── for --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ │ ├── while --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── break --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── continue --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 循环判断 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 迭代字典 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 一些迭代工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 跳出循环 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 循环中的else子句 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── 数据类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 整型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 浮点型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 布尔型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 单引号字符串以及对引号转义 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 拼接字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 字符串表示str和repr --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── 长字符串、原始字符串和字节 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 字符串基本操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 设置字符串的格式:精简版 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ │ └── 替换字段名 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用方法修改字符串的大小写 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用制表符或换行符来添加空白 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 删除空白 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用字符串时避免语法错误 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ └── 字符串编码转换 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 使用encode方法编码 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ └── 使用decode方法解码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── datetime --- 基本的日期和时间类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── zoneinfo --- IANA时区支持 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── calendar --- 日历相关函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── collections --- 容器数据类型 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── collections.abc --- 容器的抽象基类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── heapq --- 堆队列算法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── bisect --- 数组二分查找算法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── array --- 高效的数值数组 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── weakref --- 弱引用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── types --- 动态类型创建和内置类型名称 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── copy --- 浅层 (shallow) 和深层 (deep) 复制操作 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── pprint --- 数据美化输出 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── reprlib --- 另一种repr实现 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── enum --- 对枚举的支持 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── graphlib --- Functionality to operate with graph-like structures --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 布尔类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 数据类型转换 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 内置类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 列表:list --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 函数list --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 基本的列表操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 遍历整个列表 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ │ ├── 深入研究循环 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ │ │ │ ├── 在for循环中执行更多操作 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ │ │ └── 在for循环结束后执行一些操作 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ ├── 避免缩进错误 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ │ │ ├── 忘记缩进 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 忘记缩进额外的代码行 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 不必要的缩进 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ │ │ ├── 循环后不必要的缩进 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ └── 遗漏了冒号 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ ├── 创建数值列表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 使用range创建数字列表 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ │ │ │ ├── 对数字列表执行简单的统计计算 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ │ │ └── 列表解析 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ │ └── 设置代码格式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 格式设置指南 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 行长 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 空行 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 其他格式设置指南 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 列表方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 列表数据类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 增强的赋值操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 序列数据类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 引用 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 访问列表元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 索引从0而不是1开始 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用列表中的各个值 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 遍历切片 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 复制列表 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 列表的创建和删除 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 对列表进行统计计算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 对列表进行排序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 字典:dict --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── 访问字典中的值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 添加键值对 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 先创建一个空字典 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 修改字典中的值 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 删除键值对 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 由类似对象组成的字典 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用get来访问值 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── 遍历字典 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 遍历所有键值对 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ │ ├── 遍历字典中的所有键 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ │ ├── 按特定顺序遍历字典中的所有键 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 遍历字典中的所有值 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 访问字典 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 字典推导式 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 元组:tuple --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 定义元组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 遍历元组中的所有值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 修改元组变量 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 访问元组元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 修改元组 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ └── 元组推导式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 集合:set --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 创建集合 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ └── 集合的交集、并集和差集运算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 整型:int --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ └── 字符串:str --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ └── 常用内置函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── help --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── input --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── print --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── range --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ ├── format --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ ├── len --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── sorted --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ ├── open --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── dir --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── enumerate/zip --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── type/isinstance --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── min/max/sum --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ └── abs/round/pow/divmod --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 进阶语法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 列表推导式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 三元表达式 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 算术转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 原子 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 原型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── await表达式 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 幂运算符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 一元算术和位运算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 二元算术运算符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 移位运算 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 布尔运算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 赋值表达式 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 条件表达式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 表达式列表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 求值顺序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 运算符优先级 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 断言 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── with-as --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 异常捕获预处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── try-catch-finally --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 异常捕获 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 不用提供参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 多个except子句 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 一箭双雕 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 捕获对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 一网打尽 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 万事大吉时 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 最后 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 字符串方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── find --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ ├── index --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ ├── join --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── lower --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── replace --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── split --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── strip --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── translate --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── upper --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── center --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 判断字符串是否满足特定的条件 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── lambda函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 迭代器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 迭代器协议 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 从迭代器创建序列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 生成器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建生成器 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ │ ├── 递归式生成器 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 通用生成器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 生成器的方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 模拟生成器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 装饰器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 闭包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 打开文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 文件基本方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 读取和写入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用管道重定向输出 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 关闭文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ │ └── 文件内容迭代 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 每次一个字符(或字节) --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 每次一行 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 读取所有内容 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ ├── 使用fileinput实现延迟行迭代 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 文件迭代器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 常用标准库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── datetime --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── json --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── math --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── os --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ ├── random --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) -│ │ │ ├── re --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── sys --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ ├── time --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── urllib --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── fileinput --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 其他有趣的标准模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 字符编码与解码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 理解内码和字节码的概念 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 面向对象编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 类和对象的概念 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 类成员 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 面向对象三要素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 封装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 继承 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 子类的方法__init__ --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 重写父类的方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 模拟实物 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 多态 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 创建类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 抽象类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 访问限制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 获取对象信息 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ └── 其他 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 命令行与环境 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 命令行 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 接口选项 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 通用选项 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 其他选项 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ └── 不应当使用的选项 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 环境变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 调试模式变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 在Unix平台中使用Python --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 获取最新版本的Python --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 在Linux中 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) -│ │ │ ├── 在FreeBSD和OpenBSD上 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 在OpenSolaris系统上 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 构建Python --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 杂项 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 在Windows上使用Python --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 完整安装程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 安装步骤 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 删除MAX_PATH限制 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 无UI安装 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 免下载安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 修改安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Microsoft Store包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── nuget.org安装包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 可嵌入的包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Python应用程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 嵌入Python --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 替代捆绑包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 配置Python --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 查找Python可执行文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── UTF-8 模式 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ ├── 适用于Windows的Python启动器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 入门 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 从虚拟环境 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 从脚本 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 从文件关联 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Shebang Lines --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── shebang lines的参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 自定义 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 通过INI文件自定义 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 自定义默认的Python版本 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 诊断 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 查找模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 附加模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── PyWin32 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── cx_Freeze --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── WConio --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 在Windows上编译Python --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ └── 其他平台 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ ├── 在苹果系统上使用Python --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 获取和安装MacPython --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 如何运行Python脚本 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 运行有图形界面的脚本 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 配置 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 提取常量 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ │ └── 配置文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── IDE --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── 安装额外的Python包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Mac上的图形界面编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 在Mac上分发Python应用程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 其他资源 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 编辑器和集成开发环境 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ ├── Python解释器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 调用解释器 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 传入参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 交互模式 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ └── 解释器的运行环境 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── 源文件的字符编码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Python速览 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Python用作计算器 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 数字 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── 走向编程的第一步 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 其他流程控制工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── range函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── pass语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 定义函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 向函数传递信息 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 实参和形参 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 函数定义详解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 默认值参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 关键字参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 特殊参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 位置或关键字参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 仅位置参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 仅限关键字参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 函数示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 任意实参列表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 解包实参列表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Lambda表达式 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 文档字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 函数注解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 小插曲:编码风格 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 数据结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 列表详解 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 用列表实现堆栈 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 用列表实现队列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 嵌套的列表推导式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── del语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 循环的技巧 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 深入条件控制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 序列和其他类型的比较 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 序列构成的数组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 内置序列类型概览 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 元组不仅仅是不可变的列表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 序列的增量赋值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── list.sort方法和内置函数sorted --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 用bisect来管理已排序的序列 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 当列表不是首选时 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 文本和字节序列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 字节概要 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 基本的编解码器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 处理文本文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 为了正确比较而规范化Unicode字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Unicode文本排序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Unicode数据库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 支持字符串和字节序列的双模式API --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ ├── 模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 模块详解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 以脚本方式执行模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 模块搜索路径 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── “已编译的” Python文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 标准模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── dir函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 从包中导入 * --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 子包参考 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 多目录中的包 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ ├── 安装第三方模块 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── Pillow --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── requests --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── chardet --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── psutil --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── cmath和复数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 回到未来 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 模块就是程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 模块是用来下定义的 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 让模块可用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 输入与输出 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 更复杂的输出格式 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 格式化字符串字面值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 字符串format方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 手动格式化字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 旧式字符串格式化方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 读写文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 文件对象的方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用json保存结构化数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 文件读写过程 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ ├── 用shelve模块保存变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 用pprint.pformat函数保存变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用input函数输入 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ └── 使用print函数输出 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) -│ ├── 错误和异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 句法错误 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 处理异常 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 触发异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 异常链 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 用户自定义异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 定义清理操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 预定义的清理操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 让事情沿你指定的轨道出错 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) -│ │ │ └── 自定义的异常类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 异常之禅 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 不那么异常的情况 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ ├── 标准库简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 操作系统接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 文件通配符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 命令行参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 错误输出重定向和程序终止 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 字符串模式匹配 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 数学 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 互联网访问 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 日期和时间 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 数据压缩 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 性能测量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 质量控制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 自带电池 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 格式化输出 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 模板 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用二进制数据记录格式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 多线程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 日志 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 弱引用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 用于操作列表的工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 十进制浮点运算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 交互式编辑和编辑历史 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Tab补全和编辑历史 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 默认交互式解释器的替代品 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 浮点算术:争议和限制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 表示性错误 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 其他实现 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 标注 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 可用性注释 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 词法分析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 行结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 其他形符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 字面值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 运算符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 赋值运算符 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 比较(关系)运算符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 逻辑运算符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 位运算符 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ └── 分隔符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 数据模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 标准类型层级结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 特殊方法名称 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 协程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 生成器如何进化成协程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 用作协程的生成器的基本行为 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 预激协程的装饰器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 让协程返回值 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 使用yield from --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── yield from的意义 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 使用案例:使用协程做离散事件仿真 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 执行模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 程序的结构 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ └── 命名与绑定 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 导入系统 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── importlib --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 搜索 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 加载 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 基于路径的查找器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 替换标准导入系统 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ ├── 包相对导入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 有关__main__的特殊事项 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ └── 参考文献 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 复合语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── while语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── try语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── with语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── 类定义 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 顶级组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 完整的Python程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用文本编辑器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Python代码运行助手 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 文件输入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 交互式输入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 表达式输入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 完整的语法规范 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 内置常量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 由site模块添加的常量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 内置类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 逻辑值检测 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 布尔运算 --- and, or, not --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ ├── 比较 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 数字类型 --- int, float, complex --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ ├── 迭代器类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 序列类型 --- list, tuple, range --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 文本序列类型 --- str --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 二进制序列类型 --- bytes, bytearray, memoryview --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 集合类型 --- set, frozenset --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 映射类型 --- dict --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 上下文管理器类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Generic Alias Type --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 其他内置类型 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ ├── 内置异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 基类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 警告 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── 异常层次结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 文本处理服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── string --- 常见的字符串操作 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ ├── re --- 正则表达式操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── difflib --- 计算差异的辅助工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── textwrap --- 文本自动换行与填充 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── unicodedata --- Unicode数据库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── stringprep --- 因特网字符串预备 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── readline --- GNU readline接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ └── rlcompleter --- GNU readline的补全函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 二进制数据服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── struct --- 将字节串解读为打包的二进制数据 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── codecs --- 编解码器注册和相关基类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 函数式编程模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── itertools --- 为高效循环而创建迭代器的函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── functools --- 高阶函数和可调用对象上的操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── operator --- 标准运算符替代函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 数据持久化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── pickle --- Python对象序列化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── copyreg --- 注册配合pickle模块使用的函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── shelve --- Python对象持久化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── marshal --- 内部Python对象序列化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── dbm --- Unix "数据库" 接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── sqlite3 --- SQLite数据库DB-API 2.0 接口模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 文件格式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── csv --- CSV文件读写 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── configparser --- 配置文件解析器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── netrc --- netrc文件处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── xdrlib --- 编码与解码XDR数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── plistlib --- 生成与解析Apple .plist文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 加密服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── hashlib --- 安全哈希与消息摘要 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── hmac --- 基于密钥的消息验证 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── secrets --- 生成管理密码的安全随机数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 通用操作系统服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── os --- 多种操作系统接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── io --- 处理流的核心工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── time --- 时间的访问和转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── argparse --- 命令行选项、参数和子命令解析器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── getopt --- C风格的命令行选项解析器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── logging --- Python的日志记录工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── logging.config --- 日志记录配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── logging.handlers --- 日志处理程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── getpass --- 便携式密码输入工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── curses --- 终端字符单元显示的处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── curses.textpad --- 用于curses程序的文本输入控件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── curses.ascii --- 用于ASCII字符的工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── curses.panel --- curses的面板栈扩展 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── platform --- 获取底层平台的标识数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── errno --- 标准errno系统符号 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ └── ctypes --- Python的外部函数库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 并发执行 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── threading --- 基于线程的并行 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── multiprocessing --- 基于进程的并行 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── multiprocessing.shared_memory --- 可从进程直接访问的共享内存 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── concurrent包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── concurrent.futures --- 启动并行任务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── subprocess --- 子进程管理 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── sched --- 事件调度器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── queue --- 一个同步的队列类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── contextvars --- 上下文变量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── _thread --- 底层多线程API --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ ├── 网络和进程间通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── asyncio --- 异步I/O --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── socket --- 底层网络接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── ssl --- 套接字对象的TLS/SSL包装器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── select --- 等待I/O完成 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── selectors --- 高级I/O复用库 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── asyncore --- 异步套接字处理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── asynchat --- 异步套接字指令/响应处理程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── signal --- 设置异步事件处理程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── mmap --- 内存映射文件支持 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 互联网数据处理 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── email --- 电子邮件与MIME处理包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── json --- JSON编码和解码器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── mailcap --- Mailcap文件处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── mailbox --- 操作多种格式的邮箱 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── mimetypes --- 映射文件名到MIME类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── base64 --- Base16, Base32, Base64, Base85 数据编码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── binascii --- 二进制和ASCII码互转 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ └── quopri --- 编码与解码经过MIME转码的可打印数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 结构化标记处理工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── html --- 超文本标记语言支持 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── html.parser --- 简单的HTML和XHTML解析器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── html.entities --- HTML一般实体的定义 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── XML处理模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── xml.etree.ElementTree --- ElementTree XML API --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── xml.dom --- 文档对象模型API --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── xml.dom.minidom --- Minimal DOM implementation --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── xml.dom.pulldom --- 支持构建部分DOM树 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── xml.sax --- 支持SAX2 解析器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── xml.sax.handler --- SAX处理程序的基类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── xml.sax.saxutils --- SAX工具集 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── xml.sax.xmlreader --- 用于XML解析器的接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── xml.parsers.expat --- Fast XML parsing using Expat --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 互联网协议和支持 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── webbrowser --- 方便的Web浏览器控制器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── cgi --- Common Gateway Interface support --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── cgitb --- 用于CGI脚本的回溯管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── wsgiref --- WSGI Utilities and Reference Implementation --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── urllib --- URL处理模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── urllib.request --- 用于打开URL的可扩展库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── urllib.response --- urllib使用的Response类 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── urllib.parse用于解析URL --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── urllib.error --- urllib.request引发的异常类 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── urllib.robotparser --- robots.txt语法分析程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── http --- HTTP模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── http.client --- HTTP协议客户端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── ftplib --- FTP协议客户端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── poplib --- POP3 协议客户端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── imaplib --- IMAP4 协议客户端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── nntplib --- NNTP protocol client --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── smtplib ---SMTP协议客户端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── smtpd --- SMTP服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── telnetlib -- Telnet客户端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── uuid --- UUID objects according to RFC 4122 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── socketserver --- A framework for network servers --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ ├── http.server --- HTTP服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── http.cookies --- HTTP状态管理 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── http.cookiejar —— HTTP客户端的Cookie处理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── xmlrpc --- XMLRPC服务端与客户端模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── xmlrpc.client --- XML-RPC客户端访问 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── xmlrpc.server --- 基本XML-RPC服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── ipaddress --- IPv4/IPv6 操作库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 多媒体服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── audioop --- 处理原始音频数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── aifc --- 读写AIFF和AIFC文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── sunau --- 读写Sun AU文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── wave --- 读写WAV格式文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── chunk --- 读取IFF分块数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── colorsys --- 颜色系统间的转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── imghdr --- 推测图像类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── sndhdr --- 推测声音文件的类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── ossaudiodev --- Access to OSS-compatible audio devices --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ ├── 国际化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── gettext --- 多语种国际化服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── locale --- 国际化服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 程序框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── turtle --- 海龟绘图 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ ├── cmd --- 支持面向行的命令解释器 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ └── shlex --- Simple lexical analysis --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Tk图形用户界面(GUI) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── tkinter --- Tcl/Tk的Python接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── tkinter.colorchooser --- 颜色选择对话框 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── tkinter.font --- Tkinter字体封装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Tkinter对话框 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── tkinter.messagebox --- Tkinter消息提示 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── tkinter.scrolledtext --- 滚动文字控件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── tkinter.dnd --- 拖放操作支持 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── tkinter.ttk --- Tk主题部件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── tkinter.tix --- Extension widgets for Tk --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── IDLE --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ └── 其他图形用户界面(GUI)包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 调试和分析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 审计事件表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── bdb --- Debugger framework --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── faulthandler --- Dump the Python traceback --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── pdb --- Python的调试器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Python Profilers分析器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── timeit --- 测量小代码片段的执行时间 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── trace --- 跟踪Python语句执行 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── tracemalloc --- 跟踪内存分配 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 抛出异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 取得回溯字符串 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── Mu的调试器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 软件打包和分发 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── distutils --- 构建和安装Python模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── ensurepip --- Bootstrapping the pip installer --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── venv --- 创建虚拟环境 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── zipapp --- Manage executable Python zip archives --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Python运行时服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── sysconfig --- Provide access to Python's configuration information --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── builtins --- 内建对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── __main__ --- 顶层脚本环境 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── warnings --- Warning control --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── dataclasses --- 数据类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── contextlib --- 为with语句上下文提供的工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── abc --- 抽象基类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── atexit --- 退出处理器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── traceback --- 打印或检索堆栈回溯 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── __future__ --- Future语句定义 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── gc --- 垃圾回收器接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── inspect --- 检查对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── site —— 指定域的配置钩子 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 自定义Python解释器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── code --- 解释器基类 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ └── codeop --- 编译Python代码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 导入模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── zipimport --- 从Zip存档中导入模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── pkgutil --- 包扩展工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── modulefinder --- 查找脚本使用的模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── runpy --- Locating and executing Python modules --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── importlib --- import的实现 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── Using importlib.metadata --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ ├── Python语言服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── parser --- 访问Python解析树 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── ast --- 抽象语法树 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── symtable --- Access to the compiler's symbol tables --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── symbol --- 与Python解析树一起使用的常量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── token --- 与Python解析树一起使用的常量 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── keyword --- 检验Python关键字 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── tokenize --- 对Python代码使用的标记解析器 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── tabnanny --- 模糊缩进检测 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── pyclbr --- Python模块浏览器支持 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── py_compile --- 编译Python源文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── compileall --- Byte-compile Python libraries --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── dis --- Python字节码反汇编器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── pickletools --- pickle开发者工具集 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 杂项服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── formatter --- 通用格式化输出 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Windows系统相关模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── msilib --- Read and write Microsoft Installer files --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── msvcrt --- 来自MS VC++ 运行时的有用例程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── winreg --- Windows注册表访问 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── winsound --- Sound-playing interface for Windows --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Unix专有服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── posix --- 最常见的POSIX系统调用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── pwd --- 用户密码数据库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── spwd --- The shadow password database --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── grp --- 组数据库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── crypt --- Function to check Unix passwords --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ ├── termios --- POSIX风格的tty控制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── tty --- 终端控制功能 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── pty --- 伪终端工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── fcntl --- The fcntl and ioctl system calls --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── pipes --- 终端管道接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── resource --- Resource usage information --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ ├── nis --- Sun的NIS (黄页) 接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── Unix syslog库例程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 被取代的模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── optparse --- 解析器的命令行选项 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── imp --- Access the import internals --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 未创建文档的模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 平台特定模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Python基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 在交互式环境中输入表达式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 字符串连接和复制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 在变量中保存值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 变量名 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 第一个程序 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) -│ │ └── 程序剖析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── print函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── input函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 输出用户的名字 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── len函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ ├── 高级特性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 切片 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 迭代 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 列表生成式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 函数式编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 高阶函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── map/reduce --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ └── filter --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 返回函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 匿名函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 偏函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 面向对象高级编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用__slots__ --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用@property --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 定制类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 使用枚举类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── IO编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── StringIO和BytesIO --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 操作文件和目录 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 序列化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 进程和线程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 多进程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── ThreadLocal --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 进程vs. 线程 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ └── 分布式进程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 正则表达式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 常用内建模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── collections --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── base64 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── struct --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── hashlib --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── hmac --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── itertools --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── contextlib --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── XML --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── HTMLParser --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── virtualenv --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 图形界面 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 海龟绘图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 网络编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── TCP/IP简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── TCP编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── UDP编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 几个网络模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 模块socket --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 模块urllib和urllib2 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── SocketServer及相关的类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── Twisted --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 下载并安装Twisted --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ └── 编写Twisted服务器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 电子邮件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── SMTP发送邮件 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── POP3收取邮件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 访问数据库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用SQLite --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用MySQL --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 使用SQLAlchemy --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ ├── Web开发 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── HTTP协议简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── HTML简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── WSGI接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 使用Web框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 异步IO --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── asyncio --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── async/await --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── aiohttp --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 使用MicroPython --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 搭建开发环境 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 控制小车 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 遥控小车 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 遥控转向 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 当索引行不通时 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 字典的用途 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 抽象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 懒惰是一种美德 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 自定义函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 给函数编写文档 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) -│ │ ├── 参数魔法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 值从哪里来 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 我能修改参数吗 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 收集参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 分配参数 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── 递归 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── 两个经典案例:阶乘和幂 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── 另一个经典案例:二分查找 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ ├── 再谈抽象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 对象魔法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 关于面向对象设计的一些思考 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 开箱即用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 探索模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 模块包含什么 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用help获取帮助 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── 文档 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 使用源代码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 图形用户界面 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 创建GUI示例应用程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 初探 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 布局 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 事件处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 最终的程序 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── 使用其他GUI工具包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 数据库支持 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── Python数据库API --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 全局变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 连接和游标 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用SocketServer实现分叉和线程化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 使用select和poll实现异步I/O --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ ├── Python和Web --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 屏幕抓取 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Tidy和XHTML解析 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── Beautiful Soup --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用CGI创建动态网页 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 第一步:准备Web服务器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 第二步:添加!#行 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 第三步:设置文件权限 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── CGI安全风险 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 简单的CGI脚本 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用cgitb进行调试 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 使用模块cgi --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 简单的表单 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── Web服务:更高级的抓取 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── RSS和相关内容 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用XML-RPC进行远程过程调用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── SOAP --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 测试基础 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 先测试再编码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 准确的需求说明 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 做好应对变化的准备 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 测试四步曲 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 测试工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── doctest --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── unittest --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ └── 超越单元测试 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用PyChecker和PyLint检查源代码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 性能分析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 扩展Python --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 鱼和熊掌兼得 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 简单易行的方式:Jython和IronPython --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── 编写C语言扩展 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── SWIG --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 手工编写扩展 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ ├── 程序打包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Setuptools基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 打包 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 编译扩展 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 使用py2exe创建可执行程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 趣味编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 为何要有趣 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 编程柔术 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 原型设计 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 如果你已不胜其烦 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 如果你想深入学习 --> ( 难度等级: 高阶 || 挂载数据: qa: 10 ) -│ ├── Python编程基础 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 控制流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 布尔值 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 比较操作符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 布尔操作符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 二元布尔操作符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── not操作符 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 混合布尔和比较操作符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 控制流的元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 代码块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 程序执行 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 控制流语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── else语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── elif语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 恼人的循环 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 等价的while循环 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ └── 用sys.exit函数提前结束程序 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── 字符串操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 将字符串放入其他字符串 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 有用的字符串方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用ord和chr函数的字符的数值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 用pyperclip模块复制粘贴字符串 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 计算字符串的长度 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── 截取字符串 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── 分割、合并字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 检索字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 字母的大小写转换 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── 去除字符串中的空格和 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ └── 格式化字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 自动化任务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 输入验证 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── PyInputPlus模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 关键字参数min、max、greaterThan和lessThan --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 关键字参数blank --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 关键字参数limit、timeout和default --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 关键字参数allowRegexes和blockRegexes --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 将自定义验证函数传递给inputCustom --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 组织文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── shutil模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 遍历目录树 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 用zipfile模块压缩文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 从Web抓取信息 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 用requests模块从Web下载文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 将下载的文件保存到硬盘 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── HTML --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 用bs4模块解析HTML --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 用selenium模块控制浏览器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 处理Excel电子表格 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Excel文档 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 安装openpyxl模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 读取Excel文档 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ ├── 写入Excel文档 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ ├── 设置单元格的字体风格 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Font对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 公式 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 调整行和列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 处理Google电子表格 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 安装和设置EZSheets --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Spreadsheet对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 工作表对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 利用Google Sheets配额 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 处理PDF和Word文档 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── PDF文档 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── Word文档 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ └── 从Word文档中创建PDF --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 处理CSV文件和JSON数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── csv模块 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ └── json模块 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── 发送电子邮件和短信 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Gmail API发送和接收电子邮件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── SMTP --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 发送电子邮件 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── IMAP --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 用IMAP获取和删除电子邮件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用短信电子邮件网关发送短信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 用Twilio发送短信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 操作图像 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 计算机图像基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 用pillow操作图像 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 在图像上绘画 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 绘制形状 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 绘制文本 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 用GUI自动化控制键盘和鼠标 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 安装pyautogui模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 在macOS上设置无障碍应用程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 走对路 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 控制鼠标指针移动 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 控制鼠标交互 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 规划鼠标运动 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 处理屏幕 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 图像识别 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 获取窗口信息 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ ├── 控制键盘 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ ├── 设置GUI自动化脚本 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 复习PyAutoGUI的函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 显示消息框 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ ├── 序幕 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── Python数据模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 一摞Python风格的纸牌 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 特殊方法一览 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 把函数视作对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 使用一等函数实现设计模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 案例分析:重构“策略”模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── “命令”模式 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ ├── 面向对象惯用法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 对象引用、可变性和垃圾回收 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 变量不是盒子 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 默认做浅复制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 函数的参数作为引用时 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── del和垃圾回收 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Python对不可变类型施加的把戏 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 符合Python风格的对象 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 对象表示形式 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 再谈向量类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 备选构造方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── classmethod与staticmethod --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 格式化显示 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 可散列的Vector2d --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Python的私有属性和“受保护的”属性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用__slots__类属性节省空间 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 覆盖类属性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 继承的优缺点 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 子类化内置类型很麻烦 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 多重继承的真实应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 一个现代示例:Django通用视图中的混入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 正确重载运算符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 运算符重载基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 重载向量加法运算符 + --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 重载标量乘法运算符 * --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 增量赋值运算符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 控制流程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用期物处理并发 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 阻塞型I/O和GIL --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用concurrent.futures模块启动进程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 实验Executor.map方法 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ └── 显示下载进度并处理错误 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 使用asyncio包处理并发 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 避免阻塞型调用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 改进asyncio下载脚本 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 使用asyncio包编写服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 元编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 动态属性和特性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用动态属性转换数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用特性验证属性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 特性全解析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 定义一个特性工厂函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 处理属性删除操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 属性描述符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 描述符示例:验证属性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 覆盖型与非覆盖型描述符对比 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 方法是描述符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 描述符用法建议 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 描述符的文档字符串和覆盖删除操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 类元编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 类工厂函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 定制描述符的类装饰器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 导入时和运行时比较 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 元类基础知识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 定制描述符的元类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 元类的特殊方法__prepare__ --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 给函数添加一个包装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 编写装饰器时如何保存函数的元数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 对装饰器进行解包装 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ ├── 定义一个可接受参数的装饰器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 定义一个属性可由用户修改的装饰器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 定义一个能接收可选参数的装饰器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 利用装饰器对函数参数强制执行类型检查 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 在类中定义装饰器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 把装饰器定义成类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 把装饰器作用到类和静态方法上 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 编写装饰器为被包装的函数添加参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 利用装饰器给类定义打补丁 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 获取类属性的定义顺序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 定义一个能接受可选参数的元类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 在*args和**kwargs上强制规定一种参数签名 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 在类中强制规定编码约定 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 通过编程的方式来定义类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 在定义的时候初始化类成员 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 通过函数注解来实现方法重载 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 避免出现重复的属性方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 以简单的方式定义上下文管理器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 执行带有局部副作用的代码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 解析并分析Python源代码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 将Python源码分解为字节码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 数据编码与处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 读写CSV数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 读写JSON数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 解析简单的XML文档 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 以增量方式解析大型XML文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 将字典转换为XML --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 用命名空间来解析XML文档 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 同关系型数据库进行交互 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 读写二进制结构的数组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 读取嵌套型和大小可变的二进制结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 数据汇总和统计 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 并发 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 启动和停止线程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 判断线程是否已经启动 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 线程间通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 对临界区加锁 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 避免死锁 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 保存线程专有状态 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 创建线程池 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 实现简单的并行编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 如何规避GIL带来的限制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 定义一个Actor任务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 实现发布者/订阅者消息模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用生成器作为线程的替代方案 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 轮询多个线程队列 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 在UNIX上加载守护进程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 实用脚本和系统管理 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 通过重定向、管道或输入文件来作为脚本的输入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 终止程序并显示错误信息 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 解析命令行选项 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 在运行时提供密码输入提示 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 获取终端大小 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 执行外部命令并获取输出 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 创建和解包归档文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 通过名称来查找文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 读取配置文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 给脚本添加日志记录 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 给库添加日志记录 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 创建一个秒表计时器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 给内存和CPU使用量设定限制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 加载Web浏览器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── C语言扩展 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 利用ctypes来访问C代码 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 编写简单的C语言扩展模块 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── 编写一个可操作数组的扩展函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 在C扩展模块中管理不透明指针 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 在扩展模块中定义并导出C API --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 从C中调用Python --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── 在C扩展模块中释放GIL --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 混合使用C和Python环境中的线程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 用Swig来包装C代码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 用Cython来包装C代码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 用Cython来高效操作数组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 把函数指针转换为可调用对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 把以NULL结尾的字符串传给C库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 把Unicode字符串传递给C库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 把C字符串转换到Python中 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 同编码方式不确定的C字符串打交道 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 把文件名传给C扩展模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 把打开的文件传给C扩展模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 在C中读取文件型对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 从C中访问可迭代对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 排查段错误 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) -│ ├── 初识Python --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 搭建Python开发环境 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 开发环境概述 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ └── 运行已经编写好的.py文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ └── Python开发工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 使用自带的IDLE --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Python语言基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Python语法特点 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 注释规则 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── Python中的变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 理解Python中的变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 定义变量 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ └── 流程控制语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 程序结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 选择语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── if…else语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── if…elif…else语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── if语句的嵌套 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ └── 循环语句 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ └── 循环嵌套 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -├── Python中阶 --> ( 难度等级: 无 || 挂载数据: 无 ) -│ ├── 基本技能 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 时间日期处理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── time --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── datetime --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 数据文件读写 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── excel/csv/hdf/netCDF --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 数据库操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 数据库概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 数据库安装配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── SQL语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ ├── SQLite --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建数据库文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 操作SQLite --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── MySQL --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 下载安装MySQL --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 连接数据库 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 创建数据表 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 操作MySQL数据表 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── MongoDB --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ └── 数据库编程接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 连接对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 游标对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 操作系统和环境 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── OS/Sys --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 线程进程和协程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 基础概念 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 加锁和解锁 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── threading --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── multiprocessing --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── queue --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── gevent --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 源码打包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── pyinstaller --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 网络编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── socket --> ( 难度等级: 中阶 || 挂载数据: qa: 7 ) -│ │ │ ├── 与HTTP服务交互 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 创建服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── TCP服务器 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ │ └── UDP服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 通过CIDR地址生成对应的IP地址集 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── REST接口创建 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 远程调用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 远程方法调用 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ └── 通过XML-RPC远程调用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 不同Python解释器之间的交互 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 客户端认证 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Socket文件描述符传递 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 事件驱动的I/O --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 大型数组发送与接收 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 客户端/服务端架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 持久化存储 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 数据库基本操作和SQL --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Web应用:客户端/服务器计算 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 因特网 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 客户端/服务器架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 硬件客户端/服务器架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 软件客户端/服务器架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 银行出纳员作为服务器吗 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 客户端/服务器网络编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 套接字:通信端点 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 套接字 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 套接字地址:主机-端口对 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 面向连接的套接字与无连接的套接字 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Python中的网络编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── socket模块函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 套接字对象(内置)方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建TCP服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建TCP客户端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 执行TCP服务器和客户端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建UDP服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建UDP客户端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 执行UDP服务器和客户端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── socket模块属性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── *SocketServer模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建SocketServer TCP服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 创建SocketServer TCP客户端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── *Twisted框架介绍 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建Twisted Reactor TCP服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 创建Twisted Reactor TCP客户端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 相关模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 其他因特网客户端协议 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 发送邮件 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ └── smtplib --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Web应用开发 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Web开发基础知识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── HTML/HTML5/CSS --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 前端数据库和后台 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── MVC架构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── REST和Ajax --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Django --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Django简介 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) -│ │ │ ├── Django安装配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── DTL(Django Template Language) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Django路由定义 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Django请求数据解析 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Django数据库操作 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Django提交表单 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Django Rest Framework --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 部署日志与安全 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Django开发案例 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Web框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── “Hello World”应用(一个博客) --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 创建模型来添加数据库服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 设置数据库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Python应用shell --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 在Django中使用Python shell --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) -│ │ │ │ └── 测试数据模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Django管理应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 设置admin --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 使用admin --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 创建博客的用户界面 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建模板 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ │ ├── 创建URL模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 创建视图函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 改进输出 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 处理用户输入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 添加URLconf项 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 视图:处理用户输入 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ └── 跨站点请求伪造 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 表单和模型表单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Django表单简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 模型表单示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用ModelForm来生成HTML表单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 处理ModelForm数据 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 视图进阶 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── *改善外观 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── *中级Django应用:TweetApprover --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 安装Twython库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── URL结构 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) -│ │ │ │ ├── 数据模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 提交新推文以便审核 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 审核推文 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 资源 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Tornado --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Tornado简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Tornado安装配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Tornado提交表单 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Tornado模板 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Tornado数据库操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Tornado异步Web服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 外部服务认证(auth) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 部署日志与安全 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Tornado开发案例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Flask --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Flask简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 创建应用目录 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) -│ │ │ │ │ ├── 虚拟环境 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 在Python 3中创建虚拟环境 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 在Python 2中创建虚拟环境 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ ├── 使用虚拟环境 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 使用pip安装Python包 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 应用的基本结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 初始化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 路由和视图函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 一个完整的应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Web开发服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 动态路由 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 调试模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 命令行选项 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 请求–响应循环 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 应用和请求上下文 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 请求分派 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 请求对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ │ ├── 对象显示 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ │ │ │ └── 由字符串调用对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ └── 请求钩子 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ └── Flask扩展 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 模板 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Jinja2模板引擎 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 渲染模板 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ │ ├── 变量 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ │ │ │ ├── 匿名函数捕获变量值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ │ └── 访问闭包中定义的变量 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) -│ │ │ │ │ │ └── 控制结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 使用Flask-Bootstrap集成Bootstrap --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 自定义错误页面 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 链接 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ │ ├── 静态文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 使用Flask-Moment本地化日期和时间 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Web表单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 配置 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ ├── 表单类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 把表单渲染成HTML --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 在视图函数中处理表单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 重定向和用户会话 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ └── 闪现消息 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 数据库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── SQL数据库 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ │ │ ├── NoSQL数据库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 使用SQL还是NoSQL --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Python数据库框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 使用Flask-SQLAlchemy管理数据库 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ ├── 定义模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 关系 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ │ ├── 数据库操作 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ │ ├── 创建表 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ │ ├── 插入行 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ │ ├── 修改行 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ │ │ │ │ ├── 删除行 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ └── 查询行 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ │ ├── 在视图函数中操作数据库 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ ├── 集成Python shell --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 使用Flask-Migrate实现数据库迁移 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ ├── 创建迁移仓库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 创建迁移脚本 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 更新数据库 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ │ └── 添加几个迁移 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 电子邮件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 电子邮件系统组件和协议 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 发送电子邮件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Python和SMTP --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── smtplib.SMTP类方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 交互式SMTP示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── SMTP的其他内容 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 接收电子邮件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── POP和IMAP --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ ├── 交互式POP3示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── poplib.POP3类方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 客户端程序SMTP和POP3示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 交互式IMAP4示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ └── imaplib.IMAP4类中的常用方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 大型应用的结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 配置选项 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 应用包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 使用应用工厂函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 在蓝本中实现应用功能 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 应用脚本 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 需求文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 单元测试 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ └── blog应用的代码审查 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 创建数据库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 运行应用 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) -│ │ │ ├── Flask安装配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Flask实现HTTP请求与响应 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Flask cookie与session --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Flask模板 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Flask提交表单 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Flask数据库操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Bootstrap-Flask --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Flask开发REST Web服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 部署日志与安全 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Flask开发案例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 网站可视化 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── Echarts --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 网站高并发处理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Web客户端和服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Python Web客户端工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 统一资源定位符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── urlparse模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── urllib模块/包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用urllib2 HTTP验证的示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 将HTTP验证示例移植到Python 3中 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Web客户端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 一个简单的Web爬虫/蜘蛛/机器人 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 解析Web页面 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 可编程的Web浏览 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ └── Web(HTTP)服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Web编程:CGI和WSGI --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 帮助Web服务器处理客户端数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── CGI简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── CGI应用程序 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── cgi模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── cgitb模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 构建CGI应用程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 构建Web服务器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 建立表单页 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 生成结果页面 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 生成表单和结果页面 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 全面交互的Web站点 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 在CGI中使用Unicode --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 高级CGI --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── mulitipart表单提交和文件上传 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 多值字段 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── WSGI简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 动机(替代CGI) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 服务器集成 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 外部进程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── WSGI简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── WSGI服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 参考服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── WSGI应用示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 中间件及封装WSGI应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 在Python 3中使用WSGI --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 现实世界中的Web开发 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 云计算:Google App Engine --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 云计算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 云计算服务的层次 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ └── App Engine --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 沙盒和App Engine SDK --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 选择一个App Engine框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Python 2.7支持 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 一般差异 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 代码中的差异 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 将“Hello World”改成一个简单的博客 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 快速发现改动:30秒内将纯文本转成HTML --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 添加表单 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 添加Datastore服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 迭代改进 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 开发/SDK控制台 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 添加Memcache服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 添加用户服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Google账号验证 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 联合验证 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 远程API shell --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 问与答(Python实现) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用XMPP发送即时消息 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 处理图片 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 任务队列(非定期任务) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 配置app.yaml --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 其他任务创建选项 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── deferred包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Appstats进行分析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 在app.yaml中添加标准处理程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 添加自定义Admin Console页面 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 作为内置界面启用界面 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── URLfetch服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 问与答(无Python实现) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Cron服务(计划任务作业) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 预热请求 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── DoS保护 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 厂商锁定 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── Web服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Yahoo!金融股票报价服务器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── Twitter微博 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 社交网络 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 稍微长一点的API组合应用示例 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── 额外在线资源 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 网络爬虫 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 基础概念 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 什么是网络爬虫 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── HTML与DOM树分析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 常用网络爬虫工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 相关法律及注意事项 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── urllib --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 处理异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 捕获所有异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 自定义异常 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 抛出新的异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 异常重新抛出 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 警告信息 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 解析链接 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 分析Robots协议 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 正则表达式 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ ├── RE(Regular Expression ) --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 基础语法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 标签匹配常用规则 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 简介/动机 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 特殊符号和字符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用择一匹配符号匹配多个正则表达式模式 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ │ │ ├── 匹配任意单个字符 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ │ ├── 从字符串起始或者结尾或者单词边界匹配 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 创建字符集 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 限定范围和否定 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用闭包操作符实现存在性和频数匹配 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 表示字符集的特殊字符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用圆括号指定分组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 扩展表示法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 一些正则表达式示例 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ └── 更长的正则表达式示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Beautiful Soup --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Beautiful Soup简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 安装配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Beautiful Soup对象 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 元素定位 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 文档树遍历与搜索 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── lxml --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 安装配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── lxml.etree --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── XPath选择器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── find/findall --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── CSS选择器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 解析HTML --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── requests --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 安装配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 发送请求与HTTP请求类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 传递URL参数 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 响应内容 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 定制请求头 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 响应状态码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Cookie --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ ├── POST请求 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 身份认证 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 基本用法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 高级用法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Selenium --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── Selenium简介 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 安装配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 单元素定位(find_element_id/name/xpath) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 多元素定位(find_elements_id/name/xpath) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 常用方法和属性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 可管理属性创建 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ │ │ ├── 延迟计算属性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 属性的代理访问 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── 创建用于计算的属性 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 为属性添加安全保护机制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 键盘和鼠标操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── WebDriver API --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ └── 表单交互 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Scrapy框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Scrapy简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 安装配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Scrapy框架组成 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ ├── Item Pipeline --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Downloader --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Spiders --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Scheduler --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Scrapy框架介绍 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Scrapy入门 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── Selector的用法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Spider的用法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Downloader Middleware的用法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Spider Middleware的用法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Item Pipeline的用法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Scrapy对接Selenium --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── Scrapy对接Splash --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Scrapy通用爬虫 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ ├── Scrapyrt的使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Scrapy对接Docker --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Scrapy爬取新浪微博 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ ├── 数据存储 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 文件存储 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── TXT文本存储 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── JSON文件存储 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ └── CSV文件存储 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 数据库存储 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 关系型数据库存储 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── MySQL的存储 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── MongoDB存储 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Redis存储 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 渲染动态网页 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── WebKit/Selenium/headless/PhantomJS --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 表单交互处理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 超时异常处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── timeout --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 验证码处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 自动输入/OCR字符识别 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 高并发处理 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 多线程爬虫 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 开发环境配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Python 3的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Windows下的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Linux下的安装 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── Mac下的安装 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 请求库的安装 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── requests的安装 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── Selenium的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── ChromeDriver的安装 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── GeckoDriver的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── PhantomJS的安装 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── aiohttp的安装 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 解析库的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── lxml的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Beautiful Soup的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── pyquery的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── tesserocr的安装 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 数据库的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── MySQL的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── MongoDB的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── Redis的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 存储库的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── PyMySQL的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── PyMongo的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── redis-py的安装 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ └── RedisDump的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Web库的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Flask的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── Tornado的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── App爬取相关库的安装 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Charles的安装 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── mitmproxy的安装 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Appium的安装 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 爬虫框架的安装 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── pyspider的安装 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Scrapy的安装 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Scrapy-Splash的安装 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Scrapy-Redis的安装 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 部署相关库的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Docker的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Scrapyd的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Scrapyd-Client的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Scrapyd API的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Scrapyrt的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Gerapy的安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 爬虫基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── HTTP基本原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── URI和URL --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── 超文本 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── HTTP和HTTPS --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── HTTP请求过程 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ │ │ ├── 请求 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 响应 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 网页基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 网页的组成 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 网页的结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 节点树及节点间的关系 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 选择器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 爬虫的基本原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 爬虫概述 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 能抓怎样的数据 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ │ └── JavaScript渲染页面 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 会话和Cookies --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 静态网页和动态网页 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 无状态HTTP --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 常见误区 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 代理的基本原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 基本原理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 代理的作用 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 爬虫代理 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 代理分类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 常见代理设置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 基本库的使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 抓取猫眼电影排行 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 解析库的使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用XPath --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ └── 使用pyquery --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Ajax数据爬取 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 什么是Ajax --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── Ajax分析方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Ajax结果提取 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 分析Ajax爬取今日头条街拍美图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 动态渲染页面爬取 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Splash的使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Splash负载均衡配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 使用Selenium爬取淘宝商品 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 验证码的识别 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 图形验证码的识别 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 极验滑动验证码的识别 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 点触验证码的识别 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ └── 微博宫格验证码的识别 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 代理的使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 代理的设置 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 代理池的维护 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 付费代理的使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── ADSL拨号代理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 使用代理爬取微信公众号文章 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 模拟登录 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 模拟登录并爬取GitHub --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ │ └── Cookies池的搭建 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── App的爬取 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Charles的使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── mitmproxy的使用 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── mitmdump爬取“得到”App电子书 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ ├── Appium的基本使用 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Appium爬取微信朋友圈 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ └── Appium+mitmdump爬取京东商品 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── pyspider框架的使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── pyspider框架介绍 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── pyspider的基本使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── pyspider用法详解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 分布式爬虫 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 分布式爬虫原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Scrapy-Redis源码解析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Scrapy分布式实现 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Bloom Filter的对接 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 分布式爬虫的部署 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Scrapyd分布式部署 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── Scrapyd-Client的使用 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── Scrapyd对接Docker --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Scrapyd批量部署 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ └── Gerapy分布式管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 桌面应用开发 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Tkinter --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ ├── Tkinter简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 安装配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Tkinter模块 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Tkinter控件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 标准属性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 几何管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── PyQT --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── PyQT简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 安装配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── PyQT模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── PyQT布局管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── PyQT菜单和工具栏 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 事件和信号 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── PyQT对话框 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── PyQT控件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── PyQT拖拽与绘图 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── WxPython --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── WxPython简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 安装配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── WxPython常用类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── WxPython布局管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── WxPython事件处理 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ ├── WxPython对话框 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── WxPython组件 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── WxPython拖拽处理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── WxPython绘图API --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ └── 其他 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Python总览 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Python总体架构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Python源码组织 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── Python对象初探 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Python内的对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 对象的分类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 对象机制的基石—PyObject --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 定长对象和变长对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 类型对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 类型的类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 对象的创建 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 对象的多态性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 引用计数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 数字对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 整数对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── PyLongObject对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 小整数对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 大整数对象 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ ├── 数字格式化输出 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ ├── 进制转换 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── 数字运算 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 四舍五入运算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 浮点数运算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 复数运算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 分数运算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 大型数组运算 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 矩阵与线性代数运算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 字节到大整数的打包与解包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 无穷大与NaN --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ └── 随机数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 字符串 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 字符串对象解析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 字符串对象的intern机制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 字符串操作效率 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 字符串操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 字符串分割 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 删除不需要的字符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 字符串清理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 字符串对齐 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 字符串拼接 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 字符串插入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 字符串格式化 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 字符串匹配 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 字符串开头或结尾匹配 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 用Shell通配符匹配字符串 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 最短匹配 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 多行匹配 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── 字符串搜索 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 字符串搜索替换 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ └── 字符串忽略大小写的搜索替换 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 将Unicode文本标准化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 在正则表达式中使用Unicode字符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 令牌解析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 简单的递归下降分析器实现 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 字节字符串操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 数据结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 序列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 序列对象解析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 序列解压 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 序列去重并保持顺序 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 序列元素统计 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 过滤序列元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 序列元素名称映射 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 转换并计算数据 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 字典 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 字典对象解析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 字典映射 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 字典排序 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 字典运算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 字典查找 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 通过关键字排序字典 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 字典提取 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ └── 字典合并 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 可迭代对象操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 可迭代对象解压 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 保留最后N个元素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 记录分组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 查找最大或最小的N个元素 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 实现一个优先级队列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 命名切片 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 排序不支持原生比较的对象 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ ├── 迭代器与生成器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 迭代操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 手动遍历迭代器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 代理迭代 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 实现迭代协议 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 反向迭代 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 迭代器切片 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 跳过可迭代对象的开始部分 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 排列组合的迭代 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 序列上索引值迭代 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 多个序列迭代 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 集合元素的迭代 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 顺序迭代合并后的排序迭代对象 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 迭代器代替while无限循环 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 使用生成器创建新的迭代模式 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 带有外部状态的生成器函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 创建数据处理管道 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 展开嵌套的序列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 文件与I/O --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 读/写操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 读/写文本数据 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 读/写字节数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 读/写压缩文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── 文件操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 文件的写入 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 操作文件路径名 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 文件检查 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 文件列表获取 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 忽略文件名编码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 打印不合法的文件名 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 文件编码变更 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 在文本文件中写入字节 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 文件描述符包装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 创建临时文件和文件夹 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 文件迭代 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 二进制文件映射 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 创建和解压归档文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 文件查找 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 配置文件读取 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 关闭文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 打开文件时使用with语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) -│ │ │ ├── 写入文件内容 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ └── 读取文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) -│ │ ├── 使用分隔符或行终止符打印 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 字符串的I/O操作 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ ├── 可变缓冲区中二进制数据的读取 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 串行端口的数据通信 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 对象序列化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 数据编码及处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 数据读/写 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── CSV数据读/写 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── JSON数据读/写 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 二进制数组数据读/写 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 嵌套和可变长二进制数据读取 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── XML数据解析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 简单XML数据解析 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ │ ├── 解析XML文档 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 修改XML --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 字典转换为XML --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 与关系型数据库的交互 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 编码/解码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 十六进制数编码和解码 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ └── 编码/解码Base64数据 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ ├── 函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 函数定义 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 有默认参数的函数定义 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ └── 匿名或内联函数定义 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 函数的参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 接收任意数量参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 接收关键字参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 为参数增加元信息 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ └── 减少参数个数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 返回多个值的函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 类转换为函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 回调函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 有额外状态信息的回调函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 内联回调函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 函数的创建和调用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 创建一个函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) -│ │ │ └── 调用函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 参数传递 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 了解形式参数和实际参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 位置参数 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 关键字参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 为参数设置默认值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 可变参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 返回值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 变量的作用域 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 局部变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 全局变量 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ └── 匿名函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 元编程 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── 装饰器 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 函数添加装饰器 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 装饰器中保留函数元信息 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 解除装饰器 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 带参数的装饰器 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 装饰器自定义属性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 带可选参数的装饰器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 函数的类型检查 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 类中定义装饰器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 装饰器定义为类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 类和静态方法的装饰器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 给函数增加参数 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 扩充类的功能 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 元类 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ └── 元类定义可选参数 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 类的属性定义顺序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 强制参数签名 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 强制使用编程规约 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 以编程方式定义类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 初始化类的成员 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 利用注解实现方法重载 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 避免重复的属性方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 定义上下文管理器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 局部变量域中执行代码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Python源码解析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── Python字节码拆解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 并发编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 线程处理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 线程的启动与停止 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 线程判断 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 线程间通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 线程加锁 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 防止死锁 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 线程状态信息保存 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 创建线程池 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 并行编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Actor任务定义 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 消息发布/订阅模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 生成器代替线程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 线程队列轮询 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 守护进程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 脚本编程与系统管理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 脚本接收 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 终止程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 解析命令行选项 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 弹出密码输入提示 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── 执行外部命令 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 添加日志 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 脚本增加日志功能 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 函数库增加日志功能 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 实现计时器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 内存和CPU监测 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 启动Web浏览器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Python的内存管理机制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Python内存架构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 小块空间的内存池 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── block --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── pool --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── arena --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 内存池 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 循环引用的垃圾收集 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 三色标记模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── Python垃圾收集 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 可收集对象链表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 分代垃圾收集 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── Python中的标记—清除方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 性能优化与实践 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 优化的规则 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 先使程序可以正常工作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 从用户的角度进行 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 保证代码易读 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 优化策略 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 寻找其他原因 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ │ ├── 度量硬件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 编写速度测试代码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 查找瓶颈 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 剖析CPU使用情况 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 剖析内存使用情况 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 降低复杂度 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 测量回路复杂度 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 测量大O记号 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 简化 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ ├── 通用应用主题 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 因特网客户端编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 因特网客户端简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 文件传输 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 文件传输因特网协议 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 文件传输协议 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── ftplib.FTP类的方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 交互式FTP示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 客户端FTP程序示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── FTP的其他内容 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 网络新闻 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Usenet与新闻组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 网络新闻传输协议 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── nntplib.NNTP类方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 交互式NNTP示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 客户端程序NNTP示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── NNTP的其他内容 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 多线程编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── thread模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── threading模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Thread类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── threading模块的其他函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 单线程和多线程执行对比 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 多线程实践 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ │ ├── 图书排名示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 同步原语 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 锁示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 信号量示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 线程的替代方案 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── subprocess模块 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── multiprocessing模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── concurrent.futures模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── GUI编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Tkinter示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Label控件 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── Button控件 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── Label和Button控件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Label、Button和Scale控件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 偏函数应用示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 中级Tkinter示例 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ └── 其他GUI简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Tk接口扩展(Tix) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Python MegaWidgets(PMW) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── GTK+和PyGTK --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Tile/Ttk --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 数据库编程 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Python的DB-API --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 模块属性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Connection对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Cursor对象 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── 关系数据库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用数据库适配器的示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 数据库适配器示例应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── ORM --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 考虑对象,而不是SQL --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 员工角色数据库示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── SQLAlchemy --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ └── SQLObject --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 非关系数据库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── NoSQL介绍 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 相关文献 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── *Microsoft Office编程 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 使用Python进行COM客户端编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 客户端COM编程 --> ( 难度等级: 中阶 || 挂载数据: qa: 10 ) -│ │ │ │ └── 入门 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ ├── 入门示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Excel --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Word --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── PowerPoint --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── Outlook --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 中级示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Excel --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Outlook --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── PowerPoint --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 相关模块/包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 扩展Python --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 编写Python扩展 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 根据样板编写封装代码 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 编译 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ └── 导入并测试 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 相关主题 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ ├── SWIG --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Pyrex --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Cython --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Psyco --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── PyPy --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 嵌入Python --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Python中使用正则表达式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 正则表达式语法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 行定位符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 元字符 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 重复 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 字符类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 排除字符 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 选择字符 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 转义字符 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 分组 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ └── 在Python中使用正则 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ └── 使用re模块实现正则表达式操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 替换字符串 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── 使用正则表达式分割字符串 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ ├── 面向对象程序设计 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 面向对象概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 面向对象程序设计的特点 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ ├── 类的定义和使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 定义类 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 创建__init__方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 创建类的成员并访问 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 访问限制 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── 继承 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 继承的基本语法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 方法重写 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 派生类中调用基类的__init__方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ └── 模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 模块概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 自定义模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 创建模块 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ ├── 使用import语句导入模块 --> ( 难度等级: 初阶 || 挂载数据: qa: 9 ) -│ │ ├── 使用from…import语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ └── 模块搜索目录 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Python中的包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Python程序的包结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 以主程序的形式执行 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ └── 引用其他模块 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -├── Python高阶 --> ( 难度等级: 无 || 挂载数据: 无 ) -│ ├── 科学计算基础软件包NumPy --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── NumPy概述 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── NumPy的前世今生 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── NumPy数组vs Python列表 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── NumPy数组类型和属性 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 维、轴、秩 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ └── 广播和矢量化 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 安装配置 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 创建数组 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 操作数组 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 索引 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 切片 --> ( 难度等级: 高阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 改变数组结构 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 合并和拆分 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 复制 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 排序 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 查找 --> ( 难度等级: 高阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 筛选 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ └── 数组I/O --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ ├── 常用函数 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── np.nan和np.inf --> ( 难度等级: 高阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 函数命名空间 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 数学函数 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 统计函数 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 插值函数 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 多项式拟合函数 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ └── 自定义广播函数 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 掩码数组 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 创建掩码数组 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ └── 访问掩码数组 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 矩阵对象 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 创建矩阵 --> ( 难度等级: 高阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 矩阵特有属性 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ └── 矩阵乘法 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ └── 随机抽样子模块 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 随机数 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 随机抽样 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 正态分布 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ └── 伪随机数的深度思考 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ ├── 结构化数据分析工具Pandas --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Pandas概览 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Panda的特点 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 安装和使用 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 数据结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 索引数组Index --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 带标签的一维同构数组Series --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 带标签的二维异构表格DataFrame --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 基本操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 数据预览 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 数据选择 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 改变数据结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 改变数据类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 广播与矢量化运算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 行列级广播函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── 高级应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 分组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 聚合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 层次化索引 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 表级广播函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 日期时间索引对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 透视表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 数据可视化 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ └── 数据I/O --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 绘图库Matplotlib --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 安装配置 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── Matplotlib快速入门 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 画布 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 子图与子图布局 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 坐标轴与刻度的名称 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 图例和文本标注 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ └── 显示和保存 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 图形绘制 --> ( 难度等级: 高阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 曲线图 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 散点图 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 直方图 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 饼图 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 箱线图 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 绘制图像 --> ( 难度等级: 高阶 || 挂载数据: qa: 10 ) -│ │ │ └── 极坐标绘图 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ ├── 风格和样式 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 画布设置 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 子图布局 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 颜色 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 线条和点的样式 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 坐标轴 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 刻度 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 文本 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 图例 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ └── 网格设置 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ └── Matplotlib扩展 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 使用BaseMap绘制地图 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ └── 3D绘图工具包 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ ├── 科学计算工具包SciPy --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── SciPy概览 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ ├── 安装配置 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 数据插值 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 一维插值 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 二维插值 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ └── 离散数据插值到网格 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 曲线拟合 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 最小二乘法拟合 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 使用curve_fit函数拟合 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ └── 多项式拟合函数 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 傅里叶变换 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 时域到频域的转换 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 一维傅里叶变换的应用 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ └── 二维傅里叶变换的应用 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 图像处理 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 图像卷积 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 边缘检测 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 侵蚀和膨胀 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ └── 图像测量 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 积分 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 对给定函数的定积分 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 对给定样本的定积分 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ └── 二重定积分 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ ├── 非线性方程求解 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 非线性方程 --> ( 难度等级: 高阶 || 挂载数据: qa: 3 ) -│ │ │ └── 非线性方程组 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 线性代数 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 计算矩阵的行列式 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 求解逆矩阵 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 计算特征向量和特征值 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 矩阵的奇异值分解 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ └── 求解线性方程组 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 聚类 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── k-means聚类 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ └── 层次聚类 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ └── 空间计算 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 空间旋转的表述 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ └── 三维旋转 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ ├── 数据分析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Python基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 创建Python脚本 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 运行Python脚本 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 与命令行进行交互的几项技巧 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Python语言基础要素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 数值 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── 字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 正则表达式与模式匹配 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 日期 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 列表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 元组 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 字典 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 控制流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 读取文本文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建文本文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 脚本和输入文件在同一位置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 读取文件的新型语法 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 使用glob读取多个文本文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 写入文本文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 向first_script.py添加代码 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 写入CSV文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ └── print语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── CSV文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 筛选特定的行 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 行中的值满足某个条件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 行中的值属于某个集合 --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ │ │ └── 行中的值匹配于某个模式/ 正则表达式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 选取特定的列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 列索引值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 列标题 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 选取连续的行 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 添加标题行 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 读取多个CSV文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 从多个文件中连接数据 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ └── 计算每个文件中值的总和与均值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Excel文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 内省Excel工作簿 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 处理单个工作表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 读写Excel文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ └── 筛选特定行 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 读取工作簿中的所有工作表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 在所有工作表中筛选特定行 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 在所有工作表中选取特定列 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 在Excel工作簿中读取一组工作表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 处理多个工作簿 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 工作表计数以及每个工作表中的行列计数 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 从多个工作簿中连接数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 数据库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Python内置的sqlite3 模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 向表中插入新记录 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 更新表中记录 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── MySQL数据库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 向表中插入新记录 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 查询一个表并将输出写入CSV文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 更新表中记录 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 应用程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 为CSV文件中数据的任意数目分类计算统计量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 为文本文件中数据的任意数目分类计算统计量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 图与图表 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── matplotlib --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 条形图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 直方图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 折线图 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ │ ├── 散点图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 箱线图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── pandas --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── ggplot --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── seaborn --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 描述性统计与建模 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 数据集 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 葡萄酒质量 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 客户流失 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 葡萄酒质量 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 描述性统计 --> ( 难度等级: 高阶 || 挂载数据: qa: 6 ) -│ │ │ │ ├── 成对变量之间的关系和相关性 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用最小二乘估计进行线性回归 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 系数解释 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 自变量标准化 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 预测 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ └── 客户流失 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 逻辑斯蒂回归 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 系数解释 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ └── 预测 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 按计划自动运行脚本 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 任务计划程序(Windows系统) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── cron工具(macOS系统和Unix系统) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── cron表文件:一次性设置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 向cron表文件中添加cron任务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 从这里启航 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 更多的标准库模块和内置函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Python标准库(PSL):更多的标准模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 内置函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Python包索引(PyPI):更多的扩展模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── NumPy --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── SciPy --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── Scikit-Learn --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 更多的扩展包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 更多的数据结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 栈 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 队列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 树 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 从这里启航 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 准备工作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 本书内容 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 什么类型的数据 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 为何利用Python进行数据分析 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── Python作为胶水 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 解决“双语言”难题 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ └── 为何不使用Python --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 重要的Python库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── IPython与Jupyter --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── statsmodels --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 安装与设置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Windows --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Apple(OS X和macOS) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── GNU/Linux --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 安装及更新Python包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Python 2和Python --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 集成开发环境和文本编辑器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 社区和会议 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 快速浏览本书 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 代码示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 一次性模拟多次随机漫步 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 示例数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 导入约定 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 术语 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 内建数据结构、函数及文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 数据结构和序列 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 内建序列函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 命名空间、作用域和本地函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 返回多个值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 函数是对象 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 匿名(Lambda)函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 柯里化:部分参数应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 生成器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 错误和异常处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 文件与操作系统 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 字节与Unicode文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── NumPy基础:数组与向量化计算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── NumPy ndarray:多维数组对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 生成ndarray --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── ndarray的数据类型 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── NumPy数组算术 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 基础索引与切片 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 布尔索引 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 神奇索引 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 数组转置和换轴 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 通用函数:快速的逐元素数组函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用数组进行面向数组编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 将条件逻辑作为数组操作 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 数学和统计方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 布尔值数组的方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 排序 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ │ └── 唯一值与其他集合逻辑 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用数组进行文件输入和输出 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 线性代数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 伪随机数生成 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── pandas入门 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── pandas数据结构介绍 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── Series --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── DataFrame --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ └── 索引对象 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 基本功能 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 重建索引 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 轴向上删除条目 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 索引、选择与过滤 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 整数索引 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 算术和数据对齐 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 含有重复标签的轴索引 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 描述性统计的概述与计算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 数据载入、存储及文件格式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 文本格式数据的读写 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 分块读入文本文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 将数据写入文本格式 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 使用分隔格式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── JSON数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── XML和HTML:网络抓取 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 二进制格式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用HDF5格式 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ │ │ └── 读取Microsoft Excel文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 与Web API交互 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 与数据库交互 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 数据清洗与准备 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 处理缺失值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 过滤缺失值 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 补全缺失值 --> ( 难度等级: 高阶 || 挂载数据: qa: 8 ) -│ │ │ ├── 数据转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 删除重复值 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 使用函数或映射进行数据转换 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 替代值 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 重命名轴索引 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 离散化和分箱 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 检测和过滤异常值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 置换和随机抽样 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 计算指标/虚拟变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 字符串操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 字符串对象方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── pandas中的向量化字符串函数 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 数据规整:连接、联合与重塑 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 分层索引 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 重排序和层级排序 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 按层级进行汇总统计 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 使用DataFrame的列进行索引 --> ( 难度等级: 高阶 || 挂载数据: qa: 10 ) -│ │ │ ├── 联合与合并数据集 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 数据库风格的DataFrame连接 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 根据索引合并 --> ( 难度等级: 高阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── 沿轴向连接 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 联合重叠数据 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ └── 重塑和透视 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 使用多层索引进行重塑 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 将“长”透视为“宽” --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ └── 将“宽”透视为“长” --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 绘图与可视化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 简明matplotlib API入门 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 图片与子图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 颜色、标记和线类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 刻度、标签和图例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 注释与子图加工 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 将图片保存到文件 --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ │ └── matplotlib设置 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ └── 其他Python可视化工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 数据聚合与分组操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── GroupBy机制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 遍历各分组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 选择一列或所有列的子集 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用函数分组 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 根据索引层级分组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 数据聚合 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 返回不含行索引的聚合数据 --> ( 难度等级: 高阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 应用:通用拆分-应用-联合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 压缩分组键 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 分位数与桶分析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 数据透视表与交叉表 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ └── 交叉表:crosstab --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 时间序列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 时间序列基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 含有重复索引的时间序列 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 时区处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 时区的本地化和转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 时区感知时间戳对象的操作 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 不同时区间的操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 时间区间和区间算术 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 区间频率转换 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 季度区间频率 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 将时间戳转换为区间(以及逆转换) --> ( 难度等级: 高阶 || 挂载数据: qa: 10 ) -│ │ │ │ └── 从数组生成PeriodIndex --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 重新采样与频率转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 向下采样 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 向上采样与插值 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 使用区间进行重新采样 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ └── 移动窗口函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 指数加权函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 二元移动窗口函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ └── 用户自定义的移动窗口函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 高阶pandas --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 分类数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 背景和目标 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── pandas中的Categorical类型 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 使用Categorical对象进行计算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 分类方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 高阶GroupBy应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 分组转换和“展开”GroupBy --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ └── 分组的时间重新采样 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 方法链技术 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── pipe方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── Python建模库介绍 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Patsy创建模型描述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── Patsy公式中的数据转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── statsmodels介绍 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 评估线性模型 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 评估时间序列处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── scikit-learn介绍 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 继续你的教育 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 数据分析示例 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ ├── 从Bitly获取1.USA.gov数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 纯Python时区计数 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 使用pandas进行时区计数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── MovieLens 1M数据集 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 测量评价分歧 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 美国1880~2010年的婴儿名字 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 分析名字趋势 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 美国农业部食品数据库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 2012年联邦选举委员会数据库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 按职业和雇主的捐献统计 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 捐赠金额分桶 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 按州进行捐赠统计 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 人工智能 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 机器学习工具包Scikit-learn --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── Scikit-learn概览 --> ( 难度等级: 高阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 安装配置 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 数据集 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── Scikit-learn自带的数据集 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 样本生成器 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 加载其他数据集 --> ( 难度等级: 高阶 || 挂载数据: qa: 5 ) -│ │ │ ├── 数据预处理Preprocessing --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 标准化 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 归一化 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 正则化 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 离散化 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 特征编码 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 缺失值补全 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 分类Classification --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── K-近邻分类 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 贝叶斯分类 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 决策树分类 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 支持向量机分类 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 随机森林分类 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 集成学习Bagging/Boosting --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 神经网络模型 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 回归Regression --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 线性回归 --> ( 难度等级: 高阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── Lasso回归 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 支持向量机回归 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── K-近邻回归 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 决策树回归 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 随机森林回归 --> ( 难度等级: 高阶 || 挂载数据: qa: 2 ) -│ │ │ │ └── 逻辑回归 --> ( 难度等级: 高阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 聚类Clustering --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── K-Means聚类 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 均值漂移聚类 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 基于密度的空间聚类 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 谱聚类 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 层次聚类 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 自下而上的方法 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 聚类之间的距离 --> ( 难度等级: 高阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 自上而下的方法 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 图论方法 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 成分分解与降维 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 主成分分析 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 因子分析 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 截断奇异值分解 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 独立成分分析ICA(Independent Component Analysis) --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ └── 模型评估与参数调优 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 估计器得分 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 交叉验证 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 评价指标 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 参数调优 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ └── 模型持久化 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 深度学习 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 神经网络基础知识 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 人工智能发展历史 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 神经元 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── BP神经网络 --> ( 难度等级: 高阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 梯度下降 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 激励函数 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 过拟合、欠拟合 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 优化器Optimizer --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 常用开发工具 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 环境配置 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── Windows搭建深度学习环境 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── Linux搭建深度学习环境 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── MacOS搭建深度学习环境 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── CPU/GPU环境搭建 --> ( 难度等级: 高阶 || 挂载数据: qa: 2 ) -│ │ │ ├── Theano --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── Theano基础知识 --> ( 难度等级: 高阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 定义Layer --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── CNN --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── RNN(GRU/LSTM) --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── Autoencoder --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 神经网络参数保存 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 神经网络性能评价 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── TensorFlow --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── TensorFlow基础知识 --> ( 难度等级: 高阶 || 挂载数据: qa: 5 ) -│ │ │ │ ├── Tensor --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── Session --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── Variable --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── Placeholder --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── Dropout --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── Tensorboard --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── CNN --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── RNN(GRU/LSTM) --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── Autoencoder --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── GNN --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 神经网络参数保存 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 神经网络性能评价 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── Keras --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── Keras基础语法 --> ( 难度等级: 高阶 || 挂载数据: qa: 5 ) -│ │ │ │ ├── 兼容Backend --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 函数模型和序列模型 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 定义Layer --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── CNN --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── RNN(GRU/LSTM) --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── Autoencoder --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── GNN --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 迁移学习 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── BiLSTM-Attention --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 生成对抗网络GAN --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 神经网络参数保存 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 神经网络性能评价 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── PyTorch --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── PyTorch基础知识 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── Tensor --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── Variable --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 定义Layer --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 可视化 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── CNN(TextCNN) --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── RNN(GRU/LSTM) --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── Autoencoder --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── GNN/GCN --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 迁移学习 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 生成对抗网络GAN --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 神经网络参数保存 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 神经网络性能评价 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ └── 强化学习 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 强化学习概念 --> ( 难度等级: 高阶 || 挂载数据: qa: 10 ) -│ │ │ ├── Q-Learning --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Sarsa --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── DQN(Deep Q Network) --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── Policy Gradients --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ └── Actor Critic --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 计算机视觉 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 数字图像处理基础 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 数字图像处理 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 图像三要素 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 像素及图像类型 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 图像信号数字转换 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── OpenCV基础 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 安装配置 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── OpenCV基础语法 --> ( 难度等级: 高阶 || 挂载数据: qa: 10 ) -│ │ │ │ └── 几何图形绘制 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 图像处理入门 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 读取显示图像 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 读取修改像素 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 创建复制保存图像 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 获取图像属性及通道 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 图像算数与逻辑运算 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 图像加法运算 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 图像减法运算 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 图像与运算 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 图像或运算 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 图像异或运算 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 图像非运算 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 图像几何变换 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 平移变换 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 缩放变换 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 旋转变换 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 镜像变换 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 仿射变换 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 透视变换 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 图像量化与采样 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 图像量化处理 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 图像采样处理 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 图像金字塔 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 局部马赛克处理 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 直方图统计 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 直方图概述 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 直方图绘制 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 掩膜直方图 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── H-S直方图 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 直方图对比 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 图像增强 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 图像增强 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 直方图均衡化 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 局部直方图均衡化 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 自动色彩均衡化 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 图像去雾 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 图像平滑 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 图像平滑概述 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 均值滤波 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 方框滤波 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 高斯滤波 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 中值滤波 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 双边滤波 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 图像锐化及边缘检测 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 一阶微分算法、二阶微分算子 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── Roberts算子 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── Prewitt算子 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── Sobel算子 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── Laplacian算子 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── Scharr算子 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── Canny算子 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── LOG算子 --> ( 难度等级: 高阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 图像形态学处理 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 图像腐蚀 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 图像膨胀 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 图像开运算 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 图像闭运算 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 图像梯度运算 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 图像顶帽运算 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 图像底帽运算 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 图像分割 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 基于阈值的图像分割 --> ( 难度等级: 高阶 || 挂载数据: qa: 4 ) -│ │ │ │ ├── 基于边缘检测的图像分割 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 基于纹理背景的图像分割 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 基于K-Means聚类的区域分割 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 基于均值漂移算法的图像分割 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 基于分水岭算法的图像分割 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 图像漫水填充分割 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 文字区域分割及定位 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 傅里叶变换 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 傅里叶变换 --> ( 难度等级: 高阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 傅里叶逆变换 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 高通滤波器 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 低通滤波器 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 霍夫变换 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 霍夫变换 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 霍夫线变换 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 霍夫圆变换 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 图像特效处理 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 图像毛玻璃特效 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 图像浮雕特效 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 图像素描特效 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 图像怀旧特效 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 图像流年特效 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 图像滤镜特效 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 图像水波特效 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 图像卡通特效 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 图像分类 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 图像分类概述 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 基于机器学习的图像分类 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 基于深度学习的图像分类 --> ( 难度等级: 高阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── LeNet --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── VGG --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── AlexNet --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── ResNet --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 人脸识别 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 目标检测 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 目标检测概述 --> ( 难度等级: 高阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── RCNN --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── Fast-RCNN --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── SPPNet --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── Mask-RCNN --> ( 难度等级: 高阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── SSD --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── YOLO系列算法 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 深度神经网络概述 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建神经网络块 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── TensorFlow介绍 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── MNIST数据集介绍 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── Keras深度学习库概述 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 基于Keras和MNIST的手写数字识别 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ ├── 训练和测试数据的检索 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 训练数据的可视化 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ ├── 创建神经网络 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 训练神经网络 --> ( 难度等级: 高阶 || 挂载数据: qa: 2 ) -│ │ │ │ │ └── 测试 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 理解反向传播 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 卷积神经网络介绍 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── CNN历史 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 卷积神经网络 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 计算机如何解释图像 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 编码实现图像可视化 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── dropout --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 输入层 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 卷积层 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 池化层 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 构建CNN并进行性能优化 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── CNN架构和DNN的缺点 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 卷积操作 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 池化、步长和填充操作 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── TensorFlow中的卷积和池化操作 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 在TensorFlow中应用池化操作 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ │ └── TensorFlow中的卷积操作 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 训练CNN --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ │ │ ├── 初始化权重和偏置 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 正则化 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 激活函数 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 模型性能优化 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 隐含层数量 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 每个隐含层的神经元个数 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 批标准化 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 高级正则化及过拟合的避免 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 运用哪个优化器 --> ( 难度等级: 高阶 || 挂载数据: qa: 5 ) -│ │ │ │ ├── 内存调优 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 层的位置调优 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 综合所有操作创建第二个CNN --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 数据集描述和预处理 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 创建CNN模型 --> ( 难度等级: 高阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 经典的CNN模型架构 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── ImageNet介绍 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── AlexNet架构 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── VGGNet架构 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── GoogLeNet架构 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 架构洞察 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ │ └── inception模块 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── ResNet架构 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 转移学习 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 特征提取方法 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 目标数据集较小且与原始训练集相似 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 目标数据集较小且与原始训练集不同 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 目标数据集很大且与原始训练集相似 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 目标数据集很大且与原始训练集不同 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 转移学习示例 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 多任务学习 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── CNN自编码器 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 自编码器介绍 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 卷积自编码器 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 应用 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── GAN:使用CNN生成新图像 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── Pix2pix:基于GAN的图像翻译 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── CycleGAN --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 训练GAN模型 --> ( 难度等级: 高阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── GAN的代码示例 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 计算损失 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 半监督学习和GAN --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 特征匹配 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 基于半监督分类的GAN示例 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 深度卷积GAN --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ └── CNN和视觉模型的注意力机制 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 图像描述中的注意力机制 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 注意力类型 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 硬注意力 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 软注意力 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 运用注意力改善视觉模型 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 视觉CNN模型次优性能的原因 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 循环视觉注意力模型 --> ( 难度等级: 高阶 || 挂载数据: qa: 2 ) -│ │ │ └── 参考文献 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 自然语言处理 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 自然语言处理概览 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 自然语言处理的基本概念 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 自然语言处理的面临困难 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 自然语言处理的研究现状 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 预备知识 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 概率论基础知识 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 最大似然估计 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 隐马尔可夫模型 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 贝叶斯网络 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 条件概率分布 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 信息论基础知识 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 熵 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 困惑度 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 互信息 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 神经网络基础知识 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── CRF --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── BiLSTM+Attention --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 迁移学习 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 常用语料库和知识库 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── jieba --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── jieba概述 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── jieba分词 --> ( 难度等级: 高阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── jieba添加自定义词典 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── jieba词性标注 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── jieba关键词抽取 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── nltk --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── nltk概述 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── nltk字符串处理 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── nltk词性标注 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── nltk词干提取 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── nltk命名实体识别 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── nltk分块处理 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── nltk文本分类 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── nltk情感分析 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── Genism --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── TF-IDF --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── similarities --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── LSA --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── LDA --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── Word2vec --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 词法分析 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 分词(英文分词/中文分词) --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 词干提取 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 词形还原 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 词性标注 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 命名实体识别 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 句法分析 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 短语结构分析 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 依存句法分析 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 语义分析 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 命名实体消歧 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 指代消解 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 语义角色标注 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 语义关系抽取 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 语义依存分析 --> ( 难度等级: 高阶 || 挂载数据: qa: 4 ) -│ │ │ │ └── 抽象语义表示 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 词嵌入 --> ( 难度等级: 高阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── Word2Vec --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── GloVe --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── fastText --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── ELMo --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── BERT --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── XLNet --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 文本挖掘 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 文本相似度计算 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 文本聚类 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 文本分类 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 文本摘要 --> ( 难度等级: 高阶 || 挂载数据: qa: 8 ) -│ │ │ ├── 情感分析 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 基于情感词典的情感分析 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 基于深度学习的情感分析 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 主题模型 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── LSA --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── LDA --> ( 难度等级: 高阶 || 挂载数据: qa: 2 ) -│ │ │ ├── 机器翻译 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── IBM统计翻译模型 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 短语抽取 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 语言模型 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── GNMT --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── Seq2Seq --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── Transformer --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 语言模型 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── n-gram --> ( 难度等级: 高阶 || 挂载数据: qa: 7 ) -│ │ │ │ ├── Pitman-Yor过程模型 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── AWD-LSTM --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── Transformer-XL --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── Gated CNN --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 智能问答 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 基于知识的问答 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 基于检索的问答 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 阅读理解 --> ( 难度等级: 高阶 || 挂载数据: qa: 4 ) -│ │ │ │ └── 完形填空 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 智能对话 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 对话行为分类 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 对话状态跟踪 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 检索式聊天机器人 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 生成式聊天机器人 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 意图识别 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 槽填充(Slot Filling) --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 语音识别 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 傅里叶变换 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 声学模型 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 隐马尔可夫模型 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── CNN --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── LSTM-HMM --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 神经网络语言模型 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── MFCC --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ └── 知识图谱 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 知识图谱构建 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 知识计算 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 知识存储 --> ( 难度等级: 高阶 || 挂载数据: qa: 2 ) -│ │ │ └── 知识服务与应用 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 为何选择Python --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 何时避免使用Python --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Python中的面向对象编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 在Python中调用其他语言 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 将Python模型作为微服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 高性能API和并发编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Python结构化数据提取、转换和加载 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── MySQL --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 如何安装MySQLdb --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 数据库连接 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── INSERT操作 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── READ操作 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── DELETE操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── UPDATE操作 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── COMMIT操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── ROLL-BACK操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Elasticsearch --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Neo4j Python驱动 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── neo4j-rest-client --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 内存数据库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Python版本MongoDB --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 将数据导入集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用pymongo创建连接 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 访问数据库对象 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 插入数据 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 更新数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 删除数据 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ ├── Pandas --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Python非结构化数据提取、转换和加载 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 电子邮件解析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 主题爬取 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 稳定方差 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使周期效应累加 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 使数据呈正态分布 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 基于Python的监督学习 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Python实现降维 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 相关性分析 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Python进行分类 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 决策树 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 哪个属性优先 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 随机森林分类器 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 朴素贝叶斯分类器 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 支持向量机 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 最近邻分类器 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 情绪分析 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 图像识别 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Python进行回归 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 最小二乘估计 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 分类和回归 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 使模型高估或低估 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ └── 处理分类型数据 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 无监督学习—聚类 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── K均值聚类 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 选择K—肘部法则 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 距离或相似性度量 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 属性 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 一般及欧氏距离 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── 平方欧氏距离 --> ( 难度等级: 高阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 字符串之间的编辑距离 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 文档上下文的相似性 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ └── 如何判断聚类结果是否良好 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ ├── 时间序列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 变化的分类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 包含趋势的序列分析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 曲线拟合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 从时间序列中去除趋势 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 包含周期性的序列数据分析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 从时间序列中去除周期性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 滤波 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 差分 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 平稳时间序列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 平稳过程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 自相关和相关图 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ │ │ └── 自协方差和自相关函数的估计 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Python进行时间序列分析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 有用的方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 自回归过程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 估计AR过程的参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 混合ARMA模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 集成ARMA模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 一个特殊的场景 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 数据缺失 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 大数据分析 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── Hadoop --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── MapReduce编程 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── partitioning函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── combiner函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── HDFS文件系统 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── MapReduce设计模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Spark --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 云分析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 物联网 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 高级教程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 原理与哲学 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Python之禅 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 优美胜于丑陋 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 明了胜于晦涩 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 简洁胜于复杂 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 复杂胜于难以理解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 扁平胜于嵌套 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 宽松胜于紧凑 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 可读性很重要 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 即便是特例,也不可违背这些规则 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 实用性胜于纯粹性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 错误永远不应该悄无声息地过去 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 除非明确地沉默 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 面对模棱两可的情况,拒绝猜测的诱惑 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 应该有一种(最好只有一种)显而易见的方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 尽管这种方式起初可能并不明显,除非你是荷兰人 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 做比不做要好 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 不假思索就动手还不如不做 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 如果实现难以解释,那就是一个糟糕的想法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 如果实现容易解释,则可能是一个好主意 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 命名空间是一个很棒的想法,让我们做更多这样的事情吧 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 不要重复自己 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 松耦合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 武士原则 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 帕累托原则 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 稳健性原则 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 向后兼容性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 基础知识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 总体概念 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 迭代 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 缓存 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 透明度 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 流程控制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 捕获异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 异常链 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 当一切顺利的时候 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 继续执行,无论异常如何 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 优化循环 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── with语句 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 条件表达式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 迭代 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 序列解包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 列表解析式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 生成器表达式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 集合解析式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 字典解析式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 将迭代器链接在一起 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 将迭代器压缩在一起 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 容器数据类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 集合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 命名元组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 有序字典 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 带有默认值的字典 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 导入代码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 回退(备用)导入 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 从即将发布的版本中导入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用__all__进行自定义导入 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 相对导入 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── __import__函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── importlib模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 令人兴奋的Python扩展:NIST的随机数信标 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 如何安装NIST信标库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 示例:获取值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 示例:模拟抛硬币并记录每次正反面的结果 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 安装Pandas和matplotlib --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 创建文本文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Pandas显示数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 进行一些数据分析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用matplotlib进行绘图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 图表的类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 安装Scrapy --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 运行Scrapy --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Scrapy获取Web数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 通过Scrapy浏览网页 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── shell选项 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 安装Beautiful Soup --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Beautiful Soup --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 如何安装feedparser库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 如何使用feedparser库 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 安装NumPy --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用NumPy --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用NumPy数组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 统计度量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 如何安装Pillow库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 图像显示:确定文件的大小和类型并显示 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 图像处理:裁剪图像的一部分 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 随机数 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ └── 密码生成器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 规划时的灵活性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 可变位置参数 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── 可变关键字参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 组合不同类型的参数 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 调用具有可变参数的函数 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ ├── 传递参数 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ └── 自省 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 装饰器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 闭包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 包装器 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 带参数的装饰器 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 带参数或不带参数的装饰器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 函数注解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 提取样板 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 用装饰器进行注解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 生成器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── lambda --> ( 难度等级: 初阶 || 挂载数据: qa: 5 ) -│ │ │ └── 自省 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 标识对象类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 模块和软件包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 文档字符串 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 描述函数的作用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 返回值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 包含预期的异常 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 继承 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 多重继承 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ │ ├── 方法解析顺序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用super函数将控制权传递给其他类 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 自省 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 如何创建类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 在运行时创建类 --> ( 难度等级: 初阶 || 挂载数据: qa: 7 ) -│ │ │ │ ├── 元类 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ └── 控制命名空间 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 成员变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 属性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 描述器 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 非绑定方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 绑定方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ └── 魔术方法 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 处理成员变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 字符串表示 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 字节字符串 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── 借助chr和ord进行简单的转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 借助struct模块进行复杂的转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 文本 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Unicode --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ │ └── 编码 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 简单的替换 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ └── 格式化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 在对象中查找值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 区分字符串类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 标准格式规范 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 为文本文档制作目录 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ └── 自定义格式规范 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 通用协议 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 基本运算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 数学运算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 按位运算 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ │ └── 运算符的变体 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 数字 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 符号运算 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ └── 比较运算 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 可迭代对象 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 序列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 映射 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── _call_方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 上下文管理器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 对象管理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 命名空间字典 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 垃圾回收 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 引用计数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 循环引用 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── 弱引用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Python对象的序列化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 复制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 浅层复制 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 深层复制 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ ├── 文档的编写 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 恰当地命名 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 注释 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 代码之外的文档 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 安装与配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 教程 --> ( 难度等级: 初阶 || 挂载数据: qa: 2 ) -│ │ │ │ └── 参考文档 --> ( 难度等级: 初阶 || 挂载数据: qa: 4 ) -│ │ │ └── 用于编写文档的实用工具 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 链接 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Sphinx --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 测试 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 测试驱动开发 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── doctest --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 呈现输出 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 与文档集成 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 运行测试 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── unittest模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 初始化配置 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 编写测试 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── 其他比较 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 测试异常 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 测试对象标识 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 释放资源 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 提供自定义的测试类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 发布 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 许可证 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── GNU通用公共许可证 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Affero通用公共许可证 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ ├── GNU宽通用公共许可证 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 伯克利软件发行许可证 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 其他许可证 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 打包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── setup.py --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ │ ├── MANIFEST.in --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ │ └── sdist命令 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 发布 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 构建CSV框架sheets --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 构建声明性框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 声明性编程简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 是否构建声明性框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 构建框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 管理选项 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 定义字段 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 将字段附加到类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 添加元类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 整合 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 字段排序 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── DeclarativeMeta.__prepare__ --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Column.__init__ --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ ├── Column.__new__ --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── CounterMeta.__call__ --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 挑选选项 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 构建字段库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── StringField(字符串字段) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── IntegerColumn(整数列) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── FloatColumn(浮点数列) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── DecimalColumn(小数列) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── DateColumn(日期列) --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 回到CSV --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 检查参数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 填充值 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 读取器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 写入器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ └── 其他 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── GUI界面编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 初识GUI --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 什么是GUI --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) -│ │ │ ├── 常用的GUI框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 安装wxPython --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 创建应用程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 创建一个wx.App的子类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 直接使用wx.App --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 使用wx.Frame框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 常用控件 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ ├── StaticText文本类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── TextCtrl输入文本类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Button按钮类 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── BoxSizer布局 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 什么是BoxSizer --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 使用BoxSizer布局 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── 事件处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 什么是事件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 绑定事件 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ ├── Pygame游戏编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 初识Pygame --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 安装Pygame --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Pygame常用模块 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Pygame基本使用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 开发Flappy Bird游戏 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 游戏简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 游戏分析 --> ( 难度等级: 中阶 || 挂载数据: qa: 6 ) -│ │ ├── 搭建主框架 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 创建小鸟类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 创建管道类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 计算得分 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ └── 碰撞检测 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 网络爬虫开发 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 初识网络爬虫 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 网络爬虫概述 --> ( 难度等级: 中阶 || 挂载数据: qa: 3 ) -│ │ │ ├── 网络爬虫的分类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 网络爬虫的基本原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 网络爬虫的常用技术 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── Python的网络请求 --> ( 难度等级: 中阶 || 挂载数据: qa: 4 ) -│ │ │ ├── 请求headers处理 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 网络超时 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 代理服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── HTML解析之BeautifulSoup --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ └── 网络爬虫开发常用框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Scrapy爬虫框架 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── Crawley爬虫框架 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ └── PySpider爬虫框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 使用进程和线程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 什么是进程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 创建进程的常用方式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用multiprocessing模块创建进程 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ ├── 使用Process子类创建进程 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ │ └── 使用进程池Pool创建进程 --> ( 难度等级: 中阶 || 挂载数据: qa: 2 ) -│ │ ├── 进程间通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 队列简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 多进程队列的使用 --> ( 难度等级: 中阶 || 挂载数据: qa: 5 ) -│ │ │ └── 使用队列在进程间通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 什么是线程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 创建线程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 使用threading模块创建线程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 使用Thread子类创建线程 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ └── 线程间通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 什么是互斥锁 --> ( 难度等级: 中阶 || 挂载数据: qa: 1 ) -│ │ ├── 使用互斥锁 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 使用队列在线程间通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 网络编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 网络基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── TCP/IP简介 --> ( 难度等级: 初阶 || 挂载数据: qa: 8 ) -│ │ │ ├── UDP简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Socket简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── TCP编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 创建TCP服务器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 创建TCP客户端 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ │ │ └── 执行TCP服务器和客户端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── UDP编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 创建UDP服务器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 创建UDP客户端 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ └── 执行UDP服务器和客户端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Web编程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Web基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── HTTP协议 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Web服务器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 前端基础 --> ( 难度等级: 初阶 || 挂载数据: qa: 10 ) -│ │ │ └── 静态服务器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── WSGI接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── CGI简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── WSGI简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 定义WSGI接口 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ │ └── 运行WSGI服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── Web框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 什么是Web框架 --> ( 难度等级: 初阶 || 挂载数据: qa: 3 ) -│ │ └── Python中常用的Web框架 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ └── Flask框架 --> ( 难度等级: 初阶 || 挂载数据: qa: 1 ) -│ ├── Flask简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 安装虚拟环境 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 安装Flask --> ( 难度等级: 初阶 || 挂载数据: qa: 6 ) -│ │ └── 第一个Flask程序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Flask基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 开启调试模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 路由 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 静态文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 蓝图 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── 模板 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 渲染模板 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 变量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 控制结构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ └── Web表单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── CSRF保护和验证 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 表单类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ └── 把表单渲染成HTML --> ( 难度等级: 中阶 || 挂载数据: 无 ) -└── 其他 --> ( 难度等级: 无 || 挂载数据: 无 ) - ├── 其他类别标签问题 --> ( 难度等级: 无 || 挂载数据: qa: 10 ) - ├── 应用类问题 --> ( 难度等级: 无 || 挂载数据: qa: 10 ) - └── 第三方包问题 --> ( 难度等级: 无 || 挂载数据: qa: 10 ) +python --> ( 难度等级: [0, 1) || 挂载数据: 无 ) +├── Python初阶 --> ( 难度等级: [0.0, 0.25) || 挂载数据: 无 ) +│ ├── 预备知识 --> ( 难度等级: [0.0, 0.05) || 挂载数据: 无 ) +│ │ ├── Python简介 --> ( 难度等级: [0.0, 0.0071) || 挂载数据: 无 ) +│ │ │ └── Python都能做什么 --> ( 难度等级: [0.0, 0.0071) || 挂载数据: 无 ) +│ │ ├── 程序设计思想 --> ( 难度等级: [0.0071, 0.0143) || 挂载数据: 无 ) +│ │ ├── 安装Python --> ( 难度等级: [0.0143, 0.0214) || 挂载数据: 无 ) +│ │ │ ├── Windows安装Python --> ( 难度等级: [0.0143, 0.0167) || 挂载数据: 无 ) +│ │ │ ├── Linux安装Python --> ( 难度等级: [0.0167, 0.019) || 挂载数据: 无 ) +│ │ │ └── MacOS安装Python --> ( 难度等级: [0.019, 0.0214) || 挂载数据: 无 ) +│ │ ├── 运行方式 --> ( 难度等级: [0.0214, 0.0286) || 挂载数据: 无 ) +│ │ │ ├── 以交互方式运行 --> ( 难度等级: [0.0214, 0.025) || 挂载数据: qa: 10 ) +│ │ │ └── 以脚本方式运行 --> ( 难度等级: [0.025, 0.0286) || 挂载数据: qa: 5 ) +│ │ ├── 常用开发工具 --> ( 难度等级: [0.0286, 0.0357) || 挂载数据: 无 ) +│ │ │ ├── typing --- 类型提示支持 --> ( 难度等级: [0.0286, 0.029) || 挂载数据: 无 ) +│ │ │ ├── pydoc --- 文档生成器和在线帮助系统 --> ( 难度等级: [0.029, 0.0295) || 挂载数据: 无 ) +│ │ │ ├── Python Development Mode --> ( 难度等级: [0.0295, 0.0299) || 挂载数据: 无 ) +│ │ │ ├── Effects of the Python Development Mode --> ( 难度等级: [0.0299, 0.0304) || 挂载数据: qa: 1 ) +│ │ │ ├── ResourceWarning Example --> ( 难度等级: [0.0304, 0.0308) || 挂载数据: 无 ) +│ │ │ ├── Bad file descriptor error example --> ( 难度等级: [0.0308, 0.0312) || 挂载数据: qa: 10 ) +│ │ │ ├── doctest --- 测试交互性的Python示例 --> ( 难度等级: [0.0312, 0.0317) || 挂载数据: 无 ) +│ │ │ ├── unittest --- 单元测试框架 --> ( 难度等级: [0.0317, 0.0321) || 挂载数据: 无 ) +│ │ │ ├── unittest.mock --- mock对象库 --> ( 难度等级: [0.0321, 0.0326) || 挂载数据: 无 ) +│ │ │ ├── unittest.mock上手指南 --> ( 难度等级: [0.0326, 0.033) || 挂载数据: 无 ) +│ │ │ ├── 2to3 - 自动将Python 2 代码转为Python 3 代码 --> ( 难度等级: [0.033, 0.0335) || 挂载数据: 无 ) +│ │ │ ├── test --- Python回归测试包 --> ( 难度等级: [0.0335, 0.0339) || 挂载数据: 无 ) +│ │ │ ├── test.support --- Utilities for the Python test suite --> ( 难度等级: [0.0339, 0.0344) || 挂载数据: 无 ) +│ │ │ ├── test.support.socket_helper --- Utilities for socket tests --> ( 难度等级: [0.0344, 0.0348) || 挂载数据: 无 ) +│ │ │ ├── test.support.script_helper --- Utilities for the Python execution tests --> ( 难度等级: [0.0348, 0.0353) || 挂载数据: 无 ) +│ │ │ └── test.support.bytecode_helper --- Support tools for testing correct bytecode generation --> ( 难度等级: [0.0353, 0.0357) || 挂载数据: 无 ) +│ │ ├── 编码规范 --> ( 难度等级: [0.0357, 0.0429) || 挂载数据: 无 ) +│ │ └── 模块管理 --> ( 难度等级: [0.0429, 0.05) || 挂载数据: 无 ) +│ │ └── pip --> ( 难度等级: [0.0429, 0.05) || 挂载数据: qa: 10 ) +│ ├── 基础语法 --> ( 难度等级: [0.05, 0.1) || 挂载数据: 无 ) +│ │ ├── 缩进规则 --> ( 难度等级: [0.05, 0.055) || 挂载数据: 无 ) +│ │ │ └── 建议使用4个空格 --> ( 难度等级: [0.05, 0.055) || 挂载数据: qa: 1 ) +│ │ ├── 基础知识 --> ( 难度等级: [0.055, 0.06) || 挂载数据: 无 ) +│ │ │ ├── 注释 --> ( 难度等级: [0.055, 0.0554) || 挂载数据: 无 ) +│ │ │ │ └── 如何编写注释 --> ( 难度等级: [0.055, 0.0554) || 挂载数据: qa: 9 ) +│ │ │ ├── 变量 --> ( 难度等级: [0.0554, 0.0557) || 挂载数据: qa: 2 ) +│ │ │ │ ├── 变量的命名和使用 --> ( 难度等级: [0.0554, 0.0555) || 挂载数据: 无 ) +│ │ │ │ ├── 使用变量时避免命名错误 --> ( 难度等级: [0.0555, 0.0556) || 挂载数据: 无 ) +│ │ │ │ └── 变量是标签 --> ( 难度等级: [0.0556, 0.0557) || 挂载数据: qa: 10 ) +│ │ │ ├── 语句 --> ( 难度等级: [0.0557, 0.0561) || 挂载数据: qa: 2 ) +│ │ │ │ ├── 表达式语句 --> ( 难度等级: [0.0557, 0.0557) || 挂载数据: 无 ) +│ │ │ │ ├── 赋值语句 --> ( 难度等级: [0.0557, 0.0558) || 挂载数据: 无 ) +│ │ │ │ ├── assert语句 --> ( 难度等级: [0.0558, 0.0558) || 挂载数据: qa: 6 ) +│ │ │ │ ├── return语句 --> ( 难度等级: [0.0558, 0.0558) || 挂载数据: qa: 3 ) +│ │ │ │ ├── yield语句 --> ( 难度等级: [0.0558, 0.0559) || 挂载数据: 无 ) +│ │ │ │ ├── raise语句 --> ( 难度等级: [0.0559, 0.0559) || 挂载数据: 无 ) +│ │ │ │ ├── break语句 --> ( 难度等级: [0.0559, 0.0559) || 挂载数据: 无 ) +│ │ │ │ ├── continue语句 --> ( 难度等级: [0.0559, 0.056) || 挂载数据: 无 ) +│ │ │ │ ├── import语句 --> ( 难度等级: [0.056, 0.056) || 挂载数据: qa: 8 ) +│ │ │ │ ├── global语句 --> ( 难度等级: [0.056, 0.056) || 挂载数据: qa: 5 ) +│ │ │ │ └── nonlocal语句 --> ( 难度等级: [0.056, 0.0561) || 挂载数据: 无 ) +│ │ │ ├── 标识符 --> ( 难度等级: [0.0561, 0.0564) || 挂载数据: 无 ) +│ │ │ ├── 命名规则 --> ( 难度等级: [0.0564, 0.0568) || 挂载数据: 无 ) +│ │ │ ├── 运算与表达式 --> ( 难度等级: [0.0568, 0.0571) || 挂载数据: 无 ) +│ │ │ ├── 代码风格 --> ( 难度等级: [0.0571, 0.0575) || 挂载数据: 无 ) +│ │ │ ├── 交互式解释器 --> ( 难度等级: [0.0575, 0.0579) || 挂载数据: 无 ) +│ │ │ ├── 算法是什么 --> ( 难度等级: [0.0579, 0.0582) || 挂载数据: qa: 4 ) +│ │ │ ├── 获取用户输入 --> ( 难度等级: [0.0582, 0.0586) || 挂载数据: 无 ) +│ │ │ ├── 保存并执行程序 --> ( 难度等级: [0.0586, 0.0589) || 挂载数据: 无 ) +│ │ │ │ ├── 从命令提示符运行Python脚本 --> ( 难度等级: [0.0586, 0.0588) || 挂载数据: 无 ) +│ │ │ │ └── 让脚本像普通程序一样 --> ( 难度等级: [0.0588, 0.0589) || 挂载数据: 无 ) +│ │ │ ├── 起步 --> ( 难度等级: [0.0589, 0.0593) || 挂载数据: 无 ) +│ │ │ │ ├── 搭建编程环境 --> ( 难度等级: [0.0589, 0.059) || 挂载数据: 无 ) +│ │ │ │ │ ├── Python版本 --> ( 难度等级: [0.0589, 0.059) || 挂载数据: qa: 4 ) +│ │ │ │ │ ├── 运行Python代码片段 --> ( 难度等级: [0.059, 0.059) || 挂载数据: 无 ) +│ │ │ │ │ └── SublimeText简介 --> ( 难度等级: [0.059, 0.059) || 挂载数据: 无 ) +│ │ │ │ ├── 在不同操作系统中搭建Python编程环境 --> ( 难度等级: [0.059, 0.0591) || 挂载数据: 无 ) +│ │ │ │ │ ├── 在Windows系统中搭建Python编程环境 --> ( 难度等级: [0.059, 0.059) || 挂载数据: 无 ) +│ │ │ │ │ ├── 在macOS系统中搭建Python编程环境 --> ( 难度等级: [0.059, 0.0591) || 挂载数据: 无 ) +│ │ │ │ │ └── 在Linux系统中搭建Python编程环境 --> ( 难度等级: [0.0591, 0.0591) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 运行HelloWorld程序 --> ( 难度等级: [0.0591, 0.0592) || 挂载数据: 无 ) +│ │ │ │ │ ├── 配置SublimeText以使用正确的Python版本 --> ( 难度等级: [0.0591, 0.0592) || 挂载数据: qa: 1 ) +│ │ │ │ │ └── 运行程序hello_world.py --> ( 难度等级: [0.0592, 0.0592) || 挂载数据: qa: 10 ) +│ │ │ │ └── 从终端运行Python程序 --> ( 难度等级: [0.0592, 0.0593) || 挂载数据: 无 ) +│ │ │ │ └── 在Windows系统中从终端运行Python程序 --> ( 难度等级: [0.0592, 0.0593) || 挂载数据: qa: 1 ) +│ │ │ ├── 列表简介 --> ( 难度等级: [0.0593, 0.0596) || 挂载数据: 无 ) +│ │ │ │ ├── 修改、添加和删除元素 --> ( 难度等级: [0.0593, 0.0594) || 挂载数据: 无 ) +│ │ │ │ │ ├── 修改列表元素 --> ( 难度等级: [0.0593, 0.0593) || 挂载数据: qa: 7 ) +│ │ │ │ │ ├── 在列表中添加元素 --> ( 难度等级: [0.0593, 0.0594) || 挂载数据: qa: 3 ) +│ │ │ │ │ └── 从列表中删除元素 --> ( 难度等级: [0.0594, 0.0594) || 挂载数据: qa: 10 ) +│ │ │ │ ├── 组织列表 --> ( 难度等级: [0.0594, 0.0595) || 挂载数据: 无 ) +│ │ │ │ │ ├── 使用方法sort对列表永久排序 --> ( 难度等级: [0.0594, 0.0594) || 挂载数据: qa: 6 ) +│ │ │ │ │ ├── 使用函数sorted对列表临时排序 --> ( 难度等级: [0.0594, 0.0595) || 挂载数据: qa: 1 ) +│ │ │ │ │ ├── 倒着打印列表 --> ( 难度等级: [0.0595, 0.0595) || 挂载数据: qa: 1 ) +│ │ │ │ │ └── 确定列表的长度 --> ( 难度等级: [0.0595, 0.0595) || 挂载数据: 无 ) +│ │ │ │ └── 使用列表时避免索引错误 --> ( 难度等级: [0.0595, 0.0596) || 挂载数据: 无 ) +│ │ │ └── 测试代码 --> ( 难度等级: [0.0596, 0.06) || 挂载数据: 无 ) +│ │ │ └── 测试函数 --> ( 难度等级: [0.0596, 0.06) || 挂载数据: 无 ) +│ │ ├── 函数 --> ( 难度等级: [0.06, 0.065) || 挂载数据: 无 ) +│ │ │ ├── 函数定义def --> ( 难度等级: [0.06, 0.0601) || 挂载数据: qa: 4 ) +│ │ │ ├── 参数var --> ( 难度等级: [0.0601, 0.0603) || 挂载数据: 无 ) +│ │ │ ├── 返回值return --> ( 难度等级: [0.0603, 0.0604) || 挂载数据: 无 ) +│ │ │ ├── 参数传递 --> ( 难度等级: [0.0604, 0.0605) || 挂载数据: 无 ) +│ │ │ ├── 函数调用 --> ( 难度等级: [0.0605, 0.0607) || 挂载数据: qa: 1 ) +│ │ │ ├── 函数递归 --> ( 难度等级: [0.0607, 0.0608) || 挂载数据: 无 ) +│ │ │ ├── 函数编写风格 --> ( 难度等级: [0.0608, 0.0609) || 挂载数据: 无 ) +│ │ │ ├── 调用函数 --> ( 难度等级: [0.0609, 0.0611) || 挂载数据: 无 ) +│ │ │ ├── 函数的参数 --> ( 难度等级: [0.0611, 0.0612) || 挂载数据: 无 ) +│ │ │ ├── 递归函数 --> ( 难度等级: [0.0612, 0.0613) || 挂载数据: qa: 1 ) +│ │ │ ├── None值 --> ( 难度等级: [0.0613, 0.0614) || 挂载数据: qa: 3 ) +│ │ │ ├── 调用栈 --> ( 难度等级: [0.0614, 0.0616) || 挂载数据: 无 ) +│ │ │ ├── 局部和全局作用域 --> ( 难度等级: [0.0616, 0.0617) || 挂载数据: 无 ) +│ │ │ │ ├── 局部变量不能在全局作用域内使用 --> ( 难度等级: [0.0616, 0.0616) || 挂载数据: 无 ) +│ │ │ │ ├── 局部作用域不能使用其他局部作用域内的变量 --> ( 难度等级: [0.0616, 0.0617) || 挂载数据: 无 ) +│ │ │ │ └── 全局变量可以在局部作用域中读取 --> ( 难度等级: [0.0617, 0.0617) || 挂载数据: 无 ) +│ │ │ ├── 异常处理 --> ( 难度等级: [0.0617, 0.0618) || 挂载数据: 无 ) +│ │ │ ├── 把函数视作对象 --> ( 难度等级: [0.0618, 0.062) || 挂载数据: 无 ) +│ │ │ ├── 可调用对象 --> ( 难度等级: [0.062, 0.0621) || 挂载数据: 无 ) +│ │ │ ├── 用户定义的可调用类型 --> ( 难度等级: [0.0621, 0.0622) || 挂载数据: 无 ) +│ │ │ ├── 函数内省 --> ( 难度等级: [0.0622, 0.0624) || 挂载数据: 无 ) +│ │ │ ├── 从定位参数到仅限关键字参数 --> ( 难度等级: [0.0624, 0.0625) || 挂载数据: 无 ) +│ │ │ ├── 获取关于参数的信息 --> ( 难度等级: [0.0625, 0.0626) || 挂载数据: 无 ) +│ │ │ ├── 支持函数式编程的包 --> ( 难度等级: [0.0626, 0.0628) || 挂载数据: 无 ) +│ │ │ ├── 传递实参 --> ( 难度等级: [0.0628, 0.0629) || 挂载数据: 无 ) +│ │ │ │ ├── 位置实参 --> ( 难度等级: [0.0628, 0.0628) || 挂载数据: qa: 2 ) +│ │ │ │ ├── 关键字实参 --> ( 难度等级: [0.0628, 0.0628) || 挂载数据: 无 ) +│ │ │ │ ├── 默认值 --> ( 难度等级: [0.0628, 0.0628) || 挂载数据: 无 ) +│ │ │ │ ├── 等效的函数调用 --> ( 难度等级: [0.0628, 0.0629) || 挂载数据: 无 ) +│ │ │ │ └── 避免实参错误 --> ( 难度等级: [0.0629, 0.0629) || 挂载数据: 无 ) +│ │ │ ├── 返回值 --> ( 难度等级: [0.0629, 0.063) || 挂载数据: 无 ) +│ │ │ │ ├── 返回简单值 --> ( 难度等级: [0.0629, 0.0629) || 挂载数据: 无 ) +│ │ │ │ ├── 让实参变成可选的 --> ( 难度等级: [0.0629, 0.063) || 挂载数据: 无 ) +│ │ │ │ └── 返回字典 --> ( 难度等级: [0.063, 0.063) || 挂载数据: qa: 4 ) +│ │ │ ├── 传递列表 --> ( 难度等级: [0.063, 0.0632) || 挂载数据: 无 ) +│ │ │ │ ├── 在函数中修改列表 --> ( 难度等级: [0.063, 0.0631) || 挂载数据: qa: 3 ) +│ │ │ │ └── 禁止函数修改列表 --> ( 难度等级: [0.0631, 0.0632) || 挂载数据: 无 ) +│ │ │ ├── 传递任意数量的实参 --> ( 难度等级: [0.0632, 0.0633) || 挂载数据: 无 ) +│ │ │ │ ├── 使用任意数量的关键字实参 --> ( 难度等级: [0.0632, 0.0632) || 挂载数据: qa: 2 ) +│ │ │ │ ├── 导入特定的函数 --> ( 难度等级: [0.0632, 0.0632) || 挂载数据: 无 ) +│ │ │ │ ├── 使用as给函数指定别名 --> ( 难度等级: [0.0632, 0.0632) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 使用as给模块指定别名 --> ( 难度等级: [0.0632, 0.0633) || 挂载数据: 无 ) +│ │ │ │ └── 导入模块中的所有函数 --> ( 难度等级: [0.0633, 0.0633) || 挂载数据: 无 ) +│ │ │ ├── 函数编写指南 --> ( 难度等级: [0.0633, 0.0634) || 挂载数据: qa: 1 ) +│ │ │ ├── 编写可接受任意数量参数的函数 --> ( 难度等级: [0.0634, 0.0636) || 挂载数据: 无 ) +│ │ │ ├── 编写只接受关键字参数的函数 --> ( 难度等级: [0.0636, 0.0637) || 挂载数据: 无 ) +│ │ │ ├── 将元数据信息附加到函数参数上 --> ( 难度等级: [0.0637, 0.0638) || 挂载数据: 无 ) +│ │ │ ├── 从函数中返回多个值 --> ( 难度等级: [0.0638, 0.0639) || 挂载数据: 无 ) +│ │ │ ├── 定义带有默认参数的函数 --> ( 难度等级: [0.0639, 0.0641) || 挂载数据: 无 ) +│ │ │ ├── 定义匿名或内联函数 --> ( 难度等级: [0.0641, 0.0642) || 挂载数据: 无 ) +│ │ │ ├── 在匿名函数中绑定变量的值 --> ( 难度等级: [0.0642, 0.0643) || 挂载数据: qa: 1 ) +│ │ │ ├── 让带有N个参数的可调用对象以较少的参数形式调用 --> ( 难度等级: [0.0643, 0.0645) || 挂载数据: 无 ) +│ │ │ ├── 用函数替代只有单个方法的类 --> ( 难度等级: [0.0645, 0.0646) || 挂载数据: qa: 1 ) +│ │ │ ├── 在回调函数中携带额外的状态 --> ( 难度等级: [0.0646, 0.0647) || 挂载数据: 无 ) +│ │ │ ├── 内联回调函数 --> ( 难度等级: [0.0647, 0.0649) || 挂载数据: 无 ) +│ │ │ └── 访问定义在闭包内的变量 --> ( 难度等级: [0.0649, 0.065) || 挂载数据: 无 ) +│ │ ├── 类 --> ( 难度等级: [0.065, 0.07) || 挂载数据: qa: 3 ) +│ │ │ ├── 类定义class --> ( 难度等级: [0.065, 0.0653) || 挂载数据: qa: 5 ) +│ │ │ ├── 作用域和命名空间 --> ( 难度等级: [0.0653, 0.0655) || 挂载数据: 无 ) +│ │ │ ├── 对象 --> ( 难度等级: [0.0655, 0.0658) || 挂载数据: 无 ) +│ │ │ ├── 属性和方法 --> ( 难度等级: [0.0658, 0.066) || 挂载数据: 无 ) +│ │ │ │ ├── 模拟数值类型 --> ( 难度等级: [0.0658, 0.0658) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 字符串表示形式 --> ( 难度等级: [0.0658, 0.0659) || 挂载数据: 无 ) +│ │ │ │ └── 自定义的布尔值 --> ( 难度等级: [0.0659, 0.066) || 挂载数据: 无 ) +│ │ │ ├── 类编码风格 --> ( 难度等级: [0.066, 0.0663) || 挂载数据: 无 ) +│ │ │ ├── 初探类 --> ( 难度等级: [0.0663, 0.0665) || 挂载数据: 无 ) +│ │ │ │ ├── 类定义语法 --> ( 难度等级: [0.0663, 0.0663) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 类对象 --> ( 难度等级: [0.0663, 0.0664) || 挂载数据: qa: 1 ) +│ │ │ │ └── 方法对象 --> ( 难度等级: [0.0664, 0.0665) || 挂载数据: 无 ) +│ │ │ ├── 补充说明 --> ( 难度等级: [0.0665, 0.0668) || 挂载数据: 无 ) +│ │ │ ├── 私有变量 --> ( 难度等级: [0.0668, 0.067) || 挂载数据: 无 ) +│ │ │ ├── 生成器表达式 --> ( 难度等级: [0.067, 0.0673) || 挂载数据: 无 ) +│ │ │ ├── 类到底是什么 --> ( 难度等级: [0.0673, 0.0675) || 挂载数据: qa: 1 ) +│ │ │ ├── 创建自定义类 --> ( 难度等级: [0.0675, 0.0678) || 挂载数据: qa: 1 ) +│ │ │ ├── 再谈隐藏 --> ( 难度等级: [0.0678, 0.068) || 挂载数据: 无 ) +│ │ │ ├── 类的命名空间 --> ( 难度等级: [0.068, 0.0683) || 挂载数据: 无 ) +│ │ │ ├── 指定超类 --> ( 难度等级: [0.0683, 0.0685) || 挂载数据: 无 ) +│ │ │ ├── 深入探讨继承 --> ( 难度等级: [0.0685, 0.0688) || 挂载数据: 无 ) +│ │ │ ├── 多个超类 --> ( 难度等级: [0.0688, 0.069) || 挂载数据: 无 ) +│ │ │ ├── 接口和内省 --> ( 难度等级: [0.069, 0.0693) || 挂载数据: 无 ) +│ │ │ │ ├── Python文化中的接口和协议 --> ( 难度等级: [0.069, 0.069) || 挂载数据: 无 ) +│ │ │ │ ├── Python喜欢序列 --> ( 难度等级: [0.069, 0.0691) || 挂载数据: 无 ) +│ │ │ │ ├── 使用猴子补丁在运行时实现协议 --> ( 难度等级: [0.0691, 0.0691) || 挂载数据: 无 ) +│ │ │ │ ├── Alex Martelli的水禽 --> ( 难度等级: [0.0691, 0.0691) || 挂载数据: 无 ) +│ │ │ │ ├── 定义抽象基类的子类 --> ( 难度等级: [0.0691, 0.0691) || 挂载数据: 无 ) +│ │ │ │ ├── 标准库中的抽象基类 --> ( 难度等级: [0.0691, 0.0692) || 挂载数据: 无 ) +│ │ │ │ ├── 定义并使用一个抽象基类 --> ( 难度等级: [0.0692, 0.0692) || 挂载数据: 无 ) +│ │ │ │ ├── Tombola子类的测试方法 --> ( 难度等级: [0.0692, 0.0692) || 挂载数据: 无 ) +│ │ │ │ ├── Python使用register的方式 --> ( 难度等级: [0.0692, 0.0692) || 挂载数据: 无 ) +│ │ │ │ └── 鹅的行为有可能像鸭子 --> ( 难度等级: [0.0692, 0.0693) || 挂载数据: 无 ) +│ │ │ ├── 抽象基类 --> ( 难度等级: [0.0693, 0.0695) || 挂载数据: 无 ) +│ │ │ ├── 导入类 --> ( 难度等级: [0.0695, 0.0698) || 挂载数据: 无 ) +│ │ │ │ ├── 导入单个类 --> ( 难度等级: [0.0695, 0.0696) || 挂载数据: 无 ) +│ │ │ │ ├── 在一个模块中存储多个类 --> ( 难度等级: [0.0696, 0.0696) || 挂载数据: 无 ) +│ │ │ │ ├── 从一个模块中导入多个类 --> ( 难度等级: [0.0696, 0.0697) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 导入模块中的所有类 --> ( 难度等级: [0.0697, 0.0697) || 挂载数据: 无 ) +│ │ │ │ └── 自定义工作流程 --> ( 难度等级: [0.0697, 0.0698) || 挂载数据: 无 ) +│ │ │ └── Python标准库 --> ( 难度等级: [0.0698, 0.07) || 挂载数据: 无 ) +│ │ ├── 顺序语句结构 --> ( 难度等级: [0.07, 0.075) || 挂载数据: 无 ) +│ │ ├── 条件和分支 --> ( 难度等级: [0.075, 0.08) || 挂载数据: 无 ) +│ │ │ ├── if --> ( 难度等级: [0.075, 0.0754) || 挂载数据: 无 ) +│ │ │ │ ├── if-else语句 --> ( 难度等级: [0.075, 0.0751) || 挂载数据: qa: 10 ) +│ │ │ │ ├── if-elif-else结构 --> ( 难度等级: [0.0751, 0.0752) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 省略else代码块 --> ( 难度等级: [0.0752, 0.0752) || 挂载数据: 无 ) +│ │ │ │ ├── 使用if语句处理列表 --> ( 难度等级: [0.0752, 0.0753) || 挂载数据: 无 ) +│ │ │ │ │ ├── 检查特殊元素 --> ( 难度等级: [0.0752, 0.0753) || 挂载数据: 无 ) +│ │ │ │ │ └── 确定列表不是空的 --> ( 难度等级: [0.0753, 0.0753) || 挂载数据: qa: 6 ) +│ │ │ │ └── 设置if语句的格式 --> ( 难度等级: [0.0753, 0.0754) || 挂载数据: 无 ) +│ │ │ ├── elif --> ( 难度等级: [0.0754, 0.0758) || 挂载数据: 无 ) +│ │ │ ├── else --> ( 难度等级: [0.0758, 0.0762) || 挂载数据: 无 ) +│ │ │ ├── 条件判断 --> ( 难度等级: [0.0762, 0.0765) || 挂载数据: qa: 3 ) +│ │ │ ├── 这正是布尔值的用武之地 --> ( 难度等级: [0.0765, 0.0769) || 挂载数据: 无 ) +│ │ │ ├── 代码块嵌套 --> ( 难度等级: [0.0769, 0.0773) || 挂载数据: 无 ) +│ │ │ │ ├── 字典列表 --> ( 难度等级: [0.0769, 0.0771) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 在字典中存储列表 --> ( 难度等级: [0.0771, 0.0772) || 挂载数据: 无 ) +│ │ │ │ └── 在字典中存储字典 --> ( 难度等级: [0.0772, 0.0773) || 挂载数据: 无 ) +│ │ │ ├── 检查是否相等 --> ( 难度等级: [0.0773, 0.0777) || 挂载数据: qa: 1 ) +│ │ │ ├── 检查是否相等时忽略大小写 --> ( 难度等级: [0.0777, 0.0781) || 挂载数据: 无 ) +│ │ │ ├── 检查是否不相等 --> ( 难度等级: [0.0781, 0.0785) || 挂载数据: 无 ) +│ │ │ ├── 数值比较 --> ( 难度等级: [0.0785, 0.0788) || 挂载数据: 无 ) +│ │ │ ├── 检查多个条件 --> ( 难度等级: [0.0788, 0.0792) || 挂载数据: 无 ) +│ │ │ ├── 检查特定值是否包含在列表中 --> ( 难度等级: [0.0792, 0.0796) || 挂载数据: 无 ) +│ │ │ └── 布尔表达式 --> ( 难度等级: [0.0796, 0.08) || 挂载数据: 无 ) +│ │ ├── 循环 --> ( 难度等级: [0.08, 0.085) || 挂载数据: 无 ) +│ │ │ ├── for --> ( 难度等级: [0.08, 0.0806) || 挂载数据: qa: 7 ) +│ │ │ ├── while --> ( 难度等级: [0.0806, 0.0811) || 挂载数据: qa: 3 ) +│ │ │ ├── break --> ( 难度等级: [0.0811, 0.0817) || 挂载数据: qa: 2 ) +│ │ │ ├── continue --> ( 难度等级: [0.0817, 0.0822) || 挂载数据: qa: 1 ) +│ │ │ ├── 循环判断 --> ( 难度等级: [0.0822, 0.0828) || 挂载数据: 无 ) +│ │ │ ├── 迭代字典 --> ( 难度等级: [0.0828, 0.0833) || 挂载数据: 无 ) +│ │ │ ├── 一些迭代工具 --> ( 难度等级: [0.0833, 0.0839) || 挂载数据: 无 ) +│ │ │ ├── 跳出循环 --> ( 难度等级: [0.0839, 0.0844) || 挂载数据: 无 ) +│ │ │ └── 循环中的else子句 --> ( 难度等级: [0.0844, 0.085) || 挂载数据: qa: 3 ) +│ │ ├── 数据类型 --> ( 难度等级: [0.085, 0.09) || 挂载数据: 无 ) +│ │ │ ├── 整型 --> ( 难度等级: [0.085, 0.0853) || 挂载数据: 无 ) +│ │ │ ├── 浮点型 --> ( 难度等级: [0.0853, 0.0855) || 挂载数据: 无 ) +│ │ │ ├── 布尔型 --> ( 难度等级: [0.0855, 0.0858) || 挂载数据: 无 ) +│ │ │ ├── 字符串 --> ( 难度等级: [0.0858, 0.0861) || 挂载数据: qa: 2 ) +│ │ │ │ ├── 单引号字符串以及对引号转义 --> ( 难度等级: [0.0858, 0.0858) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 拼接字符串 --> ( 难度等级: [0.0858, 0.0858) || 挂载数据: 无 ) +│ │ │ │ ├── 字符串表示str和repr --> ( 难度等级: [0.0858, 0.0859) || 挂载数据: qa: 3 ) +│ │ │ │ ├── 长字符串、原始字符串和字节 --> ( 难度等级: [0.0859, 0.0859) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 字符串基本操作 --> ( 难度等级: [0.0859, 0.0859) || 挂载数据: 无 ) +│ │ │ │ ├── 设置字符串的格式:精简版 --> ( 难度等级: [0.0859, 0.0859) || 挂载数据: qa: 2 ) +│ │ │ │ │ └── 替换字段名 --> ( 难度等级: [0.0859, 0.0859) || 挂载数据: 无 ) +│ │ │ │ ├── 使用方法修改字符串的大小写 --> ( 难度等级: [0.0859, 0.086) || 挂载数据: 无 ) +│ │ │ │ ├── 使用制表符或换行符来添加空白 --> ( 难度等级: [0.086, 0.086) || 挂载数据: 无 ) +│ │ │ │ ├── 删除空白 --> ( 难度等级: [0.086, 0.086) || 挂载数据: 无 ) +│ │ │ │ ├── 使用字符串时避免语法错误 --> ( 难度等级: [0.086, 0.086) || 挂载数据: qa: 3 ) +│ │ │ │ └── 字符串编码转换 --> ( 难度等级: [0.086, 0.0861) || 挂载数据: qa: 2 ) +│ │ │ │ ├── 使用encode方法编码 --> ( 难度等级: [0.086, 0.086) || 挂载数据: qa: 2 ) +│ │ │ │ └── 使用decode方法解码 --> ( 难度等级: [0.086, 0.0861) || 挂载数据: 无 ) +│ │ │ ├── datetime --- 基本的日期和时间类型 --> ( 难度等级: [0.0861, 0.0863) || 挂载数据: 无 ) +│ │ │ ├── zoneinfo --- IANA时区支持 --> ( 难度等级: [0.0863, 0.0866) || 挂载数据: 无 ) +│ │ │ ├── calendar --- 日历相关函数 --> ( 难度等级: [0.0866, 0.0868) || 挂载数据: 无 ) +│ │ │ ├── collections --- 容器数据类型 --> ( 难度等级: [0.0868, 0.0871) || 挂载数据: qa: 1 ) +│ │ │ ├── collections.abc --- 容器的抽象基类 --> ( 难度等级: [0.0871, 0.0874) || 挂载数据: 无 ) +│ │ │ ├── heapq --- 堆队列算法 --> ( 难度等级: [0.0874, 0.0876) || 挂载数据: 无 ) +│ │ │ ├── bisect --- 数组二分查找算法 --> ( 难度等级: [0.0876, 0.0879) || 挂载数据: 无 ) +│ │ │ ├── array --- 高效的数值数组 --> ( 难度等级: [0.0879, 0.0882) || 挂载数据: qa: 1 ) +│ │ │ ├── weakref --- 弱引用 --> ( 难度等级: [0.0882, 0.0884) || 挂载数据: 无 ) +│ │ │ ├── types --- 动态类型创建和内置类型名称 --> ( 难度等级: [0.0884, 0.0887) || 挂载数据: 无 ) +│ │ │ ├── copy --- 浅层 (shallow) 和深层 (deep) 复制操作 --> ( 难度等级: [0.0887, 0.0889) || 挂载数据: qa: 1 ) +│ │ │ ├── pprint --- 数据美化输出 --> ( 难度等级: [0.0889, 0.0892) || 挂载数据: 无 ) +│ │ │ ├── reprlib --- 另一种repr 实现 --> ( 难度等级: [0.0892, 0.0895) || 挂载数据: 无 ) +│ │ │ ├── enum --- 对枚举的支持 --> ( 难度等级: [0.0895, 0.0897) || 挂载数据: 无 ) +│ │ │ └── graphlib --- Functionality to operate with graph-like structures --> ( 难度等级: [0.0897, 0.09) || 挂载数据: 无 ) +│ │ ├── 内置类 --> ( 难度等级: [0.09, 0.095) || 挂载数据: 无 ) +│ │ │ ├── 列表:list --> ( 难度等级: [0.09, 0.0908) || 挂载数据: 无 ) +│ │ │ │ ├── 函数list --> ( 难度等级: [0.09, 0.0901) || 挂载数据: qa: 10 ) +│ │ │ │ ├── 基本的列表操作 --> ( 难度等级: [0.0901, 0.0901) || 挂载数据: 无 ) +│ │ │ │ │ ├── 遍历整个列表 --> ( 难度等级: [0.0901, 0.0901) || 挂载数据: qa: 1 ) +│ │ │ │ │ │ ├── 深入研究循环 --> ( 难度等级: [0.0901, 0.0901) || 挂载数据: qa: 6 ) +│ │ │ │ │ │ ├── 在for循环中执行更多操作 --> ( 难度等级: [0.0901, 0.0901) || 挂载数据: qa: 10 ) +│ │ │ │ │ │ └── 在for循环结束后执行一些操作 --> ( 难度等级: [0.0901, 0.0901) || 挂载数据: qa: 1 ) +│ │ │ │ │ ├── 避免缩进错误 --> ( 难度等级: [0.0901, 0.0901) || 挂载数据: qa: 2 ) +│ │ │ │ │ │ ├── 忘记缩进 --> ( 难度等级: [0.0901, 0.0901) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 忘记缩进额外的代码行 --> ( 难度等级: [0.0901, 0.0901) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 不必要的缩进 --> ( 难度等级: [0.0901, 0.0901) || 挂载数据: qa: 2 ) +│ │ │ │ │ │ ├── 循环后不必要的缩进 --> ( 难度等级: [0.0901, 0.0901) || 挂载数据: 无 ) +│ │ │ │ │ │ └── 遗漏了冒号 --> ( 难度等级: [0.0901, 0.0901) || 挂载数据: qa: 1 ) +│ │ │ │ │ ├── 创建数值列表 --> ( 难度等级: [0.0901, 0.0901) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 使用range创建数字列表 --> ( 难度等级: [0.0901, 0.0901) || 挂载数据: qa: 6 ) +│ │ │ │ │ │ ├── 对数字列表执行简单的统计计算 --> ( 难度等级: [0.0901, 0.0901) || 挂载数据: qa: 3 ) +│ │ │ │ │ │ └── 列表解析 --> ( 难度等级: [0.0901, 0.0901) || 挂载数据: qa: 10 ) +│ │ │ │ │ └── 设置代码格式 --> ( 难度等级: [0.0901, 0.0901) || 挂载数据: 无 ) +│ │ │ │ │ ├── 格式设置指南 --> ( 难度等级: [0.0901, 0.0901) || 挂载数据: 无 ) +│ │ │ │ │ ├── 行长 --> ( 难度等级: [0.0901, 0.0901) || 挂载数据: 无 ) +│ │ │ │ │ ├── 空行 --> ( 难度等级: [0.0901, 0.0901) || 挂载数据: 无 ) +│ │ │ │ │ └── 其他格式设置指南 --> ( 难度等级: [0.0901, 0.0901) || 挂载数据: qa: 10 ) +│ │ │ │ ├── 列表方法 --> ( 难度等级: [0.0901, 0.0902) || 挂载数据: 无 ) +│ │ │ │ ├── 列表数据类型 --> ( 难度等级: [0.0902, 0.0902) || 挂载数据: 无 ) +│ │ │ │ ├── 增强的赋值操作 --> ( 难度等级: [0.0902, 0.0903) || 挂载数据: 无 ) +│ │ │ │ ├── 序列数据类型 --> ( 难度等级: [0.0903, 0.0903) || 挂载数据: 无 ) +│ │ │ │ ├── 引用 --> ( 难度等级: [0.0903, 0.0904) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 访问列表元素 --> ( 难度等级: [0.0904, 0.0904) || 挂载数据: 无 ) +│ │ │ │ ├── 索引从0而不是1开始 --> ( 难度等级: [0.0904, 0.0905) || 挂载数据: 无 ) +│ │ │ │ ├── 使用列表中的各个值 --> ( 难度等级: [0.0905, 0.0906) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 遍历切片 --> ( 难度等级: [0.0906, 0.0906) || 挂载数据: 无 ) +│ │ │ │ ├── 复制列表 --> ( 难度等级: [0.0906, 0.0907) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 列表的创建和删除 --> ( 难度等级: [0.0907, 0.0907) || 挂载数据: 无 ) +│ │ │ │ ├── 对列表进行统计计算 --> ( 难度等级: [0.0907, 0.0908) || 挂载数据: 无 ) +│ │ │ │ └── 对列表进行排序 --> ( 难度等级: [0.0908, 0.0908) || 挂载数据: 无 ) +│ │ │ ├── 字典:dict --> ( 难度等级: [0.0908, 0.0917) || 挂载数据: qa: 3 ) +│ │ │ │ ├── 访问字典中的值 --> ( 难度等级: [0.0908, 0.0909) || 挂载数据: 无 ) +│ │ │ │ ├── 添加键值对 --> ( 难度等级: [0.0909, 0.091) || 挂载数据: 无 ) +│ │ │ │ ├── 先创建一个空字典 --> ( 难度等级: [0.091, 0.0911) || 挂载数据: 无 ) +│ │ │ │ ├── 修改字典中的值 --> ( 难度等级: [0.0911, 0.0912) || 挂载数据: qa: 2 ) +│ │ │ │ ├── 删除键值对 --> ( 难度等级: [0.0912, 0.0912) || 挂载数据: 无 ) +│ │ │ │ ├── 由类似对象组成的字典 --> ( 难度等级: [0.0912, 0.0913) || 挂载数据: 无 ) +│ │ │ │ ├── 使用get来访问值 --> ( 难度等级: [0.0913, 0.0914) || 挂载数据: qa: 3 ) +│ │ │ │ ├── 遍历字典 --> ( 难度等级: [0.0914, 0.0915) || 挂载数据: 无 ) +│ │ │ │ │ ├── 遍历所有键值对 --> ( 难度等级: [0.0914, 0.0914) || 挂载数据: qa: 10 ) +│ │ │ │ │ ├── 遍历字典中的所有键 --> ( 难度等级: [0.0914, 0.0915) || 挂载数据: qa: 2 ) +│ │ │ │ │ ├── 按特定顺序遍历字典中的所有键 --> ( 难度等级: [0.0915, 0.0915) || 挂载数据: 无 ) +│ │ │ │ │ └── 遍历字典中的所有值 --> ( 难度等级: [0.0915, 0.0915) || 挂载数据: qa: 10 ) +│ │ │ │ ├── 访问字典 --> ( 难度等级: [0.0915, 0.0916) || 挂载数据: 无 ) +│ │ │ │ └── 字典推导式 --> ( 难度等级: [0.0916, 0.0917) || 挂载数据: qa: 1 ) +│ │ │ ├── 元组:tuple --> ( 难度等级: [0.0917, 0.0925) || 挂载数据: 无 ) +│ │ │ │ ├── 定义元组 --> ( 难度等级: [0.0917, 0.0918) || 挂载数据: 无 ) +│ │ │ │ ├── 遍历元组中的所有值 --> ( 难度等级: [0.0918, 0.0919) || 挂载数据: 无 ) +│ │ │ │ ├── 修改元组变量 --> ( 难度等级: [0.0919, 0.0921) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 访问元组元素 --> ( 难度等级: [0.0921, 0.0922) || 挂载数据: 无 ) +│ │ │ │ ├── 修改元组 --> ( 难度等级: [0.0922, 0.0924) || 挂载数据: qa: 3 ) +│ │ │ │ └── 元组推导式 --> ( 难度等级: [0.0924, 0.0925) || 挂载数据: 无 ) +│ │ │ ├── 集合:set --> ( 难度等级: [0.0925, 0.0933) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 创建集合 --> ( 难度等级: [0.0925, 0.0929) || 挂载数据: qa: 3 ) +│ │ │ │ └── 集合的交集、并集和差集运算 --> ( 难度等级: [0.0929, 0.0933) || 挂载数据: 无 ) +│ │ │ ├── 整型:int --> ( 难度等级: [0.0933, 0.0942) || 挂载数据: qa: 3 ) +│ │ │ └── 字符串:str --> ( 难度等级: [0.0942, 0.095) || 挂载数据: qa: 6 ) +│ │ └── 常用内置函数 --> ( 难度等级: [0.095, 0.1) || 挂载数据: 无 ) +│ │ ├── help --> ( 难度等级: [0.095, 0.0954) || 挂载数据: 无 ) +│ │ ├── input --> ( 难度等级: [0.0954, 0.0958) || 挂载数据: qa: 2 ) +│ │ ├── print --> ( 难度等级: [0.0958, 0.0962) || 挂载数据: qa: 10 ) +│ │ ├── range --> ( 难度等级: [0.0962, 0.0965) || 挂载数据: qa: 5 ) +│ │ ├── format --> ( 难度等级: [0.0965, 0.0969) || 挂载数据: qa: 6 ) +│ │ ├── len --> ( 难度等级: [0.0969, 0.0973) || 挂载数据: qa: 1 ) +│ │ ├── sorted --> ( 难度等级: [0.0973, 0.0977) || 挂载数据: qa: 5 ) +│ │ ├── open --> ( 难度等级: [0.0977, 0.0981) || 挂载数据: qa: 1 ) +│ │ ├── dir --> ( 难度等级: [0.0981, 0.0985) || 挂载数据: 无 ) +│ │ ├── enumerate/zip --> ( 难度等级: [0.0985, 0.0988) || 挂载数据: qa: 3 ) +│ │ ├── type/isinstance --> ( 难度等级: [0.0988, 0.0992) || 挂载数据: 无 ) +│ │ ├── min/max/sum --> ( 难度等级: [0.0992, 0.0996) || 挂载数据: qa: 3 ) +│ │ └── abs/round/pow/divmod --> ( 难度等级: [0.0996, 0.1) || 挂载数据: 无 ) +│ ├── 进阶语法 --> ( 难度等级: [0.1, 0.15) || 挂载数据: 无 ) +│ │ ├── 列表推导式 --> ( 难度等级: [0.1, 0.105) || 挂载数据: 无 ) +│ │ ├── 三元表达式 --> ( 难度等级: [0.105, 0.11) || 挂载数据: qa: 1 ) +│ │ │ ├── 算术转换 --> ( 难度等级: [0.105, 0.1053) || 挂载数据: 无 ) +│ │ │ ├── 原子 --> ( 难度等级: [0.1053, 0.1057) || 挂载数据: 无 ) +│ │ │ ├── 原型 --> ( 难度等级: [0.1057, 0.106) || 挂载数据: 无 ) +│ │ │ ├── await表达式 --> ( 难度等级: [0.106, 0.1063) || 挂载数据: qa: 3 ) +│ │ │ ├── 幂运算符 --> ( 难度等级: [0.1063, 0.1067) || 挂载数据: 无 ) +│ │ │ ├── 一元算术和位运算 --> ( 难度等级: [0.1067, 0.107) || 挂载数据: 无 ) +│ │ │ ├── 二元算术运算符 --> ( 难度等级: [0.107, 0.1073) || 挂载数据: 无 ) +│ │ │ ├── 移位运算 --> ( 难度等级: [0.1073, 0.1077) || 挂载数据: qa: 1 ) +│ │ │ ├── 比较运算 --> ( 难度等级: [0.1077, 0.108) || 挂载数据: 无 ) +│ │ │ ├── 布尔运算 --> ( 难度等级: [0.108, 0.1083) || 挂载数据: 无 ) +│ │ │ ├── 赋值表达式 --> ( 难度等级: [0.1083, 0.1087) || 挂载数据: qa: 1 ) +│ │ │ ├── 条件表达式 --> ( 难度等级: [0.1087, 0.109) || 挂载数据: 无 ) +│ │ │ ├── 表达式列表 --> ( 难度等级: [0.109, 0.1093) || 挂载数据: 无 ) +│ │ │ ├── 求值顺序 --> ( 难度等级: [0.1093, 0.1097) || 挂载数据: 无 ) +│ │ │ └── 运算符优先级 --> ( 难度等级: [0.1097, 0.11) || 挂载数据: 无 ) +│ │ ├── 断言 --> ( 难度等级: [0.11, 0.115) || 挂载数据: 无 ) +│ │ ├── with-as --> ( 难度等级: [0.115, 0.12) || 挂载数据: 无 ) +│ │ ├── 异常捕获预处理 --> ( 难度等级: [0.12, 0.125) || 挂载数据: 无 ) +│ │ │ ├── try-catch-finally --> ( 难度等级: [0.12, 0.1225) || 挂载数据: 无 ) +│ │ │ └── 异常捕获 --> ( 难度等级: [0.1225, 0.125) || 挂载数据: 无 ) +│ │ ├── 字符串方法 --> ( 难度等级: [0.125, 0.13) || 挂载数据: 无 ) +│ │ │ ├── find --> ( 难度等级: [0.125, 0.1255) || 挂载数据: qa: 5 ) +│ │ │ ├── index --> ( 难度等级: [0.1255, 0.1259) || 挂载数据: qa: 4 ) +│ │ │ ├── join --> ( 难度等级: [0.1259, 0.1264) || 挂载数据: qa: 2 ) +│ │ │ ├── lower --> ( 难度等级: [0.1264, 0.1268) || 挂载数据: qa: 2 ) +│ │ │ ├── replace --> ( 难度等级: [0.1268, 0.1273) || 挂载数据: qa: 2 ) +│ │ │ ├── split --> ( 难度等级: [0.1273, 0.1277) || 挂载数据: qa: 3 ) +│ │ │ ├── strip --> ( 难度等级: [0.1277, 0.1282) || 挂载数据: 无 ) +│ │ │ ├── translate --> ( 难度等级: [0.1282, 0.1286) || 挂载数据: 无 ) +│ │ │ ├── upper --> ( 难度等级: [0.1286, 0.1291) || 挂载数据: 无 ) +│ │ │ ├── center --> ( 难度等级: [0.1291, 0.1295) || 挂载数据: 无 ) +│ │ │ └── 判断字符串是否满足特定的条件 --> ( 难度等级: [0.1295, 0.13) || 挂载数据: qa: 1 ) +│ │ ├── lambda函数 --> ( 难度等级: [0.13, 0.135) || 挂载数据: qa: 1 ) +│ │ │ ├── 迭代器 --> ( 难度等级: [0.13, 0.1313) || 挂载数据: 无 ) +│ │ │ │ ├── 迭代器协议 --> ( 难度等级: [0.13, 0.1306) || 挂载数据: 无 ) +│ │ │ │ └── 从迭代器创建序列 --> ( 难度等级: [0.1306, 0.1313) || 挂载数据: 无 ) +│ │ │ ├── 生成器 --> ( 难度等级: [0.1313, 0.1325) || 挂载数据: 无 ) +│ │ │ │ ├── 创建生成器 --> ( 难度等级: [0.1313, 0.1315) || 挂载数据: qa: 6 ) +│ │ │ │ ├── 递归式生成器 --> ( 难度等级: [0.1315, 0.1318) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 通用生成器 --> ( 难度等级: [0.1318, 0.132) || 挂载数据: 无 ) +│ │ │ │ ├── 生成器的方法 --> ( 难度等级: [0.132, 0.1323) || 挂载数据: 无 ) +│ │ │ │ └── 模拟生成器 --> ( 难度等级: [0.1323, 0.1325) || 挂载数据: 无 ) +│ │ │ ├── 装饰器 --> ( 难度等级: [0.1325, 0.1338) || 挂载数据: qa: 1 ) +│ │ │ └── 闭包 --> ( 难度等级: [0.1338, 0.135) || 挂载数据: 无 ) +│ │ ├── 文件 --> ( 难度等级: [0.135, 0.14) || 挂载数据: 无 ) +│ │ │ ├── 打开文件 --> ( 难度等级: [0.135, 0.1363) || 挂载数据: qa: 10 ) +│ │ │ ├── 文件基本方法 --> ( 难度等级: [0.1363, 0.1375) || 挂载数据: 无 ) +│ │ │ ├── 文件内容迭代 --> ( 难度等级: [0.1375, 0.1388) || 挂载数据: 无 ) +│ │ │ │ ├── 每次一个字符(或字节) --> ( 难度等级: [0.1375, 0.1378) || 挂载数据: 无 ) +│ │ │ │ ├── 每次一行 --> ( 难度等级: [0.1378, 0.138) || 挂载数据: 无 ) +│ │ │ │ ├── 读取所有内容 --> ( 难度等级: [0.138, 0.1383) || 挂载数据: qa: 9 ) +│ │ │ │ ├── 使用fileinput实现延迟行迭代 --> ( 难度等级: [0.1383, 0.1385) || 挂载数据: 无 ) +│ │ │ │ └── 文件迭代器 --> ( 难度等级: [0.1385, 0.1388) || 挂载数据: 无 ) +│ │ │ └── 文件的基本方法 --> ( 难度等级: [0.1388, 0.14) || 挂载数据: 无 ) +│ │ │ ├── 读取和写入 --> ( 难度等级: [0.1388, 0.139) || 挂载数据: 无 ) +│ │ │ ├── 使用管道重定向输出 --> ( 难度等级: [0.139, 0.1393) || 挂载数据: 无 ) +│ │ │ ├── 读取和写入行 --> ( 难度等级: [0.1393, 0.1395) || 挂载数据: 无 ) +│ │ │ ├── 关闭文件 --> ( 难度等级: [0.1395, 0.1398) || 挂载数据: qa: 10 ) +│ │ │ └── 使用文件的基本方法 --> ( 难度等级: [0.1398, 0.14) || 挂载数据: qa: 1 ) +│ │ ├── 常用标准库 --> ( 难度等级: [0.14, 0.145) || 挂载数据: 无 ) +│ │ │ ├── datetime --> ( 难度等级: [0.14, 0.1405) || 挂载数据: qa: 1 ) +│ │ │ ├── json --> ( 难度等级: [0.1405, 0.1409) || 挂载数据: 无 ) +│ │ │ ├── math --> ( 难度等级: [0.1409, 0.1414) || 挂载数据: 无 ) +│ │ │ ├── os --> ( 难度等级: [0.1414, 0.1418) || 挂载数据: qa: 5 ) +│ │ │ ├── random --> ( 难度等级: [0.1418, 0.1423) || 挂载数据: qa: 7 ) +│ │ │ ├── re --> ( 难度等级: [0.1423, 0.1427) || 挂载数据: qa: 9 ) +│ │ │ ├── sys --> ( 难度等级: [0.1427, 0.1432) || 挂载数据: qa: 5 ) +│ │ │ ├── time --> ( 难度等级: [0.1432, 0.1436) || 挂载数据: 无 ) +│ │ │ ├── urllib --> ( 难度等级: [0.1436, 0.1441) || 挂载数据: qa: 3 ) +│ │ │ ├── fileinput --> ( 难度等级: [0.1441, 0.1445) || 挂载数据: 无 ) +│ │ │ └── 其他有趣的标准模块 --> ( 难度等级: [0.1445, 0.145) || 挂载数据: 无 ) +│ │ └── 字符编码与解码 --> ( 难度等级: [0.145, 0.15) || 挂载数据: 无 ) +│ │ └── 理解内码和字节码的概念 --> ( 难度等级: [0.145, 0.15) || 挂载数据: 无 ) +│ ├── 面向对象编程 --> ( 难度等级: [0.15, 0.2) || 挂载数据: 无 ) +│ │ ├── 类和对象的概念 --> ( 难度等级: [0.15, 0.1571) || 挂载数据: 无 ) +│ │ ├── 类成员 --> ( 难度等级: [0.1571, 0.1643) || 挂载数据: 无 ) +│ │ ├── 面向对象三要素 --> ( 难度等级: [0.1643, 0.1714) || 挂载数据: 无 ) +│ │ │ ├── 封装 --> ( 难度等级: [0.1643, 0.1667) || 挂载数据: 无 ) +│ │ │ ├── 继承 --> ( 难度等级: [0.1667, 0.169) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 子类的方法__init__ --> ( 难度等级: [0.1667, 0.1675) || 挂载数据: qa: 2 ) +│ │ │ │ ├── 重写父类的方法 --> ( 难度等级: [0.1675, 0.1683) || 挂载数据: 无 ) +│ │ │ │ └── 模拟实物 --> ( 难度等级: [0.1683, 0.169) || 挂载数据: 无 ) +│ │ │ └── 多态 --> ( 难度等级: [0.169, 0.1714) || 挂载数据: 无 ) +│ │ ├── 创建类 --> ( 难度等级: [0.1714, 0.1786) || 挂载数据: 无 ) +│ │ ├── 抽象类 --> ( 难度等级: [0.1786, 0.1857) || 挂载数据: 无 ) +│ │ ├── 访问限制 --> ( 难度等级: [0.1857, 0.1929) || 挂载数据: 无 ) +│ │ └── 获取对象信息 --> ( 难度等级: [0.1929, 0.2) || 挂载数据: 无 ) +│ └── 其他 --> ( 难度等级: [0.2, 0.25) || 挂载数据: 无 ) +│ ├── 命令行与环境 --> ( 难度等级: [0.2, 0.2005) || 挂载数据: 无 ) +│ │ ├── 命令行 --> ( 难度等级: [0.2, 0.2003) || 挂载数据: 无 ) +│ │ │ ├── 接口选项 --> ( 难度等级: [0.2, 0.2001) || 挂载数据: 无 ) +│ │ │ ├── 通用选项 --> ( 难度等级: [0.2001, 0.2001) || 挂载数据: qa: 1 ) +│ │ │ ├── 其他选项 --> ( 难度等级: [0.2001, 0.2002) || 挂载数据: qa: 2 ) +│ │ │ └── 不应当使用的选项 --> ( 难度等级: [0.2002, 0.2003) || 挂载数据: 无 ) +│ │ └── 环境变量 --> ( 难度等级: [0.2003, 0.2005) || 挂载数据: 无 ) +│ │ └── 调试模式变量 --> ( 难度等级: [0.2003, 0.2005) || 挂载数据: 无 ) +│ ├── 在Unix平台中使用Python --> ( 难度等级: [0.2005, 0.2011) || 挂载数据: 无 ) +│ │ ├── 获取最新版本的Python --> ( 难度等级: [0.2005, 0.2007) || 挂载数据: 无 ) +│ │ │ ├── 在Linux中 --> ( 难度等级: [0.2005, 0.2006) || 挂载数据: qa: 10 ) +│ │ │ ├── 在FreeBSD和OpenBSD上 --> ( 难度等级: [0.2006, 0.2007) || 挂载数据: 无 ) +│ │ │ └── 在OpenSolaris系统上 --> ( 难度等级: [0.2007, 0.2007) || 挂载数据: 无 ) +│ │ ├── 构建Python --> ( 难度等级: [0.2007, 0.2009) || 挂载数据: 无 ) +│ │ └── 杂项 --> ( 难度等级: [0.2009, 0.2011) || 挂载数据: 无 ) +│ ├── 在Windows上使用Python --> ( 难度等级: [0.2011, 0.2016) || 挂载数据: 无 ) +│ │ ├── 完整安装程序 --> ( 难度等级: [0.2011, 0.2011) || 挂载数据: 无 ) +│ │ │ ├── 安装步骤 --> ( 难度等级: [0.2011, 0.2011) || 挂载数据: qa: 2 ) +│ │ │ ├── 删除MAX_PATH限制 --> ( 难度等级: [0.2011, 0.2011) || 挂载数据: qa: 1 ) +│ │ │ ├── 无UI安装 --> ( 难度等级: [0.2011, 0.2011) || 挂载数据: qa: 1 ) +│ │ │ ├── 免下载安装 --> ( 难度等级: [0.2011, 0.2011) || 挂载数据: 无 ) +│ │ │ └── 修改安装 --> ( 难度等级: [0.2011, 0.2011) || 挂载数据: 无 ) +│ │ ├── Microsoft Store包 --> ( 难度等级: [0.2011, 0.2012) || 挂载数据: qa: 1 ) +│ │ ├── nuget.org安装包 --> ( 难度等级: [0.2012, 0.2012) || 挂载数据: 无 ) +│ │ ├── 可嵌入的包 --> ( 难度等级: [0.2012, 0.2012) || 挂载数据: 无 ) +│ │ │ ├── Python应用程序 --> ( 难度等级: [0.2012, 0.2012) || 挂载数据: qa: 1 ) +│ │ │ └── 嵌入Python --> ( 难度等级: [0.2012, 0.2012) || 挂载数据: qa: 2 ) +│ │ ├── 替代捆绑包 --> ( 难度等级: [0.2012, 0.2013) || 挂载数据: 无 ) +│ │ ├── 配置Python --> ( 难度等级: [0.2013, 0.2013) || 挂载数据: 无 ) +│ │ │ └── 查找Python可执行文件 --> ( 难度等级: [0.2013, 0.2013) || 挂载数据: 无 ) +│ │ ├── UTF-8 模式 --> ( 难度等级: [0.2013, 0.2014) || 挂载数据: qa: 4 ) +│ │ ├── 适用于Windows的Python启动器 --> ( 难度等级: [0.2014, 0.2014) || 挂载数据: 无 ) +│ │ │ ├── 入门 --> ( 难度等级: [0.2014, 0.2014) || 挂载数据: 无 ) +│ │ │ │ ├── 从虚拟环境 --> ( 难度等级: [0.2014, 0.2014) || 挂载数据: 无 ) +│ │ │ │ ├── 从脚本 --> ( 难度等级: [0.2014, 0.2014) || 挂载数据: qa: 1 ) +│ │ │ │ └── 从文件关联 --> ( 难度等级: [0.2014, 0.2014) || 挂载数据: 无 ) +│ │ │ ├── Shebang Lines --> ( 难度等级: [0.2014, 0.2014) || 挂载数据: 无 ) +│ │ │ ├── shebang lines的参数 --> ( 难度等级: [0.2014, 0.2014) || 挂载数据: 无 ) +│ │ │ ├── 自定义 --> ( 难度等级: [0.2014, 0.2014) || 挂载数据: 无 ) +│ │ │ │ ├── 通过INI文件自定义 --> ( 难度等级: [0.2014, 0.2014) || 挂载数据: 无 ) +│ │ │ │ └── 自定义默认的Python版本 --> ( 难度等级: [0.2014, 0.2014) || 挂载数据: qa: 1 ) +│ │ │ └── 诊断 --> ( 难度等级: [0.2014, 0.2014) || 挂载数据: 无 ) +│ │ ├── 查找模块 --> ( 难度等级: [0.2014, 0.2015) || 挂载数据: 无 ) +│ │ ├── 附加模块 --> ( 难度等级: [0.2015, 0.2015) || 挂载数据: 无 ) +│ │ │ ├── PyWin32 --> ( 难度等级: [0.2015, 0.2015) || 挂载数据: 无 ) +│ │ │ ├── cx_Freeze --> ( 难度等级: [0.2015, 0.2015) || 挂载数据: 无 ) +│ │ │ └── WConio --> ( 难度等级: [0.2015, 0.2015) || 挂载数据: 无 ) +│ │ ├── 在Windows上编译Python --> ( 难度等级: [0.2015, 0.2016) || 挂载数据: qa: 7 ) +│ │ └── 其他平台 --> ( 难度等级: [0.2016, 0.2016) || 挂载数据: qa: 1 ) +│ ├── 在苹果系统上使用Python --> ( 难度等级: [0.2016, 0.2021) || 挂载数据: 无 ) +│ │ ├── 获取和安装MacPython --> ( 难度等级: [0.2016, 0.2017) || 挂载数据: 无 ) +│ │ │ ├── 如何运行Python脚本 --> ( 难度等级: [0.2016, 0.2016) || 挂载数据: 无 ) +│ │ │ ├── 运行有图形界面的脚本 --> ( 难度等级: [0.2016, 0.2017) || 挂载数据: 无 ) +│ │ │ └── 配置 --> ( 难度等级: [0.2017, 0.2017) || 挂载数据: qa: 1 ) +│ │ │ ├── 提取常量 --> ( 难度等级: [0.2017, 0.2017) || 挂载数据: qa: 7 ) +│ │ │ └── 配置文件 --> ( 难度等级: [0.2017, 0.2017) || 挂载数据: 无 ) +│ │ ├── IDE --> ( 难度等级: [0.2017, 0.2018) || 挂载数据: qa: 3 ) +│ │ ├── 安装额外的Python包 --> ( 难度等级: [0.2018, 0.2019) || 挂载数据: 无 ) +│ │ ├── Mac上的图形界面编程 --> ( 难度等级: [0.2019, 0.202) || 挂载数据: 无 ) +│ │ ├── 在Mac上分发Python应用程序 --> ( 难度等级: [0.202, 0.202) || 挂载数据: 无 ) +│ │ └── 其他资源 --> ( 难度等级: [0.202, 0.2021) || 挂载数据: 无 ) +│ ├── 编辑器和集成开发环境 --> ( 难度等级: [0.2021, 0.2027) || 挂载数据: qa: 1 ) +│ ├── Python解释器 --> ( 难度等级: [0.2027, 0.2032) || 挂载数据: 无 ) +│ │ ├── 调用解释器 --> ( 难度等级: [0.2027, 0.2029) || 挂载数据: qa: 1 ) +│ │ │ ├── 传入参数 --> ( 难度等级: [0.2027, 0.2028) || 挂载数据: 无 ) +│ │ │ └── 交互模式 --> ( 难度等级: [0.2028, 0.2029) || 挂载数据: qa: 2 ) +│ │ └── 解释器的运行环境 --> ( 难度等级: [0.2029, 0.2032) || 挂载数据: qa: 1 ) +│ │ └── 源文件的字符编码 --> ( 难度等级: [0.2029, 0.2032) || 挂载数据: 无 ) +│ ├── Python速览 --> ( 难度等级: [0.2032, 0.2037) || 挂载数据: 无 ) +│ │ ├── Python用作计算器 --> ( 难度等级: [0.2032, 0.2035) || 挂载数据: qa: 1 ) +│ │ │ └── 数字 --> ( 难度等级: [0.2032, 0.2035) || 挂载数据: qa: 1 ) +│ │ └── 走向编程的第一步 --> ( 难度等级: [0.2035, 0.2037) || 挂载数据: 无 ) +│ ├── 其他流程控制工具 --> ( 难度等级: [0.2037, 0.2043) || 挂载数据: 无 ) +│ │ ├── range 函数 --> ( 难度等级: [0.2037, 0.2038) || 挂载数据: qa: 1 ) +│ │ ├── pass语句 --> ( 难度等级: [0.2038, 0.2039) || 挂载数据: qa: 1 ) +│ │ ├── 定义函数 --> ( 难度等级: [0.2039, 0.204) || 挂载数据: qa: 3 ) +│ │ │ ├── 向函数传递信息 --> ( 难度等级: [0.2039, 0.204) || 挂载数据: 无 ) +│ │ │ └── 实参和形参 --> ( 难度等级: [0.204, 0.204) || 挂载数据: 无 ) +│ │ ├── 函数定义详解 --> ( 难度等级: [0.204, 0.2041) || 挂载数据: 无 ) +│ │ │ ├── 默认值参数 --> ( 难度等级: [0.204, 0.2041) || 挂载数据: 无 ) +│ │ │ ├── 关键字参数 --> ( 难度等级: [0.2041, 0.2041) || 挂载数据: 无 ) +│ │ │ ├── 特殊参数 --> ( 难度等级: [0.2041, 0.2041) || 挂载数据: 无 ) +│ │ │ │ ├── 位置或关键字参数 --> ( 难度等级: [0.2041, 0.2041) || 挂载数据: 无 ) +│ │ │ │ ├── 仅位置参数 --> ( 难度等级: [0.2041, 0.2041) || 挂载数据: 无 ) +│ │ │ │ ├── 仅限关键字参数 --> ( 难度等级: [0.2041, 0.2041) || 挂载数据: 无 ) +│ │ │ │ └── 函数示例 --> ( 难度等级: [0.2041, 0.2041) || 挂载数据: 无 ) +│ │ │ ├── 任意实参列表 --> ( 难度等级: [0.2041, 0.2041) || 挂载数据: 无 ) +│ │ │ ├── 解包实参列表 --> ( 难度等级: [0.2041, 0.2041) || 挂载数据: 无 ) +│ │ │ ├── Lambda表达式 --> ( 难度等级: [0.2041, 0.2041) || 挂载数据: qa: 2 ) +│ │ │ ├── 文档字符串 --> ( 难度等级: [0.2041, 0.2041) || 挂载数据: 无 ) +│ │ │ └── 函数注解 --> ( 难度等级: [0.2041, 0.2041) || 挂载数据: 无 ) +│ │ └── 小插曲:编码风格 --> ( 难度等级: [0.2041, 0.2043) || 挂载数据: 无 ) +│ ├── 数据结构 --> ( 难度等级: [0.2043, 0.2048) || 挂载数据: 无 ) +│ │ ├── 列表详解 --> ( 难度等级: [0.2043, 0.2043) || 挂载数据: qa: 2 ) +│ │ │ ├── 用列表实现堆栈 --> ( 难度等级: [0.2043, 0.2043) || 挂载数据: 无 ) +│ │ │ ├── 用列表实现队列 --> ( 难度等级: [0.2043, 0.2043) || 挂载数据: 无 ) +│ │ │ └── 嵌套的列表推导式 --> ( 难度等级: [0.2043, 0.2043) || 挂载数据: 无 ) +│ │ ├── del语句 --> ( 难度等级: [0.2043, 0.2044) || 挂载数据: 无 ) +│ │ ├── 循环的技巧 --> ( 难度等级: [0.2044, 0.2045) || 挂载数据: 无 ) +│ │ ├── 深入条件控制 --> ( 难度等级: [0.2045, 0.2046) || 挂载数据: 无 ) +│ │ ├── 序列和其他类型的比较 --> ( 难度等级: [0.2046, 0.2046) || 挂载数据: 无 ) +│ │ ├── 序列构成的数组 --> ( 难度等级: [0.2046, 0.2047) || 挂载数据: 无 ) +│ │ │ ├── 内置序列类型概览 --> ( 难度等级: [0.2046, 0.2046) || 挂载数据: 无 ) +│ │ │ ├── 元组不仅仅是不可变的列表 --> ( 难度等级: [0.2046, 0.2047) || 挂载数据: 无 ) +│ │ │ ├── 序列的增量赋值 --> ( 难度等级: [0.2047, 0.2047) || 挂载数据: 无 ) +│ │ │ ├── list.sort方法和内置函数sorted --> ( 难度等级: [0.2047, 0.2047) || 挂载数据: 无 ) +│ │ │ ├── 用bisect来管理已排序的序列 --> ( 难度等级: [0.2047, 0.2047) || 挂载数据: qa: 1 ) +│ │ │ └── 当列表不是首选时 --> ( 难度等级: [0.2047, 0.2047) || 挂载数据: 无 ) +│ │ └── 文本和字节序列 --> ( 难度等级: [0.2047, 0.2048) || 挂载数据: 无 ) +│ │ ├── 字节概要 --> ( 难度等级: [0.2047, 0.2047) || 挂载数据: 无 ) +│ │ ├── 基本的编解码器 --> ( 难度等级: [0.2047, 0.2047) || 挂载数据: 无 ) +│ │ ├── 处理文本文件 --> ( 难度等级: [0.2047, 0.2047) || 挂载数据: 无 ) +│ │ ├── 为了正确比较而规范化Unicode字符串 --> ( 难度等级: [0.2047, 0.2048) || 挂载数据: 无 ) +│ │ ├── Unicode文本排序 --> ( 难度等级: [0.2048, 0.2048) || 挂载数据: 无 ) +│ │ ├── Unicode数据库 --> ( 难度等级: [0.2048, 0.2048) || 挂载数据: 无 ) +│ │ └── 支持字符串和字节序列的双模式API --> ( 难度等级: [0.2048, 0.2048) || 挂载数据: qa: 1 ) +│ ├── 模块 --> ( 难度等级: [0.2048, 0.2053) || 挂载数据: 无 ) +│ │ ├── 模块详解 --> ( 难度等级: [0.2048, 0.2048) || 挂载数据: 无 ) +│ │ │ ├── 以脚本方式执行模块 --> ( 难度等级: [0.2048, 0.2048) || 挂载数据: 无 ) +│ │ │ ├── 模块搜索路径 --> ( 难度等级: [0.2048, 0.2048) || 挂载数据: qa: 1 ) +│ │ │ └── “已编译的” Python文件 --> ( 难度等级: [0.2048, 0.2048) || 挂载数据: 无 ) +│ │ ├── 标准模块 --> ( 难度等级: [0.2048, 0.2049) || 挂载数据: 无 ) +│ │ ├── dir 函数 --> ( 难度等级: [0.2049, 0.2049) || 挂载数据: 无 ) +│ │ ├── 包 --> ( 难度等级: [0.2049, 0.2049) || 挂载数据: 无 ) +│ │ │ ├── 从包中导入 * --> ( 难度等级: [0.2049, 0.2049) || 挂载数据: qa: 1 ) +│ │ │ ├── 子包参考 --> ( 难度等级: [0.2049, 0.2049) || 挂载数据: 无 ) +│ │ │ └── 多目录中的包 --> ( 难度等级: [0.2049, 0.2049) || 挂载数据: qa: 4 ) +│ │ ├── 安装第三方模块 --> ( 难度等级: [0.2049, 0.205) || 挂载数据: qa: 4 ) +│ │ ├── Pillow --> ( 难度等级: [0.205, 0.205) || 挂载数据: 无 ) +│ │ ├── requests --> ( 难度等级: [0.205, 0.2051) || 挂载数据: qa: 10 ) +│ │ ├── chardet --> ( 难度等级: [0.2051, 0.2051) || 挂载数据: 无 ) +│ │ ├── psutil --> ( 难度等级: [0.2051, 0.2051) || 挂载数据: 无 ) +│ │ ├── cmath和复数 --> ( 难度等级: [0.2051, 0.2052) || 挂载数据: 无 ) +│ │ ├── 回到未来 --> ( 难度等级: [0.2052, 0.2052) || 挂载数据: 无 ) +│ │ ├── 模块就是程序 --> ( 难度等级: [0.2052, 0.2052) || 挂载数据: 无 ) +│ │ ├── 模块是用来下定义的 --> ( 难度等级: [0.2052, 0.2053) || 挂载数据: 无 ) +│ │ └── 让模块可用 --> ( 难度等级: [0.2053, 0.2053) || 挂载数据: 无 ) +│ ├── 输入与输出 --> ( 难度等级: [0.2053, 0.2059) || 挂载数据: 无 ) +│ │ ├── 更复杂的输出格式 --> ( 难度等级: [0.2053, 0.2055) || 挂载数据: qa: 10 ) +│ │ │ ├── 格式化字符串字面值 --> ( 难度等级: [0.2053, 0.2054) || 挂载数据: 无 ) +│ │ │ ├── 字符串format 方法 --> ( 难度等级: [0.2054, 0.2054) || 挂载数据: qa: 3 ) +│ │ │ ├── 手动格式化字符串 --> ( 难度等级: [0.2054, 0.2054) || 挂载数据: 无 ) +│ │ │ └── 旧式字符串格式化方法 --> ( 难度等级: [0.2054, 0.2055) || 挂载数据: 无 ) +│ │ ├── 读写文件 --> ( 难度等级: [0.2055, 0.2056) || 挂载数据: qa: 3 ) +│ │ │ ├── 文件对象的方法 --> ( 难度等级: [0.2055, 0.2055) || 挂载数据: 无 ) +│ │ │ ├── 使用json保存结构化数据 --> ( 难度等级: [0.2055, 0.2055) || 挂载数据: 无 ) +│ │ │ ├── 文件读写过程 --> ( 难度等级: [0.2055, 0.2055) || 挂载数据: qa: 5 ) +│ │ │ ├── 用shelve模块保存变量 --> ( 难度等级: [0.2055, 0.2056) || 挂载数据: 无 ) +│ │ │ └── 用pprint.pformat函数保存变量 --> ( 难度等级: [0.2056, 0.2056) || 挂载数据: 无 ) +│ │ ├── 使用input函数输入 --> ( 难度等级: [0.2056, 0.2057) || 挂载数据: qa: 4 ) +│ │ └── 使用print函数输出 --> ( 难度等级: [0.2057, 0.2059) || 挂载数据: qa: 8 ) +│ ├── 错误和异常 --> ( 难度等级: [0.2059, 0.2064) || 挂载数据: 无 ) +│ │ ├── 句法错误 --> ( 难度等级: [0.2059, 0.2059) || 挂载数据: 无 ) +│ │ ├── 异常 --> ( 难度等级: [0.2059, 0.2059) || 挂载数据: 无 ) +│ │ ├── 处理异常 --> ( 难度等级: [0.2059, 0.206) || 挂载数据: qa: 1 ) +│ │ ├── 触发异常 --> ( 难度等级: [0.206, 0.206) || 挂载数据: 无 ) +│ │ ├── 异常链 --> ( 难度等级: [0.206, 0.2061) || 挂载数据: 无 ) +│ │ ├── 用户自定义异常 --> ( 难度等级: [0.2061, 0.2061) || 挂载数据: qa: 1 ) +│ │ ├── 定义清理操作 --> ( 难度等级: [0.2061, 0.2061) || 挂载数据: 无 ) +│ │ ├── 预定义的清理操作 --> ( 难度等级: [0.2061, 0.2062) || 挂载数据: 无 ) +│ │ ├── 异常是什么 --> ( 难度等级: [0.2062, 0.2062) || 挂载数据: 无 ) +│ │ ├── 让事情沿你指定的轨道出错 --> ( 难度等级: [0.2062, 0.2063) || 挂载数据: qa: 8 ) +│ │ │ └── 自定义的异常类 --> ( 难度等级: [0.2062, 0.2063) || 挂载数据: 无 ) +│ │ ├── 捕获异常 --> ( 难度等级: [0.2063, 0.2063) || 挂载数据: 无 ) +│ │ │ ├── 不用提供参数 --> ( 难度等级: [0.2063, 0.2063) || 挂载数据: 无 ) +│ │ │ ├── 多个except子句 --> ( 难度等级: [0.2063, 0.2063) || 挂载数据: qa: 1 ) +│ │ │ ├── 一箭双雕 --> ( 难度等级: [0.2063, 0.2063) || 挂载数据: 无 ) +│ │ │ ├── 捕获对象 --> ( 难度等级: [0.2063, 0.2063) || 挂载数据: 无 ) +│ │ │ ├── 一网打尽 --> ( 难度等级: [0.2063, 0.2063) || 挂载数据: 无 ) +│ │ │ ├── 万事大吉时 --> ( 难度等级: [0.2063, 0.2063) || 挂载数据: 无 ) +│ │ │ └── 最后 --> ( 难度等级: [0.2063, 0.2063) || 挂载数据: 无 ) +│ │ ├── 异常之禅 --> ( 难度等级: [0.2063, 0.2063) || 挂载数据: 无 ) +│ │ └── 不那么异常的情况 --> ( 难度等级: [0.2063, 0.2064) || 挂载数据: qa: 5 ) +│ ├── 标准库简介 --> ( 难度等级: [0.2064, 0.2069) || 挂载数据: 无 ) +│ │ ├── 操作系统接口 --> ( 难度等级: [0.2064, 0.2064) || 挂载数据: 无 ) +│ │ ├── 文件通配符 --> ( 难度等级: [0.2064, 0.2064) || 挂载数据: 无 ) +│ │ ├── 命令行参数 --> ( 难度等级: [0.2064, 0.2065) || 挂载数据: 无 ) +│ │ ├── 错误输出重定向和程序终止 --> ( 难度等级: [0.2065, 0.2065) || 挂载数据: 无 ) +│ │ ├── 字符串模式匹配 --> ( 难度等级: [0.2065, 0.2065) || 挂载数据: 无 ) +│ │ ├── 数学 --> ( 难度等级: [0.2065, 0.2065) || 挂载数据: 无 ) +│ │ ├── 互联网访问 --> ( 难度等级: [0.2065, 0.2066) || 挂载数据: 无 ) +│ │ ├── 日期和时间 --> ( 难度等级: [0.2066, 0.2066) || 挂载数据: qa: 1 ) +│ │ ├── 数据压缩 --> ( 难度等级: [0.2066, 0.2066) || 挂载数据: 无 ) +│ │ ├── 性能测量 --> ( 难度等级: [0.2066, 0.2066) || 挂载数据: 无 ) +│ │ ├── 质量控制 --> ( 难度等级: [0.2066, 0.2067) || 挂载数据: 无 ) +│ │ ├── 自带电池 --> ( 难度等级: [0.2067, 0.2067) || 挂载数据: 无 ) +│ │ ├── 格式化输出 --> ( 难度等级: [0.2067, 0.2067) || 挂载数据: qa: 1 ) +│ │ ├── 模板 --> ( 难度等级: [0.2067, 0.2068) || 挂载数据: 无 ) +│ │ ├── 使用二进制数据记录格式 --> ( 难度等级: [0.2068, 0.2068) || 挂载数据: 无 ) +│ │ ├── 多线程 --> ( 难度等级: [0.2068, 0.2068) || 挂载数据: 无 ) +│ │ ├── 日志 --> ( 难度等级: [0.2068, 0.2068) || 挂载数据: 无 ) +│ │ ├── 弱引用 --> ( 难度等级: [0.2068, 0.2069) || 挂载数据: 无 ) +│ │ ├── 用于操作列表的工具 --> ( 难度等级: [0.2069, 0.2069) || 挂载数据: 无 ) +│ │ └── 十进制浮点运算 --> ( 难度等级: [0.2069, 0.2069) || 挂载数据: 无 ) +│ ├── 交互式编辑和编辑历史 --> ( 难度等级: [0.2069, 0.2074) || 挂载数据: 无 ) +│ │ ├── Tab补全和编辑历史 --> ( 难度等级: [0.2069, 0.2072) || 挂载数据: 无 ) +│ │ └── 默认交互式解释器的替代品 --> ( 难度等级: [0.2072, 0.2074) || 挂载数据: 无 ) +│ ├── 浮点算术:争议和限制 --> ( 难度等级: [0.2074, 0.208) || 挂载数据: 无 ) +│ │ └── 表示性错误 --> ( 难度等级: [0.2074, 0.208) || 挂载数据: 无 ) +│ ├── 概述 --> ( 难度等级: [0.208, 0.2085) || 挂载数据: 无 ) +│ │ ├── 其他实现 --> ( 难度等级: [0.208, 0.2082) || 挂载数据: 无 ) +│ │ ├── 标注 --> ( 难度等级: [0.2082, 0.2083) || 挂载数据: 无 ) +│ │ └── 可用性注释 --> ( 难度等级: [0.2083, 0.2085) || 挂载数据: 无 ) +│ ├── 词法分析 --> ( 难度等级: [0.2085, 0.209) || 挂载数据: 无 ) +│ │ ├── 行结构 --> ( 难度等级: [0.2085, 0.2086) || 挂载数据: qa: 1 ) +│ │ ├── 其他形符 --> ( 难度等级: [0.2086, 0.2087) || 挂载数据: 无 ) +│ │ ├── 字面值 --> ( 难度等级: [0.2087, 0.2088) || 挂载数据: 无 ) +│ │ ├── 运算符 --> ( 难度等级: [0.2088, 0.2089) || 挂载数据: 无 ) +│ │ │ ├── 赋值运算符 --> ( 难度等级: [0.2088, 0.2089) || 挂载数据: qa: 2 ) +│ │ │ ├── 比较(关系)运算符 --> ( 难度等级: [0.2089, 0.2089) || 挂载数据: 无 ) +│ │ │ ├── 逻辑运算符 --> ( 难度等级: [0.2089, 0.2089) || 挂载数据: 无 ) +│ │ │ └── 位运算符 --> ( 难度等级: [0.2089, 0.2089) || 挂载数据: qa: 2 ) +│ │ └── 分隔符 --> ( 难度等级: [0.2089, 0.209) || 挂载数据: 无 ) +│ ├── 数据模型 --> ( 难度等级: [0.209, 0.2096) || 挂载数据: 无 ) +│ │ ├── 标准类型层级结构 --> ( 难度等级: [0.209, 0.2092) || 挂载数据: 无 ) +│ │ ├── 特殊方法名称 --> ( 难度等级: [0.2092, 0.2094) || 挂载数据: 无 ) +│ │ └── 协程 --> ( 难度等级: [0.2094, 0.2096) || 挂载数据: 无 ) +│ │ ├── 生成器如何进化成协程 --> ( 难度等级: [0.2094, 0.2094) || 挂载数据: 无 ) +│ │ ├── 用作协程的生成器的基本行为 --> ( 难度等级: [0.2094, 0.2094) || 挂载数据: 无 ) +│ │ ├── 预激协程的装饰器 --> ( 难度等级: [0.2094, 0.2095) || 挂载数据: 无 ) +│ │ ├── 让协程返回值 --> ( 难度等级: [0.2095, 0.2095) || 挂载数据: qa: 1 ) +│ │ ├── 使用yield from --> ( 难度等级: [0.2095, 0.2095) || 挂载数据: 无 ) +│ │ ├── yield from的意义 --> ( 难度等级: [0.2095, 0.2095) || 挂载数据: qa: 1 ) +│ │ └── 使用案例:使用协程做离散事件仿真 --> ( 难度等级: [0.2095, 0.2096) || 挂载数据: 无 ) +│ ├── 执行模型 --> ( 难度等级: [0.2096, 0.2101) || 挂载数据: 无 ) +│ │ ├── 程序的结构 --> ( 难度等级: [0.2096, 0.2098) || 挂载数据: qa: 4 ) +│ │ └── 命名与绑定 --> ( 难度等级: [0.2098, 0.2101) || 挂载数据: 无 ) +│ ├── 导入系统 --> ( 难度等级: [0.2101, 0.2106) || 挂载数据: 无 ) +│ │ ├── importlib --> ( 难度等级: [0.2101, 0.2102) || 挂载数据: 无 ) +│ │ ├── 搜索 --> ( 难度等级: [0.2102, 0.2102) || 挂载数据: 无 ) +│ │ ├── 加载 --> ( 难度等级: [0.2102, 0.2103) || 挂载数据: qa: 1 ) +│ │ ├── 基于路径的查找器 --> ( 难度等级: [0.2103, 0.2104) || 挂载数据: 无 ) +│ │ ├── 替换标准导入系统 --> ( 难度等级: [0.2104, 0.2104) || 挂载数据: qa: 5 ) +│ │ ├── 包相对导入 --> ( 难度等级: [0.2104, 0.2105) || 挂载数据: 无 ) +│ │ ├── 有关__main__的特殊事项 --> ( 难度等级: [0.2105, 0.2106) || 挂载数据: qa: 3 ) +│ │ └── 参考文献 --> ( 难度等级: [0.2106, 0.2106) || 挂载数据: 无 ) +│ ├── 复合语句 --> ( 难度等级: [0.2106, 0.2112) || 挂载数据: 无 ) +│ │ ├── while语句 --> ( 难度等级: [0.2106, 0.2107) || 挂载数据: 无 ) +│ │ ├── try语句 --> ( 难度等级: [0.2107, 0.2109) || 挂载数据: 无 ) +│ │ ├── with语句 --> ( 难度等级: [0.2109, 0.211) || 挂载数据: qa: 1 ) +│ │ ├── 函数定义 --> ( 难度等级: [0.211, 0.2111) || 挂载数据: qa: 2 ) +│ │ └── 类定义 --> ( 难度等级: [0.2111, 0.2112) || 挂载数据: 无 ) +│ ├── 顶级组件 --> ( 难度等级: [0.2112, 0.2117) || 挂载数据: 无 ) +│ │ ├── 完整的Python程序 --> ( 难度等级: [0.2112, 0.2113) || 挂载数据: 无 ) +│ │ │ ├── 使用文本编辑器 --> ( 难度等级: [0.2112, 0.2112) || 挂载数据: 无 ) +│ │ │ └── Python代码运行助手 --> ( 难度等级: [0.2112, 0.2113) || 挂载数据: 无 ) +│ │ ├── 文件输入 --> ( 难度等级: [0.2113, 0.2114) || 挂载数据: qa: 1 ) +│ │ ├── 交互式输入 --> ( 难度等级: [0.2114, 0.2116) || 挂载数据: 无 ) +│ │ └── 表达式输入 --> ( 难度等级: [0.2116, 0.2117) || 挂载数据: 无 ) +│ ├── 完整的语法规范 --> ( 难度等级: [0.2117, 0.2122) || 挂载数据: 无 ) +│ ├── 内置常量 --> ( 难度等级: [0.2122, 0.2128) || 挂载数据: 无 ) +│ │ └── 由site模块添加的常量 --> ( 难度等级: [0.2122, 0.2128) || 挂载数据: 无 ) +│ ├── 内置类型 --> ( 难度等级: [0.2128, 0.2133) || 挂载数据: 无 ) +│ │ ├── 逻辑值检测 --> ( 难度等级: [0.2128, 0.2128) || 挂载数据: 无 ) +│ │ ├── 布尔运算 --- and, or, not --> ( 难度等级: [0.2128, 0.2128) || 挂载数据: qa: 6 ) +│ │ ├── 比较 --> ( 难度等级: [0.2128, 0.2129) || 挂载数据: 无 ) +│ │ ├── 数字类型 --- int, float, complex --> ( 难度等级: [0.2129, 0.2129) || 挂载数据: qa: 4 ) +│ │ ├── 迭代器类型 --> ( 难度等级: [0.2129, 0.213) || 挂载数据: 无 ) +│ │ ├── 序列类型 --- list, tuple, range --> ( 难度等级: [0.213, 0.213) || 挂载数据: qa: 2 ) +│ │ ├── 文本序列类型 --- str --> ( 难度等级: [0.213, 0.2131) || 挂载数据: qa: 1 ) +│ │ ├── 二进制序列类型 --- bytes, bytearray, memoryview --> ( 难度等级: [0.2131, 0.2131) || 挂载数据: 无 ) +│ │ ├── 集合类型 --- set, frozenset --> ( 难度等级: [0.2131, 0.2131) || 挂载数据: 无 ) +│ │ ├── 映射类型 --- dict --> ( 难度等级: [0.2131, 0.2132) || 挂载数据: 无 ) +│ │ ├── 上下文管理器类型 --> ( 难度等级: [0.2132, 0.2132) || 挂载数据: 无 ) +│ │ ├── Generic Alias Type --> ( 难度等级: [0.2132, 0.2133) || 挂载数据: 无 ) +│ │ └── 其他内置类型 --> ( 难度等级: [0.2133, 0.2133) || 挂载数据: qa: 2 ) +│ ├── 内置异常 --> ( 难度等级: [0.2133, 0.2138) || 挂载数据: 无 ) +│ │ ├── 基类 --> ( 难度等级: [0.2133, 0.2135) || 挂载数据: 无 ) +│ │ ├── 警告 --> ( 难度等级: [0.2135, 0.2137) || 挂载数据: qa: 1 ) +│ │ └── 异常层次结构 --> ( 难度等级: [0.2137, 0.2138) || 挂载数据: 无 ) +│ ├── 文本处理服务 --> ( 难度等级: [0.2138, 0.2144) || 挂载数据: 无 ) +│ │ ├── string --- 常见的字符串操作 --> ( 难度等级: [0.2138, 0.2139) || 挂载数据: qa: 5 ) +│ │ ├── re --- 正则表达式操作 --> ( 难度等级: [0.2139, 0.214) || 挂载数据: 无 ) +│ │ ├── difflib --- 计算差异的辅助工具 --> ( 难度等级: [0.214, 0.214) || 挂载数据: 无 ) +│ │ ├── textwrap --- 文本自动换行与填充 --> ( 难度等级: [0.214, 0.2141) || 挂载数据: 无 ) +│ │ ├── unicodedata --- Unicode数据库 --> ( 难度等级: [0.2141, 0.2142) || 挂载数据: 无 ) +│ │ ├── stringprep --- 因特网字符串预备 --> ( 难度等级: [0.2142, 0.2142) || 挂载数据: 无 ) +│ │ ├── readline --- GNU readline接口 --> ( 难度等级: [0.2142, 0.2143) || 挂载数据: qa: 3 ) +│ │ └── rlcompleter --- GNU readline的补全函数 --> ( 难度等级: [0.2143, 0.2144) || 挂载数据: 无 ) +│ ├── 二进制数据服务 --> ( 难度等级: [0.2144, 0.2149) || 挂载数据: 无 ) +│ │ ├── struct --- 将字节串解读为打包的二进制数据 --> ( 难度等级: [0.2144, 0.2146) || 挂载数据: qa: 1 ) +│ │ └── codecs --- 编解码器注册和相关基类 --> ( 难度等级: [0.2146, 0.2149) || 挂载数据: 无 ) +│ ├── 函数式编程模块 --> ( 难度等级: [0.2149, 0.2154) || 挂载数据: 无 ) +│ │ ├── itertools --- 为高效循环而创建迭代器的函数 --> ( 难度等级: [0.2149, 0.2151) || 挂载数据: 无 ) +│ │ ├── functools --- 高阶函数和可调用对象上的操作 --> ( 难度等级: [0.2151, 0.2152) || 挂载数据: 无 ) +│ │ └── operator --- 标准运算符替代函数 --> ( 难度等级: [0.2152, 0.2154) || 挂载数据: 无 ) +│ ├── 数据持久化 --> ( 难度等级: [0.2154, 0.216) || 挂载数据: 无 ) +│ │ ├── pickle --- Python对象序列化 --> ( 难度等级: [0.2154, 0.2155) || 挂载数据: 无 ) +│ │ ├── copyreg --- 注册配合pickle模块使用的函数 --> ( 难度等级: [0.2155, 0.2156) || 挂载数据: qa: 1 ) +│ │ ├── shelve --- Python对象持久化 --> ( 难度等级: [0.2156, 0.2157) || 挂载数据: 无 ) +│ │ ├── marshal --- 内部Python对象序列化 --> ( 难度等级: [0.2157, 0.2158) || 挂载数据: 无 ) +│ │ ├── dbm --- Unix "数据库" 接口 --> ( 难度等级: [0.2158, 0.2159) || 挂载数据: 无 ) +│ │ └── sqlite3 --- SQLite数据库DB-API 2.0 接口模块 --> ( 难度等级: [0.2159, 0.216) || 挂载数据: 无 ) +│ ├── 文件格式 --> ( 难度等级: [0.216, 0.2165) || 挂载数据: 无 ) +│ │ ├── csv --- CSV文件读写 --> ( 难度等级: [0.216, 0.2161) || 挂载数据: qa: 1 ) +│ │ ├── configparser --- 配置文件解析器 --> ( 难度等级: [0.2161, 0.2162) || 挂载数据: 无 ) +│ │ ├── netrc --- netrc文件处理 --> ( 难度等级: [0.2162, 0.2163) || 挂载数据: 无 ) +│ │ ├── xdrlib --- 编码与解码XDR数据 --> ( 难度等级: [0.2163, 0.2164) || 挂载数据: 无 ) +│ │ └── plistlib --- 生成与解析Apple .plist文件 --> ( 难度等级: [0.2164, 0.2165) || 挂载数据: 无 ) +│ ├── 加密服务 --> ( 难度等级: [0.2165, 0.217) || 挂载数据: 无 ) +│ │ ├── hashlib --- 安全哈希与消息摘要 --> ( 难度等级: [0.2165, 0.2167) || 挂载数据: 无 ) +│ │ ├── hmac --- 基于密钥的消息验证 --> ( 难度等级: [0.2167, 0.2168) || 挂载数据: 无 ) +│ │ └── secrets --- 生成管理密码的安全随机数 --> ( 难度等级: [0.2168, 0.217) || 挂载数据: 无 ) +│ ├── 通用操作系统服务 --> ( 难度等级: [0.217, 0.2176) || 挂载数据: 无 ) +│ │ ├── os --- 多种操作系统接口 --> ( 难度等级: [0.217, 0.2171) || 挂载数据: 无 ) +│ │ ├── io --- 处理流的核心工具 --> ( 难度等级: [0.2171, 0.2171) || 挂载数据: 无 ) +│ │ ├── time --- 时间的访问和转换 --> ( 难度等级: [0.2171, 0.2171) || 挂载数据: 无 ) +│ │ ├── argparse --- 命令行选项、参数和子命令解析器 --> ( 难度等级: [0.2171, 0.2172) || 挂载数据: 无 ) +│ │ ├── getopt --- C风格的命令行选项解析器 --> ( 难度等级: [0.2172, 0.2172) || 挂载数据: 无 ) +│ │ ├── logging --- Python的日志记录工具 --> ( 难度等级: [0.2172, 0.2172) || 挂载数据: 无 ) +│ │ ├── logging.config --- 日志记录配置 --> ( 难度等级: [0.2172, 0.2173) || 挂载数据: 无 ) +│ │ ├── logging.handlers --- 日志处理程序 --> ( 难度等级: [0.2173, 0.2173) || 挂载数据: 无 ) +│ │ ├── getpass --- 便携式密码输入工具 --> ( 难度等级: [0.2173, 0.2173) || 挂载数据: 无 ) +│ │ ├── curses --- 终端字符单元显示的处理 --> ( 难度等级: [0.2173, 0.2174) || 挂载数据: 无 ) +│ │ ├── curses.textpad --- 用于curses程序的文本输入控件 --> ( 难度等级: [0.2174, 0.2174) || 挂载数据: 无 ) +│ │ ├── curses.ascii --- 用于ASCII字符的工具 --> ( 难度等级: [0.2174, 0.2174) || 挂载数据: 无 ) +│ │ ├── curses.panel --- curses的面板栈扩展 --> ( 难度等级: [0.2174, 0.2175) || 挂载数据: 无 ) +│ │ ├── platform --- 获取底层平台的标识数据 --> ( 难度等级: [0.2175, 0.2175) || 挂载数据: 无 ) +│ │ ├── errno --- 标准errno系统符号 --> ( 难度等级: [0.2175, 0.2175) || 挂载数据: qa: 2 ) +│ │ └── ctypes --- Python的外部函数库 --> ( 难度等级: [0.2175, 0.2176) || 挂载数据: 无 ) +│ ├── 并发执行 --> ( 难度等级: [0.2176, 0.2181) || 挂载数据: 无 ) +│ │ ├── threading --- 基于线程的并行 --> ( 难度等级: [0.2176, 0.2176) || 挂载数据: 无 ) +│ │ ├── multiprocessing --- 基于进程的并行 --> ( 难度等级: [0.2176, 0.2177) || 挂载数据: 无 ) +│ │ ├── multiprocessing.shared_memory --- 可从进程直接访问的共享内存 --> ( 难度等级: [0.2177, 0.2177) || 挂载数据: 无 ) +│ │ ├── concurrent包 --> ( 难度等级: [0.2177, 0.2178) || 挂载数据: 无 ) +│ │ ├── concurrent.futures --- 启动并行任务 --> ( 难度等级: [0.2178, 0.2178) || 挂载数据: 无 ) +│ │ ├── subprocess --- 子进程管理 --> ( 难度等级: [0.2178, 0.2179) || 挂载数据: qa: 3 ) +│ │ ├── sched --- 事件调度器 --> ( 难度等级: [0.2179, 0.2179) || 挂载数据: 无 ) +│ │ ├── queue --- 一个同步的队列类 --> ( 难度等级: [0.2179, 0.218) || 挂载数据: 无 ) +│ │ ├── contextvars --- 上下文变量 --> ( 难度等级: [0.218, 0.218) || 挂载数据: 无 ) +│ │ └── _thread --- 底层多线程API --> ( 难度等级: [0.218, 0.2181) || 挂载数据: qa: 1 ) +│ ├── 网络和进程间通信 --> ( 难度等级: [0.2181, 0.2186) || 挂载数据: 无 ) +│ │ ├── asyncio --- 异步I/O --> ( 难度等级: [0.2181, 0.2181) || 挂载数据: 无 ) +│ │ ├── socket --- 底层网络接口 --> ( 难度等级: [0.2181, 0.2182) || 挂载数据: 无 ) +│ │ ├── ssl --- 套接字对象的TLS/SSL包装器 --> ( 难度等级: [0.2182, 0.2183) || 挂载数据: 无 ) +│ │ ├── select --- 等待I/O完成 --> ( 难度等级: [0.2183, 0.2183) || 挂载数据: 无 ) +│ │ ├── selectors --- 高级I/O复用库 --> ( 难度等级: [0.2183, 0.2184) || 挂载数据: qa: 1 ) +│ │ ├── asyncore --- 异步套接字处理器 --> ( 难度等级: [0.2184, 0.2184) || 挂载数据: 无 ) +│ │ ├── asynchat --- 异步套接字指令/响应处理程序 --> ( 难度等级: [0.2184, 0.2185) || 挂载数据: 无 ) +│ │ ├── signal --- 设置异步事件处理程序 --> ( 难度等级: [0.2185, 0.2186) || 挂载数据: 无 ) +│ │ └── mmap --- 内存映射文件支持 --> ( 难度等级: [0.2186, 0.2186) || 挂载数据: 无 ) +│ ├── 互联网数据处理 --> ( 难度等级: [0.2186, 0.2191) || 挂载数据: qa: 1 ) +│ │ ├── email --- 电子邮件与MIME处理包 --> ( 难度等级: [0.2186, 0.2187) || 挂载数据: 无 ) +│ │ ├── json --- JSON编码和解码器 --> ( 难度等级: [0.2187, 0.2188) || 挂载数据: 无 ) +│ │ ├── mailcap --- Mailcap文件处理 --> ( 难度等级: [0.2188, 0.2188) || 挂载数据: 无 ) +│ │ ├── mailbox --- 操作多种格式的邮箱 --> ( 难度等级: [0.2188, 0.2189) || 挂载数据: 无 ) +│ │ ├── mimetypes --- 映射文件名到MIME类型 --> ( 难度等级: [0.2189, 0.2189) || 挂载数据: 无 ) +│ │ ├── base64 --- Base16, Base32, Base64, Base85 数据编码 --> ( 难度等级: [0.2189, 0.219) || 挂载数据: 无 ) +│ │ ├── binascii --- 二进制和ASCII码互转 --> ( 难度等级: [0.219, 0.2191) || 挂载数据: qa: 2 ) +│ │ └── quopri --- 编码与解码经过MIME转码的可打印数据 --> ( 难度等级: [0.2191, 0.2191) || 挂载数据: 无 ) +│ ├── 结构化标记处理工具 --> ( 难度等级: [0.2191, 0.2197) || 挂载数据: 无 ) +│ │ ├── html --- 超文本标记语言支持 --> ( 难度等级: [0.2191, 0.2192) || 挂载数据: 无 ) +│ │ ├── html.parser --- 简单的HTML和XHTML解析器 --> ( 难度等级: [0.2192, 0.2192) || 挂载数据: 无 ) +│ │ ├── html.entities --- HTML一般实体的定义 --> ( 难度等级: [0.2192, 0.2193) || 挂载数据: 无 ) +│ │ ├── XML处理模块 --> ( 难度等级: [0.2193, 0.2193) || 挂载数据: 无 ) +│ │ ├── xml.etree.ElementTree --- ElementTree XML API --> ( 难度等级: [0.2193, 0.2194) || 挂载数据: 无 ) +│ │ ├── xml.dom --- 文档对象模型API --> ( 难度等级: [0.2194, 0.2194) || 挂载数据: 无 ) +│ │ ├── xml.dom.minidom --- Minimal DOM implementation --> ( 难度等级: [0.2194, 0.2194) || 挂载数据: 无 ) +│ │ ├── xml.dom.pulldom --- 支持构建部分DOM树 --> ( 难度等级: [0.2194, 0.2195) || 挂载数据: 无 ) +│ │ ├── xml.sax --- 支持SAX2 解析器 --> ( 难度等级: [0.2195, 0.2195) || 挂载数据: 无 ) +│ │ ├── xml.sax.handler --- SAX处理程序的基类 --> ( 难度等级: [0.2195, 0.2196) || 挂载数据: 无 ) +│ │ ├── xml.sax.saxutils --- SAX工具集 --> ( 难度等级: [0.2196, 0.2196) || 挂载数据: 无 ) +│ │ ├── xml.sax.xmlreader --- 用于XML解析器的接口 --> ( 难度等级: [0.2196, 0.2196) || 挂载数据: 无 ) +│ │ └── xml.parsers.expat --- Fast XML parsing using Expat --> ( 难度等级: [0.2196, 0.2197) || 挂载数据: 无 ) +│ ├── 互联网协议和支持 --> ( 难度等级: [0.2197, 0.2202) || 挂载数据: 无 ) +│ │ ├── webbrowser --- 方便的Web浏览器控制器 --> ( 难度等级: [0.2197, 0.2197) || 挂载数据: 无 ) +│ │ ├── cgi --- Common Gateway Interface support --> ( 难度等级: [0.2197, 0.2197) || 挂载数据: 无 ) +│ │ ├── cgitb --- 用于CGI脚本的回溯管理器 --> ( 难度等级: [0.2197, 0.2197) || 挂载数据: 无 ) +│ │ ├── wsgiref --- WSGI Utilities and Reference Implementation --> ( 难度等级: [0.2197, 0.2198) || 挂载数据: 无 ) +│ │ ├── urllib --- URL处理模块 --> ( 难度等级: [0.2198, 0.2198) || 挂载数据: 无 ) +│ │ ├── urllib.request --- 用于打开URL的可扩展库 --> ( 难度等级: [0.2198, 0.2198) || 挂载数据: 无 ) +│ │ ├── urllib.response --- urllib使用的Response类 --> ( 难度等级: [0.2198, 0.2198) || 挂载数据: qa: 1 ) +│ │ ├── urllib.parse用于解析URL --> ( 难度等级: [0.2198, 0.2198) || 挂载数据: qa: 1 ) +│ │ ├── urllib.error --- urllib.request引发的异常类 --> ( 难度等级: [0.2198, 0.2199) || 挂载数据: qa: 3 ) +│ │ ├── urllib.robotparser --- robots.txt语法分析程序 --> ( 难度等级: [0.2199, 0.2199) || 挂载数据: 无 ) +│ │ ├── http --- HTTP模块 --> ( 难度等级: [0.2199, 0.2199) || 挂载数据: 无 ) +│ │ ├── http.client --- HTTP协议客户端 --> ( 难度等级: [0.2199, 0.2199) || 挂载数据: 无 ) +│ │ ├── ftplib --- FTP协议客户端 --> ( 难度等级: [0.2199, 0.2199) || 挂载数据: 无 ) +│ │ ├── poplib --- POP3 协议客户端 --> ( 难度等级: [0.2199, 0.2199) || 挂载数据: 无 ) +│ │ ├── imaplib --- IMAP4 协议客户端 --> ( 难度等级: [0.2199, 0.22) || 挂载数据: 无 ) +│ │ ├── nntplib --- NNTP protocol client --> ( 难度等级: [0.22, 0.22) || 挂载数据: 无 ) +│ │ ├── smtplib ---SMTP协议客户端 --> ( 难度等级: [0.22, 0.22) || 挂载数据: 无 ) +│ │ ├── smtpd --- SMTP服务器 --> ( 难度等级: [0.22, 0.22) || 挂载数据: 无 ) +│ │ ├── telnetlib -- Telnet客户端 --> ( 难度等级: [0.22, 0.22) || 挂载数据: 无 ) +│ │ ├── uuid --- UUID objects according to RFC 4122 --> ( 难度等级: [0.22, 0.2201) || 挂载数据: 无 ) +│ │ ├── socketserver --- A framework for network servers --> ( 难度等级: [0.2201, 0.2201) || 挂载数据: qa: 5 ) +│ │ ├── http.server --- HTTP服务器 --> ( 难度等级: [0.2201, 0.2201) || 挂载数据: 无 ) +│ │ ├── http.cookies --- HTTP状态管理 --> ( 难度等级: [0.2201, 0.2201) || 挂载数据: qa: 1 ) +│ │ ├── http.cookiejar —— HTTP客户端的Cookie处理 --> ( 难度等级: [0.2201, 0.2201) || 挂载数据: 无 ) +│ │ ├── xmlrpc --- XMLRPC服务端与客户端模块 --> ( 难度等级: [0.2201, 0.2202) || 挂载数据: 无 ) +│ │ ├── xmlrpc.client --- XML-RPC客户端访问 --> ( 难度等级: [0.2202, 0.2202) || 挂载数据: 无 ) +│ │ ├── xmlrpc.server --- 基本XML-RPC服务器 --> ( 难度等级: [0.2202, 0.2202) || 挂载数据: 无 ) +│ │ └── ipaddress --- IPv4/IPv6 操作库 --> ( 难度等级: [0.2202, 0.2202) || 挂载数据: 无 ) +│ ├── 多媒体服务 --> ( 难度等级: [0.2202, 0.2207) || 挂载数据: 无 ) +│ │ ├── audioop --- 处理原始音频数据 --> ( 难度等级: [0.2202, 0.2203) || 挂载数据: 无 ) +│ │ ├── aifc --- 读写AIFF和AIFC文件 --> ( 难度等级: [0.2203, 0.2203) || 挂载数据: 无 ) +│ │ ├── sunau --- 读写Sun AU文件 --> ( 难度等级: [0.2203, 0.2204) || 挂载数据: 无 ) +│ │ ├── wave --- 读写WAV格式文件 --> ( 难度等级: [0.2204, 0.2204) || 挂载数据: 无 ) +│ │ ├── chunk --- 读取IFF分块数据 --> ( 难度等级: [0.2204, 0.2205) || 挂载数据: 无 ) +│ │ ├── colorsys --- 颜色系统间的转换 --> ( 难度等级: [0.2205, 0.2206) || 挂载数据: 无 ) +│ │ ├── imghdr --- 推测图像类型 --> ( 难度等级: [0.2206, 0.2206) || 挂载数据: 无 ) +│ │ ├── sndhdr --- 推测声音文件的类型 --> ( 难度等级: [0.2206, 0.2207) || 挂载数据: 无 ) +│ │ └── ossaudiodev --- Access to OSS-compatible audio devices --> ( 难度等级: [0.2207, 0.2207) || 挂载数据: qa: 1 ) +│ ├── 国际化 --> ( 难度等级: [0.2207, 0.2213) || 挂载数据: 无 ) +│ │ ├── gettext --- 多语种国际化服务 --> ( 难度等级: [0.2207, 0.221) || 挂载数据: 无 ) +│ │ └── locale --- 国际化服务 --> ( 难度等级: [0.221, 0.2213) || 挂载数据: 无 ) +│ ├── 程序框架 --> ( 难度等级: [0.2213, 0.2218) || 挂载数据: 无 ) +│ │ ├── turtle --- 海龟绘图 --> ( 难度等级: [0.2213, 0.2215) || 挂载数据: qa: 6 ) +│ │ ├── cmd --- 支持面向行的命令解释器 --> ( 难度等级: [0.2215, 0.2216) || 挂载数据: qa: 3 ) +│ │ └── shlex --- Simple lexical analysis --> ( 难度等级: [0.2216, 0.2218) || 挂载数据: 无 ) +│ ├── Tk图形用户界面(GUI) --> ( 难度等级: [0.2218, 0.2223) || 挂载数据: 无 ) +│ │ ├── tkinter --- Tcl/Tk的Python接口 --> ( 难度等级: [0.2218, 0.2219) || 挂载数据: qa: 2 ) +│ │ ├── tkinter.colorchooser --- 颜色选择对话框 --> ( 难度等级: [0.2219, 0.2219) || 挂载数据: 无 ) +│ │ ├── tkinter.font --- Tkinter字体封装 --> ( 难度等级: [0.2219, 0.222) || 挂载数据: 无 ) +│ │ ├── Tkinter对话框 --> ( 难度等级: [0.222, 0.222) || 挂载数据: 无 ) +│ │ ├── tkinter.messagebox --- Tkinter消息提示 --> ( 难度等级: [0.222, 0.2221) || 挂载数据: qa: 2 ) +│ │ ├── tkinter.scrolledtext --- 滚动文字控件 --> ( 难度等级: [0.2221, 0.2221) || 挂载数据: 无 ) +│ │ ├── tkinter.dnd --- 拖放操作支持 --> ( 难度等级: [0.2221, 0.2221) || 挂载数据: 无 ) +│ │ ├── tkinter.ttk --- Tk主题部件 --> ( 难度等级: [0.2221, 0.2222) || 挂载数据: 无 ) +│ │ ├── tkinter.tix --- Extension widgets for Tk --> ( 难度等级: [0.2222, 0.2222) || 挂载数据: qa: 1 ) +│ │ ├── IDLE --> ( 难度等级: [0.2222, 0.2223) || 挂载数据: qa: 7 ) +│ │ └── 其他图形用户界面(GUI)包 --> ( 难度等级: [0.2223, 0.2223) || 挂载数据: 无 ) +│ ├── 调试和分析 --> ( 难度等级: [0.2223, 0.2229) || 挂载数据: 无 ) +│ │ ├── 审计事件表 --> ( 难度等级: [0.2223, 0.2224) || 挂载数据: 无 ) +│ │ ├── bdb --- Debugger framework --> ( 难度等级: [0.2224, 0.2224) || 挂载数据: 无 ) +│ │ ├── faulthandler --- Dump the Python traceback --> ( 难度等级: [0.2224, 0.2225) || 挂载数据: 无 ) +│ │ ├── pdb --- Python的调试器 --> ( 难度等级: [0.2225, 0.2225) || 挂载数据: 无 ) +│ │ ├── Python Profilers分析器 --> ( 难度等级: [0.2225, 0.2226) || 挂载数据: 无 ) +│ │ ├── timeit --- 测量小代码片段的执行时间 --> ( 难度等级: [0.2226, 0.2226) || 挂载数据: qa: 4 ) +│ │ ├── trace --- 跟踪Python语句执行 --> ( 难度等级: [0.2226, 0.2227) || 挂载数据: 无 ) +│ │ ├── tracemalloc --- 跟踪内存分配 --> ( 难度等级: [0.2227, 0.2227) || 挂载数据: 无 ) +│ │ ├── 抛出异常 --> ( 难度等级: [0.2227, 0.2228) || 挂载数据: 无 ) +│ │ ├── 取得回溯字符串 --> ( 难度等级: [0.2228, 0.2228) || 挂载数据: qa: 1 ) +│ │ └── Mu的调试器 --> ( 难度等级: [0.2228, 0.2229) || 挂载数据: 无 ) +│ ├── 软件打包和分发 --> ( 难度等级: [0.2229, 0.2234) || 挂载数据: 无 ) +│ │ ├── distutils --- 构建和安装Python模块 --> ( 难度等级: [0.2229, 0.223) || 挂载数据: 无 ) +│ │ ├── ensurepip --- Bootstrapping the pip installer --> ( 难度等级: [0.223, 0.2231) || 挂载数据: 无 ) +│ │ ├── venv --- 创建虚拟环境 --> ( 难度等级: [0.2231, 0.2233) || 挂载数据: 无 ) +│ │ └── zipapp --- Manage executable Python zip archives --> ( 难度等级: [0.2233, 0.2234) || 挂载数据: 无 ) +│ ├── Python运行时服务 --> ( 难度等级: [0.2234, 0.2239) || 挂载数据: 无 ) +│ │ ├── sysconfig --- Provide access to Python's configuration information --> ( 难度等级: [0.2234, 0.2234) || 挂载数据: 无 ) +│ │ ├── builtins --- 内建对象 --> ( 难度等级: [0.2234, 0.2235) || 挂载数据: 无 ) +│ │ ├── __main__ --- 顶层脚本环境 --> ( 难度等级: [0.2235, 0.2235) || 挂载数据: 无 ) +│ │ ├── warnings --- Warning control --> ( 难度等级: [0.2235, 0.2236) || 挂载数据: qa: 1 ) +│ │ ├── dataclasses --- 数据类 --> ( 难度等级: [0.2236, 0.2236) || 挂载数据: 无 ) +│ │ ├── contextlib --- 为with语句上下文提供的工具 --> ( 难度等级: [0.2236, 0.2236) || 挂载数据: 无 ) +│ │ ├── abc --- 抽象基类 --> ( 难度等级: [0.2236, 0.2237) || 挂载数据: 无 ) +│ │ ├── atexit --- 退出处理器 --> ( 难度等级: [0.2237, 0.2237) || 挂载数据: 无 ) +│ │ ├── traceback --- 打印或检索堆栈回溯 --> ( 难度等级: [0.2237, 0.2238) || 挂载数据: qa: 3 ) +│ │ ├── __future__ --- Future语句定义 --> ( 难度等级: [0.2238, 0.2238) || 挂载数据: 无 ) +│ │ ├── gc --- 垃圾回收器接口 --> ( 难度等级: [0.2238, 0.2239) || 挂载数据: 无 ) +│ │ ├── inspect --- 检查对象 --> ( 难度等级: [0.2239, 0.2239) || 挂载数据: 无 ) +│ │ └── site —— 指定域的配置钩子 --> ( 难度等级: [0.2239, 0.2239) || 挂载数据: 无 ) +│ ├── 自定义Python解释器 --> ( 难度等级: [0.2239, 0.2245) || 挂载数据: 无 ) +│ │ ├── code --- 解释器基类 --> ( 难度等级: [0.2239, 0.2242) || 挂载数据: qa: 2 ) +│ │ └── codeop --- 编译Python代码 --> ( 难度等级: [0.2242, 0.2245) || 挂载数据: 无 ) +│ ├── 导入模块 --> ( 难度等级: [0.2245, 0.225) || 挂载数据: 无 ) +│ │ ├── zipimport --- 从Zip存档中导入模块 --> ( 难度等级: [0.2245, 0.2246) || 挂载数据: 无 ) +│ │ ├── pkgutil --- 包扩展工具 --> ( 难度等级: [0.2246, 0.2246) || 挂载数据: 无 ) +│ │ ├── modulefinder --- 查找脚本使用的模块 --> ( 难度等级: [0.2246, 0.2247) || 挂载数据: 无 ) +│ │ ├── runpy --- Locating and executing Python modules --> ( 难度等级: [0.2247, 0.2248) || 挂载数据: 无 ) +│ │ ├── importlib --- import的实现 --> ( 难度等级: [0.2248, 0.2249) || 挂载数据: 无 ) +│ │ └── Using importlib.metadata --> ( 难度等级: [0.2249, 0.225) || 挂载数据: qa: 1 ) +│ ├── Python语言服务 --> ( 难度等级: [0.225, 0.2255) || 挂载数据: 无 ) +│ │ ├── parser --- 访问Python解析树 --> ( 难度等级: [0.225, 0.225) || 挂载数据: 无 ) +│ │ ├── ast --- 抽象语法树 --> ( 难度等级: [0.225, 0.2251) || 挂载数据: 无 ) +│ │ ├── symtable --- Access to the compiler's symbol tables --> ( 难度等级: [0.2251, 0.2251) || 挂载数据: 无 ) +│ │ ├── symbol --- 与Python解析树一起使用的常量 --> ( 难度等级: [0.2251, 0.2252) || 挂载数据: 无 ) +│ │ ├── token --- 与Python解析树一起使用的常量 --> ( 难度等级: [0.2252, 0.2252) || 挂载数据: qa: 1 ) +│ │ ├── keyword --- 检验Python关键字 --> ( 难度等级: [0.2252, 0.2252) || 挂载数据: qa: 1 ) +│ │ ├── tokenize --- 对Python代码使用的标记解析器 --> ( 难度等级: [0.2252, 0.2253) || 挂载数据: qa: 1 ) +│ │ ├── tabnanny --- 模糊缩进检测 --> ( 难度等级: [0.2253, 0.2253) || 挂载数据: 无 ) +│ │ ├── pyclbr --- Python模块浏览器支持 --> ( 难度等级: [0.2253, 0.2254) || 挂载数据: 无 ) +│ │ ├── py_compile --- 编译Python源文件 --> ( 难度等级: [0.2254, 0.2254) || 挂载数据: 无 ) +│ │ ├── compileall --- Byte-compile Python libraries --> ( 难度等级: [0.2254, 0.2255) || 挂载数据: qa: 1 ) +│ │ ├── dis --- Python字节码反汇编器 --> ( 难度等级: [0.2255, 0.2255) || 挂载数据: 无 ) +│ │ └── pickletools --- pickle开发者工具集 --> ( 难度等级: [0.2255, 0.2255) || 挂载数据: 无 ) +│ ├── 杂项服务 --> ( 难度等级: [0.2255, 0.2261) || 挂载数据: 无 ) +│ │ └── formatter --- 通用格式化输出 --> ( 难度等级: [0.2255, 0.2261) || 挂载数据: 无 ) +│ ├── Windows系统相关模块 --> ( 难度等级: [0.2261, 0.2266) || 挂载数据: 无 ) +│ │ ├── msilib --- Read and write Microsoft Installer files --> ( 难度等级: [0.2261, 0.2262) || 挂载数据: qa: 4 ) +│ │ ├── msvcrt --- 来自MS VC++ 运行时的有用例程 --> ( 难度等级: [0.2262, 0.2263) || 挂载数据: 无 ) +│ │ ├── winreg --- Windows注册表访问 --> ( 难度等级: [0.2263, 0.2265) || 挂载数据: qa: 1 ) +│ │ └── winsound --- Sound-playing interface for Windows --> ( 难度等级: [0.2265, 0.2266) || 挂载数据: 无 ) +│ ├── Unix专有服务 --> ( 难度等级: [0.2266, 0.2271) || 挂载数据: 无 ) +│ │ ├── posix --- 最常见的POSIX系统调用 --> ( 难度等级: [0.2266, 0.2266) || 挂载数据: 无 ) +│ │ ├── pwd --- 用户密码数据库 --> ( 难度等级: [0.2266, 0.2267) || 挂载数据: 无 ) +│ │ ├── spwd --- The shadow password database --> ( 难度等级: [0.2267, 0.2267) || 挂载数据: qa: 1 ) +│ │ ├── grp --- 组数据库 --> ( 难度等级: [0.2267, 0.2268) || 挂载数据: 无 ) +│ │ ├── crypt --- Function to check Unix passwords --> ( 难度等级: [0.2268, 0.2268) || 挂载数据: qa: 5 ) +│ │ ├── termios --- POSIX风格的tty控制 --> ( 难度等级: [0.2268, 0.2268) || 挂载数据: 无 ) +│ │ ├── tty --- 终端控制功能 --> ( 难度等级: [0.2268, 0.2269) || 挂载数据: 无 ) +│ │ ├── pty --- 伪终端工具 --> ( 难度等级: [0.2269, 0.2269) || 挂载数据: 无 ) +│ │ ├── fcntl --- The fcntl and ioctl system calls --> ( 难度等级: [0.2269, 0.227) || 挂载数据: qa: 1 ) +│ │ ├── pipes --- 终端管道接口 --> ( 难度等级: [0.227, 0.227) || 挂载数据: 无 ) +│ │ ├── resource --- Resource usage information --> ( 难度等级: [0.227, 0.227) || 挂载数据: qa: 5 ) +│ │ ├── nis --- Sun的NIS (黄页) 接口 --> ( 难度等级: [0.227, 0.2271) || 挂载数据: 无 ) +│ │ └── Unix syslog库例程 --> ( 难度等级: [0.2271, 0.2271) || 挂载数据: 无 ) +│ ├── 被取代的模块 --> ( 难度等级: [0.2271, 0.2277) || 挂载数据: 无 ) +│ │ ├── optparse --- 解析器的命令行选项 --> ( 难度等级: [0.2271, 0.2274) || 挂载数据: 无 ) +│ │ └── imp --- Access the import internals --> ( 难度等级: [0.2274, 0.2277) || 挂载数据: 无 ) +│ ├── 未创建文档的模块 --> ( 难度等级: [0.2277, 0.2282) || 挂载数据: 无 ) +│ │ └── 平台特定模块 --> ( 难度等级: [0.2277, 0.2282) || 挂载数据: 无 ) +│ ├── Python基础 --> ( 难度等级: [0.2282, 0.2287) || 挂载数据: 无 ) +│ │ ├── 在交互式环境中输入表达式 --> ( 难度等级: [0.2282, 0.2283) || 挂载数据: 无 ) +│ │ ├── 字符串连接和复制 --> ( 难度等级: [0.2283, 0.2284) || 挂载数据: 无 ) +│ │ ├── 在变量中保存值 --> ( 难度等级: [0.2284, 0.2285) || 挂载数据: qa: 1 ) +│ │ │ └── 变量名 --> ( 难度等级: [0.2284, 0.2285) || 挂载数据: qa: 2 ) +│ │ ├── 第一个程序 --> ( 难度等级: [0.2285, 0.2286) || 挂载数据: qa: 8 ) +│ │ └── 程序剖析 --> ( 难度等级: [0.2286, 0.2287) || 挂载数据: 无 ) +│ │ ├── print函数 --> ( 难度等级: [0.2286, 0.2286) || 挂载数据: qa: 3 ) +│ │ ├── input函数 --> ( 难度等级: [0.2286, 0.2287) || 挂载数据: qa: 1 ) +│ │ ├── 输出用户的名字 --> ( 难度等级: [0.2287, 0.2287) || 挂载数据: qa: 1 ) +│ │ └── len函数 --> ( 难度等级: [0.2287, 0.2287) || 挂载数据: qa: 1 ) +│ ├── 高级特性 --> ( 难度等级: [0.2287, 0.2293) || 挂载数据: 无 ) +│ │ ├── 切片 --> ( 难度等级: [0.2287, 0.2289) || 挂载数据: 无 ) +│ │ ├── 迭代 --> ( 难度等级: [0.2289, 0.2291) || 挂载数据: 无 ) +│ │ └── 列表生成式 --> ( 难度等级: [0.2291, 0.2293) || 挂载数据: 无 ) +│ ├── 函数式编程 --> ( 难度等级: [0.2293, 0.2298) || 挂载数据: 无 ) +│ │ ├── 高阶函数 --> ( 难度等级: [0.2293, 0.2294) || 挂载数据: 无 ) +│ │ │ ├── map/reduce --> ( 难度等级: [0.2293, 0.2293) || 挂载数据: qa: 6 ) +│ │ │ └── filter --> ( 难度等级: [0.2293, 0.2294) || 挂载数据: 无 ) +│ │ ├── 返回函数 --> ( 难度等级: [0.2294, 0.2295) || 挂载数据: qa: 1 ) +│ │ ├── 匿名函数 --> ( 难度等级: [0.2295, 0.2297) || 挂载数据: 无 ) +│ │ └── 偏函数 --> ( 难度等级: [0.2297, 0.2298) || 挂载数据: 无 ) +│ ├── 面向对象高级编程 --> ( 难度等级: [0.2298, 0.2303) || 挂载数据: 无 ) +│ │ ├── 使用__slots__ --> ( 难度等级: [0.2298, 0.2299) || 挂载数据: 无 ) +│ │ ├── 使用@property --> ( 难度等级: [0.2299, 0.2301) || 挂载数据: qa: 2 ) +│ │ ├── 定制类 --> ( 难度等级: [0.2301, 0.2302) || 挂载数据: 无 ) +│ │ └── 使用枚举类 --> ( 难度等级: [0.2302, 0.2303) || 挂载数据: 无 ) +│ ├── IO编程 --> ( 难度等级: [0.2303, 0.2309) || 挂载数据: 无 ) +│ │ ├── StringIO和BytesIO --> ( 难度等级: [0.2303, 0.2305) || 挂载数据: 无 ) +│ │ ├── 操作文件和目录 --> ( 难度等级: [0.2305, 0.2307) || 挂载数据: 无 ) +│ │ └── 序列化 --> ( 难度等级: [0.2307, 0.2309) || 挂载数据: 无 ) +│ ├── 进程和线程 --> ( 难度等级: [0.2309, 0.2314) || 挂载数据: 无 ) +│ │ ├── 多进程 --> ( 难度等级: [0.2309, 0.231) || 挂载数据: 无 ) +│ │ ├── ThreadLocal --> ( 难度等级: [0.231, 0.2311) || 挂载数据: 无 ) +│ │ ├── 进程vs. 线程 --> ( 难度等级: [0.2311, 0.2313) || 挂载数据: qa: 5 ) +│ │ └── 分布式进程 --> ( 难度等级: [0.2313, 0.2314) || 挂载数据: 无 ) +│ ├── 正则表达式 --> ( 难度等级: [0.2314, 0.2319) || 挂载数据: qa: 6 ) +│ ├── 常用内建模块 --> ( 难度等级: [0.2319, 0.2324) || 挂载数据: 无 ) +│ │ ├── collections --> ( 难度等级: [0.2319, 0.232) || 挂载数据: 无 ) +│ │ ├── base64 --> ( 难度等级: [0.232, 0.232) || 挂载数据: 无 ) +│ │ ├── struct --> ( 难度等级: [0.232, 0.2321) || 挂载数据: 无 ) +│ │ ├── hashlib --> ( 难度等级: [0.2321, 0.2322) || 挂载数据: 无 ) +│ │ ├── hmac --> ( 难度等级: [0.2322, 0.2322) || 挂载数据: 无 ) +│ │ ├── itertools --> ( 难度等级: [0.2322, 0.2323) || 挂载数据: 无 ) +│ │ ├── contextlib --> ( 难度等级: [0.2323, 0.2323) || 挂载数据: 无 ) +│ │ ├── XML --> ( 难度等级: [0.2323, 0.2324) || 挂载数据: 无 ) +│ │ └── HTMLParser --> ( 难度等级: [0.2324, 0.2324) || 挂载数据: 无 ) +│ ├── virtualenv --> ( 难度等级: [0.2324, 0.233) || 挂载数据: 无 ) +│ ├── 图形界面 --> ( 难度等级: [0.233, 0.2335) || 挂载数据: 无 ) +│ │ └── 海龟绘图 --> ( 难度等级: [0.233, 0.2335) || 挂载数据: 无 ) +│ ├── 网络编程 --> ( 难度等级: [0.2335, 0.234) || 挂载数据: 无 ) +│ │ ├── TCP/IP简介 --> ( 难度等级: [0.2335, 0.2336) || 挂载数据: 无 ) +│ │ ├── TCP编程 --> ( 难度等级: [0.2336, 0.2337) || 挂载数据: 无 ) +│ │ ├── UDP编程 --> ( 难度等级: [0.2337, 0.2338) || 挂载数据: 无 ) +│ │ ├── 几个网络模块 --> ( 难度等级: [0.2338, 0.2339) || 挂载数据: 无 ) +│ │ │ ├── 模块socket --> ( 难度等级: [0.2338, 0.2338) || 挂载数据: qa: 1 ) +│ │ │ └── 模块urllib和urllib2 --> ( 难度等级: [0.2338, 0.2339) || 挂载数据: qa: 1 ) +│ │ ├── SocketServer及相关的类 --> ( 难度等级: [0.2339, 0.234) || 挂载数据: 无 ) +│ │ └── Twisted --> ( 难度等级: [0.234, 0.234) || 挂载数据: 无 ) +│ │ ├── 下载并安装Twisted --> ( 难度等级: [0.234, 0.234) || 挂载数据: qa: 3 ) +│ │ └── 编写Twisted服务器 --> ( 难度等级: [0.234, 0.234) || 挂载数据: 无 ) +│ ├── 电子邮件 --> ( 难度等级: [0.234, 0.2346) || 挂载数据: 无 ) +│ │ ├── SMTP发送邮件 --> ( 难度等级: [0.234, 0.2343) || 挂载数据: qa: 2 ) +│ │ └── POP3收取邮件 --> ( 难度等级: [0.2343, 0.2346) || 挂载数据: 无 ) +│ ├── 访问数据库 --> ( 难度等级: [0.2346, 0.2351) || 挂载数据: 无 ) +│ │ ├── 使用SQLite --> ( 难度等级: [0.2346, 0.2348) || 挂载数据: 无 ) +│ │ ├── 使用MySQL --> ( 难度等级: [0.2348, 0.2349) || 挂载数据: 无 ) +│ │ └── 使用SQLAlchemy --> ( 难度等级: [0.2349, 0.2351) || 挂载数据: qa: 1 ) +│ ├── Web开发 --> ( 难度等级: [0.2351, 0.2356) || 挂载数据: 无 ) +│ │ ├── HTTP协议简介 --> ( 难度等级: [0.2351, 0.2352) || 挂载数据: 无 ) +│ │ ├── HTML简介 --> ( 难度等级: [0.2352, 0.2354) || 挂载数据: 无 ) +│ │ ├── WSGI接口 --> ( 难度等级: [0.2354, 0.2355) || 挂载数据: 无 ) +│ │ └── 使用Web框架 --> ( 难度等级: [0.2355, 0.2356) || 挂载数据: 无 ) +│ ├── 异步IO --> ( 难度等级: [0.2356, 0.2362) || 挂载数据: 无 ) +│ │ ├── asyncio --> ( 难度等级: [0.2356, 0.2358) || 挂载数据: 无 ) +│ │ ├── async/await --> ( 难度等级: [0.2358, 0.236) || 挂载数据: 无 ) +│ │ └── aiohttp --> ( 难度等级: [0.236, 0.2362) || 挂载数据: 无 ) +│ ├── 使用MicroPython --> ( 难度等级: [0.2362, 0.2367) || 挂载数据: 无 ) +│ │ ├── 搭建开发环境 --> ( 难度等级: [0.2362, 0.2363) || 挂载数据: 无 ) +│ │ ├── 控制小车 --> ( 难度等级: [0.2363, 0.2364) || 挂载数据: 无 ) +│ │ ├── 遥控小车 --> ( 难度等级: [0.2364, 0.2366) || 挂载数据: 无 ) +│ │ └── 遥控转向 --> ( 难度等级: [0.2366, 0.2367) || 挂载数据: 无 ) +│ ├── 当索引行不通时 --> ( 难度等级: [0.2367, 0.2372) || 挂载数据: 无 ) +│ │ └── 字典的用途 --> ( 难度等级: [0.2367, 0.2372) || 挂载数据: 无 ) +│ ├── 抽象 --> ( 难度等级: [0.2372, 0.2378) || 挂载数据: 无 ) +│ │ ├── 懒惰是一种美德 --> ( 难度等级: [0.2372, 0.2374) || 挂载数据: 无 ) +│ │ ├── 自定义函数 --> ( 难度等级: [0.2374, 0.2375) || 挂载数据: qa: 1 ) +│ │ │ └── 给函数编写文档 --> ( 难度等级: [0.2374, 0.2375) || 挂载数据: qa: 8 ) +│ │ ├── 参数魔法 --> ( 难度等级: [0.2375, 0.2376) || 挂载数据: 无 ) +│ │ │ ├── 值从哪里来 --> ( 难度等级: [0.2375, 0.2375) || 挂载数据: qa: 1 ) +│ │ │ ├── 我能修改参数吗 --> ( 难度等级: [0.2375, 0.2376) || 挂载数据: qa: 1 ) +│ │ │ ├── 收集参数 --> ( 难度等级: [0.2376, 0.2376) || 挂载数据: 无 ) +│ │ │ └── 分配参数 --> ( 难度等级: [0.2376, 0.2376) || 挂载数据: qa: 1 ) +│ │ └── 递归 --> ( 难度等级: [0.2376, 0.2378) || 挂载数据: qa: 3 ) +│ │ ├── 两个经典案例:阶乘和幂 --> ( 难度等级: [0.2376, 0.2377) || 挂载数据: qa: 1 ) +│ │ └── 另一个经典案例:二分查找 --> ( 难度等级: [0.2377, 0.2378) || 挂载数据: qa: 1 ) +│ ├── 再谈抽象 --> ( 难度等级: [0.2378, 0.2383) || 挂载数据: 无 ) +│ │ ├── 对象魔法 --> ( 难度等级: [0.2378, 0.238) || 挂载数据: 无 ) +│ │ └── 关于面向对象设计的一些思考 --> ( 难度等级: [0.238, 0.2383) || 挂载数据: 无 ) +│ ├── 开箱即用 --> ( 难度等级: [0.2383, 0.2388) || 挂载数据: 无 ) +│ │ └── 探索模块 --> ( 难度等级: [0.2383, 0.2388) || 挂载数据: 无 ) +│ │ ├── 模块包含什么 --> ( 难度等级: [0.2383, 0.2384) || 挂载数据: 无 ) +│ │ ├── 使用help获取帮助 --> ( 难度等级: [0.2384, 0.2386) || 挂载数据: qa: 2 ) +│ │ ├── 文档 --> ( 难度等级: [0.2386, 0.2387) || 挂载数据: 无 ) +│ │ └── 使用源代码 --> ( 难度等级: [0.2387, 0.2388) || 挂载数据: 无 ) +│ ├── 图形用户界面 --> ( 难度等级: [0.2388, 0.2394) || 挂载数据: 无 ) +│ │ ├── 创建GUI示例应用程序 --> ( 难度等级: [0.2388, 0.2391) || 挂载数据: 无 ) +│ │ │ ├── 初探 --> ( 难度等级: [0.2388, 0.2389) || 挂载数据: 无 ) +│ │ │ ├── 布局 --> ( 难度等级: [0.2389, 0.239) || 挂载数据: 无 ) +│ │ │ ├── 事件处理 --> ( 难度等级: [0.239, 0.239) || 挂载数据: 无 ) +│ │ │ └── 最终的程序 --> ( 难度等级: [0.239, 0.2391) || 挂载数据: qa: 1 ) +│ │ └── 使用其他GUI工具包 --> ( 难度等级: [0.2391, 0.2394) || 挂载数据: 无 ) +│ ├── 数据库支持 --> ( 难度等级: [0.2394, 0.2399) || 挂载数据: 无 ) +│ │ └── Python数据库API --> ( 难度等级: [0.2394, 0.2399) || 挂载数据: 无 ) +│ │ ├── 全局变量 --> ( 难度等级: [0.2394, 0.2396) || 挂载数据: qa: 2 ) +│ │ └── 连接和游标 --> ( 难度等级: [0.2396, 0.2399) || 挂载数据: 无 ) +│ │ ├── 使用SocketServer实现分叉和线程化 --> ( 难度等级: [0.2396, 0.2398) || 挂载数据: 无 ) +│ │ └── 使用select和poll实现异步I/O --> ( 难度等级: [0.2398, 0.2399) || 挂载数据: qa: 1 ) +│ ├── Python和Web --> ( 难度等级: [0.2399, 0.2404) || 挂载数据: 无 ) +│ │ ├── 屏幕抓取 --> ( 难度等级: [0.2399, 0.2401) || 挂载数据: qa: 1 ) +│ │ │ ├── Tidy和XHTML解析 --> ( 难度等级: [0.2399, 0.24) || 挂载数据: qa: 1 ) +│ │ │ └── Beautiful Soup --> ( 难度等级: [0.24, 0.2401) || 挂载数据: 无 ) +│ │ ├── 使用CGI创建动态网页 --> ( 难度等级: [0.2401, 0.2402) || 挂载数据: 无 ) +│ │ │ ├── 第一步:准备Web服务器 --> ( 难度等级: [0.2401, 0.2401) || 挂载数据: 无 ) +│ │ │ ├── 第二步:添加!#行 --> ( 难度等级: [0.2401, 0.2401) || 挂载数据: qa: 1 ) +│ │ │ ├── 第三步:设置文件权限 --> ( 难度等级: [0.2401, 0.2401) || 挂载数据: 无 ) +│ │ │ ├── CGI安全风险 --> ( 难度等级: [0.2401, 0.2402) || 挂载数据: 无 ) +│ │ │ ├── 简单的CGI脚本 --> ( 难度等级: [0.2402, 0.2402) || 挂载数据: 无 ) +│ │ │ ├── 使用cgitb进行调试 --> ( 难度等级: [0.2402, 0.2402) || 挂载数据: qa: 1 ) +│ │ │ ├── 使用模块cgi --> ( 难度等级: [0.2402, 0.2402) || 挂载数据: 无 ) +│ │ │ └── 简单的表单 --> ( 难度等级: [0.2402, 0.2402) || 挂载数据: 无 ) +│ │ └── Web服务:更高级的抓取 --> ( 难度等级: [0.2402, 0.2404) || 挂载数据: 无 ) +│ │ ├── RSS和相关内容 --> ( 难度等级: [0.2402, 0.2403) || 挂载数据: 无 ) +│ │ ├── 使用XML-RPC进行远程过程调用 --> ( 难度等级: [0.2403, 0.2404) || 挂载数据: 无 ) +│ │ └── SOAP --> ( 难度等级: [0.2404, 0.2404) || 挂载数据: 无 ) +│ ├── 测试基础 --> ( 难度等级: [0.2404, 0.241) || 挂载数据: qa: 2 ) +│ │ ├── 先测试再编码 --> ( 难度等级: [0.2404, 0.2406) || 挂载数据: 无 ) +│ │ │ ├── 准确的需求说明 --> ( 难度等级: [0.2404, 0.2405) || 挂载数据: 无 ) +│ │ │ ├── 做好应对变化的准备 --> ( 难度等级: [0.2405, 0.2405) || 挂载数据: qa: 1 ) +│ │ │ └── 测试四步曲 --> ( 难度等级: [0.2405, 0.2406) || 挂载数据: 无 ) +│ │ ├── 测试工具 --> ( 难度等级: [0.2406, 0.2408) || 挂载数据: 无 ) +│ │ │ ├── doctest --> ( 难度等级: [0.2406, 0.2407) || 挂载数据: 无 ) +│ │ │ └── unittest --> ( 难度等级: [0.2407, 0.2408) || 挂载数据: qa: 2 ) +│ │ └── 超越单元测试 --> ( 难度等级: [0.2408, 0.241) || 挂载数据: 无 ) +│ │ ├── 使用PyChecker和PyLint检查源代码 --> ( 难度等级: [0.2408, 0.2409) || 挂载数据: 无 ) +│ │ └── 性能分析 --> ( 难度等级: [0.2409, 0.241) || 挂载数据: 无 ) +│ ├── 扩展Python --> ( 难度等级: [0.241, 0.2415) || 挂载数据: 无 ) +│ │ ├── 鱼和熊掌兼得 --> ( 难度等级: [0.241, 0.2411) || 挂载数据: 无 ) +│ │ ├── 简单易行的方式:Jython和IronPython --> ( 难度等级: [0.2411, 0.2413) || 挂载数据: qa: 1 ) +│ │ └── 编写C语言扩展 --> ( 难度等级: [0.2413, 0.2415) || 挂载数据: 无 ) +│ │ ├── SWIG --> ( 难度等级: [0.2413, 0.2414) || 挂载数据: 无 ) +│ │ └── 手工编写扩展 --> ( 难度等级: [0.2414, 0.2415) || 挂载数据: 无 ) +│ ├── 程序打包 --> ( 难度等级: [0.2415, 0.242) || 挂载数据: 无 ) +│ │ ├── Setuptools基础 --> ( 难度等级: [0.2415, 0.2416) || 挂载数据: 无 ) +│ │ ├── 打包 --> ( 难度等级: [0.2416, 0.2418) || 挂载数据: qa: 2 ) +│ │ ├── 编译扩展 --> ( 难度等级: [0.2418, 0.2419) || 挂载数据: 无 ) +│ │ └── 使用py2exe创建可执行程序 --> ( 难度等级: [0.2419, 0.242) || 挂载数据: 无 ) +│ ├── 趣味编程 --> ( 难度等级: [0.242, 0.2426) || 挂载数据: 无 ) +│ │ ├── 为何要有趣 --> ( 难度等级: [0.242, 0.2421) || 挂载数据: 无 ) +│ │ ├── 编程柔术 --> ( 难度等级: [0.2421, 0.2422) || 挂载数据: 无 ) +│ │ ├── 原型设计 --> ( 难度等级: [0.2422, 0.2423) || 挂载数据: qa: 3 ) +│ │ ├── 如果你已不胜其烦 --> ( 难度等级: [0.2423, 0.2424) || 挂载数据: 无 ) +│ │ └── 如果你想深入学习 --> ( 难度等级: [0.2424, 0.2426) || 挂载数据: qa: 10 ) +│ ├── Python编程基础 --> ( 难度等级: [0.2426, 0.2431) || 挂载数据: qa: 1 ) +│ │ ├── 控制流 --> ( 难度等级: [0.2426, 0.2428) || 挂载数据: 无 ) +│ │ │ ├── 布尔值 --> ( 难度等级: [0.2426, 0.2426) || 挂载数据: qa: 1 ) +│ │ │ ├── 比较操作符 --> ( 难度等级: [0.2426, 0.2426) || 挂载数据: 无 ) +│ │ │ ├── 布尔操作符 --> ( 难度等级: [0.2426, 0.2427) || 挂载数据: 无 ) +│ │ │ │ ├── 二元布尔操作符 --> ( 难度等级: [0.2426, 0.2426) || 挂载数据: 无 ) +│ │ │ │ └── not操作符 --> ( 难度等级: [0.2426, 0.2427) || 挂载数据: qa: 10 ) +│ │ │ ├── 混合布尔和比较操作符 --> ( 难度等级: [0.2427, 0.2427) || 挂载数据: 无 ) +│ │ │ ├── 控制流的元素 --> ( 难度等级: [0.2427, 0.2427) || 挂载数据: 无 ) +│ │ │ │ └── 代码块 --> ( 难度等级: [0.2427, 0.2427) || 挂载数据: 无 ) +│ │ │ ├── 程序执行 --> ( 难度等级: [0.2427, 0.2428) || 挂载数据: 无 ) +│ │ │ ├── 控制流语句 --> ( 难度等级: [0.2428, 0.2428) || 挂载数据: 无 ) +│ │ │ │ ├── else语句 --> ( 难度等级: [0.2428, 0.2428) || 挂载数据: qa: 3 ) +│ │ │ │ ├── elif语句 --> ( 难度等级: [0.2428, 0.2428) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 恼人的循环 --> ( 难度等级: [0.2428, 0.2428) || 挂载数据: 无 ) +│ │ │ │ └── 等价的while循环 --> ( 难度等级: [0.2428, 0.2428) || 挂载数据: qa: 5 ) +│ │ │ └── 用sys.exit函数提前结束程序 --> ( 难度等级: [0.2428, 0.2428) || 挂载数据: qa: 1 ) +│ │ └── 字符串操作 --> ( 难度等级: [0.2428, 0.2431) || 挂载数据: 无 ) +│ │ ├── 将字符串放入其他字符串 --> ( 难度等级: [0.2428, 0.2428) || 挂载数据: qa: 2 ) +│ │ ├── 有用的字符串方法 --> ( 难度等级: [0.2428, 0.2429) || 挂载数据: 无 ) +│ │ ├── 使用ord和chr函数的字符的数值 --> ( 难度等级: [0.2429, 0.2429) || 挂载数据: 无 ) +│ │ ├── 用pyperclip模块复制粘贴字符串 --> ( 难度等级: [0.2429, 0.2429) || 挂载数据: qa: 1 ) +│ │ ├── 计算字符串的长度 --> ( 难度等级: [0.2429, 0.2429) || 挂载数据: qa: 3 ) +│ │ ├── 截取字符串 --> ( 难度等级: [0.2429, 0.243) || 挂载数据: qa: 3 ) +│ │ ├── 分割、合并字符串 --> ( 难度等级: [0.243, 0.243) || 挂载数据: 无 ) +│ │ ├── 检索字符串 --> ( 难度等级: [0.243, 0.243) || 挂载数据: 无 ) +│ │ ├── 字母的大小写转换 --> ( 难度等级: [0.243, 0.243) || 挂载数据: qa: 3 ) +│ │ ├── 去除字符串中的空格和 --> ( 难度等级: [0.243, 0.2431) || 挂载数据: qa: 2 ) +│ │ └── 格式化字符串 --> ( 难度等级: [0.2431, 0.2431) || 挂载数据: 无 ) +│ ├── 自动化任务 --> ( 难度等级: [0.2431, 0.2436) || 挂载数据: 无 ) +│ │ ├── 输入验证 --> ( 难度等级: [0.2431, 0.2431) || 挂载数据: 无 ) +│ │ │ └── PyInputPlus模块 --> ( 难度等级: [0.2431, 0.2431) || 挂载数据: 无 ) +│ │ │ ├── 关键字参数min、max、greaterThan和lessThan --> ( 难度等级: [0.2431, 0.2431) || 挂载数据: 无 ) +│ │ │ ├── 关键字参数blank --> ( 难度等级: [0.2431, 0.2431) || 挂载数据: 无 ) +│ │ │ ├── 关键字参数limit、timeout和default --> ( 难度等级: [0.2431, 0.2431) || 挂载数据: 无 ) +│ │ │ ├── 关键字参数allowRegexes和blockRegexes --> ( 难度等级: [0.2431, 0.2431) || 挂载数据: 无 ) +│ │ │ └── 将自定义验证函数传递给inputCustom --> ( 难度等级: [0.2431, 0.2431) || 挂载数据: 无 ) +│ │ ├── 组织文件 --> ( 难度等级: [0.2431, 0.2432) || 挂载数据: 无 ) +│ │ │ ├── shutil模块 --> ( 难度等级: [0.2431, 0.2432) || 挂载数据: 无 ) +│ │ │ ├── 遍历目录树 --> ( 难度等级: [0.2432, 0.2432) || 挂载数据: 无 ) +│ │ │ └── 用zipfile模块压缩文件 --> ( 难度等级: [0.2432, 0.2432) || 挂载数据: 无 ) +│ │ ├── 从Web抓取信息 --> ( 难度等级: [0.2432, 0.2432) || 挂载数据: qa: 1 ) +│ │ │ ├── 用requests模块从Web下载文件 --> ( 难度等级: [0.2432, 0.2432) || 挂载数据: qa: 1 ) +│ │ │ ├── 将下载的文件保存到硬盘 --> ( 难度等级: [0.2432, 0.2432) || 挂载数据: 无 ) +│ │ │ ├── HTML --> ( 难度等级: [0.2432, 0.2432) || 挂载数据: qa: 10 ) +│ │ │ ├── 用bs4模块解析HTML --> ( 难度等级: [0.2432, 0.2432) || 挂载数据: qa: 1 ) +│ │ │ └── 用selenium模块控制浏览器 --> ( 难度等级: [0.2432, 0.2432) || 挂载数据: 无 ) +│ │ ├── 处理Excel电子表格 --> ( 难度等级: [0.2432, 0.2433) || 挂载数据: 无 ) +│ │ │ ├── Excel文档 --> ( 难度等级: [0.2432, 0.2433) || 挂载数据: qa: 10 ) +│ │ │ ├── 安装openpyxl模块 --> ( 难度等级: [0.2433, 0.2433) || 挂载数据: 无 ) +│ │ │ ├── 读取Excel文档 --> ( 难度等级: [0.2433, 0.2433) || 挂载数据: qa: 6 ) +│ │ │ ├── 写入Excel文档 --> ( 难度等级: [0.2433, 0.2433) || 挂载数据: qa: 6 ) +│ │ │ ├── 设置单元格的字体风格 --> ( 难度等级: [0.2433, 0.2433) || 挂载数据: 无 ) +│ │ │ ├── Font对象 --> ( 难度等级: [0.2433, 0.2433) || 挂载数据: 无 ) +│ │ │ ├── 公式 --> ( 难度等级: [0.2433, 0.2433) || 挂载数据: qa: 1 ) +│ │ │ └── 调整行和列 --> ( 难度等级: [0.2433, 0.2433) || 挂载数据: 无 ) +│ │ ├── 处理Google电子表格 --> ( 难度等级: [0.2433, 0.2434) || 挂载数据: 无 ) +│ │ │ ├── 安装和设置EZSheets --> ( 难度等级: [0.2433, 0.2433) || 挂载数据: 无 ) +│ │ │ ├── Spreadsheet对象 --> ( 难度等级: [0.2433, 0.2433) || 挂载数据: 无 ) +│ │ │ ├── 工作表对象 --> ( 难度等级: [0.2433, 0.2433) || 挂载数据: 无 ) +│ │ │ └── 利用Google Sheets配额 --> ( 难度等级: [0.2433, 0.2434) || 挂载数据: qa: 1 ) +│ │ ├── 处理PDF和Word文档 --> ( 难度等级: [0.2434, 0.2434) || 挂载数据: 无 ) +│ │ │ ├── PDF文档 --> ( 难度等级: [0.2434, 0.2434) || 挂载数据: qa: 3 ) +│ │ │ ├── Word文档 --> ( 难度等级: [0.2434, 0.2434) || 挂载数据: qa: 6 ) +│ │ │ └── 从Word文档中创建PDF --> ( 难度等级: [0.2434, 0.2434) || 挂载数据: 无 ) +│ │ ├── 处理CSV文件和JSON数据 --> ( 难度等级: [0.2434, 0.2435) || 挂载数据: 无 ) +│ │ │ ├── csv模块 --> ( 难度等级: [0.2434, 0.2434) || 挂载数据: qa: 10 ) +│ │ │ └── json模块 --> ( 难度等级: [0.2434, 0.2435) || 挂载数据: qa: 10 ) +│ │ ├── 发送电子邮件和短信 --> ( 难度等级: [0.2435, 0.2435) || 挂载数据: 无 ) +│ │ │ ├── 使用Gmail API发送和接收电子邮件 --> ( 难度等级: [0.2435, 0.2435) || 挂载数据: 无 ) +│ │ │ ├── SMTP --> ( 难度等级: [0.2435, 0.2435) || 挂载数据: 无 ) +│ │ │ ├── 发送电子邮件 --> ( 难度等级: [0.2435, 0.2435) || 挂载数据: qa: 1 ) +│ │ │ ├── IMAP --> ( 难度等级: [0.2435, 0.2435) || 挂载数据: 无 ) +│ │ │ ├── 用IMAP获取和删除电子邮件 --> ( 难度等级: [0.2435, 0.2435) || 挂载数据: 无 ) +│ │ │ ├── 使用短信电子邮件网关发送短信 --> ( 难度等级: [0.2435, 0.2435) || 挂载数据: 无 ) +│ │ │ └── 用Twilio发送短信 --> ( 难度等级: [0.2435, 0.2435) || 挂载数据: 无 ) +│ │ ├── 操作图像 --> ( 难度等级: [0.2435, 0.2436) || 挂载数据: 无 ) +│ │ │ ├── 计算机图像基础 --> ( 难度等级: [0.2435, 0.2435) || 挂载数据: 无 ) +│ │ │ ├── 用pillow操作图像 --> ( 难度等级: [0.2435, 0.2435) || 挂载数据: 无 ) +│ │ │ └── 在图像上绘画 --> ( 难度等级: [0.2435, 0.2436) || 挂载数据: qa: 3 ) +│ │ │ ├── 绘制形状 --> ( 难度等级: [0.2435, 0.2436) || 挂载数据: 无 ) +│ │ │ └── 绘制文本 --> ( 难度等级: [0.2436, 0.2436) || 挂载数据: 无 ) +│ │ └── 用GUI自动化控制键盘和鼠标 --> ( 难度等级: [0.2436, 0.2436) || 挂载数据: 无 ) +│ │ ├── 安装pyautogui模块 --> ( 难度等级: [0.2436, 0.2436) || 挂载数据: 无 ) +│ │ ├── 在macOS上设置无障碍应用程序 --> ( 难度等级: [0.2436, 0.2436) || 挂载数据: 无 ) +│ │ ├── 走对路 --> ( 难度等级: [0.2436, 0.2436) || 挂载数据: 无 ) +│ │ ├── 控制鼠标指针移动 --> ( 难度等级: [0.2436, 0.2436) || 挂载数据: 无 ) +│ │ ├── 控制鼠标交互 --> ( 难度等级: [0.2436, 0.2436) || 挂载数据: qa: 2 ) +│ │ ├── 规划鼠标运动 --> ( 难度等级: [0.2436, 0.2436) || 挂载数据: 无 ) +│ │ ├── 处理屏幕 --> ( 难度等级: [0.2436, 0.2436) || 挂载数据: qa: 2 ) +│ │ ├── 图像识别 --> ( 难度等级: [0.2436, 0.2436) || 挂载数据: qa: 1 ) +│ │ ├── 获取窗口信息 --> ( 难度等级: [0.2436, 0.2436) || 挂载数据: qa: 4 ) +│ │ ├── 控制键盘 --> ( 难度等级: [0.2436, 0.2436) || 挂载数据: qa: 4 ) +│ │ ├── 设置GUI自动化脚本 --> ( 难度等级: [0.2436, 0.2436) || 挂载数据: qa: 2 ) +│ │ ├── 复习PyAutoGUI的函数 --> ( 难度等级: [0.2436, 0.2436) || 挂载数据: 无 ) +│ │ └── 显示消息框 --> ( 难度等级: [0.2436, 0.2436) || 挂载数据: qa: 1 ) +│ ├── 序幕 --> ( 难度等级: [0.2436, 0.2441) || 挂载数据: 无 ) +│ │ └── Python数据模型 --> ( 难度等级: [0.2436, 0.2441) || 挂载数据: 无 ) +│ │ ├── 一摞Python风格的纸牌 --> ( 难度等级: [0.2436, 0.2439) || 挂载数据: 无 ) +│ │ └── 特殊方法一览 --> ( 难度等级: [0.2439, 0.2441) || 挂载数据: 无 ) +│ ├── 把函数视作对象 --> ( 难度等级: [0.2441, 0.2447) || 挂载数据: 无 ) +│ │ └── 使用一等函数实现设计模式 --> ( 难度等级: [0.2441, 0.2447) || 挂载数据: 无 ) +│ │ ├── 案例分析:重构“策略”模式 --> ( 难度等级: [0.2441, 0.2444) || 挂载数据: 无 ) +│ │ └── “命令”模式 --> ( 难度等级: [0.2444, 0.2447) || 挂载数据: qa: 2 ) +│ ├── 面向对象惯用法 --> ( 难度等级: [0.2447, 0.2452) || 挂载数据: qa: 1 ) +│ │ ├── 对象引用、可变性和垃圾回收 --> ( 难度等级: [0.2447, 0.2448) || 挂载数据: 无 ) +│ │ │ ├── 变量不是盒子 --> ( 难度等级: [0.2447, 0.2447) || 挂载数据: 无 ) +│ │ │ ├── 标识、相等性和别名 --> ( 难度等级: [0.2447, 0.2447) || 挂载数据: 无 ) +│ │ │ ├── 默认做浅复制 --> ( 难度等级: [0.2447, 0.2447) || 挂载数据: 无 ) +│ │ │ ├── 函数的参数作为引用时 --> ( 难度等级: [0.2447, 0.2448) || 挂载数据: qa: 2 ) +│ │ │ ├── del和垃圾回收 --> ( 难度等级: [0.2448, 0.2448) || 挂载数据: 无 ) +│ │ │ └── Python对不可变类型施加的把戏 --> ( 难度等级: [0.2448, 0.2448) || 挂载数据: 无 ) +│ │ ├── 符合Python风格的对象 --> ( 难度等级: [0.2448, 0.2449) || 挂载数据: qa: 1 ) +│ │ │ ├── 对象表示形式 --> ( 难度等级: [0.2448, 0.2448) || 挂载数据: qa: 1 ) +│ │ │ ├── 再谈向量类 --> ( 难度等级: [0.2448, 0.2448) || 挂载数据: 无 ) +│ │ │ ├── 备选构造方法 --> ( 难度等级: [0.2448, 0.2449) || 挂载数据: 无 ) +│ │ │ ├── classmethod与staticmethod --> ( 难度等级: [0.2449, 0.2449) || 挂载数据: 无 ) +│ │ │ ├── 格式化显示 --> ( 难度等级: [0.2449, 0.2449) || 挂载数据: 无 ) +│ │ │ ├── 可散列的Vector2d --> ( 难度等级: [0.2449, 0.2449) || 挂载数据: 无 ) +│ │ │ ├── Python的私有属性和“受保护的”属性 --> ( 难度等级: [0.2449, 0.2449) || 挂载数据: 无 ) +│ │ │ ├── 使用__slots__类属性节省空间 --> ( 难度等级: [0.2449, 0.2449) || 挂载数据: 无 ) +│ │ │ └── 覆盖类属性 --> ( 难度等级: [0.2449, 0.2449) || 挂载数据: 无 ) +│ │ ├── 继承的优缺点 --> ( 难度等级: [0.2449, 0.2451) || 挂载数据: 无 ) +│ │ │ ├── 子类化内置类型很麻烦 --> ( 难度等级: [0.2449, 0.245) || 挂载数据: 无 ) +│ │ │ ├── 多重继承的真实应用 --> ( 难度等级: [0.245, 0.245) || 挂载数据: 无 ) +│ │ │ └── 一个现代示例:Django通用视图中的混入 --> ( 难度等级: [0.245, 0.2451) || 挂载数据: 无 ) +│ │ └── 正确重载运算符 --> ( 难度等级: [0.2451, 0.2452) || 挂载数据: 无 ) +│ │ ├── 运算符重载基础 --> ( 难度等级: [0.2451, 0.2451) || 挂载数据: 无 ) +│ │ ├── 重载向量加法运算符 + --> ( 难度等级: [0.2451, 0.2451) || 挂载数据: 无 ) +│ │ ├── 重载标量乘法运算符 * --> ( 难度等级: [0.2451, 0.2452) || 挂载数据: 无 ) +│ │ ├── 众多比较运算符 --> ( 难度等级: [0.2452, 0.2452) || 挂载数据: 无 ) +│ │ └── 增量赋值运算符 --> ( 难度等级: [0.2452, 0.2452) || 挂载数据: 无 ) +│ ├── 控制流程 --> ( 难度等级: [0.2452, 0.2457) || 挂载数据: 无 ) +│ │ ├── 使用期物处理并发 --> ( 难度等级: [0.2452, 0.2455) || 挂载数据: 无 ) +│ │ │ ├── 阻塞型I/O和GIL --> ( 难度等级: [0.2452, 0.2453) || 挂载数据: 无 ) +│ │ │ ├── 使用concurrent.futures模块启动进程 --> ( 难度等级: [0.2453, 0.2453) || 挂载数据: 无 ) +│ │ │ ├── 实验Executor.map方法 --> ( 难度等级: [0.2453, 0.2454) || 挂载数据: qa: 3 ) +│ │ │ └── 显示下载进度并处理错误 --> ( 难度等级: [0.2454, 0.2455) || 挂载数据: 无 ) +│ │ └── 使用asyncio包处理并发 --> ( 难度等级: [0.2455, 0.2457) || 挂载数据: 无 ) +│ │ ├── 避免阻塞型调用 --> ( 难度等级: [0.2455, 0.2456) || 挂载数据: 无 ) +│ │ ├── 改进asyncio下载脚本 --> ( 难度等级: [0.2456, 0.2457) || 挂载数据: 无 ) +│ │ └── 使用asyncio包编写服务器 --> ( 难度等级: [0.2457, 0.2457) || 挂载数据: 无 ) +│ ├── 元编程 --> ( 难度等级: [0.2457, 0.2463) || 挂载数据: qa: 3 ) +│ │ ├── 动态属性和特性 --> ( 难度等级: [0.2457, 0.2458) || 挂载数据: 无 ) +│ │ │ ├── 使用动态属性转换数据 --> ( 难度等级: [0.2457, 0.2457) || 挂载数据: 无 ) +│ │ │ ├── 使用特性验证属性 --> ( 难度等级: [0.2457, 0.2458) || 挂载数据: 无 ) +│ │ │ ├── 特性全解析 --> ( 难度等级: [0.2458, 0.2458) || 挂载数据: 无 ) +│ │ │ ├── 定义一个特性工厂函数 --> ( 难度等级: [0.2458, 0.2458) || 挂载数据: 无 ) +│ │ │ └── 处理属性删除操作 --> ( 难度等级: [0.2458, 0.2458) || 挂载数据: 无 ) +│ │ ├── 属性描述符 --> ( 难度等级: [0.2458, 0.2458) || 挂载数据: 无 ) +│ │ │ ├── 描述符示例:验证属性 --> ( 难度等级: [0.2458, 0.2458) || 挂载数据: 无 ) +│ │ │ ├── 覆盖型与非覆盖型描述符对比 --> ( 难度等级: [0.2458, 0.2458) || 挂载数据: qa: 1 ) +│ │ │ ├── 方法是描述符 --> ( 难度等级: [0.2458, 0.2458) || 挂载数据: 无 ) +│ │ │ ├── 描述符用法建议 --> ( 难度等级: [0.2458, 0.2458) || 挂载数据: 无 ) +│ │ │ └── 描述符的文档字符串和覆盖删除操作 --> ( 难度等级: [0.2458, 0.2458) || 挂载数据: 无 ) +│ │ ├── 类元编程 --> ( 难度等级: [0.2458, 0.2458) || 挂载数据: 无 ) +│ │ │ ├── 类工厂函数 --> ( 难度等级: [0.2458, 0.2458) || 挂载数据: 无 ) +│ │ │ ├── 定制描述符的类装饰器 --> ( 难度等级: [0.2458, 0.2458) || 挂载数据: 无 ) +│ │ │ ├── 导入时和运行时比较 --> ( 难度等级: [0.2458, 0.2458) || 挂载数据: 无 ) +│ │ │ ├── 元类基础知识 --> ( 难度等级: [0.2458, 0.2458) || 挂载数据: 无 ) +│ │ │ ├── 定制描述符的元类 --> ( 难度等级: [0.2458, 0.2458) || 挂载数据: 无 ) +│ │ │ └── 元类的特殊方法__prepare__ --> ( 难度等级: [0.2458, 0.2458) || 挂载数据: qa: 1 ) +│ │ ├── 给函数添加一个包装 --> ( 难度等级: [0.2458, 0.2458) || 挂载数据: 无 ) +│ │ ├── 编写装饰器时如何保存函数的元数据 --> ( 难度等级: [0.2458, 0.2458) || 挂载数据: 无 ) +│ │ ├── 对装饰器进行解包装 --> ( 难度等级: [0.2458, 0.2459) || 挂载数据: qa: 6 ) +│ │ ├── 定义一个可接受参数的装饰器 --> ( 难度等级: [0.2459, 0.2459) || 挂载数据: 无 ) +│ │ ├── 定义一个属性可由用户修改的装饰器 --> ( 难度等级: [0.2459, 0.2459) || 挂载数据: 无 ) +│ │ ├── 定义一个能接收可选参数的装饰器 --> ( 难度等级: [0.2459, 0.2459) || 挂载数据: 无 ) +│ │ ├── 利用装饰器对函数参数强制执行类型检查 --> ( 难度等级: [0.2459, 0.2459) || 挂载数据: 无 ) +│ │ ├── 在类中定义装饰器 --> ( 难度等级: [0.2459, 0.246) || 挂载数据: 无 ) +│ │ ├── 把装饰器定义成类 --> ( 难度等级: [0.246, 0.246) || 挂载数据: 无 ) +│ │ ├── 把装饰器作用到类和静态方法上 --> ( 难度等级: [0.246, 0.246) || 挂载数据: 无 ) +│ │ ├── 编写装饰器为被包装的函数添加参数 --> ( 难度等级: [0.246, 0.246) || 挂载数据: 无 ) +│ │ ├── 利用装饰器给类定义打补丁 --> ( 难度等级: [0.246, 0.246) || 挂载数据: 无 ) +│ │ ├── 获取类属性的定义顺序 --> ( 难度等级: [0.246, 0.2461) || 挂载数据: 无 ) +│ │ ├── 定义一个能接受可选参数的元类 --> ( 难度等级: [0.2461, 0.2461) || 挂载数据: 无 ) +│ │ ├── 在*args和**kwargs上强制规定一种参数签名 --> ( 难度等级: [0.2461, 0.2461) || 挂载数据: qa: 1 ) +│ │ ├── 在类中强制规定编码约定 --> ( 难度等级: [0.2461, 0.2461) || 挂载数据: 无 ) +│ │ ├── 通过编程的方式来定义类 --> ( 难度等级: [0.2461, 0.2461) || 挂载数据: 无 ) +│ │ ├── 在定义的时候初始化类成员 --> ( 难度等级: [0.2461, 0.2462) || 挂载数据: 无 ) +│ │ ├── 通过函数注解来实现方法重载 --> ( 难度等级: [0.2462, 0.2462) || 挂载数据: 无 ) +│ │ ├── 避免出现重复的属性方法 --> ( 难度等级: [0.2462, 0.2462) || 挂载数据: 无 ) +│ │ ├── 以简单的方式定义上下文管理器 --> ( 难度等级: [0.2462, 0.2462) || 挂载数据: 无 ) +│ │ ├── 执行带有局部副作用的代码 --> ( 难度等级: [0.2462, 0.2462) || 挂载数据: 无 ) +│ │ ├── 解析并分析Python源代码 --> ( 难度等级: [0.2462, 0.2463) || 挂载数据: 无 ) +│ │ └── 将Python源码分解为字节码 --> ( 难度等级: [0.2463, 0.2463) || 挂载数据: 无 ) +│ ├── 数据编码与处理 --> ( 难度等级: [0.2463, 0.2468) || 挂载数据: 无 ) +│ │ ├── 读写CSV数据 --> ( 难度等级: [0.2463, 0.2463) || 挂载数据: 无 ) +│ │ ├── 读写JSON数据 --> ( 难度等级: [0.2463, 0.2464) || 挂载数据: 无 ) +│ │ ├── 解析简单的XML文档 --> ( 难度等级: [0.2464, 0.2464) || 挂载数据: 无 ) +│ │ ├── 以增量方式解析大型XML文件 --> ( 难度等级: [0.2464, 0.2465) || 挂载数据: 无 ) +│ │ ├── 将字典转换为XML --> ( 难度等级: [0.2465, 0.2465) || 挂载数据: 无 ) +│ │ ├── 用命名空间来解析XML文档 --> ( 难度等级: [0.2465, 0.2466) || 挂载数据: 无 ) +│ │ ├── 同关系型数据库进行交互 --> ( 难度等级: [0.2466, 0.2466) || 挂载数据: 无 ) +│ │ ├── 编码和解码十六进制数字 --> ( 难度等级: [0.2466, 0.2467) || 挂载数据: qa: 1 ) +│ │ ├── 读写二进制结构的数组 --> ( 难度等级: [0.2467, 0.2467) || 挂载数据: 无 ) +│ │ ├── 读取嵌套型和大小可变的二进制结构 --> ( 难度等级: [0.2467, 0.2468) || 挂载数据: 无 ) +│ │ └── 数据汇总和统计 --> ( 难度等级: [0.2468, 0.2468) || 挂载数据: 无 ) +│ ├── 并发 --> ( 难度等级: [0.2468, 0.2473) || 挂载数据: qa: 1 ) +│ │ ├── 启动和停止线程 --> ( 难度等级: [0.2468, 0.2468) || 挂载数据: 无 ) +│ │ ├── 判断线程是否已经启动 --> ( 难度等级: [0.2468, 0.2469) || 挂载数据: 无 ) +│ │ ├── 线程间通信 --> ( 难度等级: [0.2469, 0.2469) || 挂载数据: 无 ) +│ │ ├── 对临界区加锁 --> ( 难度等级: [0.2469, 0.247) || 挂载数据: 无 ) +│ │ ├── 避免死锁 --> ( 难度等级: [0.247, 0.247) || 挂载数据: 无 ) +│ │ ├── 保存线程专有状态 --> ( 难度等级: [0.247, 0.247) || 挂载数据: 无 ) +│ │ ├── 创建线程池 --> ( 难度等级: [0.247, 0.2471) || 挂载数据: 无 ) +│ │ ├── 实现简单的并行编程 --> ( 难度等级: [0.2471, 0.2471) || 挂载数据: 无 ) +│ │ ├── 如何规避GIL带来的限制 --> ( 难度等级: [0.2471, 0.2472) || 挂载数据: 无 ) +│ │ ├── 定义一个Actor任务 --> ( 难度等级: [0.2472, 0.2472) || 挂载数据: 无 ) +│ │ ├── 实现发布者/订阅者消息模式 --> ( 难度等级: [0.2472, 0.2472) || 挂载数据: 无 ) +│ │ ├── 使用生成器作为线程的替代方案 --> ( 难度等级: [0.2472, 0.2473) || 挂载数据: 无 ) +│ │ ├── 轮询多个线程队列 --> ( 难度等级: [0.2473, 0.2473) || 挂载数据: 无 ) +│ │ └── 在UNIX上加载守护进程 --> ( 难度等级: [0.2473, 0.2473) || 挂载数据: 无 ) +│ ├── 实用脚本和系统管理 --> ( 难度等级: [0.2473, 0.2479) || 挂载数据: qa: 1 ) +│ │ ├── 通过重定向、管道或输入文件来作为脚本的输入 --> ( 难度等级: [0.2473, 0.2474) || 挂载数据: 无 ) +│ │ ├── 终止程序并显示错误信息 --> ( 难度等级: [0.2474, 0.2474) || 挂载数据: 无 ) +│ │ ├── 解析命令行选项 --> ( 难度等级: [0.2474, 0.2475) || 挂载数据: 无 ) +│ │ ├── 在运行时提供密码输入提示 --> ( 难度等级: [0.2475, 0.2475) || 挂载数据: 无 ) +│ │ ├── 获取终端大小 --> ( 难度等级: [0.2475, 0.2475) || 挂载数据: qa: 1 ) +│ │ ├── 执行外部命令并获取输出 --> ( 难度等级: [0.2475, 0.2476) || 挂载数据: 无 ) +│ │ ├── 创建和解包归档文件 --> ( 难度等级: [0.2476, 0.2476) || 挂载数据: 无 ) +│ │ ├── 通过名称来查找文件 --> ( 难度等级: [0.2476, 0.2476) || 挂载数据: 无 ) +│ │ ├── 读取配置文件 --> ( 难度等级: [0.2476, 0.2477) || 挂载数据: 无 ) +│ │ ├── 给脚本添加日志记录 --> ( 难度等级: [0.2477, 0.2477) || 挂载数据: 无 ) +│ │ ├── 给库添加日志记录 --> ( 难度等级: [0.2477, 0.2478) || 挂载数据: 无 ) +│ │ ├── 创建一个秒表计时器 --> ( 难度等级: [0.2478, 0.2478) || 挂载数据: 无 ) +│ │ ├── 给内存和CPU使用量设定限制 --> ( 难度等级: [0.2478, 0.2478) || 挂载数据: 无 ) +│ │ └── 加载Web浏览器 --> ( 难度等级: [0.2478, 0.2479) || 挂载数据: 无 ) +│ ├── C语言扩展 --> ( 难度等级: [0.2479, 0.2484) || 挂载数据: 无 ) +│ │ ├── 利用ctypes来访问C代码 --> ( 难度等级: [0.2479, 0.2479) || 挂载数据: qa: 2 ) +│ │ ├── 编写简单的C语言扩展模块 --> ( 难度等级: [0.2479, 0.2479) || 挂载数据: 无 ) +│ │ ├── 编写一个可操作数组的扩展函数 --> ( 难度等级: [0.2479, 0.2479) || 挂载数据: 无 ) +│ │ ├── 在C扩展模块中管理不透明指针 --> ( 难度等级: [0.2479, 0.248) || 挂载数据: 无 ) +│ │ ├── 在扩展模块中定义并导出C API --> ( 难度等级: [0.248, 0.248) || 挂载数据: 无 ) +│ │ ├── 从C中调用Python --> ( 难度等级: [0.248, 0.248) || 挂载数据: qa: 1 ) +│ │ ├── 在C扩展模块中释放GIL --> ( 难度等级: [0.248, 0.248) || 挂载数据: 无 ) +│ │ ├── 混合使用C和Python环境中的线程 --> ( 难度等级: [0.248, 0.2481) || 挂载数据: 无 ) +│ │ ├── 用Swig来包装C代码 --> ( 难度等级: [0.2481, 0.2481) || 挂载数据: 无 ) +│ │ ├── 用Cython来包装C代码 --> ( 难度等级: [0.2481, 0.2481) || 挂载数据: 无 ) +│ │ ├── 用Cython来高效操作数组 --> ( 难度等级: [0.2481, 0.2482) || 挂载数据: 无 ) +│ │ ├── 把函数指针转换为可调用对象 --> ( 难度等级: [0.2482, 0.2482) || 挂载数据: 无 ) +│ │ ├── 把以NULL结尾的字符串传给C库 --> ( 难度等级: [0.2482, 0.2482) || 挂载数据: 无 ) +│ │ ├── 把Unicode字符串传递给C库 --> ( 难度等级: [0.2482, 0.2482) || 挂载数据: 无 ) +│ │ ├── 把C字符串转换到Python中 --> ( 难度等级: [0.2482, 0.2483) || 挂载数据: 无 ) +│ │ ├── 同编码方式不确定的C字符串打交道 --> ( 难度等级: [0.2483, 0.2483) || 挂载数据: 无 ) +│ │ ├── 把文件名传给C扩展模块 --> ( 难度等级: [0.2483, 0.2483) || 挂载数据: 无 ) +│ │ ├── 把打开的文件传给C扩展模块 --> ( 难度等级: [0.2483, 0.2483) || 挂载数据: 无 ) +│ │ ├── 在C中读取文件型对象 --> ( 难度等级: [0.2483, 0.2484) || 挂载数据: 无 ) +│ │ ├── 从C中访问可迭代对象 --> ( 难度等级: [0.2484, 0.2484) || 挂载数据: 无 ) +│ │ └── 排查段错误 --> ( 难度等级: [0.2484, 0.2484) || 挂载数据: qa: 9 ) +│ ├── 初识Python --> ( 难度等级: [0.2484, 0.2489) || 挂载数据: 无 ) +│ │ ├── 搭建Python开发环境 --> ( 难度等级: [0.2484, 0.2487) || 挂载数据: 无 ) +│ │ │ ├── 开发环境概述 --> ( 难度等级: [0.2484, 0.2485) || 挂载数据: qa: 6 ) +│ │ │ └── 运行已经编写好的.py文件 --> ( 难度等级: [0.2485, 0.2487) || 挂载数据: qa: 5 ) +│ │ └── Python开发工具 --> ( 难度等级: [0.2487, 0.2489) || 挂载数据: 无 ) +│ │ └── 使用自带的IDLE --> ( 难度等级: [0.2487, 0.2489) || 挂载数据: 无 ) +│ ├── Python语言基础 --> ( 难度等级: [0.2489, 0.2495) || 挂载数据: 无 ) +│ │ ├── Python语法特点 --> ( 难度等级: [0.2489, 0.2491) || 挂载数据: 无 ) +│ │ │ └── 注释规则 --> ( 难度等级: [0.2489, 0.2491) || 挂载数据: 无 ) +│ │ ├── Python中的变量 --> ( 难度等级: [0.2491, 0.2493) || 挂载数据: 无 ) +│ │ │ ├── 理解Python中的变量 --> ( 难度等级: [0.2491, 0.2492) || 挂载数据: 无 ) +│ │ │ └── 定义变量 --> ( 难度等级: [0.2492, 0.2493) || 挂载数据: qa: 2 ) +│ │ └── 基本数据类型 --> ( 难度等级: [0.2493, 0.2495) || 挂载数据: 无 ) +│ │ ├── 布尔类型 --> ( 难度等级: [0.2493, 0.2494) || 挂载数据: 无 ) +│ │ └── 数据类型转换 --> ( 难度等级: [0.2494, 0.2495) || 挂载数据: qa: 2 ) +│ └── 流程控制语句 --> ( 难度等级: [0.2495, 0.25) || 挂载数据: 无 ) +│ ├── 程序结构 --> ( 难度等级: [0.2495, 0.2496) || 挂载数据: 无 ) +│ ├── 选择语句 --> ( 难度等级: [0.2496, 0.2498) || 挂载数据: 无 ) +│ │ ├── if…else语句 --> ( 难度等级: [0.2496, 0.2497) || 挂载数据: qa: 3 ) +│ │ ├── if…elif…else语句 --> ( 难度等级: [0.2497, 0.2498) || 挂载数据: qa: 1 ) +│ │ └── if语句的嵌套 --> ( 难度等级: [0.2498, 0.2498) || 挂载数据: qa: 2 ) +│ └── 循环语句 --> ( 难度等级: [0.2498, 0.25) || 挂载数据: 无 ) +│ └── 循环嵌套 --> ( 难度等级: [0.2498, 0.25) || 挂载数据: qa: 10 ) +├── Python中阶 --> ( 难度等级: [0.25, 0.5) || 挂载数据: 无 ) +│ ├── 基本技能 --> ( 难度等级: [0.25, 0.3) || 挂载数据: 无 ) +│ │ ├── 时间日期处理 --> ( 难度等级: [0.25, 0.2562) || 挂载数据: 无 ) +│ │ │ ├── time --> ( 难度等级: [0.25, 0.2531) || 挂载数据: qa: 1 ) +│ │ │ └── datetime --> ( 难度等级: [0.2531, 0.2562) || 挂载数据: qa: 1 ) +│ │ ├── 数据文件读写 --> ( 难度等级: [0.2562, 0.2625) || 挂载数据: 无 ) +│ │ │ └── excel/csv/hdf/netCDF --> ( 难度等级: [0.2562, 0.2625) || 挂载数据: 无 ) +│ │ ├── 数据库操作 --> ( 难度等级: [0.2625, 0.2687) || 挂载数据: 无 ) +│ │ │ ├── 数据库概述 --> ( 难度等级: [0.2625, 0.2634) || 挂载数据: 无 ) +│ │ │ ├── 数据库安装配置 --> ( 难度等级: [0.2634, 0.2643) || 挂载数据: 无 ) +│ │ │ ├── SQL语句 --> ( 难度等级: [0.2643, 0.2652) || 挂载数据: qa: 4 ) +│ │ │ ├── SQLite --> ( 难度等级: [0.2652, 0.2661) || 挂载数据: 无 ) +│ │ │ │ ├── 创建数据库文件 --> ( 难度等级: [0.2652, 0.2656) || 挂载数据: 无 ) +│ │ │ │ └── 操作SQLite --> ( 难度等级: [0.2656, 0.2661) || 挂载数据: qa: 2 ) +│ │ │ ├── MySQL --> ( 难度等级: [0.2661, 0.267) || 挂载数据: 无 ) +│ │ │ │ ├── 下载安装MySQL --> ( 难度等级: [0.2661, 0.2663) || 挂载数据: qa: 10 ) +│ │ │ │ ├── 连接数据库 --> ( 难度等级: [0.2663, 0.2665) || 挂载数据: qa: 2 ) +│ │ │ │ ├── 创建数据表 --> ( 难度等级: [0.2665, 0.2667) || 挂载数据: 无 ) +│ │ │ │ └── 操作MySQL数据表 --> ( 难度等级: [0.2667, 0.267) || 挂载数据: qa: 1 ) +│ │ │ ├── MongoDB --> ( 难度等级: [0.267, 0.2679) || 挂载数据: qa: 2 ) +│ │ │ └── 数据库编程接口 --> ( 难度等级: [0.2679, 0.2687) || 挂载数据: 无 ) +│ │ │ ├── 连接对象 --> ( 难度等级: [0.2679, 0.2683) || 挂载数据: 无 ) +│ │ │ └── 游标对象 --> ( 难度等级: [0.2683, 0.2687) || 挂载数据: 无 ) +│ │ ├── 操作系统和环境 --> ( 难度等级: [0.2687, 0.275) || 挂载数据: 无 ) +│ │ │ └── OS/Sys --> ( 难度等级: [0.2687, 0.275) || 挂载数据: 无 ) +│ │ ├── 线程进程和协程 --> ( 难度等级: [0.275, 0.2812) || 挂载数据: 无 ) +│ │ │ ├── 基础概念 --> ( 难度等级: [0.275, 0.276) || 挂载数据: 无 ) +│ │ │ ├── 加锁和解锁 --> ( 难度等级: [0.276, 0.2771) || 挂载数据: 无 ) +│ │ │ ├── threading --> ( 难度等级: [0.2771, 0.2781) || 挂载数据: 无 ) +│ │ │ ├── multiprocessing --> ( 难度等级: [0.2781, 0.2792) || 挂载数据: qa: 1 ) +│ │ │ ├── queue --> ( 难度等级: [0.2792, 0.2802) || 挂载数据: qa: 1 ) +│ │ │ └── gevent --> ( 难度等级: [0.2802, 0.2812) || 挂载数据: 无 ) +│ │ ├── 源码打包 --> ( 难度等级: [0.2812, 0.2875) || 挂载数据: 无 ) +│ │ │ └── pyinstaller --> ( 难度等级: [0.2812, 0.2875) || 挂载数据: 无 ) +│ │ ├── 网络编程 --> ( 难度等级: [0.2875, 0.2938) || 挂载数据: 无 ) +│ │ │ ├── socket --> ( 难度等级: [0.2875, 0.2878) || 挂载数据: qa: 7 ) +│ │ │ ├── 与HTTP服务交互 --> ( 难度等级: [0.2878, 0.2882) || 挂载数据: 无 ) +│ │ │ ├── 创建服务器 --> ( 难度等级: [0.2882, 0.2885) || 挂载数据: 无 ) +│ │ │ │ ├── TCP服务器 --> ( 难度等级: [0.2882, 0.2884) || 挂载数据: qa: 7 ) +│ │ │ │ └── UDP服务器 --> ( 难度等级: [0.2884, 0.2885) || 挂载数据: 无 ) +│ │ │ ├── 通过CIDR地址生成对应的IP地址集 --> ( 难度等级: [0.2885, 0.2889) || 挂载数据: 无 ) +│ │ │ ├── REST接口创建 --> ( 难度等级: [0.2889, 0.2892) || 挂载数据: 无 ) +│ │ │ ├── 远程调用 --> ( 难度等级: [0.2892, 0.2896) || 挂载数据: 无 ) +│ │ │ │ ├── 远程方法调用 --> ( 难度等级: [0.2892, 0.2894) || 挂载数据: qa: 10 ) +│ │ │ │ └── 通过XML-RPC远程调用 --> ( 难度等级: [0.2894, 0.2896) || 挂载数据: 无 ) +│ │ │ ├── 不同Python解释器之间的交互 --> ( 难度等级: [0.2896, 0.2899) || 挂载数据: 无 ) +│ │ │ ├── 客户端认证 --> ( 难度等级: [0.2899, 0.2903) || 挂载数据: 无 ) +│ │ │ ├── Socket文件描述符传递 --> ( 难度等级: [0.2903, 0.2906) || 挂载数据: 无 ) +│ │ │ ├── 事件驱动的I/O --> ( 难度等级: [0.2906, 0.291) || 挂载数据: 无 ) +│ │ │ ├── 大型数组发送与接收 --> ( 难度等级: [0.291, 0.2913) || 挂载数据: 无 ) +│ │ │ ├── 简介 --> ( 难度等级: [0.2913, 0.2917) || 挂载数据: 无 ) +│ │ │ │ ├── 客户端/服务端架构 --> ( 难度等级: [0.2913, 0.2914) || 挂载数据: 无 ) +│ │ │ │ ├── 持久化存储 --> ( 难度等级: [0.2914, 0.2915) || 挂载数据: 无 ) +│ │ │ │ ├── 数据库基本操作和SQL --> ( 难度等级: [0.2915, 0.2915) || 挂载数据: 无 ) +│ │ │ │ ├── Web应用:客户端/服务器计算 --> ( 难度等级: [0.2915, 0.2916) || 挂载数据: 无 ) +│ │ │ │ └── 因特网 --> ( 难度等级: [0.2916, 0.2917) || 挂载数据: 无 ) +│ │ │ ├── 客户端/服务器架构 --> ( 难度等级: [0.2917, 0.292) || 挂载数据: 无 ) +│ │ │ │ ├── 硬件客户端/服务器架构 --> ( 难度等级: [0.2917, 0.2918) || 挂载数据: 无 ) +│ │ │ │ ├── 软件客户端/服务器架构 --> ( 难度等级: [0.2918, 0.2918) || 挂载数据: 无 ) +│ │ │ │ ├── 银行出纳员作为服务器吗 --> ( 难度等级: [0.2918, 0.2919) || 挂载数据: 无 ) +│ │ │ │ └── 客户端/服务器网络编程 --> ( 难度等级: [0.2919, 0.292) || 挂载数据: 无 ) +│ │ │ ├── 套接字:通信端点 --> ( 难度等级: [0.292, 0.2924) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 套接字 --> ( 难度等级: [0.292, 0.2921) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 套接字地址:主机-端口对 --> ( 难度等级: [0.2921, 0.2922) || 挂载数据: qa: 1 ) +│ │ │ │ └── 面向连接的套接字与无连接的套接字 --> ( 难度等级: [0.2922, 0.2924) || 挂载数据: 无 ) +│ │ │ ├── Python中的网络编程 --> ( 难度等级: [0.2924, 0.2927) || 挂载数据: 无 ) +│ │ │ │ ├── socket模块函数 --> ( 难度等级: [0.2924, 0.2924) || 挂载数据: 无 ) +│ │ │ │ ├── 套接字对象(内置)方法 --> ( 难度等级: [0.2924, 0.2924) || 挂载数据: 无 ) +│ │ │ │ ├── 创建TCP服务器 --> ( 难度等级: [0.2924, 0.2925) || 挂载数据: 无 ) +│ │ │ │ ├── 创建TCP客户端 --> ( 难度等级: [0.2925, 0.2925) || 挂载数据: 无 ) +│ │ │ │ ├── 执行TCP服务器和客户端 --> ( 难度等级: [0.2925, 0.2926) || 挂载数据: 无 ) +│ │ │ │ ├── 创建UDP服务器 --> ( 难度等级: [0.2926, 0.2926) || 挂载数据: 无 ) +│ │ │ │ ├── 创建UDP客户端 --> ( 难度等级: [0.2926, 0.2926) || 挂载数据: 无 ) +│ │ │ │ ├── 执行UDP服务器和客户端 --> ( 难度等级: [0.2926, 0.2927) || 挂载数据: 无 ) +│ │ │ │ └── socket模块属性 --> ( 难度等级: [0.2927, 0.2927) || 挂载数据: 无 ) +│ │ │ ├── *SocketServer模块 --> ( 难度等级: [0.2927, 0.2931) || 挂载数据: 无 ) +│ │ │ │ ├── 创建SocketServer TCP服务器 --> ( 难度等级: [0.2927, 0.2929) || 挂载数据: 无 ) +│ │ │ │ └── 创建SocketServer TCP客户端 --> ( 难度等级: [0.2929, 0.2931) || 挂载数据: 无 ) +│ │ │ ├── *Twisted框架介绍 --> ( 难度等级: [0.2931, 0.2934) || 挂载数据: 无 ) +│ │ │ │ ├── 创建Twisted Reactor TCP服务器 --> ( 难度等级: [0.2931, 0.2932) || 挂载数据: 无 ) +│ │ │ │ └── 创建Twisted Reactor TCP客户端 --> ( 难度等级: [0.2932, 0.2934) || 挂载数据: 无 ) +│ │ │ └── 相关模块 --> ( 难度等级: [0.2934, 0.2938) || 挂载数据: 无 ) +│ │ │ └── 其他因特网客户端协议 --> ( 难度等级: [0.2934, 0.2938) || 挂载数据: 无 ) +│ │ └── 发送邮件 --> ( 难度等级: [0.2938, 0.3) || 挂载数据: qa: 1 ) +│ │ └── smtplib --> ( 难度等级: [0.2938, 0.3) || 挂载数据: 无 ) +│ ├── Web应用开发 --> ( 难度等级: [0.3, 0.35) || 挂载数据: 无 ) +│ │ ├── Web开发基础知识 --> ( 难度等级: [0.3, 0.305) || 挂载数据: 无 ) +│ │ │ ├── HTML/HTML5/CSS --> ( 难度等级: [0.3, 0.3013) || 挂载数据: 无 ) +│ │ │ ├── 前端数据库和后台 --> ( 难度等级: [0.3013, 0.3025) || 挂载数据: 无 ) +│ │ │ ├── MVC架构 --> ( 难度等级: [0.3025, 0.3037) || 挂载数据: 无 ) +│ │ │ └── REST和Ajax --> ( 难度等级: [0.3037, 0.305) || 挂载数据: 无 ) +│ │ ├── Django --> ( 难度等级: [0.305, 0.31) || 挂载数据: 无 ) +│ │ │ ├── Django简介 --> ( 难度等级: [0.305, 0.3052) || 挂载数据: qa: 8 ) +│ │ │ ├── Django安装配置 --> ( 难度等级: [0.3052, 0.3054) || 挂载数据: 无 ) +│ │ │ ├── DTL(Django Template Language) --> ( 难度等级: [0.3054, 0.3057) || 挂载数据: 无 ) +│ │ │ ├── Django路由定义 --> ( 难度等级: [0.3057, 0.3059) || 挂载数据: 无 ) +│ │ │ ├── Django请求数据解析 --> ( 难度等级: [0.3059, 0.3061) || 挂载数据: qa: 1 ) +│ │ │ ├── Django数据库操作 --> ( 难度等级: [0.3061, 0.3063) || 挂载数据: qa: 1 ) +│ │ │ ├── Django提交表单 --> ( 难度等级: [0.3063, 0.3065) || 挂载数据: qa: 1 ) +│ │ │ ├── Django Rest Framework --> ( 难度等级: [0.3065, 0.3067) || 挂载数据: 无 ) +│ │ │ ├── 部署日志与安全 --> ( 难度等级: [0.3067, 0.307) || 挂载数据: 无 ) +│ │ │ ├── Django开发案例 --> ( 难度等级: [0.307, 0.3072) || 挂载数据: qa: 1 ) +│ │ │ ├── Web框架 --> ( 难度等级: [0.3072, 0.3074) || 挂载数据: 无 ) +│ │ │ ├── “Hello World”应用(一个博客) --> ( 难度等级: [0.3074, 0.3076) || 挂载数据: qa: 3 ) +│ │ │ ├── 创建模型来添加数据库服务 --> ( 难度等级: [0.3076, 0.3078) || 挂载数据: 无 ) +│ │ │ │ └── 设置数据库 --> ( 难度等级: [0.3076, 0.3078) || 挂载数据: 无 ) +│ │ │ ├── Python应用shell --> ( 难度等级: [0.3078, 0.308) || 挂载数据: 无 ) +│ │ │ │ ├── 在Django中使用Python shell --> ( 难度等级: [0.3078, 0.3079) || 挂载数据: qa: 9 ) +│ │ │ │ └── 测试数据模型 --> ( 难度等级: [0.3079, 0.308) || 挂载数据: 无 ) +│ │ │ ├── Django管理应用 --> ( 难度等级: [0.308, 0.3083) || 挂载数据: 无 ) +│ │ │ │ ├── 设置admin --> ( 难度等级: [0.308, 0.3082) || 挂载数据: 无 ) +│ │ │ │ └── 使用admin --> ( 难度等级: [0.3082, 0.3083) || 挂载数据: qa: 1 ) +│ │ │ ├── 创建博客的用户界面 --> ( 难度等级: [0.3083, 0.3085) || 挂载数据: 无 ) +│ │ │ │ ├── 创建模板 --> ( 难度等级: [0.3083, 0.3083) || 挂载数据: qa: 6 ) +│ │ │ │ ├── 创建URL模式 --> ( 难度等级: [0.3083, 0.3084) || 挂载数据: 无 ) +│ │ │ │ └── 创建视图函数 --> ( 难度等级: [0.3084, 0.3085) || 挂载数据: 无 ) +│ │ │ ├── 改进输出 --> ( 难度等级: [0.3085, 0.3087) || 挂载数据: 无 ) +│ │ │ ├── 处理用户输入 --> ( 难度等级: [0.3087, 0.3089) || 挂载数据: 无 ) +│ │ │ │ ├── 添加URLconf项 --> ( 难度等级: [0.3087, 0.3088) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 视图:处理用户输入 --> ( 难度等级: [0.3088, 0.3088) || 挂载数据: qa: 10 ) +│ │ │ │ └── 跨站点请求伪造 --> ( 难度等级: [0.3088, 0.3089) || 挂载数据: 无 ) +│ │ │ ├── 表单和模型表单 --> ( 难度等级: [0.3089, 0.3091) || 挂载数据: 无 ) +│ │ │ │ ├── Django表单简介 --> ( 难度等级: [0.3089, 0.309) || 挂载数据: 无 ) +│ │ │ │ ├── 模型表单示例 --> ( 难度等级: [0.309, 0.309) || 挂载数据: 无 ) +│ │ │ │ ├── 使用ModelForm来生成HTML表单 --> ( 难度等级: [0.309, 0.3091) || 挂载数据: 无 ) +│ │ │ │ └── 处理ModelForm数据 --> ( 难度等级: [0.3091, 0.3091) || 挂载数据: 无 ) +│ │ │ ├── 视图进阶 --> ( 难度等级: [0.3091, 0.3093) || 挂载数据: 无 ) +│ │ │ ├── *改善外观 --> ( 难度等级: [0.3093, 0.3096) || 挂载数据: 无 ) +│ │ │ ├── *中级Django应用:TweetApprover --> ( 难度等级: [0.3096, 0.3098) || 挂载数据: 无 ) +│ │ │ │ ├── 安装Twython库 --> ( 难度等级: [0.3096, 0.3096) || 挂载数据: 无 ) +│ │ │ │ ├── URL结构 --> ( 难度等级: [0.3096, 0.3097) || 挂载数据: qa: 9 ) +│ │ │ │ ├── 数据模型 --> ( 难度等级: [0.3097, 0.3097) || 挂载数据: 无 ) +│ │ │ │ ├── 提交新推文以便审核 --> ( 难度等级: [0.3097, 0.3097) || 挂载数据: 无 ) +│ │ │ │ └── 审核推文 --> ( 难度等级: [0.3097, 0.3098) || 挂载数据: 无 ) +│ │ │ └── 资源 --> ( 难度等级: [0.3098, 0.31) || 挂载数据: 无 ) +│ │ ├── Tornado --> ( 难度等级: [0.31, 0.315) || 挂载数据: 无 ) +│ │ │ ├── Tornado简介 --> ( 难度等级: [0.31, 0.3106) || 挂载数据: 无 ) +│ │ │ ├── Tornado安装配置 --> ( 难度等级: [0.3106, 0.3111) || 挂载数据: 无 ) +│ │ │ ├── Tornado提交表单 --> ( 难度等级: [0.3111, 0.3117) || 挂载数据: 无 ) +│ │ │ ├── Tornado模板 --> ( 难度等级: [0.3117, 0.3122) || 挂载数据: qa: 1 ) +│ │ │ ├── Tornado数据库操作 --> ( 难度等级: [0.3122, 0.3128) || 挂载数据: 无 ) +│ │ │ ├── Tornado异步Web服务 --> ( 难度等级: [0.3128, 0.3133) || 挂载数据: 无 ) +│ │ │ ├── 外部服务认证(auth) --> ( 难度等级: [0.3133, 0.3139) || 挂载数据: 无 ) +│ │ │ ├── 部署日志与安全 --> ( 难度等级: [0.3139, 0.3144) || 挂载数据: 无 ) +│ │ │ └── Tornado开发案例 --> ( 难度等级: [0.3144, 0.315) || 挂载数据: 无 ) +│ │ ├── Flask --> ( 难度等级: [0.315, 0.32) || 挂载数据: 无 ) +│ │ │ ├── Flask简介 --> ( 难度等级: [0.315, 0.3155) || 挂载数据: 无 ) +│ │ │ │ ├── 安装 --> ( 难度等级: [0.315, 0.3151) || 挂载数据: 无 ) +│ │ │ │ │ ├── 创建应用目录 --> ( 难度等级: [0.315, 0.315) || 挂载数据: qa: 8 ) +│ │ │ │ │ ├── 虚拟环境 --> ( 难度等级: [0.315, 0.315) || 挂载数据: 无 ) +│ │ │ │ │ ├── 在Python 3中创建虚拟环境 --> ( 难度等级: [0.315, 0.315) || 挂载数据: 无 ) +│ │ │ │ │ ├── 在Python 2中创建虚拟环境 --> ( 难度等级: [0.315, 0.315) || 挂载数据: qa: 1 ) +│ │ │ │ │ ├── 使用虚拟环境 --> ( 难度等级: [0.315, 0.3151) || 挂载数据: 无 ) +│ │ │ │ │ └── 使用pip安装Python包 --> ( 难度等级: [0.3151, 0.3151) || 挂载数据: qa: 10 ) +│ │ │ │ ├── 应用的基本结构 --> ( 难度等级: [0.3151, 0.3151) || 挂载数据: 无 ) +│ │ │ │ │ ├── 初始化 --> ( 难度等级: [0.3151, 0.3151) || 挂载数据: 无 ) +│ │ │ │ │ ├── 路由和视图函数 --> ( 难度等级: [0.3151, 0.3151) || 挂载数据: 无 ) +│ │ │ │ │ ├── 一个完整的应用 --> ( 难度等级: [0.3151, 0.3151) || 挂载数据: 无 ) +│ │ │ │ │ ├── Web开发服务器 --> ( 难度等级: [0.3151, 0.3151) || 挂载数据: 无 ) +│ │ │ │ │ ├── 动态路由 --> ( 难度等级: [0.3151, 0.3151) || 挂载数据: 无 ) +│ │ │ │ │ ├── 调试模式 --> ( 难度等级: [0.3151, 0.3151) || 挂载数据: 无 ) +│ │ │ │ │ ├── 命令行选项 --> ( 难度等级: [0.3151, 0.3151) || 挂载数据: 无 ) +│ │ │ │ │ ├── 请求–响应循环 --> ( 难度等级: [0.3151, 0.3151) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 应用和请求上下文 --> ( 难度等级: [0.3151, 0.3151) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 请求分派 --> ( 难度等级: [0.3151, 0.3151) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 请求对象 --> ( 难度等级: [0.3151, 0.3151) || 挂载数据: 无 ) +│ │ │ │ │ │ │ ├── 对象显示 --> ( 难度等级: [0.3151, 0.3151) || 挂载数据: qa: 10 ) +│ │ │ │ │ │ │ ├── 有效创建大量对象 --> ( 难度等级: [0.3151, 0.3151) || 挂载数据: 无 ) +│ │ │ │ │ │ │ └── 由字符串调用对象 --> ( 难度等级: [0.3151, 0.3151) || 挂载数据: 无 ) +│ │ │ │ │ │ └── 请求钩子 --> ( 难度等级: [0.3151, 0.3151) || 挂载数据: 无 ) +│ │ │ │ │ └── Flask扩展 --> ( 难度等级: [0.3151, 0.3151) || 挂载数据: 无 ) +│ │ │ │ ├── 模板 --> ( 难度等级: [0.3151, 0.3152) || 挂载数据: 无 ) +│ │ │ │ │ ├── Jinja2模板引擎 --> ( 难度等级: [0.3151, 0.3151) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 渲染模板 --> ( 难度等级: [0.3151, 0.3151) || 挂载数据: qa: 1 ) +│ │ │ │ │ │ ├── 变量 --> ( 难度等级: [0.3151, 0.3151) || 挂载数据: 无 ) +│ │ │ │ │ │ │ ├── 匿名函数捕获变量值 --> ( 难度等级: [0.3151, 0.3151) || 挂载数据: 无 ) +│ │ │ │ │ │ │ └── 访问闭包中定义的变量 --> ( 难度等级: [0.3151, 0.3151) || 挂载数据: qa: 6 ) +│ │ │ │ │ │ └── 控制结构 --> ( 难度等级: [0.3151, 0.3151) || 挂载数据: 无 ) +│ │ │ │ │ ├── 使用Flask-Bootstrap集成Bootstrap --> ( 难度等级: [0.3151, 0.3152) || 挂载数据: 无 ) +│ │ │ │ │ ├── 自定义错误页面 --> ( 难度等级: [0.3152, 0.3152) || 挂载数据: 无 ) +│ │ │ │ │ ├── 链接 --> ( 难度等级: [0.3152, 0.3152) || 挂载数据: qa: 2 ) +│ │ │ │ │ ├── 静态文件 --> ( 难度等级: [0.3152, 0.3152) || 挂载数据: 无 ) +│ │ │ │ │ └── 使用Flask-Moment本地化日期和时间 --> ( 难度等级: [0.3152, 0.3152) || 挂载数据: 无 ) +│ │ │ │ ├── Web表单 --> ( 难度等级: [0.3152, 0.3153) || 挂载数据: 无 ) +│ │ │ │ │ ├── 配置 --> ( 难度等级: [0.3152, 0.3152) || 挂载数据: qa: 1 ) +│ │ │ │ │ ├── 表单类 --> ( 难度等级: [0.3152, 0.3152) || 挂载数据: 无 ) +│ │ │ │ │ ├── 把表单渲染成HTML --> ( 难度等级: [0.3152, 0.3152) || 挂载数据: 无 ) +│ │ │ │ │ ├── 在视图函数中处理表单 --> ( 难度等级: [0.3152, 0.3152) || 挂载数据: 无 ) +│ │ │ │ │ ├── 重定向和用户会话 --> ( 难度等级: [0.3152, 0.3152) || 挂载数据: qa: 1 ) +│ │ │ │ │ └── 闪现消息 --> ( 难度等级: [0.3152, 0.3153) || 挂载数据: 无 ) +│ │ │ │ ├── 数据库 --> ( 难度等级: [0.3153, 0.3153) || 挂载数据: 无 ) +│ │ │ │ │ ├── SQL数据库 --> ( 难度等级: [0.3153, 0.3153) || 挂载数据: qa: 5 ) +│ │ │ │ │ ├── NoSQL数据库 --> ( 难度等级: [0.3153, 0.3153) || 挂载数据: 无 ) +│ │ │ │ │ ├── 使用SQL还是NoSQL --> ( 难度等级: [0.3153, 0.3153) || 挂载数据: 无 ) +│ │ │ │ │ ├── Python数据库框架 --> ( 难度等级: [0.3153, 0.3153) || 挂载数据: 无 ) +│ │ │ │ │ ├── 使用Flask-SQLAlchemy管理数据库 --> ( 难度等级: [0.3153, 0.3153) || 挂载数据: qa: 1 ) +│ │ │ │ │ ├── 定义模型 --> ( 难度等级: [0.3153, 0.3153) || 挂载数据: 无 ) +│ │ │ │ │ ├── 关系 --> ( 难度等级: [0.3153, 0.3153) || 挂载数据: qa: 2 ) +│ │ │ │ │ ├── 数据库操作 --> ( 难度等级: [0.3153, 0.3153) || 挂载数据: qa: 1 ) +│ │ │ │ │ │ ├── 创建表 --> ( 难度等级: [0.3153, 0.3153) || 挂载数据: qa: 1 ) +│ │ │ │ │ │ ├── 插入行 --> ( 难度等级: [0.3153, 0.3153) || 挂载数据: qa: 1 ) +│ │ │ │ │ │ ├── 修改行 --> ( 难度等级: [0.3153, 0.3153) || 挂载数据: qa: 7 ) +│ │ │ │ │ │ ├── 删除行 --> ( 难度等级: [0.3153, 0.3153) || 挂载数据: 无 ) +│ │ │ │ │ │ └── 查询行 --> ( 难度等级: [0.3153, 0.3153) || 挂载数据: qa: 3 ) +│ │ │ │ │ ├── 在视图函数中操作数据库 --> ( 难度等级: [0.3153, 0.3153) || 挂载数据: qa: 1 ) +│ │ │ │ │ ├── 集成Python shell --> ( 难度等级: [0.3153, 0.3153) || 挂载数据: 无 ) +│ │ │ │ │ └── 使用Flask-Migrate实现数据库迁移 --> ( 难度等级: [0.3153, 0.3153) || 挂载数据: qa: 1 ) +│ │ │ │ │ ├── 创建迁移仓库 --> ( 难度等级: [0.3153, 0.3153) || 挂载数据: 无 ) +│ │ │ │ │ ├── 创建迁移脚本 --> ( 难度等级: [0.3153, 0.3153) || 挂载数据: 无 ) +│ │ │ │ │ ├── 更新数据库 --> ( 难度等级: [0.3153, 0.3153) || 挂载数据: qa: 10 ) +│ │ │ │ │ └── 添加几个迁移 --> ( 难度等级: [0.3153, 0.3153) || 挂载数据: 无 ) +│ │ │ │ ├── 电子邮件 --> ( 难度等级: [0.3153, 0.3154) || 挂载数据: 无 ) +│ │ │ │ │ ├── 电子邮件系统组件和协议 --> ( 难度等级: [0.3153, 0.3153) || 挂载数据: 无 ) +│ │ │ │ │ ├── 发送电子邮件 --> ( 难度等级: [0.3153, 0.3153) || 挂载数据: 无 ) +│ │ │ │ │ ├── Python和SMTP --> ( 难度等级: [0.3153, 0.3153) || 挂载数据: 无 ) +│ │ │ │ │ ├── smtplib.SMTP类方法 --> ( 难度等级: [0.3153, 0.3153) || 挂载数据: 无 ) +│ │ │ │ │ ├── 交互式SMTP示例 --> ( 难度等级: [0.3153, 0.3153) || 挂载数据: 无 ) +│ │ │ │ │ ├── SMTP的其他内容 --> ( 难度等级: [0.3153, 0.3154) || 挂载数据: 无 ) +│ │ │ │ │ ├── 接收电子邮件 --> ( 难度等级: [0.3154, 0.3154) || 挂载数据: 无 ) +│ │ │ │ │ ├── POP和IMAP --> ( 难度等级: [0.3154, 0.3154) || 挂载数据: qa: 1 ) +│ │ │ │ │ ├── 交互式POP3示例 --> ( 难度等级: [0.3154, 0.3154) || 挂载数据: 无 ) +│ │ │ │ │ ├── poplib.POP3类方法 --> ( 难度等级: [0.3154, 0.3154) || 挂载数据: 无 ) +│ │ │ │ │ ├── 客户端程序SMTP和POP3示例 --> ( 难度等级: [0.3154, 0.3154) || 挂载数据: 无 ) +│ │ │ │ │ ├── 交互式IMAP4示例 --> ( 难度等级: [0.3154, 0.3154) || 挂载数据: 无 ) +│ │ │ │ │ └── imaplib.IMAP4类中的常用方法 --> ( 难度等级: [0.3154, 0.3154) || 挂载数据: 无 ) +│ │ │ │ └── 大型应用的结构 --> ( 难度等级: [0.3154, 0.3155) || 挂载数据: 无 ) +│ │ │ │ ├── 配置选项 --> ( 难度等级: [0.3154, 0.3154) || 挂载数据: 无 ) +│ │ │ │ ├── 应用包 --> ( 难度等级: [0.3154, 0.3154) || 挂载数据: 无 ) +│ │ │ │ │ ├── 使用应用工厂函数 --> ( 难度等级: [0.3154, 0.3154) || 挂载数据: 无 ) +│ │ │ │ │ └── 在蓝本中实现应用功能 --> ( 难度等级: [0.3154, 0.3154) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 应用脚本 --> ( 难度等级: [0.3154, 0.3154) || 挂载数据: 无 ) +│ │ │ │ ├── 需求文件 --> ( 难度等级: [0.3154, 0.3154) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 单元测试 --> ( 难度等级: [0.3154, 0.3154) || 挂载数据: 无 ) +│ │ │ │ │ └── blog应用的代码审查 --> ( 难度等级: [0.3154, 0.3154) || 挂载数据: qa: 2 ) +│ │ │ │ ├── 创建数据库 --> ( 难度等级: [0.3154, 0.3154) || 挂载数据: 无 ) +│ │ │ │ └── 运行应用 --> ( 难度等级: [0.3154, 0.3155) || 挂载数据: qa: 2 ) +│ │ │ ├── Flask安装配置 --> ( 难度等级: [0.3155, 0.3159) || 挂载数据: 无 ) +│ │ │ ├── Flask实现HTTP请求与响应 --> ( 难度等级: [0.3159, 0.3164) || 挂载数据: 无 ) +│ │ │ ├── Flask cookie与session --> ( 难度等级: [0.3164, 0.3168) || 挂载数据: 无 ) +│ │ │ ├── Flask模板 --> ( 难度等级: [0.3168, 0.3173) || 挂载数据: 无 ) +│ │ │ ├── Flask提交表单 --> ( 难度等级: [0.3173, 0.3177) || 挂载数据: 无 ) +│ │ │ ├── Flask数据库操作 --> ( 难度等级: [0.3177, 0.3182) || 挂载数据: 无 ) +│ │ │ ├── Bootstrap-Flask --> ( 难度等级: [0.3182, 0.3186) || 挂载数据: 无 ) +│ │ │ ├── Flask开发REST Web服务 --> ( 难度等级: [0.3186, 0.3191) || 挂载数据: 无 ) +│ │ │ ├── 部署日志与安全 --> ( 难度等级: [0.3191, 0.3195) || 挂载数据: 无 ) +│ │ │ └── Flask开发案例 --> ( 难度等级: [0.3195, 0.32) || 挂载数据: 无 ) +│ │ ├── 网站可视化 --> ( 难度等级: [0.32, 0.325) || 挂载数据: qa: 1 ) +│ │ │ └── Echarts --> ( 难度等级: [0.32, 0.325) || 挂载数据: 无 ) +│ │ ├── 网站高并发处理 --> ( 难度等级: [0.325, 0.33) || 挂载数据: 无 ) +│ │ ├── Web客户端和服务器 --> ( 难度等级: [0.33, 0.335) || 挂载数据: 无 ) +│ │ │ ├── Python Web客户端工具 --> ( 难度等级: [0.33, 0.3317) || 挂载数据: 无 ) +│ │ │ │ ├── 统一资源定位符 --> ( 难度等级: [0.33, 0.3303) || 挂载数据: 无 ) +│ │ │ │ ├── urlparse模块 --> ( 难度等级: [0.3303, 0.3307) || 挂载数据: 无 ) +│ │ │ │ ├── urllib模块/包 --> ( 难度等级: [0.3307, 0.331) || 挂载数据: 无 ) +│ │ │ │ ├── 使用urllib2 HTTP验证的示例 --> ( 难度等级: [0.331, 0.3313) || 挂载数据: 无 ) +│ │ │ │ └── 将HTTP验证示例移植到Python 3中 --> ( 难度等级: [0.3313, 0.3317) || 挂载数据: 无 ) +│ │ │ ├── Web客户端 --> ( 难度等级: [0.3317, 0.3333) || 挂载数据: 无 ) +│ │ │ │ ├── 一个简单的Web爬虫/蜘蛛/机器人 --> ( 难度等级: [0.3317, 0.3322) || 挂载数据: 无 ) +│ │ │ │ ├── 解析Web页面 --> ( 难度等级: [0.3322, 0.3328) || 挂载数据: 无 ) +│ │ │ │ └── 可编程的Web浏览 --> ( 难度等级: [0.3328, 0.3333) || 挂载数据: qa: 6 ) +│ │ │ └── Web(HTTP)服务器 --> ( 难度等级: [0.3333, 0.335) || 挂载数据: 无 ) +│ │ ├── Web编程:CGI和WSGI --> ( 难度等级: [0.335, 0.34) || 挂载数据: 无 ) +│ │ │ ├── 帮助Web服务器处理客户端数据 --> ( 难度等级: [0.335, 0.3358) || 挂载数据: 无 ) +│ │ │ │ ├── CGI简介 --> ( 难度等级: [0.335, 0.3352) || 挂载数据: 无 ) +│ │ │ │ ├── CGI应用程序 --> ( 难度等级: [0.3352, 0.3354) || 挂载数据: 无 ) +│ │ │ │ ├── cgi模块 --> ( 难度等级: [0.3354, 0.3356) || 挂载数据: 无 ) +│ │ │ │ └── cgitb模块 --> ( 难度等级: [0.3356, 0.3358) || 挂载数据: 无 ) +│ │ │ ├── 构建CGI应用程序 --> ( 难度等级: [0.3358, 0.3367) || 挂载数据: 无 ) +│ │ │ │ ├── 构建Web服务器 --> ( 难度等级: [0.3358, 0.336) || 挂载数据: 无 ) +│ │ │ │ ├── 建立表单页 --> ( 难度等级: [0.336, 0.3362) || 挂载数据: 无 ) +│ │ │ │ ├── 生成结果页面 --> ( 难度等级: [0.3362, 0.3363) || 挂载数据: qa: 2 ) +│ │ │ │ ├── 生成表单和结果页面 --> ( 难度等级: [0.3363, 0.3365) || 挂载数据: 无 ) +│ │ │ │ └── 全面交互的Web站点 --> ( 难度等级: [0.3365, 0.3367) || 挂载数据: 无 ) +│ │ │ ├── 在CGI中使用Unicode --> ( 难度等级: [0.3367, 0.3375) || 挂载数据: 无 ) +│ │ │ ├── 高级CGI --> ( 难度等级: [0.3375, 0.3383) || 挂载数据: 无 ) +│ │ │ │ ├── mulitipart表单提交和文件上传 --> ( 难度等级: [0.3375, 0.3379) || 挂载数据: 无 ) +│ │ │ │ └── 多值字段 --> ( 难度等级: [0.3379, 0.3383) || 挂载数据: 无 ) +│ │ │ ├── WSGI简介 --> ( 难度等级: [0.3383, 0.3392) || 挂载数据: 无 ) +│ │ │ │ ├── 动机(替代CGI) --> ( 难度等级: [0.3383, 0.3384) || 挂载数据: 无 ) +│ │ │ │ ├── 服务器集成 --> ( 难度等级: [0.3384, 0.3385) || 挂载数据: 无 ) +│ │ │ │ ├── 外部进程 --> ( 难度等级: [0.3385, 0.3386) || 挂载数据: 无 ) +│ │ │ │ ├── WSGI简介 --> ( 难度等级: [0.3386, 0.3387) || 挂载数据: 无 ) +│ │ │ │ ├── WSGI服务器 --> ( 难度等级: [0.3387, 0.3388) || 挂载数据: 无 ) +│ │ │ │ ├── 参考服务器 --> ( 难度等级: [0.3388, 0.3389) || 挂载数据: 无 ) +│ │ │ │ ├── WSGI应用示例 --> ( 难度等级: [0.3389, 0.339) || 挂载数据: 无 ) +│ │ │ │ ├── 中间件及封装WSGI应用 --> ( 难度等级: [0.339, 0.3391) || 挂载数据: 无 ) +│ │ │ │ └── 在Python 3中使用WSGI --> ( 难度等级: [0.3391, 0.3392) || 挂载数据: 无 ) +│ │ │ └── 现实世界中的Web开发 --> ( 难度等级: [0.3392, 0.34) || 挂载数据: 无 ) +│ │ ├── 云计算:Google App Engine --> ( 难度等级: [0.34, 0.345) || 挂载数据: 无 ) +│ │ │ ├── 云计算 --> ( 难度等级: [0.34, 0.3403) || 挂载数据: 无 ) +│ │ │ │ ├── 云计算服务的层次 --> ( 难度等级: [0.34, 0.3402) || 挂载数据: qa: 10 ) +│ │ │ │ └── App Engine --> ( 难度等级: [0.3402, 0.3403) || 挂载数据: 无 ) +│ │ │ ├── 沙盒和App Engine SDK --> ( 难度等级: [0.3403, 0.3406) || 挂载数据: 无 ) +│ │ │ ├── 选择一个App Engine框架 --> ( 难度等级: [0.3406, 0.3409) || 挂载数据: 无 ) +│ │ │ ├── Python 2.7支持 --> ( 难度等级: [0.3409, 0.3412) || 挂载数据: 无 ) +│ │ │ │ ├── 一般差异 --> ( 难度等级: [0.3409, 0.3411) || 挂载数据: 无 ) +│ │ │ │ └── 代码中的差异 --> ( 难度等级: [0.3411, 0.3412) || 挂载数据: 无 ) +│ │ │ ├── 将“Hello World”改成一个简单的博客 --> ( 难度等级: [0.3412, 0.3416) || 挂载数据: 无 ) +│ │ │ │ ├── 快速发现改动:30秒内将纯文本转成HTML --> ( 难度等级: [0.3412, 0.3413) || 挂载数据: 无 ) +│ │ │ │ ├── 添加表单 --> ( 难度等级: [0.3413, 0.3414) || 挂载数据: 无 ) +│ │ │ │ ├── 添加Datastore服务 --> ( 难度等级: [0.3414, 0.3414) || 挂载数据: 无 ) +│ │ │ │ ├── 迭代改进 --> ( 难度等级: [0.3414, 0.3415) || 挂载数据: 无 ) +│ │ │ │ └── 开发/SDK控制台 --> ( 难度等级: [0.3415, 0.3416) || 挂载数据: qa: 2 ) +│ │ │ ├── 添加Memcache服务 --> ( 难度等级: [0.3416, 0.3419) || 挂载数据: 无 ) +│ │ │ ├── 添加用户服务 --> ( 难度等级: [0.3419, 0.3422) || 挂载数据: 无 ) +│ │ │ │ ├── Google账号验证 --> ( 难度等级: [0.3419, 0.342) || 挂载数据: 无 ) +│ │ │ │ └── 联合验证 --> ( 难度等级: [0.342, 0.3422) || 挂载数据: 无 ) +│ │ │ ├── 远程API shell --> ( 难度等级: [0.3422, 0.3425) || 挂载数据: 无 ) +│ │ │ ├── 问与答(Python实现) --> ( 难度等级: [0.3425, 0.3428) || 挂载数据: 无 ) +│ │ │ ├── 使用XMPP发送即时消息 --> ( 难度等级: [0.3428, 0.3431) || 挂载数据: 无 ) +│ │ │ ├── 处理图片 --> ( 难度等级: [0.3431, 0.3434) || 挂载数据: qa: 9 ) +│ │ │ ├── 任务队列(非定期任务) --> ( 难度等级: [0.3434, 0.3438) || 挂载数据: 无 ) +│ │ │ │ ├── 配置app.yaml --> ( 难度等级: [0.3434, 0.3435) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 其他任务创建选项 --> ( 难度等级: [0.3435, 0.3436) || 挂载数据: 无 ) +│ │ │ │ ├── 将发送电子邮件作为任务 --> ( 难度等级: [0.3436, 0.3437) || 挂载数据: 无 ) +│ │ │ │ └── deferred包 --> ( 难度等级: [0.3437, 0.3438) || 挂载数据: 无 ) +│ │ │ ├── 使用Appstats进行分析 --> ( 难度等级: [0.3438, 0.3441) || 挂载数据: 无 ) +│ │ │ │ ├── 在app.yaml中添加标准处理程序 --> ( 难度等级: [0.3438, 0.3439) || 挂载数据: 无 ) +│ │ │ │ ├── 添加自定义Admin Console页面 --> ( 难度等级: [0.3439, 0.344) || 挂载数据: 无 ) +│ │ │ │ └── 作为内置界面启用界面 --> ( 难度等级: [0.344, 0.3441) || 挂载数据: 无 ) +│ │ │ ├── URLfetch服务 --> ( 难度等级: [0.3441, 0.3444) || 挂载数据: 无 ) +│ │ │ ├── 问与答(无Python实现) --> ( 难度等级: [0.3444, 0.3447) || 挂载数据: 无 ) +│ │ │ │ ├── Cron服务(计划任务作业) --> ( 难度等级: [0.3444, 0.3445) || 挂载数据: 无 ) +│ │ │ │ ├── 预热请求 --> ( 难度等级: [0.3445, 0.3446) || 挂载数据: 无 ) +│ │ │ │ └── DoS保护 --> ( 难度等级: [0.3446, 0.3447) || 挂载数据: 无 ) +│ │ │ └── 厂商锁定 --> ( 难度等级: [0.3447, 0.345) || 挂载数据: 无 ) +│ │ └── Web服务 --> ( 难度等级: [0.345, 0.35) || 挂载数据: 无 ) +│ │ ├── Yahoo!金融股票报价服务器 --> ( 难度等级: [0.345, 0.3475) || 挂载数据: 无 ) +│ │ └── Twitter微博 --> ( 难度等级: [0.3475, 0.35) || 挂载数据: qa: 1 ) +│ │ ├── 社交网络 --> ( 难度等级: [0.3475, 0.3483) || 挂载数据: 无 ) +│ │ ├── 稍微长一点的API组合应用示例 --> ( 难度等级: [0.3483, 0.3492) || 挂载数据: qa: 1 ) +│ │ └── 额外在线资源 --> ( 难度等级: [0.3492, 0.35) || 挂载数据: 无 ) +│ ├── 网络爬虫 --> ( 难度等级: [0.35, 0.4) || 挂载数据: qa: 1 ) +│ │ ├── 基础概念 --> ( 难度等级: [0.35, 0.3518) || 挂载数据: 无 ) +│ │ │ ├── 什么是网络爬虫 --> ( 难度等级: [0.35, 0.3504) || 挂载数据: 无 ) +│ │ │ ├── HTML与DOM树分析 --> ( 难度等级: [0.3504, 0.3509) || 挂载数据: 无 ) +│ │ │ ├── 常用网络爬虫工具 --> ( 难度等级: [0.3509, 0.3513) || 挂载数据: 无 ) +│ │ │ └── 相关法律及注意事项 --> ( 难度等级: [0.3513, 0.3518) || 挂载数据: 无 ) +│ │ ├── urllib --> ( 难度等级: [0.3518, 0.3536) || 挂载数据: 无 ) +│ │ │ ├── 处理异常 --> ( 难度等级: [0.3518, 0.3524) || 挂载数据: 无 ) +│ │ │ ├── 解析链接 --> ( 难度等级: [0.3524, 0.353) || 挂载数据: 无 ) +│ │ │ └── 分析Robots协议 --> ( 难度等级: [0.353, 0.3536) || 挂载数据: 无 ) +│ │ ├── 正则表达式 --> ( 难度等级: [0.3536, 0.3554) || 挂载数据: 无 ) +│ │ │ ├── RE(Regular Expression ) --> ( 难度等级: [0.3536, 0.3538) || 挂载数据: qa: 1 ) +│ │ │ ├── 基础语法 --> ( 难度等级: [0.3538, 0.3541) || 挂载数据: 无 ) +│ │ │ ├── 标签匹配常用规则 --> ( 难度等级: [0.3541, 0.3543) || 挂载数据: 无 ) +│ │ │ ├── 简介/动机 --> ( 难度等级: [0.3543, 0.3546) || 挂载数据: 无 ) +│ │ │ ├── 特殊符号和字符 --> ( 难度等级: [0.3546, 0.3548) || 挂载数据: 无 ) +│ │ │ │ ├── 使用择一匹配符号匹配多个正则表达式模式 --> ( 难度等级: [0.3546, 0.3546) || 挂载数据: qa: 7 ) +│ │ │ │ ├── 匹配任意单个字符 --> ( 难度等级: [0.3546, 0.3546) || 挂载数据: qa: 6 ) +│ │ │ │ ├── 从字符串起始或者结尾或者单词边界匹配 --> ( 难度等级: [0.3546, 0.3547) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 创建字符集 --> ( 难度等级: [0.3547, 0.3547) || 挂载数据: 无 ) +│ │ │ │ ├── 限定范围和否定 --> ( 难度等级: [0.3547, 0.3547) || 挂载数据: 无 ) +│ │ │ │ ├── 使用闭包操作符实现存在性和频数匹配 --> ( 难度等级: [0.3547, 0.3548) || 挂载数据: 无 ) +│ │ │ │ ├── 表示字符集的特殊字符 --> ( 难度等级: [0.3548, 0.3548) || 挂载数据: 无 ) +│ │ │ │ ├── 使用圆括号指定分组 --> ( 难度等级: [0.3548, 0.3548) || 挂载数据: 无 ) +│ │ │ │ └── 扩展表示法 --> ( 难度等级: [0.3548, 0.3548) || 挂载数据: 无 ) +│ │ │ ├── 一些正则表达式示例 --> ( 难度等级: [0.3548, 0.3551) || 挂载数据: qa: 6 ) +│ │ │ └── 更长的正则表达式示例 --> ( 难度等级: [0.3551, 0.3554) || 挂载数据: 无 ) +│ │ ├── Beautiful Soup --> ( 难度等级: [0.3554, 0.3571) || 挂载数据: 无 ) +│ │ │ ├── Beautiful Soup简介 --> ( 难度等级: [0.3554, 0.3557) || 挂载数据: 无 ) +│ │ │ ├── 安装配置 --> ( 难度等级: [0.3557, 0.3561) || 挂载数据: 无 ) +│ │ │ ├── Beautiful Soup对象 --> ( 难度等级: [0.3561, 0.3564) || 挂载数据: qa: 10 ) +│ │ │ ├── 元素定位 --> ( 难度等级: [0.3564, 0.3568) || 挂载数据: qa: 1 ) +│ │ │ └── 文档树遍历与搜索 --> ( 难度等级: [0.3568, 0.3571) || 挂载数据: 无 ) +│ │ ├── lxml --> ( 难度等级: [0.3571, 0.3589) || 挂载数据: 无 ) +│ │ │ ├── 安装配置 --> ( 难度等级: [0.3571, 0.3574) || 挂载数据: 无 ) +│ │ │ ├── lxml.etree --> ( 难度等级: [0.3574, 0.3577) || 挂载数据: qa: 1 ) +│ │ │ ├── XPath选择器 --> ( 难度等级: [0.3577, 0.358) || 挂载数据: 无 ) +│ │ │ ├── find/findall --> ( 难度等级: [0.358, 0.3583) || 挂载数据: qa: 3 ) +│ │ │ ├── CSS选择器 --> ( 难度等级: [0.3583, 0.3586) || 挂载数据: 无 ) +│ │ │ └── 解析HTML --> ( 难度等级: [0.3586, 0.3589) || 挂载数据: 无 ) +│ │ ├── requests --> ( 难度等级: [0.3589, 0.3607) || 挂载数据: 无 ) +│ │ │ ├── 安装配置 --> ( 难度等级: [0.3589, 0.3591) || 挂载数据: 无 ) +│ │ │ ├── 发送请求与HTTP请求类型 --> ( 难度等级: [0.3591, 0.3593) || 挂载数据: 无 ) +│ │ │ ├── 传递URL参数 --> ( 难度等级: [0.3593, 0.3594) || 挂载数据: qa: 2 ) +│ │ │ ├── 响应内容 --> ( 难度等级: [0.3594, 0.3596) || 挂载数据: 无 ) +│ │ │ ├── 定制请求头 --> ( 难度等级: [0.3596, 0.3597) || 挂载数据: 无 ) +│ │ │ ├── 响应状态码 --> ( 难度等级: [0.3597, 0.3599) || 挂载数据: 无 ) +│ │ │ ├── Cookie --> ( 难度等级: [0.3599, 0.3601) || 挂载数据: qa: 4 ) +│ │ │ ├── POST请求 --> ( 难度等级: [0.3601, 0.3602) || 挂载数据: qa: 10 ) +│ │ │ ├── 身份认证 --> ( 难度等级: [0.3602, 0.3604) || 挂载数据: 无 ) +│ │ │ ├── 基本用法 --> ( 难度等级: [0.3604, 0.3606) || 挂载数据: 无 ) +│ │ │ └── 高级用法 --> ( 难度等级: [0.3606, 0.3607) || 挂载数据: 无 ) +│ │ ├── Selenium --> ( 难度等级: [0.3607, 0.3625) || 挂载数据: qa: 2 ) +│ │ │ ├── Selenium简介 --> ( 难度等级: [0.3607, 0.3609) || 挂载数据: qa: 10 ) +│ │ │ ├── 安装配置 --> ( 难度等级: [0.3609, 0.3612) || 挂载数据: 无 ) +│ │ │ ├── 单元素定位(find_element_id/name/xpath) --> ( 难度等级: [0.3612, 0.3614) || 挂载数据: qa: 1 ) +│ │ │ ├── 多元素定位(find_elements_id/name/xpath) --> ( 难度等级: [0.3614, 0.3616) || 挂载数据: qa: 5 ) +│ │ │ ├── 常用方法和属性 --> ( 难度等级: [0.3616, 0.3618) || 挂载数据: 无 ) +│ │ │ │ ├── 可管理属性创建 --> ( 难度等级: [0.3616, 0.3617) || 挂载数据: qa: 7 ) +│ │ │ │ ├── 延迟计算属性 --> ( 难度等级: [0.3617, 0.3617) || 挂载数据: 无 ) +│ │ │ │ ├── 属性的代理访问 --> ( 难度等级: [0.3617, 0.3617) || 挂载数据: qa: 3 ) +│ │ │ │ ├── 创建用于计算的属性 --> ( 难度等级: [0.3617, 0.3618) || 挂载数据: qa: 1 ) +│ │ │ │ └── 为属性添加安全保护机制 --> ( 难度等级: [0.3618, 0.3618) || 挂载数据: 无 ) +│ │ │ ├── 键盘和鼠标操作 --> ( 难度等级: [0.3618, 0.3621) || 挂载数据: 无 ) +│ │ │ ├── WebDriver API --> ( 难度等级: [0.3621, 0.3623) || 挂载数据: qa: 10 ) +│ │ │ └── 表单交互 --> ( 难度等级: [0.3623, 0.3625) || 挂载数据: 无 ) +│ │ ├── Scrapy框架 --> ( 难度等级: [0.3625, 0.3643) || 挂载数据: 无 ) +│ │ │ ├── Scrapy简介 --> ( 难度等级: [0.3625, 0.3626) || 挂载数据: 无 ) +│ │ │ ├── 安装配置 --> ( 难度等级: [0.3626, 0.3627) || 挂载数据: 无 ) +│ │ │ ├── Scrapy框架组成 --> ( 难度等级: [0.3627, 0.3628) || 挂载数据: qa: 5 ) +│ │ │ ├── Item Pipeline --> ( 难度等级: [0.3628, 0.3629) || 挂载数据: qa: 1 ) +│ │ │ ├── Downloader --> ( 难度等级: [0.3629, 0.3629) || 挂载数据: 无 ) +│ │ │ ├── Spiders --> ( 难度等级: [0.3629, 0.363) || 挂载数据: 无 ) +│ │ │ ├── Scheduler --> ( 难度等级: [0.363, 0.3631) || 挂载数据: 无 ) +│ │ │ ├── Scrapy框架介绍 --> ( 难度等级: [0.3631, 0.3632) || 挂载数据: 无 ) +│ │ │ ├── Scrapy入门 --> ( 难度等级: [0.3632, 0.3633) || 挂载数据: qa: 10 ) +│ │ │ ├── Selector的用法 --> ( 难度等级: [0.3633, 0.3634) || 挂载数据: qa: 1 ) +│ │ │ ├── Spider的用法 --> ( 难度等级: [0.3634, 0.3635) || 挂载数据: 无 ) +│ │ │ ├── Downloader Middleware的用法 --> ( 难度等级: [0.3635, 0.3636) || 挂载数据: 无 ) +│ │ │ ├── Spider Middleware的用法 --> ( 难度等级: [0.3636, 0.3637) || 挂载数据: 无 ) +│ │ │ ├── Item Pipeline的用法 --> ( 难度等级: [0.3637, 0.3637) || 挂载数据: 无 ) +│ │ │ ├── Scrapy对接Selenium --> ( 难度等级: [0.3637, 0.3638) || 挂载数据: qa: 2 ) +│ │ │ ├── Scrapy对接Splash --> ( 难度等级: [0.3638, 0.3639) || 挂载数据: 无 ) +│ │ │ ├── Scrapy通用爬虫 --> ( 难度等级: [0.3639, 0.364) || 挂载数据: qa: 6 ) +│ │ │ ├── Scrapyrt的使用 --> ( 难度等级: [0.364, 0.3641) || 挂载数据: 无 ) +│ │ │ ├── Scrapy对接Docker --> ( 难度等级: [0.3641, 0.3642) || 挂载数据: 无 ) +│ │ │ └── Scrapy爬取新浪微博 --> ( 难度等级: [0.3642, 0.3643) || 挂载数据: qa: 4 ) +│ │ ├── 数据存储 --> ( 难度等级: [0.3643, 0.3661) || 挂载数据: 无 ) +│ │ │ ├── 文件存储 --> ( 难度等级: [0.3643, 0.3647) || 挂载数据: 无 ) +│ │ │ │ ├── TXT文本存储 --> ( 难度等级: [0.3643, 0.3644) || 挂载数据: qa: 10 ) +│ │ │ │ ├── JSON文件存储 --> ( 难度等级: [0.3644, 0.3646) || 挂载数据: qa: 2 ) +│ │ │ │ └── CSV文件存储 --> ( 难度等级: [0.3646, 0.3647) || 挂载数据: qa: 4 ) +│ │ │ ├── 数据库存储 --> ( 难度等级: [0.3647, 0.3652) || 挂载数据: qa: 1 ) +│ │ │ ├── 关系型数据库存储 --> ( 难度等级: [0.3652, 0.3656) || 挂载数据: 无 ) +│ │ │ │ └── MySQL的存储 --> ( 难度等级: [0.3652, 0.3656) || 挂载数据: 无 ) +│ │ │ └── 非关系型数据库存储 --> ( 难度等级: [0.3656, 0.3661) || 挂载数据: 无 ) +│ │ │ ├── MongoDB存储 --> ( 难度等级: [0.3656, 0.3658) || 挂载数据: 无 ) +│ │ │ └── Redis存储 --> ( 难度等级: [0.3658, 0.3661) || 挂载数据: 无 ) +│ │ ├── 渲染动态网页 --> ( 难度等级: [0.3661, 0.3679) || 挂载数据: 无 ) +│ │ │ └── WebKit/Selenium/headless/PhantomJS --> ( 难度等级: [0.3661, 0.3679) || 挂载数据: 无 ) +│ │ ├── 表单交互处理 --> ( 难度等级: [0.3679, 0.3696) || 挂载数据: 无 ) +│ │ ├── 超时异常处理 --> ( 难度等级: [0.3696, 0.3714) || 挂载数据: 无 ) +│ │ │ └── timeout --> ( 难度等级: [0.3696, 0.3714) || 挂载数据: 无 ) +│ │ ├── 验证码处理 --> ( 难度等级: [0.3714, 0.3732) || 挂载数据: 无 ) +│ │ │ └── 自动输入/OCR字符识别 --> ( 难度等级: [0.3714, 0.3732) || 挂载数据: 无 ) +│ │ ├── 高并发处理 --> ( 难度等级: [0.3732, 0.375) || 挂载数据: qa: 1 ) +│ │ ├── 多线程爬虫 --> ( 难度等级: [0.375, 0.3768) || 挂载数据: 无 ) +│ │ ├── 开发环境配置 --> ( 难度等级: [0.3768, 0.3786) || 挂载数据: 无 ) +│ │ │ ├── Python 3的安装 --> ( 难度等级: [0.3768, 0.377) || 挂载数据: 无 ) +│ │ │ │ ├── Windows下的安装 --> ( 难度等级: [0.3768, 0.3769) || 挂载数据: 无 ) +│ │ │ │ ├── Linux下的安装 --> ( 难度等级: [0.3769, 0.3769) || 挂载数据: qa: 1 ) +│ │ │ │ └── Mac下的安装 --> ( 难度等级: [0.3769, 0.377) || 挂载数据: qa: 1 ) +│ │ │ ├── 请求库的安装 --> ( 难度等级: [0.377, 0.3772) || 挂载数据: qa: 1 ) +│ │ │ │ ├── requests的安装 --> ( 难度等级: [0.377, 0.377) || 挂载数据: qa: 3 ) +│ │ │ │ ├── Selenium的安装 --> ( 难度等级: [0.377, 0.3771) || 挂载数据: 无 ) +│ │ │ │ ├── ChromeDriver的安装 --> ( 难度等级: [0.3771, 0.3771) || 挂载数据: qa: 2 ) +│ │ │ │ ├── GeckoDriver的安装 --> ( 难度等级: [0.3771, 0.3771) || 挂载数据: 无 ) +│ │ │ │ ├── PhantomJS的安装 --> ( 难度等级: [0.3771, 0.3771) || 挂载数据: qa: 1 ) +│ │ │ │ └── aiohttp的安装 --> ( 难度等级: [0.3771, 0.3772) || 挂载数据: qa: 1 ) +│ │ │ ├── 解析库的安装 --> ( 难度等级: [0.3772, 0.3774) || 挂载数据: 无 ) +│ │ │ │ ├── lxml的安装 --> ( 难度等级: [0.3772, 0.3772) || 挂载数据: 无 ) +│ │ │ │ ├── Beautiful Soup的安装 --> ( 难度等级: [0.3772, 0.3773) || 挂载数据: 无 ) +│ │ │ │ ├── pyquery的安装 --> ( 难度等级: [0.3773, 0.3773) || 挂载数据: 无 ) +│ │ │ │ └── tesserocr的安装 --> ( 难度等级: [0.3773, 0.3774) || 挂载数据: qa: 2 ) +│ │ │ ├── 数据库的安装 --> ( 难度等级: [0.3774, 0.3776) || 挂载数据: 无 ) +│ │ │ │ ├── MySQL的安装 --> ( 难度等级: [0.3774, 0.3774) || 挂载数据: 无 ) +│ │ │ │ ├── MongoDB的安装 --> ( 难度等级: [0.3774, 0.3775) || 挂载数据: 无 ) +│ │ │ │ └── Redis的安装 --> ( 难度等级: [0.3775, 0.3776) || 挂载数据: 无 ) +│ │ │ ├── 存储库的安装 --> ( 难度等级: [0.3776, 0.3778) || 挂载数据: 无 ) +│ │ │ │ ├── PyMySQL的安装 --> ( 难度等级: [0.3776, 0.3776) || 挂载数据: 无 ) +│ │ │ │ ├── PyMongo的安装 --> ( 难度等级: [0.3776, 0.3777) || 挂载数据: 无 ) +│ │ │ │ ├── redis-py的安装 --> ( 难度等级: [0.3777, 0.3777) || 挂载数据: qa: 2 ) +│ │ │ │ └── RedisDump的安装 --> ( 难度等级: [0.3777, 0.3778) || 挂载数据: 无 ) +│ │ │ ├── Web库的安装 --> ( 难度等级: [0.3778, 0.378) || 挂载数据: 无 ) +│ │ │ │ ├── Flask的安装 --> ( 难度等级: [0.3778, 0.3779) || 挂载数据: 无 ) +│ │ │ │ └── Tornado的安装 --> ( 难度等级: [0.3779, 0.378) || 挂载数据: 无 ) +│ │ │ ├── App爬取相关库的安装 --> ( 难度等级: [0.378, 0.3782) || 挂载数据: 无 ) +│ │ │ │ ├── Charles的安装 --> ( 难度等级: [0.378, 0.378) || 挂载数据: 无 ) +│ │ │ │ ├── mitmproxy的安装 --> ( 难度等级: [0.378, 0.3781) || 挂载数据: 无 ) +│ │ │ │ └── Appium的安装 --> ( 难度等级: [0.3781, 0.3782) || 挂载数据: qa: 1 ) +│ │ │ ├── 爬虫框架的安装 --> ( 难度等级: [0.3782, 0.3784) || 挂载数据: 无 ) +│ │ │ │ ├── pyspider的安装 --> ( 难度等级: [0.3782, 0.3782) || 挂载数据: 无 ) +│ │ │ │ ├── Scrapy的安装 --> ( 难度等级: [0.3782, 0.3783) || 挂载数据: 无 ) +│ │ │ │ ├── Scrapy-Splash的安装 --> ( 难度等级: [0.3783, 0.3783) || 挂载数据: 无 ) +│ │ │ │ └── Scrapy-Redis的安装 --> ( 难度等级: [0.3783, 0.3784) || 挂载数据: 无 ) +│ │ │ └── 部署相关库的安装 --> ( 难度等级: [0.3784, 0.3786) || 挂载数据: 无 ) +│ │ │ ├── Docker的安装 --> ( 难度等级: [0.3784, 0.3784) || 挂载数据: 无 ) +│ │ │ ├── Scrapyd的安装 --> ( 难度等级: [0.3784, 0.3784) || 挂载数据: 无 ) +│ │ │ ├── Scrapyd-Client的安装 --> ( 难度等级: [0.3784, 0.3785) || 挂载数据: 无 ) +│ │ │ ├── Scrapyd API的安装 --> ( 难度等级: [0.3785, 0.3785) || 挂载数据: 无 ) +│ │ │ ├── Scrapyrt的安装 --> ( 难度等级: [0.3785, 0.3785) || 挂载数据: 无 ) +│ │ │ └── Gerapy的安装 --> ( 难度等级: [0.3785, 0.3786) || 挂载数据: 无 ) +│ │ ├── 爬虫基础 --> ( 难度等级: [0.3786, 0.3804) || 挂载数据: 无 ) +│ │ │ ├── HTTP基本原理 --> ( 难度等级: [0.3786, 0.3789) || 挂载数据: 无 ) +│ │ │ │ ├── URI和URL --> ( 难度等级: [0.3786, 0.3786) || 挂载数据: qa: 3 ) +│ │ │ │ ├── 超文本 --> ( 难度等级: [0.3786, 0.3787) || 挂载数据: 无 ) +│ │ │ │ ├── HTTP和HTTPS --> ( 难度等级: [0.3787, 0.3787) || 挂载数据: 无 ) +│ │ │ │ ├── HTTP请求过程 --> ( 难度等级: [0.3787, 0.3788) || 挂载数据: qa: 6 ) +│ │ │ │ ├── 请求 --> ( 难度等级: [0.3788, 0.3789) || 挂载数据: 无 ) +│ │ │ │ └── 响应 --> ( 难度等级: [0.3789, 0.3789) || 挂载数据: 无 ) +│ │ │ ├── 网页基础 --> ( 难度等级: [0.3789, 0.3793) || 挂载数据: 无 ) +│ │ │ │ ├── 网页的组成 --> ( 难度等级: [0.3789, 0.379) || 挂载数据: qa: 10 ) +│ │ │ │ ├── 网页的结构 --> ( 难度等级: [0.379, 0.3791) || 挂载数据: 无 ) +│ │ │ │ ├── 节点树及节点间的关系 --> ( 难度等级: [0.3791, 0.3792) || 挂载数据: 无 ) +│ │ │ │ └── 选择器 --> ( 难度等级: [0.3792, 0.3793) || 挂载数据: 无 ) +│ │ │ ├── 爬虫的基本原理 --> ( 难度等级: [0.3793, 0.3796) || 挂载数据: 无 ) +│ │ │ │ ├── 爬虫概述 --> ( 难度等级: [0.3793, 0.3794) || 挂载数据: qa: 10 ) +│ │ │ │ ├── 能抓怎样的数据 --> ( 难度等级: [0.3794, 0.3795) || 挂载数据: qa: 4 ) +│ │ │ │ └── JavaScript渲染页面 --> ( 难度等级: [0.3795, 0.3796) || 挂载数据: qa: 1 ) +│ │ │ ├── 会话和Cookies --> ( 难度等级: [0.3796, 0.38) || 挂载数据: qa: 2 ) +│ │ │ │ ├── 静态网页和动态网页 --> ( 难度等级: [0.3796, 0.3798) || 挂载数据: qa: 2 ) +│ │ │ │ ├── 无状态HTTP --> ( 难度等级: [0.3798, 0.3799) || 挂载数据: 无 ) +│ │ │ │ └── 常见误区 --> ( 难度等级: [0.3799, 0.38) || 挂载数据: 无 ) +│ │ │ └── 代理的基本原理 --> ( 难度等级: [0.38, 0.3804) || 挂载数据: 无 ) +│ │ │ ├── 基本原理 --> ( 难度等级: [0.38, 0.3801) || 挂载数据: 无 ) +│ │ │ ├── 代理的作用 --> ( 难度等级: [0.3801, 0.3801) || 挂载数据: qa: 2 ) +│ │ │ ├── 爬虫代理 --> ( 难度等级: [0.3801, 0.3802) || 挂载数据: qa: 1 ) +│ │ │ ├── 代理分类 --> ( 难度等级: [0.3802, 0.3803) || 挂载数据: 无 ) +│ │ │ └── 常见代理设置 --> ( 难度等级: [0.3803, 0.3804) || 挂载数据: 无 ) +│ │ ├── 基本库的使用 --> ( 难度等级: [0.3804, 0.3821) || 挂载数据: 无 ) +│ │ │ └── 抓取猫眼电影排行 --> ( 难度等级: [0.3804, 0.3821) || 挂载数据: 无 ) +│ │ ├── 解析库的使用 --> ( 难度等级: [0.3821, 0.3839) || 挂载数据: 无 ) +│ │ │ ├── 使用XPath --> ( 难度等级: [0.3821, 0.383) || 挂载数据: qa: 10 ) +│ │ │ └── 使用pyquery --> ( 难度等级: [0.383, 0.3839) || 挂载数据: 无 ) +│ │ ├── Ajax数据爬取 --> ( 难度等级: [0.3839, 0.3857) || 挂载数据: 无 ) +│ │ │ ├── 什么是Ajax --> ( 难度等级: [0.3839, 0.3844) || 挂载数据: qa: 2 ) +│ │ │ ├── Ajax分析方法 --> ( 难度等级: [0.3844, 0.3848) || 挂载数据: 无 ) +│ │ │ ├── Ajax结果提取 --> ( 难度等级: [0.3848, 0.3853) || 挂载数据: 无 ) +│ │ │ └── 分析Ajax爬取今日头条街拍美图 --> ( 难度等级: [0.3853, 0.3857) || 挂载数据: 无 ) +│ │ ├── 动态渲染页面爬取 --> ( 难度等级: [0.3857, 0.3875) || 挂载数据: 无 ) +│ │ │ ├── Splash的使用 --> ( 难度等级: [0.3857, 0.3863) || 挂载数据: 无 ) +│ │ │ ├── Splash负载均衡配置 --> ( 难度等级: [0.3863, 0.3869) || 挂载数据: 无 ) +│ │ │ └── 使用Selenium爬取淘宝商品 --> ( 难度等级: [0.3869, 0.3875) || 挂载数据: qa: 2 ) +│ │ ├── 验证码的识别 --> ( 难度等级: [0.3875, 0.3893) || 挂载数据: 无 ) +│ │ │ ├── 图形验证码的识别 --> ( 难度等级: [0.3875, 0.3879) || 挂载数据: 无 ) +│ │ │ ├── 极验滑动验证码的识别 --> ( 难度等级: [0.3879, 0.3884) || 挂载数据: qa: 1 ) +│ │ │ ├── 点触验证码的识别 --> ( 难度等级: [0.3884, 0.3888) || 挂载数据: qa: 3 ) +│ │ │ └── 微博宫格验证码的识别 --> ( 难度等级: [0.3888, 0.3893) || 挂载数据: 无 ) +│ │ ├── 代理的使用 --> ( 难度等级: [0.3893, 0.3911) || 挂载数据: 无 ) +│ │ │ ├── 代理的设置 --> ( 难度等级: [0.3893, 0.3896) || 挂载数据: qa: 2 ) +│ │ │ ├── 代理池的维护 --> ( 难度等级: [0.3896, 0.39) || 挂载数据: 无 ) +│ │ │ ├── 付费代理的使用 --> ( 难度等级: [0.39, 0.3904) || 挂载数据: 无 ) +│ │ │ ├── ADSL拨号代理 --> ( 难度等级: [0.3904, 0.3907) || 挂载数据: 无 ) +│ │ │ └── 使用代理爬取微信公众号文章 --> ( 难度等级: [0.3907, 0.3911) || 挂载数据: 无 ) +│ │ ├── 模拟登录 --> ( 难度等级: [0.3911, 0.3929) || 挂载数据: 无 ) +│ │ │ ├── 模拟登录并爬取GitHub --> ( 难度等级: [0.3911, 0.392) || 挂载数据: qa: 7 ) +│ │ │ └── Cookies池的搭建 --> ( 难度等级: [0.392, 0.3929) || 挂载数据: 无 ) +│ │ ├── App的爬取 --> ( 难度等级: [0.3929, 0.3946) || 挂载数据: 无 ) +│ │ │ ├── Charles的使用 --> ( 难度等级: [0.3929, 0.3932) || 挂载数据: 无 ) +│ │ │ ├── mitmproxy的使用 --> ( 难度等级: [0.3932, 0.3935) || 挂载数据: qa: 1 ) +│ │ │ ├── mitmdump爬取“得到”App电子书 --> ( 难度等级: [0.3935, 0.3938) || 挂载数据: qa: 4 ) +│ │ │ ├── Appium的基本使用 --> ( 难度等级: [0.3938, 0.394) || 挂载数据: qa: 1 ) +│ │ │ ├── Appium爬取微信朋友圈 --> ( 难度等级: [0.394, 0.3943) || 挂载数据: qa: 10 ) +│ │ │ └── Appium+mitmdump爬取京东商品 --> ( 难度等级: [0.3943, 0.3946) || 挂载数据: qa: 1 ) +│ │ ├── pyspider框架的使用 --> ( 难度等级: [0.3946, 0.3964) || 挂载数据: 无 ) +│ │ │ ├── pyspider框架介绍 --> ( 难度等级: [0.3946, 0.3952) || 挂载数据: 无 ) +│ │ │ ├── pyspider的基本使用 --> ( 难度等级: [0.3952, 0.3958) || 挂载数据: 无 ) +│ │ │ └── pyspider用法详解 --> ( 难度等级: [0.3958, 0.3964) || 挂载数据: 无 ) +│ │ ├── 分布式爬虫 --> ( 难度等级: [0.3964, 0.3982) || 挂载数据: 无 ) +│ │ │ ├── 分布式爬虫原理 --> ( 难度等级: [0.3964, 0.3969) || 挂载数据: 无 ) +│ │ │ ├── Scrapy-Redis源码解析 --> ( 难度等级: [0.3969, 0.3973) || 挂载数据: 无 ) +│ │ │ ├── Scrapy分布式实现 --> ( 难度等级: [0.3973, 0.3978) || 挂载数据: 无 ) +│ │ │ └── Bloom Filter的对接 --> ( 难度等级: [0.3978, 0.3982) || 挂载数据: 无 ) +│ │ └── 分布式爬虫的部署 --> ( 难度等级: [0.3982, 0.4) || 挂载数据: 无 ) +│ │ ├── Scrapyd分布式部署 --> ( 难度等级: [0.3982, 0.3986) || 挂载数据: qa: 1 ) +│ │ ├── Scrapyd-Client的使用 --> ( 难度等级: [0.3986, 0.3989) || 挂载数据: qa: 1 ) +│ │ ├── Scrapyd对接Docker --> ( 难度等级: [0.3989, 0.3993) || 挂载数据: 无 ) +│ │ ├── Scrapyd批量部署 --> ( 难度等级: [0.3993, 0.3996) || 挂载数据: qa: 1 ) +│ │ └── Gerapy分布式管理 --> ( 难度等级: [0.3996, 0.4) || 挂载数据: 无 ) +│ ├── 桌面应用开发 --> ( 难度等级: [0.4, 0.45) || 挂载数据: 无 ) +│ │ ├── Tkinter --> ( 难度等级: [0.4, 0.4167) || 挂载数据: qa: 4 ) +│ │ │ ├── Tkinter简介 --> ( 难度等级: [0.4, 0.4028) || 挂载数据: 无 ) +│ │ │ ├── 安装配置 --> ( 难度等级: [0.4028, 0.4056) || 挂载数据: 无 ) +│ │ │ ├── Tkinter模块 --> ( 难度等级: [0.4056, 0.4083) || 挂载数据: qa: 1 ) +│ │ │ ├── Tkinter控件 --> ( 难度等级: [0.4083, 0.4111) || 挂载数据: 无 ) +│ │ │ ├── 标准属性 --> ( 难度等级: [0.4111, 0.4139) || 挂载数据: 无 ) +│ │ │ └── 几何管理 --> ( 难度等级: [0.4139, 0.4167) || 挂载数据: 无 ) +│ │ ├── PyQT --> ( 难度等级: [0.4167, 0.4333) || 挂载数据: 无 ) +│ │ │ ├── PyQT简介 --> ( 难度等级: [0.4167, 0.4185) || 挂载数据: 无 ) +│ │ │ ├── 安装配置 --> ( 难度等级: [0.4185, 0.4204) || 挂载数据: 无 ) +│ │ │ ├── PyQT模块 --> ( 难度等级: [0.4204, 0.4222) || 挂载数据: 无 ) +│ │ │ ├── PyQT布局管理 --> ( 难度等级: [0.4222, 0.4241) || 挂载数据: 无 ) +│ │ │ ├── PyQT菜单和工具栏 --> ( 难度等级: [0.4241, 0.4259) || 挂载数据: 无 ) +│ │ │ ├── 事件和信号 --> ( 难度等级: [0.4259, 0.4278) || 挂载数据: 无 ) +│ │ │ ├── PyQT对话框 --> ( 难度等级: [0.4278, 0.4296) || 挂载数据: 无 ) +│ │ │ ├── PyQT控件 --> ( 难度等级: [0.4296, 0.4315) || 挂载数据: 无 ) +│ │ │ └── PyQT拖拽与绘图 --> ( 难度等级: [0.4315, 0.4333) || 挂载数据: 无 ) +│ │ └── WxPython --> ( 难度等级: [0.4333, 0.45) || 挂载数据: qa: 1 ) +│ │ ├── WxPython简介 --> ( 难度等级: [0.4333, 0.4352) || 挂载数据: 无 ) +│ │ ├── 安装配置 --> ( 难度等级: [0.4352, 0.437) || 挂载数据: 无 ) +│ │ ├── WxPython常用类 --> ( 难度等级: [0.437, 0.4389) || 挂载数据: 无 ) +│ │ ├── WxPython布局管理 --> ( 难度等级: [0.4389, 0.4407) || 挂载数据: 无 ) +│ │ ├── WxPython事件处理 --> ( 难度等级: [0.4407, 0.4426) || 挂载数据: qa: 10 ) +│ │ ├── WxPython对话框 --> ( 难度等级: [0.4426, 0.4444) || 挂载数据: 无 ) +│ │ ├── WxPython组件 --> ( 难度等级: [0.4444, 0.4463) || 挂载数据: qa: 1 ) +│ │ ├── WxPython拖拽处理 --> ( 难度等级: [0.4463, 0.4481) || 挂载数据: 无 ) +│ │ └── WxPython绘图API --> ( 难度等级: [0.4481, 0.45) || 挂载数据: 无 ) +│ └── 其他 --> ( 难度等级: [0.45, 0.5) || 挂载数据: 无 ) +│ ├── Python总览 --> ( 难度等级: [0.45, 0.4528) || 挂载数据: 无 ) +│ │ ├── Python总体架构 --> ( 难度等级: [0.45, 0.4509) || 挂载数据: 无 ) +│ │ ├── Python源码组织 --> ( 难度等级: [0.4509, 0.4519) || 挂载数据: 无 ) +│ │ └── Python对象初探 --> ( 难度等级: [0.4519, 0.4528) || 挂载数据: 无 ) +│ │ ├── Python内的对象 --> ( 难度等级: [0.4519, 0.452) || 挂载数据: 无 ) +│ │ ├── 对象的分类 --> ( 难度等级: [0.452, 0.4521) || 挂载数据: 无 ) +│ │ ├── 对象机制的基石—PyObject --> ( 难度等级: [0.4521, 0.4522) || 挂载数据: 无 ) +│ │ ├── 定长对象和变长对象 --> ( 难度等级: [0.4522, 0.4523) || 挂载数据: 无 ) +│ │ ├── 类型对象 --> ( 难度等级: [0.4523, 0.4524) || 挂载数据: 无 ) +│ │ ├── 类型的类型 --> ( 难度等级: [0.4524, 0.4525) || 挂载数据: 无 ) +│ │ ├── 对象的创建 --> ( 难度等级: [0.4525, 0.4526) || 挂载数据: 无 ) +│ │ ├── 对象的多态性 --> ( 难度等级: [0.4526, 0.4527) || 挂载数据: 无 ) +│ │ └── 引用计数 --> ( 难度等级: [0.4527, 0.4528) || 挂载数据: 无 ) +│ ├── 数字对象 --> ( 难度等级: [0.4528, 0.4556) || 挂载数据: 无 ) +│ │ ├── 整数对象 --> ( 难度等级: [0.4528, 0.4532) || 挂载数据: 无 ) +│ │ │ ├── PyLongObject对象 --> ( 难度等级: [0.4528, 0.4529) || 挂载数据: 无 ) +│ │ │ ├── 小整数对象 --> ( 难度等级: [0.4529, 0.453) || 挂载数据: 无 ) +│ │ │ └── 大整数对象 --> ( 难度等级: [0.453, 0.4532) || 挂载数据: qa: 4 ) +│ │ ├── 数字格式化输出 --> ( 难度等级: [0.4532, 0.4536) || 挂载数据: qa: 5 ) +│ │ ├── 进制转换 --> ( 难度等级: [0.4536, 0.454) || 挂载数据: qa: 3 ) +│ │ ├── 数字运算 --> ( 难度等级: [0.454, 0.4544) || 挂载数据: qa: 10 ) +│ │ │ ├── 四舍五入运算 --> ( 难度等级: [0.454, 0.454) || 挂载数据: 无 ) +│ │ │ ├── 浮点数运算 --> ( 难度等级: [0.454, 0.4541) || 挂载数据: 无 ) +│ │ │ ├── 复数运算 --> ( 难度等级: [0.4541, 0.4542) || 挂载数据: 无 ) +│ │ │ ├── 分数运算 --> ( 难度等级: [0.4542, 0.4542) || 挂载数据: 无 ) +│ │ │ ├── 大型数组运算 --> ( 难度等级: [0.4542, 0.4543) || 挂载数据: qa: 1 ) +│ │ │ └── 矩阵与线性代数运算 --> ( 难度等级: [0.4543, 0.4544) || 挂载数据: 无 ) +│ │ ├── 字节到大整数的打包与解包 --> ( 难度等级: [0.4544, 0.4548) || 挂载数据: 无 ) +│ │ ├── 无穷大与NaN --> ( 难度等级: [0.4548, 0.4552) || 挂载数据: qa: 2 ) +│ │ └── 随机数 --> ( 难度等级: [0.4552, 0.4556) || 挂载数据: 无 ) +│ ├── 字符串 --> ( 难度等级: [0.4556, 0.4583) || 挂载数据: 无 ) +│ │ ├── 字符串对象解析 --> ( 难度等级: [0.4556, 0.4559) || 挂载数据: 无 ) +│ │ │ ├── 字符串对象的intern机制 --> ( 难度等级: [0.4556, 0.4557) || 挂载数据: 无 ) +│ │ │ └── 字符串操作效率 --> ( 难度等级: [0.4557, 0.4559) || 挂载数据: qa: 1 ) +│ │ ├── 字符串操作 --> ( 难度等级: [0.4559, 0.4562) || 挂载数据: 无 ) +│ │ │ ├── 字符串分割 --> ( 难度等级: [0.4559, 0.4559) || 挂载数据: qa: 10 ) +│ │ │ ├── 删除不需要的字符 --> ( 难度等级: [0.4559, 0.456) || 挂载数据: 无 ) +│ │ │ ├── 字符串清理 --> ( 难度等级: [0.456, 0.456) || 挂载数据: 无 ) +│ │ │ ├── 字符串对齐 --> ( 难度等级: [0.456, 0.456) || 挂载数据: 无 ) +│ │ │ ├── 字符串拼接 --> ( 难度等级: [0.456, 0.4561) || 挂载数据: 无 ) +│ │ │ ├── 字符串插入 --> ( 难度等级: [0.4561, 0.4561) || 挂载数据: 无 ) +│ │ │ └── 字符串格式化 --> ( 难度等级: [0.4561, 0.4562) || 挂载数据: qa: 1 ) +│ │ ├── 字符串匹配 --> ( 难度等级: [0.4562, 0.4565) || 挂载数据: 无 ) +│ │ │ ├── 字符串开头或结尾匹配 --> ( 难度等级: [0.4562, 0.4562) || 挂载数据: qa: 4 ) +│ │ │ ├── 用Shell通配符匹配字符串 --> ( 难度等级: [0.4562, 0.4563) || 挂载数据: qa: 1 ) +│ │ │ ├── 最短匹配 --> ( 难度等级: [0.4563, 0.4564) || 挂载数据: 无 ) +│ │ │ └── 多行匹配 --> ( 难度等级: [0.4564, 0.4565) || 挂载数据: qa: 10 ) +│ │ ├── 字符串搜索 --> ( 难度等级: [0.4565, 0.4568) || 挂载数据: 无 ) +│ │ │ ├── 字符串搜索替换 --> ( 难度等级: [0.4565, 0.4566) || 挂载数据: qa: 4 ) +│ │ │ └── 字符串忽略大小写的搜索替换 --> ( 难度等级: [0.4566, 0.4568) || 挂载数据: qa: 1 ) +│ │ ├── 将Unicode文本标准化 --> ( 难度等级: [0.4568, 0.4571) || 挂载数据: 无 ) +│ │ ├── 在正则表达式中使用Unicode字符 --> ( 难度等级: [0.4571, 0.4574) || 挂载数据: 无 ) +│ │ ├── 令牌解析 --> ( 难度等级: [0.4574, 0.4577) || 挂载数据: 无 ) +│ │ ├── 简单的递归下降分析器实现 --> ( 难度等级: [0.4577, 0.458) || 挂载数据: 无 ) +│ │ └── 字节字符串操作 --> ( 难度等级: [0.458, 0.4583) || 挂载数据: 无 ) +│ ├── 数据结构 --> ( 难度等级: [0.4583, 0.4611) || 挂载数据: 无 ) +│ │ ├── 序列 --> ( 难度等级: [0.4583, 0.4587) || 挂载数据: 无 ) +│ │ │ ├── 序列对象解析 --> ( 难度等级: [0.4583, 0.4584) || 挂载数据: 无 ) +│ │ │ ├── 序列解压 --> ( 难度等级: [0.4584, 0.4584) || 挂载数据: qa: 4 ) +│ │ │ ├── 序列去重并保持顺序 --> ( 难度等级: [0.4584, 0.4585) || 挂载数据: qa: 1 ) +│ │ │ ├── 序列元素统计 --> ( 难度等级: [0.4585, 0.4586) || 挂载数据: qa: 1 ) +│ │ │ ├── 过滤序列元素 --> ( 难度等级: [0.4586, 0.4586) || 挂载数据: 无 ) +│ │ │ ├── 序列元素名称映射 --> ( 难度等级: [0.4586, 0.4587) || 挂载数据: 无 ) +│ │ │ └── 转换并计算数据 --> ( 难度等级: [0.4587, 0.4587) || 挂载数据: qa: 1 ) +│ │ ├── 字典 --> ( 难度等级: [0.4587, 0.4591) || 挂载数据: 无 ) +│ │ │ ├── 字典对象解析 --> ( 难度等级: [0.4587, 0.4588) || 挂载数据: 无 ) +│ │ │ ├── 字典映射 --> ( 难度等级: [0.4588, 0.4588) || 挂载数据: 无 ) +│ │ │ ├── 字典排序 --> ( 难度等级: [0.4588, 0.4589) || 挂载数据: qa: 3 ) +│ │ │ ├── 字典运算 --> ( 难度等级: [0.4589, 0.4589) || 挂载数据: 无 ) +│ │ │ ├── 字典查找 --> ( 难度等级: [0.4589, 0.459) || 挂载数据: 无 ) +│ │ │ ├── 通过关键字排序字典 --> ( 难度等级: [0.459, 0.459) || 挂载数据: 无 ) +│ │ │ ├── 字典提取 --> ( 难度等级: [0.459, 0.4591) || 挂载数据: qa: 3 ) +│ │ │ └── 字典合并 --> ( 难度等级: [0.4591, 0.4591) || 挂载数据: qa: 1 ) +│ │ ├── 可迭代对象操作 --> ( 难度等级: [0.4591, 0.4595) || 挂载数据: 无 ) +│ │ │ ├── 可迭代对象解压 --> ( 难度等级: [0.4591, 0.4593) || 挂载数据: 无 ) +│ │ │ ├── 保留最后N个元素 --> ( 难度等级: [0.4593, 0.4594) || 挂载数据: 无 ) +│ │ │ └── 记录分组 --> ( 难度等级: [0.4594, 0.4595) || 挂载数据: 无 ) +│ │ ├── 查找最大或最小的N个元素 --> ( 难度等级: [0.4595, 0.4599) || 挂载数据: qa: 2 ) +│ │ ├── 实现一个优先级队列 --> ( 难度等级: [0.4599, 0.4603) || 挂载数据: 无 ) +│ │ ├── 命名切片 --> ( 难度等级: [0.4603, 0.4607) || 挂载数据: 无 ) +│ │ └── 排序不支持原生比较的对象 --> ( 难度等级: [0.4607, 0.4611) || 挂载数据: qa: 1 ) +│ ├── 迭代器与生成器 --> ( 难度等级: [0.4611, 0.4639) || 挂载数据: 无 ) +│ │ ├── 迭代操作 --> ( 难度等级: [0.4611, 0.4617) || 挂载数据: 无 ) +│ │ │ ├── 手动遍历迭代器 --> ( 难度等级: [0.4611, 0.4612) || 挂载数据: 无 ) +│ │ │ ├── 代理迭代 --> ( 难度等级: [0.4612, 0.4612) || 挂载数据: qa: 2 ) +│ │ │ ├── 实现迭代协议 --> ( 难度等级: [0.4612, 0.4613) || 挂载数据: 无 ) +│ │ │ ├── 反向迭代 --> ( 难度等级: [0.4613, 0.4613) || 挂载数据: qa: 2 ) +│ │ │ ├── 迭代器切片 --> ( 难度等级: [0.4613, 0.4613) || 挂载数据: 无 ) +│ │ │ ├── 跳过可迭代对象的开始部分 --> ( 难度等级: [0.4613, 0.4614) || 挂载数据: qa: 1 ) +│ │ │ ├── 排列组合的迭代 --> ( 难度等级: [0.4614, 0.4614) || 挂载数据: 无 ) +│ │ │ ├── 序列上索引值迭代 --> ( 难度等级: [0.4614, 0.4615) || 挂载数据: 无 ) +│ │ │ ├── 多个序列迭代 --> ( 难度等级: [0.4615, 0.4615) || 挂载数据: 无 ) +│ │ │ ├── 集合元素的迭代 --> ( 难度等级: [0.4615, 0.4616) || 挂载数据: 无 ) +│ │ │ ├── 顺序迭代合并后的排序迭代对象 --> ( 难度等级: [0.4616, 0.4616) || 挂载数据: qa: 1 ) +│ │ │ └── 迭代器代替while无限循环 --> ( 难度等级: [0.4616, 0.4617) || 挂载数据: 无 ) +│ │ ├── 使用生成器创建新的迭代模式 --> ( 难度等级: [0.4617, 0.4622) || 挂载数据: qa: 1 ) +│ │ ├── 带有外部状态的生成器函数 --> ( 难度等级: [0.4622, 0.4628) || 挂载数据: 无 ) +│ │ ├── 创建数据处理管道 --> ( 难度等级: [0.4628, 0.4633) || 挂载数据: 无 ) +│ │ └── 展开嵌套的序列 --> ( 难度等级: [0.4633, 0.4639) || 挂载数据: 无 ) +│ ├── 文件与I/O --> ( 难度等级: [0.4639, 0.4667) || 挂载数据: 无 ) +│ │ ├── 读/写操作 --> ( 难度等级: [0.4639, 0.4643) || 挂载数据: 无 ) +│ │ │ ├── 读/写文本数据 --> ( 难度等级: [0.4639, 0.464) || 挂载数据: qa: 2 ) +│ │ │ ├── 读/写字节数据 --> ( 难度等级: [0.464, 0.4642) || 挂载数据: 无 ) +│ │ │ └── 读/写压缩文件 --> ( 难度等级: [0.4642, 0.4643) || 挂载数据: qa: 10 ) +│ │ ├── 文件操作 --> ( 难度等级: [0.4643, 0.4647) || 挂载数据: 无 ) +│ │ │ ├── 文件的写入 --> ( 难度等级: [0.4643, 0.4643) || 挂载数据: qa: 1 ) +│ │ │ ├── 操作文件路径名 --> ( 难度等级: [0.4643, 0.4643) || 挂载数据: qa: 2 ) +│ │ │ ├── 文件检查 --> ( 难度等级: [0.4643, 0.4644) || 挂载数据: 无 ) +│ │ │ ├── 文件列表获取 --> ( 难度等级: [0.4644, 0.4644) || 挂载数据: qa: 1 ) +│ │ │ ├── 忽略文件名编码 --> ( 难度等级: [0.4644, 0.4644) || 挂载数据: 无 ) +│ │ │ ├── 打印不合法的文件名 --> ( 难度等级: [0.4644, 0.4644) || 挂载数据: 无 ) +│ │ │ ├── 文件编码变更 --> ( 难度等级: [0.4644, 0.4645) || 挂载数据: qa: 2 ) +│ │ │ ├── 在文本文件中写入字节 --> ( 难度等级: [0.4645, 0.4645) || 挂载数据: 无 ) +│ │ │ ├── 文件描述符包装 --> ( 难度等级: [0.4645, 0.4645) || 挂载数据: 无 ) +│ │ │ ├── 创建临时文件和文件夹 --> ( 难度等级: [0.4645, 0.4646) || 挂载数据: 无 ) +│ │ │ ├── 文件迭代 --> ( 难度等级: [0.4646, 0.4646) || 挂载数据: 无 ) +│ │ │ ├── 二进制文件映射 --> ( 难度等级: [0.4646, 0.4646) || 挂载数据: qa: 2 ) +│ │ │ ├── 创建和解压归档文件 --> ( 难度等级: [0.4646, 0.4646) || 挂载数据: 无 ) +│ │ │ ├── 文件查找 --> ( 难度等级: [0.4646, 0.4647) || 挂载数据: 无 ) +│ │ │ └── 配置文件读取 --> ( 难度等级: [0.4647, 0.4647) || 挂载数据: 无 ) +│ │ ├── 使用分隔符或行终止符打印 --> ( 难度等级: [0.4647, 0.4651) || 挂载数据: 无 ) +│ │ ├── 字符串的I/O操作 --> ( 难度等级: [0.4651, 0.4655) || 挂载数据: qa: 5 ) +│ │ ├── 可变缓冲区中二进制数据的读取 --> ( 难度等级: [0.4655, 0.4659) || 挂载数据: 无 ) +│ │ ├── 串行端口的数据通信 --> ( 难度等级: [0.4659, 0.4663) || 挂载数据: 无 ) +│ │ └── 对象序列化 --> ( 难度等级: [0.4663, 0.4667) || 挂载数据: 无 ) +│ ├── 数据编码及处理 --> ( 难度等级: [0.4667, 0.4694) || 挂载数据: 无 ) +│ │ ├── 数据读/写 --> ( 难度等级: [0.4667, 0.4672) || 挂载数据: 无 ) +│ │ │ ├── CSV数据读/写 --> ( 难度等级: [0.4667, 0.4668) || 挂载数据: qa: 2 ) +│ │ │ ├── JSON数据读/写 --> ( 难度等级: [0.4668, 0.4669) || 挂载数据: 无 ) +│ │ │ ├── 二进制数组数据读/写 --> ( 难度等级: [0.4669, 0.4671) || 挂载数据: qa: 1 ) +│ │ │ └── 嵌套和可变长二进制数据读取 --> ( 难度等级: [0.4671, 0.4672) || 挂载数据: 无 ) +│ │ ├── XML数据解析 --> ( 难度等级: [0.4672, 0.4678) || 挂载数据: 无 ) +│ │ │ ├── 简单XML数据解析 --> ( 难度等级: [0.4672, 0.4674) || 挂载数据: qa: 7 ) +│ │ │ ├── 解析XML文档 --> ( 难度等级: [0.4674, 0.4676) || 挂载数据: 无 ) +│ │ │ └── 修改XML --> ( 难度等级: [0.4676, 0.4678) || 挂载数据: qa: 2 ) +│ │ ├── 字典转换为XML --> ( 难度等级: [0.4678, 0.4683) || 挂载数据: 无 ) +│ │ ├── 与关系型数据库的交互 --> ( 难度等级: [0.4683, 0.4689) || 挂载数据: 无 ) +│ │ └── 编码/解码 --> ( 难度等级: [0.4689, 0.4694) || 挂载数据: 无 ) +│ │ ├── 十六进制数编码和解码 --> ( 难度等级: [0.4689, 0.4692) || 挂载数据: qa: 5 ) +│ │ └── 编码/解码Base64数据 --> ( 难度等级: [0.4692, 0.4694) || 挂载数据: qa: 4 ) +│ ├── 函数 --> ( 难度等级: [0.4694, 0.4722) || 挂载数据: 无 ) +│ │ ├── 函数定义 --> ( 难度等级: [0.4694, 0.4697) || 挂载数据: 无 ) +│ │ │ ├── 有默认参数的函数定义 --> ( 难度等级: [0.4694, 0.4696) || 挂载数据: qa: 10 ) +│ │ │ └── 匿名或内联函数定义 --> ( 难度等级: [0.4696, 0.4697) || 挂载数据: 无 ) +│ │ ├── 函数的参数 --> ( 难度等级: [0.4697, 0.47) || 挂载数据: 无 ) +│ │ │ ├── 接收任意数量参数 --> ( 难度等级: [0.4697, 0.4698) || 挂载数据: 无 ) +│ │ │ ├── 接收关键字参数 --> ( 难度等级: [0.4698, 0.4699) || 挂载数据: 无 ) +│ │ │ ├── 为参数增加元信息 --> ( 难度等级: [0.4699, 0.4699) || 挂载数据: qa: 1 ) +│ │ │ └── 减少参数个数 --> ( 难度等级: [0.4699, 0.47) || 挂载数据: 无 ) +│ │ ├── 返回多个值的函数 --> ( 难度等级: [0.47, 0.4703) || 挂载数据: 无 ) +│ │ ├── 类转换为函数 --> ( 难度等级: [0.4703, 0.4706) || 挂载数据: qa: 1 ) +│ │ ├── 回调函数 --> ( 难度等级: [0.4706, 0.4708) || 挂载数据: 无 ) +│ │ │ ├── 有额外状态信息的回调函数 --> ( 难度等级: [0.4706, 0.4707) || 挂载数据: 无 ) +│ │ │ └── 内联回调函数 --> ( 难度等级: [0.4707, 0.4708) || 挂载数据: 无 ) +│ │ ├── 函数的创建和调用 --> ( 难度等级: [0.4708, 0.4711) || 挂载数据: 无 ) +│ │ │ ├── 创建一个函数 --> ( 难度等级: [0.4708, 0.471) || 挂载数据: qa: 9 ) +│ │ │ └── 调用函数 --> ( 难度等级: [0.471, 0.4711) || 挂载数据: 无 ) +│ │ ├── 参数传递 --> ( 难度等级: [0.4711, 0.4714) || 挂载数据: 无 ) +│ │ │ ├── 了解形式参数和实际参数 --> ( 难度等级: [0.4711, 0.4712) || 挂载数据: 无 ) +│ │ │ ├── 位置参数 --> ( 难度等级: [0.4712, 0.4712) || 挂载数据: 无 ) +│ │ │ ├── 关键字参数 --> ( 难度等级: [0.4712, 0.4713) || 挂载数据: 无 ) +│ │ │ ├── 为参数设置默认值 --> ( 难度等级: [0.4713, 0.4713) || 挂载数据: 无 ) +│ │ │ └── 可变参数 --> ( 难度等级: [0.4713, 0.4714) || 挂载数据: 无 ) +│ │ ├── 返回值 --> ( 难度等级: [0.4714, 0.4717) || 挂载数据: 无 ) +│ │ ├── 变量的作用域 --> ( 难度等级: [0.4717, 0.4719) || 挂载数据: qa: 2 ) +│ │ │ ├── 局部变量 --> ( 难度等级: [0.4717, 0.4718) || 挂载数据: 无 ) +│ │ │ └── 全局变量 --> ( 难度等级: [0.4718, 0.4719) || 挂载数据: 无 ) +│ │ └── 匿名函数 --> ( 难度等级: [0.4719, 0.4722) || 挂载数据: 无 ) +│ ├── 元编程 --> ( 难度等级: [0.4722, 0.475) || 挂载数据: 无 ) +│ │ ├── 装饰器 --> ( 难度等级: [0.4722, 0.4724) || 挂载数据: 无 ) +│ │ │ ├── 函数添加装饰器 --> ( 难度等级: [0.4722, 0.4722) || 挂载数据: qa: 1 ) +│ │ │ ├── 装饰器中保留函数元信息 --> ( 难度等级: [0.4722, 0.4723) || 挂载数据: 无 ) +│ │ │ ├── 解除装饰器 --> ( 难度等级: [0.4723, 0.4723) || 挂载数据: qa: 3 ) +│ │ │ ├── 带参数的装饰器 --> ( 难度等级: [0.4723, 0.4723) || 挂载数据: qa: 3 ) +│ │ │ ├── 装饰器自定义属性 --> ( 难度等级: [0.4723, 0.4723) || 挂载数据: 无 ) +│ │ │ ├── 带可选参数的装饰器 --> ( 难度等级: [0.4723, 0.4723) || 挂载数据: 无 ) +│ │ │ ├── 函数的类型检查 --> ( 难度等级: [0.4723, 0.4723) || 挂载数据: 无 ) +│ │ │ ├── 类中定义装饰器 --> ( 难度等级: [0.4723, 0.4724) || 挂载数据: 无 ) +│ │ │ ├── 装饰器定义为类 --> ( 难度等级: [0.4724, 0.4724) || 挂载数据: 无 ) +│ │ │ ├── 类和静态方法的装饰器 --> ( 难度等级: [0.4724, 0.4724) || 挂载数据: 无 ) +│ │ │ ├── 给函数增加参数 --> ( 难度等级: [0.4724, 0.4724) || 挂载数据: qa: 1 ) +│ │ │ └── 扩充类的功能 --> ( 难度等级: [0.4724, 0.4724) || 挂载数据: 无 ) +│ │ ├── 元类 --> ( 难度等级: [0.4724, 0.4726) || 挂载数据: 无 ) +│ │ │ └── 元类定义可选参数 --> ( 难度等级: [0.4724, 0.4726) || 挂载数据: qa: 1 ) +│ │ ├── 类的属性定义顺序 --> ( 难度等级: [0.4726, 0.4729) || 挂载数据: 无 ) +│ │ ├── 强制参数签名 --> ( 难度等级: [0.4729, 0.4731) || 挂载数据: 无 ) +│ │ ├── 强制使用编程规约 --> ( 难度等级: [0.4731, 0.4733) || 挂载数据: 无 ) +│ │ ├── 以编程方式定义类 --> ( 难度等级: [0.4733, 0.4735) || 挂载数据: 无 ) +│ │ ├── 初始化类的成员 --> ( 难度等级: [0.4735, 0.4737) || 挂载数据: 无 ) +│ │ ├── 利用注解实现方法重载 --> ( 难度等级: [0.4737, 0.4739) || 挂载数据: 无 ) +│ │ ├── 避免重复的属性方法 --> ( 难度等级: [0.4739, 0.4741) || 挂载数据: 无 ) +│ │ ├── 定义上下文管理器 --> ( 难度等级: [0.4741, 0.4744) || 挂载数据: 无 ) +│ │ ├── 局部变量域中执行代码 --> ( 难度等级: [0.4744, 0.4746) || 挂载数据: 无 ) +│ │ ├── Python源码解析 --> ( 难度等级: [0.4746, 0.4748) || 挂载数据: 无 ) +│ │ └── Python字节码拆解 --> ( 难度等级: [0.4748, 0.475) || 挂载数据: 无 ) +│ ├── 并发编程 --> ( 难度等级: [0.475, 0.4778) || 挂载数据: 无 ) +│ │ ├── 线程处理 --> ( 难度等级: [0.475, 0.4754) || 挂载数据: 无 ) +│ │ │ ├── 线程的启动与停止 --> ( 难度等级: [0.475, 0.4751) || 挂载数据: qa: 1 ) +│ │ │ ├── 线程判断 --> ( 难度等级: [0.4751, 0.4751) || 挂载数据: qa: 4 ) +│ │ │ ├── 线程间通信 --> ( 难度等级: [0.4751, 0.4752) || 挂载数据: 无 ) +│ │ │ ├── 线程加锁 --> ( 难度等级: [0.4752, 0.4752) || 挂载数据: 无 ) +│ │ │ ├── 防止死锁 --> ( 难度等级: [0.4752, 0.4753) || 挂载数据: 无 ) +│ │ │ ├── 线程状态信息保存 --> ( 难度等级: [0.4753, 0.4753) || 挂载数据: 无 ) +│ │ │ └── 创建线程池 --> ( 难度等级: [0.4753, 0.4754) || 挂载数据: qa: 1 ) +│ │ ├── 并行编程 --> ( 难度等级: [0.4754, 0.4758) || 挂载数据: 无 ) +│ │ ├── Actor任务定义 --> ( 难度等级: [0.4758, 0.4762) || 挂载数据: 无 ) +│ │ ├── 消息发布/订阅模型 --> ( 难度等级: [0.4762, 0.4766) || 挂载数据: 无 ) +│ │ ├── 生成器代替线程 --> ( 难度等级: [0.4766, 0.477) || 挂载数据: 无 ) +│ │ ├── 线程队列轮询 --> ( 难度等级: [0.477, 0.4774) || 挂载数据: 无 ) +│ │ └── 守护进程 --> ( 难度等级: [0.4774, 0.4778) || 挂载数据: 无 ) +│ ├── 脚本编程与系统管理 --> ( 难度等级: [0.4778, 0.4806) || 挂载数据: 无 ) +│ │ ├── 脚本接收 --> ( 难度等级: [0.4778, 0.4781) || 挂载数据: qa: 2 ) +│ │ ├── 终止程序 --> ( 难度等级: [0.4781, 0.4784) || 挂载数据: 无 ) +│ │ ├── 解析命令行选项 --> ( 难度等级: [0.4784, 0.4787) || 挂载数据: 无 ) +│ │ ├── 弹出密码输入提示 --> ( 难度等级: [0.4787, 0.479) || 挂载数据: qa: 3 ) +│ │ ├── 执行外部命令 --> ( 难度等级: [0.479, 0.4793) || 挂载数据: qa: 2 ) +│ │ ├── 添加日志 --> ( 难度等级: [0.4793, 0.4796) || 挂载数据: 无 ) +│ │ │ ├── 脚本增加日志功能 --> ( 难度等级: [0.4793, 0.4795) || 挂载数据: 无 ) +│ │ │ └── 函数库增加日志功能 --> ( 难度等级: [0.4795, 0.4796) || 挂载数据: 无 ) +│ │ ├── 实现计时器 --> ( 难度等级: [0.4796, 0.4799) || 挂载数据: 无 ) +│ │ ├── 内存和CPU监测 --> ( 难度等级: [0.4799, 0.4802) || 挂载数据: 无 ) +│ │ └── 启动Web浏览器 --> ( 难度等级: [0.4802, 0.4806) || 挂载数据: 无 ) +│ ├── Python的内存管理机制 --> ( 难度等级: [0.4806, 0.4833) || 挂载数据: 无 ) +│ │ ├── Python内存架构 --> ( 难度等级: [0.4806, 0.4813) || 挂载数据: 无 ) +│ │ ├── 小块空间的内存池 --> ( 难度等级: [0.4813, 0.4819) || 挂载数据: 无 ) +│ │ │ ├── block --> ( 难度等级: [0.4813, 0.4814) || 挂载数据: 无 ) +│ │ │ ├── pool --> ( 难度等级: [0.4814, 0.4816) || 挂载数据: 无 ) +│ │ │ ├── arena --> ( 难度等级: [0.4816, 0.4818) || 挂载数据: 无 ) +│ │ │ └── 内存池 --> ( 难度等级: [0.4818, 0.4819) || 挂载数据: qa: 1 ) +│ │ ├── 循环引用的垃圾收集 --> ( 难度等级: [0.4819, 0.4826) || 挂载数据: 无 ) +│ │ │ └── 三色标记模型 --> ( 难度等级: [0.4819, 0.4826) || 挂载数据: 无 ) +│ │ └── Python垃圾收集 --> ( 难度等级: [0.4826, 0.4833) || 挂载数据: 无 ) +│ │ ├── 可收集对象链表 --> ( 难度等级: [0.4826, 0.4829) || 挂载数据: 无 ) +│ │ ├── 分代垃圾收集 --> ( 难度等级: [0.4829, 0.4831) || 挂载数据: 无 ) +│ │ └── Python中的标记—清除方法 --> ( 难度等级: [0.4831, 0.4833) || 挂载数据: 无 ) +│ ├── 性能优化与实践 --> ( 难度等级: [0.4833, 0.4861) || 挂载数据: 无 ) +│ │ ├── 优化的规则 --> ( 难度等级: [0.4833, 0.484) || 挂载数据: 无 ) +│ │ │ ├── 先使程序可以正常工作 --> ( 难度等级: [0.4833, 0.4836) || 挂载数据: 无 ) +│ │ │ ├── 从用户的角度进行 --> ( 难度等级: [0.4836, 0.4838) || 挂载数据: 无 ) +│ │ │ └── 保证代码易读 --> ( 难度等级: [0.4838, 0.484) || 挂载数据: 无 ) +│ │ ├── 优化策略 --> ( 难度等级: [0.484, 0.4847) || 挂载数据: 无 ) +│ │ │ ├── 寻找其他原因 --> ( 难度等级: [0.484, 0.4843) || 挂载数据: qa: 7 ) +│ │ │ ├── 度量硬件 --> ( 难度等级: [0.4843, 0.4845) || 挂载数据: 无 ) +│ │ │ └── 编写速度测试代码 --> ( 难度等级: [0.4845, 0.4847) || 挂载数据: 无 ) +│ │ ├── 查找瓶颈 --> ( 难度等级: [0.4847, 0.4854) || 挂载数据: 无 ) +│ │ │ ├── 剖析CPU使用情况 --> ( 难度等级: [0.4847, 0.4851) || 挂载数据: qa: 1 ) +│ │ │ └── 剖析内存使用情况 --> ( 难度等级: [0.4851, 0.4854) || 挂载数据: 无 ) +│ │ └── 降低复杂度 --> ( 难度等级: [0.4854, 0.4861) || 挂载数据: 无 ) +│ │ ├── 测量回路复杂度 --> ( 难度等级: [0.4854, 0.4856) || 挂载数据: 无 ) +│ │ ├── 测量大O记号 --> ( 难度等级: [0.4856, 0.4859) || 挂载数据: 无 ) +│ │ └── 简化 --> ( 难度等级: [0.4859, 0.4861) || 挂载数据: qa: 1 ) +│ ├── 通用应用主题 --> ( 难度等级: [0.4861, 0.4889) || 挂载数据: 无 ) +│ │ ├── 因特网客户端编程 --> ( 难度等级: [0.4861, 0.4866) || 挂载数据: 无 ) +│ │ │ ├── 因特网客户端简介 --> ( 难度等级: [0.4861, 0.4863) || 挂载数据: 无 ) +│ │ │ ├── 文件传输 --> ( 难度等级: [0.4863, 0.4864) || 挂载数据: 无 ) +│ │ │ │ ├── 文件传输因特网协议 --> ( 难度等级: [0.4863, 0.4863) || 挂载数据: 无 ) +│ │ │ │ ├── 文件传输协议 --> ( 难度等级: [0.4863, 0.4863) || 挂载数据: 无 ) +│ │ │ │ ├── ftplib.FTP类的方法 --> ( 难度等级: [0.4863, 0.4863) || 挂载数据: 无 ) +│ │ │ │ ├── 交互式FTP示例 --> ( 难度等级: [0.4863, 0.4864) || 挂载数据: 无 ) +│ │ │ │ ├── 客户端FTP程序示例 --> ( 难度等级: [0.4864, 0.4864) || 挂载数据: 无 ) +│ │ │ │ └── FTP的其他内容 --> ( 难度等级: [0.4864, 0.4864) || 挂载数据: qa: 1 ) +│ │ │ └── 网络新闻 --> ( 难度等级: [0.4864, 0.4866) || 挂载数据: 无 ) +│ │ │ ├── Usenet与新闻组 --> ( 难度等级: [0.4864, 0.4864) || 挂载数据: 无 ) +│ │ │ ├── 网络新闻传输协议 --> ( 难度等级: [0.4864, 0.4865) || 挂载数据: 无 ) +│ │ │ ├── nntplib.NNTP类方法 --> ( 难度等级: [0.4865, 0.4865) || 挂载数据: 无 ) +│ │ │ ├── 交互式NNTP示例 --> ( 难度等级: [0.4865, 0.4865) || 挂载数据: 无 ) +│ │ │ ├── 客户端程序NNTP示例 --> ( 难度等级: [0.4865, 0.4865) || 挂载数据: 无 ) +│ │ │ └── NNTP的其他内容 --> ( 难度等级: [0.4865, 0.4866) || 挂载数据: 无 ) +│ │ ├── 多线程编程 --> ( 难度等级: [0.4866, 0.487) || 挂载数据: 无 ) +│ │ │ ├── thread模块 --> ( 难度等级: [0.4866, 0.4867) || 挂载数据: 无 ) +│ │ │ ├── threading模块 --> ( 难度等级: [0.4867, 0.4868) || 挂载数据: 无 ) +│ │ │ │ ├── Thread类 --> ( 难度等级: [0.4867, 0.4867) || 挂载数据: 无 ) +│ │ │ │ └── threading模块的其他函数 --> ( 难度等级: [0.4867, 0.4868) || 挂载数据: qa: 2 ) +│ │ │ ├── 单线程和多线程执行对比 --> ( 难度等级: [0.4868, 0.4869) || 挂载数据: qa: 1 ) +│ │ │ ├── 多线程实践 --> ( 难度等级: [0.4869, 0.4869) || 挂载数据: qa: 5 ) +│ │ │ │ ├── 图书排名示例 --> ( 难度等级: [0.4869, 0.4869) || 挂载数据: 无 ) +│ │ │ │ ├── 同步原语 --> ( 难度等级: [0.4869, 0.4869) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 锁示例 --> ( 难度等级: [0.4869, 0.4869) || 挂载数据: 无 ) +│ │ │ │ └── 信号量示例 --> ( 难度等级: [0.4869, 0.4869) || 挂载数据: 无 ) +│ │ │ └── 线程的替代方案 --> ( 难度等级: [0.4869, 0.487) || 挂载数据: qa: 1 ) +│ │ │ ├── subprocess模块 --> ( 难度等级: [0.4869, 0.487) || 挂载数据: qa: 1 ) +│ │ │ ├── multiprocessing模块 --> ( 难度等级: [0.487, 0.487) || 挂载数据: 无 ) +│ │ │ └── concurrent.futures模块 --> ( 难度等级: [0.487, 0.487) || 挂载数据: 无 ) +│ │ ├── GUI编程 --> ( 难度等级: [0.487, 0.4875) || 挂载数据: 无 ) +│ │ │ ├── Tkinter示例 --> ( 难度等级: [0.487, 0.4873) || 挂载数据: 无 ) +│ │ │ │ ├── Label控件 --> ( 难度等级: [0.487, 0.4871) || 挂载数据: qa: 1 ) +│ │ │ │ ├── Button控件 --> ( 难度等级: [0.4871, 0.4871) || 挂载数据: qa: 3 ) +│ │ │ │ ├── Label和Button控件 --> ( 难度等级: [0.4871, 0.4872) || 挂载数据: 无 ) +│ │ │ │ ├── Label、Button和Scale控件 --> ( 难度等级: [0.4872, 0.4872) || 挂载数据: 无 ) +│ │ │ │ ├── 偏函数应用示例 --> ( 难度等级: [0.4872, 0.4872) || 挂载数据: 无 ) +│ │ │ │ └── 中级Tkinter示例 --> ( 难度等级: [0.4872, 0.4873) || 挂载数据: qa: 10 ) +│ │ │ └── 其他GUI简介 --> ( 难度等级: [0.4873, 0.4875) || 挂载数据: 无 ) +│ │ │ ├── Tk接口扩展(Tix) --> ( 难度等级: [0.4873, 0.4873) || 挂载数据: 无 ) +│ │ │ ├── Python MegaWidgets(PMW) --> ( 难度等级: [0.4873, 0.4874) || 挂载数据: 无 ) +│ │ │ ├── GTK+和PyGTK --> ( 难度等级: [0.4874, 0.4874) || 挂载数据: 无 ) +│ │ │ └── Tile/Ttk --> ( 难度等级: [0.4874, 0.4875) || 挂载数据: 无 ) +│ │ ├── 数据库编程 --> ( 难度等级: [0.4875, 0.488) || 挂载数据: qa: 1 ) +│ │ │ ├── Python的DB-API --> ( 难度等级: [0.4875, 0.4876) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 模块属性 --> ( 难度等级: [0.4875, 0.4875) || 挂载数据: 无 ) +│ │ │ │ ├── Connection对象 --> ( 难度等级: [0.4875, 0.4875) || 挂载数据: 无 ) +│ │ │ │ ├── Cursor对象 --> ( 难度等级: [0.4875, 0.4876) || 挂载数据: qa: 3 ) +│ │ │ │ ├── 关系数据库 --> ( 难度等级: [0.4876, 0.4876) || 挂载数据: 无 ) +│ │ │ │ ├── 使用数据库适配器的示例 --> ( 难度等级: [0.4876, 0.4876) || 挂载数据: 无 ) +│ │ │ │ └── 数据库适配器示例应用 --> ( 难度等级: [0.4876, 0.4876) || 挂载数据: 无 ) +│ │ │ ├── ORM --> ( 难度等级: [0.4876, 0.4877) || 挂载数据: 无 ) +│ │ │ │ ├── 考虑对象,而不是SQL --> ( 难度等级: [0.4876, 0.4876) || 挂载数据: 无 ) +│ │ │ │ ├── 员工角色数据库示例 --> ( 难度等级: [0.4876, 0.4877) || 挂载数据: 无 ) +│ │ │ │ ├── SQLAlchemy --> ( 难度等级: [0.4877, 0.4877) || 挂载数据: qa: 2 ) +│ │ │ │ └── SQLObject --> ( 难度等级: [0.4877, 0.4877) || 挂载数据: 无 ) +│ │ │ ├── 非关系数据库 --> ( 难度等级: [0.4877, 0.4878) || 挂载数据: 无 ) +│ │ │ │ └── NoSQL介绍 --> ( 难度等级: [0.4877, 0.4878) || 挂载数据: 无 ) +│ │ │ └── 相关文献 --> ( 难度等级: [0.4878, 0.488) || 挂载数据: 无 ) +│ │ ├── *Microsoft Office编程 --> ( 难度等级: [0.488, 0.4884) || 挂载数据: 无 ) +│ │ │ ├── 使用Python进行COM客户端编程 --> ( 难度等级: [0.488, 0.4881) || 挂载数据: 无 ) +│ │ │ │ ├── 客户端COM编程 --> ( 难度等级: [0.488, 0.488) || 挂载数据: qa: 10 ) +│ │ │ │ └── 入门 --> ( 难度等级: [0.488, 0.4881) || 挂载数据: qa: 6 ) +│ │ │ ├── 入门示例 --> ( 难度等级: [0.4881, 0.4882) || 挂载数据: 无 ) +│ │ │ │ ├── Excel --> ( 难度等级: [0.4881, 0.4881) || 挂载数据: 无 ) +│ │ │ │ ├── Word --> ( 难度等级: [0.4881, 0.4881) || 挂载数据: 无 ) +│ │ │ │ ├── PowerPoint --> ( 难度等级: [0.4881, 0.4882) || 挂载数据: 无 ) +│ │ │ │ └── Outlook --> ( 难度等级: [0.4882, 0.4882) || 挂载数据: 无 ) +│ │ │ ├── 中级示例 --> ( 难度等级: [0.4882, 0.4883) || 挂载数据: 无 ) +│ │ │ │ ├── Excel --> ( 难度等级: [0.4882, 0.4882) || 挂载数据: 无 ) +│ │ │ │ ├── Outlook --> ( 难度等级: [0.4882, 0.4883) || 挂载数据: qa: 1 ) +│ │ │ │ └── PowerPoint --> ( 难度等级: [0.4883, 0.4883) || 挂载数据: 无 ) +│ │ │ └── 相关模块/包 --> ( 难度等级: [0.4883, 0.4884) || 挂载数据: 无 ) +│ │ └── 扩展Python --> ( 难度等级: [0.4884, 0.4889) || 挂载数据: 无 ) +│ │ ├── 编写Python扩展 --> ( 难度等级: [0.4884, 0.4887) || 挂载数据: 无 ) +│ │ │ ├── 根据样板编写封装代码 --> ( 难度等级: [0.4884, 0.4885) || 挂载数据: qa: 10 ) +│ │ │ ├── 编译 --> ( 难度等级: [0.4885, 0.4886) || 挂载数据: qa: 2 ) +│ │ │ └── 导入并测试 --> ( 难度等级: [0.4886, 0.4887) || 挂载数据: 无 ) +│ │ └── 相关主题 --> ( 难度等级: [0.4887, 0.4889) || 挂载数据: qa: 2 ) +│ │ ├── SWIG --> ( 难度等级: [0.4887, 0.4887) || 挂载数据: 无 ) +│ │ ├── Pyrex --> ( 难度等级: [0.4887, 0.4887) || 挂载数据: 无 ) +│ │ ├── Cython --> ( 难度等级: [0.4887, 0.4888) || 挂载数据: 无 ) +│ │ ├── Psyco --> ( 难度等级: [0.4888, 0.4888) || 挂载数据: 无 ) +│ │ ├── PyPy --> ( 难度等级: [0.4888, 0.4889) || 挂载数据: 无 ) +│ │ └── 嵌入Python --> ( 难度等级: [0.4889, 0.4889) || 挂载数据: 无 ) +│ ├── Python中使用正则表达式 --> ( 难度等级: [0.4889, 0.4917) || 挂载数据: 无 ) +│ │ ├── 正则表达式语法 --> ( 难度等级: [0.4889, 0.4903) || 挂载数据: qa: 1 ) +│ │ │ ├── 行定位符 --> ( 难度等级: [0.4889, 0.489) || 挂载数据: 无 ) +│ │ │ ├── 元字符 --> ( 难度等级: [0.489, 0.4892) || 挂载数据: 无 ) +│ │ │ ├── 重复 --> ( 难度等级: [0.4892, 0.4894) || 挂载数据: qa: 1 ) +│ │ │ ├── 字符类 --> ( 难度等级: [0.4894, 0.4895) || 挂载数据: 无 ) +│ │ │ ├── 排除字符 --> ( 难度等级: [0.4895, 0.4897) || 挂载数据: qa: 2 ) +│ │ │ ├── 选择字符 --> ( 难度等级: [0.4897, 0.4898) || 挂载数据: qa: 3 ) +│ │ │ ├── 转义字符 --> ( 难度等级: [0.4898, 0.49) || 挂载数据: qa: 2 ) +│ │ │ ├── 分组 --> ( 难度等级: [0.49, 0.4901) || 挂载数据: qa: 2 ) +│ │ │ └── 在Python中使用正则 --> ( 难度等级: [0.4901, 0.4903) || 挂载数据: qa: 2 ) +│ │ └── 使用re模块实现正则表达式操作 --> ( 难度等级: [0.4903, 0.4917) || 挂载数据: qa: 1 ) +│ │ ├── 替换字符串 --> ( 难度等级: [0.4903, 0.491) || 挂载数据: qa: 1 ) +│ │ └── 使用正则表达式分割字符串 --> ( 难度等级: [0.491, 0.4917) || 挂载数据: qa: 10 ) +│ ├── 面向对象程序设计 --> ( 难度等级: [0.4917, 0.4944) || 挂载数据: 无 ) +│ │ ├── 面向对象概述 --> ( 难度等级: [0.4917, 0.4926) || 挂载数据: 无 ) +│ │ │ └── 面向对象程序设计的特点 --> ( 难度等级: [0.4917, 0.4926) || 挂载数据: qa: 6 ) +│ │ ├── 类的定义和使用 --> ( 难度等级: [0.4926, 0.4935) || 挂载数据: 无 ) +│ │ │ ├── 定义类 --> ( 难度等级: [0.4926, 0.4928) || 挂载数据: qa: 10 ) +│ │ │ ├── 创建__init__方法 --> ( 难度等级: [0.4928, 0.4931) || 挂载数据: qa: 2 ) +│ │ │ ├── 创建类的成员并访问 --> ( 难度等级: [0.4931, 0.4933) || 挂载数据: qa: 1 ) +│ │ │ └── 访问限制 --> ( 难度等级: [0.4933, 0.4935) || 挂载数据: qa: 1 ) +│ │ └── 继承 --> ( 难度等级: [0.4935, 0.4944) || 挂载数据: 无 ) +│ │ ├── 继承的基本语法 --> ( 难度等级: [0.4935, 0.4938) || 挂载数据: qa: 1 ) +│ │ ├── 方法重写 --> ( 难度等级: [0.4938, 0.4941) || 挂载数据: 无 ) +│ │ └── 派生类中调用基类的__init__方法 --> ( 难度等级: [0.4941, 0.4944) || 挂载数据: qa: 1 ) +│ ├── 模块 --> ( 难度等级: [0.4944, 0.4972) || 挂载数据: 无 ) +│ │ ├── 模块概述 --> ( 难度等级: [0.4944, 0.4951) || 挂载数据: 无 ) +│ │ ├── 自定义模块 --> ( 难度等级: [0.4951, 0.4958) || 挂载数据: 无 ) +│ │ │ ├── 创建模块 --> ( 难度等级: [0.4951, 0.4953) || 挂载数据: qa: 10 ) +│ │ │ ├── 使用import语句导入模块 --> ( 难度等级: [0.4953, 0.4955) || 挂载数据: qa: 9 ) +│ │ │ ├── 使用from…import语句 --> ( 难度等级: [0.4955, 0.4957) || 挂载数据: qa: 1 ) +│ │ │ └── 模块搜索目录 --> ( 难度等级: [0.4957, 0.4958) || 挂载数据: 无 ) +│ │ ├── Python中的包 --> ( 难度等级: [0.4958, 0.4965) || 挂载数据: 无 ) +│ │ │ ├── Python程序的包结构 --> ( 难度等级: [0.4958, 0.4962) || 挂载数据: 无 ) +│ │ │ └── 以主程序的形式执行 --> ( 难度等级: [0.4962, 0.4965) || 挂载数据: 无 ) +│ │ └── 引用其他模块 --> ( 难度等级: [0.4965, 0.4972) || 挂载数据: 无 ) +│ └── 异常处理及程序调试 --> ( 难度等级: [0.4972, 0.5) || 挂载数据: 无 ) +│ ├── 异常概述 --> ( 难度等级: [0.4972, 0.4981) || 挂载数据: 无 ) +│ ├── 异常处理语句 --> ( 难度等级: [0.4981, 0.4991) || 挂载数据: 无 ) +│ │ ├── try…except语句 --> ( 难度等级: [0.4981, 0.4984) || 挂载数据: qa: 3 ) +│ │ ├── try…except…else语句 --> ( 难度等级: [0.4984, 0.4986) || 挂载数据: 无 ) +│ │ ├── try…except…finally语句 --> ( 难度等级: [0.4986, 0.4988) || 挂载数据: 无 ) +│ │ └── 使用raise语句抛出异常 --> ( 难度等级: [0.4988, 0.4991) || 挂载数据: qa: 2 ) +│ └── 程序调试 --> ( 难度等级: [0.4991, 0.5) || 挂载数据: 无 ) +│ ├── 使用自带的IDLE进行程序调试 --> ( 难度等级: [0.4991, 0.4995) || 挂载数据: 无 ) +│ └── 使用assert语句调试程序 --> ( 难度等级: [0.4995, 0.5) || 挂载数据: qa: 1 ) +├── Python高阶 --> ( 难度等级: [0.5, 0.75) || 挂载数据: 无 ) +│ ├── 科学计算基础软件包NumPy --> ( 难度等级: [0.5, 0.5312) || 挂载数据: 无 ) +│ │ ├── NumPy概述 --> ( 难度等级: [0.5, 0.5039) || 挂载数据: 无 ) +│ │ │ ├── NumPy的前世今生 --> ( 难度等级: [0.5, 0.5008) || 挂载数据: 无 ) +│ │ │ ├── NumPy数组vs Python列表 --> ( 难度等级: [0.5008, 0.5016) || 挂载数据: 无 ) +│ │ │ ├── NumPy数组类型和属性 --> ( 难度等级: [0.5016, 0.5023) || 挂载数据: 无 ) +│ │ │ ├── 维、轴、秩 --> ( 难度等级: [0.5023, 0.5031) || 挂载数据: 无 ) +│ │ │ └── 广播和矢量化 --> ( 难度等级: [0.5031, 0.5039) || 挂载数据: 无 ) +│ │ ├── 安装配置 --> ( 难度等级: [0.5039, 0.5078) || 挂载数据: 无 ) +│ │ ├── 创建数组 --> ( 难度等级: [0.5078, 0.5117) || 挂载数据: 无 ) +│ │ ├── 操作数组 --> ( 难度等级: [0.5117, 0.5156) || 挂载数据: 无 ) +│ │ │ ├── 索引 --> ( 难度等级: [0.5117, 0.5122) || 挂载数据: 无 ) +│ │ │ ├── 切片 --> ( 难度等级: [0.5122, 0.5126) || 挂载数据: qa: 2 ) +│ │ │ ├── 改变数组结构 --> ( 难度等级: [0.5126, 0.513) || 挂载数据: 无 ) +│ │ │ ├── 合并和拆分 --> ( 难度等级: [0.513, 0.5135) || 挂载数据: 无 ) +│ │ │ ├── 复制 --> ( 难度等级: [0.5135, 0.5139) || 挂载数据: 无 ) +│ │ │ ├── 排序 --> ( 难度等级: [0.5139, 0.5143) || 挂载数据: 无 ) +│ │ │ ├── 查找 --> ( 难度等级: [0.5143, 0.5148) || 挂载数据: qa: 2 ) +│ │ │ ├── 筛选 --> ( 难度等级: [0.5148, 0.5152) || 挂载数据: qa: 1 ) +│ │ │ └── 数组I/O --> ( 难度等级: [0.5152, 0.5156) || 挂载数据: qa: 1 ) +│ │ ├── 常用函数 --> ( 难度等级: [0.5156, 0.5195) || 挂载数据: 无 ) +│ │ │ ├── np.nan和np.inf --> ( 难度等级: [0.5156, 0.5162) || 挂载数据: qa: 4 ) +│ │ │ ├── 函数命名空间 --> ( 难度等级: [0.5162, 0.5167) || 挂载数据: 无 ) +│ │ │ ├── 数学函数 --> ( 难度等级: [0.5167, 0.5173) || 挂载数据: 无 ) +│ │ │ ├── 统计函数 --> ( 难度等级: [0.5173, 0.5179) || 挂载数据: 无 ) +│ │ │ ├── 插值函数 --> ( 难度等级: [0.5179, 0.5184) || 挂载数据: 无 ) +│ │ │ ├── 多项式拟合函数 --> ( 难度等级: [0.5184, 0.519) || 挂载数据: 无 ) +│ │ │ └── 自定义广播函数 --> ( 难度等级: [0.519, 0.5195) || 挂载数据: 无 ) +│ │ ├── 掩码数组 --> ( 难度等级: [0.5195, 0.5234) || 挂载数据: 无 ) +│ │ │ ├── 创建掩码数组 --> ( 难度等级: [0.5195, 0.5215) || 挂载数据: 无 ) +│ │ │ └── 访问掩码数组 --> ( 难度等级: [0.5215, 0.5234) || 挂载数据: 无 ) +│ │ ├── 矩阵对象 --> ( 难度等级: [0.5234, 0.5273) || 挂载数据: 无 ) +│ │ │ ├── 创建矩阵 --> ( 难度等级: [0.5234, 0.5247) || 挂载数据: qa: 3 ) +│ │ │ ├── 矩阵特有属性 --> ( 难度等级: [0.5247, 0.526) || 挂载数据: 无 ) +│ │ │ └── 矩阵乘法 --> ( 难度等级: [0.526, 0.5273) || 挂载数据: 无 ) +│ │ └── 随机抽样子模块 --> ( 难度等级: [0.5273, 0.5312) || 挂载数据: 无 ) +│ │ ├── 随机数 --> ( 难度等级: [0.5273, 0.5283) || 挂载数据: 无 ) +│ │ ├── 随机抽样 --> ( 难度等级: [0.5283, 0.5293) || 挂载数据: 无 ) +│ │ ├── 正态分布 --> ( 难度等级: [0.5293, 0.5303) || 挂载数据: 无 ) +│ │ └── 伪随机数的深度思考 --> ( 难度等级: [0.5303, 0.5312) || 挂载数据: 无 ) +│ ├── 结构化数据分析工具Pandas --> ( 难度等级: [0.5312, 0.5625) || 挂载数据: 无 ) +│ │ ├── Pandas概览 --> ( 难度等级: [0.5312, 0.5391) || 挂载数据: 无 ) +│ │ │ ├── Panda的特点 --> ( 难度等级: [0.5312, 0.5352) || 挂载数据: 无 ) +│ │ │ └── 安装和使用 --> ( 难度等级: [0.5352, 0.5391) || 挂载数据: qa: 1 ) +│ │ ├── 数据结构 --> ( 难度等级: [0.5391, 0.5469) || 挂载数据: 无 ) +│ │ │ ├── 索引数组Index --> ( 难度等级: [0.5391, 0.5417) || 挂载数据: 无 ) +│ │ │ ├── 带标签的一维同构数组Series --> ( 难度等级: [0.5417, 0.5443) || 挂载数据: 无 ) +│ │ │ └── 带标签的二维异构表格DataFrame --> ( 难度等级: [0.5443, 0.5469) || 挂载数据: qa: 2 ) +│ │ ├── 基本操作 --> ( 难度等级: [0.5469, 0.5547) || 挂载数据: 无 ) +│ │ │ ├── 数据预览 --> ( 难度等级: [0.5469, 0.5482) || 挂载数据: 无 ) +│ │ │ ├── 数据选择 --> ( 难度等级: [0.5482, 0.5495) || 挂载数据: 无 ) +│ │ │ ├── 改变数据结构 --> ( 难度等级: [0.5495, 0.5508) || 挂载数据: 无 ) +│ │ │ ├── 改变数据类型 --> ( 难度等级: [0.5508, 0.5521) || 挂载数据: 无 ) +│ │ │ ├── 广播与矢量化运算 --> ( 难度等级: [0.5521, 0.5534) || 挂载数据: 无 ) +│ │ │ └── 行列级广播函数 --> ( 难度等级: [0.5534, 0.5547) || 挂载数据: qa: 1 ) +│ │ └── 高级应用 --> ( 难度等级: [0.5547, 0.5625) || 挂载数据: 无 ) +│ │ ├── 分组 --> ( 难度等级: [0.5547, 0.5557) || 挂载数据: 无 ) +│ │ ├── 聚合 --> ( 难度等级: [0.5557, 0.5566) || 挂载数据: 无 ) +│ │ ├── 层次化索引 --> ( 难度等级: [0.5566, 0.5576) || 挂载数据: 无 ) +│ │ ├── 表级广播函数 --> ( 难度等级: [0.5576, 0.5586) || 挂载数据: 无 ) +│ │ ├── 日期时间索引对象 --> ( 难度等级: [0.5586, 0.5596) || 挂载数据: 无 ) +│ │ ├── 透视表 --> ( 难度等级: [0.5596, 0.5605) || 挂载数据: 无 ) +│ │ ├── 数据可视化 --> ( 难度等级: [0.5605, 0.5615) || 挂载数据: qa: 4 ) +│ │ └── 数据I/O --> ( 难度等级: [0.5615, 0.5625) || 挂载数据: 无 ) +│ ├── 绘图库Matplotlib --> ( 难度等级: [0.5625, 0.5938) || 挂载数据: 无 ) +│ │ ├── 安装配置 --> ( 难度等级: [0.5625, 0.5687) || 挂载数据: 无 ) +│ │ ├── Matplotlib快速入门 --> ( 难度等级: [0.5687, 0.575) || 挂载数据: 无 ) +│ │ │ ├── 画布 --> ( 难度等级: [0.5687, 0.57) || 挂载数据: qa: 1 ) +│ │ │ ├── 子图与子图布局 --> ( 难度等级: [0.57, 0.5712) || 挂载数据: 无 ) +│ │ │ ├── 坐标轴与刻度的名称 --> ( 难度等级: [0.5712, 0.5725) || 挂载数据: qa: 1 ) +│ │ │ ├── 图例和文本标注 --> ( 难度等级: [0.5725, 0.5737) || 挂载数据: 无 ) +│ │ │ └── 显示和保存 --> ( 难度等级: [0.5737, 0.575) || 挂载数据: 无 ) +│ │ ├── 图形绘制 --> ( 难度等级: [0.575, 0.5813) || 挂载数据: qa: 2 ) +│ │ │ ├── 曲线图 --> ( 难度等级: [0.575, 0.5759) || 挂载数据: 无 ) +│ │ │ ├── 散点图 --> ( 难度等级: [0.5759, 0.5768) || 挂载数据: 无 ) +│ │ │ ├── 直方图 --> ( 难度等级: [0.5768, 0.5777) || 挂载数据: 无 ) +│ │ │ ├── 饼图 --> ( 难度等级: [0.5777, 0.5786) || 挂载数据: qa: 1 ) +│ │ │ ├── 箱线图 --> ( 难度等级: [0.5786, 0.5795) || 挂载数据: 无 ) +│ │ │ ├── 绘制图像 --> ( 难度等级: [0.5795, 0.5804) || 挂载数据: qa: 10 ) +│ │ │ └── 极坐标绘图 --> ( 难度等级: [0.5804, 0.5813) || 挂载数据: qa: 1 ) +│ │ ├── 风格和样式 --> ( 难度等级: [0.5813, 0.5875) || 挂载数据: 无 ) +│ │ │ ├── 画布设置 --> ( 难度等级: [0.5813, 0.5819) || 挂载数据: 无 ) +│ │ │ ├── 子图布局 --> ( 难度等级: [0.5819, 0.5826) || 挂载数据: 无 ) +│ │ │ ├── 颜色 --> ( 难度等级: [0.5826, 0.5833) || 挂载数据: 无 ) +│ │ │ ├── 线条和点的样式 --> ( 难度等级: [0.5833, 0.584) || 挂载数据: 无 ) +│ │ │ ├── 坐标轴 --> ( 难度等级: [0.584, 0.5847) || 挂载数据: 无 ) +│ │ │ ├── 刻度 --> ( 难度等级: [0.5847, 0.5854) || 挂载数据: 无 ) +│ │ │ ├── 文本 --> ( 难度等级: [0.5854, 0.5861) || 挂载数据: 无 ) +│ │ │ ├── 图例 --> ( 难度等级: [0.5861, 0.5868) || 挂载数据: 无 ) +│ │ │ └── 网格设置 --> ( 难度等级: [0.5868, 0.5875) || 挂载数据: 无 ) +│ │ └── Matplotlib扩展 --> ( 难度等级: [0.5875, 0.5938) || 挂载数据: 无 ) +│ │ ├── 使用BaseMap绘制地图 --> ( 难度等级: [0.5875, 0.5906) || 挂载数据: qa: 1 ) +│ │ └── 3D绘图工具包 --> ( 难度等级: [0.5906, 0.5938) || 挂载数据: 无 ) +│ ├── 科学计算工具包SciPy --> ( 难度等级: [0.5938, 0.625) || 挂载数据: 无 ) +│ │ ├── SciPy概览 --> ( 难度等级: [0.5938, 0.5966) || 挂载数据: qa: 1 ) +│ │ ├── 安装配置 --> ( 难度等级: [0.5966, 0.5994) || 挂载数据: 无 ) +│ │ ├── 数据插值 --> ( 难度等级: [0.5994, 0.6023) || 挂载数据: 无 ) +│ │ │ ├── 一维插值 --> ( 难度等级: [0.5994, 0.6004) || 挂载数据: 无 ) +│ │ │ ├── 二维插值 --> ( 难度等级: [0.6004, 0.6013) || 挂载数据: 无 ) +│ │ │ └── 离散数据插值到网格 --> ( 难度等级: [0.6013, 0.6023) || 挂载数据: 无 ) +│ │ ├── 曲线拟合 --> ( 难度等级: [0.6023, 0.6051) || 挂载数据: 无 ) +│ │ │ ├── 最小二乘法拟合 --> ( 难度等级: [0.6023, 0.6032) || 挂载数据: 无 ) +│ │ │ ├── 使用curve_fit函数拟合 --> ( 难度等级: [0.6032, 0.6042) || 挂载数据: qa: 1 ) +│ │ │ └── 多项式拟合函数 --> ( 难度等级: [0.6042, 0.6051) || 挂载数据: 无 ) +│ │ ├── 傅里叶变换 --> ( 难度等级: [0.6051, 0.608) || 挂载数据: 无 ) +│ │ │ ├── 时域到频域的转换 --> ( 难度等级: [0.6051, 0.6061) || 挂载数据: 无 ) +│ │ │ ├── 一维傅里叶变换的应用 --> ( 难度等级: [0.6061, 0.607) || 挂载数据: 无 ) +│ │ │ └── 二维傅里叶变换的应用 --> ( 难度等级: [0.607, 0.608) || 挂载数据: 无 ) +│ │ ├── 图像处理 --> ( 难度等级: [0.608, 0.6108) || 挂载数据: 无 ) +│ │ │ ├── 图像卷积 --> ( 难度等级: [0.608, 0.6087) || 挂载数据: 无 ) +│ │ │ ├── 边缘检测 --> ( 难度等级: [0.6087, 0.6094) || 挂载数据: 无 ) +│ │ │ ├── 侵蚀和膨胀 --> ( 难度等级: [0.6094, 0.6101) || 挂载数据: 无 ) +│ │ │ └── 图像测量 --> ( 难度等级: [0.6101, 0.6108) || 挂载数据: 无 ) +│ │ ├── 积分 --> ( 难度等级: [0.6108, 0.6136) || 挂载数据: 无 ) +│ │ │ ├── 对给定函数的定积分 --> ( 难度等级: [0.6108, 0.6117) || 挂载数据: 无 ) +│ │ │ ├── 对给定样本的定积分 --> ( 难度等级: [0.6117, 0.6127) || 挂载数据: 无 ) +│ │ │ └── 二重定积分 --> ( 难度等级: [0.6127, 0.6136) || 挂载数据: qa: 1 ) +│ │ ├── 非线性方程求解 --> ( 难度等级: [0.6136, 0.6165) || 挂载数据: 无 ) +│ │ │ ├── 非线性方程 --> ( 难度等级: [0.6136, 0.6151) || 挂载数据: qa: 3 ) +│ │ │ └── 非线性方程组 --> ( 难度等级: [0.6151, 0.6165) || 挂载数据: 无 ) +│ │ ├── 线性代数 --> ( 难度等级: [0.6165, 0.6193) || 挂载数据: 无 ) +│ │ │ ├── 计算矩阵的行列式 --> ( 难度等级: [0.6165, 0.617) || 挂载数据: 无 ) +│ │ │ ├── 求解逆矩阵 --> ( 难度等级: [0.617, 0.6176) || 挂载数据: 无 ) +│ │ │ ├── 计算特征向量和特征值 --> ( 难度等级: [0.6176, 0.6182) || 挂载数据: 无 ) +│ │ │ ├── 矩阵的奇异值分解 --> ( 难度等级: [0.6182, 0.6187) || 挂载数据: 无 ) +│ │ │ └── 求解线性方程组 --> ( 难度等级: [0.6187, 0.6193) || 挂载数据: 无 ) +│ │ ├── 聚类 --> ( 难度等级: [0.6193, 0.6222) || 挂载数据: 无 ) +│ │ │ ├── k-means聚类 --> ( 难度等级: [0.6193, 0.6207) || 挂载数据: 无 ) +│ │ │ └── 层次聚类 --> ( 难度等级: [0.6207, 0.6222) || 挂载数据: 无 ) +│ │ └── 空间计算 --> ( 难度等级: [0.6222, 0.625) || 挂载数据: 无 ) +│ │ ├── 空间旋转的表述 --> ( 难度等级: [0.6222, 0.6236) || 挂载数据: qa: 1 ) +│ │ └── 三维旋转 --> ( 难度等级: [0.6236, 0.625) || 挂载数据: 无 ) +│ ├── 数据分析 --> ( 难度等级: [0.625, 0.6562) || 挂载数据: 无 ) +│ │ ├── Python基础 --> ( 难度等级: [0.625, 0.6264) || 挂载数据: 无 ) +│ │ │ ├── 创建Python脚本 --> ( 难度等级: [0.625, 0.6252) || 挂载数据: 无 ) +│ │ │ ├── 运行Python脚本 --> ( 难度等级: [0.6252, 0.6254) || 挂载数据: 无 ) +│ │ │ ├── 与命令行进行交互的几项技巧 --> ( 难度等级: [0.6254, 0.6255) || 挂载数据: 无 ) +│ │ │ ├── Python语言基础要素 --> ( 难度等级: [0.6255, 0.6257) || 挂载数据: 无 ) +│ │ │ │ ├── 数值 --> ( 难度等级: [0.6255, 0.6256) || 挂载数据: qa: 3 ) +│ │ │ │ ├── 字符串 --> ( 难度等级: [0.6256, 0.6256) || 挂载数据: 无 ) +│ │ │ │ ├── 正则表达式与模式匹配 --> ( 难度等级: [0.6256, 0.6256) || 挂载数据: 无 ) +│ │ │ │ ├── 日期 --> ( 难度等级: [0.6256, 0.6256) || 挂载数据: qa: 2 ) +│ │ │ │ ├── 列表 --> ( 难度等级: [0.6256, 0.6256) || 挂载数据: 无 ) +│ │ │ │ ├── 元组 --> ( 难度等级: [0.6256, 0.6257) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 字典 --> ( 难度等级: [0.6257, 0.6257) || 挂载数据: 无 ) +│ │ │ │ └── 控制流 --> ( 难度等级: [0.6257, 0.6257) || 挂载数据: 无 ) +│ │ │ ├── 读取文本文件 --> ( 难度等级: [0.6257, 0.6259) || 挂载数据: 无 ) +│ │ │ │ ├── 创建文本文件 --> ( 难度等级: [0.6257, 0.6258) || 挂载数据: 无 ) +│ │ │ │ ├── 脚本和输入文件在同一位置 --> ( 难度等级: [0.6258, 0.6258) || 挂载数据: 无 ) +│ │ │ │ └── 读取文件的新型语法 --> ( 难度等级: [0.6258, 0.6259) || 挂载数据: qa: 4 ) +│ │ │ ├── 使用glob读取多个文本文件 --> ( 难度等级: [0.6259, 0.6261) || 挂载数据: 无 ) +│ │ │ ├── 写入文本文件 --> ( 难度等级: [0.6261, 0.6262) || 挂载数据: 无 ) +│ │ │ │ ├── 向first_script.py添加代码 --> ( 难度等级: [0.6261, 0.6262) || 挂载数据: qa: 1 ) +│ │ │ │ └── 写入CSV文件 --> ( 难度等级: [0.6262, 0.6262) || 挂载数据: qa: 3 ) +│ │ │ └── print语句 --> ( 难度等级: [0.6262, 0.6264) || 挂载数据: qa: 2 ) +│ │ ├── CSV文件 --> ( 难度等级: [0.6264, 0.6278) || 挂载数据: 无 ) +│ │ │ ├── 筛选特定的行 --> ( 难度等级: [0.6264, 0.6266) || 挂载数据: 无 ) +│ │ │ │ ├── 行中的值满足某个条件 --> ( 难度等级: [0.6264, 0.6265) || 挂载数据: 无 ) +│ │ │ │ ├── 行中的值属于某个集合 --> ( 难度等级: [0.6265, 0.6266) || 挂载数据: qa: 6 ) +│ │ │ │ └── 行中的值匹配于某个模式/ 正则表达式 --> ( 难度等级: [0.6266, 0.6266) || 挂载数据: 无 ) +│ │ │ ├── 选取特定的列 --> ( 难度等级: [0.6266, 0.6268) || 挂载数据: 无 ) +│ │ │ │ ├── 列索引值 --> ( 难度等级: [0.6266, 0.6267) || 挂载数据: 无 ) +│ │ │ │ └── 列标题 --> ( 难度等级: [0.6267, 0.6268) || 挂载数据: qa: 4 ) +│ │ │ ├── 选取连续的行 --> ( 难度等级: [0.6268, 0.627) || 挂载数据: 无 ) +│ │ │ ├── 添加标题行 --> ( 难度等级: [0.627, 0.6272) || 挂载数据: 无 ) +│ │ │ ├── 读取多个CSV文件 --> ( 难度等级: [0.6272, 0.6274) || 挂载数据: qa: 10 ) +│ │ │ ├── 从多个文件中连接数据 --> ( 难度等级: [0.6274, 0.6276) || 挂载数据: qa: 3 ) +│ │ │ └── 计算每个文件中值的总和与均值 --> ( 难度等级: [0.6276, 0.6278) || 挂载数据: 无 ) +│ │ ├── Excel文件 --> ( 难度等级: [0.6278, 0.6293) || 挂载数据: 无 ) +│ │ │ ├── 内省Excel工作簿 --> ( 难度等级: [0.6278, 0.6281) || 挂载数据: 无 ) +│ │ │ ├── 处理单个工作表 --> ( 难度等级: [0.6281, 0.6284) || 挂载数据: 无 ) +│ │ │ │ ├── 读写Excel文件 --> ( 难度等级: [0.6281, 0.6282) || 挂载数据: qa: 10 ) +│ │ │ │ ├── 筛选特定行 --> ( 难度等级: [0.6282, 0.6283) || 挂载数据: 无 ) +│ │ │ │ └── 选取特定列 --> ( 难度等级: [0.6283, 0.6284) || 挂载数据: 无 ) +│ │ │ ├── 读取工作簿中的所有工作表 --> ( 难度等级: [0.6284, 0.6287) || 挂载数据: 无 ) +│ │ │ │ ├── 在所有工作表中筛选特定行 --> ( 难度等级: [0.6284, 0.6286) || 挂载数据: 无 ) +│ │ │ │ └── 在所有工作表中选取特定列 --> ( 难度等级: [0.6286, 0.6287) || 挂载数据: 无 ) +│ │ │ ├── 在Excel工作簿中读取一组工作表 --> ( 难度等级: [0.6287, 0.629) || 挂载数据: 无 ) +│ │ │ └── 处理多个工作簿 --> ( 难度等级: [0.629, 0.6293) || 挂载数据: 无 ) +│ │ │ ├── 工作表计数以及每个工作表中的行列计数 --> ( 难度等级: [0.629, 0.6291) || 挂载数据: qa: 1 ) +│ │ │ └── 从多个工作簿中连接数据 --> ( 难度等级: [0.6291, 0.6293) || 挂载数据: 无 ) +│ │ ├── 数据库 --> ( 难度等级: [0.6293, 0.6307) || 挂载数据: 无 ) +│ │ │ ├── Python内置的sqlite3 模块 --> ( 难度等级: [0.6293, 0.63) || 挂载数据: 无 ) +│ │ │ │ ├── 向表中插入新记录 --> ( 难度等级: [0.6293, 0.6296) || 挂载数据: 无 ) +│ │ │ │ └── 更新表中记录 --> ( 难度等级: [0.6296, 0.63) || 挂载数据: 无 ) +│ │ │ └── MySQL数据库 --> ( 难度等级: [0.63, 0.6307) || 挂载数据: 无 ) +│ │ │ ├── 向表中插入新记录 --> ( 难度等级: [0.63, 0.6302) || 挂载数据: 无 ) +│ │ │ ├── 查询一个表并将输出写入CSV文件 --> ( 难度等级: [0.6302, 0.6304) || 挂载数据: 无 ) +│ │ │ └── 更新表中记录 --> ( 难度等级: [0.6304, 0.6307) || 挂载数据: 无 ) +│ │ ├── 应用程序 --> ( 难度等级: [0.6307, 0.6321) || 挂载数据: 无 ) +│ │ │ ├── 为CSV文件中数据的任意数目分类计算统计量 --> ( 难度等级: [0.6307, 0.6314) || 挂载数据: 无 ) +│ │ │ └── 为文本文件中数据的任意数目分类计算统计量 --> ( 难度等级: [0.6314, 0.6321) || 挂载数据: 无 ) +│ │ ├── 图与图表 --> ( 难度等级: [0.6321, 0.6335) || 挂载数据: 无 ) +│ │ │ ├── matplotlib --> ( 难度等级: [0.6321, 0.6325) || 挂载数据: 无 ) +│ │ │ │ ├── 条形图 --> ( 难度等级: [0.6321, 0.6322) || 挂载数据: 无 ) +│ │ │ │ ├── 直方图 --> ( 难度等级: [0.6322, 0.6322) || 挂载数据: 无 ) +│ │ │ │ ├── 折线图 --> ( 难度等级: [0.6322, 0.6323) || 挂载数据: qa: 4 ) +│ │ │ │ ├── 散点图 --> ( 难度等级: [0.6323, 0.6324) || 挂载数据: 无 ) +│ │ │ │ └── 箱线图 --> ( 难度等级: [0.6324, 0.6325) || 挂载数据: 无 ) +│ │ │ ├── pandas --> ( 难度等级: [0.6325, 0.6328) || 挂载数据: 无 ) +│ │ │ ├── ggplot --> ( 难度等级: [0.6328, 0.6332) || 挂载数据: 无 ) +│ │ │ └── seaborn --> ( 难度等级: [0.6332, 0.6335) || 挂载数据: 无 ) +│ │ ├── 描述性统计与建模 --> ( 难度等级: [0.6335, 0.6349) || 挂载数据: 无 ) +│ │ │ ├── 数据集 --> ( 难度等级: [0.6335, 0.634) || 挂载数据: 无 ) +│ │ │ │ ├── 葡萄酒质量 --> ( 难度等级: [0.6335, 0.6338) || 挂载数据: 无 ) +│ │ │ │ └── 客户流失 --> ( 难度等级: [0.6338, 0.634) || 挂载数据: 无 ) +│ │ │ ├── 葡萄酒质量 --> ( 难度等级: [0.634, 0.6345) || 挂载数据: 无 ) +│ │ │ │ ├── 描述性统计 --> ( 难度等级: [0.634, 0.6341) || 挂载数据: qa: 6 ) +│ │ │ │ ├── 成对变量之间的关系和相关性 --> ( 难度等级: [0.6341, 0.6342) || 挂载数据: 无 ) +│ │ │ │ ├── 使用最小二乘估计进行线性回归 --> ( 难度等级: [0.6342, 0.6342) || 挂载数据: 无 ) +│ │ │ │ ├── 系数解释 --> ( 难度等级: [0.6342, 0.6343) || 挂载数据: 无 ) +│ │ │ │ ├── 自变量标准化 --> ( 难度等级: [0.6343, 0.6344) || 挂载数据: 无 ) +│ │ │ │ └── 预测 --> ( 难度等级: [0.6344, 0.6345) || 挂载数据: 无 ) +│ │ │ └── 客户流失 --> ( 难度等级: [0.6345, 0.6349) || 挂载数据: 无 ) +│ │ │ ├── 逻辑斯蒂回归 --> ( 难度等级: [0.6345, 0.6346) || 挂载数据: 无 ) +│ │ │ ├── 系数解释 --> ( 难度等级: [0.6346, 0.6348) || 挂载数据: 无 ) +│ │ │ └── 预测 --> ( 难度等级: [0.6348, 0.6349) || 挂载数据: 无 ) +│ │ ├── 按计划自动运行脚本 --> ( 难度等级: [0.6349, 0.6364) || 挂载数据: 无 ) +│ │ │ ├── 任务计划程序(Windows系统) --> ( 难度等级: [0.6349, 0.6357) || 挂载数据: 无 ) +│ │ │ └── cron工具(macOS系统和Unix系统) --> ( 难度等级: [0.6357, 0.6364) || 挂载数据: 无 ) +│ │ │ ├── cron表文件:一次性设置 --> ( 难度等级: [0.6357, 0.636) || 挂载数据: 无 ) +│ │ │ └── 向cron表文件中添加cron任务 --> ( 难度等级: [0.636, 0.6364) || 挂载数据: 无 ) +│ │ ├── 从这里启航 --> ( 难度等级: [0.6364, 0.6378) || 挂载数据: 无 ) +│ │ │ ├── 更多的标准库模块和内置函数 --> ( 难度等级: [0.6364, 0.6367) || 挂载数据: 无 ) +│ │ │ │ ├── Python标准库(PSL):更多的标准模块 --> ( 难度等级: [0.6364, 0.6365) || 挂载数据: 无 ) +│ │ │ │ └── 内置函数 --> ( 难度等级: [0.6365, 0.6367) || 挂载数据: qa: 1 ) +│ │ │ ├── Python包索引(PyPI):更多的扩展模块 --> ( 难度等级: [0.6367, 0.6371) || 挂载数据: 无 ) +│ │ │ │ ├── NumPy --> ( 难度等级: [0.6367, 0.6368) || 挂载数据: 无 ) +│ │ │ │ ├── SciPy --> ( 难度等级: [0.6368, 0.6369) || 挂载数据: qa: 1 ) +│ │ │ │ ├── Scikit-Learn --> ( 难度等级: [0.6369, 0.637) || 挂载数据: 无 ) +│ │ │ │ └── 更多的扩展包 --> ( 难度等级: [0.637, 0.6371) || 挂载数据: 无 ) +│ │ │ ├── 更多的数据结构 --> ( 难度等级: [0.6371, 0.6374) || 挂载数据: 无 ) +│ │ │ │ ├── 栈 --> ( 难度等级: [0.6371, 0.6372) || 挂载数据: 无 ) +│ │ │ │ ├── 队列 --> ( 难度等级: [0.6372, 0.6373) || 挂载数据: 无 ) +│ │ │ │ └── 树 --> ( 难度等级: [0.6373, 0.6374) || 挂载数据: 无 ) +│ │ │ └── 从这里启航 --> ( 难度等级: [0.6374, 0.6378) || 挂载数据: 无 ) +│ │ ├── 准备工作 --> ( 难度等级: [0.6378, 0.6392) || 挂载数据: 无 ) +│ │ │ ├── 本书内容 --> ( 难度等级: [0.6378, 0.638) || 挂载数据: 无 ) +│ │ │ │ └── 什么类型的数据 --> ( 难度等级: [0.6378, 0.638) || 挂载数据: qa: 1 ) +│ │ │ ├── 为何利用Python进行数据分析 --> ( 难度等级: [0.638, 0.6383) || 挂载数据: qa: 2 ) +│ │ │ │ ├── Python作为胶水 --> ( 难度等级: [0.638, 0.6381) || 挂载数据: 无 ) +│ │ │ │ ├── 解决“双语言”难题 --> ( 难度等级: [0.6381, 0.6382) || 挂载数据: qa: 3 ) +│ │ │ │ └── 为何不使用Python --> ( 难度等级: [0.6382, 0.6383) || 挂载数据: 无 ) +│ │ │ ├── 重要的Python库 --> ( 难度等级: [0.6383, 0.6385) || 挂载数据: 无 ) +│ │ │ │ ├── IPython与Jupyter --> ( 难度等级: [0.6383, 0.6384) || 挂载数据: qa: 1 ) +│ │ │ │ └── statsmodels --> ( 难度等级: [0.6384, 0.6385) || 挂载数据: 无 ) +│ │ │ ├── 安装与设置 --> ( 难度等级: [0.6385, 0.6387) || 挂载数据: 无 ) +│ │ │ │ ├── Windows --> ( 难度等级: [0.6385, 0.6385) || 挂载数据: 无 ) +│ │ │ │ ├── Apple(OS X和macOS) --> ( 难度等级: [0.6385, 0.6386) || 挂载数据: qa: 2 ) +│ │ │ │ ├── GNU/Linux --> ( 难度等级: [0.6386, 0.6386) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 安装及更新Python包 --> ( 难度等级: [0.6386, 0.6387) || 挂载数据: 无 ) +│ │ │ │ ├── Python 2和Python --> ( 难度等级: [0.6387, 0.6387) || 挂载数据: 无 ) +│ │ │ │ └── 集成开发环境和文本编辑器 --> ( 难度等级: [0.6387, 0.6387) || 挂载数据: 无 ) +│ │ │ ├── 社区和会议 --> ( 难度等级: [0.6387, 0.639) || 挂载数据: 无 ) +│ │ │ └── 快速浏览本书 --> ( 难度等级: [0.639, 0.6392) || 挂载数据: qa: 1 ) +│ │ │ ├── 代码示例 --> ( 难度等级: [0.639, 0.639) || 挂载数据: 无 ) +│ │ │ ├── 示例数据 --> ( 难度等级: [0.639, 0.6391) || 挂载数据: 无 ) +│ │ │ ├── 导入约定 --> ( 难度等级: [0.6391, 0.6391) || 挂载数据: 无 ) +│ │ │ └── 术语 --> ( 难度等级: [0.6391, 0.6392) || 挂载数据: 无 ) +│ │ ├── 内建数据结构、函数及文件 --> ( 难度等级: [0.6392, 0.6406) || 挂载数据: 无 ) +│ │ │ ├── 数据结构和序列 --> ( 难度等级: [0.6392, 0.6397) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 内建序列函数 --> ( 难度等级: [0.6392, 0.6394) || 挂载数据: 无 ) +│ │ │ │ └── 集合 --> ( 难度等级: [0.6394, 0.6397) || 挂载数据: 无 ) +│ │ │ ├── 函数 --> ( 难度等级: [0.6397, 0.6402) || 挂载数据: 无 ) +│ │ │ │ ├── 命名空间、作用域和本地函数 --> ( 难度等级: [0.6397, 0.6397) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 返回多个值 --> ( 难度等级: [0.6397, 0.6398) || 挂载数据: 无 ) +│ │ │ │ ├── 函数是对象 --> ( 难度等级: [0.6398, 0.6399) || 挂载数据: qa: 10 ) +│ │ │ │ ├── 匿名(Lambda)函数 --> ( 难度等级: [0.6399, 0.6399) || 挂载数据: qa: 4 ) +│ │ │ │ ├── 柯里化:部分参数应用 --> ( 难度等级: [0.6399, 0.64) || 挂载数据: 无 ) +│ │ │ │ ├── 生成器 --> ( 难度等级: [0.64, 0.6401) || 挂载数据: 无 ) +│ │ │ │ └── 错误和异常处理 --> ( 难度等级: [0.6401, 0.6402) || 挂载数据: 无 ) +│ │ │ └── 文件与操作系统 --> ( 难度等级: [0.6402, 0.6406) || 挂载数据: 无 ) +│ │ │ └── 字节与Unicode文件 --> ( 难度等级: [0.6402, 0.6406) || 挂载数据: 无 ) +│ │ ├── NumPy基础:数组与向量化计算 --> ( 难度等级: [0.6406, 0.642) || 挂载数据: 无 ) +│ │ │ ├── NumPy ndarray:多维数组对象 --> ( 难度等级: [0.6406, 0.6408) || 挂载数据: 无 ) +│ │ │ │ ├── 生成ndarray --> ( 难度等级: [0.6406, 0.6407) || 挂载数据: qa: 3 ) +│ │ │ │ ├── ndarray的数据类型 --> ( 难度等级: [0.6407, 0.6407) || 挂载数据: qa: 1 ) +│ │ │ │ ├── NumPy数组算术 --> ( 难度等级: [0.6407, 0.6407) || 挂载数据: qa: 10 ) +│ │ │ │ ├── 基础索引与切片 --> ( 难度等级: [0.6407, 0.6407) || 挂载数据: 无 ) +│ │ │ │ ├── 布尔索引 --> ( 难度等级: [0.6407, 0.6408) || 挂载数据: 无 ) +│ │ │ │ ├── 神奇索引 --> ( 难度等级: [0.6408, 0.6408) || 挂载数据: 无 ) +│ │ │ │ └── 数组转置和换轴 --> ( 难度等级: [0.6408, 0.6408) || 挂载数据: qa: 10 ) +│ │ │ ├── 通用函数:快速的逐元素数组函数 --> ( 难度等级: [0.6408, 0.641) || 挂载数据: 无 ) +│ │ │ ├── 使用数组进行面向数组编程 --> ( 难度等级: [0.641, 0.6412) || 挂载数据: 无 ) +│ │ │ │ ├── 将条件逻辑作为数组操作 --> ( 难度等级: [0.641, 0.6411) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 数学和统计方法 --> ( 难度等级: [0.6411, 0.6411) || 挂载数据: 无 ) +│ │ │ │ ├── 布尔值数组的方法 --> ( 难度等级: [0.6411, 0.6412) || 挂载数据: 无 ) +│ │ │ │ ├── 排序 --> ( 难度等级: [0.6412, 0.6412) || 挂载数据: qa: 5 ) +│ │ │ │ └── 唯一值与其他集合逻辑 --> ( 难度等级: [0.6412, 0.6412) || 挂载数据: 无 ) +│ │ │ ├── 使用数组进行文件输入和输出 --> ( 难度等级: [0.6412, 0.6414) || 挂载数据: qa: 2 ) +│ │ │ ├── 线性代数 --> ( 难度等级: [0.6414, 0.6416) || 挂载数据: 无 ) +│ │ │ ├── 伪随机数生成 --> ( 难度等级: [0.6416, 0.6418) || 挂载数据: qa: 1 ) +│ │ │ └── 示例:随机漫步 --> ( 难度等级: [0.6418, 0.642) || 挂载数据: 无 ) +│ │ │ └── 一次性模拟多次随机漫步 --> ( 难度等级: [0.6418, 0.642) || 挂载数据: qa: 10 ) +│ │ ├── pandas入门 --> ( 难度等级: [0.642, 0.6435) || 挂载数据: 无 ) +│ │ │ ├── pandas数据结构介绍 --> ( 难度等级: [0.642, 0.6425) || 挂载数据: qa: 10 ) +│ │ │ │ ├── Series --> ( 难度等级: [0.642, 0.6422) || 挂载数据: qa: 2 ) +│ │ │ │ ├── DataFrame --> ( 难度等级: [0.6422, 0.6424) || 挂载数据: qa: 10 ) +│ │ │ │ └── 索引对象 --> ( 难度等级: [0.6424, 0.6425) || 挂载数据: qa: 1 ) +│ │ │ ├── 基本功能 --> ( 难度等级: [0.6425, 0.643) || 挂载数据: 无 ) +│ │ │ │ ├── 重建索引 --> ( 难度等级: [0.6425, 0.6426) || 挂载数据: 无 ) +│ │ │ │ ├── 轴向上删除条目 --> ( 难度等级: [0.6426, 0.6427) || 挂载数据: 无 ) +│ │ │ │ ├── 索引、选择与过滤 --> ( 难度等级: [0.6427, 0.6428) || 挂载数据: 无 ) +│ │ │ │ ├── 整数索引 --> ( 难度等级: [0.6428, 0.6428) || 挂载数据: 无 ) +│ │ │ │ ├── 算术和数据对齐 --> ( 难度等级: [0.6428, 0.6429) || 挂载数据: 无 ) +│ │ │ │ └── 含有重复标签的轴索引 --> ( 难度等级: [0.6429, 0.643) || 挂载数据: 无 ) +│ │ │ └── 描述性统计的概述与计算 --> ( 难度等级: [0.643, 0.6435) || 挂载数据: 无 ) +│ │ ├── 数据载入、存储及文件格式 --> ( 难度等级: [0.6435, 0.6449) || 挂载数据: 无 ) +│ │ │ ├── 文本格式数据的读写 --> ( 难度等级: [0.6435, 0.6438) || 挂载数据: 无 ) +│ │ │ │ ├── 分块读入文本文件 --> ( 难度等级: [0.6435, 0.6435) || 挂载数据: 无 ) +│ │ │ │ ├── 将数据写入文本格式 --> ( 难度等级: [0.6435, 0.6436) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 使用分隔格式 --> ( 难度等级: [0.6436, 0.6437) || 挂载数据: 无 ) +│ │ │ │ ├── JSON数据 --> ( 难度等级: [0.6437, 0.6437) || 挂载数据: 无 ) +│ │ │ │ └── XML和HTML:网络抓取 --> ( 难度等级: [0.6437, 0.6438) || 挂载数据: qa: 3 ) +│ │ │ ├── 二进制格式 --> ( 难度等级: [0.6438, 0.6442) || 挂载数据: 无 ) +│ │ │ │ ├── 使用HDF5格式 --> ( 难度等级: [0.6438, 0.644) || 挂载数据: qa: 7 ) +│ │ │ │ └── 读取Microsoft Excel文件 --> ( 难度等级: [0.644, 0.6442) || 挂载数据: 无 ) +│ │ │ ├── 与Web API交互 --> ( 难度等级: [0.6442, 0.6445) || 挂载数据: qa: 1 ) +│ │ │ └── 与数据库交互 --> ( 难度等级: [0.6445, 0.6449) || 挂载数据: 无 ) +│ │ ├── 数据清洗与准备 --> ( 难度等级: [0.6449, 0.6463) || 挂载数据: 无 ) +│ │ │ ├── 处理缺失值 --> ( 难度等级: [0.6449, 0.6454) || 挂载数据: 无 ) +│ │ │ │ ├── 过滤缺失值 --> ( 难度等级: [0.6449, 0.6451) || 挂载数据: 无 ) +│ │ │ │ └── 补全缺失值 --> ( 难度等级: [0.6451, 0.6454) || 挂载数据: qa: 8 ) +│ │ │ ├── 数据转换 --> ( 难度等级: [0.6454, 0.6458) || 挂载数据: 无 ) +│ │ │ │ ├── 删除重复值 --> ( 难度等级: [0.6454, 0.6454) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 使用函数或映射进行数据转换 --> ( 难度等级: [0.6454, 0.6455) || 挂载数据: qa: 10 ) +│ │ │ │ ├── 替代值 --> ( 难度等级: [0.6455, 0.6455) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 重命名轴索引 --> ( 难度等级: [0.6455, 0.6456) || 挂载数据: 无 ) +│ │ │ │ ├── 离散化和分箱 --> ( 难度等级: [0.6456, 0.6457) || 挂载数据: 无 ) +│ │ │ │ ├── 检测和过滤异常值 --> ( 难度等级: [0.6457, 0.6457) || 挂载数据: 无 ) +│ │ │ │ ├── 置换和随机抽样 --> ( 难度等级: [0.6457, 0.6458) || 挂载数据: 无 ) +│ │ │ │ └── 计算指标/虚拟变量 --> ( 难度等级: [0.6458, 0.6458) || 挂载数据: 无 ) +│ │ │ └── 字符串操作 --> ( 难度等级: [0.6458, 0.6463) || 挂载数据: 无 ) +│ │ │ ├── 字符串对象方法 --> ( 难度等级: [0.6458, 0.6461) || 挂载数据: 无 ) +│ │ │ └── pandas中的向量化字符串函数 --> ( 难度等级: [0.6461, 0.6463) || 挂载数据: 无 ) +│ │ ├── 数据规整:连接、联合与重塑 --> ( 难度等级: [0.6463, 0.6477) || 挂载数据: 无 ) +│ │ │ ├── 分层索引 --> ( 难度等级: [0.6463, 0.6468) || 挂载数据: 无 ) +│ │ │ │ ├── 重排序和层级排序 --> ( 难度等级: [0.6463, 0.6465) || 挂载数据: 无 ) +│ │ │ │ ├── 按层级进行汇总统计 --> ( 难度等级: [0.6465, 0.6466) || 挂载数据: 无 ) +│ │ │ │ └── 使用DataFrame的列进行索引 --> ( 难度等级: [0.6466, 0.6468) || 挂载数据: qa: 10 ) +│ │ │ ├── 联合与合并数据集 --> ( 难度等级: [0.6468, 0.6473) || 挂载数据: 无 ) +│ │ │ │ ├── 数据库风格的DataFrame连接 --> ( 难度等级: [0.6468, 0.6469) || 挂载数据: 无 ) +│ │ │ │ ├── 根据索引合并 --> ( 难度等级: [0.6469, 0.647) || 挂载数据: qa: 3 ) +│ │ │ │ ├── 沿轴向连接 --> ( 难度等级: [0.647, 0.6471) || 挂载数据: qa: 1 ) +│ │ │ │ └── 联合重叠数据 --> ( 难度等级: [0.6471, 0.6473) || 挂载数据: 无 ) +│ │ │ └── 重塑和透视 --> ( 难度等级: [0.6473, 0.6477) || 挂载数据: 无 ) +│ │ │ ├── 使用多层索引进行重塑 --> ( 难度等级: [0.6473, 0.6474) || 挂载数据: 无 ) +│ │ │ ├── 将“长”透视为“宽” --> ( 难度等级: [0.6474, 0.6476) || 挂载数据: 无 ) +│ │ │ └── 将“宽”透视为“长” --> ( 难度等级: [0.6476, 0.6477) || 挂载数据: 无 ) +│ │ ├── 绘图与可视化 --> ( 难度等级: [0.6477, 0.6491) || 挂载数据: 无 ) +│ │ │ ├── 简明matplotlib API入门 --> ( 难度等级: [0.6477, 0.6484) || 挂载数据: 无 ) +│ │ │ │ ├── 图片与子图 --> ( 难度等级: [0.6477, 0.6478) || 挂载数据: 无 ) +│ │ │ │ ├── 颜色、标记和线类型 --> ( 难度等级: [0.6478, 0.648) || 挂载数据: 无 ) +│ │ │ │ ├── 刻度、标签和图例 --> ( 难度等级: [0.648, 0.6481) || 挂载数据: 无 ) +│ │ │ │ ├── 注释与子图加工 --> ( 难度等级: [0.6481, 0.6482) || 挂载数据: 无 ) +│ │ │ │ ├── 将图片保存到文件 --> ( 难度等级: [0.6482, 0.6483) || 挂载数据: qa: 5 ) +│ │ │ │ └── matplotlib设置 --> ( 难度等级: [0.6483, 0.6484) || 挂载数据: qa: 10 ) +│ │ │ └── 其他Python可视化工具 --> ( 难度等级: [0.6484, 0.6491) || 挂载数据: 无 ) +│ │ ├── 数据聚合与分组操作 --> ( 难度等级: [0.6491, 0.6506) || 挂载数据: 无 ) +│ │ │ ├── GroupBy机制 --> ( 难度等级: [0.6491, 0.6495) || 挂载数据: 无 ) +│ │ │ │ ├── 遍历各分组 --> ( 难度等级: [0.6491, 0.6492) || 挂载数据: 无 ) +│ │ │ │ ├── 选择一列或所有列的子集 --> ( 难度等级: [0.6492, 0.6493) || 挂载数据: 无 ) +│ │ │ │ ├── 使用函数分组 --> ( 难度等级: [0.6493, 0.6494) || 挂载数据: qa: 1 ) +│ │ │ │ └── 根据索引层级分组 --> ( 难度等级: [0.6494, 0.6495) || 挂载数据: 无 ) +│ │ │ ├── 数据聚合 --> ( 难度等级: [0.6495, 0.6499) || 挂载数据: 无 ) +│ │ │ │ └── 返回不含行索引的聚合数据 --> ( 难度等级: [0.6495, 0.6499) || 挂载数据: qa: 2 ) +│ │ │ ├── 应用:通用拆分-应用-联合 --> ( 难度等级: [0.6499, 0.6502) || 挂载数据: 无 ) +│ │ │ │ ├── 压缩分组键 --> ( 难度等级: [0.6499, 0.65) || 挂载数据: 无 ) +│ │ │ │ └── 分位数与桶分析 --> ( 难度等级: [0.65, 0.6502) || 挂载数据: 无 ) +│ │ │ └── 数据透视表与交叉表 --> ( 难度等级: [0.6502, 0.6506) || 挂载数据: 无 ) +│ │ │ └── 交叉表:crosstab --> ( 难度等级: [0.6502, 0.6506) || 挂载数据: 无 ) +│ │ ├── 时间序列 --> ( 难度等级: [0.6506, 0.652) || 挂载数据: 无 ) +│ │ │ ├── 时间序列基础 --> ( 难度等级: [0.6506, 0.6509) || 挂载数据: 无 ) +│ │ │ │ └── 含有重复索引的时间序列 --> ( 难度等级: [0.6506, 0.6509) || 挂载数据: qa: 2 ) +│ │ │ ├── 时区处理 --> ( 难度等级: [0.6509, 0.6511) || 挂载数据: 无 ) +│ │ │ │ ├── 时区的本地化和转换 --> ( 难度等级: [0.6509, 0.6509) || 挂载数据: 无 ) +│ │ │ │ ├── 时区感知时间戳对象的操作 --> ( 难度等级: [0.6509, 0.651) || 挂载数据: qa: 1 ) +│ │ │ │ └── 不同时区间的操作 --> ( 难度等级: [0.651, 0.6511) || 挂载数据: 无 ) +│ │ │ ├── 时间区间和区间算术 --> ( 难度等级: [0.6511, 0.6514) || 挂载数据: 无 ) +│ │ │ │ ├── 区间频率转换 --> ( 难度等级: [0.6511, 0.6512) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 季度区间频率 --> ( 难度等级: [0.6512, 0.6513) || 挂载数据: 无 ) +│ │ │ │ ├── 将时间戳转换为区间(以及逆转换) --> ( 难度等级: [0.6513, 0.6513) || 挂载数据: qa: 10 ) +│ │ │ │ └── 从数组生成PeriodIndex --> ( 难度等级: [0.6513, 0.6514) || 挂载数据: qa: 1 ) +│ │ │ ├── 重新采样与频率转换 --> ( 难度等级: [0.6514, 0.6517) || 挂载数据: 无 ) +│ │ │ │ ├── 向下采样 --> ( 难度等级: [0.6514, 0.6515) || 挂载数据: 无 ) +│ │ │ │ ├── 向上采样与插值 --> ( 难度等级: [0.6515, 0.6516) || 挂载数据: 无 ) +│ │ │ │ └── 使用区间进行重新采样 --> ( 难度等级: [0.6516, 0.6517) || 挂载数据: 无 ) +│ │ │ └── 移动窗口函数 --> ( 难度等级: [0.6517, 0.652) || 挂载数据: 无 ) +│ │ │ ├── 指数加权函数 --> ( 难度等级: [0.6517, 0.6518) || 挂载数据: 无 ) +│ │ │ ├── 二元移动窗口函数 --> ( 难度等级: [0.6518, 0.6519) || 挂载数据: qa: 4 ) +│ │ │ └── 用户自定义的移动窗口函数 --> ( 难度等级: [0.6519, 0.652) || 挂载数据: 无 ) +│ │ ├── 高阶pandas --> ( 难度等级: [0.652, 0.6534) || 挂载数据: 无 ) +│ │ │ ├── 分类数据 --> ( 难度等级: [0.652, 0.6525) || 挂载数据: 无 ) +│ │ │ │ ├── 背景和目标 --> ( 难度等级: [0.652, 0.6521) || 挂载数据: 无 ) +│ │ │ │ ├── pandas中的Categorical类型 --> ( 难度等级: [0.6521, 0.6522) || 挂载数据: qa: 10 ) +│ │ │ │ ├── 使用Categorical对象进行计算 --> ( 难度等级: [0.6522, 0.6523) || 挂载数据: 无 ) +│ │ │ │ └── 分类方法 --> ( 难度等级: [0.6523, 0.6525) || 挂载数据: qa: 2 ) +│ │ │ ├── 高阶GroupBy应用 --> ( 难度等级: [0.6525, 0.6529) || 挂载数据: 无 ) +│ │ │ │ ├── 分组转换和“展开”GroupBy --> ( 难度等级: [0.6525, 0.6527) || 挂载数据: qa: 3 ) +│ │ │ │ └── 分组的时间重新采样 --> ( 难度等级: [0.6527, 0.6529) || 挂载数据: 无 ) +│ │ │ └── 方法链技术 --> ( 难度等级: [0.6529, 0.6534) || 挂载数据: 无 ) +│ │ │ └── pipe方法 --> ( 难度等级: [0.6529, 0.6534) || 挂载数据: qa: 1 ) +│ │ ├── Python建模库介绍 --> ( 难度等级: [0.6534, 0.6548) || 挂载数据: 无 ) +│ │ │ ├── 使用Patsy创建模型描述 --> ( 难度等级: [0.6534, 0.6538) || 挂载数据: 无 ) +│ │ │ │ └── Patsy公式中的数据转换 --> ( 难度等级: [0.6534, 0.6538) || 挂载数据: 无 ) +│ │ │ ├── statsmodels介绍 --> ( 难度等级: [0.6538, 0.6541) || 挂载数据: 无 ) +│ │ │ │ ├── 评估线性模型 --> ( 难度等级: [0.6538, 0.6539) || 挂载数据: qa: 1 ) +│ │ │ │ └── 评估时间序列处理 --> ( 难度等级: [0.6539, 0.6541) || 挂载数据: 无 ) +│ │ │ ├── scikit-learn介绍 --> ( 难度等级: [0.6541, 0.6545) || 挂载数据: 无 ) +│ │ │ └── 继续你的教育 --> ( 难度等级: [0.6545, 0.6548) || 挂载数据: 无 ) +│ │ └── 数据分析示例 --> ( 难度等级: [0.6548, 0.6562) || 挂载数据: qa: 2 ) +│ │ ├── 从Bitly获取1.USA.gov数据 --> ( 难度等级: [0.6548, 0.6551) || 挂载数据: 无 ) +│ │ │ ├── 纯Python时区计数 --> ( 难度等级: [0.6548, 0.655) || 挂载数据: qa: 1 ) +│ │ │ └── 使用pandas进行时区计数 --> ( 难度等级: [0.655, 0.6551) || 挂载数据: 无 ) +│ │ ├── MovieLens 1M数据集 --> ( 难度等级: [0.6551, 0.6554) || 挂载数据: 无 ) +│ │ │ └── 测量评价分歧 --> ( 难度等级: [0.6551, 0.6554) || 挂载数据: 无 ) +│ │ ├── 美国1880~2010年的婴儿名字 --> ( 难度等级: [0.6554, 0.6557) || 挂载数据: 无 ) +│ │ │ └── 分析名字趋势 --> ( 难度等级: [0.6554, 0.6557) || 挂载数据: 无 ) +│ │ ├── 美国农业部食品数据库 --> ( 难度等级: [0.6557, 0.656) || 挂载数据: 无 ) +│ │ └── 2012年联邦选举委员会数据库 --> ( 难度等级: [0.656, 0.6562) || 挂载数据: 无 ) +│ │ ├── 按职业和雇主的捐献统计 --> ( 难度等级: [0.656, 0.6561) || 挂载数据: 无 ) +│ │ ├── 捐赠金额分桶 --> ( 难度等级: [0.6561, 0.6562) || 挂载数据: 无 ) +│ │ └── 按州进行捐赠统计 --> ( 难度等级: [0.6562, 0.6562) || 挂载数据: 无 ) +│ ├── 人工智能 --> ( 难度等级: [0.6562, 0.6875) || 挂载数据: 无 ) +│ │ ├── 机器学习工具包Scikit-learn --> ( 难度等级: [0.6562, 0.6594) || 挂载数据: 无 ) +│ │ │ ├── Scikit-learn概览 --> ( 难度等级: [0.6562, 0.6566) || 挂载数据: qa: 2 ) +│ │ │ ├── 安装配置 --> ( 难度等级: [0.6566, 0.6569) || 挂载数据: 无 ) +│ │ │ ├── 数据集 --> ( 难度等级: [0.6569, 0.6573) || 挂载数据: 无 ) +│ │ │ │ ├── Scikit-learn自带的数据集 --> ( 难度等级: [0.6569, 0.6571) || 挂载数据: 无 ) +│ │ │ │ ├── 样本生成器 --> ( 难度等级: [0.6571, 0.6572) || 挂载数据: 无 ) +│ │ │ │ └── 加载其他数据集 --> ( 难度等级: [0.6572, 0.6573) || 挂载数据: qa: 5 ) +│ │ │ ├── 数据预处理Preprocessing --> ( 难度等级: [0.6573, 0.6576) || 挂载数据: 无 ) +│ │ │ │ ├── 标准化 --> ( 难度等级: [0.6573, 0.6573) || 挂载数据: 无 ) +│ │ │ │ ├── 归一化 --> ( 难度等级: [0.6573, 0.6574) || 挂载数据: 无 ) +│ │ │ │ ├── 正则化 --> ( 难度等级: [0.6574, 0.6575) || 挂载数据: 无 ) +│ │ │ │ ├── 离散化 --> ( 难度等级: [0.6575, 0.6575) || 挂载数据: 无 ) +│ │ │ │ ├── 特征编码 --> ( 难度等级: [0.6575, 0.6576) || 挂载数据: 无 ) +│ │ │ │ └── 缺失值补全 --> ( 难度等级: [0.6576, 0.6576) || 挂载数据: qa: 1 ) +│ │ │ ├── 分类Classification --> ( 难度等级: [0.6576, 0.658) || 挂载数据: 无 ) +│ │ │ │ ├── K-近邻分类 --> ( 难度等级: [0.6576, 0.6577) || 挂载数据: 无 ) +│ │ │ │ ├── 贝叶斯分类 --> ( 难度等级: [0.6577, 0.6577) || 挂载数据: 无 ) +│ │ │ │ ├── 决策树分类 --> ( 难度等级: [0.6577, 0.6578) || 挂载数据: 无 ) +│ │ │ │ ├── 支持向量机分类 --> ( 难度等级: [0.6578, 0.6578) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 随机森林分类 --> ( 难度等级: [0.6578, 0.6579) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 集成学习Bagging/Boosting --> ( 难度等级: [0.6579, 0.6579) || 挂载数据: 无 ) +│ │ │ │ └── 神经网络模型 --> ( 难度等级: [0.6579, 0.658) || 挂载数据: 无 ) +│ │ │ ├── 回归Regression --> ( 难度等级: [0.658, 0.6583) || 挂载数据: 无 ) +│ │ │ │ ├── 线性回归 --> ( 难度等级: [0.658, 0.658) || 挂载数据: qa: 2 ) +│ │ │ │ ├── Lasso回归 --> ( 难度等级: [0.658, 0.6581) || 挂载数据: 无 ) +│ │ │ │ ├── 支持向量机回归 --> ( 难度等级: [0.6581, 0.6581) || 挂载数据: 无 ) +│ │ │ │ ├── K-近邻回归 --> ( 难度等级: [0.6581, 0.6582) || 挂载数据: 无 ) +│ │ │ │ ├── 决策树回归 --> ( 难度等级: [0.6582, 0.6582) || 挂载数据: 无 ) +│ │ │ │ ├── 随机森林回归 --> ( 难度等级: [0.6582, 0.6583) || 挂载数据: 无 ) +│ │ │ │ └── 逻辑回归 --> ( 难度等级: [0.6583, 0.6583) || 挂载数据: qa: 3 ) +│ │ │ ├── 聚类Clustering --> ( 难度等级: [0.6583, 0.6587) || 挂载数据: 无 ) +│ │ │ │ ├── K-Means聚类 --> ( 难度等级: [0.6583, 0.6584) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 均值漂移聚类 --> ( 难度等级: [0.6584, 0.6585) || 挂载数据: 无 ) +│ │ │ │ ├── 基于密度的空间聚类 --> ( 难度等级: [0.6585, 0.6585) || 挂载数据: 无 ) +│ │ │ │ ├── 谱聚类 --> ( 难度等级: [0.6585, 0.6586) || 挂载数据: 无 ) +│ │ │ │ └── 层次聚类 --> ( 难度等级: [0.6586, 0.6587) || 挂载数据: 无 ) +│ │ │ │ ├── 自下而上的方法 --> ( 难度等级: [0.6586, 0.6586) || 挂载数据: 无 ) +│ │ │ │ ├── 聚类之间的距离 --> ( 难度等级: [0.6586, 0.6586) || 挂载数据: qa: 2 ) +│ │ │ │ ├── 自上而下的方法 --> ( 难度等级: [0.6586, 0.6587) || 挂载数据: 无 ) +│ │ │ │ └── 图论方法 --> ( 难度等级: [0.6587, 0.6587) || 挂载数据: 无 ) +│ │ │ ├── 成分分解与降维 --> ( 难度等级: [0.6587, 0.659) || 挂载数据: 无 ) +│ │ │ │ ├── 主成分分析 --> ( 难度等级: [0.6587, 0.6588) || 挂载数据: 无 ) +│ │ │ │ ├── 因子分析 --> ( 难度等级: [0.6588, 0.6589) || 挂载数据: 无 ) +│ │ │ │ ├── 截断奇异值分解 --> ( 难度等级: [0.6589, 0.6589) || 挂载数据: 无 ) +│ │ │ │ └── 独立成分分析ICA(Independent Component Analysis) --> ( 难度等级: [0.6589, 0.659) || 挂载数据: 无 ) +│ │ │ └── 模型评估与参数调优 --> ( 难度等级: [0.659, 0.6594) || 挂载数据: 无 ) +│ │ │ ├── 估计器得分 --> ( 难度等级: [0.659, 0.6591) || 挂载数据: 无 ) +│ │ │ ├── 交叉验证 --> ( 难度等级: [0.6591, 0.6592) || 挂载数据: 无 ) +│ │ │ ├── 评价指标 --> ( 难度等级: [0.6592, 0.6592) || 挂载数据: 无 ) +│ │ │ ├── 参数调优 --> ( 难度等级: [0.6592, 0.6593) || 挂载数据: 无 ) +│ │ │ └── 模型持久化 --> ( 难度等级: [0.6593, 0.6594) || 挂载数据: 无 ) +│ │ ├── 深度学习 --> ( 难度等级: [0.6594, 0.6625) || 挂载数据: 无 ) +│ │ │ ├── 神经网络基础知识 --> ( 难度等级: [0.6594, 0.6598) || 挂载数据: 无 ) +│ │ │ │ ├── 人工智能发展历史 --> ( 难度等级: [0.6594, 0.6594) || 挂载数据: 无 ) +│ │ │ │ ├── 神经元 --> ( 难度等级: [0.6594, 0.6595) || 挂载数据: 无 ) +│ │ │ │ ├── BP神经网络 --> ( 难度等级: [0.6595, 0.6595) || 挂载数据: qa: 2 ) +│ │ │ │ ├── 梯度下降 --> ( 难度等级: [0.6595, 0.6596) || 挂载数据: 无 ) +│ │ │ │ ├── 激励函数 --> ( 难度等级: [0.6596, 0.6597) || 挂载数据: 无 ) +│ │ │ │ ├── 过拟合、欠拟合 --> ( 难度等级: [0.6597, 0.6597) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 优化器Optimizer --> ( 难度等级: [0.6597, 0.6598) || 挂载数据: 无 ) +│ │ │ │ └── 常用开发工具 --> ( 难度等级: [0.6598, 0.6598) || 挂载数据: qa: 1 ) +│ │ │ ├── 环境配置 --> ( 难度等级: [0.6598, 0.6603) || 挂载数据: 无 ) +│ │ │ │ ├── Windows搭建深度学习环境 --> ( 难度等级: [0.6598, 0.6599) || 挂载数据: 无 ) +│ │ │ │ ├── Linux搭建深度学习环境 --> ( 难度等级: [0.6599, 0.66) || 挂载数据: 无 ) +│ │ │ │ ├── MacOS搭建深度学习环境 --> ( 难度等级: [0.66, 0.6602) || 挂载数据: 无 ) +│ │ │ │ └── CPU/GPU环境搭建 --> ( 难度等级: [0.6602, 0.6603) || 挂载数据: qa: 2 ) +│ │ │ ├── Theano --> ( 难度等级: [0.6603, 0.6607) || 挂载数据: 无 ) +│ │ │ │ ├── Theano基础知识 --> ( 难度等级: [0.6603, 0.6603) || 挂载数据: qa: 2 ) +│ │ │ │ ├── 定义Layer --> ( 难度等级: [0.6603, 0.6604) || 挂载数据: 无 ) +│ │ │ │ ├── CNN --> ( 难度等级: [0.6604, 0.6605) || 挂载数据: 无 ) +│ │ │ │ ├── RNN(GRU/LSTM) --> ( 难度等级: [0.6605, 0.6605) || 挂载数据: 无 ) +│ │ │ │ ├── Autoencoder --> ( 难度等级: [0.6605, 0.6606) || 挂载数据: 无 ) +│ │ │ │ ├── 神经网络参数保存 --> ( 难度等级: [0.6606, 0.6607) || 挂载数据: 无 ) +│ │ │ │ └── 神经网络性能评价 --> ( 难度等级: [0.6607, 0.6607) || 挂载数据: 无 ) +│ │ │ ├── TensorFlow --> ( 难度等级: [0.6607, 0.6612) || 挂载数据: 无 ) +│ │ │ │ ├── TensorFlow基础知识 --> ( 难度等级: [0.6607, 0.6607) || 挂载数据: qa: 5 ) +│ │ │ │ ├── Tensor --> ( 难度等级: [0.6607, 0.6608) || 挂载数据: 无 ) +│ │ │ │ ├── Session --> ( 难度等级: [0.6608, 0.6608) || 挂载数据: 无 ) +│ │ │ │ ├── Variable --> ( 难度等级: [0.6608, 0.6609) || 挂载数据: 无 ) +│ │ │ │ ├── Placeholder --> ( 难度等级: [0.6609, 0.6609) || 挂载数据: qa: 1 ) +│ │ │ │ ├── Dropout --> ( 难度等级: [0.6609, 0.6609) || 挂载数据: 无 ) +│ │ │ │ ├── Tensorboard --> ( 难度等级: [0.6609, 0.661) || 挂载数据: 无 ) +│ │ │ │ ├── CNN --> ( 难度等级: [0.661, 0.661) || 挂载数据: 无 ) +│ │ │ │ ├── RNN(GRU/LSTM) --> ( 难度等级: [0.661, 0.661) || 挂载数据: 无 ) +│ │ │ │ ├── Autoencoder --> ( 难度等级: [0.661, 0.6611) || 挂载数据: 无 ) +│ │ │ │ ├── GNN --> ( 难度等级: [0.6611, 0.6611) || 挂载数据: 无 ) +│ │ │ │ ├── 神经网络参数保存 --> ( 难度等级: [0.6611, 0.6611) || 挂载数据: 无 ) +│ │ │ │ └── 神经网络性能评价 --> ( 难度等级: [0.6611, 0.6612) || 挂载数据: 无 ) +│ │ │ ├── Keras --> ( 难度等级: [0.6612, 0.6616) || 挂载数据: 无 ) +│ │ │ │ ├── Keras基础语法 --> ( 难度等级: [0.6612, 0.6612) || 挂载数据: qa: 4 ) +│ │ │ │ ├── 兼容Backend --> ( 难度等级: [0.6612, 0.6612) || 挂载数据: 无 ) +│ │ │ │ ├── 函数模型和序列模型 --> ( 难度等级: [0.6612, 0.6613) || 挂载数据: 无 ) +│ │ │ │ ├── 定义Layer --> ( 难度等级: [0.6613, 0.6613) || 挂载数据: 无 ) +│ │ │ │ ├── CNN --> ( 难度等级: [0.6613, 0.6613) || 挂载数据: 无 ) +│ │ │ │ ├── RNN(GRU/LSTM) --> ( 难度等级: [0.6613, 0.6614) || 挂载数据: qa: 1 ) +│ │ │ │ ├── Autoencoder --> ( 难度等级: [0.6614, 0.6614) || 挂载数据: 无 ) +│ │ │ │ ├── GNN --> ( 难度等级: [0.6614, 0.6614) || 挂载数据: 无 ) +│ │ │ │ ├── 迁移学习 --> ( 难度等级: [0.6614, 0.6615) || 挂载数据: 无 ) +│ │ │ │ ├── BiLSTM-Attention --> ( 难度等级: [0.6615, 0.6615) || 挂载数据: 无 ) +│ │ │ │ ├── 生成对抗网络GAN --> ( 难度等级: [0.6615, 0.6615) || 挂载数据: 无 ) +│ │ │ │ ├── 神经网络参数保存 --> ( 难度等级: [0.6615, 0.6616) || 挂载数据: 无 ) +│ │ │ │ └── 神经网络性能评价 --> ( 难度等级: [0.6616, 0.6616) || 挂载数据: 无 ) +│ │ │ ├── PyTorch --> ( 难度等级: [0.6616, 0.6621) || 挂载数据: 无 ) +│ │ │ │ ├── PyTorch基础知识 --> ( 难度等级: [0.6616, 0.6616) || 挂载数据: 无 ) +│ │ │ │ ├── Tensor --> ( 难度等级: [0.6616, 0.6617) || 挂载数据: 无 ) +│ │ │ │ ├── Variable --> ( 难度等级: [0.6617, 0.6617) || 挂载数据: 无 ) +│ │ │ │ ├── 定义Layer --> ( 难度等级: [0.6617, 0.6617) || 挂载数据: 无 ) +│ │ │ │ ├── 可视化 --> ( 难度等级: [0.6617, 0.6618) || 挂载数据: 无 ) +│ │ │ │ ├── CNN(TextCNN) --> ( 难度等级: [0.6618, 0.6618) || 挂载数据: 无 ) +│ │ │ │ ├── RNN(GRU/LSTM) --> ( 难度等级: [0.6618, 0.6618) || 挂载数据: 无 ) +│ │ │ │ ├── Autoencoder --> ( 难度等级: [0.6618, 0.6619) || 挂载数据: 无 ) +│ │ │ │ ├── GNN/GCN --> ( 难度等级: [0.6619, 0.6619) || 挂载数据: 无 ) +│ │ │ │ ├── 迁移学习 --> ( 难度等级: [0.6619, 0.662) || 挂载数据: 无 ) +│ │ │ │ ├── 生成对抗网络GAN --> ( 难度等级: [0.662, 0.662) || 挂载数据: 无 ) +│ │ │ │ ├── 神经网络参数保存 --> ( 难度等级: [0.662, 0.662) || 挂载数据: 无 ) +│ │ │ │ └── 神经网络性能评价 --> ( 难度等级: [0.662, 0.6621) || 挂载数据: 无 ) +│ │ │ └── 强化学习 --> ( 难度等级: [0.6621, 0.6625) || 挂载数据: qa: 1 ) +│ │ │ ├── 强化学习概念 --> ( 难度等级: [0.6621, 0.6621) || 挂载数据: qa: 10 ) +│ │ │ ├── Q-Learning --> ( 难度等级: [0.6621, 0.6622) || 挂载数据: qa: 1 ) +│ │ │ ├── Sarsa --> ( 难度等级: [0.6622, 0.6623) || 挂载数据: 无 ) +│ │ │ ├── DQN(Deep Q Network) --> ( 难度等级: [0.6623, 0.6624) || 挂载数据: qa: 1 ) +│ │ │ ├── Policy Gradients --> ( 难度等级: [0.6624, 0.6624) || 挂载数据: 无 ) +│ │ │ └── Actor Critic --> ( 难度等级: [0.6624, 0.6625) || 挂载数据: 无 ) +│ │ ├── 计算机视觉 --> ( 难度等级: [0.6625, 0.6656) || 挂载数据: 无 ) +│ │ │ ├── 数字图像处理基础 --> ( 难度等级: [0.6625, 0.6626) || 挂载数据: 无 ) +│ │ │ │ ├── 数字图像处理 --> ( 难度等级: [0.6625, 0.6625) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 图像三要素 --> ( 难度等级: [0.6625, 0.6626) || 挂载数据: 无 ) +│ │ │ │ ├── 像素及图像类型 --> ( 难度等级: [0.6626, 0.6626) || 挂载数据: 无 ) +│ │ │ │ └── 图像信号数字转换 --> ( 难度等级: [0.6626, 0.6626) || 挂载数据: 无 ) +│ │ │ ├── OpenCV基础 --> ( 难度等级: [0.6626, 0.6627) || 挂载数据: 无 ) +│ │ │ │ ├── 安装配置 --> ( 难度等级: [0.6626, 0.6627) || 挂载数据: 无 ) +│ │ │ │ ├── OpenCV基础语法 --> ( 难度等级: [0.6627, 0.6627) || 挂载数据: qa: 10 ) +│ │ │ │ └── 几何图形绘制 --> ( 难度等级: [0.6627, 0.6627) || 挂载数据: 无 ) +│ │ │ ├── 图像处理入门 --> ( 难度等级: [0.6627, 0.6629) || 挂载数据: 无 ) +│ │ │ │ ├── 读取显示图像 --> ( 难度等级: [0.6627, 0.6628) || 挂载数据: 无 ) +│ │ │ │ ├── 读取修改像素 --> ( 难度等级: [0.6628, 0.6628) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 创建复制保存图像 --> ( 难度等级: [0.6628, 0.6628) || 挂载数据: 无 ) +│ │ │ │ └── 获取图像属性及通道 --> ( 难度等级: [0.6628, 0.6629) || 挂载数据: 无 ) +│ │ │ ├── 图像算数与逻辑运算 --> ( 难度等级: [0.6629, 0.663) || 挂载数据: 无 ) +│ │ │ │ ├── 图像加法运算 --> ( 难度等级: [0.6629, 0.6629) || 挂载数据: 无 ) +│ │ │ │ ├── 图像减法运算 --> ( 难度等级: [0.6629, 0.6629) || 挂载数据: 无 ) +│ │ │ │ ├── 图像与运算 --> ( 难度等级: [0.6629, 0.6629) || 挂载数据: 无 ) +│ │ │ │ ├── 图像或运算 --> ( 难度等级: [0.6629, 0.6629) || 挂载数据: 无 ) +│ │ │ │ ├── 图像异或运算 --> ( 难度等级: [0.6629, 0.663) || 挂载数据: 无 ) +│ │ │ │ └── 图像非运算 --> ( 难度等级: [0.663, 0.663) || 挂载数据: 无 ) +│ │ │ ├── 图像几何变换 --> ( 难度等级: [0.663, 0.6631) || 挂载数据: 无 ) +│ │ │ │ ├── 平移变换 --> ( 难度等级: [0.663, 0.663) || 挂载数据: 无 ) +│ │ │ │ ├── 缩放变换 --> ( 难度等级: [0.663, 0.663) || 挂载数据: 无 ) +│ │ │ │ ├── 旋转变换 --> ( 难度等级: [0.663, 0.663) || 挂载数据: 无 ) +│ │ │ │ ├── 镜像变换 --> ( 难度等级: [0.663, 0.6631) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 仿射变换 --> ( 难度等级: [0.6631, 0.6631) || 挂载数据: qa: 1 ) +│ │ │ │ └── 透视变换 --> ( 难度等级: [0.6631, 0.6631) || 挂载数据: qa: 1 ) +│ │ │ ├── 图像量化与采样 --> ( 难度等级: [0.6631, 0.6632) || 挂载数据: 无 ) +│ │ │ │ ├── 图像量化处理 --> ( 难度等级: [0.6631, 0.6631) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 图像采样处理 --> ( 难度等级: [0.6631, 0.6632) || 挂载数据: 无 ) +│ │ │ │ ├── 图像金字塔 --> ( 难度等级: [0.6632, 0.6632) || 挂载数据: qa: 1 ) +│ │ │ │ └── 局部马赛克处理 --> ( 难度等级: [0.6632, 0.6632) || 挂载数据: 无 ) +│ │ │ ├── 直方图统计 --> ( 难度等级: [0.6632, 0.6633) || 挂载数据: 无 ) +│ │ │ │ ├── 直方图概述 --> ( 难度等级: [0.6632, 0.6632) || 挂载数据: 无 ) +│ │ │ │ ├── 直方图绘制 --> ( 难度等级: [0.6632, 0.6633) || 挂载数据: 无 ) +│ │ │ │ ├── 掩膜直方图 --> ( 难度等级: [0.6633, 0.6633) || 挂载数据: 无 ) +│ │ │ │ ├── H-S直方图 --> ( 难度等级: [0.6633, 0.6633) || 挂载数据: qa: 1 ) +│ │ │ │ └── 直方图对比 --> ( 难度等级: [0.6633, 0.6633) || 挂载数据: 无 ) +│ │ │ ├── 图像增强 --> ( 难度等级: [0.6633, 0.6635) || 挂载数据: 无 ) +│ │ │ │ ├── 图像增强 --> ( 难度等级: [0.6633, 0.6634) || 挂载数据: 无 ) +│ │ │ │ ├── 直方图均衡化 --> ( 难度等级: [0.6634, 0.6634) || 挂载数据: 无 ) +│ │ │ │ ├── 局部直方图均衡化 --> ( 难度等级: [0.6634, 0.6634) || 挂载数据: 无 ) +│ │ │ │ ├── 自动色彩均衡化 --> ( 难度等级: [0.6634, 0.6634) || 挂载数据: 无 ) +│ │ │ │ └── 图像去雾 --> ( 难度等级: [0.6634, 0.6635) || 挂载数据: 无 ) +│ │ │ ├── 图像平滑 --> ( 难度等级: [0.6635, 0.6636) || 挂载数据: 无 ) +│ │ │ │ ├── 图像平滑概述 --> ( 难度等级: [0.6635, 0.6635) || 挂载数据: 无 ) +│ │ │ │ ├── 均值滤波 --> ( 难度等级: [0.6635, 0.6635) || 挂载数据: 无 ) +│ │ │ │ ├── 方框滤波 --> ( 难度等级: [0.6635, 0.6635) || 挂载数据: 无 ) +│ │ │ │ ├── 高斯滤波 --> ( 难度等级: [0.6635, 0.6635) || 挂载数据: 无 ) +│ │ │ │ ├── 中值滤波 --> ( 难度等级: [0.6635, 0.6636) || 挂载数据: 无 ) +│ │ │ │ └── 双边滤波 --> ( 难度等级: [0.6636, 0.6636) || 挂载数据: 无 ) +│ │ │ ├── 图像锐化及边缘检测 --> ( 难度等级: [0.6636, 0.6637) || 挂载数据: 无 ) +│ │ │ │ ├── 一阶微分算法、二阶微分算子 --> ( 难度等级: [0.6636, 0.6636) || 挂载数据: 无 ) +│ │ │ │ ├── Roberts算子 --> ( 难度等级: [0.6636, 0.6636) || 挂载数据: 无 ) +│ │ │ │ ├── Prewitt算子 --> ( 难度等级: [0.6636, 0.6636) || 挂载数据: 无 ) +│ │ │ │ ├── Sobel算子 --> ( 难度等级: [0.6636, 0.6636) || 挂载数据: 无 ) +│ │ │ │ ├── Laplacian算子 --> ( 难度等级: [0.6636, 0.6637) || 挂载数据: 无 ) +│ │ │ │ ├── Scharr算子 --> ( 难度等级: [0.6637, 0.6637) || 挂载数据: 无 ) +│ │ │ │ ├── Canny算子 --> ( 难度等级: [0.6637, 0.6637) || 挂载数据: 无 ) +│ │ │ │ └── LOG算子 --> ( 难度等级: [0.6637, 0.6637) || 挂载数据: qa: 3 ) +│ │ │ ├── 图像形态学处理 --> ( 难度等级: [0.6637, 0.6638) || 挂载数据: 无 ) +│ │ │ │ ├── 图像腐蚀 --> ( 难度等级: [0.6637, 0.6637) || 挂载数据: 无 ) +│ │ │ │ ├── 图像膨胀 --> ( 难度等级: [0.6637, 0.6637) || 挂载数据: 无 ) +│ │ │ │ ├── 图像开运算 --> ( 难度等级: [0.6637, 0.6638) || 挂载数据: 无 ) +│ │ │ │ ├── 图像闭运算 --> ( 难度等级: [0.6638, 0.6638) || 挂载数据: 无 ) +│ │ │ │ ├── 图像梯度运算 --> ( 难度等级: [0.6638, 0.6638) || 挂载数据: 无 ) +│ │ │ │ ├── 图像顶帽运算 --> ( 难度等级: [0.6638, 0.6638) || 挂载数据: 无 ) +│ │ │ │ └── 图像底帽运算 --> ( 难度等级: [0.6638, 0.6638) || 挂载数据: 无 ) +│ │ │ ├── 图像分割 --> ( 难度等级: [0.6638, 0.6639) || 挂载数据: 无 ) +│ │ │ │ ├── 基于阈值的图像分割 --> ( 难度等级: [0.6638, 0.6638) || 挂载数据: qa: 4 ) +│ │ │ │ ├── 基于边缘检测的图像分割 --> ( 难度等级: [0.6638, 0.6639) || 挂载数据: 无 ) +│ │ │ │ ├── 基于纹理背景的图像分割 --> ( 难度等级: [0.6639, 0.6639) || 挂载数据: 无 ) +│ │ │ │ ├── 基于K-Means聚类的区域分割 --> ( 难度等级: [0.6639, 0.6639) || 挂载数据: 无 ) +│ │ │ │ ├── 基于均值漂移算法的图像分割 --> ( 难度等级: [0.6639, 0.6639) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 基于分水岭算法的图像分割 --> ( 难度等级: [0.6639, 0.6639) || 挂载数据: 无 ) +│ │ │ │ ├── 图像漫水填充分割 --> ( 难度等级: [0.6639, 0.6639) || 挂载数据: 无 ) +│ │ │ │ └── 文字区域分割及定位 --> ( 难度等级: [0.6639, 0.6639) || 挂载数据: 无 ) +│ │ │ ├── 傅里叶变换 --> ( 难度等级: [0.6639, 0.6641) || 挂载数据: 无 ) +│ │ │ │ ├── 傅里叶变换 --> ( 难度等级: [0.6639, 0.664) || 挂载数据: qa: 2 ) +│ │ │ │ ├── 傅里叶逆变换 --> ( 难度等级: [0.664, 0.664) || 挂载数据: 无 ) +│ │ │ │ ├── 高通滤波器 --> ( 难度等级: [0.664, 0.664) || 挂载数据: 无 ) +│ │ │ │ └── 低通滤波器 --> ( 难度等级: [0.664, 0.6641) || 挂载数据: 无 ) +│ │ │ ├── 霍夫变换 --> ( 难度等级: [0.6641, 0.6642) || 挂载数据: 无 ) +│ │ │ │ ├── 霍夫变换 --> ( 难度等级: [0.6641, 0.6641) || 挂载数据: 无 ) +│ │ │ │ ├── 霍夫线变换 --> ( 难度等级: [0.6641, 0.6641) || 挂载数据: 无 ) +│ │ │ │ └── 霍夫圆变换 --> ( 难度等级: [0.6641, 0.6642) || 挂载数据: 无 ) +│ │ │ ├── 图像特效处理 --> ( 难度等级: [0.6642, 0.6643) || 挂载数据: 无 ) +│ │ │ │ ├── 图像毛玻璃特效 --> ( 难度等级: [0.6642, 0.6642) || 挂载数据: 无 ) +│ │ │ │ ├── 图像浮雕特效 --> ( 难度等级: [0.6642, 0.6642) || 挂载数据: 无 ) +│ │ │ │ ├── 图像素描特效 --> ( 难度等级: [0.6642, 0.6642) || 挂载数据: 无 ) +│ │ │ │ ├── 图像怀旧特效 --> ( 难度等级: [0.6642, 0.6642) || 挂载数据: 无 ) +│ │ │ │ ├── 图像流年特效 --> ( 难度等级: [0.6642, 0.6643) || 挂载数据: 无 ) +│ │ │ │ ├── 图像滤镜特效 --> ( 难度等级: [0.6643, 0.6643) || 挂载数据: 无 ) +│ │ │ │ ├── 图像水波特效 --> ( 难度等级: [0.6643, 0.6643) || 挂载数据: 无 ) +│ │ │ │ └── 图像卡通特效 --> ( 难度等级: [0.6643, 0.6643) || 挂载数据: 无 ) +│ │ │ ├── 图像分类 --> ( 难度等级: [0.6643, 0.6644) || 挂载数据: 无 ) +│ │ │ │ ├── 图像分类概述 --> ( 难度等级: [0.6643, 0.6643) || 挂载数据: 无 ) +│ │ │ │ ├── 基于机器学习的图像分类 --> ( 难度等级: [0.6643, 0.6643) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 基于深度学习的图像分类 --> ( 难度等级: [0.6643, 0.6644) || 挂载数据: qa: 2 ) +│ │ │ │ ├── LeNet --> ( 难度等级: [0.6644, 0.6644) || 挂载数据: 无 ) +│ │ │ │ ├── VGG --> ( 难度等级: [0.6644, 0.6644) || 挂载数据: 无 ) +│ │ │ │ ├── AlexNet --> ( 难度等级: [0.6644, 0.6644) || 挂载数据: 无 ) +│ │ │ │ └── ResNet --> ( 难度等级: [0.6644, 0.6644) || 挂载数据: qa: 1 ) +│ │ │ ├── 人脸识别 --> ( 难度等级: [0.6644, 0.6645) || 挂载数据: 无 ) +│ │ │ ├── 目标检测 --> ( 难度等级: [0.6645, 0.6647) || 挂载数据: 无 ) +│ │ │ │ ├── 目标检测概述 --> ( 难度等级: [0.6645, 0.6646) || 挂载数据: qa: 3 ) +│ │ │ │ ├── RCNN --> ( 难度等级: [0.6646, 0.6646) || 挂载数据: 无 ) +│ │ │ │ ├── Fast-RCNN --> ( 难度等级: [0.6646, 0.6646) || 挂载数据: 无 ) +│ │ │ │ ├── SPPNet --> ( 难度等级: [0.6646, 0.6646) || 挂载数据: 无 ) +│ │ │ │ ├── Mask-RCNN --> ( 难度等级: [0.6646, 0.6646) || 挂载数据: qa: 2 ) +│ │ │ │ ├── SSD --> ( 难度等级: [0.6646, 0.6646) || 挂载数据: 无 ) +│ │ │ │ └── YOLO系列算法 --> ( 难度等级: [0.6646, 0.6647) || 挂载数据: qa: 1 ) +│ │ │ ├── 深度神经网络概述 --> ( 难度等级: [0.6647, 0.6648) || 挂载数据: 无 ) +│ │ │ │ ├── 创建神经网络块 --> ( 难度等级: [0.6647, 0.6647) || 挂载数据: 无 ) +│ │ │ │ ├── TensorFlow介绍 --> ( 难度等级: [0.6647, 0.6647) || 挂载数据: 无 ) +│ │ │ │ ├── MNIST数据集介绍 --> ( 难度等级: [0.6647, 0.6647) || 挂载数据: 无 ) +│ │ │ │ ├── Keras深度学习库概述 --> ( 难度等级: [0.6647, 0.6647) || 挂载数据: 无 ) +│ │ │ │ ├── 基于Keras和MNIST的手写数字识别 --> ( 难度等级: [0.6647, 0.6648) || 挂载数据: qa: 1 ) +│ │ │ │ │ ├── 训练和测试数据的检索 --> ( 难度等级: [0.6647, 0.6647) || 挂载数据: 无 ) +│ │ │ │ │ ├── 训练数据的可视化 --> ( 难度等级: [0.6647, 0.6648) || 挂载数据: qa: 1 ) +│ │ │ │ │ ├── 创建神经网络 --> ( 难度等级: [0.6648, 0.6648) || 挂载数据: 无 ) +│ │ │ │ │ ├── 训练神经网络 --> ( 难度等级: [0.6648, 0.6648) || 挂载数据: qa: 2 ) +│ │ │ │ │ └── 测试 --> ( 难度等级: [0.6648, 0.6648) || 挂载数据: 无 ) +│ │ │ │ └── 理解反向传播 --> ( 难度等级: [0.6648, 0.6648) || 挂载数据: 无 ) +│ │ │ ├── 卷积神经网络介绍 --> ( 难度等级: [0.6648, 0.6649) || 挂载数据: 无 ) +│ │ │ │ ├── CNN历史 --> ( 难度等级: [0.6648, 0.6648) || 挂载数据: 无 ) +│ │ │ │ └── 卷积神经网络 --> ( 难度等级: [0.6648, 0.6649) || 挂载数据: 无 ) +│ │ │ │ ├── 计算机如何解释图像 --> ( 难度等级: [0.6648, 0.6649) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 编码实现图像可视化 --> ( 难度等级: [0.6649, 0.6649) || 挂载数据: 无 ) +│ │ │ │ ├── dropout --> ( 难度等级: [0.6649, 0.6649) || 挂载数据: 无 ) +│ │ │ │ ├── 输入层 --> ( 难度等级: [0.6649, 0.6649) || 挂载数据: 无 ) +│ │ │ │ ├── 卷积层 --> ( 难度等级: [0.6649, 0.6649) || 挂载数据: 无 ) +│ │ │ │ └── 池化层 --> ( 难度等级: [0.6649, 0.6649) || 挂载数据: 无 ) +│ │ │ ├── 构建CNN并进行性能优化 --> ( 难度等级: [0.6649, 0.665) || 挂载数据: 无 ) +│ │ │ │ ├── CNN架构和DNN的缺点 --> ( 难度等级: [0.6649, 0.6649) || 挂载数据: 无 ) +│ │ │ │ │ ├── 卷积操作 --> ( 难度等级: [0.6649, 0.6649) || 挂载数据: 无 ) +│ │ │ │ │ └── 池化、步长和填充操作 --> ( 难度等级: [0.6649, 0.6649) || 挂载数据: 无 ) +│ │ │ │ ├── TensorFlow中的卷积和池化操作 --> ( 难度等级: [0.6649, 0.665) || 挂载数据: 无 ) +│ │ │ │ │ ├── 在TensorFlow中应用池化操作 --> ( 难度等级: [0.6649, 0.6649) || 挂载数据: 无 ) +│ │ │ │ │ └── TensorFlow中的卷积操作 --> ( 难度等级: [0.6649, 0.665) || 挂载数据: 无 ) +│ │ │ │ ├── 训练CNN --> ( 难度等级: [0.665, 0.665) || 挂载数据: qa: 1 ) +│ │ │ │ │ ├── 初始化权重和偏置 --> ( 难度等级: [0.665, 0.665) || 挂载数据: 无 ) +│ │ │ │ │ ├── 正则化 --> ( 难度等级: [0.665, 0.665) || 挂载数据: 无 ) +│ │ │ │ │ └── 激活函数 --> ( 难度等级: [0.665, 0.665) || 挂载数据: 无 ) +│ │ │ │ └── 模型性能优化 --> ( 难度等级: [0.665, 0.665) || 挂载数据: 无 ) +│ │ │ │ ├── 隐含层数量 --> ( 难度等级: [0.665, 0.665) || 挂载数据: 无 ) +│ │ │ │ ├── 每个隐含层的神经元个数 --> ( 难度等级: [0.665, 0.665) || 挂载数据: 无 ) +│ │ │ │ ├── 批标准化 --> ( 难度等级: [0.665, 0.665) || 挂载数据: 无 ) +│ │ │ │ ├── 高级正则化及过拟合的避免 --> ( 难度等级: [0.665, 0.665) || 挂载数据: 无 ) +│ │ │ │ ├── 运用哪个优化器 --> ( 难度等级: [0.665, 0.665) || 挂载数据: qa: 5 ) +│ │ │ │ ├── 内存调优 --> ( 难度等级: [0.665, 0.665) || 挂载数据: 无 ) +│ │ │ │ ├── 层的位置调优 --> ( 难度等级: [0.665, 0.665) || 挂载数据: 无 ) +│ │ │ │ ├── 综合所有操作创建第二个CNN --> ( 难度等级: [0.665, 0.665) || 挂载数据: 无 ) +│ │ │ │ ├── 数据集描述和预处理 --> ( 难度等级: [0.665, 0.665) || 挂载数据: 无 ) +│ │ │ │ └── 创建CNN模型 --> ( 难度等级: [0.665, 0.665) || 挂载数据: qa: 2 ) +│ │ │ ├── 经典的CNN模型架构 --> ( 难度等级: [0.665, 0.6651) || 挂载数据: 无 ) +│ │ │ │ ├── ImageNet介绍 --> ( 难度等级: [0.665, 0.665) || 挂载数据: 无 ) +│ │ │ │ ├── AlexNet架构 --> ( 难度等级: [0.665, 0.6651) || 挂载数据: 无 ) +│ │ │ │ ├── VGGNet架构 --> ( 难度等级: [0.6651, 0.6651) || 挂载数据: 无 ) +│ │ │ │ ├── GoogLeNet架构 --> ( 难度等级: [0.6651, 0.6651) || 挂载数据: 无 ) +│ │ │ │ │ ├── 架构洞察 --> ( 难度等级: [0.6651, 0.6651) || 挂载数据: 无 ) +│ │ │ │ │ └── inception模块 --> ( 难度等级: [0.6651, 0.6651) || 挂载数据: 无 ) +│ │ │ │ └── ResNet架构 --> ( 难度等级: [0.6651, 0.6651) || 挂载数据: 无 ) +│ │ │ ├── 转移学习 --> ( 难度等级: [0.6651, 0.6653) || 挂载数据: 无 ) +│ │ │ │ ├── 特征提取方法 --> ( 难度等级: [0.6651, 0.6652) || 挂载数据: 无 ) +│ │ │ │ │ ├── 目标数据集较小且与原始训练集相似 --> ( 难度等级: [0.6651, 0.6652) || 挂载数据: 无 ) +│ │ │ │ │ ├── 目标数据集较小且与原始训练集不同 --> ( 难度等级: [0.6652, 0.6652) || 挂载数据: 无 ) +│ │ │ │ │ ├── 目标数据集很大且与原始训练集相似 --> ( 难度等级: [0.6652, 0.6652) || 挂载数据: 无 ) +│ │ │ │ │ └── 目标数据集很大且与原始训练集不同 --> ( 难度等级: [0.6652, 0.6652) || 挂载数据: 无 ) +│ │ │ │ ├── 转移学习示例 --> ( 难度等级: [0.6652, 0.6652) || 挂载数据: 无 ) +│ │ │ │ └── 多任务学习 --> ( 难度等级: [0.6652, 0.6653) || 挂载数据: 无 ) +│ │ │ ├── CNN自编码器 --> ( 难度等级: [0.6653, 0.6654) || 挂载数据: 无 ) +│ │ │ │ ├── 自编码器介绍 --> ( 难度等级: [0.6653, 0.6653) || 挂载数据: 无 ) +│ │ │ │ ├── 卷积自编码器 --> ( 难度等级: [0.6653, 0.6653) || 挂载数据: 无 ) +│ │ │ │ └── 应用 --> ( 难度等级: [0.6653, 0.6654) || 挂载数据: 无 ) +│ │ │ ├── GAN:使用CNN生成新图像 --> ( 难度等级: [0.6654, 0.6655) || 挂载数据: 无 ) +│ │ │ │ ├── Pix2pix:基于GAN的图像翻译 --> ( 难度等级: [0.6654, 0.6654) || 挂载数据: 无 ) +│ │ │ │ │ ├── CycleGAN --> ( 难度等级: [0.6654, 0.6654) || 挂载数据: 无 ) +│ │ │ │ │ └── 训练GAN模型 --> ( 难度等级: [0.6654, 0.6654) || 挂载数据: qa: 2 ) +│ │ │ │ ├── GAN的代码示例 --> ( 难度等级: [0.6654, 0.6655) || 挂载数据: 无 ) +│ │ │ │ │ ├── 计算损失 --> ( 难度等级: [0.6654, 0.6654) || 挂载数据: 无 ) +│ │ │ │ │ └── 半监督学习和GAN --> ( 难度等级: [0.6654, 0.6655) || 挂载数据: 无 ) +│ │ │ │ └── 特征匹配 --> ( 难度等级: [0.6655, 0.6655) || 挂载数据: 无 ) +│ │ │ │ ├── 基于半监督分类的GAN示例 --> ( 难度等级: [0.6655, 0.6655) || 挂载数据: 无 ) +│ │ │ │ └── 深度卷积GAN --> ( 难度等级: [0.6655, 0.6655) || 挂载数据: 无 ) +│ │ │ └── CNN和视觉模型的注意力机制 --> ( 难度等级: [0.6655, 0.6656) || 挂载数据: 无 ) +│ │ │ ├── 图像描述中的注意力机制 --> ( 难度等级: [0.6655, 0.6655) || 挂载数据: 无 ) +│ │ │ ├── 注意力类型 --> ( 难度等级: [0.6655, 0.6656) || 挂载数据: 无 ) +│ │ │ │ ├── 硬注意力 --> ( 难度等级: [0.6655, 0.6655) || 挂载数据: 无 ) +│ │ │ │ └── 软注意力 --> ( 难度等级: [0.6655, 0.6656) || 挂载数据: 无 ) +│ │ │ ├── 运用注意力改善视觉模型 --> ( 难度等级: [0.6656, 0.6656) || 挂载数据: 无 ) +│ │ │ │ ├── 视觉CNN模型次优性能的原因 --> ( 难度等级: [0.6656, 0.6656) || 挂载数据: 无 ) +│ │ │ │ └── 循环视觉注意力模型 --> ( 难度等级: [0.6656, 0.6656) || 挂载数据: qa: 2 ) +│ │ │ └── 参考文献 --> ( 难度等级: [0.6656, 0.6656) || 挂载数据: 无 ) +│ │ ├── 自然语言处理 --> ( 难度等级: [0.6656, 0.6687) || 挂载数据: 无 ) +│ │ │ ├── 自然语言处理概览 --> ( 难度等级: [0.6656, 0.6658) || 挂载数据: 无 ) +│ │ │ │ ├── 自然语言处理的基本概念 --> ( 难度等级: [0.6656, 0.6657) || 挂载数据: 无 ) +│ │ │ │ ├── 自然语言处理的面临困难 --> ( 难度等级: [0.6657, 0.6657) || 挂载数据: 无 ) +│ │ │ │ └── 自然语言处理的研究现状 --> ( 难度等级: [0.6657, 0.6658) || 挂载数据: qa: 1 ) +│ │ │ ├── 预备知识 --> ( 难度等级: [0.6658, 0.666) || 挂载数据: 无 ) +│ │ │ │ ├── 概率论基础知识 --> ( 难度等级: [0.6658, 0.6658) || 挂载数据: 无 ) +│ │ │ │ ├── 最大似然估计 --> ( 难度等级: [0.6658, 0.6658) || 挂载数据: 无 ) +│ │ │ │ ├── 隐马尔可夫模型 --> ( 难度等级: [0.6658, 0.6658) || 挂载数据: 无 ) +│ │ │ │ ├── 贝叶斯网络 --> ( 难度等级: [0.6658, 0.6658) || 挂载数据: 无 ) +│ │ │ │ ├── 条件概率分布 --> ( 难度等级: [0.6658, 0.6659) || 挂载数据: 无 ) +│ │ │ │ ├── 信息论基础知识 --> ( 难度等级: [0.6659, 0.6659) || 挂载数据: 无 ) +│ │ │ │ ├── 熵 --> ( 难度等级: [0.6659, 0.6659) || 挂载数据: 无 ) +│ │ │ │ ├── 困惑度 --> ( 难度等级: [0.6659, 0.6659) || 挂载数据: 无 ) +│ │ │ │ ├── 互信息 --> ( 难度等级: [0.6659, 0.6659) || 挂载数据: 无 ) +│ │ │ │ ├── 神经网络基础知识 --> ( 难度等级: [0.6659, 0.6659) || 挂载数据: 无 ) +│ │ │ │ ├── CRF --> ( 难度等级: [0.6659, 0.6659) || 挂载数据: 无 ) +│ │ │ │ ├── BiLSTM+Attention --> ( 难度等级: [0.6659, 0.6659) || 挂载数据: 无 ) +│ │ │ │ ├── 迁移学习 --> ( 难度等级: [0.6659, 0.666) || 挂载数据: 无 ) +│ │ │ │ └── 常用语料库和知识库 --> ( 难度等级: [0.666, 0.666) || 挂载数据: 无 ) +│ │ │ ├── jieba --> ( 难度等级: [0.666, 0.6661) || 挂载数据: qa: 1 ) +│ │ │ │ ├── jieba概述 --> ( 难度等级: [0.666, 0.666) || 挂载数据: 无 ) +│ │ │ │ ├── jieba分词 --> ( 难度等级: [0.666, 0.666) || 挂载数据: qa: 2 ) +│ │ │ │ ├── jieba添加自定义词典 --> ( 难度等级: [0.666, 0.6661) || 挂载数据: 无 ) +│ │ │ │ ├── jieba词性标注 --> ( 难度等级: [0.6661, 0.6661) || 挂载数据: 无 ) +│ │ │ │ └── jieba关键词抽取 --> ( 难度等级: [0.6661, 0.6661) || 挂载数据: 无 ) +│ │ │ ├── nltk --> ( 难度等级: [0.6661, 0.6663) || 挂载数据: 无 ) +│ │ │ │ ├── nltk概述 --> ( 难度等级: [0.6661, 0.6662) || 挂载数据: 无 ) +│ │ │ │ ├── nltk字符串处理 --> ( 难度等级: [0.6662, 0.6662) || 挂载数据: 无 ) +│ │ │ │ ├── nltk词性标注 --> ( 难度等级: [0.6662, 0.6662) || 挂载数据: 无 ) +│ │ │ │ ├── nltk词干提取 --> ( 难度等级: [0.6662, 0.6662) || 挂载数据: 无 ) +│ │ │ │ ├── nltk命名实体识别 --> ( 难度等级: [0.6662, 0.6663) || 挂载数据: 无 ) +│ │ │ │ ├── nltk分块处理 --> ( 难度等级: [0.6663, 0.6663) || 挂载数据: 无 ) +│ │ │ │ ├── nltk文本分类 --> ( 难度等级: [0.6663, 0.6663) || 挂载数据: 无 ) +│ │ │ │ └── nltk情感分析 --> ( 难度等级: [0.6663, 0.6663) || 挂载数据: 无 ) +│ │ │ ├── Genism --> ( 难度等级: [0.6663, 0.6665) || 挂载数据: 无 ) +│ │ │ │ ├── TF-IDF --> ( 难度等级: [0.6663, 0.6664) || 挂载数据: qa: 1 ) +│ │ │ │ ├── similarities --> ( 难度等级: [0.6664, 0.6664) || 挂载数据: 无 ) +│ │ │ │ ├── LSA --> ( 难度等级: [0.6664, 0.6664) || 挂载数据: 无 ) +│ │ │ │ ├── LDA --> ( 难度等级: [0.6664, 0.6665) || 挂载数据: 无 ) +│ │ │ │ └── Word2vec --> ( 难度等级: [0.6665, 0.6665) || 挂载数据: 无 ) +│ │ │ ├── 词法分析 --> ( 难度等级: [0.6665, 0.6667) || 挂载数据: 无 ) +│ │ │ │ ├── 分词(英文分词/中文分词) --> ( 难度等级: [0.6665, 0.6665) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 词干提取 --> ( 难度等级: [0.6665, 0.6666) || 挂载数据: 无 ) +│ │ │ │ ├── 词形还原 --> ( 难度等级: [0.6666, 0.6666) || 挂载数据: 无 ) +│ │ │ │ ├── 词性标注 --> ( 难度等级: [0.6666, 0.6666) || 挂载数据: 无 ) +│ │ │ │ └── 命名实体识别 --> ( 难度等级: [0.6666, 0.6667) || 挂载数据: qa: 1 ) +│ │ │ ├── 句法分析 --> ( 难度等级: [0.6667, 0.6668) || 挂载数据: 无 ) +│ │ │ │ ├── 短语结构分析 --> ( 难度等级: [0.6667, 0.6668) || 挂载数据: 无 ) +│ │ │ │ └── 依存句法分析 --> ( 难度等级: [0.6668, 0.6668) || 挂载数据: 无 ) +│ │ │ ├── 语义分析 --> ( 难度等级: [0.6668, 0.667) || 挂载数据: 无 ) +│ │ │ │ ├── 命名实体消歧 --> ( 难度等级: [0.6668, 0.6669) || 挂载数据: 无 ) +│ │ │ │ ├── 指代消解 --> ( 难度等级: [0.6669, 0.6669) || 挂载数据: 无 ) +│ │ │ │ ├── 语义角色标注 --> ( 难度等级: [0.6669, 0.6669) || 挂载数据: 无 ) +│ │ │ │ ├── 语义关系抽取 --> ( 难度等级: [0.6669, 0.667) || 挂载数据: 无 ) +│ │ │ │ ├── 语义依存分析 --> ( 难度等级: [0.667, 0.667) || 挂载数据: qa: 4 ) +│ │ │ │ └── 抽象语义表示 --> ( 难度等级: [0.667, 0.667) || 挂载数据: 无 ) +│ │ │ ├── 词嵌入 --> ( 难度等级: [0.667, 0.6672) || 挂载数据: qa: 2 ) +│ │ │ │ ├── Word2Vec --> ( 难度等级: [0.667, 0.667) || 挂载数据: 无 ) +│ │ │ │ ├── GloVe --> ( 难度等级: [0.667, 0.6671) || 挂载数据: qa: 1 ) +│ │ │ │ ├── fastText --> ( 难度等级: [0.6671, 0.6671) || 挂载数据: 无 ) +│ │ │ │ ├── ELMo --> ( 难度等级: [0.6671, 0.6671) || 挂载数据: 无 ) +│ │ │ │ ├── BERT --> ( 难度等级: [0.6671, 0.6672) || 挂载数据: 无 ) +│ │ │ │ └── XLNet --> ( 难度等级: [0.6672, 0.6672) || 挂载数据: 无 ) +│ │ │ ├── 文本挖掘 --> ( 难度等级: [0.6672, 0.6674) || 挂载数据: 无 ) +│ │ │ │ ├── 文本相似度计算 --> ( 难度等级: [0.6672, 0.6672) || 挂载数据: 无 ) +│ │ │ │ ├── 文本聚类 --> ( 难度等级: [0.6672, 0.6673) || 挂载数据: 无 ) +│ │ │ │ ├── 文本分类 --> ( 难度等级: [0.6673, 0.6673) || 挂载数据: 无 ) +│ │ │ │ └── 文本摘要 --> ( 难度等级: [0.6673, 0.6674) || 挂载数据: qa: 10 ) +│ │ │ ├── 情感分析 --> ( 难度等级: [0.6674, 0.6675) || 挂载数据: 无 ) +│ │ │ │ ├── 基于情感词典的情感分析 --> ( 难度等级: [0.6674, 0.6674) || 挂载数据: 无 ) +│ │ │ │ └── 基于深度学习的情感分析 --> ( 难度等级: [0.6674, 0.6675) || 挂载数据: 无 ) +│ │ │ ├── 主题模型 --> ( 难度等级: [0.6675, 0.6677) || 挂载数据: 无 ) +│ │ │ │ ├── LSA --> ( 难度等级: [0.6675, 0.6676) || 挂载数据: 无 ) +│ │ │ │ └── LDA --> ( 难度等级: [0.6676, 0.6677) || 挂载数据: qa: 2 ) +│ │ │ ├── 机器翻译 --> ( 难度等级: [0.6677, 0.6679) || 挂载数据: 无 ) +│ │ │ │ ├── IBM统计翻译模型 --> ( 难度等级: [0.6677, 0.6677) || 挂载数据: 无 ) +│ │ │ │ ├── 短语抽取 --> ( 难度等级: [0.6677, 0.6678) || 挂载数据: 无 ) +│ │ │ │ ├── 语言模型 --> ( 难度等级: [0.6678, 0.6678) || 挂载数据: qa: 10 ) +│ │ │ │ ├── GNMT --> ( 难度等级: [0.6678, 0.6678) || 挂载数据: 无 ) +│ │ │ │ ├── Seq2Seq --> ( 难度等级: [0.6678, 0.6679) || 挂载数据: 无 ) +│ │ │ │ └── Transformer --> ( 难度等级: [0.6679, 0.6679) || 挂载数据: 无 ) +│ │ │ ├── 语言模型 --> ( 难度等级: [0.6679, 0.6681) || 挂载数据: 无 ) +│ │ │ │ ├── n-gram --> ( 难度等级: [0.6679, 0.6679) || 挂载数据: qa: 7 ) +│ │ │ │ ├── Pitman-Yor过程模型 --> ( 难度等级: [0.6679, 0.668) || 挂载数据: 无 ) +│ │ │ │ ├── AWD-LSTM --> ( 难度等级: [0.668, 0.668) || 挂载数据: 无 ) +│ │ │ │ ├── Transformer-XL --> ( 难度等级: [0.668, 0.668) || 挂载数据: 无 ) +│ │ │ │ └── Gated CNN --> ( 难度等级: [0.668, 0.6681) || 挂载数据: 无 ) +│ │ │ ├── 智能问答 --> ( 难度等级: [0.6681, 0.6682) || 挂载数据: 无 ) +│ │ │ │ ├── 基于知识的问答 --> ( 难度等级: [0.6681, 0.6681) || 挂载数据: 无 ) +│ │ │ │ ├── 基于检索的问答 --> ( 难度等级: [0.6681, 0.6681) || 挂载数据: 无 ) +│ │ │ │ ├── 阅读理解 --> ( 难度等级: [0.6681, 0.6682) || 挂载数据: qa: 4 ) +│ │ │ │ └── 完形填空 --> ( 难度等级: [0.6682, 0.6682) || 挂载数据: 无 ) +│ │ │ ├── 智能对话 --> ( 难度等级: [0.6682, 0.6684) || 挂载数据: 无 ) +│ │ │ │ ├── 对话行为分类 --> ( 难度等级: [0.6682, 0.6683) || 挂载数据: 无 ) +│ │ │ │ ├── 对话状态跟踪 --> ( 难度等级: [0.6683, 0.6683) || 挂载数据: 无 ) +│ │ │ │ ├── 检索式聊天机器人 --> ( 难度等级: [0.6683, 0.6683) || 挂载数据: 无 ) +│ │ │ │ ├── 生成式聊天机器人 --> ( 难度等级: [0.6683, 0.6683) || 挂载数据: 无 ) +│ │ │ │ ├── 意图识别 --> ( 难度等级: [0.6683, 0.6684) || 挂载数据: 无 ) +│ │ │ │ └── 槽填充(Slot Filling) --> ( 难度等级: [0.6684, 0.6684) || 挂载数据: 无 ) +│ │ │ ├── 语音识别 --> ( 难度等级: [0.6684, 0.6686) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 傅里叶变换 --> ( 难度等级: [0.6684, 0.6684) || 挂载数据: 无 ) +│ │ │ │ ├── 声学模型 --> ( 难度等级: [0.6684, 0.6685) || 挂载数据: 无 ) +│ │ │ │ ├── 隐马尔可夫模型 --> ( 难度等级: [0.6685, 0.6685) || 挂载数据: 无 ) +│ │ │ │ ├── CNN --> ( 难度等级: [0.6685, 0.6685) || 挂载数据: 无 ) +│ │ │ │ ├── LSTM-HMM --> ( 难度等级: [0.6685, 0.6685) || 挂载数据: 无 ) +│ │ │ │ ├── 神经网络语言模型 --> ( 难度等级: [0.6685, 0.6686) || 挂载数据: 无 ) +│ │ │ │ └── MFCC --> ( 难度等级: [0.6686, 0.6686) || 挂载数据: 无 ) +│ │ │ └── 知识图谱 --> ( 难度等级: [0.6686, 0.6687) || 挂载数据: 无 ) +│ │ │ ├── 知识图谱构建 --> ( 难度等级: [0.6686, 0.6686) || 挂载数据: 无 ) +│ │ │ ├── 知识计算 --> ( 难度等级: [0.6686, 0.6687) || 挂载数据: 无 ) +│ │ │ ├── 知识存储 --> ( 难度等级: [0.6687, 0.6687) || 挂载数据: qa: 2 ) +│ │ │ └── 知识服务与应用 --> ( 难度等级: [0.6687, 0.6687) || 挂载数据: 无 ) +│ │ ├── 简介 --> ( 难度等级: [0.6687, 0.6719) || 挂载数据: 无 ) +│ │ │ ├── 为何选择Python --> ( 难度等级: [0.6687, 0.6693) || 挂载数据: 无 ) +│ │ │ ├── 何时避免使用Python --> ( 难度等级: [0.6693, 0.6698) || 挂载数据: 无 ) +│ │ │ ├── Python中的面向对象编程 --> ( 难度等级: [0.6698, 0.6703) || 挂载数据: 无 ) +│ │ │ ├── 在Python中调用其他语言 --> ( 难度等级: [0.6703, 0.6708) || 挂载数据: 无 ) +│ │ │ ├── 将Python模型作为微服务 --> ( 难度等级: [0.6708, 0.6714) || 挂载数据: 无 ) +│ │ │ └── 高性能API和并发编程 --> ( 难度等级: [0.6714, 0.6719) || 挂载数据: 无 ) +│ │ ├── Python结构化数据提取、转换和加载 --> ( 难度等级: [0.6719, 0.675) || 挂载数据: 无 ) +│ │ │ ├── MySQL --> ( 难度等级: [0.6719, 0.6722) || 挂载数据: 无 ) +│ │ │ │ ├── 如何安装MySQLdb --> ( 难度等级: [0.6719, 0.6719) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 数据库连接 --> ( 难度等级: [0.6719, 0.6719) || 挂载数据: 无 ) +│ │ │ │ ├── INSERT操作 --> ( 难度等级: [0.6719, 0.672) || 挂载数据: qa: 1 ) +│ │ │ │ ├── READ操作 --> ( 难度等级: [0.672, 0.672) || 挂载数据: qa: 1 ) +│ │ │ │ ├── DELETE操作 --> ( 难度等级: [0.672, 0.6721) || 挂载数据: 无 ) +│ │ │ │ ├── UPDATE操作 --> ( 难度等级: [0.6721, 0.6721) || 挂载数据: qa: 2 ) +│ │ │ │ ├── COMMIT操作 --> ( 难度等级: [0.6721, 0.6721) || 挂载数据: 无 ) +│ │ │ │ └── ROLL-BACK操作 --> ( 难度等级: [0.6721, 0.6722) || 挂载数据: 无 ) +│ │ │ ├── Elasticsearch --> ( 难度等级: [0.6722, 0.6724) || 挂载数据: 无 ) +│ │ │ ├── Neo4j Python驱动 --> ( 难度等级: [0.6724, 0.6727) || 挂载数据: 无 ) +│ │ │ ├── neo4j-rest-client --> ( 难度等级: [0.6727, 0.673) || 挂载数据: 无 ) +│ │ │ ├── 内存数据库 --> ( 难度等级: [0.673, 0.6733) || 挂载数据: 无 ) +│ │ │ ├── Python版本MongoDB --> ( 难度等级: [0.6733, 0.6736) || 挂载数据: 无 ) +│ │ │ │ ├── 将数据导入集合 --> ( 难度等级: [0.6733, 0.6733) || 挂载数据: 无 ) +│ │ │ │ ├── 使用pymongo创建连接 --> ( 难度等级: [0.6733, 0.6734) || 挂载数据: 无 ) +│ │ │ │ ├── 访问数据库对象 --> ( 难度等级: [0.6734, 0.6734) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 插入数据 --> ( 难度等级: [0.6734, 0.6735) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 更新数据 --> ( 难度等级: [0.6735, 0.6735) || 挂载数据: 无 ) +│ │ │ │ └── 删除数据 --> ( 难度等级: [0.6735, 0.6736) || 挂载数据: qa: 2 ) +│ │ │ ├── Pandas --> ( 难度等级: [0.6736, 0.6739) || 挂载数据: 无 ) +│ │ │ ├── Python非结构化数据提取、转换和加载 --> ( 难度等级: [0.6739, 0.6741) || 挂载数据: 无 ) +│ │ │ │ ├── 电子邮件解析 --> ( 难度等级: [0.6739, 0.674) || 挂载数据: 无 ) +│ │ │ │ └── 主题爬取 --> ( 难度等级: [0.674, 0.6741) || 挂载数据: 无 ) +│ │ │ ├── 稳定方差 --> ( 难度等级: [0.6741, 0.6744) || 挂载数据: 无 ) +│ │ │ ├── 使周期效应累加 --> ( 难度等级: [0.6744, 0.6747) || 挂载数据: 无 ) +│ │ │ └── 使数据呈正态分布 --> ( 难度等级: [0.6747, 0.675) || 挂载数据: 无 ) +│ │ ├── 基于Python的监督学习 --> ( 难度等级: [0.675, 0.6781) || 挂载数据: 无 ) +│ │ │ ├── 使用Python实现降维 --> ( 难度等级: [0.675, 0.6753) || 挂载数据: 无 ) +│ │ │ │ └── 相关性分析 --> ( 难度等级: [0.675, 0.6753) || 挂载数据: 无 ) +│ │ │ ├── 使用Python进行分类 --> ( 难度等级: [0.6753, 0.6755) || 挂载数据: 无 ) +│ │ │ ├── 决策树 --> ( 难度等级: [0.6755, 0.6758) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 哪个属性优先 --> ( 难度等级: [0.6755, 0.6757) || 挂载数据: 无 ) +│ │ │ │ └── 随机森林分类器 --> ( 难度等级: [0.6757, 0.6758) || 挂载数据: 无 ) +│ │ │ ├── 朴素贝叶斯分类器 --> ( 难度等级: [0.6758, 0.676) || 挂载数据: qa: 1 ) +│ │ │ ├── 支持向量机 --> ( 难度等级: [0.676, 0.6763) || 挂载数据: qa: 1 ) +│ │ │ ├── 最近邻分类器 --> ( 难度等级: [0.6763, 0.6766) || 挂载数据: 无 ) +│ │ │ ├── 情绪分析 --> ( 难度等级: [0.6766, 0.6768) || 挂载数据: 无 ) +│ │ │ ├── 图像识别 --> ( 难度等级: [0.6768, 0.6771) || 挂载数据: 无 ) +│ │ │ ├── 使用Python进行回归 --> ( 难度等级: [0.6771, 0.6773) || 挂载数据: 无 ) +│ │ │ │ └── 最小二乘估计 --> ( 难度等级: [0.6771, 0.6773) || 挂载数据: qa: 1 ) +│ │ │ ├── 分类和回归 --> ( 难度等级: [0.6773, 0.6776) || 挂载数据: 无 ) +│ │ │ ├── 使模型高估或低估 --> ( 难度等级: [0.6776, 0.6779) || 挂载数据: 无 ) +│ │ │ └── 处理分类型数据 --> ( 难度等级: [0.6779, 0.6781) || 挂载数据: 无 ) +│ │ ├── 无监督学习—聚类 --> ( 难度等级: [0.6781, 0.6813) || 挂载数据: 无 ) +│ │ │ ├── K均值聚类 --> ( 难度等级: [0.6781, 0.6787) || 挂载数据: 无 ) +│ │ │ ├── 选择K—肘部法则 --> ( 难度等级: [0.6787, 0.6794) || 挂载数据: 无 ) +│ │ │ ├── 距离或相似性度量 --> ( 难度等级: [0.6794, 0.68) || 挂载数据: 无 ) +│ │ │ │ ├── 属性 --> ( 难度等级: [0.6794, 0.6795) || 挂载数据: 无 ) +│ │ │ │ ├── 一般及欧氏距离 --> ( 难度等级: [0.6795, 0.6797) || 挂载数据: 无 ) +│ │ │ │ ├── 平方欧氏距离 --> ( 难度等级: [0.6797, 0.6798) || 挂载数据: qa: 1 ) +│ │ │ │ └── 字符串之间的编辑距离 --> ( 难度等级: [0.6798, 0.68) || 挂载数据: 无 ) +│ │ │ ├── 文档上下文的相似性 --> ( 难度等级: [0.68, 0.6806) || 挂载数据: 无 ) +│ │ │ └── 如何判断聚类结果是否良好 --> ( 难度等级: [0.6806, 0.6813) || 挂载数据: 无 ) +│ │ ├── 时间序列 --> ( 难度等级: [0.6813, 0.6844) || 挂载数据: 无 ) +│ │ │ ├── 变化的分类 --> ( 难度等级: [0.6813, 0.6816) || 挂载数据: 无 ) +│ │ │ ├── 包含趋势的序列分析 --> ( 难度等级: [0.6816, 0.6819) || 挂载数据: 无 ) +│ │ │ │ ├── 曲线拟合 --> ( 难度等级: [0.6816, 0.6817) || 挂载数据: 无 ) +│ │ │ │ └── 从时间序列中去除趋势 --> ( 难度等级: [0.6817, 0.6819) || 挂载数据: qa: 1 ) +│ │ │ ├── 包含周期性的序列数据分析 --> ( 难度等级: [0.6819, 0.6822) || 挂载数据: 无 ) +│ │ │ ├── 从时间序列中去除周期性 --> ( 难度等级: [0.6822, 0.6825) || 挂载数据: 无 ) +│ │ │ │ ├── 滤波 --> ( 难度等级: [0.6822, 0.6823) || 挂载数据: 无 ) +│ │ │ │ └── 差分 --> ( 难度等级: [0.6823, 0.6825) || 挂载数据: 无 ) +│ │ │ ├── 平稳时间序列 --> ( 难度等级: [0.6825, 0.6828) || 挂载数据: 无 ) +│ │ │ │ ├── 平稳过程 --> ( 难度等级: [0.6825, 0.6826) || 挂载数据: 无 ) +│ │ │ │ ├── 自相关和相关图 --> ( 难度等级: [0.6826, 0.6827) || 挂载数据: qa: 7 ) +│ │ │ │ └── 自协方差和自相关函数的估计 --> ( 难度等级: [0.6827, 0.6828) || 挂载数据: 无 ) +│ │ │ ├── 使用Python进行时间序列分析 --> ( 难度等级: [0.6828, 0.6831) || 挂载数据: 无 ) +│ │ │ │ ├── 有用的方法 --> ( 难度等级: [0.6828, 0.6829) || 挂载数据: 无 ) +│ │ │ │ ├── 自回归过程 --> ( 难度等级: [0.6829, 0.683) || 挂载数据: 无 ) +│ │ │ │ └── 估计AR过程的参数 --> ( 难度等级: [0.683, 0.6831) || 挂载数据: 无 ) +│ │ │ ├── 混合ARMA模型 --> ( 难度等级: [0.6831, 0.6834) || 挂载数据: 无 ) +│ │ │ ├── 集成ARMA模型 --> ( 难度等级: [0.6834, 0.6837) || 挂载数据: 无 ) +│ │ │ ├── 一个特殊的场景 --> ( 难度等级: [0.6837, 0.6841) || 挂载数据: 无 ) +│ │ │ └── 数据缺失 --> ( 难度等级: [0.6841, 0.6844) || 挂载数据: 无 ) +│ │ └── 大数据分析 --> ( 难度等级: [0.6844, 0.6875) || 挂载数据: qa: 1 ) +│ │ ├── Hadoop --> ( 难度等级: [0.6844, 0.6852) || 挂载数据: 无 ) +│ │ │ ├── MapReduce编程 --> ( 难度等级: [0.6844, 0.6845) || 挂载数据: qa: 1 ) +│ │ │ ├── partitioning函数 --> ( 难度等级: [0.6845, 0.6847) || 挂载数据: 无 ) +│ │ │ ├── combiner函数 --> ( 难度等级: [0.6847, 0.6848) || 挂载数据: 无 ) +│ │ │ ├── HDFS文件系统 --> ( 难度等级: [0.6848, 0.685) || 挂载数据: 无 ) +│ │ │ └── MapReduce设计模式 --> ( 难度等级: [0.685, 0.6852) || 挂载数据: 无 ) +│ │ ├── Spark --> ( 难度等级: [0.6852, 0.6859) || 挂载数据: 无 ) +│ │ ├── 云分析 --> ( 难度等级: [0.6859, 0.6867) || 挂载数据: 无 ) +│ │ └── 物联网 --> ( 难度等级: [0.6867, 0.6875) || 挂载数据: 无 ) +│ ├── 高级教程 --> ( 难度等级: [0.6875, 0.7188) || 挂载数据: 无 ) +│ │ ├── 原理与哲学 --> ( 难度等级: [0.6875, 0.6906) || 挂载数据: qa: 1 ) +│ │ │ ├── Python之禅 --> ( 难度等级: [0.6875, 0.6879) || 挂载数据: 无 ) +│ │ │ │ ├── 优美胜于丑陋 --> ( 难度等级: [0.6875, 0.6875) || 挂载数据: 无 ) +│ │ │ │ ├── 明了胜于晦涩 --> ( 难度等级: [0.6875, 0.6875) || 挂载数据: 无 ) +│ │ │ │ ├── 简洁胜于复杂 --> ( 难度等级: [0.6875, 0.6876) || 挂载数据: 无 ) +│ │ │ │ ├── 复杂胜于难以理解 --> ( 难度等级: [0.6876, 0.6876) || 挂载数据: 无 ) +│ │ │ │ ├── 扁平胜于嵌套 --> ( 难度等级: [0.6876, 0.6876) || 挂载数据: 无 ) +│ │ │ │ ├── 宽松胜于紧凑 --> ( 难度等级: [0.6876, 0.6876) || 挂载数据: 无 ) +│ │ │ │ ├── 可读性很重要 --> ( 难度等级: [0.6876, 0.6877) || 挂载数据: 无 ) +│ │ │ │ ├── 即便是特例,也不可违背这些规则 --> ( 难度等级: [0.6877, 0.6877) || 挂载数据: 无 ) +│ │ │ │ ├── 实用性胜于纯粹性 --> ( 难度等级: [0.6877, 0.6877) || 挂载数据: 无 ) +│ │ │ │ ├── 错误永远不应该悄无声息地过去 --> ( 难度等级: [0.6877, 0.6877) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 除非明确地沉默 --> ( 难度等级: [0.6877, 0.6878) || 挂载数据: 无 ) +│ │ │ │ ├── 面对模棱两可的情况,拒绝猜测的诱惑 --> ( 难度等级: [0.6878, 0.6878) || 挂载数据: 无 ) +│ │ │ │ ├── 应该有一种(最好只有一种)显而易见的方法 --> ( 难度等级: [0.6878, 0.6878) || 挂载数据: 无 ) +│ │ │ │ ├── 尽管这种方式起初可能并不明显,除非你是荷兰人 --> ( 难度等级: [0.6878, 0.6878) || 挂载数据: 无 ) +│ │ │ │ ├── 做比不做要好 --> ( 难度等级: [0.6878, 0.6879) || 挂载数据: qa: 10 ) +│ │ │ │ ├── 不假思索就动手还不如不做 --> ( 难度等级: [0.6879, 0.6879) || 挂载数据: 无 ) +│ │ │ │ ├── 如果实现难以解释,那就是一个糟糕的想法 --> ( 难度等级: [0.6879, 0.6879) || 挂载数据: 无 ) +│ │ │ │ ├── 如果实现容易解释,则可能是一个好主意 --> ( 难度等级: [0.6879, 0.6879) || 挂载数据: 无 ) +│ │ │ │ └── 命名空间是一个很棒的想法,让我们做更多这样的事情吧 --> ( 难度等级: [0.6879, 0.6879) || 挂载数据: 无 ) +│ │ │ ├── 不要重复自己 --> ( 难度等级: [0.6879, 0.6884) || 挂载数据: 无 ) +│ │ │ ├── 松耦合 --> ( 难度等级: [0.6884, 0.6888) || 挂载数据: 无 ) +│ │ │ ├── 武士原则 --> ( 难度等级: [0.6888, 0.6893) || 挂载数据: 无 ) +│ │ │ ├── 帕累托原则 --> ( 难度等级: [0.6893, 0.6897) || 挂载数据: 无 ) +│ │ │ ├── 稳健性原则 --> ( 难度等级: [0.6897, 0.6902) || 挂载数据: 无 ) +│ │ │ └── 向后兼容性 --> ( 难度等级: [0.6902, 0.6906) || 挂载数据: 无 ) +│ │ ├── 基础知识 --> ( 难度等级: [0.6906, 0.6937) || 挂载数据: 无 ) +│ │ │ ├── 总体概念 --> ( 难度等级: [0.6906, 0.6911) || 挂载数据: 无 ) +│ │ │ │ ├── 迭代 --> ( 难度等级: [0.6906, 0.6908) || 挂载数据: 无 ) +│ │ │ │ ├── 缓存 --> ( 难度等级: [0.6908, 0.691) || 挂载数据: qa: 1 ) +│ │ │ │ └── 透明度 --> ( 难度等级: [0.691, 0.6911) || 挂载数据: 无 ) +│ │ │ ├── 流程控制 --> ( 难度等级: [0.6911, 0.6917) || 挂载数据: 无 ) +│ │ │ │ ├── 捕获异常 --> ( 难度等级: [0.6911, 0.6912) || 挂载数据: 无 ) +│ │ │ │ ├── 异常链 --> ( 难度等级: [0.6912, 0.6913) || 挂载数据: 无 ) +│ │ │ │ ├── 当一切顺利的时候 --> ( 难度等级: [0.6913, 0.6914) || 挂载数据: 无 ) +│ │ │ │ ├── 继续执行,无论异常如何 --> ( 难度等级: [0.6914, 0.6914) || 挂载数据: 无 ) +│ │ │ │ ├── 优化循环 --> ( 难度等级: [0.6914, 0.6915) || 挂载数据: 无 ) +│ │ │ │ ├── with语句 --> ( 难度等级: [0.6915, 0.6916) || 挂载数据: qa: 2 ) +│ │ │ │ └── 条件表达式 --> ( 难度等级: [0.6916, 0.6917) || 挂载数据: 无 ) +│ │ │ ├── 迭代 --> ( 难度等级: [0.6917, 0.6922) || 挂载数据: 无 ) +│ │ │ │ ├── 序列解包 --> ( 难度等级: [0.6917, 0.6917) || 挂载数据: 无 ) +│ │ │ │ ├── 列表解析式 --> ( 难度等级: [0.6917, 0.6918) || 挂载数据: 无 ) +│ │ │ │ ├── 生成器表达式 --> ( 难度等级: [0.6918, 0.6919) || 挂载数据: 无 ) +│ │ │ │ ├── 集合解析式 --> ( 难度等级: [0.6919, 0.692) || 挂载数据: 无 ) +│ │ │ │ ├── 字典解析式 --> ( 难度等级: [0.692, 0.692) || 挂载数据: 无 ) +│ │ │ │ ├── 将迭代器链接在一起 --> ( 难度等级: [0.692, 0.6921) || 挂载数据: 无 ) +│ │ │ │ └── 将迭代器压缩在一起 --> ( 难度等级: [0.6921, 0.6922) || 挂载数据: 无 ) +│ │ │ ├── 容器数据类型 --> ( 难度等级: [0.6922, 0.6927) || 挂载数据: 无 ) +│ │ │ │ ├── 集合 --> ( 难度等级: [0.6922, 0.6923) || 挂载数据: 无 ) +│ │ │ │ ├── 命名元组 --> ( 难度等级: [0.6923, 0.6924) || 挂载数据: 无 ) +│ │ │ │ ├── 有序字典 --> ( 难度等级: [0.6924, 0.6926) || 挂载数据: 无 ) +│ │ │ │ └── 带有默认值的字典 --> ( 难度等级: [0.6926, 0.6927) || 挂载数据: qa: 1 ) +│ │ │ ├── 导入代码 --> ( 难度等级: [0.6927, 0.6932) || 挂载数据: 无 ) +│ │ │ │ ├── 回退(备用)导入 --> ( 难度等级: [0.6927, 0.6928) || 挂载数据: 无 ) +│ │ │ │ ├── 从即将发布的版本中导入 --> ( 难度等级: [0.6928, 0.6929) || 挂载数据: 无 ) +│ │ │ │ ├── 使用__all__进行自定义导入 --> ( 难度等级: [0.6929, 0.693) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 相对导入 --> ( 难度等级: [0.693, 0.6931) || 挂载数据: qa: 1 ) +│ │ │ │ ├── __import__函数 --> ( 难度等级: [0.6931, 0.6931) || 挂载数据: 无 ) +│ │ │ │ └── importlib模块 --> ( 难度等级: [0.6931, 0.6932) || 挂载数据: 无 ) +│ │ │ └── 令人兴奋的Python扩展:NIST的随机数信标 --> ( 难度等级: [0.6932, 0.6937) || 挂载数据: 无 ) +│ │ │ ├── 如何安装NIST信标库 --> ( 难度等级: [0.6932, 0.6932) || 挂载数据: 无 ) +│ │ │ ├── 示例:获取值 --> ( 难度等级: [0.6932, 0.6933) || 挂载数据: 无 ) +│ │ │ ├── 示例:模拟抛硬币并记录每次正反面的结果 --> ( 难度等级: [0.6933, 0.6933) || 挂载数据: 无 ) +│ │ │ ├── 安装Pandas和matplotlib --> ( 难度等级: [0.6933, 0.6933) || 挂载数据: 无 ) +│ │ │ ├── 创建文本文件 --> ( 难度等级: [0.6933, 0.6933) || 挂载数据: 无 ) +│ │ │ ├── 使用Pandas显示数据 --> ( 难度等级: [0.6933, 0.6933) || 挂载数据: 无 ) +│ │ │ ├── 进行一些数据分析 --> ( 难度等级: [0.6933, 0.6934) || 挂载数据: 无 ) +│ │ │ ├── 使用matplotlib进行绘图 --> ( 难度等级: [0.6934, 0.6934) || 挂载数据: 无 ) +│ │ │ ├── 图表的类型 --> ( 难度等级: [0.6934, 0.6934) || 挂载数据: 无 ) +│ │ │ ├── 安装Scrapy --> ( 难度等级: [0.6934, 0.6934) || 挂载数据: 无 ) +│ │ │ ├── 运行Scrapy --> ( 难度等级: [0.6934, 0.6934) || 挂载数据: 无 ) +│ │ │ ├── 使用Scrapy获取Web数据 --> ( 难度等级: [0.6934, 0.6935) || 挂载数据: 无 ) +│ │ │ ├── 通过Scrapy浏览网页 --> ( 难度等级: [0.6935, 0.6935) || 挂载数据: 无 ) +│ │ │ ├── shell选项 --> ( 难度等级: [0.6935, 0.6935) || 挂载数据: 无 ) +│ │ │ ├── 安装Beautiful Soup --> ( 难度等级: [0.6935, 0.6935) || 挂载数据: 无 ) +│ │ │ ├── 使用Beautiful Soup --> ( 难度等级: [0.6935, 0.6935) || 挂载数据: 无 ) +│ │ │ ├── 如何安装feedparser库 --> ( 难度等级: [0.6935, 0.6936) || 挂载数据: 无 ) +│ │ │ ├── 如何使用feedparser库 --> ( 难度等级: [0.6936, 0.6936) || 挂载数据: 无 ) +│ │ │ ├── 安装NumPy --> ( 难度等级: [0.6936, 0.6936) || 挂载数据: 无 ) +│ │ │ ├── 使用NumPy --> ( 难度等级: [0.6936, 0.6936) || 挂载数据: 无 ) +│ │ │ ├── 使用NumPy数组 --> ( 难度等级: [0.6936, 0.6936) || 挂载数据: 无 ) +│ │ │ ├── 统计度量 --> ( 难度等级: [0.6936, 0.6937) || 挂载数据: 无 ) +│ │ │ ├── 如何安装Pillow库 --> ( 难度等级: [0.6937, 0.6937) || 挂载数据: 无 ) +│ │ │ ├── 图像显示:确定文件的大小和类型并显示 --> ( 难度等级: [0.6937, 0.6937) || 挂载数据: 无 ) +│ │ │ ├── 图像处理:裁剪图像的一部分 --> ( 难度等级: [0.6937, 0.6937) || 挂载数据: 无 ) +│ │ │ ├── 随机数 --> ( 难度等级: [0.6937, 0.6937) || 挂载数据: qa: 2 ) +│ │ │ └── 密码生成器 --> ( 难度等级: [0.6937, 0.6937) || 挂载数据: 无 ) +│ │ ├── 函数 --> ( 难度等级: [0.6937, 0.6969) || 挂载数据: 无 ) +│ │ │ ├── 参数 --> ( 难度等级: [0.6937, 0.6943) || 挂载数据: 无 ) +│ │ │ │ ├── 规划时的灵活性 --> ( 难度等级: [0.6937, 0.6938) || 挂载数据: 无 ) +│ │ │ │ ├── 可变位置参数 --> ( 难度等级: [0.6938, 0.6939) || 挂载数据: qa: 3 ) +│ │ │ │ ├── 可变关键字参数 --> ( 难度等级: [0.6939, 0.694) || 挂载数据: 无 ) +│ │ │ │ ├── 组合不同类型的参数 --> ( 难度等级: [0.694, 0.694) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 调用具有可变参数的函数 --> ( 难度等级: [0.694, 0.6941) || 挂载数据: qa: 2 ) +│ │ │ │ ├── 传递参数 --> ( 难度等级: [0.6941, 0.6942) || 挂载数据: qa: 10 ) +│ │ │ │ └── 自省 --> ( 难度等级: [0.6942, 0.6943) || 挂载数据: 无 ) +│ │ │ ├── 装饰器 --> ( 难度等级: [0.6943, 0.6948) || 挂载数据: 无 ) +│ │ │ │ ├── 闭包 --> ( 难度等级: [0.6943, 0.6944) || 挂载数据: 无 ) +│ │ │ │ ├── 包装器 --> ( 难度等级: [0.6944, 0.6945) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 带参数的装饰器 --> ( 难度等级: [0.6945, 0.6947) || 挂载数据: qa: 1 ) +│ │ │ │ └── 带参数或不带参数的装饰器 --> ( 难度等级: [0.6947, 0.6948) || 挂载数据: 无 ) +│ │ │ ├── 函数注解 --> ( 难度等级: [0.6948, 0.6953) || 挂载数据: 无 ) +│ │ │ │ ├── 提取样板 --> ( 难度等级: [0.6948, 0.6951) || 挂载数据: 无 ) +│ │ │ │ └── 用装饰器进行注解 --> ( 难度等级: [0.6951, 0.6953) || 挂载数据: 无 ) +│ │ │ ├── 生成器 --> ( 难度等级: [0.6953, 0.6958) || 挂载数据: 无 ) +│ │ │ ├── lambda --> ( 难度等级: [0.6958, 0.6964) || 挂载数据: qa: 1 ) +│ │ │ └── 自省 --> ( 难度等级: [0.6964, 0.6969) || 挂载数据: 无 ) +│ │ │ ├── 标识对象类型 --> ( 难度等级: [0.6964, 0.6965) || 挂载数据: 无 ) +│ │ │ ├── 模块和软件包 --> ( 难度等级: [0.6965, 0.6967) || 挂载数据: 无 ) +│ │ │ └── 文档字符串 --> ( 难度等级: [0.6967, 0.6969) || 挂载数据: 无 ) +│ │ │ ├── 描述函数的作用 --> ( 难度等级: [0.6967, 0.6968) || 挂载数据: 无 ) +│ │ │ ├── 返回值 --> ( 难度等级: [0.6968, 0.6968) || 挂载数据: 无 ) +│ │ │ └── 包含预期的异常 --> ( 难度等级: [0.6968, 0.6969) || 挂载数据: qa: 1 ) +│ │ ├── 类 --> ( 难度等级: [0.6969, 0.7) || 挂载数据: 无 ) +│ │ │ ├── 继承 --> ( 难度等级: [0.6969, 0.6975) || 挂载数据: 无 ) +│ │ │ │ ├── 多重继承 --> ( 难度等级: [0.6969, 0.697) || 挂载数据: qa: 3 ) +│ │ │ │ ├── 方法解析顺序 --> ( 难度等级: [0.697, 0.6972) || 挂载数据: 无 ) +│ │ │ │ ├── 使用super函数将控制权传递给其他类 --> ( 难度等级: [0.6972, 0.6973) || 挂载数据: qa: 1 ) +│ │ │ │ └── 自省 --> ( 难度等级: [0.6973, 0.6975) || 挂载数据: 无 ) +│ │ │ ├── 如何创建类 --> ( 难度等级: [0.6975, 0.6981) || 挂载数据: 无 ) +│ │ │ │ ├── 在运行时创建类 --> ( 难度等级: [0.6975, 0.6977) || 挂载数据: qa: 7 ) +│ │ │ │ ├── 元类 --> ( 难度等级: [0.6977, 0.6979) || 挂载数据: qa: 10 ) +│ │ │ │ └── 控制命名空间 --> ( 难度等级: [0.6979, 0.6981) || 挂载数据: 无 ) +│ │ │ ├── 成员变量 --> ( 难度等级: [0.6981, 0.6987) || 挂载数据: 无 ) +│ │ │ │ ├── 属性 --> ( 难度等级: [0.6981, 0.6984) || 挂载数据: 无 ) +│ │ │ │ └── 描述器 --> ( 难度等级: [0.6984, 0.6987) || 挂载数据: qa: 1 ) +│ │ │ ├── 方法 --> ( 难度等级: [0.6987, 0.6994) || 挂载数据: 无 ) +│ │ │ │ ├── 非绑定方法 --> ( 难度等级: [0.6987, 0.6991) || 挂载数据: 无 ) +│ │ │ │ └── 绑定方法 --> ( 难度等级: [0.6991, 0.6994) || 挂载数据: qa: 10 ) +│ │ │ └── 魔术方法 --> ( 难度等级: [0.6994, 0.7) || 挂载数据: qa: 1 ) +│ │ │ ├── 处理成员变量 --> ( 难度等级: [0.6994, 0.6997) || 挂载数据: 无 ) +│ │ │ └── 字符串表示 --> ( 难度等级: [0.6997, 0.7) || 挂载数据: 无 ) +│ │ │ ├── 字节字符串 --> ( 难度等级: [0.6997, 0.6998) || 挂载数据: qa: 1 ) +│ │ │ │ ├── 借助chr和ord进行简单的转换 --> ( 难度等级: [0.6997, 0.6997) || 挂载数据: 无 ) +│ │ │ │ └── 借助struct模块进行复杂的转换 --> ( 难度等级: [0.6997, 0.6998) || 挂载数据: 无 ) +│ │ │ ├── 文本 --> ( 难度等级: [0.6998, 0.6998) || 挂载数据: 无 ) +│ │ │ │ ├── Unicode --> ( 难度等级: [0.6998, 0.6998) || 挂载数据: qa: 4 ) +│ │ │ │ └── 编码 --> ( 难度等级: [0.6998, 0.6998) || 挂载数据: qa: 1 ) +│ │ │ ├── 简单的替换 --> ( 难度等级: [0.6998, 0.6999) || 挂载数据: qa: 3 ) +│ │ │ └── 格式化 --> ( 难度等级: [0.6999, 0.7) || 挂载数据: 无 ) +│ │ │ ├── 在对象中查找值 --> ( 难度等级: [0.6999, 0.6999) || 挂载数据: 无 ) +│ │ │ ├── 区分字符串类型 --> ( 难度等级: [0.6999, 0.7) || 挂载数据: 无 ) +│ │ │ ├── 标准格式规范 --> ( 难度等级: [0.7, 0.7) || 挂载数据: 无 ) +│ │ │ ├── 为文本文档制作目录 --> ( 难度等级: [0.7, 0.7) || 挂载数据: qa: 2 ) +│ │ │ └── 自定义格式规范 --> ( 难度等级: [0.7, 0.7) || 挂载数据: 无 ) +│ │ ├── 通用协议 --> ( 难度等级: [0.7, 0.7031) || 挂载数据: 无 ) +│ │ │ ├── 基本运算 --> ( 难度等级: [0.7, 0.7004) || 挂载数据: 无 ) +│ │ │ │ ├── 数学运算 --> ( 难度等级: [0.7, 0.7001) || 挂载数据: 无 ) +│ │ │ │ ├── 按位运算 --> ( 难度等级: [0.7001, 0.7003) || 挂载数据: qa: 4 ) +│ │ │ │ └── 运算符的变体 --> ( 难度等级: [0.7003, 0.7004) || 挂载数据: 无 ) +│ │ │ ├── 数字 --> ( 难度等级: [0.7004, 0.7009) || 挂载数据: 无 ) +│ │ │ │ ├── 符号运算 --> ( 难度等级: [0.7004, 0.7007) || 挂载数据: qa: 2 ) +│ │ │ │ └── 比较运算 --> ( 难度等级: [0.7007, 0.7009) || 挂载数据: 无 ) +│ │ │ ├── 可迭代对象 --> ( 难度等级: [0.7009, 0.7013) || 挂载数据: 无 ) +│ │ │ ├── 序列 --> ( 难度等级: [0.7013, 0.7018) || 挂载数据: 无 ) +│ │ │ ├── 映射 --> ( 难度等级: [0.7018, 0.7022) || 挂载数据: 无 ) +│ │ │ ├── _call_方法 --> ( 难度等级: [0.7022, 0.7027) || 挂载数据: 无 ) +│ │ │ └── 上下文管理器 --> ( 难度等级: [0.7027, 0.7031) || 挂载数据: 无 ) +│ │ ├── 对象管理 --> ( 难度等级: [0.7031, 0.7063) || 挂载数据: 无 ) +│ │ │ ├── 命名空间字典 --> ( 难度等级: [0.7031, 0.7039) || 挂载数据: 无 ) +│ │ │ ├── 垃圾回收 --> ( 难度等级: [0.7039, 0.7047) || 挂载数据: 无 ) +│ │ │ │ ├── 引用计数 --> ( 难度等级: [0.7039, 0.7042) || 挂载数据: 无 ) +│ │ │ │ ├── 循环引用 --> ( 难度等级: [0.7042, 0.7044) || 挂载数据: qa: 1 ) +│ │ │ │ └── 弱引用 --> ( 难度等级: [0.7044, 0.7047) || 挂载数据: 无 ) +│ │ │ ├── Python对象的序列化 --> ( 难度等级: [0.7047, 0.7055) || 挂载数据: 无 ) +│ │ │ └── 复制 --> ( 难度等级: [0.7055, 0.7063) || 挂载数据: 无 ) +│ │ │ ├── 浅层复制 --> ( 难度等级: [0.7055, 0.7059) || 挂载数据: qa: 1 ) +│ │ │ └── 深层复制 --> ( 难度等级: [0.7059, 0.7063) || 挂载数据: qa: 1 ) +│ │ ├── 文档的编写 --> ( 难度等级: [0.7063, 0.7094) || 挂载数据: 无 ) +│ │ │ ├── 恰当地命名 --> ( 难度等级: [0.7063, 0.707) || 挂载数据: 无 ) +│ │ │ ├── 注释 --> ( 难度等级: [0.707, 0.7078) || 挂载数据: 无 ) +│ │ │ ├── 代码之外的文档 --> ( 难度等级: [0.7078, 0.7086) || 挂载数据: 无 ) +│ │ │ │ ├── 安装与配置 --> ( 难度等级: [0.7078, 0.7081) || 挂载数据: 无 ) +│ │ │ │ ├── 教程 --> ( 难度等级: [0.7081, 0.7083) || 挂载数据: qa: 2 ) +│ │ │ │ └── 参考文档 --> ( 难度等级: [0.7083, 0.7086) || 挂载数据: qa: 4 ) +│ │ │ └── 用于编写文档的实用工具 --> ( 难度等级: [0.7086, 0.7094) || 挂载数据: 无 ) +│ │ │ ├── 链接 --> ( 难度等级: [0.7086, 0.709) || 挂载数据: 无 ) +│ │ │ └── Sphinx --> ( 难度等级: [0.709, 0.7094) || 挂载数据: 无 ) +│ │ ├── 测试 --> ( 难度等级: [0.7094, 0.7125) || 挂载数据: 无 ) +│ │ │ ├── 测试驱动开发 --> ( 难度等级: [0.7094, 0.7102) || 挂载数据: qa: 1 ) +│ │ │ ├── doctest --> ( 难度等级: [0.7102, 0.7109) || 挂载数据: 无 ) +│ │ │ │ ├── 格式化代码 --> ( 难度等级: [0.7102, 0.7104) || 挂载数据: 无 ) +│ │ │ │ ├── 呈现输出 --> ( 难度等级: [0.7104, 0.7105) || 挂载数据: 无 ) +│ │ │ │ ├── 与文档集成 --> ( 难度等级: [0.7105, 0.7107) || 挂载数据: 无 ) +│ │ │ │ └── 运行测试 --> ( 难度等级: [0.7107, 0.7109) || 挂载数据: 无 ) +│ │ │ ├── unittest模块 --> ( 难度等级: [0.7109, 0.7117) || 挂载数据: 无 ) +│ │ │ │ ├── 初始化配置 --> ( 难度等级: [0.7109, 0.7111) || 挂载数据: 无 ) +│ │ │ │ ├── 编写测试 --> ( 难度等级: [0.7111, 0.7112) || 挂载数据: qa: 10 ) +│ │ │ │ ├── 其他比较 --> ( 难度等级: [0.7112, 0.7113) || 挂载数据: 无 ) +│ │ │ │ ├── 测试异常 --> ( 难度等级: [0.7113, 0.7115) || 挂载数据: 无 ) +│ │ │ │ ├── 测试对象标识 --> ( 难度等级: [0.7115, 0.7116) || 挂载数据: 无 ) +│ │ │ │ └── 释放资源 --> ( 难度等级: [0.7116, 0.7117) || 挂载数据: 无 ) +│ │ │ └── 提供自定义的测试类 --> ( 难度等级: [0.7117, 0.7125) || 挂载数据: 无 ) +│ │ ├── 发布 --> ( 难度等级: [0.7125, 0.7156) || 挂载数据: 无 ) +│ │ │ ├── 许可证 --> ( 难度等级: [0.7125, 0.7135) || 挂载数据: 无 ) +│ │ │ │ ├── GNU通用公共许可证 --> ( 难度等级: [0.7125, 0.7127) || 挂载数据: 无 ) +│ │ │ │ ├── Affero通用公共许可证 --> ( 难度等级: [0.7127, 0.7129) || 挂载数据: qa: 1 ) +│ │ │ │ ├── GNU宽通用公共许可证 --> ( 难度等级: [0.7129, 0.7131) || 挂载数据: 无 ) +│ │ │ │ ├── 伯克利软件发行许可证 --> ( 难度等级: [0.7131, 0.7133) || 挂载数据: 无 ) +│ │ │ │ └── 其他许可证 --> ( 难度等级: [0.7133, 0.7135) || 挂载数据: 无 ) +│ │ │ ├── 打包 --> ( 难度等级: [0.7135, 0.7146) || 挂载数据: 无 ) +│ │ │ │ ├── setup.py --> ( 难度等级: [0.7135, 0.7139) || 挂载数据: qa: 10 ) +│ │ │ │ ├── MANIFEST.in --> ( 难度等级: [0.7139, 0.7142) || 挂载数据: qa: 5 ) +│ │ │ │ └── sdist命令 --> ( 难度等级: [0.7142, 0.7146) || 挂载数据: 无 ) +│ │ │ └── 发布 --> ( 难度等级: [0.7146, 0.7156) || 挂载数据: 无 ) +│ │ └── 构建CSV框架sheets --> ( 难度等级: [0.7156, 0.7188) || 挂载数据: 无 ) +│ │ ├── 构建声明性框架 --> ( 难度等级: [0.7156, 0.7162) || 挂载数据: 无 ) +│ │ │ ├── 声明性编程简介 --> ( 难度等级: [0.7156, 0.7159) || 挂载数据: 无 ) +│ │ │ └── 是否构建声明性框架 --> ( 难度等级: [0.7159, 0.7162) || 挂载数据: 无 ) +│ │ ├── 构建框架 --> ( 难度等级: [0.7162, 0.7169) || 挂载数据: 无 ) +│ │ │ ├── 管理选项 --> ( 难度等级: [0.7162, 0.7164) || 挂载数据: 无 ) +│ │ │ ├── 定义字段 --> ( 难度等级: [0.7164, 0.7165) || 挂载数据: 无 ) +│ │ │ ├── 将字段附加到类 --> ( 难度等级: [0.7165, 0.7166) || 挂载数据: 无 ) +│ │ │ ├── 添加元类 --> ( 难度等级: [0.7166, 0.7167) || 挂载数据: 无 ) +│ │ │ └── 整合 --> ( 难度等级: [0.7167, 0.7169) || 挂载数据: 无 ) +│ │ ├── 字段排序 --> ( 难度等级: [0.7169, 0.7175) || 挂载数据: 无 ) +│ │ │ ├── DeclarativeMeta.__prepare__ --> ( 难度等级: [0.7169, 0.717) || 挂载数据: 无 ) +│ │ │ ├── Column.__init__ --> ( 难度等级: [0.717, 0.7171) || 挂载数据: qa: 3 ) +│ │ │ ├── Column.__new__ --> ( 难度等级: [0.7171, 0.7172) || 挂载数据: 无 ) +│ │ │ ├── CounterMeta.__call__ --> ( 难度等级: [0.7172, 0.7174) || 挂载数据: 无 ) +│ │ │ └── 挑选选项 --> ( 难度等级: [0.7174, 0.7175) || 挂载数据: 无 ) +│ │ ├── 构建字段库 --> ( 难度等级: [0.7175, 0.7181) || 挂载数据: 无 ) +│ │ │ ├── StringField(字符串字段) --> ( 难度等级: [0.7175, 0.7176) || 挂载数据: qa: 4 ) +│ │ │ ├── IntegerColumn(整数列) --> ( 难度等级: [0.7176, 0.7177) || 挂载数据: 无 ) +│ │ │ ├── FloatColumn(浮点数列) --> ( 难度等级: [0.7177, 0.7179) || 挂载数据: 无 ) +│ │ │ ├── DecimalColumn(小数列) --> ( 难度等级: [0.7179, 0.718) || 挂载数据: 无 ) +│ │ │ └── DateColumn(日期列) --> ( 难度等级: [0.718, 0.7181) || 挂载数据: 无 ) +│ │ └── 回到CSV --> ( 难度等级: [0.7181, 0.7188) || 挂载数据: 无 ) +│ │ ├── 检查参数 --> ( 难度等级: [0.7181, 0.7183) || 挂载数据: 无 ) +│ │ ├── 填充值 --> ( 难度等级: [0.7183, 0.7184) || 挂载数据: 无 ) +│ │ ├── 读取器 --> ( 难度等级: [0.7184, 0.7186) || 挂载数据: 无 ) +│ │ └── 写入器 --> ( 难度等级: [0.7186, 0.7188) || 挂载数据: 无 ) +│ └── 其他 --> ( 难度等级: [0.7188, 0.75) || 挂载数据: 无 ) +│ ├── GUI界面编程 --> ( 难度等级: [0.7188, 0.7232) || 挂载数据: 无 ) +│ │ ├── 初识GUI --> ( 难度等级: [0.7188, 0.7196) || 挂载数据: 无 ) +│ │ │ ├── 什么是GUI --> ( 难度等级: [0.7188, 0.719) || 挂载数据: qa: 8 ) +│ │ │ ├── 常用的GUI框架 --> ( 难度等级: [0.719, 0.7193) || 挂载数据: 无 ) +│ │ │ └── 安装wxPython --> ( 难度等级: [0.7193, 0.7196) || 挂载数据: 无 ) +│ │ ├── 创建应用程序 --> ( 难度等级: [0.7196, 0.7205) || 挂载数据: 无 ) +│ │ │ ├── 创建一个wx.App的子类 --> ( 难度等级: [0.7196, 0.7199) || 挂载数据: 无 ) +│ │ │ ├── 直接使用wx.App --> ( 难度等级: [0.7199, 0.7202) || 挂载数据: 无 ) +│ │ │ └── 使用wx.Frame框架 --> ( 难度等级: [0.7202, 0.7205) || 挂载数据: 无 ) +│ │ ├── 常用控件 --> ( 难度等级: [0.7205, 0.7214) || 挂载数据: qa: 1 ) +│ │ │ ├── StaticText文本类 --> ( 难度等级: [0.7205, 0.7208) || 挂载数据: 无 ) +│ │ │ ├── TextCtrl输入文本类 --> ( 难度等级: [0.7208, 0.7211) || 挂载数据: 无 ) +│ │ │ └── Button按钮类 --> ( 难度等级: [0.7211, 0.7214) || 挂载数据: 无 ) +│ │ ├── BoxSizer布局 --> ( 难度等级: [0.7214, 0.7223) || 挂载数据: 无 ) +│ │ │ ├── 什么是BoxSizer --> ( 难度等级: [0.7214, 0.7219) || 挂载数据: 无 ) +│ │ │ └── 使用BoxSizer布局 --> ( 难度等级: [0.7219, 0.7223) || 挂载数据: qa: 1 ) +│ │ └── 事件处理 --> ( 难度等级: [0.7223, 0.7232) || 挂载数据: 无 ) +│ │ ├── 什么是事件 --> ( 难度等级: [0.7223, 0.7228) || 挂载数据: 无 ) +│ │ └── 绑定事件 --> ( 难度等级: [0.7228, 0.7232) || 挂载数据: qa: 1 ) +│ ├── Pygame游戏编程 --> ( 难度等级: [0.7232, 0.7277) || 挂载数据: 无 ) +│ │ ├── 初识Pygame --> ( 难度等级: [0.7232, 0.7247) || 挂载数据: 无 ) +│ │ │ ├── 安装Pygame --> ( 难度等级: [0.7232, 0.724) || 挂载数据: 无 ) +│ │ │ └── Pygame常用模块 --> ( 难度等级: [0.724, 0.7247) || 挂载数据: 无 ) +│ │ ├── Pygame基本使用 --> ( 难度等级: [0.7247, 0.7262) || 挂载数据: 无 ) +│ │ └── 开发Flappy Bird游戏 --> ( 难度等级: [0.7262, 0.7277) || 挂载数据: 无 ) +│ │ ├── 游戏简介 --> ( 难度等级: [0.7262, 0.7264) || 挂载数据: 无 ) +│ │ ├── 游戏分析 --> ( 难度等级: [0.7264, 0.7266) || 挂载数据: qa: 7 ) +│ │ ├── 搭建主框架 --> ( 难度等级: [0.7266, 0.7268) || 挂载数据: qa: 1 ) +│ │ ├── 创建小鸟类 --> ( 难度等级: [0.7268, 0.727) || 挂载数据: 无 ) +│ │ ├── 创建管道类 --> ( 难度等级: [0.727, 0.7273) || 挂载数据: 无 ) +│ │ ├── 计算得分 --> ( 难度等级: [0.7273, 0.7275) || 挂载数据: qa: 1 ) +│ │ └── 碰撞检测 --> ( 难度等级: [0.7275, 0.7277) || 挂载数据: 无 ) +│ ├── 网络爬虫开发 --> ( 难度等级: [0.7277, 0.7321) || 挂载数据: 无 ) +│ │ ├── 初识网络爬虫 --> ( 难度等级: [0.7277, 0.7292) || 挂载数据: 无 ) +│ │ │ ├── 网络爬虫概述 --> ( 难度等级: [0.7277, 0.7282) || 挂载数据: qa: 3 ) +│ │ │ ├── 网络爬虫的分类 --> ( 难度等级: [0.7282, 0.7287) || 挂载数据: 无 ) +│ │ │ └── 网络爬虫的基本原理 --> ( 难度等级: [0.7287, 0.7292) || 挂载数据: 无 ) +│ │ ├── 网络爬虫的常用技术 --> ( 难度等级: [0.7292, 0.7307) || 挂载数据: qa: 1 ) +│ │ │ ├── Python的网络请求 --> ( 难度等级: [0.7292, 0.7295) || 挂载数据: qa: 4 ) +│ │ │ ├── 请求headers处理 --> ( 难度等级: [0.7295, 0.7298) || 挂载数据: qa: 1 ) +│ │ │ ├── 网络超时 --> ( 难度等级: [0.7298, 0.7301) || 挂载数据: qa: 1 ) +│ │ │ ├── 代理服务 --> ( 难度等级: [0.7301, 0.7304) || 挂载数据: 无 ) +│ │ │ └── HTML解析之BeautifulSoup --> ( 难度等级: [0.7304, 0.7307) || 挂载数据: qa: 2 ) +│ │ └── 网络爬虫开发常用框架 --> ( 难度等级: [0.7307, 0.7321) || 挂载数据: 无 ) +│ │ ├── Scrapy爬虫框架 --> ( 难度等级: [0.7307, 0.7312) || 挂载数据: qa: 1 ) +│ │ ├── Crawley爬虫框架 --> ( 难度等级: [0.7312, 0.7316) || 挂载数据: qa: 1 ) +│ │ └── PySpider爬虫框架 --> ( 难度等级: [0.7316, 0.7321) || 挂载数据: 无 ) +│ ├── 使用进程和线程 --> ( 难度等级: [0.7321, 0.7366) || 挂载数据: 无 ) +│ │ ├── 什么是进程 --> ( 难度等级: [0.7321, 0.7329) || 挂载数据: 无 ) +│ │ ├── 创建进程的常用方式 --> ( 难度等级: [0.7329, 0.7336) || 挂载数据: 无 ) +│ │ │ ├── 使用multiprocessing模块创建进程 --> ( 难度等级: [0.7329, 0.7331) || 挂载数据: qa: 1 ) +│ │ │ ├── 使用Process子类创建进程 --> ( 难度等级: [0.7331, 0.7334) || 挂载数据: qa: 1 ) +│ │ │ └── 使用进程池Pool创建进程 --> ( 难度等级: [0.7334, 0.7336) || 挂载数据: qa: 2 ) +│ │ ├── 进程间通信 --> ( 难度等级: [0.7336, 0.7344) || 挂载数据: 无 ) +│ │ │ ├── 队列简介 --> ( 难度等级: [0.7336, 0.7339) || 挂载数据: 无 ) +│ │ │ ├── 多进程队列的使用 --> ( 难度等级: [0.7339, 0.7341) || 挂载数据: qa: 5 ) +│ │ │ └── 使用队列在进程间通信 --> ( 难度等级: [0.7341, 0.7344) || 挂载数据: 无 ) +│ │ ├── 什么是线程 --> ( 难度等级: [0.7344, 0.7351) || 挂载数据: 无 ) +│ │ ├── 创建线程 --> ( 难度等级: [0.7351, 0.7359) || 挂载数据: 无 ) +│ │ │ ├── 使用threading模块创建线程 --> ( 难度等级: [0.7351, 0.7355) || 挂载数据: 无 ) +│ │ │ └── 使用Thread子类创建线程 --> ( 难度等级: [0.7355, 0.7359) || 挂载数据: qa: 1 ) +│ │ └── 线程间通信 --> ( 难度等级: [0.7359, 0.7366) || 挂载数据: 无 ) +│ │ ├── 什么是互斥锁 --> ( 难度等级: [0.7359, 0.7361) || 挂载数据: qa: 1 ) +│ │ ├── 使用互斥锁 --> ( 难度等级: [0.7361, 0.7364) || 挂载数据: 无 ) +│ │ └── 使用队列在线程间通信 --> ( 难度等级: [0.7364, 0.7366) || 挂载数据: 无 ) +│ ├── 网络编程 --> ( 难度等级: [0.7366, 0.7411) || 挂载数据: 无 ) +│ │ ├── 网络基础 --> ( 难度等级: [0.7366, 0.7381) || 挂载数据: 无 ) +│ │ │ ├── TCP/IP简介 --> ( 难度等级: [0.7366, 0.7371) || 挂载数据: qa: 8 ) +│ │ │ ├── UDP简介 --> ( 难度等级: [0.7371, 0.7376) || 挂载数据: 无 ) +│ │ │ └── Socket简介 --> ( 难度等级: [0.7376, 0.7381) || 挂载数据: 无 ) +│ │ ├── TCP编程 --> ( 难度等级: [0.7381, 0.7396) || 挂载数据: 无 ) +│ │ │ ├── 创建TCP服务器 --> ( 难度等级: [0.7381, 0.7386) || 挂载数据: 无 ) +│ │ │ ├── 创建TCP客户端 --> ( 难度等级: [0.7386, 0.7391) || 挂载数据: qa: 1 ) +│ │ │ └── 执行TCP服务器和客户端 --> ( 难度等级: [0.7391, 0.7396) || 挂载数据: 无 ) +│ │ └── UDP编程 --> ( 难度等级: [0.7396, 0.7411) || 挂载数据: 无 ) +│ │ ├── 创建UDP服务器 --> ( 难度等级: [0.7396, 0.7401) || 挂载数据: 无 ) +│ │ ├── 创建UDP客户端 --> ( 难度等级: [0.7401, 0.7406) || 挂载数据: qa: 3 ) +│ │ └── 执行UDP服务器和客户端 --> ( 难度等级: [0.7406, 0.7411) || 挂载数据: 无 ) +│ ├── Web编程 --> ( 难度等级: [0.7411, 0.7455) || 挂载数据: 无 ) +│ │ ├── Web基础 --> ( 难度等级: [0.7411, 0.7426) || 挂载数据: 无 ) +│ │ │ ├── HTTP协议 --> ( 难度等级: [0.7411, 0.7414) || 挂载数据: 无 ) +│ │ │ ├── Web服务器 --> ( 难度等级: [0.7414, 0.7418) || 挂载数据: 无 ) +│ │ │ ├── 前端基础 --> ( 难度等级: [0.7418, 0.7422) || 挂载数据: qa: 10 ) +│ │ │ └── 静态服务器 --> ( 难度等级: [0.7422, 0.7426) || 挂载数据: 无 ) +│ │ ├── WSGI接口 --> ( 难度等级: [0.7426, 0.744) || 挂载数据: 无 ) +│ │ │ ├── CGI简介 --> ( 难度等级: [0.7426, 0.7429) || 挂载数据: 无 ) +│ │ │ ├── WSGI简介 --> ( 难度等级: [0.7429, 0.7433) || 挂载数据: 无 ) +│ │ │ ├── 定义WSGI接口 --> ( 难度等级: [0.7433, 0.7437) || 挂载数据: qa: 3 ) +│ │ │ └── 运行WSGI服务 --> ( 难度等级: [0.7437, 0.744) || 挂载数据: 无 ) +│ │ └── Web框架 --> ( 难度等级: [0.744, 0.7455) || 挂载数据: 无 ) +│ │ ├── 什么是Web框架 --> ( 难度等级: [0.744, 0.7448) || 挂载数据: qa: 3 ) +│ │ └── Python中常用的Web框架 --> ( 难度等级: [0.7448, 0.7455) || 挂载数据: 无 ) +│ └── Flask框架 --> ( 难度等级: [0.7455, 0.75) || 挂载数据: qa: 1 ) +│ ├── Flask简介 --> ( 难度等级: [0.7455, 0.7467) || 挂载数据: 无 ) +│ │ ├── 安装虚拟环境 --> ( 难度等级: [0.7455, 0.7459) || 挂载数据: 无 ) +│ │ ├── 安装Flask --> ( 难度等级: [0.7459, 0.7463) || 挂载数据: qa: 6 ) +│ │ └── 第一个Flask程序 --> ( 难度等级: [0.7463, 0.7467) || 挂载数据: 无 ) +│ ├── Flask基础 --> ( 难度等级: [0.7467, 0.7478) || 挂载数据: 无 ) +│ │ ├── 开启调试模式 --> ( 难度等级: [0.7467, 0.7469) || 挂载数据: 无 ) +│ │ ├── 路由 --> ( 难度等级: [0.7469, 0.7472) || 挂载数据: 无 ) +│ │ ├── 静态文件 --> ( 难度等级: [0.7472, 0.7475) || 挂载数据: 无 ) +│ │ └── 蓝图 --> ( 难度等级: [0.7475, 0.7478) || 挂载数据: 无 ) +│ ├── 模板 --> ( 难度等级: [0.7478, 0.7489) || 挂载数据: 无 ) +│ │ ├── 渲染模板 --> ( 难度等级: [0.7478, 0.7481) || 挂载数据: 无 ) +│ │ ├── 变量 --> ( 难度等级: [0.7481, 0.7485) || 挂载数据: 无 ) +│ │ └── 控制结构 --> ( 难度等级: [0.7485, 0.7489) || 挂载数据: 无 ) +│ └── Web表单 --> ( 难度等级: [0.7489, 0.75) || 挂载数据: 无 ) +│ ├── CSRF保护和验证 --> ( 难度等级: [0.7489, 0.7493) || 挂载数据: 无 ) +│ ├── 表单类 --> ( 难度等级: [0.7493, 0.7496) || 挂载数据: 无 ) +│ └── 把表单渲染成HTML --> ( 难度等级: [0.7496, 0.75) || 挂载数据: 无 ) +└── 其他 --> ( 难度等级: [0.75, 1.0) || 挂载数据: 无 ) + ├── 其他类别标签问题 --> ( 难度等级: [0.75, 0.8333) || 挂载数据: qa: 10 ) + ├── 应用类问题 --> ( 难度等级: [0.8333, 0.9167) || 挂载数据: qa: 10 ) + └── 第三方包问题 --> ( 难度等级: [0.9167, 1.0) || 挂载数据: qa: 10 ) diff --git a/data/tree_java_mapping.json b/data/tree_java_mapping.json index 78ca115..e76a010 100644 --- a/data/tree_java_mapping.json +++ b/data/tree_java_mapping.json @@ -27,20 +27,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0, + "max": 0.0005787037037037037 + }, "related_data": { "qa": { "data_id": [ - "13_671404_528377", - "13_257467_264044", - "13_363393_383608", - "13_178799_63438", - "13_7460884_53446002", - "13_226517_189345", - "13_7458626_53443256", - "13_226164_188403", - "13_701664_591605", - "13_250412_247601" + "13_1099200_1314188@13" ] } } @@ -63,15 +57,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0005787037037037037, + "max": 0.0011574074074074073 + }, "related_data": { "qa": { "data_id": [ - "13_205238_135354", - "13_260709_271460", - "13_7448692_53428840", - "13_242104_229264", - "13_7399873_53347437" + "13_205238_135354@13", + "13_260709_271460@13", + "13_7448692_53428840@13", + "13_242104_229264@13", + "13_7399873_53347437@13" ] } } @@ -91,7 +88,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0011574074074074073, + "max": 0.001736111111111111 + }, "related_data": {} } } @@ -107,7 +107,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0, + "max": 0.001736111111111111 + }, "related_data": {} } } @@ -124,7 +127,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.001736111111111111, + "max": 0.003472222222222222 + }, "related_data": {} } } @@ -144,7 +150,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.003472222222222222, + "max": 0.004050925925925926 + }, "related_data": {} } } @@ -160,7 +169,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.004050925925925926, + "max": 0.004629629629629629 + }, "related_data": {} } } @@ -176,7 +188,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.004629629629629629, + "max": 0.005208333333333333 + }, "related_data": {} } } @@ -194,11 +209,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.003472222222222222, + "max": 0.005208333333333333 + }, "related_data": { "qa": { "data_id": [ - "13_1102323_1316718" + "13_1102323_1316718@13" ] } } @@ -219,11 +237,15 @@ [ [ "字节", - "码" + "码", + "字节码" ] ] ], - "level": "1", + "level": { + "min": 0.005208333333333333, + "max": 0.006944444444444444 + }, "related_data": {} } } @@ -245,7 +267,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.006944444444444444, + "max": 0.008680555555555556 + }, "related_data": {} } } @@ -264,11 +289,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008680555555555556, + "max": 0.008897569444444444 + }, "related_data": { "qa": { "data_id": [ - "13_367835_393873" + "13_367835_393873@13" ] } } @@ -289,22 +317,26 @@ [ [ "面向对象", - "程序设计" + "程序设计", + "面向对象程序设计" ] ] ], - "level": "1", + "level": { + "min": 0.008897569444444444, + "max": 0.00890790343915344 + }, "related_data": { "qa": { "data_id": [ - "13_7435614_53406523", - "13_655971_467090", - "13_7438685_53412086", - "13_223524_181745", - "13_249302_245065", - "13_5159078_31564669", - "13_755395_810862", - "13_379228_411678" + "13_7435614_53406523@13", + "13_655971_467090@13", + "13_7438685_53412086@13", + "13_223524_181745@13", + "13_249302_245065@13", + "13_5159078_31564669@13", + "13_755395_810862@13", + "13_379228_411678@13" ] } } @@ -322,7 +354,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008897569444444444, + "max": 0.00890790343915344 + }, "related_data": {} } } @@ -342,19 +377,22 @@ ] ] ], - "level": "1", + "level": { + "min": 0.00890790343915344, + "max": 0.008908477549970605 + }, "related_data": { "qa": { "data_id": [ - "13_7462730_53448371", - "13_7431662_53400496", - "13_679386_526221", - "13_714438_706322", - "13_224742_184636", - "13_7462548_53448123", - "13_244630_234187", - "13_234890_212657", - "13_7427630_53392329" + "13_7462730_53448371@13", + "13_7431662_53400496@13", + "13_679386_526221@13", + "13_714438_706322@13", + "13_224742_184636@13", + "13_7462548_53448123@13", + "13_244630_234187@13", + "13_234890_212657@13", + "13_7427630_53392329@13" ] } } @@ -376,13 +414,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008908477549970605, + "max": 0.008908764605379187 + }, "related_data": { "qa": { "data_id": [ - "13_666749_485100", - "13_771307_833759", - "13_377001_407308" + "13_666749_485100@13", + "13_771307_833759@13", + "13_377001_407308@13" ] } } @@ -401,16 +442,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008908764605379187, + "max": 0.008909051660787771 + }, "related_data": { "qa": { "data_id": [ - "13_761971_820019", - "13_243812_232700", - "13_226016_187916", - "13_696074_579907", - "13_415472_437125", - "13_7434965_53405502" + "13_761971_820019@13", + "13_243812_232700@13", + "13_226016_187916@13", + "13_696074_579907@13", + "13_415472_437125@13", + "13_7434965_53405502@13" ] } } @@ -429,20 +473,23 @@ [] ] ], - "level": "1", + "level": { + "min": 0.008908477549970605, + "max": 0.008909051660787771 + }, "related_data": { "qa": { "data_id": [ - "13_226483_189039", - "13_226485_189037", - "13_226487_189100", - "13_7466719_53454059", - "13_1057009_1254052", - "13_7457071_53441186", - "13_219700_171443", - "13_687776_552090", - "13_247563_241444", - "13_191129_92420" + "13_226483_189039@13", + "13_226485_189037@13", + "13_226487_189100@13", + "13_7466719_53454059@13", + "13_1057009_1254052@13", + "13_7457071_53441186@13", + "13_219700_171443@13", + "13_687776_552090@13", + "13_247563_241444@13", + "13_191129_92420@13" ] } } @@ -461,7 +508,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008909051660787771, + "max": 0.008909625771604939 + }, "related_data": {} } } @@ -482,20 +532,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008909625771604939, + "max": 0.008909740593768372 + }, "related_data": { "qa": { "data_id": [ - "13_367892_393946", - "13_201106_123244", - "13_737908_799348", - "13_647043_450027", - "13_7428420_53394365", - "13_368121_394415", - "13_746550_796213", - "13_7457016_53441101", - "13_1052529_1250117", - "13_743349_787456" + "13_367892_393946@13", + "13_201106_123244@13", + "13_737908_799348@13", + "13_647043_450027@13", + "13_7428420_53394365@13", + "13_368121_394415@13", + "13_746550_796213@13", + "13_7457016_53441101@13", + "13_1052529_1250117@13", + "13_743349_787456@13" ] } } @@ -516,7 +569,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008909740593768372, + "max": 0.008909855415931806 + }, "related_data": {} } } @@ -533,14 +589,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008909855415931806, + "max": 0.008909970238095238 + }, "related_data": { "qa": { "data_id": [ - "13_743613_788268", - "13_190404_90861", - "13_26443_7195", - "13_219948_171879" + "13_743613_788268@13", + "13_190404_90861@13", + "13_26443_7195@13", + "13_219948_171879@13" ] } } @@ -555,15 +614,19 @@ [ [ "声明", - "字符串" + "字符串", + "声明字符串" ] ] ], - "level": "1", + "level": { + "min": 0.008909970238095238, + "max": 0.008910085060258671 + }, "related_data": { "qa": { "data_id": [ - "13_650487_457285" + "13_650487_457285@13" ] } } @@ -582,7 +645,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008910085060258671, + "max": 0.008910199882422105 + }, "related_data": {} } } @@ -602,7 +668,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008909625771604939, + "max": 0.008910199882422105 + }, "related_data": {} } } @@ -622,20 +691,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008910199882422105, + "max": 0.008910486937830687 + }, "related_data": { "qa": { "data_id": [ - "13_646339_448751", - "13_194845_103504", - "13_680031_528793", - "13_1053489_1250743", - "13_231141_201680", - "13_188499_85495", - "13_749065_801385", - "13_386224_424265", - "13_241473_227672", - "13_233587_208970" + "13_646339_448751@13", + "13_194845_103504@13", + "13_680031_528793@13", + "13_1053489_1250743@13", + "13_231141_201680@13", + "13_188499_85495@13", + "13_749065_801385@13", + "13_386224_424265@13", + "13_241473_227672@13", + "13_233587_208970@13" ] } } @@ -654,12 +726,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008910486937830687, + "max": 0.00891077399323927 + }, "related_data": { "qa": { "data_id": [ - "13_192884_97117", - "13_7463979_53450348" + "13_192884_97117@13", + "13_7463979_53450348@13" ] } } @@ -681,7 +756,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008910199882422105, + "max": 0.00891077399323927 + }, "related_data": {} } } @@ -701,16 +779,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.00891077399323927, + "max": 0.008910917520943562 + }, "related_data": { "qa": { "data_id": [ - "13_248166_242486", - "13_347640_353749", - "13_943977_1081979", - "13_223586_181824", - "13_241802_228279", - "13_385973_423708" + "13_248166_242486@13", + "13_347640_353749@13", + "13_943977_1081979@13", + "13_223586_181824@13", + "13_241802_228279@13", + "13_385973_423708@13" ] } } @@ -729,15 +810,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008910917520943562, + "max": 0.008911061048647854 + }, "related_data": { "qa": { "data_id": [ - "13_7428440_53394176", - "13_27286_7671", - "13_7431539_53399926", - "13_7441406_53417527", - "13_911664_1046928" + "13_7428440_53394176@13", + "13_27286_7671@13", + "13_7431539_53399926@13", + "13_7441406_53417527@13", + "13_911664_1046928@13" ] } } @@ -757,7 +841,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008911061048647854, + "max": 0.008911204576352146 + }, "related_data": {} } } @@ -775,7 +862,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008911204576352146, + "max": 0.008911348104056437 + }, "related_data": {} } } @@ -795,7 +885,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.00891077399323927, + "max": 0.008911348104056437 + }, "related_data": {} } } @@ -815,20 +908,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008911348104056437, + "max": 0.008911443789192631 + }, "related_data": { "qa": { "data_id": [ - "13_645306_446682", - "13_7416199_53370179", - "13_649653_455518", - "13_367904_394013", - "13_229985_198748", - "13_237756_218644", - "13_7436501_53409940", - "13_200367_120788", - "13_700803_590013", - "13_7428676_53394706" + "13_645306_446682@13", + "13_7416199_53370179@13", + "13_649653_455518@13", + "13_367904_394013@13", + "13_229985_198748@13", + "13_237756_218644@13", + "13_7436501_53409940@13", + "13_200367_120788@13", + "13_700803_590013@13", + "13_7428676_53394706@13" ] } } @@ -847,11 +943,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008911443789192631, + "max": 0.008911539474328826 + }, "related_data": { "qa": { "data_id": [ - "13_1066540_1266530" + "13_1066540_1266530@13" ] } } @@ -869,14 +968,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008911539474328826, + "max": 0.00891163515946502 + }, "related_data": { "qa": { "data_id": [ - "13_1062380_1260185", - "13_227483_191726", - "13_171871_48992", - "13_749548_802106" + "13_1062380_1260185@13", + "13_227483_191726@13", + "13_171871_48992@13", + "13_749548_802106@13" ] } } @@ -894,16 +996,20 @@ ] ] ], - "level": "1", + "level": { + "min": 0.00891163515946502, + "max": 0.008911730844601215 + }, "related_data": { "qa": { "data_id": [ - "13_715531_707848", - "13_248273_242854", - "13_229701_197967", - "13_747126_798001", - "13_211354_151502", - "13_1073220_1275549" + "13_715531_707848@13", + "13_248273_242854@13", + "13_229701_197967@13", + "13_7455766_53439088@13", + "13_747126_798001@13", + "13_211354_151502@13", + "13_1073220_1275549@13" ] } } @@ -921,12 +1027,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008911730844601215, + "max": 0.00891182652973741 + }, "related_data": { "qa": { "data_id": [ - "13_1081434_1287396", - "13_197474_111627" + "13_1081434_1287396@13", + "13_197474_111627@13" ] } } @@ -944,12 +1053,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.00891182652973741, + "max": 0.008911922214873604 + }, "related_data": { "qa": { "data_id": [ - "13_231001_201365", - "13_760694_817822" + "13_231001_201365@13", + "13_760694_817822@13" ] } } @@ -967,7 +1079,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008911348104056437, + "max": 0.008911922214873604 + }, "related_data": {} } } @@ -987,20 +1102,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008911922214873604, + "max": 0.008912113585145993 + }, "related_data": { "qa": { "data_id": [ - "13_200430_121005", - "13_371811_398609", - "13_392180_435363", - "13_3242248_21871153", - "13_671673_495828", - "13_365028_387615", - "13_163962_37416", - "13_7439644_53415269", - "13_10042_4633", - "13_698262_585100" + "13_200430_121005@13", + "13_371811_398609@13", + "13_392180_435363@13", + "13_3242248_21871153@13", + "13_671673_495828@13", + "13_365028_387615@13", + "13_163962_37416@13", + "13_7439644_53415269@13", + "13_10042_4633@13", + "13_698262_585100@13" ] } } @@ -1019,15 +1137,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008912113585145993, + "max": 0.008912304955418381 + }, "related_data": { "qa": { "data_id": [ - "13_744838_791529", - "13_206249_138165", - "13_254232_256499", - "13_205820_136969", - "13_386524_424818" + "13_227451_191747@13", + "13_744838_791529@13", + "13_206249_138165@13", + "13_254232_256499@13", + "13_205820_136969@13", + "13_386524_424818@13" ] } } @@ -1046,24 +1168,28 @@ ], [ "时间", - "类" + "类", + "时间类" ] ] ], - "level": "1", + "level": { + "min": 0.008912304955418381, + "max": 0.00891249632569077 + }, "related_data": { "qa": { "data_id": [ - "13_1157_1982", - "13_649407_455044", - "13_1024332_1217702", - "13_644903_446070", - "13_769371_830118", - "13_370748_397449", - "13_689436_557459", - "13_229121_196358", - "13_658255_471354", - "13_158686_23188" + "13_1157_1982@13", + "13_649407_455044@13", + "13_1024332_1217702@13", + "13_644903_446070@13", + "13_214873_160006@13", + "13_769371_830118@13", + "13_370748_397449@13", + "13_689436_557459@13", + "13_229121_196358@13", + "13_658255_471354@13" ] } } @@ -1080,11 +1206,15 @@ ], [ "时间", - "类" + "类", + "时间类" ] ] ], - "level": "1", + "level": { + "min": 0.008911922214873604, + "max": 0.00891249632569077 + }, "related_data": {} } } @@ -1104,7 +1234,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.00891249632569077, + "max": 0.00891268769596316 + }, "related_data": {} } } @@ -1121,15 +1254,11 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_697413_583203", - "13_374925_404050" - ] - } - } + "level": { + "min": 0.00891268769596316, + "max": 0.008912879066235547 + }, + "related_data": {} } } }, @@ -1145,14 +1274,11 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_686618_548542" - ] - } - } + "level": { + "min": 0.008912879066235547, + "max": 0.008913070436507936 + }, + "related_data": {} } } } @@ -1163,11 +1289,15 @@ [ [ "格式化", - "类" + "类", + "格式化类" ] ] ], - "level": "1", + "level": { + "min": 0.00891249632569077, + "max": 0.008913070436507936 + }, "related_data": {} } } @@ -1185,7 +1315,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008913070436507936, + "max": 0.008913644547325102 + }, "related_data": {} } } @@ -1204,7 +1337,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008913644547325102, + "max": 0.008913931602733686 + }, "related_data": {} } } @@ -1221,20 +1357,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008913931602733686, + "max": 0.008914218658142268 + }, "related_data": { "qa": { "data_id": [ - "13_230506_199838", - "13_237972_219323", - "13_225737_187362", - "13_7445678_53424343", - "13_235569_214651", - "13_666332_484367", - "13_7439656_53414125", - "13_1061_1845", - "13_744159_789730", - "13_169034_45213" + "13_230506_199838@13", + "13_237972_219323@13", + "13_225737_187362@13", + "13_7445678_53424343@13", + "13_235569_214651@13", + "13_666332_484367@13", + "13_7439656_53414125@13", + "13_1061_1845@13", + "13_744159_789730@13", + "13_169034_45213@13" ] } } @@ -1249,11 +1388,15 @@ [ "永远", "销毁", - "对象" + "对象", + "不需要" ] ] ], - "level": "1", + "level": { + "min": 0.008913644547325102, + "max": 0.008914218658142268 + }, "related_data": {} } } @@ -1273,7 +1416,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008914218658142268, + "max": 0.008914505713550852 + }, "related_data": {} } } @@ -1289,7 +1435,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008914505713550852, + "max": 0.008914792768959436 + }, "related_data": {} } } @@ -1306,7 +1455,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008914218658142268, + "max": 0.008914792768959436 + }, "related_data": {} } } @@ -1319,11 +1471,15 @@ [ [ "编码", - "风格" + "风格", + "编码风格" ] ] ], - "level": "1", + "level": { + "min": 0.008914792768959436, + "max": 0.008915366879776601 + }, "related_data": {} } } @@ -1342,20 +1498,23 @@ [] ] ], - "level": "1", + "level": { + "min": 0.008915366879776601, + "max": 0.008915940990593767 + }, "related_data": { "qa": { "data_id": [ - "13_238964_221578", - "13_25346_118467", - "13_226230_188450", - "13_212321_153533", - "13_759425_815700", - "13_232316_205015", - "13_762038_820111", - "13_677696_520206", - "13_7439561_53414090", - "13_7414537_53367396" + "13_238964_221578@13", + "13_25346_118467@13", + "13_226230_188450@13", + "13_212321_153533@13", + "13_759425_815700@13", + "13_232316_205015@13", + "13_762038_820111@13", + "13_677696_520206@13", + "13_7439561_53414090@13", + "13_7414537_53367396@13" ] } } @@ -1374,18 +1533,21 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008915940990593767, + "max": 0.008916515101410933 + }, "related_data": { "qa": { "data_id": [ - "13_664297_480984", - "13_253852_256013", - "13_1073213_1275918", - "13_694530_574772", - "13_243396_231804", - "13_689830_558701", - "13_853143_975371", - "13_1096534_1308919" + "13_664297_480984@13", + "13_253852_256013@13", + "13_1073213_1275918@13", + "13_694530_574772@13", + "13_243396_231804@13", + "13_689830_558701@13", + "13_853143_975371@13", + "13_1096534_1308919@13" ] } } @@ -1404,11 +1566,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008916515101410933, + "max": 0.008917089212228101 + }, "related_data": { "qa": { "data_id": [ - "13_658996_472504" + "13_658996_472504@13" ] } } @@ -1431,20 +1596,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008917089212228101, + "max": 0.008917663323045267 + }, "related_data": { "qa": { "data_id": [ - "13_643953_444204", - "13_7438536_53411910", - "13_716869_709882", - "13_230674_200334", - "13_245790_236697", - "13_649879_456066", - "13_693318_570588", - "13_246958_239804", - "13_230603_200072", - "13_189917_89793" + "13_643953_444204@13", + "13_7438536_53411910@13", + "13_716869_709882@13", + "13_230674_200334@13", + "13_245790_236697@13", + "13_649879_456066@13", + "13_693318_570588@13", + "13_246958_239804@13", + "13_230603_200072@13", + "13_189917_89793@13" ] } } @@ -1464,18 +1632,21 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008917663323045267, + "max": 0.008918237433862433 + }, "related_data": { "qa": { "data_id": [ - "13_248557_243459", - "13_649014_454219", - "13_206032_137784", - "13_647514_451236", - "13_228873_195618", - "13_965565_1144705", - "13_238149_219661", - "13_221775_176479" + "13_248557_243459@13", + "13_649014_454219@13", + "13_206032_137784@13", + "13_647514_451236@13", + "13_228873_195618@13", + "13_965565_1144705@13", + "13_238149_219661@13", + "13_221775_176479@13" ] } } @@ -1496,7 +1667,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.00890790343915344, + "max": 0.008918237433862433 + }, "related_data": {} } } @@ -1515,18 +1689,20 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008918237433862433, + "max": 0.008928571428571428 + }, "related_data": { "qa": { "data_id": [ - "13_697317_582288", - "13_714467_706397", - "13_392461_435933", - "13_245922_236929", - "13_934386_1071876", - "13_217423_165670", - "13_946893_1086619", - "13_695053_576582" + "13_697317_582288@13", + "13_714467_706397@13", + "13_392461_435933@13", + "13_245922_236929@13", + "13_934386_1071876@13", + "13_217423_165670@13", + "13_695053_576582@13" ] } } @@ -1544,7 +1720,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008918237433862433, + "max": 0.008928571428571428 + }, "related_data": {} } } @@ -1564,15 +1743,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008928571428571428, + "max": 0.008933738425925927 + }, "related_data": { "qa": { "data_id": [ - "13_742665_785284", - "13_239636_223094", - "13_746314_795601", - "13_235865_215259", - "13_1099786_1314806" + "13_742665_785284@13", + "13_239636_223094@13", + "13_746314_795601@13", + "13_235865_215259@13", + "13_1099786_1314806@13" ] } } @@ -1591,7 +1773,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008933738425925927, + "max": 0.008938905423280423 + }, "related_data": {} } } @@ -1606,11 +1791,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008928571428571428, + "max": 0.008938905423280423 + }, "related_data": { "qa": { "data_id": [ - "13_353733_365578" + "13_353733_365578@13" ] } } @@ -1632,20 +1820,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008938905423280423, + "max": 0.008942350088183422 + }, "related_data": { "qa": { "data_id": [ - "13_743871_789039", - "13_239875_223610", - "13_6180961_42897153", - "13_4646083_29329509", - "13_206150_137795", - "13_7428273_53393813", - "13_252536_252400", - "13_188787_86405", - "13_237832_218792", - "13_227151_190836" + "13_743871_789039@13", + "13_239875_223610@13", + "13_6180961_42897153@13", + "13_4646083_29329509@13", + "13_206150_137795@13", + "13_7428273_53393813@13", + "13_252536_252400@13", + "13_188787_86405@13", + "13_237832_218792@13", + "13_227151_190836@13" ] } } @@ -1663,8 +1854,17 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.008942350088183422, + "max": 0.00894579475308642 + }, + "related_data": { + "qa": { + "data_id": [ + "13_744962_791890@13" + ] + } + } } } }, @@ -1675,19 +1875,23 @@ "seg": [ [ [ - "静态" + "静态", + "静态代码" ] ] ], - "level": "1", + "level": { + "min": 0.00894579475308642, + "max": 0.008949239417989419 + }, "related_data": { "qa": { "data_id": [ - "13_198855_115646", - "13_240165_224249", - "13_649218_454745", - "13_927593_1062529", - "13_171615_48710" + "13_198855_115646@13", + "13_240165_224249@13", + "13_649218_454745@13", + "13_927593_1062529@13", + "13_171615_48710@13" ] } } @@ -1705,20 +1909,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008938905423280423, + "max": 0.008949239417989419 + }, "related_data": { "qa": { "data_id": [ - "13_376539_406524", - "13_742222_783796", - "13_699747_588024", - "13_233350_208090", - "13_245567_236170", - "13_210370_149191", - "13_1056256_1253400", - "13_388204_427768", - "13_384305_420549", - "13_7431265_53399424" + "13_376539_406524@13", + "13_742222_783796@13", + "13_699747_588024@13", + "13_233350_208090@13", + "13_245567_236170@13", + "13_210370_149191@13", + "13_1056256_1253400@13", + "13_388204_427768@13", + "13_384305_420549@13", + "13_7431265_53399424@13" ] } } @@ -1740,19 +1947,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008949239417989419, + "max": 0.008950715702947845 + }, "related_data": { "qa": { "data_id": [ - "13_7460972_53446802", - "13_690395_560350", - "13_7413468_53365407", - "13_1100768_1315549", - "13_7452997_53435534", - "13_742793_785661", - "13_363876_384801", - "13_1083453_1289741", - "13_1568_2584" + "13_7460972_53446802@13", + "13_690395_560350@13", + "13_7413468_53365407@13", + "13_1100768_1315549@13", + "13_7452997_53435534@13", + "13_345493_349800@13", + "13_742793_785661@13", + "13_363876_384801@13", + "13_1083453_1289741@13", + "13_1568_2584@13" ] } } @@ -1768,20 +1979,16 @@ [ "重写", "父类", - "方法" + "方法", + "父类方法" ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_7429170_53395683", - "13_231525_202776", - "13_231366_202310" - ] - } - } + "level": { + "min": 0.008950715702947845, + "max": 0.008952191987906274 + }, + "related_data": {} } } }, @@ -1797,15 +2004,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008952191987906274, + "max": 0.008953668272864701 + }, "related_data": { "qa": { "data_id": [ - "13_367888_393940", - "13_754267_809146", - "13_235073_213164", - "13_235074_213165", - "13_238657_220785" + "13_367888_393940@13", + "13_754267_809146@13", + "13_235073_213164@13", + "13_235074_213165@13", + "13_238657_220785@13" ] } } @@ -1825,15 +2035,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008953668272864701, + "max": 0.00895514455782313 + }, "related_data": { "qa": { "data_id": [ - "13_368223_394610", - "13_7445345_53423867", - "13_250696_248102", - "13_385057_421885", - "13_1061372_1259167" + "13_368223_394610@13", + "13_7445345_53423867@13", + "13_250696_248102@13", + "13_385057_421885@13", + "13_1061372_1259167@13" ] } } @@ -1841,9 +2054,38 @@ } }, { - "super限定": { + "重写父类的方法": { "data": { "uuid": "java-6-29", + "seg": [ + [ + [ + "重写", + "父类", + "方法" + ] + ] + ], + "level": { + "min": 0.00895514455782313, + "max": 0.008956620842781557 + }, + "related_data": { + "qa": { + "data_id": [ + "13_7429170_53395683@13", + "13_231525_202776@13", + "13_231366_202310@13" + ] + } + } + } + } + }, + { + "super限定": { + "data": { + "uuid": "java-6-30", "seg": [ [ [ @@ -1852,7 +2094,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008956620842781557, + "max": 0.008958097127739985 + }, "related_data": {} } } @@ -1860,7 +2105,7 @@ { "调用父类构造器": { "data": { - "uuid": "java-6-30", + "uuid": "java-6-31", "seg": [ [ [ @@ -1871,11 +2116,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008958097127739985, + "max": 0.008959573412698412 + }, "related_data": { "qa": { "data_id": [ - "13_649439_455020" + "13_649439_455020@13" ] } } @@ -1893,11 +2141,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008949239417989419, + "max": 0.008959573412698412 + }, "related_data": { "qa": { "data_id": [ - "13_744476_790559" + "13_744476_790559@13" ] } } @@ -1910,7 +2161,7 @@ { "final关键字修饰类": { "data": { - "uuid": "java-6-31", + "uuid": "java-6-32", "seg": [ [ [ @@ -1921,7 +2172,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008959573412698412, + "max": 0.00896104969765684 + }, "related_data": {} } } @@ -1929,7 +2183,7 @@ { "final关键字修饰方法": { "data": { - "uuid": "java-6-32", + "uuid": "java-6-33", "seg": [ [ [ @@ -1940,7 +2194,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.00896104969765684, + "max": 0.008962525982615268 + }, "related_data": {} } } @@ -1948,7 +2205,7 @@ { "final关键字修饰变量": { "data": { - "uuid": "java-6-33", + "uuid": "java-6-34", "seg": [ [ [ @@ -1959,16 +2216,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008962525982615268, + "max": 0.008964002267573696 + }, "related_data": { "qa": { "data_id": [ - "13_644382_445076", - "13_7462269_53447711", - "13_7462182_53447614", - "13_27752_7676", - "13_235071_213125", - "13_663594_479948" + "13_644382_445076@13", + "13_7462269_53447711@13", + "13_7462182_53447614@13", + "13_27752_7676@13", + "13_235071_213125@13", + "13_663594_479948@13" ] } } @@ -1978,7 +2238,7 @@ { "final数据": { "data": { - "uuid": "java-6-34", + "uuid": "java-6-35", "seg": [ [ [ @@ -1987,11 +2247,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008964002267573696, + "max": 0.008965478552532123 + }, "related_data": { "qa": { "data_id": [ - "13_7446166_53425347" + "13_7446166_53425347@13" ] } } @@ -2001,7 +2264,7 @@ { "final方法": { "data": { - "uuid": "java-6-35", + "uuid": "java-6-36", "seg": [ [ [ @@ -2010,11 +2273,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008965478552532123, + "max": 0.008966954837490552 + }, "related_data": { "qa": { "data_id": [ - "13_251711_250590" + "13_251711_250590@13" ] } } @@ -2024,7 +2290,7 @@ { "final类": { "data": { - "uuid": "java-6-36", + "uuid": "java-6-37", "seg": [ [ [ @@ -2033,7 +2299,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008966954837490552, + "max": 0.008968431122448979 + }, "related_data": {} } } @@ -2041,7 +2310,7 @@ { "有关final的忠告": { "data": { - "uuid": "java-6-37", + "uuid": "java-6-38", "seg": [ [ [ @@ -2050,7 +2319,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008968431122448979, + "max": 0.008969907407407407 + }, "related_data": {} } } @@ -2066,7 +2338,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008959573412698412, + "max": 0.008969907407407407 + }, "related_data": {} } } @@ -2077,7 +2352,7 @@ { "多态概述": { "data": { - "uuid": "java-6-38", + "uuid": "java-6-39", "seg": [ [ [ @@ -2086,20 +2361,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008969907407407407, + "max": 0.008971974206349206 + }, "related_data": { "qa": { "data_id": [ - "13_741842_782613", - "13_351549_361191", - "13_7438293_53411620", - "13_1090881_1297951", - "13_237926_219252", - "13_255460_259428", - "13_1049647_1247094", - "13_713570_705004", - "13_214915_160105", - "13_758620_814583" + "13_741842_782613@13", + "13_351549_361191@13", + "13_7438293_53411620@13", + "13_1090881_1297951@13", + "13_237926_219252@13", + "13_255460_259428@13", + "13_1049647_1247094@13", + "13_713570_705004@13", + "13_214915_160105@13", + "13_758620_814583@13" ] } } @@ -2109,7 +2387,7 @@ { "对象的类型转换": { "data": { - "uuid": "java-6-39", + "uuid": "java-6-40", "seg": [ [ [ @@ -2118,7 +2396,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008971974206349206, + "max": 0.008974041005291006 + }, "related_data": {} } } @@ -2139,7 +2420,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008974041005291006, + "max": 0.008974557705026455 + }, "related_data": {} } } @@ -2153,7 +2437,10 @@ [] ] ], - "level": "1", + "level": { + "min": 0.008974557705026455, + "max": 0.008975074404761904 + }, "related_data": {} } } @@ -2169,7 +2456,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008975074404761904, + "max": 0.008975591104497355 + }, "related_data": {} } } @@ -2192,14 +2482,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008975591104497355, + "max": 0.008976107804232804 + }, "related_data": {} } } } ], "data": { - "uuid": "java-6-40", + "uuid": "java-6-41", "seg": [ [ [ @@ -2207,7 +2500,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008974041005291006, + "max": 0.008976107804232804 + }, "related_data": {} } } @@ -2215,7 +2511,7 @@ { "多态性": { "data": { - "uuid": "java-6-41", + "uuid": "java-6-42", "seg": [ [ [ @@ -2223,12 +2519,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008976107804232804, + "max": 0.008978174603174604 + }, "related_data": { "qa": { "data_id": [ - "13_351438_360922", - "13_205050_134793" + "13_351438_360922@13", + "13_205050_134793@13" ] } } @@ -2238,7 +2537,7 @@ { "引用变量的强制类型转换": { "data": { - "uuid": "java-6-42", + "uuid": "java-6-43", "seg": [ [ [ @@ -2249,11 +2548,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008978174603174604, + "max": 0.008980241402116403 + }, "related_data": { "qa": { "data_id": [ - "13_647707_451443" + "13_647707_451443@13" ] } } @@ -2270,12 +2572,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008969907407407407, + "max": 0.008980241402116403 + }, "related_data": { "qa": { "data_id": [ - "13_367898_394000", - "13_700081_588659" + "13_367898_394000@13", + "13_700081_588659@13" ] } } @@ -2288,17 +2593,21 @@ { "Lambda表达式入门": { "data": { - "uuid": "java-6-43", + "uuid": "java-6-44", "seg": [ [ [ "lambda", "表达式", - "入门" + "入门", + "表达式入门" ] ] ], - "level": "1", + "level": { + "min": 0.008980241402116403, + "max": 0.008990575396825396 + }, "related_data": {} } } @@ -2315,7 +2624,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008980241402116403, + "max": 0.008990575396825396 + }, "related_data": {} } } @@ -2333,7 +2645,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008990575396825396, + "max": 0.009000909391534391 + }, "related_data": {} } } @@ -2346,11 +2661,15 @@ [ [ "程序", - "结构" + "结构", + "基本结构" ] ] ], - "level": "1", + "level": { + "min": 0.009000909391534391, + "max": 0.009011243386243387 + }, "related_data": {} } } @@ -2364,11 +2683,15 @@ [ "面向对象", "程序设计", - "简介" + "简介", + "面向对象程序设计" ] ] ], - "level": "1", + "level": { + "min": 0.009011243386243387, + "max": 0.009021577380952382 + }, "related_data": {} } } @@ -2385,7 +2708,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.009021577380952382, + "max": 0.009031911375661375 + }, "related_data": {} } } @@ -2396,20 +2722,24 @@ { "方法的所属性": { "data": { - "uuid": "java-6-44", + "uuid": "java-6-45", "seg": [ [ [ "方法", - "属性" + "属性", + "所属性" ] ] ], - "level": "1", + "level": { + "min": 0.009031911375661375, + "max": 0.009034494874338625 + }, "related_data": { "qa": { "data_id": [ - "13_7449270_53429310" + "13_7449270_53429310@13" ] } } @@ -2419,7 +2749,7 @@ { "方法的参数传递机制": { "data": { - "uuid": "java-6-45", + "uuid": "java-6-46", "seg": [ [ [ @@ -2429,12 +2759,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.009034494874338625, + "max": 0.009037078373015872 + }, "related_data": { "qa": { "data_id": [ - "13_1527570_5925411", - "13_171611_48707" + "13_1527570_5925411@13", + "13_171611_48707@13" ] } } @@ -2444,23 +2777,27 @@ { "形参个数可变的方法": { "data": { - "uuid": "java-6-46", + "uuid": "java-6-47", "seg": [ [ [ "形参", "个数", "可变", - "方法" + "方法", + "形参个数" ] ] ], - "level": "1", + "level": { + "min": 0.009037078373015872, + "max": 0.009039661871693121 + }, "related_data": { "qa": { "data_id": [ - "13_199141_116450", - "13_7458143_53442625" + "13_199141_116450@13", + "13_7458143_53442625@13" ] } } @@ -2470,7 +2807,7 @@ { "递归方法": { "data": { - "uuid": "java-6-47", + "uuid": "java-6-48", "seg": [ [ [ @@ -2479,13 +2816,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.009039661871693121, + "max": 0.00904224537037037 + }, "related_data": { "qa": { "data_id": [ - "13_249303_245064", - "13_7434427_53404820", - "13_224770_184744" + "13_249303_245064@13", + "13_7434427_53404820@13", + "13_224770_184744@13", + "13_996119_1169609@13" ] } } @@ -2503,7 +2844,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.009031911375661375, + "max": 0.00904224537037037 + }, "related_data": {} } } @@ -2514,7 +2858,7 @@ { "理解类成员": { "data": { - "uuid": "java-6-48", + "uuid": "java-6-49", "seg": [ [ [ @@ -2524,18 +2868,21 @@ ] ] ], - "level": "1", + "level": { + "min": 0.00904224537037037, + "max": 0.009047412367724869 + }, "related_data": { "qa": { "data_id": [ - "13_7457323_53441491", - "13_1101498_1316024", - "13_661623_476813", - "13_226013_187898", - "13_654400_463961", - "13_682283_536429", - "13_357467_374207", - "13_7410647_53361432" + "13_7457323_53441491@13", + "13_1101498_1316024@13", + "13_661623_476813@13", + "13_226013_187898@13", + "13_654400_463961@13", + "13_682283_536429@13", + "13_357467_374207@13", + "13_7410647_53361432@13" ] } } @@ -2545,7 +2892,7 @@ { "单例(Singleton)类": { "data": { - "uuid": "java-6-49", + "uuid": "java-6-50", "seg": [ [ [ @@ -2555,7 +2902,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.009047412367724869, + "max": 0.009052579365079366 + }, "related_data": {} } } @@ -2571,7 +2921,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.00904224537037037, + "max": 0.009052579365079366 + }, "related_data": {} } } @@ -2582,7 +2935,7 @@ { "final成员变量": { "data": { - "uuid": "java-6-50", + "uuid": "java-6-51", "seg": [ [ [ @@ -2592,15 +2945,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.009052579365079366, + "max": 0.009054646164021164 + }, "related_data": { "qa": { "data_id": [ - "13_363475_383776", - "13_749754_802420", - "13_183027_69464", - "13_327076_320861", - "13_148685_12868" + "13_363475_383776@13", + "13_749754_802420@13", + "13_183027_69464@13", + "13_327076_320861@13", + "13_148685_12868@13" ] } } @@ -2610,7 +2966,7 @@ { "final局部变量": { "data": { - "uuid": "java-6-51", + "uuid": "java-6-52", "seg": [ [ [ @@ -2619,17 +2975,20 @@ ] ] ], - "level": "1", + "level": { + "min": 0.009054646164021164, + "max": 0.009056712962962963 + }, "related_data": { "qa": { "data_id": [ - "13_239715_223318", - "13_645991_448137", - "13_1048888_1246392", - "13_823772_919501", - "13_746606_796375", - "13_7448848_53428971", - "13_1096630_1309080" + "13_239715_223318@13", + "13_645991_448137@13", + "13_1048888_1246392@13", + "13_823772_919501@13", + "13_746606_796375@13", + "13_7448848_53428971@13", + "13_1096630_1309080@13" ] } } @@ -2639,14 +2998,15 @@ { "final修饰基本类型变量和引用类型变量的区别": { "data": { - "uuid": "java-6-52", + "uuid": "java-6-53", "seg": [ [ [ "final", "修饰", "类型", - "变量" + "变量", + "基本类型" ], [ "引用", @@ -2656,12 +3016,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.009056712962962963, + "max": 0.009058779761904763 + }, "related_data": { "qa": { "data_id": [ - "13_210697_149829", - "13_1043212_1239911" + "13_210697_149829@13", + "13_229518_197480@13", + "13_1043212_1239911@13" ] } } @@ -2671,7 +3035,7 @@ { "可执行“宏替换”的final变量": { "data": { - "uuid": "java-6-53", + "uuid": "java-6-54", "seg": [ [ [ @@ -2683,11 +3047,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.009058779761904763, + "max": 0.009060846560846561 + }, "related_data": { "qa": { "data_id": [ - "13_743242_787145" + "13_743242_787145@13" ] } } @@ -2697,7 +3064,7 @@ { "不可变类": { "data": { - "uuid": "java-6-54", + "uuid": "java-6-55", "seg": [ [ [ @@ -2705,7 +3072,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.009060846560846561, + "max": 0.00906291335978836 + }, "related_data": {} } } @@ -2721,11 +3091,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.009052579365079366, + "max": 0.00906291335978836 + }, "related_data": { "qa": { "data_id": [ - "13_192438_95660" + "13_192438_95660@13" ] } } @@ -2738,7 +3111,7 @@ { "接口的概念": { "data": { - "uuid": "java-6-55", + "uuid": "java-6-56", "seg": [ [ [ @@ -2747,7 +3120,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.00906291335978836, + "max": 0.009065496858465609 + }, "related_data": {} } } @@ -2755,7 +3131,7 @@ { "Java 9中接口的定义": { "data": { - "uuid": "java-6-56", + "uuid": "java-6-57", "seg": [ [ [ @@ -2765,7 +3141,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.009065496858465609, + "max": 0.009068080357142856 + }, "related_data": {} } } @@ -2773,7 +3152,7 @@ { "接口的继承": { "data": { - "uuid": "java-6-57", + "uuid": "java-6-58", "seg": [ [ [ @@ -2782,14 +3161,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.009068080357142856, + "max": 0.009070663855820105 + }, "related_data": { "qa": { "data_id": [ - "13_245473_235925", - "13_7457177_53441291", - "13_201279_123570", - "13_243567_232140" + "13_245473_235925@13", + "13_7457177_53441291@13", + "13_201279_123570@13", + "13_243567_232140@13" ] } } @@ -2799,7 +3181,7 @@ { "面向接口编程": { "data": { - "uuid": "java-6-58", + "uuid": "java-6-59", "seg": [ [ [ @@ -2809,7 +3191,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.009070663855820105, + "max": 0.009073247354497355 + }, "related_data": {} } } @@ -2826,7 +3211,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.00906291335978836, + "max": 0.009073247354497355 + }, "related_data": {} } } @@ -2837,7 +3225,7 @@ { "在Lambda表达式中使用var": { "data": { - "uuid": "java-6-59", + "uuid": "java-6-60", "seg": [ [ [ @@ -2847,7 +3235,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.009073247354497355, + "max": 0.009078414351851853 + }, "related_data": {} } } @@ -2855,7 +3246,7 @@ { "使用Lambda表达式调用Arrays的类方法": { "data": { - "uuid": "java-6-60", + "uuid": "java-6-61", "seg": [ [ [ @@ -2864,11 +3255,15 @@ "调用", "arrays", "类", - "方法" + "方法", + "类方法" ] ] ], - "level": "1", + "level": { + "min": 0.009078414351851853, + "max": 0.00908358134920635 + }, "related_data": {} } } @@ -2886,7 +3281,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.009073247354497355, + "max": 0.00908358134920635 + }, "related_data": {} } } @@ -2897,17 +3295,21 @@ { "手动实现枚举类": { "data": { - "uuid": "java-6-61", + "uuid": "java-6-62", "seg": [ [ [ "手动", "枚举", - "类" + "类", + "枚举类" ] ] ], - "level": "1", + "level": { + "min": 0.00908358134920635, + "max": 0.0090861648478836 + }, "related_data": {} } } @@ -2915,17 +3317,21 @@ { "枚举类入门": { "data": { - "uuid": "java-6-62", + "uuid": "java-6-63", "seg": [ [ [ "枚举", "类", - "入门" + "入门", + "枚举类" ] ] ], - "level": "1", + "level": { + "min": 0.0090861648478836, + "max": 0.009088748346560847 + }, "related_data": {} } } @@ -2933,23 +3339,27 @@ { "实现接口的枚举类": { "data": { - "uuid": "java-6-63", + "uuid": "java-6-64", "seg": [ [ [ "接口", "枚举", - "类" + "类", + "枚举类" ] ] ], - "level": "1", + "level": { + "min": 0.009088748346560847, + "max": 0.009091331845238096 + }, "related_data": { "qa": { "data_id": [ - "13_978351_1139543", - "13_1099890_1314864", - "13_350096_358348" + "13_978351_1139543@13", + "13_1099890_1314864@13", + "13_350096_358348@13" ] } } @@ -2959,7 +3369,7 @@ { "包含抽象方法的枚举类": { "data": { - "uuid": "java-6-64", + "uuid": "java-6-65", "seg": [ [ [ @@ -2967,11 +3377,15 @@ "抽象", "方法", "枚举", - "类" + "类", + "枚举类" ] ] ], - "level": "1", + "level": { + "min": 0.009091331845238096, + "max": 0.009093915343915345 + }, "related_data": {} } } @@ -2983,11 +3397,15 @@ [ [ "枚举", - "类" + "类", + "枚举类" ] ] ], - "level": "1", + "level": { + "min": 0.00908358134920635, + "max": 0.009093915343915345 + }, "related_data": {} } } @@ -3004,7 +3422,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.009093915343915345, + "max": 0.009104249338624339 + }, "related_data": {} } } @@ -3015,7 +3436,7 @@ { "jar命令详解": { "data": { - "uuid": "java-6-65", + "uuid": "java-6-66", "seg": [ [ [ @@ -3025,20 +3446,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.009104249338624339, + "max": 0.009107694003527338 + }, "related_data": { "qa": { "data_id": [ - "13_717973_711482", - "13_743148_786843", - "13_182737_68911", - "13_211121_150722", - "13_699581_822481", - "13_1372048_4153928", - "13_745838_794360", - "13_688355_554009", - "13_7442603_53419541", - "13_751779_805553" + "13_717973_711482@13", + "13_743148_786843@13", + "13_182737_68911@13", + "13_211121_150722@13", + "13_699581_822481@13", + "13_1372048_4153928@13", + "13_745838_794360@13", + "13_688355_554009@13", + "13_7442603_53419541@13", + "13_751779_805553@13" ] } } @@ -3048,7 +3472,7 @@ { "创建可执行的JAR包": { "data": { - "uuid": "java-6-66", + "uuid": "java-6-67", "seg": [ [ [ @@ -3059,14 +3483,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.009107694003527338, + "max": 0.009111138668430335 + }, "related_data": { "qa": { "data_id": [ - "13_7428718_53394923", - "13_385063_421890", - "13_7444397_53422855", - "13_365759_389327" + "13_7428718_53394923@13", + "13_385063_421890@13", + "13_7444397_53422855@13", + "13_365759_389327@13" ] } } @@ -3076,7 +3503,7 @@ { "关于JAR包的技巧": { "data": { - "uuid": "java-6-67", + "uuid": "java-6-68", "seg": [ [ [ @@ -3086,20 +3513,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.009111138668430335, + "max": 0.009114583333333334 + }, "related_data": { "qa": { "data_id": [ - "13_258047_265388", - "13_258049_265390", - "13_26342_7164", - "13_362936_382638", - "13_516180_438776", - "13_676976_517579", - "13_684201_541669", - "13_168121_43134", - "13_699393_587396", - "13_661286_476444" + "13_258047_265388@13", + "13_258049_265390@13", + "13_26342_7164@13", + "13_362936_382638@13", + "13_516180_438776@13", + "13_676976_517579@13", + "13_684201_541669@13", + "13_168121_43134@13", + "13_699393_587396@13", + "13_661286_476444@13" ] } } @@ -3118,7 +3548,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.009104249338624339, + "max": 0.009114583333333334 + }, "related_data": {} } } @@ -3133,7 +3566,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.008897569444444444, + "max": 0.009114583333333334 + }, "related_data": {} } } @@ -3149,7 +3585,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.009114583333333334, + "max": 0.009331597222222222 + }, "related_data": {} } } @@ -3165,8 +3604,26 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.009331597222222222, + "max": 0.009548611111111112 + }, + "related_data": { + "qa": { + "data_id": [ + "13_7433549_53403930@13", + "13_348292_355015@13", + "13_193570_99083@13", + "13_7463853_53450090@13", + "13_745175_792537@13", + "13_700629_589595@13", + "13_741967_783094@13", + "13_1069468_1270897@13", + "13_363298_383427@13", + "13_744754_791340@13" + ] + } + } } } }, @@ -3182,7 +3639,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.009548611111111112, + "max": 0.009765625 + }, "related_data": {} } } @@ -3201,7 +3661,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.009765625, + "max": 0.009982638888888888 + }, "related_data": {} } } @@ -3217,11 +3680,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.009982638888888888, + "max": 0.010199652777777778 + }, "related_data": { "qa": { "data_id": [ - "13_507688_438157" + "13_507688_438157@13" ] } } @@ -3239,7 +3705,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.010199652777777778, + "max": 0.010416666666666666 + }, "related_data": {} } } @@ -3252,11 +3721,15 @@ [ "java", "关键", - "特性" + "特性", + "关键特性" ] ] ], - "level": "1", + "level": { + "min": 0.008680555555555556, + "max": 0.010416666666666666 + }, "related_data": {} } } @@ -3274,7 +3747,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.010416666666666666, + "max": 0.012152777777777776 + }, "related_data": {} } } @@ -3291,14 +3767,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.012152777777777776, + "max": 0.013888888888888888 + }, "related_data": { "qa": { "data_id": [ - "13_367769_393774", - "13_239256_222233", - "13_388116_427605", - "13_246115_237271" + "13_367769_393774@13", + "13_239256_222233@13", + "13_388116_427605@13", + "13_246115_237271@13" ] } } @@ -3317,7 +3796,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.013888888888888888, + "max": 0.015625 + }, "related_data": {} } } @@ -3336,7 +3818,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0, + "max": 0.015625 + }, "related_data": {} } } @@ -3358,7 +3843,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.015625, + "max": 0.016145833333333335 + }, "related_data": {} } } @@ -3374,7 +3862,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.016145833333333335, + "max": 0.016666666666666666 + }, "related_data": {} } } @@ -3391,7 +3882,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.016666666666666666, + "max": 0.0171875 + }, "related_data": {} } } @@ -3410,7 +3904,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0171875, + "max": 0.017708333333333333 + }, "related_data": {} } } @@ -3422,11 +3919,15 @@ [ [ "面向对象", - "基础" + "基础", + "面向对象基础" ] ] ], - "level": "1", + "level": { + "min": 0.0171875, + "max": 0.017708333333333333 + }, "related_data": {} } } @@ -3445,7 +3946,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.017708333333333333, + "max": 0.017881944444444443 + }, "related_data": {} } } @@ -3462,11 +3966,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.017881944444444443, + "max": 0.018055555555555557 + }, "related_data": { "qa": { "data_id": [ - "13_189675_88984" + "13_189675_88984@13" ] } } @@ -3481,11 +3988,15 @@ [ [ "记录", - "类" + "类", + "记录类" ] ] ], - "level": "1", + "level": { + "min": 0.018055555555555557, + "max": 0.018229166666666668 + }, "related_data": {} } } @@ -3498,11 +4009,15 @@ [ "java", "核心", - "类" + "类", + "核心类" ] ] ], - "level": "1", + "level": { + "min": 0.017708333333333333, + "max": 0.018229166666666668 + }, "related_data": {} } } @@ -3517,11 +4032,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.015625, + "max": 0.018229166666666668 + }, "related_data": { "qa": { "data_id": [ - "13_242160_229281" + "13_242160_229281@13" ] } } @@ -3543,20 +4061,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.018229166666666668, + "max": 0.019097222222222224 + }, "related_data": { "qa": { "data_id": [ - "13_655417_466070", - "13_7404384_53353167", - "13_751134_804601", - "13_350480_359164", - "13_7437465_53410388", - "13_7452868_53435231", - "13_7464798_53451372", - "13_250174_247028", - "13_189415_88208", - "13_241824_228433" + "13_655417_466070@13", + "13_7404384_53353167@13", + "13_751134_804601@13", + "13_268260_287975@13", + "13_350480_359164@13", + "13_7437465_53410388@13", + "13_7452868_53435231@13", + "13_7464798_53451372@13", + "13_250174_247028@13", + "13_189415_88208@13" ] } } @@ -3574,7 +4095,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.019097222222222224, + "max": 0.019965277777777776 + }, "related_data": {} } } @@ -3588,15 +4112,19 @@ [ "深入分析", "示例", - "程序" + "程序", + "示例程序" ] ] ], - "level": "1", + "level": { + "min": 0.019965277777777776, + "max": 0.020833333333333332 + }, "related_data": { "qa": { "data_id": [ - "13_7427712_53393792" + "13_7427712_53393792@13" ] } } @@ -3613,12 +4141,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.018229166666666668, + "max": 0.020833333333333332 + }, "related_data": { "qa": { "data_id": [ - "13_7465109_53451853", - "13_7408455_53358590" + "13_7465109_53451853@13", + "13_7408455_53358590@13" ] } } @@ -3637,7 +4168,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.020833333333333332, + "max": 0.0234375 + }, "related_data": {} } } @@ -3656,12 +4190,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0234375, + "max": 0.024739583333333332 + }, "related_data": { "qa": { "data_id": [ - "13_1061430_1259246", - "13_180147_66009" + "13_1061430_1259246@13", + "13_180147_66009@13" ] } } @@ -3679,20 +4216,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.024739583333333332, + "max": 0.026041666666666664 + }, "related_data": { "qa": { "data_id": [ - "13_653786_462930", - "13_1103782_1318093", - "13_698343_585296", - "13_363788_384621", - "13_838745_946979", - "13_176038_57439", - "13_7443813_53421121", - "13_227819_192612", - "13_374627_403645", - "13_7395564_53338164" + "13_653786_462930@13", + "13_1103782_1318093@13", + "13_698343_585296@13", + "13_363788_384621@13", + "13_901985_1038162@13", + "13_838745_946979@13", + "13_176038_57439@13", + "13_7443813_53421121@13", + "13_227819_192612@13", + "13_374627_403645@13" ] } } @@ -3710,7 +4250,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0234375, + "max": 0.026041666666666664 + }, "related_data": {} } } @@ -3724,7 +4267,10 @@ [] ] ], - "level": "1", + "level": { + "min": 0.026041666666666664, + "max": 0.028645833333333332 + }, "related_data": {} } } @@ -3741,7 +4287,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.028645833333333332, + "max": 0.03125 + }, "related_data": {} } } @@ -3757,7 +4306,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.015625, + "max": 0.03125 + }, "related_data": {} } } @@ -3779,7 +4331,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03125, + "max": 0.031661184210526314 + }, "related_data": {} } } @@ -3791,11 +4346,15 @@ "seg": [ [ [ - "类型" + "类型", + "基本类型" ] ] ], - "level": "1", + "level": { + "min": 0.031661184210526314, + "max": 0.032072368421052634 + }, "related_data": {} } } @@ -3814,20 +4373,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.032072368421052634, + "max": 0.03217516447368421 + }, "related_data": { "qa": { "data_id": [ - "13_384356_420704", - "13_380913_414242", - "13_349519_357317", - "13_252225_251691", - "13_381015_414381", - "13_162354_33293", - "13_642605_442049", - "13_1101_1915", - "13_163136_39714", - "13_380143_412682" + "13_384356_420704@13", + "13_380913_414242@13", + "13_349519_357317@13", + "13_252225_251691@13", + "13_381015_414381@13", + "13_162354_33293@13", + "13_642605_442049@13", + "13_1101_1915@13", + "13_163136_39714@13", + "13_380143_412682@13" ] } } @@ -3845,11 +4407,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03217516447368421, + "max": 0.03227796052631579 + }, "related_data": { "qa": { "data_id": [ - "13_686010_546855" + "13_686010_546855@13" ] } } @@ -3867,20 +4432,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03227796052631579, + "max": 0.03238075657894737 + }, "related_data": { "qa": { "data_id": [ - "13_648965_454027", - "13_876762_1011626", - "13_7444810_53423372", - "13_7430279_53397348", - "13_7440247_53415307", - "13_1062044_1259901", - "13_676503_515839", - "13_168074_43334", - "13_685323_544795", - "13_225242_186094" + "13_648965_454027@13", + "13_876762_1011626@13", + "13_7444810_53423372@13", + "13_7430279_53397348@13", + "13_7440247_53415307@13", + "13_1062044_1259901@13", + "13_676503_515839@13", + "13_685323_544795@13", + "13_225242_186094@13", + "13_672213_497036@13" ] } } @@ -3898,17 +4466,20 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03238075657894737, + "max": 0.03248355263157895 + }, "related_data": { "qa": { "data_id": [ - "13_233092_207241", - "13_233920_209966", - "13_651836_459462", - "13_771075_833372", - "13_7445614_53424317", - "13_7395750_53338623", - "13_646347_473574" + "13_233092_207241@13", + "13_233920_209966@13", + "13_651836_459462@13", + "13_771075_833372@13", + "13_7445614_53424317@13", + "13_7395750_53338623@13", + "13_646347_473574@13" ] } } @@ -3925,7 +4496,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.032072368421052634, + "max": 0.03248355263157895 + }, "related_data": {} } } @@ -3944,7 +4518,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03248355263157895, + "max": 0.032689144736842105 + }, "related_data": {} } } @@ -3960,16 +4537,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.032689144736842105, + "max": 0.03289473684210526 + }, "related_data": { "qa": { "data_id": [ - "13_648431_452875", - "13_1102943_1317342", - "13_390798_432619", - "13_696977_581565", - "13_1065062_1264135", - "13_643136_443094" + "13_648431_452875@13", + "13_1102943_1317342@13", + "13_390798_432619@13", + "13_696977_581565@13", + "13_1065062_1264135@13", + "13_643136_443094@13" ] } } @@ -3982,11 +4562,15 @@ "seg": [ [ [ - "浮点" + "浮点", + "浮点型" ] ] ], - "level": "1", + "level": { + "min": 0.03248355263157895, + "max": 0.03289473684210526 + }, "related_data": {} } } @@ -3998,15 +4582,19 @@ "seg": [ [ [ - "字符" + "字符", + "字符型" ] ] ], - "level": "1", + "level": { + "min": 0.03289473684210526, + "max": 0.03330592105263158 + }, "related_data": { "qa": { "data_id": [ - "13_7399831_53347376" + "13_7399831_53347376@13" ] } } @@ -4020,11 +4608,15 @@ "seg": [ [ [ - "布尔" + "布尔", + "布尔型" ] ] ], - "level": "1", + "level": { + "min": 0.03330592105263158, + "max": 0.033717105263157895 + }, "related_data": {} } } @@ -4041,16 +4633,20 @@ [ "整型", "字", - "面值" + "面值", + "字面值" ] ] ], - "level": "1", + "level": { + "min": 0.033717105263157895, + "max": 0.033799342105263155 + }, "related_data": { "qa": { "data_id": [ - "13_771219_833611", - "13_7406501_53355981" + "13_771219_833611@13", + "13_7406501_53355981@13" ] } } @@ -4066,11 +4662,16 @@ [ "浮点", "字", - "面值" + "面值", + "浮点型", + "字面值" ] ] ], - "level": "1", + "level": { + "min": 0.033799342105263155, + "max": 0.03388157894736842 + }, "related_data": {} } } @@ -4084,11 +4685,16 @@ [ "布尔", "字", - "面值" + "面值", + "布尔型", + "字面值" ] ] ], - "level": "1", + "level": { + "min": 0.03388157894736842, + "max": 0.03396381578947368 + }, "related_data": {} } } @@ -4102,12 +4708,23 @@ [ "字符", "字", - "面值" + "面值", + "字符型", + "字面值" ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.03396381578947368, + "max": 0.03404605263157895 + }, + "related_data": { + "qa": { + "data_id": [ + "13_1064896_1263931@13" + ] + } + } } } }, @@ -4120,11 +4737,16 @@ [ "字符串", "字", - "面值" + "面值", + "字符串字", + "字面值" ] ] ], - "level": "1", + "level": { + "min": 0.03404605263157895, + "max": 0.03412828947368421 + }, "related_data": {} } } @@ -4137,11 +4759,15 @@ [ "深入分析", "字", - "面值" + "面值", + "字面值" ] ] ], - "level": "1", + "level": { + "min": 0.033717105263157895, + "max": 0.03412828947368421 + }, "related_data": {} } } @@ -4161,11 +4787,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03412828947368421, + "max": 0.03426535087719298 + }, "related_data": { "qa": { "data_id": [ - "13_225165_185862" + "13_225165_185862@13" ] } } @@ -4184,7 +4813,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03426535087719298, + "max": 0.034402412280701754 + }, "related_data": {} } } @@ -4204,7 +4836,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.034402412280701754, + "max": 0.03453947368421052 + }, "related_data": {} } } @@ -4219,7 +4854,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03412828947368421, + "max": 0.03453947368421052 + }, "related_data": {} } } @@ -4240,7 +4878,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03453947368421052, + "max": 0.034745065789473686 + }, "related_data": {} } } @@ -4255,18 +4896,22 @@ "强制", "转换", "兼容", - "类型" + "类型", + "不兼容" ] ] ], - "level": "1", + "level": { + "min": 0.034745065789473686, + "max": 0.03495065789473684 + }, "related_data": { "qa": { "data_id": [ - "13_926503_1061349", - "13_212404_153704", - "13_366745_391588", - "13_373460_401567" + "13_926503_1061349@13", + "13_212404_153704@13", + "13_366745_391588@13", + "13_373460_401567@13" ] } } @@ -4287,11 +4932,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03453947368421052, + "max": 0.03495065789473684 + }, "related_data": { "qa": { "data_id": [ - "13_374559_403665" + "13_374559_403665@13" ] } } @@ -4312,7 +4960,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03495065789473684, + "max": 0.03536184210526316 + }, "related_data": {} } } @@ -4331,20 +4982,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03536184210526316, + "max": 0.03549890350877193 + }, "related_data": { "qa": { "data_id": [ - "13_375451_404953", - "13_344577_347885", - "13_7435306_53405818", - "13_869_1555", - "13_1098819_1313635", - "13_1105083_1319378", - "13_675003_506778", - "13_271503_294846", - "13_375181_404594", - "13_751224_804743" + "13_375451_404953@13", + "13_344577_347885@13", + "13_7435306_53405818@13", + "13_869_1555@13", + "13_1098819_1313635@13", + "13_1105083_1319378@13", + "13_675003_506778@13", + "13_271503_294846@13", + "13_375181_404594@13", + "13_751224_804743@13" ] } } @@ -4362,7 +5016,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03549890350877193, + "max": 0.0356359649122807 + }, "related_data": {} } } @@ -4376,15 +5033,20 @@ [ "数组", "声明", - "语法" + "语法", + "数组声明", + "声明语法" ] ] ], - "level": "1", + "level": { + "min": 0.0356359649122807, + "max": 0.03577302631578948 + }, "related_data": { "qa": { "data_id": [ - "13_239279_222266" + "13_239279_222266@13" ] } } @@ -4401,7 +5063,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03536184210526316, + "max": 0.03577302631578948 + }, "related_data": {} } } @@ -4424,12 +5089,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03577302631578948, + "max": 0.035781592653508776 + }, "related_data": { "qa": { "data_id": [ - "13_241895_228578", - "13_7429521_53398311" + "13_241895_228578@13", + "13_7429521_53398311@13" ] } } @@ -4448,20 +5116,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.035781592653508776, + "max": 0.035790158991228074 + }, "related_data": { "qa": { "data_id": [ - "13_1094367_1304598", - "13_7442449_53419268", - "13_719962_714168", - "13_1092526_1300655", - "13_205314_135602", - "13_192854_96885", - "13_686409_548081", - "13_686244_547608", - "13_1092422_1300333", - "13_642738_442332" + "13_1094367_1304598@13", + "13_7442449_53419268@13", + "13_719962_714168@13", + "13_1092526_1300655@13", + "13_205314_135602@13", + "13_192854_96885@13", + "13_686409_548081@13", + "13_686244_547608@13", + "13_1092422_1300333@13", + "13_642738_442332@13" ] } } @@ -4479,7 +5150,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03577302631578948, + "max": 0.035790158991228074 + }, "related_data": {} } } @@ -4496,16 +5170,20 @@ [ "获取", "字符串", - "长度" + "长度", + "字符串长度" ] ] ], - "level": "1", + "level": { + "min": 0.035790158991228074, + "max": 0.03579301443713451 + }, "related_data": { "qa": { "data_id": [ - "13_243725_232519", - "13_7399329_53346410" + "13_243725_232519@13", + "13_7399329_53346410@13" ] } } @@ -4526,14 +5204,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03579301443713451, + "max": 0.03579586988304094 + }, "related_data": { "qa": { "data_id": [ - "13_770204_831670", - "13_345234_349248", - "13_697663_583608", - "13_689565_557939" + "13_770204_831670@13", + "13_345234_349248@13", + "13_697663_583608@13", + "13_689565_557939@13" ] } } @@ -4551,15 +5232,20 @@ "子", "字符串", "索引", - "位置" + "位置", + "子字符串", + "字符串索引" ] ] ], - "level": "1", + "level": { + "min": 0.03579586988304094, + "max": 0.03579872532894737 + }, "related_data": { "qa": { "data_id": [ - "13_656723_468695" + "13_656723_468695@13" ] } } @@ -4579,19 +5265,22 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03579872532894737, + "max": 0.035801580774853806 + }, "related_data": { "qa": { "data_id": [ - "13_507751_438340", - "13_4645863_29329021", - "13_746460_795992", - "13_348547_355326", - "13_211697_152417", - "13_7425707_53387361", - "13_7441938_53418477", - "13_701820_591966", - "13_7419911_53377786" + "13_507751_438340@13", + "13_4645863_29329021@13", + "13_746460_795992@13", + "13_348547_355326@13", + "13_211697_152417@13", + "13_7425707_53387361@13", + "13_7441938_53418477@13", + "13_701820_591966@13", + "13_7419911_53377786@13" ] } } @@ -4607,17 +5296,21 @@ [ "获取", "字符", - "数组" + "数组", + "字符数组" ] ] ], - "level": "1", + "level": { + "min": 0.035801580774853806, + "max": 0.03580443622076024 + }, "related_data": { "qa": { "data_id": [ - "13_7456285_53440111", - "13_3536_4452", - "13_247363_240747" + "13_7456285_53440111@13", + "13_3536_4452@13", + "13_247363_240747@13" ] } } @@ -4633,11 +5326,15 @@ [ "判断", "子", - "字符串" + "字符串", + "子字符串" ] ] ], - "level": "1", + "level": { + "min": 0.03580443622076024, + "max": 0.03580729166666667 + }, "related_data": {} } } @@ -4650,11 +5347,15 @@ [ "提取", "字符串", - "信息" + "信息", + "字符串信息" ] ] ], - "level": "1", + "level": { + "min": 0.035790158991228074, + "max": 0.03580729166666667 + }, "related_data": {} } } @@ -4674,20 +5375,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03580729166666667, + "max": 0.035808849182615635 + }, "related_data": { "qa": { "data_id": [ - "13_742835_785784", - "13_742699_785402", - "13_380276_412969", - "13_646735_450612", - "13_784690_858029", - "13_349546_357747", - "13_667185_485914", - "13_240678_225394", - "13_188764_86279", - "13_683931_540876" + "13_742835_785784@13", + "13_742699_785402@13", + "13_380276_412969@13", + "13_646735_450612@13", + "13_667185_485914@13", + "13_784690_858029@13", + "13_349546_357747@13", + "13_240678_225394@13", + "13_188764_86279@13", + "13_683931_540876@13" ] } } @@ -4706,17 +5410,20 @@ ] ] ], - "level": "1", + "level": { + "min": 0.035808849182615635, + "max": 0.0358104066985646 + }, "related_data": { "qa": { "data_id": [ - "13_375089_404427", - "13_756797_811939", - "13_7413087_53364950", - "13_1099428_1314609", - "13_30055_9261", - "13_742987_786246", - "13_720580_715488" + "13_375089_404427@13", + "13_756797_811939@13", + "13_7413087_53364950@13", + "13_1099428_1314609@13", + "13_30055_9261@13", + "13_742987_786246@13", + "13_720580_715488@13" ] } } @@ -4735,20 +5442,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0358104066985646, + "max": 0.03581196421451356 + }, "related_data": { "qa": { "data_id": [ - "13_275427_303423", - "13_187379_81749", - "13_231203_201859", - "13_205308_135497", - "13_7411849_53362950", - "13_2897_4047", - "13_209508_147164", - "13_246852_239810", - "13_188600_86007", - "13_202236_126531" + "13_275427_303423@13", + "13_187379_81749@13", + "13_231203_201859@13", + "13_205308_135497@13", + "13_7411849_53362950@13", + "13_2897_4047@13", + "13_209508_147164@13", + "13_246852_239810@13", + "13_188600_86007@13", + "13_202236_126531@13" ] } } @@ -4767,7 +5477,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03581196421451356, + "max": 0.035813521730462525 + }, "related_data": {} } } @@ -4781,38 +5494,66 @@ [ "去除", "空白", - "内容" + "内容", + "空白内容" ] ] ], - "level": "1", + "level": { + "min": 0.035813521730462525, + "max": 0.03581507924641149 + }, "related_data": {} } } }, { - "获取子字符串": { + "比较字符串是否相等": { "data": { "uuid": "java-5-38", + "seg": [ + [ + [ + "字符串", + "比较字符串" + ] + ] + ], + "level": { + "min": 0.03581507924641149, + "max": 0.03581663676236045 + }, + "related_data": {} + } + } + }, + { + "获取子字符串": { + "data": { + "uuid": "java-5-39", "seg": [ [ [ "获取", "子", - "字符串" + "字符串", + "子字符串" ] ] ], - "level": "1", + "level": { + "min": 0.03581663676236045, + "max": 0.035818194278309415 + }, "related_data": { "qa": { "data_id": [ - "13_659150_473122", - "13_746111_795072", - "13_657390_470035", - "13_680046_528926", - "13_705126_606542", - "13_666321_484425" + "13_659150_473122@13", + "13_746111_795072@13", + "13_657390_470035@13", + "13_680046_528926@13", + "13_705126_606542@13", + "13_666321_484425@13" ] } } @@ -4822,7 +5563,7 @@ { "去除空格": { "data": { - "uuid": "java-5-39", + "uuid": "java-5-40", "seg": [ [ [ @@ -4831,13 +5572,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.035818194278309415, + "max": 0.03581975179425838 + }, "related_data": { "qa": { "data_id": [ - "13_182598_68664", - "13_7396915_53341228", - "13_751874_805752" + "13_182598_68664@13", + "13_7396915_53341228@13", + "13_1066759_1266523@13", + "13_751874_805752@13" ] } } @@ -4847,7 +5592,7 @@ { "判断字符串的开始与结尾": { "data": { - "uuid": "java-5-40", + "uuid": "java-5-41", "seg": [ [ [ @@ -4859,20 +5604,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03581975179425838, + "max": 0.03582130931020734 + }, "related_data": { "qa": { "data_id": [ - "13_207202_140882", - "13_352409_363900", - "13_1100618_1315413", - "13_202987_129038", - "13_1055517_1252689", - "13_187409_81883", - "13_7417544_53372828", - "13_726150_732287", - "13_7433693_53403981", - "13_7395512_53338021" + "13_207202_140882@13", + "13_352409_363900@13", + "13_1100618_1315413@13", + "13_202987_129038@13", + "13_1055517_1252689@13", + "13_187409_81883@13", + "13_7417544_53372828@13", + "13_726150_732287@13", + "13_7433693_53403981@13", + "13_7395512_53338021@13" ] } } @@ -4882,17 +5630,21 @@ { "按字典顺序比较两个字符串": { "data": { - "uuid": "java-5-41", + "uuid": "java-5-42", "seg": [ [ [ "字典", "顺序", - "字符串" + "字符串", + "字典顺序" ] ] ], - "level": "1", + "level": { + "min": 0.03582130931020734, + "max": 0.035822866826156305 + }, "related_data": {} } } @@ -4900,7 +5652,7 @@ { "字母大小写转换": { "data": { - "uuid": "java-5-42", + "uuid": "java-5-43", "seg": [ [ [ @@ -4910,7 +5662,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.035822866826156305, + "max": 0.03582442434210527 + }, "related_data": {} } } @@ -4926,7 +5681,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03580729166666667, + "max": 0.03582442434210527 + }, "related_data": {} } } @@ -4945,7 +5703,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03582442434210527, + "max": 0.035841557017543865 + }, "related_data": {} } } @@ -4962,7 +5723,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.035841557017543865, + "max": 0.03585868969298246 + }, "related_data": {} } } @@ -4981,11 +5745,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03585868969298246, + "max": 0.03587582236842106 + }, "related_data": { "qa": { "data_id": [ - "13_648152_452463" + "13_648152_452463@13" ] } } @@ -5004,7 +5771,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03587582236842106, + "max": 0.03589295504385965 + }, "related_data": {} } } @@ -5021,7 +5791,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03589295504385965, + "max": 0.035910087719298246 + }, "related_data": {} } } @@ -5032,7 +5805,7 @@ { "printf()": { "data": { - "uuid": "java-5-43", + "uuid": "java-5-44", "seg": [ [ [ @@ -5040,7 +5813,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.035910087719298246, + "max": 0.03591294316520468 + }, "related_data": {} } } @@ -5048,7 +5824,7 @@ { "System.out.format()": { "data": { - "uuid": "java-5-44", + "uuid": "java-5-45", "seg": [ [ [ @@ -5059,7 +5835,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03591294316520468, + "max": 0.03591579861111111 + }, "related_data": {} } } @@ -5067,7 +5846,7 @@ { "Formatter类": { "data": { - "uuid": "java-5-45", + "uuid": "java-5-46", "seg": [ [ [ @@ -5076,7 +5855,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03591579861111111, + "max": 0.035918654057017545 + }, "related_data": {} } } @@ -5084,16 +5866,20 @@ { "格式化说明符": { "data": { - "uuid": "java-5-46", + "uuid": "java-5-47", "seg": [ [ [ "格式化", - "说明符" + "说明符", + "格式化说明符" ] ] ], - "level": "1", + "level": { + "min": 0.035918654057017545, + "max": 0.03592150950292398 + }, "related_data": {} } } @@ -5101,7 +5887,7 @@ { "Formatter转换": { "data": { - "uuid": "java-5-47", + "uuid": "java-5-48", "seg": [ [ [ @@ -5110,7 +5896,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03592150950292398, + "max": 0.03592436494883041 + }, "related_data": {} } } @@ -5118,7 +5907,7 @@ { "String.format()": { "data": { - "uuid": "java-5-48", + "uuid": "java-5-49", "seg": [ [ [ @@ -5128,11 +5917,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03592436494883041, + "max": 0.03592722039473684 + }, "related_data": { "qa": { "data_id": [ - "13_213022_155144" + "13_213022_155144@13", + "13_374925_404050@13" ] } } @@ -5150,7 +5943,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.035910087719298246, + "max": 0.03592722039473684 + }, "related_data": {} } } @@ -5161,7 +5957,7 @@ { "基础": { "data": { - "uuid": "java-5-49", + "uuid": "java-5-50", "seg": [ [ [ @@ -5169,18 +5965,21 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03592722039473684, + "max": 0.03592936197916667 + }, "related_data": { "qa": { "data_id": [ - "13_380038_412479", - "13_218611_168495", - "13_240895_225987", - "13_717283_710457", - "13_249704_245880", - "13_7463237_53449059", - "13_7445932_53425337", - "13_271409_294494" + "13_380038_412479@13", + "13_218611_168495@13", + "13_240895_225987@13", + "13_717283_710457@13", + "13_249704_245880@13", + "13_7463237_53449059@13", + "13_7445932_53425337@13", + "13_271409_294494@13" ] } } @@ -5190,7 +5989,7 @@ { "创建正则表达式": { "data": { - "uuid": "java-5-50", + "uuid": "java-5-51", "seg": [ [ [ @@ -5199,13 +5998,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03592936197916667, + "max": 0.03593150356359649 + }, "related_data": { "qa": { "data_id": [ - "13_645088_446304", - "13_747017_797667", - "13_3237854_21840563" + "13_645088_446304@13", + "13_747017_797667@13", + "13_3237854_21840563@13" ] } } @@ -5215,7 +6017,7 @@ { "限定符": { "data": { - "uuid": "java-5-51", + "uuid": "java-5-52", "seg": [ [ [ @@ -5223,7 +6025,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03593150356359649, + "max": 0.035933645148026314 + }, "related_data": {} } } @@ -5231,7 +6036,7 @@ { "Pattern和Matcher": { "data": { - "uuid": "java-5-52", + "uuid": "java-5-53", "seg": [ [ [ @@ -5242,11 +6047,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.035933645148026314, + "max": 0.03593578673245614 + }, "related_data": { "qa": { "data_id": [ - "13_1049098_1246651" + "13_1049098_1246651@13" ] } } @@ -5256,7 +6064,7 @@ { "split()": { "data": { - "uuid": "java-5-53", + "uuid": "java-5-54", "seg": [ [ [ @@ -5264,20 +6072,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03593578673245614, + "max": 0.03593792831688597 + }, "related_data": { "qa": { "data_id": [ - "13_667132_485746", - "13_670445_493043", - "13_659768_473759", - "13_23082_6165", - "13_7431533_53399986", - "13_23029_6033", - "13_1057871_1254975", - "13_7417539_53372834", - "13_3535680_28201690", - "13_372389_399860" + "13_667132_485746@13", + "13_670445_493043@13", + "13_659768_473759@13", + "13_23082_6165@13", + "13_7431533_53399986@13", + "13_23029_6033@13", + "13_1057871_1254975@13", + "13_7417539_53372834@13", + "13_3535680_28201690@13", + "13_372389_399860@13" ] } } @@ -5287,7 +6098,7 @@ { "替换操作": { "data": { - "uuid": "java-5-54", + "uuid": "java-5-55", "seg": [ [ [ @@ -5296,7 +6107,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03593792831688597, + "max": 0.03594006990131579 + }, "related_data": {} } } @@ -5304,7 +6118,7 @@ { "reset()": { "data": { - "uuid": "java-5-55", + "uuid": "java-5-56", "seg": [ [ [ @@ -5312,11 +6126,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03594006990131579, + "max": 0.03594221148574561 + }, "related_data": { "qa": { "data_id": [ - "13_750301_803237" + "13_750301_803237@13" ] } } @@ -5326,7 +6143,7 @@ { "正则表达式与Java I/O": { "data": { - "uuid": "java-5-56", + "uuid": "java-5-57", "seg": [ [ [ @@ -5339,7 +6156,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03594221148574561, + "max": 0.03594435307017544 + }, "related_data": {} } } @@ -5354,8 +6174,22 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.03592722039473684, + "max": 0.03594435307017544 + }, + "related_data": { + "qa": { + "data_id": [ + "13_204180_132468@13", + "13_744600_790916@13", + "13_245463_235973@13", + "13_747254_798336@13", + "13_746865_797189@13", + "13_183372_70318@13" + ] + } + } } } }, @@ -5365,7 +6199,7 @@ { "Scanner定界符": { "data": { - "uuid": "java-5-57", + "uuid": "java-5-58", "seg": [ [ [ @@ -5374,7 +6208,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03594435307017544, + "max": 0.03595291940789474 + }, "related_data": {} } } @@ -5382,7 +6219,7 @@ { "用正则表达式扫描": { "data": { - "uuid": "java-5-58", + "uuid": "java-5-59", "seg": [ [ [ @@ -5391,7 +6228,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03595291940789474, + "max": 0.03596148574561404 + }, "related_data": {} } } @@ -5407,7 +6247,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03594435307017544, + "max": 0.03596148574561404 + }, "related_data": {} } } @@ -5423,7 +6266,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03596148574561404, + "max": 0.035978618421052634 + }, "related_data": {} } } @@ -5434,7 +6280,7 @@ { "字符串查找": { "data": { - "uuid": "java-5-59", + "uuid": "java-5-60", "seg": [ [ [ @@ -5443,7 +6289,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.035978618421052634, + "max": 0.03598718475877193 + }, "related_data": {} } } @@ -5451,7 +6300,7 @@ { "获取指定索引位置的字符": { "data": { - "uuid": "java-5-60", + "uuid": "java-5-61", "seg": [ [ [ @@ -5463,20 +6312,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03598718475877193, + "max": 0.03599575109649123 + }, "related_data": { "qa": { "data_id": [ - "13_203159_129509", - "13_658133_471108", - "13_656564_468558", - "13_352957_364101", - "13_162760_35219", - "13_747316_798454", - "13_699653_587895", - "13_645077_446292", - "13_671324_495025", - "13_653714_462843" + "13_203159_129509@13", + "13_658133_471108@13", + "13_656564_468558@13", + "13_352957_364101@13", + "13_162760_35219@13", + "13_747316_798454@13", + "13_699653_587895@13", + "13_645077_446292@13", + "13_671324_495025@13", + "13_653714_462843@13" ] } } @@ -5491,11 +6343,15 @@ [ "获取", "字符串", - "信息" + "信息", + "字符串信息" ] ] ], - "level": "1", + "level": { + "min": 0.035978618421052634, + "max": 0.03599575109649123 + }, "related_data": {} } } @@ -5506,17 +6362,22 @@ { "常规类型格式化": { "data": { - "uuid": "java-5-61", + "uuid": "java-5-62", "seg": [ [ [ "常规", "类型", - "格式化" + "格式化", + "常规类型", + "类型格式化" ] ] ], - "level": "1", + "level": { + "min": 0.03599575109649123, + "max": 0.03601288377192983 + }, "related_data": {} } } @@ -5528,11 +6389,15 @@ [ [ "格式化", - "字符串" + "字符串", + "格式化字符串" ] ] ], - "level": "1", + "level": { + "min": 0.03599575109649123, + "max": 0.03601288377192983 + }, "related_data": {} } } @@ -5549,7 +6414,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03601288377192983, + "max": 0.036030016447368425 + }, "related_data": {} } } @@ -5565,7 +6433,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.036030016447368425, + "max": 0.03604714912280702 + }, "related_data": {} } } @@ -5581,7 +6452,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03604714912280702, + "max": 0.03606428179824562 + }, "related_data": {} } } @@ -5598,7 +6472,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03606428179824562, + "max": 0.03608141447368421 + }, "related_data": {} } } @@ -5615,12 +6492,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03608141447368421, + "max": 0.036098547149122806 + }, "related_data": { "qa": { "data_id": [ - "13_356995_373219", - "13_1521_2493" + "13_356995_373219@13", + "13_1521_2493@13" ] } } @@ -5642,7 +6522,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.036098547149122806, + "max": 0.0361156798245614 + }, "related_data": {} } } @@ -5657,11 +6540,15 @@ "码点" ], [ - "单元" + "单元", + "代码单元" ] ] ], - "level": "1", + "level": { + "min": 0.0361156798245614, + "max": 0.0361328125 + }, "related_data": {} } } @@ -5678,7 +6565,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0361328125, + "max": 0.0361499451754386 + }, "related_data": {} } } @@ -5697,12 +6587,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0361499451754386, + "max": 0.036167077850877194 + }, "related_data": { "qa": { "data_id": [ - "13_206803_139713", - "13_351585_361346" + "13_206803_139713@13", + "13_351585_361346@13" ] } } @@ -5721,7 +6614,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.036167077850877194, + "max": 0.03618421052631579 + }, "related_data": {} } } @@ -5736,8 +6632,17 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.03577302631578948, + "max": 0.03618421052631579 + }, + "related_data": { + "qa": { + "data_id": [ + "13_209569_147348@13" + ] + } + } } } }, @@ -5752,19 +6657,25 @@ "c++", "程序员", "提供", - "指针" + "指针", + "C++程序员", + "指针方面" ] ] ], - "level": "1", + "level": { + "min": 0.03618421052631579, + "max": 0.036595394736842105 + }, "related_data": { "qa": { "data_id": [ - "13_206256_138110", - "13_11194_5319", - "13_7466092_53453235", - "13_650845_457767", - "13_7455491_53438635" + "13_206256_138110@13", + "13_11194_5319@13", + "13_390470_432043@13", + "13_7466092_53453235@13", + "13_650845_457767@13", + "13_7455491_53438635@13" ] } } @@ -5783,13 +6694,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.036595394736842105, + "max": 0.03700657894736842 + }, "related_data": { "qa": { "data_id": [ - "13_7448369_53428525", - "13_207022_140617", - "13_4645084_29327227" + "13_7448369_53428525@13", + "13_207022_140617@13", + "13_4645084_29327227@13" ] } } @@ -5809,75 +6723,10 @@ ] ] ], - "level": "1", - "related_data": {} - } - } - }, - { - "整数类型": { - "data": { - "uuid": "java-3-30", - "seg": [ - [ - [ - "整数", - "类型" - ] - ] - ], - "level": "1", - "related_data": {} - } - } - }, - { - "浮点类型": { - "data": { - "uuid": "java-3-31", - "seg": [ - [ - [ - "浮点", - "类型" - ] - ] - ], - "level": "1", - "related_data": {} - } - } - }, - { - "字符类型": { - "data": { - "uuid": "java-3-32", - "seg": [ - [ - [ - "字符", - "类型" - ] - ] - ], - "level": "1", - "related_data": {} - } - } - }, - { - "布尔类型": { - "data": { - "uuid": "java-3-33", - "seg": [ - [ - [ - "布尔", - "类型" - ] - ] - ], - "level": "1", + "level": { + "min": 0.03700657894736842, + "max": 0.03741776315789474 + }, "related_data": {} } } @@ -5885,7 +6734,7 @@ { "数组的概述": { "data": { - "uuid": "java-3-34", + "uuid": "java-3-30", "seg": [ [ [ @@ -5894,7 +6743,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03741776315789474, + "max": 0.03782894736842105 + }, "related_data": {} } } @@ -5902,7 +6754,7 @@ { "创建一维数组": { "data": { - "uuid": "java-3-35", + "uuid": "java-3-31", "seg": [ [ [ @@ -5911,7 +6763,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03782894736842105, + "max": 0.038240131578947366 + }, "related_data": {} } } @@ -5919,24 +6774,28 @@ { "给一维数组赋值": { "data": { - "uuid": "java-3-36", + "uuid": "java-3-32", "seg": [ [ [ "数组", - "赋值" + "赋值", + "数组赋值" ] ] ], - "level": "1", + "level": { + "min": 0.038240131578947366, + "max": 0.038651315789473686 + }, "related_data": { "qa": { "data_id": [ - "13_714965_707064", - "13_7408369_53358540", - "13_161427_30956", - "13_380831_414034", - "13_7400526_53348486" + "13_714965_707064@13", + "13_7408369_53358540@13", + "13_161427_30956@13", + "13_380831_414034@13", + "13_7400526_53348486@13" ] } } @@ -5946,21 +6805,25 @@ { "获取数组长度": { "data": { - "uuid": "java-3-37", + "uuid": "java-3-33", "seg": [ [ [ "获取", "数组", - "长度" + "长度", + "数组长度" ] ] ], - "level": "1", + "level": { + "min": 0.038651315789473686, + "max": 0.0390625 + }, "related_data": { "qa": { "data_id": [ - "13_823773_919513" + "13_823773_919513@13" ] } } @@ -5970,7 +6833,7 @@ { "一维数组的使用场景": { "data": { - "uuid": "java-3-38", + "uuid": "java-3-34", "seg": [ [ [ @@ -5979,11 +6842,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0390625, + "max": 0.039473684210526314 + }, "related_data": { "qa": { "data_id": [ - "13_201176_123275" + "13_201176_123275@13" ] } } @@ -5993,7 +6859,7 @@ { "不规则数组": { "data": { - "uuid": "java-3-39", + "uuid": "java-3-35", "seg": [ [ [ @@ -6002,7 +6868,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.039473684210526314, + "max": 0.03988486842105263 + }, "related_data": {} } } @@ -6022,14 +6891,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03988486842105263, + "max": 0.039967105263157894 + }, "related_data": { "qa": { "data_id": [ - "13_7409613_53360064", - "13_1091491_1298965", - "13_717294_710497", - "13_348651_355557" + "13_7409613_53360064@13", + "13_1091491_1298965@13", + "13_717294_710497@13", + "13_348651_355557@13" ] } } @@ -6049,11 +6921,15 @@ "批量", "替换", "数组", - "元素" + "元素", + "数组元素" ] ] ], - "level": "1", + "level": { + "min": 0.039967105263157894, + "max": 0.040049342105263154 + }, "related_data": {} } } @@ -6068,18 +6944,22 @@ "填充", "替换", "数组", - "元素" + "元素", + "数组元素" ] ] ], - "level": "1", + "level": { + "min": 0.040049342105263154, + "max": 0.04013157894736842 + }, "related_data": { "qa": { "data_id": [ - "13_952881_1096138", - "13_7419973_53377901", - "13_761224_818539", - "13_1096839_1309519" + "13_952881_1096138@13", + "13_7419973_53377901@13", + "13_761224_818539@13", + "13_1096839_1309519@13" ] } } @@ -6087,9 +6967,29 @@ } }, { - "数组查询": { + "对数组进行排序": { "data": { "uuid": "java-4-70", + "seg": [ + [ + [ + "数组", + "排序" + ] + ] + ], + "level": { + "min": 0.04013157894736842, + "max": 0.04021381578947368 + }, + "related_data": {} + } + } + }, + { + "数组查询": { + "data": { + "uuid": "java-4-71", "seg": [ [ [ @@ -6098,12 +6998,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.04021381578947368, + "max": 0.04029605263157895 + }, "related_data": { "qa": { "data_id": [ - "13_647849_451637", - "13_7435744_53406824" + "13_647849_451637@13", + "13_7435744_53406824@13" ] } } @@ -6112,7 +7015,7 @@ } ], "data": { - "uuid": "java-3-40", + "uuid": "java-3-36", "seg": [ [ [ @@ -6121,7 +7024,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03988486842105263, + "max": 0.04029605263157895 + }, "related_data": {} } } @@ -6129,7 +7035,7 @@ { "数组是第一级对象": { "data": { - "uuid": "java-3-41", + "uuid": "java-3-37", "seg": [ [ [ @@ -6138,7 +7044,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.04029605263157895, + "max": 0.04070723684210526 + }, "related_data": {} } } @@ -6146,7 +7055,7 @@ { "返回一个数组": { "data": { - "uuid": "java-3-42", + "uuid": "java-3-38", "seg": [ [ [ @@ -6155,12 +7064,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.04070723684210526, + "max": 0.04111842105263158 + }, "related_data": { "qa": { "data_id": [ - "13_1056698_1253767", - "13_501_937" + "13_1056698_1253767@13", + "13_501_937@13" ] } } @@ -6173,7 +7085,7 @@ { "Arrays.fill()": { "data": { - "uuid": "java-4-71", + "uuid": "java-4-72", "seg": [ [ [ @@ -6182,11 +7094,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.04111842105263158, + "max": 0.04125548245614035 + }, "related_data": { "qa": { "data_id": [ - "13_678406_522491" + "13_678406_522491@13" ] } } @@ -6196,7 +7111,7 @@ { "数据生成器(Generator)": { "data": { - "uuid": "java-4-72", + "uuid": "java-4-73", "seg": [ [ [ @@ -6206,7 +7121,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.04125548245614035, + "max": 0.04139254385964913 + }, "related_data": {} } } @@ -6214,7 +7132,7 @@ { "从Generator中创建数组": { "data": { - "uuid": "java-4-73", + "uuid": "java-4-74", "seg": [ [ [ @@ -6224,15 +7142,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.04139254385964913, + "max": 0.041529605263157895 + }, "related_data": { "qa": { "data_id": [ - "13_687984_553013", - "13_737887_768630", - "13_243705_232442", - "13_7457151_53441240", - "13_1026301_1220151" + "13_687984_553013@13", + "13_737887_768630@13", + "13_243705_232442@13", + "13_7457151_53441240@13", + "13_1026301_1220151@13" ] } } @@ -6241,7 +7162,7 @@ } ], "data": { - "uuid": "java-3-43", + "uuid": "java-3-39", "seg": [ [ [ @@ -6250,7 +7171,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.04111842105263158, + "max": 0.041529605263157895 + }, "related_data": {} } } @@ -6261,7 +7185,7 @@ { "复制数组": { "data": { - "uuid": "java-4-74", + "uuid": "java-4-75", "seg": [ [ [ @@ -6270,7 +7194,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.041529605263157895, + "max": 0.04163240131578948 + }, "related_data": {} } } @@ -6278,22 +7205,26 @@ { "数组元素的比较": { "data": { - "uuid": "java-4-75", + "uuid": "java-4-76", "seg": [ [ [ "数组", - "元素" + "元素", + "数组元素" ] ] ], - "level": "1", + "level": { + "min": 0.04163240131578948, + "max": 0.04173519736842105 + }, "related_data": { "qa": { "data_id": [ - "13_7451774_53433230", - "13_669896_491865", - "13_7450576_53431255" + "13_7451774_53433230@13", + "13_669896_491865@13", + "13_7450576_53431255@13" ] } } @@ -6303,23 +7234,27 @@ { "数组排序": { "data": { - "uuid": "java-4-76", + "uuid": "java-4-77", "seg": [ [ [ "数组", - "排序" + "排序", + "数组排序" ] ] ], - "level": "1", + "level": { + "min": 0.04173519736842105, + "max": 0.04183799342105263 + }, "related_data": { "qa": { "data_id": [ - "13_743843_788958", - "13_1081098_1286709", - "13_7454334_53437037", - "13_215200_160773" + "13_743843_788958@13", + "13_1081098_1286709@13", + "13_7454334_53437037@13", + "13_215200_160773@13" ] } } @@ -6329,21 +7264,25 @@ { "在已排序的数组中查找": { "data": { - "uuid": "java-4-77", + "uuid": "java-4-78", "seg": [ [ [ "排序", "数组", - "查找" + "查找", + "已排序" ] ] ], - "level": "1", + "level": { + "min": 0.04183799342105263, + "max": 0.04194078947368421 + }, "related_data": { "qa": { "data_id": [ - "13_1884_2969" + "13_1884_2969@13" ] } } @@ -6352,7 +7291,7 @@ } ], "data": { - "uuid": "java-3-44", + "uuid": "java-3-40", "seg": [ [ [ @@ -6361,7 +7300,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.041529605263157895, + "max": 0.04194078947368421 + }, "related_data": {} } } @@ -6372,7 +7314,7 @@ { "冒泡排序": { "data": { - "uuid": "java-4-78", + "uuid": "java-4-79", "seg": [ [ [ @@ -6380,12 +7322,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.04194078947368421, + "max": 0.04207785087719298 + }, "related_data": { "qa": { "data_id": [ - "13_7445036_53423610", - "13_7428068_53393339" + "13_7445036_53423610@13", + "13_7428068_53393339@13", + "13_239750_223446@13", + "13_240088_224247@13" ] } } @@ -6395,7 +7342,7 @@ { "直接选择排序": { "data": { - "uuid": "java-4-79", + "uuid": "java-4-80", "seg": [ [ [ @@ -6404,14 +7351,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.04207785087719298, + "max": 0.042214912280701754 + }, "related_data": { "qa": { "data_id": [ - "13_222863_179907", - "13_353011_364251", - "13_204601_133636", - "13_253868_255562" + "13_222863_179907@13", + "13_353011_364251@13", + "13_204601_133636@13", + "13_253868_255562@13" ] } } @@ -6421,7 +7371,7 @@ { "反转排序": { "data": { - "uuid": "java-4-80", + "uuid": "java-4-81", "seg": [ [ [ @@ -6430,13 +7380,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.042214912280701754, + "max": 0.04235197368421052 + }, "related_data": { "qa": { "data_id": [ - "13_717710_711099", - "13_198072_113185", - "13_7407268_53357964" + "13_717710_711099@13", + "13_198072_113185@13", + "13_7407268_53357964@13" ] } } @@ -6445,53 +7398,22 @@ } ], "data": { - "uuid": "java-3-45", + "uuid": "java-3-41", "seg": [ [ [ "数组", "排序", - "算法" - ] - ] - ], - "level": "1", - "related_data": {} - } - } - }, - { - "数值中使用下画线分隔": { - "data": { - "uuid": "java-3-46", - "seg": [ - [ - [ - "数值", - "画线", - "分隔" - ] - ] - ], - "level": "1", - "related_data": {} - } - } - }, - { - "使用var定义变量": { - "data": { - "uuid": "java-3-47", - "seg": [ - [ - [ - "var", - "定义", - "变量" + "算法", + "数组排序", + "排序算法" ] ] ], - "level": "1", + "level": { + "min": 0.04194078947368421, + "max": 0.04235197368421052 + }, "related_data": {} } } @@ -6499,7 +7421,7 @@ { "内存中的数组": { "data": { - "uuid": "java-3-48", + "uuid": "java-3-42", "seg": [ [ [ @@ -6508,12 +7430,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.04235197368421052, + "max": 0.04276315789473684 + }, "related_data": { "qa": { "data_id": [ - "13_7409616_53360113", - "13_364382_385862" + "13_7409616_53360113@13", + "13_364382_385862@13" ] } } @@ -6523,17 +7448,22 @@ { "基本类型数组的初始化": { "data": { - "uuid": "java-3-49", + "uuid": "java-3-43", "seg": [ [ [ "类型", "数组", - "初始化" + "初始化", + "基本类型", + "类型数组" ] ] ], - "level": "1", + "level": { + "min": 0.04276315789473684, + "max": 0.04317434210526316 + }, "related_data": {} } } @@ -6541,18 +7471,22 @@ { "引用类型数组的初始化": { "data": { - "uuid": "java-3-50", + "uuid": "java-3-44", "seg": [ [ [ "引用", "类型", "数组", - "初始化" + "初始化", + "类型数组" ] ] ], - "level": "1", + "level": { + "min": 0.04317434210526316, + "max": 0.04358552631578948 + }, "related_data": {} } } @@ -6560,14 +7494,15 @@ { "操作数组的工具类:Arrays": { "data": { - "uuid": "java-3-51", + "uuid": "java-3-45", "seg": [ [ [ "操作", "数组", "工具", - "类" + "类", + "工具类" ] ], [ @@ -6576,7 +7511,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.04358552631578948, + "max": 0.04399671052631579 + }, "related_data": {} } } @@ -6584,7 +7522,7 @@ { "数组应用举例": { "data": { - "uuid": "java-3-52", + "uuid": "java-3-46", "seg": [ [ [ @@ -6593,7 +7531,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.04399671052631579, + "max": 0.044407894736842105 + }, "related_data": {} } } @@ -6601,7 +7542,7 @@ { "char类型": { "data": { - "uuid": "java-3-53", + "uuid": "java-3-47", "seg": [ [ [ @@ -6610,20 +7551,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.044407894736842105, + "max": 0.04481907894736842 + }, "related_data": { "qa": { "data_id": [ - "13_706372_622348", - "13_219377_170460", - "13_763311_821684", - "13_670331_492835", - "13_200213_120205", - "13_389651_430402", - "13_1094123_1304105", - "13_361300_379102", - "13_161066_29646", - "13_223559_181792" + "13_706372_622348@13", + "13_219377_170460@13", + "13_763311_821684@13", + "13_670331_492835@13", + "13_200213_120205@13", + "13_389651_430402@13", + "13_1094123_1304105@13", + "13_361300_379102@13", + "13_161066_29646@13", + "13_223559_181792@13" ] } } @@ -6633,7 +7577,7 @@ { "boolean类型": { "data": { - "uuid": "java-3-54", + "uuid": "java-3-48", "seg": [ [ [ @@ -6642,7 +7586,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.04481907894736842, + "max": 0.04523026315789473 + }, "related_data": {} } } @@ -6650,16 +7597,20 @@ { "声明数组": { "data": { - "uuid": "java-3-55", + "uuid": "java-3-49", "seg": [ [ [ "声明", - "数组" + "数组", + "声明数组" ] ] ], - "level": "1", + "level": { + "min": 0.04523026315789473, + "max": 0.04564144736842105 + }, "related_data": {} } } @@ -6667,17 +7618,21 @@ { "访问数组元素": { "data": { - "uuid": "java-3-56", + "uuid": "java-3-50", "seg": [ [ [ "访问", "数组", - "元素" + "元素", + "数组元素" ] ] ], - "level": "1", + "level": { + "min": 0.04564144736842105, + "max": 0.046052631578947366 + }, "related_data": {} } } @@ -6685,7 +7640,7 @@ { "for each循环": { "data": { - "uuid": "java-3-57", + "uuid": "java-3-51", "seg": [ [ [ @@ -6695,7 +7650,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.046052631578947366, + "max": 0.046463815789473686 + }, "related_data": {} } } @@ -6703,16 +7661,20 @@ { "数组拷贝": { "data": { - "uuid": "java-3-58", + "uuid": "java-3-52", "seg": [ [ [ "数组", - "拷贝" + "拷贝", + "数组拷贝" ] ] ], - "level": "1", + "level": { + "min": 0.046463815789473686, + "max": 0.046875 + }, "related_data": {} } } @@ -6733,7 +7695,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03125, + "max": 0.046875 + }, "related_data": {} } } @@ -6747,20 +7712,25 @@ { "基本算术运算符": { "data": { - "uuid": "java-4-81", + "uuid": "java-4-82", "seg": [ [ [ "算术", - "运算符" + "运算符", + "基本算术", + "算术运算符" ] ] ], - "level": "1", + "level": { + "min": 0.046875, + "max": 0.047135416666666666 + }, "related_data": { "qa": { "data_id": [ - "13_710268_668279" + "13_710268_668279@13" ] } } @@ -6770,30 +7740,28 @@ { "求模运算符": { "data": { - "uuid": "java-4-82", + "uuid": "java-4-83", "seg": [ [ [ "模", - "运算符" + "运算符", + "模运算符" ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_190389_90828" - ] - } - } + "level": { + "min": 0.047135416666666666, + "max": 0.04739583333333333 + }, + "related_data": {} } } }, { "算术与赋值复合运算符": { "data": { - "uuid": "java-4-83", + "uuid": "java-4-84", "seg": [ [ [ @@ -6806,7 +7774,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.04739583333333333, + "max": 0.047656250000000004 + }, "related_data": {} } } @@ -6814,7 +7785,7 @@ { "自增与自减运算符": { "data": { - "uuid": "java-4-84", + "uuid": "java-4-85", "seg": [ [ [ @@ -6824,27 +7795,34 @@ ] ] ], - "level": "1", + "level": { + "min": 0.047656250000000004, + "max": 0.04791666666666667 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-59", + "uuid": "java-3-53", "seg": [ [ [ "算术", - "运算符" + "运算符", + "算术运算符" ] ] ], - "level": "1", + "level": { + "min": 0.046875, + "max": 0.04791666666666667 + }, "related_data": { "qa": { "data_id": [ - "13_691656_564497" + "13_691656_564497@13" ] } } @@ -6857,17 +7835,21 @@ { "位逻辑运算符": { "data": { - "uuid": "java-4-85", + "uuid": "java-4-86", "seg": [ [ [ "位", "逻辑", - "运算符" + "运算符", + "逻辑运算符" ] ] ], - "level": "1", + "level": { + "min": 0.04791666666666667, + "max": 0.048125 + }, "related_data": {} } } @@ -6875,7 +7857,7 @@ { "左移": { "data": { - "uuid": "java-4-86", + "uuid": "java-4-87", "seg": [ [ [ @@ -6883,7 +7865,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.048125, + "max": 0.04833333333333333 + }, "related_data": {} } } @@ -6891,7 +7876,7 @@ { "右移": { "data": { - "uuid": "java-4-87", + "uuid": "java-4-88", "seg": [ [ [ @@ -6899,7 +7884,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.04833333333333333, + "max": 0.04854166666666667 + }, "related_data": {} } } @@ -6907,23 +7895,27 @@ { "无符号右移": { "data": { - "uuid": "java-4-88", + "uuid": "java-4-89", "seg": [ [ [ "符号", - "右移" + "右移", + "符号右移" ] ] ], - "level": "1", + "level": { + "min": 0.04854166666666667, + "max": 0.04875 + }, "related_data": { "qa": { "data_id": [ - "13_349921_358017", - "13_7448282_53428417", - "13_7436239_53407794", - "13_164750_38739" + "13_349921_358017@13", + "13_7448282_53428417@13", + "13_7436239_53407794@13", + "13_164750_38739@13" ] } } @@ -6933,7 +7925,7 @@ { "位运算符与赋值的组合": { "data": { - "uuid": "java-4-89", + "uuid": "java-4-90", "seg": [ [ [ @@ -6946,19 +7938,22 @@ ] ] ], - "level": "1", + "level": { + "min": 0.04875, + "max": 0.04895833333333333 + }, "related_data": { "qa": { "data_id": [ - "13_704546_597959", - "13_669410_490805", - "13_7429968_53396928", - "13_648961_454045", - "13_7437402_53410201", - "13_1091461_1298891", - "13_168477_43670", - "13_7416458_53370543", - "13_675581_510248" + "13_704546_597959@13", + "13_669410_490805@13", + "13_7429968_53396928@13", + "13_648961_454045@13", + "13_7437402_53410201@13", + "13_1091461_1298891@13", + "13_168477_43670@13", + "13_7416458_53370543@13", + "13_675581_510248@13" ] } } @@ -6967,7 +7962,7 @@ } ], "data": { - "uuid": "java-3-60", + "uuid": "java-3-54", "seg": [ [ [ @@ -6976,7 +7971,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.04791666666666667, + "max": 0.04895833333333333 + }, "related_data": {} } } @@ -6984,16 +7982,20 @@ { "关系运算符": { "data": { - "uuid": "java-3-61", + "uuid": "java-3-55", "seg": [ [ [ "关系", - "运算符" + "运算符", + "关系运算符" ] ] ], - "level": "1", + "level": { + "min": 0.04895833333333333, + "max": 0.05 + }, "related_data": {} } } @@ -7001,17 +8003,22 @@ { "布尔逻辑运算符": { "data": { - "uuid": "java-3-62", + "uuid": "java-3-56", "seg": [ [ [ "布尔", "逻辑", - "运算符" + "运算符", + "布尔逻辑", + "逻辑运算符" ] ] ], - "level": "1", + "level": { + "min": 0.05, + "max": 0.051041666666666666 + }, "related_data": {} } } @@ -7019,16 +8026,20 @@ { "赋值运算符": { "data": { - "uuid": "java-3-63", + "uuid": "java-3-57", "seg": [ [ [ "赋值", - "运算符" + "运算符", + "赋值运算符" ] ] ], - "level": "1", + "level": { + "min": 0.051041666666666666, + "max": 0.052083333333333336 + }, "related_data": {} } } @@ -7036,7 +8047,7 @@ { "“?”运算符": { "data": { - "uuid": "java-3-64", + "uuid": "java-3-58", "seg": [ [ [ @@ -7044,14 +8055,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.052083333333333336, + "max": 0.053125 + }, "related_data": { "qa": { "data_id": [ - "13_676055_513343", - "13_1099947_1314897", - "13_977360_1135738", - "13_7440136_53415323" + "13_676055_513343@13", + "13_1099947_1314897@13", + "13_977360_1135738@13" ] } } @@ -7061,7 +8074,7 @@ { "运算符的优先级": { "data": { - "uuid": "java-3-65", + "uuid": "java-3-59", "seg": [ [ [ @@ -7070,11 +8083,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.053125, + "max": 0.05416666666666667 + }, "related_data": { "qa": { "data_id": [ - "13_188761_86264" + "13_188761_86264@13" ] } } @@ -7084,7 +8100,7 @@ { "使用圆括号": { "data": { - "uuid": "java-3-66", + "uuid": "java-3-60", "seg": [ [ [ @@ -7092,7 +8108,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05416666666666667, + "max": 0.05520833333333333 + }, "related_data": {} } } @@ -7100,7 +8119,7 @@ { "自增和自减运算符": { "data": { - "uuid": "java-3-67", + "uuid": "java-3-61", "seg": [ [ [ @@ -7112,7 +8131,32 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05520833333333333, + "max": 0.05625 + }, + "related_data": {} + } + } + }, + { + "复合赋值运算符": { + "data": { + "uuid": "java-3-62", + "seg": [ + [ + [ + "复合", + "赋值", + "运算符", + "赋值运算符" + ] + ] + ], + "level": { + "min": 0.05625, + "max": 0.057291666666666664 + }, "related_data": {} } } @@ -7120,17 +8164,21 @@ { "扩展后的赋值运算符": { "data": { - "uuid": "java-3-68", + "uuid": "java-3-63", "seg": [ [ [ "扩展", "赋值", - "运算符" + "运算符", + "赋值运算符" ] ] ], - "level": "1", + "level": { + "min": 0.057291666666666664, + "max": 0.058333333333333334 + }, "related_data": {} } } @@ -7138,22 +8186,26 @@ { "三目运算符": { "data": { - "uuid": "java-3-69", + "uuid": "java-3-64", "seg": [ [ [ "三目", - "运算符" + "运算符", + "三目运算符" ] ] ], - "level": "1", + "level": { + "min": 0.058333333333333334, + "max": 0.059375 + }, "related_data": { "qa": { "data_id": [ - "13_203423_130442", - "13_381344_414961", - "13_1098408_1312909" + "13_203423_130442@13", + "13_381344_414961@13", + "13_1098408_1312909@13" ] } } @@ -7163,17 +8215,21 @@ { "数值类型之间的转换": { "data": { - "uuid": "java-3-70", + "uuid": "java-3-65", "seg": [ [ [ "数值", "类型", - "转换" + "转换", + "数值类型" ] ] ], - "level": "1", + "level": { + "min": 0.059375, + "max": 0.06041666666666667 + }, "related_data": {} } } @@ -7181,7 +8237,7 @@ { "关系和boolean运算符": { "data": { - "uuid": "java-3-71", + "uuid": "java-3-66", "seg": [ [ [ @@ -7193,7 +8249,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06041666666666667, + "max": 0.06145833333333334 + }, "related_data": {} } } @@ -7201,7 +8260,7 @@ { "括号与运算符级别": { "data": { - "uuid": "java-3-72", + "uuid": "java-3-67", "seg": [ [ [ @@ -7209,16 +8268,20 @@ ], [ "运算符", - "级别" + "级别", + "运算符级别" ] ] ], - "level": "1", + "level": { + "min": 0.06145833333333334, + "max": 0.0625 + }, "related_data": { "qa": { "data_id": [ - "13_243136_231287", - "13_356945_373115" + "13_243136_231287@13", + "13_356945_373115@13" ] } } @@ -7235,7 +8298,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.046875, + "max": 0.0625 + }, "related_data": {} } } @@ -7249,7 +8315,7 @@ { "if语句": { "data": { - "uuid": "java-4-90", + "uuid": "java-4-91", "seg": [ [ [ @@ -7257,7 +8323,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0625, + "max": 0.06510416666666666 + }, "related_data": {} } } @@ -7265,7 +8334,7 @@ { "switch语句": { "data": { - "uuid": "java-4-91", + "uuid": "java-4-92", "seg": [ [ [ @@ -7274,15 +8343,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06510416666666666, + "max": 0.06770833333333333 + }, "related_data": { "qa": { "data_id": [ - "13_7413036_53364753", - "13_7407694_53357732", - "13_244631_234186", - "13_7427490_53391946", - "13_683139_538913" + "13_7413036_53364753@13", + "13_7407694_53357732@13", + "13_244631_234186@13", + "13_7427490_53391946@13", + "13_683139_538913@13" ] } } @@ -7291,7 +8363,7 @@ } ], "data": { - "uuid": "java-3-73", + "uuid": "java-3-68", "seg": [ [ [ @@ -7301,7 +8373,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0625, + "max": 0.06770833333333333 + }, "related_data": {} } } @@ -7312,7 +8387,7 @@ { "while语句": { "data": { - "uuid": "java-4-92", + "uuid": "java-4-93", "seg": [ [ [ @@ -7321,11 +8396,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06770833333333333, + "max": 0.06874999999999999 + }, "related_data": { "qa": { "data_id": [ - "13_358746_377422" + "13_358746_377422@13" ] } } @@ -7335,7 +8413,7 @@ { "do-while语句": { "data": { - "uuid": "java-4-93", + "uuid": "java-4-94", "seg": [ [ [ @@ -7345,7 +8423,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06874999999999999, + "max": 0.06979166666666667 + }, "related_data": {} } } @@ -7353,7 +8434,7 @@ { "for语句": { "data": { - "uuid": "java-4-94", + "uuid": "java-4-95", "seg": [ [ [ @@ -7361,11 +8442,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06979166666666667, + "max": 0.07083333333333333 + }, "related_data": { "qa": { "data_id": [ - "13_179057_64122" + "13_179057_64122@13" ] } } @@ -7375,7 +8459,7 @@ { "for循环的for-each版本": { "data": { - "uuid": "java-4-95", + "uuid": "java-4-96", "seg": [ [ [ @@ -7386,7 +8470,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.07083333333333333, + "max": 0.07187500000000001 + }, "related_data": {} } } @@ -7394,7 +8481,7 @@ { "嵌套的循环": { "data": { - "uuid": "java-4-96", + "uuid": "java-4-97", "seg": [ [ [ @@ -7403,14 +8490,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.07187500000000001, + "max": 0.07291666666666667 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-74", + "uuid": "java-3-69", "seg": [ [ [ @@ -7419,7 +8509,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06770833333333333, + "max": 0.07291666666666667 + }, "related_data": {} } } @@ -7430,7 +8523,7 @@ { "使用break语句": { "data": { - "uuid": "java-4-97", + "uuid": "java-4-98", "seg": [ [ [ @@ -7439,12 +8532,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.07291666666666667, + "max": 0.07465277777777778 + }, "related_data": { "qa": { "data_id": [ - "13_390074_431227", - "13_232860_206695" + "13_390074_431227@13", + "13_232860_206695@13" ] } } @@ -7454,7 +8550,7 @@ { "使用continue语句": { "data": { - "uuid": "java-4-98", + "uuid": "java-4-99", "seg": [ [ [ @@ -7463,7 +8559,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.07465277777777778, + "max": 0.0763888888888889 + }, "related_data": {} } } @@ -7471,7 +8570,7 @@ { "return语句": { "data": { - "uuid": "java-4-99", + "uuid": "java-4-100", "seg": [ [ [ @@ -7480,20 +8579,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0763888888888889, + "max": 0.078125 + }, "related_data": { "qa": { "data_id": [ - "13_1079919_1284858", - "13_7161605_51344510", - "13_231172_201750", - "13_227305_191233", - "13_237199_217048", - "13_656469_468129", - "13_233087_207221", - "13_237196_217039", - "13_181801_67388", - "13_7463530_53449457" + "13_1079919_1284858@13", + "13_7161605_51344510@13", + "13_231172_201750@13", + "13_227305_191233@13", + "13_237199_217048@13", + "13_656469_468129@13", + "13_233087_207221@13", + "13_237196_217039@13", + "13_181801_67388@13", + "13_7463530_53449457@13" ] } } @@ -7502,7 +8604,7 @@ } ], "data": { - "uuid": "java-3-75", + "uuid": "java-3-70", "seg": [ [ [ @@ -7511,15 +8613,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.07291666666666667, + "max": 0.078125 + }, "related_data": { "qa": { "data_id": [ - "13_1080170_1285375", - "13_355641_370147", - "13_660552_475142", - "13_672402_497933", - "13_7428642_53394572" + "13_1080170_1285375@13", + "13_355641_370147@13", + "13_660552_475142@13", + "13_672402_497933@13", + "13_7428642_53394572@13" ] } } @@ -7537,7 +8642,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0625, + "max": 0.078125 + }, "related_data": {} } } @@ -7551,7 +8659,7 @@ { "类的一般形式": { "data": { - "uuid": "java-4-100", + "uuid": "java-4-101", "seg": [ [ [ @@ -7560,11 +8668,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.078125, + "max": 0.07861328125 + }, "related_data": { "qa": { "data_id": [ - "13_7453775_53436474" + "13_7453775_53436474@13" ] } } @@ -7574,7 +8685,7 @@ { "一个简单的类": { "data": { - "uuid": "java-4-101", + "uuid": "java-4-102", "seg": [ [ [ @@ -7582,14 +8693,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.07861328125, + "max": 0.0791015625 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-76", + "uuid": "java-3-71", "seg": [ [ [ @@ -7598,7 +8712,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.078125, + "max": 0.0791015625 + }, "related_data": {} } } @@ -7606,16 +8723,20 @@ { "声明对象": { "data": { - "uuid": "java-3-77", + "uuid": "java-3-72", "seg": [ [ [ "声明", - "对象" + "对象", + "声明对象" ] ] ], - "level": "1", + "level": { + "min": 0.0791015625, + "max": 0.080078125 + }, "related_data": {} } } @@ -7623,7 +8744,7 @@ { "为对象引用变量赋值": { "data": { - "uuid": "java-3-78", + "uuid": "java-3-73", "seg": [ [ [ @@ -7634,7 +8755,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.080078125, + "max": 0.0810546875 + }, "related_data": {} } } @@ -7645,7 +8769,7 @@ { "为Box类添加方法": { "data": { - "uuid": "java-4-102", + "uuid": "java-4-103", "seg": [ [ [ @@ -7656,22 +8780,18 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_3417_4364", - "13_8232_4517" - ] - } - } + "level": { + "min": 0.0810546875, + "max": 0.08138020833333333 + }, + "related_data": {} } } }, { "返回值": { "data": { - "uuid": "java-4-103", + "uuid": "java-4-104", "seg": [ [ [ @@ -7679,12 +8799,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.08138020833333333, + "max": 0.08170572916666667 + }, "related_data": { "qa": { "data_id": [ - "13_666124_484047", - "13_7457502_53441867" + "13_666124_484047@13", + "13_7457502_53441867@13" ] } } @@ -7694,7 +8817,7 @@ { "添加带参数的方法": { "data": { - "uuid": "java-4-104", + "uuid": "java-4-105", "seg": [ [ [ @@ -7705,14 +8828,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.08170572916666667, + "max": 0.08203125 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-79", + "uuid": "java-3-74", "seg": [ [ [ @@ -7720,7 +8846,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0810546875, + "max": 0.08203125 + }, "related_data": {} } } @@ -7728,7 +8857,7 @@ { "构造函数": { "data": { - "uuid": "java-3-80", + "uuid": "java-3-75", "seg": [ [ [ @@ -7736,11 +8865,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.08203125, + "max": 0.0830078125 + }, "related_data": { "qa": { "data_id": [ - "13_215751_162171" + "13_215751_162171@13" ] } } @@ -7753,7 +8885,7 @@ { "在构造器中调用构造器": { "data": { - "uuid": "java-4-105", + "uuid": "java-4-106", "seg": [ [ [ @@ -7763,7 +8895,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0830078125, + "max": 0.08349609375 + }, "related_data": {} } } @@ -7771,7 +8906,7 @@ { "static的含义": { "data": { - "uuid": "java-4-106", + "uuid": "java-4-107", "seg": [ [ [ @@ -7780,12 +8915,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.08349609375, + "max": 0.083984375 + }, "related_data": { "qa": { "data_id": [ - "13_1103762_1318153", - "13_1056893_1253936" + "13_1103762_1318153@13", + "13_1056893_1253936@13" ] } } @@ -7794,7 +8932,7 @@ } ], "data": { - "uuid": "java-3-81", + "uuid": "java-3-76", "seg": [ [ [ @@ -7803,13 +8941,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0830078125, + "max": 0.083984375 + }, "related_data": { "qa": { "data_id": [ - "13_386727_425443", - "13_754834_809928", - "13_662490_478168" + "13_386727_425443@13", + "13_754834_809928@13", + "13_662490_478168@13" ] } } @@ -7819,7 +8960,7 @@ { "垃圾回收": { "data": { - "uuid": "java-3-82", + "uuid": "java-3-77", "seg": [ [ [ @@ -7828,11 +8969,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.083984375, + "max": 0.0849609375 + }, "related_data": { "qa": { "data_id": [ - "13_235494_214403" + "13_235494_214403@13" ] } } @@ -7842,7 +8986,7 @@ { "finalize方法": { "data": { - "uuid": "java-3-83", + "uuid": "java-3-78", "seg": [ [ [ @@ -7851,7 +8995,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0849609375, + "max": 0.0859375 + }, "related_data": {} } } @@ -7859,21 +9006,25 @@ { "堆栈类": { "data": { - "uuid": "java-3-84", + "uuid": "java-3-79", "seg": [ [ [ "堆栈", - "类" + "类", + "堆栈类" ] ] ], - "level": "1", + "level": { + "min": 0.0859375, + "max": 0.0869140625 + }, "related_data": { "qa": { "data_id": [ - "13_745338_792979", - "13_671481_495364" + "13_745338_792979@13", + "13_671481_495364@13" ] } } @@ -7883,16 +9034,20 @@ { "基本成员默认值": { "data": { - "uuid": "java-3-85", + "uuid": "java-3-80", "seg": [ [ [ "成员", - "默认值" + "默认值", + "基本成员" ] ] ], - "level": "1", + "level": { + "min": 0.0869140625, + "max": 0.087890625 + }, "related_data": {} } } @@ -7900,7 +9055,7 @@ { "成员变量": { "data": { - "uuid": "java-3-86", + "uuid": "java-3-81", "seg": [ [ [ @@ -7909,12 +9064,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.087890625, + "max": 0.0888671875 + }, "related_data": { "qa": { "data_id": [ - "13_7417924_53373763", - "13_648914_453875" + "13_7417924_53373763@13", + "13_648914_453875@13" ] } } @@ -7924,20 +9082,24 @@ { "成员方法": { "data": { - "uuid": "java-3-87", + "uuid": "java-3-82", "seg": [ [ [ "成员", - "方法" + "方法", + "成员方法" ] ] ], - "level": "1", + "level": { + "min": 0.0888671875, + "max": 0.08984375 + }, "related_data": { "qa": { "data_id": [ - "13_1091337_1298692" + "13_1091337_1298692@13" ] } } @@ -7947,20 +9109,24 @@ { "权限修饰符": { "data": { - "uuid": "java-3-88", + "uuid": "java-3-83", "seg": [ [ [ "权限", - "修饰符" + "修饰符", + "权限修饰符" ] ] ], - "level": "1", + "level": { + "min": 0.08984375, + "max": 0.0908203125 + }, "related_data": { "qa": { "data_id": [ - "13_7428111_53393493" + "13_7428111_53393493@13" ] } } @@ -7970,7 +9136,7 @@ { "操作对象的Objects工具类": { "data": { - "uuid": "java-3-89", + "uuid": "java-3-84", "seg": [ [ [ @@ -7978,15 +9144,19 @@ "对象", "objects", "工具", - "类" + "类", + "工具类" ] ] ], - "level": "1", + "level": { + "min": 0.0908203125, + "max": 0.091796875 + }, "related_data": { "qa": { "data_id": [ - "13_7402195_53349823" + "13_7402195_53349823@13" ] } } @@ -7996,7 +9166,7 @@ { "ThreadLocalRandom与Random": { "data": { - "uuid": "java-3-90", + "uuid": "java-3-85", "seg": [ [ [ @@ -8007,7 +9177,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.091796875, + "max": 0.0927734375 + }, "related_data": {} } } @@ -8015,7 +9188,7 @@ { "BigDecimal类": { "data": { - "uuid": "java-3-91", + "uuid": "java-3-86", "seg": [ [ [ @@ -8024,7 +9197,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0927734375, + "max": 0.09375 + }, "related_data": {} } } @@ -8039,14 +9215,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.078125, + "max": 0.09375 + }, "related_data": { "qa": { "data_id": [ - "13_1061543_1259400", - "13_368567_395006", - "13_1072258_1274547", - "13_7454876_53437618" + "13_1061543_1259400@13", + "13_368567_395006@13", + "13_1072258_1274547@13", + "13_7454876_53437618@13" ] } } @@ -8062,7 +9241,7 @@ { "区分重载方法": { "data": { - "uuid": "java-4-107", + "uuid": "java-4-108", "seg": [ [ [ @@ -8072,17 +9251,20 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09375, + "max": 0.09415064102564102 + }, "related_data": { "qa": { "data_id": [ - "13_7464955_53451686", - "13_345717_350339", - "13_744573_790852", - "13_769516_830393", - "13_645035_446148", - "13_175937_57264", - "13_195969_106968" + "13_7464955_53451686@13", + "13_345717_350339@13", + "13_744573_790852@13", + "13_769516_830393@13", + "13_645035_446148@13", + "13_175937_57264@13", + "13_195969_106968@13" ] } } @@ -8092,17 +9274,21 @@ { "涉及基本类型的重载": { "data": { - "uuid": "java-4-108", + "uuid": "java-4-109", "seg": [ [ [ "涉及", "类型", - "重载" + "重载", + "基本类型" ] ] ], - "level": "1", + "level": { + "min": 0.09415064102564102, + "max": 0.09455128205128205 + }, "related_data": {} } } @@ -8110,22 +9296,26 @@ { "以返回值区分重载方法": { "data": { - "uuid": "java-4-109", + "uuid": "java-4-110", "seg": [ [ [ "返回值", "区分", "重载", - "方法" + "方法", + "返回值区分" ] ] ], - "level": "1", + "level": { + "min": 0.09455128205128205, + "max": 0.09495192307692307 + }, "related_data": { "qa": { "data_id": [ - "13_387081_425903" + "13_387081_425903@13" ] } } @@ -8134,7 +9324,7 @@ } ], "data": { - "uuid": "java-3-92", + "uuid": "java-3-87", "seg": [ [ [ @@ -8143,7 +9333,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09375, + "max": 0.09495192307692307 + }, "related_data": {} } } @@ -8151,17 +9344,21 @@ { "将对象用作参数": { "data": { - "uuid": "java-3-93", + "uuid": "java-3-88", "seg": [ [ [ "对象", "用作", - "参数" + "参数", + "将对象" ] ] ], - "level": "1", + "level": { + "min": 0.09495192307692307, + "max": 0.09615384615384616 + }, "related_data": {} } } @@ -8169,7 +9366,7 @@ { "参数传递的深入分析": { "data": { - "uuid": "java-3-94", + "uuid": "java-3-89", "seg": [ [ [ @@ -8178,7 +9375,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09615384615384616, + "max": 0.09735576923076923 + }, "related_data": {} } } @@ -8186,7 +9386,7 @@ { "返回对象": { "data": { - "uuid": "java-3-95", + "uuid": "java-3-90", "seg": [ [ [ @@ -8195,7 +9395,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09735576923076923, + "max": 0.0985576923076923 + }, "related_data": {} } } @@ -8203,7 +9406,7 @@ { "递归": { "data": { - "uuid": "java-3-96", + "uuid": "java-3-91", "seg": [ [ [ @@ -8211,14 +9414,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0985576923076923, + "max": 0.09975961538461539 + }, "related_data": { "qa": { "data_id": [ - "13_683165_538901", - "13_7424902_53386086", - "13_1088771_1295458", - "13_1058873_1256263" + "13_683165_538901@13", + "13_7424902_53386086@13", + "13_1088771_1295458@13", + "13_1058873_1256263@13" ] } } @@ -8234,7 +9440,7 @@ { "类名冲突": { "data": { - "uuid": "java-5-62", + "uuid": "java-5-63", "seg": [ [ [ @@ -8243,7 +9449,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09975961538461539, + "max": 0.10016025641025642 + }, "related_data": {} } } @@ -8251,32 +9460,28 @@ { "完整的类路径": { "data": { - "uuid": "java-5-63", + "uuid": "java-5-64", "seg": [ [ [ "类", - "路径" + "路径", + "类路径" ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_651363_458455", - "13_650621_457382", - "13_764872_823772" - ] - } - } + "level": { + "min": 0.10016025641025642, + "max": 0.10056089743589744 + }, + "related_data": {} } } }, { "创建包": { "data": { - "uuid": "java-5-64", + "uuid": "java-5-65", "seg": [ [ [ @@ -8285,11 +9490,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.10056089743589744, + "max": 0.10096153846153846 + }, "related_data": { "qa": { "data_id": [ - "13_367561_393310" + "13_367561_393310@13" ] } } @@ -8298,7 +9506,7 @@ } ], "data": { - "uuid": "java-4-110", + "uuid": "java-4-111", "seg": [ [ [ @@ -8308,14 +9516,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09975961538461539, + "max": 0.10096153846153846 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-97", + "uuid": "java-3-92", "seg": [ [ [ @@ -8323,7 +9534,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09975961538461539, + "max": 0.10096153846153846 + }, "related_data": {} } } @@ -8331,7 +9545,7 @@ { "理解static": { "data": { - "uuid": "java-3-98", + "uuid": "java-3-93", "seg": [ [ [ @@ -8340,11 +9554,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.10096153846153846, + "max": 0.10216346153846154 + }, "related_data": { "qa": { "data_id": [ - "13_251556_250172" + "13_251556_250172@13" ] } } @@ -8354,7 +9571,7 @@ { "final介绍": { "data": { - "uuid": "java-3-99", + "uuid": "java-3-94", "seg": [ [ [ @@ -8363,7 +9580,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.10216346153846154, + "max": 0.10336538461538461 + }, "related_data": {} } } @@ -8371,7 +9591,7 @@ { "重新审视数组": { "data": { - "uuid": "java-3-100", + "uuid": "java-3-95", "seg": [ [ [ @@ -8380,7 +9600,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.10336538461538461, + "max": 0.1045673076923077 + }, "related_data": {} } } @@ -8391,21 +9614,25 @@ { "成员内部类": { "data": { - "uuid": "java-4-111", + "uuid": "java-4-112", "seg": [ [ [ "成员", "内部", - "类" + "类", + "内部类" ] ] ], - "level": "1", + "level": { + "min": 0.1045673076923077, + "max": 0.10463800904977376 + }, "related_data": { "qa": { "data_id": [ - "13_1035523_1241347" + "13_1035523_1241347@13" ] } } @@ -8415,21 +9642,25 @@ { "局部内部类": { "data": { - "uuid": "java-4-112", + "uuid": "java-4-113", "seg": [ [ [ "局部", "内部", - "类" + "类", + "内部类" ] ] ], - "level": "1", + "level": { + "min": 0.10463800904977376, + "max": 0.10470871040723982 + }, "related_data": { "qa": { "data_id": [ - "13_224828_184902" + "13_224828_184902@13" ] } } @@ -8439,21 +9670,25 @@ { "静态内部类": { "data": { - "uuid": "java-4-113", + "uuid": "java-4-114", "seg": [ [ [ "静态", "内部", - "类" + "类", + "内部类" ] ] ], - "level": "1", + "level": { + "min": 0.10470871040723982, + "max": 0.10477941176470588 + }, "related_data": { "qa": { "data_id": [ - "13_643648_443796" + "13_643648_443796@13" ] } } @@ -8466,44 +9701,52 @@ { "再访工厂方法": { "data": { - "uuid": "java-5-65", + "uuid": "java-5-66", "seg": [ [ [ "再访", "工厂", - "方法" + "方法", + "工厂方法" ] ] ], - "level": "1", + "level": { + "min": 0.10477941176470588, + "max": 0.10485011312217195 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-114", + "uuid": "java-4-115", "seg": [ [ [ "匿名", "内部", - "类" + "类", + "内部类" ] ] ], - "level": "1", + "level": { + "min": 0.10477941176470588, + "max": 0.10485011312217195 + }, "related_data": { "qa": { "data_id": [ - "13_357419_374058", - "13_747096_797923", - "13_377910_408654", - "13_248739_243873", - "13_380273_412954", - "13_644486_445172", - "13_251259_250715" + "13_357419_374058@13", + "13_747096_797923@13", + "13_377910_408654@13", + "13_248739_243873@13", + "13_380273_412954@13", + "13_644486_445172@13", + "13_251259_250715@13" ] } } @@ -8513,22 +9756,26 @@ { "创建内部类": { "data": { - "uuid": "java-4-115", + "uuid": "java-4-116", "seg": [ [ [ "创建", "内部", - "类" + "类", + "内部类" ] ] ], - "level": "1", + "level": { + "min": 0.10485011312217195, + "max": 0.10492081447963801 + }, "related_data": { "qa": { "data_id": [ - "13_742591_785114", - "13_364803_387088" + "13_742591_785114@13", + "13_364803_387088@13" ] } } @@ -8538,7 +9785,7 @@ { "链接到外部类": { "data": { - "uuid": "java-4-116", + "uuid": "java-4-117", "seg": [ [ [ @@ -8547,13 +9794,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.10492081447963801, + "max": 0.10499151583710407 + }, "related_data": { "qa": { "data_id": [ - "13_187665_82679", - "13_245786_236690", - "13_718814_712670" + "13_187665_82679@13", + "13_245786_236690@13", + "13_718814_712670@13" ] } } @@ -8563,7 +9813,7 @@ { "使用.this与.new": { "data": { - "uuid": "java-4-117", + "uuid": "java-4-118", "seg": [ [ [ @@ -8574,20 +9824,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.10499151583710407, + "max": 0.10506221719457014 + }, "related_data": { "qa": { "data_id": [ - "13_230634_200192", - "13_651905_459481", - "13_203850_131629", - "13_243200_231432", - "13_225720_187293", - "13_220682_173726", - "13_238716_220930", - "13_669021_489883", - "13_250392_247479", - "13_237220_217077" + "13_230634_200192@13", + "13_651905_459481@13", + "13_203850_131629@13", + "13_243200_231432@13", + "13_225720_187293@13", + "13_220682_173726@13", + "13_238716_220930@13", + "13_669021_489883@13", + "13_250392_247479@13", + "13_237220_217077@13" ] } } @@ -8597,7 +9850,7 @@ { "接口内部的类": { "data": { - "uuid": "java-4-118", + "uuid": "java-4-119", "seg": [ [ [ @@ -8607,12 +9860,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.10506221719457014, + "max": 0.1051329185520362 + }, "related_data": { "qa": { "data_id": [ - "13_7430197_53397234", - "13_250312_247297" + "13_7430197_53397234@13", + "13_250312_247297@13" ] } } @@ -8622,7 +9878,7 @@ { "从多层嵌套类中访问外部类的成员": { "data": { - "uuid": "java-4-119", + "uuid": "java-4-120", "seg": [ [ [ @@ -8630,11 +9886,15 @@ "类", "访问", "部类", - "成员" + "成员", + "嵌套类" ] ] ], - "level": "1", + "level": { + "min": 0.1051329185520362, + "max": 0.10520361990950226 + }, "related_data": {} } } @@ -8642,22 +9902,26 @@ { "内部类的继承": { "data": { - "uuid": "java-4-120", + "uuid": "java-4-121", "seg": [ [ [ "内部", "类", - "继承" + "继承", + "内部类" ] ] ], - "level": "1", + "level": { + "min": 0.10520361990950226, + "max": 0.10527432126696833 + }, "related_data": { "qa": { "data_id": [ - "13_356399_372027", - "13_249046_244564" + "13_356399_372027@13", + "13_249046_244564@13" ] } } @@ -8667,26 +9931,30 @@ { "内部类可以被覆盖吗": { "data": { - "uuid": "java-4-121", + "uuid": "java-4-122", "seg": [ [ [ "内部", "类", - "覆盖" + "覆盖", + "内部类" ] ] ], - "level": "1", + "level": { + "min": 0.10527432126696833, + "max": 0.10534502262443439 + }, "related_data": { "qa": { "data_id": [ - "13_386058_423931", - "13_366726_391505", - "13_680792_531808", - "13_3423189_22969905", - "13_232482_205494", - "13_256550_265431" + "13_386058_423931@13", + "13_366726_391505@13", + "13_680792_531808@13", + "13_3423189_22969905@13", + "13_232482_205494@13", + "13_256550_265431@13" ] } } @@ -8696,44 +9964,76 @@ { "内部类标识符": { "data": { - "uuid": "java-4-122", + "uuid": "java-4-123", "seg": [ [ [ "内部", "类", - "标识符" + "标识符", + "内部类" ] ] ], - "level": "1", + "level": { + "min": 0.10534502262443439, + "max": 0.10541572398190045 + }, "related_data": {} } } }, { - "使用内部类访问对象状态": { + "非静态内部类": { "data": { - "uuid": "java-4-123", + "uuid": "java-4-124", "seg": [ [ [ + "静态", "内部", "类", - "访问", - "对象", - "状态" + "非静态", + "内部类" ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_163752_37039", - "13_221607_176191" - ] - } + "level": { + "min": 0.10541572398190045, + "max": 0.10548642533936652 + }, + "related_data": {} + } + } + }, + { + "使用内部类访问对象状态": { + "data": { + "uuid": "java-4-125", + "seg": [ + [ + [ + "内部", + "类", + "访问", + "对象", + "状态", + "内部类", + "对象状态" + ] + ] + ], + "level": { + "min": 0.10548642533936652, + "max": 0.10555712669683258 + }, + "related_data": { + "qa": { + "data_id": [ + "13_163752_37039@13", + "13_221607_176191@13" + ] + } } } } @@ -8741,18 +10041,23 @@ { "内部类的特殊语法规则": { "data": { - "uuid": "java-4-124", + "uuid": "java-4-126", "seg": [ [ [ "内部", "类", "语法", - "规则" + "规则", + "内部类", + "语法规则" ] ] ], - "level": "1", + "level": { + "min": 0.10555712669683258, + "max": 0.10562782805429864 + }, "related_data": {} } } @@ -8760,19 +10065,23 @@ { "内部类是否有用、必要和": { "data": { - "uuid": "java-4-125", + "uuid": "java-4-127", "seg": [ [ [ "内部", "类", - "有用" + "有用", + "内部类" ], [], [] ] ], - "level": "1", + "level": { + "min": 0.10562782805429864, + "max": 0.1056985294117647 + }, "related_data": {} } } @@ -8780,7 +10089,7 @@ { "由外部方法访问变量": { "data": { - "uuid": "java-4-126", + "uuid": "java-4-128", "seg": [ [ [ @@ -8791,11 +10100,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1056985294117647, + "max": 0.10576923076923077 + }, "related_data": { "qa": { "data_id": [ - "13_228649_195001" + "13_228649_195001@13" ] } } @@ -8804,20 +10116,25 @@ } ], "data": { - "uuid": "java-3-101", + "uuid": "java-3-96", "seg": [ [ [ "嵌套", - "类" + "类", + "嵌套类" ], [ "内部", - "类" + "类", + "内部类" ] ] ], - "level": "1", + "level": { + "min": 0.1045673076923077, + "max": 0.10576923076923077 + }, "related_data": {} } } @@ -8825,7 +10142,7 @@ { "String类介绍": { "data": { - "uuid": "java-3-102", + "uuid": "java-3-97", "seg": [ [ [ @@ -8835,7 +10152,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.10576923076923077, + "max": 0.10697115384615385 + }, "related_data": {} } } @@ -8843,16 +10163,20 @@ { "使用命令行参数": { "data": { - "uuid": "java-3-103", + "uuid": "java-3-98", "seg": [ [ [ "命令行", - "参数" + "参数", + "命令行参数" ] ] ], - "level": "1", + "level": { + "min": 0.10697115384615385, + "max": 0.10817307692307693 + }, "related_data": {} } } @@ -8863,7 +10187,7 @@ { "重载varargs方法": { "data": { - "uuid": "java-4-127", + "uuid": "java-4-129", "seg": [ [ [ @@ -8873,7 +10197,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.10817307692307693, + "max": 0.10877403846153846 + }, "related_data": {} } } @@ -8881,7 +10208,7 @@ { "varargs方法与模糊性": { "data": { - "uuid": "java-4-128", + "uuid": "java-4-130", "seg": [ [ [ @@ -8893,14 +10220,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.10877403846153846, + "max": 0.109375 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-104", + "uuid": "java-3-99", "seg": [ [ [ @@ -8911,11 +10241,15 @@ [ "可变", "长度", - "参数" + "参数", + "长度参数" ] ] ], - "level": "1", + "level": { + "min": 0.10817307692307693, + "max": 0.109375 + }, "related_data": {} } } @@ -8928,11 +10262,15 @@ [ "方法", "和类", - "深入分析" + "深入分析", + "方法和类" ] ] ], - "level": "1", + "level": { + "min": 0.09375, + "max": 0.109375 + }, "related_data": {} } } @@ -8946,7 +10284,7 @@ { "成员访问与继承": { "data": { - "uuid": "java-4-129", + "uuid": "java-4-131", "seg": [ [ [ @@ -8958,7 +10296,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.109375, + "max": 0.10974702380952381 + }, "related_data": {} } } @@ -8966,15 +10307,19 @@ { "一个更实际的例子": { "data": { - "uuid": "java-4-130", + "uuid": "java-4-132", "seg": [ [ [ - "例子" + "例子", + "更实际" ] ] ], - "level": "1", + "level": { + "min": 0.10974702380952381, + "max": 0.11011904761904762 + }, "related_data": {} } } @@ -8982,7 +10327,7 @@ { "超类变量可以引用子类对象": { "data": { - "uuid": "java-4-131", + "uuid": "java-4-133", "seg": [ [ [ @@ -8990,18 +10335,22 @@ "变量", "引用", "子类", - "对象" + "对象", + "子类对象" ] ] ], - "level": "1", + "level": { + "min": 0.11011904761904762, + "max": 0.11049107142857142 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-105", + "uuid": "java-3-100", "seg": [ [ [ @@ -9010,7 +10359,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.109375, + "max": 0.11049107142857142 + }, "related_data": {} } } @@ -9021,7 +10373,7 @@ { "使用super调用超类的构造函数": { "data": { - "uuid": "java-4-132", + "uuid": "java-4-134", "seg": [ [ [ @@ -9032,15 +10384,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.11049107142857142, + "max": 0.11104910714285715 + }, "related_data": { "qa": { "data_id": [ - "13_192399_95675", - "13_682251_536255", - "13_1055549_1252729", - "13_213454_156307", - "13_1084665_1291008" + "13_192399_95675@13", + "13_682251_536255@13", + "13_1055549_1252729@13", + "13_213454_156307@13", + "13_1084665_1291008@13" ] } } @@ -9050,7 +10405,7 @@ { "super的另一种用法": { "data": { - "uuid": "java-4-133", + "uuid": "java-4-135", "seg": [ [ [ @@ -9059,20 +10414,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.11104910714285715, + "max": 0.11160714285714286 + }, "related_data": { "qa": { "data_id": [ - "13_742611_785172", - "13_382093_416344", - "13_365831_389408", - "13_1011433_1198875", - "13_1059152_1256451", - "13_225181_185948", - "13_649267_454670", - "13_229952_198672", - "13_234723_212087", - "13_714757_706765" + "13_742611_785172@13", + "13_382093_416344@13", + "13_365831_389408@13", + "13_1011433_1198875@13", + "13_1059152_1256451@13", + "13_225181_185948@13", + "13_649267_454670@13", + "13_229952_198672@13", + "13_234723_212087@13", + "13_714757_706765@13" ] } } @@ -9081,7 +10439,7 @@ } ], "data": { - "uuid": "java-3-106", + "uuid": "java-3-101", "seg": [ [ [ @@ -9090,7 +10448,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.11049107142857142, + "max": 0.11160714285714286 + }, "related_data": {} } } @@ -9098,7 +10459,7 @@ { "创建多级继承层次": { "data": { - "uuid": "java-3-107", + "uuid": "java-3-102", "seg": [ [ [ @@ -9108,7 +10469,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.11160714285714286, + "max": 0.11272321428571429 + }, "related_data": {} } } @@ -9116,7 +10480,7 @@ { "构造函数的调用时机": { "data": { - "uuid": "java-3-108", + "uuid": "java-3-103", "seg": [ [ [ @@ -9126,7 +10490,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.11272321428571429, + "max": 0.11383928571428571 + }, "related_data": {} } } @@ -9134,7 +10501,7 @@ { "方法重写": { "data": { - "uuid": "java-3-109", + "uuid": "java-3-104", "seg": [ [ [ @@ -9143,7 +10510,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.11383928571428571, + "max": 0.11495535714285714 + }, "related_data": {} } } @@ -9154,7 +10524,7 @@ { "重写方法的目的": { "data": { - "uuid": "java-4-134", + "uuid": "java-4-136", "seg": [ [ [ @@ -9164,11 +10534,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.11495535714285714, + "max": 0.11551339285714285 + }, "related_data": { "qa": { "data_id": [ - "13_7460612_53445703" + "13_7460612_53445703@13" ] } } @@ -9178,7 +10551,7 @@ { "应用方法重写": { "data": { - "uuid": "java-4-135", + "uuid": "java-4-137", "seg": [ [ [ @@ -9187,13 +10560,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.11551339285714285, + "max": 0.11607142857142858 + }, "related_data": { "qa": { "data_id": [ - "13_191683_93600", - "13_231701_203235", - "13_346572_351943" + "13_191683_93600@13", + "13_231701_203235@13", + "13_346572_351943@13" ] } } @@ -9202,17 +10578,22 @@ } ], "data": { - "uuid": "java-3-110", + "uuid": "java-3-105", "seg": [ [ [ "动态", "方法", - "调度" + "调度", + "动态方法", + "方法调度" ] ] ], - "level": "1", + "level": { + "min": 0.11495535714285714, + "max": 0.11607142857142858 + }, "related_data": {} } } @@ -9223,7 +10604,7 @@ { "抽象类的作用": { "data": { - "uuid": "java-4-136", + "uuid": "java-4-138", "seg": [ [ [ @@ -9232,20 +10613,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.11607142857142858, + "max": 0.1171875 + }, "related_data": { "qa": { "data_id": [ - "13_387628_426872", - "13_201294_123661", - "13_215841_162396", - "13_745176_792541", - "13_220675_173678", - "13_237482_217822", - "13_7445305_53423831", - "13_197155_110811", - "13_7423733_53383783", - "13_214886_159986" + "13_387628_426872@13", + "13_201294_123661@13", + "13_215841_162396@13", + "13_745176_792541@13", + "13_7423733_53383783@13", + "13_220675_173678@13", + "13_237482_217822@13", + "13_7445305_53423831@13", + "13_197155_110811@13", + "13_214886_159986@13" ] } } @@ -9254,7 +10638,7 @@ } ], "data": { - "uuid": "java-3-111", + "uuid": "java-3-106", "seg": [ [ [ @@ -9262,11 +10646,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.11607142857142858, + "max": 0.1171875 + }, "related_data": { "qa": { "data_id": [ - "13_228109_193500" + "13_228109_193500@13" ] } } @@ -9279,7 +10666,7 @@ { "使用final关键字阻止重写": { "data": { - "uuid": "java-4-137", + "uuid": "java-4-139", "seg": [ [ [ @@ -9290,7 +10677,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1171875, + "max": 0.11774553571428571 + }, "related_data": {} } } @@ -9298,7 +10688,7 @@ { "使用final关键字阻止继承": { "data": { - "uuid": "java-4-138", + "uuid": "java-4-140", "seg": [ [ [ @@ -9309,14 +10699,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.11774553571428571, + "max": 0.11830357142857142 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-112", + "uuid": "java-3-107", "seg": [ [ [ @@ -9326,7 +10719,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1171875, + "max": 0.11830357142857142 + }, "related_data": {} } } @@ -9334,7 +10730,7 @@ { "Object类": { "data": { - "uuid": "java-3-113", + "uuid": "java-3-108", "seg": [ [ [ @@ -9343,7 +10739,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.11830357142857142, + "max": 0.11941964285714285 + }, "related_data": {} } } @@ -9351,7 +10750,7 @@ { "“是一个”(is-a)与“像是一个”(is-like-a)关系": { "data": { - "uuid": "java-3-114", + "uuid": "java-3-109", "seg": [ [ [ @@ -9367,11 +10766,21 @@ ] ] ], - "level": "1", + "level": { + "min": 0.11941964285714285, + "max": 0.12053571428571429 + }, "related_data": { "qa": { "data_id": [ - "13_856291_981343" + "13_187554_82294@13", + "13_7453555_53436286@13", + "13_772468_1251493@13", + "13_7430134_53397121@13", + "13_188821_86537@13", + "13_7396417_53340257@13", + "13_7437893_53411137@13", + "13_981449_1143359@13" ] } } @@ -9384,7 +10793,7 @@ { "Object类型的变量": { "data": { - "uuid": "java-4-139", + "uuid": "java-4-141", "seg": [ [ [ @@ -9394,20 +10803,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.12053571428571429, + "max": 0.12109375 + }, "related_data": { "qa": { "data_id": [ - "13_382396_416989", - "13_225345_186297", - "13_252509_252384", - "13_1625_2615", - "13_649718_455654", - "13_7414504_53367334", - "13_7467405_53454966", - "13_719431_713482", - "13_659900_474241", - "13_364531_386466" + "13_382396_416989@13", + "13_225345_186297@13", + "13_252509_252384@13", + "13_1625_2615@13", + "13_649718_455654@13", + "13_7414504_53367334@13", + "13_7467405_53454966@13", + "13_719431_713482@13", + "13_659900_474241@13", + "13_364531_386466@13" ] } } @@ -9417,7 +10829,7 @@ { "hashCode方法": { "data": { - "uuid": "java-4-140", + "uuid": "java-4-142", "seg": [ [ [ @@ -9426,14 +10838,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.12109375, + "max": 0.12165178571428571 + }, "related_data": { "qa": { "data_id": [ - "13_362173_380804", - "13_749542_802107", - "13_648987_454574", - "13_369263_396267" + "13_362173_380804@13", + "13_749542_802107@13", + "13_648987_454574@13", + "13_369263_396267@13" ] } } @@ -9442,7 +10857,7 @@ } ], "data": { - "uuid": "java-3-115", + "uuid": "java-3-110", "seg": [ [ [ @@ -9456,11 +10871,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.12053571428571429, + "max": 0.12165178571428571 + }, "related_data": { "qa": { "data_id": [ - "13_649001_454134" + "13_649001_454134@13" ] } } @@ -9473,17 +10891,22 @@ { "声明数组列表": { "data": { - "uuid": "java-4-141", + "uuid": "java-4-143", "seg": [ [ [ "声明", "数组", - "列表" + "列表", + "声明数组", + "数组列表" ] ] ], - "level": "1", + "level": { + "min": 0.12165178571428571, + "max": 0.12202380952380952 + }, "related_data": {} } } @@ -9491,18 +10914,23 @@ { "访问数组列表元素": { "data": { - "uuid": "java-4-142", + "uuid": "java-4-144", "seg": [ [ [ "访问", "数组", "列表", - "元素" + "元素", + "数组列表", + "列表元素" ] ] ], - "level": "1", + "level": { + "min": 0.12202380952380952, + "max": 0.12239583333333333 + }, "related_data": {} } } @@ -9510,7 +10938,7 @@ { "类型化与原始数组列表的": { "data": { - "uuid": "java-4-143", + "uuid": "java-4-145", "seg": [ [ [ @@ -9519,28 +10947,37 @@ [ "原始", "数组", - "列表" + "列表", + "数组列表" ] ] ], - "level": "1", + "level": { + "min": 0.12239583333333333, + "max": 0.12276785714285714 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-116", + "uuid": "java-3-111", "seg": [ [ [ "泛型", "数组", - "列表" + "列表", + "泛型数组", + "数组列表" ] ] ], - "level": "1", + "level": { + "min": 0.12165178571428571, + "max": 0.12276785714285714 + }, "related_data": {} } } @@ -9548,18 +10985,22 @@ { "参数数量可变的方法": { "data": { - "uuid": "java-3-117", + "uuid": "java-3-112", "seg": [ [ [ "参数", "数量", "可变", - "方法" + "方法", + "参数数量" ] ] ], - "level": "1", + "level": { + "min": 0.12276785714285714, + "max": 0.12388392857142858 + }, "related_data": {} } } @@ -9567,7 +11008,7 @@ { "继承的设计技巧": { "data": { - "uuid": "java-3-118", + "uuid": "java-3-113", "seg": [ [ [ @@ -9577,7 +11018,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.12388392857142858, + "max": 0.125 + }, "related_data": {} } } @@ -9592,8 +11036,23 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.109375, + "max": 0.125 + }, + "related_data": { + "qa": { + "data_id": [ + "13_699939_588433@13", + "13_374496_403913@13", + "13_384974_422079@13", + "13_163149_35654@13", + "13_1108793_1349184@13", + "13_681209_533762@13", + "13_4645471_29328097@13" + ] + } + } } } }, @@ -9606,7 +11065,7 @@ { "定义包": { "data": { - "uuid": "java-4-144", + "uuid": "java-4-146", "seg": [ [ [ @@ -9615,7 +11074,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.125, + "max": 0.1251594387755102 + }, "related_data": {} } } @@ -9623,7 +11085,7 @@ { "包查找与CLASSPATH": { "data": { - "uuid": "java-4-145", + "uuid": "java-4-147", "seg": [ [ [ @@ -9635,11 +11097,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1251594387755102, + "max": 0.12531887755102042 + }, "related_data": { "qa": { "data_id": [ - "13_7400230_53348022" + "13_7400230_53348022@13" ] } } @@ -9649,7 +11114,7 @@ { "一个简短的包示例": { "data": { - "uuid": "java-4-146", + "uuid": "java-4-148", "seg": [ [ [ @@ -9659,7 +11124,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.12531887755102042, + "max": 0.12547831632653061 + }, "related_data": {} } } @@ -9667,7 +11135,7 @@ { "代码组织": { "data": { - "uuid": "java-4-147", + "uuid": "java-4-149", "seg": [ [ [ @@ -9675,7 +11143,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.12547831632653061, + "max": 0.1256377551020408 + }, "related_data": {} } } @@ -9683,7 +11154,7 @@ { "创建独一无二的包名": { "data": { - "uuid": "java-4-148", + "uuid": "java-4-150", "seg": [ [ [ @@ -9692,7 +11163,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1256377551020408, + "max": 0.125797193877551 + }, "related_data": {} } } @@ -9700,17 +11174,21 @@ { "定制工具库": { "data": { - "uuid": "java-4-149", + "uuid": "java-4-151", "seg": [ [ [ "定制", "工具", - "库" + "库", + "工具库" ] ] ], - "level": "1", + "level": { + "min": 0.125797193877551, + "max": 0.12595663265306123 + }, "related_data": {} } } @@ -9718,7 +11196,7 @@ { "用import改变行为": { "data": { - "uuid": "java-4-150", + "uuid": "java-4-152", "seg": [ [ [ @@ -9727,17 +11205,20 @@ ] ] ], - "level": "1", + "level": { + "min": 0.12595663265306123, + "max": 0.12611607142857142 + }, "related_data": { "qa": { "data_id": [ - "13_384025_420005", - "13_714325_706297", - "13_239138_222130", - "13_7462342_53447766", - "13_770061_831445", - "13_1060918_1258672", - "13_182462_68402" + "13_384025_420005@13", + "13_714325_706297@13", + "13_239138_222130@13", + "13_7462342_53447766@13", + "13_770061_831445@13", + "13_1060918_1258672@13", + "13_182462_68402@13" ] } } @@ -9747,7 +11228,7 @@ { "对使用包的忠告": { "data": { - "uuid": "java-4-151", + "uuid": "java-4-153", "seg": [ [ [ @@ -9756,7 +11237,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.12611607142857142, + "max": 0.12627551020408162 + }, "related_data": {} } } @@ -9764,7 +11248,7 @@ { "包名": { "data": { - "uuid": "java-4-152", + "uuid": "java-4-154", "seg": [ [ [ @@ -9772,7 +11256,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.12627551020408162, + "max": 0.12643494897959184 + }, "related_data": {} } } @@ -9780,7 +11267,7 @@ { "类的导入": { "data": { - "uuid": "java-4-153", + "uuid": "java-4-155", "seg": [ [ [ @@ -9789,15 +11276,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.12643494897959184, + "max": 0.12659438775510204 + }, "related_data": { "qa": { "data_id": [ - "13_223629_181923", - "13_383474_418911", - "13_1094942_1305566", - "13_663873_480585", - "13_7465572_53452590" + "13_223629_181923@13", + "13_383474_418911@13", + "13_1094942_1305566@13", + "13_663873_480585@13", + "13_7465572_53452590@13" ] } } @@ -9807,7 +11297,7 @@ { "在包中增加类": { "data": { - "uuid": "java-4-154", + "uuid": "java-4-156", "seg": [ [ [ @@ -9817,7 +11307,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.12659438775510204, + "max": 0.12675382653061223 + }, "related_data": {} } } @@ -9825,7 +11318,7 @@ { "包访问": { "data": { - "uuid": "java-4-155", + "uuid": "java-4-157", "seg": [ [ [ @@ -9834,18 +11327,49 @@ ] ] ], - "level": "1", + "level": { + "min": 0.12675382653061223, + "max": 0.12691326530612243 + }, + "related_data": { + "qa": { + "data_id": [ + "13_980024_1140265@13", + "13_757688_813294@13", + "13_224327_183773@13", + "13_227594_191985@13", + "13_7461046_53446798@13", + "13_1099336_1314458@13", + "13_26025_7091@13", + "13_1060586_1258195@13" + ] + } + } + } + } + }, + { + "类路径": { + "data": { + "uuid": "java-4-158", + "seg": [ + [ + [ + "类", + "路径" + ] + ] + ], + "level": { + "min": 0.12691326530612243, + "max": 0.12707270408163265 + }, "related_data": { "qa": { "data_id": [ - "13_980024_1140265", - "13_757688_813294", - "13_224327_183773", - "13_227594_191985", - "13_7461046_53446798", - "13_1099336_1314458", - "13_26025_7091", - "13_1060586_1258195" + "13_651363_458455@13", + "13_650621_457382@13", + "13_764872_823772@13" ] } } @@ -9855,7 +11379,7 @@ { "设置类路径": { "data": { - "uuid": "java-4-156", + "uuid": "java-4-159", "seg": [ [ [ @@ -9865,11 +11389,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.12707270408163265, + "max": 0.12723214285714285 + }, "related_data": { "qa": { "data_id": [ - "13_750119_803060" + "13_750119_803060@13" ] } } @@ -9878,7 +11405,7 @@ } ], "data": { - "uuid": "java-3-119", + "uuid": "java-3-114", "seg": [ [ [ @@ -9886,7 +11413,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.125, + "max": 0.12723214285714285 + }, "related_data": {} } } @@ -9894,7 +11424,7 @@ { "访问保护": { "data": { - "uuid": "java-3-120", + "uuid": "java-3-115", "seg": [ [ [ @@ -9903,7 +11433,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.12723214285714285, + "max": 0.12946428571428573 + }, "related_data": {} } } @@ -9911,7 +11444,7 @@ { "导入包": { "data": { - "uuid": "java-3-121", + "uuid": "java-3-116", "seg": [ [ [ @@ -9920,15 +11453,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.12946428571428573, + "max": 0.13169642857142858 + }, "related_data": { "qa": { "data_id": [ - "13_701356_591112", - "13_157749_21001", - "13_645030_446149", - "13_718798_712714", - "13_193511_98905" + "13_701356_591112@13", + "13_157749_21001@13", + "13_645030_446149@13", + "13_718798_712714@13", + "13_193511_98905@13" ] } } @@ -9941,7 +11477,7 @@ { "定义接口": { "data": { - "uuid": "java-4-157", + "uuid": "java-4-160", "seg": [ [ [ @@ -9950,16 +11486,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.13169642857142858, + "max": 0.13182773109243698 + }, "related_data": { "qa": { "data_id": [ - "13_7452829_53435161", - "13_7462216_53447662", - "13_716297_708965", - "13_678932_524433", - "13_7423605_53383471", - "13_796547_884844" + "13_7452829_53435161@13", + "13_7462216_53447662@13", + "13_716297_708965@13", + "13_678932_524433@13", + "13_7423605_53383471@13", + "13_796547_884844@13" ] } } @@ -9969,7 +11508,7 @@ { "实现接口": { "data": { - "uuid": "java-4-158", + "uuid": "java-4-161", "seg": [ [ [ @@ -9977,20 +11516,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.13182773109243698, + "max": 0.13195903361344538 + }, "related_data": { "qa": { "data_id": [ - "13_240954_226067", - "13_4645165_29327450", - "13_7432357_53401464", - "13_245474_235927", - "13_217965_166859", - "13_163732_36954", - "13_7430900_53398727", - "13_7448205_53428257", - "13_7465655_53452692", - "13_171933_49821" + "13_240954_226067@13", + "13_4645165_29327450@13", + "13_7432357_53401464@13", + "13_245474_235927@13", + "13_217965_166859@13", + "13_163732_36954@13", + "13_7430900_53398727@13", + "13_7448205_53428257@13", + "13_7465655_53452692@13", + "13_171933_49821@13" ] } } @@ -10000,7 +11542,7 @@ { "嵌套接口": { "data": { - "uuid": "java-4-159", + "uuid": "java-4-162", "seg": [ [ [ @@ -10009,13 +11551,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.13195903361344538, + "max": 0.13209033613445378 + }, "related_data": { "qa": { "data_id": [ - "13_27594_520687", - "13_648135_452471", - "13_7405724_53355102" + "13_27594_520687@13", + "13_648135_452471@13", + "13_7405724_53355102@13" ] } } @@ -10025,7 +11570,7 @@ { "应用接口": { "data": { - "uuid": "java-4-160", + "uuid": "java-4-163", "seg": [ [ [ @@ -10033,7 +11578,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.13209033613445378, + "max": 0.1322216386554622 + }, "related_data": {} } } @@ -10041,7 +11589,7 @@ { "接口中的变量": { "data": { - "uuid": "java-4-161", + "uuid": "java-4-164", "seg": [ [ [ @@ -10050,7 +11598,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1322216386554622, + "max": 0.1323529411764706 + }, "related_data": {} } } @@ -10058,7 +11609,7 @@ { "接口可以扩展": { "data": { - "uuid": "java-4-162", + "uuid": "java-4-165", "seg": [ [ [ @@ -10067,7 +11618,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1323529411764706, + "max": 0.132484243697479 + }, "related_data": {} } } @@ -10075,7 +11629,7 @@ { "完全解耦": { "data": { - "uuid": "java-4-163", + "uuid": "java-4-166", "seg": [ [ [ @@ -10084,16 +11638,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.132484243697479, + "max": 0.1326155462184874 + }, "related_data": { "qa": { "data_id": [ - "13_384912_421770", - "13_7451401_53432654", - "13_7442263_53419078", - "13_380390_413310", - "13_176823_59554", - "13_769871_831058" + "13_384912_421770@13", + "13_7451401_53432654@13", + "13_7442263_53419078@13", + "13_380390_413310@13", + "13_176823_59554@13", + "13_769871_831058@13" ] } } @@ -10103,7 +11660,7 @@ { "Java中的“多重继承”": { "data": { - "uuid": "java-4-164", + "uuid": "java-4-167", "seg": [ [ [ @@ -10112,7 +11669,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1326155462184874, + "max": 0.1327468487394958 + }, "related_data": {} } } @@ -10123,7 +11683,7 @@ { "组合接口时的名字冲突": { "data": { - "uuid": "java-5-66", + "uuid": "java-5-67", "seg": [ [ [ @@ -10134,12 +11694,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1327468487394958, + "max": 0.1328781512605042 + }, "related_data": { "qa": { "data_id": [ - "13_7451372_53432601", - "13_775656_841109" + "13_7451372_53432601@13", + "13_775656_841109@13" ] } } @@ -10148,7 +11711,7 @@ } ], "data": { - "uuid": "java-4-165", + "uuid": "java-4-168", "seg": [ [ [ @@ -10158,7 +11721,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1327468487394958, + "max": 0.1328781512605042 + }, "related_data": {} } } @@ -10166,7 +11732,7 @@ { "适配接口": { "data": { - "uuid": "java-4-166", + "uuid": "java-4-169", "seg": [ [ [ @@ -10175,11 +11741,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1328781512605042, + "max": 0.1330094537815126 + }, "related_data": { "qa": { "data_id": [ - "13_772775_836222" + "13_772775_836222@13" ] } } @@ -10192,7 +11761,7 @@ { "初始化接口中的域": { "data": { - "uuid": "java-5-67", + "uuid": "java-5-68", "seg": [ [ [ @@ -10202,20 +11771,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1330094537815126, + "max": 0.133140756302521 + }, "related_data": { "qa": { "data_id": [ - "13_189445_88369", - "13_7452121_53433923", - "13_7415016_53368181", - "13_653668_462564", - "13_747262_798350", - "13_1077710_1282080", - "13_756947_812208", - "13_688752_555344", - "13_7465102_53451821", - "13_671023_494316" + "13_189445_88369@13", + "13_7452121_53433923@13", + "13_7415016_53368181@13", + "13_653668_462564@13", + "13_747262_798350@13", + "13_1077710_1282080@13", + "13_756947_812208@13", + "13_688752_555344@13", + "13_7465102_53451821@13", + "13_671023_494316@13" ] } } @@ -10224,7 +11796,7 @@ } ], "data": { - "uuid": "java-4-167", + "uuid": "java-4-170", "seg": [ [ [ @@ -10233,7 +11805,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1330094537815126, + "max": 0.133140756302521 + }, "related_data": {} } } @@ -10241,7 +11816,7 @@ { "接口的属性": { "data": { - "uuid": "java-4-168", + "uuid": "java-4-171", "seg": [ [ [ @@ -10250,7 +11825,33 @@ ] ] ], - "level": "1", + "level": { + "min": 0.133140756302521, + "max": 0.1332720588235294 + }, + "related_data": {} + } + } + }, + { + "静态和私有方法": { + "data": { + "uuid": "java-4-172", + "seg": [ + [ + [ + "静态" + ], + [ + "私有", + "方法" + ] + ] + ], + "level": { + "min": 0.1332720588235294, + "max": 0.1334033613445378 + }, "related_data": {} } } @@ -10258,7 +11859,7 @@ { "默认方法": { "data": { - "uuid": "java-4-169", + "uuid": "java-4-173", "seg": [ [ [ @@ -10267,7 +11868,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1334033613445378, + "max": 0.13353466386554622 + }, "related_data": {} } } @@ -10275,7 +11879,7 @@ { "解决默认方法冲突": { "data": { - "uuid": "java-4-170", + "uuid": "java-4-174", "seg": [ [ [ @@ -10285,7 +11889,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.13353466386554622, + "max": 0.13366596638655462 + }, "related_data": {} } } @@ -10293,7 +11900,7 @@ { "Comparator接口": { "data": { - "uuid": "java-4-171", + "uuid": "java-4-175", "seg": [ [ [ @@ -10302,7 +11909,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.13366596638655462, + "max": 0.13379726890756302 + }, "related_data": {} } } @@ -10310,23 +11920,27 @@ { "对象克隆": { "data": { - "uuid": "java-4-172", + "uuid": "java-4-176", "seg": [ [ [ "对象", - "克隆" + "克隆", + "对象克隆" ] ] ], - "level": "1", + "level": { + "min": 0.13379726890756302, + "max": 0.13392857142857142 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-122", + "uuid": "java-3-117", "seg": [ [ [ @@ -10334,11 +11948,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.13169642857142858, + "max": 0.13392857142857142 + }, "related_data": { "qa": { "data_id": [ - "13_242001_228749" + "13_242001_228749@13" ] } } @@ -10351,7 +11968,7 @@ { "默认方法的基础知识": { "data": { - "uuid": "java-4-173", + "uuid": "java-4-177", "seg": [ [ [ @@ -10361,7 +11978,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.13392857142857142, + "max": 0.13504464285714285 + }, "related_data": {} } } @@ -10369,23 +11989,27 @@ { "一个更加实用的例子": { "data": { - "uuid": "java-4-174", + "uuid": "java-4-178", "seg": [ [ [ "实用", - "例子" + "例子", + "更加实用" ] ] ], - "level": "1", + "level": { + "min": 0.13504464285714285, + "max": 0.13616071428571427 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-123", + "uuid": "java-3-118", "seg": [ [ [ @@ -10395,7 +12019,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.13392857142857142, + "max": 0.13616071428571427 + }, "related_data": {} } } @@ -10403,7 +12030,7 @@ { "在接口中使用静态方法": { "data": { - "uuid": "java-3-124", + "uuid": "java-3-119", "seg": [ [ [ @@ -10412,7 +12039,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.13616071428571427, + "max": 0.13839285714285715 + }, "related_data": {} } } @@ -10420,7 +12050,7 @@ { "关于包和接口的最后说明": { "data": { - "uuid": "java-3-125", + "uuid": "java-3-120", "seg": [ [ [ @@ -10429,7 +12059,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.13839285714285715, + "max": 0.140625 + }, "related_data": {} } } @@ -10445,7 +12078,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.125, + "max": 0.140625 + }, "related_data": {} } } @@ -10456,16 +12092,20 @@ { "异常处理的基础知识": { "data": { - "uuid": "java-3-126", + "uuid": "java-3-121", "seg": [ [ [ "异常", - "基础知识" + "基础知识", + "异常处理" ] ] ], - "level": "1", + "level": { + "min": 0.140625, + "max": 0.14111328125 + }, "related_data": {} } } @@ -10473,20 +12113,24 @@ { "异常类型": { "data": { - "uuid": "java-3-127", + "uuid": "java-3-122", "seg": [ [ [ "异常", - "类型" + "类型", + "异常类型" ] ] ], - "level": "1", + "level": { + "min": 0.14111328125, + "max": 0.1416015625 + }, "related_data": { "qa": { "data_id": [ - "13_392898_436633" + "13_392898_436633@13" ] } } @@ -10495,203 +12139,21 @@ }, { "未捕获的异常": { - "children": [ - { - "try块": { - "data": { - "uuid": "java-4-175", - "seg": [ - [ - [ - "try", - "块" - ] - ] - ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_387813_427161" - ] - } - } - } - } - }, - { - "异常处理程序": { - "children": [ - { - "错误": { - "data": { - "uuid": "java-5-68", - "seg": [ - [ - [] - ] - ], - "level": "1", - "related_data": {} - } - } - } - ], - "data": { - "uuid": "java-4-176", - "seg": [ - [ - [ - "异常", - "处理程序" - ] - ] - ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_7455998_53439330" - ] - } - } - } - } - }, - { - "栈轨迹": { - "data": { - "uuid": "java-4-177", - "seg": [ - [ - [ - "栈", - "轨迹" - ] - ] - ], - "level": "1", - "related_data": {} - } - } - }, - { - "重新抛出异常": { - "data": { - "uuid": "java-4-178", - "seg": [ - [ - [ - "抛出", - "异常" - ] - ] - ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_390336_431982", - "13_704646_598121", - "13_632013_441137", - "13_1049102_1246557", - "13_178992_63917", - "13_202556_127688", - "13_390542_432184", - "13_6552956_46196169", - "13_7464109_53450456", - "13_671976_496415" - ] - } - } - } - } - }, - { - "异常链": { - "data": { - "uuid": "java-4-179", - "seg": [ - [ - [ - "异常", - "链" - ] - ] - ], - "level": "1", - "related_data": {} - } - } - }, - { - "f?inally子句": { - "data": { - "uuid": "java-4-180", - "seg": [ - [ - [ - "f", - "inally", - "子句" - ] - ] - ], - "level": "1", - "related_data": {} - } - } - }, - { - "try-with-Resources语句": { - "data": { - "uuid": "java-4-181", - "seg": [ - [ - [ - "try", - "with", - "resources", - "语句" - ] - ] - ], - "level": "1", - "related_data": {} - } - } - }, - { - "分析堆栈轨迹元素": { - "data": { - "uuid": "java-4-182", - "seg": [ - [ - [ - "分析", - "堆栈", - "轨迹", - "元素" - ] - ] - ], - "level": "1", - "related_data": {} - } - } - } - ], "data": { - "uuid": "java-3-128", + "uuid": "java-3-123", "seg": [ [ [ "捕获", - "异常" + "异常", + "未捕获" ] ] ], - "level": "1", + "level": { + "min": 0.1416015625, + "max": 0.14208984375 + }, "related_data": {} } } @@ -10699,7 +12161,7 @@ { "使用try和catch": { "data": { - "uuid": "java-3-129", + "uuid": "java-3-124", "seg": [ [ [ @@ -10710,11 +12172,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.14208984375, + "max": 0.142578125 + }, "related_data": { "qa": { "data_id": [ - "13_981450_1143736" + "13_981450_1143736@13" ] } } @@ -10724,7 +12189,7 @@ { "多条catch子句": { "data": { - "uuid": "java-3-130", + "uuid": "java-3-125", "seg": [ [ [ @@ -10733,7 +12198,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.142578125, + "max": 0.14306640625 + }, "related_data": {} } } @@ -10741,7 +12209,7 @@ { "嵌套的try语句": { "data": { - "uuid": "java-3-131", + "uuid": "java-3-126", "seg": [ [ [ @@ -10751,7 +12219,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.14306640625, + "max": 0.1435546875 + }, "related_data": {} } } @@ -10759,7 +12230,7 @@ { "throw": { "data": { - "uuid": "java-3-132", + "uuid": "java-3-127", "seg": [ [ [ @@ -10767,7 +12238,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1435546875, + "max": 0.14404296875 + }, "related_data": {} } } @@ -10775,7 +12249,7 @@ { "throws": { "data": { - "uuid": "java-3-133", + "uuid": "java-3-128", "seg": [ [ [ @@ -10783,11 +12257,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.14404296875, + "max": 0.14453125 + }, "related_data": { "qa": { "data_id": [ - "13_364273_386352" + "13_364273_386352@13" ] } } @@ -10797,7 +12274,7 @@ { "finally": { "data": { - "uuid": "java-3-134", + "uuid": "java-3-129", "seg": [ [ [ @@ -10805,7 +12282,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.14453125, + "max": 0.14501953125 + }, "related_data": {} } } @@ -10813,7 +12293,7 @@ { "Java的内置异常": { "data": { - "uuid": "java-3-135", + "uuid": "java-3-130", "seg": [ [ [ @@ -10823,7 +12303,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.14501953125, + "max": 0.1455078125 + }, "related_data": {} } } @@ -10831,17 +12314,21 @@ { "创建自己的异常子类": { "data": { - "uuid": "java-3-136", + "uuid": "java-3-131", "seg": [ [ [ "创建", "异常", - "子类" + "子类", + "异常子类" ] ] ], - "level": "1", + "level": { + "min": 0.1455078125, + "max": 0.14599609375 + }, "related_data": {} } } @@ -10849,7 +12336,7 @@ { "链式异常": { "data": { - "uuid": "java-3-137", + "uuid": "java-3-132", "seg": [ [ [ @@ -10858,7 +12345,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.14599609375, + "max": 0.146484375 + }, "related_data": {} } } @@ -10866,25 +12356,145 @@ { "3个近期添加的异常特性": { "data": { - "uuid": "java-3-138", + "uuid": "java-3-133", "seg": [ [ [ "添加", "异常", - "特性" + "特性", + "异常特性" ] ] ], - "level": "1", + "level": { + "min": 0.146484375, + "max": 0.14697265625 + }, "related_data": {} } } }, { "使用异常": { + "children": [ + { + "异常的类型": { + "data": { + "uuid": "java-4-179", + "seg": [ + [ + [ + "异常", + "类型" + ] + ] + ], + "level": { + "min": 0.14697265625, + "max": 0.1470703125 + }, + "related_data": { + "qa": { + "data_id": [ + "13_178992_63917@13", + "13_202556_127688@13", + "13_390542_432184@13", + "13_6552956_46196169@13", + "13_7464109_53450456@13", + "13_671976_496415@13", + "13_251446_249901@13", + "13_168074_43334@13" + ] + } + } + } + } + }, + { + "throws关键字": { + "data": { + "uuid": "java-4-180", + "seg": [ + [ + [ + "throws", + "关键字" + ] + ] + ], + "level": { + "min": 0.1470703125, + "max": 0.14716796875 + }, + "related_data": {} + } + } + }, + { + "throw关键字": { + "data": { + "uuid": "java-4-181", + "seg": [ + [ + [ + "throw", + "关键字" + ] + ] + ], + "level": { + "min": 0.14716796875, + "max": 0.147265625 + }, + "related_data": {} + } + } + }, + { + "自定义异常": { + "data": { + "uuid": "java-4-182", + "seg": [ + [ + [ + "自定义", + "异常" + ] + ] + ], + "level": { + "min": 0.147265625, + "max": 0.14736328125 + }, + "related_data": {} + } + } + }, + { + "异常参数": { + "data": { + "uuid": "java-4-183", + "seg": [ + [ + [ + "异常", + "参数", + "异常参数" + ] + ] + ], + "level": { + "min": 0.14736328125, + "max": 0.1474609375 + }, + "related_data": {} + } + } + } + ], "data": { - "uuid": "java-3-139", + "uuid": "java-3-134", "seg": [ [ [ @@ -10892,81 +12502,37 @@ ] ] ], - "level": "1", + "level": { + "min": 0.14697265625, + "max": 0.1474609375 + }, "related_data": { "qa": { "data_id": [ - "13_170469_47048" + "13_170469_47048@13" ] } } } } }, - { - "throws关键字": { - "data": { - "uuid": "java-3-140", - "seg": [ - [ - [ - "throws", - "关键字" - ] - ] - ], - "level": "1", - "related_data": {} - } - } - }, - { - "throw关键字": { - "data": { - "uuid": "java-3-141", - "seg": [ - [ - [ - "throw", - "关键字" - ] - ] - ], - "level": "1", - "related_data": {} - } - } - }, - { - "自定义异常": { - "data": { - "uuid": "java-3-142", - "seg": [ - [ - [ - "自定义", - "异常" - ] - ] - ], - "level": "1", - "related_data": {} - } - } - }, { "异常概述": { "data": { - "uuid": "java-3-143", + "uuid": "java-3-135", "seg": [ [ [ "异常", - "概述" + "概述", + "异常概述" ] ] ], - "level": "1", + "level": { + "min": 0.1474609375, + "max": 0.14794921875 + }, "related_data": {} } } @@ -10977,7 +12543,7 @@ { "try-catch代码块": { "data": { - "uuid": "java-4-183", + "uuid": "java-4-184", "seg": [ [ [ @@ -10986,14 +12552,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.14794921875, + "max": 0.1484375 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-144", + "uuid": "java-3-136", "seg": [ [ [ @@ -11002,7 +12571,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.14794921875, + "max": 0.1484375 + }, "related_data": {} } } @@ -11013,7 +12585,7 @@ { "使用throws关键字抛出异常": { "data": { - "uuid": "java-4-184", + "uuid": "java-4-185", "seg": [ [ [ @@ -11024,12 +12596,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1484375, + "max": 0.148681640625 + }, "related_data": { "qa": { "data_id": [ - "13_239007_221669", - "13_7438445_53411798" + "13_239007_221669@13", + "13_7438445_53411798@13" ] } } @@ -11039,7 +12614,7 @@ { "使用throw关键字抛出异常": { "data": { - "uuid": "java-4-185", + "uuid": "java-4-186", "seg": [ [ [ @@ -11050,14 +12625,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.148681640625, + "max": 0.14892578125 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-145", + "uuid": "java-3-137", "seg": [ [ [ @@ -11067,24 +12645,50 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1484375, + "max": 0.14892578125 + }, "related_data": {} } } }, { - "异常参数": { + "处理程序异常错误": { + "children": [ + { + "错误": { + "data": { + "uuid": "java-4-187", + "seg": [ + [ + [] + ] + ], + "level": { + "min": 0.14892578125, + "max": 0.1494140625 + }, + "related_data": {} + } + } + } + ], "data": { - "uuid": "java-3-146", + "uuid": "java-3-138", "seg": [ [ [ + "处理程序", "异常", - "参数" + "异常错误" ] ] ], - "level": "1", + "level": { + "min": 0.14892578125, + "max": 0.1494140625 + }, "related_data": {} } } @@ -11092,7 +12696,7 @@ { "Java常见异常": { "data": { - "uuid": "java-3-147", + "uuid": "java-3-139", "seg": [ [ [ @@ -11102,7 +12706,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1494140625, + "max": 0.14990234375 + }, "related_data": {} } } @@ -11110,7 +12717,7 @@ { "运行时异常": { "data": { - "uuid": "java-3-148", + "uuid": "java-3-140", "seg": [ [ [ @@ -11119,15 +12726,11 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_373739_402001", - "13_1065_1855" - ] - } - } + "level": { + "min": 0.14990234375, + "max": 0.150390625 + }, + "related_data": {} } } }, @@ -11137,7 +12740,7 @@ { "使用try...catch捕获异常": { "data": { - "uuid": "java-4-186", + "uuid": "java-4-188", "seg": [ [ [ @@ -11148,12 +12751,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.150390625, + "max": 0.15046037946428573 + }, "related_data": { "qa": { "data_id": [ - "13_646210_448476", - "13_391421_433776" + "13_646210_448476@13" ] } } @@ -11163,42 +12768,77 @@ { "异常类的继承体系": { "data": { - "uuid": "java-4-187", + "uuid": "java-4-189", "seg": [ [ [ "异常", "类", "继承", - "体系" + "体系", + "异常类" ] ] ], - "level": "1", + "level": { + "min": 0.15046037946428573, + "max": 0.15053013392857142 + }, "related_data": {} } } }, + { + "多异常捕获": { + "data": { + "uuid": "java-4-190", + "seg": [ + [ + [ + "异常", + "捕获", + "异常捕获" + ] + ] + ], + "level": { + "min": 0.15053013392857142, + "max": 0.15059988839285715 + }, + "related_data": { + "qa": { + "data_id": [ + "13_632013_441137@13" + ] + } + } + } + } + }, { "访问异常信息": { "data": { - "uuid": "java-4-188", + "uuid": "java-4-191", "seg": [ [ [ "访问", "异常", - "信息" + "信息", + "异常信息" ] ] ], - "level": "1", + "level": { + "min": 0.15059988839285715, + "max": 0.15066964285714285 + }, "related_data": { "qa": { "data_id": [ - "13_766138_825249", - "13_690331_560110", - "13_745342_792986" + "13_766138_825249@13", + "13_690331_560110@13", + "13_745342_792986@13" ] } } @@ -11208,7 +12848,7 @@ { "使用finally回收资源": { "data": { - "uuid": "java-4-189", + "uuid": "java-4-192", "seg": [ [ [ @@ -11218,7 +12858,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.15066964285714285, + "max": 0.15073939732142858 + }, "related_data": {} } } @@ -11226,25 +12869,29 @@ { "异常处理的嵌套": { "data": { - "uuid": "java-4-190", + "uuid": "java-4-193", "seg": [ [ [ "异常", - "嵌套" + "嵌套", + "异常处理" ] ] ], - "level": "1", + "level": { + "min": 0.15073939732142858, + "max": 0.15080915178571427 + }, "related_data": { "qa": { "data_id": [ - "13_7441407_53417535", - "13_225340_186350", - "13_379802_412058", - "13_7466262_53453461", - "13_1002607_1182966", - "13_7457307_53442256" + "13_7441407_53417535@13", + "13_225340_186350@13", + "13_379802_412058@13", + "13_7466262_53453461@13", + "13_1002607_1182966@13", + "13_7457307_53442256@13" ] } } @@ -11254,7 +12901,7 @@ { "Java 9增强的自动关闭资源的try语句": { "data": { - "uuid": "java-4-191", + "uuid": "java-4-194", "seg": [ [ [ @@ -11268,23 +12915,30 @@ ] ] ], - "level": "1", + "level": { + "min": 0.15080915178571427, + "max": 0.15087890625 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-149", + "uuid": "java-3-141", "seg": [ [ [ "异常", - "机制" + "机制", + "异常处理" ] ] ], - "level": "1", + "level": { + "min": 0.150390625, + "max": 0.15087890625 + }, "related_data": {} } } @@ -11295,7 +12949,7 @@ { "使用throws声明抛出异常": { "data": { - "uuid": "java-4-192", + "uuid": "java-4-195", "seg": [ [ [ @@ -11306,7 +12960,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.15087890625, + "max": 0.151123046875 + }, "related_data": {} } } @@ -11314,7 +12971,7 @@ { "方法重写时声明抛出异常的限制": { "data": { - "uuid": "java-4-193", + "uuid": "java-4-196", "seg": [ [ [ @@ -11322,18 +12979,22 @@ "重写", "声明", "抛出", - "异常" + "异常", + "时声明" ] ] ], - "level": "1", + "level": { + "min": 0.151123046875, + "max": 0.1513671875 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-150", + "uuid": "java-3-142", "seg": [ [ [ @@ -11343,11 +13004,15 @@ [ "runtime", "异常", - "体系" + "体系", + "异常体系" ] ] ], - "level": "1", + "level": { + "min": 0.15087890625, + "max": 0.1513671875 + }, "related_data": {} } } @@ -11358,24 +13023,28 @@ { "自定义异常类": { "data": { - "uuid": "java-4-194", + "uuid": "java-4-197", "seg": [ [ [ "自定义", "异常", - "类" + "类", + "异常类" ] ] ], - "level": "1", + "level": { + "min": 0.1513671875, + "max": 0.151611328125 + }, "related_data": { "qa": { "data_id": [ - "13_7457076_53441145", - "13_229619_197842", - "13_1061878_1259706", - "13_7455849_53439185" + "13_7457076_53441145@13", + "13_229619_197842@13", + "13_1061878_1259706@13", + "13_7455849_53439185@13" ] } } @@ -11385,7 +13054,7 @@ { "使用throw语句抛出异常": { "data": { - "uuid": "java-4-195", + "uuid": "java-4-198", "seg": [ [ [ @@ -11396,15 +13065,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.151611328125, + "max": 0.15185546875 + }, "related_data": { "qa": { "data_id": [ - "13_673558_501711", - "13_756849_812118", - "13_998993_1177644", - "13_217797_166498", - "13_364223_385656" + "13_673558_501711@13", + "13_756849_812118@13", + "13_998993_1177644@13", + "13_364223_385656@13" ] } } @@ -11413,7 +13084,7 @@ } ], "data": { - "uuid": "java-3-151", + "uuid": "java-3-143", "seg": [ [ [ @@ -11423,7 +13094,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1513671875, + "max": 0.15185546875 + }, "related_data": {} } } @@ -11431,18 +13105,22 @@ { "Java的异常跟踪栈": { "data": { - "uuid": "java-3-152", + "uuid": "java-3-144", "seg": [ [ [ "java", "异常", "跟踪", - "栈" + "栈", + "异常跟踪" ] ] ], - "level": "1", + "level": { + "min": 0.15185546875, + "max": 0.15234375 + }, "related_data": {} } } @@ -11453,16 +13131,41 @@ { "不要过度使用异常": { "data": { - "uuid": "java-4-196", + "uuid": "java-4-199", "seg": [ [ [ "过度", - "异常" + "异常", + "不要过度" + ] + ] + ], + "level": { + "min": 0.15234375, + "max": 0.1524658203125 + }, + "related_data": {} + } + } + }, + { + "不要使用过于庞大的try块": { + "data": { + "uuid": "java-4-200", + "seg": [ + [ + [ + "try", + "块", + "不要使用" ] ] ], - "level": "1", + "level": { + "min": 0.1524658203125, + "max": 0.152587890625 + }, "related_data": {} } } @@ -11470,7 +13173,7 @@ { "避免使用Catch All语句": { "data": { - "uuid": "java-4-197", + "uuid": "java-4-201", "seg": [ [ [ @@ -11480,29 +13183,57 @@ ] ] ], - "level": "1", + "level": { + "min": 0.152587890625, + "max": 0.1527099609375 + }, "related_data": { "qa": { "data_id": [ - "13_7409601_53360068" + "13_7409601_53360068@13" ] } } } } + }, + { + "不要忽略捕获到的异常": { + "data": { + "uuid": "java-4-202", + "seg": [ + [ + [ + "捕获", + "异常", + "忽略捕获" + ] + ] + ], + "level": { + "min": 0.1527099609375, + "max": 0.15283203125 + }, + "related_data": {} + } + } } ], "data": { - "uuid": "java-3-153", + "uuid": "java-3-145", "seg": [ [ [ "异常", - "规则" + "规则", + "异常处理" ] ] ], - "level": "1", + "level": { + "min": 0.15234375, + "max": 0.15283203125 + }, "related_data": {} } } @@ -11510,7 +13241,7 @@ { "Java的异常": { "data": { - "uuid": "java-3-154", + "uuid": "java-3-146", "seg": [ [ [ @@ -11519,7 +13250,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.15283203125, + "max": 0.1533203125 + }, "related_data": {} } } @@ -11527,7 +13261,7 @@ { "NullPointerException": { "data": { - "uuid": "java-3-155", + "uuid": "java-3-147", "seg": [ [ [ @@ -11535,16 +13269,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1533203125, + "max": 0.15380859375 + }, "related_data": { "qa": { "data_id": [ - "13_7442430_53419235", - "13_223115_180673", - "13_3542_4384", - "13_223644_181973", - "13_372543_400065", - "13_671707_496044" + "13_7442430_53419235@13", + "13_223115_180673@13", + "13_3542_4384@13", + "13_223644_181973@13", + "13_372543_400065@13", + "13_671707_496044@13" ] } } @@ -11554,7 +13291,7 @@ { "使用断言": { "data": { - "uuid": "java-3-156", + "uuid": "java-3-148", "seg": [ [ [ @@ -11562,7 +13299,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.15380859375, + "max": 0.154296875 + }, "related_data": {} } } @@ -11570,7 +13310,7 @@ { "使用JDK Logging": { "data": { - "uuid": "java-3-157", + "uuid": "java-3-149", "seg": [ [ [ @@ -11579,7 +13319,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.154296875, + "max": 0.15478515625 + }, "related_data": {} } } @@ -11587,7 +13330,7 @@ { "使用Commons Logging": { "data": { - "uuid": "java-3-158", + "uuid": "java-3-150", "seg": [ [ [ @@ -11596,11 +13339,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.15478515625, + "max": 0.1552734375 + }, "related_data": { "qa": { "data_id": [ - "13_755374_810810" + "13_755374_810810@13" ] } } @@ -11610,7 +13356,7 @@ { "使用Log4j": { "data": { - "uuid": "java-3-159", + "uuid": "java-3-151", "seg": [ [ [ @@ -11618,14 +13364,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1552734375, + "max": 0.15576171875 + }, "related_data": { "qa": { "data_id": [ - "13_7439052_53412598", - "13_349692_357624", - "13_7444629_53423144", - "13_7397035_53369452" + "13_7439052_53412598@13", + "13_349692_357624@13", + "13_7444629_53423144@13", + "13_7397035_53369452@13" ] } } @@ -11635,7 +13384,7 @@ { "使用SLF4J和Logback": { "data": { - "uuid": "java-3-160", + "uuid": "java-3-152", "seg": [ [ [ @@ -11646,12 +13395,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.15576171875, + "max": 0.15625 + }, "related_data": { "qa": { "data_id": [ - "13_663619_542295", - "13_693304_570611" + "13_663619_542295@13", + "13_693304_570611@13" ] } } @@ -11664,15 +13416,19 @@ "seg": [ [ [ - "异常" + "异常", + "异常处理" ] ] ], - "level": "1", + "level": { + "min": 0.140625, + "max": 0.15625 + }, "related_data": { "qa": { "data_id": [ - "13_366228_390412" + "13_366228_390412@13" ] } } @@ -11688,7 +13444,7 @@ { "线程优先级": { "data": { - "uuid": "java-4-198", + "uuid": "java-4-203", "seg": [ [ [ @@ -11697,7 +13453,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.15625, + "max": 0.15660511363636365 + }, "related_data": {} } } @@ -11705,7 +13464,7 @@ { "同步": { "data": { - "uuid": "java-4-199", + "uuid": "java-4-204", "seg": [ [ [ @@ -11713,7 +13472,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.15660511363636365, + "max": 0.1569602272727273 + }, "related_data": {} } } @@ -11721,7 +13483,7 @@ { "消息传递": { "data": { - "uuid": "java-4-200", + "uuid": "java-4-205", "seg": [ [ [ @@ -11729,7 +13491,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1569602272727273, + "max": 0.1573153409090909 + }, "related_data": {} } } @@ -11737,7 +13502,7 @@ { "Thread类和Runnable接口": { "data": { - "uuid": "java-4-201", + "uuid": "java-4-206", "seg": [ [ [ @@ -11750,24 +13515,31 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1573153409090909, + "max": 0.15767045454545456 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-161", + "uuid": "java-3-153", "seg": [ [ [ "java", "线程", - "模型" + "模型", + "线程模型" ] ] ], - "level": "2", + "level": { + "min": 0.15625, + "max": 0.15767045454545456 + }, "related_data": {} } } @@ -11775,16 +13547,20 @@ { "主线程": { "data": { - "uuid": "java-3-162", + "uuid": "java-3-154", "seg": [ [ [ "主线", - "程" + "程", + "主线程" ] ] ], - "level": "2", + "level": { + "min": 0.15767045454545456, + "max": 0.1590909090909091 + }, "related_data": {} } } @@ -11795,7 +13571,7 @@ { "实现Runnable接口": { "data": { - "uuid": "java-4-202", + "uuid": "java-4-207", "seg": [ [ [ @@ -11804,7 +13580,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1590909090909091, + "max": 0.1592684659090909 + }, "related_data": {} } } @@ -11812,7 +13591,7 @@ { "扩展Thread类": { "data": { - "uuid": "java-4-203", + "uuid": "java-4-208", "seg": [ [ [ @@ -11822,7 +13601,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1592684659090909, + "max": 0.15944602272727273 + }, "related_data": {} } } @@ -11830,7 +13612,7 @@ { "选择一种创建方式": { "data": { - "uuid": "java-4-204", + "uuid": "java-4-209", "seg": [ [ [ @@ -11840,12 +13622,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.15944602272727273, + "max": 0.15962357954545456 + }, "related_data": { "qa": { "data_id": [ - "13_209629_147607", - "13_9919_4548" + "13_209629_147607@13", + "13_9919_4548@13" ] } } @@ -11855,7 +13640,7 @@ { "Thread类实现多线程": { "data": { - "uuid": "java-4-205", + "uuid": "java-4-210", "seg": [ [ [ @@ -11865,7 +13650,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.15962357954545456, + "max": 0.15980113636363635 + }, "related_data": {} } } @@ -11873,7 +13661,7 @@ { "Runnable接口实现多线程": { "data": { - "uuid": "java-4-206", + "uuid": "java-4-211", "seg": [ [ [ @@ -11883,7 +13671,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.15980113636363635, + "max": 0.15997869318181818 + }, "related_data": {} } } @@ -11891,7 +13682,7 @@ { "Callable接口实现多线程": { "data": { - "uuid": "java-4-207", + "uuid": "java-4-212", "seg": [ [ [ @@ -11901,7 +13692,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.15997869318181818, + "max": 0.16015625 + }, "related_data": {} } } @@ -11909,7 +13703,7 @@ { "三种实现多线程方式的对比分析": { "data": { - "uuid": "java-4-208", + "uuid": "java-4-213", "seg": [ [ [ @@ -11919,7 +13713,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.16015625, + "max": 0.16033380681818182 + }, "related_data": {} } } @@ -11927,21 +13724,25 @@ { "后台线程": { "data": { - "uuid": "java-4-209", + "uuid": "java-4-214", "seg": [ [ [ "后台", - "线程" + "线程", + "后台线程" ] ] ], - "level": "2", + "level": { + "min": 0.16033380681818182, + "max": 0.16051136363636365 + }, "related_data": { "qa": { "data_id": [ - "13_220473_173173", - "13_386210_424256" + "13_220473_173173@13", + "13_386210_424256@13" ] } } @@ -11950,7 +13751,7 @@ } ], "data": { - "uuid": "java-3-163", + "uuid": "java-3-155", "seg": [ [ [ @@ -11959,7 +13760,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1590909090909091, + "max": 0.16051136363636365 + }, "related_data": {} } } @@ -11967,7 +13771,7 @@ { "创建多个线程": { "data": { - "uuid": "java-3-164", + "uuid": "java-3-156", "seg": [ [ [ @@ -11976,7 +13780,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.16051136363636365, + "max": 0.16193181818181818 + }, "related_data": {} } } @@ -11984,7 +13791,7 @@ { "使用isAlive和join方法": { "data": { - "uuid": "java-3-165", + "uuid": "java-3-157", "seg": [ [ [ @@ -11996,7 +13803,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.16193181818181818, + "max": 0.16335227272727273 + }, "related_data": {} } } @@ -12004,7 +13814,7 @@ { "线程优先级": { "data": { - "uuid": "java-3-166", + "uuid": "java-3-158", "seg": [ [ [ @@ -12013,7 +13823,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.16335227272727273, + "max": 0.16477272727272727 + }, "related_data": {} } } @@ -12024,20 +13837,24 @@ { "使用同步方法": { "data": { - "uuid": "java-4-210", + "uuid": "java-4-215", "seg": [ [ [ "同步", - "方法" + "方法", + "同步方法" ] ] ], - "level": "2", + "level": { + "min": 0.16477272727272727, + "max": 0.16491477272727273 + }, "related_data": { "qa": { "data_id": [ - "13_261803_273953" + "13_261803_273953@13" ] } } @@ -12047,7 +13864,7 @@ { "synchronized语句": { "data": { - "uuid": "java-4-211", + "uuid": "java-4-216", "seg": [ [ [ @@ -12056,7 +13873,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.16491477272727273, + "max": 0.16505681818181817 + }, "related_data": {} } } @@ -12064,17 +13884,21 @@ { "竞态条件的一个例子": { "data": { - "uuid": "java-4-212", + "uuid": "java-4-217", "seg": [ [ [ "竞态", "条件", - "例子" + "例子", + "竞态条件" ] ] ], - "level": "2", + "level": { + "min": 0.16505681818181817, + "max": 0.16519886363636363 + }, "related_data": {} } } @@ -12082,17 +13906,21 @@ { "竞态条件详解": { "data": { - "uuid": "java-4-213", + "uuid": "java-4-218", "seg": [ [ [ "竞态", "条件", - "详解" + "详解", + "竞态条件" ] ] ], - "level": "2", + "level": { + "min": 0.16519886363636363, + "max": 0.1653409090909091 + }, "related_data": {} } } @@ -12100,7 +13928,7 @@ { "锁对象": { "data": { - "uuid": "java-4-214", + "uuid": "java-4-219", "seg": [ [ [ @@ -12109,12 +13937,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1653409090909091, + "max": 0.16548295454545453 + }, "related_data": { "qa": { "data_id": [ - "13_367700_393621", - "13_7407745_53358031" + "13_367700_393621@13", + "13_7407745_53358031@13" ] } } @@ -12124,16 +13955,20 @@ { "条件对象": { "data": { - "uuid": "java-4-215", + "uuid": "java-4-220", "seg": [ [ [ "条件", - "对象" + "对象", + "条件对象" ] ] ], - "level": "2", + "level": { + "min": 0.16548295454545453, + "max": 0.165625 + }, "related_data": {} } } @@ -12141,7 +13976,7 @@ { "synchronized关键字": { "data": { - "uuid": "java-4-216", + "uuid": "java-4-221", "seg": [ [ [ @@ -12150,16 +13985,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.165625, + "max": 0.16576704545454546 + }, "related_data": { "qa": { "data_id": [ - "13_1097426_1310873", - "13_688048_552994", - "13_7399925_53347529", - "13_230141_199115", - "13_168762_44196", - "13_7403831_53352504" + "13_1097426_1310873@13", + "13_688048_552994@13", + "13_7399925_53347529@13", + "13_7405485_53354749@13", + "13_230141_199115@13", + "13_361893_380232@13", + "13_168762_44196@13", + "13_744931_791790@13", + "13_755192_810486@13", + "13_7404477_53353316@13" ] } } @@ -12169,16 +14011,20 @@ { "监视器概念": { "data": { - "uuid": "java-4-217", + "uuid": "java-4-222", "seg": [ [ [ "监视器", - "概念" + "概念", + "监视器概念" ] ] ], - "level": "2", + "level": { + "min": 0.16576704545454546, + "max": 0.16590909090909092 + }, "related_data": {} } } @@ -12186,7 +14032,7 @@ { "volatile字段": { "data": { - "uuid": "java-4-218", + "uuid": "java-4-223", "seg": [ [ [ @@ -12195,37 +14041,38 @@ ] ] ], - "level": "2", - "related_data": { - "qa": { - "data_id": [ - "13_766955_826404" - ] - } - } + "level": { + "min": 0.16590909090909092, + "max": 0.16605113636363636 + }, + "related_data": {} } } }, { "线程局部变量": { "data": { - "uuid": "java-4-219", + "uuid": "java-4-224", "seg": [ [ [ "线程", - "局部变量" + "局部变量", + "线程局部变量" ] ] ], - "level": "2", + "level": { + "min": 0.16605113636363636, + "max": 0.16619318181818182 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-167", + "uuid": "java-3-159", "seg": [ [ [ @@ -12233,7 +14080,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.16477272727272727, + "max": 0.16619318181818182 + }, "related_data": {} } } @@ -12241,16 +14091,20 @@ { "线程间通信": { "data": { - "uuid": "java-3-168", + "uuid": "java-3-160", "seg": [ [ [ "线程", - "间通信" + "间通信", + "线程间通信" ] ] ], - "level": "2", + "level": { + "min": 0.16619318181818182, + "max": 0.16761363636363635 + }, "related_data": {} } } @@ -12258,7 +14112,7 @@ { "挂起、恢复与停止线程": { "data": { - "uuid": "java-3-169", + "uuid": "java-3-161", "seg": [ [ [ @@ -12273,11 +14127,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.16761363636363635, + "max": 0.1690340909090909 + }, "related_data": { "qa": { "data_id": [ - "13_7439041_53412569" + "13_7439041_53412569@13" ] } } @@ -12287,7 +14144,7 @@ { "获取线程的状态": { "data": { - "uuid": "java-3-170", + "uuid": "java-3-162", "seg": [ [ [ @@ -12297,7 +14154,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1690340909090909, + "max": 0.17045454545454547 + }, "related_data": {} } } @@ -12314,7 +14174,7 @@ { "建立一个进程": { "data": { - "uuid": "java-6-68", + "uuid": "java-6-69", "seg": [ [ [ @@ -12323,19 +14183,21 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17045454545454547, + "max": 0.1704658189033189 + }, "related_data": { "qa": { "data_id": [ - "13_744116_789615", - "13_676951_517519", - "13_208476_144500", - "13_746095_795020", - "13_772922_836469", - "13_693860_572380", - "13_7440774_53416276", - "13_202437_127509", - "13_27111_7382" + "13_744116_789615@13", + "13_676951_517519@13", + "13_208476_144500@13", + "13_746095_795020@13", + "13_772922_836469@13", + "13_7440774_53416276@13", + "13_202437_127509@13", + "13_27111_7382@13" ] } } @@ -12345,7 +14207,7 @@ { "运行一个进程": { "data": { - "uuid": "java-6-69", + "uuid": "java-6-70", "seg": [ [ [ @@ -12354,16 +14216,19 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1704658189033189, + "max": 0.17047709235209238 + }, "related_data": { "qa": { "data_id": [ - "13_7461055_53446158", - "13_7424018_53384437", - "13_1049126_1246552", - "13_7450530_53431746", - "13_780545_849913", - "13_7455804_53439128" + "13_7461055_53446158@13", + "13_7424018_53384437@13", + "13_1049126_1246552@13", + "13_7450530_53431746@13", + "13_780545_849913@13", + "13_7455804_53439128@13" ] } } @@ -12373,16 +14238,20 @@ { "进程句柄": { "data": { - "uuid": "java-6-70", + "uuid": "java-6-71", "seg": [ [ [ "进程", - "句柄" + "句柄", + "进程句柄" ] ] ], - "level": "2", + "level": { + "min": 0.17047709235209238, + "max": 0.17048836580086582 + }, "related_data": {} } } @@ -12397,7 +14266,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17045454545454547, + "max": 0.17048836580086582 + }, "related_data": {} } } @@ -12413,17 +14285,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17048836580086582, + "max": 0.17052218614718614 + }, "related_data": { "qa": { "data_id": [ - "13_233275_207949", - "13_218206_167457", - "13_746633_796463", - "13_691619_564593", - "13_366550_391106", - "13_156640_18790", - "13_164123_37638" + "13_189132_87432@13", + "13_245672_236442@13", + "13_745158_792484@13", + "13_233275_207949@13", + "13_218206_167457@13", + "13_746618_796418@13", + "13_245487_235981@13", + "13_167037_40975@13", + "13_7403911_53352681@13", + "13_1510255_5977620@13" ] } } @@ -12442,14 +14320,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17052218614718614, + "max": 0.1705560064935065 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-220", + "uuid": "java-4-225", "seg": [ [ [ @@ -12458,7 +14339,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17045454545454547, + "max": 0.1705560064935065 + }, "related_data": {} } } @@ -12481,14 +14365,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1705560064935065, + "max": 0.17058982683982685 + }, "related_data": { "qa": { "data_id": [ - "13_699525_713259", - "13_744574_790854", - "13_240380_224660", - "13_7453943_53436602" + "13_699525_713259@13", + "13_744574_790854@13", + "13_240380_224660@13", + "13_7453943_53436602@13" ] } } @@ -12509,7 +14396,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17058982683982685, + "max": 0.1706236471861472 + }, "related_data": {} } } @@ -12526,14 +14416,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1706236471861472, + "max": 0.17065746753246755 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-221", + "uuid": "java-4-226", "seg": [ [ [ @@ -12546,7 +14439,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1705560064935065, + "max": 0.17065746753246755 + }, "related_data": {} } } @@ -12566,11 +14462,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17065746753246755, + "max": 0.1706912878787879 + }, "related_data": { "qa": { "data_id": [ - "13_29382_8727" + "13_29382_8727@13" ] } } @@ -12589,7 +14488,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1706912878787879, + "max": 0.17072510822510822 + }, "related_data": {} } } @@ -12602,18 +14504,22 @@ [ [ "线程", - "插队" + "插队", + "线程插队" ] ] ], - "level": "2", + "level": { + "min": 0.17072510822510822, + "max": 0.17075892857142858 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-222", + "uuid": "java-4-227", "seg": [ [ [ @@ -12622,7 +14528,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17065746753246755, + "max": 0.17075892857142858 + }, "related_data": {} } } @@ -12631,29 +14540,59 @@ "多线程同步": { "children": [ { - "同步锁": { + "同步代码块": { "data": { "uuid": "java-5-78", "seg": [ [ [ "同步", - "锁" + "同步代码" + ] + ] + ], + "level": { + "min": 0.17075892857142858, + "max": 0.17080965909090912 + }, + "related_data": { + "qa": { + "data_id": [ + "13_4646704_29330497@13", + "13_672127_496761@13", + "13_687973_553439@13", + "13_697580_583540@13", + "13_227746_192399@13", + "13_202268_126812@13", + "13_678224_521877@13", + "13_745280_792836@13" + ] + } + } + } + } + }, + { + "同步锁": { + "data": { + "uuid": "java-5-79", + "seg": [ + [ + [ + "同步", + "锁", + "同步锁" ] ] ], - "level": "2", + "level": { + "min": 0.17080965909090912, + "max": 0.17086038961038963 + }, "related_data": { "qa": { "data_id": [ - "13_374437_403296", - "13_4646704_29330497", - "13_697580_583540", - "13_202268_126812", - "13_227746_192399", - "13_687973_553439", - "13_678224_521877", - "13_745280_792836" + "13_374437_403296@13" ] } } @@ -12662,7 +14601,7 @@ } ], "data": { - "uuid": "java-4-223", + "uuid": "java-4-228", "seg": [ [ [ @@ -12671,13 +14610,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17075892857142858, + "max": 0.17086038961038963 + }, "related_data": { "qa": { "data_id": [ - "13_1062553_1260352", - "13_1103398_1317795", - "13_217204_165163" + "13_1062553_1260352@13", + "13_1103398_1317795@13", + "13_217204_165163@13" ] } } @@ -12687,7 +14629,7 @@ { "多线程通信": { "data": { - "uuid": "java-4-224", + "uuid": "java-4-229", "seg": [ [ [ @@ -12696,7 +14638,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17086038961038963, + "max": 0.17096185064935066 + }, "related_data": {} } } @@ -12707,7 +14652,7 @@ { "Executor接口实现线程池管理": { "data": { - "uuid": "java-5-79", + "uuid": "java-5-80", "seg": [ [ [ @@ -12715,11 +14660,15 @@ "接口", "线程", "池", - "管理" + "管理", + "线程池" ] ] ], - "level": "2", + "level": { + "min": 0.17096185064935066, + "max": 0.1709872159090909 + }, "related_data": {} } } @@ -12727,7 +14676,7 @@ { "CompletableFuture类实现线程池管理": { "data": { - "uuid": "java-5-80", + "uuid": "java-5-81", "seg": [ [ [ @@ -12735,11 +14684,15 @@ "类", "线程", "池", - "管理" + "管理", + "线程池" ] ] ], - "level": "2", + "level": { + "min": 0.1709872159090909, + "max": 0.17101258116883117 + }, "related_data": {} } } @@ -12747,17 +14700,21 @@ { "使用线程池管理线程": { "data": { - "uuid": "java-5-81", + "uuid": "java-5-82", "seg": [ [ [ "线程", "池", - "管理" + "管理", + "线程池" ] ] ], - "level": "2", + "level": { + "min": 0.17101258116883117, + "max": 0.17103794642857145 + }, "related_data": {} } } @@ -12765,7 +14722,7 @@ { "使用ForkJoinPool利用多CPU": { "data": { - "uuid": "java-5-82", + "uuid": "java-5-83", "seg": [ [ [ @@ -12775,18 +14732,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17103794642857145, + "max": 0.1710633116883117 + }, "related_data": { "qa": { "data_id": [ - "13_763206_821580", - "13_197839_112508", - "13_391126_433234", - "13_649233_454665", - "13_649743_455735", - "13_677121_518329", - "13_1051401_1248725", - "13_1063312_1261299" + "13_370891_397672@13", + "13_763206_821580@13", + "13_197839_112508@13", + "13_391126_433234@13", + "13_649233_454665@13", + "13_649743_455735@13", + "13_677121_518329@13", + "13_1051401_1248725@13", + "13_1063312_1261299@13", + "13_7419463_53376640@13" ] } } @@ -12795,24 +14757,34 @@ } ], "data": { - "uuid": "java-4-225", + "uuid": "java-4-230", "seg": [ [ [ "线程", - "池" + "池", + "线程池" ] ] ], - "level": "2", - "related_data": {} + "level": { + "min": 0.17096185064935066, + "max": 0.1710633116883117 + }, + "related_data": { + "qa": { + "data_id": [ + "13_710340_668596@13" + ] + } + } } } }, { "线程简介": { "data": { - "uuid": "java-4-226", + "uuid": "java-4-231", "seg": [ [ [ @@ -12821,7 +14793,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1710633116883117, + "max": 0.17116477272727273 + }, "related_data": {} } } @@ -12832,7 +14807,7 @@ { "继承Thread类": { "data": { - "uuid": "java-5-83", + "uuid": "java-5-84", "seg": [ [ [ @@ -12842,11 +14817,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17116477272727273, + "max": 0.17126623376623376 + }, "related_data": { "qa": { "data_id": [ - "13_754307_809213" + "13_754307_809213@13" ] } } @@ -12855,7 +14833,7 @@ } ], "data": { - "uuid": "java-4-227", + "uuid": "java-4-232", "seg": [ [ [ @@ -12864,7 +14842,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17116477272727273, + "max": 0.17126623376623376 + }, "related_data": {} } } @@ -12875,7 +14856,7 @@ { "线程的中断": { "data": { - "uuid": "java-5-84", + "uuid": "java-5-85", "seg": [ [ [ @@ -12884,11 +14865,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17126623376623376, + "max": 0.1713169642857143 + }, "related_data": { "qa": { "data_id": [ - "13_232957_206899" + "13_232957_206899@13" ] } } @@ -12898,7 +14882,7 @@ { "线程的礼让": { "data": { - "uuid": "java-5-85", + "uuid": "java-5-86", "seg": [ [ [ @@ -12907,14 +14891,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1713169642857143, + "max": 0.17136769480519481 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-228", + "uuid": "java-4-233", "seg": [ [ [ @@ -12924,7 +14911,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17126623376623376, + "max": 0.17136769480519481 + }, "related_data": {} } } @@ -12935,25 +14925,29 @@ { "线程同步机制": { "data": { - "uuid": "java-5-86", + "uuid": "java-5-87", "seg": [ [ [ "线程", "同步", - "机制" + "机制", + "同步机制" ] ] ], - "level": "2", + "level": { + "min": 0.17136769480519481, + "max": 0.17140151515151517 + }, "related_data": { "qa": { "data_id": [ - "13_643068_442850", - "13_392111_435122", - "13_245899_236915", - "13_1056053_1253290", - "13_240930_226047" + "13_643068_442850@13", + "13_392111_435122@13", + "13_245899_236915@13", + "13_1056053_1253290@13", + "13_240930_226047@13" ] } } @@ -12963,18 +14957,22 @@ { "释放同步监视器的锁定": { "data": { - "uuid": "java-5-87", + "uuid": "java-5-88", "seg": [ [ [ "释放", "同步", "监视器", - "锁定" + "锁定", + "同步监视器" ] ] ], - "level": "2", + "level": { + "min": 0.17140151515151517, + "max": 0.1714353354978355 + }, "related_data": {} } } @@ -12982,24 +14980,35 @@ { "同步锁(Lock)": { "data": { - "uuid": "java-5-88", + "uuid": "java-5-89", "seg": [ [ [ "同步", "锁", - "lock" + "lock", + "同步锁" ] ] ], - "level": "2", - "related_data": {} + "level": { + "min": 0.1714353354978355, + "max": 0.17146915584415584 + }, + "related_data": { + "qa": { + "data_id": [ + "13_7400445_53348354@13", + "13_751572_805237@13" + ] + } + } } } } ], "data": { - "uuid": "java-4-229", + "uuid": "java-4-234", "seg": [ [ [ @@ -13008,8 +15017,19 @@ ] ] ], - "level": "2", - "related_data": {} + "level": { + "min": 0.17136769480519481, + "max": 0.17146915584415584 + }, + "related_data": { + "qa": { + "data_id": [ + "13_747170_798101@13", + "13_226439_189018@13", + "13_192520_96058@13" + ] + } + } } } }, @@ -13019,7 +15039,7 @@ { "join线程": { "data": { - "uuid": "java-5-89", + "uuid": "java-5-90", "seg": [ [ [ @@ -13028,21 +15048,18 @@ ] ] ], - "level": "2", - "related_data": { - "qa": { - "data_id": [ - "13_194600_102754" - ] - } - } + "level": { + "min": 0.17146915584415584, + "max": 0.1715029761904762 + }, + "related_data": {} } } }, { "线程睡眠:sleep": { "data": { - "uuid": "java-5-90", + "uuid": "java-5-91", "seg": [ [ [ @@ -13056,15 +15073,18 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1715029761904762, + "max": 0.17153679653679654 + }, "related_data": { "qa": { "data_id": [ - "13_365573_389005", - "13_377369_407932", - "13_223590_181832", - "13_226701_189636", - "13_665947_799732" + "13_365573_389005@13", + "13_377369_407932@13", + "13_223590_181832@13", + "13_226701_189636@13", + "13_665947_799732@13" ] } } @@ -13074,7 +15094,7 @@ { "改变线程优先级": { "data": { - "uuid": "java-5-91", + "uuid": "java-5-92", "seg": [ [ [ @@ -13084,27 +15104,34 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17153679653679654, + "max": 0.1715706168831169 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-230", + "uuid": "java-4-235", "seg": [ [ [ "控制线", - "程" + "程", + "控制线程" ] ] ], - "level": "2", + "level": { + "min": 0.17146915584415584, + "max": 0.1715706168831169 + }, "related_data": { "qa": { "data_id": [ - "13_222577_178993" + "13_222577_178993@13" ] } } @@ -13117,7 +15144,7 @@ { "传统的线程通信": { "data": { - "uuid": "java-5-92", + "uuid": "java-5-93", "seg": [ [ [ @@ -13127,7 +15154,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1715706168831169, + "max": 0.17160443722943725 + }, "related_data": {} } } @@ -13135,18 +15165,22 @@ { "使用Condition控制线程通信": { "data": { - "uuid": "java-5-93", + "uuid": "java-5-94", "seg": [ [ [ "condition", "控制线", "程", - "通信" + "通信", + "控制线程" ] ] ], - "level": "2", + "level": { + "min": 0.17160443722943725, + "max": 0.17163825757575757 + }, "related_data": {} } } @@ -13154,7 +15188,7 @@ { "使用阻塞队列(BlockingQueue)控制线程通信": { "data": { - "uuid": "java-5-94", + "uuid": "java-5-95", "seg": [ [ [ @@ -13163,18 +15197,22 @@ "blockingqueue", "控制线", "程", - "通信" + "通信", + "控制线程" ] ] ], - "level": "2", + "level": { + "min": 0.17163825757575757, + "max": 0.17167207792207792 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-231", + "uuid": "java-4-236", "seg": [ [ [ @@ -13183,7 +15221,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1715706168831169, + "max": 0.17167207792207792 + }, "related_data": {} } } @@ -13191,12 +15232,13 @@ { "线程组和未处理的异常": { "data": { - "uuid": "java-4-232", + "uuid": "java-4-237", "seg": [ [ [ "线程", - "组" + "组", + "线程组" ], [ "未处理", @@ -13204,7 +15246,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17167207792207792, + "max": 0.17177353896103897 + }, "related_data": {} } } @@ -13215,7 +15260,7 @@ { "ThreadLocal类": { "data": { - "uuid": "java-5-95", + "uuid": "java-5-96", "seg": [ [ [ @@ -13224,12 +15269,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17177353896103897, + "max": 0.17179890422077923 + }, "related_data": { "qa": { "data_id": [ - "13_771306_833761", - "13_1096862_1309566" + "13_771306_833761@13", + "13_1096862_1309566@13" ] } } @@ -13239,7 +15287,7 @@ { "包装线程不安全的集合": { "data": { - "uuid": "java-5-96", + "uuid": "java-5-97", "seg": [ [ [ @@ -13249,11 +15297,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17179890422077923, + "max": 0.1718242694805195 + }, "related_data": { "qa": { "data_id": [ - "13_1576_2554" + "13_1576_2554@13" ] } } @@ -13263,7 +15314,7 @@ { "线程安全的集合类": { "data": { - "uuid": "java-5-97", + "uuid": "java-5-98", "seg": [ [ [ @@ -13273,11 +15324,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1718242694805195, + "max": 0.17184963474025974 + }, "related_data": { "qa": { "data_id": [ - "13_230970_201189" + "13_230970_201189@13" ] } } @@ -13287,7 +15341,7 @@ { "Java 9新增的发布-订阅框架": { "data": { - "uuid": "java-5-98", + "uuid": "java-5-99", "seg": [ [ [ @@ -13299,14 +15353,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17184963474025974, + "max": 0.171875 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-233", + "uuid": "java-4-238", "seg": [ [ [ @@ -13316,14 +15373,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17177353896103897, + "max": 0.171875 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-171", + "uuid": "java-3-163", "seg": [ [ [ @@ -13331,7 +15391,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17045454545454547, + "max": 0.171875 + }, "related_data": {} } } @@ -13347,7 +15410,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.15625, + "max": 0.171875 + }, "related_data": {} } } @@ -13361,7 +15427,7 @@ { "枚举的基础知识": { "data": { - "uuid": "java-4-234", + "uuid": "java-4-239", "seg": [ [ [ @@ -13370,11 +15436,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.171875, + "max": 0.17239583333333333 + }, "related_data": { "qa": { "data_id": [ - "13_647045_450028" + "13_647045_450028@13" ] } } @@ -13384,7 +15453,7 @@ { "values和valueOf方法": { "data": { - "uuid": "java-4-235", + "uuid": "java-4-240", "seg": [ [ [ @@ -13396,11 +15465,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.17239583333333333, + "max": 0.17291666666666666 + }, "related_data": { "qa": { "data_id": [ - "13_7461160_53446315" + "13_7461160_53446315@13" ] } } @@ -13410,7 +15482,7 @@ { "Java枚举是类类型": { "data": { - "uuid": "java-4-236", + "uuid": "java-4-241", "seg": [ [ [ @@ -13421,7 +15493,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.17291666666666666, + "max": 0.1734375 + }, "related_data": {} } } @@ -13429,7 +15504,7 @@ { "枚举继承自Enum类": { "data": { - "uuid": "java-4-237", + "uuid": "java-4-242", "seg": [ [ [ @@ -13440,7 +15515,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1734375, + "max": 0.17395833333333333 + }, "related_data": {} } } @@ -13448,23 +15526,27 @@ { "另一个枚举示例": { "data": { - "uuid": "java-4-238", + "uuid": "java-4-243", "seg": [ [ [ "枚举", - "示例" + "示例", + "枚举示例" ] ] ], - "level": "1", + "level": { + "min": 0.17395833333333333, + "max": 0.17447916666666666 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-172", + "uuid": "java-3-164", "seg": [ [ [ @@ -13472,12 +15554,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.171875, + "max": 0.17447916666666666 + }, "related_data": { "qa": { "data_id": [ - "13_377971_408765", - "13_238313_220055" + "13_377971_408765@13", + "13_238313_220055@13" ] } } @@ -13490,7 +15575,7 @@ { "Character封装器": { "data": { - "uuid": "java-4-239", + "uuid": "java-4-244", "seg": [ [ [ @@ -13500,7 +15585,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.17447916666666666, + "max": 0.1753472222222222 + }, "related_data": {} } } @@ -13508,7 +15596,7 @@ { "Boolean封装器": { "data": { - "uuid": "java-4-240", + "uuid": "java-4-245", "seg": [ [ [ @@ -13518,7 +15606,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1753472222222222, + "max": 0.1762152777777778 + }, "related_data": {} } } @@ -13526,25 +15617,29 @@ { "数值类型封装器": { "data": { - "uuid": "java-4-241", + "uuid": "java-4-246", "seg": [ [ [ "数值", "类型", "封装", - "器" + "器", + "数值类型" ] ] ], - "level": "1", + "level": { + "min": 0.1762152777777778, + "max": 0.17708333333333334 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-173", + "uuid": "java-3-165", "seg": [ [ [ @@ -13554,7 +15649,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.17447916666666666, + "max": 0.17708333333333334 + }, "related_data": {} } } @@ -13565,7 +15663,7 @@ { "自动装箱与方法": { "data": { - "uuid": "java-4-242", + "uuid": "java-4-247", "seg": [ [ [ @@ -13577,20 +15675,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.17708333333333334, + "max": 0.17760416666666667 + }, "related_data": { "qa": { "data_id": [ - "13_768130_828040", - "13_659191_472764", - "13_181764_67305", - "13_804776_898980", - "13_7455887_53439222", - "13_7424826_53386015", - "13_1091052_1298336", - "13_1102314_1316761", - "13_653458_462158", - "13_756977_812222" + "13_768130_828040@13", + "13_659191_472764@13", + "13_181764_67305@13", + "13_804776_898980@13", + "13_7455887_53439222@13", + "13_7424826_53386015@13", + "13_1091052_1298336@13", + "13_1102314_1316761@13", + "13_653458_462158@13", + "13_685858_546514@13" ] } } @@ -13600,7 +15701,7 @@ { "表达式中发生的自动装箱/拆箱": { "data": { - "uuid": "java-4-243", + "uuid": "java-4-248", "seg": [ [ [ @@ -13612,7 +15713,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.17760416666666667, + "max": 0.178125 + }, "related_data": {} } } @@ -13620,22 +15724,27 @@ { "布尔型和字符型数值的自动装箱/拆箱": { "data": { - "uuid": "java-4-244", + "uuid": "java-4-249", "seg": [ [ [ - "布尔" + "布尔", + "布尔型" ], [ "字符", "数值", "自动", "装箱", - "拆箱" + "拆箱", + "字符型" ] ] ], - "level": "1", + "level": { + "min": 0.178125, + "max": 0.17864583333333334 + }, "related_data": {} } } @@ -13643,7 +15752,7 @@ { "自动装箱/拆箱有助于防止错误": { "data": { - "uuid": "java-4-245", + "uuid": "java-4-250", "seg": [ [ [ @@ -13654,12 +15763,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.17864583333333334, + "max": 0.17916666666666667 + }, "related_data": { "qa": { "data_id": [ - "13_681149_533007", - "13_252331_251997" + "13_681149_533007@13", + "13_252331_251997@13" ] } } @@ -13669,7 +15781,7 @@ { "一些警告": { "data": { - "uuid": "java-4-246", + "uuid": "java-4-251", "seg": [ [ [ @@ -13677,14 +15789,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.17916666666666667, + "max": 0.1796875 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-174", + "uuid": "java-3-166", "seg": [ [ [ @@ -13693,7 +15808,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.17708333333333334, + "max": 0.1796875 + }, "related_data": {} } } @@ -13704,7 +15822,7 @@ { "注解的基础知识": { "data": { - "uuid": "java-4-247", + "uuid": "java-4-252", "seg": [ [ [ @@ -13713,7 +15831,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1796875, + "max": 0.18001302083333334 + }, "related_data": {} } } @@ -13721,7 +15842,7 @@ { "指定保留策略": { "data": { - "uuid": "java-4-248", + "uuid": "java-4-253", "seg": [ [ [ @@ -13731,11 +15852,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.18001302083333334, + "max": 0.18033854166666666 + }, "related_data": { "qa": { "data_id": [ - "13_774374_838333" + "13_703988_595269@13", + "13_774374_838333@13" ] } } @@ -13745,7 +15870,7 @@ { "在运行时使用反射获取注解": { "data": { - "uuid": "java-4-249", + "uuid": "java-4-254", "seg": [ [ [ @@ -13756,11 +15881,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.18033854166666666, + "max": 0.1806640625 + }, "related_data": { "qa": { "data_id": [ - "13_240884_225962" + "13_240884_225962@13", + "13_643966_444405@13" ] } } @@ -13770,7 +15899,7 @@ { "AnnotatedElement接口": { "data": { - "uuid": "java-4-250", + "uuid": "java-4-255", "seg": [ [ [ @@ -13779,7 +15908,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1806640625, + "max": 0.18098958333333331 + }, "related_data": {} } } @@ -13787,7 +15919,7 @@ { "使用默认值": { "data": { - "uuid": "java-4-251", + "uuid": "java-4-256", "seg": [ [ [ @@ -13795,7 +15927,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.18098958333333331, + "max": 0.18131510416666666 + }, "related_data": {} } } @@ -13803,7 +15938,7 @@ { "标记注解": { "data": { - "uuid": "java-4-252", + "uuid": "java-4-257", "seg": [ [ [ @@ -13812,7 +15947,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.18131510416666666, + "max": 0.181640625 + }, "related_data": {} } } @@ -13820,17 +15958,21 @@ { "单成员注解": { "data": { - "uuid": "java-4-253", + "uuid": "java-4-258", "seg": [ [ [ "单", "成员", - "注解" + "注解", + "单成员" ] ] ], - "level": "1", + "level": { + "min": 0.181640625, + "max": 0.18196614583333331 + }, "related_data": {} } } @@ -13838,7 +15980,7 @@ { "内置注解": { "data": { - "uuid": "java-4-254", + "uuid": "java-4-259", "seg": [ [ [ @@ -13847,14 +15989,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.18196614583333331, + "max": 0.18229166666666666 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-175", + "uuid": "java-3-167", "seg": [ [ [ @@ -13863,7 +16008,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1796875, + "max": 0.18229166666666666 + }, "related_data": {} } } @@ -13871,7 +16019,7 @@ { "类型注解": { "data": { - "uuid": "java-3-176", + "uuid": "java-3-168", "seg": [ [ [ @@ -13880,7 +16028,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.18229166666666666, + "max": 0.18489583333333334 + }, "related_data": {} } } @@ -13888,21 +16039,25 @@ { "重复注解": { "data": { - "uuid": "java-3-177", + "uuid": "java-3-169", "seg": [ [ [ "重复", - "注解" + "注解", + "重复注解" ] ] ], - "level": "1", + "level": { + "min": 0.18489583333333334, + "max": 0.1875 + }, "related_data": { "qa": { "data_id": [ - "13_176788_59484", - "13_769969_831213" + "13_176788_59484@13", + "13_769969_831213@13" ] } } @@ -13927,7 +16082,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.171875, + "max": 0.1875 + }, "related_data": {} } } @@ -13941,7 +16099,7 @@ { "流": { "data": { - "uuid": "java-4-255", + "uuid": "java-4-260", "seg": [ [ [ @@ -13949,7 +16107,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1875, + "max": 0.18773674242424243 + }, "related_data": {} } } @@ -13957,151 +16118,34 @@ { "字节流和字符流": { "children": [ - { - "字节流概述": { - "data": { - "uuid": "java-5-99", - "seg": [ - [ - [ - "字节", - "流", - "概述" - ] - ] - ], - "level": "2", - "related_data": { - "qa": { - "data_id": [ - "13_1091135_1298414" - ] - } - } - } - } - }, - { - "字节流读写文件": { - "data": { - "uuid": "java-5-100", - "seg": [ - [ - [ - "字节", - "流", - "读写", - "文件" - ] - ] - ], - "level": "2", - "related_data": { - "qa": { - "data_id": [ - "13_350679_359456" - ] - } - } - } - } - }, - { - "文件的拷贝": { - "data": { - "uuid": "java-5-101", - "seg": [ - [ - [ - "文件", - "拷贝" - ] - ] - ], - "level": "2", - "related_data": { - "qa": { - "data_id": [ - "13_7439947_53414791" - ] - } - } - } - } - }, - { - "字节流的缓冲区": { - "data": { - "uuid": "java-5-102", - "seg": [ - [ - [ - "字节", - "流", - "缓冲区" - ] - ] - ], - "level": "2", - "related_data": { - "qa": { - "data_id": [ - "13_232800_206397", - "13_184131_72941" - ] - } - } - } - } - }, - { - "字节缓冲流": { - "data": { - "uuid": "java-5-103", - "seg": [ - [ - [ - "字节", - "缓冲", - "流" - ] - ] - ], - "level": "2", - "related_data": { - "qa": { - "data_id": [ - "13_1084153_1290934" - ] - } - } - } - } - }, { "字符流概述": { "data": { - "uuid": "java-5-104", + "uuid": "java-5-100", "seg": [ [ [ "字符", "流", - "概述" + "概述", + "字符流" ] ] ], - "level": "2", + "level": { + "min": 0.18773674242424243, + "max": 0.18781565656565657 + }, "related_data": { "qa": { "data_id": [ - "13_646943_450558", - "13_225496_186724", - "13_1069477_1270893", - "13_1103933_1318253", - "13_7448639_53428794", - "13_220956_174466", - "13_185598_76913" + "13_646943_450558@13", + "13_225496_186724@13", + "13_1069477_1270893@13", + "13_1103933_1318253@13", + "13_7448639_53428794@13", + "13_220956_174466@13", + "13_185598_76913@13" ] } } @@ -14111,24 +16155,28 @@ { "字符流操作文件": { "data": { - "uuid": "java-5-105", + "uuid": "java-5-101", "seg": [ [ [ "字符", "流", "操作", - "文件" + "文件", + "字符流" ] ] ], - "level": "2", + "level": { + "min": 0.18781565656565657, + "max": 0.1878945707070707 + }, "related_data": { "qa": { "data_id": [ - "13_366312_391135", - "13_1064320_1262521", - "13_1037656_1241356" + "13_366312_391135@13", + "13_1064320_1262521@13", + "13_1037656_1241356@13" ] } } @@ -14138,7 +16186,7 @@ { "转换流": { "data": { - "uuid": "java-5-106", + "uuid": "java-5-102", "seg": [ [ [ @@ -14147,17 +16195,20 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1878945707070707, + "max": 0.18797348484848483 + }, "related_data": { "qa": { "data_id": [ - "13_235555_214614", - "13_743964_789286", - "13_744503_790641", - "13_676068_513489", - "13_339679_338707", - "13_1051956_1249424", - "13_7404837_53353879" + "13_235555_214614@13", + "13_743964_789286@13", + "13_744503_790641@13", + "13_676068_513489@13", + "13_339679_338707@13", + "13_1051956_1249424@13", + "13_7404837_53353879@13" ] } } @@ -14166,7 +16217,7 @@ } ], "data": { - "uuid": "java-4-256", + "uuid": "java-4-261", "seg": [ [ [ @@ -14175,11 +16226,15 @@ ], [ "字符", - "流" + "流", + "字符流" ] ] ], - "level": "2", + "level": { + "min": 0.18773674242424243, + "max": 0.18797348484848483 + }, "related_data": {} } } @@ -14187,7 +16242,7 @@ { "预定义流": { "data": { - "uuid": "java-4-257", + "uuid": "java-4-262", "seg": [ [ [ @@ -14196,14 +16251,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18797348484848483, + "max": 0.18821022727272727 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-178", + "uuid": "java-3-170", "seg": [ [ [ @@ -14213,7 +16271,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1875, + "max": 0.18821022727272727 + }, "related_data": {} } } @@ -14224,7 +16285,7 @@ { "读取字符": { "data": { - "uuid": "java-4-258", + "uuid": "java-4-263", "seg": [ [ [ @@ -14233,20 +16294,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18821022727272727, + "max": 0.1885653409090909 + }, "related_data": { "qa": { "data_id": [ - "13_177282_60119", - "13_383160_418404", - "13_201911_125729", - "13_1052300_1249795", - "13_188898_86708", - "13_716610_712418", - "13_7396030_53339223", - "13_7403820_53352505", - "13_163261_36027", - "13_757622_813209" + "13_7419117_53376808@13", + "13_177282_60119@13", + "13_383160_418404@13", + "13_201911_125729@13", + "13_372337_399635@13", + "13_1052300_1249795@13", + "13_188898_86708@13", + "13_716610_712418@13", + "13_7396030_53339223@13", + "13_7403820_53352505@13" ] } } @@ -14256,7 +16320,7 @@ { "读取字符串": { "data": { - "uuid": "java-4-259", + "uuid": "java-4-264", "seg": [ [ [ @@ -14265,14 +16329,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1885653409090909, + "max": 0.18892045454545456 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-179", + "uuid": "java-3-171", "seg": [ [ [ @@ -14282,7 +16349,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18821022727272727, + "max": 0.18892045454545456 + }, "related_data": {} } } @@ -14290,7 +16360,7 @@ { "向控制台写输出": { "data": { - "uuid": "java-3-180", + "uuid": "java-3-172", "seg": [ [ [ @@ -14300,7 +16370,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18892045454545456, + "max": 0.18963068181818182 + }, "related_data": {} } } @@ -14308,7 +16381,7 @@ { "PrintWriter类": { "data": { - "uuid": "java-3-181", + "uuid": "java-3-173", "seg": [ [ [ @@ -14317,7 +16390,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18963068181818182, + "max": 0.1903409090909091 + }, "related_data": {} } } @@ -14325,7 +16401,7 @@ { "读/写文件": { "data": { - "uuid": "java-3-182", + "uuid": "java-3-174", "seg": [ [ [ @@ -14335,11 +16411,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1903409090909091, + "max": 0.19105113636363635 + }, "related_data": { "qa": { "data_id": [ - "13_180422_66276" + "13_180422_66276@13" ] } } @@ -14349,7 +16428,7 @@ { "自动关闭文件": { "data": { - "uuid": "java-3-183", + "uuid": "java-3-175", "seg": [ [ [ @@ -14359,7 +16438,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19105113636363635, + "max": 0.19176136363636365 + }, "related_data": {} } } @@ -14367,7 +16449,7 @@ { "applet的基础知识": { "data": { - "uuid": "java-3-184", + "uuid": "java-3-176", "seg": [ [ [ @@ -14376,7 +16458,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19176136363636365, + "max": 0.1924715909090909 + }, "related_data": {} } } @@ -14384,7 +16469,7 @@ { "transient和volatile修饰符": { "data": { - "uuid": "java-3-185", + "uuid": "java-3-177", "seg": [ [ [ @@ -14396,7 +16481,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1924715909090909, + "max": 0.19318181818181818 + }, "related_data": {} } } @@ -14404,7 +16492,7 @@ { "使用instanceof运算符": { "data": { - "uuid": "java-3-186", + "uuid": "java-3-178", "seg": [ [ [ @@ -14413,7 +16501,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19318181818181818, + "max": 0.19389204545454544 + }, "related_data": {} } } @@ -14421,7 +16512,7 @@ { "strictfp": { "data": { - "uuid": "java-3-187", + "uuid": "java-3-179", "seg": [ [ [ @@ -14429,7 +16520,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19389204545454544, + "max": 0.19460227272727273 + }, "related_data": {} } } @@ -14437,7 +16531,7 @@ { "本地方法": { "data": { - "uuid": "java-3-188", + "uuid": "java-3-180", "seg": [ [ [ @@ -14445,13 +16539,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19460227272727273, + "max": 0.1953125 + }, "related_data": { "qa": { "data_id": [ - "13_7429328_53396070", - "13_241339_227199", - "13_757397_812993" + "13_7429328_53396070@13", + "13_241339_227199@13", + "13_757397_812993@13" ] } } @@ -14461,7 +16558,7 @@ { "使用assert": { "data": { - "uuid": "java-3-189", + "uuid": "java-3-181", "seg": [ [ [ @@ -14469,7 +16566,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1953125, + "max": 0.19602272727272727 + }, "related_data": {} } } @@ -14477,7 +16577,7 @@ { "静态导入": { "data": { - "uuid": "java-3-190", + "uuid": "java-3-182", "seg": [ [ [ @@ -14486,7 +16586,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19602272727272727, + "max": 0.19673295454545456 + }, "related_data": {} } } @@ -14494,7 +16597,7 @@ { "通过this调用重载的构造函数": { "data": { - "uuid": "java-3-191", + "uuid": "java-3-183", "seg": [ [ [ @@ -14505,11 +16608,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19673295454545456, + "max": 0.19744318181818182 + }, "related_data": { "qa": { "data_id": [ - "13_654256_463754" + "13_654256_463754@13" ] } } @@ -14519,7 +16625,7 @@ { "紧凑API配置文件": { "data": { - "uuid": "java-3-192", + "uuid": "java-3-184", "seg": [ [ [ @@ -14529,7 +16635,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19744318181818182, + "max": 0.1981534090909091 + }, "related_data": {} } } @@ -14537,7 +16646,7 @@ { "转换数据": { "data": { - "uuid": "java-3-193", + "uuid": "java-3-185", "seg": [ [ [ @@ -14546,11 +16655,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1981534090909091, + "max": 0.19886363636363635 + }, "related_data": { "qa": { "data_id": [ - "13_671346_495113" + "13_671346_495113@13" ] } } @@ -14560,16 +16672,20 @@ { "获取基本类型": { "data": { - "uuid": "java-3-194", + "uuid": "java-3-186", "seg": [ [ [ "获取", - "类型" + "类型", + "基本类型" ] ] ], - "level": "2", + "level": { + "min": 0.19886363636363635, + "max": 0.19957386363636365 + }, "related_data": {} } } @@ -14577,16 +16693,20 @@ { "视图缓冲器": { "data": { - "uuid": "java-3-195", + "uuid": "java-3-187", "seg": [ [ [ "视图", - "缓冲器" + "缓冲器", + "视图缓冲器" ] ] ], - "level": "2", + "level": { + "min": 0.19957386363636365, + "max": 0.2002840909090909 + }, "related_data": {} } } @@ -14594,7 +16714,7 @@ { "用缓冲器操纵数据": { "data": { - "uuid": "java-3-196", + "uuid": "java-3-188", "seg": [ [ [ @@ -14604,7 +16724,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2002840909090909, + "max": 0.20099431818181818 + }, "related_data": {} } } @@ -14612,7 +16735,7 @@ { "缓冲器的细节": { "data": { - "uuid": "java-3-197", + "uuid": "java-3-189", "seg": [ [ [ @@ -14621,7 +16744,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.20099431818181818, + "max": 0.20170454545454547 + }, "related_data": {} } } @@ -14629,7 +16755,7 @@ { "内存映射文件": { "data": { - "uuid": "java-3-198", + "uuid": "java-3-190", "seg": [ [ [ @@ -14639,7 +16765,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.20170454545454547, + "max": 0.20241477272727273 + }, "related_data": {} } } @@ -14647,7 +16776,7 @@ { "文件加锁": { "data": { - "uuid": "java-3-199", + "uuid": "java-3-191", "seg": [ [ [ @@ -14656,7 +16785,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.20241477272727273, + "max": 0.203125 + }, "related_data": {} } } @@ -14678,7 +16810,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1875, + "max": 0.203125 + }, "related_data": {} } } @@ -14689,7 +16824,7 @@ { "什么是泛型": { "data": { - "uuid": "java-3-200", + "uuid": "java-3-192", "seg": [ [ [ @@ -14697,11 +16832,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.203125, + "max": 0.2035060975609756 + }, "related_data": { "qa": { "data_id": [ - "13_377977_408779" + "13_377977_408779@13" ] } } @@ -14714,17 +16852,21 @@ { "泛型只使用引用类型": { "data": { - "uuid": "java-4-260", + "uuid": "java-4-265", "seg": [ [ [ "泛", "引用", - "类型" + "类型", + "只使用" ] ] ], - "level": "1", + "level": { + "min": 0.2035060975609756, + "max": 0.2036331300813008 + }, "related_data": {} } } @@ -14732,23 +16874,28 @@ { "基于不同类型参数的泛型类型是不同的": { "data": { - "uuid": "java-4-261", + "uuid": "java-4-266", "seg": [ [ [ "类型", "参数", - "泛型" + "泛型", + "类型参数", + "泛型类型" ] ] ], - "level": "1", + "level": { + "min": 0.2036331300813008, + "max": 0.20376016260162602 + }, "related_data": { "qa": { "data_id": [ - "13_220963_174329", - "13_744114_789605", - "13_644515_445335" + "13_220963_174329@13", + "13_744114_789605@13", + "13_644515_445335@13" ] } } @@ -14758,7 +16905,7 @@ { "泛型提升类型安全性的原理": { "data": { - "uuid": "java-4-262", + "uuid": "java-4-267", "seg": [ [ [ @@ -14766,27 +16913,35 @@ "提升", "类型", "安全性", - "原理" + "原理", + "类型安全性" ] ] ], - "level": "1", + "level": { + "min": 0.20376016260162602, + "max": 0.20388719512195122 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-201", + "uuid": "java-3-193", "seg": [ [ [ "泛型", - "示例" + "示例", + "泛型示例" ] ] ], - "level": "1", + "level": { + "min": 0.2035060975609756, + "max": 0.20388719512195122 + }, "related_data": {} } } @@ -14794,7 +16949,7 @@ { "带两个类型参数的泛型类": { "data": { - "uuid": "java-3-202", + "uuid": "java-3-194", "seg": [ [ [ @@ -14802,11 +16957,16 @@ "类型", "参数", "泛型", - "类" + "类", + "类型参数", + "泛型类" ] ] ], - "level": "1", + "level": { + "min": 0.20388719512195122, + "max": 0.20426829268292682 + }, "related_data": {} } } @@ -14814,7 +16974,7 @@ { "泛型类的一般形式": { "data": { - "uuid": "java-3-203", + "uuid": "java-3-195", "seg": [ [ [ @@ -14824,12 +16984,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20426829268292682, + "max": 0.20464939024390244 + }, "related_data": { "qa": { "data_id": [ - "13_203161_129517", - "13_357182_373600" + "13_203161_129517@13", + "13_357182_373600@13" ] } } @@ -14839,16 +17002,20 @@ { "有界类型": { "data": { - "uuid": "java-3-204", + "uuid": "java-3-196", "seg": [ [ [ "界", - "类型" + "类型", + "界类型" ] ] ], - "level": "1", + "level": { + "min": 0.20464939024390244, + "max": 0.20503048780487804 + }, "related_data": {} } } @@ -14856,16 +17023,20 @@ { "使用通配符参数": { "data": { - "uuid": "java-3-205", + "uuid": "java-3-197", "seg": [ [ [ "通配符", - "参数" + "参数", + "通配符参数" ] ] ], - "level": "1", + "level": { + "min": 0.20503048780487804, + "max": 0.20541158536585366 + }, "related_data": {} } } @@ -14873,17 +17044,21 @@ { "创建泛型方法": { "data": { - "uuid": "java-3-206", + "uuid": "java-3-198", "seg": [ [ [ "创建", "泛型", - "方法" + "方法", + "泛型方法" ] ] ], - "level": "1", + "level": { + "min": 0.20541158536585366, + "max": 0.20579268292682926 + }, "related_data": {} } } @@ -14891,7 +17066,7 @@ { "泛型接口": { "data": { - "uuid": "java-3-207", + "uuid": "java-3-199", "seg": [ [ [ @@ -14900,11 +17075,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20579268292682926, + "max": 0.20617378048780488 + }, "related_data": { "qa": { "data_id": [ - "13_7453888_53436554" + "13_7453888_53436554@13" ] } } @@ -14914,7 +17092,7 @@ { "原始类型与遗留代码": { "data": { - "uuid": "java-3-208", + "uuid": "java-3-200", "seg": [ [ [ @@ -14926,7 +17104,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20617378048780488, + "max": 0.20655487804878048 + }, "related_data": {} } } @@ -14937,7 +17118,7 @@ { "使用泛型超类": { "data": { - "uuid": "java-4-263", + "uuid": "java-4-268", "seg": [ [ [ @@ -14946,7 +17127,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20655487804878048, + "max": 0.2066310975609756 + }, "related_data": {} } } @@ -14954,56 +17138,50 @@ { "泛型子类": { "data": { - "uuid": "java-4-264", + "uuid": "java-4-269", "seg": [ [ [ "泛型", - "子类" + "子类", + "泛型子类" ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_769938_831172", - "13_229225_196595", - "13_226816_190021" - ] - } - } + "level": { + "min": 0.2066310975609756, + "max": 0.20670731707317072 + }, + "related_data": {} } } }, { "泛型层次中的运行时类型比较": { "data": { - "uuid": "java-4-265", + "uuid": "java-4-270", "seg": [ [ [ "泛型", "运行", - "类型" + "类型", + "时类型" ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_362237_381013" - ] - } - } + "level": { + "min": 0.20670731707317072, + "max": 0.20678353658536586 + }, + "related_data": {} } } }, { "强制转换": { "data": { - "uuid": "java-4-266", + "uuid": "java-4-271", "seg": [ [ [ @@ -15012,11 +17190,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20678353658536586, + "max": 0.20685975609756097 + }, "related_data": { "qa": { "data_id": [ - "13_260234_270329" + "13_260234_270329@13" ] } } @@ -15026,7 +17207,7 @@ { "重写泛型类的方法": { "data": { - "uuid": "java-4-267", + "uuid": "java-4-272", "seg": [ [ [ @@ -15037,27 +17218,34 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20685975609756097, + "max": 0.2069359756097561 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-209", + "uuid": "java-3-201", "seg": [ [ [ "泛型", - "类" + "类", + "泛型类" ] ] ], - "level": "1", + "level": { + "min": 0.20655487804878048, + "max": 0.2069359756097561 + }, "related_data": { "qa": { "data_id": [ - "13_226800_189948" + "13_226800_189948@13" ] } } @@ -15067,7 +17255,7 @@ { "泛型的类型推断": { "data": { - "uuid": "java-3-210", + "uuid": "java-3-202", "seg": [ [ [ @@ -15077,7 +17265,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2069359756097561, + "max": 0.2073170731707317 + }, "related_data": {} } } @@ -15085,7 +17276,7 @@ { "擦除": { "data": { - "uuid": "java-3-211", + "uuid": "java-3-203", "seg": [ [ [ @@ -15093,7 +17284,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2073170731707317, + "max": 0.20769817073170732 + }, "related_data": {} } } @@ -15101,15 +17295,19 @@ { "模糊性错误": { "data": { - "uuid": "java-3-212", + "uuid": "java-3-204", "seg": [ [ [ - "模糊性" + "模糊性", + "模糊性错误" ] ] ], - "level": "1", + "level": { + "min": 0.20769817073170732, + "max": 0.20807926829268292 + }, "related_data": {} } } @@ -15120,20 +17318,24 @@ { "对静态成员的一些限制": { "data": { - "uuid": "java-4-268", + "uuid": "java-4-273", "seg": [ [ [ "静态", - "成员" + "成员", + "静态成员" ] ] ], - "level": "1", + "level": { + "min": 0.20807926829268292, + "max": 0.20820630081300812 + }, "related_data": { "qa": { "data_id": [ - "13_211298_151102" + "13_211298_151102@13" ] } } @@ -15143,7 +17345,7 @@ { "对泛型数组的一些限制": { "data": { - "uuid": "java-4-269", + "uuid": "java-4-274", "seg": [ [ [ @@ -15152,7 +17354,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20820630081300812, + "max": 0.20833333333333334 + }, "related_data": {} } } @@ -15160,7 +17365,7 @@ { "对泛型异常的限制": { "data": { - "uuid": "java-4-270", + "uuid": "java-4-275", "seg": [ [ [ @@ -15169,11 +17374,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20833333333333334, + "max": 0.20846036585365854 + }, "related_data": { "qa": { "data_id": [ - "13_195971_106723" + "13_195971_106723@13" ] } } @@ -15182,7 +17390,7 @@ } ], "data": { - "uuid": "java-3-213", + "uuid": "java-3-205", "seg": [ [ [ @@ -15190,17 +17398,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20807926829268292, + "max": 0.20846036585365854 + }, "related_data": { "qa": { "data_id": [ - "13_164399_38128", - "13_378879_410498", - "13_650142_456578", - "13_390666_432406", - "13_167201_40983", - "13_954890_1107093", - "13_7395577_53338255" + "13_921_18233@13", + "13_164399_38128@13", + "13_378879_410498@13", + "13_650142_456578@13", + "13_390666_432406@13", + "13_954890_1107093@13" ] } } @@ -15210,17 +17420,22 @@ { "定义泛型类": { "data": { - "uuid": "java-3-214", + "uuid": "java-3-206", "seg": [ [ [ "定义", "泛型", - "类" + "类", + "定义泛型", + "泛型类" ] ] ], - "level": "1", + "level": { + "min": 0.20846036585365854, + "max": 0.20884146341463414 + }, "related_data": {} } } @@ -15228,7 +17443,7 @@ { "泛型的用法": { "data": { - "uuid": "java-3-215", + "uuid": "java-3-207", "seg": [ [ [ @@ -15237,7 +17452,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20884146341463414, + "max": 0.20922256097560976 + }, "related_data": {} } } @@ -15245,16 +17463,20 @@ { "一个元组类库": { "data": { - "uuid": "java-3-216", + "uuid": "java-3-208", "seg": [ [ [ "元组", - "类库" + "类库", + "元组类库" ] ] ], - "level": "1", + "level": { + "min": 0.20922256097560976, + "max": 0.20960365853658536 + }, "related_data": {} } } @@ -15262,7 +17484,7 @@ { "一个栈类": { "data": { - "uuid": "java-3-217", + "uuid": "java-3-209", "seg": [ [ [ @@ -15270,7 +17492,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20960365853658536, + "max": 0.20998475609756098 + }, "related_data": {} } } @@ -15278,7 +17503,7 @@ { "RandomList": { "data": { - "uuid": "java-3-218", + "uuid": "java-3-210", "seg": [ [ [ @@ -15286,7 +17511,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20998475609756098, + "max": 0.21036585365853658 + }, "related_data": {} } } @@ -15297,18 +17525,23 @@ { "利用类型参数推断": { "data": { - "uuid": "java-4-271", + "uuid": "java-4-276", "seg": [ [ [ "利用", "类型", "参数", - "推断" + "推断", + "利用类型", + "类型参数" ] ] ], - "level": "1", + "level": { + "min": 0.21036585365853658, + "max": 0.2104081978319783 + }, "related_data": {} } } @@ -15316,7 +17549,7 @@ { "可变参数与泛型方法": { "data": { - "uuid": "java-4-272", + "uuid": "java-4-277", "seg": [ [ [ @@ -15325,17 +17558,21 @@ ], [ "泛型", - "方法" + "方法", + "泛型方法" ] ] ], - "level": "1", + "level": { + "min": 0.2104081978319783, + "max": 0.21045054200542004 + }, "related_data": { "qa": { "data_id": [ - "13_240381_224664", - "13_644199_444672", - "13_1089071_1295489" + "13_240381_224664@13", + "13_644199_444672@13", + "13_1089071_1295489@13" ] } } @@ -15345,18 +17582,22 @@ { "用于Generator的泛型方法": { "data": { - "uuid": "java-4-273", + "uuid": "java-4-278", "seg": [ [ [ "用于", "generator", "泛型", - "方法" + "方法", + "泛型方法" ] ] ], - "level": "1", + "level": { + "min": 0.21045054200542004, + "max": 0.21049288617886178 + }, "related_data": {} } } @@ -15364,7 +17605,7 @@ { "一个通用的Generator": { "data": { - "uuid": "java-4-274", + "uuid": "java-4-279", "seg": [ [ [ @@ -15373,7 +17614,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21049288617886178, + "max": 0.2105352303523035 + }, "related_data": {} } } @@ -15381,7 +17625,7 @@ { "简化元组的使用": { "data": { - "uuid": "java-4-275", + "uuid": "java-4-280", "seg": [ [ [ @@ -15390,7 +17634,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2105352303523035, + "max": 0.21057757452574527 + }, "related_data": {} } } @@ -15398,7 +17645,7 @@ { "一个Set实用工具": { "data": { - "uuid": "java-4-276", + "uuid": "java-4-281", "seg": [ [ [ @@ -15407,7 +17654,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21057757452574527, + "max": 0.210619918699187 + }, "related_data": {} } } @@ -15415,21 +17665,26 @@ { "定义泛型方法": { "data": { - "uuid": "java-4-277", + "uuid": "java-4-282", "seg": [ [ [ "定义", "泛型", - "方法" + "方法", + "定义泛型", + "泛型方法" ] ] ], - "level": "1", + "level": { + "min": 0.210619918699187, + "max": 0.21066226287262874 + }, "related_data": { "qa": { "data_id": [ - "13_678424_522536" + "13_678424_522536@13" ] } } @@ -15439,7 +17694,7 @@ { "“菱形”语法与泛型构造器": { "data": { - "uuid": "java-4-278", + "uuid": "java-4-283", "seg": [ [ [ @@ -15453,7 +17708,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21066226287262874, + "max": 0.21070460704607047 + }, "related_data": {} } } @@ -15461,7 +17719,7 @@ { "类型推断": { "data": { - "uuid": "java-4-279", + "uuid": "java-4-284", "seg": [ [ [ @@ -15470,23 +17728,30 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21070460704607047, + "max": 0.2107469512195122 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-219", + "uuid": "java-3-211", "seg": [ [ [ "泛型", - "方法" + "方法", + "泛型方法" ] ] ], - "level": "1", + "level": { + "min": 0.21036585365853658, + "max": 0.2107469512195122 + }, "related_data": {} } } @@ -15494,7 +17759,7 @@ { "构建复杂模型": { "data": { - "uuid": "java-3-220", + "uuid": "java-3-212", "seg": [ [ [ @@ -15503,7 +17768,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2107469512195122, + "max": 0.2111280487804878 + }, "related_data": {} } } @@ -15514,7 +17782,7 @@ { "C++的方式": { "data": { - "uuid": "java-4-280", + "uuid": "java-4-285", "seg": [ [ [ @@ -15523,7 +17791,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2111280487804878, + "max": 0.211255081300813 + }, "related_data": {} } } @@ -15531,7 +17802,7 @@ { "迁移的可兼容性": { "data": { - "uuid": "java-4-281", + "uuid": "java-4-286", "seg": [ [ [ @@ -15540,11 +17811,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.211255081300813, + "max": 0.21138211382113822 + }, "related_data": { "qa": { "data_id": [ - "13_262398_276593" + "13_262398_276593@13" ] } } @@ -15554,21 +17828,25 @@ { "边界处的动作": { "data": { - "uuid": "java-4-282", + "uuid": "java-4-287", "seg": [ [ [ "边界", "处", - "动作" + "动作", + "边界处" ] ] ], - "level": "1", + "level": { + "min": 0.21138211382113822, + "max": 0.21150914634146342 + }, "related_data": { "qa": { "data_id": [ - "13_242094_229175" + "13_242094_229175@13" ] } } @@ -15577,7 +17855,7 @@ } ], "data": { - "uuid": "java-3-221", + "uuid": "java-3-213", "seg": [ [ [ @@ -15586,7 +17864,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2111280487804878, + "max": 0.21150914634146342 + }, "related_data": {} } } @@ -15597,23 +17878,24 @@ { "泛型数组": { "data": { - "uuid": "java-4-283", + "uuid": "java-4-288", "seg": [ [ [ "泛型", - "数组" + "数组", + "泛型数组" ] ] ], - "level": "1", + "level": { + "min": 0.21150914634146342, + "max": 0.21189024390243902 + }, "related_data": { "qa": { "data_id": [ - "13_1105339_1328254", - "13_1094383_1304629", - "13_155923_17165", - "13_229212_196558" + "13_1094383_1304629@13" ] } } @@ -15622,7 +17904,7 @@ } ], "data": { - "uuid": "java-3-222", + "uuid": "java-3-214", "seg": [ [ [ @@ -15631,7 +17913,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21150914634146342, + "max": 0.21189024390243902 + }, "related_data": {} } } @@ -15639,7 +17924,7 @@ { "边界": { "data": { - "uuid": "java-3-223", + "uuid": "java-3-215", "seg": [ [ [ @@ -15647,7 +17932,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21189024390243902, + "max": 0.21227134146341464 + }, "related_data": {} } } @@ -15658,7 +17946,7 @@ { "编译器有多聪明?": { "data": { - "uuid": "java-4-284", + "uuid": "java-4-289", "seg": [ [ [ @@ -15667,11 +17955,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21227134146341464, + "max": 0.21236661585365854 + }, "related_data": { "qa": { "data_id": [ - "13_158829_23560" + "13_158829_23560@13" ] } } @@ -15681,7 +17972,7 @@ { "抗变": { "data": { - "uuid": "java-4-285", + "uuid": "java-4-290", "seg": [ [ [ @@ -15689,7 +17980,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21236661585365854, + "max": 0.21246189024390244 + }, "related_data": {} } } @@ -15697,16 +17991,20 @@ { "无界通配符": { "data": { - "uuid": "java-4-286", + "uuid": "java-4-291", "seg": [ [ [ - "界", - "通配符" + "无界", + "通配符", + "无界通配符" ] ] ], - "level": "1", + "level": { + "min": 0.21246189024390244, + "max": 0.21255716463414634 + }, "related_data": {} } } @@ -15714,7 +18012,7 @@ { "捕获转换": { "data": { - "uuid": "java-4-287", + "uuid": "java-4-292", "seg": [ [ [ @@ -15723,14 +18021,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21255716463414634, + "max": 0.21265243902439024 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-224", + "uuid": "java-3-216", "seg": [ [ [ @@ -15738,7 +18039,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21227134146341464, + "max": 0.21265243902439024 + }, "related_data": {} } } @@ -15749,7 +18053,7 @@ { "离奇的循环泛型": { "data": { - "uuid": "java-4-288", + "uuid": "java-4-293", "seg": [ [ [ @@ -15758,7 +18062,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21265243902439024, + "max": 0.21277947154471544 + }, "related_data": {} } } @@ -15766,7 +18073,7 @@ { "自限定": { "data": { - "uuid": "java-4-289", + "uuid": "java-4-294", "seg": [ [ [ @@ -15774,7 +18081,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21277947154471544, + "max": 0.21290650406504066 + }, "related_data": {} } } @@ -15782,7 +18092,7 @@ { "参数协变": { "data": { - "uuid": "java-4-290", + "uuid": "java-4-295", "seg": [ [ [ @@ -15791,14 +18101,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21290650406504066, + "max": 0.21303353658536586 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-225", + "uuid": "java-3-217", "seg": [ [ [ @@ -15807,7 +18120,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21265243902439024, + "max": 0.21303353658536586 + }, "related_data": {} } } @@ -15815,16 +18131,20 @@ { "动态类型安全": { "data": { - "uuid": "java-3-226", + "uuid": "java-3-218", "seg": [ [ [ "动态", - "类型" + "类型", + "动态类型" ] ] ], - "level": "1", + "level": { + "min": 0.21303353658536586, + "max": 0.21341463414634146 + }, "related_data": {} } } @@ -15835,7 +18155,7 @@ { "C++中的混用": { "data": { - "uuid": "java-4-291", + "uuid": "java-4-296", "seg": [ [ [ @@ -15844,7 +18164,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21341463414634146, + "max": 0.21350990853658536 + }, "related_data": {} } } @@ -15852,7 +18175,7 @@ { "与接口混用": { "data": { - "uuid": "java-4-292", + "uuid": "java-4-297", "seg": [ [ [], @@ -15862,7 +18185,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21350990853658536, + "max": 0.21360518292682928 + }, "related_data": {} } } @@ -15870,17 +18196,22 @@ { "使用装饰器模式": { "data": { - "uuid": "java-4-293", + "uuid": "java-4-298", "seg": [ [ [ "装饰", "器", - "模式" + "模式", + "装饰器", + "器模式" ] ] ], - "level": "1", + "level": { + "min": 0.21360518292682928, + "max": 0.21370045731707318 + }, "related_data": {} } } @@ -15888,25 +18219,29 @@ { "与动态代理混用": { "data": { - "uuid": "java-4-294", + "uuid": "java-4-299", "seg": [ [ [], [ "动态", "代理", - "混用" + "混用", + "动态代理" ] ] ], - "level": "1", + "level": { + "min": 0.21370045731707318, + "max": 0.21379573170731708 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-227", + "uuid": "java-3-219", "seg": [ [ [ @@ -15914,7 +18249,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21341463414634146, + "max": 0.21379573170731708 + }, "related_data": {} } } @@ -15922,17 +18260,21 @@ { "潜在类型机制": { "data": { - "uuid": "java-3-228", + "uuid": "java-3-220", "seg": [ [ [ "潜在", "类型", - "机制" + "机制", + "类型机制" ] ] ], - "level": "1", + "level": { + "min": 0.21379573170731708, + "max": 0.21417682926829268 + }, "related_data": {} } } @@ -15943,7 +18285,7 @@ { "将一个方法应用于序列": { "data": { - "uuid": "java-4-295", + "uuid": "java-4-300", "seg": [ [ [ @@ -15952,7 +18294,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21417682926829268, + "max": 0.21430386178861788 + }, "related_data": {} } } @@ -15960,17 +18305,21 @@ { "当你并未碰巧拥有正确的接口时": { "data": { - "uuid": "java-4-296", + "uuid": "java-4-301", "seg": [ [ [ "并未", "拥有", - "接口" + "接口", + "碰巧拥有" ] ] ], - "level": "1", + "level": { + "min": 0.21430386178861788, + "max": 0.2144308943089431 + }, "related_data": {} } } @@ -15978,7 +18327,7 @@ { "用适配器仿真潜在类型机制": { "data": { - "uuid": "java-4-297", + "uuid": "java-4-302", "seg": [ [ [ @@ -15986,18 +18335,22 @@ "仿真", "潜在", "类型", - "机制" + "机制", + "类型机制" ] ] ], - "level": "1", + "level": { + "min": 0.2144308943089431, + "max": 0.2145579268292683 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-229", + "uuid": "java-3-221", "seg": [ [ [ @@ -16005,11 +18358,15 @@ "潜在", "类型", "机制", - "补偿" + "补偿", + "类型机制" ] ] ], - "level": "1", + "level": { + "min": 0.21417682926829268, + "max": 0.2145579268292683 + }, "related_data": {} } } @@ -16017,18 +18374,23 @@ { "将函数对象用作策略": { "data": { - "uuid": "java-3-230", + "uuid": "java-3-222", "seg": [ [ [ "函数", "对象", "用作", - "策略" + "策略", + "将函数", + "函数对象" ] ] ], - "level": "1", + "level": { + "min": 0.2145579268292683, + "max": 0.2149390243902439 + }, "related_data": {} } } @@ -16036,17 +18398,21 @@ { "泛型的常规用法": { "data": { - "uuid": "java-3-231", + "uuid": "java-3-223", "seg": [ [ [ "泛型", "常规", - "用法" + "用法", + "常规用法" ] ] ], - "level": "1", + "level": { + "min": 0.2149390243902439, + "max": 0.21532012195121952 + }, "related_data": {} } } @@ -16054,7 +18420,7 @@ { "泛型的高级用法": { "data": { - "uuid": "java-3-232", + "uuid": "java-3-224", "seg": [ [ [ @@ -16064,7 +18430,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21532012195121952, + "max": 0.21570121951219512 + }, "related_data": {} } } @@ -16075,18 +18444,22 @@ { "编译时不检查类型的异常": { "data": { - "uuid": "java-4-298", + "uuid": "java-4-303", "seg": [ [ [ "编译", "检查", "类型", - "异常" + "异常", + "不检查" ] ] ], - "level": "1", + "level": { + "min": 0.21570121951219512, + "max": 0.21589176829268292 + }, "related_data": {} } } @@ -16094,7 +18467,7 @@ { "Java 9增强的“菱形”语法": { "data": { - "uuid": "java-4-299", + "uuid": "java-4-304", "seg": [ [ [ @@ -16105,11 +18478,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21589176829268292, + "max": 0.21608231707317074 + }, "related_data": { "qa": { "data_id": [ - "13_7400426_53348332" + "13_7400426_53348332@13" ] } } @@ -16118,16 +18494,20 @@ } ], "data": { - "uuid": "java-3-233", + "uuid": "java-3-225", "seg": [ [ [ "泛型", - "入门" + "入门", + "泛型入门" ] ] ], - "level": "1", + "level": { + "min": 0.21570121951219512, + "max": 0.21608231707317074 + }, "related_data": {} } } @@ -16135,194 +18515,163 @@ { "从泛型类派生子类": { "data": { - "uuid": "java-3-234", + "uuid": "java-3-226", "seg": [ [ [ "泛型", "类", "派生", - "子类" + "子类", + "泛型类" ] ] ], - "level": "1", + "level": { + "min": 0.21608231707317074, + "max": 0.21646341463414634 + }, "related_data": {} } } }, { - "类型通配符": { - "children": [ - { - "使用类型通配符": { - "data": { - "uuid": "java-4-300", - "seg": [ - [ - [ - "类型", - "通配符" - ] - ] - ], - "level": "1", - "related_data": {} - } - } + "并不存在泛型类": { + "data": { + "uuid": "java-3-227", + "seg": [ + [ + [ + "泛型", + "类", + "不存在", + "泛型类" + ] + ] + ], + "level": { + "min": 0.21646341463414634, + "max": 0.21684451219512196 }, + "related_data": {} + } + } + }, + { + "类型通配符": { + "children": [ { - "设定类型通配符的上限": { + "使用类型通配符": { "data": { - "uuid": "java-4-301", + "uuid": "java-4-305", "seg": [ [ [ - "设定", "类型", "通配符", - "上限" + "类型通配符" ] ] ], - "level": "1", + "level": { + "min": 0.21684451219512196, + "max": 0.21693978658536586 + }, "related_data": {} } } }, { - "设定类型通配符的下限": { + "设定类型通配符的上限": { "data": { - "uuid": "java-4-302", + "uuid": "java-4-306", "seg": [ [ [ "设定", "类型", "通配符", - "下限" + "上限", + "类型通配符" ] ] ], - "level": "1", + "level": { + "min": 0.21693978658536586, + "max": 0.21703506097560976 + }, "related_data": {} } } }, { - "设定泛型形参的上限": { + "设定类型通配符的下限": { "data": { - "uuid": "java-4-303", + "uuid": "java-4-307", "seg": [ [ [ "设定", - "泛型", - "形参", - "上限" - ] - ] - ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_196231_108175" - ] - } - } - } - } - }, - { - "通配符概念": { - "data": { - "uuid": "java-4-304", - "seg": [ - [ - [ - "通配符", - "概念" - ] - ] - ], - "level": "1", - "related_data": {} - } - } - }, - { - "通配符的超类型限定": { - "data": { - "uuid": "java-4-305", - "seg": [ - [ - [ - "通配符", - "超", "类型", - "限定" + "通配符", + "下限", + "类型通配符" ] ] ], - "level": "1", + "level": { + "min": 0.21703506097560976, + "max": 0.21713033536585366 + }, "related_data": {} } } }, { - "无限定通配符": { + "设定泛型形参的上限": { "data": { - "uuid": "java-4-306", + "uuid": "java-4-308", "seg": [ [ [ - "无限", - "定", - "通配符" + "设定", + "泛型", + "形参", + "上限", + "泛型形参" ] ] ], - "level": "1", + "level": { + "min": 0.21713033536585366, + "max": 0.21722560975609756 + }, "related_data": { "qa": { "data_id": [ - "13_7406641_53356186" + "13_196231_108175@13" ] } } } } - }, - { - "通配符捕获": { - "data": { - "uuid": "java-4-307", - "seg": [ - [ - [ - "通配符", - "捕获" - ] - ] - ], - "level": "1", - "related_data": {} - } - } } ], "data": { - "uuid": "java-3-235", + "uuid": "java-3-228", "seg": [ [ [ "类型", - "通配符" + "通配符", + "类型通配符" ] ] ], - "level": "1", + "level": { + "min": 0.21684451219512196, + "max": 0.21722560975609756 + }, "related_data": {} } } @@ -16330,7 +18679,7 @@ { "编写泛型": { "data": { - "uuid": "java-3-236", + "uuid": "java-3-229", "seg": [ [ [ @@ -16339,7 +18688,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21722560975609756, + "max": 0.21760670731707318 + }, "related_data": {} } } @@ -16347,7 +18699,7 @@ { "擦拭法": { "data": { - "uuid": "java-3-237", + "uuid": "java-3-230", "seg": [ [ [ @@ -16355,7 +18707,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21760670731707318, + "max": 0.21798780487804878 + }, "related_data": {} } } @@ -16363,7 +18718,7 @@ { "extends通配符": { "data": { - "uuid": "java-3-238", + "uuid": "java-3-231", "seg": [ [ [ @@ -16372,7 +18727,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21798780487804878, + "max": 0.2183689024390244 + }, "related_data": {} } } @@ -16380,7 +18738,7 @@ { "super通配符": { "data": { - "uuid": "java-3-239", + "uuid": "java-3-232", "seg": [ [ [ @@ -16389,7 +18747,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2183689024390244, + "max": 0.21875 + }, "related_data": {} } } @@ -16404,15 +18765,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.203125, + "max": 0.21875 + }, "related_data": { "qa": { "data_id": [ - "13_248117_242472", - "13_389874_430847", - "13_4173500_27510836", - "13_742086_783416", - "13_7438616_53412021" + "13_248117_242472@13", + "13_389874_430847@13", + "13_4173500_27510836@13", + "13_742086_783416@13", + "13_7438616_53412021@13" ] } } @@ -16428,7 +18792,7 @@ { "lambda表达式的基础知识": { "data": { - "uuid": "java-4-308", + "uuid": "java-4-309", "seg": [ [ [ @@ -16438,7 +18802,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21875, + "max": 0.2191840277777778 + }, "related_data": {} } } @@ -16446,16 +18813,20 @@ { "函数式接口": { "data": { - "uuid": "java-4-309", + "uuid": "java-4-310", "seg": [ [ [ "函数", - "接口" + "接口", + "函数式" ] ] ], - "level": "1", + "level": { + "min": 0.2191840277777778, + "max": 0.21961805555555555 + }, "related_data": {} } } @@ -16463,24 +18834,28 @@ { "几个lambda表达式示例": { "data": { - "uuid": "java-4-310", + "uuid": "java-4-311", "seg": [ [ [ "lambda", "表达式", - "示例" + "示例", + "表达式示例" ] ] ], - "level": "1", + "level": { + "min": 0.21961805555555555, + "max": 0.22005208333333334 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-240", + "uuid": "java-3-233", "seg": [ [ [ @@ -16490,7 +18865,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21875, + "max": 0.22005208333333334 + }, "related_data": {} } } @@ -16498,7 +18876,7 @@ { "块lambda表达式": { "data": { - "uuid": "java-3-241", + "uuid": "java-3-234", "seg": [ [ [ @@ -16508,7 +18886,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22005208333333334, + "max": 0.22135416666666666 + }, "related_data": {} } } @@ -16516,17 +18897,21 @@ { "泛型函数式接口": { "data": { - "uuid": "java-3-242", + "uuid": "java-3-235", "seg": [ [ [ "泛", "型函数", - "接口" + "接口", + "型函数式" ] ] ], - "level": "1", + "level": { + "min": 0.22135416666666666, + "max": 0.22265625 + }, "related_data": {} } } @@ -16534,7 +18919,7 @@ { "作为参数传递lambda表达式": { "data": { - "uuid": "java-3-243", + "uuid": "java-3-236", "seg": [ [ [ @@ -16544,7 +18929,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22265625, + "max": 0.22395833333333334 + }, "related_data": {} } } @@ -16552,7 +18940,7 @@ { "lambda表达式与异常": { "data": { - "uuid": "java-3-244", + "uuid": "java-3-237", "seg": [ [ [ @@ -16564,7 +18952,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22395833333333334, + "max": 0.22526041666666666 + }, "related_data": {} } } @@ -16572,7 +18963,7 @@ { "lambda表达式和变量捕获": { "data": { - "uuid": "java-3-245", + "uuid": "java-3-238", "seg": [ [ [ @@ -16585,7 +18976,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22526041666666666, + "max": 0.2265625 + }, "related_data": {} } } @@ -16596,7 +18990,7 @@ { "静态方法的方法引用": { "data": { - "uuid": "java-4-311", + "uuid": "java-4-312", "seg": [ [ [ @@ -16606,7 +19000,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2265625, + "max": 0.22721354166666669 + }, "related_data": {} } } @@ -16614,7 +19011,7 @@ { "泛型中的方法引用": { "data": { - "uuid": "java-4-312", + "uuid": "java-4-313", "seg": [ [ [ @@ -16624,14 +19021,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22721354166666669, + "max": 0.22786458333333334 + }, "related_data": { "qa": { "data_id": [ - "13_760071_816615", - "13_345372_349664", - "13_358555_376889", - "13_379703_411940" + "13_760071_816615@13", + "13_345372_349664@13", + "13_358555_376889@13", + "13_379703_411940@13" ] } } @@ -16640,7 +19040,7 @@ } ], "data": { - "uuid": "java-3-246", + "uuid": "java-3-239", "seg": [ [ [ @@ -16649,7 +19049,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2265625, + "max": 0.22786458333333334 + }, "related_data": {} } } @@ -16657,7 +19060,7 @@ { "构造函数引用": { "data": { - "uuid": "java-3-247", + "uuid": "java-3-240", "seg": [ [ [ @@ -16666,7 +19069,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22786458333333334, + "max": 0.22916666666666666 + }, "related_data": {} } } @@ -16674,18 +19080,22 @@ { "预定义的函数式接口": { "data": { - "uuid": "java-3-248", + "uuid": "java-3-241", "seg": [ [ [ "预定", "义", "函数", - "接口" + "接口", + "函数式" ] ] ], - "level": "1", + "level": { + "min": 0.22916666666666666, + "max": 0.23046875 + }, "related_data": {} } } @@ -16693,7 +19103,7 @@ { "lambda表达式的语法": { "data": { - "uuid": "java-3-249", + "uuid": "java-3-242", "seg": [ [ [ @@ -16703,7 +19113,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23046875, + "max": 0.23177083333333334 + }, "related_data": {} } } @@ -16711,7 +19124,7 @@ { "构造器引用": { "data": { - "uuid": "java-3-250", + "uuid": "java-3-243", "seg": [ [ [ @@ -16721,7 +19134,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23177083333333334, + "max": 0.23307291666666666 + }, "related_data": {} } } @@ -16729,16 +19145,20 @@ { "再谈Comparator": { "data": { - "uuid": "java-3-251", + "uuid": "java-3-244", "seg": [ [ [ "谈", - "comparator" + "comparator", + "再谈" ] ] ], - "level": "1", + "level": { + "min": 0.23307291666666666, + "max": 0.234375 + }, "related_data": {} } } @@ -16754,7 +19174,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21875, + "max": 0.234375 + }, "related_data": {} } } @@ -16771,7 +19194,7 @@ { "什么是Java": { "data": { - "uuid": "java-5-107", + "uuid": "java-5-103", "seg": [ [ [ @@ -16779,7 +19202,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.234375, + "max": 0.23440104166666667 + }, "related_data": {} } } @@ -16787,7 +19213,7 @@ { "Java语言的特点": { "data": { - "uuid": "java-5-108", + "uuid": "java-5-104", "seg": [ [ [ @@ -16796,14 +19222,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23440104166666667, + "max": 0.23442708333333334 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-313", + "uuid": "java-4-314", "seg": [ [ [ @@ -16812,7 +19241,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.234375, + "max": 0.23442708333333334 + }, "related_data": {} } } @@ -16823,7 +19255,7 @@ { "什么是JDK": { "data": { - "uuid": "java-5-109", + "uuid": "java-5-105", "seg": [ [ [ @@ -16831,20 +19263,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23442708333333334, + "max": 0.23444444444444446 + }, "related_data": { "qa": { "data_id": [ - "13_251168_249229", - "13_350202_358526", - "13_353792_365687", - "13_240157_224169", - "13_7397296_53342466", - "13_245545_236243", - "13_773255_836843", - "13_237621_218184", - "13_339178_337694", - "13_174508_54465" + "13_251168_249229@13", + "13_350202_358526@13", + "13_353792_365687@13", + "13_240157_224169@13", + "13_7397296_53342466@13", + "13_245545_236243@13", + "13_773255_836843@13", + "13_237621_218184@13", + "13_339178_337694@13", + "13_174508_54465@13" ] } } @@ -16854,7 +19289,7 @@ { "安装JDK": { "data": { - "uuid": "java-5-110", + "uuid": "java-5-106", "seg": [ [ [ @@ -16863,12 +19298,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23444444444444446, + "max": 0.23446180555555554 + }, "related_data": { "qa": { "data_id": [ - "13_7457035_53441115", - "13_1067107_1267097" + "13_7457035_53441115@13", + "13_1067107_1267097@13" ] } } @@ -16878,7 +19316,7 @@ { "JDK目录介绍": { "data": { - "uuid": "java-5-111", + "uuid": "java-5-107", "seg": [ [ [ @@ -16888,14 +19326,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23446180555555554, + "max": 0.23447916666666666 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-314", + "uuid": "java-4-315", "seg": [ [ [ @@ -16903,7 +19344,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23442708333333334, + "max": 0.23447916666666666 + }, "related_data": {} } } @@ -16914,7 +19358,7 @@ { "PATH环境变量": { "data": { - "uuid": "java-5-112", + "uuid": "java-5-108", "seg": [ [ [ @@ -16923,11 +19367,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23447916666666666, + "max": 0.23450520833333333 + }, "related_data": { "qa": { "data_id": [ - "13_337623_335003" + "13_337623_335003@13" ] } } @@ -16937,7 +19384,7 @@ { "CLASSPATH环境变量": { "data": { - "uuid": "java-5-113", + "uuid": "java-5-109", "seg": [ [ [ @@ -16946,19 +19393,22 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23450520833333333, + "max": 0.23453125 + }, "related_data": { "qa": { "data_id": [ - "13_743951_789263", - "13_745200_792614", - "13_191277_92688", - "13_229827_198364", - "13_7464124_53450462", - "13_750932_804278", - "13_769896_831110", - "13_699183_587019", - "13_252289_253698" + "13_743951_789263@13", + "13_745200_792614@13", + "13_191277_92688@13", + "13_229827_198364@13", + "13_7464124_53450462@13", + "13_750932_804278@13", + "13_769896_831110@13", + "13_699183_587019@13", + "13_252289_253698@13" ] } } @@ -16967,16 +19417,20 @@ } ], "data": { - "uuid": "java-4-315", + "uuid": "java-4-316", "seg": [ [ [ "系统", - "环境变量" + "环境变量", + "系统环境变量" ] ] ], - "level": "1", + "level": { + "min": 0.23447916666666666, + "max": 0.23453125 + }, "related_data": {} } } @@ -16987,7 +19441,7 @@ { "编辑Java源代码": { "data": { - "uuid": "java-5-114", + "uuid": "java-5-110", "seg": [ [ [ @@ -16996,7 +19450,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23453125, + "max": 0.2345486111111111 + }, "related_data": {} } } @@ -17004,7 +19461,7 @@ { "编译Java程序": { "data": { - "uuid": "java-5-115", + "uuid": "java-5-111", "seg": [ [ [ @@ -17014,20 +19471,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2345486111111111, + "max": 0.23456597222222222 + }, "related_data": { "qa": { "data_id": [ - "13_964803_1115854", - "13_190225_90551", - "13_7436895_53409138", - "13_182676_68812", - "13_387012_425797", - "13_25098_6643", - "13_10825_5136", - "13_373149_400865", - "13_756223_811467", - "13_7458657_53443281" + "13_964803_1115854@13", + "13_190225_90551@13", + "13_7436895_53409138@13", + "13_182676_68812@13", + "13_387012_425797@13", + "13_25098_6643@13", + "13_10825_5136@13", + "13_373149_400865@13", + "13_756223_811467@13", + "13_7458657_53443281@13" ] } } @@ -17037,25 +19497,30 @@ { "根据CLASSPATH环境变量定位类": { "data": { - "uuid": "java-5-116", + "uuid": "java-5-112", "seg": [ [ [ "classpath", "环境变量", "定位", - "类" + "类", + "环境变量定位", + "定位类" ] ] ], - "level": "1", + "level": { + "min": 0.23456597222222222, + "max": 0.23458333333333334 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-316", + "uuid": "java-4-317", "seg": [ [ [ @@ -17064,7 +19529,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23453125, + "max": 0.23458333333333334 + }, "related_data": {} } } @@ -17072,7 +19540,7 @@ { "Java的运行机制": { "data": { - "uuid": "java-4-317", + "uuid": "java-4-318", "seg": [ [ [ @@ -17081,7 +19549,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23458333333333334, + "max": 0.23463541666666665 + }, "related_data": {} } } @@ -17092,7 +19563,7 @@ { "Eclipse概述": { "data": { - "uuid": "java-5-117", + "uuid": "java-5-113", "seg": [ [ [ @@ -17101,7 +19572,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23463541666666665, + "max": 0.23465277777777777 + }, "related_data": {} } } @@ -17109,7 +19583,7 @@ { "Eclipse的安装与启动": { "data": { - "uuid": "java-5-118", + "uuid": "java-5-114", "seg": [ [ [ @@ -17121,11 +19595,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23465277777777777, + "max": 0.23467013888888888 + }, "related_data": { "qa": { "data_id": [ - "13_7430975_53398940" + "13_7430975_53398940@13" ] } } @@ -17135,7 +19612,7 @@ { "使用Eclipse进行程序开发": { "data": { - "uuid": "java-5-119", + "uuid": "java-5-115", "seg": [ [ [ @@ -17144,11 +19621,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23467013888888888, + "max": 0.2346875 + }, "related_data": { "qa": { "data_id": [ - "13_7461969_53447261" + "13_7461969_53447261@13" ] } } @@ -17157,7 +19637,7 @@ } ], "data": { - "uuid": "java-4-318", + "uuid": "java-4-319", "seg": [ [ [ @@ -17166,11 +19646,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23463541666666665, + "max": 0.2346875 + }, "related_data": { "qa": { "data_id": [ - "13_7427158_53391212" + "13_7427158_53391212@13" ] } } @@ -17179,7 +19662,7 @@ } ], "data": { - "uuid": "java-3-252", + "uuid": "java-3-245", "seg": [ [ [ @@ -17189,7 +19672,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.234375, + "max": 0.2346875 + }, "related_data": {} } } @@ -17203,24 +19689,30 @@ { "Java的基本语法格式": { "data": { - "uuid": "java-5-120", + "uuid": "java-5-116", "seg": [ [ [ "java", "语法", - "格式" + "格式", + "基本语法", + "语法格式" ] ] ], - "level": "1", + "level": { + "min": 0.2346875, + "max": 0.23470312499999998 + }, "related_data": { "qa": { "data_id": [ - "13_230947_201113", - "13_241142_226696", - "13_247829_241763", - "13_7434889_53405346" + "13_230947_201113@13", + "13_241142_226696@13", + "13_247829_241763@13", + "13_230066_198898@13", + "13_7434889_53405346@13" ] } } @@ -17230,7 +19722,7 @@ { "Java中的注释": { "data": { - "uuid": "java-5-121", + "uuid": "java-5-117", "seg": [ [ [ @@ -17239,7 +19731,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23470312499999998, + "max": 0.23471874999999998 + }, "related_data": {} } } @@ -17247,7 +19742,7 @@ { "Java中的关键字": { "data": { - "uuid": "java-5-122", + "uuid": "java-5-118", "seg": [ [ [ @@ -17256,7 +19751,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23471874999999998, + "max": 0.234734375 + }, "related_data": {} } } @@ -17264,7 +19762,7 @@ { "Java中的标识符": { "data": { - "uuid": "java-5-123", + "uuid": "java-5-119", "seg": [ [ [ @@ -17273,11 +19771,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.234734375, + "max": 0.23475 + }, "related_data": { "qa": { "data_id": [ - "13_1055942_1253172" + "13_1055942_1253172@13" ] } } @@ -17286,16 +19787,20 @@ } ], "data": { - "uuid": "java-4-319", + "uuid": "java-4-320", "seg": [ [ [ "java", - "语法" + "语法", + "基本语法" ] ] ], - "level": "1", + "level": { + "min": 0.2346875, + "max": 0.23475 + }, "related_data": {} } } @@ -17306,7 +19811,7 @@ { "变量的定义": { "data": { - "uuid": "java-5-124", + "uuid": "java-5-120", "seg": [ [ [ @@ -17315,15 +19820,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23475, + "max": 0.23476249999999999 + }, "related_data": { "qa": { "data_id": [ - "13_239861_223548", - "13_196672_109551", - "13_4646483_29330802", - "13_750596_803749", - "13_7436731_53409082" + "13_239861_223548@13", + "13_196672_109551@13", + "13_4646483_29330802@13", + "13_750596_803749@13", + "13_7436731_53409082@13" ] } } @@ -17333,7 +19841,7 @@ { "变量的数据类型": { "data": { - "uuid": "java-5-125", + "uuid": "java-5-121", "seg": [ [ [ @@ -17342,7 +19850,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23476249999999999, + "max": 0.23477499999999998 + }, "related_data": {} } } @@ -17350,7 +19861,7 @@ { "变量的类型转换32目录Java基础入门(第2版)2.2.4变量的作用域": { "data": { - "uuid": "java-5-126", + "uuid": "java-5-122", "seg": [ [ [ @@ -17361,11 +19872,15 @@ "基础", "入门", "版", - "作用域" + "作用域", + "基础入门" ] ] ], - "level": "1", + "level": { + "min": 0.23477499999999998, + "max": 0.23478749999999998 + }, "related_data": {} } } @@ -17373,7 +19888,7 @@ { "Java中的常量": { "data": { - "uuid": "java-5-127", + "uuid": "java-5-123", "seg": [ [ [ @@ -17382,13 +19897,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23478749999999998, + "max": 0.23479999999999998 + }, "related_data": { "qa": { "data_id": [ - "13_7466662_53454001", - "13_345260_349335", - "13_231883_203776" + "13_7466662_53454001@13", + "13_345260_349335@13", + "13_231883_203776@13" ] } } @@ -17398,23 +19916,27 @@ { "指数记数法": { "data": { - "uuid": "java-5-128", + "uuid": "java-5-124", "seg": [ [ [ "指数", - "记数法" + "记数法", + "指数记数法" ] ] ], - "level": "1", + "level": { + "min": 0.23479999999999998, + "max": 0.23481249999999998 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-320", + "uuid": "java-4-321", "seg": [ [ [ @@ -17426,7 +19948,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23475, + "max": 0.23481249999999998 + }, "related_data": {} } } @@ -17434,24 +19959,55 @@ { "Java中的运算符": { "children": [ + { + "比较运算符": { + "data": { + "uuid": "java-5-125", + "seg": [ + [ + [ + "运算符", + "比较运算符" + ] + ] + ], + "level": { + "min": 0.23481249999999998, + "max": 0.2348333333333333 + }, + "related_data": { + "qa": { + "data_id": [ + "13_7440136_53415323@13", + "13_190389_90828@13" + ] + } + } + } + } + }, { "逻辑运算符": { "data": { - "uuid": "java-5-129", + "uuid": "java-5-126", "seg": [ [ [ "逻辑", - "运算符" + "运算符", + "逻辑运算符" ] ] ], - "level": "1", + "level": { + "min": 0.2348333333333333, + "max": 0.23485416666666667 + }, "related_data": { "qa": { "data_id": [ - "13_701608_591485", - "13_248456_243300" + "13_701608_591485@13", + "13_248456_243300@13" ] } } @@ -17461,20 +20017,24 @@ { "条件运算符": { "data": { - "uuid": "java-5-130", + "uuid": "java-5-127", "seg": [ [ [ "条件", - "运算符" + "运算符", + "条件运算符" ] ] ], - "level": "1", + "level": { + "min": 0.23485416666666667, + "max": 0.234875 + }, "related_data": { "qa": { "data_id": [ - "13_7442981_53420000" + "13_7442981_53420000@13" ] } } @@ -17483,7 +20043,7 @@ } ], "data": { - "uuid": "java-4-321", + "uuid": "java-4-322", "seg": [ [ [ @@ -17492,7 +20052,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23481249999999998, + "max": 0.234875 + }, "related_data": {} } } @@ -17503,7 +20066,7 @@ { "if条件语句": { "data": { - "uuid": "java-5-131", + "uuid": "java-5-128", "seg": [ [ [ @@ -17512,20 +20075,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.234875, + "max": 0.23490624999999998 + }, "related_data": { "qa": { "data_id": [ - "13_179151_64389", - "13_7395251_53337539", - "13_1096530_1308948", - "13_743304_787312", - "13_191788_93796", - "13_198052_113127", - "13_746542_796189", - "13_7417032_53371702", - "13_1098984_1313879", - "13_376869_407103" + "13_179151_64389@13", + "13_7395251_53337539@13", + "13_1096530_1308948@13", + "13_743304_787312@13", + "13_191788_93796@13", + "13_198052_113127@13", + "13_746542_796189@13", + "13_7417032_53371702@13", + "13_1098984_1313879@13", + "13_376869_407103@13" ] } } @@ -17535,7 +20101,7 @@ { "switch条件语句": { "data": { - "uuid": "java-5-132", + "uuid": "java-5-129", "seg": [ [ [ @@ -17544,24 +20110,31 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23490624999999998, + "max": 0.2349375 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-322", + "uuid": "java-4-323", "seg": [ [ [ "选择", "结构", - "语句" + "语句", + "结构语句" ] ] ], - "level": "1", + "level": { + "min": 0.234875, + "max": 0.2349375 + }, "related_data": {} } } @@ -17572,7 +20145,7 @@ { "do…while循环语句": { "data": { - "uuid": "java-5-133", + "uuid": "java-5-130", "seg": [ [ [ @@ -17583,15 +20156,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2349375, + "max": 0.23496875 + }, "related_data": { "qa": { "data_id": [ - "13_940629_1077927", - "13_7455237_53438050", - "13_385377_422573", - "13_7457465_53441815", - "13_265121_280889" + "13_940629_1077927@13", + "13_7455237_53438050@13", + "13_385377_422573@13", + "13_7457465_53441815@13", + "13_265121_280889@13" ] } } @@ -17601,7 +20177,7 @@ { "for循环语句": { "data": { - "uuid": "java-5-134", + "uuid": "java-5-131", "seg": [ [ [ @@ -17610,12 +20186,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23496875, + "max": 0.235 + }, "related_data": { "qa": { "data_id": [ - "13_237708_218558", - "13_670299_492802" + "13_237708_218558@13", + "13_670299_492802@13" ] } } @@ -17624,34 +20203,42 @@ } ], "data": { - "uuid": "java-4-323", + "uuid": "java-4-324", "seg": [ [ [ "循环", "结构", - "语句" + "语句", + "结构语句" ] ] ], - "level": "1", + "level": { + "min": 0.2349375, + "max": 0.235 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-253", + "uuid": "java-3-246", "seg": [ [ [ "java", "编程", - "基础" + "基础", + "编程基础" ] ] ], - "level": "1", + "level": { + "min": 0.2346875, + "max": 0.235 + }, "related_data": {} } } @@ -17662,7 +20249,7 @@ { "集合概述": { "data": { - "uuid": "java-4-324", + "uuid": "java-4-325", "seg": [ [ [ @@ -17671,7 +20258,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.235, + "max": 0.2350130208333333 + }, "related_data": {} } } @@ -17679,7 +20269,7 @@ { "Collection接口": { "data": { - "uuid": "java-4-325", + "uuid": "java-4-326", "seg": [ [ [ @@ -17688,7 +20278,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2350130208333333, + "max": 0.23502604166666666 + }, "related_data": {} } } @@ -17699,7 +20292,7 @@ { "List接口简介": { "data": { - "uuid": "java-5-135", + "uuid": "java-5-132", "seg": [ [ [ @@ -17709,7 +20302,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23502604166666666, + "max": 0.23503038194444442 + }, "related_data": {} } } @@ -17717,7 +20313,7 @@ { "ArrayList集合": { "data": { - "uuid": "java-5-136", + "uuid": "java-5-133", "seg": [ [ [ @@ -17726,20 +20322,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23503038194444442, + "max": 0.23503472222222221 + }, "related_data": { "qa": { "data_id": [ - "13_632045_441220", - "13_7465063_53451775", - "13_235354_213993", - "13_186251_79188", - "13_743338_787405", - "13_669464_490854", - "13_786872_862059", - "13_384706_421333", - "13_7416454_53370644", - "13_1090235_1297018" + "13_632045_441220@13", + "13_7465063_53451775@13", + "13_235354_213993@13", + "13_186251_79188@13", + "13_743338_787405@13", + "13_669464_490854@13", + "13_786872_862059@13", + "13_384706_421333@13", + "13_7416454_53370644@13", + "13_1090235_1297018@13" ] } } @@ -17749,7 +20348,7 @@ { "LinkedList集合": { "data": { - "uuid": "java-5-137", + "uuid": "java-5-134", "seg": [ [ [ @@ -17758,11 +20357,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23503472222222221, + "max": 0.23503906249999998 + }, "related_data": { "qa": { "data_id": [ - "13_365874_389481" + "13_365874_389481@13" ] } } @@ -17771,7 +20373,7 @@ } ], "data": { - "uuid": "java-4-326", + "uuid": "java-4-327", "seg": [ [ [ @@ -17780,7 +20382,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23502604166666666, + "max": 0.23503906249999998 + }, "related_data": {} } } @@ -17791,7 +20396,7 @@ { "Iterator遍历集合": { "data": { - "uuid": "java-5-138", + "uuid": "java-5-135", "seg": [ [ [ @@ -17801,20 +20406,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23503906249999998, + "max": 0.23504340277777777 + }, "related_data": { "qa": { "data_id": [ - "13_389091_429289", - "13_7426285_53389396", - "13_370765_397443", - "13_656837_468883", - "13_248512_243522", - "13_7407311_53357358", - "13_251675_250655", - "13_7456023_53439375", - "13_150738_72266", - "13_23033_6067" + "13_389091_429289@13", + "13_7426285_53389396@13", + "13_370765_397443@13", + "13_656837_468883@13", + "13_7407311_53357358@13", + "13_251675_250655@13", + "13_7456023_53439375@13", + "13_150738_72266@13", + "13_23033_6067@13", + "13_676615_516272@13" ] } } @@ -17824,7 +20432,7 @@ { "foreach遍历集合": { "data": { - "uuid": "java-5-139", + "uuid": "java-5-136", "seg": [ [ [ @@ -17835,12 +20443,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23504340277777777, + "max": 0.23504774305555554 + }, "related_data": { "qa": { "data_id": [ - "13_768929_829457", - "13_651116_458086" + "13_768929_829457@13", + "13_651116_458086@13" ] } } @@ -17850,7 +20461,7 @@ { "JDK 8的forEach遍历集合": { "data": { - "uuid": "java-5-140", + "uuid": "java-5-137", "seg": [ [ [ @@ -17862,14 +20473,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23504774305555554, + "max": 0.23505208333333333 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-327", + "uuid": "java-4-328", "seg": [ [ [ @@ -17879,7 +20493,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23503906249999998, + "max": 0.23505208333333333 + }, "related_data": {} } } @@ -17890,7 +20507,7 @@ { "Set接口简介": { "data": { - "uuid": "java-5-141", + "uuid": "java-5-138", "seg": [ [ [ @@ -17900,7 +20517,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23505208333333333, + "max": 0.2350564236111111 + }, "related_data": {} } } @@ -17908,7 +20528,7 @@ { "HashSet集合": { "data": { - "uuid": "java-5-142", + "uuid": "java-5-139", "seg": [ [ [ @@ -17917,7 +20537,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2350564236111111, + "max": 0.23506076388888889 + }, "related_data": {} } } @@ -17925,7 +20548,7 @@ { "TreeSet集合": { "data": { - "uuid": "java-5-143", + "uuid": "java-5-140", "seg": [ [ [ @@ -17934,14 +20557,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23506076388888889, + "max": 0.23506510416666665 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-328", + "uuid": "java-4-329", "seg": [ [ [ @@ -17950,7 +20576,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23505208333333333, + "max": 0.23506510416666665 + }, "related_data": {} } } @@ -17961,7 +20590,7 @@ { "Map接口简介": { "data": { - "uuid": "java-5-144", + "uuid": "java-5-141", "seg": [ [ [ @@ -17971,11 +20600,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23506510416666665, + "max": 0.23506770833333332 + }, "related_data": { "qa": { "data_id": [ - "13_323754_314567" + "13_323754_314567@13" ] } } @@ -17985,7 +20617,7 @@ { "HashMap集合": { "data": { - "uuid": "java-5-145", + "uuid": "java-5-142", "seg": [ [ [ @@ -17994,20 +20626,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23506770833333332, + "max": 0.2350703125 + }, "related_data": { "qa": { "data_id": [ - "13_376342_406201", - "13_187699_82749", - "13_7409191_53359511", - "13_717661_711070", - "13_207518_141833", - "13_650977_457915", - "13_323746_314899", - "13_679162_525504", - "13_646721_449513", - "13_780319_849384" + "13_376342_406201@13", + "13_187699_82749@13", + "13_7409191_53359511@13", + "13_717661_711070@13", + "13_207518_141833@13", + "13_650977_457915@13", + "13_323746_314899@13", + "13_679162_525504@13", + "13_646721_449513@13", + "13_780319_849384@13" ] } } @@ -18017,7 +20652,7 @@ { "Map集合遍历": { "data": { - "uuid": "java-5-146", + "uuid": "java-5-143", "seg": [ [ [ @@ -18027,15 +20662,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2350703125, + "max": 0.23507291666666666 + }, "related_data": { "qa": { "data_id": [ - "13_1108775_1349185", - "13_656364_467901", - "13_656484_468237", - "13_655680_466599", - "13_516178_438763" + "13_1108775_1349185@13", + "13_656364_467901@13", + "13_656484_468237@13", + "13_655680_466599@13", + "13_516178_438763@13" ] } } @@ -18045,7 +20683,7 @@ { "TreeMap集合": { "data": { - "uuid": "java-5-147", + "uuid": "java-5-144", "seg": [ [ [ @@ -18054,11 +20692,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23507291666666666, + "max": 0.23507552083333333 + }, "related_data": { "qa": { "data_id": [ - "13_232000_204088" + "13_232000_204088@13" ] } } @@ -18068,7 +20709,7 @@ { "Properties集合": { "data": { - "uuid": "java-5-148", + "uuid": "java-5-145", "seg": [ [ [ @@ -18077,14 +20718,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23507552083333333, + "max": 0.235078125 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-329", + "uuid": "java-4-330", "seg": [ [ [ @@ -18093,7 +20737,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23506510416666665, + "max": 0.235078125 + }, "related_data": {} } } @@ -18104,23 +20751,27 @@ { "Collections工具类": { "data": { - "uuid": "java-5-149", + "uuid": "java-5-146", "seg": [ [ [ "collections", "工具", - "类" + "类", + "工具类" ] ] ], - "level": "1", + "level": { + "min": 0.235078125, + "max": 0.23508463541666666 + }, "related_data": { "qa": { "data_id": [ - "13_678977_524638", - "13_229073_196195", - "13_229022_196012" + "13_678977_524638@13", + "13_229073_196195@13", + "13_229022_196012@13" ] } } @@ -18130,24 +20781,28 @@ { "Arrays工具类": { "data": { - "uuid": "java-5-150", + "uuid": "java-5-147", "seg": [ [ [ "arrays", "工具", - "类" + "类", + "工具类" ] ] ], - "level": "1", + "level": { + "min": 0.23508463541666666, + "max": 0.23509114583333332 + }, "related_data": { "qa": { "data_id": [ - "13_222282_177999", - "13_235369_214091", - "13_686432_548093", - "13_374474_403533" + "13_222282_177999@13", + "13_235369_214091@13", + "13_686432_548093@13", + "13_374474_403533@13" ] } } @@ -18156,7 +20811,7 @@ } ], "data": { - "uuid": "java-4-330", + "uuid": "java-4-331", "seg": [ [ [ @@ -18165,7 +20820,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.235078125, + "max": 0.23509114583333332 + }, "related_data": {} } } @@ -18176,7 +20834,7 @@ { "聚合操作简介": { "data": { - "uuid": "java-5-151", + "uuid": "java-5-148", "seg": [ [ [ @@ -18186,7 +20844,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23509114583333332, + "max": 0.23509440104166665 + }, "related_data": {} } } @@ -18194,18 +20855,22 @@ { "创建Stream流对象": { "data": { - "uuid": "java-5-152", + "uuid": "java-5-149", "seg": [ [ [ "创建", "stream", "流", - "对象" + "对象", + "流对象" ] ] ], - "level": "1", + "level": { + "min": 0.23509440104166665, + "max": 0.23509765625 + }, "related_data": {} } } @@ -18213,7 +20878,7 @@ { "Stream流的常用方法": { "data": { - "uuid": "java-5-153", + "uuid": "java-5-150", "seg": [ [ [ @@ -18223,7 +20888,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23509765625, + "max": 0.23510091145833334 + }, "related_data": {} } } @@ -18231,7 +20899,7 @@ { "Parallel Stream(并行流)": { "data": { - "uuid": "java-5-154", + "uuid": "java-5-151", "seg": [ [ [ @@ -18242,14 +20910,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23510091145833334, + "max": 0.23510416666666667 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-331", + "uuid": "java-4-332", "seg": [ [ [ @@ -18258,7 +20929,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23509114583333332, + "max": 0.23510416666666667 + }, "related_data": {} } } @@ -18269,7 +20943,7 @@ { "集合接口与实现分离": { "data": { - "uuid": "java-5-155", + "uuid": "java-5-152", "seg": [ [ [ @@ -18281,14 +20955,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23510416666666667, + "max": 0.23511067708333333 + }, "related_data": { "qa": { "data_id": [ - "13_370890_397956", - "13_662257_477680", - "13_668655_489170", - "13_184433_74079" + "13_370890_397956@13", + "13_662257_477680@13", + "13_668655_489170@13", + "13_184433_74079@13" ] } } @@ -18298,7 +20975,7 @@ { "泛型实用方法": { "data": { - "uuid": "java-5-156", + "uuid": "java-5-153", "seg": [ [ [ @@ -18308,14 +20985,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23511067708333333, + "max": 0.2351171875 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-332", + "uuid": "java-4-333", "seg": [ [ [ @@ -18325,7 +21005,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23510416666666667, + "max": 0.2351171875 + }, "related_data": {} } } @@ -18333,7 +21016,7 @@ { "集合框架中的接口": { "data": { - "uuid": "java-4-333", + "uuid": "java-4-334", "seg": [ [ [ @@ -18343,7 +21026,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2351171875, + "max": 0.23513020833333334 + }, "related_data": {} } } @@ -18351,7 +21037,7 @@ { "链表": { "data": { - "uuid": "java-4-334", + "uuid": "java-4-335", "seg": [ [ [ @@ -18359,12 +21045,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23513020833333334, + "max": 0.23514322916666666 + }, "related_data": { "qa": { "data_id": [ - "13_1055376_1252500", - "13_1095989_1307906" + "13_1055376_1252500@13", + "13_1095989_1307906@13" ] } } @@ -18374,16 +21063,20 @@ { "数组列表": { "data": { - "uuid": "java-4-335", + "uuid": "java-4-336", "seg": [ [ [ "数组", - "列表" + "列表", + "数组列表" ] ] ], - "level": "1", + "level": { + "min": 0.23514322916666666, + "max": 0.23515625 + }, "related_data": {} } } @@ -18391,7 +21084,7 @@ { "散列集": { "data": { - "uuid": "java-4-336", + "uuid": "java-4-337", "seg": [ [ [ @@ -18400,7 +21093,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23515625, + "max": 0.23516927083333333 + }, "related_data": {} } } @@ -18408,7 +21104,7 @@ { "树集": { "data": { - "uuid": "java-4-337", + "uuid": "java-4-338", "seg": [ [ [ @@ -18416,7 +21112,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23516927083333333, + "max": 0.23518229166666665 + }, "related_data": {} } } @@ -18424,7 +21123,7 @@ { "优先队列": { "data": { - "uuid": "java-4-338", + "uuid": "java-4-339", "seg": [ [ [ @@ -18433,7 +21132,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23518229166666665, + "max": 0.2351953125 + }, "related_data": {} } } @@ -18444,7 +21146,7 @@ { "基本映射操作": { "data": { - "uuid": "java-5-157", + "uuid": "java-5-154", "seg": [ [ [ @@ -18453,25 +21155,38 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.2351953125, + "max": 0.23519717261904763 + }, + "related_data": { + "qa": { + "data_id": [ + "13_380814_414056@13" + ] + } + } } } }, { "更新映射条目": { "data": { - "uuid": "java-5-158", + "uuid": "java-5-155", "seg": [ [ [ "更新", "映射", - "条目" + "条目", + "更新映射" ] ] ], - "level": "1", + "level": { + "min": 0.23519717261904763, + "max": 0.23519903273809523 + }, "related_data": {} } } @@ -18479,7 +21194,7 @@ { "映射视图": { "data": { - "uuid": "java-5-159", + "uuid": "java-5-156", "seg": [ [ [ @@ -18488,7 +21203,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23519903273809523, + "max": 0.23520089285714285 + }, "related_data": {} } } @@ -18496,7 +21214,7 @@ { "弱散列映射": { "data": { - "uuid": "java-5-160", + "uuid": "java-5-157", "seg": [ [ [ @@ -18506,7 +21224,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23520089285714285, + "max": 0.23520275297619048 + }, "related_data": {} } } @@ -18514,7 +21235,7 @@ { "链接散列集与映射": { "data": { - "uuid": "java-5-161", + "uuid": "java-5-158", "seg": [ [ [ @@ -18527,7 +21248,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23520275297619048, + "max": 0.2352046130952381 + }, "related_data": {} } } @@ -18535,7 +21259,7 @@ { "枚举集与映射": { "data": { - "uuid": "java-5-162", + "uuid": "java-5-159", "seg": [ [ [ @@ -18545,7 +21269,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2352046130952381, + "max": 0.2352064732142857 + }, "related_data": {} } } @@ -18553,7 +21280,7 @@ { "标识散列映射": { "data": { - "uuid": "java-5-163", + "uuid": "java-5-160", "seg": [ [ [ @@ -18563,14 +21290,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2352064732142857, + "max": 0.23520833333333332 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-339", + "uuid": "java-4-340", "seg": [ [ [ @@ -18578,7 +21308,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2351953125, + "max": 0.23520833333333332 + }, "related_data": {} } } @@ -18589,7 +21322,7 @@ { "二分查找": { "data": { - "uuid": "java-5-164", + "uuid": "java-5-161", "seg": [ [ [ @@ -18597,7 +21330,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23520833333333332, + "max": 0.23521158854166666 + }, "related_data": {} } } @@ -18605,7 +21341,7 @@ { "简单算法": { "data": { - "uuid": "java-5-165", + "uuid": "java-5-162", "seg": [ [ [ @@ -18613,20 +21349,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23521158854166666, + "max": 0.23521484375 + }, "related_data": { "qa": { "data_id": [ - "13_650399_457875", - "13_384115_420831", - "13_697332_583493", - "13_1061793_1259671", - "13_204704_133922", - "13_351401_360849", - "13_243291_231660", - "13_354169_366578", - "13_168652_44021", - "13_252672_252708" + "13_650399_457875@13", + "13_384115_420831@13", + "13_697332_583493@13", + "13_1061793_1259671@13", + "13_204704_133922@13", + "13_351401_360849@13", + "13_243291_231660@13", + "13_354169_366578@13", + "13_168652_44021@13", + "13_252672_252708@13" ] } } @@ -18636,7 +21375,7 @@ { "批操作": { "data": { - "uuid": "java-5-166", + "uuid": "java-5-163", "seg": [ [ [ @@ -18645,7 +21384,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23521484375, + "max": 0.23521809895833334 + }, "related_data": {} } } @@ -18653,7 +21395,7 @@ { "编写自己的算法": { "data": { - "uuid": "java-5-167", + "uuid": "java-5-164", "seg": [ [ [ @@ -18662,12 +21404,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23521809895833334, + "max": 0.23522135416666667 + }, "related_data": { "qa": { "data_id": [ - "13_358710_377278", - "13_358745_377423" + "13_358710_377278@13", + "13_358745_377423@13" ] } } @@ -18676,7 +21421,7 @@ } ], "data": { - "uuid": "java-4-340", + "uuid": "java-4-341", "seg": [ [ [ @@ -18684,14 +21429,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23520833333333332, + "max": 0.23522135416666667 + }, "related_data": { "qa": { "data_id": [ - "13_1037655_1241337", - "13_7408319_53358519", - "13_676266_515389", - "13_747413_798629" + "13_1037655_1241337@13", + "13_7408319_53358519@13", + "13_676266_515389@13", + "13_747413_798629@13" ] } } @@ -18704,7 +21452,7 @@ { "属性映射": { "data": { - "uuid": "java-5-168", + "uuid": "java-5-165", "seg": [ [ [ @@ -18713,7 +21461,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23522135416666667, + "max": 0.23522569444444444 + }, "related_data": {} } } @@ -18721,7 +21472,7 @@ { "栈": { "data": { - "uuid": "java-5-169", + "uuid": "java-5-166", "seg": [ [ [ @@ -18729,12 +21480,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23522569444444444, + "max": 0.23523003472222223 + }, "related_data": { "qa": { "data_id": [ - "13_7451189_53432609", - "13_367244_392667" + "13_7451189_53432609@13", + "13_367244_392667@13" ] } } @@ -18744,7 +21498,7 @@ { "位集": { "data": { - "uuid": "java-5-170", + "uuid": "java-5-167", "seg": [ [ [ @@ -18752,14 +21506,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23523003472222223, + "max": 0.235234375 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-341", + "uuid": "java-4-342", "seg": [ [ [ @@ -18768,7 +21525,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23522135416666667, + "max": 0.235234375 + }, "related_data": {} } } @@ -18776,7 +21536,7 @@ { "Java集合简介": { "data": { - "uuid": "java-4-342", + "uuid": "java-4-343", "seg": [ [ [ @@ -18786,7 +21546,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.235234375, + "max": 0.23524739583333334 + }, "related_data": {} } } @@ -18794,7 +21557,7 @@ { "编写equals方法": { "data": { - "uuid": "java-4-343", + "uuid": "java-4-344", "seg": [ [ [ @@ -18804,7 +21567,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23524739583333334, + "max": 0.23526041666666667 + }, "related_data": {} } } @@ -18812,7 +21578,7 @@ { "编写equals和hashCode": { "data": { - "uuid": "java-4-344", + "uuid": "java-4-345", "seg": [ [ [ @@ -18824,14 +21590,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23526041666666667, + "max": 0.23527343750000002 + }, "related_data": { "qa": { "data_id": [ - "13_7430319_53397387", - "13_649362_454877", - "13_30039_9236", - "13_778168_844631" + "13_7430319_53397387@13", + "13_649362_454877@13", + "13_30039_9236@13", + "13_778168_844631@13" ] } } @@ -18841,7 +21610,7 @@ { "使用TreeMap": { "data": { - "uuid": "java-4-345", + "uuid": "java-4-346", "seg": [ [ [ @@ -18849,14 +21618,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23527343750000002, + "max": 0.23528645833333334 + }, "related_data": { "qa": { "data_id": [ - "13_679052_524981", - "13_7408928_53359529", - "13_56554_10273", - "13_679260_525809" + "13_679052_524981@13", + "13_7408928_53359529@13", + "13_56554_10273@13", + "13_679260_525809@13" ] } } @@ -18866,7 +21638,7 @@ { "使用Properties": { "data": { - "uuid": "java-4-346", + "uuid": "java-4-347", "seg": [ [ [ @@ -18874,7 +21646,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23528645833333334, + "max": 0.2352994791666667 + }, "related_data": {} } } @@ -18882,7 +21657,7 @@ { "使用Deque": { "data": { - "uuid": "java-4-347", + "uuid": "java-4-348", "seg": [ [ [ @@ -18890,14 +21665,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2352994791666667, + "max": 0.2353125 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-254", + "uuid": "java-3-247", "seg": [ [ [ @@ -18905,14 +21683,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.235, + "max": 0.2353125 + }, "related_data": { "qa": { "data_id": [ - "13_371880_398660", - "13_1095048_1305855", - "13_337753_335038", - "13_371755_398467" + "13_371880_398660@13", + "13_1095048_1305855@13", + "13_337753_335038@13", + "13_371755_398467@13" ] } } @@ -18925,7 +21706,7 @@ { "I/O流概述": { "data": { - "uuid": "java-4-348", + "uuid": "java-4-349", "seg": [ [ [ @@ -18936,14 +21717,174 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_177743_61365" - ] + "level": { + "min": 0.2353125, + "max": 0.23535714285714288 + }, + "related_data": {} + } + } + }, + { + "字节流": { + "children": [ + { + "字节流概述": { + "data": { + "uuid": "java-5-168", + "seg": [ + [ + [ + "字节", + "流", + "概述", + "字节流" + ] + ] + ], + "level": { + "min": 0.23535714285714288, + "max": 0.23536607142857144 + }, + "related_data": { + "qa": { + "data_id": [ + "13_1091135_1298414@13" + ] + } + } + } + } + }, + { + "字节流读写文件": { + "data": { + "uuid": "java-5-169", + "seg": [ + [ + [ + "字节", + "流", + "读写", + "文件", + "字节流" + ] + ] + ], + "level": { + "min": 0.23536607142857144, + "max": 0.235375 + }, + "related_data": { + "qa": { + "data_id": [ + "13_689616_558112@13", + "13_350679_359456@13" + ] + } + } + } + } + }, + { + "文件的拷贝": { + "data": { + "uuid": "java-5-170", + "seg": [ + [ + [ + "文件", + "拷贝" + ] + ] + ], + "level": { + "min": 0.235375, + "max": 0.2353839285714286 + }, + "related_data": { + "qa": { + "data_id": [ + "13_7439947_53414791@13" + ] + } + } + } + } + }, + { + "字节流的缓冲区": { + "data": { + "uuid": "java-5-171", + "seg": [ + [ + [ + "字节", + "流", + "缓冲区" + ] + ] + ], + "level": { + "min": 0.2353839285714286, + "max": 0.23539285714285715 + }, + "related_data": { + "qa": { + "data_id": [ + "13_232800_206397@13", + "13_177743_61365@13", + "13_184131_72941@13" + ] + } + } + } + } + }, + { + "字节缓冲流": { + "data": { + "uuid": "java-5-172", + "seg": [ + [ + [ + "字节", + "缓冲", + "流" + ] + ] + ], + "level": { + "min": 0.23539285714285715, + "max": 0.23540178571428572 + }, + "related_data": { + "qa": { + "data_id": [ + "13_1084153_1290934@13" + ] + } + } + } } } + ], + "data": { + "uuid": "java-4-350", + "seg": [ + [ + [ + "字节", + "流", + "字节流" + ] + ] + ], + "level": { + "min": 0.23535714285714288, + "max": 0.23540178571428572 + }, + "related_data": {} } } }, @@ -18953,7 +21894,7 @@ { "File类的常用方法": { "data": { - "uuid": "java-5-171", + "uuid": "java-5-173", "seg": [ [ [ @@ -18963,20 +21904,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23540178571428572, + "max": 0.23540584415584415 + }, "related_data": { "qa": { "data_id": [ - "13_7435934_53406903", - "13_744333_790150", - "13_332497_323709", - "13_2907_4066", - "13_223039_180473", - "13_977465_1135939", - "13_220367_173005", - "13_7426191_53388981", - "13_1056628_1253699", - "13_228113_193507" + "13_7435934_53406903@13", + "13_744333_790150@13", + "13_332497_323709@13", + "13_2907_4066@13", + "13_223039_180473@13", + "13_977465_1135939@13", + "13_220367_173005@13", + "13_7426191_53388981@13", + "13_1056628_1253699@13", + "13_228113_193507@13" ] } } @@ -18986,7 +21930,7 @@ { "遍历目录下的文件": { "data": { - "uuid": "java-5-172", + "uuid": "java-5-174", "seg": [ [ [ @@ -18996,11 +21940,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23540584415584415, + "max": 0.2354099025974026 + }, "related_data": { "qa": { "data_id": [ - "13_745576_793704" + "13_745576_793704@13" ] } } @@ -19010,7 +21957,7 @@ { "删除文件及目录": { "data": { - "uuid": "java-5-173", + "uuid": "java-5-175", "seg": [ [ [ @@ -19022,11 +21969,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2354099025974026, + "max": 0.23541396103896103 + }, "related_data": { "qa": { "data_id": [ - "13_194751_103203" + "13_194751_103203@13" ] } } @@ -19036,17 +21986,21 @@ { "创建文件对象": { "data": { - "uuid": "java-5-174", + "uuid": "java-5-176", "seg": [ [ [ "创建", "文件", - "对象" + "对象", + "文件对象" ] ] ], - "level": "1", + "level": { + "min": 0.23541396103896103, + "max": 0.2354180194805195 + }, "related_data": {} } } @@ -19054,7 +22008,7 @@ { "文件操作": { "data": { - "uuid": "java-5-175", + "uuid": "java-5-177", "seg": [ [ [ @@ -19063,11 +22017,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2354180194805195, + "max": 0.23542207792207792 + }, "related_data": { "qa": { "data_id": [ - "13_1074382_1279791" + "13_1074382_1279791@13", + "13_217008_164816@13" ] } } @@ -19077,7 +22035,7 @@ { "文件夹操作": { "data": { - "uuid": "java-5-176", + "uuid": "java-5-178", "seg": [ [ [ @@ -19086,25 +22044,39 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.23542207792207792, + "max": 0.23542613636363638 + }, + "related_data": { + "qa": { + "data_id": [ + "13_7405000_53354158@13" + ] + } + } } } }, { "目录列表器": { "data": { - "uuid": "java-5-177", + "uuid": "java-5-179", "seg": [ [ [ "目录", "列表", - "器" + "器", + "目录列表", + "列表器" ] ] ], - "level": "1", + "level": { + "min": 0.23542613636363638, + "max": 0.2354301948051948 + }, "related_data": {} } } @@ -19112,16 +22084,20 @@ { "目录实用工具": { "data": { - "uuid": "java-5-178", + "uuid": "java-5-180", "seg": [ [ [ "目录", - "实用工具" + "实用工具", + "目录实用工具" ] ] ], - "level": "1", + "level": { + "min": 0.2354301948051948, + "max": 0.23543425324675327 + }, "related_data": {} } } @@ -19129,7 +22105,7 @@ { "目录的检查及创建": { "data": { - "uuid": "java-5-179", + "uuid": "java-5-181", "seg": [ [ [ @@ -19141,7 +22117,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23543425324675327, + "max": 0.2354383116883117 + }, "related_data": {} } } @@ -19149,7 +22128,7 @@ { "文件的创建与删除": { "data": { - "uuid": "java-5-180", + "uuid": "java-5-182", "seg": [ [ [ @@ -19161,15 +22140,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2354383116883117, + "max": 0.23544237012987015 + }, "related_data": { "qa": { "data_id": [ - "13_377908_408655", - "13_7425758_53387462", - "13_182627_68791", - "13_696156_579489", - "13_383567_419045" + "13_377908_408655@13", + "13_7425758_53387462@13", + "13_182627_68791@13", + "13_696156_579489@13", + "13_383567_419045@13" ] } } @@ -19179,24 +22161,28 @@ { "获取文件信息": { "data": { - "uuid": "java-5-181", + "uuid": "java-5-183", "seg": [ [ [ "获取", "文件", - "信息" + "信息", + "文件信息" ] ] ], - "level": "1", + "level": { + "min": 0.23544237012987015, + "max": 0.23544642857142858 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-349", + "uuid": "java-4-351", "seg": [ [ [ @@ -19205,7 +22191,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23540178571428572, + "max": 0.23544642857142858 + }, "related_data": {} } } @@ -19213,7 +22202,7 @@ { "RandomAccessFile": { "data": { - "uuid": "java-4-350", + "uuid": "java-4-352", "seg": [ [ [ @@ -19221,13 +22210,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23544642857142858, + "max": 0.23549107142857142 + }, "related_data": { "qa": { "data_id": [ - "13_261223_273948", - "13_661945_477443", - "13_352419_362789" + "13_261223_273948@13", + "13_661945_477443@13", + "13_352419_362789@13" ] } } @@ -19240,7 +22232,7 @@ { "寻找类": { "data": { - "uuid": "java-5-182", + "uuid": "java-5-184", "seg": [ [ [ @@ -19249,7 +22241,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23549107142857142, + "max": 0.23550595238095237 + }, "related_data": {} } } @@ -19257,7 +22252,7 @@ { "序列化的控制": { "data": { - "uuid": "java-5-183", + "uuid": "java-5-185", "seg": [ [ [ @@ -19266,13 +22261,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23550595238095237, + "max": 0.23552083333333335 + }, "related_data": { "qa": { "data_id": [ - "13_763963_822586", - "13_991263_1162799", - "13_647971_453389" + "13_763963_822586@13", + "13_991263_1162799@13", + "13_647971_453389@13" ] } } @@ -19282,7 +22280,7 @@ { "使用“持久性”": { "data": { - "uuid": "java-5-184", + "uuid": "java-5-186", "seg": [ [ [ @@ -19290,23 +22288,30 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23552083333333335, + "max": 0.2355357142857143 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-351", + "uuid": "java-4-353", "seg": [ [ [ "对象", - "序列化" + "序列化", + "对象序列化" ] ] ], - "level": "1", + "level": { + "min": 0.23549107142857142, + "max": 0.2355357142857143 + }, "related_data": {} } } @@ -19317,7 +22322,7 @@ { "NIO概述": { "data": { - "uuid": "java-5-185", + "uuid": "java-5-187", "seg": [ [ [ @@ -19326,16 +22331,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2355357142857143, + "max": 0.23554129464285714 + }, "related_data": { "qa": { "data_id": [ - "13_746597_796345", - "13_184654_75752", - "13_345035_348871", - "13_229220_196576", - "13_383669_419320", - "13_746422_795891" + "13_746597_796345@13", + "13_184654_75752@13", + "13_345035_348871@13", + "13_229220_196576@13", + "13_383669_419320@13", + "13_746422_795891@13" ] } } @@ -19345,7 +22353,7 @@ { "Buffer(缓冲器)": { "data": { - "uuid": "java-5-186", + "uuid": "java-5-188", "seg": [ [ [ @@ -19354,7 +22362,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23554129464285714, + "max": 0.235546875 + }, "related_data": {} } } @@ -19362,7 +22373,7 @@ { "Channel(通道)": { "data": { - "uuid": "java-5-187", + "uuid": "java-5-189", "seg": [ [ [ @@ -19371,22 +22382,18 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_7432182_53401164", - "13_1055188_1253690" - ] - } - } + "level": { + "min": 0.235546875, + "max": 0.23555245535714286 + }, + "related_data": {} } } }, { "Java新IO概述": { "data": { - "uuid": "java-5-188", + "uuid": "java-5-190", "seg": [ [ [ @@ -19396,18 +22403,21 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23555245535714286, + "max": 0.2355580357142857 + }, "related_data": { "qa": { "data_id": [ - "13_261245_272892", - "13_977943_1136626", - "13_346508_351806", - "13_7402597_53350640", - "13_226885_190165", - "13_231038_201665", - "13_7404275_53353092", - "13_908913_1044115" + "13_261245_272892@13", + "13_977943_1136626@13", + "13_346508_351806@13", + "13_7402597_53350640@13", + "13_226885_190165@13", + "13_231038_201665@13", + "13_7404275_53353092@13", + "13_908913_1044115@13" ] } } @@ -19417,7 +22427,7 @@ { "使用Buffer": { "data": { - "uuid": "java-5-189", + "uuid": "java-5-191", "seg": [ [ [ @@ -19425,7 +22435,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2355580357142857, + "max": 0.23556361607142856 + }, "related_data": {} } } @@ -19433,7 +22446,7 @@ { "使用Channel": { "data": { - "uuid": "java-5-190", + "uuid": "java-5-192", "seg": [ [ [ @@ -19441,15 +22454,25 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.23556361607142856, + "max": 0.23556919642857144 + }, + "related_data": { + "qa": { + "data_id": [ + "13_7432182_53401164@13", + "13_1055188_1253690@13" + ] + } + } } } }, { "字符集和Charset": { "data": { - "uuid": "java-5-191", + "uuid": "java-5-193", "seg": [ [ [ @@ -19460,12 +22483,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23556919642857144, + "max": 0.23557477678571428 + }, "related_data": { "qa": { "data_id": [ - "13_1056806_1253857", - "13_196442_108475" + "13_1056806_1253857@13", + "13_196442_108475@13" ] } } @@ -19475,7 +22501,7 @@ { "文件锁": { "data": { - "uuid": "java-5-192", + "uuid": "java-5-194", "seg": [ [ [ @@ -19484,14 +22510,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23557477678571428, + "max": 0.23558035714285713 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-352", + "uuid": "java-4-354", "seg": [ [ [ @@ -19499,7 +22528,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2355357142857143, + "max": 0.23558035714285713 + }, "related_data": {} } } @@ -19510,7 +22542,7 @@ { "Path接口": { "data": { - "uuid": "java-5-193", + "uuid": "java-5-195", "seg": [ [ [ @@ -19519,7 +22551,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23558035714285713, + "max": 0.23560267857142858 + }, "related_data": {} } } @@ -19527,24 +22562,28 @@ { "Files工具类": { "data": { - "uuid": "java-5-194", + "uuid": "java-5-196", "seg": [ [ [ "files", "工具", - "类" + "类", + "工具类" ] ] ], - "level": "1", + "level": { + "min": 0.23560267857142858, + "max": 0.235625 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-353", + "uuid": "java-4-355", "seg": [ [ [ @@ -19552,14 +22591,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23558035714285713, + "max": 0.235625 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-255", + "uuid": "java-3-248", "seg": [ [ [ @@ -19569,7 +22611,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2353125, + "max": 0.235625 + }, "related_data": {} } } @@ -19583,7 +22628,7 @@ { "Swing特点": { "data": { - "uuid": "java-5-195", + "uuid": "java-5-197", "seg": [ [ [ @@ -19591,11 +22636,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.235625, + "max": 0.23563988095238095 + }, "related_data": { "qa": { "data_id": [ - "13_664029_480760" + "13_664029_480760@13" ] } } @@ -19605,7 +22653,7 @@ { "Swing包": { "data": { - "uuid": "java-5-196", + "uuid": "java-5-198", "seg": [ [ [ @@ -19614,11 +22662,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23563988095238095, + "max": 0.23565476190476192 + }, "related_data": { "qa": { "data_id": [ - "13_741841_782609" + "13_741841_782609@13" ] } } @@ -19628,7 +22679,7 @@ { "常用Swing组件概述": { "data": { - "uuid": "java-5-197", + "uuid": "java-5-199", "seg": [ [ [ @@ -19638,14 +22689,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23565476190476192, + "max": 0.23566964285714287 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-354", + "uuid": "java-4-356", "seg": [ [ [ @@ -19654,7 +22708,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.235625, + "max": 0.23566964285714287 + }, "related_data": {} } } @@ -19665,7 +22722,7 @@ { "JFrame": { "data": { - "uuid": "java-5-198", + "uuid": "java-5-200", "seg": [ [ [ @@ -19673,19 +22730,22 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23566964285714287, + "max": 0.2356919642857143 + }, "related_data": { "qa": { "data_id": [ - "13_219475_170729", - "13_896364_1033545", - "13_194787_103320", - "13_383175_418448", - "13_183663_71393", - "13_772405_835580", - "13_191226_92723", - "13_7465177_53451933", - "13_233000_207832" + "13_219475_170729@13", + "13_896364_1033545@13", + "13_194787_103320@13", + "13_383175_418448@13", + "13_183663_71393@13", + "13_772405_835580@13", + "13_191226_92723@13", + "13_7465177_53451933@13", + "13_233000_207832@13" ] } } @@ -19695,7 +22755,7 @@ { "JDialog": { "data": { - "uuid": "java-5-199", + "uuid": "java-5-201", "seg": [ [ [ @@ -19703,12 +22763,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2356919642857143, + "max": 0.2357142857142857 + }, "related_data": { "qa": { "data_id": [ - "13_7452517_53434496", - "13_352697_363905" + "13_7452517_53434496@13", + "13_352697_363905@13" ] } } @@ -19717,17 +22780,21 @@ } ], "data": { - "uuid": "java-4-355", + "uuid": "java-4-357", "seg": [ [ [ "swing", "顶级", - "容器" + "容器", + "顶级容器" ] ] ], - "level": "1", + "level": { + "min": 0.23566964285714287, + "max": 0.2357142857142857 + }, "related_data": {} } } @@ -19738,7 +22805,7 @@ { "BorderLayout": { "data": { - "uuid": "java-5-200", + "uuid": "java-5-202", "seg": [ [ [ @@ -19746,7 +22813,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2357142857142857, + "max": 0.23571691176470588 + }, "related_data": {} } } @@ -19754,7 +22824,7 @@ { "FlowLayout": { "data": { - "uuid": "java-5-201", + "uuid": "java-5-203", "seg": [ [ [ @@ -19762,7 +22832,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23571691176470588, + "max": 0.23571953781512606 + }, "related_data": {} } } @@ -19770,7 +22843,7 @@ { "GridLayout": { "data": { - "uuid": "java-5-202", + "uuid": "java-5-204", "seg": [ [ [ @@ -19778,11 +22851,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23571953781512606, + "max": 0.2357221638655462 + }, "related_data": { "qa": { "data_id": [ - "13_374629_403685" + "13_374629_403685@13" ] } } @@ -19792,18 +22868,23 @@ { "FlowLayout流布局管理器": { "data": { - "uuid": "java-5-203", + "uuid": "java-5-205", "seg": [ [ [ "flowlayout", "流", "布局", - "管理器" + "管理器", + "流布局", + "布局管理器" ] ] ], - "level": "2", + "level": { + "min": 0.2357221638655462, + "max": 0.23572478991596638 + }, "related_data": {} } } @@ -19811,18 +22892,23 @@ { "BorderLayout边界布局管理器": { "data": { - "uuid": "java-5-204", + "uuid": "java-5-206", "seg": [ [ [ "borderlayout", "边界", "布局", - "管理器" + "管理器", + "边界布局", + "布局管理器" ] ] ], - "level": "2", + "level": { + "min": 0.23572478991596638, + "max": 0.23572741596638655 + }, "related_data": {} } } @@ -19830,36 +22916,72 @@ { "GridLayout网格布局管理器": { "data": { - "uuid": "java-5-205", + "uuid": "java-5-207", "seg": [ [ [ "gridlayout", "网格", "布局", - "管理器" + "管理器", + "网格布局", + "布局管理器" ] ] ], - "level": "2", + "level": { + "min": 0.23572741596638655, + "max": 0.23573004201680672 + }, "related_data": {} } } }, + { + "绝对布局": { + "data": { + "uuid": "java-5-208", + "seg": [ + [ + [ + "布局", + "绝对布局" + ] + ] + ], + "level": { + "min": 0.23573004201680672, + "max": 0.2357326680672269 + }, + "related_data": { + "qa": { + "data_id": [ + "13_7420383_53378422@13" + ] + } + } + } + } + }, { "流布局管理器": { "data": { - "uuid": "java-5-206", + "uuid": "java-5-209", "seg": [ [ [ "流", "布局", - "管理器" + "管理器", + "流布局", + "布局管理器" ] ] ], - "level": "2", + "level": { + "min": 0.2357326680672269, + "max": 0.23573529411764707 + }, "related_data": {} } } @@ -19867,17 +22989,22 @@ { "边界布局管理器": { "data": { - "uuid": "java-5-207", + "uuid": "java-5-210", "seg": [ [ [ "边界", "布局", - "管理器" + "管理器", + "边界布局", + "布局管理器" ] ] ], - "level": "2", + "level": { + "min": 0.23573529411764707, + "max": 0.23573792016806722 + }, "related_data": {} } } @@ -19885,17 +23012,44 @@ { "网格布局管理器": { "data": { - "uuid": "java-5-208", + "uuid": "java-5-211", + "seg": [ + [ + [ + "网格", + "布局", + "管理器", + "网格布局", + "布局管理器" + ] + ] + ], + "level": { + "min": 0.23573792016806722, + "max": 0.2357405462184874 + }, + "related_data": {} + } + } + }, + { + "网格组布局管理器": { + "data": { + "uuid": "java-5-212", "seg": [ [ [ "网格", "布局", - "管理器" + "管理器", + "布局管理器" ] ] ], - "level": "2", + "level": { + "min": 0.2357405462184874, + "max": 0.23574317226890756 + }, "related_data": {} } } @@ -19903,21 +23057,25 @@ { "FlowLayout布局管理器": { "data": { - "uuid": "java-5-209", + "uuid": "java-5-213", "seg": [ [ [ "flowlayout", "布局", - "管理器" + "管理器", + "布局管理器" ] ] ], - "level": "2", + "level": { + "min": 0.23574317226890756, + "max": 0.23574579831932774 + }, "related_data": { "qa": { "data_id": [ - "13_7459412_53444324" + "13_7459412_53444324@13" ] } } @@ -19927,22 +23085,27 @@ { "BorderLayout布局管理器": { "data": { - "uuid": "java-5-210", + "uuid": "java-5-214", "seg": [ [ [ "borderlayout", "布局", - "管理器" + "管理器", + "布局管理器" ] ] ], - "level": "2", + "level": { + "min": 0.23574579831932774, + "max": 0.2357484243697479 + }, "related_data": { "qa": { "data_id": [ - "13_744218_789873", - "13_375481_404872" + "13_745675_793961@13", + "13_744218_789873@13", + "13_375481_404872@13" ] } } @@ -19952,17 +23115,21 @@ { "GridLayout布局管理器": { "data": { - "uuid": "java-5-211", + "uuid": "java-5-215", "seg": [ [ [ "gridlayout", "布局", - "管理器" + "管理器", + "布局管理器" ] ] ], - "level": "2", + "level": { + "min": 0.2357484243697479, + "max": 0.23575105042016808 + }, "related_data": {} } } @@ -19970,17 +23137,21 @@ { "GridBagLayout布局管理器": { "data": { - "uuid": "java-5-212", + "uuid": "java-5-216", "seg": [ [ [ "gridbaglayout", "布局", - "管理器" + "管理器", + "布局管理器" ] ] ], - "level": "2", + "level": { + "min": 0.23575105042016808, + "max": 0.23575367647058823 + }, "related_data": {} } } @@ -19988,17 +23159,21 @@ { "CardLayout布局管理器": { "data": { - "uuid": "java-5-213", + "uuid": "java-5-217", "seg": [ [ [ "cardlayout", "布局", - "管理器" + "管理器", + "布局管理器" ] ] ], - "level": "2", + "level": { + "min": 0.23575367647058823, + "max": 0.2357563025210084 + }, "related_data": {} } } @@ -20006,33 +23181,41 @@ { "BoxLayout布局管理器": { "data": { - "uuid": "java-5-214", + "uuid": "java-5-218", "seg": [ [ [ "boxlayout", "布局", - "管理器" + "管理器", + "布局管理器" ] ] ], - "level": "2", + "level": { + "min": 0.2357563025210084, + "max": 0.23575892857142858 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-356", + "uuid": "java-4-358", "seg": [ [ [ "布局", - "管理器" + "管理器", + "布局管理器" ] ] ], - "level": "2", + "level": { + "min": 0.2357142857142857, + "max": 0.23575892857142858 + }, "related_data": {} } } @@ -20043,7 +23226,7 @@ { "事件处理机制": { "data": { - "uuid": "java-5-215", + "uuid": "java-5-219", "seg": [ [ [ @@ -20052,7 +23235,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23575892857142858, + "max": 0.23576236263736264 + }, "related_data": {} } } @@ -20060,7 +23246,7 @@ { "Swing常用事件处理": { "data": { - "uuid": "java-5-216", + "uuid": "java-5-220", "seg": [ [ [ @@ -20069,11 +23255,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23576236263736264, + "max": 0.2357657967032967 + }, "related_data": { "qa": { "data_id": [ - "13_3517_4472" + "13_3517_4472@13" ] } } @@ -20083,18 +23272,22 @@ { "Java事件模型的流程": { "data": { - "uuid": "java-5-217", + "uuid": "java-5-221", "seg": [ [ [ "java", "事件", "模型", - "流程" + "流程", + "事件模型" ] ] ], - "level": "2", + "level": { + "min": 0.2357657967032967, + "max": 0.23576923076923076 + }, "related_data": {} } } @@ -20102,16 +23295,20 @@ { "事件适配器": { "data": { - "uuid": "java-5-218", + "uuid": "java-5-222", "seg": [ [ [ "事件", - "适配器" + "适配器", + "事件适配器" ] ] ], - "level": "2", + "level": { + "min": 0.23576923076923076, + "max": 0.23577266483516485 + }, "related_data": {} } } @@ -20119,17 +23316,21 @@ { "使用内部类实现监听器": { "data": { - "uuid": "java-5-219", + "uuid": "java-5-223", "seg": [ [ [ "内部", "类", - "监听器" + "监听器", + "内部类" ] ] ], - "level": "1", + "level": { + "min": 0.23577266483516485, + "max": 0.2357760989010989 + }, "related_data": {} } } @@ -20137,7 +23338,7 @@ { "使用外部类实现监听器": { "data": { - "uuid": "java-5-220", + "uuid": "java-5-224", "seg": [ [ [ @@ -20146,7 +23347,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2357760989010989, + "max": 0.23577953296703297 + }, "related_data": {} } } @@ -20154,17 +23358,22 @@ { "类本身作为事件监听器类": { "data": { - "uuid": "java-5-221", + "uuid": "java-5-225", "seg": [ [ [ "类", "事件", - "监听器" + "监听器", + "事件监听器", + "监听器类" ] ] ], - "level": "2", + "level": { + "min": 0.23577953296703297, + "max": 0.23578296703296703 + }, "related_data": {} } } @@ -20172,18 +23381,22 @@ { "匿名内部类实现监听器": { "data": { - "uuid": "java-5-222", + "uuid": "java-5-226", "seg": [ [ [ "匿名", "内部", "类", - "监听器" + "监听器", + "内部类" ] ] ], - "level": "1", + "level": { + "min": 0.23578296703296703, + "max": 0.2357864010989011 + }, "related_data": {} } } @@ -20191,7 +23404,7 @@ { "基本事件处理概念": { "data": { - "uuid": "java-5-223", + "uuid": "java-5-227", "seg": [ [ [ @@ -20200,7 +23413,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2357864010989011, + "max": 0.23578983516483515 + }, "related_data": {} } } @@ -20208,7 +23424,7 @@ { "简洁地指定监听器": { "data": { - "uuid": "java-5-224", + "uuid": "java-5-228", "seg": [ [ [ @@ -20218,7 +23434,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23578983516483515, + "max": 0.23579326923076924 + }, "related_data": {} } } @@ -20226,16 +23445,20 @@ { "适配器类": { "data": { - "uuid": "java-5-225", + "uuid": "java-5-229", "seg": [ [ [ "适配器", - "类" + "类", + "适配器类" ] ] ], - "level": "1", + "level": { + "min": 0.23579326923076924, + "max": 0.2357967032967033 + }, "related_data": {} } } @@ -20243,7 +23466,7 @@ { "动作": { "data": { - "uuid": "java-5-226", + "uuid": "java-5-230", "seg": [ [ [ @@ -20251,7 +23474,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2357967032967033, + "max": 0.23580013736263736 + }, "related_data": {} } } @@ -20259,7 +23485,7 @@ { "AWT事件继承层次": { "data": { - "uuid": "java-5-227", + "uuid": "java-5-231", "seg": [ [ [ @@ -20269,14 +23495,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23580013736263736, + "max": 0.23580357142857142 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-357", + "uuid": "java-4-359", "seg": [ [ [ @@ -20284,7 +23513,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23575892857142858, + "max": 0.23580357142857142 + }, "related_data": {} } } @@ -20295,16 +23527,20 @@ { "面板组件": { "data": { - "uuid": "java-5-228", + "uuid": "java-5-232", "seg": [ [ [ "面板", - "组件" + "组件", + "面板组件" ] ] ], - "level": "1", + "level": { + "min": 0.23580357142857142, + "max": 0.2358110119047619 + }, "related_data": {} } } @@ -20315,22 +23551,26 @@ { "JTextField文本框组件": { "data": { - "uuid": "java-6-71", + "uuid": "java-6-72", "seg": [ [ [ "jtextfield", "文本框", - "组件" + "组件", + "文本框组件" ] ] ], - "level": "1", + "level": { + "min": 0.2358110119047619, + "max": 0.23581225198412697 + }, "related_data": { "qa": { "data_id": [ - "13_674049_505304", - "13_673391_501236" + "13_674049_505304@13", + "13_673391_501236@13" ] } } @@ -20340,7 +23580,7 @@ { "JPasswordField密码框组件": { "data": { - "uuid": "java-6-72", + "uuid": "java-6-73", "seg": [ [ [ @@ -20351,7 +23591,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23581225198412697, + "max": 0.23581349206349206 + }, "related_data": {} } } @@ -20359,18 +23602,23 @@ { "JTextArea文本域组件": { "data": { - "uuid": "java-6-73", + "uuid": "java-6-74", "seg": [ [ [ "jtextarea", "文本", "域", - "组件" + "组件", + "文本域", + "域组件" ] ] ], - "level": "2", + "level": { + "min": 0.23581349206349206, + "max": 0.23581473214285714 + }, "related_data": {} } } @@ -20378,21 +23626,25 @@ { "文本框组件": { "data": { - "uuid": "java-6-74", + "uuid": "java-6-75", "seg": [ [ [ "文本框", - "组件" + "组件", + "文本框组件" ] ] ], - "level": "1", + "level": { + "min": 0.23581473214285714, + "max": 0.2358159722222222 + }, "related_data": { "qa": { "data_id": [ - "13_351801_361624", - "13_7435138_53405678" + "13_351801_361624@13", + "13_7435138_53405678@13" ] } } @@ -20402,7 +23654,7 @@ { "密码框组件": { "data": { - "uuid": "java-6-75", + "uuid": "java-6-76", "seg": [ [ [ @@ -20412,7 +23664,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2358159722222222, + "max": 0.23581721230158728 + }, "related_data": {} } } @@ -20420,33 +23675,42 @@ { "文本域组件": { "data": { - "uuid": "java-6-76", + "uuid": "java-6-77", "seg": [ [ [ "文本", "域", - "组件" + "组件", + "文本域", + "域组件" ] ] ], - "level": "2", + "level": { + "min": 0.23581721230158728, + "max": 0.23581845238095236 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-229", + "uuid": "java-5-233", "seg": [ [ [ "文本", - "组件" + "组件", + "文本组件" ] ] ], - "level": "1", + "level": { + "min": 0.2358110119047619, + "max": 0.23581845238095236 + }, "related_data": {} } } @@ -20454,16 +23718,20 @@ { "标签组件": { "data": { - "uuid": "java-5-230", + "uuid": "java-5-234", "seg": [ [ [ "标签", - "组件" + "组件", + "标签组件" ] ] ], - "level": "1", + "level": { + "min": 0.23581845238095236, + "max": 0.23582589285714284 + }, "related_data": {} } } @@ -20474,23 +23742,27 @@ { "JButton按钮组件": { "data": { - "uuid": "java-6-77", + "uuid": "java-6-78", "seg": [ [ [ "jbutton", "按钮", - "组件" + "组件", + "按钮组件" ] ] ], - "level": "2", + "level": { + "min": 0.23582589285714284, + "max": 0.23582713293650792 + }, "related_data": { "qa": { "data_id": [ - "13_367166_392619", - "13_676116_513815", - "13_218359_168051" + "13_367166_392619@13", + "13_676116_513815@13", + "13_218359_168051@13" ] } } @@ -20500,22 +23772,26 @@ { "JRadioButton单选按钮组件": { "data": { - "uuid": "java-6-78", + "uuid": "java-6-79", "seg": [ [ [ "jradiobutton", "单选", "按钮", - "组件" + "组件", + "按钮组件" ] ] ], - "level": "2", + "level": { + "min": 0.23582713293650792, + "max": 0.235828373015873 + }, "related_data": { "qa": { "data_id": [ - "13_183459_70501" + "13_183459_70501@13" ] } } @@ -20525,17 +23801,21 @@ { "JCheckBox复选框组件": { "data": { - "uuid": "java-6-79", + "uuid": "java-6-80", "seg": [ [ [ "jcheckbox", "复选框", - "组件" + "组件", + "复选框组件" ] ] ], - "level": "2", + "level": { + "min": 0.235828373015873, + "max": 0.2358296130952381 + }, "related_data": {} } } @@ -20543,23 +23823,27 @@ { "提交按钮组件": { "data": { - "uuid": "java-6-80", + "uuid": "java-6-81", "seg": [ [ [ "提交", "按钮", - "组件" + "组件", + "按钮组件" ] ] ], - "level": "2", + "level": { + "min": 0.2358296130952381, + "max": 0.23583085317460317 + }, "related_data": { "qa": { "data_id": [ - "13_742248_783928", - "13_745114_792343", - "13_381328_414952" + "13_742248_783928@13", + "13_745114_792343@13", + "13_381328_414952@13" ] } } @@ -20569,17 +23853,21 @@ { "单选按钮组件": { "data": { - "uuid": "java-6-81", + "uuid": "java-6-82", "seg": [ [ [ "单选", "按钮", - "组件" + "组件", + "按钮组件" ] ] ], - "level": "2", + "level": { + "min": 0.23583085317460317, + "max": 0.23583209325396826 + }, "related_data": {} } } @@ -20587,27 +23875,31 @@ { "复选框组件": { "data": { - "uuid": "java-6-82", + "uuid": "java-6-83", "seg": [ [ [ "复选框", - "组件" + "组件", + "复选框组件" ] ] ], - "level": "2", + "level": { + "min": 0.23583209325396826, + "max": 0.23583333333333334 + }, "related_data": { "qa": { "data_id": [ - "13_208105_143582", - "13_7457148_53441318", - "13_746462_796005", - "13_27928_7782", - "13_238632_221698", - "13_668435_488924", - "13_201898_125748", - "13_1096772_1309375" + "13_208105_143582@13", + "13_7457148_53441318@13", + "13_746462_796005@13", + "13_27928_7782@13", + "13_238632_221698@13", + "13_668435_488924@13", + "13_201898_125748@13", + "13_1096772_1309375@13" ] } } @@ -20616,16 +23908,20 @@ } ], "data": { - "uuid": "java-5-231", + "uuid": "java-5-235", "seg": [ [ [ "按钮", - "组件" + "组件", + "按钮组件" ] ] ], - "level": "1", + "level": { + "min": 0.23582589285714284, + "max": 0.23583333333333334 + }, "related_data": {} } } @@ -20633,20 +23929,24 @@ { "下拉框组件": { "data": { - "uuid": "java-5-232", + "uuid": "java-5-236", "seg": [ [ [ "下拉框", - "组件" + "组件", + "下拉框组件" ] ] ], - "level": "1", + "level": { + "min": 0.23583333333333334, + "max": 0.2358407738095238 + }, "related_data": { "qa": { "data_id": [ - "13_382129_416405" + "13_382129_416405@13" ] } } @@ -20656,23 +23956,27 @@ { "菜单组件": { "data": { - "uuid": "java-5-233", + "uuid": "java-5-237", "seg": [ [ [ "菜单", - "组件" + "组件", + "菜单组件" ] ] ], - "level": "1", + "level": { + "min": 0.2358407738095238, + "max": 0.23584821428571429 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-358", + "uuid": "java-4-360", "seg": [ [ [ @@ -20681,7 +23985,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23580357142857142, + "max": 0.23584821428571429 + }, "related_data": {} } } @@ -20692,7 +23999,7 @@ { "案例分析": { "data": { - "uuid": "java-5-234", + "uuid": "java-5-238", "seg": [ [ [ @@ -20701,7 +24008,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23584821428571429, + "max": 0.2358705357142857 + }, "related_data": {} } } @@ -20709,7 +24019,7 @@ { "案例实现": { "data": { - "uuid": "java-5-235", + "uuid": "java-5-239", "seg": [ [ [ @@ -20717,14 +24027,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2358705357142857, + "max": 0.23589285714285713 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-359", + "uuid": "java-4-361", "seg": [ [ [ @@ -20736,7 +24049,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23584821428571429, + "max": 0.23589285714285713 + }, "related_data": {} } } @@ -20747,7 +24063,7 @@ { "JavaFX概述": { "data": { - "uuid": "java-5-236", + "uuid": "java-5-240", "seg": [ [ [ @@ -20756,7 +24072,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23589285714285713, + "max": 0.23590401785714285 + }, "related_data": {} } } @@ -20764,7 +24083,7 @@ { "JavaFX开发环境配置": { "data": { - "uuid": "java-5-237", + "uuid": "java-5-241", "seg": [ [ [ @@ -20775,11 +24094,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23590401785714285, + "max": 0.23591517857142857 + }, "related_data": { "qa": { "data_id": [ - "13_7410432_53361317" + "13_7410432_53361317@13" ] } } @@ -20789,17 +24111,21 @@ { "JavaFX基础入门": { "data": { - "uuid": "java-5-238", + "uuid": "java-5-242", "seg": [ [ [ "javafx", "基础", - "入门" + "入门", + "基础入门" ] ] ], - "level": "1", + "level": { + "min": 0.23591517857142857, + "max": 0.23592633928571427 + }, "related_data": {} } } @@ -20807,59 +24133,65 @@ { "JavaFX可视化管理工具": { "data": { - "uuid": "java-5-239", + "uuid": "java-5-243", "seg": [ [ [ "javafx", "可视化", - "管理工具" + "管理工具", + "可视化管理工具" ] ] ], - "level": "1", + "level": { + "min": 0.23592633928571427, + "max": 0.2359375 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-360", + "uuid": "java-4-362", "seg": [ [ [ "javafx", "图形用户界面", - "工具" + "工具", + "图形用户界面工具" ] ] ], - "level": "1", + "level": { + "min": 0.23589285714285713, + "max": 0.2359375 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-256", + "uuid": "java-3-249", "seg": [ [ [ "gui", "图形", "用户", - "接口" + "接口", + "图形用户" ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_673747_502223" - ] - } - } + "level": { + "min": 0.235625, + "max": 0.2359375 + }, + "related_data": {} } } }, @@ -20869,7 +24201,7 @@ { "什么是JDBC": { "data": { - "uuid": "java-4-361", + "uuid": "java-4-363", "seg": [ [ [ @@ -20877,7 +24209,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2359375, + "max": 0.236015625 + }, "related_data": {} } } @@ -20888,7 +24223,7 @@ { "Driver接口": { "data": { - "uuid": "java-5-240", + "uuid": "java-5-244", "seg": [ [ [ @@ -20897,12 +24232,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.236015625, + "max": 0.23602864583333333 + }, "related_data": { "qa": { "data_id": [ - "13_388848_430022", - "13_765747_824825" + "13_388848_430022@13", + "13_765747_824825@13" ] } } @@ -20912,7 +24250,7 @@ { "DriverManager类": { "data": { - "uuid": "java-5-241", + "uuid": "java-5-245", "seg": [ [ [ @@ -20921,7 +24259,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23602864583333333, + "max": 0.23604166666666668 + }, "related_data": {} } } @@ -20929,7 +24270,7 @@ { "Connection接口": { "data": { - "uuid": "java-5-242", + "uuid": "java-5-246", "seg": [ [ [ @@ -20938,20 +24279,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23604166666666668, + "max": 0.2360546875 + }, "related_data": { "qa": { "data_id": [ - "13_1084957_1291375", - "13_364313_385754", - "13_195446_105208", - "13_1051146_1248511", - "13_635720_441298", - "13_776611_842003", - "13_242864_230852", - "13_249910_246350", - "13_7441957_53418628", - "13_7404785_53353771" + "13_1084957_1291375@13", + "13_364313_385754@13", + "13_195446_105208@13", + "13_1051146_1248511@13", + "13_635720_441298@13", + "13_776611_842003@13", + "13_242864_230852@13", + "13_249910_246350@13", + "13_7441957_53418628@13", + "13_7404785_53353771@13" ] } } @@ -20961,7 +24305,7 @@ { "Statement接口": { "data": { - "uuid": "java-5-243", + "uuid": "java-5-247", "seg": [ [ [ @@ -20970,12 +24314,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2360546875, + "max": 0.23606770833333332 + }, "related_data": { "qa": { "data_id": [ - "13_343301_345304", - "13_7397005_53341418" + "13_343301_345304@13", + "13_7397005_53341418@13" ] } } @@ -20985,7 +24332,7 @@ { "PreparedStatement接口": { "data": { - "uuid": "java-5-244", + "uuid": "java-5-248", "seg": [ [ [ @@ -20994,16 +24341,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23606770833333332, + "max": 0.23608072916666667 + }, "related_data": { "qa": { "data_id": [ - "13_334704_327775", - "13_710287_668443", - "13_383202_418622", - "13_384078_420103", - "13_180093_65893", - "13_668187_488166" + "13_334704_327775@13", + "13_710287_668443@13", + "13_383202_418622@13", + "13_384078_420103@13", + "13_180093_65893@13", + "13_668187_488166@13" ] } } @@ -21013,7 +24363,7 @@ { "ResultSet接口": { "data": { - "uuid": "java-5-245", + "uuid": "java-5-249", "seg": [ [ [ @@ -21022,15 +24372,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23608072916666667, + "max": 0.23609375 + }, "related_data": { "qa": { "data_id": [ - "13_242249_229439", - "13_173493_52462", - "13_667538_487103", - "13_11386_5423", - "13_215014_160451" + "13_242249_229439@13", + "13_173493_52462@13", + "13_667538_487103@13", + "13_11386_5423@13", + "13_215014_160451@13" ] } } @@ -21039,7 +24392,7 @@ } ], "data": { - "uuid": "java-4-362", + "uuid": "java-4-364", "seg": [ [ [ @@ -21048,7 +24401,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.236015625, + "max": 0.23609375 + }, "related_data": {} } } @@ -21059,22 +24415,26 @@ { "JDBC的编程步骤": { "data": { - "uuid": "java-5-246", + "uuid": "java-5-250", "seg": [ [ [ "jdbc", "编程", - "步骤" + "步骤", + "编程步骤" ] ] ], - "level": "1", + "level": { + "min": 0.23609375, + "max": 0.23613281249999998 + }, "related_data": { "qa": { "data_id": [ - "13_222981_180352", - "13_7434624_53405102" + "13_222981_180352@13", + "13_7434624_53405102@13" ] } } @@ -21084,7 +24444,7 @@ { "实现第一个JDBC程序": { "data": { - "uuid": "java-5-247", + "uuid": "java-5-251", "seg": [ [ [ @@ -21093,20 +24453,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23613281249999998, + "max": 0.23617187499999998 + }, "related_data": { "qa": { "data_id": [ - "13_7445105_53423654", - "13_7402732_53351637", - "13_648660_453328", - "13_391255_433769", - "13_7438474_53411869", - "13_7441624_53418064", - "13_378249_409298", - "13_7446117_53425501", - "13_1048665_1246158", - "13_374633_403653" + "13_7445105_53423654@13", + "13_7402732_53351637@13", + "13_648660_453328@13", + "13_391255_433769@13", + "13_7438474_53411869@13", + "13_7441624_53418064@13", + "13_378249_409298@13", + "13_7446117_53425501@13", + "13_1048665_1246158@13", + "13_374633_403653@13" ] } } @@ -21115,7 +24478,7 @@ } ], "data": { - "uuid": "java-4-363", + "uuid": "java-4-365", "seg": [ [ [ @@ -21124,7 +24487,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23609375, + "max": 0.23617187499999998 + }, "related_data": {} } } @@ -21132,7 +24498,7 @@ { "案例——使用JDBC实现QQ登录": { "data": { - "uuid": "java-4-364", + "uuid": "java-4-366", "seg": [ [ [ @@ -21143,19 +24509,22 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23617187499999998, + "max": 0.23625 + }, "related_data": { "qa": { "data_id": [ - "13_3573_4418", - "13_682690_537622", - "13_178817_63493", - "13_390602_432259", - "13_206341_138364", - "13_376435_406348", - "13_675854_511963", - "13_1060501_1258209", - "13_7440972_53416806" + "13_3573_4418@13", + "13_682690_537622@13", + "13_178817_63493@13", + "13_390602_432259@13", + "13_206341_138364@13", + "13_376435_406348@13", + "13_675854_511963@13", + "13_1060501_1258209@13", + "13_7440972_53416806@13" ] } } @@ -21164,7 +24533,7 @@ } ], "data": { - "uuid": "java-3-257", + "uuid": "java-3-250", "seg": [ [ [ @@ -21172,11 +24541,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2359375, + "max": 0.23625 + }, "related_data": { "qa": { "data_id": [ - "13_713098_704270" + "13_713098_704270@13" ] } } @@ -21192,16 +24564,20 @@ { "网络通信协议": { "data": { - "uuid": "java-5-248", + "uuid": "java-5-252", "seg": [ [ [ "网络通信", - "协议" + "协议", + "网络通信协议" ] ] ], - "level": "2", + "level": { + "min": 0.23625, + "max": 0.23625868055555554 + }, "related_data": {} } } @@ -21209,7 +24585,7 @@ { "IP地址和端口号": { "data": { - "uuid": "java-5-249", + "uuid": "java-5-253", "seg": [ [ [ @@ -21220,30 +24596,18 @@ ] ] ], - "level": "2", - "related_data": { - "qa": { - "data_id": [ - "13_243288_231936", - "13_7443225_53421007", - "13_1101455_1315948", - "13_380814_414056", - "13_159444_24936", - "13_7445779_53424609", - "13_202634_127897", - "13_678619_523173", - "13_26105_7165", - "13_28034_7818" - ] - } - } + "level": { + "min": 0.23625868055555554, + "max": 0.2362673611111111 + }, + "related_data": {} } } }, { "InetAddress": { "data": { - "uuid": "java-5-250", + "uuid": "java-5-254", "seg": [ [ [ @@ -21251,7 +24615,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2362673611111111, + "max": 0.23627604166666666 + }, "related_data": {} } } @@ -21259,7 +24626,7 @@ { "UDP与TCP协议": { "data": { - "uuid": "java-5-251", + "uuid": "java-5-255", "seg": [ [ [ @@ -21271,25 +24638,40 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23627604166666666, + "max": 0.23628472222222222 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-365", + "uuid": "java-4-367", "seg": [ [ [ "网络", "编程", - "基础" + "基础", + "网络编程", + "编程基础" ] ] ], - "level": "2", - "related_data": {} + "level": { + "min": 0.23625, + "max": 0.23628472222222222 + }, + "related_data": { + "qa": { + "data_id": [ + "13_161640_31721@13", + "13_7447395_53427274@13" + ] + } + } } } }, @@ -21299,7 +24681,7 @@ { "UDP通信简介": { "data": { - "uuid": "java-5-252", + "uuid": "java-5-256", "seg": [ [ [ @@ -21309,12 +24691,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23628472222222222, + "max": 0.23629166666666665 + }, "related_data": { "qa": { "data_id": [ - "13_161873_32139", - "13_225974_203337" + "13_161873_32139@13", + "13_225974_203337@13" ] } } @@ -21324,7 +24709,7 @@ { "DatagramPacket": { "data": { - "uuid": "java-5-253", + "uuid": "java-5-257", "seg": [ [ [ @@ -21332,7 +24717,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23629166666666665, + "max": 0.2362986111111111 + }, "related_data": {} } } @@ -21340,7 +24728,7 @@ { "DatagramSocket": { "data": { - "uuid": "java-5-254", + "uuid": "java-5-258", "seg": [ [ [ @@ -21348,11 +24736,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2362986111111111, + "max": 0.23630555555555555 + }, "related_data": { "qa": { "data_id": [ - "13_182665_68880" + "13_182665_68880@13" ] } } @@ -21362,17 +24753,21 @@ { "UDP网络程序": { "data": { - "uuid": "java-5-255", + "uuid": "java-5-259", "seg": [ [ [ "udp", "网络", - "程序" + "程序", + "网络程序" ] ] ], - "level": "2", + "level": { + "min": 0.23630555555555555, + "max": 0.2363125 + }, "related_data": {} } } @@ -21380,25 +24775,29 @@ { "UDP案例——聊天程序": { "data": { - "uuid": "java-5-256", + "uuid": "java-5-260", "seg": [ [ [ "udp", "案例", "聊天", - "程序" + "程序", + "聊天程序" ] ] ], - "level": "2", + "level": { + "min": 0.2363125, + "max": 0.23631944444444444 + }, "related_data": { "qa": { "data_id": [ - "13_234035_210386", - "13_752604_806736", - "13_350450_359043", - "13_2340_3584" + "13_234035_210386@13", + "13_752604_806736@13", + "13_350450_359043@13", + "13_2340_3584@13" ] } } @@ -21407,7 +24806,7 @@ } ], "data": { - "uuid": "java-4-366", + "uuid": "java-4-368", "seg": [ [ [ @@ -21416,7 +24815,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23628472222222222, + "max": 0.23631944444444444 + }, "related_data": {} } } @@ -21427,7 +24829,7 @@ { "TCP通信简介": { "data": { - "uuid": "java-5-257", + "uuid": "java-5-261", "seg": [ [ [ @@ -21437,17 +24839,20 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23631944444444444, + "max": 0.2363252314814815 + }, "related_data": { "qa": { "data_id": [ - "13_7444577_53423332", - "13_344954_348651", - "13_7427239_53391345", - "13_162336_33216", - "13_829123_925274", - "13_243870_232807", - "13_1096521_1309194" + "13_7444577_53423332@13", + "13_344954_348651@13", + "13_7427239_53391345@13", + "13_162336_33216@13", + "13_829123_925274@13", + "13_243870_232807@13", + "13_1096521_1309194@13" ] } } @@ -21457,7 +24862,7 @@ { "ServerSocket": { "data": { - "uuid": "java-5-258", + "uuid": "java-5-262", "seg": [ [ [ @@ -21465,13 +24870,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2363252314814815, + "max": 0.2363310185185185 + }, "related_data": { "qa": { "data_id": [ - "13_207283_141117", - "13_334563_327601", - "13_238206_219823" + "13_207283_141117@13", + "13_334563_327601@13", + "13_238206_219823@13" ] } } @@ -21481,7 +24889,7 @@ { "Socket": { "data": { - "uuid": "java-5-259", + "uuid": "java-5-263", "seg": [ [ [ @@ -21489,20 +24897,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2363310185185185, + "max": 0.23633680555555556 + }, "related_data": { "qa": { "data_id": [ - "13_231645_203103", - "13_229700_198099", - "13_162233_32933", - "13_237105_216821", - "13_1052370_1249912", - "13_656074_469369", - "13_242946_230982", - "13_679590_527014", - "13_7433893_53404239", - "13_222337_178127" + "13_231645_203103@13", + "13_229700_198099@13", + "13_162233_32933@13", + "13_237105_216821@13", + "13_1052370_1249912@13", + "13_656074_469369@13", + "13_242946_230982@13", + "13_679590_527014@13", + "13_7433893_53404239@13", + "13_222337_178127@13" ] } } @@ -21512,21 +24923,25 @@ { "简单的TCP网络程序": { "data": { - "uuid": "java-5-260", + "uuid": "java-5-264", "seg": [ [ [ "tcp", "网络", - "程序" + "程序", + "网络程序" ] ] ], - "level": "2", + "level": { + "min": 0.23633680555555556, + "max": 0.2363425925925926 + }, "related_data": { "qa": { "data_id": [ - "13_175391_56006" + "13_175391_56006@13" ] } } @@ -21536,18 +24951,22 @@ { "多线程的TCP网络程序": { "data": { - "uuid": "java-5-261", + "uuid": "java-5-265", "seg": [ [ [ "多线程", "tcp", "网络", - "程序" + "程序", + "网络程序" ] ] ], - "level": "2", + "level": { + "min": 0.2363425925925926, + "max": 0.23634837962962962 + }, "related_data": {} } } @@ -21555,7 +24974,7 @@ { "TCP案例——文件上传": { "data": { - "uuid": "java-5-262", + "uuid": "java-5-266", "seg": [ [ [ @@ -21566,11 +24985,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23634837962962962, + "max": 0.23635416666666667 + }, "related_data": { "qa": { "data_id": [ - "13_746863_797182" + "13_746863_797182@13" ] } } @@ -21579,7 +25001,7 @@ } ], "data": { - "uuid": "java-4-367", + "uuid": "java-4-369", "seg": [ [ [ @@ -21588,7 +25010,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23631944444444444, + "max": 0.23635416666666667 + }, "related_data": {} } } @@ -21599,29 +25024,33 @@ { "网络基础知识": { "data": { - "uuid": "java-5-263", + "uuid": "java-5-267", "seg": [ [ [ "网络", - "基础知识" + "基础知识", + "网络基础知识" ] ] ], - "level": "2", + "level": { + "min": 0.23635416666666667, + "max": 0.2363888888888889 + }, "related_data": { "qa": { "data_id": [ - "13_28065_7827", - "13_366421_390914", - "13_242829_230722", - "13_202339_126945", - "13_754647_809708", - "13_27461_7548", - "13_390856_432711", - "13_679864_528191", - "13_234676_212011", - "13_1093012_1301944" + "13_28065_7827@13", + "13_366421_390914@13", + "13_242829_230722@13", + "13_202339_126945@13", + "13_754647_809708@13", + "13_27461_7548@13", + "13_390856_432711@13", + "13_679864_528191@13", + "13_234676_212011@13", + "13_1093012_1301944@13" ] } } @@ -21630,17 +25059,21 @@ } ], "data": { - "uuid": "java-4-368", + "uuid": "java-4-370", "seg": [ [ [ "网络", "编程", - "基础知识" + "基础知识", + "网络编程" ] ] ], - "level": "2", + "level": { + "min": 0.23635416666666667, + "max": 0.2363888888888889 + }, "related_data": {} } } @@ -21651,7 +25084,7 @@ { "使用URLDecoder和URLEncoder": { "data": { - "uuid": "java-5-264", + "uuid": "java-5-268", "seg": [ [ [ @@ -21662,11 +25095,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2363888888888889, + "max": 0.23640624999999998 + }, "related_data": { "qa": { "data_id": [ - "13_658400_471548" + "13_658400_471548@13" ] } } @@ -21676,7 +25112,7 @@ { "URL、URLConnection和URLPermission": { "data": { - "uuid": "java-5-265", + "uuid": "java-5-269", "seg": [ [ [ @@ -21690,24 +25126,31 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23640624999999998, + "max": 0.2364236111111111 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-369", + "uuid": "java-4-371", "seg": [ [ [ "java", "网络", - "支持" + "支持", + "基本网络" ] ] ], - "level": "2", + "level": { + "min": 0.2363888888888889, + "max": 0.2364236111111111 + }, "related_data": {} } } @@ -21718,21 +25161,25 @@ { "TCP协议基础": { "data": { - "uuid": "java-5-266", + "uuid": "java-5-270", "seg": [ [ [ "tcp", "协议", - "基础" + "基础", + "协议基础" ] ] ], - "level": "2", + "level": { + "min": 0.2364236111111111, + "max": 0.2364285714285714 + }, "related_data": { "qa": { "data_id": [ - "13_3198023_21755113" + "13_3198023_21755113@13" ] } } @@ -21742,7 +25189,7 @@ { "使用ServerSocket创建TCP服务器端": { "data": { - "uuid": "java-5-267", + "uuid": "java-5-271", "seg": [ [ [ @@ -21753,7 +25200,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2364285714285714, + "max": 0.23643353174603174 + }, "related_data": {} } } @@ -21761,7 +25211,7 @@ { "使用Socket进行通信": { "data": { - "uuid": "java-5-268", + "uuid": "java-5-272", "seg": [ [ [ @@ -21770,14 +25220,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23643353174603174, + "max": 0.23643849206349205 + }, "related_data": { "qa": { "data_id": [ - "13_248630_245349", - "13_638538_441414", - "13_743997_789370", - "13_679340_526044" + "13_248630_245349@13", + "13_638538_441414@13", + "13_743997_789370@13", + "13_679340_526044@13" ] } } @@ -21787,25 +25240,30 @@ { "记录用户信息": { "data": { - "uuid": "java-5-269", + "uuid": "java-5-273", "seg": [ [ [ "记录", "用户", - "信息" + "信息", + "记录用户", + "用户信息" ] ] ], - "level": "2", + "level": { + "min": 0.23643849206349205, + "max": 0.23644345238095238 + }, "related_data": { "qa": { "data_id": [ - "13_343727_346183", - "13_1334_2238", - "13_385260_422334", - "13_665078_482562", - "13_653160_461539" + "13_343727_346183@13", + "13_1334_2238@13", + "13_385260_422334@13", + "13_665078_482562@13", + "13_653160_461539@13" ] } } @@ -21815,7 +25273,7 @@ { "半关闭的Socket": { "data": { - "uuid": "java-5-270", + "uuid": "java-5-274", "seg": [ [ [ @@ -21824,7 +25282,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23644345238095238, + "max": 0.23644841269841269 + }, "related_data": {} } } @@ -21832,22 +25293,26 @@ { "使用NIO实现非阻塞Socket通信": { "data": { - "uuid": "java-5-271", + "uuid": "java-5-275", "seg": [ [ [ "nio", "阻塞", "socket", - "通信" + "通信", + "非阻塞" ] ] ], - "level": "2", + "level": { + "min": 0.23644841269841269, + "max": 0.23645337301587302 + }, "related_data": { "qa": { "data_id": [ - "13_267212_285976" + "13_267212_285976@13" ] } } @@ -21857,35 +25322,43 @@ { "使用AIO实现非阻塞通信": { "data": { - "uuid": "java-5-272", + "uuid": "java-5-276", "seg": [ [ [ "aio", "阻塞", - "通信" + "通信", + "非阻塞" ] ] ], - "level": "2", + "level": { + "min": 0.23645337301587302, + "max": 0.23645833333333333 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-370", + "uuid": "java-4-372", "seg": [ [ [ "tcp", "协议", "网络", - "编程" + "编程", + "网络编程" ] ] ], - "level": "2", + "level": { + "min": 0.2364236111111111, + "max": 0.23645833333333333 + }, "related_data": {} } } @@ -21896,17 +25369,21 @@ { "UDP协议基础": { "data": { - "uuid": "java-5-273", + "uuid": "java-5-277", "seg": [ [ [ "udp", "协议", - "基础" + "基础", + "协议基础" ] ] ], - "level": "2", + "level": { + "min": 0.23645833333333333, + "max": 0.2364699074074074 + }, "related_data": {} } } @@ -21914,7 +25391,7 @@ { "使用DatagramSocket发送、接收数据": { "data": { - "uuid": "java-5-274", + "uuid": "java-5-278", "seg": [ [ [ @@ -21926,7 +25403,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2364699074074074, + "max": 0.2364814814814815 + }, "related_data": {} } } @@ -21934,7 +25414,7 @@ { "使用MulticastSocket实现多点广播": { "data": { - "uuid": "java-5-275", + "uuid": "java-5-279", "seg": [ [ [ @@ -21943,25 +25423,32 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2364814814814815, + "max": 0.23649305555555555 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-371", + "uuid": "java-4-373", "seg": [ [ [ "udp", "协议", "网络", - "编程" + "编程", + "网络编程" ] ] ], - "level": "2", + "level": { + "min": 0.23645833333333333, + "max": 0.23649305555555555 + }, "related_data": {} } } @@ -21972,7 +25459,7 @@ { "直接使用Proxy创建连接": { "data": { - "uuid": "java-5-276", + "uuid": "java-5-280", "seg": [ [ [ @@ -21982,7 +25469,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23649305555555555, + "max": 0.23651041666666667 + }, "related_data": {} } } @@ -21990,7 +25480,7 @@ { "使用ProxySelector自动选择代理服务器": { "data": { - "uuid": "java-5-277", + "uuid": "java-5-281", "seg": [ [ [ @@ -22001,11 +25491,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23651041666666667, + "max": 0.23652777777777778 + }, "related_data": { "qa": { "data_id": [ - "13_195344_105080" + "13_195344_105080@13" ] } } @@ -22014,7 +25507,7 @@ } ], "data": { - "uuid": "java-4-372", + "uuid": "java-4-374", "seg": [ [ [ @@ -22022,7 +25515,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23649305555555555, + "max": 0.23652777777777778 + }, "related_data": {} } } @@ -22033,7 +25529,7 @@ { "发送同步GET请求": { "data": { - "uuid": "java-5-278", + "uuid": "java-5-282", "seg": [ [ [ @@ -22043,13 +25539,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23652777777777778, + "max": 0.23653472222222222 + }, "related_data": { "qa": { "data_id": [ - "13_772294_835601", - "13_159711_25664", - "13_986071_1153609" + "13_772294_835601@13", + "13_159711_25664@13", + "13_986071_1153609@13" ] } } @@ -22059,7 +25558,7 @@ { "发送带请求体的请求": { "data": { - "uuid": "java-5-279", + "uuid": "java-5-283", "seg": [ [ [ @@ -22069,11 +25568,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23653472222222222, + "max": 0.23654166666666668 + }, "related_data": { "qa": { "data_id": [ - "13_7425924_53388092" + "13_7425924_53388092@13" ] } } @@ -22083,16 +25585,20 @@ { "发送异步请求": { "data": { - "uuid": "java-5-280", + "uuid": "java-5-284", "seg": [ [ [ "发送", - "异步" + "异步", + "异步请求" ] ] ], - "level": "2", + "level": { + "min": 0.23654166666666668, + "max": 0.2365486111111111 + }, "related_data": {} } } @@ -22100,7 +25606,7 @@ { "WebSocket客户端支持": { "data": { - "uuid": "java-5-281", + "uuid": "java-5-285", "seg": [ [ [ @@ -22110,7 +25616,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2365486111111111, + "max": 0.23655555555555557 + }, "related_data": {} } } @@ -22118,24 +25627,28 @@ { "基于WebSocket的多人实时聊天": { "data": { - "uuid": "java-5-282", + "uuid": "java-5-286", "seg": [ [ [ "websocket", "实时", - "聊天" + "聊天", + "实时聊天" ] ] ], - "level": "2", + "level": { + "min": 0.23655555555555557, + "max": 0.2365625 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-373", + "uuid": "java-4-375", "seg": [ [ [ @@ -22146,24 +25659,37 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23652777777777778, + "max": 0.2365625 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-258", + "uuid": "java-3-251", "seg": [ [ [ "网络", - "编程" + "编程", + "网络编程" ] ] ], - "level": "2", - "related_data": {} + "level": { + "min": 0.23625, + "max": 0.2365625 + }, + "related_data": { + "qa": { + "data_id": [ + "13_247308_240578@13" + ] + } + } } } }, @@ -22176,7 +25702,7 @@ { "Java的版本": { "data": { - "uuid": "java-5-283", + "uuid": "java-5-287", "seg": [ [ [ @@ -22185,7 +25711,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2365625, + "max": 0.23656808035714286 + }, "related_data": {} } } @@ -22193,7 +25722,7 @@ { "JavaAPI文档": { "data": { - "uuid": "java-5-284", + "uuid": "java-5-288", "seg": [ [ [ @@ -22202,7 +25731,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23656808035714286, + "max": 0.23657366071428573 + }, "related_data": {} } } @@ -22210,7 +25742,7 @@ { "Java的应用领域": { "data": { - "uuid": "java-5-285", + "uuid": "java-5-289", "seg": [ [ [ @@ -22219,7 +25751,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23657366071428573, + "max": 0.23657924107142858 + }, "related_data": {} } } @@ -22227,7 +25762,7 @@ { "怎样学好Java": { "data": { - "uuid": "java-5-286", + "uuid": "java-5-290", "seg": [ [ [ @@ -22236,7 +25771,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23657924107142858, + "max": 0.23658482142857146 + }, "related_data": {} } } @@ -22244,7 +25782,7 @@ { "Java API文档": { "data": { - "uuid": "java-5-287", + "uuid": "java-5-291", "seg": [ [ [ @@ -22254,7 +25792,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23658482142857146, + "max": 0.2365904017857143 + }, "related_data": {} } } @@ -22262,16 +25803,20 @@ { "Java代码助手": { "data": { - "uuid": "java-5-288", + "uuid": "java-5-292", "seg": [ [ [ "java", - "助手" + "助手", + "代码助手" ] ] ], - "level": "1", + "level": { + "min": 0.2365904017857143, + "max": 0.23659598214285715 + }, "related_data": {} } } @@ -22279,7 +25824,7 @@ { "使用IDE": { "data": { - "uuid": "java-5-289", + "uuid": "java-5-293", "seg": [ [ [ @@ -22287,11 +25832,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23659598214285715, + "max": 0.23660156250000003 + }, "related_data": { "qa": { "data_id": [ - "13_692941_569413" + "13_692941_569413@13" ] } } @@ -22301,7 +25849,7 @@ { "使用IDE练习插件": { "data": { - "uuid": "java-5-290", + "uuid": "java-5-294", "seg": [ [ [ @@ -22310,14 +25858,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23660156250000003, + "max": 0.23660714285714288 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-374", + "uuid": "java-4-376", "seg": [ [ [ @@ -22326,7 +25877,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2365625, + "max": 0.23660714285714288 + }, "related_data": {} } } @@ -22337,7 +25891,7 @@ { "JDK的下载": { "data": { - "uuid": "java-5-291", + "uuid": "java-5-295", "seg": [ [ [ @@ -22346,7 +25900,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23660714285714288, + "max": 0.2366183035714286 + }, "related_data": {} } } @@ -22354,7 +25911,7 @@ { "配置JDK": { "data": { - "uuid": "java-5-292", + "uuid": "java-5-296", "seg": [ [ [ @@ -22363,7 +25920,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2366183035714286, + "max": 0.2366294642857143 + }, "related_data": {} } } @@ -22371,7 +25931,7 @@ { "测试开发环境": { "data": { - "uuid": "java-5-293", + "uuid": "java-5-297", "seg": [ [ [ @@ -22380,15 +25940,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2366294642857143, + "max": 0.236640625 + }, "related_data": { "qa": { "data_id": [ - "13_381891_416038", - "13_7417784_53373419", - "13_687165_550187", - "13_357739_374794", - "13_1059872_1257299" + "13_381891_416038@13", + "13_7417784_53373419@13", + "13_687165_550187@13", + "13_357739_374794@13", + "13_1059872_1257299@13" ] } } @@ -22398,7 +25961,7 @@ { "Windows系统的JDK环境": { "data": { - "uuid": "java-5-294", + "uuid": "java-5-298", "seg": [ [ [ @@ -22409,11 +25972,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.236640625, + "max": 0.23665178571428572 + }, "related_data": { "qa": { "data_id": [ - "13_690996_562423" + "13_690996_562423@13" ] } } @@ -22422,7 +25988,7 @@ } ], "data": { - "uuid": "java-4-375", + "uuid": "java-4-377", "seg": [ [ [ @@ -22432,7 +25998,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23660714285714288, + "max": 0.23665178571428572 + }, "related_data": {} } } @@ -22443,7 +26012,7 @@ { "Eclipse简介": { "data": { - "uuid": "java-5-295", + "uuid": "java-5-299", "seg": [ [ [ @@ -22452,7 +26021,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23665178571428572, + "max": 0.23666666666666666 + }, "related_data": {} } } @@ -22460,7 +26032,7 @@ { "下载Eclipse": { "data": { - "uuid": "java-5-296", + "uuid": "java-5-300", "seg": [ [ [ @@ -22469,19 +26041,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23666666666666666, + "max": 0.23668154761904764 + }, "related_data": { "qa": { "data_id": [ - "13_7453203_53435910", - "13_228414_194330", - "13_684879_543600", - "13_750701_803944", - "13_7407546_53358953", - "13_160164_26783", - "13_1057075_1254132", - "13_355417_369460", - "13_1713444_7643137" + "13_7453203_53435910@13", + "13_647942_454157@13", + "13_228414_194330@13", + "13_684879_543600@13", + "13_1086889_1293651@13", + "13_750701_803944@13", + "13_7407546_53358953@13", + "13_160164_26783@13", + "13_1057075_1254132@13", + "13_355417_369460@13" ] } } @@ -22491,7 +26067,7 @@ { "Eclipse工作台": { "data": { - "uuid": "java-5-297", + "uuid": "java-5-301", "seg": [ [ [ @@ -22500,14 +26076,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23668154761904764, + "max": 0.23669642857142859 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-376", + "uuid": "java-4-378", "seg": [ [ [ @@ -22517,7 +26096,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23665178571428572, + "max": 0.23669642857142859 + }, "related_data": {} } } @@ -22528,7 +26110,7 @@ { "创建Java类文件": { "data": { - "uuid": "java-5-298", + "uuid": "java-5-302", "seg": [ [ [ @@ -22539,7 +26121,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23669642857142859, + "max": 0.23671130952380953 + }, "related_data": {} } } @@ -22547,7 +26132,7 @@ { "使用编辑器编写程序代码": { "data": { - "uuid": "java-5-299", + "uuid": "java-5-303", "seg": [ [ [ @@ -22557,11 +26142,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23671130952380953, + "max": 0.23672619047619048 + }, "related_data": { "qa": { "data_id": [ - "13_7452069_53433849" + "13_7452069_53433849@13" ] } } @@ -22571,7 +26159,7 @@ { "运行Java程序": { "data": { - "uuid": "java-5-300", + "uuid": "java-5-304", "seg": [ [ [ @@ -22581,20 +26169,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23672619047619048, + "max": 0.23674107142857143 + }, "related_data": { "qa": { "data_id": [ - "13_7466549_53453867", - "13_7466757_53454098", - "13_200477_121081", - "13_196708_109479", - "13_713677_705197", - "13_1097622_1311338", - "13_379178_411015", - "13_7453916_53436576", - "13_7451439_53432683", - "13_757685_813295" + "13_7466549_53453867@13", + "13_7466757_53454098@13", + "13_200477_121081@13", + "13_196708_109479@13", + "13_713677_705197@13", + "13_1097622_1311338@13", + "13_379178_411015@13", + "13_7453916_53436576@13", + "13_7451439_53432683@13", + "13_757685_813295@13" ] } } @@ -22603,7 +26194,7 @@ } ], "data": { - "uuid": "java-4-377", + "uuid": "java-4-379", "seg": [ [ [ @@ -22611,7 +26202,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23669642857142859, + "max": 0.23674107142857143 + }, "related_data": {} } } @@ -22619,7 +26213,7 @@ { "程序调试": { "data": { - "uuid": "java-4-378", + "uuid": "java-4-380", "seg": [ [ [ @@ -22627,7 +26221,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23674107142857143, + "max": 0.2367857142857143 + }, "related_data": {} } } @@ -22638,16 +26235,20 @@ { "JDK常用的基本组件": { "data": { - "uuid": "java-5-301", + "uuid": "java-5-305", "seg": [ [ [ "jdk", - "组件" + "组件", + "基本组件" ] ] ], - "level": "1", + "level": { + "min": 0.2367857142857143, + "max": 0.2367876552795031 + }, "related_data": {} } } @@ -22655,7 +26256,7 @@ { "配置环境变量后,javac运行正常,但编译的时候仍找不到文件": { "data": { - "uuid": "java-5-302", + "uuid": "java-5-306", "seg": [ [ [ @@ -22668,19 +26269,22 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2367876552795031, + "max": 0.23678959627329194 + }, "related_data": { "qa": { "data_id": [ - "13_3535695_23009338", - "13_648664_453494", - "13_11792_33377", - "13_648661_453325", - "13_7435686_53406568", - "13_203591_130951", - "13_1096354_1308483", - "13_164073_37557", - "13_7417647_53372963" + "13_3535695_23009338@13", + "13_648664_453494@13", + "13_11792_33377@13", + "13_648661_453325@13", + "13_7435686_53406568@13", + "13_203591_130951@13", + "13_1096354_1308483@13", + "13_164073_37557@13", + "13_7417647_53372963@13" ] } } @@ -22690,17 +26294,21 @@ { "Java中变量一定要初始化吗?": { "data": { - "uuid": "java-5-303", + "uuid": "java-5-307", "seg": [ [ [ "java", "变量", - "初始化" + "初始化", + "一定要" ] ] ], - "level": "1", + "level": { + "min": 0.23678959627329194, + "max": 0.23679153726708074 + }, "related_data": {} } } @@ -22708,7 +26316,7 @@ { "switch多分支语句后expression表达式的数据类型": { "data": { - "uuid": "java-5-304", + "uuid": "java-5-308", "seg": [ [ [ @@ -22717,11 +26325,15 @@ "语句", "expression", "表达式", - "数据类型" + "数据类型", + "分支语句" ] ] ], - "level": "1", + "level": { + "min": 0.23679153726708074, + "max": 0.23679347826086958 + }, "related_data": {} } } @@ -22729,7 +26341,7 @@ { "多维数组的长度": { "data": { - "uuid": "java-5-305", + "uuid": "java-5-309", "seg": [ [ [ @@ -22738,11 +26350,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23679347826086958, + "max": 0.23679541925465838 + }, "related_data": { "qa": { "data_id": [ - "13_222929_180177" + "13_222929_180177@13" ] } } @@ -22752,7 +26367,7 @@ { "StringBuffer与String的不同之处": { "data": { - "uuid": "java-5-306", + "uuid": "java-5-310", "seg": [ [ [ @@ -22764,7 +26379,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23679541925465838, + "max": 0.23679736024844722 + }, "related_data": {} } } @@ -22772,7 +26390,7 @@ { "把数据抽象成类": { "data": { - "uuid": "java-5-307", + "uuid": "java-5-311", "seg": [ [ [ @@ -22781,7 +26399,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23679736024844722, + "max": 0.23679930124223603 + }, "related_data": {} } } @@ -22789,7 +26410,7 @@ { "局部变量和全局变量": { "data": { - "uuid": "java-5-308", + "uuid": "java-5-312", "seg": [ [ [ @@ -22800,11 +26421,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23679930124223603, + "max": 0.23680124223602483 + }, "related_data": { "qa": { "data_id": [ - "13_349425_357206" + "13_349425_357206@13" ] } } @@ -22814,7 +26438,7 @@ { "类的三大特性": { "data": { - "uuid": "java-5-309", + "uuid": "java-5-313", "seg": [ [ [ @@ -22823,7 +26447,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23680124223602483, + "max": 0.23680318322981367 + }, "related_data": {} } } @@ -22831,7 +26458,7 @@ { "什么情况下会使用匿名内部类?": { "data": { - "uuid": "java-5-310", + "uuid": "java-5-314", "seg": [ [ [ @@ -22839,20 +26466,24 @@ "下会", "匿名", "内部", - "类" + "类", + "内部类" ] ] ], - "level": "1", + "level": { + "min": 0.23680318322981367, + "max": 0.23680512422360248 + }, "related_data": { "qa": { "data_id": [ - "13_1094980_1305598", - "13_7407704_53357742", - "13_7462536_53448095", - "13_7462450_53447950", - "13_7440439_53422056", - "13_11297_5414" + "13_1094980_1305598@13", + "13_7462450_53447950@13", + "13_7407704_53357742@13", + "13_7462536_53448095@13", + "13_7440439_53422056@13", + "13_11297_5414@13" ] } } @@ -22862,7 +26493,7 @@ { "异常的使用原则": { "data": { - "uuid": "java-5-311", + "uuid": "java-5-315", "seg": [ [ [ @@ -22871,7 +26502,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23680512422360248, + "max": 0.2368070652173913 + }, "related_data": {} } } @@ -22879,7 +26513,7 @@ { "注意随机数的取值范围": { "data": { - "uuid": "java-5-312", + "uuid": "java-5-316", "seg": [ [ [ @@ -22888,15 +26522,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2368070652173913, + "max": 0.23680900621118012 + }, "related_data": { "qa": { "data_id": [ - "13_198071_113397", - "13_323245_313682", - "13_7415231_53368588", - "13_225292_186169", - "13_366791_391731" + "13_198071_113397@13", + "13_323245_313682@13", + "13_7415231_53368588@13", + "13_225292_186169@13", + "13_366791_391731@13" ] } } @@ -22906,7 +26543,7 @@ { "“装箱”与“拆箱”": { "data": { - "uuid": "java-5-313", + "uuid": "java-5-317", "seg": [ [ [ @@ -22917,7 +26554,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23680900621118012, + "max": 0.23681094720496895 + }, "related_data": {} } } @@ -22925,7 +26565,7 @@ { "集合的使用场合": { "data": { - "uuid": "java-5-314", + "uuid": "java-5-318", "seg": [ [ [ @@ -22934,7 +26574,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23681094720496895, + "max": 0.23681288819875776 + }, "related_data": {} } } @@ -22942,18 +26585,22 @@ { "集合的元素数量是变化的": { "data": { - "uuid": "java-5-315", + "uuid": "java-5-319", "seg": [ [ [ "集合", "元素", "数量", - "变化" + "变化", + "元素数量" ] ] ], - "level": "1", + "level": { + "min": 0.23681288819875776, + "max": 0.2368148291925466 + }, "related_data": {} } } @@ -22961,18 +26608,22 @@ { "Swing组件的层级关系": { "data": { - "uuid": "java-5-316", + "uuid": "java-5-320", "seg": [ [ [ "swing", "组件", "层级", - "关系" + "关系", + "层级关系" ] ] ], - "level": "1", + "level": { + "min": 0.2368148291925466, + "max": 0.2368167701863354 + }, "related_data": {} } } @@ -22980,7 +26631,7 @@ { "布局的使用": { "data": { - "uuid": "java-5-317", + "uuid": "java-5-321", "seg": [ [ [ @@ -22988,7 +26639,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2368167701863354, + "max": 0.2368187111801242 + }, "related_data": {} } } @@ -22996,7 +26650,7 @@ { "输入/输出流的使用": { "data": { - "uuid": "java-5-318", + "uuid": "java-5-322", "seg": [ [ [ @@ -23006,7 +26660,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2368187111801242, + "max": 0.23682065217391304 + }, "related_data": {} } } @@ -23014,13 +26671,14 @@ { "线程的核心方法:run方法": { "data": { - "uuid": "java-5-319", + "uuid": "java-5-323", "seg": [ [ [ "线程", "核心", - "方法" + "方法", + "核心方法" ] ], [ @@ -23030,18 +26688,21 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23682065217391304, + "max": 0.23682259316770185 + }, "related_data": { "qa": { "data_id": [ - "13_230584_200045", - "13_227313_191248", - "13_655919_473719", - "13_381904_416061", - "13_7401977_53349540", - "13_202453_127265", - "13_188612_86005", - "13_349599_357539" + "13_230584_200045@13", + "13_227313_191248@13", + "13_655919_473719@13", + "13_381904_416061@13", + "13_7401977_53349540@13", + "13_202453_127265@13", + "13_188612_86005@13", + "13_349599_357539@13" ] } } @@ -23051,7 +26712,7 @@ { "线程的启动": { "data": { - "uuid": "java-5-320", + "uuid": "java-5-324", "seg": [ [ [ @@ -23060,15 +26721,25 @@ ] ] ], - "level": "2", - "related_data": {} + "level": { + "min": 0.23682259316770185, + "max": 0.23682453416149069 + }, + "related_data": { + "qa": { + "data_id": [ + "13_226825_189969@13", + "13_237039_216536@13" + ] + } + } } } }, { "无法连接数据库": { "data": { - "uuid": "java-5-321", + "uuid": "java-5-325", "seg": [ [ [ @@ -23077,15 +26748,24 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.23682453416149069, + "max": 0.2368264751552795 + }, + "related_data": { + "qa": { + "data_id": [ + "13_193319_98364@13" + ] + } + } } } }, { "SQL语句的使用": { "data": { - "uuid": "java-5-322", + "uuid": "java-5-326", "seg": [ [ [ @@ -23094,7 +26774,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2368264751552795, + "max": 0.23682841614906833 + }, "related_data": {} } } @@ -23102,7 +26785,7 @@ { "AWT与Swing组件的区别": { "data": { - "uuid": "java-5-323", + "uuid": "java-5-327", "seg": [ [ [ @@ -23115,22 +26798,29 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23682841614906833, + "max": 0.23683035714285713 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-379", + "uuid": "java-4-381", "seg": [ [ [ - "难点" + "难点", + "难点解答" ] ] ], - "level": "1", + "level": { + "min": 0.2367857142857143, + "max": 0.23683035714285713 + }, "related_data": {} } } @@ -23141,13 +26831,16 @@ { "简单": { "data": { - "uuid": "java-5-324", + "uuid": "java-5-328", "seg": [ [ [] ] ], - "level": "1", + "level": { + "min": 0.23683035714285713, + "max": 0.23684151785714286 + }, "related_data": {} } } @@ -23155,7 +26848,7 @@ { "分布性": { "data": { - "uuid": "java-5-325", + "uuid": "java-5-329", "seg": [ [ [ @@ -23164,7 +26857,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23684151785714286, + "max": 0.23685267857142855 + }, "related_data": {} } } @@ -23172,13 +26868,16 @@ { "解释型": { "data": { - "uuid": "java-5-326", + "uuid": "java-5-330", "seg": [ [ [] ] ], - "level": "1", + "level": { + "min": 0.23685267857142855, + "max": 0.23686383928571428 + }, "related_data": {} } } @@ -23186,7 +26885,7 @@ { "动态": { "data": { - "uuid": "java-5-327", + "uuid": "java-5-331", "seg": [ [ [ @@ -23194,12 +26893,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23686383928571428, + "max": 0.236875 + }, "related_data": { "qa": { "data_id": [ - "13_648501_453132", - "13_658502_471623" + "13_648501_453132@13", + "13_658502_471623@13" ] } } @@ -23208,7 +26910,7 @@ } ], "data": { - "uuid": "java-4-380", + "uuid": "java-4-382", "seg": [ [ [ @@ -23218,14 +26920,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23683035714285713, + "max": 0.236875 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-259", + "uuid": "java-3-252", "seg": [ [ [ @@ -23234,7 +26939,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2365625, + "max": 0.236875 + }, "related_data": {} } } @@ -23251,7 +26959,7 @@ { "注释的插入": { "data": { - "uuid": "java-6-83", + "uuid": "java-6-84", "seg": [ [ [ @@ -23260,15 +26968,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.236875, + "max": 0.23688616071428573 + }, "related_data": { "qa": { "data_id": [ - "13_7439999_53414844", - "13_27935_7764", - "13_207881_142992", - "13_678843_524133", - "13_244377_234443" + "13_7439999_53414844@13", + "13_27935_7764@13", + "13_207881_142992@13", + "13_678843_524133@13", + "13_244377_234443@13" ] } } @@ -23278,7 +26989,7 @@ { "类注释": { "data": { - "uuid": "java-6-84", + "uuid": "java-6-85", "seg": [ [ [ @@ -23287,7 +26998,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23688616071428573, + "max": 0.23689732142857142 + }, "related_data": {} } } @@ -23295,7 +27009,7 @@ { "方法注释": { "data": { - "uuid": "java-6-85", + "uuid": "java-6-86", "seg": [ [ [ @@ -23304,12 +27018,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23689732142857142, + "max": 0.23690848214285715 + }, "related_data": { "qa": { "data_id": [ - "13_7460105_53445144", - "13_714376_706403" + "13_7460105_53445144@13", + "13_714376_706403@13" ] } } @@ -23319,30 +27036,24 @@ { "字段注释": { "data": { - "uuid": "java-6-86", + "uuid": "java-6-87", "seg": [ [ [ - "字", - "段", + "字段", "注释" ] ] ], - "level": "1", + "level": { + "min": 0.23690848214285715, + "max": 0.23691964285714284 + }, "related_data": { "qa": { "data_id": [ - "13_681911_535374", - "13_7424935_53386112", - "13_784800_862045", - "13_696861_581294", - "13_372337_399635", - "13_176647_59155", - "13_258441_266366", - "13_666212_484247", - "13_1064896_1263931", - "13_7438378_53411722" + "13_204597_133604@13", + "13_766955_826404@13" ] } } @@ -23352,7 +27063,7 @@ { "通用注释": { "data": { - "uuid": "java-6-87", + "uuid": "java-6-88", "seg": [ [ [ @@ -23361,7 +27072,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23691964285714284, + "max": 0.23693080357142857 + }, "related_data": {} } } @@ -23369,7 +27083,7 @@ { "包注释": { "data": { - "uuid": "java-6-88", + "uuid": "java-6-89", "seg": [ [ [ @@ -23378,20 +27092,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23693080357142857, + "max": 0.23694196428571426 + }, "related_data": { "qa": { "data_id": [ - "13_1088636_1295067", - "13_717787_711196", - "13_720089_714613", - "13_7434706_53405184", - "13_7454854_53437546", - "13_354751_368008", - "13_7415408_53368860", - "13_745189_792581", - "13_1097522_1311099", - "13_1062178_1260080" + "13_717787_711196@13", + "13_720089_714613@13", + "13_7434706_53405184@13", + "13_7454854_53437546@13", + "13_354751_368008@13", + "13_7415408_53368860@13", + "13_745189_792581@13", + "13_1097522_1311099@13", + "13_1062178_1260080@13", + "13_7417339_53372214@13" ] } } @@ -23401,7 +27118,7 @@ { "注释抽取": { "data": { - "uuid": "java-6-89", + "uuid": "java-6-90", "seg": [ [ [ @@ -23410,14 +27127,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23694196428571426, + "max": 0.236953125 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-328", + "uuid": "java-5-332", "seg": [ [ [ @@ -23426,11 +27146,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.236875, + "max": 0.236953125 + }, "related_data": { "qa": { "data_id": [ - "13_380428_413257" + "13_380428_413257@13" ] } } @@ -23439,7 +27162,7 @@ } ], "data": { - "uuid": "java-4-381", + "uuid": "java-4-383", "seg": [ [ [ @@ -23447,44 +27170,222 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.236875, + "max": 0.236953125 + }, + "related_data": { + "qa": { + "data_id": [ + "13_1088636_1295067@13" + ] + } + } } } }, { - "数据类型转换": { + "基本数据类型": { "children": [ { - "隐式转换": { + "整数类型": { "data": { - "uuid": "java-5-329", + "uuid": "java-5-333", "seg": [ [ [ - "隐式", - "转换" + "整数", + "类型", + "整数类型" ] ] ], - "level": "1", + "level": { + "min": 0.236953125, + "max": 0.2369661458333333 + }, "related_data": {} } } }, { - "显式转换": { + "浮点类型": { "data": { - "uuid": "java-5-330", + "uuid": "java-5-334", "seg": [ [ [ - "显式", - "转换" + "浮点", + "类型", + "浮点类型" ] ] ], - "level": "1", + "level": { + "min": 0.2369661458333333, + "max": 0.23697916666666666 + }, + "related_data": {} + } + } + }, + { + "字符类型": { + "data": { + "uuid": "java-5-335", + "seg": [ + [ + [ + "字符", + "类型", + "字符类型" + ] + ] + ], + "level": { + "min": 0.23697916666666666, + "max": 0.2369921875 + }, + "related_data": { + "qa": { + "data_id": [ + "13_26021_7107@13" + ] + } + } + } + } + }, + { + "布尔类型": { + "data": { + "uuid": "java-5-336", + "seg": [ + [ + [ + "布尔", + "类型", + "布尔类型" + ] + ] + ], + "level": { + "min": 0.2369921875, + "max": 0.23700520833333333 + }, + "related_data": {} + } + } + }, + { + "数值中使用下画线分隔": { + "data": { + "uuid": "java-5-337", + "seg": [ + [ + [ + "数值", + "画线", + "分隔" + ] + ] + ], + "level": { + "min": 0.23700520833333333, + "max": 0.23701822916666665 + }, + "related_data": {} + } + } + }, + { + "使用var定义变量": { + "data": { + "uuid": "java-5-338", + "seg": [ + [ + [ + "var", + "定义", + "变量" + ] + ] + ], + "level": { + "min": 0.23701822916666665, + "max": 0.23703125 + }, + "related_data": {} + } + } + } + ], + "data": { + "uuid": "java-4-384", + "seg": [ + [ + [ + "数据类型", + "基本数据类型" + ] + ] + ], + "level": { + "min": 0.236953125, + "max": 0.23703125 + }, + "related_data": { + "qa": { + "data_id": [ + "13_924845_1059777@13", + "13_226816_190021@13", + "13_375305_404582@13", + "13_747770_799299@13" + ] + } + } + } + } + }, + { + "数据类型转换": { + "children": [ + { + "隐式转换": { + "data": { + "uuid": "java-5-339", + "seg": [ + [ + [ + "隐式", + "转换" + ] + ] + ], + "level": { + "min": 0.23703125, + "max": 0.23705078125 + }, + "related_data": {} + } + } + }, + { + "显式转换": { + "data": { + "uuid": "java-5-340", + "seg": [ + [ + [ + "显式", + "转换" + ] + ] + ], + "level": { + "min": 0.23705078125, + "max": 0.2370703125 + }, "related_data": {} } } @@ -23492,7 +27393,7 @@ { "隐式类型转换": { "data": { - "uuid": "java-5-331", + "uuid": "java-5-341", "seg": [ [ [ @@ -23501,11 +27402,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2370703125, + "max": 0.23708984375 + }, "related_data": { "qa": { "data_id": [ - "13_7413593_53365681" + "13_7413593_53365681@13" ] } } @@ -23515,7 +27419,7 @@ { "显式类型转换": { "data": { - "uuid": "java-5-332", + "uuid": "java-5-342", "seg": [ [ [ @@ -23524,16 +27428,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23708984375, + "max": 0.237109375 + }, "related_data": { "qa": { "data_id": [ - "13_226615_189547", - "13_223295_181169", - "13_159356_24563", - "13_743378_787537", - "13_373466_401432", - "13_829012_925042" + "13_226615_189547@13", + "13_223295_181169@13", + "13_159356_24563@13", + "13_743378_787537@13", + "13_373466_401432@13", + "13_829012_925042@13" ] } } @@ -23542,7 +27449,7 @@ } ], "data": { - "uuid": "java-4-382", + "uuid": "java-4-385", "seg": [ [ [ @@ -23551,12 +27458,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23703125, + "max": 0.237109375 + }, "related_data": { "qa": { "data_id": [ - "13_1094360_1304607", - "13_226109_188138" + "13_1094360_1304607@13", + "13_226109_188138@13" ] } } @@ -23569,7 +27479,7 @@ { "包声明": { "data": { - "uuid": "java-5-333", + "uuid": "java-5-343", "seg": [ [ [ @@ -23578,7 +27488,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.237109375, + "max": 0.23713541666666668 + }, "related_data": {} } } @@ -23586,7 +27499,7 @@ { "编写主方法": { "data": { - "uuid": "java-5-334", + "uuid": "java-5-344", "seg": [ [ [ @@ -23596,7 +27509,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23713541666666668, + "max": 0.23716145833333332 + }, "related_data": {} } } @@ -23604,7 +27520,7 @@ { "导入API类库": { "data": { - "uuid": "java-5-335", + "uuid": "java-5-345", "seg": [ [ [ @@ -23614,14 +27530,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23716145833333332, + "max": 0.2371875 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-383", + "uuid": "java-4-386", "seg": [ [ [ @@ -23631,11 +27550,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.237109375, + "max": 0.2371875 + }, "related_data": { "qa": { "data_id": [ - "13_216193_163322" + "13_216193_163322@13" ] } } @@ -23644,17 +27566,21 @@ } ], "data": { - "uuid": "java-3-260", + "uuid": "java-3-253", "seg": [ [ [ "java", "语言", - "基础" + "基础", + "语言基础" ] ] ], - "level": "1", + "level": { + "min": 0.236875, + "max": 0.2371875 + }, "related_data": {} } } @@ -23665,7 +27591,7 @@ { "程序结构": { "data": { - "uuid": "java-4-384", + "uuid": "java-4-387", "seg": [ [ [ @@ -23673,7 +27599,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2371875, + "max": 0.23721875 + }, "related_data": {} } } @@ -23684,24 +27613,28 @@ { "switch多分支语句": { "data": { - "uuid": "java-5-336", + "uuid": "java-5-346", "seg": [ [ [ "switch", "分支", - "语句" + "语句", + "分支语句" ] ] ], - "level": "1", + "level": { + "min": 0.23721875, + "max": 0.23725 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-385", + "uuid": "java-4-388", "seg": [ [ [ @@ -23709,7 +27642,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23721875, + "max": 0.23725 + }, "related_data": {} } } @@ -23720,7 +27656,7 @@ { "foreach语句": { "data": { - "uuid": "java-5-337", + "uuid": "java-5-347", "seg": [ [ [ @@ -23730,14 +27666,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23725, + "max": 0.23726562499999998 + }, "related_data": { "qa": { "data_id": [ - "13_203609_131109", - "13_7460933_53446185", - "13_651498_458782", - "13_653541_462370" + "13_203609_131109@13", + "13_7460933_53446185@13", + "13_651498_458782@13", + "13_653541_462370@13", + "13_664248_480926@13" ] } } @@ -23747,7 +27687,7 @@ { "循环语句的嵌套": { "data": { - "uuid": "java-5-338", + "uuid": "java-5-348", "seg": [ [ [ @@ -23757,20 +27697,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23726562499999998, + "max": 0.23728125 + }, "related_data": { "qa": { "data_id": [ - "13_241157_226760", - "13_6373037_44672022", - "13_7455194_53437979", - "13_7462062_53447369", - "13_10038_4650", - "13_646085_448282", - "13_200620_121405", - "13_7465959_53453082", - "13_390668_432389", - "13_7465922_53453046" + "13_241157_226760@13", + "13_6373037_44672022@13", + "13_7455194_53437979@13", + "13_7462062_53447369@13", + "13_10038_4650@13", + "13_646085_448282@13", + "13_200620_121405@13", + "13_7465959_53453082@13", + "13_390668_432389@13", + "13_7465922_53453046@13" ] } } @@ -23779,7 +27722,7 @@ } ], "data": { - "uuid": "java-4-386", + "uuid": "java-4-389", "seg": [ [ [ @@ -23788,11 +27731,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23725, + "max": 0.23728125 + }, "related_data": { "qa": { "data_id": [ - "13_195482_105276" + "13_195482_105276@13" ] } } @@ -23802,7 +27748,7 @@ { "复合语句": { "data": { - "uuid": "java-4-387", + "uuid": "java-4-390", "seg": [ [ [ @@ -23811,11 +27757,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23728125, + "max": 0.23731249999999998 + }, "related_data": { "qa": { "data_id": [ - "13_1092815_1301442" + "13_1092815_1301442@13" ] } } @@ -23825,7 +27774,7 @@ { "循环控制": { "data": { - "uuid": "java-4-388", + "uuid": "java-4-391", "seg": [ [ [ @@ -23834,17 +27783,20 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23731249999999998, + "max": 0.23734375 + }, "related_data": { "qa": { "data_id": [ - "13_252347_251984", - "13_644363_445004", - "13_1104933_1319142", - "13_354647_367759", - "13_664166_480941", - "13_226666_189796", - "13_4572392_29134447" + "13_252347_251984@13", + "13_644363_445004@13", + "13_1104933_1319142@13", + "13_354647_367759@13", + "13_664166_480941@13", + "13_226666_189796@13", + "13_4572392_29134447@13" ] } } @@ -23854,7 +27806,7 @@ { "循环": { "data": { - "uuid": "java-4-389", + "uuid": "java-4-392", "seg": [ [ [ @@ -23862,11 +27814,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23734375, + "max": 0.237375 + }, "related_data": { "qa": { "data_id": [ - "13_185662_77130" + "13_185662_77130@13" ] } } @@ -23876,7 +27831,7 @@ { "中断控制流程的语句": { "data": { - "uuid": "java-4-390", + "uuid": "java-4-393", "seg": [ [ [ @@ -23887,7 +27842,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.237375, + "max": 0.23740624999999999 + }, "related_data": {} } } @@ -23895,7 +27853,7 @@ { "if判断": { "data": { - "uuid": "java-4-391", + "uuid": "java-4-394", "seg": [ [ [ @@ -23904,20 +27862,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23740624999999999, + "max": 0.2374375 + }, "related_data": { "qa": { "data_id": [ - "13_388777_428848", - "13_225421_186499", - "13_227586_192107", - "13_7425293_53386620", - "13_781475_852228", - "13_665906_483739", - "13_7396669_53341157", - "13_655203_465610", - "13_251899_251039", - "13_7447035_53426568" + "13_388777_428848@13", + "13_225421_186499@13", + "13_227586_192107@13", + "13_7425293_53386620@13", + "13_781475_852228@13", + "13_665906_483739@13", + "13_7396669_53341157@13", + "13_655203_465610@13", + "13_251899_251039@13", + "13_7447035_53426568@13" ] } } @@ -23927,7 +27888,7 @@ { "switch多重选择": { "data": { - "uuid": "java-4-392", + "uuid": "java-4-395", "seg": [ [ [ @@ -23936,7 +27897,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2374375, + "max": 0.23746874999999998 + }, "related_data": {} } } @@ -23944,7 +27908,7 @@ { "while循环": { "data": { - "uuid": "java-4-393", + "uuid": "java-4-396", "seg": [ [ [ @@ -23952,15 +27916,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23746874999999998, + "max": 0.2375 + }, "related_data": { "qa": { "data_id": [ - "13_744676_791129", - "13_720137_714450", - "13_1093369_1302689", - "13_1032518_1228306", - "13_766581_825861" + "13_744676_791129@13", + "13_720137_714450@13", + "13_1093369_1302689@13", + "13_1032518_1228306@13", + "13_766581_825861@13" ] } } @@ -23969,7 +27936,7 @@ } ], "data": { - "uuid": "java-3-261", + "uuid": "java-3-254", "seg": [ [ [ @@ -23978,11 +27945,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2371875, + "max": 0.2375 + }, "related_data": { "qa": { "data_id": [ - "13_7422932_53381818" + "13_7422932_53381818@13" ] } } @@ -23995,24 +27965,28 @@ { "类的主方法": { "data": { - "uuid": "java-4-394", + "uuid": "java-4-397", "seg": [ [ [ "类", "主", - "方法" + "方法", + "主方法" ] ] ], - "level": "1", + "level": { + "min": 0.2375, + "max": 0.2378125 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-262", + "uuid": "java-3-255", "seg": [ [ [ @@ -24021,7 +27995,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2375, + "max": 0.2378125 + }, "related_data": {} } } @@ -24038,21 +28015,25 @@ { "忘记对象类型": { "data": { - "uuid": "java-6-90", + "uuid": "java-6-91", "seg": [ [ [ "忘记", "对象", - "类型" + "类型", + "对象类型" ] ] ], - "level": "1", + "level": { + "min": 0.2378125, + "max": 0.23791666666666667 + }, "related_data": { "qa": { "data_id": [ - "13_205547_136205" + "13_205547_136205@13" ] } } @@ -24061,22 +28042,26 @@ } ], "data": { - "uuid": "java-5-339", + "uuid": "java-5-349", "seg": [ [ [ "向上", - "转型" + "转型", + "向上转型" ] ] ], - "level": "1", + "level": { + "min": 0.2378125, + "max": 0.23791666666666667 + }, "related_data": { "qa": { "data_id": [ - "13_365572_388889", - "13_675330_508630", - "13_160689_28665" + "13_365572_388889@13", + "13_675330_508630@13", + "13_160689_28665@13" ] } } @@ -24086,7 +28071,7 @@ { "向下转型": { "data": { - "uuid": "java-5-340", + "uuid": "java-5-350", "seg": [ [ [ @@ -24095,11 +28080,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23791666666666667, + "max": 0.23802083333333335 + }, "related_data": { "qa": { "data_id": [ - "13_382380_416931" + "13_382380_416931@13" ] } } @@ -24109,7 +28097,7 @@ { "instanceof关键字": { "data": { - "uuid": "java-5-341", + "uuid": "java-5-351", "seg": [ [ [ @@ -24118,11 +28106,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23802083333333335, + "max": 0.238125 + }, "related_data": { "qa": { "data_id": [ - "13_648936_453974" + "13_648936_453974@13" ] } } @@ -24131,7 +28122,7 @@ } ], "data": { - "uuid": "java-4-395", + "uuid": "java-4-398", "seg": [ [ [ @@ -24140,23 +28131,30 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2378125, + "max": 0.238125 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-263", + "uuid": "java-3-256", "seg": [ [ [ "面向对象", - "核心技术" + "核心技术", + "面向对象核心技术" ] ] ], - "level": "1", + "level": { + "min": 0.2378125, + "max": 0.238125 + }, "related_data": {} } } @@ -24170,7 +28168,7 @@ { "JFrame窗体": { "data": { - "uuid": "java-5-342", + "uuid": "java-5-352", "seg": [ [ [ @@ -24179,7 +28177,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.238125, + "max": 0.23815104166666667 + }, "related_data": {} } } @@ -24187,17 +28188,21 @@ { "JDialog对话框窗体": { "data": { - "uuid": "java-5-343", + "uuid": "java-5-353", "seg": [ [ [ "jdialog", "对话框", - "窗体" + "窗体", + "对话框窗体" ] ] ], - "level": "2", + "level": { + "min": 0.23815104166666667, + "max": 0.23817708333333334 + }, "related_data": {} } } @@ -24205,7 +28210,7 @@ { "JDialog窗体": { "data": { - "uuid": "java-5-344", + "uuid": "java-5-354", "seg": [ [ [ @@ -24214,14 +28219,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23817708333333334, + "max": 0.23820312500000002 + }, "related_data": { "qa": { "data_id": [ - "13_351192_360472", - "13_222702_179327", - "13_377786_408570", - "13_60573_34737" + "13_351192_360472@13", + "13_222702_179327@13", + "13_377786_408570@13", + "13_60573_34737@13" ] } } @@ -24230,7 +28238,7 @@ } ], "data": { - "uuid": "java-4-396", + "uuid": "java-4-399", "seg": [ [ [ @@ -24238,7 +28246,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.238125, + "max": 0.23820312500000002 + }, "related_data": {} } } @@ -24249,7 +28260,7 @@ { "JPanel面板": { "data": { - "uuid": "java-5-345", + "uuid": "java-5-355", "seg": [ [ [ @@ -24258,20 +28269,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23820312500000002, + "max": 0.2382291666666667 + }, "related_data": { "qa": { "data_id": [ - "13_717741_711153", - "13_651509_458836", - "13_204161_132456", - "13_685071_544235", - "13_754354_809411", - "13_7399615_53346971", - "13_216327_163521", - "13_188170_84509", - "13_215814_162360", - "13_398785_436864" + "13_717741_711153@13", + "13_651509_458836@13", + "13_204161_132456@13", + "13_685071_544235@13", + "13_754354_809411@13", + "13_7399615_53346971@13", + "13_216327_163521@13", + "13_188170_84509@13", + "13_215814_162360@13", + "13_398785_436864@13" ] } } @@ -24281,7 +28295,7 @@ { "JScrollPane滚动面板": { "data": { - "uuid": "java-5-346", + "uuid": "java-5-356", "seg": [ [ [ @@ -24291,7 +28305,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2382291666666667, + "max": 0.23825520833333333 + }, "related_data": {} } } @@ -24299,7 +28316,7 @@ { "JScrollPane面板": { "data": { - "uuid": "java-5-347", + "uuid": "java-5-357", "seg": [ [ [ @@ -24308,11 +28325,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23825520833333333, + "max": 0.23828125 + }, "related_data": { "qa": { "data_id": [ - "13_1095811_1307532" + "13_1095811_1307532@13" ] } } @@ -24321,7 +28341,7 @@ } ], "data": { - "uuid": "java-4-397", + "uuid": "java-4-400", "seg": [ [ [ @@ -24329,7 +28349,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23820312500000002, + "max": 0.23828125 + }, "related_data": {} } } @@ -24340,18 +28363,23 @@ { "JComboBox下拉列表框组件": { "data": { - "uuid": "java-5-348", + "uuid": "java-5-358", "seg": [ [ [ "jcombobox", "下拉", "列表框", - "组件" + "组件", + "下拉列表框", + "列表框组件" ] ] ], - "level": "2", + "level": { + "min": 0.23828125, + "max": 0.23830078124999998 + }, "related_data": {} } } @@ -24359,17 +28387,21 @@ { "JList列表框组件": { "data": { - "uuid": "java-5-349", + "uuid": "java-5-359", "seg": [ [ [ "jlist", "列表框", - "组件" + "组件", + "列表框组件" ] ] ], - "level": "2", + "level": { + "min": 0.23830078124999998, + "max": 0.2383203125 + }, "related_data": {} } } @@ -24377,17 +28409,22 @@ { "下拉列表框组件": { "data": { - "uuid": "java-5-350", + "uuid": "java-5-360", "seg": [ [ [ - "拉", + "下拉", "列表框", - "组件" + "组件", + "下拉列表框", + "列表框组件" ] ] ], - "level": "2", + "level": { + "min": 0.2383203125, + "max": 0.23833984375 + }, "related_data": {} } } @@ -24395,32 +28432,40 @@ { "列表框组件": { "data": { - "uuid": "java-5-351", + "uuid": "java-5-361", "seg": [ [ [ "列表框", - "组件" + "组件", + "列表框组件" ] ] ], - "level": "2", + "level": { + "min": 0.23833984375, + "max": 0.23835937499999998 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-398", + "uuid": "java-4-401", "seg": [ [ [ "列表", - "组件" + "组件", + "列表组件" ] ] ], - "level": "1", + "level": { + "min": 0.23828125, + "max": 0.23835937499999998 + }, "related_data": {} } } @@ -24431,17 +28476,22 @@ { "动作事件监听器": { "data": { - "uuid": "java-5-352", + "uuid": "java-5-362", "seg": [ [ [ "动作", "事件", - "监听器" + "监听器", + "动作事件", + "事件监听器" ] ] ], - "level": "2", + "level": { + "min": 0.23835937499999998, + "max": 0.2383723958333333 + }, "related_data": {} } } @@ -24449,21 +28499,25 @@ { "键盘事件": { "data": { - "uuid": "java-5-353", + "uuid": "java-5-363", "seg": [ [ [ "键盘", - "事件" + "事件", + "键盘事件" ] ] ], - "level": "2", + "level": { + "min": 0.2383723958333333, + "max": 0.23838541666666666 + }, "related_data": { "qa": { "data_id": [ - "13_229242_197721", - "13_368513_394895" + "13_229242_197721@13", + "13_368513_394895@13" ] } } @@ -24473,22 +28527,26 @@ { "鼠标事件": { "data": { - "uuid": "java-5-354", + "uuid": "java-5-364", "seg": [ [ [ "鼠标", - "事件" + "事件", + "鼠标事件" ] ] ], - "level": "2", + "level": { + "min": 0.23838541666666666, + "max": 0.2383984375 + }, "related_data": { "qa": { "data_id": [ - "13_256097_260981", - "13_689320_557122", - "13_1061305_1259112" + "13_256097_260981@13", + "13_689320_557122@13", + "13_1061305_1259112@13" ] } } @@ -24501,7 +28559,7 @@ { "捕获窗体焦点变化事件": { "data": { - "uuid": "java-6-91", + "uuid": "java-6-92", "seg": [ [ [ @@ -24509,11 +28567,15 @@ "窗体", "焦点", "变化", - "事件" + "事件", + "窗体焦点" ] ] ], - "level": "2", + "level": { + "min": 0.2383984375, + "max": 0.23840277777777777 + }, "related_data": {} } } @@ -24521,7 +28583,7 @@ { "捕获窗体状态变化事件": { "data": { - "uuid": "java-6-92", + "uuid": "java-6-93", "seg": [ [ [ @@ -24529,11 +28591,15 @@ "窗体", "状态", "变化", - "事件" + "事件", + "窗体状态" ] ] ], - "level": "2", + "level": { + "min": 0.23840277777777777, + "max": 0.23840711805555556 + }, "related_data": {} } } @@ -24541,28 +28607,32 @@ { "捕获其他窗体事件": { "data": { - "uuid": "java-6-93", + "uuid": "java-6-94", "seg": [ [ [ "捕获", "窗体", - "事件" + "事件", + "窗体事件" ] ] ], - "level": "2", + "level": { + "min": 0.23840711805555556, + "max": 0.23841145833333333 + }, "related_data": { "qa": { "data_id": [ - "13_2855_3937", - "13_700209_589158", - "13_192989_97452", - "13_212061_152902", - "13_675115_507375", - "13_1078338_1282704", - "13_749692_802409", - "13_675366_508843" + "13_2855_3937@13", + "13_700209_589158@13", + "13_192989_97452@13", + "13_212061_152902@13", + "13_675115_507375@13", + "13_1078338_1282704@13", + "13_749692_802409@13", + "13_675366_508843@13" ] } } @@ -24571,16 +28641,20 @@ } ], "data": { - "uuid": "java-5-355", + "uuid": "java-5-365", "seg": [ [ [ "窗体", - "事件" + "事件", + "窗体事件" ] ] ], - "level": "2", + "level": { + "min": 0.2383984375, + "max": 0.23841145833333333 + }, "related_data": {} } } @@ -24588,7 +28662,7 @@ { "监听事件简介": { "data": { - "uuid": "java-5-356", + "uuid": "java-5-366", "seg": [ [ [ @@ -24598,13 +28672,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23841145833333333, + "max": 0.23842447916666665 + }, "related_data": { "qa": { "data_id": [ - "13_387179_426165", - "13_162501_33733", - "13_669997_491976" + "13_387179_426165@13", + "13_162501_33733@13", + "13_669997_491976@13", + "13_386335_424714@13" ] } } @@ -24614,40 +28692,49 @@ { "焦点事件监听器": { "data": { - "uuid": "java-5-357", + "uuid": "java-5-367", "seg": [ [ [ "焦点", "事件", - "监听器" + "监听器", + "焦点事件", + "事件监听器" ] ] ], - "level": "2", + "level": { + "min": 0.23842447916666665, + "max": 0.2384375 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-399", + "uuid": "java-4-402", "seg": [ [ [ "事件", - "监听器" + "监听器", + "事件监听器" ] ] ], - "level": "2", + "level": { + "min": 0.23835937499999998, + "max": 0.2384375 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-264", + "uuid": "java-3-257", "seg": [ [ [ @@ -24656,7 +28743,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.238125, + "max": 0.2384375 + }, "related_data": {} } } @@ -24667,7 +28757,7 @@ { "流概述": { "data": { - "uuid": "java-4-400", + "uuid": "java-4-403", "seg": [ [ [ @@ -24676,7 +28766,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2384375, + "max": 0.23848214285714286 + }, "related_data": {} } } @@ -24687,7 +28780,7 @@ { "输入流": { "data": { - "uuid": "java-5-358", + "uuid": "java-5-368", "seg": [ [ [ @@ -24696,13 +28789,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23848214285714286, + "max": 0.23850446428571428 + }, "related_data": { "qa": { "data_id": [ - "13_235439_214429", - "13_248942_244366", - "13_7415679_53369237" + "13_235439_214429@13", + "13_248942_244366@13", + "13_7415679_53369237@13", + "13_7454835_53437539@13", + "13_247527_241076@13", + "13_1049035_1246429@13", + "13_7424069_53384535@13", + "13_243447_231921@13", + "13_645371_446771@13", + "13_753503_808069@13" ] } } @@ -24712,7 +28815,7 @@ { "输出流": { "data": { - "uuid": "java-5-359", + "uuid": "java-5-369", "seg": [ [ [ @@ -24721,16 +28824,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23850446428571428, + "max": 0.2385267857142857 + }, "related_data": { "qa": { "data_id": [ - "13_382536_417165", - "13_242955_231095", - "13_223418_181453", - "13_7452641_53434749", - "13_7463694_53449797", - "13_644309_446045" + "13_382536_417165@13", + "13_242955_231095@13", + "13_7465828_53452982@13", + "13_750512_803600@13", + "13_704000_595673@13", + "13_74530_12293@13", + "13_358653_377069@13", + "13_203521_130781@13", + "13_7451758_53433212@13", + "13_1050206_1247506@13" ] } } @@ -24739,7 +28849,7 @@ } ], "data": { - "uuid": "java-4-401", + "uuid": "java-4-404", "seg": [ [ [ @@ -24749,7 +28859,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23848214285714286, + "max": 0.2385267857142857 + }, "related_data": {} } } @@ -24760,7 +28873,7 @@ { "FileInputStream类与FileOutputStream类": { "data": { - "uuid": "java-5-360", + "uuid": "java-5-370", "seg": [ [ [ @@ -24773,13 +28886,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2385267857142857, + "max": 0.23854910714285715 + }, "related_data": { "qa": { "data_id": [ - "13_227281_191354", - "13_392608_436148", - "13_373422_401365" + "13_227281_191354@13", + "13_392608_436148@13", + "13_373422_401365@13" ] } } @@ -24789,7 +28905,7 @@ { "FileReader类与FileWriter类": { "data": { - "uuid": "java-5-361", + "uuid": "java-5-371", "seg": [ [ [ @@ -24802,14 +28918,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23854910714285715, + "max": 0.23857142857142857 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-402", + "uuid": "java-4-405", "seg": [ [ [ @@ -24820,8 +28939,18 @@ ] ] ], - "level": "2", - "related_data": {} + "level": { + "min": 0.2385267857142857, + "max": 0.23857142857142857 + }, + "related_data": { + "qa": { + "data_id": [ + "13_377742_408463@13", + "13_240201_224300@13" + ] + } + } } } }, @@ -24831,7 +28960,7 @@ { "BufferedInputStream类与BufferedOutputStream类": { "data": { - "uuid": "java-5-362", + "uuid": "java-5-372", "seg": [ [ [ @@ -24844,11 +28973,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23857142857142857, + "max": 0.23859375 + }, "related_data": { "qa": { "data_id": [ - "13_667732_487097" + "13_667732_487097@13" ] } } @@ -24858,7 +28990,7 @@ { "BufferedReader类与BufferedWriter类": { "data": { - "uuid": "java-5-363", + "uuid": "java-5-373", "seg": [ [ [ @@ -24871,11 +29003,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23859375, + "max": 0.2386160714285714 + }, "related_data": { "qa": { "data_id": [ - "13_790262_875541" + "13_790262_875541@13" ] } } @@ -24884,7 +29019,7 @@ } ], "data": { - "uuid": "java-4-403", + "uuid": "java-4-406", "seg": [ [ [ @@ -24896,7 +29031,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23857142857142857, + "max": 0.2386160714285714 + }, "related_data": {} } } @@ -24904,7 +29042,7 @@ { "带缓存的输入/输出流": { "data": { - "uuid": "java-4-404", + "uuid": "java-4-407", "seg": [ [ [ @@ -24916,7 +29054,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2386160714285714, + "max": 0.23866071428571428 + }, "related_data": {} } } @@ -24924,7 +29065,7 @@ { "数据输入/输出流": { "data": { - "uuid": "java-4-405", + "uuid": "java-4-408", "seg": [ [ [ @@ -24935,7 +29076,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23866071428571428, + "max": 0.23870535714285712 + }, "related_data": {} } } @@ -24946,7 +29090,7 @@ { "压缩文件": { "data": { - "uuid": "java-5-364", + "uuid": "java-5-374", "seg": [ [ [ @@ -24954,11 +29098,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23870535714285712, + "max": 0.23872767857142857 + }, "related_data": { "qa": { "data_id": [ - "13_206292_138470" + "13_206292_138470@13" ] } } @@ -24968,7 +29115,7 @@ { "解压缩ZIP文件": { "data": { - "uuid": "java-5-365", + "uuid": "java-5-375", "seg": [ [ [ @@ -24978,14 +29125,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23872767857142857, + "max": 0.23875 + }, "related_data": { "qa": { "data_id": [ - "13_389950_436476", - "13_349667_357578", - "13_745545_793618", - "13_747145_798046" + "13_389950_436476@13", + "13_349667_357578@13", + "13_745545_793618@13", + "13_747145_798046@13" ] } } @@ -24994,7 +29144,7 @@ } ], "data": { - "uuid": "java-4-406", + "uuid": "java-4-409", "seg": [ [ [ @@ -25006,14 +29156,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23870535714285712, + "max": 0.23875 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-265", + "uuid": "java-3-258", "seg": [ [ [ @@ -25024,7 +29177,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2384375, + "max": 0.23875 + }, "related_data": {} } } @@ -25038,7 +29194,7 @@ { "JDBC-ODBC桥": { "data": { - "uuid": "java-5-366", + "uuid": "java-5-376", "seg": [ [ [ @@ -25048,7 +29204,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23875, + "max": 0.23880208333333333 + }, "related_data": {} } } @@ -25056,7 +29215,7 @@ { "JDBC技术": { "data": { - "uuid": "java-5-367", + "uuid": "java-5-377", "seg": [ [ [ @@ -25065,20 +29224,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23880208333333333, + "max": 0.23885416666666665 + }, "related_data": { "qa": { "data_id": [ - "13_223578_181836", - "13_696534_580517", - "13_6246364_43590967", - "13_220771_173831", - "13_222819_179664", - "13_960845_1109660", - "13_28058_7831", - "13_378937_410685", - "13_7400940_53348891", - "13_7433707_53403992" + "13_223578_181836@13", + "13_696534_580517@13", + "13_6246364_43590967@13", + "13_220771_173831@13", + "13_222819_179664@13", + "13_960845_1109660@13", + "13_28058_7831@13", + "13_378937_410685@13", + "13_7400940_53348891@13", + "13_7433707_53403992@13" ] } } @@ -25088,7 +29250,7 @@ { "JDBC驱动程序的类型": { "data": { - "uuid": "java-5-368", + "uuid": "java-5-378", "seg": [ [ [ @@ -25098,14 +29260,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23885416666666665, + "max": 0.23890625 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-407", + "uuid": "java-4-410", "seg": [ [ [ @@ -25114,7 +29279,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23875, + "max": 0.23890625 + }, "related_data": {} } } @@ -25125,16 +29293,20 @@ { "数据库基础": { "data": { - "uuid": "java-5-369", + "uuid": "java-5-379", "seg": [ [ [ "数据库", - "基础" + "基础", + "数据库基础" ] ] ], - "level": "2", + "level": { + "min": 0.23890625, + "max": 0.23892187499999998 + }, "related_data": {} } } @@ -25142,7 +29314,7 @@ { "数据查询": { "data": { - "uuid": "java-5-370", + "uuid": "java-5-380", "seg": [ [ [ @@ -25151,20 +29323,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23892187499999998, + "max": 0.2389375 + }, "related_data": { "qa": { "data_id": [ - "13_924844_1061016", - "13_644929_445924", - "13_745433_793287", - "13_675629_510519", - "13_240573_225158", - "13_206097_137759", - "13_242278_229657", - "13_719897_714111", - "13_7416844_53371221", - "13_751578_805233" + "13_924844_1061016@13", + "13_644929_445924@13", + "13_745433_793287@13", + "13_675629_510519@13", + "13_240573_225158@13", + "13_206097_137759@13", + "13_242278_229657@13", + "13_719897_714111@13", + "13_7416844_53371221@13", + "13_751578_805233@13" ] } } @@ -25174,7 +29349,7 @@ { "动态查询": { "data": { - "uuid": "java-5-371", + "uuid": "java-5-381", "seg": [ [ [ @@ -25183,11 +29358,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2389375, + "max": 0.238953125 + }, "related_data": { "qa": { "data_id": [ - "13_743807_788860" + "13_743807_788860@13" ] } } @@ -25197,7 +29375,7 @@ { "添加、修改、删除记录": { "data": { - "uuid": "java-5-372", + "uuid": "java-5-382", "seg": [ [ [ @@ -25212,12 +29390,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.238953125, + "max": 0.23896875 + }, "related_data": { "qa": { "data_id": [ - "13_774134_838043", - "13_774154_838061" + "13_774134_838043@13", + "13_774154_838061@13" ] } } @@ -25230,7 +29411,7 @@ { "什么是数据库": { "data": { - "uuid": "java-6-94", + "uuid": "java-6-95", "seg": [ [ [ @@ -25238,20 +29419,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23896875, + "max": 0.23897395833333335 + }, "related_data": { "qa": { "data_id": [ - "13_229343_196949", - "13_364798_387050", - "13_7432772_53402615", - "13_215972_162722", - "13_250163_247051", - "13_321_653", - "13_354390_367022", - "13_181440_66599", - "13_939546_1075811", - "13_25642_6922" + "13_229343_196949@13", + "13_364798_387050@13", + "13_7432772_53402615@13", + "13_215972_162722@13", + "13_250163_247051@13", + "13_321_653@13", + "13_354390_367022@13", + "13_181440_66599@13", + "13_939546_1075811@13", + "13_25642_6922@13" ] } } @@ -25261,7 +29445,7 @@ { "数据库的种类及功能": { "data": { - "uuid": "java-6-95", + "uuid": "java-6-96", "seg": [ [ [ @@ -25273,11 +29457,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23897395833333335, + "max": 0.23897916666666666 + }, "related_data": { "qa": { "data_id": [ - "13_766110_825193" + "13_766110_825193@13" ] } } @@ -25287,7 +29474,7 @@ { "SQL语言": { "data": { - "uuid": "java-6-96", + "uuid": "java-6-97", "seg": [ [ [ @@ -25296,20 +29483,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23897916666666666, + "max": 0.238984375 + }, "related_data": { "qa": { "data_id": [ - "13_347725_353873", - "13_716998_710115", - "13_224951_185255", - "13_1091655_1299213", - "13_7455134_53438043", - "13_7447961_53427927", - "13_7452133_53433933", - "13_222535_178883", - "13_375765_405350", - "13_7449380_53429640" + "13_347725_353873@13", + "13_716998_710115@13", + "13_224951_185255@13", + "13_1091655_1299213@13", + "13_7455134_53438043@13", + "13_671404_528377@13", + "13_7447961_53427927@13", + "13_7452133_53433933@13", + "13_222535_178883@13", + "13_375765_405350@13" ] } } @@ -25318,16 +29508,20 @@ } ], "data": { - "uuid": "java-5-373", + "uuid": "java-5-383", "seg": [ [ [ "数据库", - "基础知识" + "基础知识", + "数据库基础知识" ] ] ], - "level": "2", + "level": { + "min": 0.23896875, + "max": 0.238984375 + }, "related_data": {} } } @@ -25335,7 +29529,7 @@ { "向数据库发送SQL语句": { "data": { - "uuid": "java-5-374", + "uuid": "java-5-384", "seg": [ [ [ @@ -25346,16 +29540,19 @@ ] ] ], - "level": "2", + "level": { + "min": 0.238984375, + "max": 0.239 + }, "related_data": { "qa": { "data_id": [ - "13_690163_559646", - "13_1490761_5955864", - "13_892065_1030350", - "13_770799_832847", - "13_166726_40042", - "13_757252_812635" + "13_690163_559646@13", + "13_1490761_5955864@13", + "13_892065_1030350@13", + "13_770799_832847@13", + "13_166726_40042@13", + "13_757252_812635@13" ] } } @@ -25365,16 +29562,20 @@ { "处理查询结果集": { "data": { - "uuid": "java-5-375", + "uuid": "java-5-385", "seg": [ [ [ "查询", - "集" + "集", + "结果集" ] ] ], - "level": "2", + "level": { + "min": 0.239, + "max": 0.239015625 + }, "related_data": {} } } @@ -25382,7 +29583,7 @@ { "顺序查询": { "data": { - "uuid": "java-5-376", + "uuid": "java-5-386", "seg": [ [ [ @@ -25391,7 +29592,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.239015625, + "max": 0.23903125 + }, "related_data": {} } } @@ -25399,7 +29603,7 @@ { "模糊查询": { "data": { - "uuid": "java-5-377", + "uuid": "java-5-387", "seg": [ [ [ @@ -25408,12 +29612,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23903125, + "max": 0.23904687500000002 + }, "related_data": { "qa": { "data_id": [ - "13_757378_812811", - "13_745331_792964" + "13_757378_812811@13", + "13_745331_792964@13" ] } } @@ -25423,7 +29630,7 @@ { "预处理语句": { "data": { - "uuid": "java-5-378", + "uuid": "java-5-388", "seg": [ [ [ @@ -25432,14 +29639,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23904687500000002, + "max": 0.2390625 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-408", + "uuid": "java-4-411", "seg": [ [ [ @@ -25448,14 +29658,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23890625, + "max": 0.2390625 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-266", + "uuid": "java-3-259", "seg": [ [ [ @@ -25465,7 +29678,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23875, + "max": 0.2390625 + }, "related_data": {} } } @@ -25479,17 +29695,21 @@ { "Graphics绘图类": { "data": { - "uuid": "java-5-379", + "uuid": "java-5-389", "seg": [ [ [ "graphics", "绘图", - "类" + "类", + "绘图类" ] ] ], - "level": "2", + "level": { + "min": 0.2390625, + "max": 0.23907986111111112 + }, "related_data": {} } } @@ -25497,21 +29717,25 @@ { "Graphics2D绘图类": { "data": { - "uuid": "java-5-380", + "uuid": "java-5-390", "seg": [ [ [ "graphics2d", "绘图", - "类" + "类", + "绘图类" ] ] ], - "level": "2", + "level": { + "min": 0.23907986111111112, + "max": 0.23909722222222224 + }, "related_data": { "qa": { "data_id": [ - "13_7422904_53383998" + "13_7422904_53383998@13" ] } } @@ -25521,34 +29745,42 @@ { "Canvas画布类": { "data": { - "uuid": "java-5-381", + "uuid": "java-5-391", "seg": [ [ [ "canvas", "画布", - "类" + "类", + "画布类" ] ] ], - "level": "2", + "level": { + "min": 0.23909722222222224, + "max": 0.23911458333333335 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-409", + "uuid": "java-4-412", "seg": [ [ [ "java", "绘图", - "基础" + "基础", + "绘图基础" ] ] ], - "level": "2", + "level": { + "min": 0.2390625, + "max": 0.23911458333333335 + }, "related_data": {} } } @@ -25556,7 +29788,7 @@ { "绘制几何图形": { "data": { - "uuid": "java-4-410", + "uuid": "java-4-413", "seg": [ [ [ @@ -25565,7 +29797,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23911458333333335, + "max": 0.23916666666666667 + }, "related_data": {} } } @@ -25576,7 +29811,7 @@ { "设置颜色": { "data": { - "uuid": "java-5-382", + "uuid": "java-5-392", "seg": [ [ [ @@ -25585,12 +29820,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23916666666666667, + "max": 0.23919270833333334 + }, "related_data": { "qa": { "data_id": [ - "13_24203_6289", - "13_1561_2546" + "13_24203_6289@13", + "13_1561_2546@13" ] } } @@ -25600,7 +29838,7 @@ { "设置画笔": { "data": { - "uuid": "java-5-383", + "uuid": "java-5-393", "seg": [ [ [ @@ -25609,20 +29847,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23919270833333334, + "max": 0.23921875 + }, "related_data": { "qa": { "data_id": [ - "13_646495_449238", - "13_241004_226623", - "13_2176_3370", - "13_210957_150342", - "13_3477_4378", - "13_929470_1064424", - "13_1149_1985", - "13_700997_590437", - "13_1101447_1315932", - "13_1270_2158" + "13_646495_449238@13", + "13_241004_226623@13", + "13_2176_3370@13", + "13_210957_150342@13", + "13_3477_4378@13", + "13_929470_1064424@13", + "13_1149_1985@13", + "13_700997_590437@13", + "13_1101447_1315932@13", + "13_1270_2158@13" ] } } @@ -25631,7 +29872,7 @@ } ], "data": { - "uuid": "java-4-411", + "uuid": "java-4-414", "seg": [ [ [ @@ -25643,7 +29884,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23916666666666667, + "max": 0.23921875 + }, "related_data": {} } } @@ -25654,16 +29898,20 @@ { "绘制图像": { "data": { - "uuid": "java-5-384", + "uuid": "java-5-394", "seg": [ [ [ "绘制", - "图像" + "图像", + "绘制图像" ] ] ], - "level": "2", + "level": { + "min": 0.23921875, + "max": 0.23922743055555556 + }, "related_data": {} } } @@ -25671,7 +29919,7 @@ { "图像缩放": { "data": { - "uuid": "java-5-385", + "uuid": "java-5-395", "seg": [ [ [ @@ -25680,11 +29928,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23922743055555556, + "max": 0.23923611111111112 + }, "related_data": { "qa": { "data_id": [ - "13_162477_33631" + "13_162477_33631@13" ] } } @@ -25694,7 +29945,7 @@ { "放大与缩小": { "data": { - "uuid": "java-5-386", + "uuid": "java-5-396", "seg": [ [ [ @@ -25705,7 +29956,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23923611111111112, + "max": 0.23924479166666668 + }, "related_data": {} } } @@ -25713,7 +29967,7 @@ { "图像翻转": { "data": { - "uuid": "java-5-387", + "uuid": "java-5-397", "seg": [ [ [ @@ -25722,7 +29976,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23924479166666668, + "max": 0.23925347222222224 + }, "related_data": {} } } @@ -25730,7 +29987,7 @@ { "图像旋转": { "data": { - "uuid": "java-5-388", + "uuid": "java-5-398", "seg": [ [ [ @@ -25739,11 +29996,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23925347222222224, + "max": 0.2392621527777778 + }, "related_data": { "qa": { "data_id": [ - "13_3362_4385" + "13_3362_4385@13" ] } } @@ -25753,7 +30013,7 @@ { "图像倾斜": { "data": { - "uuid": "java-5-389", + "uuid": "java-5-399", "seg": [ [ [ @@ -25762,14 +30022,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2392621527777778, + "max": 0.23927083333333335 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-412", + "uuid": "java-4-415", "seg": [ [ [ @@ -25777,7 +30040,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23921875, + "max": 0.23927083333333335 + }, "related_data": {} } } @@ -25785,7 +30051,7 @@ { "Graphics": { "data": { - "uuid": "java-4-413", + "uuid": "java-4-416", "seg": [ [ [ @@ -25793,7 +30059,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23927083333333335, + "max": 0.23932291666666666 + }, "related_data": {} } } @@ -25801,7 +30070,7 @@ { "Graphics2D": { "data": { - "uuid": "java-4-414", + "uuid": "java-4-417", "seg": [ [ [ @@ -25809,14 +30078,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23932291666666666, + "max": 0.239375 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-267", + "uuid": "java-3-260", "seg": [ [ [ @@ -25825,7 +30097,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2390625, + "max": 0.239375 + }, "related_data": {} } } @@ -25836,7 +30111,7 @@ { "开发背景": { "data": { - "uuid": "java-4-415", + "uuid": "java-4-418", "seg": [ [ [ @@ -25845,7 +30120,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.239375, + "max": 0.23940972222222223 + }, "related_data": {} } } @@ -25853,7 +30131,7 @@ { "系统开发环境要求": { "data": { - "uuid": "java-4-416", + "uuid": "java-4-419", "seg": [ [ [ @@ -25863,7 +30141,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23940972222222223, + "max": 0.23944444444444446 + }, "related_data": {} } } @@ -25874,21 +30155,26 @@ { "系统功能结构": { "data": { - "uuid": "java-5-390", + "uuid": "java-5-400", "seg": [ [ [ "系统", "功能", - "结构" + "结构", + "系统功能", + "功能结构" ] ] ], - "level": "2", + "level": { + "min": 0.23944444444444446, + "max": 0.23946180555555557 + }, "related_data": { "qa": { "data_id": [ - "13_248748_243911" + "13_248748_243911@13" ] } } @@ -25898,27 +30184,31 @@ { "系统业务流程": { "data": { - "uuid": "java-5-391", + "uuid": "java-5-401", "seg": [ [ [ "系统", - "业务流程" + "业务流程", + "系统业务流程" ] ] ], - "level": "2", + "level": { + "min": 0.23946180555555557, + "max": 0.23947916666666666 + }, "related_data": { "qa": { "data_id": [ - "13_747545_798851", - "13_7466778_53454117", - "13_352269_362465", - "13_155587_16597", - "13_7461638_53446812", - "13_7466522_53453787", - "13_7464182_53450530", - "13_661956_477297" + "13_747545_798851@13", + "13_7466778_53454117@13", + "13_352269_362465@13", + "13_155587_16597@13", + "13_7461638_53446812@13", + "13_7466522_53453787@13", + "13_7464182_53450530@13", + "13_661956_477297@13" ] } } @@ -25927,7 +30217,7 @@ } ], "data": { - "uuid": "java-4-417", + "uuid": "java-4-420", "seg": [ [ [ @@ -25936,7 +30226,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23944444444444446, + "max": 0.23947916666666666 + }, "related_data": {} } } @@ -25947,20 +30240,24 @@ { "方向枚举": { "data": { - "uuid": "java-5-392", + "uuid": "java-5-402", "seg": [ [ [ "方向", - "枚举" + "枚举", + "方向枚举" ] ] ], - "level": "2", + "level": { + "min": 0.23947916666666666, + "max": 0.23948784722222222 + }, "related_data": { "qa": { "data_id": [ - "13_26805_7281" + "13_26805_7281@13" ] } } @@ -25970,17 +30267,22 @@ { "游戏模式枚举": { "data": { - "uuid": "java-5-393", + "uuid": "java-5-403", "seg": [ [ [ "游戏", "模式", - "枚举" + "枚举", + "游戏模式", + "模式枚举" ] ] ], - "level": "2", + "level": { + "min": 0.23948784722222222, + "max": 0.23949652777777777 + }, "related_data": {} } } @@ -25988,17 +30290,22 @@ { "坦克类型枚举": { "data": { - "uuid": "java-5-394", + "uuid": "java-5-404", "seg": [ [ [ "坦克", "类型", - "枚举" + "枚举", + "坦克类型", + "类型枚举" ] ] ], - "level": "2", + "level": { + "min": 0.23949652777777777, + "max": 0.23950520833333333 + }, "related_data": {} } } @@ -26006,24 +30313,28 @@ { "墙块类型枚举": { "data": { - "uuid": "java-5-395", + "uuid": "java-5-405", "seg": [ [ [ "墙块", "类型", - "枚举" + "枚举", + "类型枚举" ] ] ], - "level": "2", + "level": { + "min": 0.23950520833333333, + "max": 0.2395138888888889 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-418", + "uuid": "java-4-421", "seg": [ [ [ @@ -26032,7 +30343,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23947916666666666, + "max": 0.2395138888888889 + }, "related_data": {} } } @@ -26043,17 +30357,22 @@ { "绘图工具类": { "data": { - "uuid": "java-5-396", + "uuid": "java-5-406", "seg": [ [ [ "绘图", "工具", - "类" + "类", + "绘图工具", + "工具类" ] ] ], - "level": "2", + "level": { + "min": 0.2395138888888889, + "max": 0.23953125 + }, "related_data": {} } } @@ -26061,24 +30380,29 @@ { "地图工具类": { "data": { - "uuid": "java-5-397", + "uuid": "java-5-407", "seg": [ [ [ "地图", "工具", - "类" + "类", + "地图工具", + "工具类" ] ] ], - "level": "2", + "level": { + "min": 0.23953125, + "max": 0.23954861111111111 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-419", + "uuid": "java-4-422", "seg": [ [ [ @@ -26088,7 +30412,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2395138888888889, + "max": 0.23954861111111111 + }, "related_data": {} } } @@ -26099,7 +30426,7 @@ { "可显示图像的抽象类": { "data": { - "uuid": "java-5-398", + "uuid": "java-5-408", "seg": [ [ [ @@ -26109,7 +30436,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23954861111111111, + "max": 0.23955357142857142 + }, "related_data": {} } } @@ -26117,17 +30447,22 @@ { "玩家坦克类": { "data": { - "uuid": "java-5-399", + "uuid": "java-5-409", "seg": [ [ [ "玩家", "坦克", - "类" + "类", + "玩家坦克", + "坦克类" ] ] ], - "level": "2", + "level": { + "min": 0.23955357142857142, + "max": 0.23955853174603176 + }, "related_data": {} } } @@ -26135,22 +30470,27 @@ { "电脑坦克类": { "data": { - "uuid": "java-5-400", + "uuid": "java-5-410", "seg": [ [ [ "电脑", "坦克", - "类" + "类", + "电脑坦克", + "坦克类" ] ] ], - "level": "2", + "level": { + "min": 0.23955853174603176, + "max": 0.23956349206349206 + }, "related_data": { "qa": { "data_id": [ - "13_227645_203266", - "13_657605_470218" + "13_227645_203266@13", + "13_657605_470218@13" ] } } @@ -26160,20 +30500,24 @@ { "子弹类": { "data": { - "uuid": "java-5-401", + "uuid": "java-5-411", "seg": [ [ [ "子弹", - "类" + "类", + "子弹类" ] ] ], - "level": "2", + "level": { + "min": 0.23956349206349206, + "max": 0.2395684523809524 + }, "related_data": { "qa": { "data_id": [ - "13_681293_533502" + "13_681293_533502@13" ] } } @@ -26183,16 +30527,20 @@ { "基地类": { "data": { - "uuid": "java-5-402", + "uuid": "java-5-412", "seg": [ [ [ "基地", - "类" + "类", + "基地类" ] ] ], - "level": "2", + "level": { + "min": 0.2395684523809524, + "max": 0.2395734126984127 + }, "related_data": {} } } @@ -26200,21 +30548,25 @@ { "爆炸效果类": { "data": { - "uuid": "java-5-403", + "uuid": "java-5-413", "seg": [ [ [ "爆炸", "效果", - "类" + "类", + "效果类" ] ] ], - "level": "2", + "level": { + "min": 0.2395734126984127, + "max": 0.23957837301587304 + }, "related_data": { "qa": { "data_id": [ - "13_7431780_53400329" + "13_7431780_53400329@13" ] } } @@ -26224,20 +30576,24 @@ { "地图类": { "data": { - "uuid": "java-5-404", + "uuid": "java-5-414", "seg": [ [ [ "地图", - "类" + "类", + "地图类" ] ] ], - "level": "2", + "level": { + "min": 0.23957837301587304, + "max": 0.23958333333333334 + }, "related_data": { "qa": { "data_id": [ - "13_658924_472393" + "13_658924_472393@13" ] } } @@ -26246,17 +30602,21 @@ } ], "data": { - "uuid": "java-4-420", + "uuid": "java-4-423", "seg": [ [ [ "模型", "类", - "设计" + "设计", + "模型类" ] ] ], - "level": "2", + "level": { + "min": 0.23954861111111111, + "max": 0.23958333333333334 + }, "related_data": {} } } @@ -26267,7 +30627,7 @@ { "墙块抽象类": { "data": { - "uuid": "java-5-405", + "uuid": "java-5-415", "seg": [ [ [ @@ -26276,7 +30636,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23958333333333334, + "max": 0.23960069444444443 + }, "related_data": {} } } @@ -26284,7 +30647,7 @@ { "墙块实体类": { "data": { - "uuid": "java-5-406", + "uuid": "java-5-416", "seg": [ [ [ @@ -26293,14 +30656,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23960069444444443, + "max": 0.23961805555555554 + }, "related_data": { "qa": { "data_id": [ - "13_358137_375827", - "13_720040_714436", - "13_7398609_53345817", - "13_1057289_1254307" + "13_358137_375827@13", + "13_720040_714436@13", + "13_7398609_53345817@13", + "13_1057289_1254307@13" ] } } @@ -26309,7 +30675,7 @@ } ], "data": { - "uuid": "java-4-421", + "uuid": "java-4-424", "seg": [ [ [ @@ -26318,7 +30684,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23958333333333334, + "max": 0.23961805555555554 + }, "related_data": {} } } @@ -26329,7 +30698,7 @@ { "主窗体": { "data": { - "uuid": "java-5-407", + "uuid": "java-5-417", "seg": [ [ [ @@ -26338,7 +30707,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23961805555555554, + "max": 0.2396267361111111 + }, "related_data": {} } } @@ -26346,7 +30718,7 @@ { "登录面板": { "data": { - "uuid": "java-5-408", + "uuid": "java-5-418", "seg": [ [ [ @@ -26355,20 +30727,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2396267361111111, + "max": 0.23963541666666666 + }, "related_data": { "qa": { "data_id": [ - "13_230930_201044", - "13_183779_71646", - "13_682240_536206", - "13_656288_468563", - "13_1102169_1316559", - "13_233356_208106", - "13_202589_128372", - "13_770936_834896", - "13_1070181_1271532", - "13_334982_328209" + "13_230930_201044@13", + "13_183779_71646@13", + "13_682240_536206@13", + "13_656288_468563@13", + "13_1102169_1316559@13", + "13_233356_208106@13", + "13_202589_128372@13", + "13_770936_834896@13", + "13_1070181_1271532@13", + "13_334982_328209@13" ] } } @@ -26378,17 +30753,21 @@ { "显示关卡面板": { "data": { - "uuid": "java-5-409", + "uuid": "java-5-419", "seg": [ [ [ "显示", "关卡", - "面板" + "面板", + "关卡面板" ] ] ], - "level": "2", + "level": { + "min": 0.23963541666666666, + "max": 0.2396440972222222 + }, "related_data": {} } } @@ -26396,27 +30775,31 @@ { "游戏面板": { "data": { - "uuid": "java-5-410", + "uuid": "java-5-420", "seg": [ [ [ "游戏", - "面板" + "面板", + "游戏面板" ] ] ], - "level": "2", + "level": { + "min": 0.2396440972222222, + "max": 0.23965277777777777 + }, "related_data": { "qa": { "data_id": [ - "13_686617_548545", - "13_665132_482603", - "13_265759_282333", - "13_7454084_53436769", - "13_668060_488932", - "13_7463944_53450292", - "13_348070_354469", - "13_749598_802173" + "13_686617_548545@13", + "13_665132_482603@13", + "13_265759_282333@13", + "13_7454084_53436769@13", + "13_668060_488932@13", + "13_7463944_53450292@13", + "13_348070_354469@13", + "13_749598_802173@13" ] } } @@ -26425,17 +30808,21 @@ } ], "data": { - "uuid": "java-4-422", + "uuid": "java-4-425", "seg": [ [ [ "窗体", "类", - "设计" + "设计", + "窗体类" ] ] ], - "level": "2", + "level": { + "min": 0.23961805555555554, + "max": 0.23965277777777777 + }, "related_data": {} } } @@ -26446,7 +30833,7 @@ { "碰撞检测": { "data": { - "uuid": "java-5-411", + "uuid": "java-5-421", "seg": [ [ [ @@ -26454,11 +30841,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23965277777777777, + "max": 0.23967013888888888 + }, "related_data": { "qa": { "data_id": [ - "13_7400818_53348776" + "13_7400818_53348776@13" ] } } @@ -26468,7 +30858,7 @@ { "刷新帧": { "data": { - "uuid": "java-5-412", + "uuid": "java-5-422", "seg": [ [ [ @@ -26477,12 +30867,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23967013888888888, + "max": 0.2396875 + }, "related_data": { "qa": { "data_id": [ - "13_763022_823454", - "13_677706_520144" + "13_763022_823454@13", + "13_677706_520144@13" ] } } @@ -26491,42 +30884,51 @@ } ], "data": { - "uuid": "java-4-423", + "uuid": "java-4-426", "seg": [ [ [ "游戏", "核心", - "功能设计" + "功能设计", + "游戏核心" ] ] ], - "level": "2", + "level": { + "min": 0.23965277777777777, + "max": 0.2396875 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-268", + "uuid": "java-3-261", "seg": [ [ [ "坦克", "大战", - "游戏" + "游戏", + "坦克大战", + "大战游戏" ] ] ], - "level": "2", + "level": { + "min": 0.239375, + "max": 0.2396875 + }, "related_data": { "qa": { "data_id": [ - "13_365021_388302", - "13_644785_445751", - "13_200075_119768", - "13_215533_161961", - "13_194539_102336" + "13_365021_388302@13", + "13_644785_445751@13", + "13_200075_119768@13", + "13_215533_161961@13", + "13_194539_102336@13" ] } } @@ -26539,7 +30941,7 @@ { "抽象过程": { "data": { - "uuid": "java-4-424", + "uuid": "java-4-427", "seg": [ [ [ @@ -26548,7 +30950,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2396875, + "max": 0.23972222222222223 + }, "related_data": {} } } @@ -26556,20 +30961,24 @@ { "每个对象都有一个接口": { "data": { - "uuid": "java-4-425", + "uuid": "java-4-428", "seg": [ [ [ "对象", - "接口" + "接口", + "都有" ] ] ], - "level": "1", + "level": { + "min": 0.23972222222222223, + "max": 0.23975694444444445 + }, "related_data": { "qa": { "data_id": [ - "13_653801_462929" + "13_653801_462929@13" ] } } @@ -26579,17 +30988,21 @@ { "每个对象都提供服务": { "data": { - "uuid": "java-4-426", + "uuid": "java-4-429", "seg": [ [ [ "对象", "提供", - "服务" + "服务", + "都提供" ] ] ], - "level": "1", + "level": { + "min": 0.23975694444444445, + "max": 0.23979166666666665 + }, "related_data": {} } } @@ -26597,7 +31010,7 @@ { "被隐藏的具体实现": { "data": { - "uuid": "java-4-427", + "uuid": "java-4-430", "seg": [ [ [ @@ -26605,12 +31018,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23979166666666665, + "max": 0.23982638888888888 + }, "related_data": { "qa": { "data_id": [ - "13_647038_450031", - "13_183450_70669" + "13_647038_450031@13", + "13_183450_70669@13" ] } } @@ -26620,7 +31036,7 @@ { "复用具体实现": { "data": { - "uuid": "java-4-428", + "uuid": "java-4-431", "seg": [ [ [ @@ -26628,7 +31044,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23982638888888888, + "max": 0.2398611111111111 + }, "related_data": {} } } @@ -26636,7 +31055,7 @@ { "伴随多态的可互换对象": { "data": { - "uuid": "java-4-429", + "uuid": "java-4-432", "seg": [ [ [ @@ -26647,7 +31066,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2398611111111111, + "max": 0.23989583333333334 + }, "related_data": {} } } @@ -26655,7 +31077,7 @@ { "单根继承结构": { "data": { - "uuid": "java-4-430", + "uuid": "java-4-433", "seg": [ [ [ @@ -26665,7 +31087,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23989583333333334, + "max": 0.23993055555555554 + }, "related_data": {} } } @@ -26676,25 +31101,36 @@ { "参数化类型(范型)": { "data": { - "uuid": "java-5-413", + "uuid": "java-5-423", "seg": [ [ [ "参数", "化", "类型", - "范型" + "范型", + "参数化", + "化类型" ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.23993055555555554, + "max": 0.23996527777777776 + }, + "related_data": { + "qa": { + "data_id": [ + "13_743937_789226@13" + ] + } + } } } } ], "data": { - "uuid": "java-4-431", + "uuid": "java-4-434", "seg": [ [ [ @@ -26702,7 +31138,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23993055555555554, + "max": 0.23996527777777776 + }, "related_data": {} } } @@ -26710,7 +31149,7 @@ { "并发编程": { "data": { - "uuid": "java-4-432", + "uuid": "java-4-435", "seg": [ [ [ @@ -26719,12 +31158,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23996527777777776, + "max": 0.24 + }, "related_data": { "qa": { "data_id": [ - "13_241884_228572", - "13_860068_987835" + "13_241884_228572@13", + "13_860068_987835@13" ] } } @@ -26733,16 +31175,20 @@ } ], "data": { - "uuid": "java-3-269", + "uuid": "java-3-262", "seg": [ [ [ "对象", - "导论" + "导论", + "对象导论" ] ] ], - "level": "1", + "level": { + "min": 0.2396875, + "max": 0.24 + }, "related_data": {} } } @@ -26753,7 +31199,7 @@ { "更简单的打印语句": { "data": { - "uuid": "java-4-433", + "uuid": "java-4-436", "seg": [ [ [ @@ -26762,7 +31208,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24, + "max": 0.24002083333333332 + }, "related_data": {} } } @@ -26770,7 +31219,7 @@ { "使用Java操作符": { "data": { - "uuid": "java-4-434", + "uuid": "java-4-437", "seg": [ [ [ @@ -26779,11 +31228,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24002083333333332, + "max": 0.24004166666666665 + }, "related_data": { "qa": { "data_id": [ - "13_7423082_53382939" + "13_7423082_53382939@13" ] } } @@ -26793,7 +31245,7 @@ { "优先级": { "data": { - "uuid": "java-4-435", + "uuid": "java-4-438", "seg": [ [ [ @@ -26801,12 +31253,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24004166666666665, + "max": 0.24006249999999998 + }, "related_data": { "qa": { "data_id": [ - "13_7407841_53357978", - "13_1051241_1248430" + "13_7407841_53357978@13", + "13_1051241_1248430@13" ] } } @@ -26816,7 +31271,7 @@ { "赋值": { "data": { - "uuid": "java-4-436", + "uuid": "java-4-439", "seg": [ [ [ @@ -26824,16 +31279,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24006249999999998, + "max": 0.24008333333333334 + }, "related_data": { "qa": { "data_id": [ - "13_338955_337173", - "13_654251_463740", - "13_667133_485923", - "13_7440055_53414960", - "13_7444622_53423042", - "13_716077_708586" + "13_338955_337173@13", + "13_654251_463740@13", + "13_667133_485923@13", + "13_7440055_53414960@13", + "13_7444622_53423042@13", + "13_716077_708586@13" ] } } @@ -26846,7 +31304,7 @@ { "一元加、减操作符": { "data": { - "uuid": "java-5-414", + "uuid": "java-5-424", "seg": [ [ [], @@ -26856,11 +31314,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24008333333333334, + "max": 0.24010416666666667 + }, "related_data": { "qa": { "data_id": [ - "13_7433895_53404246" + "13_7433895_53404246@13" ] } } @@ -26869,7 +31330,7 @@ } ], "data": { - "uuid": "java-4-437", + "uuid": "java-4-440", "seg": [ [ [ @@ -26877,7 +31338,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24008333333333334, + "max": 0.24010416666666667 + }, "related_data": {} } } @@ -26885,7 +31349,7 @@ { "自动递增和递减": { "data": { - "uuid": "java-4-438", + "uuid": "java-4-441", "seg": [ [ [ @@ -26897,11 +31361,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24010416666666667, + "max": 0.240125 + }, "related_data": { "qa": { "data_id": [ - "13_747226_798251" + "13_747226_798251@13" ] } } @@ -26914,33 +31381,41 @@ { "测试对象的等价性": { "data": { - "uuid": "java-5-415", + "uuid": "java-5-425", "seg": [ [ [ "对象", "等价", - "性" + "性", + "等价性" ] ] ], - "level": "1", + "level": { + "min": 0.240125, + "max": 0.24014583333333334 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-439", + "uuid": "java-4-442", "seg": [ [ [ "关系", - "操作符" + "操作符", + "关系操作符" ] ] ], - "level": "1", + "level": { + "min": 0.240125, + "max": 0.24014583333333334 + }, "related_data": {} } } @@ -26951,7 +31426,7 @@ { "短路": { "data": { - "uuid": "java-5-416", + "uuid": "java-5-426", "seg": [ [ [ @@ -26959,23 +31434,30 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24014583333333334, + "max": 0.24016666666666667 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-440", + "uuid": "java-4-443", "seg": [ [ [ "逻辑", - "操作符" + "操作符", + "逻辑操作符" ] ] ], - "level": "1", + "level": { + "min": 0.24014583333333334, + "max": 0.24016666666666667 + }, "related_data": {} } } @@ -26983,7 +31465,7 @@ { "按位操作符": { "data": { - "uuid": "java-4-441", + "uuid": "java-4-444", "seg": [ [ [ @@ -26992,7 +31474,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24016666666666667, + "max": 0.2401875 + }, "related_data": {} } } @@ -27000,16 +31485,20 @@ { "移位操作符": { "data": { - "uuid": "java-4-442", + "uuid": "java-4-445", "seg": [ [ [ "移位", - "操作符" + "操作符", + "移位操作符" ] ] ], - "level": "1", + "level": { + "min": 0.2401875, + "max": 0.24020833333333333 + }, "related_data": {} } } @@ -27017,7 +31506,7 @@ { "三元操作符if-else": { "data": { - "uuid": "java-4-443", + "uuid": "java-4-446", "seg": [ [ [ @@ -27027,7 +31516,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24020833333333333, + "max": 0.24022916666666666 + }, "related_data": {} } } @@ -27035,17 +31527,21 @@ { "字符串操作符 + 和 +=": { "data": { - "uuid": "java-4-444", + "uuid": "java-4-447", "seg": [ [ [ "字符串", - "操作符" + "操作符", + "字符串操作符" ], [] ] ], - "level": "1", + "level": { + "min": 0.24022916666666666, + "max": 0.24025000000000002 + }, "related_data": {} } } @@ -27053,17 +31549,21 @@ { "使用操作符时常犯的错误": { "data": { - "uuid": "java-4-445", + "uuid": "java-4-448", "seg": [ [ [ "操作符", "时常", - "犯" + "犯", + "时常犯" ] ] ], - "level": "1", + "level": { + "min": 0.24025000000000002, + "max": 0.24027083333333335 + }, "related_data": {} } } @@ -27074,7 +31574,7 @@ { "截尾和舍入": { "data": { - "uuid": "java-5-417", + "uuid": "java-5-427", "seg": [ [ [ @@ -27085,7 +31585,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24027083333333335, + "max": 0.24028125 + }, "related_data": {} } } @@ -27093,7 +31596,7 @@ { "提升": { "data": { - "uuid": "java-5-418", + "uuid": "java-5-428", "seg": [ [ [ @@ -27101,11 +31604,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24028125, + "max": 0.24029166666666668 + }, "related_data": { "qa": { "data_id": [ - "13_7461884_53447338" + "13_7461884_53447338@13" ] } } @@ -27114,7 +31620,7 @@ } ], "data": { - "uuid": "java-4-446", + "uuid": "java-4-449", "seg": [ [ [ @@ -27123,7 +31629,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24027083333333335, + "max": 0.24029166666666668 + }, "related_data": {} } } @@ -27131,7 +31640,7 @@ { "Java没有“sizeof”": { "data": { - "uuid": "java-4-447", + "uuid": "java-4-450", "seg": [ [ [ @@ -27140,14 +31649,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24029166666666668, + "max": 0.2403125 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-270", + "uuid": "java-3-263", "seg": [ [ [ @@ -27155,7 +31667,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24, + "max": 0.2403125 + }, "related_data": {} } } @@ -27166,7 +31681,7 @@ { "true和false": { "data": { - "uuid": "java-4-448", + "uuid": "java-4-451", "seg": [ [ [ @@ -27177,19 +31692,22 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2403125, + "max": 0.2403515625 + }, "related_data": { "qa": { "data_id": [ - "13_662624_478345", - "13_171_363", - "13_250899_248863", - "13_7418156_53374022", - "13_26987_7335", - "13_7420179_53378133", - "13_7429296_53396088", - "13_229169_196467", - "13_1101526_1316028" + "13_662624_478345@13", + "13_171_363@13", + "13_250899_248863@13", + "13_7418156_53374022@13", + "13_26987_7335@13", + "13_7420179_53378133@13", + "13_7429296_53396088@13", + "13_229169_196467@13", + "13_1101526_1316028@13" ] } } @@ -27199,7 +31717,7 @@ { "if-else": { "data": { - "uuid": "java-4-449", + "uuid": "java-4-452", "seg": [ [ [ @@ -27208,20 +31726,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2403515625, + "max": 0.24039062500000002 + }, "related_data": { "qa": { "data_id": [ - "13_379480_411456", - "13_235101_213657", - "13_7431399_53399775", - "13_377575_408247", - "13_7428424_53394137", - "13_643647_443661", - "13_227848_192736", - "13_214732_159793", - "13_7459898_53444933", - "13_227835_192696" + "13_379480_411456@13", + "13_235101_213657@13", + "13_7431399_53399775@13", + "13_377575_408247@13", + "13_7428424_53394137@13", + "13_643647_443661@13", + "13_227848_192736@13", + "13_214732_159793@13", + "13_7459898_53444933@13", + "13_227835_192696@13" ] } } @@ -27234,7 +31755,7 @@ { "do-while": { "data": { - "uuid": "java-5-419", + "uuid": "java-5-429", "seg": [ [ [ @@ -27243,20 +31764,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24039062500000002, + "max": 0.24041015625 + }, "related_data": { "qa": { "data_id": [ - "13_7397168_53341656", - "13_164544_38410", - "13_5268979_32301333", - "13_365327_388243", - "13_6375461_44757350", - "13_1101493_1315992", - "13_1085022_1291813", - "13_1069406_1270377", - "13_191569_93352", - "13_671750_496026" + "13_7397168_53341656@13", + "13_164544_38410@13", + "13_5268979_32301333@13", + "13_365327_388243@13", + "13_6375461_44757350@13", + "13_1101493_1315992@13", + "13_1085022_1291813@13", + "13_1069406_1270377@13", + "13_191569_93352@13", + "13_671750_496026@13" ] } } @@ -27266,23 +31790,27 @@ { "逗号操作符": { "data": { - "uuid": "java-5-420", + "uuid": "java-5-430", "seg": [ [ [ "逗号", - "操作符" + "操作符", + "逗号操作符" ] ] ], - "level": "1", + "level": { + "min": 0.24041015625, + "max": 0.24042968750000002 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-450", + "uuid": "java-4-453", "seg": [ [ [ @@ -27290,7 +31818,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24039062500000002, + "max": 0.24042968750000002 + }, "related_data": {} } } @@ -27298,7 +31829,7 @@ { "Foreach语法": { "data": { - "uuid": "java-4-451", + "uuid": "java-4-454", "seg": [ [ [ @@ -27307,7 +31838,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24042968750000002, + "max": 0.24046875 + }, "related_data": {} } } @@ -27315,7 +31849,7 @@ { "return": { "data": { - "uuid": "java-4-452", + "uuid": "java-4-455", "seg": [ [ [ @@ -27323,20 +31857,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24046875, + "max": 0.2405078125 + }, "related_data": { "qa": { "data_id": [ - "13_210542_149500", - "13_1095992_1307874", - "13_643301_443264", - "13_7407214_53357077", - "13_659240_472823", - "13_415151_437060", - "13_347260_353102", - "13_219087_169712", - "13_7429380_53396230", - "13_6495251_45681420" + "13_210542_149500@13", + "13_1095992_1307874@13", + "13_643301_443264@13", + "13_7407214_53357077@13", + "13_659240_472823@13", + "13_415151_437060@13", + "13_347260_353102@13", + "13_219087_169712@13", + "13_7429380_53396230@13", + "13_6495251_45681420@13" ] } } @@ -27346,7 +31883,7 @@ { "break和continue": { "data": { - "uuid": "java-4-453", + "uuid": "java-4-456", "seg": [ [ [ @@ -27357,15 +31894,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2405078125, + "max": 0.240546875 + }, "related_data": { "qa": { "data_id": [ - "13_1094542_1304891", - "13_362216_381339", - "13_646611_449268", - "13_7405230_53354420", - "13_7395878_53338909" + "13_1094542_1304891@13", + "13_362216_381339@13", + "13_646611_449268@13", + "13_7405230_53354420@13", + "13_7395878_53338909@13" ] } } @@ -27375,7 +31915,7 @@ { "臭名昭著的“goto”": { "data": { - "uuid": "java-4-454", + "uuid": "java-4-457", "seg": [ [ [ @@ -27384,7 +31924,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.240546875, + "max": 0.2405859375 + }, "related_data": {} } } @@ -27392,7 +31935,7 @@ { "switch": { "data": { - "uuid": "java-4-455", + "uuid": "java-4-458", "seg": [ [ [ @@ -27400,17 +31943,20 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2405859375, + "max": 0.240625 + }, "related_data": { "qa": { "data_id": [ - "13_387160_426060", - "13_262829_276309", - "13_860569_987633", - "13_754209_809083", - "13_7416846_53371202", - "13_7451529_53432864", - "13_742597_785139" + "13_387160_426060@13", + "13_262829_276309@13", + "13_860569_987633@13", + "13_754209_809083@13", + "13_7416846_53371202@13", + "13_7451529_53432864@13", + "13_742597_785139@13" ] } } @@ -27419,7 +31965,7 @@ } ], "data": { - "uuid": "java-3-271", + "uuid": "java-3-264", "seg": [ [ [ @@ -27429,7 +31975,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2403125, + "max": 0.240625 + }, "related_data": {} } } @@ -27440,7 +31989,7 @@ { "用构造器确保初始化": { "data": { - "uuid": "java-4-456", + "uuid": "java-4-459", "seg": [ [ [ @@ -27451,7 +32000,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.240625, + "max": 0.24066964285714287 + }, "related_data": {} } } @@ -27459,7 +32011,7 @@ { "缺省构造器": { "data": { - "uuid": "java-4-457", + "uuid": "java-4-460", "seg": [ [ [ @@ -27469,7 +32021,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24066964285714287, + "max": 0.24071428571428571 + }, "related_data": {} } } @@ -27480,7 +32035,7 @@ { "指定初始化": { "data": { - "uuid": "java-5-421", + "uuid": "java-5-431", "seg": [ [ [ @@ -27489,18 +32044,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24071428571428571, + "max": 0.24075892857142858 + }, "related_data": { "qa": { "data_id": [ - "13_2187_3386", - "13_366619_391424", - "13_188064_84029", - "13_765624_824600", - "13_671711_495926", - "13_221755_176420", - "13_241661_227976", - "13_7397491_53342543" + "13_2187_3386@13", + "13_366619_391424@13", + "13_188064_84029@13", + "13_765624_824600@13", + "13_671711_495926@13", + "13_221755_176420@13", + "13_241661_227976@13", + "13_7397491_53342543@13", + "13_195043_104061@13", + "13_756290_811477@13" ] } } @@ -27509,7 +32069,7 @@ } ], "data": { - "uuid": "java-4-458", + "uuid": "java-4-461", "seg": [ [ [ @@ -27518,7 +32078,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24071428571428571, + "max": 0.24075892857142858 + }, "related_data": {} } } @@ -27529,7 +32092,7 @@ { "初始化顺序": { "data": { - "uuid": "java-5-422", + "uuid": "java-5-432", "seg": [ [ [ @@ -27538,12 +32101,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24075892857142858, + "max": 0.24077380952380953 + }, "related_data": { "qa": { "data_id": [ - "13_197062_110483", - "13_357666_374795" + "13_197062_110483@13", + "13_357666_374795@13" ] } } @@ -27553,7 +32119,7 @@ { "静态数据的初始化": { "data": { - "uuid": "java-5-423", + "uuid": "java-5-433", "seg": [ [ [ @@ -27562,7 +32128,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24077380952380953, + "max": 0.24078869047619048 + }, "related_data": {} } } @@ -27570,7 +32139,7 @@ { "显式的静态初始化": { "data": { - "uuid": "java-5-424", + "uuid": "java-5-434", "seg": [ [ [ @@ -27580,12 +32149,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24078869047619048, + "max": 0.24080357142857142 + }, "related_data": { "qa": { "data_id": [ - "13_747565_798878", - "13_383288_418624" + "13_747565_798878@13", + "13_383288_418624@13" ] } } @@ -27594,7 +32166,7 @@ } ], "data": { - "uuid": "java-4-459", + "uuid": "java-4-462", "seg": [ [ [ @@ -27604,7 +32176,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24075892857142858, + "max": 0.24080357142857142 + }, "related_data": {} } } @@ -27615,25 +32190,29 @@ { "可变参数列表": { "data": { - "uuid": "java-5-425", + "uuid": "java-5-435", "seg": [ [ [ "可变", "参数", - "列表" + "列表", + "参数列表" ] ] ], - "level": "1", + "level": { + "min": 0.24080357142857142, + "max": 0.2408482142857143 + }, "related_data": { "qa": { "data_id": [ - "13_243831_232731", - "13_252719_252838", - "13_7403773_53352376", - "13_7465244_53451996", - "13_388247_427767" + "13_243831_232731@13", + "13_252719_252838@13", + "13_7403773_53352376@13", + "13_7465244_53451996@13", + "13_388247_427767@13" ] } } @@ -27642,7 +32221,7 @@ } ], "data": { - "uuid": "java-4-460", + "uuid": "java-4-463", "seg": [ [ [ @@ -27651,12 +32230,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24080357142857142, + "max": 0.2408482142857143 + }, "related_data": { "qa": { "data_id": [ - "13_207054_140475", - "13_198970_116003" + "13_207054_140475@13", + "13_198970_116003@13" ] } } @@ -27672,25 +32254,29 @@ { "将静态导入用于enum": { "data": { - "uuid": "java-6-97", + "uuid": "java-6-98", "seg": [ [ [ "静态", "导入", "用于", - "enum" + "enum", + "将静态" ] ] ], - "level": "1", + "level": { + "min": 0.2408482142857143, + "max": 0.24085193452380954 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-426", + "uuid": "java-5-436", "seg": [ [ [ @@ -27699,7 +32285,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2408482142857143, + "max": 0.24085193452380954 + }, "related_data": {} } } @@ -27710,7 +32299,7 @@ { "覆盖enum的方法": { "data": { - "uuid": "java-6-98", + "uuid": "java-6-99", "seg": [ [ [ @@ -27720,19 +32309,22 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24085193452380954, + "max": 0.24085565476190476 + }, "related_data": { "qa": { "data_id": [ - "13_744355_790220", - "13_215727_162203", - "13_171673_48782", - "13_7428020_53393406", - "13_367064_392203", - "13_351877_361779", - "13_1031308_1226639", - "13_714944_707043", - "13_29859_9090" + "13_744355_790220@13", + "13_215727_162203@13", + "13_171673_48782@13", + "13_7428020_53393406@13", + "13_367064_392203@13", + "13_351877_361779@13", + "13_1031308_1226639@13", + "13_714944_707043@13", + "13_29859_9090@13" ] } } @@ -27741,7 +32333,7 @@ } ], "data": { - "uuid": "java-5-427", + "uuid": "java-5-437", "seg": [ [ [ @@ -27751,7 +32343,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24085193452380954, + "max": 0.24085565476190476 + }, "related_data": {} } } @@ -27759,7 +32354,7 @@ { "switch语句中的enum": { "data": { - "uuid": "java-5-428", + "uuid": "java-5-438", "seg": [ [ [ @@ -27769,7 +32364,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24085565476190476, + "max": 0.240859375 + }, "related_data": {} } } @@ -27777,7 +32375,7 @@ { "values()的神秘之处": { "data": { - "uuid": "java-5-429", + "uuid": "java-5-439", "seg": [ [ [ @@ -27786,7 +32384,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.240859375, + "max": 0.24086309523809524 + }, "related_data": {} } } @@ -27794,21 +32395,26 @@ { "实现但不继承随机选取": { "data": { - "uuid": "java-5-430", + "uuid": "java-5-440", "seg": [ [ [ "继承", "随机", - "选取" + "选取", + "不继承", + "随机选取" ] ] ], - "level": "1", + "level": { + "min": 0.24086309523809524, + "max": 0.2408668154761905 + }, "related_data": { "qa": { "data_id": [ - "13_7453589_53436288" + "13_7453589_53436288@13" ] } } @@ -27818,7 +32424,7 @@ { "为组织而使用接口": { "data": { - "uuid": "java-5-431", + "uuid": "java-5-441", "seg": [ [ [ @@ -27827,7 +32433,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2408668154761905, + "max": 0.2408705357142857 + }, "related_data": {} } } @@ -27835,16 +32444,20 @@ { "使用EnumSet替代标志": { "data": { - "uuid": "java-5-432", + "uuid": "java-5-442", "seg": [ [ [ "enumset", - "标志" + "标志", + "替代标志" ] ] ], - "level": "1", + "level": { + "min": 0.2408705357142857, + "max": 0.24087425595238093 + }, "related_data": {} } } @@ -27852,7 +32465,7 @@ { "使用EnumMap": { "data": { - "uuid": "java-5-433", + "uuid": "java-5-443", "seg": [ [ [ @@ -27860,7 +32473,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24087425595238093, + "max": 0.24087797619047618 + }, "related_data": {} } } @@ -27871,17 +32487,21 @@ { "使用enum的职责链": { "data": { - "uuid": "java-6-99", + "uuid": "java-6-100", "seg": [ [ [ "enum", "职责", - "链" + "链", + "职责链" ] ] ], - "level": "1", + "level": { + "min": 0.24087797619047618, + "max": 0.2408798363095238 + }, "related_data": {} } } @@ -27889,7 +32509,7 @@ { "使用enum的状态机": { "data": { - "uuid": "java-6-100", + "uuid": "java-6-101", "seg": [ [ [ @@ -27898,14 +32518,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2408798363095238, + "max": 0.24088169642857143 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-434", + "uuid": "java-5-444", "seg": [ [ [ @@ -27915,7 +32538,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24087797619047618, + "max": 0.24088169642857143 + }, "related_data": {} } } @@ -27926,7 +32552,7 @@ { "使用enum分发": { "data": { - "uuid": "java-6-101", + "uuid": "java-6-102", "seg": [ [ [ @@ -27935,7 +32561,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24088169642857143, + "max": 0.24088355654761906 + }, "related_data": {} } } @@ -27943,7 +32572,7 @@ { "使用EnumMap分发": { "data": { - "uuid": "java-6-102", + "uuid": "java-6-103", "seg": [ [ [ @@ -27952,14 +32581,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24088355654761906, + "max": 0.24088541666666666 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-435", + "uuid": "java-5-445", "seg": [ [ [ @@ -27967,7 +32599,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24088169642857143, + "max": 0.24088541666666666 + }, "related_data": {} } } @@ -27975,22 +32610,26 @@ { "使用枚举类型设置常量": { "data": { - "uuid": "java-5-436", + "uuid": "java-5-446", "seg": [ [ [ "枚举", "类型", "设置", - "常量" + "常量", + "枚举类型" ] ] ], - "level": "1", + "level": { + "min": 0.24088541666666666, + "max": 0.24088913690476188 + }, "related_data": { "qa": { "data_id": [ - "13_680107_529118" + "13_680107_529118@13" ] } } @@ -28000,21 +32639,25 @@ { "使用枚举类型的优势": { "data": { - "uuid": "java-5-437", + "uuid": "java-5-447", "seg": [ [ [ "枚举", "类型", - "优势" + "优势", + "枚举类型" ] ] ], - "level": "1", + "level": { + "min": 0.24088913690476188, + "max": 0.24089285714285713 + }, "related_data": { "qa": { "data_id": [ - "13_245664_236374" + "13_245664_236374@13" ] } } @@ -28023,16 +32666,20 @@ } ], "data": { - "uuid": "java-4-461", + "uuid": "java-4-464", "seg": [ [ [ "枚举", - "类型" + "类型", + "枚举类型" ] ] ], - "level": "1", + "level": { + "min": 0.2408482142857143, + "max": 0.24089285714285713 + }, "related_data": {} } } @@ -28040,7 +32687,7 @@ { "类初始化块": { "data": { - "uuid": "java-4-462", + "uuid": "java-4-465", "seg": [ [ [ @@ -28049,11 +32696,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24089285714285713, + "max": 0.2409375 + }, "related_data": { "qa": { "data_id": [ - "13_741839_782605" + "13_741839_782605@13" ] } } @@ -28062,7 +32712,7 @@ } ], "data": { - "uuid": "java-3-272", + "uuid": "java-3-265", "seg": [ [ [ @@ -28073,7 +32723,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.240625, + "max": 0.2409375 + }, "related_data": {} } } @@ -28087,7 +32740,7 @@ { "包访问权限": { "data": { - "uuid": "java-5-438", + "uuid": "java-5-448", "seg": [ [ [ @@ -28097,20 +32750,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2409375, + "max": 0.2409765625 + }, "related_data": { "qa": { "data_id": [ - "13_211196_150903", - "13_374732_403810", - "13_1054502_1251758", - "13_668396_488645", - "13_769616_830565", - "13_667682_486963", - "13_353618_365290", - "13_650379_457113", - "13_686395_551593", - "13_773666_837419" + "13_211196_150903@13", + "13_374732_403810@13", + "13_7456173_53439627@13", + "13_1054502_1251758@13", + "13_668396_488645@13", + "13_769616_830565@13", + "13_667682_486963@13", + "13_353618_365290@13", + "13_650379_457113@13", + "13_686395_551593@13" ] } } @@ -28120,7 +32776,7 @@ { "public:接口访问权限": { "data": { - "uuid": "java-5-439", + "uuid": "java-5-449", "seg": [ [ [ @@ -28131,19 +32787,22 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2409765625, + "max": 0.241015625 + }, "related_data": { "qa": { "data_id": [ - "13_246528_238717", - "13_226711_189653", - "13_1034072_1229420", - "13_654737_464688", - "13_238692_220899", - "13_1098109_1312458", - "13_1056786_1253832", - "13_715079_707252", - "13_807415_902812" + "13_246528_238717@13", + "13_226711_189653@13", + "13_1034072_1229420@13", + "13_654737_464688@13", + "13_238692_220899@13", + "13_1098109_1312458@13", + "13_1056786_1253832@13", + "13_715079_707252@13", + "13_807415_902812@13" ] } } @@ -28153,7 +32812,7 @@ { "private: 你无法访问": { "data": { - "uuid": "java-5-440", + "uuid": "java-5-450", "seg": [ [ [ @@ -28162,19 +32821,22 @@ ] ] ], - "level": "1", + "level": { + "min": 0.241015625, + "max": 0.2410546875 + }, "related_data": { "qa": { "data_id": [ - "13_651275_458539", - "13_651348_458440", - "13_7408105_53358304", - "13_226796_189898", - "13_1101593_1316581", - "13_181812_67426", - "13_220946_174566", - "13_681061_532691", - "13_7415580_53369084" + "13_651275_458539@13", + "13_651348_458440@13", + "13_7408105_53358304@13", + "13_226796_189898@13", + "13_1101593_1316581@13", + "13_181812_67426@13", + "13_220946_174566@13", + "13_681061_532691@13", + "13_7415580_53369084@13" ] } } @@ -28184,7 +32846,7 @@ { "protected:继承访问权限": { "data": { - "uuid": "java-5-441", + "uuid": "java-5-451", "seg": [ [ [ @@ -28199,12 +32861,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2410546875, + "max": 0.24109375 + }, "related_data": { "qa": { "data_id": [ - "13_367032_392193", - "13_834093_937136" + "13_367032_392193@13", + "13_834093_937136@13" ] } } @@ -28213,18 +32878,22 @@ } ], "data": { - "uuid": "java-4-463", + "uuid": "java-4-466", "seg": [ [ [ "java", "访问", "权限", - "修饰词" + "修饰词", + "权限修饰词" ] ] ], - "level": "1", + "level": { + "min": 0.2409375, + "max": 0.24109375 + }, "related_data": {} } } @@ -28232,7 +32901,7 @@ { "类的访问权限": { "data": { - "uuid": "java-4-464", + "uuid": "java-4-467", "seg": [ [ [ @@ -28242,14 +32911,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24109375, + "max": 0.24125 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-273", + "uuid": "java-3-266", "seg": [ [ [ @@ -28259,7 +32931,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2409375, + "max": 0.24125 + }, "related_data": {} } } @@ -28270,7 +32945,7 @@ { "组合语法": { "data": { - "uuid": "java-4-465", + "uuid": "java-4-468", "seg": [ [ [ @@ -28279,7 +32954,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24125, + "max": 0.24131249999999999 + }, "related_data": {} } } @@ -28290,7 +32968,7 @@ { "初始化基类": { "data": { - "uuid": "java-5-442", + "uuid": "java-5-452", "seg": [ [ [ @@ -28299,14 +32977,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24131249999999999, + "max": 0.241375 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-466", + "uuid": "java-4-469", "seg": [ [ [ @@ -28315,7 +32996,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24131249999999999, + "max": 0.241375 + }, "related_data": {} } } @@ -28326,17 +33010,21 @@ { "创建代理对象": { "data": { - "uuid": "java-5-443", + "uuid": "java-5-453", "seg": [ [ [ "创建", "代理", - "对象" + "对象", + "代理对象" ] ] ], - "level": "1", + "level": { + "min": 0.241375, + "max": 0.24140625 + }, "related_data": {} } } @@ -28344,22 +33032,26 @@ { "代理类的特性": { "data": { - "uuid": "java-5-444", + "uuid": "java-5-454", "seg": [ [ [ "代理", "类", - "特性" + "特性", + "代理类" ] ] ], - "level": "1", + "level": { + "min": 0.24140625, + "max": 0.2414375 + }, "related_data": { "qa": { "data_id": [ - "13_745902_794507", - "13_379970_412376" + "13_745902_794507@13", + "13_379970_412376@13" ] } } @@ -28368,7 +33060,7 @@ } ], "data": { - "uuid": "java-4-467", + "uuid": "java-4-470", "seg": [ [ [ @@ -28376,7 +33068,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.241375, + "max": 0.2414375 + }, "related_data": {} } } @@ -28384,7 +33079,7 @@ { "在组合与继承之间选择": { "data": { - "uuid": "java-4-468", + "uuid": "java-4-471", "seg": [ [ [ @@ -28396,7 +33091,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2414375, + "max": 0.24150000000000002 + }, "related_data": {} } } @@ -28404,7 +33102,7 @@ { "protected关键字": { "data": { - "uuid": "java-4-469", + "uuid": "java-4-472", "seg": [ [ [ @@ -28413,11 +33111,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24150000000000002, + "max": 0.2415625 + }, "related_data": { "qa": { "data_id": [ - "13_248434_243203" + "13_248434_243203@13" ] } } @@ -28426,7 +33127,7 @@ } ], "data": { - "uuid": "java-3-274", + "uuid": "java-3-267", "seg": [ [ [ @@ -28435,7 +33136,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24125, + "max": 0.2415625 + }, "related_data": {} } } @@ -28446,7 +33150,7 @@ { "基本概念": { "data": { - "uuid": "java-4-470", + "uuid": "java-4-473", "seg": [ [ [ @@ -28454,7 +33158,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2415625, + "max": 0.24158854166666668 + }, "related_data": {} } } @@ -28462,7 +33169,7 @@ { "添加一组元素": { "data": { - "uuid": "java-4-471", + "uuid": "java-4-474", "seg": [ [ [ @@ -28471,7 +33178,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24158854166666668, + "max": 0.24161458333333335 + }, "related_data": {} } } @@ -28479,7 +33189,7 @@ { "容器的打印": { "data": { - "uuid": "java-4-472", + "uuid": "java-4-475", "seg": [ [ [ @@ -28488,7 +33198,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24161458333333335, + "max": 0.241640625 + }, "related_data": {} } } @@ -28496,7 +33209,7 @@ { "List": { "data": { - "uuid": "java-4-473", + "uuid": "java-4-476", "seg": [ [ [ @@ -28504,7 +33217,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.241640625, + "max": 0.24166666666666667 + }, "related_data": {} } } @@ -28515,7 +33231,7 @@ { "ListIterator": { "data": { - "uuid": "java-5-445", + "uuid": "java-5-455", "seg": [ [ [ @@ -28523,11 +33239,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24166666666666667, + "max": 0.24169270833333334 + }, "related_data": { "qa": { "data_id": [ - "13_716083_708619" + "13_716083_708619@13" ] } } @@ -28536,7 +33255,7 @@ } ], "data": { - "uuid": "java-4-474", + "uuid": "java-4-477", "seg": [ [ [ @@ -28545,7 +33264,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24166666666666667, + "max": 0.24169270833333334 + }, "related_data": {} } } @@ -28553,7 +33275,7 @@ { "LinkedList": { "data": { - "uuid": "java-4-475", + "uuid": "java-4-478", "seg": [ [ [ @@ -28561,15 +33283,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24169270833333334, + "max": 0.24171875 + }, "related_data": { "qa": { "data_id": [ - "13_371596_398247", - "13_7423405_53383184", - "13_747136_798025", - "13_351834_361901", - "13_644511_445245" + "13_371596_398247@13", + "13_7423405_53383184@13", + "13_747136_798025@13", + "13_351834_361901@13", + "13_644511_445245@13" ] } } @@ -28579,7 +33304,7 @@ { "Stack": { "data": { - "uuid": "java-4-476", + "uuid": "java-4-479", "seg": [ [ [ @@ -28587,13 +33312,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24171875, + "max": 0.24174479166666668 + }, "related_data": { "qa": { "data_id": [ - "13_208441_144428", - "13_716026_708555", - "13_7399301_53346341" + "13_208441_144428@13", + "13_716026_708555@13", + "13_7399301_53346341@13" ] } } @@ -28603,7 +33331,7 @@ { "Set": { "data": { - "uuid": "java-4-477", + "uuid": "java-4-480", "seg": [ [ [ @@ -28611,7 +33339,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24174479166666668, + "max": 0.24177083333333335 + }, "related_data": {} } } @@ -28619,7 +33350,7 @@ { "Map": { "data": { - "uuid": "java-4-478", + "uuid": "java-4-481", "seg": [ [ [ @@ -28627,7 +33358,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24177083333333335, + "max": 0.24179687500000002 + }, "related_data": {} } } @@ -28638,7 +33372,7 @@ { "PriorityQueue": { "data": { - "uuid": "java-5-446", + "uuid": "java-5-456", "seg": [ [ [ @@ -28646,14 +33380,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24179687500000002, + "max": 0.24182291666666667 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-479", + "uuid": "java-4-482", "seg": [ [ [ @@ -28661,7 +33398,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24179687500000002, + "max": 0.24182291666666667 + }, "related_data": {} } } @@ -28669,7 +33409,7 @@ { "Collection和Iterator": { "data": { - "uuid": "java-4-480", + "uuid": "java-4-483", "seg": [ [ [ @@ -28680,8 +33420,18 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.24182291666666667, + "max": 0.24184895833333334 + }, + "related_data": { + "qa": { + "data_id": [ + "13_743540_788017@13", + "13_7416661_53371001@13" + ] + } + } } } }, @@ -28691,25 +33441,30 @@ { "适配器方法惯用法": { "data": { - "uuid": "java-5-447", + "uuid": "java-5-457", "seg": [ [ [ "适配器", "方法", "惯用", - "法" + "法", + "适配器方法", + "方法惯用" ] ] ], - "level": "1", + "level": { + "min": 0.24184895833333334, + "max": 0.241875 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-481", + "uuid": "java-4-484", "seg": [ [ [ @@ -28721,14 +33476,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24184895833333334, + "max": 0.241875 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-275", + "uuid": "java-3-268", "seg": [ [ [ @@ -28737,7 +33495,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2415625, + "max": 0.241875 + }, "related_data": {} } } @@ -28748,7 +33509,7 @@ { "概念": { "data": { - "uuid": "java-4-482", + "uuid": "java-4-485", "seg": [ [ [ @@ -28756,11 +33517,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.241875, + "max": 0.2419034090909091 + }, "related_data": { "qa": { "data_id": [ - "13_335167_328738" + "13_335167_328738@13" ] } } @@ -28768,48 +33532,322 @@ } }, { - "创建自定义异常": { - "data": { - "uuid": "java-4-483", - "seg": [ - [ - [ - "创建", - "自定义", - "异常" - ] - ] - ], - "level": "1", - "related_data": {} - } - } - }, - { - "Java标准异常": { + "捕获异常": { "children": [ { - "特例: RuntimeException(运行时异常)": { + "try块": { "data": { - "uuid": "java-5-448", + "uuid": "java-5-458", "seg": [ [ [ - "特例", - "runtimeexception", - "运行", - "异常" + "try", + "块" ] ] ], - "level": "1", - "related_data": {} - } - } - } - ], + "level": { + "min": 0.2419034090909091, + "max": 0.2419090909090909 + }, + "related_data": { + "qa": { + "data_id": [ + "13_387813_427161@13" + ] + } + } + } + } + }, + { + "异常处理程序": { + "data": { + "uuid": "java-5-459", + "seg": [ + [ + [ + "异常", + "处理程序", + "异常处理程序" + ] + ] + ], + "level": { + "min": 0.2419090909090909, + "max": 0.24191477272727274 + }, + "related_data": { + "qa": { + "data_id": [ + "13_7455998_53439330@13" + ] + } + } + } + } + }, + { + "f?inally子句": { + "data": { + "uuid": "java-5-460", + "seg": [ + [ + [ + "f", + "inally", + "子句" + ] + ] + ], + "level": { + "min": 0.24191477272727274, + "max": 0.24192045454545455 + }, + "related_data": {} + } + } + }, + { + "try-with-Resources语句": { + "data": { + "uuid": "java-5-461", + "seg": [ + [ + [ + "try", + "with", + "resources", + "语句" + ] + ] + ], + "level": { + "min": 0.24192045454545455, + "max": 0.24192613636363638 + }, + "related_data": {} + } + } + }, + { + "分析堆栈轨迹元素": { + "data": { + "uuid": "java-5-462", + "seg": [ + [ + [ + "分析", + "堆栈", + "轨迹", + "元素", + "堆栈轨迹", + "轨迹元素" + ] + ] + ], + "level": { + "min": 0.24192613636363638, + "max": 0.2419318181818182 + }, + "related_data": {} + } + } + } + ], "data": { - "uuid": "java-4-484", + "uuid": "java-4-486", + "seg": [ + [ + [ + "捕获", + "异常" + ] + ] + ], + "level": { + "min": 0.2419034090909091, + "max": 0.2419318181818182 + }, + "related_data": {} + } + } + }, + { + "创建自定义异常": { + "data": { + "uuid": "java-4-487", + "seg": [ + [ + [ + "创建", + "自定义", + "异常" + ] + ] + ], + "level": { + "min": 0.2419318181818182, + "max": 0.24196022727272729 + }, + "related_data": {} + } + } + }, + { + "异常说明": { + "data": { + "uuid": "java-4-488", + "seg": [ + [ + [ + "异常", + "异常说明" + ] + ] + ], + "level": { + "min": 0.24196022727272729, + "max": 0.24198863636363638 + }, + "related_data": {} + } + } + }, + { + "捕获所有异常": { + "children": [ + { + "栈轨迹": { + "data": { + "uuid": "java-5-463", + "seg": [ + [ + [ + "栈", + "轨迹", + "栈轨迹" + ] + ] + ], + "level": { + "min": 0.24198863636363638, + "max": 0.24199810606060607 + }, + "related_data": {} + } + } + }, + { + "重新抛出异常": { + "data": { + "uuid": "java-5-464", + "seg": [ + [ + [ + "抛出", + "异常" + ] + ] + ], + "level": { + "min": 0.24199810606060607, + "max": 0.24200757575757578 + }, + "related_data": { + "qa": { + "data_id": [ + "13_390336_431982@13", + "13_704646_598121@13", + "13_1049102_1246557@13", + "13_7442988_53420007@13", + "13_696702_580901@13", + "13_680881_532072@13", + "13_391933_435163@13", + "13_767471_827083@13", + "13_1054632_1251820@13", + "13_659745_473746@13" + ] + } + } + } + } + }, + { + "异常链": { + "data": { + "uuid": "java-5-465", + "seg": [ + [ + [ + "异常", + "链", + "异常链" + ] + ] + ], + "level": { + "min": 0.24200757575757578, + "max": 0.24201704545454547 + }, + "related_data": {} + } + } + } + ], + "data": { + "uuid": "java-4-489", + "seg": [ + [ + [ + "捕获", + "异常" + ] + ] + ], + "level": { + "min": 0.24198863636363638, + "max": 0.24201704545454547 + }, + "related_data": {} + } + } + }, + { + "Java标准异常": { + "children": [ + { + "特例: RuntimeException(运行时异常)": { + "data": { + "uuid": "java-5-466", + "seg": [ + [ + [ + "特例", + "runtimeexception", + "运行", + "异常" + ] + ] + ], + "level": { + "min": 0.24201704545454547, + "max": 0.24204545454545454 + }, + "related_data": { + "qa": { + "data_id": [ + "13_373739_402001@13", + "13_1065_1855@13" + ] + } + } + } + } + } + ], + "data": { + "uuid": "java-4-490", "seg": [ [ [ @@ -28819,7 +33857,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24201704545454547, + "max": 0.24204545454545454 + }, "related_data": {} } } @@ -28830,7 +33871,7 @@ { "finally用来做什么": { "data": { - "uuid": "java-5-449", + "uuid": "java-5-467", "seg": [ [ [ @@ -28839,20 +33880,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24204545454545454, + "max": 0.24205492424242422 + }, "related_data": { "qa": { "data_id": [ - "13_364246_385671", - "13_244876_234766", - "13_27861_7757", - "13_657542_470232", - "13_362198_380857", - "13_743787_788803", - "13_7449619_53431609", - "13_7456191_53439614", - "13_1090037_1296720", - "13_7436628_53408472" + "13_364246_385671@13", + "13_244876_234766@13", + "13_27861_7757@13", + "13_657542_470232@13", + "13_362198_380857@13", + "13_743787_788803@13", + "13_7449619_53431609@13", + "13_7456191_53439614@13", + "13_1090037_1296720@13", + "13_7436628_53408472@13" ] } } @@ -28862,7 +33906,7 @@ { "在return中使用finally": { "data": { - "uuid": "java-5-450", + "uuid": "java-5-468", "seg": [ [ [ @@ -28871,11 +33915,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24205492424242422, + "max": 0.24206439393939394 + }, "related_data": { "qa": { "data_id": [ - "13_201328_123717" + "13_201328_123717@13" ] } } @@ -28885,7 +33932,7 @@ { "缺憾:异常丢失": { "data": { - "uuid": "java-5-451", + "uuid": "java-5-469", "seg": [ [ [ @@ -28895,18 +33942,22 @@ [ [ "异常", - "丢失" + "丢失", + "异常丢失" ] ] ], - "level": "1", + "level": { + "min": 0.24206439393939394, + "max": 0.24207386363636363 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-485", + "uuid": "java-4-491", "seg": [ [ [ @@ -28915,7 +33966,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24204545454545454, + "max": 0.24207386363636363 + }, "related_data": {} } } @@ -28926,7 +33980,7 @@ { "使用构造器执行初始化": { "data": { - "uuid": "java-5-452", + "uuid": "java-5-470", "seg": [ [ [ @@ -28937,15 +33991,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24207386363636363, + "max": 0.24208806818181816 + }, "related_data": { "qa": { "data_id": [ - "13_199550_117929", - "13_157713_20919", - "13_176212_58081", - "13_261718_273780", - "13_717955_712724" + "13_199550_117929@13", + "13_157713_20919@13", + "13_176212_58081@13", + "13_261718_273780@13", + "13_717955_712724@13" ] } } @@ -28955,7 +34012,7 @@ { "构造器重载": { "data": { - "uuid": "java-5-453", + "uuid": "java-5-471", "seg": [ [ [ @@ -28965,12 +34022,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24208806818181816, + "max": 0.24210227272727272 + }, "related_data": { "qa": { "data_id": [ - "13_176604_59011", - "13_156635_18730" + "13_176604_59011@13", + "13_156635_18730@13" ] } } @@ -28979,7 +34039,7 @@ } ], "data": { - "uuid": "java-4-486", + "uuid": "java-4-492", "seg": [ [ [ @@ -28988,7 +34048,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24207386363636363, + "max": 0.24210227272727272 + }, "related_data": {} } } @@ -28996,20 +34059,24 @@ { "异常匹配": { "data": { - "uuid": "java-4-487", + "uuid": "java-4-493", "seg": [ [ [ "异常", - "匹配" + "匹配", + "异常匹配" ] ] ], - "level": "1", + "level": { + "min": 0.24210227272727272, + "max": 0.24213068181818181 + }, "related_data": { "qa": { "data_id": [ - "13_7411463_53362467" + "13_7411463_53362467@13" ] } } @@ -29022,7 +34089,7 @@ { "历史": { "data": { - "uuid": "java-5-454", + "uuid": "java-5-472", "seg": [ [ [ @@ -29030,7 +34097,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24213068181818181, + "max": 0.24213778409090908 + }, "related_data": {} } } @@ -29038,7 +34108,7 @@ { "观点": { "data": { - "uuid": "java-5-455", + "uuid": "java-5-473", "seg": [ [ [ @@ -29046,7 +34116,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24213778409090908, + "max": 0.24214488636363635 + }, "related_data": {} } } @@ -29054,17 +34127,21 @@ { "把异常传递给控制台": { "data": { - "uuid": "java-5-456", + "uuid": "java-5-474", "seg": [ [ [ "异常", "传递", - "控制台" + "控制台", + "异常传递" ] ] ], - "level": "1", + "level": { + "min": 0.24214488636363635, + "max": 0.24215198863636364 + }, "related_data": {} } } @@ -29072,25 +34149,29 @@ { "把“受检查异常”转换为“不受检查的异常”": { "data": { - "uuid": "java-5-457", + "uuid": "java-5-475", "seg": [ [ [ "受", "检查", "异常", - "转换" + "转换", + "不受" ] ] ], - "level": "1", + "level": { + "min": 0.24215198863636364, + "max": 0.2421590909090909 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-488", + "uuid": "java-4-494", "seg": [ [ [ @@ -29098,12 +34179,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24213068181818181, + "max": 0.2421590909090909 + }, "related_data": { "qa": { "data_id": [ - "13_347727_354729", - "13_978017_1136944" + "13_347727_354729@13", + "13_978017_1136944@13" ] } } @@ -29113,7 +34197,7 @@ { "异常使用指南": { "data": { - "uuid": "java-4-489", + "uuid": "java-4-495", "seg": [ [ [ @@ -29122,23 +34206,30 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2421590909090909, + "max": 0.2421875 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-276", + "uuid": "java-3-269", "seg": [ [ [ "异常", - "处理错误" + "处理错误", + "异常处理错误" ] ] ], - "level": "1", + "level": { + "min": 0.241875, + "max": 0.2421875 + }, "related_data": {} } } @@ -29152,17 +34243,21 @@ { "类字面常量": { "data": { - "uuid": "java-5-458", + "uuid": "java-5-476", "seg": [ [ [ "类", "字面", - "常量" + "常量", + "字面常量" ] ] ], - "level": "1", + "level": { + "min": 0.2421875, + "max": 0.24220238095238095 + }, "related_data": {} } } @@ -29170,7 +34265,7 @@ { "泛化的Class引用": { "data": { - "uuid": "java-5-459", + "uuid": "java-5-477", "seg": [ [ [ @@ -29180,20 +34275,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24220238095238095, + "max": 0.24221726190476192 + }, "related_data": { "qa": { "data_id": [ - "13_226079_188037", - "13_7466594_53453883", - "13_233373_208168", - "13_161975_32393", - "13_564846_439710", - "13_358620_376992", - "13_1094248_1304415", - "13_671019_494305", - "13_2532857_18665821", - "13_26365_7754" + "13_226079_188037@13", + "13_7466594_53453883@13", + "13_233373_208168@13", + "13_161975_32393@13", + "13_564846_439710@13", + "13_358620_376992@13", + "13_1094248_1304415@13", + "13_671019_494305@13", + "13_2532857_18665821@13", + "13_26365_7754@13" ] } } @@ -29203,23 +34301,27 @@ { "新的转型语法": { "data": { - "uuid": "java-5-460", + "uuid": "java-5-478", "seg": [ [ [ "转型", - "语法" + "语法", + "转型语法" ] ] ], - "level": "1", + "level": { + "min": 0.24221726190476192, + "max": 0.24223214285714287 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-490", + "uuid": "java-4-496", "seg": [ [ [ @@ -29228,7 +34330,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2421875, + "max": 0.24223214285714287 + }, "related_data": {} } } @@ -29239,17 +34344,21 @@ { "使用类字面常量": { "data": { - "uuid": "java-5-461", + "uuid": "java-5-479", "seg": [ [ [ "类", "字面", - "常量" + "常量", + "字面常量" ] ] ], - "level": "1", + "level": { + "min": 0.24223214285714287, + "max": 0.24224702380952381 + }, "related_data": {} } } @@ -29257,7 +34366,7 @@ { "动态instanceof": { "data": { - "uuid": "java-5-462", + "uuid": "java-5-480", "seg": [ [ [ @@ -29266,11 +34375,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24224702380952381, + "max": 0.24226190476190476 + }, "related_data": { "qa": { "data_id": [ - "13_246313_238153" + "13_246313_238153@13" ] } } @@ -29280,7 +34392,7 @@ { "递归计数": { "data": { - "uuid": "java-5-463", + "uuid": "java-5-481", "seg": [ [ [ @@ -29289,24 +34401,31 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24226190476190476, + "max": 0.2422767857142857 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-491", + "uuid": "java-4-497", "seg": [ [ [ "类型转换", "做", - "检查" + "检查", + "先做" ] ] ], - "level": "1", + "level": { + "min": 0.24223214285714287, + "max": 0.2422767857142857 + }, "related_data": {} } } @@ -29314,7 +34433,7 @@ { "注册工厂": { "data": { - "uuid": "java-4-492", + "uuid": "java-4-498", "seg": [ [ [ @@ -29323,7 +34442,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2422767857142857, + "max": 0.24232142857142858 + }, "related_data": {} } } @@ -29331,7 +34453,7 @@ { "instanceof与Class的等价性": { "data": { - "uuid": "java-4-493", + "uuid": "java-4-499", "seg": [ [ [ @@ -29340,11 +34462,15 @@ [ "class", "等价", - "性" + "性", + "等价性" ] ] ], - "level": "1", + "level": { + "min": 0.24232142857142858, + "max": 0.24236607142857142 + }, "related_data": {} } } @@ -29355,7 +34481,7 @@ { "类方法抽取器": { "data": { - "uuid": "java-5-464", + "uuid": "java-5-482", "seg": [ [ [ @@ -29366,7 +34492,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24236607142857142, + "max": 0.24236979166666667 + }, "related_data": {} } } @@ -29377,7 +34506,7 @@ { "访问构造方法": { "data": { - "uuid": "java-6-103", + "uuid": "java-6-104", "seg": [ [ [ @@ -29386,11 +34515,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24236979166666667, + "max": 0.24237103174603175 + }, "related_data": { "qa": { "data_id": [ - "13_197024_110385" + "13_197024_110385@13" ] } } @@ -29400,7 +34532,7 @@ { "访问成员变量": { "data": { - "uuid": "java-6-104", + "uuid": "java-6-105", "seg": [ [ [ @@ -29410,12 +34542,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24237103174603175, + "max": 0.2423722718253968 + }, "related_data": { "qa": { "data_id": [ - "13_768224_828191", - "13_228652_195003" + "13_768224_828191@13", + "13_228652_195003@13" ] } } @@ -29425,7 +34560,7 @@ { "访问方法": { "data": { - "uuid": "java-6-105", + "uuid": "java-6-106", "seg": [ [ [ @@ -29434,14 +34569,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2423722718253968, + "max": 0.2423735119047619 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-465", + "uuid": "java-5-483", "seg": [ [ [ @@ -29454,7 +34592,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24236979166666667, + "max": 0.2423735119047619 + }, "related_data": {} } } @@ -29465,7 +34606,7 @@ { "定义Annotation类型": { "data": { - "uuid": "java-6-106", + "uuid": "java-6-107", "seg": [ [ [ @@ -29475,15 +34616,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2423735119047619, + "max": 0.24237537202380952 + }, "related_data": { "qa": { "data_id": [ - "13_362291_384455", - "13_234803_212321", - "13_868324_1025718", - "13_1084676_1291292", - "13_773315_836957" + "13_362291_384455@13", + "13_234803_212321@13", + "13_868324_1025718@13", + "13_1084676_1291292@13", + "13_773315_836957@13" ] } } @@ -29493,7 +34637,7 @@ { "访问Annotation信息": { "data": { - "uuid": "java-6-107", + "uuid": "java-6-108", "seg": [ [ [ @@ -29503,20 +34647,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24237537202380952, + "max": 0.24237723214285714 + }, "related_data": { "qa": { "data_id": [ - "13_7431335_53399738", - "13_7458329_53442898", - "13_7438868_53412321", - "13_7434365_53404793", - "13_657675_470558", - "13_227896_192887", - "13_724133_726132", - "13_962223_1111773", - "13_389377_429901", - "13_356947_373119" + "13_7431335_53399738@13", + "13_7458329_53442898@13", + "13_7438868_53412321@13", + "13_7434365_53404793@13", + "13_657675_470558@13", + "13_227896_192887@13", + "13_724133_726132@13", + "13_962223_1111773@13", + "13_389377_429901@13", + "13_356947_373119@13" ] } } @@ -29525,7 +34672,7 @@ } ], "data": { - "uuid": "java-5-466", + "uuid": "java-5-484", "seg": [ [ [ @@ -29534,20 +34681,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2423735119047619, + "max": 0.24237723214285714 + }, "related_data": { "qa": { "data_id": [ - "13_748581_800584", - "13_1000965_1178722", - "13_378990_410894", - "13_7454898_53437589", - "13_386259_424860", - "13_245691_236447", - "13_251787_250750", - "13_743983_789340", - "13_659086_472639", - "13_357775_375019" + "13_748581_800584@13", + "13_1000965_1178722@13", + "13_378990_410894@13", + "13_7454898_53437589@13", + "13_386259_424860@13", + "13_245691_236447@13", + "13_251787_250750@13", + "13_743983_789340@13", + "13_659086_472639@13", + "13_357775_375019@13" ] } } @@ -29557,17 +34707,21 @@ { "声明异常入门": { "data": { - "uuid": "java-5-467", + "uuid": "java-5-485", "seg": [ [ [ "声明", "异常", - "入门" + "入门", + "异常入门" ] ] ], - "level": "1", + "level": { + "min": 0.24237723214285714, + "max": 0.24238095238095236 + }, "related_data": {} } } @@ -29575,7 +34729,7 @@ { "资源": { "data": { - "uuid": "java-5-468", + "uuid": "java-5-486", "seg": [ [ [ @@ -29583,7 +34737,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24238095238095236, + "max": 0.24238467261904761 + }, "related_data": {} } } @@ -29591,7 +34748,7 @@ { "利用反射分析类的能力": { "data": { - "uuid": "java-5-469", + "uuid": "java-5-487", "seg": [ [ [ @@ -29603,12 +34760,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24238467261904761, + "max": 0.24238839285714286 + }, "related_data": { "qa": { "data_id": [ - "13_763611_822099", - "13_252246_251985" + "13_763611_822099@13", + "13_252246_251985@13" ] } } @@ -29618,7 +34778,7 @@ { "使用反射在运行时分析": { "data": { - "uuid": "java-5-470", + "uuid": "java-5-488", "seg": [ [ [ @@ -29628,7 +34788,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24238839285714286, + "max": 0.2423921130952381 + }, "related_data": {} } } @@ -29636,18 +34799,22 @@ { "使用反射编写泛型数组": { "data": { - "uuid": "java-5-471", + "uuid": "java-5-489", "seg": [ [ [ "反射", "编写", "泛型", - "数组" + "数组", + "泛型数组" ] ] ], - "level": "1", + "level": { + "min": 0.2423921130952381, + "max": 0.24239583333333334 + }, "related_data": {} } } @@ -29655,31 +34822,27 @@ { "访问字段": { "data": { - "uuid": "java-5-472", + "uuid": "java-5-490", "seg": [ [ [ "访问", - "字", - "段" + "字段" ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_673828_502484" - ] - } - } + "level": { + "min": 0.24239583333333334, + "max": 0.24239955357142856 + }, + "related_data": {} } } }, { "调用方法": { "data": { - "uuid": "java-5-473", + "uuid": "java-5-491", "seg": [ [ [ @@ -29688,15 +34851,26 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.24239955357142856, + "max": 0.2424032738095238 + }, + "related_data": { + "qa": { + "data_id": [ + "13_1101123_1315725@13", + "13_1060280_1257804@13", + "13_241789_228255@13" + ] + } + } } } }, { "调用构造方法": { "data": { - "uuid": "java-5-474", + "uuid": "java-5-492", "seg": [ [ [ @@ -29705,13 +34879,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2424032738095238, + "max": 0.24240699404761903 + }, "related_data": { "qa": { "data_id": [ - "13_743354_787480", - "13_1058228_1255442", - "13_193644_99242" + "13_743354_787480@13", + "13_1058228_1255442@13", + "13_193644_99242@13" ] } } @@ -29721,7 +34898,7 @@ { "获取继承关系": { "data": { - "uuid": "java-5-475", + "uuid": "java-5-493", "seg": [ [ [ @@ -29731,12 +34908,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24240699404761903, + "max": 0.24241071428571428 + }, "related_data": { "qa": { "data_id": [ - "13_669022_489965", - "13_187554_82294" + "13_669022_489965@13", + "13_856291_981343@13" ] } } @@ -29745,7 +34925,7 @@ } ], "data": { - "uuid": "java-4-494", + "uuid": "java-4-500", "seg": [ [ [ @@ -29756,11 +34936,15 @@ [ "运行", "时类", - "信息" + "信息", + "时类信息" ] ] ], - "level": "1", + "level": { + "min": 0.24236607142857142, + "max": 0.24241071428571428 + }, "related_data": {} } } @@ -29768,16 +34952,20 @@ { "动态代理": { "data": { - "uuid": "java-4-495", + "uuid": "java-4-501", "seg": [ [ [ "动态", - "代理" + "代理", + "动态代理" ] ] ], - "level": "1", + "level": { + "min": 0.24241071428571428, + "max": 0.24245535714285713 + }, "related_data": {} } } @@ -29788,7 +34976,7 @@ { "模拟对象与桩": { "data": { - "uuid": "java-5-476", + "uuid": "java-5-494", "seg": [ [ [ @@ -29800,36 +34988,37 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24245535714285713, + "max": 0.2425 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-496", + "uuid": "java-4-502", "seg": [ [ [ "空", - "对象" + "对象", + "空对象" ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_8210_4491" - ] - } - } + "level": { + "min": 0.24245535714285713, + "max": 0.2425 + }, + "related_data": {} } } } ], "data": { - "uuid": "java-3-277", + "uuid": "java-3-270", "seg": [ [ [ @@ -29837,7 +35026,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2421875, + "max": 0.2425 + }, "related_data": {} } } @@ -29848,16 +35040,20 @@ { "完整的容器分类法": { "data": { - "uuid": "java-4-497", + "uuid": "java-4-503", "seg": [ [ [ "容器", - "分类法" + "分类法", + "容器分类法" ] ] ], - "level": "1", + "level": { + "min": 0.2425, + "max": 0.24252604166666666 + }, "related_data": {} } } @@ -29868,7 +35064,7 @@ { "一种Generator解决方案": { "data": { - "uuid": "java-5-477", + "uuid": "java-5-495", "seg": [ [ [ @@ -29877,15 +35073,24 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.24252604166666666, + "max": 0.24253472222222222 + }, + "related_data": { + "qa": { + "data_id": [ + "13_657610_470244@13" + ] + } + } } } }, { "Map生成器": { "data": { - "uuid": "java-5-478", + "uuid": "java-5-496", "seg": [ [ [ @@ -29894,11 +35099,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24253472222222222, + "max": 0.24254340277777778 + }, "related_data": { "qa": { "data_id": [ - "13_748979_801256" + "13_748979_801256@13" ] } } @@ -29908,7 +35116,7 @@ { "使用Abstract类": { "data": { - "uuid": "java-5-479", + "uuid": "java-5-497", "seg": [ [ [ @@ -29917,11 +35125,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24254340277777778, + "max": 0.24255208333333333 + }, "related_data": { "qa": { "data_id": [ - "13_644062_444389" + "13_644062_444389@13" ] } } @@ -29930,7 +35141,7 @@ } ], "data": { - "uuid": "java-4-498", + "uuid": "java-4-504", "seg": [ [ [ @@ -29939,11 +35150,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24252604166666666, + "max": 0.24255208333333333 + }, "related_data": { "qa": { "data_id": [ - "13_173256_52184" + "13_173256_52184@13" ] } } @@ -29953,17 +35167,21 @@ { "Collection的功能方法": { "data": { - "uuid": "java-4-499", + "uuid": "java-4-505", "seg": [ [ [ "collection", "功能", - "方法" + "方法", + "功能方法" ] ] ], - "level": "1", + "level": { + "min": 0.24255208333333333, + "max": 0.24257812499999998 + }, "related_data": {} } } @@ -29974,7 +35192,7 @@ { "未获支持的操作": { "data": { - "uuid": "java-5-480", + "uuid": "java-5-498", "seg": [ [ [ @@ -29984,14 +35202,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24257812499999998, + "max": 0.24260416666666665 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-500", + "uuid": "java-4-506", "seg": [ [ [ @@ -29999,7 +35220,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24257812499999998, + "max": 0.24260416666666665 + }, "related_data": {} } } @@ -30007,17 +35231,21 @@ { "List的功能方法": { "data": { - "uuid": "java-4-501", + "uuid": "java-4-507", "seg": [ [ [ "list", "功能", - "方法" + "方法", + "功能方法" ] ] ], - "level": "1", + "level": { + "min": 0.24260416666666665, + "max": 0.24263020833333332 + }, "related_data": {} } } @@ -30028,7 +35256,7 @@ { "优先级队列": { "data": { - "uuid": "java-5-481", + "uuid": "java-5-499", "seg": [ [ [ @@ -30037,18 +35265,20 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24263020833333332, + "max": 0.24264322916666664 + }, "related_data": { "qa": { "data_id": [ - "13_246765_239309", - "13_1071264_1273196", - "13_768291_828448", - "13_749119_801457", - "13_195346_105067", - "13_697801_584062", - "13_1095206_1306245", - "13_761341_818694" + "13_246765_239309@13", + "13_1071264_1273196@13", + "13_768291_828448@13", + "13_749119_801457@13", + "13_697801_584062@13", + "13_1095206_1306245@13", + "13_761341_818694@13" ] } } @@ -30058,23 +35288,27 @@ { "双向队列": { "data": { - "uuid": "java-5-482", + "uuid": "java-5-500", "seg": [ [ [ "双向", - "队列" + "队列", + "双向队列" ] ] ], - "level": "1", + "level": { + "min": 0.24264322916666664, + "max": 0.24265625 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-502", + "uuid": "java-4-508", "seg": [ [ [ @@ -30082,8 +35316,17 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.24263020833333332, + "max": 0.24265625 + }, + "related_data": { + "qa": { + "data_id": [ + "13_195346_105067@13" + ] + } + } } } }, @@ -30093,7 +35336,7 @@ { "性能": { "data": { - "uuid": "java-5-483", + "uuid": "java-5-501", "seg": [ [ [ @@ -30101,11 +35344,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24265625, + "max": 0.24266493055555555 + }, "related_data": { "qa": { "data_id": [ - "13_191348_93039" + "13_191348_93039@13" ] } } @@ -30115,7 +35361,7 @@ { "SortedMap": { "data": { - "uuid": "java-5-484", + "uuid": "java-5-502", "seg": [ [ [ @@ -30123,7 +35369,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24266493055555555, + "max": 0.2426736111111111 + }, "related_data": {} } } @@ -30131,7 +35380,7 @@ { "LinkedHashMap": { "data": { - "uuid": "java-5-485", + "uuid": "java-5-503", "seg": [ [ [ @@ -30139,13 +35388,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2426736111111111, + "max": 0.24268229166666666 + }, "related_data": { "qa": { "data_id": [ - "13_391692_434412", - "13_2297_3523", - "13_7412722_53364209" + "13_391692_434412@13", + "13_2297_3523@13", + "13_7412722_53364209@13" ] } } @@ -30154,7 +35406,7 @@ } ], "data": { - "uuid": "java-4-503", + "uuid": "java-4-509", "seg": [ [ [ @@ -30163,7 +35415,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24265625, + "max": 0.24268229166666666 + }, "related_data": {} } } @@ -30174,7 +35429,7 @@ { "理解hashCode()": { "data": { - "uuid": "java-5-486", + "uuid": "java-5-504", "seg": [ [ [ @@ -30183,15 +35438,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24268229166666666, + "max": 0.24269097222222222 + }, "related_data": { "qa": { "data_id": [ - "13_755066_810315", - "13_648718_453497", - "13_352503_362977", - "13_1101549_1316053", - "13_718063_711621" + "13_755066_810315@13", + "13_648718_453497@13", + "13_352503_362977@13", + "13_1101549_1316053@13", + "13_718063_711621@13", + "13_1079291_1283903@13", + "13_263908_278701@13", + "13_377020_407345@13", + "13_10676_4896@13", + "13_182134_67925@13" ] } } @@ -30201,7 +35464,7 @@ { "为速度而散列": { "data": { - "uuid": "java-5-487", + "uuid": "java-5-505", "seg": [ [ [ @@ -30210,11 +35473,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24269097222222222, + "max": 0.24269965277777777 + }, "related_data": { "qa": { "data_id": [ - "13_201609_124577" + "13_201609_124577@13" ] } } @@ -30224,7 +35490,7 @@ { "覆盖hashCode()": { "data": { - "uuid": "java-5-488", + "uuid": "java-5-506", "seg": [ [ [ @@ -30233,14 +35499,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24269965277777777, + "max": 0.24270833333333333 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-504", + "uuid": "java-4-510", "seg": [ [ [ @@ -30251,7 +35520,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24268229166666666, + "max": 0.24270833333333333 + }, "related_data": {} } } @@ -30262,7 +35534,7 @@ { "性能测试框架": { "data": { - "uuid": "java-5-489", + "uuid": "java-5-507", "seg": [ [ [ @@ -30271,7 +35543,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24270833333333333, + "max": 0.24271354166666667 + }, "related_data": {} } } @@ -30279,7 +35554,7 @@ { "对List的选择": { "data": { - "uuid": "java-5-490", + "uuid": "java-5-508", "seg": [ [ [ @@ -30288,17 +35563,20 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24271354166666667, + "max": 0.24271875 + }, "related_data": { "qa": { "data_id": [ - "13_249335_245164", - "13_7460886_53446016", - "13_746989_797575", - "13_7431406_53400445", - "13_7444487_53426627", - "13_176545_59541", - "13_7452658_53434771" + "13_249335_245164@13", + "13_7460886_53446016@13", + "13_746989_797575@13", + "13_7431406_53400445@13", + "13_7444487_53426627@13", + "13_176545_59541@13", + "13_7452658_53434771@13" ] } } @@ -30308,17 +35586,21 @@ { "微基准测试的危险": { "data": { - "uuid": "java-5-491", + "uuid": "java-5-509", "seg": [ [ [ "微", "基准", - "危险" + "危险", + "微基准" ] ] ], - "level": "1", + "level": { + "min": 0.24271875, + "max": 0.24272395833333332 + }, "related_data": {} } } @@ -30326,7 +35608,7 @@ { "对Set的选择": { "data": { - "uuid": "java-5-492", + "uuid": "java-5-510", "seg": [ [ [ @@ -30335,7 +35617,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24272395833333332, + "max": 0.24272916666666666 + }, "related_data": {} } } @@ -30343,7 +35628,7 @@ { "对Map的选择": { "data": { - "uuid": "java-5-493", + "uuid": "java-5-511", "seg": [ [ [ @@ -30352,14 +35637,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24272916666666666, + "max": 0.242734375 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-505", + "uuid": "java-4-511", "seg": [ [ [ @@ -30368,7 +35656,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24270833333333333, + "max": 0.242734375 + }, "related_data": {} } } @@ -30379,7 +35670,7 @@ { "List的排序和查询": { "data": { - "uuid": "java-5-494", + "uuid": "java-5-512", "seg": [ [ [ @@ -30391,7 +35682,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.242734375, + "max": 0.24274305555555556 + }, "related_data": {} } } @@ -30399,7 +35693,7 @@ { "设定Collection或Map为不可修改": { "data": { - "uuid": "java-5-495", + "uuid": "java-5-513", "seg": [ [ [ @@ -30410,7 +35704,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24274305555555556, + "max": 0.2427517361111111 + }, "related_data": {} } } @@ -30418,7 +35715,7 @@ { "Collection或Map的同步控制": { "data": { - "uuid": "java-5-496", + "uuid": "java-5-514", "seg": [ [ [ @@ -30428,14 +35725,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2427517361111111, + "max": 0.24276041666666665 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-506", + "uuid": "java-4-512", "seg": [ [ [ @@ -30444,11 +35744,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.242734375, + "max": 0.24276041666666665 + }, "related_data": { "qa": { "data_id": [ - "13_7457346_53441496" + "13_7457346_53441496@13" ] } } @@ -30461,7 +35764,7 @@ { "WeakHashMap": { "data": { - "uuid": "java-5-497", + "uuid": "java-5-515", "seg": [ [ [ @@ -30469,14 +35772,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24276041666666665, + "max": 0.24278645833333332 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-507", + "uuid": "java-4-513", "seg": [ [ [ @@ -30485,7 +35791,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24276041666666665, + "max": 0.24278645833333332 + }, "related_data": {} } } @@ -30496,7 +35805,7 @@ { "Vector和Enumeration": { "data": { - "uuid": "java-5-498", + "uuid": "java-5-516", "seg": [ [ [ @@ -30507,13 +35816,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24278645833333332, + "max": 0.24279513888888887 + }, "related_data": { "qa": { "data_id": [ - "13_219533_170933", - "13_339950_339320", - "13_746703_796665" + "13_219533_170933@13", + "13_339950_339320@13", + "13_746703_796665@13" ] } } @@ -30523,7 +35835,7 @@ { "Hashtable": { "data": { - "uuid": "java-5-499", + "uuid": "java-5-517", "seg": [ [ [ @@ -30531,7 +35843,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24279513888888887, + "max": 0.24280381944444443 + }, "related_data": {} } } @@ -30539,7 +35854,7 @@ { "BitSet": { "data": { - "uuid": "java-5-500", + "uuid": "java-5-518", "seg": [ [ [ @@ -30547,14 +35862,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24280381944444443, + "max": 0.2428125 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-508", + "uuid": "java-4-514", "seg": [ [ [ @@ -30563,23 +35881,30 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24278645833333332, + "max": 0.2428125 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-278", + "uuid": "java-3-271", "seg": [ [ [ "容器", - "深入研究" + "深入研究", + "容器深入研究" ] ] ], - "level": "1", + "level": { + "min": 0.2425, + "max": 0.2428125 + }, "related_data": {} } } @@ -30593,7 +35918,7 @@ { "InputStream类型": { "data": { - "uuid": "java-5-501", + "uuid": "java-5-519", "seg": [ [ [ @@ -30602,7 +35927,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2428125, + "max": 0.24282291666666667 + }, "related_data": {} } } @@ -30610,7 +35938,7 @@ { "OutputStream类型": { "data": { - "uuid": "java-5-502", + "uuid": "java-5-520", "seg": [ [ [ @@ -30619,7 +35947,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24282291666666667, + "max": 0.24283333333333332 + }, "related_data": {} } } @@ -30627,7 +35958,7 @@ { "读取输入": { "data": { - "uuid": "java-5-503", + "uuid": "java-5-521", "seg": [ [ [ @@ -30636,12 +35967,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24283333333333332, + "max": 0.24284375 + }, "related_data": { "qa": { "data_id": [ - "13_7435954_53406929", - "13_392464_435932" + "13_7435954_53406929@13", + "13_392464_435932@13" ] } } @@ -30650,7 +35984,7 @@ } ], "data": { - "uuid": "java-4-509", + "uuid": "java-4-515", "seg": [ [ [ @@ -30661,8 +35995,17 @@ ] ] ], - "level": "2", - "related_data": {} + "level": { + "min": 0.2428125, + "max": 0.24284375 + }, + "related_data": { + "qa": { + "data_id": [ + "13_698301_585151@13" + ] + } + } } } }, @@ -30672,7 +36015,7 @@ { "通过FilterInputStream从InputStream读取": { "data": { - "uuid": "java-5-504", + "uuid": "java-5-522", "seg": [ [ [ @@ -30682,11 +36025,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24284375, + "max": 0.242859375 + }, "related_data": { "qa": { "data_id": [ - "13_202996_129180" + "13_202996_129180@13" ] } } @@ -30696,7 +36042,7 @@ { "通过FilterOutPutStream向OutputStream写入": { "data": { - "uuid": "java-5-505", + "uuid": "java-5-523", "seg": [ [ [ @@ -30706,14 +36052,23 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.242859375, + "max": 0.24287499999999998 + }, + "related_data": { + "qa": { + "data_id": [ + "13_238316_220096@13" + ] + } + } } } } ], "data": { - "uuid": "java-4-510", + "uuid": "java-4-516", "seg": [ [ [ @@ -30726,7 +36081,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24284375, + "max": 0.24287499999999998 + }, "related_data": {} } } @@ -30737,7 +36095,7 @@ { "数据的来源和去处": { "data": { - "uuid": "java-5-506", + "uuid": "java-5-524", "seg": [ [ [ @@ -30749,7 +36107,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24287499999999998, + "max": 0.24288541666666666 + }, "related_data": {} } } @@ -30757,7 +36118,7 @@ { "更改流的行为": { "data": { - "uuid": "java-5-507", + "uuid": "java-5-525", "seg": [ [ [ @@ -30766,11 +36127,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24288541666666666, + "max": 0.2428958333333333 + }, "related_data": { "qa": { "data_id": [ - "13_709846_667550" + "13_709846_667550@13" ] } } @@ -30780,7 +36144,7 @@ { "未发生变化的类": { "data": { - "uuid": "java-5-508", + "uuid": "java-5-526", "seg": [ [ [ @@ -30789,14 +36153,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2428958333333333, + "max": 0.24290625 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-511", + "uuid": "java-4-517", "seg": [ [ [ @@ -30807,7 +36174,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24287499999999998, + "max": 0.24290625 + }, "related_data": {} } } @@ -30818,7 +36188,7 @@ { "缓冲的输入文件": { "data": { - "uuid": "java-5-509", + "uuid": "java-5-527", "seg": [ [ [ @@ -30828,11 +36198,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24290625, + "max": 0.24291071428571429 + }, "related_data": { "qa": { "data_id": [ - "13_7457717_53442172" + "13_7457717_53442172@13" ] } } @@ -30842,7 +36215,7 @@ { "从内存中输入": { "data": { - "uuid": "java-5-510", + "uuid": "java-5-528", "seg": [ [ [ @@ -30851,7 +36224,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24291071428571429, + "max": 0.24291517857142855 + }, "related_data": {} } } @@ -30859,7 +36235,7 @@ { "格式化的内存输入": { "data": { - "uuid": "java-5-511", + "uuid": "java-5-529", "seg": [ [ [ @@ -30869,7 +36245,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24291517857142855, + "max": 0.24291964285714285 + }, "related_data": {} } } @@ -30877,16 +36256,20 @@ { "基本文件输出": { "data": { - "uuid": "java-5-512", + "uuid": "java-5-530", "seg": [ [ [ "文件", - "输出" + "输出", + "基本文件" ] ] ], - "level": "2", + "level": { + "min": 0.24291964285714285, + "max": 0.24292410714285714 + }, "related_data": {} } } @@ -30894,7 +36277,7 @@ { "存储和恢复数据": { "data": { - "uuid": "java-5-513", + "uuid": "java-5-531", "seg": [ [ [ @@ -30906,7 +36289,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24292410714285714, + "max": 0.24292857142857144 + }, "related_data": {} } } @@ -30914,7 +36300,7 @@ { "读取和写入随机访问文件": { "data": { - "uuid": "java-5-514", + "uuid": "java-5-532", "seg": [ [ [ @@ -30924,15 +36310,19 @@ "写入", "随机", "访问", - "文件" + "文件", + "随机访问" ] ] ], - "level": "2", + "level": { + "min": 0.24292857142857144, + "max": 0.2429330357142857 + }, "related_data": { "qa": { "data_id": [ - "13_7455466_53439194" + "13_7455466_53439194@13" ] } } @@ -30942,20 +36332,24 @@ { "管道流": { "data": { - "uuid": "java-5-515", + "uuid": "java-5-533", "seg": [ [ [ "管道", - "流" + "流", + "管道流" ] ] ], - "level": "1", + "level": { + "min": 0.2429330357142857, + "max": 0.2429375 + }, "related_data": { "qa": { "data_id": [ - "13_7429078_53402451" + "13_7429078_53402451@13" ] } } @@ -30964,7 +36358,7 @@ } ], "data": { - "uuid": "java-4-512", + "uuid": "java-4-518", "seg": [ [ [ @@ -30976,7 +36370,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24290625, + "max": 0.2429375 + }, "related_data": {} } } @@ -30987,30 +36384,34 @@ { "读取二进制文件": { "data": { - "uuid": "java-5-516", + "uuid": "java-5-534", "seg": [ [ [ "读取", "二进制", - "文件" + "文件", + "二进制文件" ] ] ], - "level": "2", + "level": { + "min": 0.2429375, + "max": 0.24296875 + }, "related_data": { "qa": { "data_id": [ - "13_1095187_1306207", - "13_27954_7796", - "13_235931_215467", - "13_7416179_53370136", - "13_175811_59985", - "13_667953_487551", - "13_380797_413931", - "13_759593_815920", - "13_270247_292058", - "13_743400_787592" + "13_1095187_1306207@13", + "13_27954_7796@13", + "13_235931_215467@13", + "13_7416179_53370136@13", + "13_175811_59985@13", + "13_667953_487551@13", + "13_380797_413931@13", + "13_759593_815920@13", + "13_270247_292058@13", + "13_743400_787592@13" ] } } @@ -31019,7 +36420,7 @@ } ], "data": { - "uuid": "java-4-513", + "uuid": "java-4-519", "seg": [ [ [ @@ -31029,7 +36430,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2429375, + "max": 0.24296875 + }, "related_data": {} } } @@ -31040,7 +36444,7 @@ { "从标准输入中读取": { "data": { - "uuid": "java-5-517", + "uuid": "java-5-535", "seg": [ [ [ @@ -31050,7 +36454,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24296875, + "max": 0.24297916666666666 + }, "related_data": {} } } @@ -31058,7 +36465,7 @@ { "将System.out转换成PrintWriter": { "data": { - "uuid": "java-5-518", + "uuid": "java-5-536", "seg": [ [ [ @@ -31068,7 +36475,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24297916666666666, + "max": 0.24298958333333334 + }, "related_data": {} } } @@ -31076,7 +36486,7 @@ { "标准I/O重定向": { "data": { - "uuid": "java-5-519", + "uuid": "java-5-537", "seg": [ [ [ @@ -31087,20 +36497,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24298958333333334, + "max": 0.243 + }, "related_data": { "qa": { "data_id": [ - "13_11454_5529", - "13_631852_440797", - "13_742554_785006", - "13_657316_469861", - "13_225726_187318", - "13_243786_232663", - "13_1053130_1250462", - "13_1104630_1318866", - "13_201818_125329", - "13_773895_837704" + "13_11454_5529@13", + "13_631852_440797@13", + "13_742554_785006@13", + "13_657316_469861@13", + "13_225726_187318@13", + "13_243786_232663@13", + "13_1053130_1250462@13", + "13_1104630_1318866@13", + "13_201818_125329@13", + "13_773895_837704@13" ] } } @@ -31109,7 +36522,7 @@ } ], "data": { - "uuid": "java-4-514", + "uuid": "java-4-520", "seg": [ [ [ @@ -31119,7 +36532,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24296875, + "max": 0.243 + }, "related_data": {} } } @@ -31127,7 +36543,7 @@ { "进程控制": { "data": { - "uuid": "java-4-515", + "uuid": "java-4-521", "seg": [ [ [ @@ -31136,7 +36552,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.243, + "max": 0.24303125 + }, "related_data": {} } } @@ -31147,7 +36566,7 @@ { "用GZIP进行简单压缩": { "data": { - "uuid": "java-5-520", + "uuid": "java-5-538", "seg": [ [ [ @@ -31156,14 +36575,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24303125, + "max": 0.24304166666666668 + }, "related_data": { "qa": { "data_id": [ - "13_55915_10116", - "13_1056093_1253273", - "13_676737_516787", - "13_181809_67520" + "13_55915_10116@13", + "13_1056093_1253273@13", + "13_676737_516787@13", + "13_181809_67520@13" ] } } @@ -31173,7 +36595,7 @@ { "用Zip进行多文件存储": { "data": { - "uuid": "java-5-521", + "uuid": "java-5-539", "seg": [ [ [ @@ -31183,7 +36605,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24304166666666668, + "max": 0.24305208333333334 + }, "related_data": {} } } @@ -31191,7 +36616,7 @@ { "Java档案文件": { "data": { - "uuid": "java-5-522", + "uuid": "java-5-540", "seg": [ [ [ @@ -31200,14 +36625,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24305208333333334, + "max": 0.24306250000000001 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-516", + "uuid": "java-4-522", "seg": [ [ [ @@ -31215,7 +36643,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24303125, + "max": 0.24306250000000001 + }, "related_data": {} } } @@ -31223,7 +36654,7 @@ { "XML": { "data": { - "uuid": "java-4-517", + "uuid": "java-4-523", "seg": [ [ [ @@ -31231,7 +36662,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24306250000000001, + "max": 0.24309375 + }, "related_data": {} } } @@ -31239,7 +36673,7 @@ { "Preferences": { "data": { - "uuid": "java-4-518", + "uuid": "java-4-524", "seg": [ [ [ @@ -31247,14 +36681,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24309375, + "max": 0.243125 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-279", + "uuid": "java-3-272", "seg": [ [ [ @@ -31265,7 +36702,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2428125, + "max": 0.243125 + }, "related_data": {} } } @@ -31279,7 +36719,7 @@ { "定义注解": { "data": { - "uuid": "java-5-523", + "uuid": "java-5-541", "seg": [ [ [ @@ -31288,7 +36728,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.243125, + "max": 0.24314236111111112 + }, "related_data": {} } } @@ -31296,7 +36739,7 @@ { "元注解": { "data": { - "uuid": "java-5-524", + "uuid": "java-5-542", "seg": [ [ [ @@ -31304,22 +36747,29 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24314236111111112, + "max": 0.24315972222222224 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-519", + "uuid": "java-4-525", "seg": [ [ [ - "语法" + "语法", + "基本语法" ] ] ], - "level": "1", + "level": { + "min": 0.243125, + "max": 0.24315972222222224 + }, "related_data": {} } } @@ -31330,7 +36780,7 @@ { "注解元素": { "data": { - "uuid": "java-5-525", + "uuid": "java-5-543", "seg": [ [ [ @@ -31339,15 +36789,29 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.24315972222222224, + "max": 0.24316666666666667 + }, + "related_data": { + "qa": { + "data_id": [ + "13_198083_113246@13", + "13_904398_1039731@13", + "13_1072254_1274546@13", + "13_7445694_53424359@13", + "13_1101582_1316121@13", + "13_7463652_53449767@13" + ] + } + } } } }, { "缺省值限制": { "data": { - "uuid": "java-5-526", + "uuid": "java-5-544", "seg": [ [ [ @@ -31355,7 +36819,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24316666666666667, + "max": 0.24317361111111113 + }, "related_data": {} } } @@ -31363,7 +36830,7 @@ { "生成外部文件": { "data": { - "uuid": "java-5-527", + "uuid": "java-5-545", "seg": [ [ [ @@ -31373,25 +36840,46 @@ ] ] ], - "level": "2", - "related_data": {} + "level": { + "min": 0.24317361111111113, + "max": 0.24318055555555557 + }, + "related_data": { + "qa": { + "data_id": [ + "13_208361_144238@13", + "13_195086_104320@13", + "13_660591_475246@13", + "13_666368_484455@13", + "13_213789_157189@13", + "13_389044_429241@13", + "13_1090634_1297677@13", + "13_7407484_53357492@13", + "13_685069_544095@13" + ] + } + } } } }, { "注解不支持继承": { "data": { - "uuid": "java-5-528", + "uuid": "java-5-546", "seg": [ [ [ "注解", "支持", - "继承" + "继承", + "不支持" ] ] ], - "level": "1", + "level": { + "min": 0.24318055555555557, + "max": 0.24318750000000003 + }, "related_data": {} } } @@ -31399,7 +36887,7 @@ { "实现处理器": { "data": { - "uuid": "java-5-529", + "uuid": "java-5-547", "seg": [ [ [ @@ -31407,14 +36895,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24318750000000003, + "max": 0.24319444444444446 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-520", + "uuid": "java-4-526", "seg": [ [ [ @@ -31424,7 +36915,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24315972222222224, + "max": 0.24319444444444446 + }, "related_data": {} } } @@ -31432,7 +36926,7 @@ { "使用apt处理注解": { "data": { - "uuid": "java-4-521", + "uuid": "java-4-527", "seg": [ [ [ @@ -31441,7 +36935,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24319444444444446, + "max": 0.24322916666666666 + }, "related_data": {} } } @@ -31449,19 +36946,30 @@ { "将观察者模式用于apt": { "data": { - "uuid": "java-4-522", + "uuid": "java-4-528", "seg": [ [ [ "观察者", "模式", "用于", - "apt" + "apt", + "将观察者", + "观察者模式" ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.24322916666666666, + "max": 0.2432638888888889 + }, + "related_data": { + "qa": { + "data_id": [ + "13_683496_539824@13" + ] + } + } } } }, @@ -31471,7 +36979,7 @@ { "将@Unit用于泛型": { "data": { - "uuid": "java-5-530", + "uuid": "java-5-548", "seg": [ [ [ @@ -31481,7 +36989,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2432638888888889, + "max": 0.24327256944444445 + }, "related_data": {} } } @@ -31489,15 +37000,19 @@ { "不需要任何“套件”": { "data": { - "uuid": "java-5-531", + "uuid": "java-5-549", "seg": [ [ [ - "套件" + "套件", + "不需要" ] ] ], - "level": "1", + "level": { + "min": 0.24327256944444445, + "max": 0.24328125 + }, "related_data": {} } } @@ -31505,7 +37020,7 @@ { "实现@Unit": { "data": { - "uuid": "java-5-532", + "uuid": "java-5-550", "seg": [ [ [ @@ -31513,7 +37028,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24328125, + "max": 0.24328993055555556 + }, "related_data": {} } } @@ -31521,7 +37039,7 @@ { "移除测试代码": { "data": { - "uuid": "java-5-533", + "uuid": "java-5-551", "seg": [ [ [ @@ -31530,12 +37048,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24328993055555556, + "max": 0.24329861111111112 + }, "related_data": { "qa": { "data_id": [ - "13_232114_204375", - "13_171995_49161" + "13_232114_204375@13", + "13_171995_49161@13" ] } } @@ -31544,7 +37065,7 @@ } ], "data": { - "uuid": "java-4-523", + "uuid": "java-4-529", "seg": [ [ [ @@ -31553,7 +37074,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2432638888888889, + "max": 0.24329861111111112 + }, "related_data": {} } } @@ -31561,14 +37085,15 @@ { "限定重写父类方法:@Override": { "data": { - "uuid": "java-4-524", + "uuid": "java-4-530", "seg": [ [ [ "限定", "重写", "父类", - "方法" + "方法", + "父类方法" ] ], [ @@ -31577,7 +37102,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24329861111111112, + "max": 0.24333333333333335 + }, "related_data": {} } } @@ -31585,7 +37113,7 @@ { "Java 9增强的@Deprecated": { "data": { - "uuid": "java-4-525", + "uuid": "java-4-531", "seg": [ [ [ @@ -31595,7 +37123,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24333333333333335, + "max": 0.24336805555555555 + }, "related_data": {} } } @@ -31603,13 +37134,14 @@ { "抑制编译器警告:@SuppressWarnings": { "data": { - "uuid": "java-4-526", + "uuid": "java-4-532", "seg": [ [ [ "抑制", "编译器", - "警告" + "警告", + "编译器警告" ] ], [ @@ -31618,7 +37150,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24336805555555555, + "max": 0.24340277777777777 + }, "related_data": {} } } @@ -31626,7 +37161,7 @@ { "“堆污染”警告与Java 9增强的@SafeVarargs": { "data": { - "uuid": "java-4-527", + "uuid": "java-4-533", "seg": [ [ [ @@ -31641,14 +37176,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24340277777777777, + "max": 0.2434375 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-280", + "uuid": "java-3-273", "seg": [ [ [ @@ -31656,7 +37194,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.243125, + "max": 0.2434375 + }, "related_data": {} } } @@ -31670,7 +37211,7 @@ { "更快的执行": { "data": { - "uuid": "java-5-534", + "uuid": "java-5-552", "seg": [ [ [ @@ -31679,7 +37220,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2434375, + "max": 0.24344791666666665 + }, "related_data": {} } } @@ -31687,7 +37231,7 @@ { "改进代码设计": { "data": { - "uuid": "java-5-535", + "uuid": "java-5-553", "seg": [ [ [ @@ -31696,14 +37240,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24344791666666665, + "max": 0.24345833333333333 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-528", + "uuid": "java-4-534", "seg": [ [ [ @@ -31712,11 +37259,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2434375, + "max": 0.24345833333333333 + }, "related_data": { "qa": { "data_id": [ - "13_716206_708819" + "13_716206_708819@13" ] } } @@ -31729,16 +37279,20 @@ { "定义任务让步": { "data": { - "uuid": "java-5-536", + "uuid": "java-5-554", "seg": [ [ [ "定义", - "让步" + "让步", + "定义任务" ] ] ], - "level": "2", + "level": { + "min": 0.24345833333333333, + "max": 0.2434609375 + }, "related_data": {} } } @@ -31746,7 +37300,7 @@ { "使用Executor": { "data": { - "uuid": "java-5-537", + "uuid": "java-5-555", "seg": [ [ [ @@ -31754,7 +37308,31 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2434609375, + "max": 0.24346354166666667 + }, + "related_data": {} + } + } + }, + { + "从任务产生返回值": { + "data": { + "uuid": "java-5-556", + "seg": [ + [ + [ + "返回值", + "任务产生", + "产生返回值" + ] + ] + ], + "level": { + "min": 0.24346354166666667, + "max": 0.24346614583333334 + }, "related_data": {} } } @@ -31762,7 +37340,7 @@ { "休眠": { "data": { - "uuid": "java-5-538", + "uuid": "java-5-557", "seg": [ [ [ @@ -31770,7 +37348,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24346614583333334, + "max": 0.24346875 + }, "related_data": {} } } @@ -31778,7 +37359,7 @@ { "让步": { "data": { - "uuid": "java-5-539", + "uuid": "java-5-558", "seg": [ [ [ @@ -31786,7 +37367,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24346875, + "max": 0.24347135416666665 + }, "related_data": {} } } @@ -31794,7 +37378,7 @@ { "编码的变体": { "data": { - "uuid": "java-5-540", + "uuid": "java-5-559", "seg": [ [ [ @@ -31803,7 +37387,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24347135416666665, + "max": 0.24347395833333332 + }, "related_data": {} } } @@ -31811,7 +37398,7 @@ { "术语": { "data": { - "uuid": "java-5-541", + "uuid": "java-5-560", "seg": [ [ [ @@ -31819,7 +37406,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24347395833333332, + "max": 0.2434765625 + }, "related_data": {} } } @@ -31827,7 +37417,7 @@ { "创建有响应的用户界面": { "data": { - "uuid": "java-5-542", + "uuid": "java-5-561", "seg": [ [ [ @@ -31837,23 +37427,30 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2434765625, + "max": 0.24347916666666666 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-529", + "uuid": "java-4-535", "seg": [ [ [ "线程", - "机制" + "机制", + "线程机制" ] ] ], - "level": "2", + "level": { + "min": 0.24345833333333333, + "max": 0.24347916666666666 + }, "related_data": {} } } @@ -31864,7 +37461,7 @@ { "不正确地访问资源": { "data": { - "uuid": "java-5-543", + "uuid": "java-5-562", "seg": [ [ [ @@ -31873,12 +37470,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24347916666666666, + "max": 0.24348214285714284 + }, "related_data": { "qa": { "data_id": [ - "13_654006_463310", - "13_7414792_53367758" + "13_654006_463310@13", + "13_7414792_53367758@13" ] } } @@ -31888,7 +37488,7 @@ { "解决共享资源竞争": { "data": { - "uuid": "java-5-544", + "uuid": "java-5-563", "seg": [ [ [ @@ -31897,7 +37497,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24348214285714284, + "max": 0.24348511904761905 + }, "related_data": {} } } @@ -31905,23 +37508,27 @@ { "原子性与易变性": { "data": { - "uuid": "java-5-545", + "uuid": "java-5-564", "seg": [ [ [ "原子", - "性" + "性", + "原子性" ], [ "易变性" ] ] ], - "level": "2", + "level": { + "min": 0.24348511904761905, + "max": 0.24348809523809523 + }, "related_data": { "qa": { "data_id": [ - "13_345263_349306" + "13_345263_349306@13" ] } } @@ -31931,16 +37538,20 @@ { "原子类": { "data": { - "uuid": "java-5-546", + "uuid": "java-5-565", "seg": [ [ [ "原子", - "类" + "类", + "原子类" ] ] ], - "level": "2", + "level": { + "min": 0.24348809523809523, + "max": 0.24349107142857143 + }, "related_data": {} } } @@ -31948,7 +37559,7 @@ { "临界资源": { "data": { - "uuid": "java-5-547", + "uuid": "java-5-566", "seg": [ [ [ @@ -31957,7 +37568,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24349107142857143, + "max": 0.2434940476190476 + }, "related_data": {} } } @@ -31965,7 +37579,7 @@ { "在其他对象上同步": { "data": { - "uuid": "java-5-548", + "uuid": "java-5-567", "seg": [ [ [ @@ -31974,7 +37588,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2434940476190476, + "max": 0.24349702380952382 + }, "related_data": {} } } @@ -31982,24 +37599,28 @@ { "线程局部存储": { "data": { - "uuid": "java-5-549", + "uuid": "java-5-568", "seg": [ [ [ "线程", "局部", - "存储" + "存储", + "线程局部" ] ] ], - "level": "2", + "level": { + "min": 0.24349702380952382, + "max": 0.2435 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-530", + "uuid": "java-4-536", "seg": [ [ [ @@ -32009,7 +37630,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24347916666666666, + "max": 0.2435 + }, "related_data": {} } } @@ -32020,16 +37644,20 @@ { "装饰性花园": { "data": { - "uuid": "java-5-550", + "uuid": "java-5-569", "seg": [ [ [ "装饰性", - "花园" + "花园", + "装饰性花园" ] ] ], - "level": "2", + "level": { + "min": 0.2435, + "max": 0.24350520833333333 + }, "related_data": {} } } @@ -32037,7 +37665,7 @@ { "在阻塞时终结": { "data": { - "uuid": "java-5-551", + "uuid": "java-5-570", "seg": [ [ [ @@ -32046,7 +37674,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24350520833333333, + "max": 0.24351041666666667 + }, "related_data": {} } } @@ -32054,7 +37685,7 @@ { "中断": { "data": { - "uuid": "java-5-552", + "uuid": "java-5-571", "seg": [ [ [ @@ -32062,11 +37693,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24351041666666667, + "max": 0.24351562499999999 + }, "related_data": { "qa": { "data_id": [ - "13_878919_1014829" + "13_878919_1014829@13" ] } } @@ -32076,7 +37710,7 @@ { "检查中断": { "data": { - "uuid": "java-5-553", + "uuid": "java-5-572", "seg": [ [ [ @@ -32085,14 +37719,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24351562499999999, + "max": 0.24352083333333333 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-531", + "uuid": "java-4-537", "seg": [ [ [ @@ -32100,7 +37737,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2435, + "max": 0.24352083333333333 + }, "related_data": {} } } @@ -32111,7 +37751,7 @@ { "wait()与notifyAll()": { "data": { - "uuid": "java-5-554", + "uuid": "java-5-573", "seg": [ [ [ @@ -32124,22 +37764,18 @@ ] ] ], - "level": "2", - "related_data": { - "qa": { - "data_id": [ - "13_694542_574877", - "13_747552_798844" - ] - } - } + "level": { + "min": 0.24352083333333333, + "max": 0.24352604166666666 + }, + "related_data": {} } } }, { "notify()与notifyAll()": { "data": { - "uuid": "java-5-555", + "uuid": "java-5-574", "seg": [ [ [ @@ -32154,19 +37790,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24352604166666666, + "max": 0.24353124999999998 + }, "related_data": { "qa": { "data_id": [ - "13_743413_787636", - "13_4645735_29328849", - "13_7445416_53423972", - "13_638514_441379", - "13_198919_115921", - "13_646692_450495", - "13_666863_486111", - "13_1092387_1300326", - "13_702604_711898" + "13_743413_787636@13" ] } } @@ -32176,7 +37807,7 @@ { "生产者与消费者": { "data": { - "uuid": "java-5-556", + "uuid": "java-5-575", "seg": [ [ [ @@ -32187,7 +37818,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24353124999999998, + "max": 0.24353645833333332 + }, "related_data": {} } } @@ -32195,7 +37829,7 @@ { "任务间使用管道进行输入/输出": { "data": { - "uuid": "java-5-557", + "uuid": "java-5-576", "seg": [ [ [ @@ -32205,14 +37839,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24353645833333332, + "max": 0.24354166666666666 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-532", + "uuid": "java-4-538", "seg": [ [ [ @@ -32221,7 +37858,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24352083333333333, + "max": 0.24354166666666666 + }, "related_data": {} } } @@ -32229,7 +37869,7 @@ { "死锁": { "data": { - "uuid": "java-4-533", + "uuid": "java-4-539", "seg": [ [ [ @@ -32237,7 +37877,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24354166666666666, + "max": 0.2435625 + }, "related_data": {} } } @@ -32248,7 +37891,7 @@ { "CountDownLatch": { "data": { - "uuid": "java-5-558", + "uuid": "java-5-577", "seg": [ [ [ @@ -32256,7 +37899,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2435625, + "max": 0.24356547619047617 + }, "related_data": {} } } @@ -32264,7 +37910,7 @@ { "CyclicBarrier": { "data": { - "uuid": "java-5-559", + "uuid": "java-5-578", "seg": [ [ [ @@ -32272,7 +37918,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24356547619047617, + "max": 0.24356845238095237 + }, "related_data": {} } } @@ -32280,7 +37929,7 @@ { "DelayQueue": { "data": { - "uuid": "java-5-560", + "uuid": "java-5-579", "seg": [ [ [ @@ -32288,7 +37937,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24356845238095237, + "max": 0.24357142857142855 + }, "related_data": {} } } @@ -32296,7 +37948,7 @@ { "PriorityBlockingQueue": { "data": { - "uuid": "java-5-561", + "uuid": "java-5-580", "seg": [ [ [ @@ -32304,7 +37956,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24357142857142855, + "max": 0.24357440476190476 + }, "related_data": {} } } @@ -32312,17 +37967,21 @@ { "使用ScheduledExecutor的温室控制器": { "data": { - "uuid": "java-5-562", + "uuid": "java-5-581", "seg": [ [ [ "scheduledexecutor", "温室", - "控制器" + "控制器", + "温室控制器" ] ] ], - "level": "2", + "level": { + "min": 0.24357440476190476, + "max": 0.24357738095238093 + }, "related_data": {} } } @@ -32330,7 +37989,7 @@ { "Semaphore": { "data": { - "uuid": "java-5-563", + "uuid": "java-5-582", "seg": [ [ [ @@ -32338,7 +37997,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24357738095238093, + "max": 0.24358035714285714 + }, "related_data": {} } } @@ -32346,7 +38008,7 @@ { "Exchange": { "data": { - "uuid": "java-5-564", + "uuid": "java-5-583", "seg": [ [ [ @@ -32354,14 +38016,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24358035714285714, + "max": 0.24358333333333332 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-534", + "uuid": "java-4-540", "seg": [ [ [ @@ -32370,11 +38035,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2435625, + "max": 0.24358333333333332 + }, "related_data": { "qa": { "data_id": [ - "13_1063574_1261600" + "13_1063574_1261600@13" ] } } @@ -32387,7 +38055,7 @@ { "银行出纳仿真": { "data": { - "uuid": "java-5-565", + "uuid": "java-5-584", "seg": [ [ [ @@ -32397,7 +38065,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24358333333333332, + "max": 0.24359027777777778 + }, "related_data": {} } } @@ -32405,7 +38076,7 @@ { "饭店仿真": { "data": { - "uuid": "java-5-566", + "uuid": "java-5-585", "seg": [ [ [ @@ -32414,7 +38085,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24359027777777778, + "max": 0.24359722222222221 + }, "related_data": {} } } @@ -32422,7 +38096,7 @@ { "分发工作": { "data": { - "uuid": "java-5-567", + "uuid": "java-5-586", "seg": [ [ [ @@ -32431,12 +38105,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24359722222222221, + "max": 0.24360416666666668 + }, "related_data": { "qa": { "data_id": [ - "13_7434872_53405556", - "13_1074487_1277952" + "13_7434872_53405556@13", + "13_1074487_1277952@13" ] } } @@ -32445,7 +38122,7 @@ } ], "data": { - "uuid": "java-4-535", + "uuid": "java-4-541", "seg": [ [ [ @@ -32453,7 +38130,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24358333333333332, + "max": 0.24360416666666668 + }, "related_data": {} } } @@ -32464,7 +38144,7 @@ { "比较各类互斥技术": { "data": { - "uuid": "java-5-568", + "uuid": "java-5-587", "seg": [ [ [ @@ -32473,7 +38153,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24360416666666668, + "max": 0.24360937500000002 + }, "related_data": {} } } @@ -32481,7 +38164,7 @@ { "免锁容器": { "data": { - "uuid": "java-5-569", + "uuid": "java-5-588", "seg": [ [ [ @@ -32490,7 +38173,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24360937500000002, + "max": 0.24361458333333336 + }, "related_data": {} } } @@ -32498,7 +38184,7 @@ { "乐观锁": { "data": { - "uuid": "java-5-570", + "uuid": "java-5-589", "seg": [ [ [ @@ -32507,7 +38193,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24361458333333336, + "max": 0.24361979166666667 + }, "related_data": {} } } @@ -32515,7 +38204,7 @@ { "ReadWriteLock": { "data": { - "uuid": "java-5-571", + "uuid": "java-5-590", "seg": [ [ [ @@ -32523,14 +38212,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24361979166666667, + "max": 0.243625 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-536", + "uuid": "java-4-542", "seg": [ [ [ @@ -32539,7 +38231,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24360416666666668, + "max": 0.243625 + }, "related_data": {} } } @@ -32547,7 +38242,7 @@ { "活动对象": { "data": { - "uuid": "java-4-537", + "uuid": "java-4-543", "seg": [ [ [ @@ -32556,7 +38251,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.243625, + "max": 0.24364583333333334 + }, "related_data": {} } } @@ -32564,16 +38262,20 @@ { "进阶读物": { "data": { - "uuid": "java-4-538", + "uuid": "java-4-544", "seg": [ [ [ "进阶", - "读物" + "读物", + "进阶读物" ] ] ], - "level": "2", + "level": { + "min": 0.24364583333333334, + "max": 0.24366666666666667 + }, "related_data": {} } } @@ -32584,21 +38286,25 @@ { "新建线程": { "data": { - "uuid": "java-5-572", + "uuid": "java-5-591", "seg": [ [ [ "新建", - "线程" + "线程", + "新建线程" ] ] ], - "level": "2", + "level": { + "min": 0.24366666666666667, + "max": 0.243671875 + }, "related_data": { "qa": { "data_id": [ - "13_1090440_1297281", - "13_679698_527991" + "13_1090440_1297281@13", + "13_679698_527991@13" ] } } @@ -32608,7 +38314,7 @@ { "可运行线程": { "data": { - "uuid": "java-5-573", + "uuid": "java-5-592", "seg": [ [ [ @@ -32617,15 +38323,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.243671875, + "max": 0.24367708333333332 + }, "related_data": { "qa": { "data_id": [ - "13_744485_790585", - "13_25174_6672", - "13_370891_397672", - "13_649656_455514", - "13_673762_502372" + "13_744485_790585@13", + "13_25174_6672@13", + "13_649656_455514@13", + "13_673762_502372@13" ] } } @@ -32635,7 +38343,7 @@ { "阻塞和等待线程": { "data": { - "uuid": "java-5-574", + "uuid": "java-5-593", "seg": [ [ [ @@ -32647,13 +38355,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24367708333333332, + "max": 0.24368229166666666 + }, "related_data": { "qa": { "data_id": [ - "13_7438438_53411787", - "13_742770_785580", - "13_356528_372306" + "13_7438438_53411787@13", + "13_742770_785580@13", + "13_356528_372306@13", + "13_676012_513131@13" ] } } @@ -32663,7 +38375,7 @@ { "终止线程": { "data": { - "uuid": "java-5-575", + "uuid": "java-5-594", "seg": [ [ [ @@ -32672,23 +38384,30 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24368229166666666, + "max": 0.2436875 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-539", + "uuid": "java-4-545", "seg": [ [ [ "线程", - "状态" + "状态", + "线程状态" ] ] ], - "level": "2", + "level": { + "min": 0.24366666666666667, + "max": 0.2436875 + }, "related_data": {} } } @@ -32696,10 +38415,31 @@ { "线程属性": { "children": [ + { + "中断线程": { + "data": { + "uuid": "java-5-595", + "seg": [ + [ + [ + "中断", + "线程", + "中断线程" + ] + ] + ], + "level": { + "min": 0.2436875, + "max": 0.24369270833333334 + }, + "related_data": {} + } + } + }, { "守护线程": { "data": { - "uuid": "java-5-576", + "uuid": "java-5-596", "seg": [ [ [ @@ -32708,7 +38448,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24369270833333334, + "max": 0.24369791666666668 + }, "related_data": {} } } @@ -32716,20 +38459,24 @@ { "线程名": { "data": { - "uuid": "java-5-577", + "uuid": "java-5-597", "seg": [ [ [ "线程", - "名" + "名", + "线程名" ] ] ], - "level": "2", + "level": { + "min": 0.24369791666666668, + "max": 0.243703125 + }, "related_data": { "qa": { "data_id": [ - "13_706467_641038" + "13_706467_641038@13" ] } } @@ -32739,33 +38486,41 @@ { "未捕获异常的处理器": { "data": { - "uuid": "java-5-578", + "uuid": "java-5-598", "seg": [ [ [ "捕获", "异常", - "处理器" + "处理器", + "未捕获" ] ] ], - "level": "2", + "level": { + "min": 0.243703125, + "max": 0.24370833333333333 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-540", + "uuid": "java-4-546", "seg": [ [ [ "线程", - "属性" + "属性", + "线程属性" ] ] ], - "level": "2", + "level": { + "min": 0.2436875, + "max": 0.24370833333333333 + }, "related_data": {} } } @@ -32776,7 +38531,7 @@ { "阻塞队列": { "data": { - "uuid": "java-5-579", + "uuid": "java-5-599", "seg": [ [ [ @@ -32785,7 +38540,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24370833333333333, + "max": 0.2437113095238095 + }, "related_data": {} } } @@ -32793,7 +38551,7 @@ { "映射条目的原子更新": { "data": { - "uuid": "java-5-580", + "uuid": "java-5-600", "seg": [ [ [ @@ -32801,11 +38559,16 @@ "条", "目的", "原子", - "更新" + "更新", + "条目的", + "目的原子" ] ] ], - "level": "2", + "level": { + "min": 0.2437113095238095, + "max": 0.24371428571428572 + }, "related_data": {} } } @@ -32813,7 +38576,7 @@ { "对并发散列映射的批操作": { "data": { - "uuid": "java-5-581", + "uuid": "java-5-601", "seg": [ [ [ @@ -32825,7 +38588,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24371428571428572, + "max": 0.2437172619047619 + }, "related_data": {} } } @@ -32833,7 +38599,7 @@ { "并发集视图": { "data": { - "uuid": "java-5-582", + "uuid": "java-5-602", "seg": [ [ [ @@ -32843,7 +38609,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2437172619047619, + "max": 0.2437202380952381 + }, "related_data": {} } } @@ -32851,7 +38620,7 @@ { "写数组的拷贝": { "data": { - "uuid": "java-5-583", + "uuid": "java-5-603", "seg": [ [ [ @@ -32861,7 +38630,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2437202380952381, + "max": 0.24372321428571428 + }, "related_data": {} } } @@ -32869,17 +38641,21 @@ { "并行数组算法": { "data": { - "uuid": "java-5-584", + "uuid": "java-5-604", "seg": [ [ [ "并行", "数组", - "算法" + "算法", + "数组算法" ] ] ], - "level": "2", + "level": { + "min": 0.24372321428571428, + "max": 0.24372619047619049 + }, "related_data": {} } } @@ -32887,7 +38663,7 @@ { "较早的线程安全集合": { "data": { - "uuid": "java-5-585", + "uuid": "java-5-605", "seg": [ [ [ @@ -32897,14 +38673,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24372619047619049, + "max": 0.24372916666666666 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-541", + "uuid": "java-4-547", "seg": [ [ [ @@ -32913,7 +38692,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24370833333333333, + "max": 0.24372916666666666 + }, "related_data": {} } } @@ -32924,7 +38706,7 @@ { "可完成Future": { "data": { - "uuid": "java-5-586", + "uuid": "java-5-606", "seg": [ [ [ @@ -32932,7 +38714,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24372916666666666, + "max": 0.2437361111111111 + }, "related_data": {} } } @@ -32940,7 +38725,7 @@ { "组合可完成Future": { "data": { - "uuid": "java-5-587", + "uuid": "java-5-607", "seg": [ [ [ @@ -32949,7 +38734,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2437361111111111, + "max": 0.24374305555555556 + }, "related_data": {} } } @@ -32957,7 +38745,7 @@ { "用户界面回调中的长时间运行任务": { "data": { - "uuid": "java-5-588", + "uuid": "java-5-608", "seg": [ [ [ @@ -32968,11 +38756,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24374305555555556, + "max": 0.24375 + }, "related_data": { "qa": { "data_id": [ - "13_366839_395713" + "13_366839_395713@13" ] } } @@ -32981,23 +38772,27 @@ } ], "data": { - "uuid": "java-4-542", + "uuid": "java-4-548", "seg": [ [ [ "异步", - "计算" + "计算", + "异步计算" ] ] ], - "level": "2", + "level": { + "min": 0.24372916666666666, + "max": 0.24375 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-281", + "uuid": "java-3-274", "seg": [ [ [ @@ -33005,11 +38800,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2434375, + "max": 0.24375 + }, "related_data": { "qa": { "data_id": [ - "13_678172_521742" + "13_678172_521742@13" ] } } @@ -33025,7 +38823,7 @@ { "一个显示框架": { "data": { - "uuid": "java-5-589", + "uuid": "java-5-609", "seg": [ [ [ @@ -33034,14 +38832,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24375, + "max": 0.24377604166666667 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-543", + "uuid": "java-4-549", "seg": [ [ [ @@ -33050,7 +38851,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24375, + "max": 0.24377604166666667 + }, "related_data": {} } } @@ -33058,7 +38862,7 @@ { "创建按钮": { "data": { - "uuid": "java-4-544", + "uuid": "java-4-550", "seg": [ [ [ @@ -33067,7 +38871,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24377604166666667, + "max": 0.24380208333333334 + }, "related_data": {} } } @@ -33075,7 +38882,7 @@ { "捕获事件": { "data": { - "uuid": "java-4-545", + "uuid": "java-4-551", "seg": [ [ [ @@ -33084,30 +38891,31 @@ ] ] ], - "level": "2", - "related_data": { - "qa": { - "data_id": [ - "13_675583_510221" - ] - } - } + "level": { + "min": 0.24380208333333334, + "max": 0.243828125 + }, + "related_data": {} } } }, { "文本区域": { "data": { - "uuid": "java-4-546", + "uuid": "java-4-552", "seg": [ [ [ "文本", - "区域" + "区域", + "文本区域" ] ] ], - "level": "2", + "level": { + "min": 0.243828125, + "max": 0.24385416666666665 + }, "related_data": {} } } @@ -33118,7 +38926,7 @@ { "GridBagLayout": { "data": { - "uuid": "java-5-590", + "uuid": "java-5-610", "seg": [ [ [ @@ -33126,11 +38934,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24385416666666665, + "max": 0.2438628472222222 + }, "related_data": { "qa": { "data_id": [ - "13_704499_597852" + "13_704499_597852@13" ] } } @@ -33140,23 +38951,33 @@ { "绝对定位": { "data": { - "uuid": "java-5-591", + "uuid": "java-5-611", "seg": [ [ [ - "定位" + "定位", + "绝对定位" ] ] ], - "level": "2", - "related_data": {} + "level": { + "min": 0.2438628472222222, + "max": 0.24387152777777776 + }, + "related_data": { + "qa": { + "data_id": [ + "13_1097844_1311879@13" + ] + } + } } } }, { "BoxLayout": { "data": { - "uuid": "java-5-592", + "uuid": "java-5-612", "seg": [ [ [ @@ -33164,14 +38985,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24387152777777776, + "max": 0.24388020833333332 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-547", + "uuid": "java-4-553", "seg": [ [ [ @@ -33180,7 +39004,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24385416666666665, + "max": 0.24388020833333332 + }, "related_data": {} } } @@ -33191,7 +39018,7 @@ { "事件与监听器的类型": { "data": { - "uuid": "java-5-593", + "uuid": "java-5-613", "seg": [ [ [ @@ -33203,7 +39030,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24388020833333332, + "max": 0.24389322916666667 + }, "related_data": {} } } @@ -33211,7 +39041,7 @@ { "跟踪多个事件": { "data": { - "uuid": "java-5-594", + "uuid": "java-5-614", "seg": [ [ [ @@ -33220,24 +39050,31 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24389322916666667, + "max": 0.24390625 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-548", + "uuid": "java-4-554", "seg": [ [ [ "swing", "事件", - "模型" + "模型", + "事件模型" ] ] ], - "level": "2", + "level": { + "min": 0.24388020833333332, + "max": 0.24390625 + }, "related_data": {} } } @@ -33248,7 +39085,7 @@ { "按钮": { "data": { - "uuid": "java-5-595", + "uuid": "java-5-615", "seg": [ [ [ @@ -33256,7 +39093,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24390625, + "max": 0.2439074337121212 + }, "related_data": {} } } @@ -33264,7 +39104,7 @@ { "图标": { "data": { - "uuid": "java-5-596", + "uuid": "java-5-616", "seg": [ [ [ @@ -33272,11 +39112,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2439074337121212, + "max": 0.2439086174242424 + }, "related_data": { "qa": { "data_id": [ - "13_772793_836398" + "13_772793_836398@13" ] } } @@ -33286,7 +39129,7 @@ { "工具提示": { "data": { - "uuid": "java-5-597", + "uuid": "java-5-617", "seg": [ [ [ @@ -33295,19 +39138,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2439086174242424, + "max": 0.24390980113636362 + }, "related_data": { "qa": { "data_id": [ - "13_1064324_1262684", - "13_253443_254572", - "13_924508_1059388", - "13_243959_232949", - "13_774126_838032", - "13_220602_173534", - "13_1070499_1272448", - "13_1090130_1297692", - "13_230488_199801" + "13_1064324_1262684@13", + "13_719744_714428@13", + "13_253443_254572@13", + "13_924508_1059388@13", + "13_243959_232949@13", + "13_774126_838032@13", + "13_220602_173534@13", + "13_1070499_1272448@13", + "13_686435_548078@13", + "13_1090130_1297692@13" ] } } @@ -33317,16 +39164,20 @@ { "文本域": { "data": { - "uuid": "java-5-598", + "uuid": "java-5-618", "seg": [ [ [ "文本", - "域" + "域", + "文本域" ] ] ], - "level": "2", + "level": { + "min": 0.24390980113636362, + "max": 0.24391098484848484 + }, "related_data": {} } } @@ -33334,7 +39185,7 @@ { "边框": { "data": { - "uuid": "java-5-599", + "uuid": "java-5-619", "seg": [ [ [ @@ -33342,7 +39193,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24391098484848484, + "max": 0.24391216856060605 + }, "related_data": {} } } @@ -33350,7 +39204,7 @@ { "滚动面板": { "data": { - "uuid": "java-5-600", + "uuid": "java-5-620", "seg": [ [ [ @@ -33359,7 +39213,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24391216856060605, + "max": 0.24391335227272726 + }, "related_data": {} } } @@ -33367,7 +39224,7 @@ { "一个迷你编辑器": { "data": { - "uuid": "java-5-601", + "uuid": "java-5-621", "seg": [ [ [ @@ -33376,7 +39233,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24391335227272726, + "max": 0.24391453598484847 + }, "related_data": {} } } @@ -33384,7 +39244,7 @@ { "复选框": { "data": { - "uuid": "java-5-602", + "uuid": "java-5-622", "seg": [ [ [ @@ -33392,12 +39252,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24391453598484847, + "max": 0.24391571969696968 + }, "related_data": { "qa": { "data_id": [ - "13_742421_784589", - "13_649721_455689" + "13_742421_784589@13", + "13_649721_455689@13" ] } } @@ -33407,7 +39270,7 @@ { "单选按钮": { "data": { - "uuid": "java-5-603", + "uuid": "java-5-623", "seg": [ [ [ @@ -33416,7 +39279,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24391571969696968, + "max": 0.2439169034090909 + }, "related_data": {} } } @@ -33424,18 +39290,22 @@ { "组合框(下拉列表)": { "data": { - "uuid": "java-5-604", + "uuid": "java-5-624", "seg": [ [ [ "组合", "框", - "拉", - "列表" + "下拉", + "列表", + "下拉列表" ] ] ], - "level": "2", + "level": { + "min": 0.2439169034090909, + "max": 0.2439180871212121 + }, "related_data": {} } } @@ -33443,7 +39313,7 @@ { "列表框": { "data": { - "uuid": "java-5-605", + "uuid": "java-5-625", "seg": [ [ [ @@ -33451,7 +39321,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2439180871212121, + "max": 0.2439192708333333 + }, "related_data": {} } } @@ -33459,7 +39332,7 @@ { "页签面板": { "data": { - "uuid": "java-5-606", + "uuid": "java-5-626", "seg": [ [ [ @@ -33468,11 +39341,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2439192708333333, + "max": 0.24392045454545455 + }, "related_data": { "qa": { "data_id": [ - "13_1068275_1269246" + "13_1068275_1269246@13" ] } } @@ -33482,7 +39358,7 @@ { "消息框": { "data": { - "uuid": "java-5-607", + "uuid": "java-5-627", "seg": [ [ [ @@ -33491,8 +39367,22 @@ ] ] ], - "level": "2", - "related_data": {} + "level": { + "min": 0.24392045454545455, + "max": 0.24392163825757576 + }, + "related_data": { + "qa": { + "data_id": [ + "13_911766_1046927@13", + "13_7440901_53416594@13", + "13_7173302_51461644@13", + "13_749472_802065@13", + "13_747762_799405@13", + "13_375661_405183@13" + ] + } + } } } }, @@ -33502,7 +39392,7 @@ { "创建菜单栏": { "data": { - "uuid": "java-6-108", + "uuid": "java-6-109", "seg": [ [ [ @@ -33511,7 +39401,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24392163825757576, + "max": 0.2439217697811448 + }, "related_data": {} } } @@ -33519,17 +39412,21 @@ { "创建弹出式菜单": { "data": { - "uuid": "java-6-109", + "uuid": "java-6-110", "seg": [ [ [ "创建", "弹出式", - "菜单" + "菜单", + "弹出式菜单" ] ] ], - "level": "2", + "level": { + "min": 0.2439217697811448, + "max": 0.2439219013047138 + }, "related_data": {} } } @@ -33537,17 +39434,21 @@ { "定制个性化菜单": { "data": { - "uuid": "java-6-110", + "uuid": "java-6-111", "seg": [ [ [ "定制", "个性化", - "菜单" + "菜单", + "个性化菜单" ] ] ], - "level": "2", + "level": { + "min": 0.2439219013047138, + "max": 0.24392203282828284 + }, "related_data": {} } } @@ -33555,7 +39456,7 @@ { "菜单构建": { "data": { - "uuid": "java-6-111", + "uuid": "java-6-112", "seg": [ [ [ @@ -33564,16 +39465,19 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24392203282828284, + "max": 0.24392216435185185 + }, "related_data": { "qa": { "data_id": [ - "13_208199_144209", - "13_245943_237056", - "13_391224_433417", - "13_190687_91402", - "13_749520_802053", - "13_749677_802421" + "13_208199_144209@13", + "13_245943_237056@13", + "13_391224_433417@13", + "13_190687_91402@13", + "13_749520_802053@13", + "13_749677_802421@13" ] } } @@ -33583,7 +39487,7 @@ { "菜单项中的图标": { "data": { - "uuid": "java-6-112", + "uuid": "java-6-113", "seg": [ [ [ @@ -33592,7 +39496,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24392216435185185, + "max": 0.24392229587542089 + }, "related_data": {} } } @@ -33600,7 +39507,7 @@ { "弹出菜单": { "data": { - "uuid": "java-6-113", + "uuid": "java-6-114", "seg": [ [ [ @@ -33610,13 +39517,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24392229587542089, + "max": 0.2439224273989899 + }, "related_data": { "qa": { "data_id": [ - "13_668394_488641", - "13_347560_353592", - "13_2476_3693" + "13_668394_488641@13", + "13_347560_353592@13", + "13_2476_3693@13" ] } } @@ -33626,19 +39536,23 @@ { "键盘助记符和加速器": { "data": { - "uuid": "java-6-114", + "uuid": "java-6-115", "seg": [ [ [ "键盘", - "助记符" + "助记符", + "键盘助记符" ], [ "加速器" ] ] ], - "level": "2", + "level": { + "min": 0.2439224273989899, + "max": 0.24392255892255893 + }, "related_data": {} } } @@ -33646,7 +39560,7 @@ { "启用和禁用菜单项": { "data": { - "uuid": "java-6-115", + "uuid": "java-6-116", "seg": [ [ [ @@ -33658,11 +39572,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24392255892255893, + "max": 0.24392269044612794 + }, "related_data": { "qa": { "data_id": [ - "13_11756_5606" + "13_11756_5606@13" ] } } @@ -33672,7 +39589,7 @@ { "工具条": { "data": { - "uuid": "java-6-116", + "uuid": "java-6-117", "seg": [ [ [ @@ -33680,14 +39597,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24392269044612794, + "max": 0.24392282196969697 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-608", + "uuid": "java-5-628", "seg": [ [ [ @@ -33695,7 +39615,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24392163825757576, + "max": 0.24392282196969697 + }, "related_data": {} } } @@ -33703,16 +39626,20 @@ { "弹出式菜单": { "data": { - "uuid": "java-5-609", + "uuid": "java-5-629", "seg": [ [ [ "弹出式", - "菜单" + "菜单", + "弹出式菜单" ] ] ], - "level": "2", + "level": { + "min": 0.24392282196969697, + "max": 0.24392400568181818 + }, "related_data": {} } } @@ -33720,7 +39647,7 @@ { "绘图": { "data": { - "uuid": "java-5-610", + "uuid": "java-5-630", "seg": [ [ [ @@ -33728,7 +39655,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24392400568181818, + "max": 0.2439251893939394 + }, "related_data": {} } } @@ -33739,16 +39669,20 @@ { "选项对话框": { "data": { - "uuid": "java-6-117", + "uuid": "java-6-118", "seg": [ [ [ "选项", - "对话框" + "对话框", + "选项对话框" ] ] ], - "level": "2", + "level": { + "min": 0.2439251893939394, + "max": 0.24392558396464648 + }, "related_data": {} } } @@ -33756,7 +39690,7 @@ { "创建对话框": { "data": { - "uuid": "java-6-118", + "uuid": "java-6-119", "seg": [ [ [ @@ -33765,13 +39699,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24392558396464648, + "max": 0.24392597853535353 + }, "related_data": { "qa": { "data_id": [ - "13_252350_252187", - "13_213182_155582", - "13_1066896_1267075" + "13_213182_155582@13", + "13_1066896_1267075@13" ] } } @@ -33781,7 +39717,7 @@ { "数据交换": { "data": { - "uuid": "java-6-119", + "uuid": "java-6-120", "seg": [ [ [ @@ -33789,14 +39725,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24392597853535353, + "max": 0.2439263731060606 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-611", + "uuid": "java-5-631", "seg": [ [ [ @@ -33804,7 +39743,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2439251893939394, + "max": 0.2439263731060606 + }, "related_data": {} } } @@ -33812,20 +39754,24 @@ { "文件对话框": { "data": { - "uuid": "java-5-612", + "uuid": "java-5-632", "seg": [ [ [ "文件", - "对话框" + "对话框", + "文件对话框" ] ] ], - "level": "2", + "level": { + "min": 0.2439263731060606, + "max": 0.24392755681818182 + }, "related_data": { "qa": { "data_id": [ - "13_746032_794842" + "13_746032_794842@13" ] } } @@ -33835,7 +39781,7 @@ { "Swing组件上的HTML": { "data": { - "uuid": "java-5-613", + "uuid": "java-5-633", "seg": [ [ [ @@ -33845,7 +39791,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24392755681818182, + "max": 0.24392874053030303 + }, "related_data": {} } } @@ -33853,7 +39802,7 @@ { "滑块与进度条": { "data": { - "uuid": "java-5-614", + "uuid": "java-5-634", "seg": [ [ [ @@ -33864,7 +39813,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24392874053030303, + "max": 0.24392992424242424 + }, "related_data": {} } } @@ -33872,7 +39824,7 @@ { "选择外观": { "data": { - "uuid": "java-5-615", + "uuid": "java-5-635", "seg": [ [ [ @@ -33881,7 +39833,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24392992424242424, + "max": 0.24393110795454545 + }, "related_data": {} } } @@ -33892,7 +39847,7 @@ { "传递文本": { "data": { - "uuid": "java-6-120", + "uuid": "java-6-121", "seg": [ [ [ @@ -33901,26 +39856,39 @@ ] ] ], - "level": "2", - "related_data": {} + "level": { + "min": 0.24393110795454545, + "max": 0.24393140388257575 + }, + "related_data": { + "qa": { + "data_id": [ + "13_783587_855532@13" + ] + } + } } } }, { "使用系统剪贴板传递图像": { "data": { - "uuid": "java-6-121", + "uuid": "java-6-122", "seg": [ [ [ "系统", "剪贴板", "传递", - "图像" + "图像", + "系统剪贴板" ] ] ], - "level": "2", + "level": { + "min": 0.24393140388257575, + "max": 0.24393169981060606 + }, "related_data": {} } } @@ -33928,7 +39896,7 @@ { "使用本地剪贴板传递对象引用": { "data": { - "uuid": "java-6-122", + "uuid": "java-6-123", "seg": [ [ [ @@ -33939,7 +39907,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24393169981060606, + "max": 0.24393199573863636 + }, "related_data": {} } } @@ -33947,7 +39918,7 @@ { "通过系统剪贴板传递Java对象": { "data": { - "uuid": "java-6-123", + "uuid": "java-6-124", "seg": [ [ [ @@ -33955,18 +39926,22 @@ "剪贴板", "传递", "java", - "对象" + "对象", + "系统剪贴板" ] ] ], - "level": "2", + "level": { + "min": 0.24393199573863636, + "max": 0.24393229166666666 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-616", + "uuid": "java-5-636", "seg": [ [ [ @@ -33980,24 +39955,31 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24393110795454545, + "max": 0.24393229166666666 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-549", + "uuid": "java-4-555", "seg": [ [ [ "swing", "组件", - "一览" + "一览", + "组件一览" ] ] ], - "level": "2", + "level": { + "min": 0.24390625, + "max": 0.24393229166666666 + }, "related_data": {} } } @@ -34005,7 +39987,7 @@ { "JNLP与Java Web Start": { "data": { - "uuid": "java-4-550", + "uuid": "java-4-556", "seg": [ [ [ @@ -34018,7 +40000,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24393229166666666, + "max": 0.24395833333333333 + }, "related_data": {} } } @@ -34029,7 +40014,7 @@ { "JavaBean是什么": { "data": { - "uuid": "java-5-617", + "uuid": "java-5-637", "seg": [ [ [ @@ -34037,20 +40022,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24395833333333333, + "max": 0.2439626736111111 + }, "related_data": { "qa": { "data_id": [ - "13_345354_349478", - "13_593081_440312", - "13_225487_186704", - "13_763878_822691", - "13_652176_460102", - "13_347676_353829", - "13_643044_443014", - "13_383108_418382", - "13_158937_23730", - "13_675042_507198" + "13_345354_349478@13", + "13_593081_440312@13", + "13_225487_186704@13", + "13_763878_822691@13", + "13_652176_460102@13", + "13_347676_353829@13", + "13_643044_443014@13", + "13_383108_418382@13", + "13_158937_23730@13", + "13_675042_507198@13" ] } } @@ -34060,7 +40048,7 @@ { "使用Introspector抽取出BeanInfo": { "data": { - "uuid": "java-5-618", + "uuid": "java-5-638", "seg": [ [ [ @@ -34071,7 +40059,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2439626736111111, + "max": 0.2439670138888889 + }, "related_data": {} } } @@ -34079,7 +40070,7 @@ { "一个更复杂的Bean": { "data": { - "uuid": "java-5-619", + "uuid": "java-5-639", "seg": [ [ [ @@ -34087,7 +40078,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2439670138888889, + "max": 0.24397135416666665 + }, "related_data": {} } } @@ -34095,7 +40089,7 @@ { "把Bean打包": { "data": { - "uuid": "java-5-620", + "uuid": "java-5-640", "seg": [ [ [ @@ -34104,15 +40098,27 @@ ] ] ], - "level": "2", - "related_data": {} + "level": { + "min": 0.24397135416666665, + "max": 0.24397569444444442 + }, + "related_data": { + "qa": { + "data_id": [ + "13_748224_800054@13", + "13_1050112_1247438@13", + "13_7436863_53409019@13", + "13_190717_91569@13" + ] + } + } } } }, { "对更复杂的Bean的支持": { "data": { - "uuid": "java-5-621", + "uuid": "java-5-641", "seg": [ [ [ @@ -34121,13 +40127,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24397569444444442, + "max": 0.2439800347222222 + }, "related_data": { "qa": { "data_id": [ - "13_718249_714457", - "13_816026_911619", - "13_645054_446295" + "13_718249_714457@13", + "13_816026_911619@13", + "13_645054_446295@13" ] } } @@ -34137,7 +40146,7 @@ { "更多有关Bean的读物": { "data": { - "uuid": "java-5-622", + "uuid": "java-5-642", "seg": [ [ [ @@ -34146,26 +40155,33 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2439800347222222, + "max": 0.24398437499999998 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-551", + "uuid": "java-4-557", "seg": [ [ [ "可视化", - "编程" + "编程", + "可视化编程" ], [ "javabean" ] ] ], - "level": "2", + "level": { + "min": 0.24395833333333333, + "max": 0.24398437499999998 + }, "related_data": {} } } @@ -34173,7 +40189,7 @@ { "Swing的可替换选择": { "data": { - "uuid": "java-4-552", + "uuid": "java-4-558", "seg": [ [ [ @@ -34183,7 +40199,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24398437499999998, + "max": 0.24401041666666665 + }, "related_data": {} } } @@ -34194,7 +40213,7 @@ { "Hello, Flex": { "data": { - "uuid": "java-5-623", + "uuid": "java-5-643", "seg": [ [ [ @@ -34203,14 +40222,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24401041666666665, + "max": 0.24401367187499998 + }, "related_data": { "qa": { "data_id": [ - "13_743796_788825", - "13_745087_792280", - "13_743123_786761", - "13_27678_7703" + "13_743796_788825@13", + "13_745087_792280@13", + "13_743123_786761@13", + "13_27678_7703@13" ] } } @@ -34220,7 +40242,7 @@ { "编译MXML": { "data": { - "uuid": "java-5-624", + "uuid": "java-5-644", "seg": [ [ [ @@ -34229,15 +40251,33 @@ ] ] ], - "level": "2", - "related_data": {} + "level": { + "min": 0.24401367187499998, + "max": 0.2440169270833333 + }, + "related_data": { + "qa": { + "data_id": [ + "13_7443311_53420396@13", + "13_743143_786819@13", + "13_380579_413678@13", + "13_251614_250316@13", + "13_366300_390617@13", + "13_7407598_53357594@13", + "13_678658_523331@13", + "13_216367_163589@13", + "13_764031_822660@13", + "13_7402336_53350055@13" + ] + } + } } } }, { "MXML与ActionScript": { "data": { - "uuid": "java-5-625", + "uuid": "java-5-645", "seg": [ [ [ @@ -34248,7 +40288,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2440169270833333, + "max": 0.24402018229166664 + }, "related_data": {} } } @@ -34256,7 +40299,7 @@ { "效果与风格": { "data": { - "uuid": "java-5-626", + "uuid": "java-5-646", "seg": [ [ [ @@ -34267,7 +40310,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24402018229166664, + "max": 0.2440234375 + }, "related_data": {} } } @@ -34275,7 +40321,7 @@ { "事件": { "data": { - "uuid": "java-5-627", + "uuid": "java-5-647", "seg": [ [ [ @@ -34283,15 +40329,24 @@ ] ] ], - "level": "2", - "related_data": {} + "level": { + "min": 0.2440234375, + "max": 0.24402669270833333 + }, + "related_data": { + "qa": { + "data_id": [ + "13_221307_175188@13" + ] + } + } } } }, { "连接到Java": { "data": { - "uuid": "java-5-628", + "uuid": "java-5-648", "seg": [ [ [ @@ -34300,7 +40355,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24402669270833333, + "max": 0.24402994791666666 + }, "related_data": {} } } @@ -34308,7 +40366,7 @@ { "数据模型与数据绑定": { "data": { - "uuid": "java-5-629", + "uuid": "java-5-649", "seg": [ [ [ @@ -34320,11 +40378,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24402994791666666, + "max": 0.244033203125 + }, "related_data": { "qa": { "data_id": [ - "13_651932_459556" + "13_651932_459556@13" ] } } @@ -34334,7 +40395,7 @@ { "构建和部署": { "data": { - "uuid": "java-5-630", + "uuid": "java-5-650", "seg": [ [ [ @@ -34345,14 +40406,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.244033203125, + "max": 0.24403645833333332 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-553", + "uuid": "java-4-559", "seg": [ [ [ @@ -34364,7 +40428,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24401041666666665, + "max": 0.24403645833333332 + }, "related_data": {} } } @@ -34375,7 +40442,7 @@ { "安装SWT": { "data": { - "uuid": "java-5-631", + "uuid": "java-5-651", "seg": [ [ [ @@ -34384,7 +40451,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24403645833333332, + "max": 0.24403971354166665 + }, "related_data": {} } } @@ -34392,7 +40462,7 @@ { "Hello, SWT": { "data": { - "uuid": "java-5-632", + "uuid": "java-5-652", "seg": [ [ [ @@ -34401,12 +40471,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24403971354166665, + "max": 0.24404296874999998 + }, "related_data": { "qa": { "data_id": [ - "13_383971_419851", - "13_382818_417743" + "13_383971_419851@13", + "13_382818_417743@13" ] } } @@ -34416,7 +40489,7 @@ { "根除冗余代码": { "data": { - "uuid": "java-5-633", + "uuid": "java-5-653", "seg": [ [ [ @@ -34425,7 +40498,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24404296874999998, + "max": 0.2440462239583333 + }, "related_data": {} } } @@ -34433,7 +40509,7 @@ { "菜单": { "data": { - "uuid": "java-5-634", + "uuid": "java-5-654", "seg": [ [ [ @@ -34441,7 +40517,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2440462239583333, + "max": 0.24404947916666664 + }, "related_data": {} } } @@ -34449,7 +40528,7 @@ { "页签面板、按钮和事件": { "data": { - "uuid": "java-5-635", + "uuid": "java-5-655", "seg": [ [ [ @@ -34464,7 +40543,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24404947916666664, + "max": 0.244052734375 + }, "related_data": {} } } @@ -34472,7 +40554,7 @@ { "图形": { "data": { - "uuid": "java-5-636", + "uuid": "java-5-656", "seg": [ [ [ @@ -34480,15 +40562,24 @@ ] ] ], - "level": "2", - "related_data": {} + "level": { + "min": 0.244052734375, + "max": 0.24405598958333333 + }, + "related_data": { + "qa": { + "data_id": [ + "13_699770_588018@13" + ] + } + } } } }, { "SWT中的并发": { "data": { - "uuid": "java-5-637", + "uuid": "java-5-657", "seg": [ [ [ @@ -34497,7 +40588,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24405598958333333, + "max": 0.24405924479166666 + }, "related_data": {} } } @@ -34505,7 +40599,7 @@ { "SWT还是Swing": { "data": { - "uuid": "java-5-638", + "uuid": "java-5-658", "seg": [ [ [ @@ -34514,14 +40608,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24405924479166666, + "max": 0.2440625 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-554", + "uuid": "java-4-560", "seg": [ [ [ @@ -34530,23 +40627,30 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24403645833333332, + "max": 0.2440625 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-282", + "uuid": "java-3-275", "seg": [ [ [ "图形化", - "用户界面" + "用户界面", + "图形化用户界面" ] ] ], - "level": "2", + "level": { + "min": 0.24375, + "max": 0.2440625 + }, "related_data": {} } } @@ -34563,31 +40667,35 @@ { "安装Eclipse的中文语言包": { "data": { - "uuid": "java-6-124", + "uuid": "java-6-125", "seg": [ [ [ "安装", "eclipse", "中文", - "语言包" + "语言包", + "中文语言包" ] ] ], - "level": "1", + "level": { + "min": 0.2440625, + "max": 0.24408854166666666 + }, "related_data": { "qa": { "data_id": [ - "13_196840_109932", - "13_7428568_53394403", - "13_248705_243804", - "13_746893_797278", - "13_353130_364564", - "13_683619_540010", - "13_680994_532451", - "13_7465948_53453069", - "13_715076_707209", - "13_676158_514248" + "13_196840_109932@13", + "13_7428568_53394403@13", + "13_248705_243804@13", + "13_746893_797278@13", + "13_353130_364564@13", + "13_683619_540010@13", + "13_680994_532451@13", + "13_7465948_53453069@13", + "13_715076_707209@13", + "13_676158_514248@13" ] } } @@ -34597,7 +40705,7 @@ { "透视图与视图": { "data": { - "uuid": "java-6-125", + "uuid": "java-6-126", "seg": [ [ [ @@ -34608,7 +40716,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24408854166666666, + "max": 0.24411458333333333 + }, "related_data": {} } } @@ -34616,7 +40727,7 @@ { "菜单栏": { "data": { - "uuid": "java-6-126", + "uuid": "java-6-127", "seg": [ [ [ @@ -34624,7 +40735,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24411458333333333, + "max": 0.244140625 + }, "related_data": {} } } @@ -34632,7 +40746,7 @@ { "工具栏": { "data": { - "uuid": "java-6-127", + "uuid": "java-6-128", "seg": [ [ [ @@ -34640,7 +40754,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.244140625, + "max": 0.24416666666666664 + }, "related_data": {} } } @@ -34648,18 +40765,22 @@ { "“包资源管理器”视图": { "data": { - "uuid": "java-6-128", + "uuid": "java-6-129", "seg": [ [ [ "包", "资源管理", "器", - "视图" + "视图", + "资源管理器" ] ] ], - "level": "1", + "level": { + "min": 0.24416666666666664, + "max": 0.2441927083333333 + }, "related_data": {} } } @@ -34667,7 +40788,7 @@ { "“控制台”视图": { "data": { - "uuid": "java-6-129", + "uuid": "java-6-130", "seg": [ [ [ @@ -34676,14 +40797,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2441927083333333, + "max": 0.24421874999999998 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-639", + "uuid": "java-5-659", "seg": [ [ [ @@ -34692,14 +40816,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2440625, + "max": 0.24421874999999998 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-555", + "uuid": "java-4-561", "seg": [ [ [ @@ -34709,7 +40836,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2440625, + "max": 0.24421874999999998 + }, "related_data": {} } } @@ -34720,16 +40850,20 @@ { "数字格式化": { "data": { - "uuid": "java-5-640", + "uuid": "java-5-660", "seg": [ [ [ "数字", - "格式化" + "格式化", + "数字格式化" ] ] ], - "level": "1", + "level": { + "min": 0.24421874999999998, + "max": 0.2442578125 + }, "related_data": {} } } @@ -34737,7 +40871,7 @@ { "数学运算": { "data": { - "uuid": "java-5-641", + "uuid": "java-5-661", "seg": [ [ [ @@ -34746,14 +40880,11 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_239276_222361" - ] - } - } + "level": { + "min": 0.2442578125, + "max": 0.244296875 + }, + "related_data": {} } } }, @@ -34763,7 +40894,7 @@ { "Math.random方法": { "data": { - "uuid": "java-6-130", + "uuid": "java-6-131", "seg": [ [ [ @@ -34773,14 +40904,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.244296875, + "max": 0.2443359375 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-642", + "uuid": "java-5-662", "seg": [ [ [ @@ -34788,15 +40922,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.244296875, + "max": 0.2443359375 + }, "related_data": { "qa": { "data_id": [ - "13_389937_430921", - "13_203154_129499", - "13_7412753_53364202", - "13_700538_589415", - "13_7455161_53437949" + "13_389937_430921@13", + "13_203154_129499@13", + "13_7412753_53364202@13", + "13_700538_589415@13", + "13_7455161_53437949@13", + "13_7426464_53389941@13" ] } } @@ -34809,7 +40947,7 @@ { "BigInteger": { "data": { - "uuid": "java-6-131", + "uuid": "java-6-132", "seg": [ [ [ @@ -34817,7 +40955,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2443359375, + "max": 0.24435546875 + }, "related_data": {} } } @@ -34825,7 +40966,7 @@ { "BigDecimal": { "data": { - "uuid": "java-6-132", + "uuid": "java-6-133", "seg": [ [ [ @@ -34833,12 +40974,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24435546875, + "max": 0.244375 + }, "related_data": { "qa": { "data_id": [ - "13_223534_181721", - "13_4645714_29328882" + "13_223534_181721@13", + "13_4645714_29328882@13" ] } } @@ -34847,7 +40991,7 @@ } ], "data": { - "uuid": "java-5-643", + "uuid": "java-5-663", "seg": [ [ [ @@ -34856,20 +41000,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2443359375, + "max": 0.244375 + }, "related_data": { "qa": { "data_id": [ - "13_222627_179207", - "13_234859_212594", - "13_366247_390467", - "13_25393_6789", - "13_7452087_53433886", - "13_7428938_53395927", - "13_382364_417044", - "13_4646351_29329955", - "13_7459947_53444977", - "13_7455187_53438122" + "13_222627_179207@13", + "13_234859_212594@13", + "13_366247_390467@13", + "13_25393_6789@13", + "13_7452087_53433886@13", + "13_7428938_53395927@13", + "13_382364_417044@13", + "13_4646351_29329955@13", + "13_7459947_53444977@13", + "13_7455187_53438122@13" ] } } @@ -34878,7 +41025,7 @@ } ], "data": { - "uuid": "java-4-556", + "uuid": "java-4-562", "seg": [ [ [ @@ -34887,14 +41034,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24421874999999998, + "max": 0.244375 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-283", + "uuid": "java-3-276", "seg": [ [ [ @@ -34902,8 +41052,17 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.2440625, + "max": 0.244375 + }, + "related_data": { + "qa": { + "data_id": [ + "13_368969_395815@13" + ] + } + } } } }, @@ -34916,7 +41075,7 @@ { "final变量": { "data": { - "uuid": "java-5-644", + "uuid": "java-5-664", "seg": [ [ [ @@ -34925,14 +41084,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.244375, + "max": 0.24447916666666666 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-557", + "uuid": "java-4-563", "seg": [ [ [ @@ -34942,7 +41104,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.244375, + "max": 0.24447916666666666 + }, "related_data": {} } } @@ -34953,7 +41118,7 @@ { "集合类概述": { "data": { - "uuid": "java-5-645", + "uuid": "java-5-665", "seg": [ [ [ @@ -34963,11 +41128,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24447916666666666, + "max": 0.24450520833333333 + }, "related_data": { "qa": { "data_id": [ - "13_231670_203157" + "13_231670_203157@13" ] } } @@ -34980,7 +41148,7 @@ { "List接口的实现类": { "data": { - "uuid": "java-6-133", + "uuid": "java-6-134", "seg": [ [ [ @@ -34990,20 +41158,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24450520833333333, + "max": 0.24451171875 + }, "related_data": { "qa": { "data_id": [ - "13_1129_1954", - "13_226831_190000", - "13_771983_834939", - "13_674521_505672", - "13_387543_426787", - "13_391715_434431", - "13_240482_225028", - "13_247207_240394", - "13_668367_488571", - "13_7459211_53444084" + "13_1129_1954@13", + "13_226831_190000@13", + "13_771983_834939@13", + "13_674521_505672@13", + "13_387543_426787@13", + "13_391715_434431@13", + "13_240482_225028@13", + "13_247207_240394@13", + "13_668367_488571@13", + "13_7459211_53444084@13" ] } } @@ -35013,7 +41184,7 @@ { "改进的List接口和ListIterator接口": { "data": { - "uuid": "java-6-134", + "uuid": "java-6-135", "seg": [ [ [ @@ -35027,7 +41198,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24451171875, + "max": 0.24451822916666666 + }, "related_data": {} } } @@ -35035,7 +41209,7 @@ { "ArrayList和Vector实现类": { "data": { - "uuid": "java-6-135", + "uuid": "java-6-136", "seg": [ [ [ @@ -35047,16 +41221,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24451822916666666, + "max": 0.24452473958333334 + }, "related_data": { "qa": { "data_id": [ - "13_389048_429263", - "13_673222_500644", - "13_72593_11989", - "13_371813_398555", - "13_767095_826598", - "13_1058668_1256024" + "13_389048_429263@13", + "13_673222_500644@13", + "13_72593_11989@13", + "13_371813_398555@13", + "13_767095_826598@13", + "13_1058668_1256024@13" ] } } @@ -35066,7 +41243,7 @@ { "固定长度的List": { "data": { - "uuid": "java-6-136", + "uuid": "java-6-137", "seg": [ [ [ @@ -35076,14 +41253,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24452473958333334, + "max": 0.24453125 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-646", + "uuid": "java-5-666", "seg": [ [ [ @@ -35092,11 +41272,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24450520833333333, + "max": 0.24453125 + }, "related_data": { "qa": { "data_id": [ - "13_192310_95250" + "13_192310_95250@13" ] } } @@ -35109,7 +41292,7 @@ { "HashSet类": { "data": { - "uuid": "java-6-137", + "uuid": "java-6-138", "seg": [ [ [ @@ -35118,13 +41301,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24453125, + "max": 0.24453645833333335 + }, "related_data": { "qa": { "data_id": [ - "13_390834_432755", - "13_662634_478379", - "13_372511_400009" + "13_390834_432755@13", + "13_662634_478379@13", + "13_372511_400009@13" ] } } @@ -35134,7 +41320,7 @@ { "LinkedHashSet类": { "data": { - "uuid": "java-6-138", + "uuid": "java-6-139", "seg": [ [ [ @@ -35143,7 +41329,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24453645833333335, + "max": 0.24454166666666668 + }, "related_data": {} } } @@ -35151,7 +41340,7 @@ { "TreeSet类": { "data": { - "uuid": "java-6-139", + "uuid": "java-6-140", "seg": [ [ [ @@ -35160,15 +41349,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24454166666666668, + "max": 0.244546875 + }, "related_data": { "qa": { "data_id": [ - "13_246908_239647", - "13_250045_246690", - "13_362348_381318", - "13_782303_852791", - "13_247866_241805" + "13_246908_239647@13", + "13_250045_246690@13", + "13_362348_381318@13", + "13_782303_852791@13", + "13_247866_241805@13" ] } } @@ -35178,7 +41370,7 @@ { "EnumSet类": { "data": { - "uuid": "java-6-140", + "uuid": "java-6-141", "seg": [ [ [ @@ -35187,7 +41379,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.244546875, + "max": 0.24455208333333334 + }, "related_data": {} } } @@ -35195,7 +41390,7 @@ { "各Set实现类的性能分析": { "data": { - "uuid": "java-6-141", + "uuid": "java-6-142", "seg": [ [ [ @@ -35206,20 +41401,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24455208333333334, + "max": 0.24455729166666668 + }, "related_data": { "qa": { "data_id": [ - "13_239479_224757", - "13_218018_166987", - "13_227605_191979", - "13_717665_711054", - "13_381453_415213", - "13_666361_484385", - "13_385589_422961", - "13_1104199_1318554", - "13_189442_88367", - "13_724298_726281" + "13_239479_224757@13", + "13_218018_166987@13", + "13_227605_191979@13", + "13_717665_711054@13", + "13_381453_415213@13", + "13_666361_484385@13", + "13_385589_422961@13", + "13_1104199_1318554@13", + "13_189442_88367@13", + "13_724298_726281@13" ] } } @@ -35228,7 +41426,7 @@ } ], "data": { - "uuid": "java-5-647", + "uuid": "java-5-667", "seg": [ [ [ @@ -35237,7 +41435,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24453125, + "max": 0.24455729166666668 + }, "related_data": {} } } @@ -35248,7 +41449,7 @@ { "Map接口的实现类": { "data": { - "uuid": "java-6-142", + "uuid": "java-6-143", "seg": [ [ [ @@ -35258,20 +41459,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24455729166666668, + "max": 0.24458333333333335 + }, "related_data": { "qa": { "data_id": [ - "13_954573_1099541", - "13_365872_389483", - "13_7436539_53409941", - "13_28195_7878", - "13_1102183_1316549", - "13_324214_315573", - "13_366158_390233", - "13_376382_406305", - "13_1063632_1261857", - "13_225124_185645" + "13_954573_1099541@13", + "13_365872_389483@13", + "13_7436539_53409941@13", + "13_28195_7878@13", + "13_1102183_1316549@13", + "13_324214_315573@13", + "13_366158_390233@13", + "13_376382_406305@13", + "13_1063632_1261857@13", + "13_225124_185645@13" ] } } @@ -35280,7 +41484,7 @@ } ], "data": { - "uuid": "java-5-648", + "uuid": "java-5-668", "seg": [ [ [ @@ -35289,14 +41493,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24455729166666668, + "max": 0.24458333333333335 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-558", + "uuid": "java-4-564", "seg": [ [ [ @@ -35305,8 +41512,17 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.24447916666666666, + "max": 0.24458333333333335 + }, + "related_data": { + "qa": { + "data_id": [ + "13_388464_428213@13" + ] + } + } } } }, @@ -35319,7 +41535,7 @@ { "局域网与因特网": { "data": { - "uuid": "java-6-143", + "uuid": "java-6-144", "seg": [ [ [ @@ -35330,11 +41546,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24458333333333335, + "max": 0.2445949074074074 + }, "related_data": { "qa": { "data_id": [ - "13_1099247_1314204" + "13_1099247_1314204@13" ] } } @@ -35344,7 +41563,7 @@ { "网络协议": { "data": { - "uuid": "java-6-144", + "uuid": "java-6-145", "seg": [ [ [ @@ -35352,7 +41571,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2445949074074074, + "max": 0.2446064814814815 + }, "related_data": {} } } @@ -35360,7 +41582,7 @@ { "端口和套接字": { "data": { - "uuid": "java-6-145", + "uuid": "java-6-146", "seg": [ [ [ @@ -35372,24 +41594,32 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2446064814814815, + "max": 0.24461805555555557 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-649", + "uuid": "java-5-669", "seg": [ [ [ "网络", "程序设计", - "基础" + "基础", + "网络程序设计", + "程序设计基础" ] ] ], - "level": "2", + "level": { + "min": 0.24458333333333335, + "max": 0.24461805555555557 + }, "related_data": {} } } @@ -35400,7 +41630,7 @@ { "InetAddress类": { "data": { - "uuid": "java-6-146", + "uuid": "java-6-147", "seg": [ [ [ @@ -35409,7 +41639,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24461805555555557, + "max": 0.24463541666666666 + }, "related_data": {} } } @@ -35417,7 +41650,7 @@ { "ServerSocket类": { "data": { - "uuid": "java-6-147", + "uuid": "java-6-148", "seg": [ [ [ @@ -35426,11 +41659,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24463541666666666, + "max": 0.24465277777777777 + }, "related_data": { "qa": { "data_id": [ - "13_351618_361311" + "13_351618_361311@13" ] } } @@ -35439,17 +41675,21 @@ } ], "data": { - "uuid": "java-5-650", + "uuid": "java-5-670", "seg": [ [ [ "tcp", "程序设计", - "基础" + "基础", + "程序设计基础" ] ] ], - "level": "2", + "level": { + "min": 0.24461805555555557, + "max": 0.24465277777777777 + }, "related_data": {} } } @@ -35460,7 +41700,7 @@ { "DatagramPacket类": { "data": { - "uuid": "java-6-148", + "uuid": "java-6-149", "seg": [ [ [ @@ -35469,7 +41709,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24465277777777777, + "max": 0.2446701388888889 + }, "related_data": {} } } @@ -35477,7 +41720,7 @@ { "DatagramSocket类": { "data": { - "uuid": "java-6-149", + "uuid": "java-6-150", "seg": [ [ [ @@ -35486,31 +41729,38 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2446701388888889, + "max": 0.2446875 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-651", + "uuid": "java-5-671", "seg": [ [ [ "udp", "程序设计", - "基础" + "基础", + "程序设计基础" ] ] ], - "level": "2", + "level": { + "min": 0.24465277777777777, + "max": 0.2446875 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-559", + "uuid": "java-4-565", "seg": [ [ [ @@ -35518,14 +41768,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24458333333333335, + "max": 0.2446875 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-284", + "uuid": "java-3-277", "seg": [ [ [ @@ -35533,11 +41786,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.244375, + "max": 0.2446875 + }, "related_data": { "qa": { "data_id": [ - "13_161001_29580" + "13_161001_29580@13" ] } } @@ -35556,7 +41812,7 @@ { "创建表格": { "data": { - "uuid": "java-6-150", + "uuid": "java-6-151", "seg": [ [ [ @@ -35564,7 +41820,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2446875, + "max": 0.24469791666666665 + }, "related_data": {} } } @@ -35572,7 +41831,7 @@ { "定制表格": { "data": { - "uuid": "java-6-151", + "uuid": "java-6-152", "seg": [ [ [ @@ -35581,7 +41840,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24469791666666665, + "max": 0.24470833333333333 + }, "related_data": {} } } @@ -35589,7 +41851,7 @@ { "操纵表格": { "data": { - "uuid": "java-6-152", + "uuid": "java-6-153", "seg": [ [ [ @@ -35598,14 +41860,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24470833333333333, + "max": 0.24471874999999998 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-652", + "uuid": "java-5-672", "seg": [ [ [ @@ -35616,12 +41881,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2446875, + "max": 0.24471874999999998 + }, "related_data": { "qa": { "data_id": [ - "13_230703_201204", - "13_7419463_53376640" + "13_230703_201204@13" ] } } @@ -35631,7 +41898,7 @@ { "提供行标题栏的表格": { "data": { - "uuid": "java-5-653", + "uuid": "java-5-673", "seg": [ [ [ @@ -35641,13 +41908,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24471874999999998, + "max": 0.24475 + }, "related_data": { "qa": { "data_id": [ - "13_1094751_1305233", - "13_593_1092", - "13_7451391_53432648" + "13_1094751_1305233@13", + "13_593_1092@13", + "13_7451391_53432648@13" ] } } @@ -35656,17 +41926,21 @@ } ], "data": { - "uuid": "java-4-560", + "uuid": "java-4-566", "seg": [ [ [ "swing", "表格", - "组件" + "组件", + "表格组件" ] ] ], - "level": "1", + "level": { + "min": 0.2446875, + "max": 0.24475 + }, "related_data": {} } } @@ -35677,17 +41951,21 @@ { "处理选中节点事件": { "data": { - "uuid": "java-5-654", + "uuid": "java-5-674", "seg": [ [ [ "选中", "节点", - "事件" + "事件", + "节点事件" ] ] ], - "level": "2", + "level": { + "min": 0.24475, + "max": 0.2447625 + }, "related_data": {} } } @@ -35695,7 +41973,7 @@ { "遍历树节点": { "data": { - "uuid": "java-5-655", + "uuid": "java-5-675", "seg": [ [ [ @@ -35705,12 +41983,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2447625, + "max": 0.244775 + }, "related_data": { "qa": { "data_id": [ - "13_767996_827815", - "13_248432_243242" + "13_767996_827815@13", + "13_248432_243242@13", + "13_757011_812264@13", + "13_5612737_34452463@13" ] } } @@ -35720,7 +42003,7 @@ { "定制树": { "data": { - "uuid": "java-5-656", + "uuid": "java-5-676", "seg": [ [ [ @@ -35729,7 +42012,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.244775, + "max": 0.2447875 + }, "related_data": {} } } @@ -35737,7 +42023,7 @@ { "维护树模型": { "data": { - "uuid": "java-5-657", + "uuid": "java-5-677", "seg": [ [ [ @@ -35747,7 +42033,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2447875, + "max": 0.2448 + }, "related_data": {} } } @@ -35755,34 +42044,42 @@ { "处理展开节点事件": { "data": { - "uuid": "java-5-658", + "uuid": "java-5-678", "seg": [ [ [ "展开", "节点", - "事件" + "事件", + "节点事件" ] ] ], - "level": "2", + "level": { + "min": 0.2448, + "max": 0.2448125 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-561", + "uuid": "java-4-567", "seg": [ [ [ "swing", "树", - "组件" + "组件", + "树组件" ] ] ], - "level": "2", + "level": { + "min": 0.24475, + "max": 0.2448125 + }, "related_data": {} } } @@ -35796,7 +42093,7 @@ { "分割面板": { "data": { - "uuid": "java-6-153", + "uuid": "java-6-154", "seg": [ [ [ @@ -35805,11 +42102,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2448125, + "max": 0.24481770833333333 + }, "related_data": { "qa": { "data_id": [ - "13_7429039_53395483" + "13_7429039_53395483@13" ] } } @@ -35819,16 +42119,20 @@ { "选项卡面板": { "data": { - "uuid": "java-6-154", + "uuid": "java-6-155", "seg": [ [ [ "选项卡", - "面板" + "面板", + "选项卡面板" ] ] ], - "level": "2", + "level": { + "min": 0.24481770833333333, + "max": 0.24482291666666667 + }, "related_data": {} } } @@ -35836,12 +42140,13 @@ { "桌面面板和内部窗体": { "data": { - "uuid": "java-6-155", + "uuid": "java-6-156", "seg": [ [ [ "桌面", - "面板" + "面板", + "桌面面板" ], [ "内部", @@ -35849,24 +42154,31 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24482291666666667, + "max": 0.244828125 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-659", + "uuid": "java-5-679", "seg": [ [ [ "高级", "组件", - "面板" + "面板", + "组件面板" ] ] ], - "level": "2", + "level": { + "min": 0.2448125, + "max": 0.244828125 + }, "related_data": {} } } @@ -35877,7 +42189,7 @@ { "文件选择对话框": { "data": { - "uuid": "java-6-156", + "uuid": "java-6-157", "seg": [ [ [ @@ -35887,12 +42199,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.244828125, + "max": 0.2448359375 + }, "related_data": { "qa": { "data_id": [ - "13_347645_353887", - "13_158147_21932" + "13_347645_353887@13", + "13_158147_21932@13" ] } } @@ -35902,32 +42217,40 @@ { "使用文件过滤器": { "data": { - "uuid": "java-6-157", + "uuid": "java-6-158", "seg": [ [ [ "文件", - "过滤器" + "过滤器", + "文件过滤器" ] ] ], - "level": "2", + "level": { + "min": 0.2448359375, + "max": 0.24484375 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-660", + "uuid": "java-5-680", "seg": [ [ [ "文件", - "选择器" + "选择器", + "文件选择器" ] ] ], - "level": "1", + "level": { + "min": 0.244828125, + "max": 0.24484375 + }, "related_data": {} } } @@ -35935,7 +42258,7 @@ { "系统托盘": { "data": { - "uuid": "java-5-661", + "uuid": "java-5-681", "seg": [ [ [ @@ -35943,7 +42266,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24484375, + "max": 0.244859375 + }, "related_data": {} } } @@ -35951,7 +42277,7 @@ { "桌面集成控件": { "data": { - "uuid": "java-5-662", + "uuid": "java-5-682", "seg": [ [ [ @@ -35961,14 +42287,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.244859375, + "max": 0.244875 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-562", + "uuid": "java-4-568", "seg": [ [ [ @@ -35978,7 +42307,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2448125, + "max": 0.244875 + }, "related_data": {} } } @@ -35989,16 +42321,20 @@ { "选项事件": { "data": { - "uuid": "java-5-663", + "uuid": "java-5-683", "seg": [ [ [ "选项", - "事件" + "事件", + "选项事件" ] ] ], - "level": "2", + "level": { + "min": 0.244875, + "max": 0.24490625 + }, "related_data": {} } } @@ -36006,24 +42342,29 @@ { "表格模型事件": { "data": { - "uuid": "java-5-664", + "uuid": "java-5-684", "seg": [ [ [ "表格", "模型", - "事件" + "事件", + "表格模型", + "模型事件" ] ] ], - "level": "2", + "level": { + "min": 0.24490625, + "max": 0.2449375 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-563", + "uuid": "java-4-569", "seg": [ [ [ @@ -36032,7 +42373,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.244875, + "max": 0.2449375 + }, "related_data": {} } } @@ -36043,16 +42387,20 @@ { "绘制图形": { "data": { - "uuid": "java-5-665", + "uuid": "java-5-685", "seg": [ [ [ "绘制", - "图形" + "图形", + "绘制图形" ] ] ], - "level": "2", + "level": { + "min": 0.2449375, + "max": 0.244953125 + }, "related_data": {} } } @@ -36063,21 +42411,25 @@ { "画笔属性": { "data": { - "uuid": "java-6-158", + "uuid": "java-6-159", "seg": [ [ [ "画笔", - "属性" + "属性", + "画笔属性" ] ] ], - "level": "2", + "level": { + "min": 0.244953125, + "max": 0.24496875 + }, "related_data": { "qa": { "data_id": [ - "13_53774_9687", - "13_6365486_44583522" + "13_53774_9687@13", + "13_6365486_44583522@13" ] } } @@ -36086,20 +42438,25 @@ } ], "data": { - "uuid": "java-5-666", + "uuid": "java-5-686", "seg": [ [ [ "绘图", - "颜色" + "颜色", + "绘图颜色" ], [ "画笔", - "属性" + "属性", + "画笔属性" ] ] ], - "level": "2", + "level": { + "min": 0.244953125, + "max": 0.24496875 + }, "related_data": {} } } @@ -36110,7 +42467,7 @@ { "设置字体": { "data": { - "uuid": "java-6-159", + "uuid": "java-6-160", "seg": [ [ [ @@ -36119,11 +42476,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24496875, + "max": 0.2449765625 + }, "related_data": { "qa": { "data_id": [ - "13_1048767_1246481" + "13_1048767_1246481@13" ] } } @@ -36133,7 +42493,7 @@ { "显示文字": { "data": { - "uuid": "java-6-160", + "uuid": "java-6-161", "seg": [ [ [ @@ -36142,17 +42502,22 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2449765625, + "max": 0.244984375 + }, "related_data": { "qa": { "data_id": [ - "13_204150_132555", - "13_358078_375679", - "13_668612_489093", - "13_647089_450163", - "13_719319_713364", - "13_188077_84153", - "13_655408_466033" + "13_204150_132555@13", + "13_358078_375679@13", + "13_668612_489093@13", + "13_647089_450163@13", + "13_719319_713364@13", + "13_188077_84153@13", + "13_748328_800286@13", + "13_229750_198166@13", + "13_655408_466033@13" ] } } @@ -36161,16 +42526,20 @@ } ], "data": { - "uuid": "java-5-667", + "uuid": "java-5-687", "seg": [ [ [ "绘制", - "文本" + "文本", + "绘制文本" ] ] ], - "level": "2", + "level": { + "min": 0.24496875, + "max": 0.244984375 + }, "related_data": {} } } @@ -36178,60 +42547,24 @@ { "绘制图片": { "data": { - "uuid": "java-5-668", + "uuid": "java-5-688", "seg": [ [ [ "绘制", - "图片" - ] - ] - ], - "level": "2", - "related_data": { - "qa": { - "data_id": [ - "13_7423489_53383301" - ] - } - } - } - } - }, - { - "画图的实现原理": { - "data": { - "uuid": "java-5-669", - "seg": [ - [ - [ - "画图", - "原理" - ] - ] - ], - "level": "2", - "related_data": {} - } - } - }, - { - "使用Graphics类": { - "data": { - "uuid": "java-5-670", - "seg": [ - [ - [ - "graphics", - "类" + "图片", + "绘制图片" ] ] ], - "level": "2", + "level": { + "min": 0.244984375, + "max": 0.245 + }, "related_data": { "qa": { "data_id": [ - "13_688086_553111" + "13_7423489_53383301@13" ] } } @@ -36240,7 +42573,7 @@ } ], "data": { - "uuid": "java-4-564", + "uuid": "java-4-570", "seg": [ [ [ @@ -36249,14 +42582,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2449375, + "max": 0.245 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-285", + "uuid": "java-3-278", "seg": [ [ [ @@ -36264,7 +42600,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2446875, + "max": 0.245 + }, "related_data": {} } } @@ -36278,7 +42617,7 @@ { "用例图": { "data": { - "uuid": "java-5-671", + "uuid": "java-5-689", "seg": [ [ [ @@ -36286,7 +42625,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.245, + "max": 0.24502232142857142 + }, "related_data": {} } } @@ -36294,7 +42636,7 @@ { "类图": { "data": { - "uuid": "java-5-672", + "uuid": "java-5-690", "seg": [ [ [ @@ -36302,7 +42644,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24502232142857142, + "max": 0.24504464285714286 + }, "related_data": {} } } @@ -36310,16 +42655,20 @@ { "组件图": { "data": { - "uuid": "java-5-673", + "uuid": "java-5-691", "seg": [ [ [ "组件", - "图" + "图", + "组件图" ] ] ], - "level": "1", + "level": { + "min": 0.24504464285714286, + "max": 0.24506696428571428 + }, "related_data": {} } } @@ -36327,16 +42676,20 @@ { "部署图": { "data": { - "uuid": "java-5-674", + "uuid": "java-5-692", "seg": [ [ [ "部署", - "图" + "图", + "部署图" ] ] ], - "level": "1", + "level": { + "min": 0.24506696428571428, + "max": 0.2450892857142857 + }, "related_data": {} } } @@ -36344,16 +42697,20 @@ { "顺序图": { "data": { - "uuid": "java-5-675", + "uuid": "java-5-693", "seg": [ [ [ "顺序", - "图" + "图", + "顺序图" ] ] ], - "level": "1", + "level": { + "min": 0.2450892857142857, + "max": 0.24511160714285712 + }, "related_data": {} } } @@ -36361,7 +42718,7 @@ { "活动图": { "data": { - "uuid": "java-5-676", + "uuid": "java-5-694", "seg": [ [ [ @@ -36370,17 +42727,21 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24511160714285712, + "max": 0.24513392857142857 + }, "related_data": { "qa": { "data_id": [ - "13_7440260_53415328", - "13_700543_589486", - "13_7443836_53421130", - "13_251903_277056", - "13_216987_164834", - "13_364710_386832", - "13_763445_821894" + "13_7440260_53415328@13", + "13_700543_589486@13", + "13_7443836_53421130@13", + "13_251903_277056@13", + "13_719194_713178@13", + "13_216987_164834@13", + "13_364710_386832@13", + "13_763445_821894@13" ] } } @@ -36390,23 +42751,27 @@ { "状态机图": { "data": { - "uuid": "java-5-677", + "uuid": "java-5-695", "seg": [ [ [ "状态机", - "图" + "图", + "状态机图" ] ] ], - "level": "1", + "level": { + "min": 0.24513392857142857, + "max": 0.24515625 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-565", + "uuid": "java-4-571", "seg": [ [ [ @@ -36417,7 +42782,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.245, + "max": 0.24515625 + }, "related_data": {} } } @@ -36425,24 +42793,28 @@ { "Java的面向对象特征": { "data": { - "uuid": "java-4-566", + "uuid": "java-4-572", "seg": [ [ [ "java", "面向对象", - "特征" + "特征", + "面向对象特征" ] ] ], - "level": "1", + "level": { + "min": 0.24515625, + "max": 0.2453125 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-286", + "uuid": "java-3-279", "seg": [ [ [ @@ -36451,7 +42823,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.245, + "max": 0.2453125 + }, "related_data": {} } } @@ -36465,7 +42840,7 @@ { "运行Java程序的参数": { "data": { - "uuid": "java-5-678", + "uuid": "java-5-696", "seg": [ [ [ @@ -36476,7 +42851,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2453125, + "max": 0.2453515625 + }, "related_data": {} } } @@ -36484,7 +42862,7 @@ { "使用Scanner获取键盘输入": { "data": { - "uuid": "java-5-679", + "uuid": "java-5-697", "seg": [ [ [ @@ -36494,11 +42872,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2453515625, + "max": 0.245390625 + }, "related_data": { "qa": { "data_id": [ - "13_650153_456638" + "13_650153_456638@13", + "13_7407267_53357140@13" ] } } @@ -36507,7 +42889,7 @@ } ], "data": { - "uuid": "java-4-567", + "uuid": "java-4-573", "seg": [ [ [], @@ -36515,17 +42897,29 @@ "用户", "互动" ] - ] - ], - "level": "1", - "related_data": {} + ] + ], + "level": { + "min": 0.2453125, + "max": 0.245390625 + }, + "related_data": { + "qa": { + "data_id": [ + "13_355060_368014@13", + "13_1102125_1317086@13", + "13_978_1688@13", + "13_186561_79500@13" + ] + } + } } } }, { "系统相关": { "data": { - "uuid": "java-4-568", + "uuid": "java-4-574", "seg": [ [ [ @@ -36534,15 +42928,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.245390625, + "max": 0.24546875 + }, "related_data": { "qa": { "data_id": [ - "13_384199_420314", - "13_755627_811046", - "13_7415975_53369611", - "13_1092126_1299873", - "13_7427514_53392485" + "13_384199_420314@13", + "13_755627_811046@13", + "13_7415975_53369611@13", + "13_1092126_1299873@13", + "13_7427514_53392485@13" ] } } @@ -36555,7 +42952,7 @@ { "Java国际化的思路": { "data": { - "uuid": "java-5-680", + "uuid": "java-5-698", "seg": [ [ [ @@ -36565,17 +42962,20 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24546875, + "max": 0.24547743055555557 + }, "related_data": { "qa": { "data_id": [ - "13_252071_253024", - "13_263436_277623", - "13_688433_554211", - "13_676376_515284", - "13_631987_441078", - "13_652100_460049", - "13_181739_67263" + "13_252071_253024@13", + "13_263436_277623@13", + "13_688433_554211@13", + "13_676376_515284@13", + "13_631987_441078@13", + "13_652100_460049@13", + "13_181739_67263@13" ] } } @@ -36585,7 +42985,7 @@ { "Java支持的国家和语言": { "data": { - "uuid": "java-5-681", + "uuid": "java-5-699", "seg": [ [ [ @@ -36598,11 +42998,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24547743055555557, + "max": 0.24548611111111113 + }, "related_data": { "qa": { "data_id": [ - "13_230143_199085" + "13_230143_199085@13" ] } } @@ -36612,16 +43015,20 @@ { "完成程序国际化": { "data": { - "uuid": "java-5-682", + "uuid": "java-5-700", "seg": [ [ [ "程序", - "国际化" + "国际化", + "程序国际化" ] ] ], - "level": "1", + "level": { + "min": 0.24548611111111113, + "max": 0.24549479166666668 + }, "related_data": {} } } @@ -36629,7 +43036,7 @@ { "使用MessageFormat处理包含占位符的字符串": { "data": { - "uuid": "java-5-683", + "uuid": "java-5-701", "seg": [ [ [ @@ -36641,7 +43048,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24549479166666668, + "max": 0.24550347222222224 + }, "related_data": {} } } @@ -36649,17 +43059,21 @@ { "使用类文件代替资源文件": { "data": { - "uuid": "java-5-684", + "uuid": "java-5-702", "seg": [ [ [ "类", "文件", - "资源" + "资源", + "资源文件" ] ] ], - "level": "1", + "level": { + "min": 0.24550347222222224, + "max": 0.24551215277777777 + }, "related_data": {} } } @@ -36667,7 +43081,7 @@ { "Java 9新增的日志API": { "data": { - "uuid": "java-5-685", + "uuid": "java-5-703", "seg": [ [ [ @@ -36678,7 +43092,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24551215277777777, + "max": 0.24552083333333333 + }, "related_data": {} } } @@ -36686,17 +43103,21 @@ { "使用NumberFormat格式化数字": { "data": { - "uuid": "java-5-686", + "uuid": "java-5-704", "seg": [ [ [ "numberformat", "格式化", - "数字" + "数字", + "格式化数字" ] ] ], - "level": "1", + "level": { + "min": 0.24552083333333333, + "max": 0.24552951388888888 + }, "related_data": {} } } @@ -36704,7 +43125,7 @@ { "使用DateFormat格式化日期、时间": { "data": { - "uuid": "java-5-687", + "uuid": "java-5-705", "seg": [ [ [ @@ -36717,7 +43138,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24552951388888888, + "max": 0.24553819444444444 + }, "related_data": {} } } @@ -36725,7 +43149,7 @@ { "使用SimpleDateFormat格式化日期": { "data": { - "uuid": "java-5-688", + "uuid": "java-5-706", "seg": [ [ [ @@ -36735,14 +43159,23 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.24553819444444444, + "max": 0.245546875 + }, + "related_data": { + "qa": { + "data_id": [ + "13_1092562_1300557@13" + ] + } + } } } } ], "data": { - "uuid": "java-4-569", + "uuid": "java-4-575", "seg": [ [ [ @@ -36755,7 +43188,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24546875, + "max": 0.245546875 + }, "related_data": {} } } @@ -36766,7 +43202,7 @@ { "使用DateTimeFormatter完成格式化": { "data": { - "uuid": "java-5-689", + "uuid": "java-5-707", "seg": [ [ [ @@ -36775,7 +43211,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.245546875, + "max": 0.24558593750000002 + }, "related_data": {} } } @@ -36783,7 +43222,7 @@ { "使用DateTimeFormatter解析字符串": { "data": { - "uuid": "java-5-690", + "uuid": "java-5-708", "seg": [ [ [ @@ -36793,14 +43232,26 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.24558593750000002, + "max": 0.245625 + }, + "related_data": { + "qa": { + "data_id": [ + "13_199008_116093@13", + "13_802362_896857@13", + "13_418788_437441@13", + "13_354443_366832@13" + ] + } + } } } } ], "data": { - "uuid": "java-4-570", + "uuid": "java-4-576", "seg": [ [ [ @@ -36811,15 +43262,20 @@ [ "时间", "格式", - "器" + "器", + "时间格式", + "格式器" ] ] ], - "level": "1", + "level": { + "min": 0.245546875, + "max": 0.245625 + }, "related_data": { "qa": { "data_id": [ - "13_7395184_53337805" + "13_7395184_53337805@13" ] } } @@ -36828,17 +43284,21 @@ } ], "data": { - "uuid": "java-3-287", + "uuid": "java-3-280", "seg": [ [ [ "java", "基础", - "类库" + "类库", + "基础类库" ] ] ], - "level": "1", + "level": { + "min": 0.2453125, + "max": 0.245625 + }, "related_data": {} } } @@ -36849,7 +43309,7 @@ { "Java集合概述": { "data": { - "uuid": "java-4-571", + "uuid": "java-4-577", "seg": [ [ [ @@ -36859,7 +43319,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.245625, + "max": 0.24567708333333335 + }, "related_data": {} } } @@ -36870,7 +43333,7 @@ { "使用Lambda表达式遍历集合": { "data": { - "uuid": "java-5-691", + "uuid": "java-5-709", "seg": [ [ [ @@ -36881,7 +43344,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24567708333333335, + "max": 0.2456857638888889 + }, "related_data": {} } } @@ -36889,7 +43355,7 @@ { "使用Iterator遍历集合元素": { "data": { - "uuid": "java-5-692", + "uuid": "java-5-710", "seg": [ [ [ @@ -36900,17 +43366,20 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2456857638888889, + "max": 0.24569444444444447 + }, "related_data": { "qa": { "data_id": [ - "13_178816_65958", - "13_670256_492700", - "13_217919_167014", - "13_819387_916547", - "13_644031_444327", - "13_184697_74918", - "13_228368_194211" + "13_178816_65958@13", + "13_670256_492700@13", + "13_217919_167014@13", + "13_819387_916547@13", + "13_644031_444327@13", + "13_184697_74918@13", + "13_228368_194211@13" ] } } @@ -36920,7 +43389,7 @@ { "使用Lambda表达式遍历Iterator": { "data": { - "uuid": "java-5-693", + "uuid": "java-5-711", "seg": [ [ [ @@ -36931,7 +43400,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24569444444444447, + "max": 0.24570312500000002 + }, "related_data": {} } } @@ -36939,7 +43411,7 @@ { "使用foreach循环遍历集合元素": { "data": { - "uuid": "java-5-694", + "uuid": "java-5-712", "seg": [ [ [ @@ -36952,7 +43424,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24570312500000002, + "max": 0.24571180555555555 + }, "related_data": {} } } @@ -36960,7 +43435,7 @@ { "使用Predicate操作集合": { "data": { - "uuid": "java-5-695", + "uuid": "java-5-713", "seg": [ [ [ @@ -36970,7 +43445,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24571180555555555, + "max": 0.2457204861111111 + }, "related_data": {} } } @@ -36978,7 +43456,7 @@ { "使用Stream操作集合": { "data": { - "uuid": "java-5-696", + "uuid": "java-5-714", "seg": [ [ [ @@ -36988,14 +43466,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2457204861111111, + "max": 0.24572916666666667 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-572", + "uuid": "java-4-578", "seg": [ [ [ @@ -37009,7 +43490,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24567708333333335, + "max": 0.24572916666666667 + }, "related_data": {} } } @@ -37020,7 +43504,7 @@ { "PriorityQueue实现类": { "data": { - "uuid": "java-5-697", + "uuid": "java-5-715", "seg": [ [ [ @@ -37029,7 +43513,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24572916666666667, + "max": 0.2457421875 + }, "related_data": {} } } @@ -37037,7 +43524,7 @@ { "Deque接口与ArrayDeque实现类": { "data": { - "uuid": "java-5-698", + "uuid": "java-5-716", "seg": [ [ [ @@ -37050,7 +43537,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2457421875, + "max": 0.24575520833333334 + }, "related_data": {} } } @@ -37058,7 +43548,7 @@ { "LinkedList实现类": { "data": { - "uuid": "java-5-699", + "uuid": "java-5-717", "seg": [ [ [ @@ -37067,7 +43557,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24575520833333334, + "max": 0.24576822916666669 + }, "related_data": {} } } @@ -37075,7 +43568,7 @@ { "各种线性表的性能分析": { "data": { - "uuid": "java-5-700", + "uuid": "java-5-718", "seg": [ [ [ @@ -37085,14 +43578,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24576822916666669, + "max": 0.24578125 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-573", + "uuid": "java-4-579", "seg": [ [ [ @@ -37101,7 +43597,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24572916666666667, + "max": 0.24578125 + }, "related_data": {} } } @@ -37112,7 +43611,7 @@ { "Java 8为Map新增的方法": { "data": { - "uuid": "java-5-701", + "uuid": "java-5-719", "seg": [ [ [ @@ -37123,7 +43622,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24578125, + "max": 0.24578703703703705 + }, "related_data": {} } } @@ -37131,7 +43633,7 @@ { "改进的HashMap和Hashtable实现类": { "data": { - "uuid": "java-5-702", + "uuid": "java-5-720", "seg": [ [ [ @@ -37144,11 +43646,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24578703703703705, + "max": 0.24579282407407407 + }, "related_data": { "qa": { "data_id": [ - "13_323757_314654" + "13_323757_314654@13" ] } } @@ -37158,7 +43663,7 @@ { "LinkedHashMap实现类": { "data": { - "uuid": "java-5-703", + "uuid": "java-5-721", "seg": [ [ [ @@ -37167,7 +43672,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24579282407407407, + "max": 0.24579861111111112 + }, "related_data": {} } } @@ -37175,18 +43683,22 @@ { "使用Properties读写属性文件": { "data": { - "uuid": "java-5-704", + "uuid": "java-5-722", "seg": [ [ [ "properties", "读写", "属性", - "文件" + "文件", + "属性文件" ] ] ], - "level": "1", + "level": { + "min": 0.24579861111111112, + "max": 0.24580439814814817 + }, "related_data": {} } } @@ -37194,7 +43706,7 @@ { "SortedMap接口和TreeMap实现类": { "data": { - "uuid": "java-5-705", + "uuid": "java-5-723", "seg": [ [ [ @@ -37207,7 +43719,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24580439814814817, + "max": 0.2458101851851852 + }, "related_data": {} } } @@ -37215,7 +43730,7 @@ { "WeakHashMap实现类": { "data": { - "uuid": "java-5-706", + "uuid": "java-5-724", "seg": [ [ [ @@ -37224,7 +43739,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2458101851851852, + "max": 0.24581597222222223 + }, "related_data": {} } } @@ -37232,7 +43750,7 @@ { "IdentityHashMap实现类": { "data": { - "uuid": "java-5-707", + "uuid": "java-5-725", "seg": [ [ [ @@ -37241,7 +43759,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24581597222222223, + "max": 0.24582175925925928 + }, "related_data": {} } } @@ -37249,7 +43770,7 @@ { "EnumMap实现类": { "data": { - "uuid": "java-5-708", + "uuid": "java-5-726", "seg": [ [ [ @@ -37258,7 +43779,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24582175925925928, + "max": 0.2458275462962963 + }, "related_data": {} } } @@ -37266,7 +43790,7 @@ { "各Map实现类的性能分析": { "data": { - "uuid": "java-5-709", + "uuid": "java-5-727", "seg": [ [ [ @@ -37277,14 +43801,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2458275462962963, + "max": 0.24583333333333335 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-574", + "uuid": "java-4-580", "seg": [ [ [ @@ -37294,7 +43821,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24578125, + "max": 0.24583333333333335 + }, "related_data": {} } } @@ -37302,7 +43832,7 @@ { "HashSet和HashMap的性能选项": { "data": { - "uuid": "java-4-575", + "uuid": "java-4-581", "seg": [ [ [ @@ -37311,11 +43841,15 @@ [ "hashmap", "性能", - "选项" + "选项", + "性能选项" ] ] ], - "level": "1", + "level": { + "min": 0.24583333333333335, + "max": 0.24588541666666666 + }, "related_data": {} } } @@ -37326,7 +43860,7 @@ { "排序操作": { "data": { - "uuid": "java-5-710", + "uuid": "java-5-728", "seg": [ [ [ @@ -37335,7 +43869,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24588541666666666, + "max": 0.2458984375 + }, "related_data": {} } } @@ -37343,7 +43880,7 @@ { "同步控制": { "data": { - "uuid": "java-5-711", + "uuid": "java-5-729", "seg": [ [ [ @@ -37351,7 +43888,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2458984375, + "max": 0.24591145833333333 + }, "related_data": {} } } @@ -37359,7 +43899,7 @@ { "设置不可变集合": { "data": { - "uuid": "java-5-712", + "uuid": "java-5-730", "seg": [ [ [ @@ -37369,7 +43909,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24591145833333333, + "max": 0.24592447916666665 + }, "related_data": {} } } @@ -37377,7 +43920,7 @@ { "Java 9新增的不可变集合": { "data": { - "uuid": "java-5-713", + "uuid": "java-5-731", "seg": [ [ [ @@ -37388,21 +43931,25 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24592447916666665, + "max": 0.2459375 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-576", + "uuid": "java-4-582", "seg": [ [ [ "操作", "集合", "工具", - "类" + "类", + "工具类" ] ], [ @@ -37411,14 +43958,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24588541666666666, + "max": 0.2459375 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-288", + "uuid": "java-3-281", "seg": [ [ [ @@ -37427,7 +43977,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.245625, + "max": 0.2459375 + }, "related_data": {} } } @@ -37438,7 +43991,7 @@ { "AWT容器": { "data": { - "uuid": "java-4-577", + "uuid": "java-4-583", "seg": [ [ [ @@ -37447,17 +44000,20 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2459375, + "max": 0.24598958333333334 + }, "related_data": { "qa": { "data_id": [ - "13_7451745_53433198", - "13_240860_225926", - "13_7445593_53424259", - "13_765419_829047", - "13_7442646_53419564", - "13_7436047_53407130", - "13_683310_539306" + "13_7451745_53433198@13", + "13_240860_225926@13", + "13_7445593_53424259@13", + "13_765419_829047@13", + "13_7442646_53419564@13", + "13_7436047_53407130@13", + "13_683310_539306@13" ] } } @@ -37470,15 +44026,19 @@ { "基本组件": { "data": { - "uuid": "java-5-714", + "uuid": "java-5-732", "seg": [ [ [ - "组件" + "组件", + "基本组件" ] ] ], - "level": "1", + "level": { + "min": 0.24598958333333334, + "max": 0.24601562500000002 + }, "related_data": {} } } @@ -37486,7 +44046,7 @@ { "对话框(Dialog)": { "data": { - "uuid": "java-5-715", + "uuid": "java-5-733", "seg": [ [ [ @@ -37495,14 +44055,25 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.24601562500000002, + "max": 0.24604166666666666 + }, + "related_data": { + "qa": { + "data_id": [ + "13_252350_252187@13", + "13_3417_4364@13", + "13_8232_4517@13" + ] + } + } } } } ], "data": { - "uuid": "java-4-578", + "uuid": "java-4-584", "seg": [ [ [ @@ -37511,7 +44082,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24598958333333334, + "max": 0.24604166666666666 + }, "related_data": {} } } @@ -37522,20 +44096,24 @@ { "右键菜单": { "data": { - "uuid": "java-5-716", + "uuid": "java-5-734", "seg": [ [ [ "右键", - "菜单" + "菜单", + "右键菜单" ] ] ], - "level": "2", + "level": { + "min": 0.24604166666666666, + "max": 0.24609375 + }, "related_data": { "qa": { "data_id": [ - "13_693289_570523" + "13_693289_570523@13" ] } } @@ -37544,7 +44122,7 @@ } ], "data": { - "uuid": "java-4-579", + "uuid": "java-4-585", "seg": [ [ [ @@ -37553,7 +44131,85 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24604166666666666, + "max": 0.24609375 + }, + "related_data": {} + } + } + }, + { + "在AWT中绘图": { + "children": [ + { + "画图的实现原理": { + "data": { + "uuid": "java-5-735", + "seg": [ + [ + [ + "画图", + "原理" + ] + ] + ], + "level": { + "min": 0.24609375, + "max": 0.24611979166666667 + }, + "related_data": { + "qa": { + "data_id": [ + "13_239276_222361@13" + ] + } + } + } + } + }, + { + "使用Graphics类": { + "data": { + "uuid": "java-5-736", + "seg": [ + [ + [ + "graphics", + "类" + ] + ] + ], + "level": { + "min": 0.24611979166666667, + "max": 0.24614583333333334 + }, + "related_data": { + "qa": { + "data_id": [ + "13_688086_553111@13" + ] + } + } + } + } + } + ], + "data": { + "uuid": "java-4-586", + "seg": [ + [ + [ + "awt", + "绘图", + "中绘图" + ] + ] + ], + "level": { + "min": 0.24609375, + "max": 0.24614583333333334 + }, "related_data": {} } } @@ -37564,7 +44220,7 @@ { "Image抽象类和BufferedImage实现类": { "data": { - "uuid": "java-5-717", + "uuid": "java-5-737", "seg": [ [ [ @@ -37577,7 +44233,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24614583333333334, + "max": 0.24617187499999998 + }, "related_data": {} } } @@ -37585,7 +44244,7 @@ { "Java 9增强的ImageIO": { "data": { - "uuid": "java-5-718", + "uuid": "java-5-738", "seg": [ [ [ @@ -37595,11 +44254,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24617187499999998, + "max": 0.24619791666666666 + }, "related_data": { "qa": { "data_id": [ - "13_238959_221545" + "13_238959_221545@13" ] } } @@ -37608,23 +44270,19 @@ } ], "data": { - "uuid": "java-4-580", + "uuid": "java-4-587", "seg": [ [ [ - "位", - "图" + "位图" ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_7444790_53423522" - ] - } - } + "level": { + "min": 0.24614583333333334, + "max": 0.24619791666666666 + }, + "related_data": {} } } }, @@ -37634,7 +44292,7 @@ { "拖放目标": { "data": { - "uuid": "java-5-719", + "uuid": "java-5-739", "seg": [ [ [ @@ -37643,7 +44301,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24619791666666666, + "max": 0.24622395833333333 + }, "related_data": {} } } @@ -37651,7 +44312,7 @@ { "拖放源": { "data": { - "uuid": "java-5-720", + "uuid": "java-5-740", "seg": [ [ [ @@ -37660,11 +44321,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24622395833333333, + "max": 0.24625 + }, "related_data": { "qa": { "data_id": [ - "13_375604_405154" + "13_375604_405154@13" ] } } @@ -37673,7 +44337,7 @@ } ], "data": { - "uuid": "java-4-581", + "uuid": "java-4-588", "seg": [ [ [ @@ -37682,14 +44346,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24619791666666666, + "max": 0.24625 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-289", + "uuid": "java-3-282", "seg": [ [ [ @@ -37698,7 +44365,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2459375, + "max": 0.24625 + }, "related_data": {} } } @@ -37712,7 +44382,7 @@ { "AWT组件的Swing实现": { "data": { - "uuid": "java-5-721", + "uuid": "java-5-741", "seg": [ [ [ @@ -37722,20 +44392,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24625, + "max": 0.24625473484848484 + }, "related_data": { "qa": { "data_id": [ - "13_220079_172170", - "13_196281_108667", - "13_245387_235803", - "13_228823_195482", - "13_745321_792937", - "13_744215_789868", - "13_162525_33807", - "13_183087_69599", - "13_371059_397836", - "13_7462276_53447721" + "13_220079_172170@13", + "13_196281_108667@13", + "13_245387_235803@13", + "13_228823_195482@13", + "13_745321_792937@13", + "13_744215_789868@13", + "13_162525_33807@13", + "13_183087_69599@13", + "13_371059_397836@13", + "13_7462276_53447721@13" ] } } @@ -37745,7 +44418,7 @@ { "为组件设置边框": { "data": { - "uuid": "java-5-722", + "uuid": "java-5-742", "seg": [ [ [ @@ -37755,7 +44428,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24625473484848484, + "max": 0.24625946969696969 + }, "related_data": {} } } @@ -37763,7 +44439,7 @@ { "Swing组件的双缓冲和键盘驱动": { "data": { - "uuid": "java-5-723", + "uuid": "java-5-743", "seg": [ [ [ @@ -37778,7 +44454,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24625946969696969, + "max": 0.24626420454545456 + }, "related_data": {} } } @@ -37786,7 +44465,7 @@ { "使用JToolBar创建工具条": { "data": { - "uuid": "java-5-724", + "uuid": "java-5-744", "seg": [ [ [ @@ -37796,7 +44475,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24626420454545456, + "max": 0.2462689393939394 + }, "related_data": {} } } @@ -37804,7 +44486,7 @@ { "使用JFileChooser和JColorChooser": { "data": { - "uuid": "java-5-725", + "uuid": "java-5-745", "seg": [ [ [ @@ -37815,11 +44497,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2462689393939394, + "max": 0.24627367424242425 + }, "related_data": { "qa": { "data_id": [ - "13_193354_98530" + "13_193354_98530@13" ] } } @@ -37829,7 +44514,7 @@ { "使用JOptionPane": { "data": { - "uuid": "java-5-726", + "uuid": "java-5-746", "seg": [ [ [ @@ -37837,24 +44522,31 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24627367424242425, + "max": 0.2462784090909091 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-582", + "uuid": "java-4-589", "seg": [ [ [ "swing", "组件", - "用法" + "用法", + "基本组件" ] ] ], - "level": "1", + "level": { + "min": 0.24625, + "max": 0.2462784090909091 + }, "related_data": {} } } @@ -37865,7 +44557,7 @@ { "使用JSplitPane": { "data": { - "uuid": "java-5-727", + "uuid": "java-5-747", "seg": [ [ [ @@ -37873,7 +44565,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2462784090909091, + "max": 0.24628787878787878 + }, "related_data": {} } } @@ -37881,7 +44576,7 @@ { "使用JTabbedPane": { "data": { - "uuid": "java-5-728", + "uuid": "java-5-748", "seg": [ [ [ @@ -37889,7 +44584,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24628787878787878, + "max": 0.2462973484848485 + }, "related_data": {} } } @@ -37897,7 +44595,7 @@ { "使用JLayeredPane、JDesktopPane和JInternalFrame": { "data": { - "uuid": "java-5-729", + "uuid": "java-5-749", "seg": [ [ [ @@ -37911,14 +44609,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2462973484848485, + "max": 0.24630681818181818 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-583", + "uuid": "java-4-590", "seg": [ [ [ @@ -37927,7 +44628,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2462784090909091, + "max": 0.24630681818181818 + }, "related_data": {} } } @@ -37935,7 +44639,7 @@ { "Swing简化的拖放功能": { "data": { - "uuid": "java-4-584", + "uuid": "java-4-591", "seg": [ [ [ @@ -37946,7 +44650,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24630681818181818, + "max": 0.24633522727272728 + }, "related_data": {} } } @@ -37957,17 +44664,21 @@ { "使用JLayer装饰组件": { "data": { - "uuid": "java-5-730", + "uuid": "java-5-750", "seg": [ [ [ "jlayer", "装饰", - "组件" + "组件", + "装饰组件" ] ] ], - "level": "1", + "level": { + "min": 0.24633522727272728, + "max": 0.2463494318181818 + }, "related_data": {} } } @@ -37975,7 +44686,7 @@ { "创建透明、不规则形状窗口": { "data": { - "uuid": "java-5-731", + "uuid": "java-5-751", "seg": [ [ [ @@ -37985,18 +44696,22 @@ [ "不规则", "形状", - "窗口" + "窗口", + "形状窗口" ] ] ], - "level": "2", + "level": { + "min": 0.2463494318181818, + "max": 0.24636363636363637 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-585", + "uuid": "java-4-592", "seg": [ [ [ @@ -38007,11 +44722,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24633522727272728, + "max": 0.24636363636363637 + }, "related_data": { "qa": { "data_id": [ - "13_1051451_1248797" + "13_1051451_1248797@13" ] } } @@ -38024,7 +44742,7 @@ { "创建进度条": { "data": { - "uuid": "java-5-732", + "uuid": "java-5-752", "seg": [ [ [ @@ -38033,11 +44751,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24636363636363637, + "max": 0.24637784090909093 + }, "related_data": { "qa": { "data_id": [ - "13_7398302_53344662" + "13_7398302_53344662@13" ] } } @@ -38047,24 +44768,28 @@ { "创建进度对话框": { "data": { - "uuid": "java-5-733", + "uuid": "java-5-753", "seg": [ [ [ "创建", "进度", - "对话框" + "对话框", + "进度对话框" ] ] ], - "level": "2", + "level": { + "min": 0.24637784090909093, + "max": 0.24639204545454546 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-586", + "uuid": "java-4-593", "seg": [ [ [ @@ -38080,7 +44805,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24636363636363637, + "max": 0.24639204545454546 + }, "related_data": {} } } @@ -38088,7 +44816,7 @@ { "使用JSlider和BoundedRangeModel创建滑动条": { "data": { - "uuid": "java-4-587", + "uuid": "java-4-594", "seg": [ [ [ @@ -38102,7 +44830,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24639204545454546, + "max": 0.24642045454545453 + }, "related_data": {} } } @@ -38110,7 +44841,7 @@ { "使用JSpinner和SpinnerModel创建微调控制器": { "data": { - "uuid": "java-4-588", + "uuid": "java-4-595", "seg": [ [ [ @@ -38120,11 +44851,15 @@ "spinnermodel", "创建", "微调", - "控制器" + "控制器", + "微调控制器" ] ] ], - "level": "1", + "level": { + "min": 0.24642045454545453, + "max": 0.24644886363636362 + }, "related_data": {} } } @@ -38135,21 +44870,25 @@ { "不强制存储列表项的ListModel和ComboBoxModel": { "data": { - "uuid": "java-5-734", + "uuid": "java-5-754", "seg": [ [ [ "强制", "存储", "列表", - "listmodel" + "listmodel", + "不强制" ], [ "comboboxmodel" ] ] ], - "level": "2", + "level": { + "min": 0.24644886363636362, + "max": 0.2464583333333333 + }, "related_data": {} } } @@ -38157,7 +44896,7 @@ { "强制存储列表项的DefaultListModel和DefaultComboBoxModel": { "data": { - "uuid": "java-5-735", + "uuid": "java-5-755", "seg": [ [ [ @@ -38171,7 +44910,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2464583333333333, + "max": 0.24646780303030302 + }, "related_data": {} } } @@ -38179,7 +44921,7 @@ { "使用ListCellRenderer改变列表项外观": { "data": { - "uuid": "java-5-736", + "uuid": "java-5-756", "seg": [ [ [ @@ -38187,18 +44929,23 @@ "改变", "列表", "项", - "外观" + "外观", + "列表项", + "项外观" ] ] ], - "level": "2", + "level": { + "min": 0.24646780303030302, + "max": 0.2464772727272727 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-589", + "uuid": "java-4-596", "seg": [ [ [ @@ -38211,7 +44958,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24644886363636362, + "max": 0.2464772727272727 + }, "related_data": {} } } @@ -38222,7 +44972,7 @@ { "创建树": { "data": { - "uuid": "java-5-737", + "uuid": "java-5-757", "seg": [ [ [ @@ -38231,17 +44981,20 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2464772727272727, + "max": 0.24648200757575756 + }, "related_data": { "qa": { "data_id": [ - "13_263292_277330", - "13_5357_4467", - "13_364777_387030", - "13_7428643_53394818", - "13_766190_825375", - "13_221339_177188", - "13_1063925_1262061" + "13_263292_277330@13", + "13_5357_4467@13", + "13_364777_387030@13", + "13_7428643_53394818@13", + "13_766190_825375@13", + "13_221339_177188@13", + "13_1063925_1262061@13" ] } } @@ -38251,7 +45004,7 @@ { "拖动、编辑树节点": { "data": { - "uuid": "java-5-738", + "uuid": "java-5-758", "seg": [ [ [ @@ -38264,7 +45017,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24648200757575756, + "max": 0.2464867424242424 + }, "related_data": {} } } @@ -38272,17 +45028,21 @@ { "监听节点事件": { "data": { - "uuid": "java-5-739", + "uuid": "java-5-759", "seg": [ [ [ "监听", "节点", - "事件" + "事件", + "节点事件" ] ] ], - "level": "2", + "level": { + "min": 0.2464867424242424, + "max": 0.24649147727272724 + }, "related_data": {} } } @@ -38290,18 +45050,22 @@ { "使用DefaultTreeCellRenderer改变节点外观": { "data": { - "uuid": "java-5-740", + "uuid": "java-5-760", "seg": [ [ [ "defaulttreecellrenderer", "改变", "节点", - "外观" + "外观", + "节点外观" ] ] ], - "level": "2", + "level": { + "min": 0.24649147727272724, + "max": 0.24649621212121212 + }, "related_data": {} } } @@ -38309,7 +45073,7 @@ { "扩展DefaultTreeCellRenderer改变节点外观": { "data": { - "uuid": "java-5-741", + "uuid": "java-5-761", "seg": [ [ [ @@ -38317,11 +45081,15 @@ "defaulttreecellrenderer", "改变", "节点", - "外观" + "外观", + "节点外观" ] ] ], - "level": "2", + "level": { + "min": 0.24649621212121212, + "max": 0.24650094696969696 + }, "related_data": {} } } @@ -38329,25 +45097,29 @@ { "实现TreeCellRenderer改变节点外观": { "data": { - "uuid": "java-5-742", + "uuid": "java-5-762", "seg": [ [ [ "treecellrenderer", "改变", "节点", - "外观" + "外观", + "节点外观" ] ] ], - "level": "2", + "level": { + "min": 0.24650094696969696, + "max": 0.2465056818181818 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-590", + "uuid": "java-4-597", "seg": [ [ [ @@ -38360,7 +45132,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2464772727272727, + "max": 0.2465056818181818 + }, "related_data": {} } } @@ -38371,7 +45146,7 @@ { "TableModel和监听器": { "data": { - "uuid": "java-5-743", + "uuid": "java-5-763", "seg": [ [ [ @@ -38382,7 +45157,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2465056818181818, + "max": 0.2465113636363636 + }, "related_data": {} } } @@ -38390,7 +45168,7 @@ { "TableColumnModel和监听器": { "data": { - "uuid": "java-5-744", + "uuid": "java-5-764", "seg": [ [ [ @@ -38401,7 +45179,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2465113636363636, + "max": 0.24651704545454545 + }, "related_data": {} } } @@ -38409,7 +45190,7 @@ { "实现排序": { "data": { - "uuid": "java-5-745", + "uuid": "java-5-765", "seg": [ [ [ @@ -38417,11 +45198,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24651704545454545, + "max": 0.24652272727272725 + }, "related_data": { "qa": { "data_id": [ - "13_374923_404117" + "13_374923_404117@13" ] } } @@ -38431,17 +45215,22 @@ { "绘制单元格内容": { "data": { - "uuid": "java-5-746", + "uuid": "java-5-766", "seg": [ [ [ "绘制", "单元格", - "内容" + "内容", + "绘制单元格", + "单元格内容" ] ] ], - "level": "2", + "level": { + "min": 0.24652272727272725, + "max": 0.2465284090909091 + }, "related_data": {} } } @@ -38449,24 +45238,29 @@ { "编辑单元格内容": { "data": { - "uuid": "java-5-747", + "uuid": "java-5-767", "seg": [ [ [ "编辑", "单元格", - "内容" + "内容", + "编辑单元格", + "单元格内容" ] ] ], - "level": "1", + "level": { + "min": 0.2465284090909091, + "max": 0.2465340909090909 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-591", + "uuid": "java-4-598", "seg": [ [ [ @@ -38478,7 +45272,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2465056818181818, + "max": 0.2465340909090909 + }, "related_data": {} } } @@ -38489,7 +45286,7 @@ { "监听Document的变化": { "data": { - "uuid": "java-5-748", + "uuid": "java-5-768", "seg": [ [ [ @@ -38499,7 +45296,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2465340909090909, + "max": 0.2465397727272727 + }, "related_data": {} } } @@ -38507,7 +45307,7 @@ { "使用JPasswordField": { "data": { - "uuid": "java-5-749", + "uuid": "java-5-769", "seg": [ [ [ @@ -38515,7 +45315,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2465397727272727, + "max": 0.24654545454545454 + }, "related_data": {} } } @@ -38523,7 +45326,7 @@ { "使用JFormattedTextField": { "data": { - "uuid": "java-5-750", + "uuid": "java-5-770", "seg": [ [ [ @@ -38531,21 +45334,18 @@ ] ] ], - "level": "2", - "related_data": { - "qa": { - "data_id": [ - "13_7459411_53444319" - ] - } - } + "level": { + "min": 0.24654545454545454, + "max": 0.24655113636363635 + }, + "related_data": {} } } }, { "使用JEditorPane": { "data": { - "uuid": "java-5-751", + "uuid": "java-5-771", "seg": [ [ [ @@ -38553,7 +45353,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24655113636363635, + "max": 0.24655681818181818 + }, "related_data": {} } } @@ -38561,7 +45364,7 @@ { "使用JTextPane": { "data": { - "uuid": "java-5-752", + "uuid": "java-5-772", "seg": [ [ [ @@ -38569,14 +45372,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24655681818181818, + "max": 0.2465625 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-592", + "uuid": "java-4-599", "seg": [ [ [ @@ -38586,18 +45392,22 @@ "jtextpane", "创建", "格式", - "文本" + "文本", + "格式文本" ] ] ], - "level": "2", + "level": { + "min": 0.2465340909090909, + "max": 0.2465625 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-290", + "uuid": "java-3-283", "seg": [ [ [ @@ -38606,7 +45416,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24625, + "max": 0.2465625 + }, "related_data": {} } } @@ -38620,7 +45433,7 @@ { "使用@Retention": { "data": { - "uuid": "java-5-753", + "uuid": "java-5-773", "seg": [ [ [ @@ -38628,11 +45441,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2465625, + "max": 0.24658854166666666 + }, "related_data": { "qa": { "data_id": [ - "13_354809_367514" + "13_354809_367514@13" ] } } @@ -38642,7 +45458,7 @@ { "使用@Target": { "data": { - "uuid": "java-5-754", + "uuid": "java-5-774", "seg": [ [ [ @@ -38650,7 +45466,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24658854166666666, + "max": 0.24661458333333333 + }, "related_data": {} } } @@ -38658,7 +45477,7 @@ { "使用@Documented": { "data": { - "uuid": "java-5-755", + "uuid": "java-5-775", "seg": [ [ [ @@ -38666,7 +45485,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24661458333333333, + "max": 0.246640625 + }, "related_data": {} } } @@ -38674,7 +45496,7 @@ { "使用@Inherited": { "data": { - "uuid": "java-5-756", + "uuid": "java-5-776", "seg": [ [ [ @@ -38682,14 +45504,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.246640625, + "max": 0.24666666666666667 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-593", + "uuid": "java-4-600", "seg": [ [ [ @@ -38699,7 +45524,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2465625, + "max": 0.24666666666666667 + }, "related_data": {} } } @@ -38710,7 +45538,7 @@ { "提取注解信息": { "data": { - "uuid": "java-5-757", + "uuid": "java-5-777", "seg": [ [ [ @@ -38720,11 +45548,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24666666666666667, + "max": 0.24671875 + }, "related_data": { "qa": { "data_id": [ - "13_743182_786935" + "13_743182_786935@13" ] } } @@ -38734,7 +45565,7 @@ { "使用注解的示例": { "data": { - "uuid": "java-5-758", + "uuid": "java-5-778", "seg": [ [ [ @@ -38743,20 +45574,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24671875, + "max": 0.24677083333333333 + }, "related_data": { "qa": { "data_id": [ - "13_198083_113246", - "13_904398_1039731", - "13_1072254_1274546", - "13_1166021_1929065", - "13_7445694_53424359", - "13_378339_409449", - "13_1101582_1316121", - "13_7463652_53449767", - "13_759020_815159", - "13_183454_72313" + "13_1166021_1929065@13", + "13_378339_409449@13", + "13_768805_829183@13", + "13_759020_815159@13", + "13_183454_72313@13", + "13_1103311_1317720@13" ] } } @@ -38765,7 +45595,7 @@ } ], "data": { - "uuid": "java-4-594", + "uuid": "java-4-601", "seg": [ [ [ @@ -38774,7 +45604,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24666666666666667, + "max": 0.24677083333333333 + }, "related_data": {} } } @@ -38782,7 +45615,7 @@ { "编译时处理注解": { "data": { - "uuid": "java-4-595", + "uuid": "java-4-602", "seg": [ [ [ @@ -38791,14 +45624,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24677083333333333, + "max": 0.246875 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-291", + "uuid": "java-3-284", "seg": [ [ [ @@ -38807,7 +45643,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2465625, + "max": 0.246875 + }, "related_data": {} } } @@ -38821,7 +45660,7 @@ { "流的分类": { "data": { - "uuid": "java-5-759", + "uuid": "java-5-779", "seg": [ [ [ @@ -38830,20 +45669,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.246875, + "max": 0.24690104166666668 + }, "related_data": { "qa": { "data_id": [ - "13_752122_806115", - "13_746035_794846", - "13_370781_397473", - "13_658381_471425", - "13_28570_8041", - "13_645602_447291", - "13_7437018_53409515", - "13_7413576_53365676", - "13_7444024_53421778", - "13_643462_443868" + "13_752122_806115@13", + "13_746035_794846@13", + "13_370781_397473@13", + "13_658381_471425@13", + "13_28570_8041@13", + "13_645602_447291@13", + "13_7437018_53409515@13", + "13_7413576_53365676@13", + "13_7444024_53421778@13", + "13_643462_443868@13" ] } } @@ -38853,7 +45695,7 @@ { "流的概念模型": { "data": { - "uuid": "java-5-760", + "uuid": "java-5-780", "seg": [ [ [ @@ -38862,14 +45704,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24690104166666668, + "max": 0.24692708333333335 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-596", + "uuid": "java-4-603", "seg": [ [ [ @@ -38880,7 +45725,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.246875, + "max": 0.24692708333333335 + }, "related_data": {} } } @@ -38891,7 +45739,7 @@ { "处理流的用法": { "data": { - "uuid": "java-5-761", + "uuid": "java-5-781", "seg": [ [ [ @@ -38900,13 +45748,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24692708333333335, + "max": 0.24694444444444447 + }, "related_data": { "qa": { "data_id": [ - "13_693501_571189", - "13_648054_452059", - "13_385317_422513" + "13_693501_571189@13", + "13_648054_452059@13", + "13_385317_422513@13" ] } } @@ -38916,18 +45767,22 @@ { "输入/输出流体系": { "data": { - "uuid": "java-5-762", + "uuid": "java-5-782", "seg": [ [ [ "输入", "输出", "流", - "体系" + "体系", + "流体系" ] ] ], - "level": "2", + "level": { + "min": 0.24694444444444447, + "max": 0.24696180555555555 + }, "related_data": {} } } @@ -38935,7 +45790,7 @@ { "推回输入流": { "data": { - "uuid": "java-5-763", + "uuid": "java-5-783", "seg": [ [ [ @@ -38945,32 +45800,32 @@ ] ] ], - "level": "2", - "related_data": { - "qa": { - "data_id": [ - "13_690083_559389", - "13_766723_826119" - ] - } - } + "level": { + "min": 0.24696180555555555, + "max": 0.24697916666666667 + }, + "related_data": {} } } } ], "data": { - "uuid": "java-4-597", + "uuid": "java-4-604", "seg": [ [ [ "输入", "输出", "流", - "体系" + "体系", + "流体系" ] ] ], - "level": "2", + "level": { + "min": 0.24692708333333335, + "max": 0.24697916666666667 + }, "related_data": {} } } @@ -38978,18 +45833,22 @@ { "重定向标准输入/输出": { "data": { - "uuid": "java-4-598", + "uuid": "java-4-605", "seg": [ [ [ "重定向", "标准", "输入", - "输出" + "输出", + "重定向标准" ] ] ], - "level": "2", + "level": { + "min": 0.24697916666666667, + "max": 0.24703125 + }, "related_data": {} } } @@ -38997,7 +45856,7 @@ { "Java虚拟机读写其他进程的数据": { "data": { - "uuid": "java-4-599", + "uuid": "java-4-606", "seg": [ [ [ @@ -39009,7 +45868,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24703125, + "max": 0.24708333333333335 + }, "related_data": {} } } @@ -39020,7 +45882,7 @@ { "序列化的含义和意义": { "data": { - "uuid": "java-5-764", + "uuid": "java-5-784", "seg": [ [ [ @@ -39032,11 +45894,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24708333333333335, + "max": 0.24709077380952382 + }, "related_data": { "qa": { "data_id": [ - "13_200787_122061" + "13_200787_122061@13" ] } } @@ -39046,21 +45911,25 @@ { "使用对象流实现序列化": { "data": { - "uuid": "java-5-765", + "uuid": "java-5-785", "seg": [ [ [ "对象", "流", - "序列化" + "序列化", + "对象流" ] ] ], - "level": "2", + "level": { + "min": 0.24709077380952382, + "max": 0.2470982142857143 + }, "related_data": { "qa": { "data_id": [ - "13_675939_512612" + "13_675939_512612@13" ] } } @@ -39070,7 +45939,7 @@ { "对象引用的序列化": { "data": { - "uuid": "java-5-766", + "uuid": "java-5-786", "seg": [ [ [ @@ -39080,12 +45949,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2470982142857143, + "max": 0.24710565476190477 + }, "related_data": { "qa": { "data_id": [ - "13_755323_811394", - "13_7438932_53412371" + "13_755323_811394@13", + "13_7438932_53412371@13" ] } } @@ -39095,7 +45967,7 @@ { "Java 9增加的过滤功能": { "data": { - "uuid": "java-5-767", + "uuid": "java-5-787", "seg": [ [ [ @@ -39106,11 +45978,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24710565476190477, + "max": 0.24711309523809524 + }, "related_data": { "qa": { "data_id": [ - "13_7456575_53440420" + "13_7456575_53440420@13" ] } } @@ -39120,7 +45995,7 @@ { "自定义序列化": { "data": { - "uuid": "java-5-768", + "uuid": "java-5-788", "seg": [ [ [ @@ -39129,7 +46004,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24711309523809524, + "max": 0.24712053571428572 + }, "related_data": {} } } @@ -39137,17 +46015,21 @@ { "另一种自定义序列化机制": { "data": { - "uuid": "java-5-769", + "uuid": "java-5-789", "seg": [ [ [ "自定义", "序列化", - "机制" + "机制", + "序列化机制" ] ] ], - "level": "2", + "level": { + "min": 0.24712053571428572, + "max": 0.2471279761904762 + }, "related_data": {} } } @@ -39155,7 +46037,7 @@ { "版本": { "data": { - "uuid": "java-5-770", + "uuid": "java-5-790", "seg": [ [ [ @@ -39163,15 +46045,18 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2471279761904762, + "max": 0.24713541666666666 + }, "related_data": { "qa": { "data_id": [ - "13_7464561_53451045", - "13_697528_583288", - "13_1091157_1298489", - "13_7459452_53444386", - "13_770806_833246" + "13_7464561_53451045@13", + "13_697528_583288@13", + "13_1091157_1298489@13", + "13_7459452_53444386@13", + "13_770806_833246@13" ] } } @@ -39180,18 +46065,22 @@ } ], "data": { - "uuid": "java-4-600", + "uuid": "java-4-607", "seg": [ [ [ "java", "改进", "对象", - "序列化" + "序列化", + "对象序列化" ] ] ], - "level": "2", + "level": { + "min": 0.24708333333333335, + "max": 0.24713541666666666 + }, "related_data": {} } } @@ -39202,7 +46091,7 @@ { "Path、Paths和Files核心API": { "data": { - "uuid": "java-5-771", + "uuid": "java-5-791", "seg": [ [ [ @@ -39218,7 +46107,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24713541666666666, + "max": 0.24715277777777778 + }, "related_data": {} } } @@ -39226,7 +46118,7 @@ { "使用WatchService监控文件变化": { "data": { - "uuid": "java-5-772", + "uuid": "java-5-792", "seg": [ [ [ @@ -39237,7 +46129,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24715277777777778, + "max": 0.2471701388888889 + }, "related_data": {} } } @@ -39245,7 +46140,7 @@ { "访问文件属性": { "data": { - "uuid": "java-5-773", + "uuid": "java-5-793", "seg": [ [ [ @@ -39254,14 +46149,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2471701388888889, + "max": 0.2471875 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-601", + "uuid": "java-4-608", "seg": [ [ [ @@ -39273,14 +46171,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24713541666666666, + "max": 0.2471875 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-292", + "uuid": "java-3-285", "seg": [ [ [ @@ -39289,7 +46190,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.246875, + "max": 0.2471875 + }, "related_data": {} } } @@ -39300,29 +46204,33 @@ { "Java程序设计平台": { "data": { - "uuid": "java-4-602", + "uuid": "java-4-609", "seg": [ [ [ "java", "程序设计", - "平台" + "平台", + "程序设计平台" ] ] ], - "level": "2", + "level": { + "min": 0.2471875, + "max": 0.247265625 + }, "related_data": { "qa": { "data_id": [ - "13_7429981_53396951", - "13_707980_641196", - "13_7451390_53432913", - "13_7397081_53341593", - "13_7397085_53341547", - "13_645208_446518", - "13_354681_367352", - "13_333693_325966", - "13_7444620_53422990" + "13_7429981_53396951@13", + "13_707980_641196@13", + "13_7451390_53432913@13", + "13_7397081_53341593@13", + "13_7397085_53341547@13", + "13_645208_446518@13", + "13_354681_367352@13", + "13_333693_325966@13", + "13_7444620_53422990@13" ] } } @@ -39335,31 +46243,38 @@ { "解释型": { "data": { - "uuid": "java-5-774", + "uuid": "java-5-794", "seg": [ [ [] ] ], - "level": "1", + "level": { + "min": 0.247265625, + "max": 0.24734375 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-603", + "uuid": "java-4-610", "seg": [ [ [ "java", "白皮书", "关键", - "术语" + "术语", + "关键术语" ] ] ], - "level": "1", + "level": { + "min": 0.247265625, + "max": 0.24734375 + }, "related_data": {} } } @@ -39367,7 +46282,7 @@ { "Java发展简史": { "data": { - "uuid": "java-4-604", + "uuid": "java-4-611", "seg": [ [ [ @@ -39377,7 +46292,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24734375, + "max": 0.247421875 + }, "related_data": {} } } @@ -39385,7 +46303,7 @@ { "关于Java的常见误解": { "data": { - "uuid": "java-4-605", + "uuid": "java-4-612", "seg": [ [ [ @@ -39395,14 +46313,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.247421875, + "max": 0.2475 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-293", + "uuid": "java-3-286", "seg": [ [ [ @@ -39412,7 +46333,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2471875, + "max": 0.2475 + }, "related_data": {} } } @@ -39426,7 +46350,7 @@ { "设置JDK": { "data": { - "uuid": "java-5-775", + "uuid": "java-5-795", "seg": [ [ [ @@ -39435,7 +46359,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2475, + "max": 0.2475390625 + }, "related_data": {} } } @@ -39443,27 +46370,31 @@ { "安装库源文件和文档": { "data": { - "uuid": "java-5-776", + "uuid": "java-5-796", "seg": [ [ [ "安装", "库", - "源文件" + "源文件", + "库源文件" ], [ "文档" ] ] ], - "level": "1", + "level": { + "min": 0.2475390625, + "max": 0.24757812499999998 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-606", + "uuid": "java-4-613", "seg": [ [ [ @@ -39474,7 +46405,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2475, + "max": 0.24757812499999998 + }, "related_data": {} } } @@ -39482,20 +46416,24 @@ { "使用命令行工具": { "data": { - "uuid": "java-4-607", + "uuid": "java-4-614", "seg": [ [ [ "命令行", - "工具" + "工具", + "命令行工具" ] ] ], - "level": "1", + "level": { + "min": 0.24757812499999998, + "max": 0.24765625 + }, "related_data": { "qa": { "data_id": [ - "13_26924_7376" + "13_26924_7376@13" ] } } @@ -39505,7 +46443,7 @@ { "使用集成开发环境": { "data": { - "uuid": "java-4-608", + "uuid": "java-4-615", "seg": [ [ [ @@ -39515,7 +46453,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24765625, + "max": 0.247734375 + }, "related_data": {} } } @@ -39523,7 +46464,7 @@ { "JShell": { "data": { - "uuid": "java-4-609", + "uuid": "java-4-616", "seg": [ [ [ @@ -39531,24 +46472,31 @@ ] ] ], - "level": "1", + "level": { + "min": 0.247734375, + "max": 0.2478125 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-294", + "uuid": "java-3-287", "seg": [ [ [ "java", "程序设计", - "环境" + "环境", + "程序设计环境" ] ] ], - "level": "1", + "level": { + "min": 0.2475, + "max": 0.2478125 + }, "related_data": {} } } @@ -39559,7 +46507,7 @@ { "一个简单的Java应用程序": { "data": { - "uuid": "java-4-610", + "uuid": "java-4-617", "seg": [ [ [ @@ -39568,7 +46516,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2478125, + "max": 0.24796875000000002 + }, "related_data": {} } } @@ -39576,7 +46527,7 @@ { "大数": { "data": { - "uuid": "java-4-611", + "uuid": "java-4-618", "seg": [ [ [ @@ -39584,24 +46535,32 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24796875000000002, + "max": 0.248125 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-295", + "uuid": "java-3-288", "seg": [ [ [ "java", "程序设计", - "结构" + "结构", + "基本程序设计", + "程序设计结构" ] ] ], - "level": "1", + "level": { + "min": 0.2478125, + "max": 0.248125 + }, "related_data": {} } } @@ -39609,10 +46568,32 @@ { "泛型程序设计": { "children": [ + { + "定义简单泛型类": { + "data": { + "uuid": "java-4-619", + "seg": [ + [ + [ + "定义", + "泛型", + "类", + "泛型类" + ] + ] + ], + "level": { + "min": 0.248125, + "max": 0.24816964285714288 + }, + "related_data": {} + } + } + }, { "类型变量的限定": { "data": { - "uuid": "java-4-612", + "uuid": "java-4-620", "seg": [ [ [ @@ -39622,29 +46603,172 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24816964285714288, + "max": 0.24821428571428572 + }, "related_data": {} } } }, + { + "泛型代码和虚拟机": { + "children": [ + { + "类型擦除": { + "data": { + "uuid": "java-5-797", + "seg": [ + [ + [ + "类型", + "擦除" + ] + ] + ], + "level": { + "min": 0.24821428571428572, + "max": 0.24822544642857144 + }, + "related_data": { + "qa": { + "data_id": [ + "13_362237_381013@13", + "13_167201_40983@13", + "13_1105339_1328254@13", + "13_155923_17165@13", + "13_229212_196558@13" + ] + } + } + } + } + }, + { + "转换泛型表达式": { + "data": { + "uuid": "java-5-798", + "seg": [ + [ + [ + "转换", + "泛型", + "表达式", + "泛型表达式" + ] + ] + ], + "level": { + "min": 0.24822544642857144, + "max": 0.24823660714285717 + }, + "related_data": {} + } + } + }, + { + "转换泛型方法": { + "data": { + "uuid": "java-5-799", + "seg": [ + [ + [ + "转换", + "泛型", + "方法", + "泛型方法" + ] + ] + ], + "level": { + "min": 0.24823660714285717, + "max": 0.24824776785714286 + }, + "related_data": { + "qa": { + "data_id": [ + "13_7395577_53338255@13", + "13_769938_831172@13", + "13_229225_196595@13", + "13_774510_838443@13" + ] + } + } + } + } + }, + { + "调用遗留代码": { + "data": { + "uuid": "java-5-800", + "seg": [ + [ + [ + "调用", + "遗留" + ] + ] + ], + "level": { + "min": 0.24824776785714286, + "max": 0.2482589285714286 + }, + "related_data": {} + } + } + } + ], + "data": { + "uuid": "java-4-621", + "seg": [ + [ + [ + "泛型", + "泛型代码" + ], + [ + "虚拟机" + ] + ] + ], + "level": { + "min": 0.24821428571428572, + "max": 0.2482589285714286 + }, + "related_data": { + "qa": { + "data_id": [ + "13_7396683_53340999@13", + "13_194116_100761@13" + ] + } + } + } + } + }, { "限制与局限性": { "children": [ { "运行时类型查询只适用于原始类型": { "data": { - "uuid": "java-5-777", + "uuid": "java-5-801", "seg": [ [ [ "运行", "类型", "查询", - "原始" + "原始", + "时类型", + "只适用" ] ] ], - "level": "1", + "level": { + "min": 0.2482589285714286, + "max": 0.248265306122449 + }, "related_data": {} } } @@ -39652,7 +46776,7 @@ { "不能创建参数化类型的数组": { "data": { - "uuid": "java-5-778", + "uuid": "java-5-802", "seg": [ [ [ @@ -39660,11 +46784,16 @@ "参数", "化", "类型", - "数组" + "数组", + "参数化", + "化类型" ] ] ], - "level": "1", + "level": { + "min": 0.248265306122449, + "max": 0.2482716836734694 + }, "related_data": {} } } @@ -39672,7 +46801,7 @@ { "Varargs警告": { "data": { - "uuid": "java-5-779", + "uuid": "java-5-803", "seg": [ [ [ @@ -39681,7 +46810,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2482716836734694, + "max": 0.2482780612244898 + }, "related_data": {} } } @@ -39689,17 +46821,21 @@ { "不能构造泛型数组": { "data": { - "uuid": "java-5-780", + "uuid": "java-5-804", "seg": [ [ [ "构造", "泛型", - "数组" + "数组", + "泛型数组" ] ] ], - "level": "1", + "level": { + "min": 0.2482780612244898, + "max": 0.2482844387755102 + }, "related_data": {} } } @@ -39707,7 +46843,7 @@ { "泛型类的静态上下文中类型变量无效": { "data": { - "uuid": "java-5-781", + "uuid": "java-5-805", "seg": [ [ [ @@ -39721,11 +46857,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2482844387755102, + "max": 0.2482908163265306 + }, "related_data": { "qa": { "data_id": [ - "13_324443_316073" + "13_324443_316073@13" ] } } @@ -39735,7 +46874,7 @@ { "可以取消对检查型异常的检查": { "data": { - "uuid": "java-5-782", + "uuid": "java-5-806", "seg": [ [ [ @@ -39745,7 +46884,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2482908163265306, + "max": 0.24829719387755103 + }, "related_data": {} } } @@ -39753,7 +46895,7 @@ { "注意擦除后的冲突": { "data": { - "uuid": "java-5-783", + "uuid": "java-5-807", "seg": [ [ [ @@ -39762,14 +46904,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24829719387755103, + "max": 0.24830357142857143 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-613", + "uuid": "java-4-622", "seg": [ [ [], @@ -39778,7 +46923,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2482589285714286, + "max": 0.24830357142857143 + }, "related_data": {} } } @@ -39786,18 +46934,141 @@ { "泛型类型的继承规则": { "data": { - "uuid": "java-4-614", + "uuid": "java-4-623", "seg": [ [ [ "泛型", "类型", "继承", - "规则" + "规则", + "泛型类型" + ] + ] + ], + "level": { + "min": 0.24830357142857143, + "max": 0.2483482142857143 + }, + "related_data": {} + } + } + }, + { + "通配符类型": { + "children": [ + { + "通配符概念": { + "data": { + "uuid": "java-5-808", + "seg": [ + [ + [ + "通配符", + "概念", + "通配符概念" + ] + ] + ], + "level": { + "min": 0.2483482142857143, + "max": 0.248359375 + }, + "related_data": {} + } + } + }, + { + "通配符的超类型限定": { + "data": { + "uuid": "java-5-809", + "seg": [ + [ + [ + "通配符", + "超", + "类型", + "限定" + ] + ] + ], + "level": { + "min": 0.248359375, + "max": 0.24837053571428572 + }, + "related_data": {} + } + } + }, + { + "无限定通配符": { + "data": { + "uuid": "java-5-810", + "seg": [ + [ + [ + "无限", + "定", + "通配符" + ] + ] + ], + "level": { + "min": 0.24837053571428572, + "max": 0.24838169642857144 + }, + "related_data": { + "qa": { + "data_id": [ + "13_7406641_53356186@13" + ] + } + } + } + } + }, + { + "通配符捕获": { + "data": { + "uuid": "java-5-811", + "seg": [ + [ + [ + "通配符", + "捕获" + ] + ] + ], + "level": { + "min": 0.24838169642857144, + "max": 0.24839285714285714 + }, + "related_data": { + "qa": { + "data_id": [ + "13_675583_510221@13" + ] + } + } + } + } + } + ], + "data": { + "uuid": "java-4-624", + "seg": [ + [ + [ + "通配符", + "类型", + "通配符类型" ] ] ], - "level": "1", + "level": { + "min": 0.2483482142857143, + "max": 0.24839285714285714 + }, "related_data": {} } } @@ -39808,7 +47079,7 @@ { "泛型Class类": { "data": { - "uuid": "java-5-784", + "uuid": "java-5-812", "seg": [ [ [ @@ -39818,7 +47089,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24839285714285714, + "max": 0.24840401785714286 + }, "related_data": {} } } @@ -39826,7 +47100,7 @@ { "使用Class参数进行类型匹配": { "data": { - "uuid": "java-5-785", + "uuid": "java-5-813", "seg": [ [ [ @@ -39838,11 +47112,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24840401785714286, + "max": 0.24841517857142859 + }, "related_data": { "qa": { "data_id": [ - "13_200008_119509" + "13_200008_119509@13" ] } } @@ -39852,46 +47129,48 @@ { "虚拟机中的泛型类型信息": { "data": { - "uuid": "java-5-786", + "uuid": "java-5-814", "seg": [ [ [ "虚拟机", "泛型", - "类型信息" + "类型信息", + "泛型类型信息" ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_7396683_53340999", - "13_194116_100761" - ] - } - } + "level": { + "min": 0.24841517857142859, + "max": 0.24842633928571428 + }, + "related_data": {} } } }, { "类型字面量": { "data": { - "uuid": "java-5-787", + "uuid": "java-5-815", "seg": [ [ [ "类型", "字面", - "量" + "量", + "类型字面", + "字面量" ] ] ], - "level": "1", + "level": { + "min": 0.24842633928571428, + "max": 0.2484375 + }, "related_data": { "qa": { "data_id": [ - "13_376857_407063" + "13_376857_407063@13" ] } } @@ -39900,7 +47179,7 @@ } ], "data": { - "uuid": "java-4-615", + "uuid": "java-4-625", "seg": [ [ [ @@ -39909,23 +47188,30 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24839285714285714, + "max": 0.2484375 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-296", + "uuid": "java-3-289", "seg": [ [ [ "泛型", - "程序设计" + "程序设计", + "泛型程序设计" ] ] ], - "level": "1", + "level": { + "min": 0.248125, + "max": 0.2484375 + }, "related_data": {} } } @@ -39936,18 +47222,23 @@ { "Java用户界面工具包简史": { "data": { - "uuid": "java-4-616", + "uuid": "java-4-626", "seg": [ [ [ "java", "用户界面", "工具包", - "简史" + "简史", + "用户界面工具包", + "工具包简史" ] ] ], - "level": "2", + "level": { + "min": 0.2484375, + "max": 0.24851562500000002 + }, "related_data": {} } } @@ -39958,7 +47249,7 @@ { "创建窗体": { "data": { - "uuid": "java-5-788", + "uuid": "java-5-816", "seg": [ [ [ @@ -39967,12 +47258,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24851562500000002, + "max": 0.2485546875 + }, "related_data": { "qa": { "data_id": [ - "13_351211_363867", - "13_7423516_53383337" + "13_351211_363867@13", + "13_7423516_53383337@13" ] } } @@ -39982,23 +47276,27 @@ { "窗体属性": { "data": { - "uuid": "java-5-789", + "uuid": "java-5-817", "seg": [ [ [ "窗体", - "属性" + "属性", + "窗体属性" ] ] ], - "level": "2", + "level": { + "min": 0.2485546875, + "max": 0.24859375 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-617", + "uuid": "java-4-627", "seg": [ [ [ @@ -40007,7 +47305,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24851562500000002, + "max": 0.24859375 + }, "related_data": {} } } @@ -40018,7 +47319,7 @@ { "处理2D图形": { "data": { - "uuid": "java-5-790", + "uuid": "java-5-818", "seg": [ [ [ @@ -40027,11 +47328,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24859375, + "max": 0.24861328124999998 + }, "related_data": { "qa": { "data_id": [ - "13_354764_367795" + "13_354764_367795@13" ] } } @@ -40041,7 +47345,7 @@ { "使用颜色": { "data": { - "uuid": "java-5-791", + "uuid": "java-5-819", "seg": [ [ [ @@ -40049,7 +47353,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24861328124999998, + "max": 0.2486328125 + }, "related_data": {} } } @@ -40057,7 +47364,7 @@ { "使用字体": { "data": { - "uuid": "java-5-792", + "uuid": "java-5-820", "seg": [ [ [ @@ -40065,7 +47372,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2486328125, + "max": 0.24865234375 + }, "related_data": {} } } @@ -40073,7 +47383,7 @@ { "显示图像": { "data": { - "uuid": "java-5-793", + "uuid": "java-5-821", "seg": [ [ [ @@ -40082,14 +47392,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24865234375, + "max": 0.248671875 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-618", + "uuid": "java-4-628", "seg": [ [ [ @@ -40098,7 +47411,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24859375, + "max": 0.248671875 + }, "related_data": {} } } @@ -40106,7 +47422,7 @@ { "首选项API": { "data": { - "uuid": "java-4-619", + "uuid": "java-4-629", "seg": [ [ [ @@ -40115,23 +47431,30 @@ ] ] ], - "level": "1", + "level": { + "min": 0.248671875, + "max": 0.24875 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-297", + "uuid": "java-3-290", "seg": [ [ [ "图形用户界面", - "程序设计" + "程序设计", + "图形用户界面程序设计" ] ] ], - "level": "1", + "level": { + "min": 0.2484375, + "max": 0.24875 + }, "related_data": {} } } @@ -40145,16 +47468,20 @@ { "边框布局": { "data": { - "uuid": "java-5-794", + "uuid": "java-5-822", "seg": [ [ [ "边框", - "布局" + "布局", + "边框布局" ] ] ], - "level": "2", + "level": { + "min": 0.24875, + "max": 0.2487890625 + }, "related_data": {} } } @@ -40162,23 +47489,27 @@ { "网格布局": { "data": { - "uuid": "java-5-795", + "uuid": "java-5-823", "seg": [ [ [ "网格", - "布局" + "布局", + "网格布局" ] ] ], - "level": "2", + "level": { + "min": 0.2487890625, + "max": 0.248828125 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-620", + "uuid": "java-4-630", "seg": [ [ [ @@ -40188,7 +47519,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24875, + "max": 0.248828125 + }, "related_data": {} } } @@ -40199,16 +47533,20 @@ { "密码域": { "data": { - "uuid": "java-5-796", + "uuid": "java-5-824", "seg": [ [ [ "密码", - "域" + "域", + "密码域" ] ] ], - "level": "2", + "level": { + "min": 0.248828125, + "max": 0.24885416666666668 + }, "related_data": {} } } @@ -40216,22 +47554,26 @@ { "文本区": { "data": { - "uuid": "java-5-797", + "uuid": "java-5-825", "seg": [ [ [ "文本", - "区" + "区", + "文本区" ] ] ], - "level": "2", + "level": { + "min": 0.24885416666666668, + "max": 0.24888020833333332 + }, "related_data": { "qa": { "data_id": [ - "13_163422_36252", - "13_743716_788550", - "13_7416142_53370041" + "13_163422_36252@13", + "13_743716_788550@13", + "13_7416142_53370041@13" ] } } @@ -40241,7 +47583,7 @@ { "滚动窗格": { "data": { - "uuid": "java-5-798", + "uuid": "java-5-826", "seg": [ [ [ @@ -40250,14 +47592,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24888020833333332, + "max": 0.24890625 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-621", + "uuid": "java-4-631", "seg": [ [ [ @@ -40266,7 +47611,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.248828125, + "max": 0.24890625 + }, "related_data": {} } } @@ -40277,7 +47625,7 @@ { "组合框": { "data": { - "uuid": "java-5-799", + "uuid": "java-5-827", "seg": [ [ [ @@ -40286,11 +47634,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24890625, + "max": 0.2489453125 + }, "related_data": { "qa": { "data_id": [ - "13_1100861_1315580" + "13_1100861_1315580@13" ] } } @@ -40300,7 +47651,7 @@ { "滑动条": { "data": { - "uuid": "java-5-800", + "uuid": "java-5-828", "seg": [ [ [ @@ -40309,14 +47660,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2489453125, + "max": 0.24898437499999998 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-622", + "uuid": "java-4-632", "seg": [ [ [ @@ -40325,7 +47679,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24890625, + "max": 0.24898437499999998 + }, "related_data": {} } } @@ -40336,7 +47693,7 @@ { "网格包布局": { "data": { - "uuid": "java-5-801", + "uuid": "java-5-829", "seg": [ [ [ @@ -40346,38 +47703,39 @@ ] ] ], - "level": "2", - "related_data": { - "qa": { - "data_id": [ - "13_7420383_53378422" - ] - } - } + "level": { + "min": 0.24898437499999998, + "max": 0.2490234375 + }, + "related_data": {} } } }, { "定制布局管理器": { "data": { - "uuid": "java-5-802", + "uuid": "java-5-830", "seg": [ [ [ "定制", "布局", - "管理器" + "管理器", + "布局管理器" ] ] ], - "level": "2", + "level": { + "min": 0.2490234375, + "max": 0.2490625 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-623", + "uuid": "java-4-633", "seg": [ [ [ @@ -40386,24 +47744,31 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24898437499999998, + "max": 0.2490625 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-298", + "uuid": "java-3-291", "seg": [ [ [ "swing", "用户界面", - "组件" + "组件", + "用户界面组件" ] ] ], - "level": "2", + "level": { + "min": 0.24875, + "max": 0.2490625 + }, "related_data": {} } } @@ -40417,17 +47782,22 @@ { "Java程序基本结构": { "data": { - "uuid": "java-5-803", + "uuid": "java-5-831", "seg": [ [ [ "java", "程序", - "结构" + "结构", + "程序基本", + "基本结构" ] ] ], - "level": "1", + "level": { + "min": 0.2490625, + "max": 0.24909375 + }, "related_data": {} } } @@ -40435,7 +47805,7 @@ { "整数运算": { "data": { - "uuid": "java-5-804", + "uuid": "java-5-832", "seg": [ [ [ @@ -40444,18 +47814,21 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24909375, + "max": 0.24912499999999999 + }, "related_data": { "qa": { "data_id": [ - "13_7441487_53417669", - "13_664814_481867", - "13_1102403_1316815", - "13_242494_229867", - "13_372118_399199", - "13_768720_829179", - "13_197214_110990", - "13_692451_567378" + "13_7441487_53417669@13", + "13_664814_481867@13", + "13_1102403_1316815@13", + "13_242494_229867@13", + "13_372118_399199@13", + "13_768720_829179@13", + "13_197214_110990@13", + "13_692451_567378@13" ] } } @@ -40465,7 +47838,7 @@ { "浮点数运算": { "data": { - "uuid": "java-5-805", + "uuid": "java-5-833", "seg": [ [ [ @@ -40474,13 +47847,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24912499999999999, + "max": 0.24915625 + }, "related_data": { "qa": { "data_id": [ - "13_650747_457635", - "13_1082383_1288340", - "13_344453_347607" + "13_650747_457635@13", + "13_1082383_1288340@13", + "13_344453_347607@13" ] } } @@ -40490,7 +47866,7 @@ { "布尔运算": { "data": { - "uuid": "java-5-806", + "uuid": "java-5-834", "seg": [ [ [ @@ -40498,7 +47874,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24915625, + "max": 0.24918749999999998 + }, "related_data": {} } } @@ -40506,21 +47885,25 @@ { "数组类型": { "data": { - "uuid": "java-5-807", + "uuid": "java-5-835", "seg": [ [ [ "数组", - "类型" + "类型", + "数组类型" ] ] ], - "level": "1", + "level": { + "min": 0.24918749999999998, + "max": 0.24921875 + }, "related_data": { "qa": { "data_id": [ - "13_223582_181848", - "13_228803_195458" + "13_223582_181848@13", + "13_228803_195458@13" ] } } @@ -40529,17 +47912,21 @@ } ], "data": { - "uuid": "java-4-624", + "uuid": "java-4-634", "seg": [ [ [ "java", "程序", - "基础" + "基础", + "程序基础" ] ] ], - "level": "1", + "level": { + "min": 0.2490625, + "max": 0.24921875 + }, "related_data": {} } } @@ -40547,7 +47934,7 @@ { "数组操作": { "data": { - "uuid": "java-4-625", + "uuid": "java-4-635", "seg": [ [ [ @@ -40556,24 +47943,31 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24921875, + "max": 0.249375 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-299", + "uuid": "java-3-292", "seg": [ [ [ "java", "快速", - "入门" + "入门", + "快速入门" ] ] ], - "level": "1", + "level": { + "min": 0.2490625, + "max": 0.249375 + }, "related_data": {} } } @@ -40584,7 +47978,7 @@ { "File对象": { "data": { - "uuid": "java-4-626", + "uuid": "java-4-636", "seg": [ [ [ @@ -40593,11 +47987,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.249375, + "max": 0.24940972222222224 + }, "related_data": { "qa": { "data_id": [ - "13_826805_923111" + "13_826805_923111@13" ] } } @@ -40607,7 +48004,7 @@ { "InputStream": { "data": { - "uuid": "java-4-627", + "uuid": "java-4-637", "seg": [ [ [ @@ -40615,11 +48012,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24940972222222224, + "max": 0.24944444444444447 + }, "related_data": { "qa": { "data_id": [ - "13_773567_837537" + "13_773567_837537@13" ] } } @@ -40629,7 +48029,7 @@ { "OutputStream": { "data": { - "uuid": "java-4-628", + "uuid": "java-4-638", "seg": [ [ [ @@ -40637,7 +48037,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24944444444444447, + "max": 0.24947916666666667 + }, "related_data": {} } } @@ -40645,7 +48048,7 @@ { "Filter模式": { "data": { - "uuid": "java-4-629", + "uuid": "java-4-639", "seg": [ [ [ @@ -40654,7 +48057,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24947916666666667, + "max": 0.2495138888888889 + }, "related_data": {} } } @@ -40662,7 +48068,7 @@ { "操作Zip": { "data": { - "uuid": "java-4-630", + "uuid": "java-4-640", "seg": [ [ [ @@ -40671,11 +48077,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2495138888888889, + "max": 0.24954861111111112 + }, "related_data": { "qa": { "data_id": [ - "13_231037_201417" + "13_231037_201417@13" ] } } @@ -40685,7 +48094,7 @@ { "读取classpath资源": { "data": { - "uuid": "java-4-631", + "uuid": "java-4-641", "seg": [ [ [ @@ -40695,11 +48104,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24954861111111112, + "max": 0.24958333333333335 + }, "related_data": { "qa": { "data_id": [ - "13_644442_445132" + "13_644442_445132@13" ] } } @@ -40709,7 +48121,7 @@ { "序列化": { "data": { - "uuid": "java-4-632", + "uuid": "java-4-642", "seg": [ [ [ @@ -40717,7 +48129,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24958333333333335, + "max": 0.24961805555555555 + }, "related_data": {} } } @@ -40725,7 +48140,7 @@ { "PrintStream和PrintWriter": { "data": { - "uuid": "java-4-633", + "uuid": "java-4-643", "seg": [ [ [ @@ -40736,15 +48151,25 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.24961805555555555, + "max": 0.24965277777777778 + }, + "related_data": { + "qa": { + "data_id": [ + "13_226170_188292@13", + "13_351247_360691@13" + ] + } + } } } }, { "使用Files": { "data": { - "uuid": "java-4-634", + "uuid": "java-4-644", "seg": [ [ [ @@ -40752,11 +48177,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24965277777777778, + "max": 0.2496875 + }, "related_data": { "qa": { "data_id": [ - "13_671521_495433" + "13_671521_495433@13" ] } } @@ -40765,7 +48193,7 @@ } ], "data": { - "uuid": "java-3-300", + "uuid": "java-3-293", "seg": [ [ [ @@ -40773,15 +48201,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.249375, + "max": 0.2496875 + }, "related_data": { "qa": { "data_id": [ - "13_215410_161345", - "13_346112_351429", - "13_667118_486152", - "13_742331_784248", - "13_7434373_53404907" + "13_215410_161345@13", + "13_346112_351429@13", + "13_667118_486152@13", + "13_742331_784248@13", + "13_7434373_53404907@13" ] } } @@ -40794,7 +48225,7 @@ { "编写JUnit测试": { "data": { - "uuid": "java-4-635", + "uuid": "java-4-645", "seg": [ [ [ @@ -40803,7 +48234,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2496875, + "max": 0.249765625 + }, "related_data": {} } } @@ -40811,7 +48245,7 @@ { "使用Fixture": { "data": { - "uuid": "java-4-636", + "uuid": "java-4-646", "seg": [ [ [ @@ -40819,7 +48253,30 @@ ] ] ], - "level": "1", + "level": { + "min": 0.249765625, + "max": 0.24984375 + }, + "related_data": {} + } + } + }, + { + "异常测试": { + "data": { + "uuid": "java-4-647", + "seg": [ + [ + [ + "异常", + "异常测试" + ] + ] + ], + "level": { + "min": 0.24984375, + "max": 0.24992187500000002 + }, "related_data": {} } } @@ -40827,23 +48284,27 @@ { "参数化测试": { "data": { - "uuid": "java-4-637", + "uuid": "java-4-648", "seg": [ [ [ "参数", - "化" + "化", + "参数化" ] ] ], - "level": "1", + "level": { + "min": 0.24992187500000002, + "max": 0.25 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-301", + "uuid": "java-3-294", "seg": [ [ [ @@ -40851,7 +48312,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2496875, + "max": 0.25 + }, "related_data": {} } } @@ -40864,7 +48328,10 @@ [] ] ], - "level": "1", + "level": { + "min": 0.234375, + "max": 0.25 + }, "related_data": {} } } @@ -40880,6 +48347,10 @@ ] ] ], + "level": { + "min": 0.0, + "max": 0.25 + }, "related_data": {} } } @@ -40893,7 +48364,7 @@ { "String类的构造函数": { "data": { - "uuid": "java-3-302", + "uuid": "java-3-295", "seg": [ [ [ @@ -40903,7 +48374,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.25, + "max": 0.2512019230769231 + }, "related_data": {} } } @@ -40911,7 +48385,7 @@ { "字符串的长度": { "data": { - "uuid": "java-3-303", + "uuid": "java-3-296", "seg": [ [ [ @@ -40920,7 +48394,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2512019230769231, + "max": 0.25240384615384615 + }, "related_data": {} } } @@ -40931,17 +48408,22 @@ { "字符串字面值": { "data": { - "uuid": "java-4-638", + "uuid": "java-4-649", "seg": [ [ [ "字符串", "字", - "面值" + "面值", + "字符串字", + "字面值" ] ] ], - "level": "1", + "level": { + "min": 0.25240384615384615, + "max": 0.2527043269230769 + }, "related_data": {} } } @@ -40949,7 +48431,7 @@ { "字符串连接": { "data": { - "uuid": "java-4-639", + "uuid": "java-4-650", "seg": [ [ [ @@ -40958,7 +48440,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2527043269230769, + "max": 0.2530048076923077 + }, "related_data": {} } } @@ -40966,7 +48451,7 @@ { "字符串和其他数据类型的连接": { "data": { - "uuid": "java-4-640", + "uuid": "java-4-651", "seg": [ [ [ @@ -40978,7 +48463,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2530048076923077, + "max": 0.25330528846153844 + }, "related_data": {} } } @@ -40986,7 +48474,7 @@ { "字符串转换和toString方法": { "data": { - "uuid": "java-4-641", + "uuid": "java-4-652", "seg": [ [ [ @@ -40999,15 +48487,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.25330528846153844, + "max": 0.2536057692307692 + }, "related_data": { "qa": { "data_id": [ - "13_742950_786103", - "13_692636_568121", - "13_743036_786414", - "13_687389_550880", - "13_232194_204639" + "13_742950_786103@13", + "13_692636_568121@13", + "13_743036_786414@13", + "13_687389_550880@13", + "13_232194_204639@13" ] } } @@ -41016,7 +48507,7 @@ } ], "data": { - "uuid": "java-3-304", + "uuid": "java-3-297", "seg": [ [ [ @@ -41025,7 +48516,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.25240384615384615, + "max": 0.2536057692307692 + }, "related_data": {} } } @@ -41036,7 +48530,7 @@ { "charAt": { "data": { - "uuid": "java-4-642", + "uuid": "java-4-653", "seg": [ [ [ @@ -41044,11 +48538,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2536057692307692, + "max": 0.25390625 + }, "related_data": { "qa": { "data_id": [ - "13_355757_370471" + "13_355757_370471@13" ] } } @@ -41058,7 +48555,7 @@ { "getChars": { "data": { - "uuid": "java-4-643", + "uuid": "java-4-654", "seg": [ [ [ @@ -41066,7 +48563,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.25390625, + "max": 0.2542067307692307 + }, "related_data": {} } } @@ -41074,7 +48574,7 @@ { "getBytes": { "data": { - "uuid": "java-4-644", + "uuid": "java-4-655", "seg": [ [ [ @@ -41082,7 +48582,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2542067307692307, + "max": 0.2545072115384615 + }, "related_data": {} } } @@ -41090,7 +48593,7 @@ { "toCharArray": { "data": { - "uuid": "java-4-645", + "uuid": "java-4-656", "seg": [ [ [ @@ -41098,11 +48601,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2545072115384615, + "max": 0.2548076923076923 + }, "related_data": { "qa": { "data_id": [ - "13_717143_710303" + "13_717143_710303@13" ] } } @@ -41111,7 +48617,7 @@ } ], "data": { - "uuid": "java-3-305", + "uuid": "java-3-298", "seg": [ [ [ @@ -41120,11 +48626,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2536057692307692, + "max": 0.2548076923076923 + }, "related_data": { "qa": { "data_id": [ - "13_7450427_53431737" + "13_7450427_53431737@13" ] } } @@ -41137,7 +48646,7 @@ { "equals和equalsIgnoreCase": { "data": { - "uuid": "java-4-646", + "uuid": "java-4-657", "seg": [ [ [ @@ -41148,7 +48657,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2548076923076923, + "max": 0.2550480769230769 + }, "related_data": {} } } @@ -41156,7 +48668,7 @@ { "regionMatches": { "data": { - "uuid": "java-4-647", + "uuid": "java-4-658", "seg": [ [ [ @@ -41164,7 +48676,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2550480769230769, + "max": 0.2552884615384615 + }, "related_data": {} } } @@ -41172,7 +48687,7 @@ { "startsWith和endsWith": { "data": { - "uuid": "java-4-648", + "uuid": "java-4-659", "seg": [ [ [ @@ -41183,7 +48698,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2552884615384615, + "max": 0.25552884615384613 + }, "related_data": {} } } @@ -41191,7 +48709,7 @@ { "equals与==": { "data": { - "uuid": "java-4-649", + "uuid": "java-4-660", "seg": [ [ [ @@ -41200,15 +48718,18 @@ [] ] ], - "level": "1", + "level": { + "min": 0.25552884615384613, + "max": 0.25576923076923075 + }, "related_data": { "qa": { "data_id": [ - "13_7464816_53451431", - "13_365827_389402", - "13_368395_394783", - "13_365823_389403", - "13_755005_810253" + "13_7464816_53451431@13", + "13_365827_389402@13", + "13_368395_394783@13", + "13_365823_389403@13", + "13_755005_810253@13" ] } } @@ -41218,7 +48739,7 @@ { "compareTo": { "data": { - "uuid": "java-4-650", + "uuid": "java-4-661", "seg": [ [ [ @@ -41226,14 +48747,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.25576923076923075, + "max": 0.25600961538461536 + }, "related_data": { "qa": { "data_id": [ - "13_798987_890771", - "13_958670_1107096", - "13_1092176_1299977", - "13_242846_230773" + "13_798987_890771@13", + "13_958670_1107096@13", + "13_1092176_1299977@13", + "13_242846_230773@13" ] } } @@ -41242,15 +48766,19 @@ } ], "data": { - "uuid": "java-3-306", + "uuid": "java-3-299", "seg": [ [ [ - "字符串" + "字符串", + "比较字符串" ] ] ], - "level": "1", + "level": { + "min": 0.2548076923076923, + "max": 0.25600961538461536 + }, "related_data": {} } } @@ -41258,7 +48786,7 @@ { "查找字符串": { "data": { - "uuid": "java-3-307", + "uuid": "java-3-300", "seg": [ [ [ @@ -41267,7 +48795,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.25600961538461536, + "max": 0.25721153846153844 + }, "related_data": {} } } @@ -41278,7 +48809,7 @@ { "substring": { "data": { - "uuid": "java-4-651", + "uuid": "java-4-662", "seg": [ [ [ @@ -41286,7 +48817,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.25721153846153844, + "max": 0.2575120192307692 + }, "related_data": {} } } @@ -41294,7 +48828,7 @@ { "concat": { "data": { - "uuid": "java-4-652", + "uuid": "java-4-663", "seg": [ [ [ @@ -41302,7 +48836,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2575120192307692, + "max": 0.2578125 + }, "related_data": {} } } @@ -41310,7 +48847,7 @@ { "replace": { "data": { - "uuid": "java-4-653", + "uuid": "java-4-664", "seg": [ [ [ @@ -41318,7 +48855,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2578125, + "max": 0.2581129807692308 + }, "related_data": {} } } @@ -41326,7 +48866,7 @@ { "trim": { "data": { - "uuid": "java-4-654", + "uuid": "java-4-665", "seg": [ [ [ @@ -41334,11 +48874,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2581129807692308, + "max": 0.25841346153846156 + }, "related_data": { "qa": { "data_id": [ - "13_7415390_53368802" + "13_7415390_53368802@13" ] } } @@ -41347,7 +48890,7 @@ } ], "data": { - "uuid": "java-3-308", + "uuid": "java-3-301", "seg": [ [ [ @@ -41356,7 +48899,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.25721153846153844, + "max": 0.25841346153846156 + }, "related_data": {} } } @@ -41364,7 +48910,7 @@ { "使用valueOf转换数据": { "data": { - "uuid": "java-3-309", + "uuid": "java-3-302", "seg": [ [ [ @@ -41374,7 +48920,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.25841346153846156, + "max": 0.25961538461538464 + }, "related_data": {} } } @@ -41382,7 +48931,7 @@ { "改变字符串中字符的大小写": { "data": { - "uuid": "java-3-310", + "uuid": "java-3-303", "seg": [ [ [ @@ -41393,7 +48942,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.25961538461538464, + "max": 0.2608173076923077 + }, "related_data": {} } } @@ -41401,7 +48953,7 @@ { "连接字符串": { "data": { - "uuid": "java-3-311", + "uuid": "java-3-304", "seg": [ [ [ @@ -41410,7 +48962,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2608173076923077, + "max": 0.2620192307692308 + }, "related_data": {} } } @@ -41418,7 +48973,7 @@ { "其他String方法": { "data": { - "uuid": "java-3-312", + "uuid": "java-3-305", "seg": [ [ [ @@ -41427,7 +48982,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2620192307692308, + "max": 0.26322115384615385 + }, "related_data": {} } } @@ -41438,7 +48996,7 @@ { "StringBuffer类的构造函数": { "data": { - "uuid": "java-4-655", + "uuid": "java-4-666", "seg": [ [ [ @@ -41448,7 +49006,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.26322115384615385, + "max": 0.26331360946745563 + }, "related_data": {} } } @@ -41456,7 +49017,7 @@ { "length与capacity": { "data": { - "uuid": "java-4-656", + "uuid": "java-4-667", "seg": [ [ [ @@ -41467,14 +49028,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.26331360946745563, + "max": 0.2634060650887574 + }, "related_data": { "qa": { "data_id": [ - "13_258627_266763", - "13_382814_417745", - "13_760959_818202", - "13_1063516_1261588" + "13_258627_266763@13", + "13_382814_417745@13", + "13_760959_818202@13", + "13_1063516_1261588@13" ] } } @@ -41484,7 +49048,7 @@ { "ensureCapacity": { "data": { - "uuid": "java-4-657", + "uuid": "java-4-668", "seg": [ [ [ @@ -41492,7 +49056,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2634060650887574, + "max": 0.2634985207100592 + }, "related_data": {} } } @@ -41500,7 +49067,7 @@ { "setLength": { "data": { - "uuid": "java-4-658", + "uuid": "java-4-669", "seg": [ [ [ @@ -41508,7 +49075,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2634985207100592, + "max": 0.26359097633136097 + }, "related_data": {} } } @@ -41516,7 +49086,7 @@ { "charAt与setCharAt": { "data": { - "uuid": "java-4-659", + "uuid": "java-4-670", "seg": [ [ [ @@ -41527,7 +49097,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.26359097633136097, + "max": 0.26368343195266275 + }, "related_data": {} } } @@ -41535,7 +49108,7 @@ { "getChars": { "data": { - "uuid": "java-4-660", + "uuid": "java-4-671", "seg": [ [ [ @@ -41543,7 +49116,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.26368343195266275, + "max": 0.26377588757396453 + }, "related_data": {} } } @@ -41551,7 +49127,7 @@ { "append": { "data": { - "uuid": "java-4-661", + "uuid": "java-4-672", "seg": [ [ [ @@ -41559,13 +49135,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.26377588757396453, + "max": 0.26386834319526625 + }, "related_data": { "qa": { "data_id": [ - "13_243507_232027", - "13_7427449_53391898", - "13_205027_134717" + "13_243507_232027@13", + "13_7427449_53391898@13", + "13_205027_134717@13" ] } } @@ -41575,7 +49154,7 @@ { "insert": { "data": { - "uuid": "java-4-662", + "uuid": "java-4-673", "seg": [ [ [ @@ -41583,7 +49162,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.26386834319526625, + "max": 0.26396079881656803 + }, "related_data": {} } } @@ -41591,7 +49173,7 @@ { "reverse": { "data": { - "uuid": "java-4-663", + "uuid": "java-4-674", "seg": [ [ [ @@ -41599,7 +49181,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.26396079881656803, + "max": 0.2640532544378698 + }, "related_data": {} } } @@ -41607,7 +49192,7 @@ { "delete与deleteCharAt": { "data": { - "uuid": "java-4-664", + "uuid": "java-4-675", "seg": [ [ [ @@ -41618,7 +49203,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2640532544378698, + "max": 0.2641457100591716 + }, "related_data": {} } } @@ -41626,7 +49214,7 @@ { "replace": { "data": { - "uuid": "java-4-665", + "uuid": "java-4-676", "seg": [ [ [ @@ -41634,7 +49222,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2641457100591716, + "max": 0.26423816568047337 + }, "related_data": {} } } @@ -41642,7 +49233,7 @@ { "substring": { "data": { - "uuid": "java-4-666", + "uuid": "java-4-677", "seg": [ [ [ @@ -41650,13 +49241,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.26423816568047337, + "max": 0.26433062130177515 + }, "related_data": { "qa": { "data_id": [ - "13_7445780_53424607", - "13_7412933_53364484", - "13_182882_69247" + "13_7445780_53424607@13", + "13_7412933_53364484@13", + "13_182882_69247@13" ] } } @@ -41666,7 +49260,7 @@ { "其他StringBuffer方法": { "data": { - "uuid": "java-4-667", + "uuid": "java-4-678", "seg": [ [ [ @@ -41675,14 +49269,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.26433062130177515, + "max": 0.2644230769230769 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-313", + "uuid": "java-3-306", "seg": [ [ [ @@ -41691,7 +49288,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.26322115384615385, + "max": 0.2644230769230769 + }, "related_data": {} } } @@ -41699,7 +49299,7 @@ { "StringBuilder类": { "data": { - "uuid": "java-3-314", + "uuid": "java-3-307", "seg": [ [ [ @@ -41708,7 +49308,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2644230769230769, + "max": 0.265625 + }, "related_data": {} } } @@ -41723,14 +49326,11 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_209569_147348" - ] - } - } + "level": { + "min": 0.25, + "max": 0.265625 + }, + "related_data": {} } } }, @@ -41743,7 +49343,7 @@ { "Number": { "data": { - "uuid": "java-4-668", + "uuid": "java-4-679", "seg": [ [ [ @@ -41751,7 +49351,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.265625, + "max": 0.2656994047619048 + }, "related_data": {} } } @@ -41759,7 +49362,7 @@ { "Double与Float": { "data": { - "uuid": "java-4-669", + "uuid": "java-4-680", "seg": [ [ [ @@ -41770,15 +49373,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2656994047619048, + "max": 0.2657738095238095 + }, "related_data": { "qa": { "data_id": [ - "13_264376_279153", - "13_264374_279130", - "13_7405276_53354429", - "13_226802_189900", - "13_7439773_53414769" + "13_264376_279153@13", + "13_264374_279130@13", + "13_7405276_53354429@13", + "13_226802_189900@13", + "13_7439773_53414769@13" ] } } @@ -41788,7 +49394,7 @@ { "理解isInfinite与isNaN": { "data": { - "uuid": "java-4-670", + "uuid": "java-4-681", "seg": [ [ [ @@ -41800,7 +49406,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2657738095238095, + "max": 0.2658482142857143 + }, "related_data": {} } } @@ -41808,7 +49417,7 @@ { "Byte、Short、Integer和Long": { "data": { - "uuid": "java-4-671", + "uuid": "java-4-682", "seg": [ [ [ @@ -41825,11 +49434,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2658482142857143, + "max": 0.26592261904761905 + }, "related_data": { "qa": { "data_id": [ - "13_7415588_53369082" + "13_7415588_53369082@13" ] } } @@ -41839,7 +49451,7 @@ { "Character": { "data": { - "uuid": "java-4-672", + "uuid": "java-4-683", "seg": [ [ [ @@ -41847,7 +49459,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.26592261904761905, + "max": 0.26599702380952384 + }, "related_data": {} } } @@ -41855,7 +49470,7 @@ { "对Unicode代码点的附加支持": { "data": { - "uuid": "java-4-673", + "uuid": "java-4-684", "seg": [ [ [ @@ -41865,11 +49480,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.26599702380952384, + "max": 0.26607142857142857 + }, "related_data": { "qa": { "data_id": [ - "13_744800_791437" + "13_744800_791437@13" ] } } @@ -41879,7 +49497,7 @@ { "Boolean": { "data": { - "uuid": "java-4-674", + "uuid": "java-4-685", "seg": [ [ [ @@ -41887,30 +49505,31 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_7455766_53439088" - ] - } - } + "level": { + "min": 0.26607142857142857, + "max": 0.26614583333333336 + }, + "related_data": {} } } } ], "data": { - "uuid": "java-3-315", + "uuid": "java-3-308", "seg": [ [ [ "类型", "封装", - "器" + "器", + "基本类型" ] ] ], - "level": "1", + "level": { + "min": 0.265625, + "max": 0.26614583333333336 + }, "related_data": {} } } @@ -41918,7 +49537,7 @@ { "Void类": { "data": { - "uuid": "java-3-316", + "uuid": "java-3-309", "seg": [ [ [ @@ -41927,13 +49546,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.26614583333333336, + "max": 0.26666666666666666 + }, "related_data": { "qa": { "data_id": [ - "13_921_18233", - "13_230073_198915", - "13_365420_388580" + "13_230073_198915@13", + "13_365420_388580@13" ] } } @@ -41943,7 +49564,7 @@ { "Process类": { "data": { - "uuid": "java-3-317", + "uuid": "java-3-310", "seg": [ [ [ @@ -41952,7 +49573,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.26666666666666666, + "max": 0.2671875 + }, "related_data": {} } } @@ -41963,7 +49587,7 @@ { "内存管理": { "data": { - "uuid": "java-4-675", + "uuid": "java-4-686", "seg": [ [ [ @@ -41972,7 +49596,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2671875, + "max": 0.2674479166666667 + }, "related_data": {} } } @@ -41980,7 +49607,7 @@ { "执行其他程序": { "data": { - "uuid": "java-4-676", + "uuid": "java-4-687", "seg": [ [ [ @@ -41989,13 +49616,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2674479166666667, + "max": 0.2677083333333333 + }, "related_data": { "qa": { "data_id": [ - "13_665428_483020", - "13_769593_830508", - "13_357335_373925" + "13_665428_483020@13", + "13_769593_830508@13", + "13_357335_373925@13" ] } } @@ -42004,7 +49634,7 @@ } ], "data": { - "uuid": "java-3-318", + "uuid": "java-3-311", "seg": [ [ [ @@ -42013,7 +49643,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2671875, + "max": 0.2677083333333333 + }, "related_data": {} } } @@ -42021,7 +49654,7 @@ { "ProcessBuilder类": { "data": { - "uuid": "java-3-319", + "uuid": "java-3-312", "seg": [ [ [ @@ -42030,7 +49663,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2677083333333333, + "max": 0.2682291666666667 + }, "related_data": {} } } @@ -42041,18 +49677,22 @@ { "使用currentTimeMillis计时程序的执行": { "data": { - "uuid": "java-4-677", + "uuid": "java-4-688", "seg": [ [ [ "currenttimemillis", "计时", "程序", - "执行" + "执行", + "计时程序" ] ] ], - "level": "1", + "level": { + "min": 0.2682291666666667, + "max": 0.26840277777777777 + }, "related_data": {} } } @@ -42060,7 +49700,7 @@ { "使用arraycopy": { "data": { - "uuid": "java-4-678", + "uuid": "java-4-689", "seg": [ [ [ @@ -42068,7 +49708,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.26840277777777777, + "max": 0.2685763888888889 + }, "related_data": {} } } @@ -42076,23 +49719,27 @@ { "环境属性": { "data": { - "uuid": "java-4-679", + "uuid": "java-4-690", "seg": [ [ [ "环境", - "属性" + "属性", + "环境属性" ] ] ], - "level": "1", + "level": { + "min": 0.2685763888888889, + "max": 0.26875 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-320", + "uuid": "java-3-313", "seg": [ [ [ @@ -42101,7 +49748,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2682291666666667, + "max": 0.26875 + }, "related_data": {} } } @@ -42109,7 +49759,7 @@ { "Object类": { "data": { - "uuid": "java-3-321", + "uuid": "java-3-314", "seg": [ [ [ @@ -42118,7 +49768,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.26875, + "max": 0.26927083333333335 + }, "related_data": {} } } @@ -42126,7 +49779,7 @@ { "使用clone方法和Cloneable接口": { "data": { - "uuid": "java-3-322", + "uuid": "java-3-315", "seg": [ [ [ @@ -42139,11 +49792,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.26927083333333335, + "max": 0.26979166666666665 + }, "related_data": { "qa": { "data_id": [ - "13_219015_169590" + "13_219015_169590@13" ] } } @@ -42153,7 +49809,7 @@ { "Class类": { "data": { - "uuid": "java-3-323", + "uuid": "java-3-316", "seg": [ [ [ @@ -42162,7 +49818,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.26979166666666665, + "max": 0.2703125 + }, "related_data": {} } } @@ -42170,7 +49829,7 @@ { "ClassLoader类": { "data": { - "uuid": "java-3-324", + "uuid": "java-3-317", "seg": [ [ [ @@ -42179,7 +49838,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2703125, + "max": 0.2708333333333333 + }, "related_data": {} } } @@ -42190,7 +49852,7 @@ { "三角函数": { "data": { - "uuid": "java-4-680", + "uuid": "java-4-691", "seg": [ [ [ @@ -42198,7 +49860,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2708333333333333, + "max": 0.27096354166666664 + }, "related_data": {} } } @@ -42206,7 +49871,7 @@ { "指数函数": { "data": { - "uuid": "java-4-681", + "uuid": "java-4-692", "seg": [ [ [ @@ -42214,7 +49879,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.27096354166666664, + "max": 0.27109375 + }, "related_data": {} } } @@ -42222,7 +49890,7 @@ { "舍入函数": { "data": { - "uuid": "java-4-682", + "uuid": "java-4-693", "seg": [ [ [ @@ -42231,7 +49899,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.27109375, + "max": 0.27122395833333335 + }, "related_data": {} } } @@ -42239,7 +49910,7 @@ { "其他数学方法": { "data": { - "uuid": "java-4-683", + "uuid": "java-4-694", "seg": [ [ [ @@ -42247,20 +49918,17 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_901985_1038162" - ] - } - } + "level": { + "min": 0.27122395833333335, + "max": 0.2713541666666667 + }, + "related_data": {} } } } ], "data": { - "uuid": "java-3-325", + "uuid": "java-3-318", "seg": [ [ [ @@ -42269,7 +49937,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2708333333333333, + "max": 0.2713541666666667 + }, "related_data": {} } } @@ -42277,7 +49948,7 @@ { "StrictMath类": { "data": { - "uuid": "java-3-326", + "uuid": "java-3-319", "seg": [ [ [ @@ -42286,7 +49957,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2713541666666667, + "max": 0.271875 + }, "related_data": {} } } @@ -42294,7 +49968,7 @@ { "Compiler类": { "data": { - "uuid": "java-3-327", + "uuid": "java-3-320", "seg": [ [ [ @@ -42303,11 +49977,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.271875, + "max": 0.27239583333333334 + }, "related_data": { "qa": { "data_id": [ - "13_677761_520308" + "13_677761_520308@13" ] } } @@ -42320,7 +49997,7 @@ { "Runnable接口": { "data": { - "uuid": "java-4-684", + "uuid": "java-4-695", "seg": [ [ [ @@ -42329,19 +50006,22 @@ ] ] ], - "level": "1", + "level": { + "min": 0.27239583333333334, + "max": 0.2725694444444444 + }, "related_data": { "qa": { "data_id": [ - "13_7445255_53423798", - "13_208249_143938", - "13_525280_439270", - "13_774110_838042", - "13_384121_420224", - "13_175114_55339", - "13_1092653_1300832", - "13_274639_301767", - "13_385758_423269" + "13_7445255_53423798@13", + "13_208249_143938@13", + "13_525280_439270@13", + "13_774110_838042@13", + "13_384121_420224@13", + "13_175114_55339@13", + "13_1092653_1300832@13", + "13_274639_301767@13", + "13_385758_423269@13" ] } } @@ -42351,7 +50031,7 @@ { "Thread类": { "data": { - "uuid": "java-4-685", + "uuid": "java-4-696", "seg": [ [ [ @@ -42360,20 +50040,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2725694444444444, + "max": 0.27274305555555556 + }, "related_data": { "qa": { "data_id": [ - "13_1064443_1262691", - "13_369050_395959", - "13_238684_220869", - "13_670725_493691", - "13_194067_100524", - "13_250759_248859", - "13_776213_841468", - "13_730831_819974", - "13_1096480_1308816", - "13_7467365_53454859" + "13_1064443_1262691@13", + "13_369050_395959@13", + "13_238684_220869@13", + "13_670725_493691@13", + "13_194067_100524@13", + "13_250759_248859@13", + "13_776213_841468@13", + "13_730831_819974@13", + "13_1096480_1308816@13", + "13_7467365_53454859@13" ] } } @@ -42383,7 +50066,7 @@ { "ThreadGroup类": { "data": { - "uuid": "java-4-686", + "uuid": "java-4-697", "seg": [ [ [ @@ -42392,14 +50075,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.27274305555555556, + "max": 0.27291666666666664 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-328", + "uuid": "java-3-321", "seg": [ [ [ @@ -42416,7 +50102,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.27239583333333334, + "max": 0.27291666666666664 + }, "related_data": {} } } @@ -42424,7 +50113,7 @@ { "ThreadLocal和InheritableThreadLocal类": { "data": { - "uuid": "java-3-329", + "uuid": "java-3-322", "seg": [ [ [ @@ -42436,7 +50125,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.27291666666666664, + "max": 0.2734375 + }, "related_data": {} } } @@ -42444,7 +50136,7 @@ { "Package类": { "data": { - "uuid": "java-3-330", + "uuid": "java-3-323", "seg": [ [ [ @@ -42453,17 +50145,20 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2734375, + "max": 0.27395833333333336 + }, "related_data": { "qa": { "data_id": [ - "13_743467_787789", - "13_7439756_53414465", - "13_1021809_1214583", - "13_390001_431094", - "13_693130_570057", - "13_373126_400852", - "13_692088_566076" + "13_743467_787789@13", + "13_7439756_53414465@13", + "13_1021809_1214583@13", + "13_390001_431094@13", + "13_693130_570057@13", + "13_373126_400852@13", + "13_692088_566076@13" ] } } @@ -42473,7 +50168,7 @@ { "RuntimePermission类": { "data": { - "uuid": "java-3-331", + "uuid": "java-3-324", "seg": [ [ [ @@ -42482,7 +50177,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.27395833333333336, + "max": 0.27447916666666666 + }, "related_data": {} } } @@ -42490,7 +50188,7 @@ { "Throwable类": { "data": { - "uuid": "java-3-332", + "uuid": "java-3-325", "seg": [ [ [ @@ -42499,7 +50197,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.27447916666666666, + "max": 0.275 + }, "related_data": {} } } @@ -42507,7 +50208,7 @@ { "SecurityManager类": { "data": { - "uuid": "java-3-333", + "uuid": "java-3-326", "seg": [ [ [ @@ -42516,7 +50217,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.275, + "max": 0.2755208333333333 + }, "related_data": {} } } @@ -42524,7 +50228,7 @@ { "StackTraceElement类": { "data": { - "uuid": "java-3-334", + "uuid": "java-3-327", "seg": [ [ [ @@ -42533,11 +50237,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2755208333333333, + "max": 0.2760416666666667 + }, "related_data": { "qa": { "data_id": [ - "13_364212_385662" + "13_364212_385662@13" ] } } @@ -42547,7 +50254,7 @@ { "Enum类": { "data": { - "uuid": "java-3-335", + "uuid": "java-3-328", "seg": [ [ [ @@ -42556,7 +50263,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2760416666666667, + "max": 0.2765625 + }, "related_data": {} } } @@ -42564,7 +50274,7 @@ { "ClassValue类": { "data": { - "uuid": "java-3-336", + "uuid": "java-3-329", "seg": [ [ [ @@ -42573,7 +50283,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2765625, + "max": 0.27708333333333335 + }, "related_data": {} } } @@ -42581,7 +50294,7 @@ { "CharSequence接口": { "data": { - "uuid": "java-3-337", + "uuid": "java-3-330", "seg": [ [ [ @@ -42590,7 +50303,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.27708333333333335, + "max": 0.27760416666666665 + }, "related_data": {} } } @@ -42598,7 +50314,7 @@ { "Comparable接口": { "data": { - "uuid": "java-3-338", + "uuid": "java-3-331", "seg": [ [ [ @@ -42607,13 +50323,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.27760416666666665, + "max": 0.278125 + }, "related_data": { "qa": { "data_id": [ - "13_877206_1012611", - "13_7409134_53359429", - "13_7439601_53414217" + "13_877206_1012611@13", + "13_7409134_53359429@13", + "13_7439601_53414217@13" ] } } @@ -42623,7 +50342,7 @@ { "Appendable接口": { "data": { - "uuid": "java-3-339", + "uuid": "java-3-332", "seg": [ [ [ @@ -42632,7 +50351,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.278125, + "max": 0.2786458333333333 + }, "related_data": {} } } @@ -42640,7 +50362,7 @@ { "Iterable接口": { "data": { - "uuid": "java-3-340", + "uuid": "java-3-333", "seg": [ [ [ @@ -42649,7 +50371,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2786458333333333, + "max": 0.2791666666666667 + }, "related_data": {} } } @@ -42657,7 +50382,7 @@ { "Readable接口": { "data": { - "uuid": "java-3-341", + "uuid": "java-3-334", "seg": [ [ [ @@ -42666,7 +50391,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2791666666666667, + "max": 0.2796875 + }, "related_data": {} } } @@ -42674,7 +50402,7 @@ { "AutoCloseable接口": { "data": { - "uuid": "java-3-342", + "uuid": "java-3-335", "seg": [ [ [ @@ -42683,7 +50411,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2796875, + "max": 0.28020833333333334 + }, "related_data": {} } } @@ -42691,7 +50422,7 @@ { "Thread.UncaughtExceptionHandler接口": { "data": { - "uuid": "java-3-343", + "uuid": "java-3-336", "seg": [ [ [ @@ -42701,7 +50432,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.28020833333333334, + "max": 0.28072916666666664 + }, "related_data": {} } } @@ -42712,7 +50446,7 @@ { "java.lang.annotation": { "data": { - "uuid": "java-4-687", + "uuid": "java-4-698", "seg": [ [ [ @@ -42722,20 +50456,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.28072916666666664, + "max": 0.2808159722222222 + }, "related_data": { "qa": { "data_id": [ - "13_387434_426516", - "13_7397998_53343743", - "13_683789_540480", - "13_760281_1263897", - "13_184627_74625", - "13_205120_134968", - "13_7422819_53381564", - "13_635702_441275", - "13_382461_417036", - "13_667458_486609" + "13_387434_426516@13", + "13_7397998_53343743@13", + "13_683789_540480@13", + "13_760281_1263897@13", + "13_184627_74625@13", + "13_205120_134968@13", + "13_7422819_53381564@13", + "13_635702_441275@13", + "13_382461_417036@13", + "13_667458_486609@13" ] } } @@ -42745,7 +50482,7 @@ { "java.lang.instrument": { "data": { - "uuid": "java-4-688", + "uuid": "java-4-699", "seg": [ [ [ @@ -42755,7 +50492,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2808159722222222, + "max": 0.2809027777777778 + }, "related_data": {} } } @@ -42763,7 +50503,7 @@ { "java.lang.invoke": { "data": { - "uuid": "java-4-689", + "uuid": "java-4-700", "seg": [ [ [ @@ -42773,13 +50513,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2809027777777778, + "max": 0.28098958333333335 + }, "related_data": { "qa": { "data_id": [ - "13_348123_354643", - "13_687205_550300", - "13_197636_112983" + "13_348123_354643@13", + "13_687205_550300@13", + "13_197636_112983@13" ] } } @@ -42789,33 +50532,28 @@ { "java.lang.management": { "data": { - "uuid": "java-4-690", + "uuid": "java-4-701", "seg": [ [ [ "java", "lang", - "mana", - "gemen", - "t" + "management" ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_768805_829183" - ] - } - } + "level": { + "min": 0.28098958333333335, + "max": 0.28107638888888886 + }, + "related_data": {} } } }, { "java.lang.ref": { "data": { - "uuid": "java-4-691", + "uuid": "java-4-702", "seg": [ [ [ @@ -42825,7 +50563,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.28107638888888886, + "max": 0.28116319444444443 + }, "related_data": {} } } @@ -42833,7 +50574,7 @@ { "java.lang.reflect": { "data": { - "uuid": "java-4-692", + "uuid": "java-4-703", "seg": [ [ [ @@ -42843,11 +50584,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.28116319444444443, + "max": 0.28125 + }, "related_data": { "qa": { "data_id": [ - "13_645418_446931" + "13_645418_446931@13" ] } } @@ -42856,7 +50600,7 @@ } ], "data": { - "uuid": "java-3-344", + "uuid": "java-3-337", "seg": [ [ [ @@ -42867,7 +50611,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.28072916666666664, + "max": 0.28125 + }, "related_data": {} } } @@ -42884,7 +50631,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.265625, + "max": 0.28125 + }, "related_data": {} } } @@ -42895,7 +50645,7 @@ { "集合概述": { "data": { - "uuid": "java-3-345", + "uuid": "java-3-338", "seg": [ [ [ @@ -42904,7 +50654,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.28125, + "max": 0.2824519230769231 + }, "related_data": {} } } @@ -42915,18 +50668,22 @@ { "泛型从根本上改变了集合框架": { "data": { - "uuid": "java-4-693", + "uuid": "java-4-704", "seg": [ [ [ "泛型", "改变", "集合", - "框架" + "框架", + "从根本上改变" ] ] ], - "level": "1", + "level": { + "min": 0.2824519230769231, + "max": 0.2828525641025641 + }, "related_data": {} } } @@ -42934,17 +50691,21 @@ { "自动装箱使得使用基本类型更加容易": { "data": { - "uuid": "java-4-694", + "uuid": "java-4-705", "seg": [ [ [ "自动", "装箱", - "类型" + "类型", + "基本类型" ] ] ], - "level": "1", + "level": { + "min": 0.2828525641025641, + "max": 0.2832532051282051 + }, "related_data": {} } } @@ -42952,7 +50713,7 @@ { "for-each风格的for循环": { "data": { - "uuid": "java-4-695", + "uuid": "java-4-706", "seg": [ [ [ @@ -42963,14 +50724,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2832532051282051, + "max": 0.28365384615384615 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-346", + "uuid": "java-3-339", "seg": [ [ [ @@ -42981,7 +50745,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2824519230769231, + "max": 0.28365384615384615 + }, "related_data": {} } } @@ -42992,7 +50759,7 @@ { "Collection接口": { "data": { - "uuid": "java-4-696", + "uuid": "java-4-707", "seg": [ [ [ @@ -43001,13 +50768,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.28365384615384615, + "max": 0.28382554945054944 + }, "related_data": { "qa": { "data_id": [ - "13_204050_132183", - "13_743540_788017", - "13_7416661_53371001" + "13_204050_132183@13" ] } } @@ -43017,7 +50785,7 @@ { "List接口": { "data": { - "uuid": "java-4-697", + "uuid": "java-4-708", "seg": [ [ [ @@ -43026,7 +50794,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.28382554945054944, + "max": 0.28399725274725274 + }, "related_data": {} } } @@ -43034,7 +50805,7 @@ { "Set接口": { "data": { - "uuid": "java-4-698", + "uuid": "java-4-709", "seg": [ [ [ @@ -43043,7 +50814,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.28399725274725274, + "max": 0.28416895604395603 + }, "related_data": {} } } @@ -43051,7 +50825,7 @@ { "SortedSet接口": { "data": { - "uuid": "java-4-699", + "uuid": "java-4-710", "seg": [ [ [ @@ -43060,7 +50834,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.28416895604395603, + "max": 0.28434065934065933 + }, "related_data": {} } } @@ -43068,7 +50845,7 @@ { "NavigableSet接口": { "data": { - "uuid": "java-4-700", + "uuid": "java-4-711", "seg": [ [ [ @@ -43077,7 +50854,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.28434065934065933, + "max": 0.2845123626373626 + }, "related_data": {} } } @@ -43085,7 +50865,7 @@ { "Queue接口": { "data": { - "uuid": "java-4-701", + "uuid": "java-4-712", "seg": [ [ [ @@ -43094,7 +50874,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2845123626373626, + "max": 0.2846840659340659 + }, "related_data": {} } } @@ -43102,7 +50885,7 @@ { "Deque接口": { "data": { - "uuid": "java-4-702", + "uuid": "java-4-713", "seg": [ [ [ @@ -43111,14 +50894,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2846840659340659, + "max": 0.2848557692307692 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-347", + "uuid": "java-3-340", "seg": [ [ [ @@ -43127,7 +50913,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.28365384615384615, + "max": 0.2848557692307692 + }, "related_data": {} } } @@ -43138,7 +50927,7 @@ { "ArrayList类": { "data": { - "uuid": "java-4-703", + "uuid": "java-4-714", "seg": [ [ [ @@ -43147,12 +50936,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2848557692307692, + "max": 0.2850060096153846 + }, "related_data": { "qa": { "data_id": [ - "13_335879_330335", - "13_4646257_29329805" + "13_335879_330335@13", + "13_4646257_29329805@13" ] } } @@ -43162,7 +50954,7 @@ { "LinkedList类": { "data": { - "uuid": "java-4-704", + "uuid": "java-4-715", "seg": [ [ [ @@ -43171,11 +50963,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2850060096153846, + "max": 0.28515625 + }, "related_data": { "qa": { "data_id": [ - "13_750087_803570" + "13_750087_803570@13" ] } } @@ -43185,7 +50980,7 @@ { "HashSet类": { "data": { - "uuid": "java-4-705", + "uuid": "java-4-716", "seg": [ [ [ @@ -43194,7 +50989,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.28515625, + "max": 0.28530649038461536 + }, "related_data": {} } } @@ -43202,7 +51000,7 @@ { "LinkedHashSet类": { "data": { - "uuid": "java-4-706", + "uuid": "java-4-717", "seg": [ [ [ @@ -43211,7 +51009,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.28530649038461536, + "max": 0.2854567307692307 + }, "related_data": {} } } @@ -43219,7 +51020,7 @@ { "TreeSet类": { "data": { - "uuid": "java-4-707", + "uuid": "java-4-718", "seg": [ [ [ @@ -43228,7 +51029,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2854567307692307, + "max": 0.28560697115384615 + }, "related_data": {} } } @@ -43236,7 +51040,7 @@ { "PriorityQueue类": { "data": { - "uuid": "java-4-708", + "uuid": "java-4-719", "seg": [ [ [ @@ -43245,7 +51049,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.28560697115384615, + "max": 0.2857572115384615 + }, "related_data": {} } } @@ -43253,7 +51060,7 @@ { "ArrayDeque类": { "data": { - "uuid": "java-4-709", + "uuid": "java-4-720", "seg": [ [ [ @@ -43262,7 +51069,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2857572115384615, + "max": 0.2859074519230769 + }, "related_data": {} } } @@ -43270,7 +51080,7 @@ { "EnumSet类": { "data": { - "uuid": "java-4-710", + "uuid": "java-4-721", "seg": [ [ [ @@ -43279,14 +51089,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2859074519230769, + "max": 0.2860576923076923 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-348", + "uuid": "java-3-341", "seg": [ [ [ @@ -43295,14 +51108,11 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_388464_428213" - ] - } - } + "level": { + "min": 0.2848557692307692, + "max": 0.2860576923076923 + }, + "related_data": {} } } }, @@ -43312,7 +51122,7 @@ { "使用迭代器": { "data": { - "uuid": "java-4-711", + "uuid": "java-4-722", "seg": [ [ [ @@ -43321,11 +51131,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2860576923076923, + "max": 0.28665865384615385 + }, "related_data": { "qa": { "data_id": [ - "13_752055_806041" + "13_752055_806041@13" ] } } @@ -43335,7 +51148,7 @@ { "使用for-each循环替代迭代器": { "data": { - "uuid": "java-4-712", + "uuid": "java-4-723", "seg": [ [ [ @@ -43347,11 +51160,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.28665865384615385, + "max": 0.28725961538461536 + }, "related_data": { "qa": { "data_id": [ - "13_245571_236188" + "13_245571_236188@13" ] } } @@ -43360,7 +51176,7 @@ } ], "data": { - "uuid": "java-3-349", + "uuid": "java-3-342", "seg": [ [ [ @@ -43371,7 +51187,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2860576923076923, + "max": 0.28725961538461536 + }, "related_data": {} } } @@ -43382,7 +51201,7 @@ { "拆分过程": { "data": { - "uuid": "java-4-713", + "uuid": "java-4-724", "seg": [ [ [ @@ -43391,14 +51210,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.28725961538461536, + "max": 0.28846153846153844 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-350", + "uuid": "java-3-343", "seg": [ [ [ @@ -43406,7 +51228,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.28725961538461536, + "max": 0.28846153846153844 + }, "related_data": {} } } @@ -43414,18 +51239,22 @@ { "在集合中存储用户定义的类": { "data": { - "uuid": "java-3-351", + "uuid": "java-3-344", "seg": [ [ [ "集合", "存储用户", "定义", - "类" + "类", + "存储用户定义" ] ] ], - "level": "1", + "level": { + "min": 0.28846153846153844, + "max": 0.28966346153846156 + }, "related_data": {} } } @@ -43433,7 +51262,7 @@ { "RandomAccess接口": { "data": { - "uuid": "java-3-352", + "uuid": "java-3-345", "seg": [ [ [ @@ -43442,7 +51271,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.28966346153846156, + "max": 0.29086538461538464 + }, "related_data": {} } } @@ -43453,7 +51285,7 @@ { "映射接口": { "data": { - "uuid": "java-4-714", + "uuid": "java-4-725", "seg": [ [ [ @@ -43462,7 +51294,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.29086538461538464, + "max": 0.2911658653846154 + }, "related_data": {} } } @@ -43470,7 +51305,7 @@ { "映射类": { "data": { - "uuid": "java-4-715", + "uuid": "java-4-726", "seg": [ [ [ @@ -43479,7 +51314,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2911658653846154, + "max": 0.29146634615384615 + }, "related_data": {} } } @@ -43487,7 +51325,7 @@ { "对流中每一个元素应用函数": { "data": { - "uuid": "java-4-716", + "uuid": "java-4-727", "seg": [ [ [ @@ -43497,7 +51335,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.29146634615384615, + "max": 0.2917668269230769 + }, "related_data": {} } } @@ -43505,7 +51346,7 @@ { "流的扁平化": { "data": { - "uuid": "java-4-717", + "uuid": "java-4-728", "seg": [ [ [ @@ -43514,14 +51355,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2917668269230769, + "max": 0.2920673076923077 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-353", + "uuid": "java-3-346", "seg": [ [ [ @@ -43529,7 +51373,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.29086538461538464, + "max": 0.2920673076923077 + }, "related_data": {} } } @@ -43537,15 +51384,19 @@ { "比较器": { "data": { - "uuid": "java-3-354", + "uuid": "java-3-347", "seg": [ [ [ - "器" + "器", + "比较器" ] ] ], - "level": "1", + "level": { + "min": 0.2920673076923077, + "max": 0.2932692307692308 + }, "related_data": {} } } @@ -43553,7 +51404,7 @@ { "集合算法": { "data": { - "uuid": "java-3-355", + "uuid": "java-3-348", "seg": [ [ [ @@ -43562,7 +51413,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2932692307692308, + "max": 0.29447115384615385 + }, "related_data": {} } } @@ -43570,7 +51424,7 @@ { "Arrays类": { "data": { - "uuid": "java-3-356", + "uuid": "java-3-349", "seg": [ [ [ @@ -43579,7 +51433,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.29447115384615385, + "max": 0.2956730769230769 + }, "related_data": {} } } @@ -43590,7 +51447,7 @@ { "Enumeration接口": { "data": { - "uuid": "java-4-718", + "uuid": "java-4-729", "seg": [ [ [ @@ -43599,7 +51456,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2956730769230769, + "max": 0.2958447802197802 + }, "related_data": {} } } @@ -43607,7 +51467,7 @@ { "Vector类": { "data": { - "uuid": "java-4-719", + "uuid": "java-4-730", "seg": [ [ [ @@ -43616,7 +51476,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2958447802197802, + "max": 0.2960164835164835 + }, "related_data": {} } } @@ -43624,7 +51487,7 @@ { "Stack类": { "data": { - "uuid": "java-4-720", + "uuid": "java-4-731", "seg": [ [ [ @@ -43633,11 +51496,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2960164835164835, + "max": 0.2961881868131868 + }, "related_data": { "qa": { "data_id": [ - "13_682655_537475" + "13_682655_537475@13" ] } } @@ -43647,7 +51513,7 @@ { "Dictionary类": { "data": { - "uuid": "java-4-721", + "uuid": "java-4-732", "seg": [ [ [ @@ -43656,7 +51522,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2961881868131868, + "max": 0.2963598901098901 + }, "related_data": {} } } @@ -43664,7 +51533,7 @@ { "Hashtable类": { "data": { - "uuid": "java-4-722", + "uuid": "java-4-733", "seg": [ [ [ @@ -43673,7 +51542,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2963598901098901, + "max": 0.2965315934065934 + }, "related_data": {} } } @@ -43681,7 +51553,7 @@ { "Properties类": { "data": { - "uuid": "java-4-723", + "uuid": "java-4-734", "seg": [ [ [ @@ -43690,7 +51562,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2965315934065934, + "max": 0.2967032967032967 + }, "related_data": {} } } @@ -43698,7 +51573,7 @@ { "使用store和load": { "data": { - "uuid": "java-4-724", + "uuid": "java-4-735", "seg": [ [ [ @@ -43709,11 +51584,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2967032967032967, + "max": 0.296875 + }, "related_data": { "qa": { "data_id": [ - "13_182248_68027" + "13_182248_68027@13" ] } } @@ -43722,7 +51600,7 @@ } ], "data": { - "uuid": "java-3-357", + "uuid": "java-3-350", "seg": [ [ [ @@ -43734,7 +51612,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2956730769230769, + "max": 0.296875 + }, "related_data": {} } } @@ -43756,7 +51637,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.28125, + "max": 0.296875 + }, "related_data": {} } } @@ -43767,7 +51651,7 @@ { "StringTokenizer类": { "data": { - "uuid": "java-3-358", + "uuid": "java-3-351", "seg": [ [ [ @@ -43776,7 +51660,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.296875, + "max": 0.2977430555555556 + }, "related_data": {} } } @@ -43784,7 +51671,7 @@ { "BitSet类": { "data": { - "uuid": "java-3-359", + "uuid": "java-3-352", "seg": [ [ [ @@ -43793,7 +51680,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2977430555555556, + "max": 0.2986111111111111 + }, "related_data": {} } } @@ -43801,7 +51691,7 @@ { "Optional、OptionalDouble、OptionalInt和OptionalLong": { "data": { - "uuid": "java-3-360", + "uuid": "java-3-353", "seg": [ [ [ @@ -43818,7 +51708,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2986111111111111, + "max": 0.2994791666666667 + }, "related_data": {} } } @@ -43826,7 +51719,7 @@ { "Date类": { "data": { - "uuid": "java-3-361", + "uuid": "java-3-354", "seg": [ [ [ @@ -43835,7 +51728,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2994791666666667, + "max": 0.3003472222222222 + }, "related_data": {} } } @@ -43843,7 +51739,7 @@ { "Calendar类": { "data": { - "uuid": "java-3-362", + "uuid": "java-3-355", "seg": [ [ [ @@ -43852,21 +51748,18 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_227451_191747" - ] - } - } + "level": { + "min": 0.3003472222222222, + "max": 0.3012152777777778 + }, + "related_data": {} } } }, { "GregorianCalendar类": { "data": { - "uuid": "java-3-363", + "uuid": "java-3-356", "seg": [ [ [ @@ -43875,7 +51768,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3012152777777778, + "max": 0.3020833333333333 + }, "related_data": {} } } @@ -43883,7 +51779,7 @@ { "TimeZone类": { "data": { - "uuid": "java-3-364", + "uuid": "java-3-357", "seg": [ [ [ @@ -43892,7 +51788,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3020833333333333, + "max": 0.3029513888888889 + }, "related_data": {} } } @@ -43900,7 +51799,7 @@ { "SimpleTimeZone类": { "data": { - "uuid": "java-3-365", + "uuid": "java-3-358", "seg": [ [ [ @@ -43909,7 +51808,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3029513888888889, + "max": 0.3038194444444444 + }, "related_data": {} } } @@ -43917,7 +51819,7 @@ { "Locale类": { "data": { - "uuid": "java-3-366", + "uuid": "java-3-359", "seg": [ [ [ @@ -43926,7 +51828,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3038194444444444, + "max": 0.3046875 + }, "related_data": {} } } @@ -43934,7 +51839,7 @@ { "Random类": { "data": { - "uuid": "java-3-367", + "uuid": "java-3-360", "seg": [ [ [ @@ -43943,7 +51848,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3046875, + "max": 0.3055555555555556 + }, "related_data": {} } } @@ -43954,7 +51862,7 @@ { "Observer接口": { "data": { - "uuid": "java-4-725", + "uuid": "java-4-736", "seg": [ [ [ @@ -43963,7 +51871,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3055555555555556, + "max": 0.30598958333333337 + }, "related_data": {} } } @@ -43971,7 +51882,7 @@ { "Observer示例": { "data": { - "uuid": "java-4-726", + "uuid": "java-4-737", "seg": [ [ [ @@ -43980,14 +51891,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.30598958333333337, + "max": 0.3064236111111111 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-368", + "uuid": "java-3-361", "seg": [ [ [ @@ -43996,7 +51910,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3055555555555556, + "max": 0.3064236111111111 + }, "related_data": {} } } @@ -44004,7 +51921,7 @@ { "Timer和TimerTask类": { "data": { - "uuid": "java-3-369", + "uuid": "java-3-362", "seg": [ [ [ @@ -44016,12 +51933,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3064236111111111, + "max": 0.3072916666666667 + }, "related_data": { "qa": { "data_id": [ - "13_743896_789128", - "13_772811_836295" + "13_743896_789128@13", + "13_772811_836295@13" ] } } @@ -44031,7 +51951,7 @@ { "Currency类": { "data": { - "uuid": "java-3-370", + "uuid": "java-3-363", "seg": [ [ [ @@ -44040,7 +51960,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3072916666666667, + "max": 0.3081597222222222 + }, "related_data": {} } } @@ -44051,7 +51974,7 @@ { "Formatter类的构造函数": { "data": { - "uuid": "java-4-727", + "uuid": "java-4-738", "seg": [ [ [ @@ -44061,7 +51984,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3081597222222222, + "max": 0.30820794753086417 + }, "related_data": {} } } @@ -44069,7 +51995,7 @@ { "Formatter类的方法": { "data": { - "uuid": "java-4-728", + "uuid": "java-4-739", "seg": [ [ [ @@ -44079,25 +52005,18 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_7413171_53364979", - "13_7419721_53377246", - "13_774366_838332", - "13_7422604_53381235", - "13_945858_1085780" - ] - } - } + "level": { + "min": 0.30820794753086417, + "max": 0.3082561728395062 + }, + "related_data": {} } } }, { "格式化的基础知识": { "data": { - "uuid": "java-4-729", + "uuid": "java-4-740", "seg": [ [ [ @@ -44106,7 +52025,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3082561728395062, + "max": 0.30830439814814814 + }, "related_data": {} } } @@ -44114,19 +52036,23 @@ { "格式化字符串和字符": { "data": { - "uuid": "java-4-730", + "uuid": "java-4-741", "seg": [ [ [ "格式化", - "字符串" + "字符串", + "格式化字符串" ], [ "字符" ] ] ], - "level": "1", + "level": { + "min": 0.30830439814814814, + "max": 0.3083526234567901 + }, "related_data": {} } } @@ -44134,16 +52060,20 @@ { "格式化数字": { "data": { - "uuid": "java-4-731", + "uuid": "java-4-742", "seg": [ [ [ "格式化", - "数字" + "数字", + "格式化数字" ] ] ], - "level": "1", + "level": { + "min": 0.3083526234567901, + "max": 0.3084008487654321 + }, "related_data": {} } } @@ -44151,19 +52081,23 @@ { "格式化时间和日期": { "data": { - "uuid": "java-4-732", + "uuid": "java-4-743", "seg": [ [ [ "格式化", - "时间" + "时间", + "格式化时间" ], [ "日期" ] ] ], - "level": "1", + "level": { + "min": 0.3084008487654321, + "max": 0.30844907407407407 + }, "related_data": {} } } @@ -44171,7 +52105,7 @@ { "%n和%%说明符": { "data": { - "uuid": "java-4-733", + "uuid": "java-4-744", "seg": [ [ [ @@ -44184,11 +52118,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.30844907407407407, + "max": 0.30849729938271603 + }, "related_data": { "qa": { "data_id": [ - "13_643493_443553" + "13_643493_443553@13" ] } } @@ -44198,18 +52135,22 @@ { "指定最小字段宽度": { "data": { - "uuid": "java-4-734", + "uuid": "java-4-745", "seg": [ [ [ "指定", - "小字", - "段", - "宽度" + "最小", + "字段", + "宽度", + "字段宽度" ] ] ], - "level": "1", + "level": { + "min": 0.30849729938271603, + "max": 0.30854552469135804 + }, "related_data": {} } } @@ -44217,7 +52158,7 @@ { "指定精度": { "data": { - "uuid": "java-4-735", + "uuid": "java-4-746", "seg": [ [ [ @@ -44226,7 +52167,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.30854552469135804, + "max": 0.30859375 + }, "related_data": {} } } @@ -44234,16 +52178,20 @@ { "使用格式标志": { "data": { - "uuid": "java-4-736", + "uuid": "java-4-747", "seg": [ [ [ "格式", - "标志" + "标志", + "格式标志" ] ] ], - "level": "1", + "level": { + "min": 0.30859375, + "max": 0.30864197530864196 + }, "related_data": {} } } @@ -44251,16 +52199,20 @@ { "对齐输出": { "data": { - "uuid": "java-4-737", + "uuid": "java-4-748", "seg": [ [ [ "对齐", - "输出" + "输出", + "对齐输出" ] ] ], - "level": "1", + "level": { + "min": 0.30864197530864196, + "max": 0.30869020061728397 + }, "related_data": {} } } @@ -44268,7 +52220,7 @@ { "空格、“+”、“0”以及“(”标志": { "data": { - "uuid": "java-4-738", + "uuid": "java-4-749", "seg": [ [ [ @@ -44281,7 +52233,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.30869020061728397, + "max": 0.30873842592592593 + }, "related_data": {} } } @@ -44289,16 +52244,20 @@ { "逗号标志": { "data": { - "uuid": "java-4-739", + "uuid": "java-4-750", "seg": [ [ [ "逗号", - "标志" + "标志", + "逗号标志" ] ] ], - "level": "1", + "level": { + "min": 0.30873842592592593, + "max": 0.3087866512345679 + }, "related_data": {} } } @@ -44306,7 +52265,7 @@ { "“#”标志": { "data": { - "uuid": "java-4-740", + "uuid": "java-4-751", "seg": [ [ [ @@ -44314,7 +52273,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3087866512345679, + "max": 0.3088348765432099 + }, "related_data": {} } } @@ -44322,16 +52284,20 @@ { "大写选项": { "data": { - "uuid": "java-4-741", + "uuid": "java-4-752", "seg": [ [ [ "大写", - "选项" + "选项", + "大写选项" ] ] ], - "level": "1", + "level": { + "min": 0.3088348765432099, + "max": 0.30888310185185186 + }, "related_data": {} } } @@ -44339,16 +52305,20 @@ { "使用参数索引": { "data": { - "uuid": "java-4-742", + "uuid": "java-4-753", "seg": [ [ [ "参数", - "索引" + "索引", + "参数索引" ] ] ], - "level": "1", + "level": { + "min": 0.30888310185185186, + "max": 0.3089313271604938 + }, "related_data": {} } } @@ -44356,7 +52326,7 @@ { "关闭Formatter对象": { "data": { - "uuid": "java-4-743", + "uuid": "java-4-754", "seg": [ [ [ @@ -44366,7 +52336,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3089313271604938, + "max": 0.30897955246913583 + }, "related_data": {} } } @@ -44374,7 +52347,7 @@ { "printf方法": { "data": { - "uuid": "java-4-744", + "uuid": "java-4-755", "seg": [ [ [ @@ -44383,14 +52356,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.30897955246913583, + "max": 0.3090277777777778 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-371", + "uuid": "java-3-364", "seg": [ [ [ @@ -44399,7 +52375,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3081597222222222, + "max": 0.3090277777777778 + }, "related_data": {} } } @@ -44410,7 +52389,7 @@ { "Scanner类的构造函数": { "data": { - "uuid": "java-4-745", + "uuid": "java-4-756", "seg": [ [ [ @@ -44420,12 +52399,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3090277777777778, + "max": 0.3092013888888889 + }, "related_data": { "qa": { "data_id": [ - "13_385891_423568", - "13_745371_793099" + "13_385891_423568@13", + "13_745371_793099@13" ] } } @@ -44435,7 +52417,7 @@ { "扫描的基础知识": { "data": { - "uuid": "java-4-746", + "uuid": "java-4-757", "seg": [ [ [ @@ -44444,7 +52426,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3092013888888889, + "max": 0.309375 + }, "related_data": {} } } @@ -44452,7 +52437,7 @@ { "一些Scanner示例": { "data": { - "uuid": "java-4-747", + "uuid": "java-4-758", "seg": [ [ [ @@ -44461,20 +52446,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.309375, + "max": 0.3095486111111111 + }, "related_data": { "qa": { "data_id": [ - "13_208459_144476", - "13_249927_246509", - "13_7456440_53440207", - "13_7450331_53430877", - "13_203158_129519", - "13_346091_351061", - "13_4646868_29330790", - "13_669030_489910", - "13_170370_46780", - "13_7424812_53386008" + "13_208459_144476@13", + "13_249927_246509@13", + "13_7456440_53440207@13", + "13_7450331_53430877@13", + "13_203158_129519@13", + "13_346091_351061@13", + "13_4646868_29330790@13", + "13_669030_489910@13", + "13_170370_46780@13", + "13_7424812_53386008@13" ] } } @@ -44484,7 +52472,7 @@ { "设置定界符": { "data": { - "uuid": "java-4-748", + "uuid": "java-4-759", "seg": [ [ [ @@ -44493,7 +52481,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3095486111111111, + "max": 0.30972222222222223 + }, "related_data": {} } } @@ -44501,7 +52492,7 @@ { "其他Scanner特性": { "data": { - "uuid": "java-4-749", + "uuid": "java-4-760", "seg": [ [ [ @@ -44510,14 +52501,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.30972222222222223, + "max": 0.3098958333333333 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-372", + "uuid": "java-3-365", "seg": [ [ [ @@ -44526,7 +52520,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3090277777777778, + "max": 0.3098958333333333 + }, "related_data": {} } } @@ -44534,7 +52531,7 @@ { "ResourceBundle、ListResourceBundle和": { "data": { - "uuid": "java-3-373", + "uuid": "java-3-366", "seg": [ [ [ @@ -44546,7 +52543,10 @@ [] ] ], - "level": "1", + "level": { + "min": 0.3098958333333333, + "max": 0.3107638888888889 + }, "related_data": {} } } @@ -44554,19 +52554,23 @@ { "其他实用工具类和接口": { "data": { - "uuid": "java-3-374", + "uuid": "java-3-367", "seg": [ [ [ "实用工具", - "类" + "类", + "实用工具类" ], [ "接口" ] ] ], - "level": "1", + "level": { + "min": 0.3107638888888889, + "max": 0.3116319444444444 + }, "related_data": {} } } @@ -44577,7 +52581,7 @@ { "java.util.concurrent、java.util.concurrent.atomic和java.util.concurrent.locks": { "data": { - "uuid": "java-4-750", + "uuid": "java-4-761", "seg": [ [ [ @@ -44599,11 +52603,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3116319444444444, + "max": 0.3117283950617284 + }, "related_data": { "qa": { "data_id": [ - "13_769947_831179" + "13_769947_831179@13" ] } } @@ -44613,7 +52620,7 @@ { "java.util.function": { "data": { - "uuid": "java-4-751", + "uuid": "java-4-762", "seg": [ [ [ @@ -44623,15 +52630,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3117283950617284, + "max": 0.3118248456790123 + }, "related_data": { "qa": { "data_id": [ - "13_650448_457214", - "13_7447886_53427842", - "13_765926_824997", - "13_372489_400353", - "13_1084522_1290929" + "13_650448_457214@13", + "13_7447886_53427842@13", + "13_765926_824997@13", + "13_372489_400353@13", + "13_1084522_1290929@13" ] } } @@ -44641,7 +52651,7 @@ { "java.util.jar": { "data": { - "uuid": "java-4-752", + "uuid": "java-4-763", "seg": [ [ [ @@ -44651,11 +52661,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3118248456790123, + "max": 0.3119212962962963 + }, "related_data": { "qa": { "data_id": [ - "13_975577_1132797" + "13_975577_1132797@13" ] } } @@ -44665,7 +52678,7 @@ { "java.util.logging": { "data": { - "uuid": "java-4-753", + "uuid": "java-4-764", "seg": [ [ [ @@ -44675,7 +52688,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3119212962962963, + "max": 0.31201774691358025 + }, "related_data": {} } } @@ -44683,7 +52699,7 @@ { "java.util.prefs": { "data": { - "uuid": "java-4-754", + "uuid": "java-4-765", "seg": [ [ [ @@ -44693,11 +52709,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31201774691358025, + "max": 0.31211419753086417 + }, "related_data": { "qa": { "data_id": [ - "13_652366_460474" + "13_652366_460474@13" ] } } @@ -44707,7 +52726,7 @@ { "java.util.regex": { "data": { - "uuid": "java-4-755", + "uuid": "java-4-766", "seg": [ [ [ @@ -44717,7 +52736,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31211419753086417, + "max": 0.31221064814814814 + }, "related_data": {} } } @@ -44725,7 +52747,7 @@ { "java.util.spi": { "data": { - "uuid": "java-4-756", + "uuid": "java-4-767", "seg": [ [ [ @@ -44735,11 +52757,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31221064814814814, + "max": 0.3123070987654321 + }, "related_data": { "qa": { "data_id": [ - "13_358467_377335" + "13_358467_377335@13" ] } } @@ -44749,7 +52774,7 @@ { "java.util.stream": { "data": { - "uuid": "java-4-757", + "uuid": "java-4-768", "seg": [ [ [ @@ -44759,7 +52784,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3123070987654321, + "max": 0.31240354938271603 + }, "related_data": {} } } @@ -44767,7 +52795,7 @@ { "java.util.zip": { "data": { - "uuid": "java-4-758", + "uuid": "java-4-769", "seg": [ [ [ @@ -44777,14 +52805,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31240354938271603, + "max": 0.3125 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-375", + "uuid": "java-3-368", "seg": [ [ [ @@ -44795,7 +52826,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3116319444444444, + "max": 0.3125 + }, "related_data": {} } } @@ -44813,11 +52847,15 @@ [ [ "实用工具", - "类" + "类", + "实用工具类" ] ] ], - "level": "1", + "level": { + "min": 0.296875, + "max": 0.3125 + }, "related_data": {} } } @@ -44828,7 +52866,7 @@ { "I/O类和接口": { "data": { - "uuid": "java-3-376", + "uuid": "java-3-369", "seg": [ [ [ @@ -44841,7 +52879,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3125, + "max": 0.31392045454545453 + }, "related_data": {} } } @@ -44852,7 +52893,7 @@ { "目录": { "data": { - "uuid": "java-4-759", + "uuid": "java-4-770", "seg": [ [ [ @@ -44860,12 +52901,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.31392045454545453, + "max": 0.3142755681818182 + }, "related_data": { "qa": { "data_id": [ - "13_747341_798498", - "13_770637_832591" + "13_747341_798498@13", + "13_770637_832591@13" ] } } @@ -44875,7 +52919,7 @@ { "使用FilenameFilter接口": { "data": { - "uuid": "java-4-760", + "uuid": "java-4-771", "seg": [ [ [ @@ -44884,7 +52928,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3142755681818182, + "max": 0.3146306818181818 + }, "related_data": {} } } @@ -44892,7 +52939,7 @@ { "listFiles方法": { "data": { - "uuid": "java-4-761", + "uuid": "java-4-772", "seg": [ [ [ @@ -44901,11 +52948,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3146306818181818, + "max": 0.31498579545454547 + }, "related_data": { "qa": { "data_id": [ - "13_743575_788147" + "13_743575_788147@13" ] } } @@ -44915,7 +52965,7 @@ { "创建目录": { "data": { - "uuid": "java-4-762", + "uuid": "java-4-773", "seg": [ [ [ @@ -44924,14 +52974,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.31498579545454547, + "max": 0.3153409090909091 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-377", + "uuid": "java-3-370", "seg": [ [ [ @@ -44940,7 +52993,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.31392045454545453, + "max": 0.3153409090909091 + }, "related_data": {} } } @@ -44948,7 +53004,7 @@ { "AutoCloseable、Closeable和Flushable接口": { "data": { - "uuid": "java-3-378", + "uuid": "java-3-371", "seg": [ [ [ @@ -44963,7 +53019,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3153409090909091, + "max": 0.31676136363636365 + }, "related_data": {} } } @@ -44971,7 +53030,7 @@ { "I/O异常": { "data": { - "uuid": "java-3-379", + "uuid": "java-3-372", "seg": [ [ [ @@ -44981,7 +53040,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.31676136363636365, + "max": 0.3181818181818182 + }, "related_data": {} } } @@ -44989,7 +53051,7 @@ { "关闭流的两种方式": { "data": { - "uuid": "java-3-380", + "uuid": "java-3-373", "seg": [ [ [ @@ -44999,7 +53061,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3181818181818182, + "max": 0.3196022727272727 + }, "related_data": {} } } @@ -45007,7 +53072,7 @@ { "流类": { "data": { - "uuid": "java-3-381", + "uuid": "java-3-374", "seg": [ [ [ @@ -45015,7 +53080,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3196022727272727, + "max": 0.3210227272727273 + }, "related_data": {} } } @@ -45026,7 +53094,7 @@ { "InputStream类": { "data": { - "uuid": "java-4-763", + "uuid": "java-4-774", "seg": [ [ [ @@ -45035,7 +53103,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3210227272727273, + "max": 0.3211410984848485 + }, "related_data": {} } } @@ -45043,7 +53114,7 @@ { "OutputStream类": { "data": { - "uuid": "java-4-764", + "uuid": "java-4-775", "seg": [ [ [ @@ -45052,7 +53123,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3211410984848485, + "max": 0.3212594696969697 + }, "related_data": {} } } @@ -45060,7 +53134,7 @@ { "FileInputStream类": { "data": { - "uuid": "java-4-765", + "uuid": "java-4-776", "seg": [ [ [ @@ -45069,12 +53143,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3212594696969697, + "max": 0.32137784090909094 + }, "related_data": { "qa": { "data_id": [ - "13_237090_216683", - "13_679235_525888" + "13_237090_216683@13", + "13_679235_525888@13" ] } } @@ -45084,7 +53161,7 @@ { "FileOutputStream类": { "data": { - "uuid": "java-4-766", + "uuid": "java-4-777", "seg": [ [ [ @@ -45093,11 +53170,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.32137784090909094, + "max": 0.32149621212121215 + }, "related_data": { "qa": { "data_id": [ - "13_235019_212945" + "13_235019_212945@13" ] } } @@ -45107,7 +53187,7 @@ { "ByteArrayInputStream类": { "data": { - "uuid": "java-4-767", + "uuid": "java-4-778", "seg": [ [ [ @@ -45116,7 +53196,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.32149621212121215, + "max": 0.32161458333333337 + }, "related_data": {} } } @@ -45124,7 +53207,7 @@ { "ByteArrayOutputStream类": { "data": { - "uuid": "java-4-768", + "uuid": "java-4-779", "seg": [ [ [ @@ -45133,7 +53216,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.32161458333333337, + "max": 0.3217329545454546 + }, "related_data": {} } } @@ -45141,17 +53227,21 @@ { "过滤的字节流": { "data": { - "uuid": "java-4-769", + "uuid": "java-4-780", "seg": [ [ [ "过滤", "字节", - "流" + "流", + "字节流" ] ] ], - "level": "2", + "level": { + "min": 0.3217329545454546, + "max": 0.32185132575757575 + }, "related_data": {} } } @@ -45159,17 +53249,21 @@ { "缓冲的字节流": { "data": { - "uuid": "java-4-770", + "uuid": "java-4-781", "seg": [ [ [ "缓冲", "字节", - "流" + "流", + "字节流" ] ] ], - "level": "2", + "level": { + "min": 0.32185132575757575, + "max": 0.32196969696969696 + }, "related_data": {} } } @@ -45177,7 +53271,7 @@ { "SequenceInputStream类": { "data": { - "uuid": "java-4-771", + "uuid": "java-4-782", "seg": [ [ [ @@ -45186,7 +53280,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.32196969696969696, + "max": 0.3220880681818182 + }, "related_data": {} } } @@ -45194,7 +53291,7 @@ { "PrintStream类": { "data": { - "uuid": "java-4-772", + "uuid": "java-4-783", "seg": [ [ [ @@ -45203,7 +53300,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3220880681818182, + "max": 0.3222064393939394 + }, "related_data": {} } } @@ -45211,7 +53311,7 @@ { "DataOutputStream和DataInputStream类": { "data": { - "uuid": "java-4-773", + "uuid": "java-4-784", "seg": [ [ [ @@ -45223,7 +53323,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3222064393939394, + "max": 0.3223248106060606 + }, "related_data": {} } } @@ -45231,7 +53334,7 @@ { "RandomAccessFile类": { "data": { - "uuid": "java-4-774", + "uuid": "java-4-785", "seg": [ [ [ @@ -45240,23 +53343,30 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3223248106060606, + "max": 0.3224431818181818 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-382", + "uuid": "java-3-375", "seg": [ [ [ "字节", - "流" + "流", + "字节流" ] ] ], - "level": "2", + "level": { + "min": 0.3210227272727273, + "max": 0.3224431818181818 + }, "related_data": {} } } @@ -45267,7 +53377,7 @@ { "Reader类": { "data": { - "uuid": "java-4-775", + "uuid": "java-4-786", "seg": [ [ [ @@ -45276,7 +53386,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3224431818181818, + "max": 0.32258522727272726 + }, "related_data": {} } } @@ -45284,7 +53397,7 @@ { "Writer类": { "data": { - "uuid": "java-4-776", + "uuid": "java-4-787", "seg": [ [ [ @@ -45293,7 +53406,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.32258522727272726, + "max": 0.32272727272727275 + }, "related_data": {} } } @@ -45301,7 +53417,7 @@ { "FileReader类": { "data": { - "uuid": "java-4-777", + "uuid": "java-4-788", "seg": [ [ [ @@ -45310,12 +53426,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.32272727272727275, + "max": 0.3228693181818182 + }, "related_data": { "qa": { "data_id": [ - "13_691136_563017", - "13_668102_487974" + "13_691136_563017@13", + "13_668102_487974@13" ] } } @@ -45325,7 +53444,7 @@ { "FileWriter类": { "data": { - "uuid": "java-4-778", + "uuid": "java-4-789", "seg": [ [ [ @@ -45334,7 +53453,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3228693181818182, + "max": 0.3230113636363636 + }, "related_data": {} } } @@ -45342,7 +53464,7 @@ { "CharArrayReader类": { "data": { - "uuid": "java-4-779", + "uuid": "java-4-790", "seg": [ [ [ @@ -45351,11 +53473,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3230113636363636, + "max": 0.32315340909090906 + }, "related_data": { "qa": { "data_id": [ - "13_696020_579224" + "13_696020_579224@13" ] } } @@ -45365,7 +53490,7 @@ { "CharArrayWriter类": { "data": { - "uuid": "java-4-780", + "uuid": "java-4-791", "seg": [ [ [ @@ -45374,7 +53499,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.32315340909090906, + "max": 0.32329545454545455 + }, "related_data": {} } } @@ -45382,7 +53510,7 @@ { "BufferedReader类": { "data": { - "uuid": "java-4-781", + "uuid": "java-4-792", "seg": [ [ [ @@ -45391,11 +53519,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.32329545454545455, + "max": 0.3234375 + }, "related_data": { "qa": { "data_id": [ - "13_929819_1064684" + "13_929819_1064684@13" ] } } @@ -45405,7 +53536,7 @@ { "BufferedWriter类": { "data": { - "uuid": "java-4-782", + "uuid": "java-4-793", "seg": [ [ [ @@ -45414,16 +53545,19 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3234375, + "max": 0.3235795454545454 + }, "related_data": { "qa": { "data_id": [ - "13_201845_125889", - "13_364203_385619", - "13_221849_176658", - "13_200164_120355", - "13_155604_18324", - "13_760080_816629" + "13_201845_125889@13", + "13_364203_385619@13", + "13_221849_176658@13", + "13_200164_120355@13", + "13_155604_18324@13", + "13_760080_816629@13" ] } } @@ -45433,7 +53567,7 @@ { "PushbackReader类": { "data": { - "uuid": "java-4-783", + "uuid": "java-4-794", "seg": [ [ [ @@ -45442,7 +53576,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3235795454545454, + "max": 0.3237215909090909 + }, "related_data": {} } } @@ -45450,7 +53587,7 @@ { "PrintWriter类": { "data": { - "uuid": "java-4-784", + "uuid": "java-4-795", "seg": [ [ [ @@ -45459,30 +53596,30 @@ ] ] ], - "level": "2", - "related_data": { - "qa": { - "data_id": [ - "13_226170_188292", - "13_351247_360691" - ] - } - } + "level": { + "min": 0.3237215909090909, + "max": 0.32386363636363635 + }, + "related_data": {} } } } ], "data": { - "uuid": "java-3-383", + "uuid": "java-3-376", "seg": [ [ [ "字符", - "流" + "流", + "字符流" ] ] ], - "level": "2", + "level": { + "min": 0.3224431818181818, + "max": 0.32386363636363635 + }, "related_data": {} } } @@ -45490,7 +53627,7 @@ { "Console类": { "data": { - "uuid": "java-3-384", + "uuid": "java-3-377", "seg": [ [ [ @@ -45499,11 +53636,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.32386363636363635, + "max": 0.3252840909090909 + }, "related_data": { "qa": { "data_id": [ - "13_680085_528985" + "13_680085_528985@13" ] } } @@ -45516,7 +53656,7 @@ { "Serializable接口": { "data": { - "uuid": "java-4-785", + "uuid": "java-4-796", "seg": [ [ [ @@ -45525,12 +53665,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3252840909090909, + "max": 0.325487012987013 + }, "related_data": { "qa": { "data_id": [ - "13_221787_176547", - "13_648581_453183" + "13_221787_176547@13", + "13_648581_453183@13" ] } } @@ -45540,7 +53683,7 @@ { "Externalizable接口": { "data": { - "uuid": "java-4-786", + "uuid": "java-4-797", "seg": [ [ [ @@ -45549,7 +53692,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.325487012987013, + "max": 0.32568993506493504 + }, "related_data": {} } } @@ -45557,7 +53703,7 @@ { "ObjectOutput接口": { "data": { - "uuid": "java-4-787", + "uuid": "java-4-798", "seg": [ [ [ @@ -45566,7 +53712,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.32568993506493504, + "max": 0.32589285714285715 + }, "related_data": {} } } @@ -45574,7 +53723,7 @@ { "ObjectOutputStream类": { "data": { - "uuid": "java-4-788", + "uuid": "java-4-799", "seg": [ [ [ @@ -45583,12 +53732,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.32589285714285715, + "max": 0.3260957792207792 + }, "related_data": { "qa": { "data_id": [ - "13_673489_501575", - "13_7437607_53410970" + "13_673489_501575@13", + "13_7437607_53410970@13" ] } } @@ -45598,7 +53750,7 @@ { "ObjectInput接口": { "data": { - "uuid": "java-4-789", + "uuid": "java-4-800", "seg": [ [ [ @@ -45607,7 +53759,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3260957792207792, + "max": 0.3262987012987013 + }, "related_data": {} } } @@ -45615,7 +53770,7 @@ { "ObjectInputStream类": { "data": { - "uuid": "java-4-790", + "uuid": "java-4-801", "seg": [ [ [ @@ -45624,7 +53779,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3262987012987013, + "max": 0.32650162337662336 + }, "related_data": {} } } @@ -45632,23 +53790,27 @@ { "串行化示例": { "data": { - "uuid": "java-4-791", + "uuid": "java-4-802", "seg": [ [ [ "串行化", - "示例" + "示例", + "串行化示例" ] ] ], - "level": "2", + "level": { + "min": 0.32650162337662336, + "max": 0.32670454545454547 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-385", + "uuid": "java-3-378", "seg": [ [ [ @@ -45656,7 +53818,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3252840909090909, + "max": 0.32670454545454547 + }, "related_data": {} } } @@ -45664,7 +53829,7 @@ { "流的优点": { "data": { - "uuid": "java-3-386", + "uuid": "java-3-379", "seg": [ [ [ @@ -45673,7 +53838,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.32670454545454547, + "max": 0.328125 + }, "related_data": {} } } @@ -45696,7 +53864,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3125, + "max": 0.328125 + }, "related_data": {} } } @@ -45707,7 +53878,7 @@ { "NIO类": { "data": { - "uuid": "java-3-387", + "uuid": "java-3-380", "seg": [ [ [ @@ -45716,7 +53887,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.328125, + "max": 0.33125 + }, "related_data": {} } } @@ -45727,7 +53901,7 @@ { "缓冲区": { "data": { - "uuid": "java-4-792", + "uuid": "java-4-803", "seg": [ [ [ @@ -45735,7 +53909,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.33125, + "max": 0.33229166666666665 + }, "related_data": {} } } @@ -45743,7 +53920,7 @@ { "通道": { "data": { - "uuid": "java-4-793", + "uuid": "java-4-804", "seg": [ [ [ @@ -45751,7 +53928,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.33229166666666665, + "max": 0.3333333333333333 + }, "related_data": {} } } @@ -45759,7 +53939,7 @@ { "字符集和选择器": { "data": { - "uuid": "java-4-794", + "uuid": "java-4-805", "seg": [ [ [ @@ -45770,14 +53950,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3333333333333333, + "max": 0.334375 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-388", + "uuid": "java-3-381", "seg": [ [ [ @@ -45786,7 +53969,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.33125, + "max": 0.334375 + }, "related_data": {} } } @@ -45797,7 +53983,7 @@ { "Path接口": { "data": { - "uuid": "java-4-795", + "uuid": "java-4-806", "seg": [ [ [ @@ -45806,7 +53992,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.334375, + "max": 0.33499999999999996 + }, "related_data": {} } } @@ -45814,7 +54003,7 @@ { "Files类": { "data": { - "uuid": "java-4-796", + "uuid": "java-4-807", "seg": [ [ [ @@ -45823,7 +54012,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.33499999999999996, + "max": 0.335625 + }, "related_data": {} } } @@ -45831,7 +54023,7 @@ { "Path接口": { "data": { - "uuid": "java-4-797", + "uuid": "java-4-808", "seg": [ [ [ @@ -45840,7 +54032,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.335625, + "max": 0.33625 + }, "related_data": {} } } @@ -45848,7 +54043,7 @@ { "文件属性接口": { "data": { - "uuid": "java-4-798", + "uuid": "java-4-809", "seg": [ [ [ @@ -45857,7 +54052,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.33625, + "max": 0.33687500000000004 + }, "related_data": {} } } @@ -45865,7 +54063,7 @@ { "FileSystem、FileSystems和FileStore类": { "data": { - "uuid": "java-4-799", + "uuid": "java-4-810", "seg": [ [ [ @@ -45880,14 +54078,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.33687500000000004, + "max": 0.3375 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-389", + "uuid": "java-3-382", "seg": [ [ [ @@ -45897,7 +54098,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.334375, + "max": 0.3375 + }, "related_data": {} } } @@ -45908,7 +54112,7 @@ { "为基于通道的I/O使用NIO": { "data": { - "uuid": "java-4-800", + "uuid": "java-4-811", "seg": [ [ [ @@ -45919,7 +54123,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3375, + "max": 0.3385416666666667 + }, "related_data": {} } } @@ -45927,7 +54134,7 @@ { "为基于流的I/O使用NIO": { "data": { - "uuid": "java-4-801", + "uuid": "java-4-812", "seg": [ [ [ @@ -45938,7 +54145,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3385416666666667, + "max": 0.33958333333333335 + }, "related_data": {} } } @@ -45946,7 +54156,7 @@ { "为路径和文件系统操作使用NIO": { "data": { - "uuid": "java-4-802", + "uuid": "java-4-813", "seg": [ [ [ @@ -45959,14 +54169,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.33958333333333335, + "max": 0.340625 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-390", + "uuid": "java-3-383", "seg": [ [ [ @@ -45975,7 +54188,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3375, + "max": 0.340625 + }, "related_data": {} } } @@ -45986,7 +54202,7 @@ { "读文件(JDK 7之前)": { "data": { - "uuid": "java-4-803", + "uuid": "java-4-814", "seg": [ [ [ @@ -45996,12 +54212,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.340625, + "max": 0.3421875 + }, "related_data": { "qa": { "data_id": [ - "13_750772_804076", - "13_7416176_53370120" + "13_750772_804076@13" ] } } @@ -46011,7 +54229,7 @@ { "写文件(JDK 7之前)": { "data": { - "uuid": "java-4-804", + "uuid": "java-4-815", "seg": [ [ [ @@ -46021,14 +54239,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3421875, + "max": 0.34375 + }, "related_data": { "qa": { "data_id": [ - "13_7397910_53343432", - "13_217176_165129", - "13_239787_223471", - "13_667810_487279" + "13_7397910_53343432@13", + "13_217176_165129@13", + "13_667810_487279@13" ] } } @@ -46037,7 +54257,7 @@ } ], "data": { - "uuid": "java-3-391", + "uuid": "java-3-384", "seg": [ [ [ @@ -46047,7 +54267,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.340625, + "max": 0.34375 + }, "related_data": {} } } @@ -46063,7 +54286,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.328125, + "max": 0.34375 + }, "related_data": {} } } @@ -46074,7 +54300,7 @@ { "联网的基础知识": { "data": { - "uuid": "java-3-392", + "uuid": "java-3-385", "seg": [ [ [ @@ -46083,7 +54309,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.34375, + "max": 0.3450520833333333 + }, "related_data": {} } } @@ -46091,19 +54320,23 @@ { "联网类和接口": { "data": { - "uuid": "java-3-393", + "uuid": "java-3-386", "seg": [ [ [ "联网", - "类" + "类", + "联网类" ], [ "接口" ] ] ], - "level": "2", + "level": { + "min": 0.3450520833333333, + "max": 0.3463541666666667 + }, "related_data": {} } } @@ -46114,23 +54347,27 @@ { "工厂方法": { "data": { - "uuid": "java-4-805", + "uuid": "java-4-816", "seg": [ [ [ "工厂", - "方法" + "方法", + "工厂方法" ] ] ], - "level": "2", + "level": { + "min": 0.3463541666666667, + "max": 0.34765625 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-394", + "uuid": "java-3-387", "seg": [ [ [ @@ -46139,7 +54376,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3463541666666667, + "max": 0.34765625 + }, "related_data": {} } } @@ -46147,7 +54387,7 @@ { "Inet4Address类和Inet6Address类": { "data": { - "uuid": "java-3-395", + "uuid": "java-3-388", "seg": [ [ [ @@ -46160,7 +54400,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.34765625, + "max": 0.3489583333333333 + }, "related_data": {} } } @@ -46168,7 +54411,7 @@ { "TCP/IP客户端套接字": { "data": { - "uuid": "java-3-396", + "uuid": "java-3-389", "seg": [ [ [ @@ -46176,19 +54419,38 @@ "ip", "客户端", "套", - "接字" + "接字", + "客户端套" ] ] ], - "level": "2", - "related_data": {} + "level": { + "min": 0.3489583333333333, + "max": 0.3502604166666667 + }, + "related_data": { + "qa": { + "data_id": [ + "13_28034_7818@13", + "13_7445779_53424609@13", + "13_202634_127897@13", + "13_243288_231936@13", + "13_7443225_53421007@13", + "13_26105_7165@13", + "13_671598_495682@13", + "13_7464608_53451094@13", + "13_159444_24936@13", + "13_7462113_53447547@13" + ] + } + } } } }, { "URL类": { "data": { - "uuid": "java-3-397", + "uuid": "java-3-390", "seg": [ [ [ @@ -46197,7 +54459,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3502604166666667, + "max": 0.3515625 + }, "related_data": {} } } @@ -46205,7 +54470,7 @@ { "URLConnection类": { "data": { - "uuid": "java-3-398", + "uuid": "java-3-391", "seg": [ [ [ @@ -46214,7 +54479,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3515625, + "max": 0.3528645833333333 + }, "related_data": {} } } @@ -46222,7 +54490,7 @@ { "HttpURLConnection类": { "data": { - "uuid": "java-3-399", + "uuid": "java-3-392", "seg": [ [ [ @@ -46231,12 +54499,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3528645833333333, + "max": 0.3541666666666667 + }, "related_data": { "qa": { "data_id": [ - "13_243757_234683", - "13_356703_374698" + "13_243757_234683@13", + "13_356703_374698@13" ] } } @@ -46246,7 +54517,7 @@ { "URI类": { "data": { - "uuid": "java-3-400", + "uuid": "java-3-393", "seg": [ [ [ @@ -46255,7 +54526,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3541666666666667, + "max": 0.35546875 + }, "related_data": {} } } @@ -46263,7 +54537,7 @@ { "cookie": { "data": { - "uuid": "java-3-401", + "uuid": "java-3-394", "seg": [ [ [ @@ -46271,13 +54545,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.35546875, + "max": 0.3567708333333333 + }, "related_data": { "qa": { "data_id": [ - "13_151106_13506", - "13_744697_791184", - "13_227619_192026" + "13_151106_13506@13", + "13_744697_791184@13", + "13_227619_192026@13" ] } } @@ -46287,7 +54564,7 @@ { "TCP/IP服务器套接字": { "data": { - "uuid": "java-3-402", + "uuid": "java-3-395", "seg": [ [ [ @@ -46295,11 +54572,15 @@ "ip", "服务器", "套", - "接字" + "接字", + "服务器套" ] ] ], - "level": "2", + "level": { + "min": 0.3567708333333333, + "max": 0.3580729166666667 + }, "related_data": {} } } @@ -46310,7 +54591,7 @@ { "DatagramSocket类": { "data": { - "uuid": "java-4-806", + "uuid": "java-4-817", "seg": [ [ [ @@ -46319,7 +54600,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3580729166666667, + "max": 0.3585069444444445 + }, "related_data": {} } } @@ -46327,7 +54611,7 @@ { "DatagramPacket类": { "data": { - "uuid": "java-4-807", + "uuid": "java-4-818", "seg": [ [ [ @@ -46336,7 +54620,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3585069444444445, + "max": 0.3589409722222222 + }, "related_data": {} } } @@ -46344,28 +54631,33 @@ { "数据报示例": { "data": { - "uuid": "java-4-808", + "uuid": "java-4-819", "seg": [ [ [ "数据", "报", - "示例" + "示例", + "数据报", + "报示例" ] ] ], - "level": "2", + "level": { + "min": 0.3589409722222222, + "max": 0.359375 + }, "related_data": { "qa": { "data_id": [ - "13_245715_236523", - "13_7429929_53396926", - "13_647819_451621", - "13_678588_832603", - "13_186063_79505", - "13_1049757_1247164", - "13_1053342_1250665", - "13_359085_856845" + "13_245715_236523@13", + "13_7429929_53396926@13", + "13_647819_451621@13", + "13_678588_832603@13", + "13_186063_79505@13", + "13_1049757_1247164@13", + "13_1053342_1250665@13", + "13_359085_856845@13" ] } } @@ -46374,16 +54666,20 @@ } ], "data": { - "uuid": "java-3-403", + "uuid": "java-3-396", "seg": [ [ [ "数据", - "报" + "报", + "数据报" ] ] ], - "level": "2", + "level": { + "min": 0.3580729166666667, + "max": 0.359375 + }, "related_data": {} } } @@ -46398,7 +54694,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.34375, + "max": 0.359375 + }, "related_data": {} } } @@ -46409,7 +54708,7 @@ { "applet的两种类型": { "data": { - "uuid": "java-3-404", + "uuid": "java-3-397", "seg": [ [ [ @@ -46418,7 +54717,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.359375, + "max": 0.36049107142857145 + }, "related_data": {} } } @@ -46426,7 +54728,7 @@ { "applet的基础知识": { "data": { - "uuid": "java-3-405", + "uuid": "java-3-398", "seg": [ [ [ @@ -46435,7 +54737,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.36049107142857145, + "max": 0.36160714285714285 + }, "related_data": {} } } @@ -46443,7 +54748,7 @@ { "applet的架构": { "data": { - "uuid": "java-3-406", + "uuid": "java-3-399", "seg": [ [ [ @@ -46452,7 +54757,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.36160714285714285, + "max": 0.3627232142857143 + }, "related_data": {} } } @@ -46463,7 +54771,7 @@ { "applet的初始化和终止": { "data": { - "uuid": "java-4-809", + "uuid": "java-4-820", "seg": [ [ [ @@ -46475,16 +54783,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3627232142857143, + "max": 0.36328125 + }, "related_data": { "qa": { "data_id": [ - "13_178100_61942", - "13_7435444_53406026", - "13_665960_511560", - "13_188819_86489", - "13_349464_357207", - "13_218469_168059" + "13_178100_61942@13", + "13_7435444_53406026@13", + "13_665960_511560@13", + "13_188819_86489@13", + "13_349464_357207@13", + "13_218469_168059@13" ] } } @@ -46494,7 +54805,7 @@ { "重写update方法": { "data": { - "uuid": "java-4-810", + "uuid": "java-4-821", "seg": [ [ [ @@ -46504,14 +54815,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.36328125, + "max": 0.3638392857142857 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-407", + "uuid": "java-3-400", "seg": [ [ [ @@ -46520,7 +54834,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3627232142857143, + "max": 0.3638392857142857 + }, "related_data": {} } } @@ -46528,7 +54845,7 @@ { "简单的applet显示方法": { "data": { - "uuid": "java-3-408", + "uuid": "java-3-401", "seg": [ [ [ @@ -46538,7 +54855,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3638392857142857, + "max": 0.36495535714285715 + }, "related_data": {} } } @@ -46546,7 +54866,7 @@ { "请求重画": { "data": { - "uuid": "java-3-409", + "uuid": "java-3-402", "seg": [ [ [ @@ -46554,7 +54874,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.36495535714285715, + "max": 0.36607142857142855 + }, "related_data": {} } } @@ -46562,16 +54885,20 @@ { "使用状态栏窗口": { "data": { - "uuid": "java-3-410", + "uuid": "java-3-403", "seg": [ [ [ "状态栏", - "窗口" + "窗口", + "状态栏窗口" ] ] ], - "level": "1", + "level": { + "min": 0.36607142857142855, + "max": 0.3671875 + }, "related_data": {} } } @@ -46579,7 +54906,7 @@ { "HTML APPLET标记": { "data": { - "uuid": "java-3-411", + "uuid": "java-3-404", "seg": [ [ [ @@ -46589,7 +54916,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3671875, + "max": 0.36830357142857145 + }, "related_data": {} } } @@ -46597,7 +54927,7 @@ { "向applet传递参数": { "data": { - "uuid": "java-3-412", + "uuid": "java-3-405", "seg": [ [ [ @@ -46607,7 +54937,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.36830357142857145, + "max": 0.36941964285714285 + }, "related_data": {} } } @@ -46615,7 +54948,7 @@ { "getDocumentBase和getCodeBase": { "data": { - "uuid": "java-3-413", + "uuid": "java-3-406", "seg": [ [ [ @@ -46626,7 +54959,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.36941964285714285, + "max": 0.3705357142857143 + }, "related_data": {} } } @@ -46634,7 +54970,7 @@ { "AppletContext接口和showDocument方法": { "data": { - "uuid": "java-3-414", + "uuid": "java-3-407", "seg": [ [ [ @@ -46647,7 +54983,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3705357142857143, + "max": 0.3716517857142857 + }, "related_data": {} } } @@ -46655,7 +54994,7 @@ { "AudioClip接口": { "data": { - "uuid": "java-3-415", + "uuid": "java-3-408", "seg": [ [ [ @@ -46664,7 +55003,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3716517857142857, + "max": 0.37276785714285715 + }, "related_data": {} } } @@ -46672,7 +55014,7 @@ { "AppletStub接口": { "data": { - "uuid": "java-3-416", + "uuid": "java-3-409", "seg": [ [ [ @@ -46681,7 +55023,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.37276785714285715, + "max": 0.37388392857142855 + }, "related_data": {} } } @@ -46689,7 +55034,7 @@ { "向控制台输出": { "data": { - "uuid": "java-3-417", + "uuid": "java-3-410", "seg": [ [ [ @@ -46698,11 +55043,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.37388392857142855, + "max": 0.375 + }, "related_data": { "qa": { "data_id": [ - "13_657482_470065" + "13_657482_470065@13" ] } } @@ -46720,7 +55068,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.359375, + "max": 0.375 + }, "related_data": {} } } @@ -46731,7 +55082,7 @@ { "两种事件处理机制": { "data": { - "uuid": "java-3-418", + "uuid": "java-3-411", "seg": [ [ [ @@ -46740,7 +55091,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.375, + "max": 0.376953125 + }, "related_data": {} } } @@ -46751,7 +55105,7 @@ { "事件": { "data": { - "uuid": "java-4-811", + "uuid": "java-4-822", "seg": [ [ [ @@ -46759,30 +55113,31 @@ ] ] ], - "level": "2", - "related_data": { - "qa": { - "data_id": [ - "13_221307_175188" - ] - } - } + "level": { + "min": 0.376953125, + "max": 0.3776041666666667 + }, + "related_data": {} } } }, { "事件源": { "data": { - "uuid": "java-4-812", + "uuid": "java-4-823", "seg": [ [ [ "事件", - "源" + "源", + "事件源" ] ] ], - "level": "2", + "level": { + "min": 0.3776041666666667, + "max": 0.3782552083333333 + }, "related_data": {} } } @@ -46790,33 +55145,42 @@ { "事件监听器": { "data": { - "uuid": "java-4-813", + "uuid": "java-4-824", "seg": [ [ [ "事件", - "监听器" + "监听器", + "事件监听器" ] ] ], - "level": "2", + "level": { + "min": 0.3782552083333333, + "max": 0.37890625 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-419", + "uuid": "java-3-412", "seg": [ [ [ "委托", "事件", - "模型" + "模型", + "委托事件", + "事件模型" ] ] ], - "level": "2", + "level": { + "min": 0.376953125, + "max": 0.37890625 + }, "related_data": {} } } @@ -46827,7 +55191,7 @@ { "ActionEvent类": { "data": { - "uuid": "java-4-814", + "uuid": "java-4-825", "seg": [ [ [ @@ -46836,7 +55200,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.37890625, + "max": 0.3790690104166667 + }, "related_data": {} } } @@ -46844,7 +55211,7 @@ { "AdjustmentEvent类": { "data": { - "uuid": "java-4-815", + "uuid": "java-4-826", "seg": [ [ [ @@ -46853,7 +55220,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3790690104166667, + "max": 0.3792317708333333 + }, "related_data": {} } } @@ -46861,7 +55231,7 @@ { "ComponentEvent类": { "data": { - "uuid": "java-4-816", + "uuid": "java-4-827", "seg": [ [ [ @@ -46870,7 +55240,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3792317708333333, + "max": 0.37939453125 + }, "related_data": {} } } @@ -46878,7 +55251,7 @@ { "ContainerEvent类": { "data": { - "uuid": "java-4-817", + "uuid": "java-4-828", "seg": [ [ [ @@ -46887,7 +55260,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.37939453125, + "max": 0.3795572916666667 + }, "related_data": {} } } @@ -46895,7 +55271,7 @@ { "FocusEvent类": { "data": { - "uuid": "java-4-818", + "uuid": "java-4-829", "seg": [ [ [ @@ -46904,7 +55280,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3795572916666667, + "max": 0.3797200520833333 + }, "related_data": {} } } @@ -46912,7 +55291,7 @@ { "InputEvent类": { "data": { - "uuid": "java-4-819", + "uuid": "java-4-830", "seg": [ [ [ @@ -46921,7 +55300,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3797200520833333, + "max": 0.3798828125 + }, "related_data": {} } } @@ -46929,7 +55311,7 @@ { "ItemEvent类": { "data": { - "uuid": "java-4-820", + "uuid": "java-4-831", "seg": [ [ [ @@ -46938,7 +55320,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3798828125, + "max": 0.3800455729166667 + }, "related_data": {} } } @@ -46946,7 +55331,7 @@ { "KeyEvent类": { "data": { - "uuid": "java-4-821", + "uuid": "java-4-832", "seg": [ [ [ @@ -46955,7 +55340,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3800455729166667, + "max": 0.3802083333333333 + }, "related_data": {} } } @@ -46963,7 +55351,7 @@ { "MouseEvent类": { "data": { - "uuid": "java-4-822", + "uuid": "java-4-833", "seg": [ [ [ @@ -46972,11 +55360,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3802083333333333, + "max": 0.38037109375 + }, "related_data": { "qa": { "data_id": [ - "13_346367_351556" + "13_346367_351556@13" ] } } @@ -46986,7 +55377,7 @@ { "MouseWheelEvent类": { "data": { - "uuid": "java-4-823", + "uuid": "java-4-834", "seg": [ [ [ @@ -46995,7 +55386,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.38037109375, + "max": 0.3805338541666667 + }, "related_data": {} } } @@ -47003,7 +55397,7 @@ { "TextEvent类": { "data": { - "uuid": "java-4-824", + "uuid": "java-4-835", "seg": [ [ [ @@ -47012,7 +55406,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3805338541666667, + "max": 0.3806966145833333 + }, "related_data": {} } } @@ -47020,7 +55417,7 @@ { "WindowEvent类": { "data": { - "uuid": "java-4-825", + "uuid": "java-4-836", "seg": [ [ [ @@ -47029,23 +55426,30 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3806966145833333, + "max": 0.380859375 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-420", + "uuid": "java-3-413", "seg": [ [ [ "事件", - "类" + "类", + "事件类" ] ] ], - "level": "2", + "level": { + "min": 0.37890625, + "max": 0.380859375 + }, "related_data": {} } } @@ -47053,16 +55457,20 @@ { "事件源": { "data": { - "uuid": "java-3-421", + "uuid": "java-3-414", "seg": [ [ [ "事件", - "源" + "源", + "事件源" ] ] ], - "level": "2", + "level": { + "min": 0.380859375, + "max": 0.3828125 + }, "related_data": {} } } @@ -47073,7 +55481,7 @@ { "ActionListener接口": { "data": { - "uuid": "java-4-826", + "uuid": "java-4-837", "seg": [ [ [ @@ -47082,12 +55490,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3828125, + "max": 0.38296274038461536 + }, "related_data": { "qa": { "data_id": [ - "13_1095035_1305834", - "13_643048_442898" + "13_1095035_1305834@13", + "13_643048_442898@13" ] } } @@ -47097,7 +55508,7 @@ { "AdjustmentListener接口": { "data": { - "uuid": "java-4-827", + "uuid": "java-4-838", "seg": [ [ [ @@ -47106,7 +55517,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.38296274038461536, + "max": 0.3831129807692308 + }, "related_data": {} } } @@ -47114,7 +55528,7 @@ { "ComponentListener接口": { "data": { - "uuid": "java-4-828", + "uuid": "java-4-839", "seg": [ [ [ @@ -47123,7 +55537,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3831129807692308, + "max": 0.38326322115384615 + }, "related_data": {} } } @@ -47131,7 +55548,7 @@ { "ContainerListener接口": { "data": { - "uuid": "java-4-829", + "uuid": "java-4-840", "seg": [ [ [ @@ -47140,7 +55557,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.38326322115384615, + "max": 0.38341346153846156 + }, "related_data": {} } } @@ -47148,7 +55568,7 @@ { "FocusListener接口": { "data": { - "uuid": "java-4-830", + "uuid": "java-4-841", "seg": [ [ [ @@ -47157,7 +55577,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.38341346153846156, + "max": 0.3835637019230769 + }, "related_data": {} } } @@ -47165,7 +55588,7 @@ { "ItemListener接口": { "data": { - "uuid": "java-4-831", + "uuid": "java-4-842", "seg": [ [ [ @@ -47174,7 +55597,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3835637019230769, + "max": 0.3837139423076923 + }, "related_data": {} } } @@ -47182,7 +55608,7 @@ { "KeyListener接口": { "data": { - "uuid": "java-4-832", + "uuid": "java-4-843", "seg": [ [ [ @@ -47191,11 +55617,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3837139423076923, + "max": 0.3838641826923077 + }, "related_data": { "qa": { "data_id": [ - "13_351966_362225" + "13_351966_362225@13" ] } } @@ -47205,7 +55634,7 @@ { "MouseListener接口": { "data": { - "uuid": "java-4-833", + "uuid": "java-4-844", "seg": [ [ [ @@ -47214,7 +55643,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3838641826923077, + "max": 0.3840144230769231 + }, "related_data": {} } } @@ -47222,7 +55654,7 @@ { "MouseMotionListener接口": { "data": { - "uuid": "java-4-834", + "uuid": "java-4-845", "seg": [ [ [ @@ -47231,7 +55663,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3840144230769231, + "max": 0.38416466346153844 + }, "related_data": {} } } @@ -47239,7 +55674,7 @@ { "MouseWheelListener接口": { "data": { - "uuid": "java-4-835", + "uuid": "java-4-846", "seg": [ [ [ @@ -47248,7 +55683,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.38416466346153844, + "max": 0.38431490384615385 + }, "related_data": {} } } @@ -47256,7 +55694,7 @@ { "TextListener接口": { "data": { - "uuid": "java-4-836", + "uuid": "java-4-847", "seg": [ [ [ @@ -47265,7 +55703,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.38431490384615385, + "max": 0.3844651442307692 + }, "related_data": {} } } @@ -47273,7 +55714,7 @@ { "WindowFocusListener接口": { "data": { - "uuid": "java-4-837", + "uuid": "java-4-848", "seg": [ [ [ @@ -47282,7 +55723,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3844651442307692, + "max": 0.38461538461538464 + }, "related_data": {} } } @@ -47290,7 +55734,7 @@ { "WindowListener接口": { "data": { - "uuid": "java-4-838", + "uuid": "java-4-849", "seg": [ [ [ @@ -47299,24 +55743,31 @@ ] ] ], - "level": "2", + "level": { + "min": 0.38461538461538464, + "max": 0.384765625 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-422", + "uuid": "java-3-415", "seg": [ [ [ "事件", "监听器", - "接口" + "接口", + "事件监听器" ] ] ], - "level": "2", + "level": { + "min": 0.3828125, + "max": 0.384765625 + }, "related_data": {} } } @@ -47327,16 +55778,20 @@ { "处理鼠标事件": { "data": { - "uuid": "java-4-839", + "uuid": "java-4-850", "seg": [ [ [ "鼠标", - "事件" + "事件", + "鼠标事件" ] ] ], - "level": "2", + "level": { + "min": 0.384765625, + "max": 0.3857421875 + }, "related_data": {} } } @@ -47344,33 +55799,42 @@ { "处理键盘事件": { "data": { - "uuid": "java-4-840", + "uuid": "java-4-851", "seg": [ [ [ "键盘", - "事件" + "事件", + "键盘事件" ] ] ], - "level": "2", + "level": { + "min": 0.3857421875, + "max": 0.38671875 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-423", + "uuid": "java-3-416", "seg": [ [ [ "委托", "事件", - "模型" + "模型", + "委托事件", + "事件模型" ] ] ], - "level": "2", + "level": { + "min": 0.384765625, + "max": 0.38671875 + }, "related_data": {} } } @@ -47378,16 +55842,20 @@ { "适配器类": { "data": { - "uuid": "java-3-424", + "uuid": "java-3-417", "seg": [ [ [ "适配器", - "类" + "类", + "适配器类" ] ] ], - "level": "1", + "level": { + "min": 0.38671875, + "max": 0.388671875 + }, "related_data": {} } } @@ -47395,20 +55863,24 @@ { "内部类": { "data": { - "uuid": "java-3-425", + "uuid": "java-3-418", "seg": [ [ [ "内部", - "类" + "类", + "内部类" ] ] ], - "level": "1", + "level": { + "min": 0.388671875, + "max": 0.390625 + }, "related_data": { "qa": { "data_id": [ - "13_273875_300118" + "13_273875_300118@13" ] } } @@ -47425,7 +55897,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.375, + "max": 0.390625 + }, "related_data": {} } } @@ -47436,7 +55911,7 @@ { "AWT类": { "data": { - "uuid": "java-3-426", + "uuid": "java-3-419", "seg": [ [ [ @@ -47445,7 +55920,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.390625, + "max": 0.39204545454545453 + }, "related_data": {} } } @@ -47456,7 +55934,7 @@ { "Component类": { "data": { - "uuid": "java-4-841", + "uuid": "java-4-852", "seg": [ [ [ @@ -47465,12 +55943,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.39204545454545453, + "max": 0.39228219696969696 + }, "related_data": { "qa": { "data_id": [ - "13_7451636_53434534", - "13_1092156_1300223" + "13_7451636_53434534@13", + "13_1092156_1300223@13" ] } } @@ -47480,7 +55961,7 @@ { "Container类": { "data": { - "uuid": "java-4-842", + "uuid": "java-4-853", "seg": [ [ [ @@ -47489,7 +55970,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.39228219696969696, + "max": 0.3925189393939394 + }, "related_data": {} } } @@ -47497,7 +55981,7 @@ { "Panel类": { "data": { - "uuid": "java-4-843", + "uuid": "java-4-854", "seg": [ [ [ @@ -47506,12 +55990,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3925189393939394, + "max": 0.3927556818181818 + }, "related_data": { "qa": { "data_id": [ - "13_7404873_53354080", - "13_652798_460835" + "13_7404873_53354080@13", + "13_652798_460835@13" ] } } @@ -47521,7 +56008,7 @@ { "Window类": { "data": { - "uuid": "java-4-844", + "uuid": "java-4-855", "seg": [ [ [ @@ -47530,13 +56017,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3927556818181818, + "max": 0.39299242424242425 + }, "related_data": { "qa": { "data_id": [ - "13_717104_710257", - "13_201083_123207", - "13_768672_828941" + "13_717104_710257@13", + "13_201083_123207@13", + "13_768672_828941@13" ] } } @@ -47546,7 +56036,7 @@ { "Frame类": { "data": { - "uuid": "java-4-845", + "uuid": "java-4-856", "seg": [ [ [ @@ -47555,12 +56045,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.39299242424242425, + "max": 0.3932291666666667 + }, "related_data": { "qa": { "data_id": [ - "13_691796_565164", - "13_690678_561299" + "13_691796_565164@13", + "13_690678_561299@13" ] } } @@ -47570,7 +56063,7 @@ { "Canvas类": { "data": { - "uuid": "java-4-846", + "uuid": "java-4-857", "seg": [ [ [ @@ -47579,23 +56072,30 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3932291666666667, + "max": 0.3934659090909091 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-427", + "uuid": "java-3-420", "seg": [ [ [ "窗口", - "元素" + "元素", + "基本元素" ] ] ], - "level": "2", + "level": { + "min": 0.39204545454545453, + "max": 0.3934659090909091 + }, "related_data": {} } } @@ -47606,7 +56106,7 @@ { "设置窗口的尺寸": { "data": { - "uuid": "java-4-847", + "uuid": "java-4-858", "seg": [ [ [ @@ -47616,15 +56116,18 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3934659090909091, + "max": 0.39382102272727276 + }, "related_data": { "qa": { "data_id": [ - "13_224802_184833", - "13_7417891_53373670", - "13_766695_826037", - "13_762574_820830", - "13_1091284_1298640" + "13_224802_184833@13", + "13_7417891_53373670@13", + "13_766695_826037@13", + "13_762574_820830@13", + "13_1091284_1298640@13" ] } } @@ -47634,7 +56137,7 @@ { "隐藏和显示窗口": { "data": { - "uuid": "java-4-848", + "uuid": "java-4-859", "seg": [ [ [ @@ -47646,16 +56149,19 @@ ] ] ], - "level": "2", + "level": { + "min": 0.39382102272727276, + "max": 0.39417613636363635 + }, "related_data": { "qa": { "data_id": [ - "13_197036_110856", - "13_25220_6707", - "13_1096714_1309254", - "13_160865_29085", - "13_846430_962506", - "13_7458509_53443128" + "13_197036_110856@13", + "13_25220_6707@13", + "13_1096714_1309254@13", + "13_160865_29085@13", + "13_846430_962506@13", + "13_7458509_53443128@13" ] } } @@ -47665,7 +56171,7 @@ { "设置窗口的标题": { "data": { - "uuid": "java-4-849", + "uuid": "java-4-860", "seg": [ [ [ @@ -47675,7 +56181,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.39417613636363635, + "max": 0.39453125 + }, "related_data": {} } } @@ -47683,21 +56192,25 @@ { "关闭框架窗口": { "data": { - "uuid": "java-4-850", + "uuid": "java-4-861", "seg": [ [ [ "关闭", "框架", - "窗口" + "窗口", + "框架窗口" ] ] ], - "level": "2", + "level": { + "min": 0.39453125, + "max": 0.39488636363636365 + }, "related_data": { "qa": { "data_id": [ - "13_7460202_53445263" + "13_7460202_53445263@13" ] } } @@ -47706,16 +56219,20 @@ } ], "data": { - "uuid": "java-3-428", + "uuid": "java-3-421", "seg": [ [ [ "框架", - "窗口" + "窗口", + "框架窗口" ] ] ], - "level": "2", + "level": { + "min": 0.3934659090909091, + "max": 0.39488636363636365 + }, "related_data": {} } } @@ -47723,7 +56240,7 @@ { "在基于AWT的applet中创建框架窗口": { "data": { - "uuid": "java-3-429", + "uuid": "java-3-422", "seg": [ [ [ @@ -47731,11 +56248,15 @@ "applet", "创建", "框架", - "窗口" + "窗口", + "框架窗口" ] ] ], - "level": "2", + "level": { + "min": 0.39488636363636365, + "max": 0.3963068181818182 + }, "related_data": {} } } @@ -47743,7 +56264,7 @@ { "创建基于窗口的程序": { "data": { - "uuid": "java-3-430", + "uuid": "java-3-423", "seg": [ [ [ @@ -47753,11 +56274,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3963068181818182, + "max": 0.3977272727272727 + }, "related_data": { "qa": { "data_id": [ - "13_766652_825974" + "13_766652_825974@13" ] } } @@ -47767,7 +56291,7 @@ { "在窗口中显示信息": { "data": { - "uuid": "java-3-431", + "uuid": "java-3-424", "seg": [ [ [ @@ -47776,7 +56300,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3977272727272727, + "max": 0.3991477272727273 + }, "related_data": {} } } @@ -47787,16 +56314,20 @@ { "绘制直线": { "data": { - "uuid": "java-4-851", + "uuid": "java-4-862", "seg": [ [ [ "绘制", - "直线" + "直线", + "绘制直线" ] ] ], - "level": "2", + "level": { + "min": 0.3991477272727273, + "max": 0.39935064935064934 + }, "related_data": {} } } @@ -47804,16 +56335,20 @@ { "绘制矩形": { "data": { - "uuid": "java-4-852", + "uuid": "java-4-863", "seg": [ [ [ "绘制", - "矩形" + "矩形", + "绘制矩形" ] ] ], - "level": "2", + "level": { + "min": 0.39935064935064934, + "max": 0.39955357142857145 + }, "related_data": {} } } @@ -47821,19 +56356,23 @@ { "绘制椭圆和圆": { "data": { - "uuid": "java-4-853", + "uuid": "java-4-864", "seg": [ [ [ "绘制", - "椭圆" + "椭圆", + "绘制椭圆" ], [ "圆" ] ] ], - "level": "2", + "level": { + "min": 0.39955357142857145, + "max": 0.3997564935064935 + }, "related_data": {} } } @@ -47841,16 +56380,20 @@ { "绘制弧形": { "data": { - "uuid": "java-4-854", + "uuid": "java-4-865", "seg": [ [ [ "绘制", - "弧形" + "弧形", + "绘制弧形" ] ] ], - "level": "2", + "level": { + "min": 0.3997564935064935, + "max": 0.3999594155844156 + }, "related_data": {} } } @@ -47858,16 +56401,20 @@ { "绘制多边形": { "data": { - "uuid": "java-4-855", + "uuid": "java-4-866", "seg": [ [ [ "绘制", - "多边形" + "多边形", + "绘制多边形" ] ] ], - "level": "2", + "level": { + "min": 0.3999594155844156, + "max": 0.40016233766233766 + }, "related_data": {} } } @@ -47875,17 +56422,21 @@ { "演示绘制方法": { "data": { - "uuid": "java-4-856", + "uuid": "java-4-867", "seg": [ [ [ "演示", "绘制", - "方法" + "方法", + "绘制方法" ] ] ], - "level": "2", + "level": { + "min": 0.40016233766233766, + "max": 0.40036525974025977 + }, "related_data": {} } } @@ -47893,7 +56444,7 @@ { "改变图形的大小": { "data": { - "uuid": "java-4-857", + "uuid": "java-4-868", "seg": [ [ [ @@ -47903,18 +56454,21 @@ ] ] ], - "level": "2", + "level": { + "min": 0.40036525974025977, + "max": 0.4005681818181818 + }, "related_data": { "qa": { "data_id": [ - "13_221340_175355", - "13_655605_466469", - "13_7465471_53452512", - "13_750646_803799", - "13_392065_435053", - "13_2606_4422", - "13_651237_458313", - "13_346592_352029" + "13_221340_175355@13", + "13_655605_466469@13", + "13_7465471_53452512@13", + "13_750646_803799@13", + "13_392065_435053@13", + "13_2606_4422@13", + "13_651237_458313@13", + "13_346592_352029@13" ] } } @@ -47923,7 +56477,7 @@ } ], "data": { - "uuid": "java-3-432", + "uuid": "java-3-425", "seg": [ [ [ @@ -47931,14 +56485,11 @@ ] ] ], - "level": "2", - "related_data": { - "qa": { - "data_id": [ - "13_699770_588018" - ] - } - } + "level": { + "min": 0.3991477272727273, + "max": 0.4005681818181818 + }, + "related_data": {} } } }, @@ -47948,7 +56499,7 @@ { "Color类的方法": { "data": { - "uuid": "java-4-858", + "uuid": "java-4-869", "seg": [ [ [ @@ -47958,7 +56509,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4005681818181818, + "max": 0.4010416666666667 + }, "related_data": {} } } @@ -47966,7 +56520,7 @@ { "设置当前图形的颜色": { "data": { - "uuid": "java-4-859", + "uuid": "java-4-870", "seg": [ [ [ @@ -47976,7 +56530,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4010416666666667, + "max": 0.4015151515151515 + }, "related_data": {} } } @@ -47984,7 +56541,7 @@ { "一个演示颜色的applet": { "data": { - "uuid": "java-4-860", + "uuid": "java-4-871", "seg": [ [ [ @@ -47994,11 +56551,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4015151515151515, + "max": 0.40198863636363635 + }, "related_data": { "qa": { "data_id": [ - "13_7453322_53436025" + "13_7453322_53436025@13" ] } } @@ -48007,7 +56567,7 @@ } ], "data": { - "uuid": "java-3-433", + "uuid": "java-3-426", "seg": [ [ [ @@ -48015,7 +56575,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4005681818181818, + "max": 0.40198863636363635 + }, "related_data": {} } } @@ -48023,17 +56586,21 @@ { "设置绘图模式": { "data": { - "uuid": "java-3-434", + "uuid": "java-3-427", "seg": [ [ [ "设置", "绘图", - "模式" + "模式", + "绘图模式" ] ] ], - "level": "2", + "level": { + "min": 0.40198863636363635, + "max": 0.4034090909090909 + }, "related_data": {} } } @@ -48044,7 +56611,7 @@ { "确定可用字体": { "data": { - "uuid": "java-4-861", + "uuid": "java-4-872", "seg": [ [ [ @@ -48053,7 +56620,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4034090909090909, + "max": 0.40388257575757575 + }, "related_data": {} } } @@ -48061,7 +56631,7 @@ { "创建和选择字体": { "data": { - "uuid": "java-4-862", + "uuid": "java-4-873", "seg": [ [ [ @@ -48073,7 +56643,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.40388257575757575, + "max": 0.4043560606060606 + }, "related_data": {} } } @@ -48081,24 +56654,28 @@ { "获取字体信息": { "data": { - "uuid": "java-4-863", + "uuid": "java-4-874", "seg": [ [ [ "获取", "字体", - "信息" + "信息", + "字体信息" ] ] ], - "level": "2", + "level": { + "min": 0.4043560606060606, + "max": 0.40482954545454547 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-435", + "uuid": "java-3-428", "seg": [ [ [ @@ -48106,7 +56683,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4034090909090909, + "max": 0.40482954545454547 + }, "related_data": {} } } @@ -48117,7 +56697,7 @@ { "显示多行文本": { "data": { - "uuid": "java-4-864", + "uuid": "java-4-875", "seg": [ [ [ @@ -48126,7 +56706,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.40482954545454547, + "max": 0.40530303030303033 + }, "related_data": {} } } @@ -48134,7 +56717,7 @@ { "居中显示文本": { "data": { - "uuid": "java-4-865", + "uuid": "java-4-876", "seg": [ [ [ @@ -48144,11 +56727,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.40530303030303033, + "max": 0.40577651515151514 + }, "related_data": { "qa": { "data_id": [ - "13_750309_803266" + "13_750309_803266@13" ] } } @@ -48158,7 +56744,7 @@ { "对齐多行文本": { "data": { - "uuid": "java-4-866", + "uuid": "java-4-877", "seg": [ [ [ @@ -48167,17 +56753,21 @@ ] ] ], - "level": "2", + "level": { + "min": 0.40577651515151514, + "max": 0.40625 + }, "related_data": { "qa": { "data_id": [ - "13_383622_419296", - "13_155557_16502", - "13_833_1480", - "13_691712_810782", - "13_696802_581071", - "13_7446686_53426223", - "13_1001299_1179748" + "13_383622_419296@13", + "13_155557_16502@13", + "13_833_1480@13", + "13_691712_810782@13", + "13_696802_581071@13", + "13_7446686_53426223@13", + "13_696861_581294@13", + "13_1001299_1179748@13" ] } } @@ -48186,7 +56776,7 @@ } ], "data": { - "uuid": "java-3-436", + "uuid": "java-3-429", "seg": [ [ [ @@ -48197,7 +56787,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.40482954545454547, + "max": 0.40625 + }, "related_data": {} } } @@ -48224,7 +56817,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.390625, + "max": 0.40625 + }, "related_data": {} } } @@ -48238,7 +56834,7 @@ { "添加和移除控件": { "data": { - "uuid": "java-4-867", + "uuid": "java-4-878", "seg": [ [ [ @@ -48250,7 +56846,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.40625, + "max": 0.4065972222222222 + }, "related_data": {} } } @@ -48258,7 +56857,7 @@ { "响应控件": { "data": { - "uuid": "java-4-868", + "uuid": "java-4-879", "seg": [ [ [ @@ -48267,14 +56866,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4065972222222222, + "max": 0.40694444444444444 + }, "related_data": { "qa": { "data_id": [ - "13_195321_104885", - "13_7460748_53446034", - "13_699895_588309", - "13_745334_792970" + "13_195321_104885@13", + "13_7460748_53446034@13", + "13_699895_588309@13", + "13_745334_792970@13" ] } } @@ -48284,7 +56886,7 @@ { "HeadlessException异常": { "data": { - "uuid": "java-4-869", + "uuid": "java-4-880", "seg": [ [ [ @@ -48293,14 +56895,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.40694444444444444, + "max": 0.40729166666666666 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-437", + "uuid": "java-3-430", "seg": [ [ [ @@ -48310,7 +56915,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.40625, + "max": 0.40729166666666666 + }, "related_data": {} } } @@ -48318,7 +56926,7 @@ { "使用标签": { "data": { - "uuid": "java-3-438", + "uuid": "java-3-431", "seg": [ [ [ @@ -48326,17 +56934,20 @@ ] ] ], - "level": "2", + "level": { + "min": 0.40729166666666666, + "max": 0.4083333333333333 + }, "related_data": { "qa": { "data_id": [ - "13_355565_369828", - "13_347702_353883", - "13_160925_29369", - "13_201032_122834", - "13_71390_11693", - "13_870979_1002671", - "13_7412848_53364536" + "13_355565_369828@13", + "13_347702_353883@13", + "13_160925_29369@13", + "13_201032_122834@13", + "13_71390_11693@13", + "13_870979_1002671@13", + "13_7412848_53364536@13" ] } } @@ -48346,16 +56957,20 @@ { "使用命令按钮": { "data": { - "uuid": "java-3-439", + "uuid": "java-3-432", "seg": [ [ [ "命令", - "按钮" + "按钮", + "命令按钮" ] ] ], - "level": "2", + "level": { + "min": 0.4083333333333333, + "max": 0.409375 + }, "related_data": {} } } @@ -48363,7 +56978,7 @@ { "使用复选框": { "data": { - "uuid": "java-3-440", + "uuid": "java-3-433", "seg": [ [ [ @@ -48371,7 +56986,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.409375, + "max": 0.41041666666666665 + }, "related_data": {} } } @@ -48379,7 +56997,7 @@ { "使用复选框组": { "data": { - "uuid": "java-3-441", + "uuid": "java-3-434", "seg": [ [ [ @@ -48387,7 +57005,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.41041666666666665, + "max": 0.4114583333333333 + }, "related_data": {} } } @@ -48395,30 +57016,28 @@ { "使用下拉列表": { "data": { - "uuid": "java-3-442", + "uuid": "java-3-435", "seg": [ [ [ - "拉", - "列表" + "下拉", + "列表", + "下拉列表" ] ] ], - "level": "2", - "related_data": { - "qa": { - "data_id": [ - "13_646235_448502" - ] - } - } + "level": { + "min": 0.4114583333333333, + "max": 0.4125 + }, + "related_data": {} } } }, { "使用列表框": { "data": { - "uuid": "java-3-443", + "uuid": "java-3-436", "seg": [ [ [ @@ -48426,7 +57045,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4125, + "max": 0.41354166666666664 + }, "related_data": {} } } @@ -48434,7 +57056,7 @@ { "管理滚动条": { "data": { - "uuid": "java-3-444", + "uuid": "java-3-437", "seg": [ [ [ @@ -48443,7 +57065,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.41354166666666664, + "max": 0.41458333333333336 + }, "related_data": {} } } @@ -48451,7 +57076,7 @@ { "使用TextField": { "data": { - "uuid": "java-3-445", + "uuid": "java-3-438", "seg": [ [ [ @@ -48459,11 +57084,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.41458333333333336, + "max": 0.415625 + }, "related_data": { "qa": { "data_id": [ - "13_3457683_23009415" + "13_3457683_23009415@13" ] } } @@ -48473,7 +57101,7 @@ { "使用TextArea": { "data": { - "uuid": "java-3-446", + "uuid": "java-3-439", "seg": [ [ [ @@ -48481,7 +57109,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.415625, + "max": 0.4166666666666667 + }, "related_data": {} } } @@ -48492,17 +57123,21 @@ { "FlowLayout布局管理器": { "data": { - "uuid": "java-4-870", + "uuid": "java-4-881", "seg": [ [ [ "flowlayout", "布局", - "管理器" + "管理器", + "布局管理器" ] ] ], - "level": "2", + "level": { + "min": 0.4166666666666667, + "max": 0.41684027777777777 + }, "related_data": {} } } @@ -48510,31 +57145,29 @@ { "BorderLayout布局管理器": { "data": { - "uuid": "java-4-871", + "uuid": "java-4-882", "seg": [ [ [ "borderlayout", "布局", - "管理器" + "管理器", + "布局管理器" ] ] ], - "level": "2", - "related_data": { - "qa": { - "data_id": [ - "13_745675_793961" - ] - } - } + "level": { + "min": 0.41684027777777777, + "max": 0.4170138888888889 + }, + "related_data": {} } } }, { "使用Insets": { "data": { - "uuid": "java-4-872", + "uuid": "java-4-883", "seg": [ [ [ @@ -48542,7 +57175,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4170138888888889, + "max": 0.41718750000000004 + }, "related_data": {} } } @@ -48550,17 +57186,21 @@ { "GridLayout布局管理器": { "data": { - "uuid": "java-4-873", + "uuid": "java-4-884", "seg": [ [ [ "gridlayout", "布局", - "管理器" + "管理器", + "布局管理器" ] ] ], - "level": "2", + "level": { + "min": 0.41718750000000004, + "max": 0.4173611111111111 + }, "related_data": {} } } @@ -48568,17 +57208,21 @@ { "CardLayout布局管理器": { "data": { - "uuid": "java-4-874", + "uuid": "java-4-885", "seg": [ [ [ "cardlayout", "布局", - "管理器" + "管理器", + "布局管理器" ] ] ], - "level": "2", + "level": { + "min": 0.4173611111111111, + "max": 0.4175347222222222 + }, "related_data": {} } } @@ -48586,34 +57230,42 @@ { "GridBagLayout布局管理器": { "data": { - "uuid": "java-4-875", + "uuid": "java-4-886", "seg": [ [ [ "gridbaglayout", "布局", - "管理器" + "管理器", + "布局管理器" ] ] ], - "level": "2", + "level": { + "min": 0.4175347222222222, + "max": 0.41770833333333335 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-447", + "uuid": "java-3-440", "seg": [ [ [ "理解", "布局", - "管理器" + "管理器", + "布局管理器" ] ] ], - "level": "2", + "level": { + "min": 0.4166666666666667, + "max": 0.41770833333333335 + }, "related_data": {} } } @@ -48621,7 +57273,7 @@ { "菜单栏和菜单": { "data": { - "uuid": "java-3-448", + "uuid": "java-3-441", "seg": [ [ [ @@ -48632,7 +57284,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.41770833333333335, + "max": 0.41875 + }, "related_data": {} } } @@ -48640,7 +57295,7 @@ { "对话框": { "data": { - "uuid": "java-3-449", + "uuid": "java-3-442", "seg": [ [ [ @@ -48648,7 +57303,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.41875, + "max": 0.4197916666666667 + }, "related_data": {} } } @@ -48656,7 +57314,7 @@ { "FileDialog类": { "data": { - "uuid": "java-3-450", + "uuid": "java-3-443", "seg": [ [ [ @@ -48665,7 +57323,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4197916666666667, + "max": 0.42083333333333334 + }, "related_data": {} } } @@ -48673,7 +57334,7 @@ { "关于重写paint方法": { "data": { - "uuid": "java-3-451", + "uuid": "java-3-444", "seg": [ [ [ @@ -48683,13 +57344,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.42083333333333334, + "max": 0.421875 + }, "related_data": { "qa": { "data_id": [ - "13_643800_443924", - "13_178585_62988", - "13_667484_486661" + "13_643800_443924@13", + "13_178585_62988@13", + "13_667484_486661@13" ] } } @@ -48707,14 +57371,18 @@ ], [ "布局", - "管理器" + "管理器", + "布局管理器" ], [ "菜单" ] ] ], - "level": "2", + "level": { + "min": 0.40625, + "max": 0.421875 + }, "related_data": {} } } @@ -48725,7 +57393,7 @@ { "文件格式": { "data": { - "uuid": "java-3-452", + "uuid": "java-3-445", "seg": [ [ [ @@ -48733,7 +57401,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.421875, + "max": 0.4236111111111111 + }, "related_data": {} } } @@ -48744,7 +57415,7 @@ { "创建Image对象": { "data": { - "uuid": "java-4-876", + "uuid": "java-4-887", "seg": [ [ [ @@ -48754,11 +57425,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4236111111111111, + "max": 0.4241898148148148 + }, "related_data": { "qa": { "data_id": [ - "13_2163_3361" + "13_2163_3361@13" ] } } @@ -48768,7 +57442,7 @@ { "加载图像": { "data": { - "uuid": "java-4-877", + "uuid": "java-4-888", "seg": [ [ [ @@ -48777,15 +57451,18 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4241898148148148, + "max": 0.4247685185185185 + }, "related_data": { "qa": { "data_id": [ - "13_7454733_53437411", - "13_183081_69595", - "13_2688_3837", - "13_749206_801579", - "13_672637_524458" + "13_7454733_53437411@13", + "13_183081_69595@13", + "13_2688_3837@13", + "13_749206_801579@13", + "13_672637_524458@13" ] } } @@ -48795,7 +57472,7 @@ { "显示图像": { "data": { - "uuid": "java-4-878", + "uuid": "java-4-889", "seg": [ [ [ @@ -48804,20 +57481,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4247685185185185, + "max": 0.4253472222222222 + }, "related_data": { "qa": { "data_id": [ - "13_3543_4410", - "13_655423_466210", - "13_782279_853152", - "13_161486_30906", - "13_7457251_53441372", - "13_7459932_53444961", - "13_378912_410549", - "13_688105_553149", - "13_7444135_53421978", - "13_209195_146384" + "13_3543_4410@13", + "13_655423_466210@13", + "13_782279_853152@13", + "13_161486_30906@13", + "13_7457251_53441372@13", + "13_7459932_53444961@13", + "13_378912_410549@13", + "13_688105_553149@13", + "13_7444135_53421978@13", + "13_209195_146384@13" ] } } @@ -48826,12 +57506,13 @@ } ], "data": { - "uuid": "java-3-453", + "uuid": "java-3-446", "seg": [ [ [ "图像", - "基础" + "基础", + "图像基础" ] ], [ @@ -48846,7 +57527,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4236111111111111, + "max": 0.4253472222222222 + }, "related_data": {} } } @@ -48854,7 +57538,7 @@ { "ImageObserver接口": { "data": { - "uuid": "java-3-454", + "uuid": "java-3-447", "seg": [ [ [ @@ -48863,7 +57547,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4253472222222222, + "max": 0.4270833333333333 + }, "related_data": {} } } @@ -48871,7 +57558,7 @@ { "双缓冲": { "data": { - "uuid": "java-3-455", + "uuid": "java-3-448", "seg": [ [ [ @@ -48880,7 +57567,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4270833333333333, + "max": 0.4288194444444444 + }, "related_data": {} } } @@ -48888,7 +57578,7 @@ { "MediaTracker类": { "data": { - "uuid": "java-3-456", + "uuid": "java-3-449", "seg": [ [ [ @@ -48897,7 +57587,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4288194444444444, + "max": 0.4305555555555556 + }, "related_data": {} } } @@ -48905,7 +57598,7 @@ { "ImageProducer接口": { "data": { - "uuid": "java-3-457", + "uuid": "java-3-450", "seg": [ [ [ @@ -48914,7 +57607,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4305555555555556, + "max": 0.4322916666666667 + }, "related_data": {} } } @@ -48922,7 +57618,7 @@ { "ImageConsumer接口": { "data": { - "uuid": "java-3-458", + "uuid": "java-3-451", "seg": [ [ [ @@ -48931,7 +57627,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4322916666666667, + "max": 0.4340277777777778 + }, "related_data": {} } } @@ -48942,7 +57641,7 @@ { "CropImageFilter类": { "data": { - "uuid": "java-4-879", + "uuid": "java-4-890", "seg": [ [ [ @@ -48951,7 +57650,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4340277777777778, + "max": 0.43489583333333337 + }, "related_data": {} } } @@ -48959,7 +57661,7 @@ { "RGBImageFilter类": { "data": { - "uuid": "java-4-880", + "uuid": "java-4-891", "seg": [ [ [ @@ -48968,14 +57670,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43489583333333337, + "max": 0.4357638888888889 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-459", + "uuid": "java-3-452", "seg": [ [ [ @@ -48984,7 +57689,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4340277777777778, + "max": 0.4357638888888889 + }, "related_data": {} } } @@ -48992,16 +57700,20 @@ { "其他图像类": { "data": { - "uuid": "java-3-460", + "uuid": "java-3-453", "seg": [ [ [ "图像", - "类" + "类", + "图像类" ] ] ], - "level": "2", + "level": { + "min": 0.4357638888888889, + "max": 0.4375 + }, "related_data": {} } } @@ -49016,7 +57728,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.421875, + "max": 0.4375 + }, "related_data": {} } } @@ -49030,7 +57745,7 @@ { "java.util.concurrent包": { "data": { - "uuid": "java-4-881", + "uuid": "java-4-892", "seg": [ [ [ @@ -49041,7 +57756,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4375, + "max": 0.4380787037037037 + }, "related_data": {} } } @@ -49049,7 +57767,7 @@ { "java.util.concurrent.atomic包": { "data": { - "uuid": "java-4-882", + "uuid": "java-4-893", "seg": [ [ [ @@ -49061,7 +57779,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4380787037037037, + "max": 0.4386574074074074 + }, "related_data": {} } } @@ -49069,7 +57790,7 @@ { "java.util.concurrent.locks包": { "data": { - "uuid": "java-4-883", + "uuid": "java-4-894", "seg": [ [ [ @@ -49081,14 +57802,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4386574074074074, + "max": 0.4392361111111111 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-461", + "uuid": "java-3-454", "seg": [ [ [ @@ -49098,7 +57822,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4375, + "max": 0.4392361111111111 + }, "related_data": {} } } @@ -49109,7 +57836,7 @@ { "Semaphore类": { "data": { - "uuid": "java-4-884", + "uuid": "java-4-895", "seg": [ [ [ @@ -49118,7 +57845,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4392361111111111, + "max": 0.4395833333333333 + }, "related_data": {} } } @@ -49126,7 +57856,7 @@ { "CountDownLatch类": { "data": { - "uuid": "java-4-885", + "uuid": "java-4-896", "seg": [ [ [ @@ -49135,7 +57865,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4395833333333333, + "max": 0.43993055555555555 + }, "related_data": {} } } @@ -49143,7 +57876,7 @@ { "CyclicBarrier类": { "data": { - "uuid": "java-4-886", + "uuid": "java-4-897", "seg": [ [ [ @@ -49152,7 +57885,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43993055555555555, + "max": 0.44027777777777777 + }, "related_data": {} } } @@ -49160,7 +57896,7 @@ { "Exchanger类": { "data": { - "uuid": "java-4-887", + "uuid": "java-4-898", "seg": [ [ [ @@ -49169,7 +57905,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44027777777777777, + "max": 0.440625 + }, "related_data": {} } } @@ -49177,7 +57916,7 @@ { "Phaser类": { "data": { - "uuid": "java-4-888", + "uuid": "java-4-899", "seg": [ [ [ @@ -49186,23 +57925,30 @@ ] ] ], - "level": "2", + "level": { + "min": 0.440625, + "max": 0.4409722222222222 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-462", + "uuid": "java-3-455", "seg": [ [ [ "同步", - "对象" + "对象", + "同步对象" ] ] ], - "level": "2", + "level": { + "min": 0.4392361111111111, + "max": 0.4409722222222222 + }, "related_data": {} } } @@ -49213,16 +57959,20 @@ { "一个简单的执行器示例": { "data": { - "uuid": "java-4-889", + "uuid": "java-4-900", "seg": [ [ [ "执行器", - "示例" + "示例", + "执行器示例" ] ] ], - "level": "2", + "level": { + "min": 0.4409722222222222, + "max": 0.4418402777777778 + }, "related_data": {} } } @@ -49233,7 +57983,7 @@ { "Future接口的局限性": { "data": { - "uuid": "java-5-808", + "uuid": "java-5-836", "seg": [ [ [ @@ -49243,12 +57993,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4418402777777778, + "max": 0.4422743055555556 + }, "related_data": { "qa": { "data_id": [ - "13_772932_836424", - "13_647476_451341" + "13_772932_836424@13", + "13_647476_451341@13" ] } } @@ -49258,24 +58011,28 @@ { "使用CompletableFuture构建异步应用": { "data": { - "uuid": "java-5-809", + "uuid": "java-5-837", "seg": [ [ [ "completablefuture", "构建", - "异步" + "异步", + "异步应用" ] ] ], - "level": "2", + "level": { + "min": 0.4422743055555556, + "max": 0.4427083333333333 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-890", + "uuid": "java-4-901", "seg": [ [ [ @@ -49287,14 +58044,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4418402777777778, + "max": 0.4427083333333333 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-463", + "uuid": "java-3-456", "seg": [ [ [ @@ -49302,7 +58062,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4409722222222222, + "max": 0.4427083333333333 + }, "related_data": {} } } @@ -49310,7 +58073,7 @@ { "TimeUnit枚举": { "data": { - "uuid": "java-3-464", + "uuid": "java-3-457", "seg": [ [ [ @@ -49319,11 +58082,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4427083333333333, + "max": 0.4444444444444444 + }, "related_data": { "qa": { "data_id": [ - "13_201062_123156" + "13_201062_123156@13" ] } } @@ -49333,7 +58099,7 @@ { "并发集合": { "data": { - "uuid": "java-3-465", + "uuid": "java-3-458", "seg": [ [ [ @@ -49342,7 +58108,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4444444444444444, + "max": 0.4461805555555556 + }, "related_data": {} } } @@ -49350,7 +58119,7 @@ { "锁": { "data": { - "uuid": "java-3-466", + "uuid": "java-3-459", "seg": [ [ [ @@ -49358,7 +58127,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4461805555555556, + "max": 0.4479166666666667 + }, "related_data": {} } } @@ -49366,7 +58138,7 @@ { "原子操作": { "data": { - "uuid": "java-3-467", + "uuid": "java-3-460", "seg": [ [ [ @@ -49375,7 +58147,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4479166666666667, + "max": 0.4496527777777778 + }, "related_data": {} } } @@ -49386,7 +58161,7 @@ { "主要的Fork/Join类": { "data": { - "uuid": "java-4-891", + "uuid": "java-4-902", "seg": [ [ [ @@ -49396,7 +58171,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4496527777777778, + "max": 0.4498106060606061 + }, "related_data": {} } } @@ -49404,7 +58182,7 @@ { "分而治之的策略": { "data": { - "uuid": "java-4-892", + "uuid": "java-4-903", "seg": [ [ [ @@ -49413,7 +58191,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4498106060606061, + "max": 0.44996843434343436 + }, "related_data": {} } } @@ -49421,7 +58202,7 @@ { "一个简单的Fork/Join示例": { "data": { - "uuid": "java-4-893", + "uuid": "java-4-904", "seg": [ [ [ @@ -49431,7 +58212,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44996843434343436, + "max": 0.45012626262626265 + }, "related_data": {} } } @@ -49439,7 +58223,7 @@ { "理解并行级别带来的影响": { "data": { - "uuid": "java-4-894", + "uuid": "java-4-905", "seg": [ [ [ @@ -49451,7 +58235,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45012626262626265, + "max": 0.45028409090909094 + }, "related_data": {} } } @@ -49459,7 +58246,7 @@ { "一个使用RecursiveTask[V]的例子": { "data": { - "uuid": "java-4-895", + "uuid": "java-4-906", "seg": [ [ [ @@ -49469,7 +58256,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45028409090909094, + "max": 0.4504419191919192 + }, "related_data": {} } } @@ -49477,16 +58267,20 @@ { "异步执行任务": { "data": { - "uuid": "java-4-896", + "uuid": "java-4-907", "seg": [ [ [ "异步", - "执行" + "执行", + "异步执行" ] ] ], - "level": "2", + "level": { + "min": 0.4504419191919192, + "max": 0.45059974747474746 + }, "related_data": {} } } @@ -49494,7 +58288,7 @@ { "取消任务": { "data": { - "uuid": "java-4-897", + "uuid": "java-4-908", "seg": [ [ [ @@ -49502,7 +58296,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45059974747474746, + "max": 0.45075757575757575 + }, "related_data": {} } } @@ -49510,7 +58307,7 @@ { "确定任务的完成状态": { "data": { - "uuid": "java-4-898", + "uuid": "java-4-909", "seg": [ [ [ @@ -49518,7 +58315,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45075757575757575, + "max": 0.45091540404040403 + }, "related_data": {} } } @@ -49526,7 +58326,7 @@ { "重新启动任务": { "data": { - "uuid": "java-4-899", + "uuid": "java-4-910", "seg": [ [ [ @@ -49534,7 +58334,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45091540404040403, + "max": 0.4510732323232323 + }, "related_data": {} } } @@ -49542,7 +58345,7 @@ { "深入研究": { "data": { - "uuid": "java-4-900", + "uuid": "java-4-911", "seg": [ [ [ @@ -49550,7 +58353,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4510732323232323, + "max": 0.4512310606060606 + }, "related_data": {} } } @@ -49558,7 +58364,7 @@ { "关于Fork/Join框架的一些提示": { "data": { - "uuid": "java-4-901", + "uuid": "java-4-912", "seg": [ [ [ @@ -49569,14 +58375,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4512310606060606, + "max": 0.4513888888888889 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-468", + "uuid": "java-3-461", "seg": [ [ [ @@ -49588,7 +58397,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4496527777777778, + "max": 0.4513888888888889 + }, "related_data": {} } } @@ -49596,7 +58408,7 @@ { "并发实用工具与Java传统方式的比较": { "data": { - "uuid": "java-3-469", + "uuid": "java-3-462", "seg": [ [ [ @@ -49606,11 +58418,15 @@ [ "java", "传统", - "方式" + "方式", + "传统方式" ] ] ], - "level": "2", + "level": { + "min": 0.4513888888888889, + "max": 0.453125 + }, "related_data": {} } } @@ -49626,7 +58442,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4375, + "max": 0.453125 + }, "related_data": {} } } @@ -49640,7 +58459,7 @@ { "流接口": { "data": { - "uuid": "java-4-902", + "uuid": "java-4-913", "seg": [ [ [ @@ -49649,7 +58468,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.453125, + "max": 0.4538690476190476 + }, "related_data": {} } } @@ -49657,7 +58479,7 @@ { "如何获得流": { "data": { - "uuid": "java-4-903", + "uuid": "java-4-914", "seg": [ [ [ @@ -49665,7 +58487,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4538690476190476, + "max": 0.45461309523809523 + }, "related_data": {} } } @@ -49673,23 +58498,27 @@ { "一个简单的流示例": { "data": { - "uuid": "java-4-904", + "uuid": "java-4-915", "seg": [ [ [ "流", - "示例" + "示例", + "流示例" ] ] ], - "level": "1", + "level": { + "min": 0.45461309523809523, + "max": 0.45535714285714285 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-470", + "uuid": "java-3-463", "seg": [ [ [ @@ -49698,7 +58527,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.453125, + "max": 0.45535714285714285 + }, "related_data": {} } } @@ -49706,7 +58538,7 @@ { "缩减操作": { "data": { - "uuid": "java-3-471", + "uuid": "java-3-464", "seg": [ [ [ @@ -49715,7 +58547,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45535714285714285, + "max": 0.4575892857142857 + }, "related_data": {} } } @@ -49726,18 +58561,23 @@ { "将顺序流转换为并行流": { "data": { - "uuid": "java-4-905", + "uuid": "java-4-916", "seg": [ [ [ "顺序", "流", "转换", - "并行" + "并行", + "将顺序", + "顺序流" ] ] ], - "level": "1", + "level": { + "min": 0.4575892857142857, + "max": 0.4583333333333333 + }, "related_data": {} } } @@ -49745,17 +58585,21 @@ { "测量流性能": { "data": { - "uuid": "java-4-906", + "uuid": "java-4-917", "seg": [ [ [ "测量", "流", - "性能" + "性能", + "流性能" ] ] ], - "level": "1", + "level": { + "min": 0.4583333333333333, + "max": 0.45907738095238093 + }, "related_data": {} } } @@ -49763,7 +58607,7 @@ { "高效使用并行流": { "data": { - "uuid": "java-4-907", + "uuid": "java-4-918", "seg": [ [ [ @@ -49773,11 +58617,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45907738095238093, + "max": 0.45982142857142855 + }, "related_data": { "qa": { "data_id": [ - "13_1064525_1262918" + "13_1064525_1262918@13" ] } } @@ -49786,7 +58633,7 @@ } ], "data": { - "uuid": "java-3-472", + "uuid": "java-3-465", "seg": [ [ [ @@ -49795,7 +58642,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4575892857142857, + "max": 0.45982142857142855 + }, "related_data": {} } } @@ -49803,7 +58653,7 @@ { "映射": { "data": { - "uuid": "java-3-473", + "uuid": "java-3-466", "seg": [ [ [ @@ -49811,7 +58661,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45982142857142855, + "max": 0.46205357142857145 + }, "related_data": {} } } @@ -49819,7 +58672,7 @@ { "收集": { "data": { - "uuid": "java-3-474", + "uuid": "java-3-467", "seg": [ [ [ @@ -49827,7 +58680,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.46205357142857145, + "max": 0.4642857142857143 + }, "related_data": {} } } @@ -49838,7 +58694,7 @@ { "对流使用迭代器": { "data": { - "uuid": "java-4-908", + "uuid": "java-4-919", "seg": [ [ [ @@ -49848,7 +58704,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4642857142857143, + "max": 0.46450892857142856 + }, "related_data": {} } } @@ -49856,7 +58715,7 @@ { "使用Spliterator": { "data": { - "uuid": "java-4-909", + "uuid": "java-4-920", "seg": [ [ [ @@ -49864,7 +58723,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.46450892857142856, + "max": 0.46473214285714287 + }, "related_data": {} } } @@ -49875,7 +58737,7 @@ { "用谓词筛选": { "data": { - "uuid": "java-5-810", + "uuid": "java-5-838", "seg": [ [ [ @@ -49884,12 +58746,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.46473214285714287, + "max": 0.46484375 + }, "related_data": { "qa": { "data_id": [ - "13_7400962_53349047", - "13_1093660_1303236" + "13_7400962_53349047@13", + "13_1093660_1303236@13" ] } } @@ -49899,7 +58764,7 @@ { "筛选各异的元素": { "data": { - "uuid": "java-5-811", + "uuid": "java-5-839", "seg": [ [ [ @@ -49909,14 +58774,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.46484375, + "max": 0.4649553571428572 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-910", + "uuid": "java-4-921", "seg": [ [ [ @@ -49924,7 +58792,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.46473214285714287, + "max": 0.4649553571428572 + }, "related_data": {} } } @@ -49935,17 +58806,21 @@ { "使用谓词对流进行切片": { "data": { - "uuid": "java-5-812", + "uuid": "java-5-840", "seg": [ [ [ "谓词", "对流", - "切片" + "切片", + "谓词对流" ] ] ], - "level": "1", + "level": { + "min": 0.4649553571428572, + "max": 0.4650297619047619 + }, "related_data": {} } } @@ -49953,7 +58828,7 @@ { "截短流": { "data": { - "uuid": "java-5-813", + "uuid": "java-5-841", "seg": [ [ [ @@ -49962,19 +58837,21 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4650297619047619, + "max": 0.4651041666666667 + }, "related_data": { "qa": { "data_id": [ - "13_374371_403195", - "13_204620_133667", - "13_760930_818171", - "13_199948_119460", - "13_235925_215516", - "13_354889_367801", - "13_228116_193593", - "13_689616_558112", - "13_1093238_1302438" + "13_374371_403195@13", + "13_204620_133667@13", + "13_760930_818171@13", + "13_199948_119460@13", + "13_235925_215516@13", + "13_354889_367801@13", + "13_228116_193593@13", + "13_1093238_1302438@13" ] } } @@ -49984,7 +58861,7 @@ { "跳过元素": { "data": { - "uuid": "java-5-814", + "uuid": "java-5-842", "seg": [ [ [ @@ -49993,13 +58870,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4651041666666667, + "max": 0.46517857142857144 + }, "related_data": { "qa": { "data_id": [ - "13_1100746_1315522", - "13_1071624_1273647", - "13_2795_3872" + "13_1100746_1315522@13", + "13_1071624_1273647@13", + "13_2795_3872@13" ] } } @@ -50008,7 +58888,7 @@ } ], "data": { - "uuid": "java-4-911", + "uuid": "java-4-922", "seg": [ [ [ @@ -50017,7 +58897,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4649553571428572, + "max": 0.46517857142857144 + }, "related_data": {} } } @@ -50028,18 +58911,22 @@ { "检查谓词是否至少匹配一个元素": { "data": { - "uuid": "java-5-815", + "uuid": "java-5-843", "seg": [ [ [ "检查", "谓词", "匹配", - "元素" + "元素", + "至少匹配" ] ] ], - "level": "1", + "level": { + "min": 0.46517857142857144, + "max": 0.465234375 + }, "related_data": {} } } @@ -50047,7 +58934,7 @@ { "检查谓词是否匹配所有元素": { "data": { - "uuid": "java-5-816", + "uuid": "java-5-844", "seg": [ [ [ @@ -50058,12 +58945,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.465234375, + "max": 0.46529017857142857 + }, "related_data": { "qa": { "data_id": [ - "13_1058049_1255371", - "13_846431_962508" + "13_1058049_1255371@13", + "13_846431_962508@13" ] } } @@ -50073,7 +58963,7 @@ { "查找元素": { "data": { - "uuid": "java-5-817", + "uuid": "java-5-845", "seg": [ [ [ @@ -50082,15 +58972,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.46529017857142857, + "max": 0.46534598214285716 + }, "related_data": { "qa": { "data_id": [ - "13_770139_831569", - "13_924845_1059777", - "13_1099052_1313992", - "13_774510_838443", - "13_3197989_21755103" + "13_770139_831569@13", + "13_1099052_1313992@13", + "13_3197989_21755103@13" ] } } @@ -50100,7 +58991,7 @@ { "查找第一个元素": { "data": { - "uuid": "java-5-818", + "uuid": "java-5-846", "seg": [ [ [ @@ -50109,14 +59000,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.46534598214285716, + "max": 0.4654017857142857 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-912", + "uuid": "java-4-923", "seg": [ [ [ @@ -50127,7 +59021,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.46517857142857144, + "max": 0.4654017857142857 + }, "related_data": {} } } @@ -50138,7 +59035,7 @@ { "元素求和": { "data": { - "uuid": "java-5-819", + "uuid": "java-5-847", "seg": [ [ [ @@ -50147,7 +59044,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4654017857142857, + "max": 0.4655133928571429 + }, "related_data": {} } } @@ -50155,7 +59055,7 @@ { "最大值和最小值": { "data": { - "uuid": "java-5-820", + "uuid": "java-5-848", "seg": [ [ [ @@ -50166,11 +59066,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4655133928571429, + "max": 0.465625 + }, "related_data": { "qa": { "data_id": [ - "13_7462480_53447986" + "13_7462480_53447986@13" ] } } @@ -50179,7 +59082,7 @@ } ], "data": { - "uuid": "java-4-913", + "uuid": "java-4-924", "seg": [ [ [ @@ -50187,7 +59090,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4654017857142857, + "max": 0.465625 + }, "related_data": {} } } @@ -50198,7 +59104,7 @@ { "领域:交易员和交易": { "data": { - "uuid": "java-5-821", + "uuid": "java-5-849", "seg": [ [ [ @@ -50214,7 +59120,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.465625, + "max": 0.46573660714285714 + }, "related_data": {} } } @@ -50222,20 +59131,23 @@ { "解答": { "data": { - "uuid": "java-5-822", + "uuid": "java-5-850", "seg": [ [ [] ] ], - "level": "1", + "level": { + "min": 0.46573660714285714, + "max": 0.4658482142857143 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-914", + "uuid": "java-4-925", "seg": [ [ [ @@ -50243,7 +59155,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.465625, + "max": 0.4658482142857143 + }, "related_data": {} } } @@ -50254,18 +59169,23 @@ { "原始类型流特化": { "data": { - "uuid": "java-5-823", + "uuid": "java-5-851", "seg": [ [ [ "原始", "类型", "流", - "特化" + "特化", + "类型流", + "流特化" ] ] ], - "level": "1", + "level": { + "min": 0.4658482142857143, + "max": 0.46592261904761906 + }, "related_data": {} } } @@ -50273,24 +59193,27 @@ { "数值范围": { "data": { - "uuid": "java-5-824", + "uuid": "java-5-852", "seg": [ [ [ - "数值" + "数值", + "数值范围" ] ] ], - "level": "1", + "level": { + "min": 0.46592261904761906, + "max": 0.46599702380952385 + }, "related_data": { "qa": { "data_id": [ - "13_215454_161782", - "13_7447209_53426721", - "13_1066459_1266232", - "13_7400205_53347998", - "13_7400073_53347847", - "13_654307_463844" + "13_215454_161782@13", + "13_7447209_53426721@13", + "13_7400205_53347998@13", + "13_7400073_53347847@13", + "13_654307_463844@13" ] } } @@ -50300,12 +59223,13 @@ { "数值流应用:勾股数": { "data": { - "uuid": "java-5-825", + "uuid": "java-5-853", "seg": [ [ [ "数值", - "流" + "流", + "数值流" ] ], [ @@ -50315,23 +59239,30 @@ ] ] ], - "level": "1", + "level": { + "min": 0.46599702380952385, + "max": 0.4660714285714286 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-915", + "uuid": "java-4-926", "seg": [ [ [ "数值", - "流" + "流", + "数值流" ] ] ], - "level": "1", + "level": { + "min": 0.4658482142857143, + "max": 0.4660714285714286 + }, "related_data": {} } } @@ -50342,7 +59273,7 @@ { "由值创建流": { "data": { - "uuid": "java-5-826", + "uuid": "java-5-854", "seg": [ [ [ @@ -50352,7 +59283,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4660714285714286, + "max": 0.4661160714285714 + }, "related_data": {} } } @@ -50360,7 +59294,7 @@ { "由可空对象创建流": { "data": { - "uuid": "java-5-827", + "uuid": "java-5-855", "seg": [ [ [ @@ -50371,7 +59305,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4661160714285714, + "max": 0.46616071428571426 + }, "related_data": {} } } @@ -50379,7 +59316,7 @@ { "由数组创建流": { "data": { - "uuid": "java-5-828", + "uuid": "java-5-856", "seg": [ [ [ @@ -50389,7 +59326,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.46616071428571426, + "max": 0.46620535714285716 + }, "related_data": {} } } @@ -50397,7 +59337,7 @@ { "由文件生成流": { "data": { - "uuid": "java-5-829", + "uuid": "java-5-857", "seg": [ [ [ @@ -50407,20 +59347,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.46620535714285716, + "max": 0.46625 + }, "related_data": { "qa": { "data_id": [ - "13_1102276_1316652", - "13_7404757_53353757", - "13_647314_450668", - "13_7415097_53368429", - "13_675934_512553", - "13_208361_144238", - "13_195086_104320", - "13_660591_475246", - "13_666368_484455", - "13_213789_157189" + "13_1102276_1316652@13", + "13_7404757_53353757@13", + "13_647314_450668@13", + "13_7415097_53368429@13", + "13_675934_512553@13" ] } } @@ -50430,7 +59368,7 @@ { "由函数生成流:创建无限流": { "data": { - "uuid": "java-5-830", + "uuid": "java-5-858", "seg": [ [ [ @@ -50447,14 +59385,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.46625, + "max": 0.46629464285714284 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-916", + "uuid": "java-4-927", "seg": [ [ [ @@ -50463,7 +59404,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4660714285714286, + "max": 0.46629464285714284 + }, "related_data": {} } } @@ -50471,7 +59415,7 @@ { "概述": { "data": { - "uuid": "java-4-917", + "uuid": "java-4-928", "seg": [ [ [ @@ -50479,14 +59423,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.46629464285714284, + "max": 0.46651785714285715 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-475", + "uuid": "java-3-468", "seg": [ [ [ @@ -50498,7 +59445,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4642857142857143, + "max": 0.46651785714285715 + }, "related_data": {} } } @@ -50506,7 +59456,7 @@ { "流API中更多值得探究的地方": { "data": { - "uuid": "java-3-476", + "uuid": "java-3-469", "seg": [ [ [ @@ -50518,11 +59468,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.46651785714285715, + "max": 0.46875 + }, "related_data": { "qa": { "data_id": [ - "13_30135_9340" + "13_30135_9340@13" ] } } @@ -50540,7 +59493,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.453125, + "max": 0.46875 + }, "related_data": {} } } @@ -50551,7 +59507,7 @@ { "核心Java API包": { "data": { - "uuid": "java-3-477", + "uuid": "java-3-470", "seg": [ [ [ @@ -50562,7 +59518,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.46875, + "max": 0.4697265625 + }, "related_data": {} } } @@ -50573,7 +59532,7 @@ { "Pattern类": { "data": { - "uuid": "java-4-918", + "uuid": "java-4-929", "seg": [ [ [ @@ -50582,7 +59541,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4697265625, + "max": 0.4698893229166667 + }, "related_data": {} } } @@ -50590,7 +59552,7 @@ { "Matcher类": { "data": { - "uuid": "java-4-919", + "uuid": "java-4-930", "seg": [ [ [ @@ -50599,7 +59561,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4698893229166667, + "max": 0.4700520833333333 + }, "related_data": {} } } @@ -50607,7 +59572,7 @@ { "正则表达式的语法": { "data": { - "uuid": "java-4-920", + "uuid": "java-4-931", "seg": [ [ [ @@ -50616,7 +59581,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4700520833333333, + "max": 0.47021484375 + }, "related_data": {} } } @@ -50624,7 +59592,7 @@ { "演示模式匹配": { "data": { - "uuid": "java-4-921", + "uuid": "java-4-932", "seg": [ [ [ @@ -50633,7 +59601,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.47021484375, + "max": 0.4703776041666667 + }, "related_data": {} } } @@ -50641,7 +59612,7 @@ { "模式匹配的两个选项": { "data": { - "uuid": "java-4-922", + "uuid": "java-4-933", "seg": [ [ [ @@ -50650,7 +59621,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4703776041666667, + "max": 0.4705403645833333 + }, "related_data": {} } } @@ -50658,7 +59632,7 @@ { "探究正则表达式": { "data": { - "uuid": "java-4-923", + "uuid": "java-4-934", "seg": [ [ [ @@ -50667,20 +59641,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4705403645833333, + "max": 0.470703125 + }, "related_data": { "qa": { "data_id": [ - "13_5715666_35334393", - "13_387739_427122", - "13_371807_398545", - "13_364459_386270", - "13_768647_828910", - "13_672355_497647", - "13_171660_49727", - "13_355657_373057", - "13_366304_390651", - "13_695611_578411" + "13_5715666_35334393@13", + "13_387739_427122@13", + "13_371807_398545@13", + "13_364459_386270@13", + "13_768647_828910@13", + "13_672355_497647@13", + "13_171660_49727@13", + "13_355657_373057@13", + "13_366304_390651@13", + "13_695611_578411@13" ] } } @@ -50689,7 +59666,7 @@ } ], "data": { - "uuid": "java-3-478", + "uuid": "java-3-471", "seg": [ [ [ @@ -50697,26 +59674,18 @@ ] ] ], - "level": "2", - "related_data": { - "qa": { - "data_id": [ - "13_204180_132468", - "13_744600_790916", - "13_245463_235973", - "13_747254_798336", - "13_746865_797189", - "13_183372_70318" - ] - } - } + "level": { + "min": 0.4697265625, + "max": 0.470703125 + }, + "related_data": {} } } }, { "反射": { "data": { - "uuid": "java-3-479", + "uuid": "java-3-472", "seg": [ [ [ @@ -50724,11 +59693,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.470703125, + "max": 0.4716796875 + }, "related_data": { "qa": { "data_id": [ - "13_742717_785455" + "13_742717_785455@13" ] } } @@ -50738,17 +59710,21 @@ { "远程方法调用": { "data": { - "uuid": "java-3-480", + "uuid": "java-3-473", "seg": [ [ [ "远程", "方法", - "调用" + "调用", + "远程方法" ] ] ], - "level": "1", + "level": { + "min": 0.4716796875, + "max": 0.47265625 + }, "related_data": {} } } @@ -50759,7 +59735,7 @@ { "DateFormat类": { "data": { - "uuid": "java-4-924", + "uuid": "java-4-935", "seg": [ [ [ @@ -50768,7 +59744,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.47265625, + "max": 0.47314453125 + }, "related_data": {} } } @@ -50776,7 +59755,7 @@ { "SimpleDateFormat类": { "data": { - "uuid": "java-4-925", + "uuid": "java-4-936", "seg": [ [ [ @@ -50785,14 +59764,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.47314453125, + "max": 0.4736328125 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-481", + "uuid": "java-3-474", "seg": [ [ [ @@ -50806,11 +59788,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.47265625, + "max": 0.4736328125 + }, "related_data": { "qa": { "data_id": [ - "13_370843_397574" + "13_370843_397574@13" ] } } @@ -50823,7 +59808,7 @@ { "时间和日期的基础知识": { "data": { - "uuid": "java-4-926", + "uuid": "java-4-937", "seg": [ [ [ @@ -50835,21 +59820,18 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_214873_160006" - ] - } - } + "level": { + "min": 0.4736328125, + "max": 0.4739583333333333 + }, + "related_data": {} } } }, { "格式化日期和时间": { "data": { - "uuid": "java-4-927", + "uuid": "java-4-938", "seg": [ [ [ @@ -50861,21 +59843,18 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_1092562_1300557" - ] - } - } + "level": { + "min": 0.4739583333333333, + "max": 0.4742838541666667 + }, + "related_data": {} } } }, { "解析日期和时间字符串": { "data": { - "uuid": "java-4-928", + "uuid": "java-4-939", "seg": [ [ [ @@ -50884,18 +59863,22 @@ ], [ "时间", - "字符串" + "字符串", + "时间字符串" ] ] ], - "level": "1", + "level": { + "min": 0.4742838541666667, + "max": 0.474609375 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-482", + "uuid": "java-3-475", "seg": [ [ [ @@ -50909,7 +59892,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4736328125, + "max": 0.474609375 + }, "related_data": {} } } @@ -50917,7 +59903,7 @@ { "探究java.time包的其他方面": { "data": { - "uuid": "java-3-483", + "uuid": "java-3-476", "seg": [ [ [ @@ -50928,7 +59914,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.474609375, + "max": 0.4755859375 + }, "related_data": {} } } @@ -50936,7 +59925,7 @@ { "匹配字符串": { "data": { - "uuid": "java-3-484", + "uuid": "java-3-477", "seg": [ [ [ @@ -50945,7 +59934,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4755859375, + "max": 0.4765625 + }, "related_data": {} } } @@ -50953,7 +59945,7 @@ { "找出多个匹配": { "data": { - "uuid": "java-3-485", + "uuid": "java-3-478", "seg": [ [ [ @@ -50962,7 +59954,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4765625, + "max": 0.4775390625 + }, "related_data": {} } } @@ -50970,7 +59965,7 @@ { "用分隔符来分割": { "data": { - "uuid": "java-3-486", + "uuid": "java-3-479", "seg": [ [ [ @@ -50979,7 +59974,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4775390625, + "max": 0.478515625 + }, "related_data": {} } } @@ -50987,7 +59985,7 @@ { "替换匹配": { "data": { - "uuid": "java-3-487", + "uuid": "java-3-480", "seg": [ [ [ @@ -50996,11 +59994,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.478515625, + "max": 0.4794921875 + }, "related_data": { "qa": { "data_id": [ - "13_220435_173067" + "13_220435_173067@13" ] } } @@ -51010,7 +60011,7 @@ { "正则表达式简介": { "data": { - "uuid": "java-3-488", + "uuid": "java-3-481", "seg": [ [ [ @@ -51019,7 +60020,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4794921875, + "max": 0.48046875 + }, "related_data": {} } } @@ -51027,7 +60031,7 @@ { "匹配规则": { "data": { - "uuid": "java-3-489", + "uuid": "java-3-482", "seg": [ [ [ @@ -51036,7 +60040,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48046875, + "max": 0.4814453125 + }, "related_data": {} } } @@ -51044,7 +60051,7 @@ { "分组匹配": { "data": { - "uuid": "java-3-490", + "uuid": "java-3-483", "seg": [ [ [ @@ -51053,7 +60060,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4814453125, + "max": 0.482421875 + }, "related_data": {} } } @@ -51061,16 +60071,20 @@ { "非贪婪匹配": { "data": { - "uuid": "java-3-491", + "uuid": "java-3-484", "seg": [ [ [ "贪婪", - "匹配" + "匹配", + "非贪婪" ] ] ], - "level": "1", + "level": { + "min": 0.482421875, + "max": 0.4833984375 + }, "related_data": {} } } @@ -51078,7 +60092,7 @@ { "搜索和替换": { "data": { - "uuid": "java-3-492", + "uuid": "java-3-485", "seg": [ [ [ @@ -51089,7 +60103,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4833984375, + "max": 0.484375 + }, "related_data": {} } } @@ -51107,7 +60124,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.46875, + "max": 0.484375 + }, "related_data": {} } } @@ -51127,7 +60147,7 @@ { "多线程基础": { "data": { - "uuid": "java-6-161", + "uuid": "java-6-162", "seg": [ [ [ @@ -51136,20 +60156,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.484375, + "max": 0.4843794288548753 + }, "related_data": { "qa": { "data_id": [ - "13_659090_472618", - "13_758590_814680", - "13_654904_465124", - "13_377176_407658", - "13_239439_222749", - "13_647436_450933", - "13_366088_390007", - "13_388413_428166", - "13_682849_538033", - "13_1099749_1314751" + "13_659090_472618@13", + "13_758590_814680@13", + "13_654904_465124@13", + "13_377176_407658@13", + "13_239439_222749@13", + "13_647436_450933@13", + "13_366088_390007@13", + "13_388413_428166@13", + "13_682849_538033@13", + "13_1099749_1314751@13" ] } } @@ -51159,7 +60182,7 @@ { "创建新线程": { "data": { - "uuid": "java-6-162", + "uuid": "java-6-163", "seg": [ [ [ @@ -51168,11 +60191,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4843794288548753, + "max": 0.48438385770975056 + }, "related_data": { "qa": { "data_id": [ - "13_356744_372692" + "13_356744_372692@13" ] } } @@ -51182,16 +60208,20 @@ { "中断线程": { "data": { - "uuid": "java-6-163", + "uuid": "java-6-164", "seg": [ [ [ "中断", - "线程" + "线程", + "中断线程" ] ] ], - "level": "2", + "level": { + "min": 0.48438385770975056, + "max": 0.48438828656462585 + }, "related_data": {} } } @@ -51199,7 +60229,7 @@ { "守护线程": { "data": { - "uuid": "java-6-164", + "uuid": "java-6-165", "seg": [ [ [ @@ -51208,7 +60238,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.48438828656462585, + "max": 0.48439271541950113 + }, "related_data": {} } } @@ -51216,7 +60249,7 @@ { "线程同步": { "data": { - "uuid": "java-6-165", + "uuid": "java-6-166", "seg": [ [ [ @@ -51225,32 +60258,31 @@ ] ] ], - "level": "2", - "related_data": { - "qa": { - "data_id": [ - "13_747170_798101", - "13_226439_189018", - "13_192520_96058" - ] - } - } + "level": { + "min": 0.48439271541950113, + "max": 0.4843971442743764 + }, + "related_data": {} } } }, { "同步方法": { "data": { - "uuid": "java-6-166", + "uuid": "java-6-167", "seg": [ [ [ "同步", - "方法" + "方法", + "同步方法" ] ] ], - "level": "2", + "level": { + "min": 0.4843971442743764, + "max": 0.4844015731292517 + }, "related_data": {} } } @@ -51258,7 +60290,7 @@ { "使用wait和notify": { "data": { - "uuid": "java-6-167", + "uuid": "java-6-168", "seg": [ [ [ @@ -51271,16 +60303,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4844015731292517, + "max": 0.484406001984127 + }, "related_data": { "qa": { "data_id": [ - "13_700602_589554", - "13_171163_48013", - "13_746742_796755", - "13_669879_492327", - "13_700507_589399", - "13_871757_1003857" + "13_700602_589554@13", + "13_171163_48013@13", + "13_746742_796755@13", + "13_669879_492327@13", + "13_700507_589399@13", + "13_4645735_29328849@13", + "13_7445416_53423972@13", + "13_638514_441379@13", + "13_198919_115921@13", + "13_694542_574877@13" ] } } @@ -51290,7 +60329,7 @@ { "使用ReentrantLock": { "data": { - "uuid": "java-6-168", + "uuid": "java-6-169", "seg": [ [ [ @@ -51298,11 +60337,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.484406001984127, + "max": 0.48441043083900226 + }, "related_data": { "qa": { "data_id": [ - "13_1063978_1262216" + "13_1063978_1262216@13" ] } } @@ -51312,7 +60354,7 @@ { "使用Condition": { "data": { - "uuid": "java-6-169", + "uuid": "java-6-170", "seg": [ [ [ @@ -51320,7 +60362,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.48441043083900226, + "max": 0.48441485969387754 + }, "related_data": {} } } @@ -51328,7 +60373,7 @@ { "使用ReadWriteLock": { "data": { - "uuid": "java-6-170", + "uuid": "java-6-171", "seg": [ [ [ @@ -51336,7 +60381,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.48441485969387754, + "max": 0.4844192885487528 + }, "related_data": {} } } @@ -51344,7 +60392,7 @@ { "使用StampedLock": { "data": { - "uuid": "java-6-171", + "uuid": "java-6-172", "seg": [ [ [ @@ -51352,7 +60400,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4844192885487528, + "max": 0.4844237174036281 + }, "related_data": {} } } @@ -51360,7 +60411,7 @@ { "使用Concurrent集合": { "data": { - "uuid": "java-6-172", + "uuid": "java-6-173", "seg": [ [ [ @@ -51369,7 +60420,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4844237174036281, + "max": 0.4844281462585034 + }, "related_data": {} } } @@ -51377,7 +60431,7 @@ { "使用Atomic": { "data": { - "uuid": "java-6-173", + "uuid": "java-6-174", "seg": [ [ [ @@ -51385,11 +60439,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4844281462585034, + "max": 0.48443257511337867 + }, "related_data": { "qa": { "data_id": [ - "13_356335_371960" + "13_356335_371960@13" ] } } @@ -51399,7 +60456,7 @@ { "使用ForkJoin": { "data": { - "uuid": "java-6-174", + "uuid": "java-6-175", "seg": [ [ [ @@ -51407,14 +60464,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.48443257511337867, + "max": 0.48443700396825395 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-831", + "uuid": "java-5-859", "seg": [ [ [ @@ -51422,30 +60482,18 @@ ] ] ], - "level": "2", - "related_data": { - "qa": { - "data_id": [ - "13_7433549_53403930", - "13_348292_355015", - "13_193570_99083", - "13_7463853_53450090", - "13_745175_792537", - "13_700629_589595", - "13_741967_783094", - "13_1069468_1270897", - "13_363298_383427", - "13_744754_791340" - ] - } - } + "level": { + "min": 0.484375, + "max": 0.48443700396825395 + }, + "related_data": {} } } }, { "测试上下文切换次数和时长": { "data": { - "uuid": "java-5-832", + "uuid": "java-5-860", "seg": [ [ [ @@ -51458,7 +60506,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.48443700396825395, + "max": 0.48449900793650796 + }, "related_data": {} } } @@ -51466,7 +60517,7 @@ { "如何减少上下文切换": { "data": { - "uuid": "java-5-833", + "uuid": "java-5-861", "seg": [ [ [ @@ -51476,12 +60527,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.48449900793650796, + "max": 0.4845610119047619 + }, "related_data": { "qa": { "data_id": [ - "13_772903_836445", - "13_183239_69954" + "13_772903_836445@13", + "13_183239_69954@13" ] } } @@ -51490,7 +60544,7 @@ } ], "data": { - "uuid": "java-4-929", + "uuid": "java-4-940", "seg": [ [ [ @@ -51499,7 +60553,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.484375, + "max": 0.4845610119047619 + }, "related_data": {} } } @@ -51507,7 +60564,7 @@ { "死锁": { "data": { - "uuid": "java-4-930", + "uuid": "java-4-941", "seg": [ [ [ @@ -51515,7 +60572,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4845610119047619, + "max": 0.4847470238095238 + }, "related_data": {} } } @@ -51523,7 +60583,7 @@ { "资源限制的挑战": { "data": { - "uuid": "java-4-931", + "uuid": "java-4-942", "seg": [ [ [ @@ -51532,14 +60592,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4847470238095238, + "max": 0.4849330357142857 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-493", + "uuid": "java-3-486", "seg": [ [ [ @@ -51549,7 +60612,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.484375, + "max": 0.4849330357142857 + }, "related_data": {} } } @@ -51560,7 +60626,7 @@ { "volatile的应用": { "data": { - "uuid": "java-4-932", + "uuid": "java-4-943", "seg": [ [ [ @@ -51568,11 +60634,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4849330357142857, + "max": 0.4851190476190476 + }, "related_data": { "qa": { "data_id": [ - "13_744766_791364" + "13_744766_791364@13" ] } } @@ -51585,21 +60654,25 @@ { "Java对象头": { "data": { - "uuid": "java-5-834", + "uuid": "java-5-862", "seg": [ [ [ "java", "对象", - "头" + "头", + "对象头" ] ] ], - "level": "2", + "level": { + "min": 0.4851190476190476, + "max": 0.4852120535714286 + }, "related_data": { "qa": { "data_id": [ - "13_250745_248190" + "13_250745_248190@13" ] } } @@ -51609,7 +60682,7 @@ { "锁的升级与对比": { "data": { - "uuid": "java-5-835", + "uuid": "java-5-863", "seg": [ [ [ @@ -51619,12 +60692,15 @@ [] ] ], - "level": "2", + "level": { + "min": 0.4852120535714286, + "max": 0.48530505952380953 + }, "related_data": { "qa": { "data_id": [ - "13_769722_830819", - "13_7402318_53350008" + "13_769722_830819@13", + "13_7402318_53350008@13" ] } } @@ -51633,7 +60709,7 @@ } ], "data": { - "uuid": "java-4-933", + "uuid": "java-4-944", "seg": [ [ [ @@ -51643,20 +60719,22 @@ [] ] ], - "level": "2", + "level": { + "min": 0.4851190476190476, + "max": 0.48530505952380953 + }, "related_data": { "qa": { "data_id": [ - "13_7405485_53354749", - "13_361893_380232", - "13_744931_791790", - "13_755192_810486", - "13_7404477_53353316", - "13_745100_792306", - "13_830549_927784", - "13_7447267_53426816", - "13_647711_451446", - "13_773862_837678" + "13_745100_792306@13", + "13_830549_927784@13", + "13_7447267_53426816@13", + "13_647711_451446@13", + "13_773862_837678@13", + "13_28621_8104@13", + "13_667076_485906@13", + "13_7447352_53427327@13", + "13_690102_559445@13" ] } } @@ -51666,7 +60744,7 @@ { "原子操作的实现原理": { "data": { - "uuid": "java-4-934", + "uuid": "java-4-945", "seg": [ [ [ @@ -51676,14 +60754,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.48530505952380953, + "max": 0.48549107142857145 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-494", + "uuid": "java-3-487", "seg": [ [ [ @@ -51695,7 +60776,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4849330357142857, + "max": 0.48549107142857145 + }, "related_data": {} } } @@ -51709,7 +60793,7 @@ { "Java内存模型的抽象结构": { "data": { - "uuid": "java-5-836", + "uuid": "java-5-864", "seg": [ [ [ @@ -51717,15 +60801,19 @@ "内存", "模型", "抽象", - "结构" + "结构", + "内存模型" ] ] ], - "level": "2", + "level": { + "min": 0.48549107142857145, + "max": 0.48550657242063494 + }, "related_data": { "qa": { "data_id": [ - "13_354580_367180" + "13_354580_367180@13" ] } } @@ -51735,22 +60823,26 @@ { "从源代码到指令序列的重排序": { "data": { - "uuid": "java-5-837", + "uuid": "java-5-865", "seg": [ [ [ "指令", "序列", "重", - "排序" + "排序", + "指令序列" ] ] ], - "level": "1", + "level": { + "min": 0.48550657242063494, + "max": 0.48552207341269843 + }, "related_data": { "qa": { "data_id": [ - "13_678859_524156" + "13_678859_524156@13" ] } } @@ -51760,18 +60852,22 @@ { "并发编程模型的分类": { "data": { - "uuid": "java-5-838", + "uuid": "java-5-866", "seg": [ [ [ "并发", "编程", "模型", - "分类" + "分类", + "编程模型" ] ] ], - "level": "2", + "level": { + "min": 0.48552207341269843, + "max": 0.4855375744047619 + }, "related_data": {} } } @@ -51779,7 +60875,7 @@ { "happens-before简介": { "data": { - "uuid": "java-5-839", + "uuid": "java-5-867", "seg": [ [ [ @@ -51791,25 +60887,32 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4855375744047619, + "max": 0.4855530753968254 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-935", + "uuid": "java-4-946", "seg": [ [ [ "java", "内存", "模型", - "基础" + "基础", + "内存模型" ] ] ], - "level": "1", + "level": { + "min": 0.48549107142857145, + "max": 0.4855530753968254 + }, "related_data": {} } } @@ -51820,20 +60923,24 @@ { "数据依赖性": { "data": { - "uuid": "java-5-840", + "uuid": "java-5-868", "seg": [ [ [ "数据", - "依赖性" + "依赖性", + "数据依赖性" ] ] ], - "level": "1", + "level": { + "min": 0.4855530753968254, + "max": 0.4855685763888889 + }, "related_data": { "qa": { "data_id": [ - "13_921971_1056796" + "13_921971_1056796@13" ] } } @@ -51843,7 +60950,7 @@ { "as-if-serial语义": { "data": { - "uuid": "java-5-841", + "uuid": "java-5-869", "seg": [ [ [ @@ -51854,11 +60961,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4855685763888889, + "max": 0.4855840773809524 + }, "related_data": { "qa": { "data_id": [ - "13_777531_846323" + "13_777531_846323@13" ] } } @@ -51868,17 +60978,22 @@ { "程序顺序规则": { "data": { - "uuid": "java-5-842", + "uuid": "java-5-870", "seg": [ [ [ "程序", "顺序", - "规则" + "规则", + "程序顺序", + "顺序规则" ] ] ], - "level": "1", + "level": { + "min": 0.4855840773809524, + "max": 0.48559957837301587 + }, "related_data": {} } } @@ -51886,7 +61001,7 @@ { "重排序对多线程的影响": { "data": { - "uuid": "java-5-843", + "uuid": "java-5-871", "seg": [ [ [ @@ -51897,20 +61012,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.48559957837301587, + "max": 0.48561507936507936 + }, "related_data": { "qa": { "data_id": [ - "13_214002_157583", - "13_752405_814574", - "13_352702_363691", - "13_564873_439914", - "13_199586_118019", - "13_646648_449256", - "13_241715_228140", - "13_1071607_1273625", - "13_346432_351649", - "13_7443243_53420307" + "13_214002_157583@13", + "13_752405_814574@13", + "13_352702_363691@13", + "13_564873_439914@13", + "13_199586_118019@13", + "13_646648_449256@13", + "13_241715_228140@13", + "13_1071607_1273625@13", + "13_346432_351649@13", + "13_7443243_53420307@13" ] } } @@ -51919,7 +61037,7 @@ } ], "data": { - "uuid": "java-4-936", + "uuid": "java-4-947", "seg": [ [ [ @@ -51928,7 +61046,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4855530753968254, + "max": 0.48561507936507936 + }, "related_data": {} } } @@ -51939,7 +61060,7 @@ { "数据竞争与顺序一致性": { "data": { - "uuid": "java-5-844", + "uuid": "java-5-872", "seg": [ [ [ @@ -51948,19 +61069,22 @@ ], [ "顺序", - "一致性" + "一致性", + "顺序一致性" ] ] ], - "level": "1", + "level": { + "min": 0.48561507936507936, + "max": 0.48563058035714285 + }, "related_data": { "qa": { "data_id": [ - "13_749287_801722", - "13_7446799_53426347", - "13_696996_581913", - "13_230066_198898", - "13_932210_1069290" + "13_749287_801722@13", + "13_7446799_53426347@13", + "13_696996_581913@13", + "13_932210_1069290@13" ] } } @@ -51970,18 +61094,24 @@ { "顺序一致性内存模型": { "data": { - "uuid": "java-5-845", + "uuid": "java-5-873", "seg": [ [ [ "顺序", "一致性", "内存", - "模型" + "模型", + "顺序一致性", + "一致性内存", + "内存模型" ] ] ], - "level": "1", + "level": { + "min": 0.48563058035714285, + "max": 0.4856460813492064 + }, "related_data": {} } } @@ -51989,7 +61119,7 @@ { "同步程序的顺序一致性效果": { "data": { - "uuid": "java-5-846", + "uuid": "java-5-874", "seg": [ [ [ @@ -51997,11 +61127,17 @@ "程序", "顺序", "一致性", - "效果" + "效果", + "同步程序", + "顺序一致性", + "一致性效果" ] ] ], - "level": "2", + "level": { + "min": 0.4856460813492064, + "max": 0.4856615823412699 + }, "related_data": {} } } @@ -52009,34 +61145,42 @@ { "未同步程序的执行特性": { "data": { - "uuid": "java-5-847", + "uuid": "java-5-875", "seg": [ [ [ "同步", "程序", "执行", - "特性" + "特性", + "同步程序" ] ] ], - "level": "2", + "level": { + "min": 0.4856615823412699, + "max": 0.48567708333333337 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-937", + "uuid": "java-4-948", "seg": [ [ [ "顺序", - "一致性" + "一致性", + "顺序一致性" ] ] ], - "level": "1", + "level": { + "min": 0.48561507936507936, + "max": 0.48567708333333337 + }, "related_data": {} } } @@ -52047,7 +61191,7 @@ { "volatile的特性": { "data": { - "uuid": "java-5-848", + "uuid": "java-5-876", "seg": [ [ [ @@ -52056,20 +61200,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48567708333333337, + "max": 0.48569258432539686 + }, "related_data": { "qa": { "data_id": [ - "13_696308_579881", - "13_742394_784484", - "13_1092031_1299752", - "13_903760_1039227", - "13_7417634_53373019", - "13_229304_196945", - "13_695500_578126", - "13_681151_533002", - "13_187111_80843", - "13_375669_405228" + "13_696308_579881@13", + "13_742394_784484@13", + "13_1092031_1299752@13", + "13_903760_1039227@13", + "13_7417634_53373019@13", + "13_229304_196945@13", + "13_695500_578126@13", + "13_681151_533002@13", + "13_187111_80843@13", + "13_375669_405228@13" ] } } @@ -52079,7 +61226,7 @@ { "volatile写-读建立的happens-before关系": { "data": { - "uuid": "java-5-849", + "uuid": "java-5-877", "seg": [ [ [ @@ -52095,7 +61242,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48569258432539686, + "max": 0.48570808531746035 + }, "related_data": {} } } @@ -52103,7 +61253,7 @@ { "volatile写-读的内存语义": { "data": { - "uuid": "java-5-850", + "uuid": "java-5-878", "seg": [ [ [ @@ -52111,11 +61261,15 @@ "写", "读", "内存", - "语义" + "语义", + "内存语义" ] ] ], - "level": "2", + "level": { + "min": 0.48570808531746035, + "max": 0.48572358630952384 + }, "related_data": {} } } @@ -52123,30 +61277,34 @@ { "volatile内存语义的实现": { "data": { - "uuid": "java-5-851", + "uuid": "java-5-879", "seg": [ [ [ "volatile", "内存", - "语义" + "语义", + "内存语义" ] ] ], - "level": "2", + "level": { + "min": 0.48572358630952384, + "max": 0.4857390873015873 + }, "related_data": { "qa": { "data_id": [ - "13_367489_393260", - "13_344477_347760", - "13_208125_143685", - "13_7435830_53407445", - "13_364317_385793", - "13_7426122_53388874", - "13_380823_414344", - "13_704941_603516", - "13_7415743_53369727", - "13_7426085_53388816" + "13_367489_393260@13", + "13_344477_347760@13", + "13_208125_143685@13", + "13_7435830_53407445@13", + "13_364317_385793@13", + "13_7426122_53388874@13", + "13_380823_414344@13", + "13_704941_603516@13", + "13_7415743_53369727@13", + "13_7426085_53388816@13" ] } } @@ -52155,17 +61313,21 @@ } ], "data": { - "uuid": "java-4-938", + "uuid": "java-4-949", "seg": [ [ [ "volatile", "内存", - "语义" + "语义", + "内存语义" ] ] ], - "level": "1", + "level": { + "min": 0.48567708333333337, + "max": 0.4857390873015873 + }, "related_data": {} } } @@ -52176,7 +61338,7 @@ { "锁的释放-获取建立的": { "data": { - "uuid": "java-5-852", + "uuid": "java-5-880", "seg": [ [ [ @@ -52187,7 +61349,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4857390873015873, + "max": 0.4857545882936508 + }, "related_data": {} } } @@ -52195,7 +61360,7 @@ { "锁的释放和获取的内存语义": { "data": { - "uuid": "java-5-853", + "uuid": "java-5-881", "seg": [ [ [ @@ -52205,17 +61370,21 @@ [ "获取", "内存", - "语义" + "语义", + "内存语义" ] ] ], - "level": "2", + "level": { + "min": 0.4857545882936508, + "max": 0.4857700892857143 + }, "related_data": { "qa": { "data_id": [ - "13_235099_213247", - "13_718265_711887", - "13_242917_230901" + "13_235099_213247@13", + "13_718265_711887@13", + "13_242917_230901@13" ] } } @@ -52225,17 +61394,21 @@ { "锁内存语义的实现": { "data": { - "uuid": "java-5-854", + "uuid": "java-5-882", "seg": [ [ [ "锁", "内存", - "语义" + "语义", + "内存语义" ] ] ], - "level": "2", + "level": { + "min": 0.4857700892857143, + "max": 0.4857855902777778 + }, "related_data": {} } } @@ -52243,7 +61416,7 @@ { "concurrent包的实现": { "data": { - "uuid": "java-5-855", + "uuid": "java-5-883", "seg": [ [ [ @@ -52252,24 +61425,31 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4857855902777778, + "max": 0.4858010912698413 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-939", + "uuid": "java-4-950", "seg": [ [ [ "锁", "内存", - "语义" + "语义", + "内存语义" ] ] ], - "level": "2", + "level": { + "min": 0.4857390873015873, + "max": 0.4858010912698413 + }, "related_data": {} } } @@ -52280,7 +61460,7 @@ { "final域的重排序规则": { "data": { - "uuid": "java-5-856", + "uuid": "java-5-884", "seg": [ [ [ @@ -52288,11 +61468,15 @@ "域", "重", "排序", - "规则" + "规则", + "排序规则" ] ] ], - "level": "2", + "level": { + "min": 0.4858010912698413, + "max": 0.48581349206349206 + }, "related_data": {} } } @@ -52300,7 +61484,7 @@ { "写final域的重排序规则": { "data": { - "uuid": "java-5-857", + "uuid": "java-5-885", "seg": [ [ [ @@ -52309,11 +61493,15 @@ "域", "重", "排序", - "规则" + "规则", + "排序规则" ] ] ], - "level": "2", + "level": { + "min": 0.48581349206349206, + "max": 0.48582589285714284 + }, "related_data": {} } } @@ -52321,7 +61509,7 @@ { "读final域的重排序规则": { "data": { - "uuid": "java-5-858", + "uuid": "java-5-886", "seg": [ [ [ @@ -52330,11 +61518,15 @@ "域", "重", "排序", - "规则" + "规则", + "排序规则" ] ] ], - "level": "2", + "level": { + "min": 0.48582589285714284, + "max": 0.4858382936507937 + }, "related_data": {} } } @@ -52342,7 +61534,7 @@ { "final域为引用类型": { "data": { - "uuid": "java-5-859", + "uuid": "java-5-887", "seg": [ [ [ @@ -52353,7 +61545,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4858382936507937, + "max": 0.48585069444444445 + }, "related_data": {} } } @@ -52361,7 +61556,7 @@ { "final语义在处理器中的实现": { "data": { - "uuid": "java-5-860", + "uuid": "java-5-888", "seg": [ [ [ @@ -52371,25 +61566,32 @@ ] ] ], - "level": "2", + "level": { + "min": 0.48585069444444445, + "max": 0.48586309523809523 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-940", + "uuid": "java-4-951", "seg": [ [ [ "final", "域", "内存", - "语义" + "语义", + "内存语义" ] ] ], - "level": "1", + "level": { + "min": 0.4858010912698413, + "max": 0.48586309523809523 + }, "related_data": {} } } @@ -52400,7 +61602,7 @@ { "JMM的设计": { "data": { - "uuid": "java-5-861", + "uuid": "java-5-889", "seg": [ [ [ @@ -52409,7 +61611,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48586309523809523, + "max": 0.48588376322751325 + }, "related_data": {} } } @@ -52417,7 +61622,7 @@ { "happens-before的定义": { "data": { - "uuid": "java-5-862", + "uuid": "java-5-890", "seg": [ [ [ @@ -52429,19 +61634,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48588376322751325, + "max": 0.4859044312169312 + }, "related_data": { "qa": { "data_id": [ - "13_941638_1079146", - "13_7425894_53390411", - "13_222489_178661", - "13_857849_983876", - "13_7441584_53417833", - "13_356269_371667", - "13_717835_711297", - "13_516192_438793", - "13_368005_394247" + "13_941638_1079146@13", + "13_186955_80430@13", + "13_7425894_53390411@13", + "13_1093393_1302725@13", + "13_1066509_1266189@13", + "13_373167_400929@13", + "13_7403599_53352141@13", + "13_7463233_53449043@13", + "13_354460_367001@13", + "13_670201_492526@13" ] } } @@ -52451,7 +61660,7 @@ { "happens-before规则": { "data": { - "uuid": "java-5-863", + "uuid": "java-5-891", "seg": [ [ [ @@ -52463,14 +61672,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4859044312169312, + "max": 0.48592509920634924 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-941", + "uuid": "java-4-952", "seg": [ [ [ @@ -52481,7 +61693,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48586309523809523, + "max": 0.48592509920634924 + }, "related_data": {} } } @@ -52492,7 +61707,7 @@ { "双重检查锁定的由来": { "data": { - "uuid": "java-5-864", + "uuid": "java-5-892", "seg": [ [ [ @@ -52502,7 +61717,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48592509920634924, + "max": 0.4859457671957672 + }, "related_data": {} } } @@ -52510,7 +61728,7 @@ { "基于volatile的解决方案": { "data": { - "uuid": "java-5-865", + "uuid": "java-5-893", "seg": [ [ [ @@ -52519,21 +61737,18 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_657610_470244" - ] - } - } + "level": { + "min": 0.4859457671957672, + "max": 0.48596643518518523 + }, + "related_data": {} } } }, { "基于类初始化的解决方案": { "data": { - "uuid": "java-5-866", + "uuid": "java-5-894", "seg": [ [ [ @@ -52543,14 +61758,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48596643518518523, + "max": 0.4859871031746032 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-942", + "uuid": "java-4-953", "seg": [ [ [ @@ -52564,7 +61782,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48592509920634924, + "max": 0.4859871031746032 + }, "related_data": {} } } @@ -52575,17 +61796,21 @@ { "处理器的内存模型": { "data": { - "uuid": "java-5-867", + "uuid": "java-5-895", "seg": [ [ [ "处理器", "内存", - "模型" + "模型", + "内存模型" ] ] ], - "level": "2", + "level": { + "min": 0.4859871031746032, + "max": 0.4860026041666667 + }, "related_data": {} } } @@ -52593,27 +61818,31 @@ { "各种内存模型之间的关系": { "data": { - "uuid": "java-5-868", + "uuid": "java-5-896", "seg": [ [ [ "内存", "模型", - "关系" + "关系", + "内存模型" ] ] ], - "level": "2", + "level": { + "min": 0.4860026041666667, + "max": 0.4860181051587302 + }, "related_data": { "qa": { "data_id": [ - "13_7428343_53394087", - "13_192626_96285", - "13_668495_488833", - "13_767358_827033", - "13_231535_202765", - "13_750499_804916", - "13_1082460_1289320" + "13_7428343_53394087@13", + "13_192626_96285@13", + "13_668495_488833@13", + "13_767358_827033@13", + "13_231535_202765@13", + "13_750499_804916@13", + "13_1082460_1289320@13" ] } } @@ -52623,7 +61852,7 @@ { "JMM的内存可见性保证": { "data": { - "uuid": "java-5-869", + "uuid": "java-5-897", "seg": [ [ [ @@ -52634,7 +61863,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4860181051587302, + "max": 0.48603360615079366 + }, "related_data": {} } } @@ -52642,53 +61874,65 @@ { "JSR-133对旧内存模型的修补": { "data": { - "uuid": "java-5-870", + "uuid": "java-5-898", "seg": [ [ [ "jsr", "内存", "模型", - "修补" + "修补", + "内存模型" ] ] ], - "level": "2", + "level": { + "min": 0.48603360615079366, + "max": 0.48604910714285715 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-943", + "uuid": "java-4-954", "seg": [ [ [ "java", "内存", "模型", - "综述" + "综述", + "内存模型" ] ] ], - "level": "1", + "level": { + "min": 0.4859871031746032, + "max": 0.48604910714285715 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-495", + "uuid": "java-3-488", "seg": [ [ [ "java", "内存", - "模型" + "模型", + "内存模型" ] ] ], - "level": "1", + "level": { + "min": 0.48549107142857145, + "max": 0.48604910714285715 + }, "related_data": {} } } @@ -52702,7 +61946,7 @@ { "什么是线程": { "data": { - "uuid": "java-5-871", + "uuid": "java-5-899", "seg": [ [ [ @@ -52710,20 +61954,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.48604910714285715, + "max": 0.4860956101190476 + }, "related_data": { "qa": { "data_id": [ - "13_189132_87432", - "13_245672_236442", - "13_745158_792484", - "13_746618_796418", - "13_245487_235981", - "13_167037_40975", - "13_7403911_53352681", - "13_1510255_5977620", - "13_208366_144234", - "13_746040_794852" + "13_356675_372517@13", + "13_671759_496162@13", + "13_7397324_53342178@13" ] } } @@ -52733,7 +61973,7 @@ { "线程优先级": { "data": { - "uuid": "java-5-872", + "uuid": "java-5-900", "seg": [ [ [ @@ -52742,7 +61982,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4860956101190476, + "max": 0.48614211309523814 + }, "related_data": {} } } @@ -52750,7 +61993,7 @@ { "线程的状态": { "data": { - "uuid": "java-5-873", + "uuid": "java-5-901", "seg": [ [ [ @@ -52759,7 +62002,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.48614211309523814, + "max": 0.4861886160714286 + }, "related_data": {} } } @@ -52767,7 +62013,7 @@ { "Daemon线程": { "data": { - "uuid": "java-5-874", + "uuid": "java-5-902", "seg": [ [ [ @@ -52776,14 +62022,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4861886160714286, + "max": 0.48623511904761907 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-944", + "uuid": "java-4-955", "seg": [ [ [ @@ -52792,7 +62041,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.48604910714285715, + "max": 0.48623511904761907 + }, "related_data": {} } } @@ -52803,7 +62055,7 @@ { "构造线程": { "data": { - "uuid": "java-5-875", + "uuid": "java-5-903", "seg": [ [ [ @@ -52812,7 +62064,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.48623511904761907, + "max": 0.48627232142857146 + }, "related_data": {} } } @@ -52820,7 +62075,7 @@ { "启动线程": { "data": { - "uuid": "java-5-876", + "uuid": "java-5-904", "seg": [ [ [ @@ -52829,20 +62084,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.48627232142857146, + "max": 0.4863095238095238 + }, "related_data": { "qa": { "data_id": [ - "13_226825_189969", - "13_237039_216536", - "13_233213_207814", - "13_149094_13015", - "13_349174_356617", - "13_7396288_53339690", - "13_7435911_53407002", - "13_680605_530932", - "13_767232_826839", - "13_1062989_1260999" + "13_233213_207814@13", + "13_149094_13015@13", + "13_349174_356617@13", + "13_7396288_53339690@13", + "13_7435911_53407002@13", + "13_680605_530932@13", + "13_767232_826839@13", + "13_1062989_1260999@13", + "13_235737_215048@13", + "13_669557_491337@13" ] } } @@ -52852,7 +62110,7 @@ { "理解中断": { "data": { - "uuid": "java-5-877", + "uuid": "java-5-905", "seg": [ [ [ @@ -52861,26 +62119,18 @@ ] ] ], - "level": "2", - "related_data": { - "qa": { - "data_id": [ - "13_1079291_1283903", - "13_263908_278701", - "13_377020_407345", - "13_10676_4896", - "13_182134_67925", - "13_7413235_53365162" - ] - } - } + "level": { + "min": 0.4863095238095238, + "max": 0.4863467261904762 + }, + "related_data": {} } } }, { "过期的suspend、resume和stop": { "data": { - "uuid": "java-5-878", + "uuid": "java-5-906", "seg": [ [ [ @@ -52894,7 +62144,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4863467261904762, + "max": 0.48638392857142854 + }, "related_data": {} } } @@ -52902,7 +62155,7 @@ { "安全地终止线程": { "data": { - "uuid": "java-5-879", + "uuid": "java-5-907", "seg": [ [ [ @@ -52911,16 +62164,18 @@ ] ] ], - "level": "2", + "level": { + "min": 0.48638392857142854, + "max": 0.48642113095238093 + }, "related_data": { "qa": { "data_id": [ - "13_1053693_1250920", - "13_653736_462768", - "13_761414_819914", - "13_217708_166354", - "13_234667_211969", - "13_923975_1058826" + "13_1053693_1250920@13", + "13_653736_462768@13", + "13_761414_819914@13", + "13_217708_166354@13", + "13_923975_1058826@13" ] } } @@ -52929,7 +62184,7 @@ } ], "data": { - "uuid": "java-4-945", + "uuid": "java-4-956", "seg": [ [ [ @@ -52941,7 +62196,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.48623511904761907, + "max": 0.48642113095238093 + }, "related_data": {} } } @@ -52952,7 +62210,7 @@ { "等待/通知机制": { "data": { - "uuid": "java-5-880", + "uuid": "java-5-908", "seg": [ [ [ @@ -52962,32 +62220,33 @@ ] ] ], - "level": "2", - "related_data": { - "qa": { - "data_id": [ - "13_676012_513131" - ] - } - } + "level": { + "min": 0.48642113095238093, + "max": 0.4864676339285714 + }, + "related_data": {} } } }, { "等待/通知的经典范式": { "data": { - "uuid": "java-5-881", + "uuid": "java-5-909", "seg": [ [ [ "等待", "通知", "经典", - "范式" + "范式", + "经典范式" ] ] ], - "level": "2", + "level": { + "min": 0.4864676339285714, + "max": 0.48651413690476186 + }, "related_data": {} } } @@ -52995,7 +62254,7 @@ { "管道输入/输出流": { "data": { - "uuid": "java-5-882", + "uuid": "java-5-910", "seg": [ [ [ @@ -53006,7 +62265,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.48651413690476186, + "max": 0.4865606398809524 + }, "related_data": {} } } @@ -53014,7 +62276,7 @@ { "Thread.join的使用": { "data": { - "uuid": "java-5-883", + "uuid": "java-5-911", "seg": [ [ [ @@ -53023,41 +62285,52 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4865606398809524, + "max": 0.48660714285714285 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-946", + "uuid": "java-4-957", "seg": [ [ [ "线程", - "间通信" + "间通信", + "线程间通信" ] ] ], - "level": "2", + "level": { + "min": 0.48642113095238093, + "max": 0.48660714285714285 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-496", + "uuid": "java-3-489", "seg": [ [ [ "java", "并发", "编程", - "基础" + "基础", + "编程基础" ] ] ], - "level": "2", + "level": { + "min": 0.48604910714285715, + "max": 0.48660714285714285 + }, "related_data": {} } } @@ -53068,7 +62341,7 @@ { "Lock接口": { "data": { - "uuid": "java-4-947", + "uuid": "java-4-958", "seg": [ [ [ @@ -53077,13 +62350,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48660714285714285, + "max": 0.4867001488095238 + }, "related_data": { "qa": { "data_id": [ - "13_7400445_53348354", - "13_751572_805237", - "13_7396569_53341136" + "13_7396569_53341136@13" ] } } @@ -53099,7 +62373,7 @@ { "Windows注册表概述": { "data": { - "uuid": "java-6-175", + "uuid": "java-6-176", "seg": [ [ [ @@ -53109,7 +62383,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4867001488095238, + "max": 0.48671564980158727 + }, "related_data": {} } } @@ -53117,7 +62394,7 @@ { "访问注册表的Java平台接口": { "data": { - "uuid": "java-6-176", + "uuid": "java-6-177", "seg": [ [ [ @@ -53129,7 +62406,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48671564980158727, + "max": 0.4867311507936508 + }, "related_data": {} } } @@ -53137,7 +62417,7 @@ { "以本地方法实现注册表访问函数": { "data": { - "uuid": "java-6-177", + "uuid": "java-6-178", "seg": [ [ [ @@ -53148,27 +62428,34 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4867311507936508, + "max": 0.4867466517857143 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-884", + "uuid": "java-5-912", "seg": [ [ [ "队列", "同步器", - "接口" + "接口", + "队列同步器" ], [ "示例" ] ] ], - "level": "1", + "level": { + "min": 0.4867001488095238, + "max": 0.4867466517857143 + }, "related_data": {} } } @@ -53176,21 +62463,25 @@ { "队列同步器的实现分析": { "data": { - "uuid": "java-5-885", + "uuid": "java-5-913", "seg": [ [ [ "队列", "同步器", - "分析" + "分析", + "队列同步器" ] ] ], - "level": "1", + "level": { + "min": 0.4867466517857143, + "max": 0.48679315476190477 + }, "related_data": { "qa": { "data_id": [ - "13_771579_834206" + "13_771579_834206@13" ] } } @@ -53199,16 +62490,20 @@ } ], "data": { - "uuid": "java-4-948", + "uuid": "java-4-959", "seg": [ [ [ "队列", - "同步器" + "同步器", + "队列同步器" ] ] ], - "level": "1", + "level": { + "min": 0.4867001488095238, + "max": 0.48679315476190477 + }, "related_data": {} } } @@ -53216,7 +62511,7 @@ { "重入锁": { "data": { - "uuid": "java-4-949", + "uuid": "java-4-960", "seg": [ [ [ @@ -53225,11 +62520,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.48679315476190477, + "max": 0.4868861607142857 + }, "related_data": { "qa": { "data_id": [ - "13_763730_822257" + "13_763730_822257@13" ] } } @@ -53242,7 +62540,7 @@ { "读写锁的接口与示例": { "data": { - "uuid": "java-5-886", + "uuid": "java-5-914", "seg": [ [ [ @@ -53255,7 +62553,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4868861607142857, + "max": 0.48693266369047616 + }, "related_data": {} } } @@ -53263,7 +62564,7 @@ { "读写锁的实现分析": { "data": { - "uuid": "java-5-887", + "uuid": "java-5-915", "seg": [ [ [ @@ -53273,12 +62574,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.48693266369047616, + "max": 0.48697916666666663 + }, "related_data": { "qa": { "data_id": [ - "13_174479_54450", - "13_656121_467409" + "13_174479_54450@13", + "13_656121_467409@13" ] } } @@ -53287,7 +62591,7 @@ } ], "data": { - "uuid": "java-4-950", + "uuid": "java-4-961", "seg": [ [ [ @@ -53296,7 +62600,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4868861607142857, + "max": 0.48697916666666663 + }, "related_data": {} } } @@ -53304,7 +62611,7 @@ { "LockSupport工具": { "data": { - "uuid": "java-4-951", + "uuid": "java-4-962", "seg": [ [ [ @@ -53313,7 +62620,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48697916666666663, + "max": 0.4870721726190476 + }, "related_data": {} } } @@ -53324,7 +62634,7 @@ { "Condition接口与示例": { "data": { - "uuid": "java-5-888", + "uuid": "java-5-916", "seg": [ [ [ @@ -53336,7 +62646,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4870721726190476, + "max": 0.4871186755952381 + }, "related_data": {} } } @@ -53344,7 +62657,7 @@ { "Condition的实现分析": { "data": { - "uuid": "java-5-889", + "uuid": "java-5-917", "seg": [ [ [ @@ -53353,11 +62666,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4871186755952381, + "max": 0.48716517857142855 + }, "related_data": { "qa": { "data_id": [ - "13_757548_813685" + "13_757548_813685@13" ] } } @@ -53366,7 +62682,7 @@ } ], "data": { - "uuid": "java-4-952", + "uuid": "java-4-963", "seg": [ [ [ @@ -53375,14 +62691,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4870721726190476, + "max": 0.48716517857142855 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-497", + "uuid": "java-3-490", "seg": [ [ [ @@ -53391,7 +62710,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48660714285714285, + "max": 0.48716517857142855 + }, "related_data": {} } } @@ -53405,7 +62727,7 @@ { "ConcurrentHashMap的结构": { "data": { - "uuid": "java-5-890", + "uuid": "java-5-918", "seg": [ [ [ @@ -53414,7 +62736,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.48716517857142855, + "max": 0.4872000558035714 + }, "related_data": {} } } @@ -53422,7 +62747,7 @@ { "ConcurrentHashMap的初始化": { "data": { - "uuid": "java-5-891", + "uuid": "java-5-919", "seg": [ [ [ @@ -53431,7 +62756,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4872000558035714, + "max": 0.4872349330357143 + }, "related_data": {} } } @@ -53439,7 +62767,7 @@ { "定位Segment": { "data": { - "uuid": "java-5-892", + "uuid": "java-5-920", "seg": [ [ [ @@ -53448,21 +62776,18 @@ ] ] ], - "level": "2", - "related_data": { - "qa": { - "data_id": [ - "13_1097844_1311879" - ] - } - } + "level": { + "min": 0.4872349330357143, + "max": 0.48726981026785715 + }, + "related_data": {} } } }, { "ConcurrentHashMap的操作": { "data": { - "uuid": "java-5-893", + "uuid": "java-5-921", "seg": [ [ [ @@ -53471,11 +62796,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.48726981026785715, + "max": 0.4873046875 + }, "related_data": { "qa": { "data_id": [ - "13_764593_823503" + "13_764593_823503@13" ] } } @@ -53484,7 +62812,7 @@ } ], "data": { - "uuid": "java-4-953", + "uuid": "java-4-964", "seg": [ [ [ @@ -53494,7 +62822,10 @@ [] ] ], - "level": "2", + "level": { + "min": 0.48716517857142855, + "max": 0.4873046875 + }, "related_data": {} } } @@ -53505,7 +62836,7 @@ { "ConcurrentLinkedQueue的结构": { "data": { - "uuid": "java-5-894", + "uuid": "java-5-922", "seg": [ [ [ @@ -53514,7 +62845,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4873046875, + "max": 0.48735119047619047 + }, "related_data": {} } } @@ -53522,7 +62856,7 @@ { "入队列": { "data": { - "uuid": "java-5-895", + "uuid": "java-5-923", "seg": [ [ [ @@ -53531,11 +62865,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.48735119047619047, + "max": 0.48739769345238093 + }, "related_data": { "qa": { "data_id": [ - "13_7466788_53454128" + "13_7466788_53454128@13" ] } } @@ -53545,7 +62882,7 @@ { "出队列": { "data": { - "uuid": "java-5-896", + "uuid": "java-5-924", "seg": [ [ [ @@ -53554,15 +62891,18 @@ ] ] ], - "level": "2", + "level": { + "min": 0.48739769345238093, + "max": 0.4874441964285714 + }, "related_data": { "qa": { "data_id": [ - "13_7438022_53411321", - "13_250176_247040", - "13_7447436_53427313", - "13_155321_15359", - "13_7467420_53454965" + "13_7438022_53411321@13", + "13_250176_247040@13", + "13_7447436_53427313@13", + "13_155321_15359@13", + "13_7467420_53454965@13" ] } } @@ -53571,7 +62911,7 @@ } ], "data": { - "uuid": "java-4-954", + "uuid": "java-4-965", "seg": [ [ [ @@ -53579,7 +62919,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4873046875, + "max": 0.4874441964285714 + }, "related_data": {} } } @@ -53590,7 +62933,7 @@ { "什么是阻塞队列": { "data": { - "uuid": "java-5-897", + "uuid": "java-5-925", "seg": [ [ [ @@ -53599,7 +62942,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4874441964285714, + "max": 0.48749069940476186 + }, "related_data": {} } } @@ -53607,7 +62953,7 @@ { "Java里的阻塞队列": { "data": { - "uuid": "java-5-898", + "uuid": "java-5-926", "seg": [ [ [ @@ -53617,7 +62963,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.48749069940476186, + "max": 0.4875372023809524 + }, "related_data": {} } } @@ -53625,7 +62974,7 @@ { "阻塞队列的实现原理": { "data": { - "uuid": "java-5-899", + "uuid": "java-5-927", "seg": [ [ [ @@ -53635,14 +62984,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4875372023809524, + "max": 0.48758370535714285 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-955", + "uuid": "java-4-966", "seg": [ [ [ @@ -53652,7 +63004,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4874441964285714, + "max": 0.48758370535714285 + }, "related_data": {} } } @@ -53663,7 +63018,7 @@ { "什么是Fork/Join框架": { "data": { - "uuid": "java-5-900", + "uuid": "java-5-928", "seg": [ [ [ @@ -53673,20 +63028,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.48758370535714285, + "max": 0.4876069568452381 + }, "related_data": { "qa": { "data_id": [ - "13_186955_80430", - "13_1093393_1302725", - "13_1066509_1266189", - "13_749696_802380", - "13_373167_400929", - "13_7403599_53352141", - "13_7463233_53449043", - "13_354460_367001", - "13_670201_492526", - "13_365467_388684" + "13_194600_102754@13", + "13_749696_802380@13", + "13_770751_832746@13" ] } } @@ -53696,7 +63047,7 @@ { "工作窃取算法": { "data": { - "uuid": "java-5-901", + "uuid": "java-5-929", "seg": [ [ [ @@ -53706,7 +63057,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4876069568452381, + "max": 0.4876302083333333 + }, "related_data": {} } } @@ -53714,7 +63068,7 @@ { "Fork/Join框架的设计": { "data": { - "uuid": "java-5-902", + "uuid": "java-5-930", "seg": [ [ [ @@ -53725,7 +63079,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4876302083333333, + "max": 0.4876534598214286 + }, "related_data": {} } } @@ -53733,7 +63090,7 @@ { "使用Fork/Join框架": { "data": { - "uuid": "java-5-903", + "uuid": "java-5-931", "seg": [ [ [ @@ -53743,7 +63100,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4876534598214286, + "max": 0.48767671130952384 + }, "related_data": {} } } @@ -53751,23 +63111,27 @@ { "Fork/Join框架的异常处理": { "data": { - "uuid": "java-5-904", + "uuid": "java-5-932", "seg": [ [ [ "fork", "join", "框架", - "异常" + "异常", + "异常处理" ] ] ], - "level": "1", + "level": { + "min": 0.48767671130952384, + "max": 0.48769996279761907 + }, "related_data": { "qa": { "data_id": [ - "13_345976_386139", - "13_246212_237483" + "13_345976_386139@13", + "13_246212_237483@13" ] } } @@ -53777,7 +63141,7 @@ { "Fork/Join框架的实现原理": { "data": { - "uuid": "java-5-905", + "uuid": "java-5-933", "seg": [ [ [ @@ -53788,11 +63152,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.48769996279761907, + "max": 0.4877232142857143 + }, "related_data": { "qa": { "data_id": [ - "13_747072_797845" + "13_747072_797845@13" ] } } @@ -53801,7 +63168,7 @@ } ], "data": { - "uuid": "java-4-956", + "uuid": "java-4-967", "seg": [ [ [ @@ -53811,14 +63178,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.48758370535714285, + "max": 0.4877232142857143 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-498", + "uuid": "java-3-491", "seg": [ [ [ @@ -53831,7 +63201,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.48716517857142855, + "max": 0.4877232142857143 + }, "related_data": {} } } @@ -53842,18 +63215,24 @@ { "原子更新基本类型类": { "data": { - "uuid": "java-4-957", + "uuid": "java-4-968", "seg": [ [ [ "原子", "更新", "类型", - "类" + "类", + "更新基本", + "基本类型", + "类型类" ] ] ], - "level": "1", + "level": { + "min": 0.4877232142857143, + "max": 0.4878627232142857 + }, "related_data": {} } } @@ -53861,17 +63240,21 @@ { "原子更新数组": { "data": { - "uuid": "java-4-958", + "uuid": "java-4-969", "seg": [ [ [ "原子", "更新", - "数组" + "数组", + "更新数组" ] ] ], - "level": "1", + "level": { + "min": 0.4878627232142857, + "max": 0.48800223214285715 + }, "related_data": {} } } @@ -53879,18 +63262,22 @@ { "原子更新引用类型": { "data": { - "uuid": "java-4-959", + "uuid": "java-4-970", "seg": [ [ [ "原子", "更新", "引用", - "类型" + "类型", + "更新引用" ] ] ], - "level": "2", + "level": { + "min": 0.48800223214285715, + "max": 0.4881417410714286 + }, "related_data": {} } } @@ -53898,25 +63285,30 @@ { "原子更新字段类": { "data": { - "uuid": "java-4-960", + "uuid": "java-4-971", "seg": [ [ [ "原子", "更新", "字段", - "类" + "类", + "更新字段", + "字段类" ] ] ], - "level": "2", + "level": { + "min": 0.4881417410714286, + "max": 0.48828125 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-499", + "uuid": "java-3-492", "seg": [ [ [ @@ -53927,7 +63319,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4877232142857143, + "max": 0.48828125 + }, "related_data": {} } } @@ -53938,7 +63333,7 @@ { "等待多线程完成的CountDownLatch": { "data": { - "uuid": "java-4-961", + "uuid": "java-4-972", "seg": [ [ [ @@ -53948,7 +63343,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.48828125, + "max": 0.4884207589285714 + }, "related_data": {} } } @@ -53959,7 +63357,7 @@ { "CyclicBarrier简介": { "data": { - "uuid": "java-5-906", + "uuid": "java-5-934", "seg": [ [ [ @@ -53968,7 +63366,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4884207589285714, + "max": 0.48846726190476186 + }, "related_data": {} } } @@ -53976,7 +63377,7 @@ { "CyclicBarrier的应用场景": { "data": { - "uuid": "java-5-907", + "uuid": "java-5-935", "seg": [ [ [ @@ -53985,7 +63386,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.48846726190476186, + "max": 0.4885137648809524 + }, "related_data": {} } } @@ -53993,7 +63397,7 @@ { "CyclicBarrier和CountDownLatch的区别": { "data": { - "uuid": "java-5-908", + "uuid": "java-5-936", "seg": [ [ [ @@ -54005,11 +63409,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4885137648809524, + "max": 0.48856026785714285 + }, "related_data": { "qa": { "data_id": [ - "13_364513_386351" + "13_364513_386351@13" ] } } @@ -54018,17 +63425,21 @@ } ], "data": { - "uuid": "java-4-962", + "uuid": "java-4-973", "seg": [ [ [ "同步", "屏障", - "cyclicbarrier" + "cyclicbarrier", + "同步屏障" ] ] ], - "level": "2", + "level": { + "min": 0.4884207589285714, + "max": 0.48856026785714285 + }, "related_data": {} } } @@ -54036,7 +63447,7 @@ { "控制并发线程数的Semaphore": { "data": { - "uuid": "java-4-963", + "uuid": "java-4-974", "seg": [ [ [ @@ -54047,12 +63458,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.48856026785714285, + "max": 0.4886997767857143 + }, "related_data": { "qa": { "data_id": [ - "13_771208_833586", - "13_229782_198302" + "13_771208_833586@13", + "13_229782_198302@13" ] } } @@ -54062,7 +63476,7 @@ { "线程间交换数据的Exchanger": { "data": { - "uuid": "java-4-964", + "uuid": "java-4-975", "seg": [ [ [ @@ -54073,11 +63487,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4886997767857143, + "max": 0.4888392857142857 + }, "related_data": { "qa": { "data_id": [ - "13_1103947_1318251" + "13_1103947_1318251@13" ] } } @@ -54086,18 +63503,22 @@ } ], "data": { - "uuid": "java-3-500", + "uuid": "java-3-493", "seg": [ [ [ "java", "并发", "工具", - "类" + "类", + "工具类" ] ] ], - "level": "2", + "level": { + "min": 0.48828125, + "max": 0.4888392857142857 + }, "related_data": {} } } @@ -54108,17 +63529,21 @@ { "线程池的实现原理": { "data": { - "uuid": "java-4-965", + "uuid": "java-4-976", "seg": [ [ [ "线程", "池", - "原理" + "原理", + "线程池" ] ] ], - "level": "2", + "level": { + "min": 0.4888392857142857, + "max": 0.4891183035714286 + }, "related_data": {} } } @@ -54129,22 +63554,26 @@ { "线程池的创建": { "data": { - "uuid": "java-5-909", + "uuid": "java-5-937", "seg": [ [ [ "线程", "池", - "创建" + "创建", + "线程池" ] ] ], - "level": "2", + "level": { + "min": 0.4891183035714286, + "max": 0.4891741071428572 + }, "related_data": { "qa": { "data_id": [ - "13_7458441_53443157", - "13_1071564_1274548" + "13_7458441_53443157@13", + "13_1071564_1274548@13" ] } } @@ -54154,17 +63583,21 @@ { "向线程池提交任务": { "data": { - "uuid": "java-5-910", + "uuid": "java-5-938", "seg": [ [ [ "线程", "池", - "提交" + "提交", + "线程池" ] ] ], - "level": "2", + "level": { + "min": 0.4891741071428572, + "max": 0.48922991071428573 + }, "related_data": {} } } @@ -54172,30 +63605,34 @@ { "关闭线程池": { "data": { - "uuid": "java-5-911", + "uuid": "java-5-939", "seg": [ [ [ "关闭", "线程", - "池" + "池", + "线程池" ] ] ], - "level": "2", + "level": { + "min": 0.48922991071428573, + "max": 0.4892857142857143 + }, "related_data": { "qa": { "data_id": [ - "13_654142_463636", - "13_694276_573796", - "13_678025_521291", - "13_7419062_53376034", - "13_1089801_1296464", - "13_7401716_53350074", - "13_173978_53245", - "13_957451_1103747", - "13_1049021_1246423", - "13_747207_798201" + "13_654142_463636@13", + "13_694276_573796@13", + "13_678025_521291@13", + "13_7419062_53376034@13", + "13_1089801_1296464@13", + "13_7401716_53350074@13", + "13_173978_53245@13", + "13_957451_1103747@13", + "13_1049021_1246423@13", + "13_747207_798201@13" ] } } @@ -54205,17 +63642,21 @@ { "合理地配置线程池": { "data": { - "uuid": "java-5-912", + "uuid": "java-5-940", "seg": [ [ [ "配置", "线程", - "池" + "池", + "线程池" ] ] ], - "level": "2", + "level": { + "min": 0.4892857142857143, + "max": 0.48934151785714286 + }, "related_data": {} } } @@ -54223,56 +63664,62 @@ { "线程池的监控": { "data": { - "uuid": "java-5-913", + "uuid": "java-5-941", "seg": [ [ [ "线程", "池", - "监控" + "监控", + "线程池" ] ] ], - "level": "2", + "level": { + "min": 0.48934151785714286, + "max": 0.48939732142857145 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-966", + "uuid": "java-4-977", "seg": [ [ [ "线程", - "池" + "池", + "线程池" ] ] ], - "level": "2", - "related_data": { - "qa": { - "data_id": [ - "13_710340_668596" - ] - } - } + "level": { + "min": 0.4891183035714286, + "max": 0.48939732142857145 + }, + "related_data": {} } } } ], "data": { - "uuid": "java-3-501", + "uuid": "java-3-494", "seg": [ [ [ "java", "线程", - "池" + "池", + "线程池" ] ] ], - "level": "2", + "level": { + "min": 0.4888392857142857, + "max": 0.48939732142857145 + }, "related_data": {} } } @@ -54286,18 +63733,22 @@ { "Executor框架的两级调度模型": { "data": { - "uuid": "java-5-914", + "uuid": "java-5-942", "seg": [ [ [ "executor", "框架", "调度", - "模型" + "模型", + "调度模型" ] ] ], - "level": "1", + "level": { + "min": 0.48939732142857145, + "max": 0.4894670758928572 + }, "related_data": {} } } @@ -54305,7 +63756,7 @@ { "Executor框架的结构与成员": { "data": { - "uuid": "java-5-915", + "uuid": "java-5-943", "seg": [ [ [ @@ -54318,20 +63769,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4894670758928572, + "max": 0.4895368303571429 + }, "related_data": { "qa": { "data_id": [ - "13_7455882_53439235", - "13_240094_224029", - "13_237914_219273", - "13_348885_356294", - "13_371939_400389", - "13_744501_790634", - "13_157465_20409", - "13_226463_188996", - "13_258358_396208", - "13_6148503_42167879" + "13_7455882_53439235@13", + "13_240094_224029@13", + "13_237914_219273@13", + "13_348885_356294@13", + "13_371939_400389@13", + "13_744501_790634@13", + "13_157465_20409@13", + "13_226463_188996@13", + "13_258358_396208@13", + "13_6148503_42167879@13" ] } } @@ -54340,7 +63794,7 @@ } ], "data": { - "uuid": "java-4-967", + "uuid": "java-4-978", "seg": [ [ [ @@ -54350,7 +63804,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48939732142857145, + "max": 0.4895368303571429 + }, "related_data": {} } } @@ -54361,7 +63818,7 @@ { "FixedThreadPool详解": { "data": { - "uuid": "java-5-916", + "uuid": "java-5-944", "seg": [ [ [ @@ -54370,7 +63827,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4895368303571429, + "max": 0.48958333333333337 + }, "related_data": {} } } @@ -54378,7 +63838,7 @@ { "SingleThreadExecutor详解": { "data": { - "uuid": "java-5-917", + "uuid": "java-5-945", "seg": [ [ [ @@ -54387,7 +63847,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48958333333333337, + "max": 0.48962983630952384 + }, "related_data": {} } } @@ -54395,7 +63858,7 @@ { "CachedThreadPool详解": { "data": { - "uuid": "java-5-918", + "uuid": "java-5-946", "seg": [ [ [ @@ -54404,14 +63867,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48962983630952384, + "max": 0.4896763392857143 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-968", + "uuid": "java-4-979", "seg": [ [ [ @@ -54420,7 +63886,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4895368303571429, + "max": 0.4896763392857143 + }, "related_data": {} } } @@ -54431,7 +63900,7 @@ { "ScheduledThreadPoolExecutor的运行机制": { "data": { - "uuid": "java-5-919", + "uuid": "java-5-947", "seg": [ [ [ @@ -54440,7 +63909,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4896763392857143, + "max": 0.48974609375 + }, "related_data": {} } } @@ -54448,7 +63920,7 @@ { "ScheduledThreadPoolExecutor的实现": { "data": { - "uuid": "java-5-920", + "uuid": "java-5-948", "seg": [ [ [ @@ -54456,14 +63928,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48974609375, + "max": 0.4898158482142857 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-969", + "uuid": "java-4-980", "seg": [ [ [ @@ -54472,7 +63947,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4896763392857143, + "max": 0.4898158482142857 + }, "related_data": {} } } @@ -54483,7 +63961,7 @@ { "FutureTask简介": { "data": { - "uuid": "java-5-921", + "uuid": "java-5-949", "seg": [ [ [ @@ -54492,7 +63970,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4898158482142857, + "max": 0.48986235119047616 + }, "related_data": {} } } @@ -54500,7 +63981,7 @@ { "FutureTask的使用": { "data": { - "uuid": "java-5-922", + "uuid": "java-5-950", "seg": [ [ [ @@ -54508,7 +63989,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48986235119047616, + "max": 0.4899088541666667 + }, "related_data": {} } } @@ -54516,7 +64000,7 @@ { "FutureTask的实现": { "data": { - "uuid": "java-5-923", + "uuid": "java-5-951", "seg": [ [ [ @@ -54524,14 +64008,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4899088541666667, + "max": 0.48995535714285715 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-970", + "uuid": "java-4-981", "seg": [ [ [ @@ -54540,14 +64027,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4898158482142857, + "max": 0.48995535714285715 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-502", + "uuid": "java-3-495", "seg": [ [ [ @@ -54556,7 +64046,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48939732142857145, + "max": 0.48995535714285715 + }, "related_data": {} } } @@ -54570,7 +64063,7 @@ { "多生产者和多消费者场景": { "data": { - "uuid": "java-5-924", + "uuid": "java-5-952", "seg": [ [ [ @@ -54578,21 +64071,25 @@ ], [ "消费者", - "场景" + "场景", + "消费者场景" ] ] ], - "level": "2", + "level": { + "min": 0.48995535714285715, + "max": 0.49014136904761907 + }, "related_data": { "qa": { "data_id": [ - "13_742735_785501", - "13_199289_116906", - "13_690686_561295", - "13_719860_714128", - "13_357781_374828", - "13_1088118_1294781", - "13_7445422_53424051" + "13_742735_785501@13", + "13_199289_116906@13", + "13_690686_561295@13", + "13_719860_714128@13", + "13_357781_374828@13", + "13_1088118_1294781@13", + "13_7445422_53424051@13" ] } } @@ -54601,7 +64098,7 @@ } ], "data": { - "uuid": "java-4-971", + "uuid": "java-4-982", "seg": [ [ [ @@ -54609,11 +64106,15 @@ ], [ "消费者", - "模式" + "模式", + "消费者模式" ] ] ], - "level": "2", + "level": { + "min": 0.48995535714285715, + "max": 0.49014136904761907 + }, "related_data": {} } } @@ -54621,7 +64122,7 @@ { "性能测试": { "data": { - "uuid": "java-4-972", + "uuid": "java-4-983", "seg": [ [ [ @@ -54629,7 +64130,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49014136904761907, + "max": 0.49032738095238093 + }, "related_data": {} } } @@ -54637,23 +64141,28 @@ { "异步任务池": { "data": { - "uuid": "java-4-973", + "uuid": "java-4-984", "seg": [ [ [ "异步", - "池" + "池", + "异步任务", + "任务池" ] ] ], - "level": "2", + "level": { + "min": 0.49032738095238093, + "max": 0.49051339285714285 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-503", + "uuid": "java-3-496", "seg": [ [ [ @@ -54664,7 +64173,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.48995535714285715, + "max": 0.49051339285714285 + }, "related_data": {} } } @@ -54681,7 +64193,7 @@ { "Java在编程语言生态系统中的位置": { "data": { - "uuid": "java-6-178", + "uuid": "java-6-179", "seg": [ [ [ @@ -54692,21 +64204,18 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_1099200_1314188" - ] - } - } + "level": { + "min": 0.49051339285714285, + "max": 0.49052501860119047 + }, + "related_data": {} } } }, { "用行为参数化把代码传递给方法": { "data": { - "uuid": "java-6-179", + "uuid": "java-6-180", "seg": [ [ [ @@ -54717,12 +64226,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49052501860119047, + "max": 0.4905366443452381 + }, "related_data": { "qa": { "data_id": [ - "13_7414520_53367331", - "13_1093212_1302387" + "13_7414520_53367331@13", + "13_1093212_1302387@13" ] } } @@ -54732,7 +64244,7 @@ { "并行与共享的可变数据": { "data": { - "uuid": "java-6-180", + "uuid": "java-6-181", "seg": [ [ [ @@ -54745,7 +64257,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4905366443452381, + "max": 0.4905482700892857 + }, "related_data": {} } } @@ -54753,7 +64268,7 @@ { "Java需要演变": { "data": { - "uuid": "java-6-181", + "uuid": "java-6-182", "seg": [ [ [ @@ -54762,14 +64277,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4905482700892857, + "max": 0.4905598958333333 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-925", + "uuid": "java-5-953", "seg": [ [ [ @@ -54778,7 +64296,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49051339285714285, + "max": 0.4905598958333333 + }, "related_data": {} } } @@ -54804,16 +64325,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4905598958333333, + "max": 0.4905618334573413 + }, "related_data": { "qa": { "data_id": [ - "13_244909_234786", - "13_691761_565202", - "13_230938_201084", - "13_7466337_53453535", - "13_237933_219276", - "13_1079545_1284257" + "13_244909_234786@13", + "13_363393_383608@13", + "13_178799_63438@13", + "13_7460884_53446002@13", + "13_226517_189345@13", + "13_7458626_53443256@13", + "13_226164_188403@13", + "13_701664_591605@13", + "13_250412_247601@13", + "13_691761_565202@13" ] } } @@ -54828,14 +64356,18 @@ [ [ "数值", - "参数" + "参数", + "数值参数" ], [ "返回值" ] ] ], - "level": "1", + "level": { + "min": 0.4905618334573413, + "max": 0.4905637710813492 + }, "related_data": {} } } @@ -54848,11 +64380,15 @@ [ [ "字符串", - "参数" + "参数", + "字符串参数" ] ] ], - "level": "1", + "level": { + "min": 0.4905637710813492, + "max": 0.4905657087053571 + }, "related_data": {} } } @@ -54869,20 +64405,23 @@ [ "访问", "静态", - "域" + "域", + "静态域" ] ] ], - "level": "1", + "level": { + "min": 0.4905657087053571, + "max": 0.49056764632936506 + }, "related_data": { "qa": { "data_id": [ - "13_680153_529336", - "13_235517_214464", - "13_797210_947795", - "13_364845_387251", - "13_7456173_53439627", - "13_668107_487954" + "13_680153_529336@13", + "13_235517_214464@13", + "13_797210_947795@13", + "13_364845_387251@13", + "13_668107_487954@13" ] } } @@ -54900,7 +64439,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4905657087053571, + "max": 0.49056764632936506 + }, "related_data": {} } } @@ -54917,15 +64459,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49056764632936506, + "max": 0.490569583953373 + }, "related_data": { "qa": { "data_id": [ - "13_7399808_53347306", - "13_742803_785684", - "13_779188_847055", - "13_1095076_1305938", - "13_651268_458764" + "13_7399808_53347306@13", + "13_742803_785684@13", + "13_779188_847055@13", + "13_1095076_1305938@13", + "13_651268_458764@13" ] } } @@ -54946,15 +64491,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.490569583953373, + "max": 0.4905702298280423 + }, "related_data": { "qa": { "data_id": [ - "13_744962_791890", - "13_361642_379672", - "13_7416434_53370504", - "13_1053601_1250846", - "13_646107_448604" + "13_361642_379672@13", + "13_7416434_53370504@13", + "13_1053601_1250846@13", + "13_646107_448604@13" ] } } @@ -54973,7 +64520,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4905702298280423, + "max": 0.49057087570271163 + }, "related_data": {} } } @@ -54990,20 +64540,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49057087570271163, + "max": 0.49057152157738093 + }, "related_data": { "qa": { "data_id": [ - "13_1101123_1315725", - "13_1060280_1257804", - "13_241789_228255", - "13_7425094_53386278", - "13_231027_201499", - "13_6557141_46949313", - "13_248587_243521", - "13_7397901_53343400", - "13_644558_445382", - "13_372009_398965" + "13_7425094_53386278@13", + "13_231027_201499@13", + "13_6557141_46949313@13", + "13_248587_243521@13", + "13_7397901_53343400@13", + "13_644558_445382@13", + "13_372009_398965@13", + "13_982572_1144545@13", + "13_661492_476591@13", + "13_377959_409008@13" ] } } @@ -55022,7 +64575,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.490569583953373, + "max": 0.49057152157738093 + }, "related_data": {} } } @@ -55036,15 +64592,19 @@ [ "访问", "数组", - "元素" + "元素", + "数组元素" ] ] ], - "level": "1", + "level": { + "min": 0.49057152157738093, + "max": 0.49057345920138884 + }, "related_data": { "qa": { "data_id": [ - "13_644043_444357" + "13_644043_444357@13" ] } } @@ -55063,14 +64623,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49057345920138884, + "max": 0.4905753968253968 + }, "related_data": {} } } } ], "data": { - "uuid": "java-6-182", + "uuid": "java-6-183", "seg": [ [ [ @@ -55082,7 +64645,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4905598958333333, + "max": 0.4905753968253968 + }, "related_data": {} } } @@ -55090,7 +64656,7 @@ { "传递代码:一个例子": { "data": { - "uuid": "java-6-183", + "uuid": "java-6-184", "seg": [ [ [ @@ -55103,21 +64669,18 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_783587_855532" - ] - } - } + "level": { + "min": 0.4905753968253968, + "max": 0.49059089781746035 + }, + "related_data": {} } } }, { "从传递方法到Lambda": { "data": { - "uuid": "java-6-184", + "uuid": "java-6-185", "seg": [ [ [ @@ -55127,14 +64690,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49059089781746035, + "max": 0.49060639880952384 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-926", + "uuid": "java-5-954", "seg": [ [ [ @@ -55143,7 +64709,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4905598958333333, + "max": 0.49060639880952384 + }, "related_data": {} } } @@ -55167,7 +64736,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49060639880952384, + "max": 0.49061221168154767 + }, "related_data": {} } } @@ -55184,20 +64756,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49061221168154767, + "max": 0.49061802455357145 + }, "related_data": { "qa": { "data_id": [ - "13_365551_388907", - "13_344497_347696", - "13_638523_441862", - "13_257151_263408", - "13_239872_223560", - "13_7403865_53352559", - "13_665039_482342", - "13_7437194_53409844", - "13_7419446_53376621", - "13_226489_189052" + "13_365551_388907@13", + "13_344497_347696@13", + "13_638523_441862@13", + "13_257151_263408@13", + "13_239872_223560@13", + "13_7403865_53352559@13", + "13_665039_482342@13", + "13_7437194_53409844@13", + "13_7419446_53376621@13", + "13_226489_189052@13" ] } } @@ -55206,16 +64781,20 @@ } ], "data": { - "uuid": "java-6-185", + "uuid": "java-6-186", "seg": [ [ [ "演进", - "api" + "api", + "不断演进" ] ] ], - "level": "1", + "level": { + "min": 0.49060639880952384, + "max": 0.49061802455357145 + }, "related_data": {} } } @@ -55223,7 +64802,7 @@ { "概述默认方法": { "data": { - "uuid": "java-6-186", + "uuid": "java-6-187", "seg": [ [ [ @@ -55233,15 +64812,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49061802455357145, + "max": 0.49062965029761907 + }, "related_data": { "qa": { "data_id": [ - "13_236102_215747", - "13_208210_144411", - "13_699265_587142", - "13_755340_810882", - "13_751776_809112" + "13_236102_215747@13", + "13_1066433_1266095@13", + "13_208210_144411@13", + "13_699265_587142@13", + "13_755340_810882@13", + "13_751776_809112@13" ] } } @@ -55262,26 +64845,17 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_699939_588433", - "13_374496_403913", - "13_384974_422079", - "13_163149_35654", - "13_1108793_1349184", - "13_681209_533762", - "13_4645471_29328097" - ] - } - } + "level": { + "min": 0.49062965029761907, + "max": 0.4906412760416667 + }, + "related_data": {} } } } ], "data": { - "uuid": "java-6-187", + "uuid": "java-6-188", "seg": [ [ [ @@ -55291,7 +64865,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49062965029761907, + "max": 0.4906412760416667 + }, "related_data": {} } } @@ -55314,7 +64891,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4906412760416667, + "max": 0.49064708891369047 + }, "related_data": {} } } @@ -55335,11 +64915,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49064708891369047, + "max": 0.4906529017857143 + }, "related_data": { "qa": { "data_id": [ - "13_671585_495636" + "13_671585_495636@13" ] } } @@ -55348,7 +64931,7 @@ } ], "data": { - "uuid": "java-6-188", + "uuid": "java-6-189", "seg": [ [ [ @@ -55357,13 +64940,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4906412760416667, + "max": 0.4906529017857143 + }, "related_data": { "qa": { "data_id": [ - "13_7407584_53357576", - "13_685535_545495", - "13_749647_802277" + "13_7407584_53357576@13", + "13_685535_545495@13", + "13_749647_802277@13" ] } } @@ -55372,7 +64958,7 @@ } ], "data": { - "uuid": "java-5-927", + "uuid": "java-5-955", "seg": [ [ [ @@ -55385,7 +64971,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49060639880952384, + "max": 0.4906529017857143 + }, "related_data": {} } } @@ -55393,24 +64982,28 @@ { "来自函数式编程的其他好思想": { "data": { - "uuid": "java-5-928", + "uuid": "java-5-956", "seg": [ [ [ "函数", "编程", - "思想" + "思想", + "函数式" ] ] ], - "level": "1", + "level": { + "min": 0.4906529017857143, + "max": 0.49069940476190477 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-974", + "uuid": "java-4-985", "seg": [ [ [ @@ -55423,7 +65016,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49051339285714285, + "max": 0.49069940476190477 + }, "related_data": {} } } @@ -55437,7 +65033,7 @@ { "初试牛刀:筛选绿苹果": { "data": { - "uuid": "java-6-189", + "uuid": "java-6-190", "seg": [ [ [ @@ -55453,11 +65049,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49069940476190477, + "max": 0.49071490575396826 + }, "related_data": { "qa": { "data_id": [ - "13_227839_192725" + "13_227839_192725@13" ] } } @@ -55467,7 +65066,7 @@ { "再展身手:把颜色作为参数": { "data": { - "uuid": "java-6-190", + "uuid": "java-6-191", "seg": [ [ [ @@ -55482,7 +65081,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49071490575396826, + "max": 0.49073040674603174 + }, "related_data": {} } } @@ -55490,7 +65092,7 @@ { "第三次尝试:对你能想到的每个属性做筛选": { "data": { - "uuid": "java-6-191", + "uuid": "java-6-192", "seg": [ [ [ @@ -55506,11 +65108,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49073040674603174, + "max": 0.49074590773809523 + }, "related_data": { "qa": { "data_id": [ - "13_755341_810876" + "13_755341_810876@13" ] } } @@ -55519,17 +65124,21 @@ } ], "data": { - "uuid": "java-5-929", + "uuid": "java-5-957", "seg": [ [ [ "应对", "变化", - "需求" + "需求", + "不断变化" ] ] ], - "level": "1", + "level": { + "min": 0.49069940476190477, + "max": 0.49074590773809523 + }, "related_data": {} } } @@ -55537,22 +65146,26 @@ { "行为参数化": { "data": { - "uuid": "java-5-930", + "uuid": "java-5-958", "seg": [ [ [ "参数", - "化" + "化", + "参数化" ] ] ], - "level": "1", + "level": { + "min": 0.49074590773809523, + "max": 0.4907924107142857 + }, "related_data": { "qa": { "data_id": [ - "13_252319_251919", - "13_1091641_1299221", - "13_773546_841369" + "13_252319_251919@13", + "13_1091641_1299221@13", + "13_773546_841369@13" ] } } @@ -55565,7 +65178,7 @@ { "匿名类": { "data": { - "uuid": "java-6-192", + "uuid": "java-6-193", "seg": [ [ [ @@ -55574,12 +65187,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4907924107142857, + "max": 0.4908040364583333 + }, "related_data": { "qa": { "data_id": [ - "13_193100_97782", - "13_924558_1059458" + "13_193100_97782@13", + "13_924558_1059458@13" ] } } @@ -55589,7 +65205,7 @@ { "第五次尝试:使用匿名类": { "data": { - "uuid": "java-6-193", + "uuid": "java-6-194", "seg": [ [ [ @@ -55603,7 +65219,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4908040364583333, + "max": 0.49081566220238093 + }, "related_data": {} } } @@ -55611,7 +65230,7 @@ { "第六次尝试:使用Lambda表达式": { "data": { - "uuid": "java-6-194", + "uuid": "java-6-195", "seg": [ [ [ @@ -55625,7 +65244,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49081566220238093, + "max": 0.49082728794642855 + }, "related_data": {} } } @@ -55633,7 +65255,7 @@ { "第七次尝试:将List类型抽象化": { "data": { - "uuid": "java-6-195", + "uuid": "java-6-196", "seg": [ [ [ @@ -55648,14 +65270,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49082728794642855, + "max": 0.49083891369047616 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-931", + "uuid": "java-5-959", "seg": [ [ [ @@ -55664,7 +65289,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4907924107142857, + "max": 0.49083891369047616 + }, "related_data": {} } } @@ -55675,7 +65303,7 @@ { "用Comparator来排序": { "data": { - "uuid": "java-6-196", + "uuid": "java-6-197", "seg": [ [ [ @@ -55684,14 +65312,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49083891369047616, + "max": 0.4908505394345238 + }, "related_data": { "qa": { "data_id": [ - "13_274228_300924", - "13_860904_987999", - "13_1091523_1299008", - "13_710056_667836" + "13_274228_300924@13", + "13_860904_987999@13", + "13_1091523_1299008@13", + "13_710056_667836@13" ] } } @@ -55701,7 +65332,7 @@ { "用Runnable执行代码块": { "data": { - "uuid": "java-6-197", + "uuid": "java-6-198", "seg": [ [ [ @@ -55710,7 +65341,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4908505394345238, + "max": 0.4908621651785714 + }, "related_data": {} } } @@ -55718,7 +65352,7 @@ { "通过Callable返回结果": { "data": { - "uuid": "java-6-198", + "uuid": "java-6-199", "seg": [ [ [ @@ -55727,16 +65361,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4908621651785714, + "max": 0.490873790922619 + }, "related_data": { "qa": { "data_id": [ - "13_363257_383234", - "13_996119_1169609", - "13_194520_102425", - "13_755604_811027", - "13_748328_800286", - "13_350720_359517" + "13_363257_383234@13", + "13_194520_102425@13", + "13_755604_811027@13", + "13_350720_359517@13" ] } } @@ -55746,7 +65381,7 @@ { "GUI事件处理": { "data": { - "uuid": "java-6-199", + "uuid": "java-6-200", "seg": [ [ [ @@ -55755,20 +65390,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.490873790922619, + "max": 0.49088541666666663 + }, "related_data": { "qa": { "data_id": [ - "13_669741_491394", - "13_201394_123981", - "13_669291_490594", - "13_5744505_35766533", - "13_7448297_53428422", - "13_240244_224397", - "13_204421_133265", - "13_7448316_53428449", - "13_347066_352685", - "13_7466136_53453287" + "13_673747_502223@13", + "13_669741_491394@13", + "13_201394_123981@13", + "13_669291_490594@13", + "13_5744505_35766533@13", + "13_7448297_53428422@13", + "13_240244_224397@13", + "13_204421_133265@13", + "13_7448316_53428449@13", + "13_347066_352685@13" ] } } @@ -55777,7 +65415,7 @@ } ], "data": { - "uuid": "java-5-932", + "uuid": "java-5-960", "seg": [ [ [ @@ -55786,24 +65424,31 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49083891369047616, + "max": 0.49088541666666663 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-975", + "uuid": "java-4-986", "seg": [ [ [ "参数", "化", - "传递" + "传递", + "参数化" ] ] ], - "level": "1", + "level": { + "min": 0.49069940476190477, + "max": 0.49088541666666663 + }, "related_data": {} } } @@ -55814,7 +65459,7 @@ { "Lambda管中窥豹": { "data": { - "uuid": "java-5-933", + "uuid": "java-5-961", "seg": [ [ [ @@ -55823,7 +65468,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49088541666666663, + "max": 0.4909009176587301 + }, "related_data": {} } } @@ -55834,16 +65482,20 @@ { "函数式接口": { "data": { - "uuid": "java-6-200", + "uuid": "java-6-201", "seg": [ [ [ "函数", - "接口" + "接口", + "函数式" ] ] ], - "level": "1", + "level": { + "min": 0.4909009176587301, + "max": 0.49090866815476186 + }, "related_data": {} } } @@ -55851,23 +65503,27 @@ { "函数描述符": { "data": { - "uuid": "java-6-201", + "uuid": "java-6-202", "seg": [ [ [ "函数", - "描述符" + "描述符", + "函数描述符" ] ] ], - "level": "1", + "level": { + "min": 0.49090866815476186, + "max": 0.4909164186507936 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-934", + "uuid": "java-5-962", "seg": [ [ [], @@ -55876,7 +65532,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4909009176587301, + "max": 0.4909164186507936 + }, "related_data": {} } } @@ -55887,7 +65546,7 @@ { "第 1 步:记得行为参数化": { "data": { - "uuid": "java-6-202", + "uuid": "java-6-203", "seg": [ [ [ @@ -55898,15 +65557,19 @@ [ "记得", "参数", - "化" + "化", + "参数化" ] ] ], - "level": "1", + "level": { + "min": 0.4909164186507936, + "max": 0.4909202938988095 + }, "related_data": { "qa": { "data_id": [ - "13_7422968_53382290" + "13_7422968_53382290@13" ] } } @@ -55916,7 +65579,7 @@ { "第 2 步:使用函数式接口来传递行为": { "data": { - "uuid": "java-6-203", + "uuid": "java-6-204", "seg": [ [ [ @@ -55927,11 +65590,15 @@ [ "函数", "接口", - "传递" + "传递", + "函数式" ] ] ], - "level": "1", + "level": { + "min": 0.4909202938988095, + "max": 0.49092416914682535 + }, "related_data": {} } } @@ -55939,7 +65606,7 @@ { "第 3 步:执行一个行为": { "data": { - "uuid": "java-6-204", + "uuid": "java-6-205", "seg": [ [ [ @@ -55952,20 +65619,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49092416914682535, + "max": 0.4909280443948412 + }, "related_data": { "qa": { "data_id": [ - "13_1105134_1319387", - "13_195331_104888", - "13_350160_358632", - "13_1097800_1311774", - "13_218738_169367", - "13_749722_802384", - "13_947659_1099560", - "13_685231_544677", - "13_7459494_53444439", - "13_216120_163266" + "13_1105134_1319387@13", + "13_7459494_53444439@13", + "13_195331_104888@13", + "13_350160_358632@13", + "13_1097800_1311774@13", + "13_218738_169367@13", + "13_749722_802384@13", + "13_947659_1099560@13", + "13_685231_544677@13", + "13_216120_163266@13" ] } } @@ -55975,7 +65645,7 @@ { "第 4 步:传递Lambda": { "data": { - "uuid": "java-6-205", + "uuid": "java-6-206", "seg": [ [ [ @@ -55989,19 +65659,22 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4909280443948412, + "max": 0.4909319196428571 + }, "related_data": { "qa": { "data_id": [ - "13_7398400_53344854", - "13_754601_810078", - "13_363801_384630", - "13_391375_433727", - "13_761241_818612", - "13_7418148_53374026", - "13_7409268_53359668", - "13_754237_809141", - "13_1059347_1256633" + "13_7398400_53344854@13", + "13_754601_810078@13", + "13_363801_384630@13", + "13_391375_433727@13", + "13_761241_818612@13", + "13_7418148_53374026@13", + "13_7409268_53359668@13", + "13_754237_809141@13", + "13_1059347_1256633@13" ] } } @@ -56010,7 +65683,7 @@ } ], "data": { - "uuid": "java-5-935", + "uuid": "java-5-963", "seg": [ [ [ @@ -56026,7 +65699,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4909164186507936, + "max": 0.4909319196428571 + }, "related_data": {} } } @@ -56037,7 +65713,7 @@ { "Predicate": { "data": { - "uuid": "java-6-206", + "uuid": "java-6-207", "seg": [ [ [ @@ -56045,7 +65721,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4909319196428571, + "max": 0.4909370866402116 + }, "related_data": {} } } @@ -56053,7 +65732,7 @@ { "Consumer": { "data": { - "uuid": "java-6-207", + "uuid": "java-6-208", "seg": [ [ [ @@ -56061,11 +65740,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4909370866402116, + "max": 0.4909422536375661 + }, "related_data": { "qa": { "data_id": [ - "13_774715_838731" + "13_774715_838731@13" ] } } @@ -56075,7 +65757,7 @@ { "Function": { "data": { - "uuid": "java-6-208", + "uuid": "java-6-209", "seg": [ [ [ @@ -56083,13 +65765,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4909422536375661, + "max": 0.4909474206349206 + }, "related_data": { "qa": { "data_id": [ - "13_28206_7904", - "13_178823_63503", - "13_751959_805846" + "13_28206_7904@13", + "13_178823_63503@13", + "13_751959_805846@13" ] } } @@ -56098,16 +65783,20 @@ } ], "data": { - "uuid": "java-5-936", + "uuid": "java-5-964", "seg": [ [ [ "函数", - "接口" + "接口", + "函数式" ] ] ], - "level": "1", + "level": { + "min": 0.4909319196428571, + "max": 0.4909474206349206 + }, "related_data": {} } } @@ -56118,7 +65807,7 @@ { "类型检查": { "data": { - "uuid": "java-6-209", + "uuid": "java-6-210", "seg": [ [ [ @@ -56127,12 +65816,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4909474206349206, + "max": 0.49095129588293646 + }, "related_data": { "qa": { "data_id": [ - "13_214881_160044", - "13_234022_210324" + "13_214881_160044@13", + "13_234022_210324@13" ] } } @@ -56142,17 +65834,21 @@ { "同样的Lambda,不同的函数式接口": { "data": { - "uuid": "java-6-210", + "uuid": "java-6-211", "seg": [ [ [ "lambda", "函数", - "接口" + "接口", + "函数式" ] ] ], - "level": "1", + "level": { + "min": 0.49095129588293646, + "max": 0.49095517113095233 + }, "related_data": {} } } @@ -56160,7 +65856,7 @@ { "类型推断": { "data": { - "uuid": "java-6-211", + "uuid": "java-6-212", "seg": [ [ [ @@ -56169,20 +65865,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49095517113095233, + "max": 0.4909590463789682 + }, "related_data": { "qa": { "data_id": [ - "13_750210_803106", - "13_7426044_53388781", - "13_57677_10508", - "13_648078_452125", - "13_1077959_1282401", - "13_169854_45953", - "13_26021_7107", - "13_3535533_23009406", - "13_222925_180088", - "13_7428678_53394729" + "13_750210_803106@13", + "13_7426044_53388781@13", + "13_57677_10508@13", + "13_648078_452125@13", + "13_1077959_1282401@13", + "13_169854_45953@13", + "13_3535533_23009406@13", + "13_222925_180088@13", + "13_7428678_53394729@13", + "13_742968_786164@13" ] } } @@ -56192,7 +65891,7 @@ { "使用局部变量": { "data": { - "uuid": "java-6-212", + "uuid": "java-6-213", "seg": [ [ [ @@ -56200,13 +65899,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4909590463789682, + "max": 0.4909629216269841 + }, "related_data": { "qa": { "data_id": [ - "13_1057842_1254953", - "13_346202_351332", - "13_772407_835564" + "13_1057842_1254953@13", + "13_346202_351332@13", + "13_772407_835564@13" ] } } @@ -56215,7 +65917,7 @@ } ], "data": { - "uuid": "java-5-937", + "uuid": "java-5-965", "seg": [ [ [ @@ -56229,7 +65931,10 @@ [] ] ], - "level": "1", + "level": { + "min": 0.4909474206349206, + "max": 0.4909629216269841 + }, "related_data": {} } } @@ -56240,7 +65945,7 @@ { "管中窥豹": { "data": { - "uuid": "java-6-213", + "uuid": "java-6-214", "seg": [ [ [ @@ -56248,7 +65953,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4909629216269841, + "max": 0.4909706721230158 + }, "related_data": {} } } @@ -56256,7 +65964,7 @@ { "构造函数引用": { "data": { - "uuid": "java-6-214", + "uuid": "java-6-215", "seg": [ [ [ @@ -56265,20 +65973,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4909706721230158, + "max": 0.49097842261904756 + }, "related_data": { "qa": { "data_id": [ - "13_7440762_53416229", - "13_748549_800556", - "13_385498_422734", - "13_7423100_53382599", - "13_659048_472563", - "13_223673_182154", - "13_346224_351336", - "13_199360_117307", - "13_1061389_1259259", - "13_231382_202349" + "13_7440762_53416229@13", + "13_748549_800556@13", + "13_385498_422734@13", + "13_7423100_53382599@13", + "13_659048_472563@13", + "13_223673_182154@13", + "13_346224_351336@13", + "13_199360_117307@13", + "13_1061389_1259259@13", + "13_231382_202349@13" ] } } @@ -56287,7 +65998,7 @@ } ], "data": { - "uuid": "java-5-938", + "uuid": "java-5-966", "seg": [ [ [ @@ -56296,7 +66007,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4909629216269841, + "max": 0.49097842261904756 + }, "related_data": {} } } @@ -56307,16 +66021,20 @@ { "比较器复合": { "data": { - "uuid": "java-6-215", + "uuid": "java-6-216", "seg": [ [ [ "器", - "复合" + "复合", + "比较器" ] ] ], - "level": "1", + "level": { + "min": 0.49097842261904756, + "max": 0.4909835896164021 + }, "related_data": {} } } @@ -56324,7 +66042,7 @@ { "谓词复合": { "data": { - "uuid": "java-6-216", + "uuid": "java-6-217", "seg": [ [ [ @@ -56333,7 +66051,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4909835896164021, + "max": 0.49098875661375657 + }, "related_data": {} } } @@ -56341,7 +66062,7 @@ { "函数复合": { "data": { - "uuid": "java-6-217", + "uuid": "java-6-218", "seg": [ [ [ @@ -56350,14 +66071,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49098875661375657, + "max": 0.4909939236111111 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-939", + "uuid": "java-5-967", "seg": [ [ [ @@ -56369,7 +66093,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49097842261904756, + "max": 0.4909939236111111 + }, "related_data": {} } } @@ -56380,7 +66107,7 @@ { "积分": { "data": { - "uuid": "java-6-218", + "uuid": "java-6-219", "seg": [ [ [ @@ -56388,7 +66115,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4909939236111111, + "max": 0.49100167410714285 + }, "related_data": {} } } @@ -56396,7 +66126,7 @@ { "与Java 8的Lambda联系起来": { "data": { - "uuid": "java-6-219", + "uuid": "java-6-220", "seg": [ [ [], @@ -56406,14 +66136,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49100167410714285, + "max": 0.4910094246031746 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-940", + "uuid": "java-5-968", "seg": [ [ [ @@ -56423,11 +66156,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4909939236111111, + "max": 0.4910094246031746 + }, "related_data": { "qa": { "data_id": [ - "13_245064_235022" + "13_245064_235022@13" ] } } @@ -56437,7 +66173,7 @@ { "测试可见Lambda函数的行为": { "data": { - "uuid": "java-5-941", + "uuid": "java-5-969", "seg": [ [ [ @@ -56446,7 +66182,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4910094246031746, + "max": 0.4910249255952381 + }, "related_data": {} } } @@ -56454,7 +66193,7 @@ { "测试使用Lambda的方法的行为": { "data": { - "uuid": "java-5-942", + "uuid": "java-5-970", "seg": [ [ [ @@ -56463,7 +66202,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4910249255952381, + "max": 0.49104042658730157 + }, "related_data": {} } } @@ -56471,7 +66213,7 @@ { "将复杂的Lambda表达式分为不同的方法": { "data": { - "uuid": "java-5-943", + "uuid": "java-5-971", "seg": [ [ [ @@ -56482,11 +66224,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49104042658730157, + "max": 0.49105592757936506 + }, "related_data": { "qa": { "data_id": [ - "13_745978_794705" + "13_745978_794705@13" ] } } @@ -56496,23 +66241,27 @@ { "高阶函数的测试": { "data": { - "uuid": "java-5-944", + "uuid": "java-5-972", "seg": [ [ [ "高阶", - "函数" + "函数", + "高阶函数" ] ] ], - "level": "1", + "level": { + "min": 0.49105592757936506, + "max": 0.49107142857142855 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-976", + "uuid": "java-4-987", "seg": [ [ [ @@ -56521,14 +66270,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49088541666666663, + "max": 0.49107142857142855 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-504", + "uuid": "java-3-497", "seg": [ [ [ @@ -56536,14 +66288,11 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_368969_395815" - ] - } - } + "level": { + "min": 0.49051339285714285, + "max": 0.49107142857142855 + }, + "related_data": {} } } }, @@ -56556,7 +66305,7 @@ { "流简介": { "data": { - "uuid": "java-5-945", + "uuid": "java-5-973", "seg": [ [ [ @@ -56565,7 +66314,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49107142857142855, + "max": 0.4911644345238095 + }, "related_data": {} } } @@ -56576,7 +66328,7 @@ { "中间操作": { "data": { - "uuid": "java-6-220", + "uuid": "java-6-221", "seg": [ [ [ @@ -56584,20 +66336,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4911644345238095, + "max": 0.4912109375 + }, "related_data": { "qa": { "data_id": [ - "13_1084924_1291338", - "13_247130_240239", - "13_912205_1047366", - "13_7443745_53423994", - "13_664246_480917", - "13_7447535_53427523", - "13_384375_420724", - "13_377252_407707", - "13_742601_785145", - "13_751034_804660" + "13_1084924_1291338@13", + "13_247130_240239@13", + "13_912205_1047366@13", + "13_7443745_53423994@13", + "13_664246_480917@13", + "13_7447535_53427523@13", + "13_384375_420724@13", + "13_377252_407707@13", + "13_742601_785145@13", + "13_751034_804660@13" ] } } @@ -56607,7 +66362,7 @@ { "终端操作": { "data": { - "uuid": "java-6-221", + "uuid": "java-6-222", "seg": [ [ [ @@ -56616,14 +66371,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4912109375, + "max": 0.49125744047619047 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-946", + "uuid": "java-5-974", "seg": [ [ [ @@ -56632,7 +66390,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4911644345238095, + "max": 0.49125744047619047 + }, "related_data": {} } } @@ -56640,7 +66401,7 @@ { "路线图": { "data": { - "uuid": "java-5-947", + "uuid": "java-5-975", "seg": [ [ [ @@ -56648,14 +66409,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49125744047619047, + "max": 0.4913504464285714 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-977", + "uuid": "java-4-988", "seg": [ [ [ @@ -56664,7 +66428,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49107142857142855, + "max": 0.4913504464285714 + }, "related_data": {} } } @@ -56678,7 +66445,7 @@ { "收集器用作高级归约": { "data": { - "uuid": "java-6-222", + "uuid": "java-6-223", "seg": [ [ [ @@ -56689,11 +66456,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4913504464285714, + "max": 0.4913783482142857 + }, "related_data": { "qa": { "data_id": [ - "13_7432783_53403147" + "13_7432783_53403147@13" ] } } @@ -56703,24 +66473,28 @@ { "预定义收集器": { "data": { - "uuid": "java-6-223", + "uuid": "java-6-224", "seg": [ [ [ "预定", "义", - "收集器" + "收集器", + "义收集器" ] ] ], - "level": "1", + "level": { + "min": 0.4913783482142857, + "max": 0.49140625 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-948", + "uuid": "java-5-976", "seg": [ [ [ @@ -56729,7 +66503,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4913504464285714, + "max": 0.49140625 + }, "related_data": {} } } @@ -56740,7 +66517,7 @@ { "操作分组的元素": { "data": { - "uuid": "java-6-224", + "uuid": "java-6-225", "seg": [ [ [ @@ -56750,7 +66527,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49140625, + "max": 0.4914248511904762 + }, "related_data": {} } } @@ -56758,7 +66538,7 @@ { "多级分组": { "data": { - "uuid": "java-6-225", + "uuid": "java-6-226", "seg": [ [ [ @@ -56767,15 +66547,21 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4914248511904762, + "max": 0.4914434523809524 + }, "related_data": { "qa": { "data_id": [ - "13_876880_1011795", - "13_645316_446972", - "13_371986_398940", - "13_7458816_53443582", - "13_7453002_53435550" + "13_876880_1011795@13", + "13_645316_446972@13", + "13_371986_398940@13", + "13_681911_535374@13", + "13_784800_862045@13", + "13_7458816_53443582@13", + "13_673828_502484@13", + "13_7453002_53435550@13" ] } } @@ -56785,7 +66571,7 @@ { "按子组收集数据": { "data": { - "uuid": "java-6-226", + "uuid": "java-6-227", "seg": [ [ [ @@ -56796,14 +66582,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4914434523809524, + "max": 0.4914620535714286 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-949", + "uuid": "java-5-977", "seg": [ [ [ @@ -56811,7 +66600,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49140625, + "max": 0.4914620535714286 + }, "related_data": {} } } @@ -56822,7 +66614,7 @@ { "分区的优势": { "data": { - "uuid": "java-6-227", + "uuid": "java-6-228", "seg": [ [ [ @@ -56831,13 +66623,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4914620535714286, + "max": 0.49148995535714285 + }, "related_data": { "qa": { "data_id": [ - "13_658117_471171", - "13_361667_379767", - "13_1051195_1249131" + "13_658117_471171@13", + "13_361667_379767@13", + "13_1051195_1249131@13" ] } } @@ -56847,27 +66642,33 @@ { "将数字按质数和非质数分区": { "data": { - "uuid": "java-6-228", + "uuid": "java-6-229", "seg": [ [ [ "数字", - "质数" + "质数", + "将数字" ], [ "质数", - "分区" + "分区", + "非质数", + "质数分区" ] ] ], - "level": "1", + "level": { + "min": 0.49148995535714285, + "max": 0.4915178571428571 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-950", + "uuid": "java-5-978", "seg": [ [ [ @@ -56875,7 +66676,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4914620535714286, + "max": 0.4915178571428571 + }, "related_data": {} } } @@ -56886,7 +66690,7 @@ { "理解Collector接口声明的方法": { "data": { - "uuid": "java-6-229", + "uuid": "java-6-230", "seg": [ [ [ @@ -56898,11 +66702,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4915178571428571, + "max": 0.49154575892857144 + }, "related_data": { "qa": { "data_id": [ - "13_7463708_53449838" + "13_7463708_53449838@13" ] } } @@ -56912,7 +66719,7 @@ { "全部融合到一起": { "data": { - "uuid": "java-6-230", + "uuid": "java-6-231", "seg": [ [ [ @@ -56920,14 +66727,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49154575892857144, + "max": 0.4915736607142857 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-951", + "uuid": "java-5-979", "seg": [ [ [ @@ -56936,7 +66746,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4915178571428571, + "max": 0.4915736607142857 + }, "related_data": {} } } @@ -56947,7 +66760,7 @@ { "仅用质数做除数": { "data": { - "uuid": "java-6-231", + "uuid": "java-6-232", "seg": [ [ [ @@ -56958,7 +66771,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4915736607142857, + "max": 0.4916015625 + }, "related_data": {} } } @@ -56966,22 +66782,26 @@ { "比较收集器的性能": { "data": { - "uuid": "java-6-232", + "uuid": "java-6-233", "seg": [ [ [ "收集器", - "性能" + "性能", + "比较收集器" ] ] ], - "level": "1", + "level": { + "min": 0.4916015625, + "max": 0.4916294642857143 + }, "related_data": { "qa": { "data_id": [ - "13_189956_89858", - "13_1056150_1253271", - "13_7455366_53441258" + "13_189956_89858@13", + "13_1056150_1253271@13", + "13_7455366_53441258@13" ] } } @@ -56990,7 +66810,7 @@ } ], "data": { - "uuid": "java-5-952", + "uuid": "java-5-980", "seg": [ [ [ @@ -57001,14 +66821,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4915736607142857, + "max": 0.4916294642857143 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-978", + "uuid": "java-4-989", "seg": [ [ [ @@ -57018,24 +66841,31 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4913504464285714, + "max": 0.4916294642857143 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-505", + "uuid": "java-3-498", "seg": [ [ [ "流", "函数", - "数据处理" + "数据处理", + "函数式" ] ] ], - "level": "1", + "level": { + "min": 0.49107142857142855, + "max": 0.4916294642857143 + }, "related_data": {} } } @@ -57052,7 +66882,7 @@ { "采用防御式检查减少NullPointerException": { "data": { - "uuid": "java-6-233", + "uuid": "java-6-234", "seg": [ [ [ @@ -57064,7 +66894,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4916294642857143, + "max": 0.49167596726190477 + }, "related_data": {} } } @@ -57072,30 +66905,34 @@ { "其他语言中null的替代品": { "data": { - "uuid": "java-6-234", + "uuid": "java-6-235", "seg": [ [ [ "语言", "null", - "替代品" + "替代品", + "语言中" ] ] ], - "level": "1", + "level": { + "min": 0.49167596726190477, + "max": 0.49172247023809523 + }, "related_data": { "qa": { "data_id": [ - "13_25284_6761", - "13_983220_1144536", - "13_199037_116173", - "13_7439827_53414678", - "13_1050348_1247473", - "13_206941_140187", - "13_184889_75476", - "13_742102_783465", - "13_763689_822279", - "13_207421_141519" + "13_25284_6761@13", + "13_983220_1144536@13", + "13_199037_116173@13", + "13_7439827_53414678@13", + "13_1050348_1247473@13", + "13_206941_140187@13", + "13_184889_75476@13", + "13_742102_783465@13", + "13_763689_822279@13", + "13_207421_141519@13" ] } } @@ -57104,17 +66941,21 @@ } ], "data": { - "uuid": "java-5-953", + "uuid": "java-5-981", "seg": [ [ [ "缺失", "值", - "建模" + "建模", + "值建模" ] ] ], - "level": "1", + "level": { + "min": 0.4916294642857143, + "max": 0.49172247023809523 + }, "related_data": {} } } @@ -57122,7 +66963,7 @@ { "Optional类入门": { "data": { - "uuid": "java-5-954", + "uuid": "java-5-982", "seg": [ [ [ @@ -57132,7 +66973,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49172247023809523, + "max": 0.4918154761904762 + }, "related_data": {} } } @@ -57143,7 +66987,7 @@ { "创建Optional对象": { "data": { - "uuid": "java-6-235", + "uuid": "java-6-236", "seg": [ [ [ @@ -57153,7 +66997,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4918154761904762, + "max": 0.49182876275510207 + }, "related_data": {} } } @@ -57161,7 +67008,7 @@ { "使用map从Optional对象中提取和转换值": { "data": { - "uuid": "java-6-236", + "uuid": "java-6-237", "seg": [ [ [ @@ -57176,7 +67023,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49182876275510207, + "max": 0.4918420493197279 + }, "related_data": {} } } @@ -57184,7 +67034,7 @@ { "使用flatMap链接Optional对象": { "data": { - "uuid": "java-6-237", + "uuid": "java-6-238", "seg": [ [ [ @@ -57195,7 +67045,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4918420493197279, + "max": 0.49185533588435376 + }, "related_data": {} } } @@ -57203,7 +67056,7 @@ { "操纵由Optional对象构成的Stream": { "data": { - "uuid": "java-6-238", + "uuid": "java-6-239", "seg": [ [ [ @@ -57214,7 +67067,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49185533588435376, + "max": 0.4918686224489796 + }, "related_data": {} } } @@ -57222,7 +67078,7 @@ { "默认行为及解引用Optional对象": { "data": { - "uuid": "java-6-239", + "uuid": "java-6-240", "seg": [ [ [ @@ -57236,7 +67092,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4918686224489796, + "max": 0.49188190901360546 + }, "related_data": {} } } @@ -57244,7 +67103,7 @@ { "两个Optional对象的组合": { "data": { - "uuid": "java-6-240", + "uuid": "java-6-241", "seg": [ [ [ @@ -57254,11 +67113,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49188190901360546, + "max": 0.4918951955782313 + }, "related_data": { "qa": { "data_id": [ - "13_1090920_1298034" + "13_1090920_1298034@13" ] } } @@ -57268,7 +67130,7 @@ { "使用filter剔除特定的值": { "data": { - "uuid": "java-6-241", + "uuid": "java-6-242", "seg": [ [ [ @@ -57279,11 +67141,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4918951955782313, + "max": 0.49190848214285715 + }, "related_data": { "qa": { "data_id": [ - "13_238300_220031" + "13_238300_220031@13" ] } } @@ -57292,7 +67157,7 @@ } ], "data": { - "uuid": "java-5-955", + "uuid": "java-5-983", "seg": [ [ [ @@ -57301,14 +67166,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4918154761904762, + "max": 0.49190848214285715 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-979", + "uuid": "java-4-990", "seg": [ [ [ @@ -57318,7 +67186,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4916294642857143, + "max": 0.49190848214285715 + }, "related_data": {} } } @@ -57332,7 +67203,7 @@ { "关注点分离": { "data": { - "uuid": "java-6-242", + "uuid": "java-6-243", "seg": [ [ [ @@ -57341,12 +67212,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49190848214285715, + "max": 0.49192398313492064 + }, "related_data": { "qa": { "data_id": [ - "13_703320_594723", - "13_1084552_1290946" + "13_703320_594723@13", + "13_1084552_1290946@13" ] } } @@ -57356,7 +67230,7 @@ { "信息隐藏": { "data": { - "uuid": "java-6-243", + "uuid": "java-6-244", "seg": [ [ [ @@ -57365,21 +67239,18 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_229750_198166" - ] - } - } + "level": { + "min": 0.49192398313492064, + "max": 0.49193948412698413 + }, + "related_data": {} } } }, { "Java软件": { "data": { - "uuid": "java-6-244", + "uuid": "java-6-245", "seg": [ [ [ @@ -57388,18 +67259,21 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49193948412698413, + "max": 0.4919549851190476 + }, "related_data": { "qa": { "data_id": [ - "13_258613_266921", - "13_1036983_1233720", - "13_207057_140505", - "13_258095_265515", - "13_201946_125716", - "13_220466_173115", - "13_1070163_1271495", - "13_746709_796685" + "13_258613_266921@13", + "13_1036983_1233720@13", + "13_207057_140505@13", + "13_258095_265515@13", + "13_201946_125716@13", + "13_220466_173115@13", + "13_1070163_1271495@13", + "13_746709_796685@13" ] } } @@ -57408,7 +67282,7 @@ } ], "data": { - "uuid": "java-5-956", + "uuid": "java-5-984", "seg": [ [ [ @@ -57423,7 +67297,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49190848214285715, + "max": 0.4919549851190476 + }, "related_data": {} } } @@ -57434,7 +67311,7 @@ { "从头开始搭建一个应用": { "data": { - "uuid": "java-6-245", + "uuid": "java-6-246", "seg": [ [ [ @@ -57443,7 +67320,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4919549851190476, + "max": 0.4919704861111111 + }, "related_data": {} } } @@ -57451,7 +67331,7 @@ { "细粒度和粗粒度的模块化": { "data": { - "uuid": "java-6-246", + "uuid": "java-6-247", "seg": [ [ [ @@ -57463,7 +67343,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4919704861111111, + "max": 0.4919859871031746 + }, "related_data": {} } } @@ -57471,31 +67354,36 @@ { "Java模块系统基础": { "data": { - "uuid": "java-6-247", + "uuid": "java-6-248", "seg": [ [ [ "java", "模块", "系统", - "基础" + "基础", + "模块系统", + "系统基础" ] ] ], - "level": "1", + "level": { + "min": 0.4919859871031746, + "max": 0.4920014880952381 + }, "related_data": { "qa": { "data_id": [ - "13_764657_823383", - "13_682806_537903", - "13_742415_784567", - "13_776348_851025", - "13_175024_55163", - "13_7443557_53420728", - "13_7430634_53397798", - "13_743766_788735", - "13_7448491_53428646", - "13_7437404_53410145" + "13_764657_823383@13", + "13_682806_537903@13", + "13_742415_784567@13", + "13_776348_851025@13", + "13_175024_55163@13", + "13_7443557_53420728@13", + "13_7430634_53397798@13", + "13_743766_788735@13", + "13_7448491_53428646@13", + "13_7437404_53410145@13" ] } } @@ -57504,18 +67392,22 @@ } ], "data": { - "uuid": "java-5-957", + "uuid": "java-5-985", "seg": [ [ [ "java", "模块", "系统", - "开发" + "开发", + "模块系统" ] ] ], - "level": "1", + "level": { + "min": 0.4919549851190476, + "max": 0.4920014880952381 + }, "related_data": {} } } @@ -57526,7 +67418,7 @@ { "exports子句": { "data": { - "uuid": "java-6-248", + "uuid": "java-6-249", "seg": [ [ [ @@ -57535,7 +67427,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4920014880952381, + "max": 0.49201698908730157 + }, "related_data": {} } } @@ -57543,7 +67438,7 @@ { "requires子句": { "data": { - "uuid": "java-6-249", + "uuid": "java-6-250", "seg": [ [ [ @@ -57552,7 +67447,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49201698908730157, + "max": 0.4920324900793651 + }, "related_data": {} } } @@ -57560,7 +67458,7 @@ { "命名": { "data": { - "uuid": "java-6-250", + "uuid": "java-6-251", "seg": [ [ [ @@ -57568,11 +67466,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4920324900793651, + "max": 0.4920479910714286 + }, "related_data": { "qa": { "data_id": [ - "13_349438_357186" + "13_349438_357186@13" ] } } @@ -57581,7 +67482,7 @@ } ], "data": { - "uuid": "java-5-958", + "uuid": "java-5-986", "seg": [ [ [ @@ -57589,11 +67490,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4920014880952381, + "max": 0.4920479910714286 + }, "related_data": { "qa": { "data_id": [ - "13_1097162_1310334" + "13_1097162_1310334@13" ] } } @@ -57603,7 +67507,7 @@ { "编译及打包": { "data": { - "uuid": "java-5-959", + "uuid": "java-5-987", "seg": [ [ [ @@ -57614,30 +67518,18 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_7443311_53420396", - "13_743143_786819", - "13_380579_413678", - "13_251614_250316", - "13_719744_714428", - "13_366300_390617", - "13_647942_454157", - "13_7407598_53357594", - "13_678658_523331", - "13_748224_800054" - ] - } - } + "level": { + "min": 0.4920479910714286, + "max": 0.49209449404761907 + }, + "related_data": {} } } }, { "自动模块": { "data": { - "uuid": "java-5-960", + "uuid": "java-5-988", "seg": [ [ [ @@ -57646,11 +67538,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49209449404761907, + "max": 0.49214099702380953 + }, "related_data": { "qa": { "data_id": [ - "13_195732_108068" + "13_195732_108068@13" ] } } @@ -57663,7 +67558,7 @@ { "requires": { "data": { - "uuid": "java-6-251", + "uuid": "java-6-252", "seg": [ [ [ @@ -57671,7 +67566,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49214099702380953, + "max": 0.4921487475198413 + }, "related_data": {} } } @@ -57679,7 +67577,7 @@ { "exports": { "data": { - "uuid": "java-6-252", + "uuid": "java-6-253", "seg": [ [ [ @@ -57687,7 +67585,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4921487475198413, + "max": 0.492156498015873 + }, "related_data": {} } } @@ -57695,7 +67596,7 @@ { "requires的传递": { "data": { - "uuid": "java-6-253", + "uuid": "java-6-254", "seg": [ [ [ @@ -57704,7 +67605,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.492156498015873, + "max": 0.49216424851190477 + }, "related_data": {} } } @@ -57712,7 +67616,7 @@ { "exports to": { "data": { - "uuid": "java-6-254", + "uuid": "java-6-255", "seg": [ [ [ @@ -57721,14 +67625,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49216424851190477, + "max": 0.4921719990079365 + }, "related_data": { "qa": { "data_id": [ - "13_157466_20418", - "13_742450_784689", - "13_346515_351832", - "13_7413751_53365957" + "13_157466_20418@13", + "13_742450_784689@13", + "13_346515_351832@13", + "13_7413751_53365957@13" ] } } @@ -57738,7 +67645,7 @@ { "open和opens": { "data": { - "uuid": "java-6-255", + "uuid": "java-6-256", "seg": [ [ [ @@ -57749,14 +67656,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4921719990079365, + "max": 0.49217974950396826 + }, "related_data": { "qa": { "data_id": [ - "13_1069734_1271031", - "13_197234_111011", - "13_770995_834897", - "13_759826_817158" + "13_1069734_1271031@13", + "13_197234_111011@13", + "13_770995_834897@13", + "13_759826_817158@13" ] } } @@ -57766,7 +67676,7 @@ { "uses和provides": { "data": { - "uuid": "java-6-256", + "uuid": "java-6-257", "seg": [ [ [ @@ -57777,50 +67687,61 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49217974950396826, + "max": 0.4921875 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-961", + "uuid": "java-5-989", "seg": [ [ [ "模块", - "声明" + "声明", + "模块声明" ], [ "子句" ] ] ], - "level": "1", + "level": { + "min": 0.49214099702380953, + "max": 0.4921875 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-980", + "uuid": "java-4-991", "seg": [ [ [ "java", "模块", - "系统" + "系统", + "模块系统" ] ] ], - "level": "1", + "level": { + "min": 0.49190848214285715, + "max": 0.4921875 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-506", + "uuid": "java-3-499", "seg": [ [ [ @@ -57829,7 +67750,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4916294642857143, + "max": 0.4921875 + }, "related_data": {} } } @@ -57846,7 +67770,7 @@ { "其他的线程抽象:非嵌套方法调用": { "data": { - "uuid": "java-6-257", + "uuid": "java-6-258", "seg": [ [ [ @@ -57858,11 +67782,16 @@ [ "嵌套", "方法", - "调用" + "调用", + "非嵌套", + "嵌套方法" ] ] ], - "level": "2", + "level": { + "min": 0.4921875, + "max": 0.4922030009920635 + }, "related_data": {} } } @@ -57870,7 +67799,7 @@ { "你希望线程为你带来什么": { "data": { - "uuid": "java-6-258", + "uuid": "java-6-259", "seg": [ [ [ @@ -57880,20 +67809,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4922030009920635, + "max": 0.492218501984127 + }, "related_data": { "qa": { "data_id": [ - "13_7445492_53424136", - "13_7445539_53424185", - "13_667884_487442", - "13_350156_358467", - "13_7410132_53360872", - "13_372493_400030", - "13_716924_710038", - "13_233844_209944", - "13_7434377_53404790", - "13_7398832_53345432" + "13_7445492_53424136@13", + "13_7445539_53424185@13", + "13_667884_487442@13", + "13_7410132_53360872@13", + "13_372493_400030@13", + "13_350156_358467@13", + "13_716924_710038@13", + "13_233844_209944@13", + "13_7434377_53404790@13", + "13_7398832_53345432@13" ] } } @@ -57902,18 +67834,22 @@ } ], "data": { - "uuid": "java-5-962", + "uuid": "java-5-990", "seg": [ [ [ "支持", "并发", "演进", - "java" + "java", + "不断演进" ] ] ], - "level": "2", + "level": { + "min": 0.4921875, + "max": 0.492218501984127 + }, "related_data": {} } } @@ -57924,7 +67860,7 @@ { "Future风格的API": { "data": { - "uuid": "java-6-259", + "uuid": "java-6-260", "seg": [ [ [ @@ -57934,11 +67870,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.492218501984127, + "max": 0.4922262524801587 + }, "related_data": { "qa": { "data_id": [ - "13_29648_9042" + "13_29648_9042@13" ] } } @@ -57948,17 +67887,21 @@ { "反应式风格的API": { "data": { - "uuid": "java-6-260", + "uuid": "java-6-261", "seg": [ [ [ "反应式", "风格", - "api" + "api", + "反应式风格" ] ] ], - "level": "2", + "level": { + "min": 0.4922262524801587, + "max": 0.49223400297619047 + }, "related_data": {} } } @@ -57966,7 +67909,7 @@ { "有害的睡眠及其他阻塞式操作": { "data": { - "uuid": "java-6-261", + "uuid": "java-6-262", "seg": [ [ [ @@ -57977,7 +67920,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49223400297619047, + "max": 0.4922417534722222 + }, "related_data": {} } } @@ -57985,24 +67931,28 @@ { "如何使用异步API进行异常处理": { "data": { - "uuid": "java-6-262", + "uuid": "java-6-263", "seg": [ [ [ "异步", "api", - "异常" + "异常", + "异常处理" ] ] ], - "level": "2", + "level": { + "min": 0.4922417534722222, + "max": 0.49224950396825395 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-963", + "uuid": "java-5-991", "seg": [ [ [ @@ -58014,7 +67964,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.492218501984127, + "max": 0.49224950396825395 + }, "related_data": {} } } @@ -58022,7 +67975,7 @@ { "“线框–管道”模型": { "data": { - "uuid": "java-5-964", + "uuid": "java-5-992", "seg": [ [ [ @@ -58033,18 +67986,51 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49224950396825395, + "max": 0.49228050595238093 + }, "related_data": {} } } }, + { + "为并发而生的CompletableFuture和结合器": { + "data": { + "uuid": "java-5-993", + "seg": [ + [ + [ + "并发", + "生", + "completablefuture" + ], + [ + "器" + ] + ] + ], + "level": { + "min": 0.49228050595238093, + "max": 0.49231150793650796 + }, + "related_data": { + "qa": { + "data_id": [ + "13_350144_358448@13" + ] + } + } + } + } + }, { "“发布–订阅”以及反应式编程": { "children": [ { "背压": { "data": { - "uuid": "java-6-263", + "uuid": "java-6-264", "seg": [ [ [ @@ -58052,7 +68038,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49231150793650796, + "max": 0.49232700892857145 + }, "related_data": {} } } @@ -58060,23 +68049,27 @@ { "一种简单的真实背压": { "data": { - "uuid": "java-6-264", + "uuid": "java-6-265", "seg": [ [ [ "真实", - "背压" + "背压", + "真实背压" ] ] ], - "level": "2", + "level": { + "min": 0.49232700892857145, + "max": 0.49234250992063494 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-965", + "uuid": "java-5-994", "seg": [ [ [ @@ -58086,11 +68079,15 @@ ], [ "反应式", - "编程" + "编程", + "反应式编程" ] ] ], - "level": "2", + "level": { + "min": 0.49231150793650796, + "max": 0.49234250992063494 + }, "related_data": {} } } @@ -58098,27 +68095,32 @@ { "反应式系统和反应式编程": { "data": { - "uuid": "java-5-966", + "uuid": "java-5-995", "seg": [ [ [ "反应式", - "系统" + "系统", + "反应式系统" ], [ "反应式", - "编程" + "编程", + "反应式编程" ] ] ], - "level": "2", + "level": { + "min": 0.49234250992063494, + "max": 0.4923735119047619 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-981", + "uuid": "java-4-992", "seg": [ [ [ @@ -58128,11 +68130,15 @@ "反应式", "编程", "背后", - "概念" + "概念", + "反应式编程" ] ] ], - "level": "2", + "level": { + "min": 0.4921875, + "max": 0.4923735119047619 + }, "related_data": {} } } @@ -58146,23 +68152,28 @@ { "将同步方法转换为异步方法": { "data": { - "uuid": "java-6-265", + "uuid": "java-6-266", "seg": [ [ [ "同步", "方法", "转换", - "异步" + "异步", + "同步方法", + "异步方法" ] ] ], - "level": "2", + "level": { + "min": 0.4923735119047619, + "max": 0.49239676339285715 + }, "related_data": { "qa": { "data_id": [ - "13_235356_214126", - "13_188337_119958" + "13_235356_214126@13", + "13_188337_119958@13" ] } } @@ -58172,7 +68183,7 @@ { "错误处理": { "data": { - "uuid": "java-6-266", + "uuid": "java-6-267", "seg": [ [ [ @@ -58180,14 +68191,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49239676339285715, + "max": 0.4924200148809524 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-967", + "uuid": "java-5-996", "seg": [ [ [ @@ -58196,7 +68210,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4923735119047619, + "max": 0.4924200148809524 + }, "related_data": {} } } @@ -58207,7 +68224,7 @@ { "使用并行流对请求进行并行操作": { "data": { - "uuid": "java-6-267", + "uuid": "java-6-268", "seg": [ [ [ @@ -58217,7 +68234,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4924200148809524, + "max": 0.492431640625 + }, "related_data": {} } } @@ -58225,21 +68245,25 @@ { "使用CompletableFuture发起异步请求": { "data": { - "uuid": "java-6-268", + "uuid": "java-6-269", "seg": [ [ [ "completablefuture", "发起", - "异步" + "异步", + "异步请求" ] ] ], - "level": "2", + "level": { + "min": 0.492431640625, + "max": 0.4924432663690476 + }, "related_data": { "qa": { "data_id": [ - "13_7431887_53401177" + "13_7431887_53401177@13" ] } } @@ -58249,7 +68273,7 @@ { "寻找更好的方案": { "data": { - "uuid": "java-6-269", + "uuid": "java-6-270", "seg": [ [ [ @@ -58259,13 +68283,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4924432663690476, + "max": 0.49245489211309523 + }, "related_data": { "qa": { "data_id": [ - "13_759847_816877", - "13_7435691_53406579", - "13_362483_381825" + "13_759847_816877@13", + "13_7435691_53406579@13", + "13_362483_381825@13" ] } } @@ -58275,7 +68302,7 @@ { "使用定制的执行器": { "data": { - "uuid": "java-6-270", + "uuid": "java-6-271", "seg": [ [ [ @@ -58284,14 +68311,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49245489211309523, + "max": 0.49246651785714285 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-968", + "uuid": "java-5-997", "seg": [ [ [ @@ -58301,7 +68331,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4924200148809524, + "max": 0.49246651785714285 + }, "related_data": {} } } @@ -58312,7 +68345,7 @@ { "实现折扣服务": { "data": { - "uuid": "java-6-271", + "uuid": "java-6-272", "seg": [ [ [ @@ -58321,7 +68354,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49246651785714285, + "max": 0.4924742683531746 + }, "related_data": {} } } @@ -58329,7 +68365,7 @@ { "使用Discount服务": { "data": { - "uuid": "java-6-272", + "uuid": "java-6-273", "seg": [ [ [ @@ -58338,16 +68374,19 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4924742683531746, + "max": 0.49248201884920634 + }, "related_data": { "qa": { "data_id": [ - "13_4646844_29330776", - "13_384570_421074", - "13_699446_587577", - "13_155285_15085", - "13_771786_834459", - "13_1094687_1305134" + "13_4646844_29330776@13", + "13_384570_421074@13", + "13_699446_587577@13", + "13_155285_15085@13", + "13_771786_834459@13", + "13_1094687_1305134@13" ] } } @@ -58357,7 +68396,7 @@ { "构造同步和异步操作": { "data": { - "uuid": "java-6-273", + "uuid": "java-6-274", "seg": [ [ [ @@ -58366,17 +68405,21 @@ ], [ "异步", - "操作" + "操作", + "异步操作" ] ] ], - "level": "2", + "level": { + "min": 0.49248201884920634, + "max": 0.4924897693452381 + }, "related_data": { "qa": { "data_id": [ - "13_743745_788669", - "13_189494_88468", - "13_1079267_1284276" + "13_743745_788669@13", + "13_189494_88468@13", + "13_1079267_1284276@13" ] } } @@ -58386,7 +68429,7 @@ { "将两个CompletableFuture对象整合起来,无论它们是否存在依赖": { "data": { - "uuid": "java-6-274", + "uuid": "java-6-275", "seg": [ [ [ @@ -58397,7 +68440,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4924897693452381, + "max": 0.4924975198412698 + }, "related_data": {} } } @@ -58405,7 +68451,7 @@ { "对Future和Completable-Future的回顾": { "data": { - "uuid": "java-6-275", + "uuid": "java-6-276", "seg": [ [ [ @@ -58418,7 +68464,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4924975198412698, + "max": 0.49250527033730157 + }, "related_data": {} } } @@ -58426,7 +68475,7 @@ { "高效地使用超时机制": { "data": { - "uuid": "java-6-276", + "uuid": "java-6-277", "seg": [ [ [ @@ -58436,24 +68485,31 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49250527033730157, + "max": 0.4925130208333333 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-969", + "uuid": "java-5-998", "seg": [ [ [ "异步", "流水线", - "操作" + "操作", + "异步任务" ] ] ], - "level": "2", + "level": { + "min": 0.49246651785714285, + "max": 0.4925130208333333 + }, "related_data": {} } } @@ -58464,21 +68520,25 @@ { "对最佳价格查询器应用的优化": { "data": { - "uuid": "java-6-277", + "uuid": "java-6-278", "seg": [ [ [ "价格", "查询器", - "优化" + "优化", + "价格查询器" ] ] ], - "level": "2", + "level": { + "min": 0.4925130208333333, + "max": 0.4925595238095238 + }, "related_data": { "qa": { "data_id": [ - "13_356492_372468" + "13_356492_372468@13" ] } } @@ -58487,7 +68547,7 @@ } ], "data": { - "uuid": "java-5-970", + "uuid": "java-5-999", "seg": [ [ [ @@ -58498,14 +68558,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4925130208333333, + "max": 0.4925595238095238 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-982", + "uuid": "java-4-993", "seg": [ [ [ @@ -58516,11 +68579,15 @@ [ "组合式", "异步", - "编程" + "编程", + "异步编程" ] ] ], - "level": "2", + "level": { + "min": 0.4923735119047619, + "max": 0.4925595238095238 + }, "related_data": {} } } @@ -58534,17 +68601,21 @@ { "应用层的反应式编程": { "data": { - "uuid": "java-6-278", + "uuid": "java-6-279", "seg": [ [ [ "应用层", "反应式", - "编程" + "编程", + "反应式编程" ] ] ], - "level": "2", + "level": { + "min": 0.4925595238095238, + "max": 0.49259052579365076 + }, "related_data": {} } } @@ -58552,32 +68623,40 @@ { "反应式系统": { "data": { - "uuid": "java-6-279", + "uuid": "java-6-280", "seg": [ [ [ "反应式", - "系统" + "系统", + "反应式系统" ] ] ], - "level": "2", + "level": { + "min": 0.49259052579365076, + "max": 0.49262152777777773 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-971", + "uuid": "java-5-1000", "seg": [ [ [ "反应式", - "宣言" + "宣言", + "反应式宣言" ] ] ], - "level": "2", + "level": { + "min": 0.4925595238095238, + "max": 0.49262152777777773 + }, "related_data": {} } } @@ -58588,7 +68667,7 @@ { "Flow类": { "data": { - "uuid": "java-6-280", + "uuid": "java-6-281", "seg": [ [ [ @@ -58597,7 +68676,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49262152777777773, + "max": 0.49264219576719576 + }, "related_data": {} } } @@ -58605,7 +68687,7 @@ { "创建你的第一个反应式应用": { "data": { - "uuid": "java-6-281", + "uuid": "java-6-282", "seg": [ [ [ @@ -58614,7 +68696,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49264219576719576, + "max": 0.4926628637566137 + }, "related_data": {} } } @@ -58622,7 +68707,7 @@ { "使用Processor转换数据": { "data": { - "uuid": "java-6-282", + "uuid": "java-6-283", "seg": [ [ [ @@ -58632,11 +68717,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4926628637566137, + "max": 0.49268353174603174 + }, "related_data": { "qa": { "data_id": [ - "13_363951_384958" + "13_363951_384958@13" ] } } @@ -58645,12 +68733,13 @@ } ], "data": { - "uuid": "java-5-972", + "uuid": "java-5-1001", "seg": [ [ [ "反应式", - "流" + "流", + "反应式流" ], [ "flow", @@ -58658,7 +68747,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49262152777777773, + "max": 0.49268353174603174 + }, "related_data": {} } } @@ -58669,7 +68761,7 @@ { "转换及整合多个Observable": { "data": { - "uuid": "java-6-283", + "uuid": "java-6-284", "seg": [ [ [ @@ -58681,13 +68773,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49268353174603174, + "max": 0.4927455357142857 + }, "related_data": { "qa": { "data_id": [ - "13_688779_555441", - "13_1097505_1311052", - "13_7412385_53363719" + "13_688779_555441@13", + "13_1097505_1311052@13", + "13_7412385_53363719@13" ] } } @@ -58696,23 +68791,27 @@ } ], "data": { - "uuid": "java-5-973", + "uuid": "java-5-1002", "seg": [ [ [ "反应式", "库", - "rxjava" + "rxjava", + "反应式库" ] ] ], - "level": "2", + "level": { + "min": 0.49268353174603174, + "max": 0.4927455357142857 + }, "related_data": { "qa": { "data_id": [ - "13_349950_360059", - "13_358436_376547", - "13_695834_578849" + "13_349950_360059@13", + "13_358436_376547@13", + "13_695834_578849@13" ] } } @@ -58721,23 +68820,27 @@ } ], "data": { - "uuid": "java-4-983", + "uuid": "java-4-994", "seg": [ [ [ "反应式", - "编程" + "编程", + "反应式编程" ] ] ], - "level": "2", + "level": { + "min": 0.4925595238095238, + "max": 0.4927455357142857 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-507", + "uuid": "java-3-500", "seg": [ [ [ @@ -58748,7 +68851,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4921875, + "max": 0.4927455357142857 + }, "related_data": {} } } @@ -58765,23 +68871,27 @@ { "声明式编程": { "data": { - "uuid": "java-6-284", + "uuid": "java-6-285", "seg": [ [ [ "声明", - "编程" + "编程", + "声明式" ] ] ], - "level": "1", + "level": { + "min": 0.4927455357142857, + "max": 0.4927827380952381 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-974", + "uuid": "java-5-1003", "seg": [ [ [], @@ -58791,11 +68901,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4927455357142857, + "max": 0.4927827380952381 + }, "related_data": { "qa": { "data_id": [ - "13_385976_423702" + "13_385976_423702@13" ] } } @@ -58808,30 +68921,34 @@ { "函数式Java编程": { "data": { - "uuid": "java-6-285", + "uuid": "java-6-286", "seg": [ [ [ "函数", "java", - "编程" + "编程", + "函数式" ] ] ], - "level": "1", + "level": { + "min": 0.4927827380952381, + "max": 0.4927951388888889 + }, "related_data": { "qa": { "data_id": [ - "13_358541_376803", - "13_206014_137496", - "13_193631_99179", - "13_337545_334614", - "13_719875_714151", - "13_376704_406844", - "13_7452070_53435431", - "13_7451090_53432248", - "13_7463405_53449277", - "13_199626_118184" + "13_358541_376803@13", + "13_206014_137496@13", + "13_193631_99179@13", + "13_337545_334614@13", + "13_719875_714151@13", + "13_376704_406844@13", + "13_7452070_53435431@13", + "13_7451090_53432248@13", + "13_7463405_53449277@13", + "13_199626_118184@13" ] } } @@ -58841,7 +68958,7 @@ { "引用透明性": { "data": { - "uuid": "java-6-286", + "uuid": "java-6-287", "seg": [ [ [ @@ -58850,11 +68967,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4927951388888889, + "max": 0.49280753968253965 + }, "related_data": { "qa": { "data_id": [ - "13_159764_25766" + "13_159764_25766@13" ] } } @@ -58864,7 +68984,7 @@ { "面向对象的编程和函数式编程的对比": { "data": { - "uuid": "java-6-287", + "uuid": "java-6-288", "seg": [ [ [ @@ -58873,15 +68993,19 @@ ], [ "函数", - "编程" + "编程", + "函数式" ] ] ], - "level": "1", + "level": { + "min": 0.49280753968253965, + "max": 0.49281994047619043 + }, "related_data": { "qa": { "data_id": [ - "13_7452687_53434840" + "13_7452687_53434840@13" ] } } @@ -58890,16 +69014,20 @@ } ], "data": { - "uuid": "java-5-975", + "uuid": "java-5-1004", "seg": [ [ [ "函数", - "编程" + "编程", + "函数式" ] ] ], - "level": "1", + "level": { + "min": 0.4927827380952381, + "max": 0.49281994047619043 + }, "related_data": {} } } @@ -58907,7 +69035,7 @@ { "递归和迭代": { "data": { - "uuid": "java-5-976", + "uuid": "java-5-1005", "seg": [ [ [ @@ -58918,27 +69046,34 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49281994047619043, + "max": 0.4928571428571428 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-984", + "uuid": "java-4-995", "seg": [ [ [ "函数", - "思考" + "思考", + "函数式" ] ] ], - "level": "1", + "level": { + "min": 0.4927455357142857, + "max": 0.4928571428571428 + }, "related_data": { "qa": { "data_id": [ - "13_1079305_1283905" + "13_1079305_1283905@13" ] } } @@ -58954,7 +69089,7 @@ { "柯里化": { "data": { - "uuid": "java-6-288", + "uuid": "java-6-289", "seg": [ [ [ @@ -58962,14 +69097,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4928571428571428, + "max": 0.4928794642857143 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-977", + "uuid": "java-5-1006", "seg": [ [ [ @@ -58978,7 +69116,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4928571428571428, + "max": 0.4928794642857143 + }, "related_data": {} } } @@ -58989,7 +69130,7 @@ { "破坏式更新和函数式更新的比较": { "data": { - "uuid": "java-6-289", + "uuid": "java-6-290", "seg": [ [ [ @@ -58998,11 +69139,15 @@ ], [ "函数", - "更新" + "更新", + "函数式" ] ] ], - "level": "1", + "level": { + "min": 0.4928794642857143, + "max": 0.4928869047619048 + }, "related_data": {} } } @@ -59010,7 +69155,7 @@ { "另一个使用Tree的例子": { "data": { - "uuid": "java-6-290", + "uuid": "java-6-291", "seg": [ [ [ @@ -59019,15 +69164,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4928869047619048, + "max": 0.4928943452380952 + }, "related_data": { "qa": { "data_id": [ - "13_262990_276738", - "13_366203_390389", - "13_831717_931527", - "13_232629_205924", - "13_718915_712801" + "13_262990_276738@13", + "13_366203_390389@13", + "13_831717_931527@13", + "13_232629_205924@13" ] } } @@ -59037,21 +69184,25 @@ { "采用函数式的方法": { "data": { - "uuid": "java-6-291", + "uuid": "java-6-292", "seg": [ [ [ "采用", "函数", - "方法" + "方法", + "函数式" ] ] ], - "level": "1", + "level": { + "min": 0.4928943452380952, + "max": 0.4929017857142857 + }, "related_data": { "qa": { "data_id": [ - "13_657352_469941" + "13_657352_469941@13" ] } } @@ -59060,17 +69211,21 @@ } ], "data": { - "uuid": "java-5-978", + "uuid": "java-5-1007", "seg": [ [ [ "持久", "化", - "数据结构" + "数据结构", + "化数据结构" ] ] ], - "level": "1", + "level": { + "min": 0.4928794642857143, + "max": 0.4929017857142857 + }, "related_data": {} } } @@ -59081,7 +69236,7 @@ { "自定义的Stream": { "data": { - "uuid": "java-6-292", + "uuid": "java-6-293", "seg": [ [ [ @@ -59090,18 +69245,21 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4929017857142857, + "max": 0.4929129464285714 + }, "related_data": { "qa": { "data_id": [ - "13_696884_581370", - "13_7413174_53365011", - "13_1097711_1311534", - "13_695970_579109", - "13_695766_578724", - "13_1091358_1298736", - "13_774044_837962", - "13_748447_800429" + "13_696884_581370@13", + "13_7413174_53365011@13", + "13_1097711_1311534@13", + "13_695970_579109@13", + "13_695766_578724@13", + "13_1091358_1298736@13", + "13_774044_837962@13", + "13_748447_800429@13" ] } } @@ -59111,7 +69269,7 @@ { "创建你自己的延迟列表": { "data": { - "uuid": "java-6-293", + "uuid": "java-6-294", "seg": [ [ [ @@ -59121,14 +69279,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4929129464285714, + "max": 0.4929241071428571 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-979", + "uuid": "java-5-1008", "seg": [ [ [ @@ -59138,7 +69299,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4929017857142857, + "max": 0.4929241071428571 + }, "related_data": {} } } @@ -59149,16 +69313,20 @@ { "访问者模式": { "data": { - "uuid": "java-6-294", + "uuid": "java-6-295", "seg": [ [ [ "访问者", - "模式" + "模式", + "访问者模式" ] ] ], - "level": "1", + "level": { + "min": 0.4929241071428571, + "max": 0.4929352678571428 + }, "related_data": {} } } @@ -59166,7 +69334,7 @@ { "用模式匹配力挽狂澜": { "data": { - "uuid": "java-6-295", + "uuid": "java-6-296", "seg": [ [ [ @@ -59175,14 +69343,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4929352678571428, + "max": 0.49294642857142856 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-980", + "uuid": "java-5-1009", "seg": [ [ [ @@ -59190,7 +69361,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4929241071428571, + "max": 0.49294642857142856 + }, "related_data": {} } } @@ -59201,7 +69375,7 @@ { "缓存或记忆表": { "data": { - "uuid": "java-6-296", + "uuid": "java-6-297", "seg": [ [ [ @@ -59211,14 +69385,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49294642857142856, + "max": 0.4929575892857143 + }, "related_data": { "qa": { "data_id": [ - "13_1049430_1246898", - "13_713793_705333", - "13_374442_403326", - "13_4645910_29329149" + "13_1049430_1246898@13", + "13_713793_705333@13", + "13_374442_403326@13", + "13_4645910_29329149@13" ] } } @@ -59228,7 +69405,7 @@ { "“返回同样的对象”意味着什么": { "data": { - "uuid": "java-6-297", + "uuid": "java-6-298", "seg": [ [ [ @@ -59238,14 +69415,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4929575892857143, + "max": 0.49296875 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-981", + "uuid": "java-5-1010", "seg": [ [ [ @@ -59253,24 +69433,31 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49294642857142856, + "max": 0.49296875 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-985", + "uuid": "java-4-996", "seg": [ [ [ "函数", "编程", - "技巧" + "技巧", + "函数式" ] ] ], - "level": "1", + "level": { + "min": 0.4928571428571428, + "max": 0.49296875 + }, "related_data": {} } } @@ -59281,18 +69468,22 @@ { "回顾Java 8的语言特性": { "data": { - "uuid": "java-5-982", + "uuid": "java-5-1011", "seg": [ [ [ "回顾", "java", "语言", - "特性" + "特性", + "语言特性" ] ] ], - "level": "1", + "level": { + "min": 0.49296875, + "max": 0.49299107142857146 + }, "related_data": {} } } @@ -59300,18 +69491,22 @@ { "Java 10的局部变量类型推断": { "data": { - "uuid": "java-5-983", + "uuid": "java-5-1012", "seg": [ [ [ "java", "局部变量", "类型", - "推断" + "推断", + "局部变量类型" ] ] ], - "level": "1", + "level": { + "min": 0.49299107142857146, + "max": 0.49301339285714285 + }, "related_data": {} } } @@ -59322,17 +69517,21 @@ { "声明处型变": { "data": { - "uuid": "java-6-298", + "uuid": "java-6-299", "seg": [ [ [ "声明", "处型", - "变" + "变", + "声明处型" ] ] ], - "level": "1", + "level": { + "min": 0.49301339285714285, + "max": 0.4930178571428571 + }, "related_data": {} } } @@ -59340,7 +69539,7 @@ { "模式匹配": { "data": { - "uuid": "java-6-299", + "uuid": "java-6-300", "seg": [ [ [ @@ -59348,7 +69547,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4930178571428571, + "max": 0.49302232142857144 + }, "related_data": {} } } @@ -59356,16 +69558,20 @@ { "更加丰富的泛型形式": { "data": { - "uuid": "java-6-300", + "uuid": "java-6-301", "seg": [ [ [ "泛型", - "形式" + "形式", + "泛型形式" ] ] ], - "level": "1", + "level": { + "min": 0.49302232142857144, + "max": 0.4930267857142857 + }, "related_data": {} } } @@ -59373,17 +69579,21 @@ { "对不变性的更深层支持": { "data": { - "uuid": "java-6-301", + "uuid": "java-6-302", "seg": [ [ [ "不变性", "深层", - "支持" + "支持", + "更深层" ] ] ], - "level": "1", + "level": { + "min": 0.4930267857142857, + "max": 0.49303125000000003 + }, "related_data": {} } } @@ -59391,29 +69601,33 @@ { "值类型": { "data": { - "uuid": "java-6-302", + "uuid": "java-6-303", "seg": [ [ [ "值", - "类型" + "类型", + "值类型" ] ] ], - "level": "1", + "level": { + "min": 0.49303125000000003, + "max": 0.4930357142857143 + }, "related_data": { "qa": { "data_id": [ - "13_229518_197480", - "13_645076_446234", - "13_1093565_1303127", - "13_666284_484397", - "13_373565_401698", - "13_7458323_53442897", - "13_5363161_35294051", - "13_774061_837954", - "13_836895_943162", - "13_358429_376594" + "13_645076_446234@13", + "13_1093565_1303127@13", + "13_666284_484397@13", + "13_373565_401698@13", + "13_7416176_53370120@13", + "13_7458323_53442897@13", + "13_5363161_35294051@13", + "13_774061_837954@13", + "13_836895_943162@13", + "13_7410192_53360797@13" ] } } @@ -59422,7 +69636,7 @@ } ], "data": { - "uuid": "java-5-984", + "uuid": "java-5-1013", "seg": [ [ [ @@ -59431,12 +69645,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49301339285714285, + "max": 0.4930357142857143 + }, "related_data": { "qa": { "data_id": [ - "13_219529_170918", - "13_7424350_53390473" + "13_219529_170918@13", + "13_7424350_53390473@13" ] } } @@ -59446,7 +69663,7 @@ { "让Java发展得更快": { "data": { - "uuid": "java-5-985", + "uuid": "java-5-1014", "seg": [ [ [ @@ -59456,7 +69673,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4930357142857143, + "max": 0.4930580357142857 + }, "related_data": {} } } @@ -59464,7 +69684,7 @@ { "写在最后的话": { "data": { - "uuid": "java-5-986", + "uuid": "java-5-1015", "seg": [ [ [ @@ -59472,20 +69692,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4930580357142857, + "max": 0.49308035714285714 + }, "related_data": { "qa": { "data_id": [ - "13_201530_124339", - "13_7442424_53419286", - "13_7455228_53438133", - "13_220119_172320", - "13_1056810_1253932", - "13_377952_408733", - "13_242074_229218", - "13_707693_640934", - "13_7409047_53359265", - "13_231917_203832" + "13_201530_124339@13", + "13_7442424_53419286@13", + "13_7455228_53438133@13", + "13_220119_172320@13", + "13_1056810_1253932@13", + "13_377952_408733@13", + "13_242074_229218@13", + "13_707693_640934@13", + "13_7409047_53359265@13", + "13_231917_203832@13" ] } } @@ -59494,7 +69717,7 @@ } ], "data": { - "uuid": "java-4-986", + "uuid": "java-4-997", "seg": [ [ [ @@ -59506,7 +69729,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49296875, + "max": 0.49308035714285714 + }, "related_data": {} } } @@ -59514,7 +69740,7 @@ { "Lambda基础": { "data": { - "uuid": "java-4-987", + "uuid": "java-4-998", "seg": [ [ [ @@ -59523,7 +69749,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49308035714285714, + "max": 0.4931919642857143 + }, "related_data": {} } } @@ -59534,7 +69763,7 @@ { "创建Stream": { "data": { - "uuid": "java-5-987", + "uuid": "java-5-1016", "seg": [ [ [ @@ -59543,13 +69772,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4931919642857143, + "max": 0.4932198660714286 + }, "related_data": { "qa": { "data_id": [ - "13_751296_804900", - "13_922741_1058662", - "13_720380_714851" + "13_751296_804900@13", + "13_922741_1058662@13", + "13_720380_714851@13" ] } } @@ -59559,7 +69791,7 @@ { "使用filter": { "data": { - "uuid": "java-5-988", + "uuid": "java-5-1017", "seg": [ [ [ @@ -59567,14 +69799,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4932198660714286, + "max": 0.49324776785714286 + }, "related_data": { "qa": { "data_id": [ - "13_390234_431594", - "13_7447600_53427528", - "13_744175_789759", - "13_941544_1078168" + "13_390234_431594@13", + "13_7447600_53427528@13", + "13_744175_789759@13", + "13_941544_1078168@13" ] } } @@ -59584,7 +69819,7 @@ { "使用reduce": { "data": { - "uuid": "java-5-989", + "uuid": "java-5-1018", "seg": [ [ [ @@ -59592,7 +69827,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49324776785714286, + "max": 0.4932756696428572 + }, "related_data": {} } } @@ -59600,7 +69838,7 @@ { "输出集合": { "data": { - "uuid": "java-5-990", + "uuid": "java-5-1019", "seg": [ [ [ @@ -59609,12 +69847,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4932756696428572, + "max": 0.49330357142857145 + }, "related_data": { "qa": { "data_id": [ - "13_7448801_53428948", - "13_7464711_53451249" + "13_7448801_53428948@13", + "13_7464711_53451249@13" ] } } @@ -59623,7 +69864,7 @@ } ], "data": { - "uuid": "java-4-988", + "uuid": "java-4-999", "seg": [ [ [ @@ -59631,11 +69872,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4931919642857143, + "max": 0.49330357142857145 + }, "related_data": { "qa": { "data_id": [ - "13_6205997_43191271" + "13_6205997_43191271@13" ] } } @@ -59644,12 +69888,13 @@ } ], "data": { - "uuid": "java-3-508", + "uuid": "java-3-501", "seg": [ [ [ "函数", - "编程" + "编程", + "函数式" ], [ "java", @@ -59658,7 +69903,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4927455357142857, + "max": 0.49330357142857145 + }, "related_data": {} } } @@ -59669,7 +69917,7 @@ { "从迭代到流的操作": { "data": { - "uuid": "java-4-989", + "uuid": "java-4-1000", "seg": [ [ [ @@ -59679,7 +69927,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49330357142857145, + "max": 0.49335430194805197 + }, "related_data": {} } } @@ -59687,7 +69938,7 @@ { "流的创建": { "data": { - "uuid": "java-4-990", + "uuid": "java-4-1001", "seg": [ [ [ @@ -59696,7 +69947,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49335430194805197, + "max": 0.4934050324675325 + }, "related_data": {} } } @@ -59704,7 +69958,7 @@ { "f?ilter、map和f?latMap方法": { "data": { - "uuid": "java-4-991", + "uuid": "java-4-1002", "seg": [ [ [ @@ -59721,7 +69975,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4934050324675325, + "max": 0.493455762987013 + }, "related_data": {} } } @@ -59729,7 +69986,7 @@ { "抽取子流和组合流": { "data": { - "uuid": "java-4-992", + "uuid": "java-4-1003", "seg": [ [ [ @@ -59742,7 +69999,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.493455762987013, + "max": 0.4935064935064935 + }, "related_data": {} } } @@ -59750,7 +70010,7 @@ { "其他的流转换": { "data": { - "uuid": "java-4-993", + "uuid": "java-4-1004", "seg": [ [ [ @@ -59759,7 +70019,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4935064935064935, + "max": 0.493557224025974 + }, "related_data": {} } } @@ -59767,7 +70030,7 @@ { "简单约简": { "data": { - "uuid": "java-4-994", + "uuid": "java-4-1005", "seg": [ [ [ @@ -59775,7 +70038,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.493557224025974, + "max": 0.4936079545454546 + }, "related_data": {} } } @@ -59786,7 +70052,7 @@ { "获取Optional值": { "data": { - "uuid": "java-5-991", + "uuid": "java-5-1020", "seg": [ [ [ @@ -59796,16 +70062,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4936079545454546, + "max": 0.4936152017625232 + }, "related_data": { "qa": { "data_id": [ - "13_188040_84858", - "13_7403461_53351942", - "13_7412945_53364643", - "13_267727_286914", - "13_379052_410855", - "13_193721_99509" + "13_188040_84858@13", + "13_7403461_53351942@13", + "13_7412945_53364643@13", + "13_267727_286914@13", + "13_379052_410855@13", + "13_193721_99509@13" ] } } @@ -59815,7 +70084,7 @@ { "消费Optional值": { "data": { - "uuid": "java-5-992", + "uuid": "java-5-1021", "seg": [ [ [ @@ -59825,7 +70094,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4936152017625232, + "max": 0.4936224489795919 + }, "related_data": {} } } @@ -59833,7 +70105,7 @@ { "管道化Optional值": { "data": { - "uuid": "java-5-993", + "uuid": "java-5-1022", "seg": [ [ [ @@ -59843,7 +70115,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4936224489795919, + "max": 0.49362969619666053 + }, "related_data": {} } } @@ -59851,18 +70126,22 @@ { "不适合使用Optional值的方式": { "data": { - "uuid": "java-5-994", + "uuid": "java-5-1023", "seg": [ [ [ "适合", "optional", "值", - "方式" + "方式", + "不适合" ] ] ], - "level": "1", + "level": { + "min": 0.49362969619666053, + "max": 0.49363694341372916 + }, "related_data": {} } } @@ -59870,7 +70149,7 @@ { "创建Optional值": { "data": { - "uuid": "java-5-995", + "uuid": "java-5-1024", "seg": [ [ [ @@ -59880,7 +70159,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49363694341372916, + "max": 0.4936441906307978 + }, "related_data": {} } } @@ -59888,7 +70170,7 @@ { "用f?latMap构建Optional值的函数": { "data": { - "uuid": "java-5-996", + "uuid": "java-5-1025", "seg": [ [ [ @@ -59901,7 +70183,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4936441906307978, + "max": 0.49365143784786647 + }, "related_data": {} } } @@ -59909,7 +70194,7 @@ { "将Optional转换为流": { "data": { - "uuid": "java-5-997", + "uuid": "java-5-1026", "seg": [ [ [ @@ -59919,14 +70204,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49365143784786647, + "max": 0.4936586850649351 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-995", + "uuid": "java-4-1006", "seg": [ [ [ @@ -59935,7 +70223,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4936079545454546, + "max": 0.4936586850649351 + }, "related_data": {} } } @@ -59943,7 +70234,7 @@ { "收集到映射表中": { "data": { - "uuid": "java-4-996", + "uuid": "java-4-1007", "seg": [ [ [ @@ -59953,7 +70244,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4936586850649351, + "max": 0.4937094155844156 + }, "related_data": {} } } @@ -59961,7 +70255,7 @@ { "下游收集器": { "data": { - "uuid": "java-4-997", + "uuid": "java-4-1008", "seg": [ [ [ @@ -59970,7 +70264,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4937094155844156, + "max": 0.4937601461038961 + }, "related_data": {} } } @@ -59978,7 +70275,7 @@ { "约简操作": { "data": { - "uuid": "java-4-998", + "uuid": "java-4-1009", "seg": [ [ [ @@ -59987,7 +70284,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4937601461038961, + "max": 0.49381087662337664 + }, "related_data": {} } } @@ -59995,23 +70295,28 @@ { "基本类型流": { "data": { - "uuid": "java-4-999", + "uuid": "java-4-1010", "seg": [ [ [ "类型", - "流" + "流", + "基本类型", + "类型流" ] ] ], - "level": "1", + "level": { + "min": 0.49381087662337664, + "max": 0.49386160714285715 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-509", + "uuid": "java-3-502", "seg": [ [ [ @@ -60020,7 +70325,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49330357142857145, + "max": 0.49386160714285715 + }, "related_data": {} } } @@ -60034,7 +70342,7 @@ { "读写字节": { "data": { - "uuid": "java-5-998", + "uuid": "java-5-1027", "seg": [ [ [ @@ -60043,7 +70351,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49386160714285715, + "max": 0.49387323288690477 + }, "related_data": {} } } @@ -60051,16 +70362,20 @@ { "完整的流家族": { "data": { - "uuid": "java-5-999", + "uuid": "java-5-1028", "seg": [ [ [ "流", - "家族" + "家族", + "流家族" ] ] ], - "level": "2", + "level": { + "min": 0.49387323288690477, + "max": 0.4938848586309524 + }, "related_data": {} } } @@ -60068,7 +70383,7 @@ { "组合输入/输出流过滤器": { "data": { - "uuid": "java-5-1000", + "uuid": "java-5-1029", "seg": [ [ [ @@ -60076,11 +70391,15 @@ "输入", "输出", "流", - "过滤器" + "过滤器", + "流过滤器" ] ] ], - "level": "2", + "level": { + "min": 0.4938848586309524, + "max": 0.493896484375 + }, "related_data": {} } } @@ -60088,7 +70407,7 @@ { "文本输入与输出": { "data": { - "uuid": "java-5-1001", + "uuid": "java-5-1030", "seg": [ [ [ @@ -60100,20 +70419,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.493896484375, + "max": 0.4939081101190476 + }, "related_data": { "qa": { "data_id": [ - "13_851826_976247", - "13_1052979_1250336", - "13_7460720_53445808", - "13_7434328_53404692", - "13_7429394_53396256", - "13_7442527_53419401", - "13_7463161_53448940", - "13_7406276_53355667", - "13_374740_403825", - "13_349517_357358" + "13_851826_976247@13", + "13_1052979_1250336@13", + "13_7460720_53445808@13", + "13_7434328_53404692@13", + "13_7429394_53396256@13", + "13_7442527_53419401@13", + "13_7463161_53448940@13", + "13_7406276_53355667@13", + "13_374740_403825@13", + "13_349517_357358@13" ] } } @@ -60123,7 +70445,7 @@ { "如何写出文本输出": { "data": { - "uuid": "java-5-1002", + "uuid": "java-5-1031", "seg": [ [ [ @@ -60133,30 +70455,18 @@ ] ] ], - "level": "2", - "related_data": { - "qa": { - "data_id": [ - "13_7465828_53452982", - "13_750512_803600", - "13_704000_595673", - "13_74530_12293", - "13_358653_377069", - "13_203521_130781", - "13_7451758_53433212", - "13_1050206_1247506", - "13_748732_800794", - "13_7452504_53434477" - ] - } - } + "level": { + "min": 0.4939081101190476, + "max": 0.49391973586309523 + }, + "related_data": {} } } }, { "如何读入文本输入": { "data": { - "uuid": "java-5-1003", + "uuid": "java-5-1032", "seg": [ [ [ @@ -60166,30 +70476,18 @@ ] ] ], - "level": "2", - "related_data": { - "qa": { - "data_id": [ - "13_1054632_1251820", - "13_7454835_53437539", - "13_247527_241076", - "13_1049035_1246429", - "13_7424069_53384535", - "13_243447_231921", - "13_645371_446771", - "13_753503_808069", - "13_768949_829488", - "13_7437132_53409744" - ] - } - } + "level": { + "min": 0.49391973586309523, + "max": 0.49393136160714285 + }, + "related_data": {} } } }, { "以文本格式存储对象": { "data": { - "uuid": "java-5-1004", + "uuid": "java-5-1033", "seg": [ [ [ @@ -60199,7 +70497,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49393136160714285, + "max": 0.49394298735119047 + }, "related_data": {} } } @@ -60207,23 +70508,27 @@ { "字符编码方式": { "data": { - "uuid": "java-5-1005", + "uuid": "java-5-1034", "seg": [ [ [ "字符", - "编码方式" + "编码方式", + "字符编码方式" ] ] ], - "level": "2", + "level": { + "min": 0.49394298735119047, + "max": 0.4939546130952381 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1000", + "uuid": "java-4-1011", "seg": [ [ [ @@ -60233,7 +70538,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49386160714285715, + "max": 0.4939546130952381 + }, "related_data": {} } } @@ -60244,7 +70552,7 @@ { "DataInput和DataOutput接口": { "data": { - "uuid": "java-5-1006", + "uuid": "java-5-1035", "seg": [ [ [ @@ -60256,7 +70564,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4939546130952381, + "max": 0.49398561507936506 + }, "related_data": {} } } @@ -60264,21 +70575,25 @@ { "随机访问文件": { "data": { - "uuid": "java-5-1007", + "uuid": "java-5-1036", "seg": [ [ [ "随机", "访问", - "文件" + "文件", + "随机访问" ] ] ], - "level": "2", + "level": { + "min": 0.49398561507936506, + "max": 0.4940166170634921 + }, "related_data": { "qa": { "data_id": [ - "13_7441729_53418009" + "13_7441729_53418009@13" ] } } @@ -60288,7 +70603,7 @@ { "ZIP文档": { "data": { - "uuid": "java-5-1008", + "uuid": "java-5-1037", "seg": [ [ [ @@ -60297,28 +70612,35 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4940166170634921, + "max": 0.49404761904761907 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1001", + "uuid": "java-4-1012", "seg": [ [ [ "读写", "二进制", - "数据" + "数据", + "二进制数据" ] ] ], - "level": "2", + "level": { + "min": 0.4939546130952381, + "max": 0.49404761904761907 + }, "related_data": { "qa": { "data_id": [ - "13_189357_88071" + "13_189357_88071@13" ] } } @@ -60331,7 +70653,7 @@ { "保存和加载序列化对象": { "data": { - "uuid": "java-5-1009", + "uuid": "java-5-1038", "seg": [ [ [ @@ -60340,16 +70662,20 @@ [ "加载", "序列化", - "对象" + "对象", + "序列化对象" ] ] ], - "level": "2", + "level": { + "min": 0.49404761904761907, + "max": 0.49406312003968256 + }, "related_data": { "qa": { "data_id": [ - "13_348086_354476", - "13_642574_442017" + "13_348086_354476@13", + "13_642574_442017@13" ] } } @@ -60359,18 +70685,22 @@ { "理解对象序列化的文件格式": { "data": { - "uuid": "java-5-1010", + "uuid": "java-5-1039", "seg": [ [ [ "理解", "对象", "序列化", - "文件格式" + "文件格式", + "对象序列化" ] ] ], - "level": "2", + "level": { + "min": 0.49406312003968256, + "max": 0.49407862103174605 + }, "related_data": {} } } @@ -60378,18 +70708,22 @@ { "修改默认的序列化机制": { "data": { - "uuid": "java-5-1011", + "uuid": "java-5-1040", "seg": [ [ [ "修改", "默认", "序列化", - "机制" + "机制", + "序列化机制" ] ] ], - "level": "2", + "level": { + "min": 0.49407862103174605, + "max": 0.49409412202380953 + }, "related_data": {} } } @@ -60397,12 +70731,13 @@ { "序列化单例和类型安全的枚举": { "data": { - "uuid": "java-5-1012", + "uuid": "java-5-1041", "seg": [ [ [ "序列化", - "单例" + "单例", + "序列化单例" ], [ "类型", @@ -60410,7 +70745,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49409412202380953, + "max": 0.494109623015873 + }, "related_data": {} } } @@ -60418,7 +70756,7 @@ { "版本管理": { "data": { - "uuid": "java-5-1013", + "uuid": "java-5-1042", "seg": [ [ [ @@ -60427,11 +70765,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.494109623015873, + "max": 0.4941251240079365 + }, "related_data": { "qa": { "data_id": [ - "13_7457694_53442106" + "13_7457694_53442106@13" ] } } @@ -60441,7 +70782,7 @@ { "为克隆使用序列化": { "data": { - "uuid": "java-5-1014", + "uuid": "java-5-1043", "seg": [ [ [ @@ -60450,14 +70791,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4941251240079365, + "max": 0.494140625 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1002", + "uuid": "java-4-1013", "seg": [ [ [ @@ -60471,7 +70815,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49404761904761907, + "max": 0.494140625 + }, "related_data": {} } } @@ -60482,7 +70829,7 @@ { "Path": { "data": { - "uuid": "java-5-1015", + "uuid": "java-5-1044", "seg": [ [ [ @@ -60490,12 +70837,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.494140625, + "max": 0.49415391156462585 + }, "related_data": { "qa": { "data_id": [ - "13_157665_20828", - "13_650009_457307" + "13_157665_20828@13", + "13_650009_457307@13" ] } } @@ -60505,7 +70855,7 @@ { "读写文件": { "data": { - "uuid": "java-5-1016", + "uuid": "java-5-1045", "seg": [ [ [ @@ -60514,20 +70864,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49415391156462585, + "max": 0.4941671981292517 + }, "related_data": { "qa": { "data_id": [ - "13_7409698_53360139", - "13_189485_88427", - "13_747252_798329", - "13_942855_1081693", - "13_1048872_1246273", - "13_247704_241468", - "13_7414850_53367936", - "13_244596_234161", - "13_743742_788652", - "13_686959_549631" + "13_7409698_53360139@13", + "13_189485_88427@13", + "13_747252_798329@13", + "13_942855_1081693@13", + "13_1048872_1246273@13", + "13_247704_241468@13", + "13_7414850_53367936@13", + "13_244596_234161@13", + "13_743742_788652@13", + "13_686959_549631@13" ] } } @@ -60537,7 +70890,7 @@ { "复制、移动和删除文件": { "data": { - "uuid": "java-5-1017", + "uuid": "java-5-1046", "seg": [ [ [ @@ -60550,11 +70903,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4941671981292517, + "max": 0.49418048469387754 + }, "related_data": { "qa": { "data_id": [ - "13_1073921_1276399" + "13_1073921_1276399@13" ] } } @@ -60564,30 +70920,34 @@ { "获取文件信息": { "data": { - "uuid": "java-5-1018", + "uuid": "java-5-1047", "seg": [ [ [ "获取", "文件", - "信息" + "信息", + "文件信息" ] ] ], - "level": "2", + "level": { + "min": 0.49418048469387754, + "max": 0.4941937712585034 + }, "related_data": { "qa": { "data_id": [ - "13_675123_507498", - "13_702936_593596", - "13_386125_424118", - "13_7459788_53444791", - "13_346448_351803", - "13_1093820_1303527", - "13_174985_55046", - "13_660628_475302", - "13_390993_433301", - "13_1067136_1267135" + "13_675123_507498@13", + "13_702936_593596@13", + "13_386125_424118@13", + "13_7459788_53444791@13", + "13_346448_351803@13", + "13_1093820_1303527@13", + "13_174985_55046@13", + "13_660628_475302@13", + "13_390993_433301@13", + "13_1067136_1267135@13" ] } } @@ -60597,7 +70957,7 @@ { "访问目录中的项": { "data": { - "uuid": "java-5-1019", + "uuid": "java-5-1048", "seg": [ [ [ @@ -60607,7 +70967,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4941937712585034, + "max": 0.49420705782312924 + }, "related_data": {} } } @@ -60615,16 +70978,20 @@ { "使用目录流": { "data": { - "uuid": "java-5-1020", + "uuid": "java-5-1049", "seg": [ [ [ "目录", - "流" + "流", + "目录流" ] ] ], - "level": "2", + "level": { + "min": 0.49420705782312924, + "max": 0.4942203443877551 + }, "related_data": {} } } @@ -60632,7 +70999,7 @@ { "ZIP文件系统": { "data": { - "uuid": "java-5-1021", + "uuid": "java-5-1050", "seg": [ [ [ @@ -60641,14 +71008,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4942203443877551, + "max": 0.49423363095238093 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1003", + "uuid": "java-4-1014", "seg": [ [ [ @@ -60657,14 +71027,11 @@ ] ] ], - "level": "2", - "related_data": { - "qa": { - "data_id": [ - "13_217008_164816" - ] - } - } + "level": { + "min": 0.494140625, + "max": 0.49423363095238093 + }, + "related_data": {} } } }, @@ -60674,7 +71041,7 @@ { "内存映射文件的性能": { "data": { - "uuid": "java-5-1022", + "uuid": "java-5-1051", "seg": [ [ [ @@ -60685,7 +71052,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49423363095238093, + "max": 0.4942801339285714 + }, "related_data": {} } } @@ -60693,23 +71063,27 @@ { "缓冲区数据结构": { "data": { - "uuid": "java-5-1023", + "uuid": "java-5-1052", "seg": [ [ [ "缓冲区", - "数据结构" + "数据结构", + "缓冲区数据结构" ] ] ], - "level": "2", + "level": { + "min": 0.4942801339285714, + "max": 0.4943266369047619 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1004", + "uuid": "java-4-1015", "seg": [ [ [ @@ -60719,7 +71093,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49423363095238093, + "max": 0.4943266369047619 + }, "related_data": {} } } @@ -60727,7 +71104,7 @@ { "文件加锁机制": { "data": { - "uuid": "java-4-1005", + "uuid": "java-4-1016", "seg": [ [ [ @@ -60737,14 +71114,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4943266369047619, + "max": 0.49441964285714285 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-510", + "uuid": "java-3-503", "seg": [ [ [ @@ -60755,14 +71135,11 @@ ] ] ], - "level": "2", - "related_data": { - "qa": { - "data_id": [ - "13_698301_585151" - ] - } - } + "level": { + "min": 0.49386160714285715, + "max": 0.49441964285714285 + }, + "related_data": {} } } }, @@ -60772,7 +71149,7 @@ { "XML概述": { "data": { - "uuid": "java-4-1006", + "uuid": "java-4-1017", "seg": [ [ [ @@ -60781,7 +71158,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49441964285714285, + "max": 0.4944816468253968 + }, "related_data": {} } } @@ -60789,7 +71169,7 @@ { "XML文档的结构": { "data": { - "uuid": "java-4-1007", + "uuid": "java-4-1018", "seg": [ [ [ @@ -60799,7 +71179,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4944816468253968, + "max": 0.49454365079365076 + }, "related_data": {} } } @@ -60807,7 +71190,7 @@ { "解析XML文档": { "data": { - "uuid": "java-4-1008", + "uuid": "java-4-1019", "seg": [ [ [ @@ -60817,17 +71200,11 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_199008_116093", - "13_802362_896857", - "13_418788_437441", - "13_354443_366832" - ] - } - } + "level": { + "min": 0.49454365079365076, + "max": 0.49460565476190477 + }, + "related_data": {} } } }, @@ -60837,16 +71214,20 @@ { "文档类型定义": { "data": { - "uuid": "java-5-1024", + "uuid": "java-5-1053", "seg": [ [ [ "文档", - "类型定义" + "类型定义", + "文档类型定义" ] ] ], - "level": "1", + "level": { + "min": 0.49460565476190477, + "max": 0.49462632275132273 + }, "related_data": {} } } @@ -60854,7 +71235,7 @@ { "XML Schema": { "data": { - "uuid": "java-5-1025", + "uuid": "java-5-1054", "seg": [ [ [ @@ -60863,20 +71244,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49462632275132273, + "max": 0.49464699074074076 + }, "related_data": { "qa": { "data_id": [ - "13_960150_1111759", - "13_721_1317", - "13_358012_375578", - "13_24927_6584", - "13_226527_189213", - "13_11183_5231", - "13_1558_2549", - "13_773858_837675", - "13_388251_427957", - "13_3298_4212" + "13_960150_1111759@13", + "13_721_1317@13", + "13_358012_375578@13", + "13_24927_6584@13", + "13_226527_189213@13", + "13_11183_5231@13", + "13_1558_2549@13", + "13_773858_837675@13", + "13_388251_427957@13", + "13_3298_4212@13" ] } } @@ -60886,7 +71270,7 @@ { "一个实践示例": { "data": { - "uuid": "java-5-1026", + "uuid": "java-5-1055", "seg": [ [ [ @@ -60895,14 +71279,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49464699074074076, + "max": 0.4946676587301587 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1009", + "uuid": "java-4-1020", "seg": [ [ [ @@ -60912,7 +71299,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49460565476190477, + "max": 0.4946676587301587 + }, "related_data": {} } } @@ -60920,21 +71310,25 @@ { "使用XPath来定位信息": { "data": { - "uuid": "java-4-1010", + "uuid": "java-4-1021", "seg": [ [ [ "xpath", "定位", - "信息" + "信息", + "定位信息" ] ] ], - "level": "1", + "level": { + "min": 0.4946676587301587, + "max": 0.4947296626984127 + }, "related_data": { "qa": { "data_id": [ - "13_708446_668447" + "13_708446_668447@13" ] } } @@ -60944,20 +71338,24 @@ { "使用命名空间": { "data": { - "uuid": "java-4-1011", + "uuid": "java-4-1022", "seg": [ [ [ "命名", - "空间" + "空间", + "命名空间" ] ] ], - "level": "1", + "level": { + "min": 0.4947296626984127, + "max": 0.49479166666666663 + }, "related_data": { "qa": { "data_id": [ - "13_223881_182422" + "13_223881_182422@13" ] } } @@ -60970,7 +71368,7 @@ { "使用SAX解析器": { "data": { - "uuid": "java-5-1027", + "uuid": "java-5-1056", "seg": [ [ [ @@ -60979,7 +71377,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49479166666666663, + "max": 0.4948226686507936 + }, "related_data": {} } } @@ -60987,7 +71388,7 @@ { "使用StAX解析器": { "data": { - "uuid": "java-5-1028", + "uuid": "java-5-1057", "seg": [ [ [ @@ -60996,24 +71397,32 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4948226686507936, + "max": 0.49485367063492064 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1012", + "uuid": "java-4-1023", "seg": [ [ [ "流", "机制", - "解析器" + "解析器", + "流机制", + "机制解析器" ] ] ], - "level": "1", + "level": { + "min": 0.49479166666666663, + "max": 0.49485367063492064 + }, "related_data": {} } } @@ -61024,18 +71433,23 @@ { "不带命名空间的文档": { "data": { - "uuid": "java-5-1029", + "uuid": "java-5-1058", "seg": [ [ [ "带", "命名", "空间", - "文档" + "文档", + "不带", + "命名空间" ] ] ], - "level": "1", + "level": { + "min": 0.49485367063492064, + "max": 0.49486917162698413 + }, "related_data": {} } } @@ -61043,18 +71457,22 @@ { "带命名空间的文档": { "data": { - "uuid": "java-5-1030", + "uuid": "java-5-1059", "seg": [ [ [ "带", "命名", "空间", - "文档" + "文档", + "命名空间" ] ] ], - "level": "1", + "level": { + "min": 0.49486917162698413, + "max": 0.4948846726190476 + }, "related_data": {} } } @@ -61062,7 +71480,7 @@ { "写出文档": { "data": { - "uuid": "java-5-1031", + "uuid": "java-5-1060", "seg": [ [ [ @@ -61071,20 +71489,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4948846726190476, + "max": 0.4949001736111111 + }, "related_data": { "qa": { "data_id": [ - "13_355574_369841", - "13_195333_104941", - "13_1094746_1305235", - "13_205133_136409", - "13_389028_429237", - "13_362122_383574", - "13_246564_238829", - "13_7441032_53416812", - "13_1086889_1293651", - "13_764813_823611" + "13_355574_369841@13", + "13_195333_104941@13", + "13_1094746_1305235@13", + "13_205133_136409@13", + "13_389028_429237@13", + "13_362122_383574@13", + "13_246564_238829@13", + "13_7441032_53416812@13", + "13_764813_823611@13", + "13_1091756_1299378@13" ] } } @@ -61094,7 +71515,7 @@ { "使用StAX写出XML文档": { "data": { - "uuid": "java-5-1032", + "uuid": "java-5-1061", "seg": [ [ [ @@ -61105,12 +71526,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4949001736111111, + "max": 0.4949156746031746 + }, "related_data": { "qa": { "data_id": [ - "13_233993_212496", - "13_212188_153398" + "13_233993_212496@13", + "13_212188_153398@13" ] } } @@ -61119,7 +71543,7 @@ } ], "data": { - "uuid": "java-4-1013", + "uuid": "java-4-1024", "seg": [ [ [ @@ -61129,7 +71553,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49485367063492064, + "max": 0.4949156746031746 + }, "related_data": {} } } @@ -61137,7 +71564,7 @@ { "XSL转换": { "data": { - "uuid": "java-4-1014", + "uuid": "java-4-1025", "seg": [ [ [ @@ -61146,14 +71573,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4949156746031746, + "max": 0.49497767857142855 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-511", + "uuid": "java-3-504", "seg": [ [ [ @@ -61161,7 +71591,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49441964285714285, + "max": 0.49497767857142855 + }, "related_data": {} } } @@ -61175,7 +71608,7 @@ { "使用telnet": { "data": { - "uuid": "java-5-1033", + "uuid": "java-5-1062", "seg": [ [ [ @@ -61183,11 +71616,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49497767857142855, + "max": 0.4950055803571428 + }, "related_data": { "qa": { "data_id": [ - "13_865786_995317" + "13_865786_995317@13" ] } } @@ -61197,7 +71633,7 @@ { "用Java连接到服务器": { "data": { - "uuid": "java-5-1034", + "uuid": "java-5-1063", "seg": [ [ [ @@ -61207,15 +71643,18 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4950055803571428, + "max": 0.49503348214285714 + }, "related_data": { "qa": { "data_id": [ - "13_710219_668209", - "13_380694_413694", - "13_676147_514194", - "13_1051719_1249048", - "13_7418112_53374007" + "13_710219_668209@13", + "13_380694_413694@13", + "13_676147_514194@13", + "13_1051719_1249048@13", + "13_7418112_53374007@13" ] } } @@ -61225,7 +71664,7 @@ { "套接字超时": { "data": { - "uuid": "java-5-1035", + "uuid": "java-5-1064", "seg": [ [ [ @@ -61235,7 +71674,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49503348214285714, + "max": 0.4950613839285714 + }, "related_data": {} } } @@ -61243,20 +71685,24 @@ { "因特网地址": { "data": { - "uuid": "java-5-1036", + "uuid": "java-5-1065", "seg": [ [ [ "因特网", - "地址" + "地址", + "因特网地址" ] ] ], - "level": "2", + "level": { + "min": 0.4950613839285714, + "max": 0.4950892857142857 + }, "related_data": { "qa": { "data_id": [ - "13_160176_26859" + "13_160176_26859@13" ] } } @@ -61265,7 +71711,7 @@ } ], "data": { - "uuid": "java-4-1015", + "uuid": "java-4-1026", "seg": [ [ [ @@ -61274,7 +71720,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49497767857142855, + "max": 0.4950892857142857 + }, "related_data": {} } } @@ -61285,30 +71734,34 @@ { "服务器套接字": { "data": { - "uuid": "java-5-1037", + "uuid": "java-5-1066", "seg": [ [ [ "服务器", "套", - "接字" + "接字", + "服务器套" ] ] ], - "level": "2", + "level": { + "min": 0.4950892857142857, + "max": 0.4951171875 + }, "related_data": { "qa": { "data_id": [ - "13_275124_302875", - "13_385643_423013", - "13_670343_492936", - "13_660584_475186", - "13_653633_462631", - "13_23239_7845", - "13_204464_133295", - "13_1101428_1315942", - "13_663756_480313", - "13_378685_410194" + "13_275124_302875@13", + "13_385643_423013@13", + "13_670343_492936@13", + "13_660584_475186@13", + "13_653633_462631@13", + "13_23239_7845@13", + "13_204464_133295@13", + "13_1101428_1315942@13", + "13_663756_480313@13", + "13_378685_410194@13" ] } } @@ -61318,7 +71771,7 @@ { "为多个客户端服务": { "data": { - "uuid": "java-5-1038", + "uuid": "java-5-1067", "seg": [ [ [ @@ -61327,13 +71780,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4951171875, + "max": 0.49514508928571427 + }, "related_data": { "qa": { "data_id": [ - "13_7415218_53368604", - "13_7420135_53395814", - "13_212346_153649" + "13_7415218_53368604@13", + "13_7420135_53395814@13", + "13_212346_153649@13" ] } } @@ -61343,7 +71799,7 @@ { "半关闭": { "data": { - "uuid": "java-5-1039", + "uuid": "java-5-1068", "seg": [ [ [ @@ -61351,13 +71807,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49514508928571427, + "max": 0.49517299107142854 + }, "related_data": { "qa": { "data_id": [ - "13_704331_596443", - "13_1049440_1246913", - "13_978680_1140252" + "13_704331_596443@13", + "13_1049440_1246913@13", + "13_978680_1140252@13" ] } } @@ -61367,24 +71826,28 @@ { "可中断套接字": { "data": { - "uuid": "java-5-1040", + "uuid": "java-5-1069", "seg": [ [ [ "中断", "套", - "接字" + "接字", + "中断套" ] ] ], - "level": "2", + "level": { + "min": 0.49517299107142854, + "max": 0.49520089285714286 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1016", + "uuid": "java-4-1027", "seg": [ [ [ @@ -61392,7 +71855,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4950892857142857, + "max": 0.49520089285714286 + }, "related_data": {} } } @@ -61403,7 +71869,7 @@ { "URL和URI": { "data": { - "uuid": "java-5-1041", + "uuid": "java-5-1070", "seg": [ [ [ @@ -61414,12 +71880,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49520089285714286, + "max": 0.49523809523809526 + }, "related_data": { "qa": { "data_id": [ - "13_756982_812301", - "13_7415611_53369101" + "13_756982_812301@13", + "13_7415611_53369101@13" ] } } @@ -61429,7 +71898,7 @@ { "使用URLConnection获取信息": { "data": { - "uuid": "java-5-1042", + "uuid": "java-5-1071", "seg": [ [ [ @@ -61438,11 +71907,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49523809523809526, + "max": 0.4952752976190476 + }, "related_data": { "qa": { "data_id": [ - "13_7431451_53399787" + "13_7431451_53399787@13" ] } } @@ -61452,30 +71924,34 @@ { "提交表单数据": { "data": { - "uuid": "java-5-1043", + "uuid": "java-5-1072", "seg": [ [ [ "提交", "表单", - "数据" + "数据", + "表单数据" ] ] ], - "level": "2", + "level": { + "min": 0.4952752976190476, + "max": 0.4953125 + }, "related_data": { "qa": { "data_id": [ - "13_190721_91509", - "13_761661_819523", - "13_371784_399180", - "13_183166_69784", - "13_210630_149822", - "13_656996_469236", - "13_681810_535069", - "13_183565_70937", - "13_165175_39404", - "13_378812_410424" + "13_190721_91509@13", + "13_761661_819523@13", + "13_371784_399180@13", + "13_183166_69784@13", + "13_210630_149822@13", + "13_656996_469236@13", + "13_681810_535069@13", + "13_183565_70937@13", + "13_165175_39404@13", + "13_378812_410424@13" ] } } @@ -61484,7 +71960,7 @@ } ], "data": { - "uuid": "java-4-1017", + "uuid": "java-4-1028", "seg": [ [ [ @@ -61494,7 +71970,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49520089285714286, + "max": 0.4953125 + }, "related_data": {} } } @@ -61502,7 +71981,7 @@ { "HTTP客户端": { "data": { - "uuid": "java-4-1018", + "uuid": "java-4-1029", "seg": [ [ [ @@ -61511,7 +71990,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4953125, + "max": 0.4954241071428572 + }, "related_data": {} } } @@ -61519,7 +72001,7 @@ { "发送E-mail": { "data": { - "uuid": "java-4-1019", + "uuid": "java-4-1030", "seg": [ [ [ @@ -61529,15 +72011,18 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4954241071428572, + "max": 0.4955357142857143 + }, "related_data": { "qa": { "data_id": [ - "13_705201_607232", - "13_744087_789554", - "13_7403090_53351326", - "13_881844_1019844", - "13_201380_126425" + "13_705201_607232@13", + "13_744087_789554@13", + "13_7403090_53351326@13", + "13_881844_1019844@13", + "13_201380_126425@13" ] } } @@ -61546,7 +72031,7 @@ } ], "data": { - "uuid": "java-3-512", + "uuid": "java-3-505", "seg": [ [ [ @@ -61554,7 +72039,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49497767857142855, + "max": 0.4955357142857143 + }, "related_data": {} } } @@ -61568,17 +72056,21 @@ { "JDBC驱动程序类型": { "data": { - "uuid": "java-5-1044", + "uuid": "java-5-1073", "seg": [ [ [ "jdbc", "驱动程序", - "类型" + "类型", + "驱动程序类型" ] ] ], - "level": "1", + "level": { + "min": 0.4955357142857143, + "max": 0.4955636160714286 + }, "related_data": {} } } @@ -61586,24 +72078,28 @@ { "JDBC的典型用法": { "data": { - "uuid": "java-5-1045", + "uuid": "java-5-1074", "seg": [ [ [ "jdbc", "典型", - "用法" + "用法", + "典型用法" ] ] ], - "level": "2", + "level": { + "min": 0.4955636160714286, + "max": 0.4955915178571429 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1020", + "uuid": "java-4-1031", "seg": [ [ [ @@ -61612,7 +72108,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4955357142857143, + "max": 0.4955915178571429 + }, "related_data": {} } } @@ -61620,16 +72119,20 @@ { "结构化查询语言": { "data": { - "uuid": "java-4-1021", + "uuid": "java-4-1032", "seg": [ [ [ "结构化", - "查询语言" + "查询语言", + "结构化查询语言" ] ] ], - "level": "2", + "level": { + "min": 0.4955915178571429, + "max": 0.49564732142857143 + }, "related_data": {} } } @@ -61640,7 +72143,7 @@ { "数据库URL": { "data": { - "uuid": "java-5-1046", + "uuid": "java-5-1075", "seg": [ [ [ @@ -61649,7 +72152,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49564732142857143, + "max": 0.4956584821428571 + }, "related_data": {} } } @@ -61657,7 +72163,7 @@ { "驱动程序JAR文件": { "data": { - "uuid": "java-5-1047", + "uuid": "java-5-1076", "seg": [ [ [ @@ -61667,7 +72173,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4956584821428571, + "max": 0.4956696428571429 + }, "related_data": {} } } @@ -61675,7 +72184,7 @@ { "启动数据库": { "data": { - "uuid": "java-5-1048", + "uuid": "java-5-1077", "seg": [ [ [ @@ -61684,7 +72193,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4956696428571429, + "max": 0.4956808035714286 + }, "related_data": {} } } @@ -61692,17 +72204,21 @@ { "注册驱动器类": { "data": { - "uuid": "java-5-1049", + "uuid": "java-5-1078", "seg": [ [ [ "注册", "驱动器", - "类" + "类", + "驱动器类" ] ] ], - "level": "2", + "level": { + "min": 0.4956808035714286, + "max": 0.4956919642857143 + }, "related_data": {} } } @@ -61710,7 +72226,7 @@ { "连接到数据库": { "data": { - "uuid": "java-5-1050", + "uuid": "java-5-1079", "seg": [ [ [ @@ -61719,20 +72235,22 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4956919642857143, + "max": 0.495703125 + }, "related_data": { "qa": { "data_id": [ - "13_193319_98364", - "13_1090242_1296984", - "13_7412176_53363404", - "13_275101_302700", - "13_1086682_1293635", - "13_213918_157382", - "13_232437_205366", - "13_209012_146499", - "13_1050858_1247979", - "13_219163_169913" + "13_1090242_1296984@13", + "13_7412176_53363404@13", + "13_275101_302700@13", + "13_1086682_1293635@13", + "13_213918_157382@13", + "13_232437_205366@13", + "13_209012_146499@13", + "13_1050858_1247979@13", + "13_219163_169913@13" ] } } @@ -61741,7 +72259,7 @@ } ], "data": { - "uuid": "java-4-1022", + "uuid": "java-4-1033", "seg": [ [ [ @@ -61750,7 +72268,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49564732142857143, + "max": 0.495703125 + }, "related_data": {} } } @@ -61761,7 +72282,7 @@ { "执行SQL语句": { "data": { - "uuid": "java-5-1051", + "uuid": "java-5-1080", "seg": [ [ [ @@ -61771,20 +72292,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.495703125, + "max": 0.4957170758928572 + }, "related_data": { "qa": { "data_id": [ - "13_7442229_53419044", - "13_750812_804100", - "13_7405731_53355138", - "13_901323_1037072", - "13_7428235_53393696", - "13_954465_1098402", - "13_724211_743092", - "13_187979_83666", - "13_7447694_53427613", - "13_228231_193906" + "13_7442229_53419044@13", + "13_750812_804100@13", + "13_7405731_53355138@13", + "13_901323_1037072@13", + "13_7428235_53393696@13", + "13_954465_1098402@13", + "13_724211_743092@13", + "13_187979_83666@13", + "13_7447694_53427613@13", + "13_228231_193906@13" ] } } @@ -61794,7 +72318,7 @@ { "管理连接、语句和结果集": { "data": { - "uuid": "java-5-1052", + "uuid": "java-5-1081", "seg": [ [ [ @@ -61805,15 +72329,19 @@ "语句" ], [ - "集" + "集", + "结果集" ] ] ], - "level": "2", + "level": { + "min": 0.4957170758928572, + "max": 0.4957310267857143 + }, "related_data": { "qa": { "data_id": [ - "13_7457796_53442266" + "13_7457796_53442266@13" ] } } @@ -61823,7 +72351,7 @@ { "分析SQL异常": { "data": { - "uuid": "java-5-1053", + "uuid": "java-5-1082", "seg": [ [ [ @@ -61833,11 +72361,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4957310267857143, + "max": 0.4957449776785714 + }, "related_data": { "qa": { "data_id": [ - "13_7425877_53387796" + "13_7425877_53387796@13" ] } } @@ -61847,7 +72378,7 @@ { "组装数据库": { "data": { - "uuid": "java-5-1054", + "uuid": "java-5-1083", "seg": [ [ [ @@ -61856,14 +72387,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4957449776785714, + "max": 0.49575892857142856 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1023", + "uuid": "java-4-1034", "seg": [ [ [ @@ -61872,7 +72406,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.495703125, + "max": 0.49575892857142856 + }, "related_data": {} } } @@ -61883,7 +72420,7 @@ { "预备语句": { "data": { - "uuid": "java-5-1055", + "uuid": "java-5-1084", "seg": [ [ [ @@ -61892,7 +72429,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49575892857142856, + "max": 0.49577008928571425 + }, "related_data": {} } } @@ -61900,7 +72440,7 @@ { "读写LOB": { "data": { - "uuid": "java-5-1056", + "uuid": "java-5-1085", "seg": [ [ [ @@ -61909,7 +72449,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49577008928571425, + "max": 0.49578125 + }, "related_data": {} } } @@ -61917,7 +72460,7 @@ { "SQL转义": { "data": { - "uuid": "java-5-1057", + "uuid": "java-5-1086", "seg": [ [ [ @@ -61926,16 +72469,18 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49578125, + "max": 0.4957924107142857 + }, "related_data": { "qa": { "data_id": [ - "13_770802_832849", - "13_4645575_29328361", - "13_1096468_1308740", - "13_4645316_29327787", - "13_744009_789397", - "13_1066759_1266523" + "13_770802_832849@13", + "13_4645575_29328361@13", + "13_1096468_1308740@13", + "13_4645316_29327787@13", + "13_744009_789397@13" ] } } @@ -61945,15 +72490,19 @@ { "多结果集": { "data": { - "uuid": "java-5-1058", + "uuid": "java-5-1087", "seg": [ [ [ - "集" + "集", + "结果集" ] ] ], - "level": "2", + "level": { + "min": 0.4957924107142857, + "max": 0.49580357142857145 + }, "related_data": {} } } @@ -61961,7 +72510,7 @@ { "获取自动生成的键": { "data": { - "uuid": "java-5-1059", + "uuid": "java-5-1088", "seg": [ [ [ @@ -61972,16 +72521,18 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49580357142857145, + "max": 0.49581473214285715 + }, "related_data": { "qa": { "data_id": [ - "13_685898_546596", - "13_356297_371721", - "13_387984_427521", - "13_685858_546514", - "13_363130_383005", - "13_7446757_53426287" + "13_685898_546596@13", + "13_356297_371721@13", + "13_387984_427521@13", + "13_363130_383005@13", + "13_7446757_53426287@13" ] } } @@ -61990,7 +72541,7 @@ } ], "data": { - "uuid": "java-4-1024", + "uuid": "java-4-1035", "seg": [ [ [ @@ -62000,12 +72551,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49575892857142856, + "max": 0.49581473214285715 + }, "related_data": { "qa": { "data_id": [ - "13_731704_801319", - "13_651277_458522" + "13_731704_801319@13" ] } } @@ -62018,16 +72571,20 @@ { "可滚动的结果集": { "data": { - "uuid": "java-5-1060", + "uuid": "java-5-1089", "seg": [ [ [ "滚动", - "集" + "集", + "结果集" ] ] ], - "level": "2", + "level": { + "min": 0.49581473214285715, + "max": 0.4958426339285714 + }, "related_data": {} } } @@ -62035,28 +72592,32 @@ { "可更新的结果集": { "data": { - "uuid": "java-5-1061", + "uuid": "java-5-1090", "seg": [ [ [ "更新", - "集" + "集", + "结果集" ] ] ], - "level": "2", + "level": { + "min": 0.4958426339285714, + "max": 0.49587053571428574 + }, "related_data": { "qa": { "data_id": [ - "13_358936_377893", - "13_651511_458802", - "13_749182_801606", - "13_1399_2297", - "13_697139_581885", - "13_1086971_1293706", - "13_363338_392222", - "13_358596_376935", - "13_670087_492286" + "13_358936_377893@13", + "13_651511_458802@13", + "13_749182_801606@13", + "13_1399_2297@13", + "13_697139_581885@13", + "13_1086971_1293706@13", + "13_363338_392222@13", + "13_358596_376935@13", + "13_670087_492286@13" ] } } @@ -62065,7 +72626,7 @@ } ], "data": { - "uuid": "java-4-1025", + "uuid": "java-4-1036", "seg": [ [ [ @@ -62073,11 +72634,15 @@ ], [ "更新", - "集" + "集", + "结果集" ] ] ], - "level": "2", + "level": { + "min": 0.49581473214285715, + "max": 0.49587053571428574 + }, "related_data": {} } } @@ -62088,7 +72653,7 @@ { "构建行集": { "data": { - "uuid": "java-5-1062", + "uuid": "java-5-1091", "seg": [ [ [ @@ -62097,7 +72662,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49587053571428574, + "max": 0.4958984375 + }, "related_data": {} } } @@ -62105,7 +72673,7 @@ { "被缓存的行集": { "data": { - "uuid": "java-5-1063", + "uuid": "java-5-1092", "seg": [ [ [ @@ -62114,14 +72682,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4958984375, + "max": 0.4959263392857143 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1026", + "uuid": "java-4-1037", "seg": [ [ [ @@ -62129,7 +72700,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49587053571428574, + "max": 0.4959263392857143 + }, "related_data": {} } } @@ -62137,7 +72711,7 @@ { "元数据": { "data": { - "uuid": "java-4-1027", + "uuid": "java-4-1038", "seg": [ [ [ @@ -62145,14 +72719,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4959263392857143, + "max": 0.49598214285714287 + }, "related_data": { "qa": { "data_id": [ - "13_363936_384924", - "13_7419117_53376808", - "13_681852_535243", - "13_202721_128149" + "13_363936_384924@13", + "13_681852_535243@13", + "13_202721_128149@13" ] } } @@ -62165,23 +72741,27 @@ { "用JDBC对事务编程": { "data": { - "uuid": "java-5-1064", + "uuid": "java-5-1093", "seg": [ [ [ "jdbc", "事务", - "编程" + "编程", + "事务编程" ] ] ], - "level": "2", + "level": { + "min": 0.49598214285714287, + "max": 0.49600074404761907 + }, "related_data": { "qa": { "data_id": [ - "13_7423409_53383373", - "13_829745_930046", - "13_946995_1086470" + "13_7423409_53383373@13", + "13_829745_930046@13", + "13_946995_1086470@13" ] } } @@ -62191,7 +72771,7 @@ { "批量更新": { "data": { - "uuid": "java-5-1065", + "uuid": "java-5-1094", "seg": [ [ [ @@ -62200,11 +72780,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49600074404761907, + "max": 0.4960193452380952 + }, "related_data": { "qa": { "data_id": [ - "13_7431699_53400239" + "13_7431699_53400239@13" ] } } @@ -62214,7 +72797,7 @@ { "高级SQL类型": { "data": { - "uuid": "java-5-1066", + "uuid": "java-5-1095", "seg": [ [ [ @@ -62224,12 +72807,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4960193452380952, + "max": 0.4960379464285714 + }, "related_data": { "qa": { "data_id": [ - "13_821142_917248", - "13_687415_552258" + "13_821142_917248@13", + "13_687415_552258@13" ] } } @@ -62238,7 +72824,7 @@ } ], "data": { - "uuid": "java-4-1028", + "uuid": "java-4-1039", "seg": [ [ [ @@ -62246,7 +72832,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49598214285714287, + "max": 0.4960379464285714 + }, "related_data": {} } } @@ -62254,7 +72843,7 @@ { "Web与企业应用中的连接管理": { "data": { - "uuid": "java-4-1029", + "uuid": "java-4-1040", "seg": [ [ [ @@ -62267,23 +72856,30 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4960379464285714, + "max": 0.49609375 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-513", + "uuid": "java-3-506", "seg": [ [ [ "数据库", - "编程" + "编程", + "数据库编程" ] ] ], - "level": "2", + "level": { + "min": 0.4955357142857143, + "max": 0.49609375 + }, "related_data": {} } } @@ -62297,7 +72893,7 @@ { "指定locale": { "data": { - "uuid": "java-5-1067", + "uuid": "java-5-1096", "seg": [ [ [ @@ -62306,22 +72902,18 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_195043_104061", - "13_756290_811477" - ] - } - } + "level": { + "min": 0.49609375, + "max": 0.4961309523809524 + }, + "related_data": {} } } }, { "默认locale": { "data": { - "uuid": "java-5-1068", + "uuid": "java-5-1097", "seg": [ [ [ @@ -62330,7 +72922,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4961309523809524, + "max": 0.49616815476190473 + }, "related_data": {} } } @@ -62338,7 +72933,7 @@ { "显示名字": { "data": { - "uuid": "java-5-1069", + "uuid": "java-5-1098", "seg": [ [ [ @@ -62347,11 +72942,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49616815476190473, + "max": 0.49620535714285713 + }, "related_data": { "qa": { "data_id": [ - "13_344496_347675" + "13_344496_347675@13" ] } } @@ -62360,7 +72958,7 @@ } ], "data": { - "uuid": "java-4-1030", + "uuid": "java-4-1041", "seg": [ [ [ @@ -62368,7 +72966,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49609375, + "max": 0.49620535714285713 + }, "related_data": {} } } @@ -62379,21 +72980,26 @@ { "格式化数字值": { "data": { - "uuid": "java-5-1070", + "uuid": "java-5-1099", "seg": [ [ [ "格式化", "数字", - "值" + "值", + "格式化数字", + "数字值" ] ] ], - "level": "1", + "level": { + "min": 0.49620535714285713, + "max": 0.4962611607142857 + }, "related_data": { "qa": { "data_id": [ - "13_27676_7662" + "13_27676_7662@13" ] } } @@ -62403,7 +73009,7 @@ { "货币": { "data": { - "uuid": "java-5-1071", + "uuid": "java-5-1100", "seg": [ [ [ @@ -62411,23 +73017,30 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4962611607142857, + "max": 0.49631696428571426 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1031", + "uuid": "java-4-1042", "seg": [ [ [ "数字", - "格式" + "格式", + "数字格式" ] ] ], - "level": "1", + "level": { + "min": 0.49620535714285713, + "max": 0.49631696428571426 + }, "related_data": {} } } @@ -62435,7 +73048,7 @@ { "排序和规范化": { "data": { - "uuid": "java-4-1032", + "uuid": "java-4-1043", "seg": [ [ [ @@ -62446,7 +73059,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49631696428571426, + "max": 0.49642857142857144 + }, "related_data": {} } } @@ -62457,7 +73073,7 @@ { "选择格式": { "data": { - "uuid": "java-5-1072", + "uuid": "java-5-1101", "seg": [ [ [ @@ -62466,14 +73082,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49642857142857144, + "max": 0.49654017857142857 + }, "related_data": { "qa": { "data_id": [ - "13_678157_521659", - "13_719194_713178", - "13_229436_197401", - "13_216367_163589" + "13_678157_521659@13", + "13_229436_197401@13" ] } } @@ -62482,16 +73099,20 @@ } ], "data": { - "uuid": "java-4-1033", + "uuid": "java-4-1044", "seg": [ [ [ "消息", - "格式化" + "格式化", + "消息格式化" ] ] ], - "level": "1", + "level": { + "min": 0.49642857142857144, + "max": 0.49654017857142857 + }, "related_data": {} } } @@ -62502,21 +73123,25 @@ { "定位资源包": { "data": { - "uuid": "java-5-1073", + "uuid": "java-5-1102", "seg": [ [ [ "定位", "资源", - "包" + "包", + "定位资源" ] ] ], - "level": "1", + "level": { + "min": 0.49654017857142857, + "max": 0.49657738095238096 + }, "related_data": { "qa": { "data_id": [ - "13_698449_585462" + "13_698449_585462@13" ] } } @@ -62526,16 +73151,20 @@ { "属性文件": { "data": { - "uuid": "java-5-1074", + "uuid": "java-5-1103", "seg": [ [ [ "属性", - "文件" + "文件", + "属性文件" ] ] ], - "level": "1", + "level": { + "min": 0.49657738095238096, + "max": 0.4966145833333333 + }, "related_data": {} } } @@ -62543,7 +73172,7 @@ { "包类": { "data": { - "uuid": "java-5-1075", + "uuid": "java-5-1104", "seg": [ [ [ @@ -62551,14 +73180,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4966145833333333, + "max": 0.4966517857142857 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1034", + "uuid": "java-4-1045", "seg": [ [ [ @@ -62567,14 +73199,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49654017857142857, + "max": 0.4966517857142857 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-514", + "uuid": "java-3-507", "seg": [ [ [ @@ -62582,7 +73217,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49609375, + "max": 0.4966517857142857 + }, "related_data": {} } } @@ -62593,7 +73231,7 @@ { "模块的概念": { "data": { - "uuid": "java-4-1035", + "uuid": "java-4-1046", "seg": [ [ [ @@ -62602,7 +73240,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4966517857142857, + "max": 0.49669828869047616 + }, "related_data": {} } } @@ -62610,16 +73251,20 @@ { "对模块命名": { "data": { - "uuid": "java-4-1036", + "uuid": "java-4-1047", "seg": [ [ [ "模块", - "命名" + "命名", + "模块命名" ] ] ], - "level": "1", + "level": { + "min": 0.49669828869047616, + "max": 0.49674479166666663 + }, "related_data": {} } } @@ -62627,7 +73272,7 @@ { "模块化的“Hello, World!”程序": { "data": { - "uuid": "java-4-1037", + "uuid": "java-4-1048", "seg": [ [ [ @@ -62639,13 +73284,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49674479166666663, + "max": 0.49679129464285715 + }, "related_data": { "qa": { "data_id": [ - "13_383063_418267", - "13_383050_418412", - "13_239596_222983" + "13_383063_418267@13", + "13_383050_418412@13", + "13_239596_222983@13" ] } } @@ -62655,7 +73303,7 @@ { "对模块的需求": { "data": { - "uuid": "java-4-1038", + "uuid": "java-4-1049", "seg": [ [ [ @@ -62664,12 +73312,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49679129464285715, + "max": 0.4968377976190476 + }, "related_data": { "qa": { "data_id": [ - "13_688311_553847", - "13_207173_140974" + "13_688311_553847@13", + "13_207173_140974@13" ] } } @@ -62679,7 +73330,7 @@ { "导出包": { "data": { - "uuid": "java-4-1039", + "uuid": "java-4-1050", "seg": [ [ [ @@ -62688,13 +73339,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4968377976190476, + "max": 0.4968843005952381 + }, "related_data": { "qa": { "data_id": [ - "13_347003_352694", - "13_771821_834566", - "13_174093_53482" + "13_347003_352694@13", + "13_771821_834566@13", + "13_174093_53482@13" ] } } @@ -62704,7 +73358,7 @@ { "模块化的JAR": { "data": { - "uuid": "java-4-1040", + "uuid": "java-4-1051", "seg": [ [ [ @@ -62713,11 +73367,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4968843005952381, + "max": 0.4969308035714286 + }, "related_data": { "qa": { "data_id": [ - "13_354565_367087" + "13_354565_367087@13" ] } } @@ -62727,16 +73384,20 @@ { "不具名模块": { "data": { - "uuid": "java-4-1041", + "uuid": "java-4-1052", "seg": [ [ [ "具名", - "模块" + "模块", + "不具名" ] ] ], - "level": "1", + "level": { + "min": 0.4969308035714286, + "max": 0.49697730654761907 + }, "related_data": {} } } @@ -62744,18 +73405,22 @@ { "用于迁移的命令行标识": { "data": { - "uuid": "java-4-1042", + "uuid": "java-4-1053", "seg": [ [ [ "用于", "迁移", "命令行", - "标识" + "标识", + "命令行标识" ] ] ], - "level": "1", + "level": { + "min": 0.49697730654761907, + "max": 0.49702380952380953 + }, "related_data": {} } } @@ -62763,7 +73428,7 @@ { "传递的需求和静态的需求": { "data": { - "uuid": "java-4-1043", + "uuid": "java-4-1054", "seg": [ [ [ @@ -62776,7 +73441,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49702380952380953, + "max": 0.4970703125 + }, "related_data": {} } } @@ -62784,7 +73452,7 @@ { "限定导出和开放": { "data": { - "uuid": "java-4-1044", + "uuid": "java-4-1055", "seg": [ [ [ @@ -62796,7 +73464,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4970703125, + "max": 0.49711681547619047 + }, "related_data": {} } } @@ -62804,7 +73475,7 @@ { "服务加载": { "data": { - "uuid": "java-4-1045", + "uuid": "java-4-1056", "seg": [ [ [ @@ -62813,7 +73484,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49711681547619047, + "max": 0.497163318452381 + }, "related_data": {} } } @@ -62821,7 +73495,7 @@ { "操作模块的工具": { "data": { - "uuid": "java-4-1046", + "uuid": "java-4-1057", "seg": [ [ [ @@ -62831,25 +73505,33 @@ ] ] ], - "level": "1", + "level": { + "min": 0.497163318452381, + "max": 0.49720982142857145 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-515", + "uuid": "java-3-508", "seg": [ [ [ "java", "平台", "模块", - "系统" + "系统", + "平台模块", + "模块系统" ] ] ], - "level": "1", + "level": { + "min": 0.4966517857142857, + "max": 0.49720982142857145 + }, "related_data": {} } } @@ -62863,7 +73545,7 @@ { "类加载过程": { "data": { - "uuid": "java-5-1076", + "uuid": "java-5-1105", "seg": [ [ [ @@ -62873,20 +73555,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49720982142857145, + "max": 0.4972321428571429 + }, "related_data": { "qa": { "data_id": [ - "13_390277_431705", - "13_7464509_53451065", - "13_638537_441446", - "13_203750_131435", - "13_687193_550257", - "13_516254_438955", - "13_646808_450561", - "13_391636_434278", - "13_675836_512051", - "13_760864_818054" + "13_390277_431705@13", + "13_7464509_53451065@13", + "13_638537_441446@13", + "13_203750_131435@13", + "13_687193_550257@13", + "13_516254_438955@13", + "13_646808_450561@13", + "13_391636_434278@13", + "13_675836_512051@13", + "13_760864_818054@13" ] } } @@ -62896,7 +73581,7 @@ { "类加载器的层次结构": { "data": { - "uuid": "java-5-1077", + "uuid": "java-5-1106", "seg": [ [ [ @@ -62907,11 +73592,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4972321428571429, + "max": 0.4972544642857143 + }, "related_data": { "qa": { "data_id": [ - "13_741867_782701" + "13_741867_782701@13" ] } } @@ -62921,7 +73609,7 @@ { "将类加载器用作命名空间": { "data": { - "uuid": "java-5-1078", + "uuid": "java-5-1107", "seg": [ [ [ @@ -62930,11 +73618,15 @@ "器", "用作", "命名", - "空间" + "空间", + "命名空间" ] ] ], - "level": "1", + "level": { + "min": 0.4972544642857143, + "max": 0.49727678571428574 + }, "related_data": {} } } @@ -62942,7 +73634,7 @@ { "编写你自己的类加载器": { "data": { - "uuid": "java-5-1079", + "uuid": "java-5-1108", "seg": [ [ [ @@ -62953,7 +73645,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49727678571428574, + "max": 0.49729910714285713 + }, "related_data": {} } } @@ -62961,21 +73656,26 @@ { "字节码校验": { "data": { - "uuid": "java-5-1080", + "uuid": "java-5-1109", "seg": [ [ [ "字节", "码", - "校验" + "校验", + "字节码", + "码校验" ] ] ], - "level": "1", + "level": { + "min": 0.49729910714285713, + "max": 0.4973214285714286 + }, "related_data": { "qa": { "data_id": [ - "13_702444_592933" + "13_702444_592933@13" ] } } @@ -62984,7 +73684,7 @@ } ], "data": { - "uuid": "java-4-1047", + "uuid": "java-4-1058", "seg": [ [ [ @@ -62994,7 +73694,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49720982142857145, + "max": 0.4973214285714286 + }, "related_data": {} } } @@ -63005,7 +73708,7 @@ { "权限检查": { "data": { - "uuid": "java-5-1081", + "uuid": "java-5-1110", "seg": [ [ [ @@ -63014,7 +73717,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4973214285714286, + "max": 0.49734375000000003 + }, "related_data": {} } } @@ -63022,21 +73728,25 @@ { "Java平台安全性": { "data": { - "uuid": "java-5-1082", + "uuid": "java-5-1111", "seg": [ [ [ "java", "平台", - "安全性" + "安全性", + "平台安全性" ] ] ], - "level": "1", + "level": { + "min": 0.49734375000000003, + "max": 0.4973660714285714 + }, "related_data": { "qa": { "data_id": [ - "13_183741_71621" + "13_183741_71621@13" ] } } @@ -63046,16 +73756,20 @@ { "安全策略文件": { "data": { - "uuid": "java-5-1083", + "uuid": "java-5-1112", "seg": [ [ [ "安全策略", - "文件" + "文件", + "安全策略文件" ] ] ], - "level": "1", + "level": { + "min": 0.4973660714285714, + "max": 0.49738839285714287 + }, "related_data": {} } } @@ -63063,7 +73777,7 @@ { "定制权限": { "data": { - "uuid": "java-5-1084", + "uuid": "java-5-1113", "seg": [ [ [ @@ -63072,11 +73786,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49738839285714287, + "max": 0.49741071428571426 + }, "related_data": { "qa": { "data_id": [ - "13_7450984_53432940" + "13_7450984_53432940@13" ] } } @@ -63086,23 +73803,27 @@ { "实现权限类": { "data": { - "uuid": "java-5-1085", + "uuid": "java-5-1114", "seg": [ [ [ "权限", - "类" + "类", + "权限类" ] ] ], - "level": "1", + "level": { + "min": 0.49741071428571426, + "max": 0.4974330357142857 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1048", + "uuid": "java-4-1059", "seg": [ [ [ @@ -63114,7 +73835,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4973214285714286, + "max": 0.4974330357142857 + }, "related_data": {} } } @@ -63125,7 +73849,7 @@ { "JAAS框架": { "data": { - "uuid": "java-5-1086", + "uuid": "java-5-1115", "seg": [ [ [ @@ -63134,7 +73858,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4974330357142857, + "max": 0.4974888392857143 + }, "related_data": {} } } @@ -63142,7 +73869,7 @@ { "JAAS登录模块": { "data": { - "uuid": "java-5-1087", + "uuid": "java-5-1116", "seg": [ [ [ @@ -63152,15 +73879,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4974888392857143, + "max": 0.4975446428571429 + }, "related_data": { "qa": { "data_id": [ - "13_197765_112332", - "13_763286_821645", - "13_654018_463347", - "13_179669_66375", - "13_673934_502893" + "13_197765_112332@13", + "13_763286_821645@13", + "13_654018_463347@13", + "13_179669_66375@13", + "13_673934_502893@13" ] } } @@ -63169,7 +73899,7 @@ } ], "data": { - "uuid": "java-4-1049", + "uuid": "java-4-1060", "seg": [ [ [ @@ -63178,15 +73908,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4974330357142857, + "max": 0.4975446428571429 + }, "related_data": { "qa": { "data_id": [ - "13_355060_368014", - "13_1102125_1317086", - "13_747627_800419", - "13_978_1688", - "13_186561_79500" + "13_747627_800419@13" ] } } @@ -63199,7 +73928,7 @@ { "消息摘要": { "data": { - "uuid": "java-5-1088", + "uuid": "java-5-1117", "seg": [ [ [ @@ -63208,17 +73937,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4975446428571429, + "max": 0.4975632440476191 + }, "related_data": { "qa": { "data_id": [ - "13_6369037_44641565", - "13_911766_1046927", - "13_7440901_53416594", - "13_7173302_51461644", - "13_749472_802065", - "13_747762_799405", - "13_375661_405183" + "13_6369037_44641565@13" ] } } @@ -63228,7 +73954,7 @@ { "消息签名": { "data": { - "uuid": "java-5-1089", + "uuid": "java-5-1118", "seg": [ [ [ @@ -63237,7 +73963,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4975632440476191, + "max": 0.4975818452380953 + }, "related_data": {} } } @@ -63245,7 +73974,7 @@ { "校验签名": { "data": { - "uuid": "java-5-1090", + "uuid": "java-5-1119", "seg": [ [ [ @@ -63254,14 +73983,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4975818452380953, + "max": 0.4976004464285715 + }, "related_data": { "qa": { "data_id": [ - "13_201523_124331", - "13_1080512_1285814", - "13_198633_115083", - "13_702581_593218" + "13_201523_124331@13", + "13_1080512_1285814@13", + "13_198633_115083@13", + "13_702581_593218@13" ] } } @@ -63271,7 +74003,7 @@ { "证书签名": { "data": { - "uuid": "java-5-1091", + "uuid": "java-5-1120", "seg": [ [ [ @@ -63280,11 +74012,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4976004464285715, + "max": 0.4976190476190476 + }, "related_data": { "qa": { "data_id": [ - "13_7442799_53419775" + "13_7442799_53419775@13" ] } } @@ -63294,7 +74029,7 @@ { "证书请求": { "data": { - "uuid": "java-5-1092", + "uuid": "java-5-1121", "seg": [ [ [ @@ -63302,11 +74037,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4976190476190476, + "max": 0.4976376488095238 + }, "related_data": { "qa": { "data_id": [ - "13_647459_450983" + "13_647459_450983@13" ] } } @@ -63316,7 +74054,7 @@ { "代码签名": { "data": { - "uuid": "java-5-1093", + "uuid": "java-5-1122", "seg": [ [ [ @@ -63324,12 +74062,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4976376488095238, + "max": 0.49765625 + }, "related_data": { "qa": { "data_id": [ - "13_381522_415488", - "13_652141_464434" + "13_381522_415488@13", + "13_652141_464434@13" ] } } @@ -63338,7 +74079,7 @@ } ], "data": { - "uuid": "java-4-1050", + "uuid": "java-4-1061", "seg": [ [ [ @@ -63346,11 +74087,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4975446428571429, + "max": 0.49765625 + }, "related_data": { "qa": { "data_id": [ - "13_239203_222156" + "13_239203_222156@13" ] } } @@ -63363,7 +74107,7 @@ { "对称密码": { "data": { - "uuid": "java-5-1094", + "uuid": "java-5-1123", "seg": [ [ [ @@ -63372,22 +74116,18 @@ ] ] ], - "level": "2", - "related_data": { - "qa": { - "data_id": [ - "13_840558_951822", - "13_897933_1036983" - ] - } - } + "level": { + "min": 0.49765625, + "max": 0.4976841517857143 + }, + "related_data": {} } } }, { "密钥生成": { "data": { - "uuid": "java-5-1095", + "uuid": "java-5-1124", "seg": [ [ [ @@ -63396,20 +74136,22 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4976841517857143, + "max": 0.49771205357142856 + }, "related_data": { "qa": { "data_id": [ - "13_7397596_53342760", - "13_761976_820038", - "13_696385_580074", - "13_686435_548078", - "13_7467244_53454717", - "13_7452271_53434164", - "13_645571_447198", - "13_7429423_53396327", - "13_1026623_1229604", - "13_7405000_53354158" + "13_7397596_53342760@13", + "13_761976_820038@13", + "13_696385_580074@13", + "13_7467244_53454717@13", + "13_7452271_53434164@13", + "13_645571_447198@13", + "13_7429423_53396327@13", + "13_1026623_1229604@13", + "13_7462643_53448263@13" ] } } @@ -63419,16 +74161,20 @@ { "密码流": { "data": { - "uuid": "java-5-1096", + "uuid": "java-5-1125", "seg": [ [ [ "密码", - "流" + "流", + "密码流" ] ] ], - "level": "2", + "level": { + "min": 0.49771205357142856, + "max": 0.4977399553571429 + }, "related_data": {} } } @@ -63436,24 +74182,28 @@ { "公共密钥密码": { "data": { - "uuid": "java-5-1097", + "uuid": "java-5-1126", "seg": [ [ [ "公共", "密钥", - "密码" + "密码", + "密钥密码" ] ] ], - "level": "2", + "level": { + "min": 0.4977399553571429, + "max": 0.49776785714285715 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1051", + "uuid": "java-4-1062", "seg": [ [ [ @@ -63461,18 +74211,21 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49765625, + "max": 0.49776785714285715 + }, "related_data": { "qa": { "data_id": [ - "13_238508_220434", - "13_746759_796812", - "13_247105_240240", - "13_654915_465095", - "13_246744_239182", - "13_769575_830589", - "13_7428781_53395082", - "13_1017685_1208979" + "13_238508_220434@13", + "13_746759_796812@13", + "13_247105_240240@13", + "13_654915_465095@13", + "13_246744_239182@13", + "13_769575_830589@13", + "13_7428781_53395082@13", + "13_1017685_1208979@13" ] } } @@ -63481,13 +74234,16 @@ } ], "data": { - "uuid": "java-3-516", + "uuid": "java-3-509", "seg": [ [ [] ] ], - "level": "1", + "level": { + "min": 0.49720982142857145, + "max": 0.49776785714285715 + }, "related_data": {} } } @@ -63501,7 +74257,7 @@ { "一个简单表格": { "data": { - "uuid": "java-5-1098", + "uuid": "java-5-1127", "seg": [ [ [ @@ -63509,20 +74265,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49776785714285715, + "max": 0.4977957589285714 + }, "related_data": { "qa": { "data_id": [ - "13_207740_142481", - "13_236982_216498", - "13_564805_439648", - "13_677597_519948", - "13_381266_420611", - "13_687474_551077", - "13_378433_409631", - "13_4645035_29327082", - "13_755594_810995", - "13_682485_537087" + "13_207740_142481@13", + "13_236982_216498@13", + "13_564805_439648@13", + "13_677597_519948@13", + "13_381266_420611@13", + "13_687474_551077@13", + "13_378433_409631@13", + "13_4645035_29327082@13", + "13_755594_810995@13", + "13_682485_537087@13" ] } } @@ -63532,16 +74291,20 @@ { "表格模型": { "data": { - "uuid": "java-5-1099", + "uuid": "java-5-1128", "seg": [ [ [ "表格", - "模型" + "模型", + "表格模型" ] ] ], - "level": "2", + "level": { + "min": 0.4977957589285714, + "max": 0.49782366071428574 + }, "related_data": {} } } @@ -63549,7 +74312,7 @@ { "对行和列的操作": { "data": { - "uuid": "java-5-1100", + "uuid": "java-5-1129", "seg": [ [ [ @@ -63561,11 +74324,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49782366071428574, + "max": 0.4978515625 + }, "related_data": { "qa": { "data_id": [ - "13_345538_349921" + "13_345538_349921@13" ] } } @@ -63575,7 +74341,7 @@ { "单元格的绘制和编辑": { "data": { - "uuid": "java-5-1101", + "uuid": "java-5-1130", "seg": [ [ [ @@ -63587,12 +74353,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4978515625, + "max": 0.4978794642857143 + }, "related_data": { "qa": { "data_id": [ - "13_686274_547666", - "13_238316_220096" + "13_686274_547666@13" ] } } @@ -63601,7 +74369,7 @@ } ], "data": { - "uuid": "java-4-1052", + "uuid": "java-4-1063", "seg": [ [ [ @@ -63609,7 +74377,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49776785714285715, + "max": 0.4978794642857143 + }, "related_data": {} } } @@ -63620,7 +74391,7 @@ { "简单的树": { "data": { - "uuid": "java-5-1102", + "uuid": "java-5-1131", "seg": [ [ [ @@ -63628,12 +74399,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4978794642857143, + "max": 0.4979017857142857 + }, "related_data": { "qa": { "data_id": [ - "13_248563_243474", - "13_7418448_53374370" + "13_248563_243474@13", + "13_7418448_53374370@13" ] } } @@ -63643,16 +74417,20 @@ { "节点枚举": { "data": { - "uuid": "java-5-1103", + "uuid": "java-5-1132", "seg": [ [ [ "节点", - "枚举" + "枚举", + "节点枚举" ] ] ], - "level": "2", + "level": { + "min": 0.4979017857142857, + "max": 0.4979241071428571 + }, "related_data": {} } } @@ -63660,31 +74438,28 @@ { "绘制节点": { "data": { - "uuid": "java-5-1104", + "uuid": "java-5-1133", "seg": [ [ [ "绘制", - "节点" + "节点", + "绘制节点" ] ] ], - "level": "2", - "related_data": { - "qa": { - "data_id": [ - "13_757011_812264", - "13_5612737_34452463" - ] - } - } + "level": { + "min": 0.4979241071428571, + "max": 0.49794642857142857 + }, + "related_data": {} } } }, { "监听树事件": { "data": { - "uuid": "java-5-1105", + "uuid": "java-5-1134", "seg": [ [ [ @@ -63694,22 +74469,18 @@ ] ] ], - "level": "2", - "related_data": { - "qa": { - "data_id": [ - "13_386335_424714", - "13_7407267_53357140" - ] - } - } + "level": { + "min": 0.49794642857142857, + "max": 0.49796874999999996 + }, + "related_data": {} } } }, { "定制树模型": { "data": { - "uuid": "java-5-1106", + "uuid": "java-5-1135", "seg": [ [ [ @@ -63719,14 +74490,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49796874999999996, + "max": 0.4979910714285714 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1053", + "uuid": "java-4-1064", "seg": [ [ [ @@ -63734,7 +74508,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4978794642857143, + "max": 0.4979910714285714 + }, "related_data": {} } } @@ -63745,7 +74522,7 @@ { "绘图操作流程": { "data": { - "uuid": "java-5-1107", + "uuid": "java-5-1136", "seg": [ [ [ @@ -63755,7 +74532,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4979910714285714, + "max": 0.49800502232142857 + }, "related_data": {} } } @@ -63763,7 +74543,7 @@ { "形状": { "data": { - "uuid": "java-5-1108", + "uuid": "java-5-1137", "seg": [ [ [ @@ -63771,7 +74551,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49800502232142857, + "max": 0.4980189732142857 + }, "related_data": {} } } @@ -63779,7 +74562,7 @@ { "区域": { "data": { - "uuid": "java-5-1109", + "uuid": "java-5-1138", "seg": [ [ [ @@ -63787,7 +74570,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4980189732142857, + "max": 0.49803292410714284 + }, "related_data": {} } } @@ -63795,7 +74581,7 @@ { "笔画": { "data": { - "uuid": "java-5-1110", + "uuid": "java-5-1139", "seg": [ [ [ @@ -63803,7 +74589,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49803292410714284, + "max": 0.498046875 + }, "related_data": {} } } @@ -63811,7 +74600,7 @@ { "着色": { "data": { - "uuid": "java-5-1111", + "uuid": "java-5-1140", "seg": [ [ [ @@ -63819,7 +74608,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.498046875, + "max": 0.49806082589285716 + }, "related_data": {} } } @@ -63827,7 +74619,7 @@ { "坐标变换": { "data": { - "uuid": "java-5-1112", + "uuid": "java-5-1141", "seg": [ [ [ @@ -63836,11 +74628,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49806082589285716, + "max": 0.4980747767857143 + }, "related_data": { "qa": { "data_id": [ - "13_3198015_22658353" + "13_3198015_22658353@13" ] } } @@ -63850,7 +74645,7 @@ { "剪切": { "data": { - "uuid": "java-5-1113", + "uuid": "java-5-1142", "seg": [ [ [ @@ -63858,7 +74653,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4980747767857143, + "max": 0.49808872767857143 + }, "related_data": {} } } @@ -63866,7 +74664,7 @@ { "透明与组合": { "data": { - "uuid": "java-5-1114", + "uuid": "java-5-1143", "seg": [ [ [ @@ -63877,12 +74675,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49808872767857143, + "max": 0.4981026785714286 + }, "related_data": { "qa": { "data_id": [ - "13_384326_420594", - "13_656569_468471" + "13_384326_420594@13", + "13_656569_468471@13" ] } } @@ -63891,7 +74692,7 @@ } ], "data": { - "uuid": "java-4-1054", + "uuid": "java-4-1065", "seg": [ [ [ @@ -63900,7 +74701,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4979910714285714, + "max": 0.4981026785714286 + }, "related_data": {} } } @@ -63911,7 +74715,7 @@ { "图像的读取器和写入器": { "data": { - "uuid": "java-5-1115", + "uuid": "java-5-1144", "seg": [ [ [ @@ -63924,7 +74728,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4981026785714286, + "max": 0.4981584821428572 + }, "related_data": {} } } @@ -63932,7 +74739,7 @@ { "图像处理": { "data": { - "uuid": "java-5-1116", + "uuid": "java-5-1145", "seg": [ [ [ @@ -63940,23 +74747,30 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4981584821428572, + "max": 0.4982142857142857 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1055", + "uuid": "java-4-1066", "seg": [ [ [ "像素", - "图" + "图", + "像素图" ] ] ], - "level": "2", + "level": { + "min": 0.4981026785714286, + "max": 0.4982142857142857 + }, "related_data": {} } } @@ -63967,7 +74781,7 @@ { "图形打印": { "data": { - "uuid": "java-5-1117", + "uuid": "java-5-1146", "seg": [ [ [ @@ -63976,20 +74790,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4982142857142857, + "max": 0.49823660714285717 + }, "related_data": { "qa": { "data_id": [ - "13_350184_358668", - "13_945187_1083334", - "13_367900_394002", - "13_694230_573539", - "13_325840_318664", - "13_688899_555701", - "13_1065412_1264528", - "13_7397873_53343358", - "13_353946_365940", - "13_221820_176675" + "13_350184_358668@13", + "13_945187_1083334@13", + "13_367900_394002@13", + "13_694230_573539@13", + "13_325840_318664@13", + "13_688899_555701@13", + "13_1065412_1264528@13", + "13_7397873_53343358@13", + "13_353946_365940@13", + "13_221820_176675@13" ] } } @@ -63999,7 +74816,7 @@ { "打印多页文件": { "data": { - "uuid": "java-5-1118", + "uuid": "java-5-1147", "seg": [ [ [ @@ -64008,11 +74825,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49823660714285717, + "max": 0.49825892857142856 + }, "related_data": { "qa": { "data_id": [ - "13_772362_838976" + "13_772362_838976@13" ] } } @@ -64022,7 +74842,7 @@ { "打印服务程序": { "data": { - "uuid": "java-5-1119", + "uuid": "java-5-1148", "seg": [ [ [ @@ -64031,7 +74851,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49825892857142856, + "max": 0.49828125 + }, "related_data": {} } } @@ -64039,7 +74862,7 @@ { "流打印服务程序": { "data": { - "uuid": "java-5-1120", + "uuid": "java-5-1149", "seg": [ [ [ @@ -64049,7 +74872,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49828125, + "max": 0.4983035714285714 + }, "related_data": {} } } @@ -64057,7 +74883,7 @@ { "打印属性": { "data": { - "uuid": "java-5-1121", + "uuid": "java-5-1150", "seg": [ [ [ @@ -64066,11 +74892,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4983035714285714, + "max": 0.49832589285714285 + }, "related_data": { "qa": { "data_id": [ - "13_202446_127632" + "13_202446_127632@13" ] } } @@ -64079,7 +74908,7 @@ } ], "data": { - "uuid": "java-4-1056", + "uuid": "java-4-1067", "seg": [ [ [ @@ -64087,11 +74916,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4982142857142857, + "max": 0.49832589285714285 + }, "related_data": { "qa": { "data_id": [ - "13_7396365_53339915" + "13_7396365_53339915@13" ] } } @@ -64100,7 +74932,7 @@ } ], "data": { - "uuid": "java-3-517", + "uuid": "java-3-510", "seg": [ [ [ @@ -64109,11 +74941,15 @@ ], [ "图形化", - "编程" + "编程", + "图形化编程" ] ] ], - "level": "2", + "level": { + "min": 0.49776785714285715, + "max": 0.49832589285714285 + }, "related_data": {} } } @@ -64124,7 +74960,7 @@ { "Maven介绍": { "data": { - "uuid": "java-4-1057", + "uuid": "java-4-1068", "seg": [ [ [ @@ -64133,7 +74969,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49832589285714285, + "max": 0.49840561224489793 + }, "related_data": {} } } @@ -64141,7 +74980,7 @@ { "依赖管理": { "data": { - "uuid": "java-4-1058", + "uuid": "java-4-1069", "seg": [ [ [ @@ -64150,7 +74989,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49840561224489793, + "max": 0.4984853316326531 + }, "related_data": {} } } @@ -64158,7 +75000,7 @@ { "构建流程": { "data": { - "uuid": "java-4-1059", + "uuid": "java-4-1070", "seg": [ [ [ @@ -64167,7 +75009,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4984853316326531, + "max": 0.49856505102040816 + }, "related_data": {} } } @@ -64175,7 +75020,7 @@ { "使用插件": { "data": { - "uuid": "java-4-1060", + "uuid": "java-4-1071", "seg": [ [ [ @@ -64183,7 +75028,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49856505102040816, + "max": 0.49864477040816324 + }, "related_data": {} } } @@ -64191,7 +75039,7 @@ { "模块管理": { "data": { - "uuid": "java-4-1061", + "uuid": "java-4-1072", "seg": [ [ [ @@ -64200,7 +75048,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49864477040816324, + "max": 0.4987244897959183 + }, "related_data": {} } } @@ -64208,7 +75059,7 @@ { "使用mvnw": { "data": { - "uuid": "java-4-1062", + "uuid": "java-4-1073", "seg": [ [ [ @@ -64216,7 +75067,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4987244897959183, + "max": 0.49880420918367346 + }, "related_data": {} } } @@ -64224,7 +75078,7 @@ { "发布Artifact": { "data": { - "uuid": "java-4-1063", + "uuid": "java-4-1074", "seg": [ [ [ @@ -64235,14 +75089,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49880420918367346, + "max": 0.49888392857142855 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-518", + "uuid": "java-3-511", "seg": [ [ [ @@ -64251,7 +75108,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49832589285714285, + "max": 0.49888392857142855 + }, "related_data": {} } } @@ -64262,32 +75122,30 @@ { "网络编程基础": { "data": { - "uuid": "java-4-1064", + "uuid": "java-4-1075", "seg": [ [ [ "网络", "编程", - "基础" + "基础", + "网络编程", + "编程基础" ] ] ], - "level": "2", - "related_data": { - "qa": { - "data_id": [ - "13_161640_31721", - "13_7447395_53427274" - ] - } - } + "level": { + "min": 0.49888392857142855, + "max": 0.49896364795918363 + }, + "related_data": {} } } }, { "TCP编程": { "data": { - "uuid": "java-4-1065", + "uuid": "java-4-1076", "seg": [ [ [ @@ -64296,7 +75154,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49896364795918363, + "max": 0.49904336734693877 + }, "related_data": {} } } @@ -64304,7 +75165,7 @@ { "UDP编程": { "data": { - "uuid": "java-4-1066", + "uuid": "java-4-1077", "seg": [ [ [ @@ -64313,7 +75174,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49904336734693877, + "max": 0.49912308673469385 + }, "related_data": {} } } @@ -64321,7 +75185,7 @@ { "发送Email": { "data": { - "uuid": "java-4-1067", + "uuid": "java-4-1078", "seg": [ [ [ @@ -64330,12 +75194,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49912308673469385, + "max": 0.499202806122449 + }, "related_data": { "qa": { "data_id": [ - "13_391481_433942", - "13_648328_452749" + "13_391481_433942@13", + "13_648328_452749@13" ] } } @@ -64345,7 +75212,7 @@ { "接收Email": { "data": { - "uuid": "java-4-1068", + "uuid": "java-4-1079", "seg": [ [ [ @@ -64354,7 +75221,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.499202806122449, + "max": 0.4992825255102041 + }, "related_data": {} } } @@ -64362,7 +75232,7 @@ { "HTTP编程": { "data": { - "uuid": "java-4-1069", + "uuid": "java-4-1080", "seg": [ [ [ @@ -64371,12 +75241,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4992825255102041, + "max": 0.4993622448979592 + }, "related_data": { "qa": { "data_id": [ - "13_7464156_53450512", - "13_7451882_53433564" + "13_7464156_53450512@13", + "13_7451882_53433564@13" ] } } @@ -64386,7 +75259,7 @@ { "RMI远程调用": { "data": { - "uuid": "java-4-1070", + "uuid": "java-4-1081", "seg": [ [ [ @@ -64396,14 +75269,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4993622448979592, + "max": 0.4994419642857143 + }, "related_data": { "qa": { "data_id": [ - "13_237766_218980", - "13_710493_668614", - "13_710496_668618", - "13_668168_488126" + "13_237766_218980@13", + "13_710493_668614@13", + "13_710496_668618@13", + "13_668168_488126@13" ] } } @@ -64412,23 +75288,21 @@ } ], "data": { - "uuid": "java-3-519", + "uuid": "java-3-512", "seg": [ [ [ "网络", - "编程" + "编程", + "网络编程" ] ] ], - "level": "2", - "related_data": { - "qa": { - "data_id": [ - "13_247308_240578" - ] - } - } + "level": { + "min": 0.49888392857142855, + "max": 0.4994419642857143 + }, + "related_data": {} } } }, @@ -64438,7 +75312,7 @@ { "JDBC简介": { "data": { - "uuid": "java-4-1071", + "uuid": "java-4-1082", "seg": [ [ [ @@ -64447,7 +75321,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4994419642857143, + "max": 0.49953497023809523 + }, "related_data": {} } } @@ -64455,7 +75332,7 @@ { "JDBC查询": { "data": { - "uuid": "java-4-1072", + "uuid": "java-4-1083", "seg": [ [ [ @@ -64464,7 +75341,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49953497023809523, + "max": 0.4996279761904762 + }, "related_data": {} } } @@ -64472,7 +75352,7 @@ { "JDBC更新": { "data": { - "uuid": "java-4-1073", + "uuid": "java-4-1084", "seg": [ [ [ @@ -64481,7 +75361,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4996279761904762, + "max": 0.49972098214285715 + }, "related_data": {} } } @@ -64489,7 +75372,7 @@ { "JDBC事务": { "data": { - "uuid": "java-4-1074", + "uuid": "java-4-1085", "seg": [ [ [ @@ -64498,7 +75381,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49972098214285715, + "max": 0.4998139880952381 + }, "related_data": {} } } @@ -64506,7 +75392,7 @@ { "JDBC Batch": { "data": { - "uuid": "java-4-1075", + "uuid": "java-4-1086", "seg": [ [ [ @@ -64515,7 +75401,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4998139880952381, + "max": 0.49990699404761907 + }, "related_data": {} } } @@ -64523,7 +75412,7 @@ { "JDBC连接池": { "data": { - "uuid": "java-4-1076", + "uuid": "java-4-1087", "seg": [ [ [ @@ -64532,13 +75421,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49990699404761907, + "max": 0.5 + }, "related_data": { "qa": { "data_id": [ - "13_192014_94432", - "13_227322_191371", - "13_7398126_53344461" + "13_192014_94432@13", + "13_227322_191371@13", + "13_7398126_53344461@13" ] } } @@ -64547,7 +75439,7 @@ } ], "data": { - "uuid": "java-3-520", + "uuid": "java-3-513", "seg": [ [ [ @@ -64556,7 +75448,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4994419642857143, + "max": 0.5 + }, "related_data": {} } } @@ -64569,7 +75464,10 @@ [] ] ], - "level": "1", + "level": { + "min": 0.484375, + "max": 0.5 + }, "related_data": {} } } @@ -64585,6 +75483,10 @@ ] ] ], + "level": { + "min": 0.25, + "max": 0.5 + }, "related_data": {} } } @@ -64598,7 +75500,7 @@ { "Swing的起源": { "data": { - "uuid": "java-3-521", + "uuid": "java-3-514", "seg": [ [ [ @@ -64607,7 +75509,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5, + "max": 0.5027777777777778 + }, "related_data": {} } } @@ -64615,7 +75520,7 @@ { "Swing以AWT为基础": { "data": { - "uuid": "java-3-522", + "uuid": "java-3-515", "seg": [ [ [ @@ -64625,7 +75530,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5027777777777778, + "max": 0.5055555555555555 + }, "related_data": {} } } @@ -64636,7 +75544,7 @@ { "Swing组件是轻量级的": { "data": { - "uuid": "java-4-1077", + "uuid": "java-4-1088", "seg": [ [ [ @@ -64646,7 +75554,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5055555555555555, + "max": 0.5069444444444444 + }, "related_data": {} } } @@ -64654,7 +75565,7 @@ { "Swing支持可插入外观": { "data": { - "uuid": "java-4-1078", + "uuid": "java-4-1089", "seg": [ [ [ @@ -64665,14 +75576,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5069444444444444, + "max": 0.5083333333333333 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-523", + "uuid": "java-3-516", "seg": [ [ [ @@ -64682,7 +75596,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5055555555555555, + "max": 0.5083333333333333 + }, "related_data": {} } } @@ -64690,7 +75607,7 @@ { "MVC连接": { "data": { - "uuid": "java-3-524", + "uuid": "java-3-517", "seg": [ [ [ @@ -64699,7 +75616,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5083333333333333, + "max": 0.5111111111111111 + }, "related_data": {} } } @@ -64710,7 +75630,7 @@ { "组件": { "data": { - "uuid": "java-4-1079", + "uuid": "java-4-1090", "seg": [ [ [ @@ -64718,7 +75638,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5111111111111111, + "max": 0.512037037037037 + }, "related_data": {} } } @@ -64726,7 +75649,7 @@ { "容器": { "data": { - "uuid": "java-4-1080", + "uuid": "java-4-1091", "seg": [ [ [ @@ -64734,14 +75657,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.512037037037037, + "max": 0.512962962962963 + }, "related_data": { "qa": { "data_id": [ - "13_751322_804890", - "13_349097_356884", - "13_7459658_53444633", - "13_7464172_53450531" + "13_751322_804890@13", + "13_349097_356884@13", + "13_7459658_53444633@13", + "13_7464172_53450531@13" ] } } @@ -64751,24 +75677,29 @@ { "顶级容器窗格": { "data": { - "uuid": "java-4-1081", + "uuid": "java-4-1092", "seg": [ [ [ "顶级", "容器", - "窗格" + "窗格", + "顶级容器", + "容器窗格" ] ] ], - "level": "1", + "level": { + "min": 0.512962962962963, + "max": 0.5138888888888888 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-525", + "uuid": "java-3-518", "seg": [ [ [ @@ -64779,7 +75710,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5111111111111111, + "max": 0.5138888888888888 + }, "related_data": {} } } @@ -64787,7 +75721,7 @@ { "Swing包": { "data": { - "uuid": "java-3-526", + "uuid": "java-3-519", "seg": [ [ [ @@ -64796,7 +75730,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5138888888888888, + "max": 0.5166666666666667 + }, "related_data": {} } } @@ -64804,7 +75741,7 @@ { "一个简单的Swing应用程序": { "data": { - "uuid": "java-3-527", + "uuid": "java-3-520", "seg": [ [ [ @@ -64813,7 +75750,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5166666666666667, + "max": 0.5194444444444445 + }, "related_data": {} } } @@ -64821,7 +75761,7 @@ { "事件处理": { "data": { - "uuid": "java-3-528", + "uuid": "java-3-521", "seg": [ [ [ @@ -64829,7 +75769,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5194444444444445, + "max": 0.5222222222222223 + }, "related_data": {} } } @@ -64837,7 +75780,7 @@ { "创建Swing applet": { "data": { - "uuid": "java-3-529", + "uuid": "java-3-522", "seg": [ [ [ @@ -64847,7 +75790,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5222222222222223, + "max": 0.525 + }, "related_data": {} } } @@ -64858,7 +75804,7 @@ { "绘图的基础知识": { "data": { - "uuid": "java-4-1082", + "uuid": "java-4-1093", "seg": [ [ [ @@ -64867,7 +75813,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.525, + "max": 0.5259259259259259 + }, "related_data": {} } } @@ -64875,17 +75824,21 @@ { "计算可绘制区域": { "data": { - "uuid": "java-4-1083", + "uuid": "java-4-1094", "seg": [ [ [ "计算", "绘制", - "区域" + "区域", + "绘制区域" ] ] ], - "level": "2", + "level": { + "min": 0.5259259259259259, + "max": 0.5268518518518519 + }, "related_data": {} } } @@ -64893,32 +75846,40 @@ { "一个绘图示例": { "data": { - "uuid": "java-4-1084", + "uuid": "java-4-1095", "seg": [ [ [ "绘图", - "示例" + "示例", + "绘图示例" ] ] ], - "level": "2", + "level": { + "min": 0.5268518518518519, + "max": 0.5277777777777778 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-530", + "uuid": "java-3-523", "seg": [ [ [ "swing", - "绘图" + "绘图", + "中绘图" ] ] ], - "level": "2", + "level": { + "min": 0.525, + "max": 0.5277777777777778 + }, "related_data": {} } } @@ -64934,7 +75895,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5, + "max": 0.5277777777777778 + }, "related_data": {} } } @@ -64945,7 +75909,7 @@ { "JLabel与ImageIcon": { "data": { - "uuid": "java-3-531", + "uuid": "java-3-524", "seg": [ [ [ @@ -64956,12 +75920,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5277777777777778, + "max": 0.5308641975308642 + }, "related_data": { "qa": { "data_id": [ - "13_387771_427084", - "13_7445437_53424018" + "13_387771_427084@13", + "13_7445437_53424018@13" ] } } @@ -64971,7 +75938,7 @@ { "JTextField": { "data": { - "uuid": "java-3-532", + "uuid": "java-3-525", "seg": [ [ [ @@ -64979,7 +75946,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5308641975308642, + "max": 0.5339506172839507 + }, "related_data": {} } } @@ -64990,7 +75960,7 @@ { "JButton": { "data": { - "uuid": "java-4-1085", + "uuid": "java-4-1096", "seg": [ [ [ @@ -64998,13 +75968,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5339506172839507, + "max": 0.5347222222222223 + }, "related_data": { "qa": { "data_id": [ - "13_225348_186715", - "13_1419261_4617231", - "13_7465176_53451961" + "13_225348_186715@13", + "13_1419261_4617231@13", + "13_7465176_53451961@13" ] } } @@ -65014,7 +75987,7 @@ { "JToggleButton": { "data": { - "uuid": "java-4-1086", + "uuid": "java-4-1097", "seg": [ [ [ @@ -65022,7 +75995,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5347222222222223, + "max": 0.5354938271604939 + }, "related_data": {} } } @@ -65030,7 +76006,7 @@ { "复选框": { "data": { - "uuid": "java-4-1087", + "uuid": "java-4-1098", "seg": [ [ [ @@ -65038,7 +76014,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5354938271604939, + "max": 0.5362654320987654 + }, "related_data": {} } } @@ -65046,7 +76025,7 @@ { "单选按钮": { "data": { - "uuid": "java-4-1088", + "uuid": "java-4-1099", "seg": [ [ [ @@ -65055,20 +76034,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5362654320987654, + "max": 0.5370370370370371 + }, "related_data": { "qa": { "data_id": [ - "13_23043_6048", - "13_229674_197964", - "13_145_305", - "13_384123_420254", - "13_1093307_1302612", - "13_349325_356878", - "13_7396570_53340793", - "13_26679_7214", - "13_901329_1036999", - "13_196275_107973" + "13_23043_6048@13", + "13_229674_197964@13", + "13_145_305@13", + "13_384123_420254@13", + "13_1093307_1302612@13", + "13_349325_356878@13", + "13_7396570_53340793@13", + "13_26679_7214@13", + "13_901329_1036999@13", + "13_196275_107973@13" ] } } @@ -65077,7 +76059,7 @@ } ], "data": { - "uuid": "java-3-533", + "uuid": "java-3-526", "seg": [ [ [ @@ -65086,7 +76068,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5339506172839507, + "max": 0.5370370370370371 + }, "related_data": {} } } @@ -65094,7 +76079,7 @@ { "JTabbedPane": { "data": { - "uuid": "java-3-534", + "uuid": "java-3-527", "seg": [ [ [ @@ -65102,7 +76087,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5370370370370371, + "max": 0.5401234567901235 + }, "related_data": {} } } @@ -65110,7 +76098,7 @@ { "JScrollPane": { "data": { - "uuid": "java-3-535", + "uuid": "java-3-528", "seg": [ [ [ @@ -65118,7 +76106,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5401234567901235, + "max": 0.5432098765432098 + }, "related_data": {} } } @@ -65126,7 +76117,7 @@ { "JList": { "data": { - "uuid": "java-3-536", + "uuid": "java-3-529", "seg": [ [ [ @@ -65134,7 +76125,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5432098765432098, + "max": 0.5462962962962963 + }, "related_data": {} } } @@ -65142,7 +76136,7 @@ { "JComboBox": { "data": { - "uuid": "java-3-537", + "uuid": "java-3-530", "seg": [ [ [ @@ -65150,11 +76144,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5462962962962963, + "max": 0.5493827160493827 + }, "related_data": { "qa": { "data_id": [ - "13_193514_98945" + "13_193514_98945@13" ] } } @@ -65164,7 +76161,7 @@ { "树": { "data": { - "uuid": "java-3-538", + "uuid": "java-3-531", "seg": [ [ [ @@ -65172,7 +76169,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5493827160493827, + "max": 0.5524691358024691 + }, "related_data": {} } } @@ -65180,7 +76180,7 @@ { "JTable": { "data": { - "uuid": "java-3-539", + "uuid": "java-3-532", "seg": [ [ [ @@ -65188,16 +76188,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5524691358024691, + "max": 0.5555555555555556 + }, "related_data": { "qa": { "data_id": [ - "13_189198_87602", - "13_193220_98081", - "13_376907_407262", - "13_746349_795687", - "13_221091_174662", - "13_367177_392498" + "13_189198_87602@13", + "13_193220_98081@13", + "13_376907_407262@13", + "13_746349_795687@13", + "13_221091_174662@13", + "13_367177_392498@13" ] } } @@ -65215,7 +76218,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5277777777777778, + "max": 0.5555555555555556 + }, "related_data": {} } } @@ -65226,7 +76232,7 @@ { "菜单的基础知识": { "data": { - "uuid": "java-3-540", + "uuid": "java-3-533", "seg": [ [ [ @@ -65235,7 +76241,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.5555555555555556, + "max": 0.5580808080808081 + }, "related_data": {} } } @@ -65246,7 +76255,7 @@ { "JMenuBar": { "data": { - "uuid": "java-4-1089", + "uuid": "java-4-1100", "seg": [ [ [ @@ -65254,7 +76263,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5580808080808081, + "max": 0.5589225589225589 + }, "related_data": {} } } @@ -65262,7 +76274,7 @@ { "JMenu": { "data": { - "uuid": "java-4-1090", + "uuid": "java-4-1101", "seg": [ [ [ @@ -65270,7 +76282,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5589225589225589, + "max": 0.5597643097643098 + }, "related_data": {} } } @@ -65278,7 +76293,7 @@ { "JMenuItem": { "data": { - "uuid": "java-4-1091", + "uuid": "java-4-1102", "seg": [ [ [ @@ -65286,14 +76301,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5597643097643098, + "max": 0.5606060606060607 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-541", + "uuid": "java-3-534", "seg": [ [ [ @@ -65308,7 +76326,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5580808080808081, + "max": 0.5606060606060607 + }, "related_data": {} } } @@ -65316,7 +76337,7 @@ { "创建主菜单": { "data": { - "uuid": "java-3-542", + "uuid": "java-3-535", "seg": [ [ [ @@ -65326,7 +76347,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.5606060606060607, + "max": 0.5631313131313131 + }, "related_data": {} } } @@ -65334,7 +76358,7 @@ { "向菜单项添加助记符和加速键": { "data": { - "uuid": "java-3-543", + "uuid": "java-3-536", "seg": [ [ [ @@ -65348,7 +76372,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5631313131313131, + "max": 0.5656565656565656 + }, "related_data": {} } } @@ -65356,7 +76383,7 @@ { "向菜单项添加图片和工具提示": { "data": { - "uuid": "java-3-544", + "uuid": "java-3-537", "seg": [ [ [ @@ -65370,7 +76397,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5656565656565656, + "max": 0.5681818181818182 + }, "related_data": {} } } @@ -65378,7 +76408,7 @@ { "使用JRadioButtonMenuItem和JCheckBoxMenuItem": { "data": { - "uuid": "java-3-545", + "uuid": "java-3-538", "seg": [ [ [ @@ -65389,7 +76419,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5681818181818182, + "max": 0.5707070707070707 + }, "related_data": {} } } @@ -65397,7 +76430,7 @@ { "创建弹出菜单": { "data": { - "uuid": "java-3-546", + "uuid": "java-3-539", "seg": [ [ [ @@ -65408,7 +76441,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.5707070707070707, + "max": 0.5732323232323233 + }, "related_data": {} } } @@ -65416,7 +76452,7 @@ { "创建工具栏": { "data": { - "uuid": "java-3-547", + "uuid": "java-3-540", "seg": [ [ [ @@ -65425,7 +76461,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5732323232323233, + "max": 0.5757575757575758 + }, "related_data": {} } } @@ -65433,7 +76472,7 @@ { "使用动作": { "data": { - "uuid": "java-3-548", + "uuid": "java-3-541", "seg": [ [ [ @@ -65441,7 +76480,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5757575757575758, + "max": 0.5782828282828283 + }, "related_data": {} } } @@ -65449,7 +76491,7 @@ { "完整演示MenuDemo程序": { "data": { - "uuid": "java-3-549", + "uuid": "java-3-542", "seg": [ [ [ @@ -65459,7 +76501,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5782828282828283, + "max": 0.5808080808080809 + }, "related_data": {} } } @@ -65467,7 +76512,7 @@ { "继续探究Swing": { "data": { - "uuid": "java-3-550", + "uuid": "java-3-543", "seg": [ [ [ @@ -65476,7 +76521,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5808080808080809, + "max": 0.5833333333333334 + }, "related_data": {} } } @@ -65493,7 +76541,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5555555555555556, + "max": 0.5833333333333334 + }, "related_data": {} } } @@ -65507,7 +76558,7 @@ { "JavaFX包": { "data": { - "uuid": "java-4-1092", + "uuid": "java-4-1103", "seg": [ [ [ @@ -65516,20 +76567,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5833333333333334, + "max": 0.5839947089947091 + }, "related_data": { "qa": { "data_id": [ - "13_7440565_53415879", - "13_664329_481886", - "13_337942_335426", - "13_695712_578631", - "13_228722_195365", - "13_7432690_53402654", - "13_7460673_53445771", - "13_1096411_1308591", - "13_754431_1000664", - "13_781113_851078" + "13_7440565_53415879@13", + "13_664329_481886@13", + "13_337942_335426@13", + "13_695712_578631@13", + "13_228722_195365@13", + "13_7432690_53402654@13", + "13_7460673_53445771@13", + "13_1096411_1308591@13", + "13_754431_1000664@13", + "13_781113_851078@13" ] } } @@ -65539,7 +76593,7 @@ { "Stage和Scene类": { "data": { - "uuid": "java-4-1093", + "uuid": "java-4-1104", "seg": [ [ [ @@ -65551,7 +76605,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5839947089947091, + "max": 0.5846560846560847 + }, "related_data": {} } } @@ -65559,7 +76616,7 @@ { "节点和场景图": { "data": { - "uuid": "java-4-1094", + "uuid": "java-4-1105", "seg": [ [ [ @@ -65567,11 +76624,15 @@ ], [ "场景", - "图" + "图", + "场景图" ] ] ], - "level": "1", + "level": { + "min": 0.5846560846560847, + "max": 0.5853174603174603 + }, "related_data": {} } } @@ -65579,7 +76640,7 @@ { "布局": { "data": { - "uuid": "java-4-1095", + "uuid": "java-4-1106", "seg": [ [ [ @@ -65587,7 +76648,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5853174603174603, + "max": 0.585978835978836 + }, "related_data": {} } } @@ -65595,7 +76659,7 @@ { "Application类和生命周期方法": { "data": { - "uuid": "java-4-1096", + "uuid": "java-4-1107", "seg": [ [ [ @@ -65604,27 +76668,23 @@ ], [ "生命周期", - "方法" + "方法", + "生命周期方法" ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_7440874_53416538", - "13_7443568_53420743", - "13_753632_808319" - ] - } - } + "level": { + "min": 0.585978835978836, + "max": 0.5866402116402116 + }, + "related_data": {} } } }, { "启动JavaFX应用程序": { "data": { - "uuid": "java-4-1097", + "uuid": "java-4-1108", "seg": [ [ [ @@ -65634,24 +76694,31 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5866402116402116, + "max": 0.5873015873015873 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-551", + "uuid": "java-3-544", "seg": [ [ [ "javafx", "基础", - "概念" + "概念", + "基础概念" ] ] ], - "level": "1", + "level": { + "min": 0.5833333333333334, + "max": 0.5873015873015873 + }, "related_data": {} } } @@ -65659,7 +76726,7 @@ { "JavaFX应用程序的骨架": { "data": { - "uuid": "java-3-552", + "uuid": "java-3-545", "seg": [ [ [ @@ -65669,7 +76736,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5873015873015873, + "max": 0.5912698412698413 + }, "related_data": {} } } @@ -65677,7 +76747,7 @@ { "编译和运行JavaFX程序": { "data": { - "uuid": "java-3-553", + "uuid": "java-3-546", "seg": [ [ [ @@ -65690,11 +76760,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5912698412698413, + "max": 0.5952380952380952 + }, "related_data": { "qa": { "data_id": [ - "13_238432_220621" + "13_238432_220621@13" ] } } @@ -65704,16 +76777,20 @@ { "应用程序线程": { "data": { - "uuid": "java-3-554", + "uuid": "java-3-547", "seg": [ [ [ "应用程序", - "线程" + "线程", + "应用程序线程" ] ] ], - "level": "2", + "level": { + "min": 0.5952380952380952, + "max": 0.5992063492063493 + }, "related_data": {} } } @@ -65721,7 +76798,7 @@ { "一个简单的JavaFX控件:Label": { "data": { - "uuid": "java-3-555", + "uuid": "java-3-548", "seg": [ [ [ @@ -65735,7 +76812,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.5992063492063493, + "max": 0.6031746031746033 + }, "related_data": {} } } @@ -65746,7 +76826,7 @@ { "事件的基础知识": { "data": { - "uuid": "java-4-1098", + "uuid": "java-4-1109", "seg": [ [ [ @@ -65755,12 +76835,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.6031746031746033, + "max": 0.6044973544973545 + }, "related_data": { "qa": { "data_id": [ - "13_388837_428973", - "13_383318_418697" + "13_388837_428973@13", + "13_383318_418697@13" ] } } @@ -65770,21 +76853,25 @@ { "按钮控件简介": { "data": { - "uuid": "java-4-1099", + "uuid": "java-4-1110", "seg": [ [ [ "按钮", "控件", - "简介" + "简介", + "按钮控件" ] ] ], - "level": "2", + "level": { + "min": 0.6044973544973545, + "max": 0.6058201058201059 + }, "related_data": { "qa": { "data_id": [ - "13_746848_797136" + "13_746848_797136@13" ] } } @@ -65794,7 +76881,7 @@ { "演示事件处理和按钮": { "data": { - "uuid": "java-4-1100", + "uuid": "java-4-1111", "seg": [ [ [ @@ -65806,14 +76893,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.6058201058201059, + "max": 0.6071428571428572 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-556", + "uuid": "java-3-549", "seg": [ [ [ @@ -65824,7 +76914,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.6031746031746033, + "max": 0.6071428571428572 + }, "related_data": {} } } @@ -65832,7 +76925,7 @@ { "直接在画布上绘制": { "data": { - "uuid": "java-3-557", + "uuid": "java-3-550", "seg": [ [ [ @@ -65841,7 +76934,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6071428571428572, + "max": 0.6111111111111112 + }, "related_data": {} } } @@ -65859,7 +76955,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5833333333333334, + "max": 0.6111111111111112 + }, "related_data": {} } } @@ -65873,7 +76972,7 @@ { "向标签添加图片": { "data": { - "uuid": "java-4-1101", + "uuid": "java-4-1112", "seg": [ [ [ @@ -65883,12 +76982,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6111111111111112, + "max": 0.6122685185185186 + }, "related_data": { "qa": { "data_id": [ - "13_280_542", - "13_71948_11854" + "13_280_542@13", + "13_71948_11854@13" ] } } @@ -65898,7 +77000,7 @@ { "在按钮中使用图片": { "data": { - "uuid": "java-4-1102", + "uuid": "java-4-1113", "seg": [ [ [ @@ -65907,20 +77009,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.6122685185185186, + "max": 0.6134259259259259 + }, "related_data": { "qa": { "data_id": [ - "13_1372_2287", - "13_1640_2655", - "13_7442886_53419883", - "13_743461_787770", - "13_656583_468419", - "13_272939_297918", - "13_5764889_39801951", - "13_663413_479705", - "13_398761_436728", - "13_743727_788596" + "13_1372_2287@13", + "13_1640_2655@13", + "13_7442886_53419883@13", + "13_743461_787770@13", + "13_656583_468419@13", + "13_272939_297918@13", + "13_5764889_39801951@13", + "13_663413_479705@13", + "13_398761_436728@13", + "13_743727_788596@13" ] } } @@ -65929,7 +77034,7 @@ } ], "data": { - "uuid": "java-3-558", + "uuid": "java-3-551", "seg": [ [ [ @@ -65940,12 +77045,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6111111111111112, + "max": 0.6134259259259259 + }, "related_data": { "qa": { "data_id": [ - "13_231399_202395", - "13_11437_5418" + "13_231399_202395@13", + "13_11437_5418@13" ] } } @@ -65955,7 +77063,7 @@ { "ToggleButton": { "data": { - "uuid": "java-3-559", + "uuid": "java-3-552", "seg": [ [ [ @@ -65963,7 +77071,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6134259259259259, + "max": 0.6157407407407408 + }, "related_data": {} } } @@ -65974,7 +77085,7 @@ { "处理开关组中的变化事件": { "data": { - "uuid": "java-4-1103", + "uuid": "java-4-1114", "seg": [ [ [ @@ -65985,7 +77096,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.6157407407407408, + "max": 0.6168981481481481 + }, "related_data": {} } } @@ -65993,7 +77107,7 @@ { "处理单选按钮的另一种方式": { "data": { - "uuid": "java-4-1104", + "uuid": "java-4-1115", "seg": [ [ [ @@ -66003,14 +77117,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6168981481481481, + "max": 0.6180555555555556 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-560", + "uuid": "java-3-553", "seg": [ [ [ @@ -66018,7 +77135,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6157407407407408, + "max": 0.6180555555555556 + }, "related_data": {} } } @@ -66026,7 +77146,7 @@ { "CheckBox": { "data": { - "uuid": "java-3-561", + "uuid": "java-3-554", "seg": [ [ [ @@ -66034,12 +77154,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6180555555555556, + "max": 0.6203703703703703 + }, "related_data": { "qa": { "data_id": [ - "13_375401_404796", - "13_745304_792899" + "13_375401_404796@13", + "13_745304_792899@13" ] } } @@ -66052,7 +77175,7 @@ { "ListView的滚动条": { "data": { - "uuid": "java-4-1105", + "uuid": "java-4-1116", "seg": [ [ [ @@ -66061,15 +77184,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6203703703703703, + "max": 0.6215277777777778 + }, "related_data": { "qa": { "data_id": [ - "13_1556_2520", - "13_186566_79529", - "13_118_250", - "13_204386_133178", - "13_195620_105669" + "13_1556_2520@13", + "13_186566_79529@13", + "13_118_250@13", + "13_204386_133178@13", + "13_195620_105669@13" ] } } @@ -66079,7 +77205,7 @@ { "启用多项选择": { "data": { - "uuid": "java-4-1106", + "uuid": "java-4-1117", "seg": [ [ [ @@ -66088,14 +77214,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6215277777777778, + "max": 0.6226851851851852 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-562", + "uuid": "java-3-555", "seg": [ [ [ @@ -66103,7 +77232,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6203703703703703, + "max": 0.6226851851851852 + }, "related_data": {} } } @@ -66111,7 +77243,7 @@ { "ComboBox": { "data": { - "uuid": "java-3-563", + "uuid": "java-3-556", "seg": [ [ [ @@ -66119,12 +77251,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6226851851851852, + "max": 0.625 + }, "related_data": { "qa": { "data_id": [ - "13_193298_98310", - "13_1022654_1216738" + "13_193298_98310@13", + "13_1022654_1216738@13" ] } } @@ -66134,7 +77269,7 @@ { "TextField": { "data": { - "uuid": "java-3-564", + "uuid": "java-3-557", "seg": [ [ [ @@ -66142,7 +77277,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.625, + "max": 0.6273148148148148 + }, "related_data": {} } } @@ -66150,7 +77288,7 @@ { "ScrollPane": { "data": { - "uuid": "java-3-565", + "uuid": "java-3-558", "seg": [ [ [ @@ -66158,7 +77296,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6273148148148148, + "max": 0.6296296296296297 + }, "related_data": {} } } @@ -66166,7 +77307,7 @@ { "TreeView": { "data": { - "uuid": "java-3-566", + "uuid": "java-3-559", "seg": [ [ [ @@ -66174,7 +77315,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6296296296296297, + "max": 0.6319444444444444 + }, "related_data": {} } } @@ -66185,7 +77329,7 @@ { "效果": { "data": { - "uuid": "java-4-1107", + "uuid": "java-4-1118", "seg": [ [ [ @@ -66193,12 +77337,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6319444444444444, + "max": 0.632716049382716 + }, "related_data": { "qa": { "data_id": [ - "13_7454364_53437121", - "13_202666_127986" + "13_7454364_53437121@13", + "13_202666_127986@13" ] } } @@ -66208,7 +77355,7 @@ { "变换": { "data": { - "uuid": "java-4-1108", + "uuid": "java-4-1119", "seg": [ [ [ @@ -66216,7 +77363,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.632716049382716, + "max": 0.6334876543209876 + }, "related_data": {} } } @@ -66224,7 +77374,7 @@ { "演示效果和变换": { "data": { - "uuid": "java-4-1109", + "uuid": "java-4-1120", "seg": [ [ [ @@ -66236,14 +77386,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6334876543209876, + "max": 0.6342592592592592 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-567", + "uuid": "java-3-560", "seg": [ [ [ @@ -66255,7 +77408,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6319444444444444, + "max": 0.6342592592592592 + }, "related_data": {} } } @@ -66263,7 +77419,7 @@ { "添加工具提示": { "data": { - "uuid": "java-3-568", + "uuid": "java-3-561", "seg": [ [ [ @@ -66273,7 +77429,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6342592592592592, + "max": 0.6365740740740741 + }, "related_data": {} } } @@ -66281,7 +77440,7 @@ { "禁用控件": { "data": { - "uuid": "java-3-569", + "uuid": "java-3-562", "seg": [ [ [ @@ -66290,7 +77449,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6365740740740741, + "max": 0.6388888888888888 + }, "related_data": {} } } @@ -66307,7 +77469,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6111111111111112, + "max": 0.6388888888888888 + }, "related_data": {} } } @@ -66318,7 +77483,7 @@ { "菜单的基础知识": { "data": { - "uuid": "java-3-570", + "uuid": "java-3-563", "seg": [ [ [ @@ -66327,7 +77492,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.6388888888888888, + "max": 0.6416666666666666 + }, "related_data": {} } } @@ -66338,7 +77506,7 @@ { "MenuBar": { "data": { - "uuid": "java-4-1110", + "uuid": "java-4-1121", "seg": [ [ [ @@ -66346,7 +77514,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6416666666666666, + "max": 0.6425925925925925 + }, "related_data": {} } } @@ -66354,7 +77525,7 @@ { "Menu": { "data": { - "uuid": "java-4-1111", + "uuid": "java-4-1122", "seg": [ [ [ @@ -66362,12 +77533,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6425925925925925, + "max": 0.6435185185185185 + }, "related_data": { "qa": { "data_id": [ - "13_665939_483787", - "13_755302_810759" + "13_665939_483787@13", + "13_755302_810759@13" ] } } @@ -66377,7 +77551,7 @@ { "MenuItem": { "data": { - "uuid": "java-4-1112", + "uuid": "java-4-1123", "seg": [ [ [ @@ -66385,14 +77559,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6435185185185185, + "max": 0.6444444444444444 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-571", + "uuid": "java-3-564", "seg": [ [ [ @@ -66407,7 +77584,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6416666666666666, + "max": 0.6444444444444444 + }, "related_data": {} } } @@ -66415,7 +77595,7 @@ { "创建主菜单": { "data": { - "uuid": "java-3-572", + "uuid": "java-3-565", "seg": [ [ [ @@ -66425,7 +77605,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.6444444444444444, + "max": 0.6472222222222221 + }, "related_data": {} } } @@ -66433,7 +77616,7 @@ { "向菜单项添加助记符和加速键": { "data": { - "uuid": "java-3-573", + "uuid": "java-3-566", "seg": [ [ [ @@ -66447,7 +77630,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6472222222222221, + "max": 0.6499999999999999 + }, "related_data": {} } } @@ -66455,7 +77641,7 @@ { "向菜单项添加图片": { "data": { - "uuid": "java-3-574", + "uuid": "java-3-567", "seg": [ [ [ @@ -66465,7 +77651,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6499999999999999, + "max": 0.6527777777777777 + }, "related_data": {} } } @@ -66473,7 +77662,7 @@ { "使用RadioMenuItem和CheckMenuItem": { "data": { - "uuid": "java-3-575", + "uuid": "java-3-568", "seg": [ [ [ @@ -66484,7 +77673,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6527777777777777, + "max": 0.6555555555555556 + }, "related_data": {} } } @@ -66492,7 +77684,7 @@ { "创建上下文菜单": { "data": { - "uuid": "java-3-576", + "uuid": "java-3-569", "seg": [ [ [ @@ -66502,7 +77694,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.6555555555555556, + "max": 0.6583333333333333 + }, "related_data": {} } } @@ -66510,7 +77705,7 @@ { "创建工具栏": { "data": { - "uuid": "java-3-577", + "uuid": "java-3-570", "seg": [ [ [ @@ -66519,7 +77714,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6583333333333333, + "max": 0.6611111111111111 + }, "related_data": {} } } @@ -66527,7 +77725,7 @@ { "完整的MenuDemo程序": { "data": { - "uuid": "java-3-578", + "uuid": "java-3-571", "seg": [ [ [ @@ -66536,7 +77734,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6611111111111111, + "max": 0.6638888888888889 + }, "related_data": {} } } @@ -66544,7 +77745,7 @@ { "继续探究JavaFX": { "data": { - "uuid": "java-3-579", + "uuid": "java-3-572", "seg": [ [ [ @@ -66553,7 +77754,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6638888888888889, + "max": 0.6666666666666666 + }, "related_data": {} } } @@ -66570,7 +77774,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6388888888888888, + "max": 0.6666666666666666 + }, "related_data": {} } } @@ -66581,7 +77788,7 @@ { "Java Bean是什么": { "data": { - "uuid": "java-3-580", + "uuid": "java-3-573", "seg": [ [ [ @@ -66590,7 +77797,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6666666666666666, + "max": 0.6701388888888888 + }, "related_data": {} } } @@ -66598,7 +77808,7 @@ { "Java Bean的优势": { "data": { - "uuid": "java-3-581", + "uuid": "java-3-574", "seg": [ [ [ @@ -66608,7 +77818,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6701388888888888, + "max": 0.673611111111111 + }, "related_data": {} } } @@ -66619,7 +77832,7 @@ { "属性的设计模式": { "data": { - "uuid": "java-4-1113", + "uuid": "java-4-1124", "seg": [ [ [ @@ -66628,7 +77841,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.673611111111111, + "max": 0.6744791666666666 + }, "related_data": {} } } @@ -66636,7 +77852,7 @@ { "事件的设计模式": { "data": { - "uuid": "java-4-1114", + "uuid": "java-4-1125", "seg": [ [ [ @@ -66645,15 +77861,18 @@ ] ] ], - "level": "2", + "level": { + "min": 0.6744791666666666, + "max": 0.6753472222222221 + }, "related_data": { "qa": { "data_id": [ - "13_235272_213709", - "13_389326_429760", - "13_771099_833501", - "13_352974_364097", - "13_383508_418945" + "13_235272_213709@13", + "13_389326_429760@13", + "13_771099_833501@13", + "13_352974_364097@13", + "13_383508_418945@13" ] } } @@ -66669,20 +77888,24 @@ { "工厂方法": { "data": { - "uuid": "java-6-303", + "uuid": "java-6-304", "seg": [ [ [ "工厂", - "方法" + "方法", + "工厂方法" ] ] ], - "level": "1", + "level": { + "min": 0.6753472222222221, + "max": 0.6754050925925925 + }, "related_data": { "qa": { "data_id": [ - "13_7424508_53385554" + "13_7424508_53385554@13" ] } } @@ -66692,7 +77915,7 @@ { "抽象工厂": { "data": { - "uuid": "java-6-304", + "uuid": "java-6-305", "seg": [ [ [ @@ -66701,7 +77924,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.6754050925925925, + "max": 0.6754629629629628 + }, "related_data": {} } } @@ -66709,7 +77935,7 @@ { "生成器": { "data": { - "uuid": "java-6-305", + "uuid": "java-6-306", "seg": [ [ [ @@ -66717,7 +77943,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.6754629629629628, + "max": 0.6755208333333332 + }, "related_data": {} } } @@ -66725,7 +77954,7 @@ { "原型": { "data": { - "uuid": "java-6-306", + "uuid": "java-6-307", "seg": [ [ [ @@ -66733,7 +77962,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.6755208333333332, + "max": 0.6755787037037035 + }, "related_data": {} } } @@ -66741,7 +77973,7 @@ { "单例": { "data": { - "uuid": "java-6-307", + "uuid": "java-6-308", "seg": [ [ [ @@ -66749,16 +77981,19 @@ ] ] ], - "level": "2", + "level": { + "min": 0.6755787037037035, + "max": 0.675636574074074 + }, "related_data": { "qa": { "data_id": [ - "13_164496_38332", - "13_649424_454993", - "13_649388_455462", - "13_4645077_29327187", - "13_770007_831315", - "13_209373_146864" + "13_164496_38332@13", + "13_649424_454993@13", + "13_649388_455462@13", + "13_4645077_29327187@13", + "13_770007_831315@13", + "13_209373_146864@13" ] } } @@ -66767,7 +78002,7 @@ } ], "data": { - "uuid": "java-5-1122", + "uuid": "java-5-1151", "seg": [ [ [ @@ -66776,7 +78011,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.6753472222222221, + "max": 0.675636574074074 + }, "related_data": {} } } @@ -66787,7 +78025,7 @@ { "适配器": { "data": { - "uuid": "java-6-308", + "uuid": "java-6-309", "seg": [ [ [ @@ -66795,7 +78033,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.675636574074074, + "max": 0.6756779100529099 + }, "related_data": {} } } @@ -66803,7 +78044,7 @@ { "桥接": { "data": { - "uuid": "java-6-309", + "uuid": "java-6-310", "seg": [ [ [ @@ -66811,7 +78052,29 @@ ] ] ], - "level": "2", + "level": { + "min": 0.6756779100529099, + "max": 0.6757192460317459 + }, + "related_data": {} + } + } + }, + { + "组合": { + "data": { + "uuid": "java-6-311", + "seg": [ + [ + [ + "组合" + ] + ] + ], + "level": { + "min": 0.6757192460317459, + "max": 0.6757605820105819 + }, "related_data": {} } } @@ -66819,16 +78082,20 @@ { "装饰器": { "data": { - "uuid": "java-6-310", + "uuid": "java-6-312", "seg": [ [ [ "装饰", - "器" + "器", + "装饰器" ] ] ], - "level": "2", + "level": { + "min": 0.6757605820105819, + "max": 0.6758019179894179 + }, "related_data": {} } } @@ -66836,7 +78103,7 @@ { "外观": { "data": { - "uuid": "java-6-311", + "uuid": "java-6-313", "seg": [ [ [ @@ -66844,7 +78111,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.6758019179894179, + "max": 0.6758432539682538 + }, "related_data": {} } } @@ -66852,7 +78122,7 @@ { "享元": { "data": { - "uuid": "java-6-312", + "uuid": "java-6-314", "seg": [ [ [ @@ -66860,7 +78130,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.6758432539682538, + "max": 0.6758845899470899 + }, "related_data": {} } } @@ -66868,7 +78141,7 @@ { "代理": { "data": { - "uuid": "java-6-313", + "uuid": "java-6-315", "seg": [ [ [ @@ -66876,23 +78149,30 @@ ] ] ], - "level": "2", + "level": { + "min": 0.6758845899470899, + "max": 0.6759259259259258 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1123", + "uuid": "java-5-1152", "seg": [ [ [ "结构型", - "模式" + "模式", + "结构型模式" ] ] ], - "level": "2", + "level": { + "min": 0.675636574074074, + "max": 0.6759259259259258 + }, "related_data": {} } } @@ -66903,16 +78183,20 @@ { "责任链": { "data": { - "uuid": "java-6-314", + "uuid": "java-6-316", "seg": [ [ [ "责任", - "链" + "链", + "责任链" ] ] ], - "level": "2", + "level": { + "min": 0.6759259259259258, + "max": 0.6759522306397305 + }, "related_data": {} } } @@ -66920,7 +78204,7 @@ { "命令": { "data": { - "uuid": "java-6-315", + "uuid": "java-6-317", "seg": [ [ [ @@ -66928,11 +78212,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.6759522306397305, + "max": 0.6759785353535352 + }, "related_data": { "qa": { "data_id": [ - "13_7442674_53419614" + "13_7442674_53419614@13" ] } } @@ -66942,7 +78229,7 @@ { "解释器": { "data": { - "uuid": "java-6-316", + "uuid": "java-6-318", "seg": [ [ [ @@ -66950,7 +78237,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.6759785353535352, + "max": 0.67600484006734 + }, "related_data": {} } } @@ -66958,7 +78248,7 @@ { "迭代器": { "data": { - "uuid": "java-6-317", + "uuid": "java-6-319", "seg": [ [ [ @@ -66967,7 +78257,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.67600484006734, + "max": 0.6760311447811447 + }, "related_data": {} } } @@ -66975,7 +78268,7 @@ { "中介": { "data": { - "uuid": "java-6-318", + "uuid": "java-6-320", "seg": [ [ [ @@ -66983,7 +78276,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.6760311447811447, + "max": 0.6760574494949494 + }, "related_data": {} } } @@ -66991,7 +78287,7 @@ { "备忘录": { "data": { - "uuid": "java-6-319", + "uuid": "java-6-321", "seg": [ [ [ @@ -66999,7 +78295,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.6760574494949494, + "max": 0.6760837542087541 + }, "related_data": {} } } @@ -67007,7 +78306,7 @@ { "观察者": { "data": { - "uuid": "java-6-320", + "uuid": "java-6-322", "seg": [ [ [ @@ -67015,7 +78314,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.6760837542087541, + "max": 0.6761100589225588 + }, "related_data": {} } } @@ -67023,7 +78325,7 @@ { "状态": { "data": { - "uuid": "java-6-321", + "uuid": "java-6-323", "seg": [ [ [ @@ -67031,11 +78333,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.6761100589225588, + "max": 0.6761363636363635 + }, "related_data": { "qa": { "data_id": [ - "13_202017_125938" + "13_202017_125938@13" ] } } @@ -67045,7 +78350,7 @@ { "策略": { "data": { - "uuid": "java-6-322", + "uuid": "java-6-324", "seg": [ [ [ @@ -67053,7 +78358,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.6761363636363635, + "max": 0.6761626683501682 + }, "related_data": {} } } @@ -67061,20 +78369,24 @@ { "模板方法": { "data": { - "uuid": "java-6-323", + "uuid": "java-6-325", "seg": [ [ [ "模板", - "方法" + "方法", + "模板方法" ] ] ], - "level": "1", + "level": { + "min": 0.6761626683501682, + "max": 0.676188973063973 + }, "related_data": { "qa": { "data_id": [ - "13_772368_835522" + "13_772368_835522@13" ] } } @@ -67084,7 +78396,7 @@ { "访问者": { "data": { - "uuid": "java-6-324", + "uuid": "java-6-326", "seg": [ [ [ @@ -67092,14 +78404,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.676188973063973, + "max": 0.6762152777777777 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1124", + "uuid": "java-5-1153", "seg": [ [ [ @@ -67107,11 +78422,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.6759259259259258, + "max": 0.6762152777777777 + }, "related_data": { "qa": { "data_id": [ - "13_344367_347615" + "13_344367_347615@13" ] } } @@ -67120,7 +78438,7 @@ } ], "data": { - "uuid": "java-4-1115", + "uuid": "java-4-1126", "seg": [ [ [ @@ -67131,7 +78449,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6753472222222221, + "max": 0.6762152777777777 + }, "related_data": {} } } @@ -67139,7 +78460,7 @@ { "使用BeanInfo接口": { "data": { - "uuid": "java-4-1116", + "uuid": "java-4-1127", "seg": [ [ [ @@ -67148,11 +78469,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6762152777777777, + "max": 0.6770833333333333 + }, "related_data": { "qa": { "data_id": [ - "13_745449_793342" + "13_745449_793342@13" ] } } @@ -67161,7 +78485,7 @@ } ], "data": { - "uuid": "java-3-582", + "uuid": "java-3-575", "seg": [ [ [ @@ -67169,7 +78493,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.673611111111111, + "max": 0.6770833333333333 + }, "related_data": {} } } @@ -67177,7 +78504,7 @@ { "绑定属性与约束属性": { "data": { - "uuid": "java-3-583", + "uuid": "java-3-576", "seg": [ [ [ @@ -67190,7 +78517,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6770833333333333, + "max": 0.6805555555555556 + }, "related_data": {} } } @@ -67198,7 +78528,7 @@ { "持久性": { "data": { - "uuid": "java-3-584", + "uuid": "java-3-577", "seg": [ [ [ @@ -67206,7 +78536,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6805555555555556, + "max": 0.6840277777777778 + }, "related_data": {} } } @@ -67214,7 +78547,7 @@ { "定制器": { "data": { - "uuid": "java-3-585", + "uuid": "java-3-578", "seg": [ [ [ @@ -67223,7 +78556,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6840277777777778, + "max": 0.6875 + }, "related_data": {} } } @@ -67234,7 +78570,7 @@ { "Introspector类": { "data": { - "uuid": "java-4-1117", + "uuid": "java-4-1128", "seg": [ [ [ @@ -67243,7 +78579,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6875, + "max": 0.6883680555555556 + }, "related_data": {} } } @@ -67251,7 +78590,7 @@ { "PropertyDescriptor类": { "data": { - "uuid": "java-4-1118", + "uuid": "java-4-1129", "seg": [ [ [ @@ -67260,7 +78599,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6883680555555556, + "max": 0.6892361111111112 + }, "related_data": {} } } @@ -67268,7 +78610,7 @@ { "EventSetDescriptor类": { "data": { - "uuid": "java-4-1119", + "uuid": "java-4-1130", "seg": [ [ [ @@ -67277,7 +78619,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6892361111111112, + "max": 0.6901041666666666 + }, "related_data": {} } } @@ -67285,7 +78630,7 @@ { "MethodDescriptor类": { "data": { - "uuid": "java-4-1120", + "uuid": "java-4-1131", "seg": [ [ [ @@ -67294,14 +78639,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6901041666666666, + "max": 0.6909722222222222 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-586", + "uuid": "java-3-579", "seg": [ [ [ @@ -67311,7 +78659,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6875, + "max": 0.6909722222222222 + }, "related_data": {} } } @@ -67319,7 +78670,7 @@ { "一个Bean示例": { "data": { - "uuid": "java-3-587", + "uuid": "java-3-580", "seg": [ [ [ @@ -67328,7 +78679,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6909722222222222, + "max": 0.6944444444444444 + }, "related_data": {} } } @@ -67344,7 +78698,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6666666666666666, + "max": 0.6944444444444444 + }, "related_data": {} } } @@ -67355,7 +78712,7 @@ { "背景": { "data": { - "uuid": "java-3-588", + "uuid": "java-3-581", "seg": [ [ [ @@ -67363,11 +78720,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6944444444444444, + "max": 0.6967592592592592 + }, "related_data": { "qa": { "data_id": [ - "13_930241_1066557" + "13_930241_1066557@13" ] } } @@ -67377,7 +78737,7 @@ { "servelet的生命周期": { "data": { - "uuid": "java-3-589", + "uuid": "java-3-582", "seg": [ [ [ @@ -67386,11 +78746,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6967592592592592, + "max": 0.6990740740740741 + }, "related_data": { "qa": { "data_id": [ - "13_352961_364150" + "13_352961_364150@13" ] } } @@ -67400,7 +78763,7 @@ { "servlet开发选项": { "data": { - "uuid": "java-3-590", + "uuid": "java-3-583", "seg": [ [ [ @@ -67410,7 +78773,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6990740740740741, + "max": 0.7013888888888888 + }, "related_data": {} } } @@ -67418,7 +78784,7 @@ { "使用Tomcat": { "data": { - "uuid": "java-3-591", + "uuid": "java-3-584", "seg": [ [ [ @@ -67426,11 +78792,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7013888888888888, + "max": 0.7037037037037037 + }, "related_data": { "qa": { "data_id": [ - "13_353597_365199" + "13_353597_365199@13" ] } } @@ -67443,7 +78812,7 @@ { "创建和编译servlet源代码": { "data": { - "uuid": "java-4-1121", + "uuid": "java-4-1132", "seg": [ [ [ @@ -67455,20 +78824,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7037037037037037, + "max": 0.7044753086419753 + }, "related_data": { "qa": { "data_id": [ - "13_1067934_1268423", - "13_241135_226715", - "13_74716_12332", - "13_648900_453827", - "13_232077_205238", - "13_1063975_1262108", - "13_201267_123560", - "13_229302_196962", - "13_664369_481092", - "13_754979_810220" + "13_1067934_1268423@13", + "13_241135_226715@13", + "13_74716_12332@13", + "13_648900_453827@13", + "13_232077_205238@13", + "13_1063975_1262108@13", + "13_201267_123560@13", + "13_229302_196962@13", + "13_664369_481092@13", + "13_754979_810220@13" ] } } @@ -67478,7 +78850,7 @@ { "启动Tomcat": { "data": { - "uuid": "java-4-1122", + "uuid": "java-4-1133", "seg": [ [ [ @@ -67487,20 +78859,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7044753086419753, + "max": 0.7052469135802469 + }, "related_data": { "qa": { "data_id": [ - "13_1047467_1244227", - "13_714111_705823", - "13_338266_335950", - "13_656381_467920", - "13_694699_575371", - "13_350286_358888", - "13_392027_434947", - "13_204857_134492", - "13_763600_822114", - "13_651408_458601" + "13_1047467_1244227@13", + "13_714111_705823@13", + "13_338266_335950@13", + "13_656381_467920@13", + "13_694699_575371@13", + "13_350286_358888@13", + "13_392027_434947@13", + "13_204857_134492@13", + "13_763600_822114@13", + "13_651408_458601@13" ] } } @@ -67510,7 +78885,7 @@ { "启动Web浏览器并请求servlet": { "data": { - "uuid": "java-4-1123", + "uuid": "java-4-1134", "seg": [ [ [ @@ -67521,18 +78896,21 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7052469135802469, + "max": 0.7060185185185185 + }, "related_data": { "qa": { "data_id": [ - "13_160358_27942", - "13_244635_234197", - "13_366613_391196", - "13_663938_480590", - "13_670978_494285", - "13_1060720_1258423", - "13_1090018_1296659", - "13_1096495_1308849" + "13_160358_27942@13", + "13_244635_234197@13", + "13_366613_391196@13", + "13_663938_480590@13", + "13_670978_494285@13", + "13_1060720_1258423@13", + "13_1090018_1296659@13", + "13_1096495_1308849@13" ] } } @@ -67541,7 +78919,7 @@ } ], "data": { - "uuid": "java-3-592", + "uuid": "java-3-585", "seg": [ [ [ @@ -67549,7 +78927,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7037037037037037, + "max": 0.7060185185185185 + }, "related_data": {} } } @@ -67557,7 +78938,7 @@ { "Servlet API": { "data": { - "uuid": "java-3-593", + "uuid": "java-3-586", "seg": [ [ [ @@ -67566,7 +78947,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7060185185185185, + "max": 0.7083333333333333 + }, "related_data": {} } } @@ -67577,7 +78961,7 @@ { "Servlet接口": { "data": { - "uuid": "java-4-1124", + "uuid": "java-4-1135", "seg": [ [ [ @@ -67586,11 +78970,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7083333333333333, + "max": 0.7085905349794238 + }, "related_data": { "qa": { "data_id": [ - "13_717269_710443" + "13_717269_710443@13" ] } } @@ -67600,7 +78987,7 @@ { "ServletConfig接口": { "data": { - "uuid": "java-4-1125", + "uuid": "java-4-1136", "seg": [ [ [ @@ -67609,7 +78996,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7085905349794238, + "max": 0.7088477366255144 + }, "related_data": {} } } @@ -67617,7 +79007,7 @@ { "ServletContext接口": { "data": { - "uuid": "java-4-1126", + "uuid": "java-4-1137", "seg": [ [ [ @@ -67626,12 +79016,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7088477366255144, + "max": 0.7091049382716049 + }, "related_data": { "qa": { "data_id": [ - "13_384116_420177", - "13_224266_183372" + "13_384116_420177@13", + "13_224266_183372@13" ] } } @@ -67641,7 +79034,7 @@ { "ServletRequest接口": { "data": { - "uuid": "java-4-1127", + "uuid": "java-4-1138", "seg": [ [ [ @@ -67650,11 +79043,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7091049382716049, + "max": 0.7093621399176955 + }, "related_data": { "qa": { "data_id": [ - "13_644699_445638" + "13_644699_445638@13" ] } } @@ -67664,7 +79060,7 @@ { "ServletResponse接口": { "data": { - "uuid": "java-4-1128", + "uuid": "java-4-1139", "seg": [ [ [ @@ -67673,11 +79069,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7093621399176955, + "max": 0.7096193415637859 + }, "related_data": { "qa": { "data_id": [ - "13_768827_829201" + "13_768827_829201@13" ] } } @@ -67687,7 +79086,7 @@ { "GenericServlet类": { "data": { - "uuid": "java-4-1129", + "uuid": "java-4-1140", "seg": [ [ [ @@ -67696,11 +79095,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7096193415637859, + "max": 0.7098765432098765 + }, "related_data": { "qa": { "data_id": [ - "13_648024_451992" + "13_648024_451992@13" ] } } @@ -67710,7 +79112,7 @@ { "ServletInputStream类": { "data": { - "uuid": "java-4-1130", + "uuid": "java-4-1141", "seg": [ [ [ @@ -67719,7 +79121,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7098765432098765, + "max": 0.710133744855967 + }, "related_data": {} } } @@ -67727,7 +79132,7 @@ { "ServletOutputStream类": { "data": { - "uuid": "java-4-1131", + "uuid": "java-4-1142", "seg": [ [ [ @@ -67736,7 +79141,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.710133744855967, + "max": 0.7103909465020576 + }, "related_data": {} } } @@ -67744,24 +79152,28 @@ { "servlet异常类": { "data": { - "uuid": "java-4-1132", + "uuid": "java-4-1143", "seg": [ [ [ "servlet", "异常", - "类" + "类", + "异常类" ] ] ], - "level": "1", + "level": { + "min": 0.7103909465020576, + "max": 0.7106481481481481 + }, "related_data": { "qa": { "data_id": [ - "13_7422658_53381318", - "13_239552_222921", - "13_387439_426543", - "13_356246_371953" + "13_7422658_53381318@13", + "13_239552_222921@13", + "13_387439_426543@13", + "13_356246_371953@13" ] } } @@ -67770,7 +79182,7 @@ } ], "data": { - "uuid": "java-3-594", + "uuid": "java-3-587", "seg": [ [ [ @@ -67780,11 +79192,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7083333333333333, + "max": 0.7106481481481481 + }, "related_data": { "qa": { "data_id": [ - "13_703239_595850" + "13_703239_595850@13" ] } } @@ -67794,7 +79209,7 @@ { "读取servlet参数": { "data": { - "uuid": "java-3-595", + "uuid": "java-3-588", "seg": [ [ [ @@ -67804,7 +79219,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7106481481481481, + "max": 0.7129629629629629 + }, "related_data": {} } } @@ -67815,7 +79233,7 @@ { "HttpServletRequest接口": { "data": { - "uuid": "java-4-1133", + "uuid": "java-4-1144", "seg": [ [ [ @@ -67824,11 +79242,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7129629629629629, + "max": 0.7134259259259259 + }, "related_data": { "qa": { "data_id": [ - "13_6900334_52830091" + "13_6900334_52830091@13" ] } } @@ -67838,7 +79259,7 @@ { "HttpServletResponse接口": { "data": { - "uuid": "java-4-1134", + "uuid": "java-4-1145", "seg": [ [ [ @@ -67847,7 +79268,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7134259259259259, + "max": 0.7138888888888889 + }, "related_data": {} } } @@ -67855,7 +79279,7 @@ { "HttpSession接口": { "data": { - "uuid": "java-4-1135", + "uuid": "java-4-1146", "seg": [ [ [ @@ -67864,7 +79288,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7138888888888889, + "max": 0.7143518518518518 + }, "related_data": {} } } @@ -67872,7 +79299,7 @@ { "Cookie类": { "data": { - "uuid": "java-4-1136", + "uuid": "java-4-1147", "seg": [ [ [ @@ -67881,16 +79308,19 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7143518518518518, + "max": 0.7148148148148148 + }, "related_data": { "qa": { "data_id": [ - "13_667014_485542", - "13_374216_402854", - "13_28030_8013", - "13_233977_214109", - "13_174882_54765", - "13_247227_240476" + "13_667014_485542@13", + "13_374216_402854@13", + "13_28030_8013@13", + "13_233977_214109@13", + "13_174882_54765@13", + "13_247227_240476@13" ] } } @@ -67900,7 +79330,7 @@ { "HttpServlet类": { "data": { - "uuid": "java-4-1137", + "uuid": "java-4-1148", "seg": [ [ [ @@ -67909,12 +79339,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7148148148148148, + "max": 0.7152777777777778 + }, "related_data": { "qa": { "data_id": [ - "13_7448137_53428132", - "13_234595_212140" + "13_7448137_53428132@13", + "13_234595_212140@13" ] } } @@ -67923,7 +79356,7 @@ } ], "data": { - "uuid": "java-3-596", + "uuid": "java-3-589", "seg": [ [ [ @@ -67934,7 +79367,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7129629629629629, + "max": 0.7152777777777778 + }, "related_data": {} } } @@ -67945,7 +79381,7 @@ { "处理HTTP GET请求": { "data": { - "uuid": "java-4-1138", + "uuid": "java-4-1149", "seg": [ [ [ @@ -67954,20 +79390,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7152777777777778, + "max": 0.7164351851851851 + }, "related_data": { "qa": { "data_id": [ - "13_1099337_1314340", - "13_391807_434613", - "13_690166_559686", - "13_746985_797550", - "13_768779_829496", - "13_7438496_53411873", - "13_348835_356700", - "13_757552_813167", - "13_222359_178208", - "13_376374_406299" + "13_1099337_1314340@13", + "13_391807_434613@13", + "13_690166_559686@13", + "13_746985_797550@13", + "13_768779_829496@13", + "13_7438496_53411873@13", + "13_348835_356700@13", + "13_757552_813167@13", + "13_222359_178208@13", + "13_376374_406299@13" ] } } @@ -67977,7 +79416,7 @@ { "处理HTTP POST请求": { "data": { - "uuid": "java-4-1139", + "uuid": "java-4-1150", "seg": [ [ [ @@ -67986,20 +79425,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7164351851851851, + "max": 0.7175925925925926 + }, "related_data": { "qa": { "data_id": [ - "13_748142_799889", - "13_7444765_53423274", - "13_369225_401700", - "13_690971_562275", - "13_248044_242264", - "13_768948_829566", - "13_668088_487899", - "13_270188_291942", - "13_773137_836750", - "13_748039_799726" + "13_748142_799889@13", + "13_7444765_53423274@13", + "13_369225_401700@13", + "13_690971_562275@13", + "13_248044_242264@13", + "13_768948_829566@13", + "13_668088_487899@13", + "13_270188_291942@13", + "13_773137_836750@13", + "13_748039_799726@13" ] } } @@ -68008,7 +79450,7 @@ } ], "data": { - "uuid": "java-3-597", + "uuid": "java-3-590", "seg": [ [ [ @@ -68019,7 +79461,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7152777777777778, + "max": 0.7175925925925926 + }, "related_data": {} } } @@ -68027,7 +79472,7 @@ { "使用cookie": { "data": { - "uuid": "java-3-598", + "uuid": "java-3-591", "seg": [ [ [ @@ -68035,7 +79480,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7175925925925926, + "max": 0.7199074074074074 + }, "related_data": {} } } @@ -68043,7 +79491,7 @@ { "会话跟踪": { "data": { - "uuid": "java-3-599", + "uuid": "java-3-592", "seg": [ [ [ @@ -68052,13 +79500,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7199074074074074, + "max": 0.7222222222222222 + }, "related_data": { "qa": { "data_id": [ - "13_212534_154004", - "13_7426525_53390083", - "13_231623_203032" + "13_212534_154004@13", + "13_7426525_53390083@13", + "13_231623_203032@13" ] } } @@ -68075,11 +79526,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6944444444444444, + "max": 0.7222222222222222 + }, "related_data": { "qa": { "data_id": [ - "13_339485_338247" + "13_339485_338247@13" ] } } @@ -68101,7 +79555,7 @@ { "Spring IoC简介": { "data": { - "uuid": "java-6-325", + "uuid": "java-6-327", "seg": [ [ [ @@ -68111,7 +79565,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7222222222222222, + "max": 0.7222435897435897 + }, "related_data": {} } } @@ -68119,7 +79576,7 @@ { "Spring AOP": { "data": { - "uuid": "java-6-326", + "uuid": "java-6-328", "seg": [ [ [ @@ -68128,11 +79585,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7222435897435897, + "max": 0.7222649572649572 + }, "related_data": { "qa": { "data_id": [ - "13_754110_808956" + "13_754110_808956@13" ] } } @@ -68141,7 +79601,7 @@ } ], "data": { - "uuid": "java-5-1125", + "uuid": "java-5-1154", "seg": [ [ [ @@ -68150,7 +79610,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7222222222222222, + "max": 0.7222649572649572 + }, "related_data": {} } } @@ -68161,7 +79624,7 @@ { "Hibernate简介": { "data": { - "uuid": "java-6-327", + "uuid": "java-6-329", "seg": [ [ [ @@ -68170,19 +79633,22 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7222649572649572, + "max": 0.7222792022792023 + }, "related_data": { "qa": { "data_id": [ - "13_222650_179224", - "13_243813_232707", - "13_154530_14639", - "13_241566_227842", - "13_679595_527015", - "13_357890_375247", - "13_357355_373893", - "13_243869_232788", - "13_192384_95469" + "13_222650_179224@13", + "13_243813_232707@13", + "13_154530_14639@13", + "13_241566_227842@13", + "13_679595_527015@13", + "13_357890_375247@13", + "13_357355_373893@13", + "13_243869_232788@13", + "13_192384_95469@13" ] } } @@ -68192,7 +79658,7 @@ { "MyBatis": { "data": { - "uuid": "java-6-328", + "uuid": "java-6-330", "seg": [ [ [ @@ -68200,11 +79666,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7222792022792023, + "max": 0.7222934472934472 + }, "related_data": { "qa": { "data_id": [ - "13_752197_806211" + "13_752197_806211@13" ] } } @@ -68214,7 +79683,7 @@ { "Hibernate和MyBatis的区别": { "data": { - "uuid": "java-6-329", + "uuid": "java-6-331", "seg": [ [ [ @@ -68226,16 +79695,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7222934472934472, + "max": 0.7223076923076923 + }, "related_data": { "qa": { "data_id": [ - "13_744204_789842", - "13_7439939_53414781", - "13_235010_212927", - "13_171020_47870", - "13_166967_40522", - "13_23136_6106" + "13_744204_789842@13", + "13_7439939_53414781@13", + "13_235010_212927@13", + "13_171020_47870@13", + "13_166967_40522@13", + "13_23136_6106@13" ] } } @@ -68244,7 +79716,7 @@ } ], "data": { - "uuid": "java-5-1126", + "uuid": "java-5-1155", "seg": [ [ [ @@ -68253,7 +79725,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7222649572649572, + "max": 0.7223076923076923 + }, "related_data": {} } } @@ -68261,7 +79736,7 @@ { "Spring MVC简介": { "data": { - "uuid": "java-5-1127", + "uuid": "java-5-1156", "seg": [ [ [ @@ -68271,7 +79746,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7223076923076923, + "max": 0.7223504273504273 + }, "related_data": {} } } @@ -68279,17 +79757,21 @@ { "最流行的NoSQL——Redis": { "data": { - "uuid": "java-5-1128", + "uuid": "java-5-1157", "seg": [ [ [ "流行", "nosql", - "redis" + "redis", + "最流行" ] ] ], - "level": "1", + "level": { + "min": 0.7223504273504273, + "max": 0.7223931623931624 + }, "related_data": {} } } @@ -68297,34 +79779,38 @@ { "SSM+Redis结构框图及概述": { "data": { - "uuid": "java-5-1129", + "uuid": "java-5-1158", "seg": [ [ [ "ssm", "redis", "结构", - "框图" + "框图", + "结构框图" ], [ "概述" ] ] ], - "level": "1", + "level": { + "min": 0.7223931623931624, + "max": 0.7224358974358974 + }, "related_data": { "qa": { "data_id": [ - "13_678284_525249", - "13_7457376_53441627", - "13_688603_554973", - "13_672762_499704", - "13_679898_528334", - "13_376803_408155", - "13_664485_481310", - "13_391760_434564", - "13_679822_528059", - "13_7457305_53441457" + "13_678284_525249@13", + "13_7457376_53441627@13", + "13_688603_554973@13", + "13_672762_499704@13", + "13_679898_528334@13", + "13_376803_408155@13", + "13_664485_481310@13", + "13_391760_434564@13", + "13_679822_528059@13", + "13_7457305_53441457@13" ] } } @@ -68347,18 +79833,22 @@ "高速", "读", "写", - "场合" + "场合", + "高速读" ] ] ], - "level": "1", + "level": { + "min": 0.7224358974358974, + "max": 0.7224465811965812 + }, "related_data": {} } } } ], "data": { - "uuid": "java-6-330", + "uuid": "java-6-332", "seg": [ [ [ @@ -68368,7 +79858,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7224358974358974, + "max": 0.7224465811965812 + }, "related_data": {} } } @@ -68389,13 +79882,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7224465811965812, + "max": 0.7224519230769231 + }, "related_data": { "qa": { "data_id": [ - "13_215010_161130", - "13_718344_711984", - "13_4646690_29331384" + "13_215010_161130@13", + "13_718344_711984@13", + "13_4646690_29331384@13" ] } } @@ -68415,20 +79911,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7224519230769231, + "max": 0.7224572649572649 + }, "related_data": { "qa": { "data_id": [ - "13_237480_219394", - "13_213548_156553", - "13_7465164_53451899", - "13_654065_463427", - "13_654068_463512", - "13_689532_557811", - "13_678583_523140", - "13_3036424_19273104", - "13_713123_704732", - "13_183924_72194" + "13_237480_219394@13", + "13_213548_156553@13", + "13_7465164_53451899@13", + "13_654065_463427@13", + "13_654068_463512@13", + "13_689532_557811@13", + "13_678583_523140@13", + "13_3036424_19273104@13", + "13_713123_704732@13", + "13_183924_72194@13" ] } } @@ -68437,7 +79936,7 @@ } ], "data": { - "uuid": "java-6-331", + "uuid": "java-6-333", "seg": [ [ [ @@ -68447,7 +79946,10 @@ [] ] ], - "level": "1", + "level": { + "min": 0.7224465811965812, + "max": 0.7224572649572649 + }, "related_data": {} } } @@ -68468,7 +79970,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7224572649572649, + "max": 0.7224626068376068 + }, "related_data": {} } } @@ -68485,20 +79990,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7224626068376068, + "max": 0.7224679487179486 + }, "related_data": { "qa": { "data_id": [ - "13_642537_441929", - "13_680150_529268", - "13_1052111_1249653", - "13_216868_164551", - "13_668754_489464", - "13_673814_502450", - "13_768405_828500", - "13_747333_798486", - "13_873422_1006397", - "13_668560_488984" + "13_642537_441929@13", + "13_680150_529268@13", + "13_1052111_1249653@13", + "13_216868_164551@13", + "13_668754_489464@13", + "13_673814_502450@13", + "13_768405_828500@13", + "13_747333_798486@13", + "13_873422_1006397@13", + "13_668560_488984@13" ] } } @@ -68507,7 +80015,7 @@ } ], "data": { - "uuid": "java-6-332", + "uuid": "java-6-334", "seg": [ [ [ @@ -68517,7 +80025,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7224572649572649, + "max": 0.7224679487179486 + }, "related_data": {} } } @@ -68525,7 +80036,7 @@ { "简介Redis的6种数据类型": { "data": { - "uuid": "java-6-333", + "uuid": "java-6-335", "seg": [ [ [ @@ -68535,14 +80046,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7224679487179486, + "max": 0.7224786324786324 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1130", + "uuid": "java-5-1159", "seg": [ [ [ @@ -68551,7 +80065,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7224358974358974, + "max": 0.7224786324786324 + }, "related_data": {} } } @@ -68562,7 +80079,7 @@ { "Redis数据结构——字符串": { "data": { - "uuid": "java-6-334", + "uuid": "java-6-336", "seg": [ [ [ @@ -68572,7 +80089,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7224786324786324, + "max": 0.722485754985755 + }, "related_data": {} } } @@ -68580,7 +80100,7 @@ { "Redis数据结构——哈希": { "data": { - "uuid": "java-6-335", + "uuid": "java-6-337", "seg": [ [ [ @@ -68590,15 +80110,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.722485754985755, + "max": 0.7224928774928775 + }, "related_data": { "qa": { "data_id": [ - "13_737870_768580", - "13_7466644_53453967", - "13_669489_491104", - "13_7445864_53424911", - "13_662727_478463" + "13_737870_768580@13", + "13_7466644_53453967@13", + "13_669489_491104@13", + "13_7445864_53424911@13", + "13_662727_478463@13" ] } } @@ -68608,7 +80131,7 @@ { "Redis数据结构——链表(linked-list)": { "data": { - "uuid": "java-6-336", + "uuid": "java-6-338", "seg": [ [ [ @@ -68620,11 +80143,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7224928774928775, + "max": 0.7224999999999999 + }, "related_data": { "qa": { "data_id": [ - "13_694700_575389" + "13_694700_575389@13" ] } } @@ -68634,7 +80160,7 @@ { "Redis数据结构——集合": { "data": { - "uuid": "java-6-337", + "uuid": "java-6-339", "seg": [ [ [ @@ -68644,7 +80170,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7224999999999999, + "max": 0.7225071225071225 + }, "related_data": {} } } @@ -68661,11 +80190,15 @@ [ "redis", "基础", - "命令" + "命令", + "基础命令" ] ] ], - "level": "1", + "level": { + "min": 0.7225071225071225, + "max": 0.7225094966761633 + }, "related_data": {} } } @@ -68686,7 +80219,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7225094966761633, + "max": 0.7225118708452042 + }, "related_data": {} } } @@ -68705,11 +80241,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7225118708452042, + "max": 0.722514245014245 + }, "related_data": { "qa": { "data_id": [ - "13_233772_209587" + "13_233772_209587@13" ] } } @@ -68718,7 +80257,7 @@ } ], "data": { - "uuid": "java-6-338", + "uuid": "java-6-340", "seg": [ [ [ @@ -68729,7 +80268,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7225071225071225, + "max": 0.722514245014245 + }, "related_data": {} } } @@ -68737,7 +80279,7 @@ { "基数——HyperLogLog": { "data": { - "uuid": "java-6-339", + "uuid": "java-6-341", "seg": [ [ [ @@ -68746,24 +80288,31 @@ ] ] ], - "level": "1", + "level": { + "min": 0.722514245014245, + "max": 0.7225213675213675 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1131", + "uuid": "java-5-1160", "seg": [ [ [ "redis", "数据结构", - "常用命令" + "常用命令", + "数据结构常用命令" ] ] ], - "level": "1", + "level": { + "min": 0.7224786324786324, + "max": 0.7225213675213675 + }, "related_data": {} } } @@ -68774,17 +80323,21 @@ { "Redis的基础事务": { "data": { - "uuid": "java-6-340", + "uuid": "java-6-342", "seg": [ [ [ "redis", "基础", - "事务" + "事务", + "基础事务" ] ] ], - "level": "1", + "level": { + "min": 0.7225213675213675, + "max": 0.7225274725274725 + }, "related_data": {} } } @@ -68792,7 +80345,7 @@ { "探索Redis事务回滚": { "data": { - "uuid": "java-6-341", + "uuid": "java-6-343", "seg": [ [ [ @@ -68803,12 +80356,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7225274725274725, + "max": 0.7225335775335775 + }, "related_data": { "qa": { "data_id": [ - "13_749750_802488", - "13_7423184_53382773" + "13_749750_802488@13", + "13_7423184_53382773@13" ] } } @@ -68818,7 +80374,7 @@ { "使用watch命令监控事务": { "data": { - "uuid": "java-6-342", + "uuid": "java-6-344", "seg": [ [ [ @@ -68829,7 +80385,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7225335775335775, + "max": 0.7225396825396825 + }, "related_data": {} } } @@ -68837,7 +80396,7 @@ { "流水线(pipelined)": { "data": { - "uuid": "java-6-343", + "uuid": "java-6-345", "seg": [ [ [ @@ -68846,7 +80405,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7225396825396825, + "max": 0.7225457875457876 + }, "related_data": {} } } @@ -68854,7 +80416,7 @@ { "发布订阅": { "data": { - "uuid": "java-6-344", + "uuid": "java-6-346", "seg": [ [ [ @@ -68863,12 +80425,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7225457875457876, + "max": 0.7225518925518926 + }, "related_data": { "qa": { "data_id": [ - "13_746718_796701", - "13_719222_713302" + "13_746718_796701@13", + "13_719222_713302@13" ] } } @@ -68878,7 +80443,7 @@ { "超时命令": { "data": { - "uuid": "java-6-345", + "uuid": "java-6-347", "seg": [ [ [ @@ -68887,7 +80452,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7225518925518926, + "max": 0.7225579975579975 + }, "related_data": {} } } @@ -68909,7 +80477,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7225579975579975, + "max": 0.72256105006105 + }, "related_data": {} } } @@ -68927,13 +80498,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.72256105006105, + "max": 0.7225641025641025 + }, "related_data": { "qa": { "data_id": [ - "13_381753_415756", - "13_212713_154579", - "13_656812_468812" + "13_381753_415756@13", + "13_212713_154579@13", + "13_656812_468812@13" ] } } @@ -68942,7 +80516,7 @@ } ], "data": { - "uuid": "java-6-346", + "uuid": "java-6-348", "seg": [ [ [ @@ -68951,14 +80525,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7225579975579975, + "max": 0.7225641025641025 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1132", + "uuid": "java-5-1161", "seg": [ [ [ @@ -68967,7 +80544,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7225213675213675, + "max": 0.7225641025641025 + }, "related_data": {} } } @@ -68978,17 +80558,21 @@ { "Redis基础配置文件": { "data": { - "uuid": "java-6-347", + "uuid": "java-6-349", "seg": [ [ [ "redis", "基础", - "配置文件" + "配置文件", + "基础配置文件" ] ] ], - "level": "1", + "level": { + "min": 0.7225641025641025, + "max": 0.7225726495726496 + }, "related_data": {} } } @@ -68996,7 +80580,7 @@ { "Redis备份(持久化)": { "data": { - "uuid": "java-6-348", + "uuid": "java-6-350", "seg": [ [ [ @@ -69007,21 +80591,18 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_7402350_53350044" - ] - } - } + "level": { + "min": 0.7225726495726496, + "max": 0.7225811965811966 + }, + "related_data": {} } } }, { "Redis内存回收策略": { "data": { - "uuid": "java-6-349", + "uuid": "java-6-351", "seg": [ [ [ @@ -69032,7 +80613,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7225811965811966, + "max": 0.7225897435897435 + }, "related_data": {} } } @@ -69050,11 +80634,16 @@ "主从", "同步", "基础", - "概念" + "概念", + "同步基础", + "基础概念" ] ] ], - "level": "2", + "level": { + "min": 0.7225897435897435, + "max": 0.7225925925925925 + }, "related_data": {} } } @@ -69069,11 +80658,15 @@ "redis", "主从", "同步", - "配置" + "配置", + "同步配置" ] ] ], - "level": "2", + "level": { + "min": 0.7225925925925925, + "max": 0.7225954415954415 + }, "related_data": {} } } @@ -69092,14 +80685,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7225954415954415, + "max": 0.7225982905982905 + }, "related_data": {} } } } ], "data": { - "uuid": "java-6-350", + "uuid": "java-6-352", "seg": [ [ [ @@ -69107,12 +80703,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7225897435897435, + "max": 0.7225982905982905 + }, "related_data": { "qa": { "data_id": [ - "13_352600_363604", - "13_752603_807014" + "13_352600_363604@13", + "13_752603_807014@13" ] } } @@ -69131,15 +80730,19 @@ [ "哨兵", "模式", - "概述" + "概述", + "哨兵模式" ] ] ], - "level": "1", + "level": { + "min": 0.7225982905982905, + "max": 0.7226004273504273 + }, "related_data": { "qa": { "data_id": [ - "13_746775_796855" + "13_746775_796855@13" ] } } @@ -69155,11 +80758,15 @@ [ "搭建", "哨兵", - "模式" + "模式", + "哨兵模式" ] ] ], - "level": "1", + "level": { + "min": 0.7226004273504273, + "max": 0.722602564102564 + }, "related_data": {} } } @@ -69173,11 +80780,15 @@ [ "java", "哨兵", - "模式" + "模式", + "哨兵模式" ] ] ], - "level": "1", + "level": { + "min": 0.722602564102564, + "max": 0.7226047008547007 + }, "related_data": {} } } @@ -69192,18 +80803,22 @@ "哨兵", "模式", "配置", - "项" + "项", + "哨兵模式" ] ] ], - "level": "1", + "level": { + "min": 0.7226047008547007, + "max": 0.7226068376068375 + }, "related_data": {} } } } ], "data": { - "uuid": "java-6-351", + "uuid": "java-6-353", "seg": [ [ [ @@ -69213,14 +80828,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7225982905982905, + "max": 0.7226068376068375 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1133", + "uuid": "java-5-1162", "seg": [ [ [ @@ -69229,7 +80847,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7225641025641025, + "max": 0.7226068376068375 + }, "related_data": {} } } @@ -69240,7 +80861,7 @@ { "安全设置": { "data": { - "uuid": "java-6-352", + "uuid": "java-6-354", "seg": [ [ [ @@ -69248,11 +80869,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7226068376068375, + "max": 0.7226129426129425 + }, "related_data": { "qa": { "data_id": [ - "13_7457017_53441117" + "13_7457017_53441117@13" ] } } @@ -69262,7 +80886,7 @@ { "基本操作": { "data": { - "uuid": "java-6-353", + "uuid": "java-6-355", "seg": [ [ [ @@ -69270,7 +80894,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7226129426129425, + "max": 0.7226190476190476 + }, "related_data": {} } } @@ -69278,7 +80905,7 @@ { "keys": { "data": { - "uuid": "java-6-354", + "uuid": "java-6-356", "seg": [ [ [ @@ -69286,7 +80913,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7226190476190476, + "max": 0.7226251526251526 + }, "related_data": {} } } @@ -69294,7 +80924,7 @@ { "Redis List": { "data": { - "uuid": "java-6-355", + "uuid": "java-6-357", "seg": [ [ [ @@ -69303,7 +80933,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7226251526251526, + "max": 0.7226312576312576 + }, "related_data": {} } } @@ -69311,7 +80944,7 @@ { "Redis Hash": { "data": { - "uuid": "java-6-356", + "uuid": "java-6-358", "seg": [ [ [ @@ -69320,12 +80953,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7226312576312576, + "max": 0.7226373626373626 + }, "related_data": { "qa": { "data_id": [ - "13_364742_386953", - "13_377034_407471" + "13_364742_386953@13", + "13_377034_407471@13" ] } } @@ -69335,7 +80971,7 @@ { "Set": { "data": { - "uuid": "java-6-357", + "uuid": "java-6-359", "seg": [ [ [ @@ -69343,7 +80979,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7226373626373626, + "max": 0.7226434676434677 + }, "related_data": {} } } @@ -69351,7 +80990,7 @@ { "Pub/Sub": { "data": { - "uuid": "java-6-358", + "uuid": "java-6-360", "seg": [ [ [ @@ -69360,14 +80999,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7226434676434677, + "max": 0.7226495726495726 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1134", + "uuid": "java-5-1163", "seg": [ [ [ @@ -69376,7 +81018,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7226068376068375, + "max": 0.7226495726495726 + }, "related_data": {} } } @@ -69384,7 +81029,7 @@ { "Spring Boot集成Redis": { "data": { - "uuid": "java-5-1135", + "uuid": "java-5-1164", "seg": [ [ [ @@ -69395,7 +81040,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7226495726495726, + "max": 0.7226923076923076 + }, "related_data": {} } } @@ -69406,7 +81054,7 @@ { "opsFor": { "data": { - "uuid": "java-6-359", + "uuid": "java-6-361", "seg": [ [ [ @@ -69414,7 +81062,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7226923076923076, + "max": 0.7227065527065527 + }, "related_data": {} } } @@ -69422,7 +81073,7 @@ { "绑定Key的操作": { "data": { - "uuid": "java-6-360", + "uuid": "java-6-362", "seg": [ [ [ @@ -69432,7 +81083,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7227065527065527, + "max": 0.7227207977207977 + }, "related_data": {} } } @@ -69440,7 +81094,7 @@ { "RedisConnection": { "data": { - "uuid": "java-6-361", + "uuid": "java-6-363", "seg": [ [ [ @@ -69448,14 +81102,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7227207977207977, + "max": 0.7227350427350427 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1136", + "uuid": "java-5-1165", "seg": [ [ [ @@ -69463,11 +81120,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7226923076923076, + "max": 0.7227350427350427 + }, "related_data": { "qa": { "data_id": [ - "13_766176_825308" + "13_766176_825308@13" ] } } @@ -69480,17 +81140,21 @@ { "默认序列化策略": { "data": { - "uuid": "java-6-362", + "uuid": "java-6-364", "seg": [ [ [ "默认", "序列化", - "策略" + "策略", + "序列化策略" ] ] ], - "level": "2", + "level": { + "min": 0.7227350427350427, + "max": 0.7227564102564102 + }, "related_data": {} } } @@ -69498,40 +81162,48 @@ { "自定义序列化策略": { "data": { - "uuid": "java-6-363", + "uuid": "java-6-365", "seg": [ [ [ "自定义", "序列化", - "策略" + "策略", + "序列化策略" ] ] ], - "level": "2", + "level": { + "min": 0.7227564102564102, + "max": 0.7227777777777777 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1137", + "uuid": "java-5-1166", "seg": [ [ [ "序列化", - "策略" + "策略", + "序列化策略" ] ] ], - "level": "2", + "level": { + "min": 0.7227350427350427, + "max": 0.7227777777777777 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1140", + "uuid": "java-4-1151", "seg": [ [ [ @@ -69543,7 +81215,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7222222222222222, + "max": 0.7227777777777777 + }, "related_data": {} } } @@ -69557,7 +81232,7 @@ { "通过反射构建对象": { "data": { - "uuid": "java-6-364", + "uuid": "java-6-366", "seg": [ [ [ @@ -69567,7 +81242,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7227777777777777, + "max": 0.7228333333333332 + }, "related_data": {} } } @@ -69575,7 +81253,7 @@ { "反射方法": { "data": { - "uuid": "java-6-365", + "uuid": "java-6-367", "seg": [ [ [ @@ -69584,19 +81262,22 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7228333333333332, + "max": 0.7228888888888888 + }, "related_data": { "qa": { "data_id": [ - "13_151933_14475", - "13_250238_247208", - "13_200815_122198", - "13_186728_79969", - "13_674349_504374", - "13_25947_7070", - "13_203230_129751", - "13_336643_332363", - "13_7438736_53412129" + "13_151933_14475@13", + "13_250238_247208@13", + "13_200815_122198@13", + "13_186728_79969@13", + "13_674349_504374@13", + "13_25947_7070@13", + "13_203230_129751@13", + "13_336643_332363@13", + "13_7438736_53412129@13" ] } } @@ -69605,7 +81286,7 @@ } ], "data": { - "uuid": "java-5-1138", + "uuid": "java-5-1167", "seg": [ [ [ @@ -69615,7 +81296,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7227777777777777, + "max": 0.7228888888888888 + }, "related_data": {} } } @@ -69626,17 +81310,21 @@ { "JDK动态代理": { "data": { - "uuid": "java-6-366", + "uuid": "java-6-368", "seg": [ [ [ "jdk", "动态", - "代理" + "代理", + "动态代理" ] ] ], - "level": "2", + "level": { + "min": 0.7228888888888888, + "max": 0.7229166666666667 + }, "related_data": {} } } @@ -69644,26 +81332,30 @@ { "CGLIB动态代理": { "data": { - "uuid": "java-6-367", + "uuid": "java-6-369", "seg": [ [ [ "cglib", "动态", - "代理" + "代理", + "动态代理" ] ] ], - "level": "2", + "level": { + "min": 0.7229166666666667, + "max": 0.7229444444444444 + }, "related_data": { "qa": { "data_id": [ - "13_233571_208928", - "13_644221_444760", - "13_187090_80785", - "13_7419236_53377967", - "13_742299_784123", - "13_212893_154943" + "13_233571_208928@13", + "13_644221_444760@13", + "13_187090_80785@13", + "13_7419236_53377967@13", + "13_742299_784123@13", + "13_212893_154943@13" ] } } @@ -69685,14 +81377,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7229444444444444, + "max": 0.7229513888888888 + }, "related_data": { "qa": { "data_id": [ - "13_230965_201208", - "13_7431957_53400719", - "13_1101239_1315803", - "13_7442725_53419648" + "13_230965_201208@13", + "13_7431957_53400719@13", + "13_1101239_1315803@13", + "13_7442725_53419648@13" ] } } @@ -69712,7 +81407,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7229513888888888, + "max": 0.7229583333333333 + }, "related_data": {} } } @@ -69729,15 +81427,18 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7229583333333333, + "max": 0.7229652777777777 + }, "related_data": { "qa": { "data_id": [ - "13_238742_221046", - "13_199403_117576", - "13_653800_463015", - "13_1102275_1316682", - "13_7399254_53346324" + "13_238742_221046@13", + "13_199403_117576@13", + "13_653800_463015@13", + "13_1102275_1316682@13", + "13_7399254_53346324@13" ] } } @@ -69757,15 +81458,18 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7229652777777777, + "max": 0.7229722222222221 + }, "related_data": { "qa": { "data_id": [ - "13_758176_814408", - "13_358372_376618", - "13_7413013_53364714", - "13_250633_248175", - "13_358427_376791" + "13_758176_814408@13", + "13_358372_376618@13", + "13_7413013_53364714@13", + "13_250633_248175@13", + "13_358427_376791@13" ] } } @@ -69774,7 +81478,7 @@ } ], "data": { - "uuid": "java-6-368", + "uuid": "java-6-370", "seg": [ [ [ @@ -69782,7 +81486,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7229444444444444, + "max": 0.7229722222222221 + }, "related_data": {} } } @@ -69790,22 +81497,27 @@ { "责任链模式": { "data": { - "uuid": "java-6-369", + "uuid": "java-6-371", "seg": [ [ [ "责任", "链", - "模式" + "模式", + "责任链", + "链模式" ] ] ], - "level": "2", + "level": { + "min": 0.7229722222222221, + "max": 0.723 + }, "related_data": { "qa": { "data_id": [ - "13_196718_109552", - "13_382313_416811" + "13_196718_109552@13", + "13_382313_416811@13" ] } } @@ -69814,22 +81526,29 @@ } ], "data": { - "uuid": "java-5-1139", + "uuid": "java-5-1168", "seg": [ [ [ "动态", "代理", - "模式" + "模式", + "动态代理", + "代理模式" ], [ "责任", "链", - "模式" + "模式", + "责任链", + "链模式" ] ] ], - "level": "2", + "level": { + "min": 0.7228888888888888, + "max": 0.723 + }, "related_data": {} } } @@ -69840,7 +81559,7 @@ { "概述": { "data": { - "uuid": "java-6-370", + "uuid": "java-6-372", "seg": [ [ [ @@ -69848,14 +81567,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.723, + "max": 0.723111111111111 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1140", + "uuid": "java-5-1169", "seg": [ [ [ @@ -69865,14 +81587,11 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_683496_539824" - ] - } - } + "level": { + "min": 0.723, + "max": 0.723111111111111 + }, + "related_data": {} } } }, @@ -69882,18 +81601,22 @@ { "普通工厂(Simple Factory)模式": { "data": { - "uuid": "java-6-371", + "uuid": "java-6-373", "seg": [ [ [ "工厂", "simple", "factory", - "模式" + "模式", + "普通工厂" ] ] ], - "level": "2", + "level": { + "min": 0.723111111111111, + "max": 0.7231666666666666 + }, "related_data": {} } } @@ -69901,7 +81624,7 @@ { "抽象工厂(Abstract Factory)模式": { "data": { - "uuid": "java-6-372", + "uuid": "java-6-374", "seg": [ [ [ @@ -69913,13 +81636,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7231666666666666, + "max": 0.7232222222222222 + }, "related_data": { "qa": { "data_id": [ - "13_230499_202223", - "13_366349_390811", - "13_244872_234770" + "13_230499_202223@13", + "13_366349_390811@13", + "13_244872_234770@13" ] } } @@ -69928,21 +81654,26 @@ } ], "data": { - "uuid": "java-5-1141", + "uuid": "java-5-1170", "seg": [ [ [ "工厂", - "模式" + "模式", + "工厂模式" ], [ "抽象", "工厂", - "模式" + "模式", + "工厂模式" ] ] ], - "level": "2", + "level": { + "min": 0.723111111111111, + "max": 0.7232222222222222 + }, "related_data": {} } } @@ -69953,7 +81684,7 @@ { "概述": { "data": { - "uuid": "java-6-373", + "uuid": "java-6-375", "seg": [ [ [ @@ -69961,14 +81692,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7232222222222222, + "max": 0.7233333333333333 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1142", + "uuid": "java-5-1171", "seg": [ [ [ @@ -69978,14 +81712,23 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.7232222222222222, + "max": 0.7233333333333333 + }, + "related_data": { + "qa": { + "data_id": [ + "13_8210_4491@13" + ] + } + } } } } ], "data": { - "uuid": "java-4-1141", + "uuid": "java-4-1152", "seg": [ [ [ @@ -69994,14 +81737,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7227777777777777, + "max": 0.7233333333333333 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-600", + "uuid": "java-3-593", "seg": [ [ [ @@ -70009,11 +81755,15 @@ ], [ "技术", - "基础" + "基础", + "技术基础" ] ] ], - "level": "1", + "level": { + "min": 0.7222222222222222, + "max": 0.7233333333333333 + }, "related_data": {} } } @@ -70027,7 +81777,7 @@ { "准备MyBatis环境": { "data": { - "uuid": "java-5-1143", + "uuid": "java-5-1172", "seg": [ [ [ @@ -70036,20 +81786,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7233333333333333, + "max": 0.7233641975308641 + }, "related_data": { "qa": { "data_id": [ - "13_1074279_1277004", - "13_7395440_53337950", - "13_7396649_53340647", - "13_719420_713473", - "13_674166_503684", - "13_696389_580070", - "13_6374151_44659638", - "13_839432_948749", - "13_947536_1087104", - "13_839434_948750" + "13_1074279_1277004@13", + "13_7395440_53337950@13", + "13_7396649_53340647@13", + "13_719420_713473@13", + "13_674166_503684@13", + "13_696389_580070@13", + "13_6374151_44659638@13", + "13_839432_948749@13", + "13_947536_1087104@13", + "13_839434_948750@13" ] } } @@ -70059,17 +81812,21 @@ { "MyBatis的核心组件": { "data": { - "uuid": "java-5-1144", + "uuid": "java-5-1173", "seg": [ [ [ "mybatis", "核心", - "组件" + "组件", + "核心组件" ] ] ], - "level": "1", + "level": { + "min": 0.7233641975308641, + "max": 0.723395061728395 + }, "related_data": {} } } @@ -70080,7 +81837,7 @@ { "使用XML构建SqlSessionFactory": { "data": { - "uuid": "java-6-374", + "uuid": "java-6-376", "seg": [ [ [ @@ -70090,7 +81847,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.723395061728395, + "max": 0.7234104938271604 + }, "related_data": {} } } @@ -70098,7 +81858,7 @@ { "使用代码创建SqlSessionFactory": { "data": { - "uuid": "java-6-375", + "uuid": "java-6-377", "seg": [ [ [ @@ -70107,20 +81867,17 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_771608_834236" - ] - } - } + "level": { + "min": 0.7234104938271604, + "max": 0.7234259259259259 + }, + "related_data": {} } } } ], "data": { - "uuid": "java-5-1145", + "uuid": "java-5-1174", "seg": [ [ [ @@ -70130,7 +81887,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.723395061728395, + "max": 0.7234259259259259 + }, "related_data": {} } } @@ -70138,7 +81898,7 @@ { "SqlSession": { "data": { - "uuid": "java-5-1146", + "uuid": "java-5-1175", "seg": [ [ [ @@ -70146,7 +81906,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7234259259259259, + "max": 0.7234567901234568 + }, "related_data": {} } } @@ -70157,7 +81920,7 @@ { "用XML实现映射器": { "data": { - "uuid": "java-6-376", + "uuid": "java-6-378", "seg": [ [ [ @@ -70166,7 +81929,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7234567901234568, + "max": 0.723462962962963 + }, "related_data": {} } } @@ -70174,7 +81940,7 @@ { "注解实现映射器": { "data": { - "uuid": "java-6-377", + "uuid": "java-6-379", "seg": [ [ [ @@ -70183,7 +81949,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.723462962962963, + "max": 0.7234691358024691 + }, "related_data": {} } } @@ -70191,7 +81960,7 @@ { "SqlSession发送SQL": { "data": { - "uuid": "java-6-378", + "uuid": "java-6-380", "seg": [ [ [ @@ -70201,7 +81970,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7234691358024691, + "max": 0.7234753086419753 + }, "related_data": {} } } @@ -70209,7 +81981,7 @@ { "用Mapper接口发送SQL": { "data": { - "uuid": "java-6-379", + "uuid": "java-6-381", "seg": [ [ [ @@ -70220,13 +81992,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7234753086419753, + "max": 0.7234814814814814 + }, "related_data": { "qa": { "data_id": [ - "13_767476_827103", - "13_366926_391989", - "13_771402_833944" + "13_767476_827103@13", + "13_366926_391989@13", + "13_771402_833944@13" ] } } @@ -70236,7 +82011,7 @@ { "对比两种发送SQL方式": { "data": { - "uuid": "java-6-380", + "uuid": "java-6-382", "seg": [ [ [ @@ -70246,14 +82021,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7234814814814814, + "max": 0.7234876543209876 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1147", + "uuid": "java-5-1176", "seg": [ [ [ @@ -70261,7 +82039,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7234567901234568, + "max": 0.7234876543209876 + }, "related_data": {} } } @@ -70272,7 +82053,7 @@ { "SqlSessionFactoryBuilder": { "data": { - "uuid": "java-6-381", + "uuid": "java-6-383", "seg": [ [ [ @@ -70280,7 +82061,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7234876543209876, + "max": 0.7234953703703704 + }, "related_data": {} } } @@ -70288,7 +82072,7 @@ { "SqlSessionFactory": { "data": { - "uuid": "java-6-382", + "uuid": "java-6-384", "seg": [ [ [ @@ -70296,7 +82080,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7234953703703704, + "max": 0.723503086419753 + }, "related_data": {} } } @@ -70304,7 +82091,7 @@ { "SqlSession": { "data": { - "uuid": "java-6-383", + "uuid": "java-6-385", "seg": [ [ [ @@ -70312,7 +82099,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.723503086419753, + "max": 0.7235108024691357 + }, "related_data": {} } } @@ -70320,7 +82110,7 @@ { "Mapper": { "data": { - "uuid": "java-6-384", + "uuid": "java-6-386", "seg": [ [ [ @@ -70328,14 +82118,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7235108024691357, + "max": 0.7235185185185184 + }, "related_data": { "qa": { "data_id": [ - "13_7447364_53427287", - "13_7441293_53417199", - "13_1080159_1285268", - "13_1069836_1271881" + "13_7447364_53427287@13", + "13_7441293_53417199@13", + "13_1080159_1285268@13", + "13_1069836_1271881@13" ] } } @@ -70344,7 +82137,7 @@ } ], "data": { - "uuid": "java-5-1148", + "uuid": "java-5-1177", "seg": [ [ [ @@ -70352,24 +82145,31 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7234876543209876, + "max": 0.7235185185185184 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1142", + "uuid": "java-4-1153", "seg": [ [ [ "mybatis", "核心", - "组件" + "组件", + "核心组件" ] ] ], - "level": "1", + "level": { + "min": 0.7233333333333333, + "max": 0.7235185185185184 + }, "related_data": {} } } @@ -70383,17 +82183,21 @@ { "property子元素": { "data": { - "uuid": "java-6-385", + "uuid": "java-6-387", "seg": [ [ [ "property", "子", - "元素" + "元素", + "子元素" ] ] ], - "level": "1", + "level": { + "min": 0.7235185185185184, + "max": 0.7235253772290808 + }, "related_data": {} } } @@ -70401,7 +82205,7 @@ { "使用properties文件": { "data": { - "uuid": "java-6-386", + "uuid": "java-6-388", "seg": [ [ [ @@ -70410,20 +82214,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7235253772290808, + "max": 0.7235322359396433 + }, "related_data": { "qa": { "data_id": [ - "13_698028_584470", - "13_7435517_53406138", - "13_7462150_53447576", - "13_747323_798465", - "13_7442080_53418866", - "13_344408_347562", - "13_1052058_1249598", - "13_653050_461394", - "13_767269_826826", - "13_220471_173399" + "13_698028_584470@13", + "13_7435517_53406138@13", + "13_7462150_53447576@13", + "13_747323_798465@13", + "13_7442080_53418866@13", + "13_344408_347562@13", + "13_1052058_1249598@13", + "13_653050_461394@13", + "13_767269_826826@13", + "13_220471_173399@13" ] } } @@ -70433,7 +82240,7 @@ { "使用程序传递方式传递参数": { "data": { - "uuid": "java-6-387", + "uuid": "java-6-389", "seg": [ [ [ @@ -70444,11 +82251,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7235322359396433, + "max": 0.7235390946502057 + }, "related_data": { "qa": { "data_id": [ - "13_650082_456515" + "13_650082_456515@13", + "13_714174_705955@13" ] } } @@ -70457,7 +82268,7 @@ } ], "data": { - "uuid": "java-5-1149", + "uuid": "java-5-1178", "seg": [ [ [ @@ -70466,7 +82277,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7235185185185184, + "max": 0.7235390946502057 + }, "related_data": {} } } @@ -70474,7 +82288,7 @@ { "settings设置": { "data": { - "uuid": "java-5-1150", + "uuid": "java-5-1179", "seg": [ [ [ @@ -70483,7 +82297,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7235390946502057, + "max": 0.723559670781893 + }, "related_data": {} } } @@ -70494,17 +82311,21 @@ { "系统定义别名": { "data": { - "uuid": "java-6-388", + "uuid": "java-6-390", "seg": [ [ [ "系统", "定义", - "别名" + "别名", + "系统定义" ] ] ], - "level": "1", + "level": { + "min": 0.723559670781893, + "max": 0.7235699588477366 + }, "related_data": {} } } @@ -70512,7 +82333,7 @@ { "自定义别名": { "data": { - "uuid": "java-6-389", + "uuid": "java-6-391", "seg": [ [ [ @@ -70521,11 +82342,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7235699588477366, + "max": 0.7235802469135801 + }, "related_data": { "qa": { "data_id": [ - "13_7435596_53406436" + "13_7435596_53406436@13" ] } } @@ -70534,7 +82358,7 @@ } ], "data": { - "uuid": "java-5-1151", + "uuid": "java-5-1180", "seg": [ [ [ @@ -70543,7 +82367,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.723559670781893, + "max": 0.7235802469135801 + }, "related_data": {} } } @@ -70554,17 +82381,21 @@ { "系统定义的typeHandler": { "data": { - "uuid": "java-6-390", + "uuid": "java-6-392", "seg": [ [ [ "系统", "定义", - "typehandler" + "typehandler", + "系统定义" ] ] ], - "level": "1", + "level": { + "min": 0.7235802469135801, + "max": 0.723585390946502 + }, "related_data": {} } } @@ -70572,7 +82403,7 @@ { "自定义typeHandler": { "data": { - "uuid": "java-6-391", + "uuid": "java-6-393", "seg": [ [ [ @@ -70581,11 +82412,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.723585390946502, + "max": 0.7235905349794238 + }, "related_data": { "qa": { "data_id": [ - "13_760257_816924" + "13_760257_816924@13" ] } } @@ -70595,7 +82429,7 @@ { "枚举typeHandler": { "data": { - "uuid": "java-6-392", + "uuid": "java-6-394", "seg": [ [ [ @@ -70604,7 +82438,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7235905349794238, + "max": 0.7235956790123456 + }, "related_data": {} } } @@ -70612,7 +82449,7 @@ { "文件操作": { "data": { - "uuid": "java-6-393", + "uuid": "java-6-395", "seg": [ [ [ @@ -70621,14 +82458,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7235956790123456, + "max": 0.7236008230452674 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1152", + "uuid": "java-5-1181", "seg": [ [ [ @@ -70638,7 +82478,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7235802469135801, + "max": 0.7236008230452674 + }, "related_data": {} } } @@ -70646,17 +82489,21 @@ { "ObjectFactory(对象工厂)": { "data": { - "uuid": "java-5-1153", + "uuid": "java-5-1182", "seg": [ [ [ "objectfactory", "对象", - "工厂" + "工厂", + "对象工厂" ] ] ], - "level": "1", + "level": { + "min": 0.7236008230452674, + "max": 0.7236213991769547 + }, "related_data": {} } } @@ -70664,7 +82511,7 @@ { "插件": { "data": { - "uuid": "java-5-1154", + "uuid": "java-5-1183", "seg": [ [ [ @@ -70672,7 +82519,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7236213991769547, + "max": 0.7236419753086419 + }, "related_data": {} } } @@ -70683,17 +82533,21 @@ { "transactionManager(事务管理器)": { "data": { - "uuid": "java-6-394", + "uuid": "java-6-396", "seg": [ [ [ "transactionmanager", "事务", - "管理器" + "管理器", + "事务管理器" ] ] ], - "level": "1", + "level": { + "min": 0.7236419753086419, + "max": 0.7236522633744855 + }, "related_data": {} } } @@ -70701,24 +82555,35 @@ { "environment数据源环境": { "data": { - "uuid": "java-6-395", + "uuid": "java-6-397", "seg": [ [ [ "environment", "数据源", - "环境" + "环境", + "数据源环境" ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.7236522633744855, + "max": 0.7236625514403291 + }, + "related_data": { + "qa": { + "data_id": [ + "13_659135_472673@13", + "13_7441146_53416956@13" + ] + } + } } } } ], "data": { - "uuid": "java-5-1155", + "uuid": "java-5-1184", "seg": [ [ [ @@ -70728,7 +82593,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7236419753086419, + "max": 0.7236625514403291 + }, "related_data": {} } } @@ -70739,7 +82607,7 @@ { "使用系统默认的databaseIdProvider": { "data": { - "uuid": "java-6-396", + "uuid": "java-6-398", "seg": [ [ [ @@ -70749,7 +82617,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7236625514403291, + "max": 0.7236728395061727 + }, "related_data": {} } } @@ -70757,34 +82628,44 @@ { "不使用系统规则": { "data": { - "uuid": "java-6-397", + "uuid": "java-6-399", "seg": [ [ [ "系统", - "规则" + "规则", + "不使用", + "系统规则" ] ] ], - "level": "2", + "level": { + "min": 0.7236728395061727, + "max": 0.7236831275720164 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1156", + "uuid": "java-5-1185", "seg": [ [ [ "databaseidprovider", "数据库", "厂商", - "标识" + "标识", + "数据库厂商", + "厂商标识" ] ] ], - "level": "1", + "level": { + "min": 0.7236625514403291, + "max": 0.7236831275720164 + }, "related_data": {} } } @@ -70792,7 +82673,7 @@ { "引入映射器的方法": { "data": { - "uuid": "java-5-1157", + "uuid": "java-5-1186", "seg": [ [ [ @@ -70802,14 +82683,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7236831275720164, + "max": 0.7237037037037036 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1143", + "uuid": "java-4-1154", "seg": [ [ [ @@ -70818,7 +82702,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7235185185185184, + "max": 0.7237037037037036 + }, "related_data": {} } } @@ -70832,7 +82719,7 @@ { "简单的select元素的应用": { "data": { - "uuid": "java-6-398", + "uuid": "java-6-400", "seg": [ [ [ @@ -70841,20 +82728,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7237037037037036, + "max": 0.7237078189300411 + }, "related_data": { "qa": { "data_id": [ - "13_346996_352719", - "13_200150_120034", - "13_718499_712206", - "13_719609_713833", - "13_653659_462540", - "13_7439895_53414756", - "13_7464483_53450919", - "13_1094427_1304705", - "13_766240_825702", - "13_695021_576586" + "13_346996_352719@13", + "13_200150_120034@13", + "13_718499_712206@13", + "13_719609_713833@13", + "13_653659_462540@13", + "13_7439895_53414756@13", + "13_7464483_53450919@13", + "13_1094427_1304705@13", + "13_766240_825702@13", + "13_695021_576586@13" ] } } @@ -70864,7 +82754,7 @@ { "自动映射和驼峰映射": { "data": { - "uuid": "java-6-399", + "uuid": "java-6-401", "seg": [ [ [ @@ -70877,7 +82767,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7237078189300411, + "max": 0.7237119341563786 + }, "related_data": {} } } @@ -70885,7 +82778,7 @@ { "传递多个参数": { "data": { - "uuid": "java-6-400", + "uuid": "java-6-402", "seg": [ [ [ @@ -70894,7 +82787,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7237119341563786, + "max": 0.7237160493827159 + }, "related_data": {} } } @@ -70902,17 +82798,21 @@ { "使用resultMap映射结果集": { "data": { - "uuid": "java-6-401", + "uuid": "java-6-403", "seg": [ [ [ "resultmap", "映射", - "集" + "集", + "结果集" ] ] ], - "level": "1", + "level": { + "min": 0.7237160493827159, + "max": 0.7237201646090534 + }, "related_data": {} } } @@ -70920,7 +82820,7 @@ { "分页参数RowBounds": { "data": { - "uuid": "java-6-402", + "uuid": "java-6-404", "seg": [ [ [ @@ -70929,14 +82829,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7237201646090534, + "max": 0.7237242798353909 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1158", + "uuid": "java-5-1187", "seg": [ [ [ @@ -70947,7 +82850,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7237037037037036, + "max": 0.7237242798353909 + }, "related_data": {} } } @@ -70958,7 +82864,7 @@ { "简单的insert语句的应用": { "data": { - "uuid": "java-6-403", + "uuid": "java-6-405", "seg": [ [ [ @@ -70967,17 +82873,20 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7237242798353909, + "max": 0.7237311385459533 + }, "related_data": { "qa": { "data_id": [ - "13_792577_881387", - "13_378091_409006", - "13_158760_23371", - "13_7445419_53423997", - "13_1094547_1304893", - "13_744738_791293", - "13_776798_844629" + "13_792577_881387@13", + "13_378091_409006@13", + "13_158760_23371@13", + "13_7445419_53423997@13", + "13_1094547_1304893@13", + "13_744738_791293@13", + "13_776798_844629@13" ] } } @@ -70987,7 +82896,7 @@ { "主键回填": { "data": { - "uuid": "java-6-404", + "uuid": "java-6-406", "seg": [ [ [ @@ -70996,11 +82905,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7237311385459533, + "max": 0.7237379972565158 + }, "related_data": { "qa": { "data_id": [ - "13_345491_349790" + "13_345491_349790@13" ] } } @@ -71010,7 +82922,7 @@ { "自定义主键": { "data": { - "uuid": "java-6-405", + "uuid": "java-6-407", "seg": [ [ [ @@ -71019,14 +82931,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7237379972565158, + "max": 0.7237448559670782 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1159", + "uuid": "java-5-1188", "seg": [ [ [ @@ -71037,7 +82952,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7237242798353909, + "max": 0.7237448559670782 + }, "related_data": {} } } @@ -71045,7 +82963,7 @@ { "update元素和delete元素": { "data": { - "uuid": "java-5-1160", + "uuid": "java-5-1189", "seg": [ [ [ @@ -71058,11 +82976,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7237448559670782, + "max": 0.7237654320987653 + }, "related_data": { "qa": { "data_id": [ - "13_764683_823412" + "13_764683_823412@13" ] } } @@ -71072,7 +82993,7 @@ { "sql元素": { "data": { - "uuid": "java-5-1161", + "uuid": "java-5-1190", "seg": [ [ [ @@ -71081,7 +83002,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7237654320987653, + "max": 0.7237860082304526 + }, "related_data": {} } } @@ -71092,23 +83016,27 @@ { "存储过程参数支持": { "data": { - "uuid": "java-6-406", + "uuid": "java-6-408", "seg": [ [ [ "存储", "过程", "参数", - "支持" + "支持", + "过程参数" ] ] ], - "level": "1", + "level": { + "min": 0.7237860082304526, + "max": 0.7237962962962963 + }, "related_data": { "qa": { "data_id": [ - "13_855796_980900", - "13_390243_431654" + "13_855796_980900@13", + "13_390243_431654@13" ] } } @@ -71118,7 +83046,7 @@ { "特殊字符串的替换和处理(#和$)": { "data": { - "uuid": "java-6-407", + "uuid": "java-6-409", "seg": [ [ [ @@ -71129,11 +83057,14 @@ [] ] ], - "level": "1", + "level": { + "min": 0.7237962962962963, + "max": 0.7238065843621398 + }, "related_data": { "qa": { "data_id": [ - "13_7446430_53425779" + "13_7446430_53425779@13" ] } } @@ -71142,7 +83073,7 @@ } ], "data": { - "uuid": "java-5-1162", + "uuid": "java-5-1191", "seg": [ [ [ @@ -71150,7 +83081,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7237860082304526, + "max": 0.7238065843621398 + }, "related_data": {} } } @@ -71161,7 +83095,7 @@ { "resultMap元素的构成": { "data": { - "uuid": "java-6-408", + "uuid": "java-6-410", "seg": [ [ [ @@ -71170,19 +83104,22 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7238065843621398, + "max": 0.7238134430727022 + }, "related_data": { "qa": { "data_id": [ - "13_357514_374286", - "13_357513_374268", - "13_367347_392868", - "13_661850_477108", - "13_844_1515", - "13_195305_104857", - "13_349797_357873", - "13_675693_510957", - "13_7429595_53396500" + "13_357514_374286@13", + "13_357513_374268@13", + "13_367347_392868@13", + "13_661850_477108@13", + "13_844_1515@13", + "13_195305_104857@13", + "13_349797_357873@13", + "13_675693_510957@13", + "13_7429595_53396500@13" ] } } @@ -71192,17 +83129,21 @@ { "使用map存储结果集": { "data": { - "uuid": "java-6-409", + "uuid": "java-6-411", "seg": [ [ [ "map", "存储", - "集" + "集", + "结果集" ] ] ], - "level": "1", + "level": { + "min": 0.7238134430727022, + "max": 0.7238203017832647 + }, "related_data": {} } } @@ -71210,24 +83151,28 @@ { "使用POJO存储结果集": { "data": { - "uuid": "java-6-410", + "uuid": "java-6-412", "seg": [ [ [ "pojo", "存储", - "集" + "集", + "结果集" ] ] ], - "level": "1", + "level": { + "min": 0.7238203017832647, + "max": 0.7238271604938271 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1163", + "uuid": "java-5-1192", "seg": [ [ [ @@ -71236,7 +83181,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7238065843621398, + "max": 0.7238271604938271 + }, "related_data": {} } } @@ -71247,7 +83195,7 @@ { "MyBatis中的级联": { "data": { - "uuid": "java-6-411", + "uuid": "java-6-413", "seg": [ [ [ @@ -71256,7 +83204,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7238271604938271, + "max": 0.7238305898491083 + }, "related_data": {} } } @@ -71264,7 +83215,7 @@ { "建立POJO": { "data": { - "uuid": "java-6-412", + "uuid": "java-6-414", "seg": [ [ [ @@ -71273,11 +83224,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7238305898491083, + "max": 0.7238340192043895 + }, "related_data": { "qa": { "data_id": [ - "13_1102259_1316632" + "13_1102259_1316632@13" ] } } @@ -71287,7 +83241,7 @@ { "配置映射文件": { "data": { - "uuid": "java-6-413", + "uuid": "java-6-415", "seg": [ [ [ @@ -71297,7 +83251,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7238340192043895, + "max": 0.7238374485596707 + }, "related_data": {} } } @@ -71305,7 +83262,7 @@ { "延迟加载": { "data": { - "uuid": "java-6-414", + "uuid": "java-6-416", "seg": [ [ [ @@ -71314,7 +83271,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7238374485596707, + "max": 0.7238408779149519 + }, "related_data": {} } } @@ -71322,7 +83282,7 @@ { "另一种级联": { "data": { - "uuid": "java-6-415", + "uuid": "java-6-417", "seg": [ [ [ @@ -71330,11 +83290,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7238408779149519, + "max": 0.7238443072702331 + }, "related_data": { "qa": { "data_id": [ - "13_692111_566129" + "13_692111_566129@13" ] } } @@ -71344,7 +83307,7 @@ { "多对多级联": { "data": { - "uuid": "java-6-416", + "uuid": "java-6-418", "seg": [ [ [ @@ -71352,14 +83315,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7238443072702331, + "max": 0.7238477366255143 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1164", + "uuid": "java-5-1193", "seg": [ [ [ @@ -71367,7 +83333,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7238271604938271, + "max": 0.7238477366255143 + }, "related_data": {} } } @@ -71378,7 +83347,7 @@ { "一级缓存和二级缓存": { "data": { - "uuid": "java-6-417", + "uuid": "java-6-419", "seg": [ [ [ @@ -71389,14 +83358,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7238477366255143, + "max": 0.723858024691358 + }, "related_data": { "qa": { "data_id": [ - "13_169991_46226", - "13_1069107_1269969", - "13_677561_519634", - "13_1061836_1259650" + "13_169991_46226@13", + "13_1069107_1269969@13", + "13_677561_519634@13", + "13_1061836_1259650@13" ] } } @@ -71406,7 +83378,7 @@ { "缓存配置项、自定义和引用": { "data": { - "uuid": "java-6-418", + "uuid": "java-6-420", "seg": [ [ [ @@ -71422,14 +83394,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.723858024691358, + "max": 0.7238683127572015 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1165", + "uuid": "java-5-1194", "seg": [ [ [ @@ -71437,7 +83412,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7238477366255143, + "max": 0.7238683127572015 + }, "related_data": {} } } @@ -71448,7 +83426,7 @@ { "IN和OUT参数存储过程": { "data": { - "uuid": "java-6-419", + "uuid": "java-6-421", "seg": [ [ [ @@ -71462,20 +83440,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7238683127572015, + "max": 0.7238786008230451 + }, "related_data": { "qa": { "data_id": [ - "13_366309_390791", - "13_227799_192539", - "13_662268_484303", - "13_767844_838975", - "13_704735_600584", - "13_242721_230425", - "13_366325_390686", - "13_7420138_53378224", - "13_997398_1175877", - "13_7410347_53361030" + "13_366309_390791@13", + "13_227799_192539@13", + "13_662268_484303@13", + "13_767844_838975@13", + "13_704735_600584@13", + "13_242721_230425@13", + "13_366325_390686@13", + "13_7420138_53378224@13", + "13_997398_1175877@13", + "13_7410347_53361030@13" ] } } @@ -71485,7 +83466,7 @@ { "游标的使用": { "data": { - "uuid": "java-6-420", + "uuid": "java-6-422", "seg": [ [ [ @@ -71493,14 +83474,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7238786008230451, + "max": 0.7238888888888888 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1166", + "uuid": "java-5-1195", "seg": [ [ [ @@ -71509,14 +83493,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7238683127572015, + "max": 0.7238888888888888 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1144", + "uuid": "java-4-1155", "seg": [ [ [ @@ -71524,7 +83511,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7237037037037036, + "max": 0.7238888888888888 + }, "related_data": {} } } @@ -71535,7 +83525,7 @@ { "if元素": { "data": { - "uuid": "java-5-1167", + "uuid": "java-5-1196", "seg": [ [ [ @@ -71544,11 +83534,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7238888888888888, + "max": 0.7239197530864196 + }, "related_data": { "qa": { "data_id": [ - "13_678351_522304" + "13_678351_522304@13" ] } } @@ -71558,7 +83551,7 @@ { "choose、when、otherwise元素": { "data": { - "uuid": "java-5-1168", + "uuid": "java-5-1197", "seg": [ [ [ @@ -71573,7 +83566,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7239197530864196, + "max": 0.7239506172839506 + }, "related_data": {} } } @@ -71581,7 +83577,7 @@ { "trim、where、set元素": { "data": { - "uuid": "java-5-1169", + "uuid": "java-5-1198", "seg": [ [ [ @@ -71596,15 +83592,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7239506172839506, + "max": 0.7239814814814814 + }, "related_data": { "qa": { "data_id": [ - "13_7395308_53337625", - "13_751369_804959", - "13_770751_832746", - "13_743214_799349", - "13_648307_452735" + "13_7395308_53337625@13", + "13_751369_804959@13", + "13_743214_799349@13", + "13_648307_452735@13" ] } } @@ -71614,7 +83612,7 @@ { "foreach元素": { "data": { - "uuid": "java-5-1170", + "uuid": "java-5-1199", "seg": [ [ [ @@ -71624,7 +83622,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7239814814814814, + "max": 0.7240123456790123 + }, "related_data": {} } } @@ -71632,7 +83633,7 @@ { "用test的属性判断字符串": { "data": { - "uuid": "java-5-1171", + "uuid": "java-5-1200", "seg": [ [ [ @@ -71643,13 +83644,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7240123456790123, + "max": 0.7240432098765432 + }, "related_data": { "qa": { "data_id": [ - "13_7396172_53339430", - "13_759352_815609", - "13_710478_668605" + "13_7396172_53339430@13", + "13_759352_815609@13", + "13_710478_668605@13" ] } } @@ -71659,7 +83663,7 @@ { "bind元素": { "data": { - "uuid": "java-5-1172", + "uuid": "java-5-1201", "seg": [ [ [ @@ -71668,14 +83672,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7240432098765432, + "max": 0.7240740740740741 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1145", + "uuid": "java-4-1156", "seg": [ [ [ @@ -71684,11 +83691,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7238888888888888, + "max": 0.7240740740740741 + }, "related_data": { "qa": { "data_id": [ - "13_7463881_53450148" + "13_7463881_53450148@13" ] } } @@ -71704,7 +83714,7 @@ { "构建Configuration": { "data": { - "uuid": "java-6-421", + "uuid": "java-6-423", "seg": [ [ [ @@ -71713,11 +83723,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7240740740740741, + "max": 0.7241049382716049 + }, "related_data": { "qa": { "data_id": [ - "13_680058_529173" + "13_680058_529173@13" ] } } @@ -71727,7 +83740,7 @@ { "构建映射器的内部组成": { "data": { - "uuid": "java-6-422", + "uuid": "java-6-424", "seg": [ [ [ @@ -71737,7 +83750,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7241049382716049, + "max": 0.7241358024691358 + }, "related_data": {} } } @@ -71745,7 +83761,7 @@ { "构建SqlSessionFactory": { "data": { - "uuid": "java-6-423", + "uuid": "java-6-425", "seg": [ [ [ @@ -71754,14 +83770,23 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.7241358024691358, + "max": 0.7241666666666666 + }, + "related_data": { + "qa": { + "data_id": [ + "13_771608_834236@13" + ] + } + } } } } ], "data": { - "uuid": "java-5-1173", + "uuid": "java-5-1202", "seg": [ [ [ @@ -71771,7 +83796,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7240740740740741, + "max": 0.7241666666666666 + }, "related_data": {} } } @@ -71782,18 +83810,22 @@ { "映射器(Mapper)的动态代理": { "data": { - "uuid": "java-6-424", + "uuid": "java-6-426", "seg": [ [ [ "映射器", "mapper", "动态", - "代理" + "代理", + "动态代理" ] ] ], - "level": "1", + "level": { + "min": 0.7241666666666666, + "max": 0.724212962962963 + }, "related_data": {} } } @@ -71801,7 +83833,7 @@ { "SqlSession下的四大对象": { "data": { - "uuid": "java-6-425", + "uuid": "java-6-427", "seg": [ [ [ @@ -71811,14 +83843,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.724212962962963, + "max": 0.7242592592592593 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1174", + "uuid": "java-5-1203", "seg": [ [ [ @@ -71828,20 +83863,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7241666666666666, + "max": 0.7242592592592593 + }, "related_data": { "qa": { "data_id": [ - "13_7446545_53426000", - "13_7459410_53444321", - "13_745020_792074", - "13_7440518_53415820", - "13_7436236_53407761", - "13_7461265_53446337", - "13_7438517_53411894", - "13_7433341_53403403", - "13_7459588_53444585", - "13_1095921_1307762" + "13_7446545_53426000@13", + "13_7459410_53444321@13", + "13_745020_792074@13", + "13_7440518_53415820@13", + "13_7436236_53407761@13", + "13_7461265_53446337@13", + "13_7438517_53411894@13", + "13_7433341_53403403@13", + "13_7459588_53444585@13", + "13_1095921_1307762@13" ] } } @@ -71850,7 +83888,7 @@ } ], "data": { - "uuid": "java-4-1146", + "uuid": "java-4-1157", "seg": [ [ [ @@ -71863,7 +83901,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7240740740740741, + "max": 0.7242592592592593 + }, "related_data": {} } } @@ -71874,7 +83915,7 @@ { "插件接口": { "data": { - "uuid": "java-5-1175", + "uuid": "java-5-1204", "seg": [ [ [ @@ -71882,7 +83923,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7242592592592593, + "max": 0.7243055555555555 + }, "related_data": {} } } @@ -71890,7 +83934,7 @@ { "插件的初始化": { "data": { - "uuid": "java-5-1176", + "uuid": "java-5-1205", "seg": [ [ [ @@ -71899,18 +83943,21 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7243055555555555, + "max": 0.7243518518518519 + }, "related_data": { "qa": { "data_id": [ - "13_1044358_1241766", - "13_175639_56998", - "13_7459818_53444824", - "13_197822_112473", - "13_250330_247315", - "13_768339_830390", - "13_173583_52919", - "13_358558_376881" + "13_1044358_1241766@13", + "13_175639_56998@13", + "13_7459818_53444824@13", + "13_197822_112473@13", + "13_250330_247315@13", + "13_768339_830390@13", + "13_173583_52919@13", + "13_358558_376881@13" ] } } @@ -71920,7 +83967,7 @@ { "插件的代理和反射设计": { "data": { - "uuid": "java-5-1177", + "uuid": "java-5-1206", "seg": [ [ [ @@ -71933,7 +83980,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7243518518518519, + "max": 0.7243981481481482 + }, "related_data": {} } } @@ -71941,24 +83991,28 @@ { "常用的工具类——MetaObject": { "data": { - "uuid": "java-5-1178", + "uuid": "java-5-1207", "seg": [ [ [ "工具", "类", - "metaobject" + "metaobject", + "工具类" ] ] ], - "level": "1", + "level": { + "min": 0.7243981481481482, + "max": 0.7244444444444444 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1147", + "uuid": "java-4-1158", "seg": [ [ [ @@ -71966,14 +84020,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7242592592592593, + "max": 0.7244444444444444 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-601", + "uuid": "java-3-594", "seg": [ [ [ @@ -71984,7 +84041,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7233333333333333, + "max": 0.7244444444444444 + }, "related_data": {} } } @@ -72001,7 +84061,7 @@ { "Spring的简史": { "data": { - "uuid": "java-6-426", + "uuid": "java-6-428", "seg": [ [ [ @@ -72010,20 +84070,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7244444444444444, + "max": 0.7245061728395061 + }, "related_data": { "qa": { "data_id": [ - "13_7447261_53426809", - "13_248500_244068", - "13_1094041_1303919", - "13_7436273_53408163", - "13_1073684_1276046", - "13_744587_790888", - "13_7414059_53366478", - "13_1101826_1316308", - "13_718612_712642", - "13_774780_838765" + "13_7447261_53426809@13", + "13_248500_244068@13", + "13_1094041_1303919@13", + "13_7436273_53408163@13", + "13_1073684_1276046@13", + "13_744587_790888@13", + "13_7414059_53366478@13", + "13_1101826_1316308@13", + "13_718612_712642@13", + "13_774780_838765@13" ] } } @@ -72032,7 +84095,7 @@ } ], "data": { - "uuid": "java-5-1179", + "uuid": "java-5-1208", "seg": [ [ [ @@ -72041,7 +84104,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7244444444444444, + "max": 0.7245061728395061 + }, "related_data": {} } } @@ -72052,7 +84118,7 @@ { "主动创建对象": { "data": { - "uuid": "java-6-427", + "uuid": "java-6-429", "seg": [ [ [ @@ -72061,12 +84127,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7245061728395061, + "max": 0.7245267489711934 + }, "related_data": { "qa": { "data_id": [ - "13_171610_48688", - "13_240181_224350" + "13_171610_48688@13", + "13_240181_224350@13" ] } } @@ -72076,7 +84145,7 @@ { "被动创建对象": { "data": { - "uuid": "java-6-428", + "uuid": "java-6-430", "seg": [ [ [ @@ -72085,7 +84154,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7245267489711934, + "max": 0.7245473251028807 + }, "related_data": {} } } @@ -72093,7 +84165,7 @@ { "Spring IoC阐述": { "data": { - "uuid": "java-6-429", + "uuid": "java-6-431", "seg": [ [ [ @@ -72103,14 +84175,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7245473251028807, + "max": 0.7245679012345679 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1180", + "uuid": "java-5-1209", "seg": [ [ [ @@ -72120,7 +84195,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7245061728395061, + "max": 0.7245679012345679 + }, "related_data": {} } } @@ -72131,7 +84209,7 @@ { "Spring IoC容器的设计": { "data": { - "uuid": "java-6-430", + "uuid": "java-6-432", "seg": [ [ [ @@ -72142,7 +84220,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7245679012345679, + "max": 0.7245884773662552 + }, "related_data": {} } } @@ -72150,7 +84231,7 @@ { "Spring IoC容器的初始化和依赖注入": { "data": { - "uuid": "java-6-431", + "uuid": "java-6-433", "seg": [ [ [ @@ -72165,7 +84246,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7245884773662552, + "max": 0.7246090534979424 + }, "related_data": {} } } @@ -72173,7 +84257,7 @@ { "Spring Bean的生命周期": { "data": { - "uuid": "java-6-432", + "uuid": "java-6-434", "seg": [ [ [ @@ -72183,20 +84267,17 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_1053963_1251218" - ] - } - } + "level": { + "min": 0.7246090534979424, + "max": 0.7246296296296296 + }, + "related_data": {} } } } ], "data": { - "uuid": "java-5-1181", + "uuid": "java-5-1210", "seg": [ [ [ @@ -72206,14 +84287,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7245679012345679, + "max": 0.7246296296296296 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1148", + "uuid": "java-4-1159", "seg": [ [ [ @@ -72223,7 +84307,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7244444444444444, + "max": 0.7246296296296296 + }, "related_data": {} } } @@ -72237,7 +84324,7 @@ { "构造器注入": { "data": { - "uuid": "java-6-433", + "uuid": "java-6-435", "seg": [ [ [ @@ -72247,7 +84334,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7246296296296296, + "max": 0.7246358024691358 + }, "related_data": {} } } @@ -72255,7 +84345,7 @@ { "使用setter注入": { "data": { - "uuid": "java-6-434", + "uuid": "java-6-436", "seg": [ [ [ @@ -72264,13 +84354,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7246358024691358, + "max": 0.7246419753086419 + }, "related_data": { "qa": { "data_id": [ - "13_748994_801277", - "13_1104552_1318732", - "13_906265_1041538" + "13_748994_801277@13", + "13_1104552_1318732@13", + "13_906265_1041538@13" ] } } @@ -72280,7 +84373,7 @@ { "接口注入": { "data": { - "uuid": "java-6-435", + "uuid": "java-6-437", "seg": [ [ [ @@ -72289,11 +84382,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7246419753086419, + "max": 0.7246481481481482 + }, "related_data": { "qa": { "data_id": [ - "13_7466287_53453557" + "13_7466287_53453557@13" ] } } @@ -72302,7 +84398,7 @@ } ], "data": { - "uuid": "java-5-1182", + "uuid": "java-5-1211", "seg": [ [ [ @@ -72312,7 +84408,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7246296296296296, + "max": 0.7246481481481482 + }, "related_data": {} } } @@ -72320,7 +84419,7 @@ { "装配Bean概述": { "data": { - "uuid": "java-5-1183", + "uuid": "java-5-1212", "seg": [ [ [ @@ -72330,7 +84429,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7246481481481482, + "max": 0.7246666666666667 + }, "related_data": {} } } @@ -72341,7 +84443,7 @@ { "装配简易值": { "data": { - "uuid": "java-6-436", + "uuid": "java-6-438", "seg": [ [ [ @@ -72351,13 +84453,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7246666666666667, + "max": 0.7246728395061729 + }, "related_data": { "qa": { "data_id": [ - "13_7457952_53442446", - "13_237112_216840", - "13_7447927_53427875" + "13_7457952_53442446@13", + "13_237112_216840@13", + "13_7447927_53427875@13" ] } } @@ -72367,7 +84472,7 @@ { "装配集合": { "data": { - "uuid": "java-6-437", + "uuid": "java-6-439", "seg": [ [ [ @@ -72376,7 +84481,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7246728395061729, + "max": 0.724679012345679 + }, "related_data": {} } } @@ -72384,24 +84492,28 @@ { "命名空间装配": { "data": { - "uuid": "java-6-438", + "uuid": "java-6-440", "seg": [ [ [ "命名", "空间", - "装配" + "装配", + "命名空间" ] ] ], - "level": "1", + "level": { + "min": 0.724679012345679, + "max": 0.7246851851851852 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1184", + "uuid": "java-5-1213", "seg": [ [ [ @@ -72412,7 +84524,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7246666666666667, + "max": 0.7246851851851852 + }, "related_data": {} } } @@ -72423,7 +84538,7 @@ { "使用@Component装配Bean": { "data": { - "uuid": "java-6-439", + "uuid": "java-6-441", "seg": [ [ [ @@ -72433,11 +84548,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7246851851851852, + "max": 0.7246882716049383 + }, "related_data": { "qa": { "data_id": [ - "13_761116_818379" + "13_761116_818379@13" ] } } @@ -72447,7 +84565,7 @@ { "自动装配——@Autowired": { "data": { - "uuid": "java-6-440", + "uuid": "java-6-442", "seg": [ [ [ @@ -72457,14 +84575,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7246882716049383, + "max": 0.7246913580246914 + }, "related_data": { "qa": { "data_id": [ - "13_899587_1035893", - "13_224870_185012", - "13_7398762_53345258", - "13_670755_493751" + "13_899587_1035893@13", + "13_224870_185012@13", + "13_7398762_53345258@13", + "13_670755_493751@13" ] } } @@ -72474,7 +84595,7 @@ { "自动装配的歧义性(@Primary和@Qualifier)": { "data": { - "uuid": "java-6-441", + "uuid": "java-6-443", "seg": [ [ [ @@ -72482,7 +84603,8 @@ "装配", "歧义", "性", - "primary" + "primary", + "歧义性" ], [ "qual", @@ -72491,15 +84613,24 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.7246913580246914, + "max": 0.7246944444444445 + }, + "related_data": { + "qa": { + "data_id": [ + "13_1053963_1251218@13" + ] + } + } } } }, { "装载带有参数的构造方法类": { "data": { - "uuid": "java-6-442", + "uuid": "java-6-444", "seg": [ [ [ @@ -72507,15 +84638,19 @@ "带有", "参数", "构造方法", - "类" + "类", + "构造方法类" ] ] ], - "level": "1", + "level": { + "min": 0.7246944444444445, + "max": 0.7246975308641975 + }, "related_data": { "qa": { "data_id": [ - "13_1056176_1253320" + "13_1056176_1253320@13" ] } } @@ -72525,7 +84660,7 @@ { "使用@Bean装配Bean": { "data": { - "uuid": "java-6-443", + "uuid": "java-6-445", "seg": [ [ [ @@ -72534,20 +84669,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7246975308641975, + "max": 0.7247006172839506 + }, "related_data": { "qa": { "data_id": [ - "13_171575_48654", - "13_7454573_53437250", - "13_1059336_1256644", - "13_7442431_53419239", - "13_754143_809038", - "13_1096982_1309856", - "13_205356_135709", - "13_222465_178546", - "13_664341_481377", - "13_229884_198425" + "13_171575_48654@13", + "13_7454573_53437250@13", + "13_1059336_1256644@13", + "13_7442431_53419239@13", + "13_754143_809038@13", + "13_1096982_1309856@13", + "13_205356_135709@13", + "13_222465_178546@13", + "13_664341_481377@13", + "13_229884_198425@13" ] } } @@ -72557,7 +84695,7 @@ { "注解自定义Bean的初始化和销毁方法": { "data": { - "uuid": "java-6-444", + "uuid": "java-6-446", "seg": [ [ [ @@ -72572,14 +84710,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7247006172839506, + "max": 0.7247037037037037 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1185", + "uuid": "java-5-1214", "seg": [ [ [ @@ -72589,7 +84730,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7246851851851852, + "max": 0.7247037037037037 + }, "related_data": {} } } @@ -72597,7 +84741,7 @@ { "装配的混合使用": { "data": { - "uuid": "java-5-1186", + "uuid": "java-5-1215", "seg": [ [ [ @@ -72606,7 +84750,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7247037037037037, + "max": 0.7247222222222223 + }, "related_data": {} } } @@ -72617,7 +84764,7 @@ { "使用注解@Profile配置": { "data": { - "uuid": "java-6-445", + "uuid": "java-6-447", "seg": [ [ [ @@ -72627,7 +84774,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7247222222222223, + "max": 0.724725925925926 + }, "related_data": {} } } @@ -72635,7 +84785,7 @@ { "使用XML定义Profile": { "data": { - "uuid": "java-6-446", + "uuid": "java-6-448", "seg": [ [ [ @@ -72645,7 +84795,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.724725925925926, + "max": 0.7247296296296296 + }, "related_data": {} } } @@ -72653,7 +84806,7 @@ { "启动Profile": { "data": { - "uuid": "java-6-447", + "uuid": "java-6-449", "seg": [ [ [ @@ -72662,7 +84815,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7247296296296296, + "max": 0.7247333333333333 + }, "related_data": {} } } @@ -72670,7 +84826,7 @@ { "点睛": { "data": { - "uuid": "java-6-448", + "uuid": "java-6-450", "seg": [ [ [ @@ -72678,7 +84834,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7247333333333333, + "max": 0.724737037037037 + }, "related_data": {} } } @@ -72686,7 +84845,7 @@ { "演示": { "data": { - "uuid": "java-6-449", + "uuid": "java-6-451", "seg": [ [ [ @@ -72694,14 +84853,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.724737037037037, + "max": 0.7247407407407407 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1187", + "uuid": "java-5-1216", "seg": [ [ [ @@ -72709,7 +84871,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7247222222222223, + "max": 0.7247407407407407 + }, "related_data": {} } } @@ -72720,7 +84885,7 @@ { "使用注解方式加载属性文件": { "data": { - "uuid": "java-6-450", + "uuid": "java-6-452", "seg": [ [ [ @@ -72728,11 +84893,15 @@ "方式", "加载", "属性", - "文件" + "文件", + "属性文件" ] ] ], - "level": "1", + "level": { + "min": 0.7247407407407407, + "max": 0.72475 + }, "related_data": {} } } @@ -72740,7 +84909,7 @@ { "使用XML方式加载属性文件": { "data": { - "uuid": "java-6-451", + "uuid": "java-6-453", "seg": [ [ [ @@ -72748,18 +84917,22 @@ "方式", "加载", "属性", - "文件" + "文件", + "属性文件" ] ] ], - "level": "1", + "level": { + "min": 0.72475, + "max": 0.7247592592592592 + }, "related_data": { "qa": { "data_id": [ - "13_1051450_1253116", - "13_166601_39898", - "13_450232_437953", - "13_3498_4369" + "13_1051450_1253116@13", + "13_166601_39898@13", + "13_450232_437953@13", + "13_3498_4369@13" ] } } @@ -72768,7 +84941,7 @@ } ], "data": { - "uuid": "java-5-1188", + "uuid": "java-5-1217", "seg": [ [ [ @@ -72779,7 +84952,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7247407407407407, + "max": 0.7247592592592592 + }, "related_data": {} } } @@ -72787,18 +84963,22 @@ { "条件化装配Bean": { "data": { - "uuid": "java-5-1189", + "uuid": "java-5-1218", "seg": [ [ [ "条件", "化", "装配", - "bean" + "bean", + "条件化" ] ] ], - "level": "1", + "level": { + "min": 0.7247592592592592, + "max": 0.7247777777777777 + }, "related_data": {} } } @@ -72806,7 +84986,7 @@ { "Bean的作用域": { "data": { - "uuid": "java-5-1190", + "uuid": "java-5-1219", "seg": [ [ [ @@ -72815,7 +84995,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7247777777777777, + "max": 0.7247962962962963 + }, "related_data": {} } } @@ -72826,7 +85009,7 @@ { "Spring EL相关的类": { "data": { - "uuid": "java-6-452", + "uuid": "java-6-454", "seg": [ [ [ @@ -72837,12 +85020,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7247962962962963, + "max": 0.7248055555555555 + }, "related_data": { "qa": { "data_id": [ - "13_1065089_1264133", - "13_678940_524450" + "13_1065089_1264133@13", + "13_678940_524450@13" ] } } @@ -72852,7 +85038,7 @@ { "Spring EL运算": { "data": { - "uuid": "java-6-453", + "uuid": "java-6-455", "seg": [ [ [ @@ -72862,20 +85048,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7248055555555555, + "max": 0.7248148148148148 + }, "related_data": { "qa": { "data_id": [ - "13_220981_174561", - "13_658636_471863", - "13_656567_468414", - "13_378218_409407", - "13_187663_82691", - "13_679634_527227", - "13_230418_199714", - "13_202485_127504", - "13_770519_832363", - "13_377962_408768" + "13_658636_471863@13", + "13_656567_468414@13", + "13_378218_409407@13", + "13_187663_82691@13", + "13_679634_527227@13", + "13_230418_199714@13", + "13_202485_127504@13", + "13_377962_408768@13", + "13_1067926_1269243@13", + "13_770519_832363@13" ] } } @@ -72884,7 +85073,7 @@ } ], "data": { - "uuid": "java-5-1191", + "uuid": "java-5-1220", "seg": [ [ [ @@ -72894,14 +85083,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7247962962962963, + "max": 0.7248148148148148 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1149", + "uuid": "java-4-1160", "seg": [ [ [ @@ -72911,7 +85103,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7246296296296296, + "max": 0.7248148148148148 + }, "related_data": {} } } @@ -72925,7 +85120,7 @@ { "约定规则": { "data": { - "uuid": "java-6-454", + "uuid": "java-6-456", "seg": [ [ [ @@ -72934,7 +85129,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7248148148148148, + "max": 0.7248251028806584 + }, "related_data": {} } } @@ -72942,7 +85140,7 @@ { "读者的代码": { "data": { - "uuid": "java-6-455", + "uuid": "java-6-457", "seg": [ [ [ @@ -72950,7 +85148,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7248251028806584, + "max": 0.7248353909465021 + }, "related_data": {} } } @@ -72958,7 +85159,7 @@ { "笔者的代码": { "data": { - "uuid": "java-6-456", + "uuid": "java-6-458", "seg": [ [ [ @@ -72966,14 +85167,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7248353909465021, + "max": 0.7248456790123456 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1192", + "uuid": "java-5-1221", "seg": [ [ [ @@ -72982,7 +85186,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7248148148148148, + "max": 0.7248456790123456 + }, "related_data": {} } } @@ -72993,7 +85200,7 @@ { "AOP的概念和使用原因": { "data": { - "uuid": "java-6-457", + "uuid": "java-6-459", "seg": [ [ [ @@ -73005,20 +85212,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7248456790123456, + "max": 0.7248559670781892 + }, "related_data": { "qa": { "data_id": [ - "13_336149_330920", - "13_383093_418305", - "13_347582_353643", - "13_260546_271054", - "13_362605_381868", - "13_349079_356403", - "13_1071696_1273975", - "13_695538_578279", - "13_365932_389650", - "13_1092051_1299764" + "13_336149_330920@13", + "13_383093_418305@13", + "13_347582_353643@13", + "13_260546_271054@13", + "13_362605_381868@13", + "13_349079_356403@13", + "13_1071696_1273975@13", + "13_695538_578279@13", + "13_365932_389650@13", + "13_1092051_1299764@13" ] } } @@ -73028,7 +85238,7 @@ { "面向切面编程的术语": { "data": { - "uuid": "java-6-458", + "uuid": "java-6-460", "seg": [ [ [ @@ -73039,7 +85249,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7248559670781892, + "max": 0.7248662551440329 + }, "related_data": {} } } @@ -73047,7 +85260,7 @@ { "Spring对AOP的支持": { "data": { - "uuid": "java-6-459", + "uuid": "java-6-461", "seg": [ [ [ @@ -73057,14 +85270,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7248662551440329, + "max": 0.7248765432098765 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1193", + "uuid": "java-5-1222", "seg": [ [ [ @@ -73074,7 +85290,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7248456790123456, + "max": 0.7248765432098765 + }, "related_data": {} } } @@ -73085,7 +85304,7 @@ { "选择切点": { "data": { - "uuid": "java-6-460", + "uuid": "java-6-462", "seg": [ [ [ @@ -73094,7 +85313,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7248765432098765, + "max": 0.7248804012345679 + }, "related_data": {} } } @@ -73102,7 +85324,7 @@ { "创建切面": { "data": { - "uuid": "java-6-461", + "uuid": "java-6-463", "seg": [ [ [ @@ -73111,7 +85333,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7248804012345679, + "max": 0.7248842592592593 + }, "related_data": {} } } @@ -73119,7 +85344,7 @@ { "连接点": { "data": { - "uuid": "java-6-462", + "uuid": "java-6-464", "seg": [ [ [ @@ -73127,7 +85352,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7248842592592593, + "max": 0.7248881172839505 + }, "related_data": {} } } @@ -73147,20 +85375,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7248881172839505, + "max": 0.724889403292181 + }, "related_data": { "qa": { "data_id": [ - "13_747911_799496", - "13_1066562_1266614", - "13_758272_814170", - "13_697813_583994", - "13_758271_814180", - "13_391730_434644", - "13_7402635_53350700", - "13_1091571_1299120", - "13_919330_1054217", - "13_354441_368934" + "13_747911_799496@13", + "13_1066562_1266614@13", + "13_758272_814170@13", + "13_697813_583994@13", + "13_758271_814180@13", + "13_391730_434644@13", + "13_7402635_53350700@13", + "13_1091571_1299120@13", + "13_919330_1054217@13", + "13_354441_368934@13" ] } } @@ -73180,11 +85411,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.724889403292181, + "max": 0.7248906893004115 + }, "related_data": { "qa": { "data_id": [ - "13_1091698_1299246" + "13_1091698_1299246@13" ] } } @@ -73204,14 +85438,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7248906893004115, + "max": 0.7248919753086419 + }, "related_data": {} } } } ], "data": { - "uuid": "java-6-463", + "uuid": "java-6-465", "seg": [ [ [ @@ -73219,7 +85456,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7248881172839505, + "max": 0.7248919753086419 + }, "related_data": {} } } @@ -73227,7 +85467,7 @@ { "环绕通知": { "data": { - "uuid": "java-6-464", + "uuid": "java-6-466", "seg": [ [ [ @@ -73236,11 +85476,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7248919753086419, + "max": 0.7248958333333333 + }, "related_data": { "qa": { "data_id": [ - "13_224055_182834" + "13_224055_182834@13" ] } } @@ -73250,7 +85493,7 @@ { "织入": { "data": { - "uuid": "java-6-465", + "uuid": "java-6-467", "seg": [ [ [ @@ -73258,7 +85501,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7248958333333333, + "max": 0.7248996913580246 + }, "related_data": {} } } @@ -73266,7 +85512,7 @@ { "给通知传递参数": { "data": { - "uuid": "java-6-466", + "uuid": "java-6-468", "seg": [ [ [ @@ -73276,7 +85522,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7248996913580246, + "max": 0.724903549382716 + }, "related_data": {} } } @@ -73284,7 +85533,7 @@ { "引入": { "data": { - "uuid": "java-6-467", + "uuid": "java-6-469", "seg": [ [ [ @@ -73292,11 +85541,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.724903549382716, + "max": 0.7249074074074073 + }, "related_data": { "qa": { "data_id": [ - "13_251003_248850" + "13_251003_248850@13" ] } } @@ -73305,7 +85557,7 @@ } ], "data": { - "uuid": "java-5-1194", + "uuid": "java-5-1223", "seg": [ [ [ @@ -73317,7 +85569,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7248765432098765, + "max": 0.7249074074074073 + }, "related_data": {} } } @@ -73328,7 +85583,7 @@ { "前置通知、后置通知、返回通知和异常通知": { "data": { - "uuid": "java-6-468", + "uuid": "java-6-470", "seg": [ [ [ @@ -73345,11 +85600,15 @@ ], [ "异常", - "通知" + "通知", + "异常通知" ] ] ], - "level": "1", + "level": { + "min": 0.7249074074074073, + "max": 0.7249151234567901 + }, "related_data": {} } } @@ -73357,7 +85616,7 @@ { "环绕通知": { "data": { - "uuid": "java-6-469", + "uuid": "java-6-471", "seg": [ [ [ @@ -73366,7 +85625,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7249151234567901, + "max": 0.7249228395061729 + }, "related_data": {} } } @@ -73374,7 +85636,7 @@ { "给通知传递参数": { "data": { - "uuid": "java-6-470", + "uuid": "java-6-472", "seg": [ [ [ @@ -73384,7 +85646,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7249228395061729, + "max": 0.7249305555555555 + }, "related_data": {} } } @@ -73392,7 +85657,7 @@ { "引入": { "data": { - "uuid": "java-6-471", + "uuid": "java-6-473", "seg": [ [ [ @@ -73400,14 +85665,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7249305555555555, + "max": 0.7249382716049383 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1195", + "uuid": "java-5-1224", "seg": [ [ [ @@ -73419,7 +85687,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7249074074074073, + "max": 0.7249382716049383 + }, "related_data": {} } } @@ -73427,7 +85698,7 @@ { "经典Spring AOP应用程序": { "data": { - "uuid": "java-5-1196", + "uuid": "java-5-1225", "seg": [ [ [ @@ -73438,7 +85709,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7249382716049383, + "max": 0.7249691358024691 + }, "related_data": {} } } @@ -73446,7 +85720,7 @@ { "多个切面": { "data": { - "uuid": "java-5-1197", + "uuid": "java-5-1226", "seg": [ [ [ @@ -73454,14 +85728,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7249691358024691, + "max": 0.725 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1150", + "uuid": "java-4-1161", "seg": [ [ [ @@ -73471,7 +85748,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7248148148148148, + "max": 0.725 + }, "related_data": {} } } @@ -73482,7 +85762,7 @@ { "传统的JDBC代码的弊端": { "data": { - "uuid": "java-5-1198", + "uuid": "java-5-1227", "seg": [ [ [ @@ -73492,7 +85772,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.725, + "max": 0.7250462962962962 + }, "related_data": {} } } @@ -73503,7 +85786,7 @@ { "使用简单数据库配置": { "data": { - "uuid": "java-6-472", + "uuid": "java-6-474", "seg": [ [ [ @@ -73512,14 +85795,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7250462962962962, + "max": 0.7250617283950617 + }, "related_data": { "qa": { "data_id": [ - "13_945512_1246897", - "13_744785_791412", - "13_6654451_47494460", - "13_1014740_1206948" + "13_945512_1246897@13", + "13_744785_791412@13", + "13_6654451_47494460@13", + "13_1014740_1206948@13" ] } } @@ -73529,22 +85815,26 @@ { "使用第三方数据库连接池": { "data": { - "uuid": "java-6-473", + "uuid": "java-6-475", "seg": [ [ [ "数据库", - "连接池" + "连接池", + "数据库连接池" ] ] ], - "level": "2", + "level": { + "min": 0.7250617283950617, + "max": 0.7250771604938272 + }, "related_data": { "qa": { "data_id": [ - "13_649452_455054", - "13_211020_150861", - "13_771060_833418" + "13_649452_455054@13", + "13_211020_150861@13", + "13_771060_833418@13" ] } } @@ -73554,34 +85844,42 @@ { "使用JNDI数据库连接池": { "data": { - "uuid": "java-6-474", + "uuid": "java-6-476", "seg": [ [ [ "jndi", "数据库", - "连接池" + "连接池", + "数据库连接池" ] ] ], - "level": "2", + "level": { + "min": 0.7250771604938272, + "max": 0.7250925925925926 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1199", + "uuid": "java-5-1228", "seg": [ [ [ "配置", "数据库", - "资源" + "资源", + "数据库资源" ] ] ], - "level": "2", + "level": { + "min": 0.7250462962962962, + "max": 0.7250925925925926 + }, "related_data": {} } } @@ -73592,7 +85890,7 @@ { "jdbcTemplate的增、删、查、改": { "data": { - "uuid": "java-6-475", + "uuid": "java-6-477", "seg": [ [ [ @@ -73610,15 +85908,18 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7250925925925926, + "max": 0.725108024691358 + }, "related_data": { "qa": { "data_id": [ - "13_7464205_53450580", - "13_7408154_53358359", - "13_691343_563459", - "13_241231_227152", - "13_7455139_53437963" + "13_7464205_53450580@13", + "13_7408154_53358359@13", + "13_691343_563459@13", + "13_241231_227152@13", + "13_7455139_53437963@13" ] } } @@ -73628,7 +85929,7 @@ { "执行多条SQL": { "data": { - "uuid": "java-6-476", + "uuid": "java-6-478", "seg": [ [ [ @@ -73637,11 +85938,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.725108024691358, + "max": 0.7251234567901235 + }, "related_data": { "qa": { "data_id": [ - "13_955000_1099559" + "13_955000_1099559@13" ] } } @@ -73651,7 +85955,7 @@ { "jdbcTemplate的源码分析": { "data": { - "uuid": "java-6-477", + "uuid": "java-6-479", "seg": [ [ [ @@ -73660,17 +85964,20 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7251234567901235, + "max": 0.7251388888888889 + }, "related_data": { "qa": { "data_id": [ - "13_769407_830918", - "13_746961_797480", - "13_764693_823456", - "13_212752_154599", - "13_771297_833689", - "13_269983_291550", - "13_1077600_1281998" + "13_769407_830918@13", + "13_746961_797480@13", + "13_764693_823456@13", + "13_212752_154599@13", + "13_771297_833689@13", + "13_269983_291550@13", + "13_1077600_1281998@13" ] } } @@ -73679,7 +85986,7 @@ } ], "data": { - "uuid": "java-5-1200", + "uuid": "java-5-1229", "seg": [ [ [ @@ -73690,7 +85997,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7250925925925926, + "max": 0.7251388888888889 + }, "related_data": {} } } @@ -73698,7 +86008,7 @@ { "Spring的缺点": { "data": { - "uuid": "java-5-1201", + "uuid": "java-5-1230", "seg": [ [ [ @@ -73707,14 +86017,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7251388888888889, + "max": 0.7251851851851852 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1151", + "uuid": "java-4-1162", "seg": [ [ [ @@ -73722,11 +86035,15 @@ ], [ "数据库", - "编程" + "编程", + "数据库编程" ] ] ], - "level": "2", + "level": { + "min": 0.725, + "max": 0.7251851851851852 + }, "related_data": {} } } @@ -73740,17 +86057,21 @@ { "配置事务管理器": { "data": { - "uuid": "java-6-478", + "uuid": "java-6-480", "seg": [ [ [ "配置", "事务", - "管理器" + "管理器", + "事务管理器" ] ] ], - "level": "2", + "level": { + "min": 0.7251851851851852, + "max": 0.7251984126984127 + }, "related_data": {} } } @@ -73758,7 +86079,7 @@ { "用Java配置方式实现Spring数据库事务": { "data": { - "uuid": "java-6-479", + "uuid": "java-6-481", "seg": [ [ [ @@ -73767,15 +86088,19 @@ "方式", "spring", "数据库", - "事务" + "事务", + "数据库事务" ] ] ], - "level": "2", + "level": { + "min": 0.7251984126984127, + "max": 0.7252116402116402 + }, "related_data": { "qa": { "data_id": [ - "13_1090254_1296979" + "13_1090254_1296979@13" ] } } @@ -73784,7 +86109,7 @@ } ], "data": { - "uuid": "java-5-1202", + "uuid": "java-5-1231", "seg": [ [ [ @@ -73792,11 +86117,16 @@ "数据库", "事务", "管理器", - "设计" + "设计", + "数据库事务", + "事务管理器" ] ] ], - "level": "2", + "level": { + "min": 0.7251851851851852, + "max": 0.7252116402116402 + }, "related_data": {} } } @@ -73804,16 +86134,20 @@ { "编程式事务": { "data": { - "uuid": "java-5-1203", + "uuid": "java-5-1232", "seg": [ [ [ "编程", - "事务" + "事务", + "编程式" ] ] ], - "level": "2", + "level": { + "min": 0.7252116402116402, + "max": 0.7252380952380952 + }, "related_data": {} } } @@ -73824,7 +86158,7 @@ { "Transactional的配置项": { "data": { - "uuid": "java-6-480", + "uuid": "java-6-482", "seg": [ [ [ @@ -73834,12 +86168,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7252380952380952, + "max": 0.7252447089947089 + }, "related_data": { "qa": { "data_id": [ - "13_720161_714490", - "13_1009786_1197067" + "13_720161_714490@13", + "13_1009786_1197067@13" ] } } @@ -73849,18 +86186,22 @@ { "使用XML进行配置事务管理器": { "data": { - "uuid": "java-6-481", + "uuid": "java-6-483", "seg": [ [ [ "xml", "配置", "事务", - "管理器" + "管理器", + "事务管理器" ] ] ], - "level": "1", + "level": { + "min": 0.7252447089947089, + "max": 0.7252513227513228 + }, "related_data": {} } } @@ -73868,17 +86209,22 @@ { "事务定义器": { "data": { - "uuid": "java-6-482", + "uuid": "java-6-484", "seg": [ [ [ "事务", "定义", - "器" + "器", + "事务定义", + "定义器" ] ] ], - "level": "1", + "level": { + "min": 0.7252513227513228, + "max": 0.7252579365079366 + }, "related_data": {} } } @@ -73886,22 +86232,26 @@ { "声明式事务的约定流程": { "data": { - "uuid": "java-6-483", + "uuid": "java-6-485", "seg": [ [ [ "声明", "事务", "约定", - "流程" + "流程", + "声明式" ] ] ], - "level": "1", + "level": { + "min": 0.7252579365079366, + "max": 0.7252645502645503 + }, "related_data": { "qa": { "data_id": [ - "13_223298_181176" + "13_223298_181176@13" ] } } @@ -73910,16 +86260,20 @@ } ], "data": { - "uuid": "java-5-1204", + "uuid": "java-5-1233", "seg": [ [ [ "声明", - "事务" + "事务", + "声明式" ] ] ], - "level": "1", + "level": { + "min": 0.7252380952380952, + "max": 0.7252645502645503 + }, "related_data": {} } } @@ -73930,22 +86284,26 @@ { "数据库事务ACID特性": { "data": { - "uuid": "java-6-484", + "uuid": "java-6-486", "seg": [ [ [ "数据库", "事务", "acid", - "特性" + "特性", + "数据库事务" ] ] ], - "level": "2", + "level": { + "min": 0.7252645502645503, + "max": 0.7252733686067019 + }, "related_data": { "qa": { "data_id": [ - "13_28662_8258" + "13_28662_8258@13" ] } } @@ -73955,7 +86313,7 @@ { "丢失更新": { "data": { - "uuid": "java-6-485", + "uuid": "java-6-487", "seg": [ [ [ @@ -73964,11 +86322,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7252733686067019, + "max": 0.7252821869488536 + }, "related_data": { "qa": { "data_id": [ - "13_903973_1039337" + "13_903973_1039337@13" ] } } @@ -73978,7 +86339,7 @@ { "隔离级别": { "data": { - "uuid": "java-6-486", + "uuid": "java-6-488", "seg": [ [ [ @@ -73987,14 +86348,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7252821869488536, + "max": 0.7252910052910052 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1205", + "uuid": "java-5-1234", "seg": [ [ [ @@ -74004,12 +86368,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7252645502645503, + "max": 0.7252910052910052 + }, "related_data": { "qa": { "data_id": [ - "13_7467485_53455031", - "13_7443029_53420062" + "13_7467485_53455031@13", + "13_7443029_53420062@13" ] } } @@ -74022,7 +86389,7 @@ { "选择隔离级别": { "data": { - "uuid": "java-6-487", + "uuid": "java-6-489", "seg": [ [ [ @@ -74032,11 +86399,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7252910052910052, + "max": 0.7253042328042327 + }, "related_data": { "qa": { "data_id": [ - "13_916851_1052193" + "13_916851_1052193@13" ] } } @@ -74046,7 +86416,7 @@ { "传播行为": { "data": { - "uuid": "java-6-488", + "uuid": "java-6-490", "seg": [ [ [ @@ -74054,14 +86424,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7253042328042327, + "max": 0.7253174603174602 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1206", + "uuid": "java-5-1235", "seg": [ [ [ @@ -74074,7 +86447,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7252910052910052, + "max": 0.7253174603174602 + }, "related_data": {} } } @@ -74082,7 +86458,7 @@ { "在Spring+MyBatis组合中使用事务": { "data": { - "uuid": "java-5-1207", + "uuid": "java-5-1236", "seg": [ [ [ @@ -74093,7 +86469,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7253174603174602, + "max": 0.7253439153439153 + }, "related_data": {} } } @@ -74104,7 +86483,7 @@ { "错误使用Service": { "data": { - "uuid": "java-6-489", + "uuid": "java-6-491", "seg": [ [ [ @@ -74112,20 +86491,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7253439153439153, + "max": 0.725352733686067 + }, "related_data": { "qa": { "data_id": [ - "13_179012_63959", - "13_7415422_53368883", - "13_747273_798370", - "13_230677_814168", - "13_1076938_1281638", - "13_753635_815228", - "13_6242950_44784780", - "13_993371_1164516", - "13_753847_815229", - "13_751640_805301" + "13_179012_63959@13", + "13_7415422_53368883@13", + "13_747273_798370@13", + "13_230677_814168@13", + "13_1076938_1281638@13", + "13_753635_815228@13", + "13_6242950_44784780@13", + "13_993371_1164516@13", + "13_753847_815229@13", + "13_751640_805301@13" ] } } @@ -74135,7 +86517,7 @@ { "过长时间占用事务": { "data": { - "uuid": "java-6-490", + "uuid": "java-6-492", "seg": [ [ [ @@ -74145,7 +86527,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.725352733686067, + "max": 0.7253615520282186 + }, "related_data": {} } } @@ -74153,7 +86538,7 @@ { "错误捕捉异常": { "data": { - "uuid": "java-6-491", + "uuid": "java-6-493", "seg": [ [ [ @@ -74162,11 +86547,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7253615520282186, + "max": 0.7253703703703703 + }, "related_data": { "qa": { "data_id": [ - "13_751077_804510" + "13_751077_804510@13" ] } } @@ -74175,34 +86563,43 @@ } ], "data": { - "uuid": "java-5-1208", + "uuid": "java-5-1237", "seg": [ [ [ "典型", "用法", - "剖析" + "剖析", + "典型错误", + "错误用法" ] ] ], - "level": "2", + "level": { + "min": 0.7253439153439153, + "max": 0.7253703703703703 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1152", + "uuid": "java-4-1163", "seg": [ [ [ "spring", "数据库", - "事务管理" + "事务管理", + "数据库事务管理" ] ] ], - "level": "1", + "level": { + "min": 0.7251851851851852, + "max": 0.7253703703703703 + }, "related_data": {} } } @@ -74213,7 +86610,7 @@ { "Java配置": { "data": { - "uuid": "java-5-1209", + "uuid": "java-5-1238", "seg": [ [ [ @@ -74222,14 +86619,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7253703703703703, + "max": 0.7255555555555555 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1153", + "uuid": "java-4-1164", "seg": [ [ [ @@ -74239,20 +86639,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7253703703703703, + "max": 0.7255555555555555 + }, "related_data": { "qa": { "data_id": [ - "13_7461954_53447234", - "13_746507_796110", - "13_745072_792242", - "13_7432923_53402553", - "13_7467041_53454371", - "13_661138_476013", - "13_271386_294427", - "13_7467056_53454391", - "13_196314_108116", - "13_749069_801378" + "13_7461954_53447234@13", + "13_746507_796110@13", + "13_745072_792242@13", + "13_7432923_53402553@13", + "13_7467041_53454371@13", + "13_661138_476013@13", + "13_271386_294427@13", + "13_7467056_53454391@13", + "13_196314_108116@13", + "13_749069_801378@13" ] } } @@ -74261,7 +86664,7 @@ } ], "data": { - "uuid": "java-3-602", + "uuid": "java-3-595", "seg": [ [ [ @@ -74270,7 +86673,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7244444444444444, + "max": 0.7255555555555555 + }, "related_data": {} } } @@ -74287,7 +86693,7 @@ { "Spring MVC的架构": { "data": { - "uuid": "java-6-492", + "uuid": "java-6-494", "seg": [ [ [ @@ -74297,20 +86703,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7255555555555555, + "max": 0.7256172839506172 + }, "related_data": { "qa": { "data_id": [ - "13_747147_798054", - "13_764262_823601", - "13_717558_711735", - "13_718650_712409", - "13_366524_391124", - "13_212665_154388", - "13_1091552_1299651", - "13_160398_27972", - "13_250951_248747", - "13_965884_1117655" + "13_747147_798054@13", + "13_764262_823601@13", + "13_717558_711735@13", + "13_718650_712409@13", + "13_366524_391124@13", + "13_212665_154388@13", + "13_1091552_1299651@13", + "13_160398_27972@13", + "13_250951_248747@13", + "13_965884_1117655@13" ] } } @@ -74320,7 +86729,7 @@ { "Spring MVC组件与流程": { "data": { - "uuid": "java-6-493", + "uuid": "java-6-495", "seg": [ [ [ @@ -74333,11 +86742,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7256172839506172, + "max": 0.725679012345679 + }, "related_data": { "qa": { "data_id": [ - "13_758301_826725" + "13_758301_826725@13" ] } } @@ -74346,7 +86758,7 @@ } ], "data": { - "uuid": "java-5-1210", + "uuid": "java-5-1239", "seg": [ [ [ @@ -74356,7 +86768,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7255555555555555, + "max": 0.725679012345679 + }, "related_data": {} } } @@ -74367,7 +86782,7 @@ { "初始化Spring IoC上下文": { "data": { - "uuid": "java-6-494", + "uuid": "java-6-496", "seg": [ [ [ @@ -74378,11 +86793,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.725679012345679, + "max": 0.7257201646090534 + }, "related_data": { "qa": { "data_id": [ - "13_702981_593658" + "13_702981_593658@13" ] } } @@ -74392,7 +86810,7 @@ { "初始化映射请求上下文": { "data": { - "uuid": "java-6-495", + "uuid": "java-6-497", "seg": [ [ [ @@ -74402,7 +86820,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7257201646090534, + "max": 0.725761316872428 + }, "related_data": {} } } @@ -74410,7 +86831,7 @@ { "使用注解配置方式初始化": { "data": { - "uuid": "java-6-496", + "uuid": "java-6-498", "seg": [ [ [ @@ -74421,14 +86842,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.725761316872428, + "max": 0.7258024691358024 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1211", + "uuid": "java-5-1240", "seg": [ [ [ @@ -74438,7 +86862,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.725679012345679, + "max": 0.7258024691358024 + }, "related_data": {} } } @@ -74449,7 +86876,7 @@ { "配置@RequestMapping": { "data": { - "uuid": "java-6-497", + "uuid": "java-6-499", "seg": [ [ [ @@ -74458,7 +86885,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7258024691358024, + "max": 0.7258436213991769 + }, "related_data": {} } } @@ -74466,7 +86896,7 @@ { "控制器的开发": { "data": { - "uuid": "java-6-498", + "uuid": "java-6-500", "seg": [ [ [ @@ -74475,20 +86905,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7258436213991769, + "max": 0.7258847736625513 + }, "related_data": { "qa": { "data_id": [ - "13_7467279_53454767", - "13_7421009_53378985", - "13_689832_558711", - "13_257454_264028", - "13_662793_478607", - "13_201199_123326", - "13_667476_486655", - "13_211555_151624", - "13_352673_363693", - "13_746063_794914" + "13_7467279_53454767@13", + "13_7421009_53378985@13", + "13_689832_558711@13", + "13_257454_264028@13", + "13_662793_478607@13", + "13_201199_123326@13", + "13_667476_486655@13", + "13_211555_151624@13", + "13_352673_363693@13", + "13_746063_794914@13" ] } } @@ -74498,7 +86931,7 @@ { "视图渲染": { "data": { - "uuid": "java-6-499", + "uuid": "java-6-501", "seg": [ [ [ @@ -74507,14 +86940,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7258847736625513, + "max": 0.7259259259259259 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1212", + "uuid": "java-5-1241", "seg": [ [ [ @@ -74526,11 +86962,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7258024691358024, + "max": 0.7259259259259259 + }, "related_data": { "qa": { "data_id": [ - "13_745874_794450" + "13_745874_794450@13" ] } } @@ -74539,7 +86978,7 @@ } ], "data": { - "uuid": "java-4-1154", + "uuid": "java-4-1165", "seg": [ [ [ @@ -74552,7 +86991,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7255555555555555, + "max": 0.7259259259259259 + }, "related_data": {} } } @@ -74566,7 +87008,7 @@ { "接收普通请求参数": { "data": { - "uuid": "java-6-500", + "uuid": "java-6-502", "seg": [ [ [ @@ -74575,20 +87017,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7259259259259259, + "max": 0.7259365079365079 + }, "related_data": { "qa": { "data_id": [ - "13_350015_358193", - "13_382678_417536", - "13_1096102_1308142", - "13_7450376_53431119", - "13_1094495_1304875", - "13_29769_8982", - "13_384807_421520", - "13_264945_280390", - "13_7395708_53338494", - "13_239002_221674" + "13_350015_358193@13", + "13_382678_417536@13", + "13_1096102_1308142@13", + "13_7450376_53431119@13", + "13_1094495_1304875@13", + "13_29769_8982@13", + "13_384807_421520@13", + "13_264945_280390@13", + "13_7395708_53338494@13", + "13_239002_221674@13" ] } } @@ -74598,7 +87043,7 @@ { "使用@RequestParam注解获取参数": { "data": { - "uuid": "java-6-501", + "uuid": "java-6-503", "seg": [ [ [ @@ -74609,14 +87054,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7259365079365079, + "max": 0.7259470899470899 + }, "related_data": { "qa": { "data_id": [ - "13_371525_398152", - "13_7409335_53359706", - "13_1087881_1294485", - "13_1100750_1315516" + "13_371525_398152@13", + "13_7409335_53359706@13", + "13_1087881_1294485@13", + "13_1100750_1315516@13" ] } } @@ -74626,7 +87074,7 @@ { "使用URL传递参数": { "data": { - "uuid": "java-6-502", + "uuid": "java-6-504", "seg": [ [ [ @@ -74636,7 +87084,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7259470899470899, + "max": 0.7259576719576719 + }, "related_data": {} } } @@ -74644,7 +87095,7 @@ { "传递JSON参数": { "data": { - "uuid": "java-6-503", + "uuid": "java-6-505", "seg": [ [ [ @@ -74654,18 +87105,21 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7259576719576719, + "max": 0.7259682539682539 + }, "related_data": { "qa": { "data_id": [ - "13_755227_810579", - "13_357268_373742", - "13_172364_49689", - "13_932315_1067391", - "13_7432199_53401189", - "13_694093_573159", - "13_677428_519430", - "13_769558_830467" + "13_755227_810579@13", + "13_357268_373742@13", + "13_172364_49689@13", + "13_932315_1067391@13", + "13_7432199_53401189@13", + "13_694093_573159@13", + "13_677428_519430@13", + "13_769558_830467@13" ] } } @@ -74675,28 +87129,33 @@ { "接收列表数据和表单序列化": { "data": { - "uuid": "java-6-504", + "uuid": "java-6-506", "seg": [ [ [ "接收", "列表", - "数据" + "数据", + "列表数据" ], [ "表单", - "序列化" + "序列化", + "表单序列化" ] ] ], - "level": "2", + "level": { + "min": 0.7259682539682539, + "max": 0.725978835978836 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1213", + "uuid": "java-5-1242", "seg": [ [ [ @@ -74705,7 +87164,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7259259259259259, + "max": 0.725978835978836 + }, "related_data": {} } } @@ -74713,7 +87175,7 @@ { "重定向": { "data": { - "uuid": "java-5-1214", + "uuid": "java-5-1243", "seg": [ [ [ @@ -74721,12 +87183,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.725978835978836, + "max": 0.726031746031746 + }, "related_data": { "qa": { "data_id": [ - "13_219060_169639", - "13_750941_804353" + "13_219060_169639@13", + "13_750941_804353@13" ] } } @@ -74739,7 +87204,7 @@ { "注解@RequestAttribute": { "data": { - "uuid": "java-6-505", + "uuid": "java-6-507", "seg": [ [ [ @@ -74748,7 +87213,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.726031746031746, + "max": 0.7260493827160494 + }, "related_data": {} } } @@ -74756,7 +87224,7 @@ { "注解@SessionAttribute和注解@SessionAttributes": { "data": { - "uuid": "java-6-506", + "uuid": "java-6-508", "seg": [ [ [ @@ -74769,7 +87237,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7260493827160494, + "max": 0.7260670194003528 + }, "related_data": {} } } @@ -74777,7 +87248,7 @@ { "注解@CookieValue和注解@RequestHeader": { "data": { - "uuid": "java-6-507", + "uuid": "java-6-509", "seg": [ [ [ @@ -74790,29 +87261,36 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7260670194003528, + "max": 0.7260846560846561 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1215", + "uuid": "java-5-1244", "seg": [ [ [ "保存", "获取", "属性", - "参数" + "参数", + "属性参数" ] ] ], - "level": "1", + "level": { + "min": 0.726031746031746, + "max": 0.7260846560846561 + }, "related_data": { "qa": { "data_id": [ - "13_745904_794518" + "13_745904_794518@13" ] } } @@ -74825,7 +87303,7 @@ { "使用JSR 303注解验证输入内容": { "data": { - "uuid": "java-6-508", + "uuid": "java-6-510", "seg": [ [ [ @@ -74837,11 +87315,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7260846560846561, + "max": 0.7261111111111112 + }, "related_data": { "qa": { "data_id": [ - "13_7432322_53401422" + "13_7432322_53401422@13" ] } } @@ -74851,7 +87332,7 @@ { "使用验证器": { "data": { - "uuid": "java-6-509", + "uuid": "java-6-511", "seg": [ [ [ @@ -74860,20 +87341,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7261111111111112, + "max": 0.7261375661375661 + }, "related_data": { "qa": { "data_id": [ - "13_388146_427635", - "13_355347_369150", - "13_161187_30046", - "13_357582_374498", - "13_398755_436903", - "13_745601_793774", - "13_779747_848164", - "13_4646252_53418158", - "13_755683_811086", - "13_1097340_1310701" + "13_388146_427635@13", + "13_355347_369150@13", + "13_161187_30046@13", + "13_357582_374498@13", + "13_398755_436903@13", + "13_745601_793774@13", + "13_779747_848164@13", + "13_4646252_53418158@13", + "13_755683_811086@13", + "13_1097340_1310701@13" ] } } @@ -74882,7 +87366,7 @@ } ], "data": { - "uuid": "java-5-1216", + "uuid": "java-5-1245", "seg": [ [ [ @@ -74891,7 +87375,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7260846560846561, + "max": 0.7261375661375661 + }, "related_data": {} } } @@ -74899,7 +87386,7 @@ { "数据模型": { "data": { - "uuid": "java-5-1217", + "uuid": "java-5-1246", "seg": [ [ [ @@ -74907,7 +87394,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7261375661375661, + "max": 0.7261904761904762 + }, "related_data": {} } } @@ -74918,7 +87408,7 @@ { "视图": { "data": { - "uuid": "java-6-510", + "uuid": "java-6-512", "seg": [ [ [ @@ -74926,13 +87416,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7261904761904762, + "max": 0.7262169312169312 + }, "related_data": { "qa": { "data_id": [ - "13_3612_4457", - "13_1739_2889", - "13_387363_426357" + "13_3612_4457@13", + "13_1739_2889@13", + "13_387363_426357@13" ] } } @@ -74942,23 +87435,27 @@ { "视图解析器": { "data": { - "uuid": "java-6-511", + "uuid": "java-6-513", "seg": [ [ [ "视图", - "解析器" + "解析器", + "视图解析器" ] ] ], - "level": "1", + "level": { + "min": 0.7262169312169312, + "max": 0.7262433862433862 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1218", + "uuid": "java-5-1247", "seg": [ [ [ @@ -74966,11 +87463,15 @@ ], [ "视图", - "解析器" + "解析器", + "视图解析器" ] ] ], - "level": "1", + "level": { + "min": 0.7261904761904762, + "max": 0.7262433862433862 + }, "related_data": {} } } @@ -74981,7 +87482,7 @@ { "MultipartResolver概述": { "data": { - "uuid": "java-6-512", + "uuid": "java-6-514", "seg": [ [ [ @@ -74990,7 +87491,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7262433862433862, + "max": 0.7262698412698413 + }, "related_data": {} } } @@ -74998,31 +87502,35 @@ { "提交上传文件表单": { "data": { - "uuid": "java-6-513", + "uuid": "java-6-515", "seg": [ [ [ "提交", "上传", "文件", - "表单" + "表单", + "文件表单" ] ] ], - "level": "1", + "level": { + "min": 0.7262698412698413, + "max": 0.7262962962962963 + }, "related_data": { "qa": { "data_id": [ - "13_379465_411455", - "13_720361_714838", - "13_242201_229416", - "13_7422148_53379564", - "13_7450697_53431731", - "13_356008_371083", - "13_190470_91003", - "13_7438287_53411645", - "13_675948_512630", - "13_714076_706253" + "13_379465_411455@13", + "13_720361_714838@13", + "13_242201_229416@13", + "13_7422148_53379564@13", + "13_7450697_53431731@13", + "13_356008_371083@13", + "13_190470_91003@13", + "13_7438287_53411645@13", + "13_675948_512630@13", + "13_714076_706253@13" ] } } @@ -75031,7 +87539,7 @@ } ], "data": { - "uuid": "java-5-1219", + "uuid": "java-5-1248", "seg": [ [ [ @@ -75040,11 +87548,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7262433862433862, + "max": 0.7262962962962963 + }, "related_data": { "qa": { "data_id": [ - "13_756944_812193" + "13_756944_812193@13" ] } } @@ -75053,7 +87564,7 @@ } ], "data": { - "uuid": "java-4-1155", + "uuid": "java-4-1166", "seg": [ [ [ @@ -75064,7 +87575,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7259259259259259, + "max": 0.7262962962962963 + }, "related_data": {} } } @@ -75078,7 +87592,7 @@ { "HttpMessageConverter和JSON消息转换器": { "data": { - "uuid": "java-6-514", + "uuid": "java-6-516", "seg": [ [ [ @@ -75091,16 +87605,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7262962962962963, + "max": 0.7263194444444445 + }, "related_data": { "qa": { "data_id": [ - "13_7405408_53354873", - "13_649005_454139", - "13_173484_53024", - "13_886222_1025719", - "13_762133_820286", - "13_3522139_22965042" + "13_7405408_53354873@13", + "13_649005_454139@13", + "13_173484_53024@13", + "13_886222_1025719@13", + "13_762133_820286@13", + "13_3522139_22965042@13" ] } } @@ -75110,7 +87627,7 @@ { "一对一转换器(Converter)": { "data": { - "uuid": "java-6-515", + "uuid": "java-6-517", "seg": [ [ [ @@ -75119,11 +87636,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7263194444444445, + "max": 0.7263425925925926 + }, "related_data": { "qa": { "data_id": [ - "13_7462731_53448360" + "13_7462731_53448360@13" ] } } @@ -75133,7 +87653,7 @@ { "数组和集合转换器GenericConverter": { "data": { - "uuid": "java-6-516", + "uuid": "java-6-518", "seg": [ [ [ @@ -75146,11 +87666,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7263425925925926, + "max": 0.7263657407407408 + }, "related_data": { "qa": { "data_id": [ - "13_246708_239194" + "13_246708_239194@13" ] } } @@ -75160,24 +87683,28 @@ { "使用格式化器(Formatter)": { "data": { - "uuid": "java-6-517", + "uuid": "java-6-519", "seg": [ [ [ "格式化", "器", - "formatter" + "formatter", + "格式化器" ] ] ], - "level": "1", + "level": { + "min": 0.7263657407407408, + "max": 0.726388888888889 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1220", + "uuid": "java-5-1249", "seg": [ [ [ @@ -75191,7 +87718,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7262962962962963, + "max": 0.726388888888889 + }, "related_data": {} } } @@ -75199,7 +87729,7 @@ { "为控制器添加通知": { "data": { - "uuid": "java-5-1221", + "uuid": "java-5-1250", "seg": [ [ [ @@ -75209,7 +87739,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.726388888888889, + "max": 0.7264814814814815 + }, "related_data": {} } } @@ -75217,7 +87750,7 @@ { "处理异常": { "data": { - "uuid": "java-5-1222", + "uuid": "java-5-1251", "seg": [ [ [ @@ -75225,7 +87758,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7264814814814815, + "max": 0.726574074074074 + }, "related_data": {} } } @@ -75236,7 +87772,7 @@ { "MessageSource接口": { "data": { - "uuid": "java-6-518", + "uuid": "java-6-520", "seg": [ [ [ @@ -75245,7 +87781,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.726574074074074, + "max": 0.7265972222222222 + }, "related_data": {} } } @@ -75253,7 +87792,7 @@ { "CookieLocaleResolver和SessionLocaleResolver": { "data": { - "uuid": "java-6-519", + "uuid": "java-6-521", "seg": [ [ [ @@ -75264,7 +87803,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7265972222222222, + "max": 0.7266203703703704 + }, "related_data": {} } } @@ -75272,17 +87814,21 @@ { "国际化拦截器(LocaleChangeInterceptor)": { "data": { - "uuid": "java-6-520", + "uuid": "java-6-522", "seg": [ [ [ "国际化", "拦截器", - "localechangeinterceptor" + "localechangeinterceptor", + "国际化拦截器" ] ] ], - "level": "1", + "level": { + "min": 0.7266203703703704, + "max": 0.7266435185185185 + }, "related_data": {} } } @@ -75290,7 +87836,7 @@ { "开发国际化": { "data": { - "uuid": "java-6-521", + "uuid": "java-6-523", "seg": [ [ [ @@ -75299,14 +87845,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7266435185185185, + "max": 0.7266666666666667 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1223", + "uuid": "java-5-1252", "seg": [ [ [ @@ -75314,14 +87863,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.726574074074074, + "max": 0.7266666666666667 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1156", + "uuid": "java-4-1167", "seg": [ [ [ @@ -75331,14 +87883,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7262962962962963, + "max": 0.7266666666666667 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-603", + "uuid": "java-3-596", "seg": [ [ [ @@ -75348,7 +87903,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7255555555555555, + "max": 0.7266666666666667 + }, "related_data": {} } } @@ -75362,7 +87920,7 @@ { "互联系统应用架构基础分析": { "data": { - "uuid": "java-5-1224", + "uuid": "java-5-1253", "seg": [ [ [ @@ -75370,11 +87928,15 @@ "系统", "架构", "基础", - "分析" + "分析", + "架构基础" ] ] ], - "level": "2", + "level": { + "min": 0.7266666666666667, + "max": 0.7268253968253968 + }, "related_data": {} } } @@ -75385,7 +87947,7 @@ { "有效请求和无效请求": { "data": { - "uuid": "java-6-522", + "uuid": "java-6-524", "seg": [ [ [], @@ -75394,16 +87956,19 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7268253968253968, + "max": 0.7268571428571429 + }, "related_data": { "qa": { "data_id": [ - "13_161442_30801", - "13_768660_828979", - "13_763371_821766", - "13_194588_102761", - "13_7398998_53345728", - "13_271415_294606" + "13_161442_30801@13", + "13_768660_828979@13", + "13_763371_821766@13", + "13_194588_102761@13", + "13_7398998_53345728@13", + "13_271415_294606@13" ] } } @@ -75413,7 +87978,7 @@ { "系统设计": { "data": { - "uuid": "java-6-523", + "uuid": "java-6-525", "seg": [ [ [ @@ -75422,11 +87987,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7268571428571429, + "max": 0.7268888888888889 + }, "related_data": { "qa": { "data_id": [ - "13_204496_133396" + "13_204496_133396@13" ] } } @@ -75436,7 +88004,7 @@ { "数据库设计": { "data": { - "uuid": "java-6-524", + "uuid": "java-6-526", "seg": [ [ [ @@ -75445,20 +88013,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7268888888888889, + "max": 0.7269206349206349 + }, "related_data": { "qa": { "data_id": [ - "13_384231_420504", - "13_675681_510933", - "13_353962_366551", - "13_7464702_53452688", - "13_183529_70787", - "13_349574_360109", - "13_267026_285540", - "13_676081_514272", - "13_206197_138313", - "13_383965_419844" + "13_384231_420504@13", + "13_675681_510933@13", + "13_353962_366551@13", + "13_183529_70787@13", + "13_349574_360109@13", + "13_267026_285540@13", + "13_676081_514272@13", + "13_206197_138313@13", + "13_383965_419844@13", + "13_157241_20230@13" ] } } @@ -75468,7 +88039,7 @@ { "动静分离技术": { "data": { - "uuid": "java-6-525", + "uuid": "java-6-527", "seg": [ [ [ @@ -75478,7 +88049,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7269206349206349, + "max": 0.7269523809523809 + }, "related_data": {} } } @@ -75486,7 +88060,7 @@ { "锁和高并发": { "data": { - "uuid": "java-6-526", + "uuid": "java-6-528", "seg": [ [ [ @@ -75498,20 +88072,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7269523809523809, + "max": 0.726984126984127 + }, "related_data": { "qa": { "data_id": [ - "13_745554_793638", - "13_780059_848766", - "13_7462440_53447952", - "13_644541_445450", - "13_348630_355504", - "13_27645_7613", - "13_7398131_53343980", - "13_888763_1027485", - "13_644404_445088", - "13_234454_211429" + "13_745554_793638@13", + "13_780059_848766@13", + "13_7462440_53447952@13", + "13_644541_445450@13", + "13_348630_355504@13", + "13_27645_7613@13", + "13_7398131_53343980@13", + "13_888763_1027485@13", + "13_644404_445088@13", + "13_234454_211429@13" ] } } @@ -75520,7 +88097,7 @@ } ], "data": { - "uuid": "java-5-1225", + "uuid": "java-5-1254", "seg": [ [ [ @@ -75534,7 +88111,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7268253968253968, + "max": 0.726984126984127 + }, "related_data": {} } } @@ -75545,7 +88125,7 @@ { "搭建Service层和DAO层": { "data": { - "uuid": "java-6-527", + "uuid": "java-6-529", "seg": [ [ [ @@ -75559,16 +88139,19 @@ ] ] ], - "level": "2", + "level": { + "min": 0.726984126984127, + "max": 0.727063492063492 + }, "related_data": { "qa": { "data_id": [ - "13_7431228_53399333", - "13_7427442_53391929", - "13_675230_508163", - "13_1100062_1314981", - "13_679913_528357", - "13_386459_424686" + "13_7431228_53399333@13", + "13_7427442_53391929@13", + "13_675230_508163@13", + "13_1100062_1314981@13", + "13_679913_528357@13", + "13_386459_424686@13" ] } } @@ -75578,7 +88161,7 @@ { "使用全注解搭建SSM开发环境": { "data": { - "uuid": "java-6-528", + "uuid": "java-6-530", "seg": [ [ [ @@ -75591,12 +88174,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.727063492063492, + "max": 0.7271428571428571 + }, "related_data": { "qa": { "data_id": [ - "13_773088_836683", - "13_244097_233231" + "13_773088_836683@13", + "13_244097_233231@13" ] } } @@ -75605,7 +88191,7 @@ } ], "data": { - "uuid": "java-5-1226", + "uuid": "java-5-1255", "seg": [ [ [ @@ -75620,7 +88206,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.726984126984127, + "max": 0.7271428571428571 + }, "related_data": {} } } @@ -75628,7 +88217,7 @@ { "悲观锁": { "data": { - "uuid": "java-5-1227", + "uuid": "java-5-1256", "seg": [ [ [ @@ -75637,7 +88226,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7271428571428571, + "max": 0.7273015873015873 + }, "related_data": {} } } @@ -75648,7 +88240,7 @@ { "CAS原理概述": { "data": { - "uuid": "java-6-529", + "uuid": "java-6-531", "seg": [ [ [ @@ -75658,12 +88250,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7273015873015873, + "max": 0.7273544973544974 + }, "related_data": { "qa": { "data_id": [ - "13_7424626_53385754", - "13_1090035_1296852" + "13_7424626_53385754@13", + "13_1090035_1296852@13" ] } } @@ -75673,7 +88268,7 @@ { "乐观锁实现抢红包业务": { "data": { - "uuid": "java-6-530", + "uuid": "java-6-532", "seg": [ [ [ @@ -75684,13 +88279,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7273544973544974, + "max": 0.7274074074074074 + }, "related_data": { "qa": { "data_id": [ - "13_773162_836802", - "13_7459884_53444915", - "13_246916_239704" + "13_773162_836802@13", + "13_7459884_53444915@13", + "13_246916_239704@13" ] } } @@ -75700,7 +88298,7 @@ { "乐观锁重入机制": { "data": { - "uuid": "java-6-531", + "uuid": "java-6-533", "seg": [ [ [ @@ -75711,11 +88309,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7274074074074074, + "max": 0.7274603174603175 + }, "related_data": { "qa": { "data_id": [ - "13_768807_829176" + "13_768807_829176@13" ] } } @@ -75724,7 +88325,7 @@ } ], "data": { - "uuid": "java-5-1228", + "uuid": "java-5-1257", "seg": [ [ [ @@ -75733,7 +88334,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7273015873015873, + "max": 0.7274603174603175 + }, "related_data": {} } } @@ -75744,7 +88348,7 @@ { "使用注解方式配置Redis": { "data": { - "uuid": "java-6-532", + "uuid": "java-6-534", "seg": [ [ [ @@ -75755,7 +88359,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7274603174603175, + "max": 0.7275132275132276 + }, "related_data": {} } } @@ -75763,7 +88370,7 @@ { "数据存储设计": { "data": { - "uuid": "java-6-533", + "uuid": "java-6-535", "seg": [ [ [ @@ -75773,13 +88380,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7275132275132276, + "max": 0.7275661375661375 + }, "related_data": { "qa": { "data_id": [ - "13_372963_400631", - "13_243755_232623", - "13_7413993_53366303" + "13_372963_400631@13", + "13_239787_223471@13", + "13_243755_232623@13", + "13_7413993_53366303@13" ] } } @@ -75789,7 +88400,7 @@ { "使用Redis实现抢红包": { "data": { - "uuid": "java-6-534", + "uuid": "java-6-536", "seg": [ [ [ @@ -75798,14 +88409,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7275661375661375, + "max": 0.7276190476190476 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1229", + "uuid": "java-5-1258", "seg": [ [ [ @@ -75814,7 +88428,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7274603174603175, + "max": 0.7276190476190476 + }, "related_data": {} } } @@ -75822,7 +88439,7 @@ { "各类方式的优缺点": { "data": { - "uuid": "java-5-1230", + "uuid": "java-5-1259", "seg": [ [ [ @@ -75831,11 +88448,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7276190476190476, + "max": 0.7277777777777777 + }, "related_data": { "qa": { "data_id": [ - "13_208196_144116" + "13_208196_144116@13" ] } } @@ -75844,7 +88464,7 @@ } ], "data": { - "uuid": "java-4-1157", + "uuid": "java-4-1168", "seg": [ [ [ @@ -75854,14 +88474,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7266666666666667, + "max": 0.7277777777777777 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-604", + "uuid": "java-3-597", "seg": [ [ [ @@ -75872,7 +88495,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7266666666666667, + "max": 0.7277777777777777 + }, "related_data": {} } } @@ -75889,7 +88515,7 @@ { "示例": { "data": { - "uuid": "java-6-535", + "uuid": "java-6-537", "seg": [ [ [ @@ -75897,14 +88523,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7277777777777777, + "max": 0.7279166666666667 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1231", + "uuid": "java-5-1260", "seg": [ [ [ @@ -75913,7 +88542,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7277777777777777, + "max": 0.7279166666666667 + }, "related_data": {} } } @@ -75924,7 +88556,7 @@ { "示例": { "data": { - "uuid": "java-6-536", + "uuid": "java-6-538", "seg": [ [ [ @@ -75932,14 +88564,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7279166666666667, + "max": 0.7280555555555555 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1232", + "uuid": "java-5-1261", "seg": [ [ [ @@ -75952,7 +88587,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7279166666666667, + "max": 0.7280555555555555 + }, "related_data": {} } } @@ -75960,7 +88598,7 @@ { "Bean的初始化和销毁": { "data": { - "uuid": "java-5-1233", + "uuid": "java-5-1262", "seg": [ [ [ @@ -75972,7 +88610,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7280555555555555, + "max": 0.7281944444444444 + }, "related_data": {} } } @@ -75983,7 +88624,7 @@ { "示例": { "data": { - "uuid": "java-6-537", + "uuid": "java-6-539", "seg": [ [ [ @@ -75991,14 +88632,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7281944444444444, + "max": 0.7283333333333333 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1234", + "uuid": "java-5-1263", "seg": [ [ [ @@ -76008,14 +88652,25 @@ ] ] ], - "level": "2", - "related_data": {} + "level": { + "min": 0.7281944444444444, + "max": 0.7283333333333333 + }, + "related_data": { + "qa": { + "data_id": [ + "13_7440874_53416538@13", + "13_7443568_53420743@13", + "13_753632_808319@13" + ] + } + } } } } ], "data": { - "uuid": "java-4-1158", + "uuid": "java-4-1169", "seg": [ [ [ @@ -76024,7 +88679,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7277777777777777, + "max": 0.7283333333333333 + }, "related_data": {} } } @@ -76038,7 +88696,7 @@ { "示例": { "data": { - "uuid": "java-6-538", + "uuid": "java-6-540", "seg": [ [ [ @@ -76046,14 +88704,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7283333333333333, + "max": 0.7284126984126984 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1235", + "uuid": "java-5-1264", "seg": [ [ [ @@ -76062,7 +88723,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7283333333333333, + "max": 0.7284126984126984 + }, "related_data": {} } } @@ -76073,7 +88737,7 @@ { "示例": { "data": { - "uuid": "java-6-539", + "uuid": "java-6-541", "seg": [ [ [ @@ -76081,11 +88745,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7284126984126984, + "max": 0.7284920634920634 + }, "related_data": { "qa": { "data_id": [ - "13_661142_476043" + "13_661142_476043@13" ] } } @@ -76094,7 +88761,7 @@ } ], "data": { - "uuid": "java-5-1236", + "uuid": "java-5-1265", "seg": [ [ [ @@ -76102,7 +88769,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7284126984126984, + "max": 0.7284920634920634 + }, "related_data": {} } } @@ -76113,7 +88783,7 @@ { "示例": { "data": { - "uuid": "java-6-540", + "uuid": "java-6-542", "seg": [ [ [ @@ -76121,26 +88791,33 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7284920634920634, + "max": 0.7285714285714285 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1237", + "uuid": "java-5-1266", "seg": [ [ [ - "计划" + "计划", + "计划任务" ] ] ], - "level": "1", + "level": { + "min": 0.7284920634920634, + "max": 0.7285714285714285 + }, "related_data": { "qa": { "data_id": [ - "13_716867_709889" + "13_716867_709889@13" ] } } @@ -76153,7 +88830,7 @@ { "示例": { "data": { - "uuid": "java-6-541", + "uuid": "java-6-543", "seg": [ [ [ @@ -76161,14 +88838,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7285714285714285, + "max": 0.7286507936507937 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1238", + "uuid": "java-5-1267", "seg": [ [ [ @@ -76178,7 +88858,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7285714285714285, + "max": 0.7286507936507937 + }, "related_data": {} } } @@ -76189,7 +88872,7 @@ { "示例": { "data": { - "uuid": "java-6-542", + "uuid": "java-6-544", "seg": [ [ [ @@ -76197,14 +88880,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7286507936507937, + "max": 0.7287301587301588 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1239", + "uuid": "java-5-1268", "seg": [ [ [ @@ -76216,7 +88902,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7286507936507937, + "max": 0.7287301587301588 + }, "related_data": {} } } @@ -76227,7 +88916,7 @@ { "第一类:直接导入配置类": { "data": { - "uuid": "java-6-543", + "uuid": "java-6-545", "seg": [ [ [] @@ -76240,7 +88929,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7287301587301588, + "max": 0.7287566137566138 + }, "related_data": {} } } @@ -76248,7 +88940,7 @@ { "第二类:依据条件选择配置类": { "data": { - "uuid": "java-6-544", + "uuid": "java-6-546", "seg": [ [ [] @@ -76262,7 +88954,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7287566137566138, + "max": 0.7287830687830688 + }, "related_data": {} } } @@ -76270,7 +88965,7 @@ { "第三类:动态注册Bean": { "data": { - "uuid": "java-6-545", + "uuid": "java-6-547", "seg": [ [ [] @@ -76283,14 +88978,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7287830687830688, + "max": 0.7288095238095238 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1240", + "uuid": "java-5-1269", "seg": [ [ [ @@ -76301,11 +88999,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7287301587301588, + "max": 0.7288095238095238 + }, "related_data": { "qa": { "data_id": [ - "13_714160_705908" + "13_714160_705908@13" ] } } @@ -76318,7 +89019,7 @@ { "示例": { "data": { - "uuid": "java-6-546", + "uuid": "java-6-548", "seg": [ [ [ @@ -76326,27 +89027,33 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7288095238095238, + "max": 0.7288888888888889 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1241", + "uuid": "java-5-1270", "seg": [ [ [] ] ], - "level": "1", + "level": { + "min": 0.7288095238095238, + "max": 0.7288888888888889 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1159", + "uuid": "java-4-1170", "seg": [ [ [ @@ -76356,11 +89063,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7283333333333333, + "max": 0.7288888888888889 + }, "related_data": { "qa": { "data_id": [ - "13_223987_182618" + "13_223987_182618@13" ] } } @@ -76369,7 +89079,7 @@ } ], "data": { - "uuid": "java-3-605", + "uuid": "java-3-598", "seg": [ [ [ @@ -76379,11 +89089,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7277777777777777, + "max": 0.7288888888888889 + }, "related_data": { "qa": { "data_id": [ - "13_710174_668096" + "13_710174_668096@13" ] } } @@ -76399,7 +89112,7 @@ { "Spring MVC概述": { "data": { - "uuid": "java-5-1242", + "uuid": "java-5-1271", "seg": [ [ [ @@ -76409,7 +89122,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7288888888888889, + "max": 0.7291111111111112 + }, "related_data": {} } } @@ -76417,7 +89133,7 @@ { "Spring MVC的常用注解": { "data": { - "uuid": "java-5-1243", + "uuid": "java-5-1272", "seg": [ [ [ @@ -76427,7 +89143,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7291111111111112, + "max": 0.7293333333333334 + }, "related_data": {} } } @@ -76438,23 +89157,27 @@ { "静态资源映射": { "data": { - "uuid": "java-6-547", + "uuid": "java-6-549", "seg": [ [ [ "静态", "资源", - "映射" + "映射", + "静态资源" ] ] ], - "level": "1", + "level": { + "min": 0.7293333333333334, + "max": 0.7293888888888889 + }, "related_data": { "qa": { "data_id": [ - "13_760193_817423", - "13_357726_374789", - "13_772045_835666" + "13_760193_817423@13", + "13_357726_374789@13", + "13_772045_835666@13" ] } } @@ -76464,7 +89187,7 @@ { "拦截器配置": { "data": { - "uuid": "java-6-548", + "uuid": "java-6-550", "seg": [ [ [ @@ -76473,7 +89196,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7293888888888889, + "max": 0.7294444444444445 + }, "related_data": {} } } @@ -76481,7 +89207,7 @@ { "@ControllerAdvice": { "data": { - "uuid": "java-6-549", + "uuid": "java-6-551", "seg": [ [ [ @@ -76489,7 +89215,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7294444444444445, + "max": 0.7295 + }, "related_data": {} } } @@ -76497,7 +89226,7 @@ { "其他配置": { "data": { - "uuid": "java-6-550", + "uuid": "java-6-552", "seg": [ [ [ @@ -76505,18 +89234,21 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7295, + "max": 0.7295555555555555 + }, "related_data": { "qa": { "data_id": [ - "13_1051211_1248385", - "13_199940_119308", - "13_224123_183089", - "13_1091691_1299247", - "13_199380_117423", - "13_871754_1003859", - "13_774265_838191", - "13_779776_850955" + "13_1051211_1248385@13", + "13_199940_119308@13", + "13_224123_183089@13", + "13_1091691_1299247@13", + "13_199380_117423@13", + "13_871754_1003859@13", + "13_774265_838191@13", + "13_779776_850955@13" ] } } @@ -76525,7 +89257,7 @@ } ], "data": { - "uuid": "java-5-1244", + "uuid": "java-5-1273", "seg": [ [ [ @@ -76535,7 +89267,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7293333333333334, + "max": 0.7295555555555555 + }, "related_data": {} } } @@ -76546,7 +89281,7 @@ { "文件上传配置": { "data": { - "uuid": "java-6-551", + "uuid": "java-6-553", "seg": [ [ [ @@ -76556,11 +89291,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7295555555555555, + "max": 0.7296296296296296 + }, "related_data": { "qa": { "data_id": [ - "13_1044248_1246298" + "13_1044248_1246298@13" ] } } @@ -76570,7 +89308,7 @@ { "自定义HttpMessageConverter": { "data": { - "uuid": "java-6-552", + "uuid": "java-6-554", "seg": [ [ [ @@ -76579,7 +89317,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7296296296296296, + "max": 0.7297037037037036 + }, "related_data": {} } } @@ -76587,7 +89328,7 @@ { "服务器端推送技术": { "data": { - "uuid": "java-6-553", + "uuid": "java-6-555", "seg": [ [ [ @@ -76597,12 +89338,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7297037037037036, + "max": 0.7297777777777777 + }, "related_data": { "qa": { "data_id": [ - "13_354781_367697", - "13_378449_410382" + "13_354781_367697@13", + "13_378449_410382@13" ] } } @@ -76611,7 +89355,7 @@ } ], "data": { - "uuid": "java-5-1245", + "uuid": "java-5-1274", "seg": [ [ [ @@ -76622,7 +89366,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7295555555555555, + "max": 0.7297777777777777 + }, "related_data": {} } } @@ -76630,7 +89377,7 @@ { "Spring MVC的测试": { "data": { - "uuid": "java-5-1246", + "uuid": "java-5-1275", "seg": [ [ [ @@ -76639,14 +89386,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7297777777777777, + "max": 0.73 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1160", + "uuid": "java-4-1171", "seg": [ [ [ @@ -76656,14 +89406,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7288888888888889, + "max": 0.73 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-606", + "uuid": "java-3-599", "seg": [ [ [ @@ -76674,7 +89427,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7288888888888889, + "max": 0.73 + }, "related_data": {} } } @@ -76688,7 +89444,7 @@ { "Java EE架构": { "data": { - "uuid": "java-5-1247", + "uuid": "java-5-1276", "seg": [ [ [ @@ -76698,14 +89454,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.73, + "max": 0.7301851851851852 + }, "related_data": { "qa": { "data_id": [ - "13_177624_60951", - "13_173143_51989", - "13_7438688_53412106", - "13_56484_10226" + "13_177624_60951@13", + "13_173143_51989@13", + "13_7438688_53412106@13", + "13_56484_10226@13" ] } } @@ -76715,7 +89474,7 @@ { "Java EE的缺点": { "data": { - "uuid": "java-5-1248", + "uuid": "java-5-1277", "seg": [ [ [ @@ -76725,14 +89484,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7301851851851852, + "max": 0.7303703703703703 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1161", + "uuid": "java-4-1172", "seg": [ [ [ @@ -76741,7 +89503,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.73, + "max": 0.7303703703703703 + }, "related_data": {} } } @@ -76749,7 +89514,7 @@ { "Spring Boot": { "data": { - "uuid": "java-4-1162", + "uuid": "java-4-1173", "seg": [ [ [ @@ -76758,7 +89523,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7303703703703703, + "max": 0.7307407407407408 + }, "related_data": {} } } @@ -76769,7 +89537,7 @@ { "创建一个Maven工程": { "data": { - "uuid": "java-5-1249", + "uuid": "java-5-1278", "seg": [ [ [ @@ -76779,12 +89547,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7307407407407408, + "max": 0.7308148148148149 + }, "related_data": { "qa": { "data_id": [ - "13_158863_23557", - "13_7445014_53423589" + "13_158863_23557@13", + "13_7445014_53423589@13" ] } } @@ -76794,7 +89565,7 @@ { "增加Web支持": { "data": { - "uuid": "java-5-1250", + "uuid": "java-5-1279", "seg": [ [ [ @@ -76804,7 +89575,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7308148148148149, + "max": 0.7308888888888889 + }, "related_data": {} } } @@ -76812,7 +89586,7 @@ { "Hello Spring Boot示例": { "data": { - "uuid": "java-5-1251", + "uuid": "java-5-1280", "seg": [ [ [ @@ -76823,12 +89597,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7308888888888889, + "max": 0.730962962962963 + }, "related_data": { "qa": { "data_id": [ - "13_7403961_53352719", - "13_368600_395048" + "13_7403961_53352719@13", + "13_368600_395048@13" ] } } @@ -76838,16 +89615,20 @@ { "使用热部署": { "data": { - "uuid": "java-5-1252", + "uuid": "java-5-1281", "seg": [ [ [ "热", - "部署" + "部署", + "热部署" ] ] ], - "level": "1", + "level": { + "min": 0.730962962962963, + "max": 0.731037037037037 + }, "related_data": {} } } @@ -76855,7 +89636,7 @@ { "添加REST支持": { "data": { - "uuid": "java-5-1253", + "uuid": "java-5-1282", "seg": [ [ [ @@ -76865,14 +89646,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.731037037037037, + "max": 0.7311111111111112 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1163", + "uuid": "java-4-1174", "seg": [ [ [ @@ -76882,14 +89666,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7307407407407408, + "max": 0.7311111111111112 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-607", + "uuid": "java-3-600", "seg": [ [ [ @@ -76899,7 +89686,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.73, + "max": 0.7311111111111112 + }, "related_data": {} } } @@ -76910,7 +89700,7 @@ { "检查Java环境与安装Java": { "data": { - "uuid": "java-4-1164", + "uuid": "java-4-1175", "seg": [ [ [ @@ -76924,7 +89714,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7311111111111112, + "max": 0.7314814814814815 + }, "related_data": {} } } @@ -76935,7 +89728,7 @@ { "Maven介绍": { "data": { - "uuid": "java-5-1254", + "uuid": "java-5-1283", "seg": [ [ [ @@ -76944,19 +89737,22 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7314814814814815, + "max": 0.7315555555555556 + }, "related_data": { "qa": { "data_id": [ - "13_680822_531842", - "13_836896_943156", - "13_856682_984024", - "13_213325_155980", - "13_671007_494283", - "13_357526_374324", - "13_692054_566189", - "13_7440978_53416682", - "13_702756_593315" + "13_680822_531842@13", + "13_836896_943156@13", + "13_856682_984024@13", + "13_213325_155980@13", + "13_671007_494283@13", + "13_357526_374324@13", + "13_692054_566189@13", + "13_7440978_53416682@13", + "13_702756_593315@13" ] } } @@ -76966,7 +89762,7 @@ { "安装Maven": { "data": { - "uuid": "java-5-1255", + "uuid": "java-5-1284", "seg": [ [ [ @@ -76975,12 +89771,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7315555555555556, + "max": 0.7316296296296296 + }, "related_data": { "qa": { "data_id": [ - "13_205597_136319", - "13_664924_482046" + "13_205597_136319@13", + "13_664924_482046@13" ] } } @@ -76990,7 +89789,7 @@ { "设置Maven": { "data": { - "uuid": "java-5-1256", + "uuid": "java-5-1285", "seg": [ [ [ @@ -76999,7 +89798,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7316296296296296, + "max": 0.7317037037037037 + }, "related_data": {} } } @@ -77007,7 +89809,7 @@ { "使用IDE设置Maven": { "data": { - "uuid": "java-5-1257", + "uuid": "java-5-1286", "seg": [ [ [ @@ -77017,7 +89819,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7317037037037037, + "max": 0.7317777777777777 + }, "related_data": {} } } @@ -77025,7 +89830,7 @@ { "Maven的常用命令": { "data": { - "uuid": "java-5-1258", + "uuid": "java-5-1287", "seg": [ [ [ @@ -77034,14 +89839,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7317777777777777, + "max": 0.7318518518518519 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1165", + "uuid": "java-4-1176", "seg": [ [ [ @@ -77053,7 +89861,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7314814814814815, + "max": 0.7318518518518519 + }, "related_data": {} } } @@ -77064,7 +89875,7 @@ { "Spring的历史": { "data": { - "uuid": "java-5-1259", + "uuid": "java-5-1288", "seg": [ [ [ @@ -77073,7 +89884,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7318518518518519, + "max": 0.7319753086419754 + }, "related_data": {} } } @@ -77081,7 +89895,7 @@ { "Spring容器介绍": { "data": { - "uuid": "java-5-1260", + "uuid": "java-5-1289", "seg": [ [ [ @@ -77091,7 +89905,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7319753086419754, + "max": 0.7320987654320987 + }, "related_data": {} } } @@ -77099,7 +89916,7 @@ { "Spring AOP介绍": { "data": { - "uuid": "java-5-1261", + "uuid": "java-5-1290", "seg": [ [ [ @@ -77109,14 +89926,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7320987654320987, + "max": 0.7322222222222222 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1166", + "uuid": "java-4-1177", "seg": [ [ [ @@ -77125,14 +89945,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7318518518518519, + "max": 0.7322222222222222 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-608", + "uuid": "java-3-601", "seg": [ [ [ @@ -77142,7 +89965,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7311111111111112, + "max": 0.7322222222222222 + }, "related_data": {} } } @@ -77156,7 +89982,7 @@ { "引入依赖": { "data": { - "uuid": "java-5-1262", + "uuid": "java-5-1291", "seg": [ [ [ @@ -77165,7 +89991,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7322222222222222, + "max": 0.7322633744855968 + }, "related_data": {} } } @@ -77173,21 +90002,25 @@ { "Web应用目录结构": { "data": { - "uuid": "java-5-1263", + "uuid": "java-5-1292", "seg": [ [ [ "web", "目录", - "结构" + "结构", + "目录结构" ] ] ], - "level": "1", + "level": { + "min": 0.7322633744855968, + "max": 0.7323045267489712 + }, "related_data": { "qa": { "data_id": [ - "13_7414649_53367904" + "13_7414649_53367904@13" ] } } @@ -77197,7 +90030,7 @@ { "Java包名结构": { "data": { - "uuid": "java-5-1264", + "uuid": "java-5-1293", "seg": [ [ [ @@ -77207,14 +90040,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7323045267489712, + "max": 0.7323456790123457 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1167", + "uuid": "java-4-1178", "seg": [ [ [ @@ -77224,7 +90060,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7322222222222222, + "max": 0.7323456790123457 + }, "related_data": {} } } @@ -77232,7 +90071,7 @@ { "使用Controller": { "data": { - "uuid": "java-4-1168", + "uuid": "java-4-1179", "seg": [ [ [ @@ -77240,20 +90079,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7323456790123457, + "max": 0.7324691358024691 + }, "related_data": { "qa": { "data_id": [ - "13_750350_803594", - "13_755131_811058", - "13_7415487_53368998", - "13_717677_711088", - "13_663134_479382", - "13_661227_476213", - "13_390547_435344", - "13_768307_828333", - "13_7434840_53405275", - "13_690184_559752" + "13_750350_803594@13", + "13_755131_811058@13", + "13_7415487_53368998@13", + "13_717677_711088@13", + "13_663134_479382@13", + "13_661227_476213@13", + "13_390547_435344@13", + "13_768307_828333@13", + "13_7434840_53405275@13", + "13_690184_559752@13" ] } } @@ -77266,7 +90108,7 @@ { "@RequestMapping": { "data": { - "uuid": "java-5-1265", + "uuid": "java-5-1294", "seg": [ [ [ @@ -77274,12 +90116,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7324691358024691, + "max": 0.7324938271604938 + }, "related_data": { "qa": { "data_id": [ - "13_379048_410839", - "13_367067_392209" + "13_379048_410839@13", + "13_367067_392209@13" ] } } @@ -77289,7 +90134,7 @@ { "URL路径匹配": { "data": { - "uuid": "java-5-1266", + "uuid": "java-5-1295", "seg": [ [ [ @@ -77299,20 +90144,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7324938271604938, + "max": 0.7325185185185185 + }, "related_data": { "qa": { "data_id": [ - "13_1093081_1302230", - "13_376137_405859", - "13_771921_834822", - "13_649194_454521", - "13_372269_399573", - "13_218552_168801", - "13_156254_17857", - "13_855747_980516", - "13_372224_399510", - "13_646990_449945" + "13_1093081_1302230@13", + "13_376137_405859@13", + "13_771921_834822@13", + "13_649194_454521@13", + "13_372269_399573@13", + "13_218552_168801@13", + "13_156254_17857@13", + "13_855747_980516@13", + "13_372224_399510@13", + "13_646990_449945@13" ] } } @@ -77322,7 +90170,7 @@ { "HTTP method匹配": { "data": { - "uuid": "java-5-1267", + "uuid": "java-5-1296", "seg": [ [ [ @@ -77332,12 +90180,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7325185185185185, + "max": 0.7325432098765432 + }, "related_data": { "qa": { "data_id": [ - "13_213052_155388", - "13_699824_588174" + "13_213052_155388@13", + "13_699824_588174@13" ] } } @@ -77347,7 +90198,7 @@ { "consumes和produces": { "data": { - "uuid": "java-5-1268", + "uuid": "java-5-1297", "seg": [ [ [ @@ -77358,7 +90209,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7325432098765432, + "max": 0.7325679012345678 + }, "related_data": {} } } @@ -77366,7 +90220,7 @@ { "params和header匹配": { "data": { - "uuid": "java-5-1269", + "uuid": "java-5-1298", "seg": [ [ [ @@ -77378,12 +90232,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7325679012345678, + "max": 0.7325925925925926 + }, "related_data": { "qa": { "data_id": [ - "13_155434_16387", - "13_352531_363217" + "13_155434_16387@13", + "13_352531_363217@13" ] } } @@ -77392,7 +90249,7 @@ } ], "data": { - "uuid": "java-4-1169", + "uuid": "java-4-1180", "seg": [ [ [ @@ -77402,7 +90259,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7324691358024691, + "max": 0.7325925925925926 + }, "related_data": {} } } @@ -77413,7 +90273,7 @@ { "PathVariable": { "data": { - "uuid": "java-5-1270", + "uuid": "java-5-1299", "seg": [ [ [ @@ -77421,7 +90281,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7325925925925926, + "max": 0.7326102292768959 + }, "related_data": {} } } @@ -77429,7 +90292,7 @@ { "Model&ModelAndView": { "data": { - "uuid": "java-5-1271", + "uuid": "java-5-1300", "seg": [ [ [ @@ -77438,13 +90301,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7326102292768959, + "max": 0.7326278659611993 + }, "related_data": { "qa": { "data_id": [ - "13_665646_483354", - "13_7402902_53351012", - "13_672659_498844" + "13_665646_483354@13", + "13_7402902_53351012@13", + "13_672659_498844@13" ] } } @@ -77454,7 +90320,7 @@ { "JavaBean接受HTTP参数": { "data": { - "uuid": "java-5-1272", + "uuid": "java-5-1301", "seg": [ [ [ @@ -77465,16 +90331,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7326278659611993, + "max": 0.7326455026455027 + }, "related_data": { "qa": { "data_id": [ - "13_228788_195522", - "13_235249_213626", - "13_229956_198650", - "13_226490_189058", - "13_644741_445774", - "13_7431292_53399597" + "13_228788_195522@13", + "13_235249_213626@13", + "13_229956_198650@13", + "13_226490_189058@13", + "13_644741_445774@13", + "13_7431292_53399597@13" ] } } @@ -77484,7 +90353,7 @@ { "@RequsetBody接受JSON": { "data": { - "uuid": "java-5-1273", + "uuid": "java-5-1302", "seg": [ [ [ @@ -77494,11 +90363,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7326455026455027, + "max": 0.732663139329806 + }, "related_data": { "qa": { "data_id": [ - "13_772105_835223" + "13_772105_835223@13" ] } } @@ -77508,7 +90380,7 @@ { "MultipartFile": { "data": { - "uuid": "java-5-1274", + "uuid": "java-5-1303", "seg": [ [ [ @@ -77516,11 +90388,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.732663139329806, + "max": 0.7326807760141093 + }, "related_data": { "qa": { "data_id": [ - "13_5714245_35403319" + "13_5714245_35403319@13" ] } } @@ -77530,7 +90405,7 @@ { "@ModelAttribute": { "data": { - "uuid": "java-5-1275", + "uuid": "java-5-1304", "seg": [ [ [ @@ -77538,7 +90413,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7326807760141093, + "max": 0.7326984126984127 + }, "related_data": {} } } @@ -77546,7 +90424,7 @@ { "@InitBinder": { "data": { - "uuid": "java-5-1276", + "uuid": "java-5-1305", "seg": [ [ [ @@ -77554,23 +90432,30 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7326984126984127, + "max": 0.7327160493827161 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1170", + "uuid": "java-4-1181", "seg": [ [ [ "方法", - "参数" + "参数", + "方法参数" ] ] ], - "level": "1", + "level": { + "min": 0.7325925925925926, + "max": 0.7327160493827161 + }, "related_data": {} } } @@ -77581,7 +90466,7 @@ { "JSR-": { "data": { - "uuid": "java-5-1277", + "uuid": "java-5-1306", "seg": [ [ [ @@ -77589,7 +90474,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7327160493827161, + "max": 0.7327572016460905 + }, "related_data": {} } } @@ -77597,7 +90485,7 @@ { "MVC中使用@Validated": { "data": { - "uuid": "java-5-1278", + "uuid": "java-5-1307", "seg": [ [ [ @@ -77606,7 +90494,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7327572016460905, + "max": 0.732798353909465 + }, "related_data": {} } } @@ -77614,7 +90505,7 @@ { "自定义校验": { "data": { - "uuid": "java-5-1279", + "uuid": "java-5-1308", "seg": [ [ [ @@ -77623,14 +90514,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.732798353909465, + "max": 0.7328395061728394 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1171", + "uuid": "java-4-1182", "seg": [ [ [ @@ -77639,7 +90533,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7327160493827161, + "max": 0.7328395061728394 + }, "related_data": {} } } @@ -77650,7 +90547,7 @@ { "跨域访问": { "data": { - "uuid": "java-5-1280", + "uuid": "java-5-1309", "seg": [ [ [ @@ -77659,12 +90556,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7328395061728394, + "max": 0.7329012345679011 + }, "related_data": { "qa": { "data_id": [ - "13_647049_450016", - "13_170097_46374" + "13_647049_450016@13", + "13_170097_46374@13" ] } } @@ -77674,7 +90574,7 @@ { "注册Controller": { "data": { - "uuid": "java-5-1281", + "uuid": "java-5-1310", "seg": [ [ [ @@ -77683,14 +90583,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7329012345679011, + "max": 0.7329629629629629 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1172", + "uuid": "java-4-1183", "seg": [ [ [ @@ -77698,7 +90601,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7328395061728394, + "max": 0.7329629629629629 + }, "related_data": {} } } @@ -77709,7 +90615,7 @@ { "使用Freemarker": { "data": { - "uuid": "java-5-1282", + "uuid": "java-5-1311", "seg": [ [ [ @@ -77717,17 +90623,20 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7329629629629629, + "max": 0.7329698216735253 + }, "related_data": { "qa": { "data_id": [ - "13_3535609_24444184", - "13_234044_210752", - "13_665819_483654", - "13_226762_189783", - "13_926506_1061747", - "13_692219_566691", - "13_1061149_1258929" + "13_3535609_24444184@13", + "13_234044_210752@13", + "13_665819_483654@13", + "13_226762_189783@13", + "13_926506_1061747@13", + "13_692219_566691@13", + "13_1061149_1258929@13" ] } } @@ -77737,7 +90646,7 @@ { "使用Beetl": { "data": { - "uuid": "java-5-1283", + "uuid": "java-5-1312", "seg": [ [ [ @@ -77745,7 +90654,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7329698216735253, + "max": 0.7329766803840878 + }, "related_data": {} } } @@ -77753,7 +90665,7 @@ { "使用Jackson": { "data": { - "uuid": "java-5-1284", + "uuid": "java-5-1313", "seg": [ [ [ @@ -77761,11 +90673,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7329766803840878, + "max": 0.7329835390946502 + }, "related_data": { "qa": { "data_id": [ - "13_767921_827697" + "13_767921_827697@13" ] } } @@ -77775,7 +90690,7 @@ { "Redirect和Forward": { "data": { - "uuid": "java-5-1285", + "uuid": "java-5-1314", "seg": [ [ [ @@ -77786,7 +90701,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7329835390946502, + "max": 0.7329903978052126 + }, "related_data": {} } } @@ -77797,7 +90715,7 @@ { "安装Beetl": { "data": { - "uuid": "java-6-554", + "uuid": "java-6-556", "seg": [ [ [ @@ -77806,7 +90724,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7329903978052126, + "max": 0.7329921124828531 + }, "related_data": {} } } @@ -77814,7 +90735,7 @@ { "设置定界符号和占位符": { "data": { - "uuid": "java-6-555", + "uuid": "java-6-557", "seg": [ [ [ @@ -77827,12 +90748,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7329921124828531, + "max": 0.7329938271604938 + }, "related_data": { "qa": { "data_id": [ - "13_377331_408017", - "13_200283_120818" + "13_377331_408017@13", + "13_200283_120818@13" ] } } @@ -77842,7 +90766,7 @@ { "配置Beetl": { "data": { - "uuid": "java-6-556", + "uuid": "java-6-558", "seg": [ [ [ @@ -77851,7 +90775,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7329938271604938, + "max": 0.7329955418381344 + }, "related_data": {} } } @@ -77859,7 +90786,7 @@ { "groupTemplate": { "data": { - "uuid": "java-6-557", + "uuid": "java-6-559", "seg": [ [ [ @@ -77867,24 +90794,31 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7329955418381344, + "max": 0.732997256515775 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1286", + "uuid": "java-5-1315", "seg": [ [ [ "beetl", "模板", - "引擎" + "引擎", + "模板引擎" ] ] ], - "level": "1", + "level": { + "min": 0.7329903978052126, + "max": 0.732997256515775 + }, "related_data": {} } } @@ -77895,7 +90829,7 @@ { "全局变量": { "data": { - "uuid": "java-6-558", + "uuid": "java-6-560", "seg": [ [ [ @@ -77903,12 +90837,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.732997256515775, + "max": 0.7329989711934156 + }, "related_data": { "qa": { "data_id": [ - "13_418755_437389", - "13_1090458_1297324" + "13_418755_437389@13", + "13_1090458_1297324@13" ] } } @@ -77918,7 +90855,7 @@ { "局部变量": { "data": { - "uuid": "java-6-559", + "uuid": "java-6-561", "seg": [ [ [ @@ -77926,7 +90863,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7329989711934156, + "max": 0.7330006858710563 + }, "related_data": {} } } @@ -77934,7 +90874,7 @@ { "共享变量": { "data": { - "uuid": "java-6-560", + "uuid": "java-6-562", "seg": [ [ [ @@ -77943,20 +90883,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7330006858710563, + "max": 0.7330024005486968 + }, "related_data": { "qa": { "data_id": [ - "13_1091155_1298464", - "13_756742_811898", - "13_1093191_1302379", - "13_238736_220960", - "13_227621_192057", - "13_198449_114315", - "13_196251_109041", - "13_696596_580660", - "13_748556_800558", - "13_743500_787890" + "13_1091155_1298464@13", + "13_756742_811898@13", + "13_1093191_1302379@13", + "13_238736_220960@13", + "13_227621_192057@13", + "13_198449_114315@13", + "13_196251_109041@13", + "13_696596_580660@13", + "13_748556_800558@13", + "13_743500_787890@13" ] } } @@ -77966,7 +90909,7 @@ { "模板变量": { "data": { - "uuid": "java-6-561", + "uuid": "java-6-563", "seg": [ [ [ @@ -77975,14 +90918,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7330024005486968, + "max": 0.7330041152263375 + }, "related_data": { "qa": { "data_id": [ - "13_214663_159468", - "13_654556_465792", - "13_1063696_1261844", - "13_764560_823244" + "13_214663_159468@13", + "13_654556_465792@13", + "13_1063696_1261844@13", + "13_764560_823244@13" ] } } @@ -77991,7 +90937,7 @@ } ], "data": { - "uuid": "java-5-1287", + "uuid": "java-5-1316", "seg": [ [ [ @@ -77999,7 +90945,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.732997256515775, + "max": 0.7330041152263375 + }, "related_data": {} } } @@ -78010,7 +90959,7 @@ { "计算表达式": { "data": { - "uuid": "java-6-562", + "uuid": "java-6-564", "seg": [ [ [ @@ -78019,20 +90968,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7330041152263375, + "max": 0.7330075445816187 + }, "related_data": { "qa": { "data_id": [ - "13_1092730_1300944", - "13_1062707_1260593", - "13_243907_232848", - "13_230845_200851", - "13_771523_834139", - "13_866430_996638", - "13_1093465_1302935", - "13_7463845_53450241", - "13_7438470_53411825", - "13_7405163_53354311" + "13_1092730_1300944@13", + "13_1062707_1260593@13", + "13_243907_232848@13", + "13_230845_200851@13", + "13_771523_834139@13", + "13_866430_996638@13", + "13_1093465_1302935@13", + "13_7463845_53450241@13", + "13_7438470_53411825@13", + "13_7405163_53354311@13" ] } } @@ -78042,21 +90994,25 @@ { "逻辑表达式": { "data": { - "uuid": "java-6-563", + "uuid": "java-6-565", "seg": [ [ [ "逻辑", - "表达式" + "表达式", + "逻辑表达式" ] ] ], - "level": "1", + "level": { + "min": 0.7330075445816187, + "max": 0.7330109739368998 + }, "related_data": { "qa": { "data_id": [ - "13_398864_436875", - "13_367848_393941" + "13_398864_436875@13", + "13_367848_393941@13" ] } } @@ -78065,7 +91021,7 @@ } ], "data": { - "uuid": "java-5-1288", + "uuid": "java-5-1317", "seg": [ [ [ @@ -78073,11 +91029,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7330041152263375, + "max": 0.7330109739368998 + }, "related_data": { "qa": { "data_id": [ - "13_247902_241933" + "13_247902_241933@13" ] } } @@ -78090,7 +91049,7 @@ { "循环语句": { "data": { - "uuid": "java-6-564", + "uuid": "java-6-566", "seg": [ [ [ @@ -78099,11 +91058,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7330109739368998, + "max": 0.733013260173754 + }, "related_data": { "qa": { "data_id": [ - "13_222281_177948" + "13_222281_177948@13" ] } } @@ -78113,7 +91075,7 @@ { "条件语句": { "data": { - "uuid": "java-6-565", + "uuid": "java-6-567", "seg": [ [ [ @@ -78121,7 +91083,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.733013260173754, + "max": 0.7330155464106081 + }, "related_data": {} } } @@ -78129,7 +91094,7 @@ { "try catch": { "data": { - "uuid": "java-6-566", + "uuid": "java-6-568", "seg": [ [ [ @@ -78138,16 +91103,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7330155464106081, + "max": 0.7330178326474622 + }, "related_data": { "qa": { "data_id": [ - "13_7446788_53426355", - "13_7431722_53400259", - "13_220952_174281", - "13_177370_60301", - "13_1095330_1306585", - "13_355489_369583" + "13_7446788_53426355@13", + "13_7431722_53400259@13", + "13_220952_174281@13", + "13_177370_60301@13", + "13_1095330_1306585@13", + "13_355489_369583@13" ] } } @@ -78156,7 +91124,7 @@ } ], "data": { - "uuid": "java-5-1289", + "uuid": "java-5-1318", "seg": [ [ [ @@ -78165,7 +91133,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7330109739368998, + "max": 0.7330178326474622 + }, "related_data": {} } } @@ -78173,7 +91144,7 @@ { "函数调用": { "data": { - "uuid": "java-5-1290", + "uuid": "java-5-1319", "seg": [ [ [ @@ -78181,11 +91152,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7330178326474622, + "max": 0.7330246913580247 + }, "related_data": { "qa": { "data_id": [ - "13_891287_1029648" + "13_891287_1029648@13" ] } } @@ -78195,16 +91169,20 @@ { "格式化函数": { "data": { - "uuid": "java-5-1291", + "uuid": "java-5-1320", "seg": [ [ [ "格式化", - "函数" + "函数", + "格式化函数" ] ] ], - "level": "1", + "level": { + "min": 0.7330246913580247, + "max": 0.7330315500685871 + }, "related_data": {} } } @@ -78212,7 +91190,7 @@ { "直接调用Java": { "data": { - "uuid": "java-5-1292", + "uuid": "java-5-1321", "seg": [ [ [ @@ -78221,7 +91199,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7330315500685871, + "max": 0.7330384087791495 + }, "related_data": {} } } @@ -78229,16 +91210,20 @@ { "标签函数": { "data": { - "uuid": "java-5-1293", + "uuid": "java-5-1322", "seg": [ [ [ "标签", - "函数" + "函数", + "标签函数" ] ] ], - "level": "1", + "level": { + "min": 0.7330384087791495, + "max": 0.7330452674897119 + }, "related_data": {} } } @@ -78246,7 +91231,7 @@ { "HTML标签": { "data": { - "uuid": "java-5-1294", + "uuid": "java-5-1323", "seg": [ [ [ @@ -78255,20 +91240,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7330452674897119, + "max": 0.7330521262002744 + }, "related_data": { "qa": { "data_id": [ - "13_364299_385746", - "13_253459_254822", - "13_749127_801472", - "13_654484_464208", - "13_486877_437989", - "13_241214_226901", - "13_564782_439977", - "13_743876_789062", - "13_346218_351357", - "13_388407_428286" + "13_364299_385746@13", + "13_253459_254822@13", + "13_749127_801472@13", + "13_654484_464208@13", + "13_486877_437989@13", + "13_241214_226901@13", + "13_564782_439977@13", + "13_743876_789062@13", + "13_346218_351357@13", + "13_388407_428286@13" ] } } @@ -78278,7 +91266,7 @@ { "安全输出": { "data": { - "uuid": "java-5-1295", + "uuid": "java-5-1324", "seg": [ [ [ @@ -78286,14 +91274,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7330521262002744, + "max": 0.7330589849108368 + }, "related_data": { "qa": { "data_id": [ - "13_1092900_1301629", - "13_221176_174822", - "13_751323_804896", - "13_765903_824932" + "13_1092900_1301629@13", + "13_221176_174822@13", + "13_751323_804896@13", + "13_765903_824932@13" ] } } @@ -78306,7 +91297,7 @@ { "自定义函数": { "data": { - "uuid": "java-6-567", + "uuid": "java-6-569", "seg": [ [ [ @@ -78315,12 +91306,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7330589849108368, + "max": 0.7330603566529492 + }, "related_data": { "qa": { "data_id": [ - "13_704177_595992", - "13_759145_815738" + "13_704177_595992@13", + "13_759145_815738@13" ] } } @@ -78330,17 +91324,21 @@ { "自定义格式化函数": { "data": { - "uuid": "java-6-568", + "uuid": "java-6-570", "seg": [ [ [ "自定义", "格式化", - "函数" + "函数", + "格式化函数" ] ] ], - "level": "1", + "level": { + "min": 0.7330603566529492, + "max": 0.7330617283950617 + }, "related_data": {} } } @@ -78348,17 +91346,21 @@ { "自定义标签函数": { "data": { - "uuid": "java-6-569", + "uuid": "java-6-571", "seg": [ [ [ "自定义", "标签", - "函数" + "函数", + "标签函数" ] ] ], - "level": "1", + "level": { + "min": 0.7330617283950617, + "max": 0.7330631001371742 + }, "related_data": {} } } @@ -78366,7 +91368,7 @@ { "自定义HTML标签": { "data": { - "uuid": "java-6-570", + "uuid": "java-6-572", "seg": [ [ [ @@ -78376,11 +91378,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7330631001371742, + "max": 0.7330644718792867 + }, "related_data": { "qa": { "data_id": [ - "13_367323_392825" + "13_367323_392825@13" ] } } @@ -78390,7 +91395,7 @@ { "AJAX局部渲染": { "data": { - "uuid": "java-6-571", + "uuid": "java-6-573", "seg": [ [ [ @@ -78400,20 +91405,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7330644718792867, + "max": 0.7330658436213991 + }, "related_data": { "qa": { "data_id": [ - "13_382060_416311", - "13_743376_787530", - "13_7436076_53407295", - "13_755675_811195", - "13_755616_811018", - "13_7410632_53361465", - "13_215377_161352", - "13_7437442_53410243", - "13_159866_25974", - "13_645478_448401" + "13_382060_416311@13", + "13_743376_787530@13", + "13_7436076_53407295@13", + "13_755675_811195@13", + "13_755616_811018@13", + "13_7410632_53361465@13", + "13_215377_161352@13", + "13_7437442_53410243@13", + "13_159866_25974@13", + "13_645478_448401@13" ] } } @@ -78422,7 +91430,7 @@ } ], "data": { - "uuid": "java-5-1296", + "uuid": "java-5-1325", "seg": [ [ [ @@ -78431,7 +91439,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7330589849108368, + "max": 0.7330658436213991 + }, "related_data": {} } } @@ -78439,20 +91450,24 @@ { "脚本引擎": { "data": { - "uuid": "java-5-1297", + "uuid": "java-5-1326", "seg": [ [ [ "脚本", - "引擎" + "引擎", + "脚本引擎" ] ] ], - "level": "1", + "level": { + "min": 0.7330658436213991, + "max": 0.7330727023319615 + }, "related_data": { "qa": { "data_id": [ - "13_7450516_53431174" + "13_7450516_53431174@13" ] } } @@ -78465,7 +91480,7 @@ { "在Spring Boot中使用Jackson": { "data": { - "uuid": "java-6-572", + "uuid": "java-6-574", "seg": [ [ [ @@ -78475,7 +91490,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7330727023319615, + "max": 0.7330735596707818 + }, "related_data": {} } } @@ -78483,7 +91501,7 @@ { "自定义ObjectMapper": { "data": { - "uuid": "java-6-573", + "uuid": "java-6-575", "seg": [ [ [ @@ -78492,7 +91510,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7330735596707818, + "max": 0.7330744170096022 + }, "related_data": {} } } @@ -78500,7 +91521,7 @@ { "Jackson的三种使用方式": { "data": { - "uuid": "java-6-574", + "uuid": "java-6-576", "seg": [ [ [ @@ -78509,7 +91530,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7330744170096022, + "max": 0.7330752743484225 + }, "related_data": {} } } @@ -78517,7 +91541,7 @@ { "Jackson树遍历": { "data": { - "uuid": "java-6-575", + "uuid": "java-6-577", "seg": [ [ [ @@ -78527,13 +91551,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7330752743484225, + "max": 0.7330761316872427 + }, "related_data": { "qa": { "data_id": [ - "13_388695_428651", - "13_348674_373372", - "13_387701_426985" + "13_388695_428651@13", + "13_348674_373372@13", + "13_387701_426985@13" ] } } @@ -78543,7 +91570,7 @@ { "对象绑定": { "data": { - "uuid": "java-6-576", + "uuid": "java-6-578", "seg": [ [ [ @@ -78552,19 +91579,22 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7330761316872427, + "max": 0.7330769890260631 + }, "related_data": { "qa": { "data_id": [ - "13_1064352_1262639", - "13_644839_445853", - "13_24942_6593", - "13_3769850_29328916", - "13_649316_454962", - "13_3416_4381", - "13_1705_2723", - "13_766359_825598", - "13_251004_248858" + "13_1064352_1262639@13", + "13_644839_445853@13", + "13_24942_6593@13", + "13_3769850_29328916@13", + "13_649316_454962@13", + "13_3416_4381@13", + "13_1705_2723@13", + "13_766359_825598@13", + "13_251004_248858@13" ] } } @@ -78574,7 +91604,7 @@ { "流式操作": { "data": { - "uuid": "java-6-577", + "uuid": "java-6-579", "seg": [ [ [ @@ -78583,11 +91613,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7330769890260631, + "max": 0.7330778463648834 + }, "related_data": { "qa": { "data_id": [ - "13_921858_1056787" + "13_921858_1056787@13" ] } } @@ -78597,7 +91630,7 @@ { "Jackson注解": { "data": { - "uuid": "java-6-578", + "uuid": "java-6-580", "seg": [ [ [ @@ -78606,7 +91639,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7330778463648834, + "max": 0.7330787037037038 + }, "related_data": {} } } @@ -78614,7 +91650,7 @@ { "集合的反序列化": { "data": { - "uuid": "java-6-579", + "uuid": "java-6-581", "seg": [ [ [ @@ -78624,12 +91660,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7330787037037038, + "max": 0.733079561042524 + }, "related_data": { "qa": { "data_id": [ - "13_231103_201571", - "13_190107_90250" + "13_231103_201571@13", + "13_190107_90250@13" ] } } @@ -78638,7 +91677,7 @@ } ], "data": { - "uuid": "java-5-1298", + "uuid": "java-5-1327", "seg": [ [ [ @@ -78647,20 +91686,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7330727023319615, + "max": 0.733079561042524 + }, "related_data": { "qa": { "data_id": [ - "13_344864_348475", - "13_747222_798243", - "13_7434730_53405105", - "13_7463384_53449249", - "13_1079913_1284870", - "13_7449426_53429447", - "13_744900_791689", - "13_666151_484098", - "13_1077924_1282356", - "13_175975_57490" + "13_344864_348475@13", + "13_747222_798243@13", + "13_7434730_53405105@13", + "13_7463384_53449249@13", + "13_1079913_1284870@13", + "13_7449426_53429447@13", + "13_744900_791689@13", + "13_666151_484098@13", + "13_1077924_1282356@13", + "13_175975_57490@13" ] } } @@ -78673,7 +91715,7 @@ { "集成WebSimulate": { "data": { - "uuid": "java-6-580", + "uuid": "java-6-582", "seg": [ [ [ @@ -78682,7 +91724,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.733079561042524, + "max": 0.7330818472793782 + }, "related_data": {} } } @@ -78690,7 +91735,7 @@ { "模拟JSON响应": { "data": { - "uuid": "java-6-581", + "uuid": "java-6-583", "seg": [ [ [ @@ -78700,7 +91745,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7330818472793782, + "max": 0.7330841335162323 + }, "related_data": {} } } @@ -78708,7 +91756,7 @@ { "模拟模板渲染": { "data": { - "uuid": "java-6-582", + "uuid": "java-6-584", "seg": [ [ [ @@ -78718,14 +91766,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7330841335162323, + "max": 0.7330864197530864 + }, "related_data": {} } } } ], "data": { - "uuid": "java-5-1299", + "uuid": "java-5-1328", "seg": [ [ [ @@ -78735,23 +91786,30 @@ ] ] ], - "level": "1", + "level": { + "min": 0.733079561042524, + "max": 0.7330864197530864 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1173", + "uuid": "java-4-1184", "seg": [ [ [ "视图", - "技术" + "技术", + "视图技术" ] ] ], - "level": "1", + "level": { + "min": 0.7329629629629629, + "max": 0.7330864197530864 + }, "related_data": {} } } @@ -78759,7 +91817,7 @@ { "通用错误处理": { "data": { - "uuid": "java-4-1174", + "uuid": "java-4-1185", "seg": [ [ [ @@ -78768,7 +91826,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7330864197530864, + "max": 0.7332098765432098 + }, "related_data": {} } } @@ -78776,7 +91837,7 @@ { "curl命令": { "data": { - "uuid": "java-4-1175", + "uuid": "java-4-1186", "seg": [ [ [ @@ -78785,14 +91846,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7332098765432098, + "max": 0.7333333333333333 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-609", + "uuid": "java-3-602", "seg": [ [ [ @@ -78801,7 +91865,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7322222222222222, + "max": 0.7333333333333333 + }, "related_data": {} } } @@ -78812,7 +91879,7 @@ { "配置数据源": { "data": { - "uuid": "java-4-1176", + "uuid": "java-4-1187", "seg": [ [ [ @@ -78821,7 +91888,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7333333333333333, + "max": 0.7334259259259259 + }, "related_data": {} } } @@ -78832,7 +91902,7 @@ { "查询": { "data": { - "uuid": "java-5-1300", + "uuid": "java-5-1329", "seg": [ [ [ @@ -78840,12 +91910,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7334259259259259, + "max": 0.7334567901234568 + }, "related_data": { "qa": { "data_id": [ - "13_7441527_53417756", - "13_379068_410832" + "13_7441527_53417756@13", + "13_379068_410832@13" ] } } @@ -78855,7 +91928,7 @@ { "修改": { "data": { - "uuid": "java-5-1301", + "uuid": "java-5-1330", "seg": [ [ [ @@ -78863,20 +91936,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7334567901234568, + "max": 0.7334876543209876 + }, "related_data": { "qa": { "data_id": [ - "13_223438_181694", - "13_752958_807367", - "13_7413450_53365370", - "13_7434873_53405320", - "13_186768_80172", - "13_7440213_53415355", - "13_7457637_53441984", - "13_717507_710821", - "13_671548_495540", - "13_720777_726113" + "13_223438_181694@13", + "13_752958_807367@13", + "13_7413450_53365370@13", + "13_7434873_53405320@13", + "13_186768_80172@13", + "13_7440213_53415355@13", + "13_7457637_53441984@13", + "13_717507_710821@13", + "13_671548_495540@13", + "13_720777_726113@13" ] } } @@ -78886,7 +91962,7 @@ { "JdbcTemplate增强": { "data": { - "uuid": "java-5-1302", + "uuid": "java-5-1331", "seg": [ [ [ @@ -78895,14 +91971,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7334876543209876, + "max": 0.7335185185185185 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1177", + "uuid": "java-4-1188", "seg": [ [ [ @@ -78912,7 +91991,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7334259259259259, + "max": 0.7335185185185185 + }, "related_data": {} } } @@ -78923,17 +92005,21 @@ { "BeetlSQL功能概览": { "data": { - "uuid": "java-5-1303", + "uuid": "java-5-1332", "seg": [ [ [ "beetlsql", "功能", - "概览" + "概览", + "功能概览" ] ] ], - "level": "2", + "level": { + "min": 0.7335185185185185, + "max": 0.7335339506172839 + }, "related_data": {} } } @@ -78941,7 +92027,7 @@ { "添加Maven依赖": { "data": { - "uuid": "java-5-1304", + "uuid": "java-5-1333", "seg": [ [ [ @@ -78951,7 +92037,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7335339506172839, + "max": 0.7335493827160493 + }, "related_data": {} } } @@ -78959,7 +92048,7 @@ { "配置BeetlSQL": { "data": { - "uuid": "java-5-1305", + "uuid": "java-5-1334", "seg": [ [ [ @@ -78968,7 +92057,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7335493827160493, + "max": 0.7335648148148148 + }, "related_data": {} } } @@ -78976,7 +92068,7 @@ { "SQLManager": { "data": { - "uuid": "java-5-1306", + "uuid": "java-5-1335", "seg": [ [ [ @@ -78984,7 +92076,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7335648148148148, + "max": 0.7335802469135803 + }, "related_data": {} } } @@ -78992,7 +92087,7 @@ { "使用SQL文件": { "data": { - "uuid": "java-5-1307", + "uuid": "java-5-1336", "seg": [ [ [ @@ -79001,7 +92096,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7335802469135803, + "max": 0.7335956790123457 + }, "related_data": {} } } @@ -79009,7 +92107,7 @@ { "使用实体": { "data": { - "uuid": "java-5-1308", + "uuid": "java-5-1337", "seg": [ [ [ @@ -79017,14 +92115,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7335956790123457, + "max": 0.7336111111111111 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1178", + "uuid": "java-4-1189", "seg": [ [ [ @@ -79033,7 +92134,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7335185185185185, + "max": 0.7336111111111111 + }, "related_data": {} } } @@ -79044,7 +92148,7 @@ { "内置的插入API": { "data": { - "uuid": "java-5-1309", + "uuid": "java-5-1338", "seg": [ [ [ @@ -79054,7 +92158,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7336111111111111, + "max": 0.7336342592592593 + }, "related_data": {} } } @@ -79062,7 +92169,7 @@ { "内置的更新(删除)API": { "data": { - "uuid": "java-5-1310", + "uuid": "java-5-1339", "seg": [ [ [ @@ -79073,7 +92180,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7336342592592593, + "max": 0.7336574074074074 + }, "related_data": {} } } @@ -79081,7 +92191,7 @@ { "内置的查询API": { "data": { - "uuid": "java-5-1311", + "uuid": "java-5-1340", "seg": [ [ [ @@ -79091,7 +92201,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7336574074074074, + "max": 0.7336805555555554 + }, "related_data": {} } } @@ -79099,23 +92212,27 @@ { "代码生成方法": { "data": { - "uuid": "java-5-1312", + "uuid": "java-5-1341", "seg": [ [ [ "代码生成", - "方法" + "方法", + "代码生成方法" ] ] ], - "level": "1", + "level": { + "min": 0.7336805555555554, + "max": 0.7337037037037036 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1179", + "uuid": "java-4-1190", "seg": [ [ [ @@ -79125,11 +92242,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7336111111111111, + "max": 0.7337037037037036 + }, "related_data": { "qa": { "data_id": [ - "13_273892_300175" + "13_273892_300175@13" ] } } @@ -79142,17 +92262,21 @@ { "md文件命名": { "data": { - "uuid": "java-5-1313", + "uuid": "java-5-1342", "seg": [ [ [ "md", "文件", - "命名" + "命名", + "文件命名" ] ] ], - "level": "2", + "level": { + "min": 0.7337037037037036, + "max": 0.7337152777777777 + }, "related_data": {} } } @@ -79160,7 +92284,7 @@ { "md文件构成": { "data": { - "uuid": "java-5-1314", + "uuid": "java-5-1343", "seg": [ [ [ @@ -79169,11 +92293,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7337152777777777, + "max": 0.7337268518518518 + }, "related_data": { "qa": { "data_id": [ - "13_372147_400508" + "13_372147_400508@13" ] } } @@ -79183,7 +92310,7 @@ { "调用sqlId": { "data": { - "uuid": "java-5-1315", + "uuid": "java-5-1344", "seg": [ [ [ @@ -79192,7 +92319,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7337268518518518, + "max": 0.7337384259259259 + }, "related_data": {} } } @@ -79200,7 +92330,7 @@ { "翻页查询": { "data": { - "uuid": "java-5-1316", + "uuid": "java-5-1345", "seg": [ [ [ @@ -79209,7 +92339,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7337384259259259, + "max": 0.7337499999999999 + }, "related_data": {} } } @@ -79217,7 +92350,7 @@ { "TailBean": { "data": { - "uuid": "java-5-1317", + "uuid": "java-5-1346", "seg": [ [ [ @@ -79225,7 +92358,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7337499999999999, + "max": 0.733761574074074 + }, "related_data": {} } } @@ -79233,7 +92369,7 @@ { "ORM查询": { "data": { - "uuid": "java-5-1318", + "uuid": "java-5-1347", "seg": [ [ [ @@ -79242,11 +92378,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.733761574074074, + "max": 0.7337731481481481 + }, "related_data": { "qa": { "data_id": [ - "13_745193_792589" + "13_745193_792589@13" ] } } @@ -79256,7 +92395,7 @@ { "其他API": { "data": { - "uuid": "java-5-1319", + "uuid": "java-5-1348", "seg": [ [ [ @@ -79264,12 +92403,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7337731481481481, + "max": 0.7337847222222222 + }, "related_data": { "qa": { "data_id": [ - "13_216623_164027", - "13_269328_290156" + "13_216623_164027@13", + "13_269328_290156@13" ] } } @@ -79279,7 +92421,7 @@ { "Mapper详解": { "data": { - "uuid": "java-5-1320", + "uuid": "java-5-1349", "seg": [ [ [ @@ -79288,14 +92430,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7337847222222222, + "max": 0.7337962962962963 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1180", + "uuid": "java-4-1191", "seg": [ [ [ @@ -79303,7 +92448,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7337037037037036, + "max": 0.7337962962962963 + }, "related_data": {} } } @@ -79314,7 +92462,7 @@ { "常用函数和标签": { "data": { - "uuid": "java-5-1321", + "uuid": "java-5-1350", "seg": [ [ [ @@ -79325,7 +92473,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7337962962962963, + "max": 0.7338194444444444 + }, "related_data": {} } } @@ -79333,7 +92484,7 @@ { "主键设置": { "data": { - "uuid": "java-5-1322", + "uuid": "java-5-1351", "seg": [ [ [ @@ -79342,7 +92493,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7338194444444444, + "max": 0.7338425925925925 + }, "related_data": {} } } @@ -79350,7 +92504,7 @@ { "BeetlSQL注解": { "data": { - "uuid": "java-5-1323", + "uuid": "java-5-1352", "seg": [ [ [ @@ -79359,7 +92513,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7338425925925925, + "max": 0.7338657407407407 + }, "related_data": {} } } @@ -79367,7 +92524,7 @@ { "NameConversion": { "data": { - "uuid": "java-5-1324", + "uuid": "java-5-1353", "seg": [ [ [ @@ -79375,14 +92532,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7338657407407407, + "max": 0.7338888888888888 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1181", + "uuid": "java-4-1192", "seg": [ [ [ @@ -79391,7 +92551,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7337962962962963, + "max": 0.7338888888888888 + }, "related_data": {} } } @@ -79399,7 +92562,7 @@ { "使用JDBC": { "data": { - "uuid": "java-4-1182", + "uuid": "java-4-1193", "seg": [ [ [ @@ -79407,7 +92570,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7338888888888888, + "max": 0.7339814814814815 + }, "related_data": {} } } @@ -79415,7 +92581,7 @@ { "使用DAO": { "data": { - "uuid": "java-4-1183", + "uuid": "java-4-1194", "seg": [ [ [ @@ -79423,15 +92589,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7339814814814815, + "max": 0.7340740740740741 + }, "related_data": { "qa": { "data_id": [ - "13_219800_171602", - "13_686660_548648", - "13_236735_216183", - "13_750992_804407", - "13_366442_390953" + "13_219800_171602@13", + "13_686660_548648@13", + "13_236735_216183@13", + "13_750992_804407@13", + "13_366442_390953@13" ] } } @@ -79441,7 +92610,7 @@ { "集成Hibernate": { "data": { - "uuid": "java-4-1184", + "uuid": "java-4-1195", "seg": [ [ [ @@ -79450,7 +92619,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7340740740740741, + "max": 0.7341666666666666 + }, "related_data": {} } } @@ -79458,7 +92630,7 @@ { "集成JPA": { "data": { - "uuid": "java-4-1185", + "uuid": "java-4-1196", "seg": [ [ [ @@ -79467,7 +92639,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7341666666666666, + "max": 0.7342592592592593 + }, "related_data": {} } } @@ -79475,7 +92650,7 @@ { "集成MyBatis": { "data": { - "uuid": "java-4-1186", + "uuid": "java-4-1197", "seg": [ [ [ @@ -79484,7 +92659,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7342592592592593, + "max": 0.7343518518518518 + }, "related_data": {} } } @@ -79492,7 +92670,7 @@ { "设计ORM": { "data": { - "uuid": "java-4-1187", + "uuid": "java-4-1198", "seg": [ [ [ @@ -79501,14 +92679,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7343518518518518, + "max": 0.7344444444444445 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-610", + "uuid": "java-3-603", "seg": [ [ [ @@ -79517,7 +92698,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7333333333333333, + "max": 0.7344444444444445 + }, "related_data": {} } } @@ -79531,7 +92715,7 @@ { "集成数据源": { "data": { - "uuid": "java-5-1325", + "uuid": "java-5-1354", "seg": [ [ [ @@ -79540,11 +92724,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7344444444444445, + "max": 0.7345833333333334 + }, "related_data": { "qa": { "data_id": [ - "13_774079_838007" + "13_774079_838007@13" ] } } @@ -79554,7 +92741,7 @@ { "配置JPA支持": { "data": { - "uuid": "java-5-1326", + "uuid": "java-5-1355", "seg": [ [ [ @@ -79564,17 +92751,20 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7345833333333334, + "max": 0.7347222222222223 + }, "related_data": { "qa": { "data_id": [ - "13_7403261_53351594", - "13_802252_896764", - "13_1099646_1314630", - "13_694349_708097", - "13_1095177_1306187", - "13_756196_811481", - "13_7431774_53400553" + "13_7403261_53351594@13", + "13_802252_896764@13", + "13_1099646_1314630@13", + "13_694349_708097@13", + "13_1095177_1306187@13", + "13_756196_811481@13", + "13_7431774_53400553@13" ] } } @@ -79584,7 +92774,7 @@ { "创建Entity": { "data": { - "uuid": "java-5-1327", + "uuid": "java-5-1356", "seg": [ [ [ @@ -79593,7 +92783,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7347222222222223, + "max": 0.7348611111111111 + }, "related_data": {} } } @@ -79601,7 +92794,7 @@ { "简化Entity": { "data": { - "uuid": "java-5-1328", + "uuid": "java-5-1357", "seg": [ [ [ @@ -79610,14 +92803,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7348611111111111, + "max": 0.735 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1188", + "uuid": "java-4-1199", "seg": [ [ [ @@ -79628,7 +92824,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7344444444444445, + "max": 0.735 + }, "related_data": {} } } @@ -79639,7 +92838,7 @@ { "CrudRepository": { "data": { - "uuid": "java-5-1329", + "uuid": "java-5-1358", "seg": [ [ [ @@ -79647,7 +92846,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.735, + "max": 0.7350555555555556 + }, "related_data": {} } } @@ -79655,7 +92857,7 @@ { "PagingAndSortingRepository": { "data": { - "uuid": "java-5-1330", + "uuid": "java-5-1359", "seg": [ [ [ @@ -79663,7 +92865,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7350555555555556, + "max": 0.735111111111111 + }, "related_data": {} } } @@ -79671,7 +92876,7 @@ { "JpaRepository": { "data": { - "uuid": "java-5-1331", + "uuid": "java-5-1360", "seg": [ [ [ @@ -79679,7 +92884,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.735111111111111, + "max": 0.7351666666666666 + }, "related_data": {} } } @@ -79687,7 +92895,7 @@ { "持久化Entity": { "data": { - "uuid": "java-5-1332", + "uuid": "java-5-1361", "seg": [ [ [ @@ -79697,7 +92905,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7351666666666666, + "max": 0.7352222222222222 + }, "related_data": {} } } @@ -79705,7 +92916,7 @@ { "Sort": { "data": { - "uuid": "java-5-1333", + "uuid": "java-5-1362", "seg": [ [ [ @@ -79713,13 +92924,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7352222222222222, + "max": 0.7352777777777777 + }, "related_data": { "qa": { "data_id": [ - "13_7412377_53363996", - "13_349890_357968", - "13_678697_523586" + "13_7412377_53363996@13", + "13_349890_357968@13", + "13_678697_523586@13" ] } } @@ -79729,7 +92943,7 @@ { "Pageable和Page": { "data": { - "uuid": "java-5-1334", + "uuid": "java-5-1363", "seg": [ [ [ @@ -79740,12 +92954,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7352777777777777, + "max": 0.7353333333333333 + }, "related_data": { "qa": { "data_id": [ - "13_7415379_53368781", - "13_1049083_1246652" + "13_7415379_53368781@13", + "13_1049083_1246652@13" ] } } @@ -79755,17 +92972,21 @@ { "基于方法名字查询": { "data": { - "uuid": "java-5-1335", + "uuid": "java-5-1364", "seg": [ [ [ "方法", "名字", - "查询" + "查询", + "方法名字" ] ] ], - "level": "1", + "level": { + "min": 0.7353333333333333, + "max": 0.7353888888888889 + }, "related_data": {} } } @@ -79773,7 +92994,7 @@ { "@Query查询": { "data": { - "uuid": "java-5-1336", + "uuid": "java-5-1365", "seg": [ [ [ @@ -79782,12 +93003,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7353888888888889, + "max": 0.7354444444444445 + }, "related_data": { "qa": { "data_id": [ - "13_1061927_1259795", - "13_367254_392702" + "13_1061927_1259795@13", + "13_367254_392702@13" ] } } @@ -79797,7 +93021,7 @@ { "使用JPA Query": { "data": { - "uuid": "java-5-1337", + "uuid": "java-5-1366", "seg": [ [ [ @@ -79806,7 +93030,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7354444444444445, + "max": 0.7354999999999999 + }, "related_data": {} } } @@ -79814,7 +93041,7 @@ { "Example查询": { "data": { - "uuid": "java-5-1338", + "uuid": "java-5-1367", "seg": [ [ [ @@ -79823,14 +93050,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7354999999999999, + "max": 0.7355555555555555 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1189", + "uuid": "java-4-1200", "seg": [ [ [ @@ -79838,14 +93068,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.735, + "max": 0.7355555555555555 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-611", + "uuid": "java-3-604", "seg": [ [ [ @@ -79855,7 +93088,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7344444444444445, + "max": 0.7355555555555555 + }, "related_data": {} } } @@ -79869,7 +93105,7 @@ { "服务器配置": { "data": { - "uuid": "java-5-1339", + "uuid": "java-5-1368", "seg": [ [ [ @@ -79878,20 +93114,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7355555555555555, + "max": 0.735625 + }, "related_data": { "qa": { "data_id": [ - "13_7441146_53416956", - "13_773444_838349", - "13_3198064_21755178", - "13_762081_820923", - "13_771378_833913", - "13_677041_517774", - "13_383906_420001", - "13_753345_807820", - "13_659135_472673", - "13_1061251_1315591" + "13_773444_838349@13", + "13_3198064_21755178@13", + "13_762081_820923@13", + "13_771378_833913@13", + "13_677041_517774@13", + "13_383906_420001@13", + "13_753345_807820@13", + "13_1061251_1315591@13", + "13_7441009_53417070@13", + "13_354705_367512@13" ] } } @@ -79901,7 +93140,7 @@ { "使用其他Web服务器": { "data": { - "uuid": "java-5-1340", + "uuid": "java-5-1369", "seg": [ [ [ @@ -79910,11 +93149,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.735625, + "max": 0.7356944444444444 + }, "related_data": { "qa": { "data_id": [ - "13_1080537_1286199" + "13_1080537_1286199@13" ] } } @@ -79924,7 +93166,7 @@ { "配置启动信息": { "data": { - "uuid": "java-5-1341", + "uuid": "java-5-1370", "seg": [ [ [ @@ -79934,12 +93176,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7356944444444444, + "max": 0.7357638888888889 + }, "related_data": { "qa": { "data_id": [ - "13_390438_432968", - "13_669771_492828" + "13_390438_432968@13", + "13_669771_492828@13" ] } } @@ -79949,7 +93194,7 @@ { "配置浏览器显示ico": { "data": { - "uuid": "java-5-1342", + "uuid": "java-5-1371", "seg": [ [ [ @@ -79960,11 +93205,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7357638888888889, + "max": 0.7358333333333333 + }, "related_data": { "qa": { "data_id": [ - "13_657723_470474" + "13_657723_470474@13" ] } } @@ -79973,7 +93221,7 @@ } ], "data": { - "uuid": "java-4-1190", + "uuid": "java-4-1201", "seg": [ [ [ @@ -79983,7 +93231,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7355555555555555, + "max": 0.7358333333333333 + }, "related_data": {} } } @@ -79991,7 +93242,7 @@ { "日志配置": { "data": { - "uuid": "java-4-1191", + "uuid": "java-4-1202", "seg": [ [ [ @@ -80000,7 +93251,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7358333333333333, + "max": 0.7361111111111112 + }, "related_data": {} } } @@ -80011,7 +93265,7 @@ { "Environment": { "data": { - "uuid": "java-5-1343", + "uuid": "java-5-1372", "seg": [ [ [ @@ -80019,7 +93273,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7361111111111112, + "max": 0.7362037037037037 + }, "related_data": {} } } @@ -80027,7 +93284,7 @@ { "@Value": { "data": { - "uuid": "java-5-1344", + "uuid": "java-5-1373", "seg": [ [ [ @@ -80035,18 +93292,21 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7362037037037037, + "max": 0.7362962962962963 + }, "related_data": { "qa": { "data_id": [ - "13_273850_300091", - "13_752562_806650", - "13_7432335_53401410", - "13_226144_188282", - "13_252209_251624", - "13_392519_436084", - "13_7441910_53418448", - "13_700116_828934" + "13_273850_300091@13", + "13_752562_806650@13", + "13_7432335_53401410@13", + "13_226144_188282@13", + "13_252209_251624@13", + "13_392519_436084@13", + "13_7441910_53418448@13", + "13_700116_828934@13" ] } } @@ -80056,7 +93316,7 @@ { "@ConfigurationProperties": { "data": { - "uuid": "java-5-1345", + "uuid": "java-5-1374", "seg": [ [ [ @@ -80064,14 +93324,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7362962962962963, + "max": 0.7363888888888889 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1192", + "uuid": "java-4-1203", "seg": [ [ [ @@ -80080,7 +93343,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7361111111111112, + "max": 0.7363888888888889 + }, "related_data": {} } } @@ -80091,7 +93357,7 @@ { "@Configuration和@Bean": { "data": { - "uuid": "java-5-1346", + "uuid": "java-5-1375", "seg": [ [ [ @@ -80102,7 +93368,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7363888888888889, + "max": 0.7364236111111111 + }, "related_data": {} } } @@ -80110,7 +93379,7 @@ { "Bean条件装配": { "data": { - "uuid": "java-5-1347", + "uuid": "java-5-1376", "seg": [ [ [ @@ -80120,7 +93389,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7364236111111111, + "max": 0.7364583333333333 + }, "related_data": {} } } @@ -80128,7 +93400,7 @@ { "Class条件装配": { "data": { - "uuid": "java-5-1348", + "uuid": "java-5-1377", "seg": [ [ [ @@ -80138,7 +93410,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7364583333333333, + "max": 0.7364930555555556 + }, "related_data": {} } } @@ -80146,7 +93421,7 @@ { "Environment装配": { "data": { - "uuid": "java-5-1349", + "uuid": "java-5-1378", "seg": [ [ [ @@ -80155,7 +93430,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7364930555555556, + "max": 0.7365277777777778 + }, "related_data": {} } } @@ -80163,7 +93441,7 @@ { "其他条件装配": { "data": { - "uuid": "java-5-1350", + "uuid": "java-5-1379", "seg": [ [ [ @@ -80172,13 +93450,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7365277777777778, + "max": 0.7365625 + }, "related_data": { "qa": { "data_id": [ - "13_380290_412984", - "13_1101074_1315692", - "13_7440764_53416259" + "13_380290_412984@13", + "13_1101074_1315692@13", + "13_7440764_53416259@13" ] } } @@ -80188,7 +93469,7 @@ { "联合多个条件": { "data": { - "uuid": "java-5-1351", + "uuid": "java-5-1380", "seg": [ [ [ @@ -80197,7 +93478,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7365625, + "max": 0.7365972222222222 + }, "related_data": {} } } @@ -80205,7 +93489,7 @@ { "Condition接口": { "data": { - "uuid": "java-5-1352", + "uuid": "java-5-1381", "seg": [ [ [ @@ -80214,7 +93498,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7365972222222222, + "max": 0.7366319444444445 + }, "related_data": {} } } @@ -80222,7 +93509,7 @@ { "制作Starter": { "data": { - "uuid": "java-5-1353", + "uuid": "java-5-1382", "seg": [ [ [ @@ -80231,17 +93518,20 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7366319444444445, + "max": 0.7366666666666667 + }, "related_data": { "qa": { "data_id": [ - "13_262433_275409", - "13_672636_499361", - "13_229644_210607", - "13_244434_233857", - "13_672703_499134", - "13_384154_420375", - "13_242123_229203" + "13_262433_275409@13", + "13_672636_499361@13", + "13_229644_210607@13", + "13_244434_233857@13", + "13_672703_499134@13", + "13_384154_420375@13", + "13_242123_229203@13" ] } } @@ -80250,7 +93540,7 @@ } ], "data": { - "uuid": "java-4-1193", + "uuid": "java-4-1204", "seg": [ [ [ @@ -80261,14 +93551,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7363888888888889, + "max": 0.7366666666666667 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-612", + "uuid": "java-3-605", "seg": [ [ [ @@ -80278,7 +93571,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7355555555555555, + "max": 0.7366666666666667 + }, "related_data": {} } } @@ -80289,7 +93585,7 @@ { "以jar文件运行": { "data": { - "uuid": "java-4-1194", + "uuid": "java-4-1205", "seg": [ [ [ @@ -80299,13 +93595,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7366666666666667, + "max": 0.7369444444444444 + }, "related_data": { "qa": { "data_id": [ - "13_246227_237648", - "13_757415_812867", - "13_390914_432811" + "13_246227_237648@13", + "13_757415_812867@13", + "13_390914_432811@13" ] } } @@ -80315,24 +93614,28 @@ { "以war方式部署": { "data": { - "uuid": "java-4-1195", + "uuid": "java-4-1206", "seg": [ [ [ "war", "方式", - "部署" + "部署", + "方式部署" ] ] ], - "level": "1", + "level": { + "min": 0.7369444444444444, + "max": 0.7372222222222222 + }, "related_data": { "qa": { "data_id": [ - "13_231429_212037", - "13_694998_576480", - "13_671134_494554", - "13_756350_811485" + "13_231429_212037@13", + "13_694998_576480@13", + "13_671134_494554@13", + "13_756350_811485@13" ] } } @@ -80342,23 +93645,27 @@ { "多环境部署": { "data": { - "uuid": "java-4-1196", + "uuid": "java-4-1207", "seg": [ [ [ "环境", - "部署" + "部署", + "环境部署" ] ] ], - "level": "1", + "level": { + "min": 0.7372222222222222, + "max": 0.7375 + }, "related_data": { "qa": { "data_id": [ - "13_7403155_53351408", - "13_250342_247367", - "13_375994_405783", - "13_4645964_29329633" + "13_7403155_53351408@13", + "13_250342_247367@13", + "13_375994_405783@13", + "13_4645964_29329633@13" ] } } @@ -80368,7 +93675,7 @@ { "@Profile注解": { "data": { - "uuid": "java-4-1197", + "uuid": "java-4-1208", "seg": [ [ [ @@ -80377,14 +93684,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7375, + "max": 0.7377777777777778 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-613", + "uuid": "java-3-606", "seg": [ [ [ @@ -80394,7 +93704,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7366666666666667, + "max": 0.7377777777777778 + }, "related_data": {} } } @@ -80408,7 +93721,7 @@ { "JUnit的相关概念": { "data": { - "uuid": "java-5-1354", + "uuid": "java-5-1383", "seg": [ [ [ @@ -80418,7 +93731,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7377777777777778, + "max": 0.7378472222222222 + }, "related_data": {} } } @@ -80426,7 +93742,7 @@ { "JUnit测试": { "data": { - "uuid": "java-5-1355", + "uuid": "java-5-1384", "seg": [ [ [ @@ -80434,13 +93750,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7378472222222222, + "max": 0.7379166666666667 + }, "related_data": { "qa": { "data_id": [ - "13_238602_221109", - "13_186183_78981", - "13_668027_487804" + "13_238602_221109@13", + "13_186183_78981@13", + "13_668027_487804@13" ] } } @@ -80450,7 +93769,7 @@ { "Assert": { "data": { - "uuid": "java-5-1356", + "uuid": "java-5-1385", "seg": [ [ [ @@ -80458,7 +93777,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7379166666666667, + "max": 0.7379861111111111 + }, "related_data": {} } } @@ -80466,7 +93788,7 @@ { "Suite": { "data": { - "uuid": "java-5-1357", + "uuid": "java-5-1386", "seg": [ [ [ @@ -80474,14 +93796,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7379861111111111, + "max": 0.7380555555555556 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1198", + "uuid": "java-4-1209", "seg": [ [ [ @@ -80490,7 +93815,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7377777777777778, + "max": 0.7380555555555556 + }, "related_data": {} } } @@ -80501,7 +93829,7 @@ { "测试范围依赖": { "data": { - "uuid": "java-5-1358", + "uuid": "java-5-1387", "seg": [ [ [ @@ -80509,12 +93837,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7380555555555556, + "max": 0.7381018518518518 + }, "related_data": { "qa": { "data_id": [ - "13_370558_397229", - "13_1032625_1228428" + "13_370558_397229@13", + "13_1032625_1228428@13" ] } } @@ -80524,7 +93855,7 @@ { "Spring Boot测试脚手架": { "data": { - "uuid": "java-5-1359", + "uuid": "java-5-1388", "seg": [ [ [ @@ -80534,11 +93865,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7381018518518518, + "max": 0.7381481481481481 + }, "related_data": { "qa": { "data_id": [ - "13_954574_1099543" + "13_954574_1099543@13" ] } } @@ -80548,7 +93882,7 @@ { "测试MVC": { "data": { - "uuid": "java-5-1360", + "uuid": "java-5-1389", "seg": [ [ [ @@ -80556,7 +93890,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7381481481481481, + "max": 0.7381944444444444 + }, "related_data": {} } } @@ -80564,7 +93901,7 @@ { "完成MVC请求模拟": { "data": { - "uuid": "java-5-1361", + "uuid": "java-5-1390", "seg": [ [ [ @@ -80573,7 +93910,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7381944444444444, + "max": 0.7382407407407408 + }, "related_data": {} } } @@ -80581,7 +93921,7 @@ { "比较MVC的返回结果": { "data": { - "uuid": "java-5-1362", + "uuid": "java-5-1391", "seg": [ [ [ @@ -80590,7 +93930,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7382407407407408, + "max": 0.738287037037037 + }, "related_data": {} } } @@ -80598,7 +93941,7 @@ { "JSON比较": { "data": { - "uuid": "java-5-1363", + "uuid": "java-5-1392", "seg": [ [ [ @@ -80606,20 +93949,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.738287037037037, + "max": 0.7383333333333333 + }, "related_data": { "qa": { "data_id": [ - "13_7428540_53394346", - "13_358934_377925", - "13_1051684_1248992", - "13_204708_133930", - "13_684047_541279", - "13_7433902_53404249", - "13_685176_544375", - "13_213121_155385", - "13_380037_412480", - "13_234692_212051" + "13_7428540_53394346@13", + "13_358934_377925@13", + "13_1051684_1248992@13", + "13_204708_133930@13", + "13_684047_541279@13", + "13_7433902_53404249@13", + "13_685176_544375@13", + "13_213121_155385@13", + "13_380037_412480@13", + "13_234692_212051@13" ] } } @@ -80628,7 +93974,7 @@ } ], "data": { - "uuid": "java-4-1199", + "uuid": "java-4-1210", "seg": [ [ [ @@ -80638,7 +93984,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7380555555555556, + "max": 0.7383333333333333 + }, "related_data": {} } } @@ -80649,7 +93998,7 @@ { "模拟对象": { "data": { - "uuid": "java-5-1364", + "uuid": "java-5-1393", "seg": [ [ [ @@ -80658,13 +94007,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7383333333333333, + "max": 0.7384259259259259 + }, "related_data": { "qa": { "data_id": [ - "13_662416_477986", - "13_657019_469294", - "13_383495_418996" + "13_662416_477986@13", + "13_657019_469294@13", + "13_383495_418996@13" ] } } @@ -80674,17 +94026,21 @@ { "模拟方法参数": { "data": { - "uuid": "java-5-1365", + "uuid": "java-5-1394", "seg": [ [ [ "模拟", "方法", - "参数" + "参数", + "方法参数" ] ] ], - "level": "1", + "level": { + "min": 0.7384259259259259, + "max": 0.7385185185185185 + }, "related_data": {} } } @@ -80692,22 +94048,26 @@ { "模拟方法返回值": { "data": { - "uuid": "java-5-1366", + "uuid": "java-5-1395", "seg": [ [ [ "模拟", "方法", - "返回值" + "返回值", + "方法返回值" ] ] ], - "level": "1", + "level": { + "min": 0.7385185185185185, + "max": 0.7386111111111111 + }, "related_data": { "qa": { "data_id": [ - "13_690578_560952", - "13_349560_357745" + "13_690578_560952@13", + "13_349560_357745@13" ] } } @@ -80716,7 +94076,7 @@ } ], "data": { - "uuid": "java-4-1200", + "uuid": "java-4-1211", "seg": [ [ [ @@ -80724,7 +94084,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7383333333333333, + "max": 0.7386111111111111 + }, "related_data": {} } } @@ -80735,7 +94098,7 @@ { "@Sql": { "data": { - "uuid": "java-5-1367", + "uuid": "java-5-1396", "seg": [ [ [ @@ -80743,20 +94106,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7386111111111111, + "max": 0.7387037037037038 + }, "related_data": { "qa": { "data_id": [ - "13_1081085_1286693", - "13_200823_122142", - "13_1058042_1255238", - "13_363615_384092", - "13_174531_54480", - "13_194802_103392", - "13_593112_440405", - "13_715963_708451", - "13_696544_580498", - "13_7464594_53451069" + "13_1081085_1286693@13", + "13_200823_122142@13", + "13_1058042_1255238@13", + "13_363615_384092@13", + "13_174531_54480@13", + "13_194802_103392@13", + "13_593112_440405@13", + "13_715963_708451@13", + "13_696544_580498@13", + "13_7464594_53451069@13" ] } } @@ -80766,7 +94132,7 @@ { "XLSUnit": { "data": { - "uuid": "java-5-1368", + "uuid": "java-5-1397", "seg": [ [ [ @@ -80774,7 +94140,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7387037037037038, + "max": 0.7387962962962963 + }, "related_data": {} } } @@ -80782,40 +94151,48 @@ { "XLSUnit的基本用法": { "data": { - "uuid": "java-5-1369", + "uuid": "java-5-1398", "seg": [ [ [ "xlsunit", - "用法" + "用法", + "基本用法" ] ] ], - "level": "2", + "level": { + "min": 0.7387962962962963, + "max": 0.7388888888888889 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1201", + "uuid": "java-4-1212", "seg": [ [ [ "面向", "数据库", - "单元测试" + "单元测试", + "面向数据库" ] ] ], - "level": "1", + "level": { + "min": 0.7386111111111111, + "max": 0.7388888888888889 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-614", + "uuid": "java-3-607", "seg": [ [ [ @@ -80824,7 +94201,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7377777777777778, + "max": 0.7388888888888889 + }, "related_data": {} } } @@ -80838,7 +94218,7 @@ { "REST风格的架构": { "data": { - "uuid": "java-5-1370", + "uuid": "java-5-1399", "seg": [ [ [ @@ -80848,7 +94228,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7388888888888889, + "max": 0.7389285714285715 + }, "related_data": {} } } @@ -80856,7 +94239,7 @@ { "使用“api”作为上下文": { "data": { - "uuid": "java-5-1371", + "uuid": "java-5-1400", "seg": [ [ [ @@ -80865,7 +94248,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7389285714285715, + "max": 0.738968253968254 + }, "related_data": {} } } @@ -80873,17 +94259,21 @@ { "增加一个版本标识": { "data": { - "uuid": "java-5-1372", + "uuid": "java-5-1401", "seg": [ [ [ "增加", "版本", - "标识" + "标识", + "版本标识" ] ] ], - "level": "1", + "level": { + "min": 0.738968253968254, + "max": 0.7390079365079366 + }, "related_data": {} } } @@ -80891,16 +94281,20 @@ { "标识资源": { "data": { - "uuid": "java-5-1373", + "uuid": "java-5-1402", "seg": [ [ [ "标识", - "资源" + "资源", + "标识资源" ] ] ], - "level": "1", + "level": { + "min": 0.7390079365079366, + "max": 0.7390476190476191 + }, "related_data": {} } } @@ -80908,7 +94302,7 @@ { "确定HTTP Method": { "data": { - "uuid": "java-5-1374", + "uuid": "java-5-1403", "seg": [ [ [ @@ -80917,14 +94311,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7390476190476191, + "max": 0.7390873015873016 + }, "related_data": { "qa": { "data_id": [ - "13_686866_549257", - "13_234635_211866", - "13_1094590_1304964", - "13_710099_668507" + "13_686866_549257@13", + "13_234635_211866@13", + "13_1094590_1304964@13", + "13_710099_668507@13" ] } } @@ -80934,7 +94331,7 @@ { "确定HTTP Status": { "data": { - "uuid": "java-5-1375", + "uuid": "java-5-1404", "seg": [ [ [ @@ -80943,11 +94340,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7390873015873016, + "max": 0.7391269841269842 + }, "related_data": { "qa": { "data_id": [ - "13_7440878_53416545" + "13_7440878_53416545@13" ] } } @@ -80957,7 +94357,7 @@ { "REST VS. WebService": { "data": { - "uuid": "java-5-1376", + "uuid": "java-5-1405", "seg": [ [ [ @@ -80967,20 +94367,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7391269841269842, + "max": 0.7391666666666667 + }, "related_data": { "qa": { "data_id": [ - "13_754901_810069", - "13_10400_4729", - "13_746842_797115", - "13_659326_473328", - "13_744740_791295", - "13_657611_470262", - "13_7424023_53384452", - "13_679474_526621", - "13_670633_493489", - "13_7458455_53443052" + "13_754901_810069@13", + "13_10400_4729@13", + "13_746842_797115@13", + "13_659326_473328@13", + "13_744740_791295@13", + "13_657611_470262@13", + "13_7424023_53384452@13", + "13_679474_526621@13", + "13_670633_493489@13", + "13_7458455_53443052@13" ] } } @@ -80989,7 +94392,7 @@ } ], "data": { - "uuid": "java-4-1202", + "uuid": "java-4-1213", "seg": [ [ [ @@ -80998,7 +94401,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7388888888888889, + "max": 0.7391666666666667 + }, "related_data": {} } } @@ -81009,7 +94415,7 @@ { "集成REST": { "data": { - "uuid": "java-5-1377", + "uuid": "java-5-1406", "seg": [ [ [ @@ -81018,7 +94424,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7391666666666667, + "max": 0.7392592592592593 + }, "related_data": {} } } @@ -81026,7 +94435,7 @@ { "@RestController": { "data": { - "uuid": "java-5-1378", + "uuid": "java-5-1407", "seg": [ [ [ @@ -81034,7 +94443,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7392592592592593, + "max": 0.7393518518518519 + }, "related_data": {} } } @@ -81042,7 +94454,7 @@ { "REST Client": { "data": { - "uuid": "java-5-1379", + "uuid": "java-5-1408", "seg": [ [ [ @@ -81051,15 +94463,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7393518518518519, + "max": 0.7394444444444445 + }, "related_data": { "qa": { "data_id": [ - "13_203475_130594", - "13_7428509_53394388", - "13_685034_544363", - "13_764173_822863", - "13_979105_1139711" + "13_203475_130594@13", + "13_7428509_53394388@13", + "13_685034_544363@13", + "13_764173_822863@13", + "13_979105_1139711@13" ] } } @@ -81068,7 +94483,7 @@ } ], "data": { - "uuid": "java-4-1203", + "uuid": "java-4-1214", "seg": [ [ [ @@ -81079,7 +94494,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7391666666666667, + "max": 0.7394444444444445 + }, "related_data": {} } } @@ -81090,7 +94508,7 @@ { "集成Swagger": { "data": { - "uuid": "java-5-1380", + "uuid": "java-5-1409", "seg": [ [ [ @@ -81099,7 +94517,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7394444444444445, + "max": 0.7394753086419753 + }, "related_data": {} } } @@ -81107,7 +94528,7 @@ { "Swagger规范": { "data": { - "uuid": "java-5-1381", + "uuid": "java-5-1410", "seg": [ [ [ @@ -81116,13 +94537,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7394753086419753, + "max": 0.7395061728395061 + }, "related_data": { "qa": { "data_id": [ - "13_1077652_1282047", - "13_7435389_53405929", - "13_744521_790706" + "13_1077652_1282047@13", + "13_7435389_53405929@13", + "13_744521_790706@13" ] } } @@ -81132,7 +94556,7 @@ { "接口描述": { "data": { - "uuid": "java-5-1382", + "uuid": "java-5-1411", "seg": [ [ [ @@ -81141,11 +94565,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7395061728395061, + "max": 0.739537037037037 + }, "related_data": { "qa": { "data_id": [ - "13_214326_158484" + "13_214326_158484@13" ] } } @@ -81155,7 +94582,7 @@ { "查询参数描述": { "data": { - "uuid": "java-5-1383", + "uuid": "java-5-1412", "seg": [ [ [ @@ -81165,11 +94592,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.739537037037037, + "max": 0.7395679012345678 + }, "related_data": { "qa": { "data_id": [ - "13_7456764_53441348" + "13_7456764_53441348@13" ] } } @@ -81179,7 +94609,7 @@ { "URI中的参数": { "data": { - "uuid": "java-5-1384", + "uuid": "java-5-1413", "seg": [ [ [ @@ -81188,7 +94618,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7395679012345678, + "max": 0.7395987654320988 + }, "related_data": {} } } @@ -81196,17 +94629,21 @@ { "HTTP头参数": { "data": { - "uuid": "java-5-1385", + "uuid": "java-5-1414", "seg": [ [ [ "http", "头", - "参数" + "参数", + "头参数" ] ] ], - "level": "1", + "level": { + "min": 0.7395987654320988, + "max": 0.7396296296296296 + }, "related_data": {} } } @@ -81214,16 +94651,20 @@ { "表单参数": { "data": { - "uuid": "java-5-1386", + "uuid": "java-5-1415", "seg": [ [ [ "表单", - "参数" + "参数", + "表单参数" ] ] ], - "level": "1", + "level": { + "min": 0.7396296296296296, + "max": 0.7396604938271605 + }, "related_data": {} } } @@ -81231,7 +94672,7 @@ { "文件上传参数": { "data": { - "uuid": "java-5-1387", + "uuid": "java-5-1416", "seg": [ [ [ @@ -81241,7 +94682,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7396604938271605, + "max": 0.7396913580246913 + }, "related_data": {} } } @@ -81249,7 +94693,7 @@ { "整个请求体作为参数": { "data": { - "uuid": "java-5-1388", + "uuid": "java-5-1417", "seg": [ [ [ @@ -81258,14 +94702,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7396913580246913, + "max": 0.7397222222222222 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1204", + "uuid": "java-4-1215", "seg": [ [ [ @@ -81274,14 +94721,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7394444444444445, + "max": 0.7397222222222222 + }, "related_data": { "qa": { "data_id": [ - "13_783034_862524", - "13_225825_187610", - "13_7418166_53374086", - "13_4646789_29330593" + "13_783034_862524@13", + "13_225825_187610@13", + "13_7418166_53374086@13", + "13_4646789_29330593@13" ] } } @@ -81291,7 +94741,7 @@ { "模拟REST服务": { "data": { - "uuid": "java-4-1205", + "uuid": "java-4-1216", "seg": [ [ [ @@ -81301,14 +94751,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7397222222222222, + "max": 0.74 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-615", + "uuid": "java-3-608", "seg": [ [ [ @@ -81316,7 +94769,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7388888888888889, + "max": 0.74 + }, "related_data": {} } } @@ -81327,7 +94783,7 @@ { "安装MongoDB": { "data": { - "uuid": "java-4-1206", + "uuid": "java-4-1217", "seg": [ [ [ @@ -81336,13 +94792,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.74, + "max": 0.7402777777777778 + }, "related_data": { "qa": { "data_id": [ - "13_182531_68978", - "13_660165_474323", - "13_250586_248260" + "13_182531_68978@13", + "13_660165_474323@13", + "13_250586_248260@13" ] } } @@ -81355,7 +94814,7 @@ { "指定数据库": { "data": { - "uuid": "java-5-1389", + "uuid": "java-5-1418", "seg": [ [ [ @@ -81364,7 +94823,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7402777777777778, + "max": 0.7403333333333334 + }, "related_data": {} } } @@ -81372,7 +94834,7 @@ { "插入文档": { "data": { - "uuid": "java-5-1390", + "uuid": "java-5-1419", "seg": [ [ [ @@ -81381,11 +94843,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7403333333333334, + "max": 0.7403888888888889 + }, "related_data": { "qa": { "data_id": [ - "13_762674_821083" + "13_762674_821083@13" ] } } @@ -81395,7 +94860,7 @@ { "查询文档": { "data": { - "uuid": "java-5-1391", + "uuid": "java-5-1420", "seg": [ [ [ @@ -81404,7 +94869,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7403888888888889, + "max": 0.7404444444444445 + }, "related_data": {} } } @@ -81412,16 +94880,20 @@ { "更新操作": { "data": { - "uuid": "java-5-1392", + "uuid": "java-5-1421", "seg": [ [ [ "更新", - "操作" + "操作", + "更新操作" ] ] ], - "level": "1", + "level": { + "min": 0.7404444444444445, + "max": 0.7404999999999999 + }, "related_data": {} } } @@ -81429,7 +94901,7 @@ { "删除操作": { "data": { - "uuid": "java-5-1393", + "uuid": "java-5-1422", "seg": [ [ [ @@ -81438,14 +94910,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7404999999999999, + "max": 0.7405555555555555 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1207", + "uuid": "java-4-1218", "seg": [ [ [ @@ -81453,13 +94928,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7402777777777778, + "max": 0.7405555555555555 + }, "related_data": { "qa": { "data_id": [ - "13_745306_792901", - "13_188311_84939", - "13_747955_799590" + "13_745306_792901@13", + "13_188311_84939@13", + "13_747955_799590@13" ] } } @@ -81469,7 +94947,7 @@ { "Spring Boot集成MongoDB": { "data": { - "uuid": "java-4-1208", + "uuid": "java-4-1219", "seg": [ [ [ @@ -81480,7 +94958,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7405555555555555, + "max": 0.7408333333333332 + }, "related_data": {} } } @@ -81491,7 +94972,7 @@ { "增加API": { "data": { - "uuid": "java-5-1394", + "uuid": "java-5-1423", "seg": [ [ [ @@ -81500,11 +94981,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7408333333333332, + "max": 0.7408730158730158 + }, "related_data": { "qa": { "data_id": [ - "13_390866_432707" + "13_390866_432707@13" ] } } @@ -81514,7 +94998,7 @@ { "根据主键查询API": { "data": { - "uuid": "java-5-1395", + "uuid": "java-5-1424", "seg": [ [ [ @@ -81524,7 +95008,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7408730158730158, + "max": 0.7409126984126984 + }, "related_data": {} } } @@ -81532,7 +95019,7 @@ { "查询API": { "data": { - "uuid": "java-5-1396", + "uuid": "java-5-1425", "seg": [ [ [ @@ -81541,7 +95028,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7409126984126984, + "max": 0.7409523809523809 + }, "related_data": {} } } @@ -81549,7 +95039,7 @@ { "修改API": { "data": { - "uuid": "java-5-1397", + "uuid": "java-5-1426", "seg": [ [ [ @@ -81558,7 +95048,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7409523809523809, + "max": 0.7409920634920634 + }, "related_data": {} } } @@ -81566,7 +95059,7 @@ { "删除API": { "data": { - "uuid": "java-5-1398", + "uuid": "java-5-1427", "seg": [ [ [ @@ -81575,7 +95068,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7409920634920634, + "max": 0.7410317460317459 + }, "related_data": {} } } @@ -81583,7 +95079,7 @@ { "使用MongoDatabase": { "data": { - "uuid": "java-5-1399", + "uuid": "java-5-1428", "seg": [ [ [ @@ -81591,7 +95087,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7410317460317459, + "max": 0.7410714285714285 + }, "related_data": {} } } @@ -81599,7 +95098,7 @@ { "打印日志": { "data": { - "uuid": "java-5-1400", + "uuid": "java-5-1429", "seg": [ [ [ @@ -81608,19 +95107,22 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7410714285714285, + "max": 0.741111111111111 + }, "related_data": { "qa": { "data_id": [ - "13_744728_791263", - "13_766097_825350", - "13_667870_487402", - "13_696071_579318", - "13_7405768_53355289", - "13_651176_458378", - "13_346614_352111", - "13_825653_922157", - "13_660342_474910" + "13_744728_791263@13", + "13_766097_825350@13", + "13_667870_487402@13", + "13_696071_579318@13", + "13_7405768_53355289@13", + "13_651176_458378@13", + "13_346614_352111@13", + "13_825653_922157@13", + "13_660342_474910@13" ] } } @@ -81629,7 +95131,7 @@ } ], "data": { - "uuid": "java-4-1209", + "uuid": "java-4-1220", "seg": [ [ [ @@ -81638,12 +95140,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7408333333333332, + "max": 0.741111111111111 + }, "related_data": { "qa": { "data_id": [ - "13_345241_349823", - "13_7436890_53409107" + "13_345241_349823@13", + "13_7436890_53409107@13" ] } } @@ -81652,7 +95157,7 @@ } ], "data": { - "uuid": "java-3-616", + "uuid": "java-3-609", "seg": [ [ [ @@ -81660,7 +95165,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.74, + "max": 0.741111111111111 + }, "related_data": {} } } @@ -81674,7 +95182,7 @@ { "安装Elasticsearch": { "data": { - "uuid": "java-5-1401", + "uuid": "java-5-1430", "seg": [ [ [ @@ -81683,7 +95191,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.741111111111111, + "max": 0.74125 + }, "related_data": {} } } @@ -81691,7 +95202,7 @@ { "Elasticsearch的基本概念": { "data": { - "uuid": "java-5-1402", + "uuid": "java-5-1431", "seg": [ [ [ @@ -81700,12 +95211,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.74125, + "max": 0.7413888888888889 + }, "related_data": { "qa": { "data_id": [ - "13_1097599_1311287", - "13_4647068_29331122" + "13_1097599_1311287@13", + "13_4647068_29331122@13" ] } } @@ -81714,7 +95228,7 @@ } ], "data": { - "uuid": "java-4-1210", + "uuid": "java-4-1221", "seg": [ [ [ @@ -81723,7 +95237,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.741111111111111, + "max": 0.7413888888888889 + }, "related_data": {} } } @@ -81734,7 +95251,7 @@ { "添加文档": { "data": { - "uuid": "java-5-1403", + "uuid": "java-5-1432", "seg": [ [ [ @@ -81743,14 +95260,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7413888888888889, + "max": 0.7414351851851851 + }, "related_data": { "qa": { "data_id": [ - "13_232946_206925", - "13_2700_3811", - "13_684794_544072", - "13_7463855_53450081" + "13_232946_206925@13", + "13_2700_3811@13", + "13_684794_544072@13", + "13_7463855_53450081@13" ] } } @@ -81760,7 +95280,7 @@ { "根据主键查询": { "data": { - "uuid": "java-5-1404", + "uuid": "java-5-1433", "seg": [ [ [ @@ -81769,7 +95289,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7414351851851851, + "max": 0.7414814814814815 + }, "related_data": {} } } @@ -81777,7 +95300,7 @@ { "根据主键更新": { "data": { - "uuid": "java-5-1405", + "uuid": "java-5-1434", "seg": [ [ [ @@ -81786,7 +95309,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7414814814814815, + "max": 0.7415277777777778 + }, "related_data": {} } } @@ -81794,7 +95320,7 @@ { "根据主键删除": { "data": { - "uuid": "java-5-1406", + "uuid": "java-5-1435", "seg": [ [ [ @@ -81803,12 +95329,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7415277777777778, + "max": 0.741574074074074 + }, "related_data": { "qa": { "data_id": [ - "13_655868_466945", - "13_167270_41049" + "13_655868_466945@13", + "13_167270_41049@13" ] } } @@ -81818,7 +95347,7 @@ { "搜索文档": { "data": { - "uuid": "java-5-1407", + "uuid": "java-5-1436", "seg": [ [ [ @@ -81827,11 +95356,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.741574074074074, + "max": 0.7416203703703704 + }, "related_data": { "qa": { "data_id": [ - "13_688479_554921" + "13_688479_554921@13" ] } } @@ -81841,7 +95373,7 @@ { "联合多个索引搜索": { "data": { - "uuid": "java-5-1408", + "uuid": "java-5-1437", "seg": [ [ [ @@ -81851,14 +95383,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7416203703703704, + "max": 0.7416666666666667 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1211", + "uuid": "java-4-1222", "seg": [ [ [ @@ -81868,7 +95403,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7413888888888889, + "max": 0.7416666666666667 + }, "related_data": {} } } @@ -81879,7 +95417,7 @@ { "创建Book": { "data": { - "uuid": "java-5-1409", + "uuid": "java-5-1438", "seg": [ [ [ @@ -81888,12 +95426,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7416666666666667, + "max": 0.7418055555555556 + }, "related_data": { "qa": { "data_id": [ - "13_7467243_53454683", - "13_1066862_1267492" + "13_7467243_53454683@13", + "13_1066862_1267492@13" ] } } @@ -81903,7 +95444,7 @@ { "使用RestTemplate获取搜索结果": { "data": { - "uuid": "java-5-1410", + "uuid": "java-5-1439", "seg": [ [ [ @@ -81913,13 +95454,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7418055555555556, + "max": 0.7419444444444444 + }, "related_data": { "qa": { "data_id": [ - "13_755679_811098", - "13_762251_821611", - "13_719030_799320" + "13_755679_811098@13", + "13_762251_821611@13", + "13_719030_799320@13" ] } } @@ -81928,7 +95472,7 @@ } ], "data": { - "uuid": "java-4-1212", + "uuid": "java-4-1223", "seg": [ [ [ @@ -81938,11 +95482,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7416666666666667, + "max": 0.7419444444444444 + }, "related_data": { "qa": { "data_id": [ - "13_750069_802923" + "13_750069_802923@13" ] } } @@ -81955,7 +95502,7 @@ { "安装Spring Data": { "data": { - "uuid": "java-5-1411", + "uuid": "java-5-1440", "seg": [ [ [ @@ -81965,17 +95512,20 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7419444444444444, + "max": 0.7420138888888889 + }, "related_data": { "qa": { "data_id": [ - "13_185177_76381", - "13_380613_413663", - "13_232454_205462", - "13_779360_847347", - "13_240261_224427", - "13_244463_233899", - "13_210061_148585" + "13_185177_76381@13", + "13_380613_413663@13", + "13_232454_205462@13", + "13_779360_847347@13", + "13_240261_224427@13", + "13_244463_233899@13", + "13_210061_148585@13" ] } } @@ -81985,7 +95535,7 @@ { "编写Entity": { "data": { - "uuid": "java-5-1412", + "uuid": "java-5-1441", "seg": [ [ [ @@ -81994,12 +95544,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7420138888888889, + "max": 0.7420833333333333 + }, "related_data": { "qa": { "data_id": [ - "13_228089_193642", - "13_752616_806737" + "13_228089_193642@13", + "13_752616_806737@13" ] } } @@ -82009,7 +95562,7 @@ { "编写Dao": { "data": { - "uuid": "java-5-1413", + "uuid": "java-5-1442", "seg": [ [ [ @@ -82018,7 +95571,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7420833333333333, + "max": 0.7421527777777778 + }, "related_data": {} } } @@ -82026,7 +95582,7 @@ { "编写Controller": { "data": { - "uuid": "java-5-1414", + "uuid": "java-5-1443", "seg": [ [ [ @@ -82035,11 +95591,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7421527777777778, + "max": 0.7422222222222222 + }, "related_data": { "qa": { "data_id": [ - "13_764133_822746" + "13_764133_822746@13" ] } } @@ -82048,7 +95607,7 @@ } ], "data": { - "uuid": "java-4-1213", + "uuid": "java-4-1224", "seg": [ [ [ @@ -82058,14 +95617,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7419444444444444, + "max": 0.7422222222222222 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-617", + "uuid": "java-3-610", "seg": [ [ [ @@ -82073,7 +95635,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.741111111111111, + "max": 0.7422222222222222 + }, "related_data": {} } } @@ -82087,7 +95652,7 @@ { "Cache的组件和概念": { "data": { - "uuid": "java-5-1415", + "uuid": "java-5-1444", "seg": [ [ [ @@ -82099,7 +95664,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7422222222222222, + "max": 0.7422685185185185 + }, "related_data": {} } } @@ -82107,7 +95675,7 @@ { "Cache的单体应用": { "data": { - "uuid": "java-5-1416", + "uuid": "java-5-1445", "seg": [ [ [ @@ -82116,11 +95684,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7422685185185185, + "max": 0.7423148148148149 + }, "related_data": { "qa": { "data_id": [ - "13_7438456_53411812" + "13_7438456_53411812@13" ] } } @@ -82130,7 +95701,7 @@ { "使用专有的Cache服务器": { "data": { - "uuid": "java-5-1417", + "uuid": "java-5-1446", "seg": [ [ [ @@ -82140,7 +95711,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7423148148148149, + "max": 0.7423611111111111 + }, "related_data": {} } } @@ -82148,7 +95722,7 @@ { "使用一二级缓存服务器": { "data": { - "uuid": "java-5-1418", + "uuid": "java-5-1447", "seg": [ [ [ @@ -82157,14 +95731,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7423611111111111, + "max": 0.7424074074074074 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1214", + "uuid": "java-4-1225", "seg": [ [ [ @@ -82172,7 +95749,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7422222222222222, + "max": 0.7424074074074074 + }, "related_data": {} } } @@ -82180,7 +95760,7 @@ { "Spring Boot Cache": { "data": { - "uuid": "java-4-1215", + "uuid": "java-4-1226", "seg": [ [ [ @@ -82190,7 +95770,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7424074074074074, + "max": 0.7425925925925926 + }, "related_data": {} } } @@ -82201,7 +95784,7 @@ { "@Cacheable": { "data": { - "uuid": "java-5-1419", + "uuid": "java-5-1448", "seg": [ [ [ @@ -82209,11 +95792,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7425925925925926, + "max": 0.7426234567901234 + }, "related_data": { "qa": { "data_id": [ - "13_1078677_1309352" + "13_1078677_1309352@13" ] } } @@ -82223,7 +95809,7 @@ { "Key生成器": { "data": { - "uuid": "java-5-1420", + "uuid": "java-5-1449", "seg": [ [ [ @@ -82232,15 +95818,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7426234567901234, + "max": 0.7426543209876543 + }, "related_data": { "qa": { "data_id": [ - "13_746768_796833", - "13_667373_486467", - "13_760388_817161", - "13_751178_804742", - "13_717837_799007" + "13_746768_796833@13", + "13_667373_486467@13", + "13_760388_817161@13", + "13_751178_804742@13", + "13_717837_799007@13" ] } } @@ -82250,7 +95839,7 @@ { "@CachePut": { "data": { - "uuid": "java-5-1421", + "uuid": "java-5-1450", "seg": [ [ [ @@ -82258,7 +95847,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7426543209876543, + "max": 0.7426851851851852 + }, "related_data": {} } } @@ -82266,7 +95858,7 @@ { "@CacheEvict": { "data": { - "uuid": "java-5-1422", + "uuid": "java-5-1451", "seg": [ [ [ @@ -82274,7 +95866,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7426851851851852, + "max": 0.7427160493827161 + }, "related_data": {} } } @@ -82282,7 +95877,7 @@ { "@Caching": { "data": { - "uuid": "java-5-1423", + "uuid": "java-5-1452", "seg": [ [ [ @@ -82290,7 +95885,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7427160493827161, + "max": 0.7427469135802469 + }, "related_data": {} } } @@ -82298,7 +95896,7 @@ { "@CacheConfig": { "data": { - "uuid": "java-5-1424", + "uuid": "java-5-1453", "seg": [ [ [ @@ -82306,14 +95904,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7427469135802469, + "max": 0.7427777777777778 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1216", + "uuid": "java-4-1227", "seg": [ [ [ @@ -82323,7 +95924,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7425925925925926, + "max": 0.7427777777777778 + }, "related_data": {} } } @@ -82334,7 +95938,7 @@ { "集成Redis缓存": { "data": { - "uuid": "java-5-1425", + "uuid": "java-5-1454", "seg": [ [ [ @@ -82344,7 +95948,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7427777777777778, + "max": 0.7428395061728394 + }, "related_data": {} } } @@ -82352,7 +95959,7 @@ { "禁止缓存": { "data": { - "uuid": "java-5-1426", + "uuid": "java-5-1455", "seg": [ [ [ @@ -82361,7 +95968,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7428395061728394, + "max": 0.7429012345679012 + }, "related_data": {} } } @@ -82369,7 +95979,7 @@ { "定制缓存": { "data": { - "uuid": "java-5-1427", + "uuid": "java-5-1456", "seg": [ [ [ @@ -82378,14 +95988,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7429012345679012, + "max": 0.7429629629629629 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1217", + "uuid": "java-4-1228", "seg": [ [ [ @@ -82394,7 +96007,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7427777777777778, + "max": 0.7429629629629629 + }, "related_data": {} } } @@ -82402,7 +96018,7 @@ { "Redis缓存原理": { "data": { - "uuid": "java-4-1218", + "uuid": "java-4-1229", "seg": [ [ [ @@ -82412,7 +96028,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7429629629629629, + "max": 0.7431481481481481 + }, "related_data": {} } } @@ -82423,7 +96042,7 @@ { "实现TwoLevelCacheManager": { "data": { - "uuid": "java-5-1428", + "uuid": "java-5-1457", "seg": [ [ [ @@ -82431,7 +96050,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7431481481481481, + "max": 0.7431944444444444 + }, "related_data": {} } } @@ -82439,7 +96061,7 @@ { "创建RedisAndLocalCache": { "data": { - "uuid": "java-5-1429", + "uuid": "java-5-1458", "seg": [ [ [ @@ -82448,7 +96070,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7431944444444444, + "max": 0.7432407407407406 + }, "related_data": {} } } @@ -82456,16 +96081,20 @@ { "缓存同步说明": { "data": { - "uuid": "java-5-1430", + "uuid": "java-5-1459", "seg": [ [ [ "缓存", - "同步" + "同步", + "同步说明" ] ] ], - "level": "2", + "level": { + "min": 0.7432407407407406, + "max": 0.743287037037037 + }, "related_data": {} } } @@ -82473,22 +96102,26 @@ { "将代码组合在一起": { "data": { - "uuid": "java-5-1431", + "uuid": "java-5-1460", "seg": [ [ [ - "组合" + "组合", + "将代码" ] ] ], - "level": "1", + "level": { + "min": 0.743287037037037, + "max": 0.7433333333333333 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1219", + "uuid": "java-4-1230", "seg": [ [ [ @@ -82497,14 +96130,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7431481481481481, + "max": 0.7433333333333333 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-618", + "uuid": "java-3-611", "seg": [ [ [ @@ -82512,7 +96148,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7422222222222222, + "max": 0.7433333333333333 + }, "related_data": {} } } @@ -82523,7 +96162,7 @@ { "水平扩展实现": { "data": { - "uuid": "java-4-1220", + "uuid": "java-4-1231", "seg": [ [ [ @@ -82532,12 +96171,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7433333333333333, + "max": 0.7438888888888888 + }, "related_data": { "qa": { "data_id": [ - "13_1099442_1314465", - "13_383117_418358" + "13_1099442_1314465@13", + "13_383117_418358@13" ] } } @@ -82550,7 +96192,7 @@ { "Spring Session介绍": { "data": { - "uuid": "java-5-1432", + "uuid": "java-5-1461", "seg": [ [ [ @@ -82560,20 +96202,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7438888888888888, + "max": 0.7441666666666666 + }, "related_data": { "qa": { "data_id": [ - "13_7423192_53382807", - "13_7422406_53381487", - "13_744327_790129", - "13_706406_622413", - "13_209965_148276", - "13_696760_581023", - "13_234900_212693", - "13_377048_407660", - "13_249356_246669", - "13_624766_440706" + "13_7423192_53382807@13", + "13_7422406_53381487@13", + "13_744327_790129@13", + "13_706406_622413@13", + "13_209965_148276@13", + "13_696760_581023@13", + "13_234900_212693@13", + "13_377048_407660@13", + "13_249356_246669@13", + "13_624766_440706@13" ] } } @@ -82583,7 +96228,7 @@ { "Nginx+Redis": { "data": { - "uuid": "java-5-1433", + "uuid": "java-5-1462", "seg": [ [ [ @@ -82592,19 +96237,22 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7441666666666666, + "max": 0.7444444444444445 + }, "related_data": { "qa": { "data_id": [ - "13_753297_807741", - "13_7459484_53444698", - "13_241536_227739", - "13_7409810_53360292", - "13_648927_453898", - "13_754528_1269415", - "13_703017_593680", - "13_7403219_53351545", - "13_158518_22824" + "13_753297_807741@13", + "13_7459484_53444698@13", + "13_241536_227739@13", + "13_7409810_53360292@13", + "13_648927_453898@13", + "13_754528_1269415@13", + "13_703017_593680@13", + "13_7403219_53351545@13", + "13_158518_22824@13" ] } } @@ -82613,7 +96261,7 @@ } ], "data": { - "uuid": "java-4-1221", + "uuid": "java-4-1232", "seg": [ [ [ @@ -82622,14 +96270,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7438888888888888, + "max": 0.7444444444444445 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-619", + "uuid": "java-3-612", "seg": [ [ [ @@ -82638,7 +96289,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7433333333333333, + "max": 0.7444444444444445 + }, "related_data": {} } } @@ -82649,7 +96303,7 @@ { "安装Acutator": { "data": { - "uuid": "java-4-1222", + "uuid": "java-4-1233", "seg": [ [ [ @@ -82658,7 +96312,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7444444444444445, + "max": 0.744567901234568 + }, "related_data": {} } } @@ -82666,7 +96323,7 @@ { "HTTP跟踪": { "data": { - "uuid": "java-4-1223", + "uuid": "java-4-1234", "seg": [ [ [ @@ -82675,7 +96332,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.744567901234568, + "max": 0.7446913580246913 + }, "related_data": {} } } @@ -82683,7 +96343,7 @@ { "日志查看": { "data": { - "uuid": "java-4-1224", + "uuid": "java-4-1235", "seg": [ [ [ @@ -82692,12 +96352,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7446913580246913, + "max": 0.7448148148148148 + }, "related_data": { "qa": { "data_id": [ - "13_7448452_53428624", - "13_770509_836689" + "13_7448452_53428624@13", + "13_770509_836689@13" ] } } @@ -82707,17 +96370,22 @@ { "线程栈信息": { "data": { - "uuid": "java-4-1225", + "uuid": "java-4-1236", "seg": [ [ [ "线程", "栈", - "信息" + "信息", + "线程栈", + "栈信息" ] ] ], - "level": "2", + "level": { + "min": 0.7448148148148148, + "max": 0.7449382716049383 + }, "related_data": {} } } @@ -82725,16 +96393,20 @@ { "内存信息": { "data": { - "uuid": "java-4-1226", + "uuid": "java-4-1237", "seg": [ [ [ "内存", - "信息" + "信息", + "内存信息" ] ] ], - "level": "1", + "level": { + "min": 0.7449382716049383, + "max": 0.7450617283950617 + }, "related_data": {} } } @@ -82742,7 +96414,7 @@ { "查看URL映射": { "data": { - "uuid": "java-4-1227", + "uuid": "java-4-1238", "seg": [ [ [ @@ -82752,7 +96424,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7450617283950617, + "max": 0.7451851851851852 + }, "related_data": {} } } @@ -82760,7 +96435,7 @@ { "查看Spring容器管理的Bean": { "data": { - "uuid": "java-4-1228", + "uuid": "java-4-1239", "seg": [ [ [ @@ -82772,7 +96447,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7451851851851852, + "max": 0.7453086419753087 + }, "related_data": {} } } @@ -82780,7 +96458,7 @@ { "其他监控": { "data": { - "uuid": "java-4-1229", + "uuid": "java-4-1240", "seg": [ [ [ @@ -82788,7 +96466,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7453086419753087, + "max": 0.745432098765432 + }, "related_data": {} } } @@ -82799,7 +96480,7 @@ { "编写HealthIndicator": { "data": { - "uuid": "java-5-1434", + "uuid": "java-5-1463", "seg": [ [ [ @@ -82808,20 +96489,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.745432098765432, + "max": 0.7454938271604938 + }, "related_data": { "qa": { "data_id": [ - "13_7457550_53441850", - "13_7446609_53426093", - "13_7446386_53425593", - "13_7446582_53426045", - "13_202237_126553", - "13_7464597_53451076", - "13_714583_706558", - "13_250427_247572", - "13_7460095_53445222", - "13_674566_505495" + "13_7457550_53441850@13", + "13_7446609_53426093@13", + "13_7446386_53425593@13", + "13_7446582_53426045@13", + "13_202237_126553@13", + "13_7464597_53451076@13", + "13_714583_706558@13", + "13_250427_247572@13", + "13_7460095_53445222@13", + "13_674566_505495@13" ] } } @@ -82831,7 +96515,7 @@ { "自定义监控": { "data": { - "uuid": "java-5-1435", + "uuid": "java-5-1464", "seg": [ [ [ @@ -82840,12 +96524,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7454938271604938, + "max": 0.7455555555555555 + }, "related_data": { "qa": { "data_id": [ - "13_1059494_1256953", - "13_29099_10368" + "13_1059494_1256953@13", + "13_29099_10368@13" ] } } @@ -82854,7 +96541,7 @@ } ], "data": { - "uuid": "java-4-1230", + "uuid": "java-4-1241", "seg": [ [ [ @@ -82864,14 +96551,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.745432098765432, + "max": 0.7455555555555555 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-620", + "uuid": "java-3-613", "seg": [ [ [ @@ -82881,7 +96571,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7444444444444445, + "max": 0.7455555555555555 + }, "related_data": {} } } @@ -82892,7 +96585,7 @@ { "Web基础": { "data": { - "uuid": "java-4-1231", + "uuid": "java-4-1242", "seg": [ [ [ @@ -82901,20 +96594,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7455555555555555, + "max": 0.7456296296296296 + }, "related_data": { "qa": { "data_id": [ - "13_354240_366478", - "13_703277_594055", - "13_656570_468464", - "13_370834_397597", - "13_215187_160783", - "13_3040031_24672296", - "13_675853_511967", - "13_371750_398461", - "13_340486_340245", - "13_383468_418986" + "13_354240_366478@13", + "13_703277_594055@13", + "13_656570_468464@13", + "13_370834_397597@13", + "13_215187_160783@13", + "13_3040031_24672296@13", + "13_675853_511967@13", + "13_371750_398461@13", + "13_340486_340245@13", + "13_383468_418986@13" ] } } @@ -82924,7 +96620,7 @@ { "Servlet入门": { "data": { - "uuid": "java-4-1232", + "uuid": "java-4-1243", "seg": [ [ [ @@ -82933,16 +96629,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7456296296296296, + "max": 0.7457037037037036 + }, "related_data": { "qa": { "data_id": [ - "13_2033730_10549978", - "13_333091_324840", - "13_196634_109277", - "13_713379_704717", - "13_647453_450909", - "13_240230_224438" + "13_2033730_10549978@13", + "13_333091_324840@13", + "13_196634_109277@13", + "13_713379_704717@13", + "13_647453_450909@13", + "13_240230_224438@13" ] } } @@ -82952,7 +96651,7 @@ { "Servlet开发": { "data": { - "uuid": "java-4-1233", + "uuid": "java-4-1244", "seg": [ [ [ @@ -82961,7 +96660,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7457037037037036, + "max": 0.7457777777777778 + }, "related_data": {} } } @@ -82969,7 +96671,7 @@ { "Servlet进阶": { "data": { - "uuid": "java-4-1234", + "uuid": "java-4-1245", "seg": [ [ [ @@ -82978,11 +96680,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7457777777777778, + "max": 0.7458518518518519 + }, "related_data": { "qa": { "data_id": [ - "13_224048_182755" + "13_224048_182755@13" ] } } @@ -82992,7 +96697,7 @@ { "JSP开发": { "data": { - "uuid": "java-4-1235", + "uuid": "java-4-1246", "seg": [ [ [ @@ -83001,20 +96706,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7458518518518519, + "max": 0.7459259259259259 + }, "related_data": { "qa": { "data_id": [ - "13_368765_395527", - "13_672311_497488", - "13_190130_90293", - "13_179683_65141", - "13_717820_711248", - "13_650488_457288", - "13_364734_387332", - "13_195782_106069", - "13_229385_210981", - "13_159695_25587" + "13_368765_395527@13", + "13_672311_497488@13", + "13_190130_90293@13", + "13_179683_65141@13", + "13_717820_711248@13", + "13_650488_457288@13", + "13_364734_387332@13", + "13_195782_106069@13", + "13_229385_210981@13", + "13_159695_25587@13" ] } } @@ -83024,7 +96732,7 @@ { "MVC开发": { "data": { - "uuid": "java-4-1236", + "uuid": "java-4-1247", "seg": [ [ [ @@ -83033,7 +96741,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7459259259259259, + "max": 0.746 + }, "related_data": {} } } @@ -83041,7 +96752,7 @@ { "MVC高级开发": { "data": { - "uuid": "java-4-1237", + "uuid": "java-4-1248", "seg": [ [ [ @@ -83051,7 +96762,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.746, + "max": 0.7460740740740741 + }, "related_data": {} } } @@ -83062,7 +96776,7 @@ { "修改响应": { "data": { - "uuid": "java-5-1436", + "uuid": "java-5-1465", "seg": [ [ [ @@ -83071,14 +96785,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7460740740740741, + "max": 0.7461481481481481 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1238", + "uuid": "java-4-1249", "seg": [ [ [ @@ -83086,12 +96803,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7460740740740741, + "max": 0.7461481481481481 + }, "related_data": { "qa": { "data_id": [ - "13_373880_402460", - "13_196519_109146" + "13_373880_402460@13", + "13_196519_109146@13" ] } } @@ -83101,7 +96821,7 @@ { "使用Listener": { "data": { - "uuid": "java-4-1239", + "uuid": "java-4-1250", "seg": [ [ [ @@ -83109,7 +96829,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7461481481481481, + "max": 0.7462222222222222 + }, "related_data": {} } } @@ -83117,7 +96840,7 @@ { "部署": { "data": { - "uuid": "java-4-1240", + "uuid": "java-4-1251", "seg": [ [ [ @@ -83125,7 +96848,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7462222222222222, + "max": 0.7462962962962963 + }, "related_data": {} } } @@ -83133,7 +96859,7 @@ { "集成Filter": { "data": { - "uuid": "java-4-1241", + "uuid": "java-4-1252", "seg": [ [ [ @@ -83142,7 +96868,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7462962962962963, + "max": 0.7463703703703704 + }, "related_data": {} } } @@ -83150,7 +96879,7 @@ { "使用Interceptor": { "data": { - "uuid": "java-4-1242", + "uuid": "java-4-1253", "seg": [ [ [ @@ -83158,7 +96887,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7463703703703704, + "max": 0.7464444444444445 + }, "related_data": {} } } @@ -83166,7 +96898,7 @@ { "处理CORS": { "data": { - "uuid": "java-4-1243", + "uuid": "java-4-1254", "seg": [ [ [ @@ -83174,7 +96906,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7464444444444445, + "max": 0.7465185185185186 + }, "related_data": {} } } @@ -83182,15 +96917,19 @@ { "异步处理": { "data": { - "uuid": "java-4-1244", + "uuid": "java-4-1255", "seg": [ [ [ - "异步" + "异步", + "异步处理" ] ] ], - "level": "1", + "level": { + "min": 0.7465185185185186, + "max": 0.7465925925925926 + }, "related_data": {} } } @@ -83198,7 +96937,7 @@ { "使用WebSocket": { "data": { - "uuid": "java-4-1245", + "uuid": "java-4-1256", "seg": [ [ [ @@ -83206,13 +96945,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7465925925925926, + "max": 0.7466666666666667 + }, "related_data": { "qa": { "data_id": [ - "13_241979_228840", - "13_387324_426295", - "13_648884_454498" + "13_241979_228840@13", + "13_387324_426295@13", + "13_648884_454498@13" ] } } @@ -83221,7 +96963,7 @@ } ], "data": { - "uuid": "java-3-621", + "uuid": "java-3-614", "seg": [ [ [ @@ -83230,7 +96972,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7455555555555555, + "max": 0.7466666666666667 + }, "related_data": {} } } @@ -83244,7 +96989,7 @@ { "IoC原理": { "data": { - "uuid": "java-5-1437", + "uuid": "java-5-1466", "seg": [ [ [ @@ -83253,7 +96998,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7466666666666667, + "max": 0.7467777777777778 + }, "related_data": {} } } @@ -83261,7 +97009,7 @@ { "使用Annotation配置": { "data": { - "uuid": "java-5-1438", + "uuid": "java-5-1467", "seg": [ [ [ @@ -83270,7 +97018,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7467777777777778, + "max": 0.7468888888888889 + }, "related_data": {} } } @@ -83278,7 +97029,7 @@ { "定制Bean": { "data": { - "uuid": "java-5-1439", + "uuid": "java-5-1468", "seg": [ [ [ @@ -83287,7 +97038,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7468888888888889, + "max": 0.747 + }, "related_data": {} } } @@ -83295,7 +97049,7 @@ { "使用Resource": { "data": { - "uuid": "java-5-1440", + "uuid": "java-5-1469", "seg": [ [ [ @@ -83303,12 +97057,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.747, + "max": 0.7471111111111112 + }, "related_data": { "qa": { "data_id": [ - "13_7397177_53341778", - "13_226220_188528" + "13_7397177_53341778@13", + "13_226220_188528@13" ] } } @@ -83318,7 +97075,7 @@ { "注入配置": { "data": { - "uuid": "java-5-1441", + "uuid": "java-5-1470", "seg": [ [ [ @@ -83327,14 +97084,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7471111111111112, + "max": 0.7472222222222222 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1246", + "uuid": "java-4-1257", "seg": [ [ [ @@ -83343,7 +97103,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7466666666666667, + "max": 0.7472222222222222 + }, "related_data": {} } } @@ -83354,7 +97117,7 @@ { "集成JavaMail": { "data": { - "uuid": "java-5-1442", + "uuid": "java-5-1471", "seg": [ [ [ @@ -83363,17 +97126,20 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7472222222222222, + "max": 0.7472839506172839 + }, "related_data": { "qa": { "data_id": [ - "13_754879_810191", - "13_11765_5641", - "13_7439268_53413216", - "13_693786_572117", - "13_177519_60655", - "13_347764_354215", - "13_379873_414350" + "13_754879_810191@13", + "13_11765_5641@13", + "13_7439268_53413216@13", + "13_693786_572117@13", + "13_177519_60655@13", + "13_347764_354215@13", + "13_379873_414350@13" ] } } @@ -83383,7 +97149,7 @@ { "集成JMS": { "data": { - "uuid": "java-5-1443", + "uuid": "java-5-1472", "seg": [ [ [ @@ -83392,7 +97158,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7472839506172839, + "max": 0.7473456790123457 + }, "related_data": {} } } @@ -83400,7 +97169,7 @@ { "使用Scheduler": { "data": { - "uuid": "java-5-1444", + "uuid": "java-5-1473", "seg": [ [ [ @@ -83408,11 +97177,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7473456790123457, + "max": 0.7474074074074074 + }, "related_data": { "qa": { "data_id": [ - "13_189202_90836" + "13_189202_90836@13" ] } } @@ -83422,7 +97194,7 @@ { "集成JMX": { "data": { - "uuid": "java-5-1445", + "uuid": "java-5-1474", "seg": [ [ [ @@ -83431,7 +97203,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7474074074074074, + "max": 0.7474691358024691 + }, "related_data": {} } } @@ -83439,7 +97214,7 @@ { "集成Open API": { "data": { - "uuid": "java-5-1446", + "uuid": "java-5-1475", "seg": [ [ [ @@ -83449,7 +97224,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7474691358024691, + "max": 0.7475308641975309 + }, "related_data": {} } } @@ -83457,7 +97235,7 @@ { "访问Redis": { "data": { - "uuid": "java-5-1447", + "uuid": "java-5-1476", "seg": [ [ [ @@ -83466,7 +97244,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7475308641975309, + "max": 0.7475925925925926 + }, "related_data": {} } } @@ -83474,7 +97255,7 @@ { "集成Artemis": { "data": { - "uuid": "java-5-1448", + "uuid": "java-5-1477", "seg": [ [ [ @@ -83483,13 +97264,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7475925925925926, + "max": 0.7476543209876543 + }, "related_data": { "qa": { "data_id": [ - "13_691703_564695", - "13_362154_380886", - "13_7419985_53395817" + "13_691703_564695@13", + "13_362154_380886@13", + "13_7419985_53395817@13" ] } } @@ -83499,7 +97283,7 @@ { "集成RabbitMQ": { "data": { - "uuid": "java-5-1449", + "uuid": "java-5-1478", "seg": [ [ [ @@ -83508,13 +97292,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7476543209876543, + "max": 0.7477160493827161 + }, "related_data": { "qa": { "data_id": [ - "13_373815_402303", - "13_384611_422482", - "13_700740_590158" + "13_373815_402303@13", + "13_384611_422482@13", + "13_700740_590158@13" ] } } @@ -83524,7 +97311,7 @@ { "集成Kafka": { "data": { - "uuid": "java-5-1450", + "uuid": "java-5-1479", "seg": [ [ [ @@ -83533,14 +97320,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7477160493827161, + "max": 0.7477777777777778 + }, "related_data": {} } } } ], "data": { - "uuid": "java-4-1247", + "uuid": "java-4-1258", "seg": [ [ [ @@ -83549,14 +97339,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7472222222222222, + "max": 0.7477777777777778 + }, "related_data": {} } } } ], "data": { - "uuid": "java-3-622", + "uuid": "java-3-615", "seg": [ [ [ @@ -83565,7 +97358,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7466666666666667, + "max": 0.7477777777777778 + }, "related_data": {} } } @@ -83576,20 +97372,24 @@ { "使用开发者工具": { "data": { - "uuid": "java-4-1248", + "uuid": "java-4-1259", "seg": [ [ [ "开发者", - "工具" + "工具", + "开发者工具" ] ] ], - "level": "1", + "level": { + "min": 0.7477777777777778, + "max": 0.7479166666666667 + }, "related_data": { "qa": { "data_id": [ - "13_207477_141929" + "13_207477_141929@13" ] } } @@ -83599,7 +97399,7 @@ { "打包Spring Boot应用": { "data": { - "uuid": "java-4-1249", + "uuid": "java-4-1260", "seg": [ [ [ @@ -83609,7 +97409,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7479166666666667, + "max": 0.7480555555555556 + }, "related_data": {} } } @@ -83617,7 +97420,7 @@ { "使用Actuator": { "data": { - "uuid": "java-4-1250", + "uuid": "java-4-1261", "seg": [ [ [ @@ -83625,7 +97428,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7480555555555556, + "max": 0.7481944444444445 + }, "related_data": {} } } @@ -83633,7 +97439,7 @@ { "使用Profiles": { "data": { - "uuid": "java-4-1251", + "uuid": "java-4-1262", "seg": [ [ [ @@ -83641,7 +97447,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7481944444444445, + "max": 0.7483333333333333 + }, "related_data": {} } } @@ -83649,7 +97458,7 @@ { "使用Conditional": { "data": { - "uuid": "java-4-1252", + "uuid": "java-4-1263", "seg": [ [ [ @@ -83657,7 +97466,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7483333333333333, + "max": 0.7484722222222222 + }, "related_data": {} } } @@ -83665,7 +97477,7 @@ { "加载配置文件": { "data": { - "uuid": "java-4-1253", + "uuid": "java-4-1264", "seg": [ [ [ @@ -83674,21 +97486,18 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "13_7461166_53446258" - ] - } - } + "level": { + "min": 0.7484722222222222, + "max": 0.7486111111111111 + }, + "related_data": {} } } }, { "禁用自动配置": { "data": { - "uuid": "java-4-1254", + "uuid": "java-4-1265", "seg": [ [ [ @@ -83698,7 +97507,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7486111111111111, + "max": 0.74875 + }, "related_data": {} } } @@ -83706,7 +97518,7 @@ { "添加Filter": { "data": { - "uuid": "java-4-1255", + "uuid": "java-4-1266", "seg": [ [ [ @@ -83715,12 +97527,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.74875, + "max": 0.7488888888888889 + }, "related_data": { "qa": { "data_id": [ - "13_809156_904212", - "13_939336_1075488" + "13_809156_904212@13", + "13_939336_1075488@13" ] } } @@ -83729,7 +97544,7 @@ } ], "data": { - "uuid": "java-3-623", + "uuid": "java-3-616", "seg": [ [ [ @@ -83739,7 +97554,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7477777777777778, + "max": 0.7488888888888889 + }, "related_data": {} } } @@ -83747,7 +97565,7 @@ { "Spring Cloud开发": { "data": { - "uuid": "java-3-624", + "uuid": "java-3-617", "seg": [ [ [ @@ -83757,12 +97575,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7488888888888889, + "max": 0.75 + }, "related_data": { "qa": { "data_id": [ - "13_7443279_53420333", - "13_943272_1081707" + "13_7443279_53420333@13", + "13_943272_1081707@13" ] } } @@ -83777,7 +97598,10 @@ [] ] ], - "level": "1", + "level": { + "min": 0.7222222222222222, + "max": 0.75 + }, "related_data": {} } } @@ -83793,6 +97617,10 @@ ] ] ], + "level": { + "min": 0.5, + "max": 0.75 + }, "related_data": {} } } @@ -83808,23 +97636,29 @@ [ [ "类别", - "标签" + "标签", + "类别标签", + "标签问题" ] ] ], + "level": { + "min": 0.75, + "max": 0.8333333333333334 + }, "related_data": { "qa": { "data_id": [ - "13_753402_807942", - "13_676070_513541", - "13_7446587_53426042", - "13_344548_347832", - "13_7445129_53423677", - "13_772924_836696", - "13_662368_477878", - "13_7413800_53366043", - "13_706324_706068", - "13_871641_1003684" + "13_753402_807942@13", + "13_676070_513541@13", + "13_7446587_53426042@13", + "13_344548_347832@13", + "13_7445129_53423677@13", + "13_772924_836696@13", + "13_662368_477878@13", + "13_7413800_53366043@13", + "13_706324_706068@13", + "13_871641_1003684@13" ] } } @@ -83842,19 +97676,23 @@ ] ] ], + "level": { + "min": 0.8333333333333334, + "max": 0.9166666666666666 + }, "related_data": { "qa": { "data_id": [ - "13_204623_133665", - "13_371555_398246", - "13_245013_234955", - "13_7399380_53346536", - "13_769712_830799", - "13_246966_239825", - "13_7398734_53345172", - "13_7408633_53358813", - "13_739567_798712", - "13_525259_439217" + "13_204623_133665@13", + "13_371555_398246@13", + "13_245013_234955@13", + "13_7399380_53346536@13", + "13_769712_830799@13", + "13_246966_239825@13", + "13_7398734_53345172@13", + "13_7408633_53358813@13", + "13_739567_798712@13", + "13_525259_439217@13" ] } } @@ -83872,19 +97710,23 @@ ] ] ], + "level": { + "min": 0.9166666666666666, + "max": 1.0 + }, "related_data": { "qa": { "data_id": [ - "13_703315_594107", - "13_165073_39296", - "13_181510_66808", - "13_743459_787764", - "13_863418_991711", - "13_1062741_1260615", - "13_695731_578770", - "13_7399208_53346247", - "13_236074_215698", - "13_70_149" + "13_703315_594107@13", + "13_165073_39296@13", + "13_181510_66808@13", + "13_743459_787764@13", + "13_863418_991711@13", + "13_1062741_1260615@13", + "13_695731_578770@13", + "13_7399208_53346247@13", + "13_236074_215698@13", + "13_70_149@13" ] } } @@ -83899,6 +97741,10 @@ [] ] ], + "level": { + "min": 0.75, + "max": 1.0 + }, "related_data": {} } } @@ -83913,10 +97759,15 @@ "编程", "参考", "官方", - "教程" + "教程", + "官方教程" ] ] ], + "level": { + "min": 0, + "max": 1 + }, "related_data": {} } } diff --git a/data/tree_python_mapping.json b/data/tree_python_mapping.json index 6564ed7..97f409d 100644 --- a/data/tree_python_mapping.json +++ b/data/tree_python_mapping.json @@ -18,11 +18,15 @@ [ [ "python", - "做" + "做", + "都能" ] ] ], - "level": "1", + "level": { + "min": 0.0, + "max": 0.0071428571428571435 + }, "related_data": {} } } @@ -38,7 +42,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0, + "max": 0.0071428571428571435 + }, "related_data": {} } } @@ -51,11 +58,15 @@ [ [ "程序设计", - "思想" + "思想", + "程序设计思想" ] ] ], - "level": "1", + "level": { + "min": 0.0071428571428571435, + "max": 0.014285714285714287 + }, "related_data": {} } } @@ -76,7 +87,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.014285714285714287, + "max": 0.016666666666666666 + }, "related_data": {} } } @@ -94,7 +108,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.016666666666666666, + "max": 0.01904761904761905 + }, "related_data": {} } } @@ -112,7 +129,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.01904761904761905, + "max": 0.02142857142857143 + }, "related_data": {} } } @@ -128,7 +148,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.014285714285714287, + "max": 0.02142857142857143 + }, "related_data": {} } } @@ -148,20 +171,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.02142857142857143, + "max": 0.025 + }, "related_data": { "qa": { "data_id": [ - "8_769551_830462", - "8_753161_807531", - "8_7457834_53442309", - "8_656388_469157", - "8_1095704_1307364", - "8_770067_831407", - "8_1050679_1247835", - "8_757675_813263", - "8_7425118_53386353", - "8_7416940_53371914" + "8_7458112_53442587@8", + "8_774885_838887@8", + "8_919771_1056227@8", + "8_7461154_53446241@8", + "8_22_30@8", + "8_7428482_53394244@8", + "8_769551_830462@8", + "8_753161_807531@8", + "8_7457834_53442309@8", + "8_656388_469157@8" ] } } @@ -177,19 +203,23 @@ [ "脚本", "方式", - "运行" + "运行", + "脚本方式" ] ] ], - "level": "1", + "level": { + "min": 0.025, + "max": 0.028571428571428574 + }, "related_data": { "qa": { "data_id": [ - "8_1065823_1271961", - "8_747794_799745", - "8_1065_1855", - "8_7456198_53439611", - "8_7396314_53339760" + "8_1065823_1271961@8", + "8_747794_799745@8", + "8_1065_1855@8", + "8_7456198_53439611@8", + "8_7396314_53339760@8" ] } } @@ -207,7 +237,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.02142857142857143, + "max": 0.028571428571428574 + }, "related_data": {} } } @@ -229,7 +262,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.028571428571428574, + "max": 0.029017857142857144 + }, "related_data": {} } } @@ -250,7 +286,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.029017857142857144, + "max": 0.029464285714285717 + }, "related_data": {} } } @@ -268,7 +307,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.029464285714285717, + "max": 0.02991071428571429 + }, "related_data": {} } } @@ -289,11 +331,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.02991071428571429, + "max": 0.03035714285714286 + }, "related_data": { "qa": { "data_id": [ - "8_7443135_53420253" + "8_7443135_53420253@8" ] } } @@ -312,7 +357,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03035714285714286, + "max": 0.03080357142857143 + }, "related_data": {} } } @@ -332,20 +380,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03080357142857143, + "max": 0.03125 + }, "related_data": { "qa": { "data_id": [ - "8_762630_820868", - "8_689403_557328", - "8_188160_84436", - "8_758998_830910", - "8_1048720_1246185", - "8_5895590_37986409", - "8_7444167_53422091", - "8_7398152_53344020", - "8_7422927_53384044", - "8_7433340_53403414" + "8_762630_820868@8", + "8_689403_557328@8", + "8_188160_84436@8", + "8_758998_830910@8", + "8_1048720_1246185@8", + "8_5895590_37986409@8", + "8_7444167_53422091@8", + "8_7398152_53344020@8", + "8_7422927_53384044@8", + "8_7433340_53403414@8" ] } } @@ -366,7 +417,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03125, + "max": 0.03169642857142858 + }, "related_data": {} } } @@ -380,11 +434,15 @@ [ "unittest", "单元测试", - "框架" + "框架", + "单元测试框架" ] ] ], - "level": "1", + "level": { + "min": 0.03169642857142858, + "max": 0.03214285714285715 + }, "related_data": {} } } @@ -399,11 +457,15 @@ "unittest", "mock", "对象", - "库" + "库", + "对象库" ] ] ], - "level": "1", + "level": { + "min": 0.03214285714285715, + "max": 0.032589285714285716 + }, "related_data": {} } } @@ -418,11 +480,16 @@ "unittest", "mock", "手指", - "南" + "南", + "上手指", + "手指南" ] ] ], - "level": "1", + "level": { + "min": 0.032589285714285716, + "max": 0.03303571428571429 + }, "related_data": {} } } @@ -441,7 +508,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03303571428571429, + "max": 0.03348214285714286 + }, "related_data": {} } } @@ -460,7 +530,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03348214285714286, + "max": 0.03392857142857143 + }, "related_data": {} } } @@ -482,7 +555,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03392857142857143, + "max": 0.034375 + }, "related_data": {} } } @@ -504,7 +580,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.034375, + "max": 0.03482142857142857 + }, "related_data": {} } } @@ -529,7 +608,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03482142857142857, + "max": 0.03526785714285715 + }, "related_data": {} } } @@ -553,7 +635,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03526785714285715, + "max": 0.03571428571428572 + }, "related_data": {} } } @@ -568,7 +653,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.028571428571428574, + "max": 0.03571428571428572 + }, "related_data": {} } } @@ -581,11 +669,15 @@ [ [ "编码", - "规范" + "规范", + "编码规范" ] ] ], - "level": "1", + "level": { + "min": 0.03571428571428572, + "max": 0.04285714285714286 + }, "related_data": {} } } @@ -604,20 +696,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.04285714285714286, + "max": 0.05 + }, "related_data": { "qa": { "data_id": [ - "8_7424709_53385879", - "8_1064279_1262480", - "8_7416147_53370059", - "8_5719755_35642947", - "8_7403493_53352438", - "8_1049447_1246935", - "8_771843_834565", - "8_7423912_53384293", - "8_700191_588874", - "8_7439597_53414081" + "8_7424709_53385879@8", + "8_1064279_1262480@8", + "8_7416147_53370059@8", + "8_5719755_35642947@8", + "8_7403493_53352438@8", + "8_1049447_1246935@8", + "8_771843_834565@8", + "8_7423912_53384293@8", + "8_700191_588874@8", + "8_7439597_53414081@8" ] } } @@ -635,7 +730,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.04285714285714286, + "max": 0.05 + }, "related_data": {} } } @@ -651,7 +749,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0, + "max": 0.05 + }, "related_data": {} } } @@ -674,11 +775,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05, + "max": 0.055 + }, "related_data": { "qa": { "data_id": [ - "8_7433425_53403624" + "8_7433425_53403624@8" ] } } @@ -696,7 +800,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05, + "max": 0.055 + }, "related_data": {} } } @@ -719,16 +826,22 @@ ] ] ], - "level": "1", + "level": { + "min": 0.055, + "max": 0.055357142857142855 + }, "related_data": { "qa": { "data_id": [ - "8_716440_709176", - "8_7458031_53442538", - "8_7443894_53421872", - "8_7431838_53400519", - "8_7418574_53374797", - "8_7418576_53375374" + "8_716440_709176@8", + "8_7458031_53442538@8", + "8_7443894_53421872@8", + "8_7431838_53400519@8", + "8_7418574_53374797@8", + "8_7418576_53375374@8", + "8_7416161_53370502@8", + "8_7416162_53370499@8", + "8_7414416_53367618@8" ] } } @@ -745,7 +858,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.055, + "max": 0.055357142857142855 + }, "related_data": {} } } @@ -766,15 +882,39 @@ [] ] ], - "level": "1", + "level": { + "min": 0.055357142857142855, + "max": 0.05547619047619048 + }, "related_data": {} } } }, { - "变量是标签": { + "使用变量时避免命名错误": { "data": { "uuid": "python-5-2", + "seg": [ + [ + [ + "变量", + "命名", + "命名错误" + ] + ] + ], + "level": { + "min": 0.05547619047619048, + "max": 0.05559523809523809 + }, + "related_data": {} + } + } + }, + { + "变量是标签": { + "data": { + "uuid": "python-5-3", "seg": [ [ [ @@ -783,19 +923,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05559523809523809, + "max": 0.055714285714285716 + }, "related_data": { "qa": { "data_id": [ - "8_7451800_53433770", - "8_170644_47288", - "8_7455549_53438636", - "8_7421133_53390836", - "8_7408816_53359622", - "8_7409162_53359471", - "8_2061170_11305291", - "8_7406472_53355940", - "8_756994_812822" + "8_7451800_53433770@8", + "8_170644_47288@8", + "8_7455549_53438636@8", + "8_7421133_53390836@8", + "8_7408816_53359622@8", + "8_7409162_53359471@8", + "8_2061170_11305291@8", + "8_7406472_53355940@8", + "8_7410869_53361698@8", + "8_756994_812822@8" ] } } @@ -812,8 +956,18 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.055357142857142855, + "max": 0.055714285714285716 + }, + "related_data": { + "qa": { + "data_id": [ + "8_929579_1064422@8", + "8_6240932_43549673@8" + ] + } + } } } }, @@ -823,16 +977,20 @@ { "表达式语句": { "data": { - "uuid": "python-5-3", + "uuid": "python-5-4", "seg": [ [ [ "表达式", - "语句" + "语句", + "表达式语句" ] ] ], - "level": "1", + "level": { + "min": 0.055714285714285716, + "max": 0.055746753246753246 + }, "related_data": {} } } @@ -840,16 +998,20 @@ { "赋值语句": { "data": { - "uuid": "python-5-4", + "uuid": "python-5-5", "seg": [ [ [ "赋值", - "语句" + "语句", + "赋值语句" ] ] ], - "level": "1", + "level": { + "min": 0.055746753246753246, + "max": 0.05577922077922078 + }, "related_data": {} } } @@ -857,7 +1019,7 @@ { "assert语句": { "data": { - "uuid": "python-5-5", + "uuid": "python-5-6", "seg": [ [ [ @@ -866,16 +1028,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05577922077922078, + "max": 0.05581168831168831 + }, "related_data": { "qa": { "data_id": [ - "8_7456636_53440820", - "8_714169_706009", - "8_7413411_53365314", - "8_7407903_53358092", - "8_844166_965275", - "8_7460291_53445368" + "8_7456636_53440820@8", + "8_714169_706009@8", + "8_7413411_53365314@8", + "8_7407903_53358092@8", + "8_844166_965275@8", + "8_7460291_53445368@8" ] } } @@ -885,7 +1050,7 @@ { "return语句": { "data": { - "uuid": "python-5-6", + "uuid": "python-5-7", "seg": [ [ [ @@ -894,13 +1059,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05581168831168831, + "max": 0.05584415584415584 + }, "related_data": { "qa": { "data_id": [ - "8_7457765_53442242", - "8_7451350_53432531", - "8_7449468_53429532" + "8_7457765_53442242@8", + "8_7451350_53432531@8", + "8_7449468_53429532@8" ] } } @@ -910,7 +1078,7 @@ { "yield语句": { "data": { - "uuid": "python-5-7", + "uuid": "python-5-8", "seg": [ [ [ @@ -919,7 +1087,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05584415584415584, + "max": 0.05587662337662338 + }, "related_data": {} } } @@ -927,7 +1098,7 @@ { "raise语句": { "data": { - "uuid": "python-5-8", + "uuid": "python-5-9", "seg": [ [ [ @@ -936,7 +1107,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05587662337662338, + "max": 0.05590909090909091 + }, "related_data": {} } } @@ -944,7 +1118,7 @@ { "break语句": { "data": { - "uuid": "python-5-9", + "uuid": "python-5-10", "seg": [ [ [ @@ -953,7 +1127,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05590909090909091, + "max": 0.055941558441558445 + }, "related_data": {} } } @@ -961,7 +1138,7 @@ { "continue语句": { "data": { - "uuid": "python-5-10", + "uuid": "python-5-11", "seg": [ [ [ @@ -970,7 +1147,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.055941558441558445, + "max": 0.055974025974025975 + }, "related_data": {} } } @@ -978,7 +1158,7 @@ { "import语句": { "data": { - "uuid": "python-5-11", + "uuid": "python-5-12", "seg": [ [ [ @@ -987,18 +1167,21 @@ ] ] ], - "level": "1", + "level": { + "min": 0.055974025974025975, + "max": 0.056006493506493504 + }, "related_data": { "qa": { "data_id": [ - "8_7424280_53384955", - "8_7455544_53438631", - "8_772054_835094", - "8_678541_524055", - "8_378228_409319", - "8_7412266_53363776", - "8_697202_803093", - "8_648702_566376" + "8_7424280_53384955@8", + "8_7455544_53438631@8", + "8_772054_835094@8", + "8_678541_524055@8", + "8_378228_409319@8", + "8_7412266_53363776@8", + "8_697202_803093@8", + "8_648702_566376@8" ] } } @@ -1008,7 +1191,7 @@ { "global语句": { "data": { - "uuid": "python-5-12", + "uuid": "python-5-13", "seg": [ [ [ @@ -1017,15 +1200,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.056006493506493504, + "max": 0.05603896103896104 + }, "related_data": { "qa": { "data_id": [ - "8_507827_438470", - "8_756311_811483", - "8_7417745_53373461", - "8_7404671_53353942", - "8_7404715_53353898" + "8_507827_438470@8", + "8_756311_811483@8", + "8_7417745_53373461@8", + "8_7404671_53353942@8", + "8_7404715_53353898@8" ] } } @@ -1035,7 +1221,7 @@ { "nonlocal语句": { "data": { - "uuid": "python-5-13", + "uuid": "python-5-14", "seg": [ [ [ @@ -1044,7 +1230,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05603896103896104, + "max": 0.05607142857142857 + }, "related_data": {} } } @@ -1059,12 +1248,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.055714285714285716, + "max": 0.05607142857142857 + }, "related_data": { "qa": { "data_id": [ - "8_7451275_53432309", - "8_651617_459012" + "8_7451275_53432309@8", + "8_651617_459012@8" ] } } @@ -1082,7 +1274,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05607142857142857, + "max": 0.05642857142857143 + }, "related_data": {} } } @@ -1095,11 +1290,15 @@ [ [ "命名", - "规则" + "规则", + "命名规则" ] ] ], - "level": "1", + "level": { + "min": 0.05642857142857143, + "max": 0.05678571428571429 + }, "related_data": {} } } @@ -1118,7 +1317,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05678571428571429, + "max": 0.05714285714285715 + }, "related_data": {} } } @@ -1130,11 +1332,15 @@ "seg": [ [ [ - "风格" + "风格", + "代码风格" ] ] ], - "level": "1", + "level": { + "min": 0.05714285714285715, + "max": 0.0575 + }, "related_data": {} } } @@ -1151,7 +1357,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0575, + "max": 0.05785714285714286 + }, "related_data": {} } } @@ -1167,13 +1376,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05785714285714286, + "max": 0.05821428571428572 + }, "related_data": { "qa": { "data_id": [ - "8_7418583_53379738", - "8_858492_984540", - "8_1098045_1312397" + "8_7418583_53379738@8", + "8_858492_984540@8", + "8_1098045_1312397@8", + "8_7441387_53417494@8" ] } } @@ -1193,7 +1406,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05821428571428572, + "max": 0.05857142857142857 + }, "related_data": {} } } @@ -1204,7 +1420,7 @@ { "从命令提示符运行Python脚本": { "data": { - "uuid": "python-5-14", + "uuid": "python-5-15", "seg": [ [ [ @@ -1215,7 +1431,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05857142857142857, + "max": 0.058750000000000004 + }, "related_data": {} } } @@ -1223,16 +1442,20 @@ { "让脚本像普通程序一样": { "data": { - "uuid": "python-5-15", + "uuid": "python-5-16", "seg": [ [ [ "脚本", - "程序" + "程序", + "普通程序" ] ] ], - "level": "1", + "level": { + "min": 0.058750000000000004, + "max": 0.058928571428571434 + }, "related_data": {} } } @@ -1248,7 +1471,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05857142857142857, + "max": 0.058928571428571434 + }, "related_data": {} } } @@ -1271,14 +1497,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.058928571428571434, + "max": 0.05895833333333334 + }, "related_data": { "qa": { "data_id": [ - "8_728030_738322", - "8_231511_202726", - "8_7439559_53414122", - "8_247171_240370" + "8_728030_738322@8", + "8_231511_202726@8", + "8_7439559_53414122@8", + "8_247171_240370@8" ] } } @@ -1297,7 +1526,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05895833333333334, + "max": 0.05898809523809524 + }, "related_data": {} } } @@ -1314,24 +1546,31 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05898809523809524, + "max": 0.05901785714285715 + }, "related_data": {} } } } ], "data": { - "uuid": "python-5-16", + "uuid": "python-5-17", "seg": [ [ [ "搭建", "编程", - "环境" + "环境", + "编程环境" ] ] ], - "level": "1", + "level": { + "min": 0.058928571428571434, + "max": 0.05901785714285715 + }, "related_data": {} } } @@ -1351,11 +1590,15 @@ "搭建", "python", "编程", - "环境" + "环境", + "编程环境" ] ] ], - "level": "1", + "level": { + "min": 0.05901785714285715, + "max": 0.05904761904761905 + }, "related_data": {} } } @@ -1372,11 +1615,15 @@ "搭建", "python", "编程", - "环境" + "环境", + "编程环境" ] ] ], - "level": "1", + "level": { + "min": 0.05904761904761905, + "max": 0.05907738095238096 + }, "related_data": {} } } @@ -1393,15 +1640,19 @@ "搭建", "python", "编程", - "环境" + "环境", + "编程环境" ] ] ], - "level": "1", + "level": { + "min": 0.05907738095238096, + "max": 0.05910714285714286 + }, "related_data": { "qa": { "data_id": [ - "8_7440803_53416632" + "8_7440803_53416632@8" ] } } @@ -1410,7 +1661,7 @@ } ], "data": { - "uuid": "python-5-17", + "uuid": "python-5-18", "seg": [ [ [ @@ -1418,11 +1669,15 @@ "搭建", "python", "编程", - "环境" + "环境", + "编程环境" ] ] ], - "level": "1", + "level": { + "min": 0.05901785714285715, + "max": 0.05910714285714286 + }, "related_data": {} } } @@ -1444,11 +1699,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05910714285714286, + "max": 0.05915178571428571 + }, "related_data": { "qa": { "data_id": [ - "8_645908_447876" + "8_645908_447876@8" ] } } @@ -1470,20 +1728,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05915178571428571, + "max": 0.05919642857142857 + }, "related_data": { "qa": { "data_id": [ - "8_5624598_34529614", - "8_228228_194148", - "8_7458582_53443191", - "8_7399628_53347010", - "8_7413373_53366681", - "8_7441101_53416891", - "8_769658_830843", - "8_733180_754526", - "8_7455539_53438654", - "8_1053498_1250749" + "8_5624598_34529614@8", + "8_228228_194148@8", + "8_7458582_53443191@8", + "8_7399628_53347010@8", + "8_7413373_53366681@8", + "8_7441101_53416891@8", + "8_769658_830843@8", + "8_733180_754526@8", + "8_7455539_53438654@8", + "8_1053498_1250749@8" ] } } @@ -1492,7 +1753,7 @@ } ], "data": { - "uuid": "python-5-18", + "uuid": "python-5-19", "seg": [ [ [ @@ -1502,7 +1763,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05910714285714286, + "max": 0.05919642857142857 + }, "related_data": {} } } @@ -1526,11 +1790,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05919642857142857, + "max": 0.05928571428571429 + }, "related_data": { "qa": { "data_id": [ - "8_773376_837050" + "8_773376_837050@8" ] } } @@ -1539,7 +1806,7 @@ } ], "data": { - "uuid": "python-5-19", + "uuid": "python-5-20", "seg": [ [ [ @@ -1550,7 +1817,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05919642857142857, + "max": 0.05928571428571429 + }, "related_data": {} } } @@ -1565,7 +1835,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.058928571428571434, + "max": 0.05928571428571429 + }, "related_data": {} } } @@ -1585,21 +1858,25 @@ [ "修改", "列表", - "元素" + "元素", + "列表元素" ] ] ], - "level": "1", + "level": { + "min": 0.05928571428571429, + "max": 0.05932539682539683 + }, "related_data": { "qa": { "data_id": [ - "8_7419562_53376895", - "8_1093799_1303451", - "8_7460007_53445035", - "8_1104149_1318441", - "8_896579_1033715", - "8_937464_1073306", - "8_677992_521266" + "8_7419562_53376895@8", + "8_1093799_1303451@8", + "8_7460007_53445035@8", + "8_1104149_1318441@8", + "8_896579_1033715@8", + "8_937464_1073306@8", + "8_677992_521266@8" ] } } @@ -1619,13 +1896,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05932539682539683, + "max": 0.05936507936507937 + }, "related_data": { "qa": { "data_id": [ - "8_7402351_53350050", - "8_7456507_53440314", - "8_773693_841124" + "8_7402351_53350050@8", + "8_7456507_53440314@8", + "8_773693_841124@8" ] } } @@ -1645,20 +1925,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05936507936507937, + "max": 0.05940476190476191 + }, "related_data": { "qa": { "data_id": [ - "8_7424831_53386019", - "8_751638_805295", - "8_1080510_1285800", - "8_7402211_53349861", - "8_1086409_1293328", - "8_7425383_53386759", - "8_7399114_53345999", - "8_758594_814600", - "8_1093527_1303046", - "8_887540_1027745" + "8_7424831_53386019@8", + "8_751638_805295@8", + "8_1080510_1285800@8", + "8_7402211_53349861@8", + "8_1086409_1293328@8", + "8_7425383_53386759@8", + "8_7399114_53345999@8", + "8_758594_814600@8", + "8_1093527_1303046@8", + "8_887540_1027745@8" ] } } @@ -1667,7 +1950,7 @@ } ], "data": { - "uuid": "python-5-20", + "uuid": "python-5-21", "seg": [ [ [ @@ -1682,7 +1965,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05928571428571429, + "max": 0.05940476190476191 + }, "related_data": {} } } @@ -1701,20 +1987,24 @@ "sort", "列表", "永久", - "排序" + "排序", + "永久排序" ] ] ], - "level": "1", + "level": { + "min": 0.05940476190476191, + "max": 0.05943452380952381 + }, "related_data": { "qa": { "data_id": [ - "8_766589_825903", - "8_7432903_53402516", - "8_6161948_41750419", - "8_7439730_53414504", - "8_883592_1022058", - "8_7462510_53448115" + "8_766589_825903@8", + "8_7432903_53402516@8", + "8_6161948_41750419@8", + "8_7439730_53414504@8", + "8_883592_1022058@8", + "8_7462510_53448115@8" ] } } @@ -1736,11 +2026,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05943452380952381, + "max": 0.05946428571428572 + }, "related_data": { "qa": { "data_id": [ - "8_7407899_53358072" + "8_7407899_53358072@8" ] } } @@ -1760,11 +2053,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05946428571428572, + "max": 0.05949404761904763 + }, "related_data": { "qa": { "data_id": [ - "8_7415399_53368808" + "8_7415399_53368808@8" ] } } @@ -1783,14 +2079,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05949404761904763, + "max": 0.05952380952380953 + }, "related_data": {} } } } ], "data": { - "uuid": "python-5-21", + "uuid": "python-5-22", "seg": [ [ [ @@ -1799,7 +2098,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05940476190476191, + "max": 0.05952380952380953 + }, "related_data": {} } } @@ -1807,16 +2109,21 @@ { "使用列表时避免索引错误": { "data": { - "uuid": "python-5-22", + "uuid": "python-5-23", "seg": [ [ [ "列表", - "索引" + "索引", + "列表时", + "索引错误" ] ] ], - "level": "1", + "level": { + "min": 0.05952380952380953, + "max": 0.05964285714285715 + }, "related_data": {} } } @@ -1832,7 +2139,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05928571428571429, + "max": 0.05964285714285715 + }, "related_data": {} } } @@ -1843,7 +2153,7 @@ { "测试函数": { "data": { - "uuid": "python-5-23", + "uuid": "python-5-24", "seg": [ [ [ @@ -1851,7 +2161,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05964285714285715, + "max": 0.060000000000000005 + }, "related_data": {} } } @@ -1866,7 +2179,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05964285714285715, + "max": 0.060000000000000005 + }, "related_data": {} } } @@ -1881,7 +2197,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.055, + "max": 0.060000000000000005 + }, "related_data": {} } } @@ -1898,18 +2217,22 @@ [ "函数", "定义", - "def" + "def", + "函数定义" ] ] ], - "level": "1", + "level": { + "min": 0.060000000000000005, + "max": 0.060131578947368425 + }, "related_data": { "qa": { "data_id": [ - "8_7456871_53440958", - "8_7453433_53436150", - "8_1097219_1310398", - "8_703811_594583" + "8_7456871_53440958@8", + "8_7453433_53436150@8", + "8_1097219_1310398@8", + "8_703811_594583@8" ] } } @@ -1928,7 +2251,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.060131578947368425, + "max": 0.060263157894736845 + }, "related_data": {} } } @@ -1945,7 +2271,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.060263157894736845, + "max": 0.060394736842105265 + }, "related_data": {} } } @@ -1961,7 +2290,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.060394736842105265, + "max": 0.06052631578947369 + }, "related_data": {} } } @@ -1977,11 +2309,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06052631578947369, + "max": 0.06065789473684211 + }, "related_data": { "qa": { "data_id": [ - "8_4646662_29330314" + "8_4646662_29330314@8" ] } } @@ -2000,7 +2335,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06065789473684211, + "max": 0.06078947368421053 + }, "related_data": {} } } @@ -2018,7 +2356,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06078947368421053, + "max": 0.06092105263157895 + }, "related_data": {} } } @@ -2034,7 +2375,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06092105263157895, + "max": 0.06105263157894737 + }, "related_data": {} } } @@ -2051,7 +2395,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06105263157894737, + "max": 0.06118421052631579 + }, "related_data": {} } } @@ -2067,11 +2414,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06118421052631579, + "max": 0.06131578947368421 + }, "related_data": { "qa": { "data_id": [ - "8_703813_594587" + "8_703813_594587@8" ] } } @@ -2090,13 +2440,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06131578947368421, + "max": 0.06144736842105263 + }, "related_data": { "qa": { "data_id": [ - "8_7398252_53344197", - "8_7426497_53389988", - "8_7443582_53420759" + "8_7398252_53344197@8", + "8_7426497_53389988@8", + "8_7443582_53420759@8" ] } } @@ -2115,7 +2468,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06144736842105263, + "max": 0.06157894736842106 + }, "related_data": {} } } @@ -2126,17 +2482,22 @@ { "局部变量不能在全局作用域内使用": { "data": { - "uuid": "python-5-24", + "uuid": "python-5-25", "seg": [ [ [ "局部变量", "全局", - "作用域" + "作用域", + "全局作用域", + "作用域内" ] ] ], - "level": "1", + "level": { + "min": 0.06157894736842106, + "max": 0.061622807017543864 + }, "related_data": {} } } @@ -2144,17 +2505,22 @@ { "局部作用域不能使用其他局部作用域内的变量": { "data": { - "uuid": "python-5-25", + "uuid": "python-5-26", "seg": [ [ [ "局部", "作用域", - "变量" + "变量", + "局部作用域", + "局部作用域" ] ] ], - "level": "1", + "level": { + "min": 0.061622807017543864, + "max": 0.061666666666666675 + }, "related_data": {} } } @@ -2162,18 +2528,22 @@ { "全局变量可以在局部作用域中读取": { "data": { - "uuid": "python-5-26", + "uuid": "python-5-27", "seg": [ [ [ "全局变量", "局部", "作用域", - "读取" + "读取", + "局部作用域" ] ] ], - "level": "1", + "level": { + "min": 0.061666666666666675, + "max": 0.06171052631578948 + }, "related_data": {} } } @@ -2188,19 +2558,43 @@ ], [ "全局", - "作用域" + "作用域", + "全局作用域" ] ] ], - "level": "1", + "level": { + "min": 0.06157894736842106, + "max": 0.06171052631578948 + }, "related_data": {} } } }, { - "把函数视作对象": { + "异常处理": { "data": { "uuid": "python-4-51", + "seg": [ + [ + [ + "异常", + "异常处理" + ] + ] + ], + "level": { + "min": 0.06171052631578948, + "max": 0.0618421052631579 + }, + "related_data": {} + } + } + }, + { + "把函数视作对象": { + "data": { + "uuid": "python-4-52", "seg": [ [ [ @@ -2210,7 +2604,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0618421052631579, + "max": 0.06197368421052632 + }, "related_data": {} } } @@ -2218,7 +2615,7 @@ { "可调用对象": { "data": { - "uuid": "python-4-52", + "uuid": "python-4-53", "seg": [ [ [ @@ -2227,7 +2624,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06197368421052632, + "max": 0.06210526315789474 + }, "related_data": {} } } @@ -2235,18 +2635,22 @@ { "用户定义的可调用类型": { "data": { - "uuid": "python-4-53", + "uuid": "python-4-54", "seg": [ [ [ "用户", "定义", "调用", - "类型" + "类型", + "用户定义" ] ] ], - "level": "1", + "level": { + "min": 0.06210526315789474, + "max": 0.06223684210526316 + }, "related_data": {} } } @@ -2254,16 +2658,20 @@ { "函数内省": { "data": { - "uuid": "python-4-54", + "uuid": "python-4-55", "seg": [ [ [ "函数", - "内省" + "内省", + "函数内省" ] ] ], - "level": "1", + "level": { + "min": 0.06223684210526316, + "max": 0.06236842105263158 + }, "related_data": {} } } @@ -2271,18 +2679,23 @@ { "从定位参数到仅限关键字参数": { "data": { - "uuid": "python-4-55", + "uuid": "python-4-56", "seg": [ [ [ "定位", "参数", "仅限", - "关键字" + "关键字", + "定位参数", + "关键字参数" ] ] ], - "level": "1", + "level": { + "min": 0.06236842105263158, + "max": 0.0625 + }, "related_data": {} } } @@ -2290,7 +2703,7 @@ { "获取关于参数的信息": { "data": { - "uuid": "python-4-56", + "uuid": "python-4-57", "seg": [ [ [ @@ -2300,7 +2713,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0625, + "max": 0.06263157894736843 + }, "related_data": {} } } @@ -2308,18 +2724,22 @@ { "支持函数式编程的包": { "data": { - "uuid": "python-4-57", + "uuid": "python-4-58", "seg": [ [ [ "支持", "函数", "编程", - "包" + "包", + "函数式" ] ] ], - "level": "1", + "level": { + "min": 0.06263157894736843, + "max": 0.06276315789473684 + }, "related_data": {} } } @@ -2330,7 +2750,7 @@ { "位置实参": { "data": { - "uuid": "python-5-27", + "uuid": "python-5-28", "seg": [ [ [ @@ -2339,24 +2759,38 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.06276315789473684, + "max": 0.06278947368421052 + }, + "related_data": { + "qa": { + "data_id": [ + "8_7430233_53397286@8", + "8_7461764_53446982@8" + ] + } + } } } }, { "关键字实参": { "data": { - "uuid": "python-5-28", + "uuid": "python-5-29", "seg": [ [ [ "关键字", - "实参" + "实参", + "关键字实参" ] ] ], - "level": "1", + "level": { + "min": 0.06278947368421052, + "max": 0.06281578947368421 + }, "related_data": {} } } @@ -2364,7 +2798,7 @@ { "默认值": { "data": { - "uuid": "python-5-29", + "uuid": "python-5-30", "seg": [ [ [ @@ -2372,7 +2806,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06281578947368421, + "max": 0.0628421052631579 + }, "related_data": {} } } @@ -2380,7 +2817,7 @@ { "等效的函数调用": { "data": { - "uuid": "python-5-30", + "uuid": "python-5-31", "seg": [ [ [ @@ -2389,14 +2826,37 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0628421052631579, + "max": 0.06286842105263159 + }, + "related_data": {} + } + } + }, + { + "避免实参错误": { + "data": { + "uuid": "python-5-32", + "seg": [ + [ + [ + "实参", + "实参错误" + ] + ] + ], + "level": { + "min": 0.06286842105263159, + "max": 0.06289473684210527 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-58", + "uuid": "python-4-59", "seg": [ [ [ @@ -2405,7 +2865,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06276315789473684, + "max": 0.06289473684210527 + }, "related_data": {} } } @@ -2416,7 +2879,7 @@ { "返回简单值": { "data": { - "uuid": "python-5-31", + "uuid": "python-5-33", "seg": [ [ [ @@ -2425,7 +2888,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06289473684210527, + "max": 0.06293859649122807 + }, "related_data": {} } } @@ -2433,7 +2899,7 @@ { "让实参变成可选的": { "data": { - "uuid": "python-5-32", + "uuid": "python-5-34", "seg": [ [ [ @@ -2442,7 +2908,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06293859649122807, + "max": 0.06298245614035089 + }, "related_data": {} } } @@ -2450,7 +2919,7 @@ { "返回字典": { "data": { - "uuid": "python-5-33", + "uuid": "python-5-35", "seg": [ [ [ @@ -2459,14 +2928,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06298245614035089, + "max": 0.0630263157894737 + }, "related_data": { "qa": { "data_id": [ - "8_7411444_53362413", - "8_7409376_53359786", - "8_748755_800982", - "8_7449661_53429880" + "8_7411444_53362413@8", + "8_7409376_53359786@8", + "8_748755_800982@8", + "8_7449661_53429880@8" ] } } @@ -2475,7 +2947,7 @@ } ], "data": { - "uuid": "python-4-59", + "uuid": "python-4-60", "seg": [ [ [ @@ -2483,7 +2955,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06289473684210527, + "max": 0.0630263157894737 + }, "related_data": {} } } @@ -2494,7 +2969,7 @@ { "在函数中修改列表": { "data": { - "uuid": "python-5-34", + "uuid": "python-5-36", "seg": [ [ [ @@ -2504,13 +2979,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0630263157894737, + "max": 0.0630921052631579 + }, "related_data": { "qa": { "data_id": [ - "8_7411490_53362695", - "8_7455921_53439255", - "8_750017_802789" + "8_7411490_53362695@8", + "8_7455921_53439255@8", + "8_750017_802789@8" ] } } @@ -2520,7 +2998,7 @@ { "禁止函数修改列表": { "data": { - "uuid": "python-5-35", + "uuid": "python-5-37", "seg": [ [ [ @@ -2531,14 +3009,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0630921052631579, + "max": 0.06315789473684211 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-60", + "uuid": "python-4-61", "seg": [ [ [ @@ -2547,7 +3028,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0630263157894737, + "max": 0.06315789473684211 + }, "related_data": {} } } @@ -2558,23 +3042,27 @@ { "使用任意数量的关键字实参": { "data": { - "uuid": "python-5-36", + "uuid": "python-5-38", "seg": [ [ [ "任意", "数量", "关键字", - "实参" + "实参", + "关键字实参" ] ] ], - "level": "1", + "level": { + "min": 0.06315789473684211, + "max": 0.06318421052631579 + }, "related_data": { "qa": { "data_id": [ - "8_7457098_53441176", - "8_7399107_53346022" + "8_7457098_53441176@8", + "8_7399107_53346022@8" ] } } @@ -2584,7 +3072,7 @@ { "导入特定的函数": { "data": { - "uuid": "python-5-37", + "uuid": "python-5-39", "seg": [ [ [ @@ -2594,7 +3082,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06318421052631579, + "max": 0.06321052631578948 + }, "related_data": {} } } @@ -2602,7 +3093,7 @@ { "使用as给函数指定别名": { "data": { - "uuid": "python-5-38", + "uuid": "python-5-40", "seg": [ [ [ @@ -2613,13 +3104,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06321052631578948, + "max": 0.06323684210526316 + }, "related_data": { "qa": { "data_id": [ - "8_7414886_53368020", - "8_937139_1072787", - "8_1095761_1307402" + "8_1095761_1307402@8" ] } } @@ -2629,7 +3121,7 @@ { "使用as给模块指定别名": { "data": { - "uuid": "python-5-39", + "uuid": "python-5-41", "seg": [ [ [ @@ -2640,7 +3132,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06323684210526316, + "max": 0.06326315789473685 + }, "related_data": {} } } @@ -2648,7 +3143,7 @@ { "导入模块中的所有函数": { "data": { - "uuid": "python-5-40", + "uuid": "python-5-42", "seg": [ [ [ @@ -2658,14 +3153,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06326315789473685, + "max": 0.06328947368421053 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-61", + "uuid": "python-4-62", "seg": [ [ [ @@ -2676,7 +3174,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06315789473684211, + "max": 0.06328947368421053 + }, "related_data": {} } } @@ -2684,7 +3185,7 @@ { "函数编写指南": { "data": { - "uuid": "python-4-62", + "uuid": "python-4-63", "seg": [ [ [ @@ -2694,11 +3195,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06328947368421053, + "max": 0.06342105263157895 + }, "related_data": { "qa": { "data_id": [ - "8_242096_229296" + "8_242096_229296@8" ] } } @@ -2708,7 +3212,7 @@ { "编写可接受任意数量参数的函数": { "data": { - "uuid": "python-4-63", + "uuid": "python-4-64", "seg": [ [ [ @@ -2717,11 +3221,15 @@ "任意", "数量", "参数", - "函数" + "函数", + "数量参数" ] ] ], - "level": "1", + "level": { + "min": 0.06342105263157895, + "max": 0.06355263157894737 + }, "related_data": {} } } @@ -2729,7 +3237,7 @@ { "编写只接受关键字参数的函数": { "data": { - "uuid": "python-4-64", + "uuid": "python-4-65", "seg": [ [ [ @@ -2737,11 +3245,16 @@ "接受", "关键字", "参数", - "函数" + "函数", + "只接受", + "关键字参数" ] ] ], - "level": "1", + "level": { + "min": 0.06355263157894737, + "max": 0.06368421052631579 + }, "related_data": {} } } @@ -2749,7 +3262,7 @@ { "将元数据信息附加到函数参数上": { "data": { - "uuid": "python-4-65", + "uuid": "python-4-66", "seg": [ [ [ @@ -2757,11 +3270,15 @@ "数据", "信息", "附加", - "函数参数" + "函数参数", + "数据信息" ] ] ], - "level": "1", + "level": { + "min": 0.06368421052631579, + "max": 0.06381578947368421 + }, "related_data": {} } } @@ -2769,7 +3286,7 @@ { "从函数中返回多个值": { "data": { - "uuid": "python-4-66", + "uuid": "python-4-67", "seg": [ [ [ @@ -2779,7 +3296,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06381578947368421, + "max": 0.06394736842105264 + }, "related_data": {} } } @@ -2787,7 +3307,7 @@ { "定义带有默认参数的函数": { "data": { - "uuid": "python-4-67", + "uuid": "python-4-68", "seg": [ [ [ @@ -2799,7 +3319,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06394736842105264, + "max": 0.06407894736842105 + }, "related_data": {} } } @@ -2807,18 +3330,22 @@ { "定义匿名或内联函数": { "data": { - "uuid": "python-4-68", + "uuid": "python-4-69", "seg": [ [ [ "定义", "匿名", "内联", - "函数" + "函数", + "内联函数" ] ] ], - "level": "1", + "level": { + "min": 0.06407894736842105, + "max": 0.06421052631578948 + }, "related_data": {} } } @@ -2826,7 +3353,7 @@ { "在匿名函数中绑定变量的值": { "data": { - "uuid": "python-4-69", + "uuid": "python-4-70", "seg": [ [ [ @@ -2838,11 +3365,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06421052631578948, + "max": 0.0643421052631579 + }, "related_data": { "qa": { "data_id": [ - "8_7400078_53347856" + "8_7400078_53347856@8" ] } } @@ -2852,7 +3382,7 @@ { "让带有N个参数的可调用对象以较少的参数形式调用": { "data": { - "uuid": "python-4-70", + "uuid": "python-4-71", "seg": [ [ [ @@ -2862,11 +3392,15 @@ "调用", "对象", "较少", - "形式" + "形式", + "参数形式" ] ] ], - "level": "1", + "level": { + "min": 0.0643421052631579, + "max": 0.06447368421052632 + }, "related_data": {} } } @@ -2874,22 +3408,26 @@ { "用函数替代只有单个方法的类": { "data": { - "uuid": "python-4-71", + "uuid": "python-4-72", "seg": [ [ [ "函数", "单个", "方法", - "类" + "类", + "函数替代" ] ] ], - "level": "1", + "level": { + "min": 0.06447368421052632, + "max": 0.06460526315789474 + }, "related_data": { "qa": { "data_id": [ - "8_7412738_53364749" + "8_7412738_53364749@8" ] } } @@ -2899,7 +3437,7 @@ { "在回调函数中携带额外的状态": { "data": { - "uuid": "python-4-72", + "uuid": "python-4-73", "seg": [ [ [ @@ -2911,7 +3449,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06460526315789474, + "max": 0.06473684210526316 + }, "related_data": {} } } @@ -2919,7 +3460,7 @@ { "内联回调函数": { "data": { - "uuid": "python-4-73", + "uuid": "python-4-74", "seg": [ [ [ @@ -2929,7 +3470,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06473684210526316, + "max": 0.06486842105263158 + }, "related_data": {} } } @@ -2937,7 +3481,7 @@ { "访问定义在闭包内的变量": { "data": { - "uuid": "python-4-74", + "uuid": "python-4-75", "seg": [ [ [ @@ -2948,7 +3492,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06486842105263158, + "max": 0.065 + }, "related_data": {} } } @@ -2963,7 +3510,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.060000000000000005, + "max": 0.065 + }, "related_data": {} } } @@ -2974,7 +3524,7 @@ { "类定义class": { "data": { - "uuid": "python-4-75", + "uuid": "python-4-76", "seg": [ [ [ @@ -2984,15 +3534,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.065, + "max": 0.06525 + }, "related_data": { "qa": { "data_id": [ - "8_1081340_1287004", - "8_740098_776347", - "8_7445922_53424966", - "8_879250_1024477", - "8_7453557_53436261" + "8_1081340_1287004@8", + "8_740098_776347@8", + "8_7445922_53424966@8", + "8_879250_1024477@8", + "8_7453557_53436261@8" ] } } @@ -3002,7 +3555,7 @@ { "作用域和命名空间": { "data": { - "uuid": "python-4-76", + "uuid": "python-4-77", "seg": [ [ [ @@ -3010,11 +3563,15 @@ ], [ "命名", - "空间" + "空间", + "命名空间" ] ] ], - "level": "1", + "level": { + "min": 0.06525, + "max": 0.0655 + }, "related_data": {} } } @@ -3022,7 +3579,7 @@ { "对象": { "data": { - "uuid": "python-4-77", + "uuid": "python-4-78", "seg": [ [ [ @@ -3030,7 +3587,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0655, + "max": 0.06575 + }, "related_data": {} } } @@ -3041,21 +3601,25 @@ { "模拟数值类型": { "data": { - "uuid": "python-5-41", + "uuid": "python-5-43", "seg": [ [ [ "模拟", "数值", - "类型" + "类型", + "数值类型" ] ] ], - "level": "1", + "level": { + "min": 0.06575, + "max": 0.06583333333333334 + }, "related_data": { "qa": { "data_id": [ - "8_7418328_53374253" + "8_7418328_53374253@8" ] } } @@ -3065,7 +3629,7 @@ { "字符串表示形式": { "data": { - "uuid": "python-5-42", + "uuid": "python-5-44", "seg": [ [ [ @@ -3074,7 +3638,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06583333333333334, + "max": 0.06591666666666667 + }, "related_data": {} } } @@ -3082,7 +3649,7 @@ { "自定义的布尔值": { "data": { - "uuid": "python-5-43", + "uuid": "python-5-45", "seg": [ [ [ @@ -3091,14 +3658,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06591666666666667, + "max": 0.066 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-78", + "uuid": "python-4-79", "seg": [ [ [ @@ -3109,7 +3679,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06575, + "max": 0.066 + }, "related_data": {} } } @@ -3117,17 +3690,21 @@ { "类编码风格": { "data": { - "uuid": "python-4-79", + "uuid": "python-4-80", "seg": [ [ [ "类", "编码", - "风格" + "风格", + "编码风格" ] ] ], - "level": "1", + "level": { + "min": 0.066, + "max": 0.06625 + }, "related_data": {} } } @@ -3138,21 +3715,25 @@ { "类定义语法": { "data": { - "uuid": "python-5-44", + "uuid": "python-5-46", "seg": [ [ [ "类", "定义", - "语法" + "语法", + "定义语法" ] ] ], - "level": "1", + "level": { + "min": 0.06625, + "max": 0.06633333333333334 + }, "related_data": { "qa": { "data_id": [ - "8_763325_821701" + "8_763325_821701@8" ] } } @@ -3162,7 +3743,7 @@ { "类对象": { "data": { - "uuid": "python-5-45", + "uuid": "python-5-47", "seg": [ [ [ @@ -3171,11 +3752,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06633333333333334, + "max": 0.06641666666666667 + }, "related_data": { "qa": { "data_id": [ - "8_680405_532318" + "8_680405_532318@8" ] } } @@ -3185,23 +3769,27 @@ { "方法对象": { "data": { - "uuid": "python-5-46", + "uuid": "python-5-48", "seg": [ [ [ "方法", - "对象" + "对象", + "方法对象" ] ] ], - "level": "1", + "level": { + "min": 0.06641666666666667, + "max": 0.0665 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-80", + "uuid": "python-4-81", "seg": [ [ [ @@ -3210,7 +3798,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06625, + "max": 0.0665 + }, "related_data": {} } } @@ -3218,7 +3809,7 @@ { "补充说明": { "data": { - "uuid": "python-4-81", + "uuid": "python-4-82", "seg": [ [ [ @@ -3226,7 +3817,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0665, + "max": 0.06675 + }, "related_data": {} } } @@ -3234,7 +3828,7 @@ { "私有变量": { "data": { - "uuid": "python-4-82", + "uuid": "python-4-83", "seg": [ [ [ @@ -3243,7 +3837,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06675, + "max": 0.067 + }, "related_data": {} } } @@ -3251,7 +3848,7 @@ { "生成器表达式": { "data": { - "uuid": "python-4-83", + "uuid": "python-4-84", "seg": [ [ [ @@ -3260,15 +3857,44 @@ ] ] ], - "level": "1", + "level": { + "min": 0.067, + "max": 0.06725 + }, "related_data": {} } } }, + { + "类到底是什么": { + "data": { + "uuid": "python-4-85", + "seg": [ + [ + [ + "类", + "到底是" + ] + ] + ], + "level": { + "min": 0.06725, + "max": 0.0675 + }, + "related_data": { + "qa": { + "data_id": [ + "8_7415829_53369414@8" + ] + } + } + } + } + }, { "创建自定义类": { "data": { - "uuid": "python-4-84", + "uuid": "python-4-86", "seg": [ [ [ @@ -3278,11 +3904,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0675, + "max": 0.06775 + }, "related_data": { "qa": { "data_id": [ - "8_7449628_53431618" + "8_7449628_53431618@8" ] } } @@ -3292,16 +3921,20 @@ { "再谈隐藏": { "data": { - "uuid": "python-4-85", + "uuid": "python-4-87", "seg": [ [ [ "谈", - "隐藏" + "隐藏", + "再谈" ] ] ], - "level": "1", + "level": { + "min": 0.06775, + "max": 0.068 + }, "related_data": {} } } @@ -3309,17 +3942,21 @@ { "类的命名空间": { "data": { - "uuid": "python-4-86", + "uuid": "python-4-88", "seg": [ [ [ "类", "命名", - "空间" + "空间", + "命名空间" ] ] ], - "level": "1", + "level": { + "min": 0.068, + "max": 0.06825 + }, "related_data": {} } } @@ -3327,7 +3964,7 @@ { "指定超类": { "data": { - "uuid": "python-4-87", + "uuid": "python-4-89", "seg": [ [ [ @@ -3336,7 +3973,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06825, + "max": 0.0685 + }, "related_data": {} } } @@ -3344,7 +3984,7 @@ { "深入探讨继承": { "data": { - "uuid": "python-4-88", + "uuid": "python-4-90", "seg": [ [ [ @@ -3353,7 +3993,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0685, + "max": 0.06875 + }, "related_data": {} } } @@ -3361,7 +4004,7 @@ { "多个超类": { "data": { - "uuid": "python-4-89", + "uuid": "python-4-91", "seg": [ [ [ @@ -3369,7 +4012,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06875, + "max": 0.069 + }, "related_data": {} } } @@ -3380,7 +4026,7 @@ { "Python文化中的接口和协议": { "data": { - "uuid": "python-5-47", + "uuid": "python-5-49", "seg": [ [ [ @@ -3393,7 +4039,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.069, + "max": 0.069025 + }, "related_data": {} } } @@ -3401,7 +4050,7 @@ { "Python喜欢序列": { "data": { - "uuid": "python-5-48", + "uuid": "python-5-50", "seg": [ [ [ @@ -3411,7 +4060,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.069025, + "max": 0.06905 + }, "related_data": {} } } @@ -3419,18 +4071,22 @@ { "使用猴子补丁在运行时实现协议": { "data": { - "uuid": "python-5-49", + "uuid": "python-5-51", "seg": [ [ [ "猴子", "补丁", "运行", - "协议" + "协议", + "猴子补丁" ] ] ], - "level": "1", + "level": { + "min": 0.06905, + "max": 0.06907500000000001 + }, "related_data": {} } } @@ -3438,7 +4094,7 @@ { "Alex Martelli的水禽": { "data": { - "uuid": "python-5-50", + "uuid": "python-5-52", "seg": [ [ [ @@ -3448,7 +4104,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06907500000000001, + "max": 0.06910000000000001 + }, "related_data": {} } } @@ -3456,7 +4115,7 @@ { "定义抽象基类的子类": { "data": { - "uuid": "python-5-51", + "uuid": "python-5-53", "seg": [ [ [ @@ -3467,7 +4126,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06910000000000001, + "max": 0.069125 + }, "related_data": {} } } @@ -3475,18 +4137,22 @@ { "标准库中的抽象基类": { "data": { - "uuid": "python-5-52", + "uuid": "python-5-54", "seg": [ [ [ "标准", "库中", "抽象", - "基类" + "基类", + "标准库中" ] ] ], - "level": "1", + "level": { + "min": 0.069125, + "max": 0.06915 + }, "related_data": {} } } @@ -3494,7 +4160,7 @@ { "定义并使用一个抽象基类": { "data": { - "uuid": "python-5-53", + "uuid": "python-5-55", "seg": [ [ [ @@ -3504,7 +4170,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06915, + "max": 0.069175 + }, "related_data": {} } } @@ -3512,7 +4181,7 @@ { "Tombola子类的测试方法": { "data": { - "uuid": "python-5-54", + "uuid": "python-5-56", "seg": [ [ [ @@ -3522,7 +4191,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.069175, + "max": 0.06920000000000001 + }, "related_data": {} } } @@ -3530,7 +4202,7 @@ { "Python使用register的方式": { "data": { - "uuid": "python-5-55", + "uuid": "python-5-57", "seg": [ [ [ @@ -3540,7 +4212,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06920000000000001, + "max": 0.06922500000000001 + }, "related_data": {} } } @@ -3548,7 +4223,7 @@ { "鹅的行为有可能像鸭子": { "data": { - "uuid": "python-5-56", + "uuid": "python-5-58", "seg": [ [ [ @@ -3557,14 +4232,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06922500000000001, + "max": 0.06925 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-90", + "uuid": "python-4-92", "seg": [ [ [ @@ -3575,7 +4253,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.069, + "max": 0.06925 + }, "related_data": {} } } @@ -3583,7 +4264,7 @@ { "抽象基类": { "data": { - "uuid": "python-4-91", + "uuid": "python-4-93", "seg": [ [ [ @@ -3592,7 +4273,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06925, + "max": 0.0695 + }, "related_data": {} } } @@ -3603,7 +4287,7 @@ { "导入单个类": { "data": { - "uuid": "python-5-57", + "uuid": "python-5-59", "seg": [ [ [ @@ -3613,7 +4297,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0695, + "max": 0.06955 + }, "related_data": {} } } @@ -3621,7 +4308,7 @@ { "在一个模块中存储多个类": { "data": { - "uuid": "python-5-58", + "uuid": "python-5-60", "seg": [ [ [ @@ -3631,7 +4318,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06955, + "max": 0.06960000000000001 + }, "related_data": {} } } @@ -3639,7 +4329,7 @@ { "从一个模块中导入多个类": { "data": { - "uuid": "python-5-59", + "uuid": "python-5-61", "seg": [ [ [ @@ -3649,11 +4339,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06960000000000001, + "max": 0.06965 + }, "related_data": { "qa": { "data_id": [ - "8_252189_251591" + "8_252189_251591@8" ] } } @@ -3663,7 +4356,7 @@ { "导入模块中的所有类": { "data": { - "uuid": "python-5-60", + "uuid": "python-5-62", "seg": [ [ [ @@ -3673,23 +4366,10 @@ ] ] ], - "level": "1", - "related_data": {} - } - } - }, - { - "使用别名": { - "data": { - "uuid": "python-5-61", - "seg": [ - [ - [ - "别名" - ] - ] - ], - "level": "1", + "level": { + "min": 0.06965, + "max": 0.06970000000000001 + }, "related_data": {} } } @@ -3697,7 +4377,7 @@ { "自定义工作流程": { "data": { - "uuid": "python-5-62", + "uuid": "python-5-63", "seg": [ [ [ @@ -3707,14 +4387,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06970000000000001, + "max": 0.06975 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-92", + "uuid": "python-4-94", "seg": [ [ [ @@ -3723,7 +4406,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0695, + "max": 0.06975 + }, "related_data": {} } } @@ -3731,17 +4417,21 @@ { "Python标准库": { "data": { - "uuid": "python-4-93", + "uuid": "python-4-95", "seg": [ [ [ "python", "标准", - "库" + "库", + "标准库" ] ] ], - "level": "1", + "level": { + "min": 0.06975, + "max": 0.07 + }, "related_data": {} } } @@ -3756,8 +4446,19 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.065, + "max": 0.07 + }, + "related_data": { + "qa": { + "data_id": [ + "8_5649701_35331453@8", + "8_7428863_53395321@8", + "8_7445414_53424014@8" + ] + } + } } } }, @@ -3770,11 +4471,16 @@ [ "顺序", "语句", - "结构" + "结构", + "顺序语句", + "语句结构" ] ] ], - "level": "1", + "level": { + "min": 0.07, + "max": 0.07500000000000001 + }, "related_data": {} } } @@ -3788,7 +4494,7 @@ { "if-else语句": { "data": { - "uuid": "python-5-63", + "uuid": "python-5-64", "seg": [ [ [ @@ -3798,20 +4504,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.07500000000000001, + "max": 0.07507692307692308 + }, "related_data": { "qa": { "data_id": [ - "8_841390_953092", - "8_7454830_53437520", - "8_7448632_53428774", - "8_7448004_53427974", - "8_757865_813520", - "8_848909_967254", - "8_7416400_53370451", - "8_766225_825540", - "8_883811_1022933", - "8_7445436_53424026" + "8_841390_953092@8", + "8_7454830_53437520@8", + "8_7448632_53428774@8", + "8_7448004_53427974@8", + "8_757865_813520@8", + "8_848909_967254@8", + "8_7416400_53370451@8", + "8_766225_825540@8", + "8_883811_1022933@8", + "8_7445436_53424026@8" ] } } @@ -3821,7 +4530,7 @@ { "if-elif-else结构": { "data": { - "uuid": "python-5-64", + "uuid": "python-5-65", "seg": [ [ [ @@ -3832,11 +4541,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.07507692307692308, + "max": 0.07515384615384617 + }, "related_data": { "qa": { "data_id": [ - "8_7453733_53436421" + "8_7453733_53436421@8" ] } } @@ -3846,7 +4558,7 @@ { "省略else代码块": { "data": { - "uuid": "python-5-65", + "uuid": "python-5-66", "seg": [ [ [ @@ -3855,7 +4567,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.07515384615384617, + "max": 0.07523076923076924 + }, "related_data": {} } } @@ -3875,7 +4590,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.07523076923076924, + "max": 0.07526923076923078 + }, "related_data": {} } } @@ -3892,16 +4610,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.07526923076923078, + "max": 0.07530769230769233 + }, "related_data": { "qa": { "data_id": [ - "8_1102382_1316813", - "8_7448582_53428773", - "8_7441223_53417061", - "8_7455364_53438236", - "8_7443998_53421914", - "8_700946_590283" + "8_1102382_1316813@8", + "8_7448582_53428773@8", + "8_7441223_53417061@8", + "8_7455364_53438236@8", + "8_7443998_53421914@8", + "8_700946_590283@8" ] } } @@ -3910,7 +4631,7 @@ } ], "data": { - "uuid": "python-5-66", + "uuid": "python-5-67", "seg": [ [ [ @@ -3919,7 +4640,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.07523076923076924, + "max": 0.07530769230769233 + }, "related_data": {} } } @@ -3927,7 +4651,7 @@ { "设置if语句的格式": { "data": { - "uuid": "python-5-67", + "uuid": "python-5-68", "seg": [ [ [ @@ -3937,14 +4661,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.07530769230769233, + "max": 0.0753846153846154 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-94", + "uuid": "python-4-96", "seg": [ [ [ @@ -3952,7 +4679,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.07500000000000001, + "max": 0.0753846153846154 + }, "related_data": {} } } @@ -3960,7 +4690,7 @@ { "elif": { "data": { - "uuid": "python-4-95", + "uuid": "python-4-97", "seg": [ [ [ @@ -3968,7 +4698,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0753846153846154, + "max": 0.07576923076923078 + }, "related_data": {} } } @@ -3976,7 +4709,7 @@ { "else": { "data": { - "uuid": "python-4-96", + "uuid": "python-4-98", "seg": [ [ [ @@ -3984,7 +4717,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.07576923076923078, + "max": 0.07615384615384617 + }, "related_data": {} } } @@ -3992,7 +4728,7 @@ { "条件判断": { "data": { - "uuid": "python-4-97", + "uuid": "python-4-99", "seg": [ [ [ @@ -4001,13 +4737,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.07615384615384617, + "max": 0.07653846153846154 + }, "related_data": { "qa": { "data_id": [ - "8_1055401_1252515", - "8_7438336_53411665", - "8_7407819_53357994" + "8_1055401_1252515@8", + "8_7438336_53411665@8", + "8_7407819_53357994@8" ] } } @@ -4017,16 +4756,20 @@ { "这正是布尔值的用武之地": { "data": { - "uuid": "python-4-98", + "uuid": "python-4-100", "seg": [ [ [ "布尔值", - "用武之地" + "用武之地", + "正是布尔值" ] ] ], - "level": "1", + "level": { + "min": 0.07653846153846154, + "max": 0.07692307692307693 + }, "related_data": {} } } @@ -4037,20 +4780,24 @@ { "字典列表": { "data": { - "uuid": "python-5-68", + "uuid": "python-5-69", "seg": [ [ [ "字典", - "列表" + "列表", + "字典列表" ] ] ], - "level": "1", + "level": { + "min": 0.07692307692307693, + "max": 0.07705128205128206 + }, "related_data": { "qa": { "data_id": [ - "8_7415456_53368934" + "8_7415456_53368934@8" ] } } @@ -4060,7 +4807,7 @@ { "在字典中存储列表": { "data": { - "uuid": "python-5-69", + "uuid": "python-5-70", "seg": [ [ [ @@ -4070,7 +4817,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.07705128205128206, + "max": 0.07717948717948718 + }, "related_data": {} } } @@ -4078,7 +4828,7 @@ { "在字典中存储字典": { "data": { - "uuid": "python-5-70", + "uuid": "python-5-71", "seg": [ [ [ @@ -4087,14 +4837,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.07717948717948718, + "max": 0.07730769230769231 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-99", + "uuid": "python-4-101", "seg": [ [ [ @@ -4102,7 +4855,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.07692307692307693, + "max": 0.07730769230769231 + }, "related_data": {} } } @@ -4110,7 +4866,7 @@ { "检查是否相等": { "data": { - "uuid": "python-4-100", + "uuid": "python-4-102", "seg": [ [ [ @@ -4118,11 +4874,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.07730769230769231, + "max": 0.0776923076923077 + }, "related_data": { "qa": { "data_id": [ - "8_376642_406658" + "8_376642_406658@8" ] } } @@ -4132,7 +4891,7 @@ { "检查是否相等时忽略大小写": { "data": { - "uuid": "python-4-101", + "uuid": "python-4-103", "seg": [ [ [ @@ -4141,7 +4900,30 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0776923076923077, + "max": 0.07807692307692309 + }, + "related_data": {} + } + } + }, + { + "检查是否不相等": { + "data": { + "uuid": "python-4-104", + "seg": [ + [ + [ + "检查", + "不相等" + ] + ] + ], + "level": { + "min": 0.07807692307692309, + "max": 0.07846153846153847 + }, "related_data": {} } } @@ -4149,7 +4931,7 @@ { "数值比较": { "data": { - "uuid": "python-4-102", + "uuid": "python-4-105", "seg": [ [ [ @@ -4157,7 +4939,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.07846153846153847, + "max": 0.07884615384615384 + }, "related_data": {} } } @@ -4165,7 +4950,7 @@ { "检查多个条件": { "data": { - "uuid": "python-4-103", + "uuid": "python-4-106", "seg": [ [ [ @@ -4174,7 +4959,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.07884615384615384, + "max": 0.07923076923076923 + }, "related_data": {} } } @@ -4182,7 +4970,7 @@ { "检查特定值是否包含在列表中": { "data": { - "uuid": "python-4-104", + "uuid": "python-4-107", "seg": [ [ [ @@ -4190,11 +4978,15 @@ "特定", "值", "包含", - "列表" + "列表", + "特定值" ] ] ], - "level": "1", + "level": { + "min": 0.07923076923076923, + "max": 0.07961538461538462 + }, "related_data": {} } } @@ -4202,16 +4994,20 @@ { "布尔表达式": { "data": { - "uuid": "python-4-105", + "uuid": "python-4-108", "seg": [ [ [ "布尔", - "表达式" + "表达式", + "布尔表达式" ] ] ], - "level": "1", + "level": { + "min": 0.07961538461538462, + "max": 0.08 + }, "related_data": {} } } @@ -4229,7 +5025,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.07500000000000001, + "max": 0.08 + }, "related_data": {} } } @@ -4240,7 +5039,7 @@ { "for": { "data": { - "uuid": "python-4-106", + "uuid": "python-4-109", "seg": [ [ [ @@ -4248,17 +5047,20 @@ ] ] ], - "level": "1", + "level": { + "min": 0.08, + "max": 0.08055555555555556 + }, "related_data": { "qa": { "data_id": [ - "8_739187_772963", - "8_7457653_53442038", - "8_815920_911626", - "8_7441773_53418127", - "8_7441736_53418025", - "8_7424381_53385248", - "8_1053214_1250580" + "8_739187_772963@8", + "8_7457653_53442038@8", + "8_815920_911626@8", + "8_7441773_53418127@8", + "8_7441736_53418025@8", + "8_7424381_53385248@8", + "8_1053214_1250580@8" ] } } @@ -4268,7 +5070,7 @@ { "while": { "data": { - "uuid": "python-4-107", + "uuid": "python-4-110", "seg": [ [ [ @@ -4276,13 +5078,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.08055555555555556, + "max": 0.08111111111111112 + }, "related_data": { "qa": { "data_id": [ - "8_7414233_53366901", - "8_7458395_53443193", - "8_7423828_53383996" + "8_7414233_53366901@8", + "8_7458395_53443193@8", + "8_7423828_53383996@8" ] } } @@ -4292,7 +5097,7 @@ { "break": { "data": { - "uuid": "python-4-108", + "uuid": "python-4-111", "seg": [ [ [ @@ -4300,12 +5105,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.08111111111111112, + "max": 0.08166666666666667 + }, "related_data": { "qa": { "data_id": [ - "8_7459763_53444761", - "8_7423850_53384014" + "8_7459763_53444761@8", + "8_7423850_53384014@8" ] } } @@ -4315,7 +5123,7 @@ { "continue": { "data": { - "uuid": "python-4-109", + "uuid": "python-4-112", "seg": [ [ [ @@ -4323,11 +5131,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.08166666666666667, + "max": 0.08222222222222222 + }, "related_data": { "qa": { "data_id": [ - "8_665165_482711" + "8_665165_482711@8" ] } } @@ -4337,7 +5148,7 @@ { "循环判断": { "data": { - "uuid": "python-4-110", + "uuid": "python-4-113", "seg": [ [ [ @@ -4346,7 +5157,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.08222222222222222, + "max": 0.08277777777777778 + }, "related_data": {} } } @@ -4354,7 +5168,7 @@ { "迭代字典": { "data": { - "uuid": "python-4-111", + "uuid": "python-4-114", "seg": [ [ [ @@ -4363,7 +5177,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.08277777777777778, + "max": 0.08333333333333334 + }, "related_data": {} } } @@ -4371,7 +5188,7 @@ { "一些迭代工具": { "data": { - "uuid": "python-4-112", + "uuid": "python-4-115", "seg": [ [ [ @@ -4380,7 +5197,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.08333333333333334, + "max": 0.08388888888888889 + }, "related_data": {} } } @@ -4388,7 +5208,7 @@ { "跳出循环": { "data": { - "uuid": "python-4-113", + "uuid": "python-4-116", "seg": [ [ [ @@ -4397,7 +5217,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.08388888888888889, + "max": 0.08444444444444445 + }, "related_data": {} } } @@ -4405,7 +5228,7 @@ { "循环中的else子句": { "data": { - "uuid": "python-4-114", + "uuid": "python-4-117", "seg": [ [ [ @@ -4414,13 +5237,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.08444444444444445, + "max": 0.085 + }, "related_data": { "qa": { "data_id": [ - "8_1096794_1309415", - "8_7456888_53440982", - "8_7460330_53445438" + "8_1096794_1309415@8", + "8_7460330_53445438@8", + "8_7456888_53440982@8" ] } } @@ -4437,7 +5263,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.08, + "max": 0.085 + }, "related_data": {} } } @@ -4448,7 +5277,7 @@ { "整型": { "data": { - "uuid": "python-4-115", + "uuid": "python-4-118", "seg": [ [ [ @@ -4456,7 +5285,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.085, + "max": 0.08526315789473685 + }, "related_data": {} } } @@ -4464,15 +5296,19 @@ { "浮点型": { "data": { - "uuid": "python-4-116", + "uuid": "python-4-119", "seg": [ [ [ - "浮点" + "浮点", + "浮点型" ] ] ], - "level": "1", + "level": { + "min": 0.08526315789473685, + "max": 0.08552631578947369 + }, "related_data": {} } } @@ -4480,15 +5316,19 @@ { "布尔型": { "data": { - "uuid": "python-4-117", + "uuid": "python-4-120", "seg": [ [ [ - "布尔" + "布尔", + "布尔型" ] ] ], - "level": "1", + "level": { + "min": 0.08552631578947369, + "max": 0.08578947368421053 + }, "related_data": {} } } @@ -4499,12 +5339,13 @@ { "单引号字符串以及对引号转义": { "data": { - "uuid": "python-5-71", + "uuid": "python-5-72", "seg": [ [ [ "单引号", - "字符串" + "字符串", + "单引号字符串" ], [ "引号", @@ -4512,11 +5353,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.08578947368421053, + "max": 0.0858133971291866 + }, "related_data": { "qa": { "data_id": [ - "8_7442437_53419248" + "8_7442437_53419248@8" ] } } @@ -4526,7 +5370,7 @@ { "拼接字符串": { "data": { - "uuid": "python-5-72", + "uuid": "python-5-73", "seg": [ [ [ @@ -4535,7 +5379,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0858133971291866, + "max": 0.08583732057416268 + }, "related_data": {} } } @@ -4543,7 +5390,7 @@ { "字符串表示str和repr": { "data": { - "uuid": "python-5-73", + "uuid": "python-5-74", "seg": [ [ [ @@ -4555,13 +5402,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.08583732057416268, + "max": 0.08586124401913875 + }, "related_data": { "qa": { "data_id": [ - "8_664017_480720", - "8_867203_999671", - "8_748859_801039" + "8_664017_480720@8", + "8_867203_999671@8", + "8_748859_801039@8" ] } } @@ -4571,7 +5421,7 @@ { "长字符串、原始字符串和字节": { "data": { - "uuid": "python-5-74", + "uuid": "python-5-75", "seg": [ [ [ @@ -4587,11 +5437,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.08586124401913875, + "max": 0.08588516746411483 + }, "related_data": { "qa": { "data_id": [ - "8_688858_555605" + "8_688858_555605@8" ] } } @@ -4601,16 +5454,20 @@ { "字符串基本操作": { "data": { - "uuid": "python-5-75", + "uuid": "python-5-76", "seg": [ [ [ "字符串", - "基本操作" + "基本操作", + "字符串基本操作" ] ] ], - "level": "1", + "level": { + "min": 0.08588516746411483, + "max": 0.08590909090909091 + }, "related_data": {} } } @@ -4630,14 +5487,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.08590909090909091, + "max": 0.08593301435406699 + }, "related_data": {} } } } ], "data": { - "uuid": "python-5-76", + "uuid": "python-5-77", "seg": [ [ [ @@ -4652,12 +5512,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.08590909090909091, + "max": 0.08593301435406699 + }, "related_data": { "qa": { "data_id": [ - "8_753378_807824", - "8_7432534_53401685" + "8_753378_807824@8", + "8_7432534_53401685@8" ] } } @@ -4667,7 +5530,7 @@ { "使用方法修改字符串的大小写": { "data": { - "uuid": "python-5-77", + "uuid": "python-5-78", "seg": [ [ [ @@ -4678,7 +5541,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.08593301435406699, + "max": 0.08595693779904306 + }, "related_data": {} } } @@ -4686,7 +5552,7 @@ { "使用制表符或换行符来添加空白": { "data": { - "uuid": "python-5-78", + "uuid": "python-5-79", "seg": [ [ [ @@ -4697,7 +5563,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.08595693779904306, + "max": 0.08598086124401914 + }, "related_data": {} } } @@ -4705,7 +5574,7 @@ { "删除空白": { "data": { - "uuid": "python-5-79", + "uuid": "python-5-80", "seg": [ [ [ @@ -4714,7 +5583,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.08598086124401914, + "max": 0.08600478468899521 + }, "related_data": {} } } @@ -4722,22 +5594,26 @@ { "使用字符串时避免语法错误": { "data": { - "uuid": "python-5-80", + "uuid": "python-5-81", "seg": [ [ [ "字符串", - "语法错误" + "语法错误", + "字符串时" ] ] ], - "level": "1", + "level": { + "min": 0.08600478468899521, + "max": 0.08602870813397129 + }, "related_data": { "qa": { "data_id": [ - "8_7405305_53354488", - "8_1085239_1291888", - "8_770512_832351" + "8_7405305_53354488@8", + "8_1085239_1291888@8", + "8_770512_832351@8" ] } } @@ -4756,16 +5632,20 @@ [ "encode", "方法", - "编码" + "编码", + "方法编码" ] ] ], - "level": "1", + "level": { + "min": 0.08602870813397129, + "max": 0.08604066985645933 + }, "related_data": { "qa": { "data_id": [ - "8_776155_842988", - "8_7432066_53401008" + "8_776155_842988@8", + "8_7432066_53401008@8" ] } } @@ -4781,33 +5661,41 @@ [ "decode", "方法", - "解码" + "解码", + "方法解码" ] ] ], - "level": "1", + "level": { + "min": 0.08604066985645933, + "max": 0.08605263157894737 + }, "related_data": {} } } } ], "data": { - "uuid": "python-5-81", + "uuid": "python-5-82", "seg": [ [ [ "字符串", "编码", - "转换" + "转换", + "字符串编码" ] ] ], - "level": "1", + "level": { + "min": 0.08602870813397129, + "max": 0.08605263157894737 + }, "related_data": { "qa": { "data_id": [ - "8_7413318_53365216", - "8_1072237_1274462" + "8_7413318_53365216@8", + "8_1072237_1274462@8" ] } } @@ -4816,7 +5704,7 @@ } ], "data": { - "uuid": "python-4-118", + "uuid": "python-4-121", "seg": [ [ [ @@ -4824,15 +5712,25 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.08578947368421053, + "max": 0.08605263157894737 + }, + "related_data": { + "qa": { + "data_id": [ + "8_7457287_53441431@8", + "8_7409586_53360048@8" + ] + } + } } } }, { "datetime --- 基本的日期和时间类型": { "data": { - "uuid": "python-4-119", + "uuid": "python-4-122", "seg": [ [ [ @@ -4841,11 +5739,15 @@ ], [ "时间", - "类型" + "类型", + "时间类型" ] ] ], - "level": "1", + "level": { + "min": 0.08605263157894737, + "max": 0.08631578947368422 + }, "related_data": {} } } @@ -4853,7 +5755,7 @@ { "zoneinfo --- IANA时区支持": { "data": { - "uuid": "python-4-120", + "uuid": "python-4-123", "seg": [ [ [ @@ -4864,7 +5766,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.08631578947368422, + "max": 0.08657894736842106 + }, "related_data": {} } } @@ -4872,7 +5777,7 @@ { "calendar --- 日历相关函数": { "data": { - "uuid": "python-4-121", + "uuid": "python-4-124", "seg": [ [ [ @@ -4883,7 +5788,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.08657894736842106, + "max": 0.0868421052631579 + }, "related_data": {} } } @@ -4891,21 +5799,25 @@ { "collections --- 容器数据类型": { "data": { - "uuid": "python-4-122", + "uuid": "python-4-125", "seg": [ [ [ "collections", "容器", - "数据类型" + "数据类型", + "容器数据类型" ] ] ], - "level": "1", + "level": { + "min": 0.0868421052631579, + "max": 0.08710526315789474 + }, "related_data": { "qa": { "data_id": [ - "8_7427488_53391953" + "8_7427488_53391953@8" ] } } @@ -4915,7 +5827,7 @@ { "collections.abc --- 容器的抽象基类": { "data": { - "uuid": "python-4-123", + "uuid": "python-4-126", "seg": [ [ [ @@ -4927,7 +5839,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.08710526315789474, + "max": 0.08736842105263158 + }, "related_data": {} } } @@ -4935,18 +5850,22 @@ { "heapq --- 堆队列算法": { "data": { - "uuid": "python-4-124", + "uuid": "python-4-127", "seg": [ [ [ "heapq", "堆", "队列", - "算法" + "算法", + "队列算法" ] ] ], - "level": "1", + "level": { + "min": 0.08736842105263158, + "max": 0.08763157894736842 + }, "related_data": {} } } @@ -4954,7 +5873,7 @@ { "bisect --- 数组二分查找算法": { "data": { - "uuid": "python-4-125", + "uuid": "python-4-128", "seg": [ [ [ @@ -4965,7 +5884,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.08763157894736842, + "max": 0.08789473684210526 + }, "related_data": {} } } @@ -4973,22 +5895,26 @@ { "array --- 高效的数值数组": { "data": { - "uuid": "python-4-126", + "uuid": "python-4-129", "seg": [ [ [ "array", "高效", "数值", - "数组" + "数组", + "数值数组" ] ] ], - "level": "1", + "level": { + "min": 0.08789473684210526, + "max": 0.0881578947368421 + }, "related_data": { "qa": { "data_id": [ - "8_7418580_53374937" + "8_7418580_53374937@8" ] } } @@ -4998,7 +5924,7 @@ { "weakref --- 弱引用": { "data": { - "uuid": "python-4-127", + "uuid": "python-4-130", "seg": [ [ [ @@ -5008,7 +5934,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0881578947368421, + "max": 0.08842105263157894 + }, "related_data": {} } } @@ -5016,23 +5945,29 @@ { "types --- 动态类型创建和内置类型名称": { "data": { - "uuid": "python-4-128", + "uuid": "python-4-131", "seg": [ [ [ "types", "动态", "类型", - "创建" + "创建", + "动态类型" ], [ "内置", "类型", - "名称" + "名称", + "内置类型", + "类型名称" ] ] ], - "level": "1", + "level": { + "min": 0.08842105263157894, + "max": 0.08868421052631578 + }, "related_data": {} } } @@ -5040,7 +5975,7 @@ { "copy --- 浅层 (shallow) 和深层 (deep) 复制操作": { "data": { - "uuid": "python-4-129", + "uuid": "python-4-132", "seg": [ [ [ @@ -5056,11 +5991,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.08868421052631578, + "max": 0.08894736842105264 + }, "related_data": { "qa": { "data_id": [ - "8_1078207_1282578" + "8_1078207_1282578@8" ] } } @@ -5070,26 +6008,30 @@ { "pprint --- 数据美化输出": { "data": { - "uuid": "python-4-130", + "uuid": "python-4-133", "seg": [ [ [ "pprint", "数据", "美化", - "输出" + "输出", + "数据美化" ] ] ], - "level": "1", + "level": { + "min": 0.08894736842105264, + "max": 0.08921052631578948 + }, "related_data": {} } } }, { - "reprlib --- 另一种repr实现": { + "reprlib --- 另一种repr 实现": { "data": { - "uuid": "python-4-131", + "uuid": "python-4-134", "seg": [ [ [ @@ -5098,7 +6040,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.08921052631578948, + "max": 0.08947368421052632 + }, "related_data": {} } } @@ -5106,7 +6051,7 @@ { "enum --- 对枚举的支持": { "data": { - "uuid": "python-4-132", + "uuid": "python-4-135", "seg": [ [ [ @@ -5116,7 +6061,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.08947368421052632, + "max": 0.08973684210526316 + }, "related_data": {} } } @@ -5124,7 +6072,7 @@ { "graphlib --- Functionality to operate with graph-like structures": { "data": { - "uuid": "python-4-133", + "uuid": "python-4-136", "seg": [ [ [ @@ -5139,51 +6087,13 @@ ] ] ], - "level": "1", - "related_data": {} - } - } - }, - { - "布尔类型": { - "data": { - "uuid": "python-4-134", - "seg": [ - [ - [ - "布尔", - "类型" - ] - ] - ], - "level": "1", + "level": { + "min": 0.08973684210526316, + "max": 0.09 + }, "related_data": {} } } - }, - { - "数据类型转换": { - "data": { - "uuid": "python-4-135", - "seg": [ - [ - [ - "数据", - "类型转换" - ] - ] - ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "8_7445655_53424326", - "8_661374_476391" - ] - } - } - } - } } ], "data": { @@ -5195,7 +6105,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.085, + "max": 0.09 + }, "related_data": {} } } @@ -5209,7 +6122,7 @@ { "函数list": { "data": { - "uuid": "python-5-82", + "uuid": "python-5-83", "seg": [ [ [ @@ -5218,20 +6131,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09, + "max": 0.09005555555555556 + }, "related_data": { "qa": { "data_id": [ - "8_870985_1002820", - "8_7409560_53360089", - "8_7402779_53350929", - "8_3197981_21754921", - "8_7412051_53363238", - "8_7452168_53434075", - "8_7430278_53397491", - "8_1083226_1289402", - "8_710204_668138", - "8_7400719_53348804" + "8_870985_1002820@8", + "8_7409560_53360089@8", + "8_7402779_53350929@8", + "8_3197981_21754921@8", + "8_7412051_53363238@8", + "8_7452168_53434075@8", + "8_7430278_53397491@8", + "8_1083226_1289402@8", + "8_710204_668138@8", + "8_7400719_53348804@8" ] } } @@ -5256,16 +6172,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09005555555555556, + "max": 0.09006018518518519 + }, "related_data": { "qa": { "data_id": [ - "8_7451844_53433470", - "8_749509_802037", - "8_7455772_53439093", - "8_7413842_53366100", - "8_7450557_53431394", - "8_7441381_53417526" + "8_7451844_53433470@8", + "8_749509_802037@8", + "8_7455772_53439093@8", + "8_7413842_53366100@8", + "8_7450557_53431394@8", + "8_7441381_53417526@8" ] } } @@ -5285,20 +6204,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09006018518518519, + "max": 0.09006481481481482 + }, "related_data": { "qa": { "data_id": [ - "8_7451358_53432555", - "8_7398246_53344202", - "8_647098_450186", - "8_7411099_53361864", - "8_232125_204714", - "8_7451500_53432784", - "8_692855_568949", - "8_7432819_53402401", - "8_694829_575823", - "8_700844_590049" + "8_7451358_53432555@8", + "8_7398246_53344202@8", + "8_647098_450186@8", + "8_7411099_53361864@8", + "8_232125_204714@8", + "8_7451500_53432784@8", + "8_692855_568949@8", + "8_7432819_53402401@8", + "8_694829_575823@8", + "8_700844_590049@8" ] } } @@ -5319,11 +6241,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09006481481481482, + "max": 0.09006944444444445 + }, "related_data": { "qa": { "data_id": [ - "8_760546_817497" + "8_760546_817497@8" ] } } @@ -5341,11 +6266,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09005555555555556, + "max": 0.09006944444444445 + }, "related_data": { "qa": { "data_id": [ - "8_1022125_1215082" + "8_1022125_1215082@8" ] } } @@ -5367,7 +6295,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09006944444444445, + "max": 0.09007222222222223 + }, "related_data": {} } } @@ -5385,7 +6316,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09007222222222223, + "max": 0.090075 + }, "related_data": {} } } @@ -5402,12 +6336,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.090075, + "max": 0.09007777777777778 + }, "related_data": { "qa": { "data_id": [ - "8_7427194_53391458", - "8_7400959_53348901" + "8_7427194_53391458@8", + "8_7400959_53348901@8" ] } } @@ -5427,7 +6364,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09007777777777778, + "max": 0.09008055555555555 + }, "related_data": {} } } @@ -5444,11 +6384,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09008055555555555, + "max": 0.09008333333333333 + }, "related_data": { "qa": { "data_id": [ - "8_7465009_53451741" + "8_7465009_53451741@8" ] } } @@ -5465,12 +6408,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09006944444444445, + "max": 0.09008333333333333 + }, "related_data": { "qa": { "data_id": [ - "8_754462_809455", - "8_7455898_53439231" + "8_754462_809455@8", + "8_7455898_53439231@8" ] } } @@ -5490,20 +6436,24 @@ "range", "创建", "数字", - "列表" + "列表", + "数字列表" ] ] ], - "level": "1", + "level": { + "min": 0.09008333333333333, + "max": 0.09008796296296297 + }, "related_data": { "qa": { "data_id": [ - "8_762209_820315", - "8_7429457_53397639", - "8_7446695_53426240", - "8_817083_913308", - "8_7449305_53429379", - "8_7407342_53357229" + "8_762209_820315@8", + "8_7429457_53397639@8", + "8_7446695_53426240@8", + "8_817083_913308@8", + "8_7449305_53429379@8", + "8_7407342_53357229@8" ] } } @@ -5521,17 +6471,21 @@ "列表", "执行", "统计", - "计算" + "计算", + "数字列表" ] ] ], - "level": "1", + "level": { + "min": 0.09008796296296297, + "max": 0.09009259259259259 + }, "related_data": { "qa": { "data_id": [ - "8_7434106_53404460", - "8_7447238_53426785", - "8_1068621_1269510" + "8_7434106_53404460@8", + "8_7447238_53426785@8", + "8_1068621_1269510@8" ] } } @@ -5550,20 +6504,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09009259259259259, + "max": 0.09009722222222222 + }, "related_data": { "qa": { "data_id": [ - "8_1093959_1303896", - "8_741669_782107", - "8_1089404_1295981", - "8_763584_822125", - "8_7429587_53396485", - "8_7441309_53417231", - "8_7441358_53417461", - "8_1053059_1250376", - "8_1064935_1263974", - "8_748934_801168" + "8_1093959_1303896@8", + "8_741669_782107@8", + "8_1089404_1295981@8", + "8_763584_822125@8", + "8_7429587_53396485@8", + "8_7441309_53417231@8", + "8_7441358_53417461@8", + "8_1053059_1250376@8", + "8_1064935_1263974@8", + "8_748934_801168@8" ] } } @@ -5578,11 +6535,15 @@ [ "创建", "数值", - "列表" + "列表", + "数值列表" ] ] ], - "level": "1", + "level": { + "min": 0.09008333333333333, + "max": 0.09009722222222222 + }, "related_data": {} } } @@ -5603,7 +6564,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09009722222222222, + "max": 0.09010069444444443 + }, "related_data": {} } } @@ -5619,7 +6583,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09010069444444443, + "max": 0.09010416666666667 + }, "related_data": {} } } @@ -5635,7 +6602,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09010416666666667, + "max": 0.0901076388888889 + }, "related_data": {} } } @@ -5653,20 +6623,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0901076388888889, + "max": 0.09011111111111111 + }, "related_data": { "qa": { "data_id": [ - "8_7430600_53397732", - "8_7426225_53389136", - "8_1091774_1301238", - "8_7405981_53355443", - "8_1052495_1250096", - "8_7434856_53405719", - "8_7426255_53390683", - "8_4646908_29330843", - "8_7437552_53410492", - "8_679897_528257" + "8_7430600_53397732@8", + "8_7426225_53389136@8", + "8_1091774_1301238@8", + "8_7405981_53355443@8", + "8_1052495_1250096@8", + "8_7434856_53405719@8", + "8_7426255_53390683@8", + "8_4646908_29330843@8", + "8_7437552_53410492@8", + "8_679897_528257@8" ] } } @@ -5680,18 +6653,22 @@ [ [ "设置", - "格式" + "格式", + "代码格式" ] ] ], - "level": "1", + "level": { + "min": 0.09009722222222222, + "max": 0.09011111111111111 + }, "related_data": {} } } } ], "data": { - "uuid": "python-5-83", + "uuid": "python-5-84", "seg": [ [ [ @@ -5700,7 +6677,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09005555555555556, + "max": 0.09011111111111111 + }, "related_data": {} } } @@ -5708,16 +6688,20 @@ { "列表方法": { "data": { - "uuid": "python-5-84", + "uuid": "python-5-85", "seg": [ [ [ "列表", - "方法" + "方法", + "列表方法" ] ] ], - "level": "1", + "level": { + "min": 0.09011111111111111, + "max": 0.09016666666666666 + }, "related_data": {} } } @@ -5725,16 +6709,20 @@ { "列表数据类型": { "data": { - "uuid": "python-5-85", + "uuid": "python-5-86", "seg": [ [ [ "列表", - "数据类型" + "数据类型", + "列表数据类型" ] ] ], - "level": "1", + "level": { + "min": 0.09016666666666666, + "max": 0.09022222222222222 + }, "related_data": {} } } @@ -5742,7 +6730,7 @@ { "增强的赋值操作": { "data": { - "uuid": "python-5-86", + "uuid": "python-5-87", "seg": [ [ [ @@ -5752,7 +6740,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09022222222222222, + "max": 0.09027777777777778 + }, "related_data": {} } } @@ -5760,16 +6751,20 @@ { "序列数据类型": { "data": { - "uuid": "python-5-87", + "uuid": "python-5-88", "seg": [ [ [ "序列", - "数据类型" + "数据类型", + "序列数据类型" ] ] ], - "level": "1", + "level": { + "min": 0.09027777777777778, + "max": 0.09033333333333333 + }, "related_data": {} } } @@ -5777,7 +6772,7 @@ { "引用": { "data": { - "uuid": "python-5-88", + "uuid": "python-5-89", "seg": [ [ [ @@ -5785,11 +6780,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09033333333333333, + "max": 0.0903888888888889 + }, "related_data": { "qa": { "data_id": [ - "8_7409921_53360433" + "8_7409921_53360433@8" ] } } @@ -5799,17 +6797,21 @@ { "访问列表元素": { "data": { - "uuid": "python-5-89", + "uuid": "python-5-90", "seg": [ [ [ "访问", "列表", - "元素" + "元素", + "列表元素" ] ] ], - "level": "1", + "level": { + "min": 0.0903888888888889, + "max": 0.09044444444444444 + }, "related_data": {} } } @@ -5817,7 +6819,7 @@ { "索引从0而不是1开始": { "data": { - "uuid": "python-5-90", + "uuid": "python-5-91", "seg": [ [ [ @@ -5825,7 +6827,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09044444444444444, + "max": 0.0905 + }, "related_data": {} } } @@ -5833,7 +6838,7 @@ { "使用列表中的各个值": { "data": { - "uuid": "python-5-91", + "uuid": "python-5-92", "seg": [ [ [ @@ -5842,11 +6847,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0905, + "max": 0.09055555555555556 + }, "related_data": { "qa": { "data_id": [ - "8_7435482_53406191" + "8_7435482_53406191@8" ] } } @@ -5856,7 +6864,7 @@ { "遍历切片": { "data": { - "uuid": "python-5-92", + "uuid": "python-5-93", "seg": [ [ [ @@ -5865,7 +6873,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09055555555555556, + "max": 0.09061111111111111 + }, "related_data": {} } } @@ -5873,7 +6884,7 @@ { "复制列表": { "data": { - "uuid": "python-5-93", + "uuid": "python-5-94", "seg": [ [ [ @@ -5882,11 +6893,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09061111111111111, + "max": 0.09066666666666667 + }, "related_data": { "qa": { "data_id": [ - "8_7415142_53368444" + "8_7415142_53368444@8" ] } } @@ -5896,7 +6910,7 @@ { "列表的创建和删除": { "data": { - "uuid": "python-5-94", + "uuid": "python-5-95", "seg": [ [ [ @@ -5908,7 +6922,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09066666666666667, + "max": 0.09072222222222222 + }, "related_data": {} } } @@ -5916,7 +6933,7 @@ { "对列表进行统计计算": { "data": { - "uuid": "python-5-95", + "uuid": "python-5-96", "seg": [ [ [ @@ -5926,7 +6943,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09072222222222222, + "max": 0.09077777777777778 + }, "related_data": {} } } @@ -5934,7 +6954,7 @@ { "对列表进行排序": { "data": { - "uuid": "python-5-96", + "uuid": "python-5-97", "seg": [ [ [ @@ -5943,14 +6963,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09077777777777778, + "max": 0.09083333333333334 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-136", + "uuid": "python-4-137", "seg": [ [ [ @@ -5963,7 +6986,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09, + "max": 0.09083333333333334 + }, "related_data": {} } } @@ -5974,7 +7000,7 @@ { "访问字典中的值": { "data": { - "uuid": "python-5-97", + "uuid": "python-5-98", "seg": [ [ [ @@ -5984,7 +7010,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09083333333333334, + "max": 0.09091666666666667 + }, "related_data": {} } } @@ -5992,7 +7021,7 @@ { "添加键值对": { "data": { - "uuid": "python-5-98", + "uuid": "python-5-99", "seg": [ [ [ @@ -6001,7 +7030,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09091666666666667, + "max": 0.091 + }, "related_data": {} } } @@ -6009,17 +7041,22 @@ { "先创建一个空字典": { "data": { - "uuid": "python-5-99", + "uuid": "python-5-100", "seg": [ [ [ "创建", "空", - "字典" + "字典", + "先创建", + "空字典" ] ] ], - "level": "1", + "level": { + "min": 0.091, + "max": 0.09108333333333334 + }, "related_data": {} } } @@ -6027,7 +7064,7 @@ { "修改字典中的值": { "data": { - "uuid": "python-5-100", + "uuid": "python-5-101", "seg": [ [ [ @@ -6037,12 +7074,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09108333333333334, + "max": 0.09116666666666666 + }, "related_data": { "qa": { "data_id": [ - "8_1064919_1263993", - "8_1099146_1314080" + "8_1064919_1263993@8", + "8_1099146_1314080@8" ] } } @@ -6052,7 +7092,7 @@ { "删除键值对": { "data": { - "uuid": "python-5-101", + "uuid": "python-5-102", "seg": [ [ [ @@ -6061,7 +7101,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09116666666666666, + "max": 0.09125 + }, "related_data": {} } } @@ -6069,7 +7112,7 @@ { "由类似对象组成的字典": { "data": { - "uuid": "python-5-102", + "uuid": "python-5-103", "seg": [ [ [ @@ -6079,7 +7122,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09125, + "max": 0.09133333333333334 + }, "related_data": {} } } @@ -6087,7 +7133,7 @@ { "使用get来访问值": { "data": { - "uuid": "python-5-103", + "uuid": "python-5-104", "seg": [ [ [ @@ -6097,13 +7143,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09133333333333334, + "max": 0.09141666666666666 + }, "related_data": { "qa": { "data_id": [ - "8_7441350_53417429", - "8_7435736_53406637", - "8_731475_748888" + "8_7441350_53417429@8", + "8_7435736_53406637@8", + "8_731475_748888@8" ] } } @@ -6125,20 +7174,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09141666666666666, + "max": 0.09143749999999999 + }, "related_data": { "qa": { "data_id": [ - "8_762808_821150", - "8_7423793_53383990", - "8_766365_825588", - "8_1092742_1301100", - "8_7441453_53419144", - "8_767958_827776", - "8_647879_452198", - "8_669456_490997", - "8_7413422_53365331", - "8_7447092_53426742" + "8_762808_821150@8", + "8_7423793_53383990@8", + "8_766365_825588@8", + "8_1092742_1301100@8", + "8_7441453_53419144@8", + "8_767958_827776@8", + "8_647879_452198@8", + "8_669456_490997@8", + "8_7413422_53365331@8", + "8_7447092_53426742@8" ] } } @@ -6158,12 +7210,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09143749999999999, + "max": 0.09145833333333334 + }, "related_data": { "qa": { "data_id": [ - "8_7425633_53387203", - "8_7443679_53420857" + "8_7425633_53387203@8", + "8_7443679_53420857@8" ] } } @@ -6181,11 +7236,15 @@ "顺序", "遍历", "字典", - "键" + "键", + "特定顺序" ] ] ], - "level": "1", + "level": { + "min": 0.09145833333333334, + "max": 0.09147916666666667 + }, "related_data": {} } } @@ -6203,20 +7262,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09147916666666667, + "max": 0.0915 + }, "related_data": { "qa": { "data_id": [ - "8_3197613_21755052", - "8_7431926_53400617", - "8_651138_458140", - "8_7451387_53432606", - "8_684951_543942", - "8_1102303_1316694", - "8_7406021_53355454", - "8_7435824_53406808", - "8_7447868_53427826", - "8_7396926_53342086" + "8_3197613_21755052@8", + "8_7431926_53400617@8", + "8_651138_458140@8", + "8_7451387_53432606@8", + "8_684951_543942@8", + "8_1102303_1316694@8", + "8_7406021_53355454@8", + "8_7435824_53406808@8", + "8_7447868_53427826@8", + "8_7396926_53342086@8" ] } } @@ -6225,7 +7287,7 @@ } ], "data": { - "uuid": "python-5-104", + "uuid": "python-5-105", "seg": [ [ [ @@ -6234,7 +7296,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09141666666666666, + "max": 0.0915 + }, "related_data": {} } } @@ -6242,7 +7307,7 @@ { "访问字典": { "data": { - "uuid": "python-5-105", + "uuid": "python-5-106", "seg": [ [ [ @@ -6251,7 +7316,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0915, + "max": 0.09158333333333332 + }, "related_data": {} } } @@ -6259,7 +7327,7 @@ { "字典推导式": { "data": { - "uuid": "python-5-106", + "uuid": "python-5-107", "seg": [ [ [ @@ -6268,11 +7336,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09158333333333332, + "max": 0.09166666666666666 + }, "related_data": { "qa": { "data_id": [ - "8_877535_1014317" + "8_877535_1014317@8" ] } } @@ -6281,7 +7352,7 @@ } ], "data": { - "uuid": "python-4-137", + "uuid": "python-4-138", "seg": [ [ [ @@ -6294,13 +7365,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09083333333333334, + "max": 0.09166666666666666 + }, "related_data": { "qa": { "data_id": [ - "8_769878_831113", - "8_863836_996313", - "8_7424720_53385912" + "8_769878_831113@8", + "8_863836_996313@8", + "8_7424720_53385912@8" ] } } @@ -6313,16 +7387,20 @@ { "定义元组": { "data": { - "uuid": "python-5-107", + "uuid": "python-5-108", "seg": [ [ [ "定义", - "元组" + "元组", + "定义元组" ] ] ], - "level": "1", + "level": { + "min": 0.09166666666666666, + "max": 0.09180555555555556 + }, "related_data": {} } } @@ -6330,7 +7408,7 @@ { "遍历元组中的所有值": { "data": { - "uuid": "python-5-108", + "uuid": "python-5-109", "seg": [ [ [ @@ -6340,7 +7418,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09180555555555556, + "max": 0.09194444444444444 + }, "related_data": {} } } @@ -6348,7 +7429,7 @@ { "修改元组变量": { "data": { - "uuid": "python-5-109", + "uuid": "python-5-110", "seg": [ [ [ @@ -6358,11 +7439,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09194444444444444, + "max": 0.09208333333333332 + }, "related_data": { "qa": { "data_id": [ - "8_1065408_1264598" + "8_1065408_1264598@8" ] } } @@ -6372,17 +7456,21 @@ { "访问元组元素": { "data": { - "uuid": "python-5-110", + "uuid": "python-5-111", "seg": [ [ [ "访问", "元组", - "元素" + "元素", + "元组元素" ] ] ], - "level": "1", + "level": { + "min": 0.09208333333333332, + "max": 0.09222222222222222 + }, "related_data": {} } } @@ -6390,7 +7478,7 @@ { "修改元组": { "data": { - "uuid": "python-5-111", + "uuid": "python-5-112", "seg": [ [ [ @@ -6399,13 +7487,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09222222222222222, + "max": 0.09236111111111112 + }, "related_data": { "qa": { "data_id": [ - "8_7435305_53405810", - "8_7446014_53425068", - "8_7422270_53379677" + "8_7435305_53405810@8", + "8_7446014_53425068@8", + "8_7422270_53379677@8" ] } } @@ -6415,7 +7506,7 @@ { "元组推导式": { "data": { - "uuid": "python-5-112", + "uuid": "python-5-113", "seg": [ [ [ @@ -6424,14 +7515,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09236111111111112, + "max": 0.0925 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-138", + "uuid": "python-4-139", "seg": [ [ [ @@ -6444,7 +7538,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09166666666666666, + "max": 0.0925 + }, "related_data": {} } } @@ -6455,7 +7552,7 @@ { "创建集合": { "data": { - "uuid": "python-5-113", + "uuid": "python-5-114", "seg": [ [ [ @@ -6464,13 +7561,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0925, + "max": 0.09291666666666668 + }, "related_data": { "qa": { "data_id": [ - "8_672899_499852", - "8_198895_115731", - "8_651400_458597" + "8_672899_499852@8", + "8_198895_115731@8", + "8_651400_458597@8" ] } } @@ -6480,7 +7580,7 @@ { "集合的交集、并集和差集运算": { "data": { - "uuid": "python-5-114", + "uuid": "python-5-115", "seg": [ [ [ @@ -6496,14 +7596,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09291666666666668, + "max": 0.09333333333333334 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-139", + "uuid": "python-4-140", "seg": [ [ [ @@ -6516,11 +7619,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0925, + "max": 0.09333333333333334 + }, "related_data": { "qa": { "data_id": [ - "8_1092395_1300302" + "8_1092395_1300302@8" ] } } @@ -6530,7 +7636,7 @@ { "整型:int": { "data": { - "uuid": "python-4-140", + "uuid": "python-4-141", "seg": [ [ [ @@ -6543,13 +7649,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09333333333333334, + "max": 0.09416666666666666 + }, "related_data": { "qa": { "data_id": [ - "8_1052099_1249646", - "8_769661_830731", - "8_7398663_53345095" + "8_1052099_1249646@8", + "8_769661_830731@8", + "8_7398663_53345095@8" ] } } @@ -6559,7 +7668,7 @@ { "字符串:str": { "data": { - "uuid": "python-4-141", + "uuid": "python-4-142", "seg": [ [ [ @@ -6572,16 +7681,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09416666666666666, + "max": 0.095 + }, "related_data": { "qa": { "data_id": [ - "8_193318_98326", - "8_661411_476399", - "8_766312_825514", - "8_679005_524784", - "8_678600_523075", - "8_747787_799358" + "8_193318_98326@8", + "8_661411_476399@8", + "8_766312_825514@8", + "8_679005_524784@8", + "8_678600_523075@8", + "8_747787_799358@8" ] } } @@ -6595,11 +7707,15 @@ [ [ "内置", - "类" + "类", + "内置类" ] ] ], - "level": "1", + "level": { + "min": 0.09, + "max": 0.095 + }, "related_data": {} } } @@ -6610,7 +7726,7 @@ { "help": { "data": { - "uuid": "python-4-142", + "uuid": "python-4-143", "seg": [ [ [ @@ -6618,7 +7734,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.095, + "max": 0.09538461538461539 + }, "related_data": {} } } @@ -6626,7 +7745,7 @@ { "input": { "data": { - "uuid": "python-4-143", + "uuid": "python-4-144", "seg": [ [ [ @@ -6634,12 +7753,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09538461538461539, + "max": 0.09576923076923077 + }, "related_data": { "qa": { "data_id": [ - "8_188429_86313", - "8_252097_316193" + "8_188429_86313@8", + "8_252097_316193@8" ] } } @@ -6649,7 +7771,7 @@ { "print": { "data": { - "uuid": "python-4-144", + "uuid": "python-4-145", "seg": [ [ [ @@ -6657,20 +7779,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09576923076923077, + "max": 0.09615384615384616 + }, "related_data": { "qa": { "data_id": [ - "8_7455066_53437800", - "8_716528_709342", - "8_7456892_53440977", - "8_7429896_53396882", - "8_945649_1085945", - "8_6674118_47207136", - "8_7460641_53445738", - "8_737912_768666", - "8_7415478_53368947", - "8_751732_805437" + "8_7455066_53437800@8", + "8_716528_709342@8", + "8_7456892_53440977@8", + "8_7429896_53396882@8", + "8_945649_1085945@8", + "8_6674118_47207136@8", + "8_7460641_53445738@8", + "8_737912_768666@8", + "8_7415478_53368947@8", + "8_751732_805437@8" ] } } @@ -6680,7 +7805,7 @@ { "range": { "data": { - "uuid": "python-4-145", + "uuid": "python-4-146", "seg": [ [ [ @@ -6688,15 +7813,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09615384615384616, + "max": 0.09653846153846155 + }, "related_data": { "qa": { "data_id": [ - "8_7463060_53448838", - "8_7408874_53359118", - "8_7445781_53424617", - "8_1050452_1247618", - "8_643811_443944" + "8_7463060_53448838@8", + "8_7408874_53359118@8", + "8_7445781_53424617@8", + "8_1050452_1247618@8", + "8_643811_443944@8" ] } } @@ -6706,7 +7834,7 @@ { "format": { "data": { - "uuid": "python-4-146", + "uuid": "python-4-147", "seg": [ [ [ @@ -6715,15 +7843,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09653846153846155, + "max": 0.09692307692307693 + }, "related_data": { "qa": { "data_id": [ - "8_701347_591060", - "8_7431781_53400326", - "8_7431499_53399850", - "8_779718_848155", - "8_786559_902672" + "8_701347_591060@8", + "8_7431781_53400326@8", + "8_7431499_53399850@8", + "8_779718_848155@8", + "8_786559_902672@8", + "8_651597_459028@8" ] } } @@ -6733,7 +7865,7 @@ { "len": { "data": { - "uuid": "python-4-147", + "uuid": "python-4-148", "seg": [ [ [ @@ -6741,11 +7873,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09692307692307693, + "max": 0.09730769230769232 + }, "related_data": { "qa": { "data_id": [ - "8_7428691_53394796" + "8_7428691_53394796@8" ] } } @@ -6755,7 +7890,7 @@ { "sorted": { "data": { - "uuid": "python-4-148", + "uuid": "python-4-149", "seg": [ [ [ @@ -6763,15 +7898,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09730769230769232, + "max": 0.09769230769230769 + }, "related_data": { "qa": { "data_id": [ - "8_783002_854183", - "8_832031_933916", - "8_1055457_1252607", - "8_1052748_1250156", - "8_1031310_1226497" + "8_783002_854183@8", + "8_832031_933916@8", + "8_1055457_1252607@8", + "8_1052748_1250156@8", + "8_1031310_1226497@8" ] } } @@ -6781,7 +7919,7 @@ { "open": { "data": { - "uuid": "python-4-149", + "uuid": "python-4-150", "seg": [ [ [ @@ -6789,11 +7927,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09769230769230769, + "max": 0.09807692307692308 + }, "related_data": { "qa": { "data_id": [ - "8_768353_828888" + "8_768353_828888@8" ] } } @@ -6803,7 +7944,7 @@ { "dir": { "data": { - "uuid": "python-4-150", + "uuid": "python-4-151", "seg": [ [ [ @@ -6811,7 +7952,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09807692307692308, + "max": 0.09846153846153846 + }, "related_data": {} } } @@ -6819,7 +7963,7 @@ { "enumerate/zip": { "data": { - "uuid": "python-4-151", + "uuid": "python-4-152", "seg": [ [ [ @@ -6828,13 +7972,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09846153846153846, + "max": 0.09884615384615385 + }, "related_data": { "qa": { "data_id": [ - "8_7454164_53436851", - "8_1057819_1254926", - "8_238378_220208" + "8_7454164_53436851@8", + "8_1057819_1254926@8", + "8_238378_220208@8" ] } } @@ -6844,7 +7991,7 @@ { "type/isinstance": { "data": { - "uuid": "python-4-152", + "uuid": "python-4-153", "seg": [ [ [ @@ -6853,7 +8000,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09884615384615385, + "max": 0.09923076923076923 + }, "related_data": {} } } @@ -6861,7 +8011,7 @@ { "min/max/sum": { "data": { - "uuid": "python-4-153", + "uuid": "python-4-154", "seg": [ [ [ @@ -6871,13 +8021,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09923076923076923, + "max": 0.09961538461538462 + }, "related_data": { "qa": { "data_id": [ - "8_1104806_29328164", - "8_7453952_53436606", - "8_748289_800185" + "8_1104806_29328164@8", + "8_7453952_53436606@8", + "8_748289_800185@8" ] } } @@ -6887,7 +8040,7 @@ { "abs/round/pow/divmod": { "data": { - "uuid": "python-4-154", + "uuid": "python-4-155", "seg": [ [ [ @@ -6898,7 +8051,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09961538461538462, + "max": 0.1 + }, "related_data": {} } } @@ -6910,11 +8066,15 @@ [ [ "内置", - "函数" + "函数", + "内置函数" ] ] ], - "level": "1", + "level": { + "min": 0.095, + "max": 0.1 + }, "related_data": {} } } @@ -6926,11 +8086,15 @@ [ [ "基础", - "语法" + "语法", + "基础语法" ] ] ], - "level": "1", + "level": { + "min": 0.05, + "max": 0.1 + }, "related_data": {} } } @@ -6950,7 +8114,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1, + "max": 0.10500000000000001 + }, "related_data": {} } } @@ -6961,7 +8128,7 @@ { "算术转换": { "data": { - "uuid": "python-4-155", + "uuid": "python-4-156", "seg": [ [ [ @@ -6970,7 +8137,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.10500000000000001, + "max": 0.10533333333333335 + }, "related_data": {} } } @@ -6978,7 +8148,7 @@ { "原子": { "data": { - "uuid": "python-4-156", + "uuid": "python-4-157", "seg": [ [ [ @@ -6986,7 +8156,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.10533333333333335, + "max": 0.10566666666666667 + }, "related_data": {} } } @@ -6994,7 +8167,7 @@ { "原型": { "data": { - "uuid": "python-4-157", + "uuid": "python-4-158", "seg": [ [ [ @@ -7002,7 +8175,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.10566666666666667, + "max": 0.10600000000000001 + }, "related_data": {} } } @@ -7010,7 +8186,7 @@ { "await表达式": { "data": { - "uuid": "python-4-158", + "uuid": "python-4-159", "seg": [ [ [ @@ -7019,13 +8195,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.10600000000000001, + "max": 0.10633333333333335 + }, "related_data": { "qa": { "data_id": [ - "8_7429286_53395904", - "8_7454620_53437292", - "8_7440469_53415733" + "8_7429286_53395904@8", + "8_7454620_53437292@8", + "8_7440469_53415733@8" ] } } @@ -7035,16 +8214,20 @@ { "幂运算符": { "data": { - "uuid": "python-4-159", + "uuid": "python-4-160", "seg": [ [ [ "幂", - "运算符" + "运算符", + "幂运算符" ] ] ], - "level": "1", + "level": { + "min": 0.10633333333333335, + "max": 0.10666666666666667 + }, "related_data": {} } } @@ -7052,7 +8235,7 @@ { "一元算术和位运算": { "data": { - "uuid": "python-4-160", + "uuid": "python-4-161", "seg": [ [ [ @@ -7064,7 +8247,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.10666666666666667, + "max": 0.10700000000000001 + }, "related_data": {} } } @@ -7072,16 +8258,20 @@ { "二元算术运算符": { "data": { - "uuid": "python-4-161", + "uuid": "python-4-162", "seg": [ [ [ "算术", - "运算符" + "运算符", + "算术运算符" ] ] ], - "level": "1", + "level": { + "min": 0.10700000000000001, + "max": 0.10733333333333335 + }, "related_data": {} } } @@ -7089,7 +8279,7 @@ { "移位运算": { "data": { - "uuid": "python-4-162", + "uuid": "python-4-163", "seg": [ [ [ @@ -7098,21 +8288,44 @@ ] ] ], - "level": "1", + "level": { + "min": 0.10733333333333335, + "max": 0.10766666666666667 + }, "related_data": { "qa": { "data_id": [ - "8_242494_229867" + "8_242494_229867@8" ] } } } } }, + { + "比较运算": { + "data": { + "uuid": "python-4-164", + "seg": [ + [ + [ + "运算", + "比较运算" + ] + ] + ], + "level": { + "min": 0.10766666666666667, + "max": 0.10800000000000001 + }, + "related_data": {} + } + } + }, { "布尔运算": { "data": { - "uuid": "python-4-163", + "uuid": "python-4-165", "seg": [ [ [ @@ -7120,7 +8333,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.10800000000000001, + "max": 0.10833333333333335 + }, "related_data": {} } } @@ -7128,20 +8344,24 @@ { "赋值表达式": { "data": { - "uuid": "python-4-164", + "uuid": "python-4-166", "seg": [ [ [ "赋值", - "表达式" + "表达式", + "赋值表达式" ] ] ], - "level": "1", + "level": { + "min": 0.10833333333333335, + "max": 0.10866666666666668 + }, "related_data": { "qa": { "data_id": [ - "8_7427152_53391294" + "8_7427152_53391294@8" ] } } @@ -7151,16 +8371,20 @@ { "条件表达式": { "data": { - "uuid": "python-4-165", + "uuid": "python-4-167", "seg": [ [ [ "条件", - "表达式" + "表达式", + "条件表达式" ] ] ], - "level": "1", + "level": { + "min": 0.10866666666666668, + "max": 0.10900000000000001 + }, "related_data": {} } } @@ -7168,16 +8392,20 @@ { "表达式列表": { "data": { - "uuid": "python-4-166", + "uuid": "python-4-168", "seg": [ [ [ "表达式", - "列表" + "列表", + "表达式列表" ] ] ], - "level": "1", + "level": { + "min": 0.10900000000000001, + "max": 0.10933333333333335 + }, "related_data": {} } } @@ -7185,7 +8413,7 @@ { "求值顺序": { "data": { - "uuid": "python-4-167", + "uuid": "python-4-169", "seg": [ [ [ @@ -7194,7 +8422,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.10933333333333335, + "max": 0.10966666666666668 + }, "related_data": {} } } @@ -7202,7 +8433,7 @@ { "运算符优先级": { "data": { - "uuid": "python-4-168", + "uuid": "python-4-170", "seg": [ [ [ @@ -7211,7 +8442,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.10966666666666668, + "max": 0.11000000000000001 + }, "related_data": {} } } @@ -7226,11 +8460,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.10500000000000001, + "max": 0.11000000000000001 + }, "related_data": { "qa": { "data_id": [ - "8_7464708_53451239" + "8_7464708_53451239@8" ] } } @@ -7248,7 +8485,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.11000000000000001, + "max": 0.11500000000000002 + }, "related_data": {} } } @@ -7265,7 +8505,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.11500000000000002, + "max": 0.12000000000000001 + }, "related_data": {} } } @@ -7276,7 +8519,7 @@ { "try-catch-finally": { "data": { - "uuid": "python-4-169", + "uuid": "python-4-171", "seg": [ [ [ @@ -7286,148 +8529,31 @@ ] ] ], - "level": "1", + "level": { + "min": 0.12000000000000001, + "max": 0.1225 + }, "related_data": {} } } }, { "异常捕获": { - "children": [ - { - "不用提供参数": { - "data": { - "uuid": "python-5-115", - "seg": [ - [ - [ - "不用", - "提供", - "参数" - ] - ] - ], - "level": "1", - "related_data": {} - } - } - }, - { - "多个except子句": { - "data": { - "uuid": "python-5-116", - "seg": [ - [ - [ - "except", - "子句" - ] - ] - ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "8_7403646_53352214", - "8_7404249_53353091", - "8_7433336_53403374" - ] - } - } - } - } - }, - { - "一箭双雕": { - "data": { - "uuid": "python-5-117", - "seg": [ - [ - [ - "一箭双雕" - ] - ] - ], - "level": "1", - "related_data": {} - } - } - }, - { - "捕获对象": { - "data": { - "uuid": "python-5-118", - "seg": [ - [ - [ - "捕获", - "对象" - ] - ] - ], - "level": "1", - "related_data": {} - } - } - }, - { - "一网打尽": { - "data": { - "uuid": "python-5-119", - "seg": [ - [ - [ - "一网打尽" - ] - ] - ], - "level": "1", - "related_data": {} - } - } - }, - { - "万事大吉时": { - "data": { - "uuid": "python-5-120", - "seg": [ - [ - [ - "万事大吉" - ] - ] - ], - "level": "1", - "related_data": {} - } - } - }, - { - "最后": { - "data": { - "uuid": "python-5-121", - "seg": [ - [ - [] - ] - ], - "level": "1", - "related_data": {} - } - } - } - ], "data": { - "uuid": "python-4-170", + "uuid": "python-4-172", "seg": [ [ [ "异常", - "捕获" + "捕获", + "异常捕获" ] ] ], - "level": "1", + "level": { + "min": 0.1225, + "max": 0.125 + }, "related_data": {} } } @@ -7440,11 +8566,15 @@ [ "异常", "捕获", - "预处理" + "预处理", + "异常捕获" ] ] ], - "level": "1", + "level": { + "min": 0.12000000000000001, + "max": 0.125 + }, "related_data": {} } } @@ -7455,7 +8585,7 @@ { "find": { "data": { - "uuid": "python-4-171", + "uuid": "python-4-173", "seg": [ [ [ @@ -7463,16 +8593,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.125, + "max": 0.12545454545454546 + }, "related_data": { "qa": { "data_id": [ - "8_7414406_53370177", - "8_1070595_1272030", - "8_773454_837139", - "8_7397460_53342451", - "8_756303_811516", - "8_869416_1249590" + "8_7414406_53370177@8", + "8_1070595_1272030@8", + "8_773454_837139@8", + "8_7397460_53342451@8", + "8_756303_811516@8" ] } } @@ -7482,7 +8614,7 @@ { "index": { "data": { - "uuid": "python-4-172", + "uuid": "python-4-174", "seg": [ [ [ @@ -7490,14 +8622,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.12545454545454546, + "max": 0.12590909090909091 + }, "related_data": { "qa": { "data_id": [ - "8_7426160_53388904", - "8_156319_18775", - "8_730782_746735", - "8_7447625_53427546" + "8_7426160_53388904@8", + "8_156319_18775@8", + "8_730782_746735@8", + "8_7447625_53427546@8" ] } } @@ -7507,7 +8642,7 @@ { "join": { "data": { - "uuid": "python-4-173", + "uuid": "python-4-175", "seg": [ [ [ @@ -7515,12 +8650,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.12590909090909091, + "max": 0.12636363636363637 + }, "related_data": { "qa": { "data_id": [ - "8_1094906_1305693", - "8_7398798_53345374" + "8_1094906_1305693@8", + "8_7398798_53345374@8" ] } } @@ -7530,7 +8668,7 @@ { "lower": { "data": { - "uuid": "python-4-174", + "uuid": "python-4-176", "seg": [ [ [ @@ -7538,12 +8676,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.12636363636363637, + "max": 0.12681818181818183 + }, "related_data": { "qa": { "data_id": [ - "8_7455679_53438991", - "8_696148_579463" + "8_7455679_53438991@8", + "8_696148_579463@8" ] } } @@ -7553,7 +8694,7 @@ { "replace": { "data": { - "uuid": "python-4-175", + "uuid": "python-4-177", "seg": [ [ [ @@ -7561,12 +8702,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.12681818181818183, + "max": 0.1272727272727273 + }, "related_data": { "qa": { "data_id": [ - "8_7449369_53429413", - "8_1097173_1310348" + "8_7449369_53429413@8", + "8_1097173_1310348@8" ] } } @@ -7576,7 +8720,7 @@ { "split": { "data": { - "uuid": "python-4-176", + "uuid": "python-4-178", "seg": [ [ [ @@ -7584,12 +8728,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1272727272727273, + "max": 0.12772727272727272 + }, "related_data": { "qa": { "data_id": [ - "8_4645435_29328032", - "8_662699_478417" + "8_668566_488981@8", + "8_4645435_29328032@8", + "8_662699_478417@8" ] } } @@ -7599,7 +8747,7 @@ { "strip": { "data": { - "uuid": "python-4-177", + "uuid": "python-4-179", "seg": [ [ [ @@ -7607,7 +8755,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.12772727272727272, + "max": 0.12818181818181817 + }, "related_data": {} } } @@ -7615,7 +8766,7 @@ { "translate": { "data": { - "uuid": "python-4-178", + "uuid": "python-4-180", "seg": [ [ [ @@ -7623,7 +8774,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.12818181818181817, + "max": 0.12863636363636363 + }, "related_data": {} } } @@ -7631,7 +8785,7 @@ { "upper": { "data": { - "uuid": "python-4-179", + "uuid": "python-4-181", "seg": [ [ [ @@ -7639,7 +8793,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.12863636363636363, + "max": 0.1290909090909091 + }, "related_data": {} } } @@ -7647,7 +8804,7 @@ { "center": { "data": { - "uuid": "python-4-180", + "uuid": "python-4-182", "seg": [ [ [ @@ -7655,7 +8812,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1290909090909091, + "max": 0.12954545454545455 + }, "related_data": {} } } @@ -7663,7 +8823,7 @@ { "判断字符串是否满足特定的条件": { "data": { - "uuid": "python-4-181", + "uuid": "python-4-183", "seg": [ [ [ @@ -7674,11 +8834,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.12954545454545455, + "max": 0.13 + }, "related_data": { "qa": { "data_id": [ - "8_750394_803411" + "8_750394_803411@8" ] } } @@ -7692,11 +8855,15 @@ [ [ "字符串", - "方法" + "方法", + "字符串方法" ] ] ], - "level": "1", + "level": { + "min": 0.125, + "max": 0.13 + }, "related_data": {} } } @@ -7710,17 +8877,21 @@ { "迭代器协议": { "data": { - "uuid": "python-5-122", + "uuid": "python-5-116", "seg": [ [ [ "迭代", "器", - "协议" + "协议", + "器协议" ] ] ], - "level": "1", + "level": { + "min": 0.13, + "max": 0.130625 + }, "related_data": {} } } @@ -7728,7 +8899,7 @@ { "从迭代器创建序列": { "data": { - "uuid": "python-5-123", + "uuid": "python-5-117", "seg": [ [ [ @@ -7739,14 +8910,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.130625, + "max": 0.13125 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-182", + "uuid": "python-4-184", "seg": [ [ [ @@ -7755,7 +8929,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.13, + "max": 0.13125 + }, "related_data": {} } } @@ -7766,7 +8943,7 @@ { "创建生成器": { "data": { - "uuid": "python-5-124", + "uuid": "python-5-118", "seg": [ [ [ @@ -7775,16 +8952,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.13125, + "max": 0.1315 + }, "related_data": { "qa": { "data_id": [ - "8_960950_1111761", - "8_7399906_53347475", - "8_757304_812715", - "8_7399901_53347466", - "8_675908_512320", - "8_695082_576728" + "8_960950_1111761@8", + "8_7399906_53347475@8", + "8_757304_812715@8", + "8_7399901_53347466@8", + "8_675908_512320@8", + "8_695082_576728@8" ] } } @@ -7794,7 +8974,7 @@ { "递归式生成器": { "data": { - "uuid": "python-5-125", + "uuid": "python-5-119", "seg": [ [ [ @@ -7803,11 +8983,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1315, + "max": 0.13175 + }, "related_data": { "qa": { "data_id": [ - "8_7446964_53426575" + "8_7446964_53426575@8" ] } } @@ -7817,7 +9000,7 @@ { "通用生成器": { "data": { - "uuid": "python-5-126", + "uuid": "python-5-120", "seg": [ [ [ @@ -7826,7 +9009,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.13175, + "max": 0.132 + }, "related_data": {} } } @@ -7834,7 +9020,7 @@ { "生成器的方法": { "data": { - "uuid": "python-5-127", + "uuid": "python-5-121", "seg": [ [ [ @@ -7843,7 +9029,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.132, + "max": 0.13225 + }, "related_data": {} } } @@ -7851,7 +9040,7 @@ { "模拟生成器": { "data": { - "uuid": "python-5-128", + "uuid": "python-5-122", "seg": [ [ [ @@ -7860,14 +9049,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.13225, + "max": 0.1325 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-183", + "uuid": "python-4-185", "seg": [ [ [ @@ -7875,7 +9067,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.13125, + "max": 0.1325 + }, "related_data": {} } } @@ -7883,24 +9078,34 @@ { "装饰器": { "data": { - "uuid": "python-4-184", + "uuid": "python-4-186", "seg": [ [ [ "装饰", - "器" + "器", + "装饰器" ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.1325, + "max": 0.13375 + }, + "related_data": { + "qa": { + "data_id": [ + "8_750243_803136@8" + ] + } + } } } }, { "闭包": { "data": { - "uuid": "python-4-185", + "uuid": "python-4-187", "seg": [ [ [ @@ -7909,7 +9114,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.13375, + "max": 0.135 + }, "related_data": {} } } @@ -7925,11 +9133,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.13, + "max": 0.135 + }, "related_data": { "qa": { "data_id": [ - "8_7433343_53403440" + "8_7433343_53403440@8" ] } } @@ -7942,7 +9153,7 @@ { "打开文件": { "data": { - "uuid": "python-4-186", + "uuid": "python-4-188", "seg": [ [ [ @@ -7951,20 +9162,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.135, + "max": 0.13625 + }, "related_data": { "qa": { "data_id": [ - "8_1151465_1758956", - "8_7417164_53371940", - "8_7415163_53368587", - "8_754627_809665", - "8_6659778_47028558", - "8_7427548_53392186", - "8_1087892_1294745", - "8_719473_713588", - "8_715663_708032", - "8_7425663_53387254" + "8_1151465_1758956@8", + "8_7417164_53371940@8", + "8_7415163_53368587@8", + "8_754627_809665@8", + "8_6659778_47028558@8", + "8_7427548_53392186@8", + "8_1087892_1294745@8", + "8_719473_713588@8", + "8_715663_708032@8", + "8_7425663_53387254@8" ] } } @@ -7973,206 +9187,310 @@ }, { "文件基本方法": { + "data": { + "uuid": "python-4-189", + "seg": [ + [ + [ + "文件", + "方法", + "文件基本", + "基本方法" + ] + ] + ], + "level": { + "min": 0.13625, + "max": 0.1375 + }, + "related_data": {} + } + } + }, + { + "文件内容迭代": { "children": [ { - "读取和写入": { + "每次一个字符(或字节)": { "data": { - "uuid": "python-5-129", + "uuid": "python-5-123", "seg": [ [ [ - "读取" - ], - [ - "写入" + "字符", + "字节" ] ] ], - "level": "1", + "level": { + "min": 0.1375, + "max": 0.13775 + }, "related_data": {} } } }, { - "使用管道重定向输出": { + "每次一行": { "data": { - "uuid": "python-5-130", + "uuid": "python-5-124", "seg": [ [ - [ - "管道", - "重定向", - "输出" - ] + [] ] ], - "level": "1", + "level": { + "min": 0.13775, + "max": 0.138 + }, "related_data": {} } } }, { - "关闭文件": { + "读取所有内容": { "data": { - "uuid": "python-5-131", + "uuid": "python-5-125", "seg": [ [ [ - "关闭", - "文件" + "读取", + "内容" ] ] ], - "level": "1", + "level": { + "min": 0.138, + "max": 0.13825 + }, "related_data": { "qa": { "data_id": [ - "8_7450664_53431620", - "8_744445_790474", - "8_189485_88427", - "8_7442766_53420029", - "8_7429056_53395497", - "8_7450710_53431675", - "8_7426140_53388892" + "8_7416533_53370965@8", + "8_653804_462925@8", + "8_7427929_53394276@8", + "8_7449012_53429106@8", + "8_1074828_1278752@8", + "8_7431920_53400692@8", + "8_1095753_1307597@8", + "8_725925_737989@8", + "8_7438950_53412397@8" ] } } } } + }, + { + "使用fileinput实现延迟行迭代": { + "data": { + "uuid": "python-5-126", + "seg": [ + [ + [ + "fileinput", + "延迟", + "迭代" + ] + ] + ], + "level": { + "min": 0.13825, + "max": 0.1385 + }, + "related_data": {} + } + } + }, + { + "文件迭代器": { + "data": { + "uuid": "python-5-127", + "seg": [ + [ + [ + "文件", + "迭代", + "器" + ] + ] + ], + "level": { + "min": 0.1385, + "max": 0.13875 + }, + "related_data": {} + } + } } ], "data": { - "uuid": "python-4-187", + "uuid": "python-4-190", "seg": [ [ [ "文件", - "方法" + "内容", + "迭代", + "文件内容" ] ] ], - "level": "1", + "level": { + "min": 0.1375, + "max": 0.13875 + }, "related_data": {} } } }, { - "文件内容迭代": { + "文件的基本方法": { "children": [ { - "每次一个字符(或字节)": { + "读取和写入": { "data": { - "uuid": "python-5-132", + "uuid": "python-5-128", "seg": [ [ [ - "字符", - "字节" + "读取" + ], + [ + "写入" ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "8_771488_834130" - ] - } - } + "level": { + "min": 0.13875, + "max": 0.139 + }, + "related_data": {} } } }, { - "每次一行": { + "使用管道重定向输出": { "data": { - "uuid": "python-5-133", + "uuid": "python-5-129", "seg": [ [ - [] + [ + "管道", + "重定向", + "输出", + "管道重定向" + ] ] ], - "level": "1", + "level": { + "min": 0.139, + "max": 0.13925 + }, "related_data": {} } } }, { - "读取所有内容": { + "读取和写入行": { "data": { - "uuid": "python-5-134", + "uuid": "python-5-130", "seg": [ [ [ - "读取", - "内容" + "读取" + ], + [ + "写入" ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "8_7427929_53394276", - "8_7449012_53429106", - "8_7431920_53400692", - "8_1095753_1307597", - "8_725925_737989", - "8_7438950_53412397" - ] - } - } + "level": { + "min": 0.13925, + "max": 0.1395 + }, + "related_data": {} } } }, { - "使用fileinput实现延迟行迭代": { + "关闭文件": { "data": { - "uuid": "python-5-135", + "uuid": "python-5-131", "seg": [ [ [ - "fileinput", - "延迟", - "迭代" + "关闭", + "文件" ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.1395, + "max": 0.13975 + }, + "related_data": { + "qa": { + "data_id": [ + "8_7450664_53431620@8", + "8_744445_790474@8", + "8_189485_88427@8", + "8_7442766_53420029@8", + "8_7429056_53395497@8", + "8_7450710_53431675@8", + "8_7426140_53388892@8", + "8_7454455_53437156@8", + "8_685956_546738@8", + "8_1100143_1315065@8" + ] + } + } } } }, { - "文件迭代器": { + "使用文件的基本方法": { "data": { - "uuid": "python-5-136", + "uuid": "python-5-132", "seg": [ [ [ "文件", - "迭代", - "器" + "方法", + "基本方法" ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.13975, + "max": 0.14 + }, + "related_data": { + "qa": { + "data_id": [ + "8_7441024_53416772@8" + ] + } + } } } } ], "data": { - "uuid": "python-4-188", + "uuid": "python-4-191", "seg": [ [ [ "文件", - "内容", - "迭代" + "方法", + "基本方法" ] ] ], - "level": "1", + "level": { + "min": 0.13875, + "max": 0.14 + }, "related_data": {} } } @@ -8187,7 +9505,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.135, + "max": 0.14 + }, "related_data": {} } } @@ -8198,7 +9519,7 @@ { "datetime": { "data": { - "uuid": "python-4-189", + "uuid": "python-4-192", "seg": [ [ [ @@ -8206,15 +9527,24 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.14, + "max": 0.14045454545454547 + }, + "related_data": { + "qa": { + "data_id": [ + "8_7420270_53378320@8" + ] + } + } } } }, { "json": { "data": { - "uuid": "python-4-190", + "uuid": "python-4-193", "seg": [ [ [ @@ -8222,7 +9552,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.14045454545454547, + "max": 0.14090909090909093 + }, "related_data": {} } } @@ -8230,7 +9563,7 @@ { "math": { "data": { - "uuid": "python-4-191", + "uuid": "python-4-194", "seg": [ [ [ @@ -8238,7 +9571,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.14090909090909093, + "max": 0.14136363636363639 + }, "related_data": {} } } @@ -8246,7 +9582,7 @@ { "os": { "data": { - "uuid": "python-4-192", + "uuid": "python-4-195", "seg": [ [ [ @@ -8254,15 +9590,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.14136363636363639, + "max": 0.14181818181818184 + }, "related_data": { "qa": { "data_id": [ - "8_748650_800711", - "8_701501_591474", - "8_1077736_1282231", - "8_7457483_53442175", - "8_646464_448897" + "8_748650_800711@8", + "8_701501_591474@8", + "8_1077736_1282231@8", + "8_7457483_53442175@8", + "8_646464_448897@8" ] } } @@ -8272,7 +9611,7 @@ { "random": { "data": { - "uuid": "python-4-193", + "uuid": "python-4-196", "seg": [ [ [ @@ -8280,18 +9619,20 @@ ] ] ], - "level": "1", + "level": { + "min": 0.14181818181818184, + "max": 0.1422727272727273 + }, "related_data": { "qa": { "data_id": [ - "8_680216_529471", - "8_7438802_53412198", - "8_367569_394129", - "8_6537999_46091946", - "8_7404395_53353177", - "8_7464593_53451081", - "8_716715_709624", - "8_696107_579444" + "8_680216_529471@8", + "8_7438802_53412198@8", + "8_367569_394129@8", + "8_6537999_46091946@8", + "8_7404395_53353177@8", + "8_7464593_53451081@8", + "8_696107_579444@8" ] } } @@ -8301,7 +9642,7 @@ { "re": { "data": { - "uuid": "python-4-194", + "uuid": "python-4-197", "seg": [ [ [ @@ -8309,15 +9650,32 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.1422727272727273, + "max": 0.14272727272727273 + }, + "related_data": { + "qa": { + "data_id": [ + "8_672138_498832@8", + "8_1094744_1305243@8", + "8_761543_819024@8", + "8_7415914_53369686@8", + "8_7425540_53387105@8", + "8_7416071_53369748@8", + "8_699826_588184@8", + "8_7408914_53359097@8", + "8_1087883_1294748@8" + ] + } + } } } }, { "sys": { "data": { - "uuid": "python-4-195", + "uuid": "python-4-198", "seg": [ [ [ @@ -8325,15 +9683,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.14272727272727273, + "max": 0.1431818181818182 + }, "related_data": { "qa": { "data_id": [ - "8_167960_42792", - "8_713341_704641", - "8_876881_1011987", - "8_2013695_10372037", - "8_834611_939822" + "8_167960_42792@8", + "8_713341_704641@8", + "8_876881_1011987@8", + "8_2013695_10372037@8", + "8_834611_939822@8" ] } } @@ -8343,7 +9704,7 @@ { "time": { "data": { - "uuid": "python-4-196", + "uuid": "python-4-199", "seg": [ [ [ @@ -8351,7 +9712,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1431818181818182, + "max": 0.14363636363636365 + }, "related_data": {} } } @@ -8359,7 +9723,7 @@ { "urllib": { "data": { - "uuid": "python-4-197", + "uuid": "python-4-200", "seg": [ [ [ @@ -8367,12 +9731,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.14363636363636365, + "max": 0.1440909090909091 + }, "related_data": { "qa": { "data_id": [ - "8_697472_583143", - "8_7426450_53389928" + "8_653772_462863@8", + "8_697472_583143@8", + "8_7426450_53389928@8" ] } } @@ -8382,7 +9750,7 @@ { "fileinput": { "data": { - "uuid": "python-4-198", + "uuid": "python-4-201", "seg": [ [ [ @@ -8390,7 +9758,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1440909090909091, + "max": 0.14454545454545456 + }, "related_data": {} } } @@ -8398,17 +9769,21 @@ { "其他有趣的标准模块": { "data": { - "uuid": "python-4-199", + "uuid": "python-4-202", "seg": [ [ [ "有趣", "标准", - "模块" + "模块", + "标准模块" ] ] ], - "level": "1", + "level": { + "min": 0.14454545454545456, + "max": 0.14500000000000002 + }, "related_data": {} } } @@ -8420,11 +9795,15 @@ [ [ "标准", - "库" + "库", + "标准库" ] ] ], - "level": "1", + "level": { + "min": 0.14, + "max": 0.14500000000000002 + }, "related_data": {} } } @@ -8435,7 +9814,7 @@ { "理解内码和字节码的概念": { "data": { - "uuid": "python-4-200", + "uuid": "python-4-203", "seg": [ [ [ @@ -8449,7 +9828,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.14500000000000002, + "max": 0.15000000000000002 + }, "related_data": {} } } @@ -8461,14 +9843,18 @@ [ [ "字符", - "编码" + "编码", + "字符编码" ], [ "解码" ] ] ], - "level": "1", + "level": { + "min": 0.14500000000000002, + "max": 0.15000000000000002 + }, "related_data": {} } } @@ -8480,11 +9866,15 @@ [ [ "进阶", - "语法" + "语法", + "进阶语法" ] ] ], - "level": "1", + "level": { + "min": 0.1, + "max": 0.15000000000000002 + }, "related_data": {} } } @@ -8507,7 +9897,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.15000000000000002, + "max": 0.15714285714285717 + }, "related_data": {} } } @@ -8524,7 +9917,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.15714285714285717, + "max": 0.1642857142857143 + }, "related_data": {} } } @@ -8535,7 +9931,7 @@ { "封装": { "data": { - "uuid": "python-4-201", + "uuid": "python-4-204", "seg": [ [ [ @@ -8543,7 +9939,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1642857142857143, + "max": 0.16666666666666669 + }, "related_data": {} } } @@ -8554,7 +9953,7 @@ { "子类的方法__init__": { "data": { - "uuid": "python-5-137", + "uuid": "python-5-133", "seg": [ [ [ @@ -8564,15 +9963,25 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.16666666666666669, + "max": 0.16746031746031748 + }, + "related_data": { + "qa": { + "data_id": [ + "8_1078723_1283519@8", + "8_1082094_1288713@8" + ] + } + } } } }, { "重写父类的方法": { "data": { - "uuid": "python-5-138", + "uuid": "python-5-134", "seg": [ [ [ @@ -8582,7 +9991,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.16746031746031748, + "max": 0.16825396825396827 + }, "related_data": {} } } @@ -8590,7 +10002,7 @@ { "模拟实物": { "data": { - "uuid": "python-5-139", + "uuid": "python-5-135", "seg": [ [ [ @@ -8599,14 +10011,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.16825396825396827, + "max": 0.16904761904761906 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-202", + "uuid": "python-4-205", "seg": [ [ [ @@ -8614,15 +10029,24 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.16666666666666669, + "max": 0.16904761904761906 + }, + "related_data": { + "qa": { + "data_id": [ + "8_1057705_1254825@8" + ] + } + } } } }, { "多态": { "data": { - "uuid": "python-4-203", + "uuid": "python-4-206", "seg": [ [ [ @@ -8630,7 +10054,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.16904761904761906, + "max": 0.17142857142857143 + }, "related_data": {} } } @@ -8646,7 +10073,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1642857142857143, + "max": 0.17142857142857143 + }, "related_data": {} } } @@ -8663,7 +10093,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.17142857142857143, + "max": 0.17857142857142858 + }, "related_data": {} } } @@ -8679,7 +10112,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.17857142857142858, + "max": 0.18571428571428572 + }, "related_data": {} } } @@ -8695,7 +10131,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.18571428571428572, + "max": 0.19285714285714287 + }, "related_data": {} } } @@ -8709,11 +10148,15 @@ [ "获取", "对象", - "信息" + "信息", + "对象信息" ] ] ], - "level": "1", + "level": { + "min": 0.19285714285714287, + "max": 0.2 + }, "related_data": {} } } @@ -8728,7 +10171,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.15000000000000002, + "max": 0.2 + }, "related_data": {} } } @@ -8745,7 +10191,7 @@ { "接口选项": { "data": { - "uuid": "python-5-140", + "uuid": "python-5-136", "seg": [ [ [ @@ -8754,7 +10200,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2, + "max": 0.20006648936170213 + }, "related_data": {} } } @@ -8762,7 +10211,7 @@ { "通用选项": { "data": { - "uuid": "python-5-141", + "uuid": "python-5-137", "seg": [ [ [ @@ -8771,11 +10220,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20006648936170213, + "max": 0.20013297872340427 + }, "related_data": { "qa": { "data_id": [ - "8_7444985_53423550" + "8_7444985_53423550@8" ] } } @@ -8785,7 +10237,7 @@ { "其他选项": { "data": { - "uuid": "python-5-142", + "uuid": "python-5-138", "seg": [ [ [ @@ -8793,12 +10245,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20013297872340427, + "max": 0.2001994680851064 + }, "related_data": { "qa": { "data_id": [ - "8_7455638_53438946", - "8_693673_571772" + "8_7455638_53438946@8", + "8_693673_571772@8" ] } } @@ -8808,22 +10263,26 @@ { "不应当使用的选项": { "data": { - "uuid": "python-5-143", + "uuid": "python-5-139", "seg": [ [ [ - "选项" + "选项", + "不应当" ] ] ], - "level": "1", + "level": { + "min": 0.2001994680851064, + "max": 0.20026595744680853 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-204", + "uuid": "python-4-207", "seg": [ [ [ @@ -8831,7 +10290,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2, + "max": 0.20026595744680853 + }, "related_data": {} } } @@ -8842,7 +10304,7 @@ { "调试模式变量": { "data": { - "uuid": "python-5-144", + "uuid": "python-5-140", "seg": [ [ [ @@ -8851,14 +10313,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20026595744680853, + "max": 0.20053191489361702 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-205", + "uuid": "python-4-208", "seg": [ [ [ @@ -8866,7 +10331,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20026595744680853, + "max": 0.20053191489361702 + }, "related_data": {} } } @@ -8884,7 +10352,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2, + "max": 0.20053191489361702 + }, "related_data": {} } } @@ -8898,7 +10369,7 @@ { "在Linux中": { "data": { - "uuid": "python-5-145", + "uuid": "python-5-141", "seg": [ [ [ @@ -8906,19 +10377,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20053191489361702, + "max": 0.20059101654846337 + }, "related_data": { "qa": { "data_id": [ - "8_7424090_53384641", - "8_1058656_1256126", - "8_391941_435054", - "8_254693_258511", - "8_7433249_53403298", - "8_7423278_53383054", - "8_2156033_11915593", - "8_689208_556745", - "8_1062379_1260214" + "8_7424090_53384641@8", + "8_1058656_1256126@8", + "8_391941_435054@8", + "8_254693_258511@8", + "8_7433249_53403298@8", + "8_7423278_53383054@8", + "8_2156033_11915593@8", + "8_7419365_53376495@8", + "8_689208_556745@8", + "8_1062379_1260214@8" ] } } @@ -8928,7 +10403,7 @@ { "在FreeBSD和OpenBSD上": { "data": { - "uuid": "python-5-146", + "uuid": "python-5-142", "seg": [ [ [ @@ -8939,7 +10414,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20059101654846337, + "max": 0.2006501182033097 + }, "related_data": {} } } @@ -8947,7 +10425,7 @@ { "在OpenSolaris系统上": { "data": { - "uuid": "python-5-147", + "uuid": "python-5-143", "seg": [ [ [ @@ -8956,25 +10434,32 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2006501182033097, + "max": 0.20070921985815604 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-206", + "uuid": "python-4-209", "seg": [ [ [ "获取", "最新", "版本", - "python" + "python", + "最新版本" ] ] ], - "level": "1", + "level": { + "min": 0.20053191489361702, + "max": 0.20070921985815604 + }, "related_data": {} } } @@ -8982,7 +10467,7 @@ { "构建Python": { "data": { - "uuid": "python-4-207", + "uuid": "python-4-210", "seg": [ [ [ @@ -8991,7 +10476,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20070921985815604, + "max": 0.20088652482269503 + }, "related_data": {} } } @@ -8999,7 +10487,7 @@ { "杂项": { "data": { - "uuid": "python-4-208", + "uuid": "python-4-211", "seg": [ [ [ @@ -9007,7 +10495,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20088652482269503, + "max": 0.20106382978723406 + }, "related_data": {} } } @@ -9024,7 +10515,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20053191489361702, + "max": 0.20106382978723406 + }, "related_data": {} } } @@ -9038,7 +10532,7 @@ { "安装步骤": { "data": { - "uuid": "python-5-148", + "uuid": "python-5-144", "seg": [ [ [ @@ -9047,12 +10541,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20106382978723406, + "max": 0.20107269503546102 + }, "related_data": { "qa": { "data_id": [ - "8_949514_1090674", - "8_7450679_53431644" + "8_949514_1090674@8", + "8_7450679_53431644@8" ] } } @@ -9062,7 +10559,7 @@ { "删除MAX_PATH限制": { "data": { - "uuid": "python-5-149", + "uuid": "python-5-145", "seg": [ [ [ @@ -9072,11 +10569,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20107269503546102, + "max": 0.20108156028368795 + }, "related_data": { "qa": { "data_id": [ - "8_1095703_1307362" + "8_1095703_1307362@8" ] } } @@ -9086,7 +10586,7 @@ { "无UI安装": { "data": { - "uuid": "python-5-150", + "uuid": "python-5-146", "seg": [ [ [ @@ -9095,11 +10595,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20108156028368795, + "max": 0.20109042553191492 + }, "related_data": { "qa": { "data_id": [ - "8_7451960_53433790" + "8_7451960_53433790@8" ] } } @@ -9109,7 +10612,7 @@ { "免下载安装": { "data": { - "uuid": "python-5-151", + "uuid": "python-5-147", "seg": [ [ [ @@ -9118,7 +10621,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20109042553191492, + "max": 0.20109929078014185 + }, "related_data": {} } } @@ -9126,7 +10632,7 @@ { "修改安装": { "data": { - "uuid": "python-5-152", + "uuid": "python-5-148", "seg": [ [ [ @@ -9135,14 +10641,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20109929078014185, + "max": 0.20110815602836882 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-209", + "uuid": "python-4-212", "seg": [ [ [ @@ -9150,7 +10659,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20106382978723406, + "max": 0.20110815602836882 + }, "related_data": {} } } @@ -9158,7 +10670,7 @@ { "Microsoft Store包": { "data": { - "uuid": "python-4-210", + "uuid": "python-4-213", "seg": [ [ [ @@ -9168,15 +10680,24 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.20110815602836882, + "max": 0.20115248226950355 + }, + "related_data": { + "qa": { + "data_id": [ + "8_756181_811295@8" + ] + } + } } } }, { "nuget.org安装包": { "data": { - "uuid": "python-4-211", + "uuid": "python-4-214", "seg": [ [ [ @@ -9186,7 +10707,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20115248226950355, + "max": 0.20119680851063831 + }, "related_data": {} } } @@ -9197,7 +10721,7 @@ { "Python应用程序": { "data": { - "uuid": "python-5-153", + "uuid": "python-5-149", "seg": [ [ [ @@ -9206,15 +10730,24 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.20119680851063831, + "max": 0.20121897163120567 + }, + "related_data": { + "qa": { + "data_id": [ + "8_1051667_1248934@8" + ] + } + } } } }, { "嵌入Python": { "data": { - "uuid": "python-5-154", + "uuid": "python-5-150", "seg": [ [ [ @@ -9223,12 +10756,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20121897163120567, + "max": 0.20124113475177305 + }, "related_data": { "qa": { "data_id": [ - "8_259274_271023", - "8_1094107_1304076" + "8_259274_271023@8", + "8_1094107_1304076@8" ] } } @@ -9237,7 +10773,7 @@ } ], "data": { - "uuid": "python-4-212", + "uuid": "python-4-215", "seg": [ [ [ @@ -9246,7 +10782,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20119680851063831, + "max": 0.20124113475177305 + }, "related_data": {} } } @@ -9254,7 +10793,7 @@ { "替代捆绑包": { "data": { - "uuid": "python-4-213", + "uuid": "python-4-216", "seg": [ [ [ @@ -9263,7 +10802,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20124113475177305, + "max": 0.2012854609929078 + }, "related_data": {} } } @@ -9274,7 +10816,7 @@ { "查找Python可执行文件": { "data": { - "uuid": "python-5-155", + "uuid": "python-5-151", "seg": [ [ [ @@ -9284,14 +10826,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2012854609929078, + "max": 0.20132978723404255 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-214", + "uuid": "python-4-217", "seg": [ [ [ @@ -9300,7 +10845,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2012854609929078, + "max": 0.20132978723404255 + }, "related_data": {} } } @@ -9308,7 +10856,7 @@ { "UTF-8 模式": { "data": { - "uuid": "python-4-215", + "uuid": "python-4-218", "seg": [ [ [ @@ -9317,16 +10865,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20132978723404255, + "max": 0.2013741134751773 + }, "related_data": { "qa": { "data_id": [ - "8_748057_799753", - "8_816239_911733", - "8_7455649_53438967", - "8_761123_53403585", - "8_648746_456316", - "8_1093416_1302840" + "8_748057_799753@8", + "8_816239_911733@8", + "8_7455649_53438967@8", + "8_761123_53403585@8" ] } } @@ -9350,7 +10899,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2013741134751773, + "max": 0.20137706855791962 + }, "related_data": {} } } @@ -9366,8 +10918,17 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.20137706855791962, + "max": 0.20138002364066196 + }, + "related_data": { + "qa": { + "data_id": [ + "8_1068539_1269399@8" + ] + } + } } } }, @@ -9383,14 +10944,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20138002364066196, + "max": 0.20138297872340427 + }, "related_data": {} } } } ], "data": { - "uuid": "python-5-156", + "uuid": "python-5-152", "seg": [ [ [ @@ -9398,7 +10962,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2013741134751773, + "max": 0.20138297872340427 + }, "related_data": {} } } @@ -9406,7 +10973,7 @@ { "Shebang Lines": { "data": { - "uuid": "python-5-157", + "uuid": "python-5-153", "seg": [ [ [ @@ -9415,7 +10982,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20138297872340427, + "max": 0.2013918439716312 + }, "related_data": {} } } @@ -9423,7 +10993,7 @@ { "shebang lines的参数": { "data": { - "uuid": "python-5-158", + "uuid": "python-5-154", "seg": [ [ [ @@ -9433,7 +11003,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2013918439716312, + "max": 0.20140070921985817 + }, "related_data": {} } } @@ -9454,7 +11027,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20140070921985817, + "max": 0.20140514184397162 + }, "related_data": {} } } @@ -9473,11 +11049,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20140514184397162, + "max": 0.2014095744680851 + }, "related_data": { "qa": { "data_id": [ - "8_774708_838753" + "8_774708_838753@8" ] } } @@ -9486,7 +11065,7 @@ } ], "data": { - "uuid": "python-5-159", + "uuid": "python-5-155", "seg": [ [ [ @@ -9494,7 +11073,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20140070921985817, + "max": 0.2014095744680851 + }, "related_data": {} } } @@ -9502,7 +11084,7 @@ { "诊断": { "data": { - "uuid": "python-5-160", + "uuid": "python-5-156", "seg": [ [ [ @@ -9510,14 +11092,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2014095744680851, + "max": 0.20141843971631207 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-216", + "uuid": "python-4-219", "seg": [ [ [ @@ -9527,7 +11112,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2013741134751773, + "max": 0.20141843971631207 + }, "related_data": {} } } @@ -9535,7 +11123,7 @@ { "查找模块": { "data": { - "uuid": "python-4-217", + "uuid": "python-4-220", "seg": [ [ [ @@ -9544,7 +11132,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20141843971631207, + "max": 0.2014627659574468 + }, "related_data": {} } } @@ -9555,7 +11146,7 @@ { "PyWin32": { "data": { - "uuid": "python-5-161", + "uuid": "python-5-157", "seg": [ [ [ @@ -9563,7 +11154,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2014627659574468, + "max": 0.2014775413711584 + }, "related_data": {} } } @@ -9571,7 +11165,7 @@ { "cx_Freeze": { "data": { - "uuid": "python-5-162", + "uuid": "python-5-158", "seg": [ [ [ @@ -9580,7 +11174,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2014775413711584, + "max": 0.20149231678486998 + }, "related_data": {} } } @@ -9588,7 +11185,7 @@ { "WConio": { "data": { - "uuid": "python-5-163", + "uuid": "python-5-159", "seg": [ [ [ @@ -9596,14 +11193,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20149231678486998, + "max": 0.20150709219858157 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-218", + "uuid": "python-4-221", "seg": [ [ [ @@ -9612,7 +11212,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2014627659574468, + "max": 0.20150709219858157 + }, "related_data": {} } } @@ -9620,7 +11223,7 @@ { "在Windows上编译Python": { "data": { - "uuid": "python-4-219", + "uuid": "python-4-222", "seg": [ [ [ @@ -9630,17 +11233,20 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20150709219858157, + "max": 0.2015514184397163 + }, "related_data": { "qa": { "data_id": [ - "8_725514_730229", - "8_686794_549292", - "8_160614_28626", - "8_167564_42331", - "8_222074_177441", - "8_710068_668407", - "8_987860_1152052" + "8_725514_730229@8", + "8_686794_549292@8", + "8_160614_28626@8", + "8_167564_42331@8", + "8_222074_177441@8", + "8_710068_668407@8", + "8_987860_1152052@8" ] } } @@ -9650,7 +11256,7 @@ { "其他平台": { "data": { - "uuid": "python-4-220", + "uuid": "python-4-223", "seg": [ [ [ @@ -9658,11 +11264,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2015514184397163, + "max": 0.20159574468085106 + }, "related_data": { "qa": { "data_id": [ - "8_7418051_53373897" + "8_7418051_53373897@8" ] } } @@ -9680,7 +11289,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20106382978723406, + "max": 0.20159574468085106 + }, "related_data": {} } } @@ -9694,7 +11306,7 @@ { "如何运行Python脚本": { "data": { - "uuid": "python-5-164", + "uuid": "python-5-160", "seg": [ [ [ @@ -9704,7 +11316,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20159574468085106, + "max": 0.20162529550827424 + }, "related_data": {} } } @@ -9712,7 +11327,7 @@ { "运行有图形界面的脚本": { "data": { - "uuid": "python-5-165", + "uuid": "python-5-161", "seg": [ [ [ @@ -9722,7 +11337,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20162529550827424, + "max": 0.20165484633569739 + }, "related_data": {} } } @@ -9742,17 +11360,20 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20165484633569739, + "max": 0.20166962174940897 + }, "related_data": { "qa": { "data_id": [ - "8_7455562_53438710", - "8_1033955_1229172", - "8_7431699_53400239", - "8_715179_707353", - "8_7459326_53444189", - "8_757303_1256370", - "8_1097531_1311125" + "8_7455562_53438710@8", + "8_1033955_1229172@8", + "8_7431699_53400239@8", + "8_715179_707353@8", + "8_7459326_53444189@8", + "8_757303_1256370@8", + "8_1097531_1311125@8" ] } } @@ -9770,14 +11391,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20166962174940897, + "max": 0.20168439716312056 + }, "related_data": {} } } } ], "data": { - "uuid": "python-5-166", + "uuid": "python-5-162", "seg": [ [ [ @@ -9785,11 +11409,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20165484633569739, + "max": 0.20168439716312056 + }, "related_data": { "qa": { "data_id": [ - "8_700990_590519" + "8_700990_590519@8" ] } } @@ -9798,7 +11425,7 @@ } ], "data": { - "uuid": "python-4-221", + "uuid": "python-4-224", "seg": [ [ [ @@ -9810,7 +11437,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20159574468085106, + "max": 0.20168439716312056 + }, "related_data": {} } } @@ -9818,7 +11448,7 @@ { "IDE": { "data": { - "uuid": "python-4-222", + "uuid": "python-4-225", "seg": [ [ [ @@ -9826,13 +11456,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20168439716312056, + "max": 0.20177304964539008 + }, "related_data": { "qa": { "data_id": [ - "8_7441211_53422738", - "8_160766_31217", - "8_7442277_53419090" + "8_7441211_53422738@8", + "8_160766_31217@8", + "8_7442277_53419090@8" ] } } @@ -9842,7 +11475,7 @@ { "安装额外的Python包": { "data": { - "uuid": "python-4-223", + "uuid": "python-4-226", "seg": [ [ [ @@ -9853,7 +11486,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20177304964539008, + "max": 0.20186170212765958 + }, "related_data": {} } } @@ -9861,17 +11497,21 @@ { "Mac上的图形界面编程": { "data": { - "uuid": "python-4-224", + "uuid": "python-4-227", "seg": [ [ [ "mac", "图形界面", - "编程" + "编程", + "图形界面编程" ] ] ], - "level": "1", + "level": { + "min": 0.20186170212765958, + "max": 0.20195035460992908 + }, "related_data": {} } } @@ -9879,7 +11519,7 @@ { "在Mac上分发Python应用程序": { "data": { - "uuid": "python-4-225", + "uuid": "python-4-228", "seg": [ [ [ @@ -9890,7 +11530,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20195035460992908, + "max": 0.2020390070921986 + }, "related_data": {} } } @@ -9898,7 +11541,7 @@ { "其他资源": { "data": { - "uuid": "python-4-226", + "uuid": "python-4-229", "seg": [ [ [ @@ -9906,7 +11549,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2020390070921986, + "max": 0.2021276595744681 + }, "related_data": {} } } @@ -9919,11 +11565,15 @@ [ "苹果", "系统", - "python" + "python", + "苹果系统" ] ] ], - "level": "1", + "level": { + "min": 0.20159574468085106, + "max": 0.2021276595744681 + }, "related_data": {} } } @@ -9944,11 +11594,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2021276595744681, + "max": 0.2026595744680851 + }, "related_data": { "qa": { "data_id": [ - "8_7454513_53437198" + "8_7454513_53437198@8" ] } } @@ -9964,7 +11617,7 @@ { "传入参数": { "data": { - "uuid": "python-5-167", + "uuid": "python-5-163", "seg": [ [ [ @@ -9973,7 +11626,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2026595744680851, + "max": 0.20279255319148937 + }, "related_data": {} } } @@ -9981,7 +11637,7 @@ { "交互模式": { "data": { - "uuid": "python-5-168", + "uuid": "python-5-164", "seg": [ [ [ @@ -9990,12 +11646,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20279255319148937, + "max": 0.20292553191489363 + }, "related_data": { "qa": { "data_id": [ - "8_735779_762042", - "8_1104807_1319061" + "8_735779_762042@8", + "8_1104807_1319061@8" ] } } @@ -10004,7 +11663,7 @@ } ], "data": { - "uuid": "python-4-227", + "uuid": "python-4-230", "seg": [ [ [ @@ -10013,11 +11672,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2026595744680851, + "max": 0.20292553191489363 + }, "related_data": { "qa": { "data_id": [ - "8_7462759_53448419" + "8_7462759_53448419@8" ] } } @@ -10030,24 +11692,28 @@ { "源文件的字符编码": { "data": { - "uuid": "python-5-169", + "uuid": "python-5-165", "seg": [ [ [ "源文件", "字符", - "编码" + "编码", + "字符编码" ] ] ], - "level": "1", + "level": { + "min": 0.20292553191489363, + "max": 0.20319148936170214 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-228", + "uuid": "python-4-231", "seg": [ [ [ @@ -10057,11 +11723,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20292553191489363, + "max": 0.20319148936170214 + }, "related_data": { "qa": { "data_id": [ - "8_757231_1032467" + "8_757231_1032467@8" ] } } @@ -10079,7 +11748,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2026595744680851, + "max": 0.20319148936170214 + }, "related_data": {} } } @@ -10093,7 +11765,7 @@ { "数字": { "data": { - "uuid": "python-5-170", + "uuid": "python-5-166", "seg": [ [ [ @@ -10101,11 +11773,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20319148936170214, + "max": 0.20345744680851063 + }, "related_data": { "qa": { "data_id": [ - "8_7452951_53435428" + "8_7452951_53435428@8" ] } } @@ -10114,7 +11789,7 @@ } ], "data": { - "uuid": "python-4-229", + "uuid": "python-4-232", "seg": [ [ [ @@ -10124,11 +11799,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20319148936170214, + "max": 0.20345744680851063 + }, "related_data": { "qa": { "data_id": [ - "8_7445601_53424260" + "8_7445601_53424260@8" ] } } @@ -10138,7 +11816,7 @@ { "走向编程的第一步": { "data": { - "uuid": "python-4-230", + "uuid": "python-4-233", "seg": [ [ [ @@ -10147,7 +11825,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20345744680851063, + "max": 0.20372340425531915 + }, "related_data": {} } } @@ -10163,7 +11844,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20319148936170214, + "max": 0.20372340425531915 + }, "related_data": {} } } @@ -10172,9 +11856,9 @@ "其他流程控制工具": { "children": [ { - "range函数": { + "range 函数": { "data": { - "uuid": "python-4-231", + "uuid": "python-4-234", "seg": [ [ [ @@ -10183,11 +11867,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20372340425531915, + "max": 0.20382978723404255 + }, "related_data": { "qa": { "data_id": [ - "8_7395192_53337394" + "8_7395192_53337394@8" ] } } @@ -10197,7 +11884,7 @@ { "pass语句": { "data": { - "uuid": "python-4-232", + "uuid": "python-4-235", "seg": [ [ [ @@ -10206,11 +11893,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20382978723404255, + "max": 0.20393617021276597 + }, "related_data": { "qa": { "data_id": [ - "8_742025_783242" + "8_742025_783242@8" ] } } @@ -10223,16 +11913,20 @@ { "向函数传递信息": { "data": { - "uuid": "python-5-171", + "uuid": "python-5-167", "seg": [ [ [ "函数", - "传递信息" + "传递信息", + "函数传递信息" ] ] ], - "level": "1", + "level": { + "min": 0.20393617021276597, + "max": 0.20398936170212767 + }, "related_data": {} } } @@ -10240,7 +11934,7 @@ { "实参和形参": { "data": { - "uuid": "python-5-172", + "uuid": "python-5-168", "seg": [ [ [ @@ -10251,29 +11945,36 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20398936170212767, + "max": 0.20404255319148937 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-233", + "uuid": "python-4-236", "seg": [ [ [ "定义", - "函数" + "函数", + "定义函数" ] ] ], - "level": "1", + "level": { + "min": 0.20393617021276597, + "max": 0.20404255319148937 + }, "related_data": { "qa": { "data_id": [ - "8_7419960_53377868", - "8_7433755_53404071", - "8_7433753_53404061" + "8_7419960_53377868@8", + "8_7433755_53404071@8", + "8_7433753_53404061@8" ] } } @@ -10286,7 +11987,7 @@ { "默认值参数": { "data": { - "uuid": "python-5-173", + "uuid": "python-5-169", "seg": [ [ [ @@ -10295,7 +11996,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20404255319148937, + "max": 0.20405585106382979 + }, "related_data": {} } } @@ -10303,16 +12007,20 @@ { "关键字参数": { "data": { - "uuid": "python-5-174", + "uuid": "python-5-170", "seg": [ [ [ "关键字", - "参数" + "参数", + "关键字参数" ] ] ], - "level": "1", + "level": { + "min": 0.20405585106382979, + "max": 0.20406914893617023 + }, "related_data": {} } } @@ -10329,11 +12037,15 @@ [ "位置", "关键字", - "参数" + "参数", + "关键字参数" ] ] ], - "level": "1", + "level": { + "min": 0.20406914893617023, + "max": 0.20407247340425533 + }, "related_data": {} } } @@ -10347,11 +12059,15 @@ [ "仅", "位置", - "参数" + "参数", + "仅位置" ] ] ], - "level": "1", + "level": { + "min": 0.20407247340425533, + "max": 0.20407579787234043 + }, "related_data": {} } } @@ -10365,11 +12081,15 @@ [ "仅限", "关键字", - "参数" + "参数", + "关键字参数" ] ] ], - "level": "1", + "level": { + "min": 0.20407579787234043, + "max": 0.20407912234042555 + }, "related_data": {} } } @@ -10382,18 +12102,22 @@ [ [ "函数", - "示例" + "示例", + "函数示例" ] ] ], - "level": "1", + "level": { + "min": 0.20407912234042555, + "max": 0.20408244680851065 + }, "related_data": {} } } } ], "data": { - "uuid": "python-5-175", + "uuid": "python-5-171", "seg": [ [ [ @@ -10401,7 +12125,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20406914893617023, + "max": 0.20408244680851065 + }, "related_data": {} } } @@ -10409,17 +12136,21 @@ { "任意实参列表": { "data": { - "uuid": "python-5-176", + "uuid": "python-5-172", "seg": [ [ [ "任意", "实参", - "列表" + "列表", + "实参列表" ] ] ], - "level": "1", + "level": { + "min": 0.20408244680851065, + "max": 0.20409574468085107 + }, "related_data": {} } } @@ -10427,17 +12158,21 @@ { "解包实参列表": { "data": { - "uuid": "python-5-177", + "uuid": "python-5-173", "seg": [ [ [ "解包", "实参", - "列表" + "列表", + "实参列表" ] ] ], - "level": "1", + "level": { + "min": 0.20409574468085107, + "max": 0.2041090425531915 + }, "related_data": {} } } @@ -10445,7 +12180,7 @@ { "Lambda表达式": { "data": { - "uuid": "python-5-178", + "uuid": "python-5-174", "seg": [ [ [ @@ -10454,12 +12189,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2041090425531915, + "max": 0.20412234042553193 + }, "related_data": { "qa": { "data_id": [ - "8_1063755_1261946", - "8_754809_809871" + "8_1063755_1261946@8", + "8_754809_809871@8" ] } } @@ -10469,16 +12207,20 @@ { "文档字符串": { "data": { - "uuid": "python-5-179", + "uuid": "python-5-175", "seg": [ [ [ "文档", - "字符串" + "字符串", + "文档字符串" ] ] ], - "level": "1", + "level": { + "min": 0.20412234042553193, + "max": 0.20413563829787237 + }, "related_data": {} } } @@ -10486,7 +12228,7 @@ { "函数注解": { "data": { - "uuid": "python-5-180", + "uuid": "python-5-176", "seg": [ [ [ @@ -10495,24 +12237,31 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20413563829787237, + "max": 0.2041489361702128 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-234", + "uuid": "python-4-237", "seg": [ [ [ "函数", "定义", - "详解" + "详解", + "函数定义" ] ] ], - "level": "1", + "level": { + "min": 0.20404255319148937, + "max": 0.2041489361702128 + }, "related_data": {} } } @@ -10520,7 +12269,7 @@ { "小插曲:编码风格": { "data": { - "uuid": "python-4-235", + "uuid": "python-4-238", "seg": [ [ [ @@ -10530,11 +12279,15 @@ [ [ "编码", - "风格" + "风格", + "编码风格" ] ] ], - "level": "1", + "level": { + "min": 0.2041489361702128, + "max": 0.2042553191489362 + }, "related_data": {} } } @@ -10551,7 +12304,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20372340425531915, + "max": 0.2042553191489362 + }, "related_data": {} } } @@ -10565,7 +12321,7 @@ { "用列表实现堆栈": { "data": { - "uuid": "python-5-181", + "uuid": "python-5-177", "seg": [ [ [ @@ -10574,7 +12330,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2042553191489362, + "max": 0.20428064842958463 + }, "related_data": {} } } @@ -10582,7 +12341,7 @@ { "用列表实现队列": { "data": { - "uuid": "python-5-182", + "uuid": "python-5-178", "seg": [ [ [ @@ -10591,7 +12350,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20428064842958463, + "max": 0.20430597771023304 + }, "related_data": {} } } @@ -10599,7 +12361,7 @@ { "嵌套的列表推导式": { "data": { - "uuid": "python-5-183", + "uuid": "python-5-179", "seg": [ [ [ @@ -10609,14 +12371,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20430597771023304, + "max": 0.20433130699088148 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-236", + "uuid": "python-4-239", "seg": [ [ [ @@ -10625,12 +12390,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2042553191489362, + "max": 0.20433130699088148 + }, "related_data": { "qa": { "data_id": [ - "8_7444621_53423004", - "8_7437744_53410880" + "8_7444621_53423004@8", + "8_7437744_53410880@8" ] } } @@ -10640,7 +12408,7 @@ { "del语句": { "data": { - "uuid": "python-4-237", + "uuid": "python-4-240", "seg": [ [ [ @@ -10649,7 +12417,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20433130699088148, + "max": 0.20440729483282677 + }, "related_data": {} } } @@ -10657,7 +12428,7 @@ { "循环的技巧": { "data": { - "uuid": "python-4-238", + "uuid": "python-4-241", "seg": [ [ [ @@ -10666,7 +12437,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20440729483282677, + "max": 0.20448328267477206 + }, "related_data": {} } } @@ -10674,7 +12448,7 @@ { "深入条件控制": { "data": { - "uuid": "python-4-239", + "uuid": "python-4-242", "seg": [ [ [ @@ -10683,7 +12457,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20448328267477206, + "max": 0.20455927051671732 + }, "related_data": {} } } @@ -10691,7 +12468,7 @@ { "序列和其他类型的比较": { "data": { - "uuid": "python-4-240", + "uuid": "python-4-243", "seg": [ [ [ @@ -10702,7 +12479,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20455927051671732, + "max": 0.20463525835866261 + }, "related_data": {} } } @@ -10713,18 +12493,24 @@ { "内置序列类型概览": { "data": { - "uuid": "python-5-184", + "uuid": "python-5-180", "seg": [ [ [ "内置", "序列", "类型", - "概览" + "概览", + "内置序列", + "序列类型", + "类型概览" ] ] ], - "level": "1", + "level": { + "min": 0.20463525835866261, + "max": 0.20464792299898682 + }, "related_data": {} } } @@ -10732,17 +12518,21 @@ { "元组不仅仅是不可变的列表": { "data": { - "uuid": "python-5-185", + "uuid": "python-5-181", "seg": [ [ [ "元组", "变", - "列表" + "列表", + "不仅仅是" ] ] ], - "level": "1", + "level": { + "min": 0.20464792299898682, + "max": 0.20466058763931105 + }, "related_data": {} } } @@ -10750,17 +12540,21 @@ { "序列的增量赋值": { "data": { - "uuid": "python-5-186", + "uuid": "python-5-182", "seg": [ [ [ "序列", "增量", - "赋值" + "赋值", + "增量赋值" ] ] ], - "level": "1", + "level": { + "min": 0.20466058763931105, + "max": 0.20467325227963526 + }, "related_data": {} } } @@ -10768,7 +12562,7 @@ { "list.sort方法和内置函数sorted": { "data": { - "uuid": "python-5-187", + "uuid": "python-5-183", "seg": [ [ [ @@ -10779,11 +12573,15 @@ [ "内置", "函数", - "sorted" + "sorted", + "内置函数" ] ] ], - "level": "1", + "level": { + "min": 0.20467325227963526, + "max": 0.20468591691995947 + }, "related_data": {} } } @@ -10791,22 +12589,26 @@ { "用bisect来管理已排序的序列": { "data": { - "uuid": "python-5-188", + "uuid": "python-5-184", "seg": [ [ [ "bisect", "管理", "排序", - "序列" + "序列", + "已排序" ] ] ], - "level": "1", + "level": { + "min": 0.20468591691995947, + "max": 0.2046985815602837 + }, "related_data": { "qa": { "data_id": [ - "8_7437968_53411243" + "8_7437968_53411243@8" ] } } @@ -10816,7 +12618,7 @@ { "当列表不是首选时": { "data": { - "uuid": "python-5-189", + "uuid": "python-5-185", "seg": [ [ [ @@ -10825,14 +12627,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2046985815602837, + "max": 0.2047112462006079 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-241", + "uuid": "python-4-244", "seg": [ [ [ @@ -10841,7 +12646,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20463525835866261, + "max": 0.2047112462006079 + }, "related_data": {} } } @@ -10852,7 +12660,7 @@ { "字节概要": { "data": { - "uuid": "python-5-190", + "uuid": "python-5-186", "seg": [ [ [ @@ -10861,7 +12669,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2047112462006079, + "max": 0.2047221016066001 + }, "related_data": {} } } @@ -10869,7 +12680,7 @@ { "基本的编解码器": { "data": { - "uuid": "python-5-191", + "uuid": "python-5-187", "seg": [ [ [ @@ -10877,7 +12688,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2047221016066001, + "max": 0.20473295701259228 + }, "related_data": {} } } @@ -10885,7 +12699,7 @@ { "处理文本文件": { "data": { - "uuid": "python-5-192", + "uuid": "python-5-188", "seg": [ [ [ @@ -10893,7 +12707,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20473295701259228, + "max": 0.20474381241858447 + }, "related_data": {} } } @@ -10901,7 +12718,7 @@ { "为了正确比较而规范化Unicode字符串": { "data": { - "uuid": "python-5-193", + "uuid": "python-5-189", "seg": [ [ [ @@ -10911,7 +12728,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20474381241858447, + "max": 0.20475466782457663 + }, "related_data": {} } } @@ -10919,17 +12739,21 @@ { "Unicode文本排序": { "data": { - "uuid": "python-5-194", + "uuid": "python-5-190", "seg": [ [ [ "unicode", "文本", - "排序" + "排序", + "文本排序" ] ] ], - "level": "1", + "level": { + "min": 0.20475466782457663, + "max": 0.20476552323056882 + }, "related_data": {} } } @@ -10937,7 +12761,7 @@ { "Unicode数据库": { "data": { - "uuid": "python-5-195", + "uuid": "python-5-191", "seg": [ [ [ @@ -10946,7 +12770,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20476552323056882, + "max": 0.204776378636561 + }, "related_data": {} } } @@ -10954,7 +12781,7 @@ { "支持字符串和字节序列的双模式API": { "data": { - "uuid": "python-5-196", + "uuid": "python-5-192", "seg": [ [ [ @@ -10965,15 +12792,19 @@ "字节", "序列", "双模式", - "api" + "api", + "字节序列" ] ] ], - "level": "1", + "level": { + "min": 0.204776378636561, + "max": 0.2047872340425532 + }, "related_data": { "qa": { "data_id": [ - "8_7459451_53445079" + "8_7459451_53445079@8" ] } } @@ -10982,7 +12813,7 @@ } ], "data": { - "uuid": "python-4-242", + "uuid": "python-4-245", "seg": [ [ [ @@ -10990,11 +12821,15 @@ ], [ "字节", - "序列" + "序列", + "字节序列" ] ] ], - "level": "1", + "level": { + "min": 0.2047112462006079, + "max": 0.2047872340425532 + }, "related_data": {} } } @@ -11009,7 +12844,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2042553191489362, + "max": 0.2047872340425532 + }, "related_data": {} } } @@ -11023,18 +12861,22 @@ { "以脚本方式执行模块": { "data": { - "uuid": "python-5-197", + "uuid": "python-5-193", "seg": [ [ [ "脚本", "方式", "执行", - "模块" + "模块", + "脚本方式" ] ] ], - "level": "1", + "level": { + "min": 0.2047872340425532, + "max": 0.2047998986828774 + }, "related_data": {} } } @@ -11042,7 +12884,7 @@ { "模块搜索路径": { "data": { - "uuid": "python-5-198", + "uuid": "python-5-194", "seg": [ [ [ @@ -11052,11 +12894,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2047998986828774, + "max": 0.20481256332320164 + }, "related_data": { "qa": { "data_id": [ - "8_7406339_53358780" + "8_7406339_53358780@8" ] } } @@ -11066,24 +12911,28 @@ { "“已编译的” Python文件": { "data": { - "uuid": "python-5-199", + "uuid": "python-5-195", "seg": [ [ [ "编译", "python", - "文件" + "文件", + "已编译" ] ] ], - "level": "1", + "level": { + "min": 0.20481256332320164, + "max": 0.20482522796352584 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-243", + "uuid": "python-4-246", "seg": [ [ [ @@ -11092,7 +12941,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2047872340425532, + "max": 0.20482522796352584 + }, "related_data": {} } } @@ -11100,24 +12952,28 @@ { "标准模块": { "data": { - "uuid": "python-4-244", + "uuid": "python-4-247", "seg": [ [ [ "标准", - "模块" + "模块", + "标准模块" ] ] ], - "level": "1", + "level": { + "min": 0.20482522796352584, + "max": 0.2048632218844985 + }, "related_data": {} } } }, { - "dir函数": { + "dir 函数": { "data": { - "uuid": "python-4-245", + "uuid": "python-4-248", "seg": [ [ [ @@ -11126,7 +12982,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2048632218844985, + "max": 0.20490121580547113 + }, "related_data": {} } } @@ -11137,7 +12996,7 @@ { "从包中导入 *": { "data": { - "uuid": "python-5-200", + "uuid": "python-5-196", "seg": [ [ [ @@ -11146,11 +13005,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20490121580547113, + "max": 0.20491388044579534 + }, "related_data": { "qa": { "data_id": [ - "8_1084971_1291392" + "8_1084971_1291392@8" ] } } @@ -11160,7 +13022,7 @@ { "子包参考": { "data": { - "uuid": "python-5-201", + "uuid": "python-5-197", "seg": [ [ [ @@ -11170,7 +13032,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20491388044579534, + "max": 0.20492654508611957 + }, "related_data": {} } } @@ -11178,7 +13043,7 @@ { "多目录中的包": { "data": { - "uuid": "python-5-202", + "uuid": "python-5-198", "seg": [ [ [ @@ -11187,14 +13052,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20492654508611957, + "max": 0.20493920972644378 + }, "related_data": { "qa": { "data_id": [ - "8_385495_422819", - "8_356293_371730", - "8_771448_834056", - "8_700745_589833" + "8_385495_422819@8", + "8_356293_371730@8", + "8_771448_834056@8", + "8_700745_589833@8" ] } } @@ -11203,7 +13071,7 @@ } ], "data": { - "uuid": "python-4-246", + "uuid": "python-4-249", "seg": [ [ [ @@ -11211,7 +13079,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20490121580547113, + "max": 0.20493920972644378 + }, "related_data": {} } } @@ -11219,7 +13090,7 @@ { "安装第三方模块": { "data": { - "uuid": "python-4-247", + "uuid": "python-4-250", "seg": [ [ [ @@ -11228,13 +13099,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20493920972644378, + "max": 0.20497720364741642 + }, "related_data": { "qa": { "data_id": [ - "8_237219_217099", - "8_7403121_53351359", - "8_202253_126613" + "8_237219_217099@8", + "8_7403121_53351359@8", + "8_202253_126613@8", + "8_6182731_43026343@8" ] } } @@ -11244,7 +13119,7 @@ { "Pillow": { "data": { - "uuid": "python-4-248", + "uuid": "python-4-251", "seg": [ [ [ @@ -11252,7 +13127,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20497720364741642, + "max": 0.20501519756838907 + }, "related_data": {} } } @@ -11260,7 +13138,7 @@ { "requests": { "data": { - "uuid": "python-4-249", + "uuid": "python-4-252", "seg": [ [ [ @@ -11268,20 +13146,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20501519756838907, + "max": 0.2050531914893617 + }, "related_data": { "qa": { "data_id": [ - "8_7422629_53381336", - "8_1093148_1302277", - "8_7445044_53423605", - "8_1056835_1253886", - "8_7455246_53438096", - "8_1047358_1244368", - "8_1086125_1292939", - "8_7418209_53374117", - "8_765927_824952", - "8_688315_553853" + "8_7422629_53381336@8", + "8_1915276_9431451@8", + "8_1093148_1302277@8", + "8_7445044_53423605@8", + "8_1056835_1253886@8", + "8_7455246_53438096@8", + "8_1047358_1244368@8", + "8_1086125_1292939@8", + "8_7418209_53374117@8", + "8_765927_824952@8" ] } } @@ -11291,7 +13172,7 @@ { "chardet": { "data": { - "uuid": "python-4-250", + "uuid": "python-4-253", "seg": [ [ [ @@ -11299,7 +13180,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2050531914893617, + "max": 0.20509118541033436 + }, "related_data": {} } } @@ -11307,7 +13191,7 @@ { "psutil": { "data": { - "uuid": "python-4-251", + "uuid": "python-4-254", "seg": [ [ [ @@ -11315,7 +13199,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20509118541033436, + "max": 0.205129179331307 + }, "related_data": {} } } @@ -11323,7 +13210,7 @@ { "cmath和复数": { "data": { - "uuid": "python-4-252", + "uuid": "python-4-255", "seg": [ [ [ @@ -11334,7 +13221,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.205129179331307, + "max": 0.20516717325227965 + }, "related_data": {} } } @@ -11342,7 +13232,7 @@ { "回到未来": { "data": { - "uuid": "python-4-253", + "uuid": "python-4-256", "seg": [ [ [ @@ -11350,7 +13240,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20516717325227965, + "max": 0.2052051671732523 + }, "related_data": {} } } @@ -11358,16 +13251,20 @@ { "模块就是程序": { "data": { - "uuid": "python-4-254", + "uuid": "python-4-257", "seg": [ [ [ "模块", - "程序" + "程序", + "就是程序" ] ] ], - "level": "1", + "level": { + "min": 0.2052051671732523, + "max": 0.20524316109422494 + }, "related_data": {} } } @@ -11375,7 +13272,7 @@ { "模块是用来下定义的": { "data": { - "uuid": "python-4-255", + "uuid": "python-4-258", "seg": [ [ [ @@ -11384,7 +13281,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20524316109422494, + "max": 0.2052811550151976 + }, "related_data": {} } } @@ -11392,7 +13292,7 @@ { "让模块可用": { "data": { - "uuid": "python-4-256", + "uuid": "python-4-259", "seg": [ [ [ @@ -11401,7 +13301,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2052811550151976, + "max": 0.20531914893617023 + }, "related_data": {} } } @@ -11416,7 +13319,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2047872340425532, + "max": 0.20531914893617023 + }, "related_data": {} } } @@ -11430,26 +13336,32 @@ { "格式化字符串字面值": { "data": { - "uuid": "python-5-203", + "uuid": "python-5-199", "seg": [ [ [ "格式化", "字符串", "字", - "面值" + "面值", + "格式化字符串", + "字符串字", + "字面值" ] ] ], - "level": "1", + "level": { + "min": 0.20531914893617023, + "max": 0.2053523936170213 + }, "related_data": {} } } }, { - "字符串format方法": { + "字符串format 方法": { "data": { - "uuid": "python-5-204", + "uuid": "python-5-200", "seg": [ [ [ @@ -11460,13 +13372,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2053523936170213, + "max": 0.20538563829787237 + }, "related_data": { "qa": { "data_id": [ - "8_747724_799207", - "8_7426083_53388848", - "8_654100_463476" + "8_747724_799207@8", + "8_7426083_53388848@8", + "8_654100_463476@8" ] } } @@ -11476,17 +13391,22 @@ { "手动格式化字符串": { "data": { - "uuid": "python-5-205", + "uuid": "python-5-201", "seg": [ [ [ "手动", "格式化", - "字符串" + "字符串", + "手动格式化", + "格式化字符串" ] ] ], - "level": "1", + "level": { + "min": 0.20538563829787237, + "max": 0.20541888297872343 + }, "related_data": {} } } @@ -11494,25 +13414,31 @@ { "旧式字符串格式化方法": { "data": { - "uuid": "python-5-206", + "uuid": "python-5-202", "seg": [ [ [ "旧式", "字符串", "格式化", - "方法" + "方法", + "旧式字符串", + "字符串格式化", + "格式化方法" ] ] ], - "level": "1", + "level": { + "min": 0.20541888297872343, + "max": 0.2054521276595745 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-257", + "uuid": "python-4-260", "seg": [ [ [ @@ -11521,20 +13447,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20531914893617023, + "max": 0.2054521276595745 + }, "related_data": { "qa": { "data_id": [ - "8_7418799_53375290", - "8_7462835_53448532", - "8_7412112_53363289", - "8_7439132_53412990", - "8_1062626_1260468", - "8_7395892_53338975", - "8_7455519_53438632", - "8_7457477_53441728", - "8_205829_137017", - "8_7459737_53444735" + "8_7418799_53375290@8", + "8_7462835_53448532@8", + "8_7412112_53363289@8", + "8_7439132_53412990@8", + "8_1062626_1260468@8", + "8_7395892_53338975@8", + "8_7455519_53438632@8", + "8_7457477_53441728@8", + "8_205829_137017@8", + "8_7459737_53444735@8" ] } } @@ -11547,17 +13476,21 @@ { "文件对象的方法": { "data": { - "uuid": "python-5-207", + "uuid": "python-5-203", "seg": [ [ [ "文件", "对象", - "方法" + "方法", + "文件对象" ] ] ], - "level": "1", + "level": { + "min": 0.2054521276595745, + "max": 0.20547872340425533 + }, "related_data": {} } } @@ -11565,18 +13498,22 @@ { "使用json保存结构化数据": { "data": { - "uuid": "python-5-208", + "uuid": "python-5-204", "seg": [ [ [ "json", "保存", "结构化", - "数据" + "数据", + "结构化数据" ] ] ], - "level": "1", + "level": { + "min": 0.20547872340425533, + "max": 0.2055053191489362 + }, "related_data": {} } } @@ -11584,7 +13521,7 @@ { "文件读写过程": { "data": { - "uuid": "python-5-209", + "uuid": "python-5-205", "seg": [ [ [ @@ -11594,15 +13531,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2055053191489362, + "max": 0.20553191489361702 + }, "related_data": { "qa": { "data_id": [ - "8_7415651_53369180", - "8_7431416_53399784", - "8_7411634_53362601", - "8_172864_51802", - "8_701610_591488" + "8_7415651_53369180@8", + "8_7431416_53399784@8", + "8_7411634_53362601@8", + "8_172864_51802@8", + "8_701610_591488@8" ] } } @@ -11612,7 +13552,7 @@ { "用shelve模块保存变量": { "data": { - "uuid": "python-5-210", + "uuid": "python-5-206", "seg": [ [ [ @@ -11623,7 +13563,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20553191489361702, + "max": 0.2055585106382979 + }, "related_data": {} } } @@ -11631,7 +13574,7 @@ { "用pprint.pformat函数保存变量": { "data": { - "uuid": "python-5-211", + "uuid": "python-5-207", "seg": [ [ [ @@ -11645,14 +13588,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2055585106382979, + "max": 0.20558510638297872 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-258", + "uuid": "python-4-261", "seg": [ [ [ @@ -11661,13 +13607,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2054521276595745, + "max": 0.20558510638297872 + }, "related_data": { "qa": { "data_id": [ - "8_7461911_53447346", - "8_7461476_53446601", - "8_7450243_53430801" + "8_7461911_53447346@8", + "8_7461476_53446601@8", + "8_7450243_53430801@8" ] } } @@ -11677,7 +13626,7 @@ { "使用input函数输入": { "data": { - "uuid": "python-4-259", + "uuid": "python-4-262", "seg": [ [ [ @@ -11687,14 +13636,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20558510638297872, + "max": 0.20571808510638298 + }, "related_data": { "qa": { "data_id": [ - "8_7449233_53429448", - "8_7420692_53378911", - "8_7448210_53428263", - "8_750470_803545" + "8_7449233_53429448@8", + "8_7420692_53378911@8", + "8_7448210_53428263@8", + "8_750470_803545@8" ] } } @@ -11704,7 +13656,7 @@ { "使用print函数输出": { "data": { - "uuid": "python-4-260", + "uuid": "python-4-263", "seg": [ [ [ @@ -11714,18 +13666,21 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20571808510638298, + "max": 0.20585106382978724 + }, "related_data": { "qa": { "data_id": [ - "8_1078163_1282547", - "8_214673_159368", - "8_7458648_53443290", - "8_355220_368490", - "8_752199_806213", - "8_748186_799968", - "8_1092844_1301493", - "8_1096122_1308075" + "8_1078163_1282547@8", + "8_214673_159368@8", + "8_7458648_53443290@8", + "8_355220_368490@8", + "8_752199_806213@8", + "8_748186_799968@8", + "8_1092844_1301493@8", + "8_1096122_1308075@8" ] } } @@ -11745,7 +13700,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20531914893617023, + "max": 0.20585106382978724 + }, "related_data": {} } } @@ -11756,15 +13714,19 @@ { "句法错误": { "data": { - "uuid": "python-4-261", + "uuid": "python-4-264", "seg": [ [ [ - "句法" + "句法", + "句法错误" ] ] ], - "level": "1", + "level": { + "min": 0.20585106382978724, + "max": 0.20589198036006548 + }, "related_data": {} } } @@ -11772,7 +13734,7 @@ { "异常": { "data": { - "uuid": "python-4-262", + "uuid": "python-4-265", "seg": [ [ [ @@ -11780,7 +13742,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20589198036006548, + "max": 0.20593289689034372 + }, "related_data": {} } } @@ -11788,7 +13753,7 @@ { "处理异常": { "data": { - "uuid": "python-4-263", + "uuid": "python-4-266", "seg": [ [ [ @@ -11796,11 +13761,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20593289689034372, + "max": 0.20597381342062193 + }, "related_data": { "qa": { "data_id": [ - "8_202487_127554" + "8_202487_127554@8" ] } } @@ -11810,7 +13778,7 @@ { "触发异常": { "data": { - "uuid": "python-4-264", + "uuid": "python-4-267", "seg": [ [ [ @@ -11819,7 +13787,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20597381342062193, + "max": 0.20601472995090017 + }, "related_data": {} } } @@ -11827,16 +13798,20 @@ { "异常链": { "data": { - "uuid": "python-4-265", + "uuid": "python-4-268", "seg": [ [ [ "异常", - "链" + "链", + "异常链" ] ] ], - "level": "1", + "level": { + "min": 0.20601472995090017, + "max": 0.2060556464811784 + }, "related_data": {} } } @@ -11844,7 +13819,7 @@ { "用户自定义异常": { "data": { - "uuid": "python-4-266", + "uuid": "python-4-269", "seg": [ [ [ @@ -11854,15 +13829,24 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.2060556464811784, + "max": 0.20609656301145665 + }, + "related_data": { + "qa": { + "data_id": [ + "8_6386932_44841254@8" + ] + } + } } } }, { "定义清理操作": { "data": { - "uuid": "python-4-267", + "uuid": "python-4-270", "seg": [ [ [ @@ -11872,7 +13856,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20609656301145665, + "max": 0.20613747954173486 + }, "related_data": {} } } @@ -11880,7 +13867,7 @@ { "预定义的清理操作": { "data": { - "uuid": "python-4-268", + "uuid": "python-4-271", "seg": [ [ [ @@ -11891,7 +13878,30 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20613747954173486, + "max": 0.2061783960720131 + }, + "related_data": {} + } + } + }, + { + "异常是什么": { + "data": { + "uuid": "python-4-272", + "seg": [ + [ + [ + "异常", + "异常是" + ] + ] + ], + "level": { + "min": 0.2061783960720131, + "max": 0.20621931260229134 + }, "related_data": {} } } @@ -11902,24 +13912,28 @@ { "自定义的异常类": { "data": { - "uuid": "python-5-212", + "uuid": "python-5-208", "seg": [ [ [ "自定义", "异常", - "类" + "类", + "异常类" ] ] ], - "level": "1", + "level": { + "min": 0.20621931260229134, + "max": 0.20626022913256958 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-269", + "uuid": "python-4-273", "seg": [ [ [ @@ -11930,29 +13944,194 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20621931260229134, + "max": 0.20626022913256958 + }, "related_data": { "qa": { "data_id": [ - "8_7433278_53403240", - "8_7397571_53342669", - "8_7425072_53386245", - "8_672117_496732", - "8_7427640_53392251", - "8_7397803_53343221", - "8_682704_537563", - "8_7415829_53369414", - "8_869417_1000592" + "8_7433278_53403240@8", + "8_7397571_53342669@8", + "8_7425072_53386245@8", + "8_672117_496732@8", + "8_7427640_53392251@8", + "8_7397803_53343221@8", + "8_682704_537563@8", + "8_869417_1000592@8" ] } } } } }, + { + "捕获异常": { + "children": [ + { + "不用提供参数": { + "data": { + "uuid": "python-5-209", + "seg": [ + [ + [ + "不用", + "提供", + "参数" + ] + ] + ], + "level": { + "min": 0.20626022913256958, + "max": 0.20626607435118074 + }, + "related_data": {} + } + } + }, + { + "多个except子句": { + "data": { + "uuid": "python-5-210", + "seg": [ + [ + [ + "except", + "子句" + ] + ] + ], + "level": { + "min": 0.20626607435118074, + "max": 0.20627191956979193 + }, + "related_data": { + "qa": { + "data_id": [ + "8_7433336_53403374@8" + ] + } + } + } + } + }, + { + "一箭双雕": { + "data": { + "uuid": "python-5-211", + "seg": [ + [ + [ + "一箭双雕" + ] + ] + ], + "level": { + "min": 0.20627191956979193, + "max": 0.2062777647884031 + }, + "related_data": {} + } + } + }, + { + "捕获对象": { + "data": { + "uuid": "python-5-212", + "seg": [ + [ + [ + "捕获", + "对象" + ] + ] + ], + "level": { + "min": 0.2062777647884031, + "max": 0.20628361000701428 + }, + "related_data": {} + } + } + }, + { + "一网打尽": { + "data": { + "uuid": "python-5-213", + "seg": [ + [ + [ + "一网打尽" + ] + ] + ], + "level": { + "min": 0.20628361000701428, + "max": 0.20628945522562545 + }, + "related_data": {} + } + } + }, + { + "万事大吉时": { + "data": { + "uuid": "python-5-214", + "seg": [ + [ + [ + "万事大吉" + ] + ] + ], + "level": { + "min": 0.20628945522562545, + "max": 0.20629530044423663 + }, + "related_data": {} + } + } + }, + { + "最后": { + "data": { + "uuid": "python-5-215", + "seg": [ + [ + [] + ] + ], + "level": { + "min": 0.20629530044423663, + "max": 0.2063011456628478 + }, + "related_data": {} + } + } + } + ], + "data": { + "uuid": "python-4-274", + "seg": [ + [ + [ + "捕获", + "异常" + ] + ] + ], + "level": { + "min": 0.20626022913256958, + "max": 0.2063011456628478 + }, + "related_data": {} + } + } + }, { "异常之禅": { "data": { - "uuid": "python-4-270", + "uuid": "python-4-275", "seg": [ [ [ @@ -11961,7 +14140,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2063011456628478, + "max": 0.20634206219312604 + }, "related_data": {} } } @@ -11969,7 +14151,7 @@ { "不那么异常的情况": { "data": { - "uuid": "python-4-271", + "uuid": "python-4-276", "seg": [ [ [ @@ -11978,15 +14160,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20634206219312604, + "max": 0.20638297872340428 + }, "related_data": { "qa": { "data_id": [ - "8_7446806_53426362", - "8_7397290_53342042", - "8_7410791_53361591", - "8_7447031_53426569", - "8_7412495_53363925" + "8_7446806_53426362@8", + "8_7397290_53342042@8", + "8_7410791_53361591@8", + "8_7447031_53426569@8", + "8_7412495_53363925@8" ] } } @@ -12004,7 +14189,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20585106382978724, + "max": 0.20638297872340428 + }, "related_data": {} } } @@ -12015,7 +14203,7 @@ { "操作系统接口": { "data": { - "uuid": "python-4-272", + "uuid": "python-4-277", "seg": [ [ [ @@ -12024,7 +14212,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20638297872340428, + "max": 0.20640957446808514 + }, "related_data": {} } } @@ -12032,16 +14223,20 @@ { "文件通配符": { "data": { - "uuid": "python-4-273", + "uuid": "python-4-278", "seg": [ [ [ "文件", - "通配符" + "通配符", + "文件通配符" ] ] ], - "level": "1", + "level": { + "min": 0.20640957446808514, + "max": 0.20643617021276597 + }, "related_data": {} } } @@ -12049,16 +14244,20 @@ { "命令行参数": { "data": { - "uuid": "python-4-274", + "uuid": "python-4-279", "seg": [ [ [ "命令行", - "参数" + "参数", + "命令行参数" ] ] ], - "level": "1", + "level": { + "min": 0.20643617021276597, + "max": 0.20646276595744684 + }, "related_data": {} } } @@ -12066,7 +14265,7 @@ { "错误输出重定向和程序终止": { "data": { - "uuid": "python-4-275", + "uuid": "python-4-280", "seg": [ [ [ @@ -12079,7 +14278,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20646276595744684, + "max": 0.20648936170212767 + }, "related_data": {} } } @@ -12087,16 +14289,20 @@ { "字符串模式匹配": { "data": { - "uuid": "python-4-276", + "uuid": "python-4-281", "seg": [ [ [ "字符串", - "模式匹配" + "模式匹配", + "字符串模式匹配" ] ] ], - "level": "1", + "level": { + "min": 0.20648936170212767, + "max": 0.20651595744680853 + }, "related_data": {} } } @@ -12104,7 +14310,7 @@ { "数学": { "data": { - "uuid": "python-4-277", + "uuid": "python-4-282", "seg": [ [ [ @@ -12112,7 +14318,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20651595744680853, + "max": 0.20654255319148937 + }, "related_data": {} } } @@ -12120,7 +14329,7 @@ { "互联网访问": { "data": { - "uuid": "python-4-278", + "uuid": "python-4-283", "seg": [ [ [ @@ -12129,7 +14338,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20654255319148937, + "max": 0.20656914893617023 + }, "related_data": {} } } @@ -12137,7 +14349,7 @@ { "日期和时间": { "data": { - "uuid": "python-4-279", + "uuid": "python-4-284", "seg": [ [ [ @@ -12148,11 +14360,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20656914893617023, + "max": 0.20659574468085107 + }, "related_data": { "qa": { "data_id": [ - "8_1052132_1249694" + "8_1052132_1249694@8" ] } } @@ -12162,7 +14377,7 @@ { "数据压缩": { "data": { - "uuid": "python-4-280", + "uuid": "python-4-285", "seg": [ [ [ @@ -12170,7 +14385,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20659574468085107, + "max": 0.20662234042553193 + }, "related_data": {} } } @@ -12178,7 +14396,7 @@ { "性能测量": { "data": { - "uuid": "python-4-281", + "uuid": "python-4-286", "seg": [ [ [ @@ -12187,7 +14405,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20662234042553193, + "max": 0.2066489361702128 + }, "related_data": {} } } @@ -12195,7 +14416,7 @@ { "质量控制": { "data": { - "uuid": "python-4-282", + "uuid": "python-4-287", "seg": [ [ [ @@ -12204,7 +14425,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2066489361702128, + "max": 0.20667553191489363 + }, "related_data": {} } } @@ -12212,16 +14436,20 @@ { "自带电池": { "data": { - "uuid": "python-4-283", + "uuid": "python-4-288", "seg": [ [ [ "自带", - "电池" + "电池", + "自带电池" ] ] ], - "level": "1", + "level": { + "min": 0.20667553191489363, + "max": 0.2067021276595745 + }, "related_data": {} } } @@ -12229,7 +14457,7 @@ { "格式化输出": { "data": { - "uuid": "python-4-284", + "uuid": "python-4-289", "seg": [ [ [ @@ -12238,11 +14466,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2067021276595745, + "max": 0.20672872340425533 + }, "related_data": { "qa": { "data_id": [ - "8_720370_714855" + "8_720370_714855@8" ] } } @@ -12252,7 +14483,7 @@ { "模板": { "data": { - "uuid": "python-4-285", + "uuid": "python-4-290", "seg": [ [ [ @@ -12260,7 +14491,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20672872340425533, + "max": 0.2067553191489362 + }, "related_data": {} } } @@ -12268,18 +14502,24 @@ { "使用二进制数据记录格式": { "data": { - "uuid": "python-4-286", + "uuid": "python-4-291", "seg": [ [ [ "二进制", "数据", "记录", - "格式" + "格式", + "二进制数据", + "数据记录", + "记录格式" ] ] ], - "level": "1", + "level": { + "min": 0.2067553191489362, + "max": 0.20678191489361702 + }, "related_data": {} } } @@ -12287,7 +14527,7 @@ { "多线程": { "data": { - "uuid": "python-4-287", + "uuid": "python-4-292", "seg": [ [ [ @@ -12295,7 +14535,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20678191489361702, + "max": 0.2068085106382979 + }, "related_data": {} } } @@ -12303,7 +14546,7 @@ { "日志": { "data": { - "uuid": "python-4-288", + "uuid": "python-4-293", "seg": [ [ [ @@ -12311,7 +14554,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2068085106382979, + "max": 0.20683510638297872 + }, "related_data": {} } } @@ -12319,7 +14565,7 @@ { "弱引用": { "data": { - "uuid": "python-4-289", + "uuid": "python-4-294", "seg": [ [ [ @@ -12328,7 +14574,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20683510638297872, + "max": 0.20686170212765959 + }, "related_data": {} } } @@ -12336,7 +14585,7 @@ { "用于操作列表的工具": { "data": { - "uuid": "python-4-290", + "uuid": "python-4-295", "seg": [ [ [ @@ -12347,7 +14596,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20686170212765959, + "max": 0.20688829787234042 + }, "related_data": {} } } @@ -12355,7 +14607,7 @@ { "十进制浮点运算": { "data": { - "uuid": "python-4-291", + "uuid": "python-4-296", "seg": [ [ [ @@ -12364,7 +14616,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20688829787234042, + "max": 0.20691489361702128 + }, "related_data": {} } } @@ -12377,11 +14632,15 @@ [ "标准", "库", - "简介" + "简介", + "标准库" ] ] ], - "level": "1", + "level": { + "min": 0.20638297872340428, + "max": 0.20691489361702128 + }, "related_data": {} } } @@ -12392,7 +14651,7 @@ { "Tab补全和编辑历史": { "data": { - "uuid": "python-4-292", + "uuid": "python-4-297", "seg": [ [ [ @@ -12401,11 +14660,15 @@ ], [ "编辑", - "历史" + "历史", + "编辑历史" ] ] ], - "level": "1", + "level": { + "min": 0.20691489361702128, + "max": 0.2071808510638298 + }, "related_data": {} } } @@ -12413,7 +14676,7 @@ { "默认交互式解释器的替代品": { "data": { - "uuid": "python-4-293", + "uuid": "python-4-298", "seg": [ [ [ @@ -12424,7 +14687,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2071808510638298, + "max": 0.20744680851063832 + }, "related_data": {} } } @@ -12440,11 +14706,15 @@ ], [ "编辑", - "历史" + "历史", + "编辑历史" ] ] ], - "level": "1", + "level": { + "min": 0.20691489361702128, + "max": 0.20744680851063832 + }, "related_data": {} } } @@ -12455,15 +14725,19 @@ { "表示性错误": { "data": { - "uuid": "python-4-294", + "uuid": "python-4-299", "seg": [ [ [ - "性" + "性", + "性错误" ] ] ], - "level": "1", + "level": { + "min": 0.20744680851063832, + "max": 0.20797872340425533 + }, "related_data": {} } } @@ -12475,7 +14749,8 @@ [ [ "浮点", - "算术" + "算术", + "浮点算术" ] ], [ @@ -12485,7 +14760,10 @@ [] ] ], - "level": "1", + "level": { + "min": 0.20744680851063832, + "max": 0.20797872340425533 + }, "related_data": {} } } @@ -12496,13 +14774,16 @@ { "其他实现": { "data": { - "uuid": "python-4-295", + "uuid": "python-4-300", "seg": [ [ [] ] ], - "level": "1", + "level": { + "min": 0.20797872340425533, + "max": 0.20815602836879435 + }, "related_data": {} } } @@ -12510,7 +14791,7 @@ { "标注": { "data": { - "uuid": "python-4-296", + "uuid": "python-4-301", "seg": [ [ [ @@ -12518,7 +14799,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20815602836879435, + "max": 0.20833333333333334 + }, "related_data": {} } } @@ -12526,7 +14810,7 @@ { "可用性注释": { "data": { - "uuid": "python-4-297", + "uuid": "python-4-302", "seg": [ [ [ @@ -12535,7 +14819,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20833333333333334, + "max": 0.20851063829787236 + }, "related_data": {} } } @@ -12550,7 +14837,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20797872340425533, + "max": 0.20851063829787236 + }, "related_data": {} } } @@ -12561,7 +14851,7 @@ { "行结构": { "data": { - "uuid": "python-4-298", + "uuid": "python-4-303", "seg": [ [ [ @@ -12569,15 +14859,24 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.20851063829787236, + "max": 0.20861702127659576 + }, + "related_data": { + "qa": { + "data_id": [ + "8_7443229_53420290@8" + ] + } + } } } }, { "其他形符": { "data": { - "uuid": "python-4-299", + "uuid": "python-4-304", "seg": [ [ [ @@ -12585,7 +14884,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20861702127659576, + "max": 0.20872340425531916 + }, "related_data": {} } } @@ -12593,16 +14895,20 @@ { "字面值": { "data": { - "uuid": "python-4-300", + "uuid": "python-4-305", "seg": [ [ [ "字", - "面值" + "面值", + "字面值" ] ] ], - "level": "1", + "level": { + "min": 0.20872340425531916, + "max": 0.20882978723404258 + }, "related_data": {} } } @@ -12613,21 +14919,25 @@ { "赋值运算符": { "data": { - "uuid": "python-5-213", + "uuid": "python-5-216", "seg": [ [ [ "赋值", - "运算符" + "运算符", + "赋值运算符" ] ] ], - "level": "1", + "level": { + "min": 0.20882978723404258, + "max": 0.20885638297872344 + }, "related_data": { "qa": { "data_id": [ - "8_774122_838025", - "8_7460259_53445479" + "8_774122_838025@8", + "8_7460259_53445479@8" ] } } @@ -12637,7 +14947,7 @@ { "比较(关系)运算符": { "data": { - "uuid": "python-5-214", + "uuid": "python-5-217", "seg": [ [ [ @@ -12646,7 +14956,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20885638297872344, + "max": 0.20888297872340428 + }, "related_data": {} } } @@ -12654,16 +14967,20 @@ { "逻辑运算符": { "data": { - "uuid": "python-5-215", + "uuid": "python-5-218", "seg": [ [ [ "逻辑", - "运算符" + "运算符", + "逻辑运算符" ] ] ], - "level": "1", + "level": { + "min": 0.20888297872340428, + "max": 0.2089095744680851 + }, "related_data": {} } } @@ -12671,7 +14988,7 @@ { "位运算符": { "data": { - "uuid": "python-5-216", + "uuid": "python-5-219", "seg": [ [ [ @@ -12680,13 +14997,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2089095744680851, + "max": 0.20893617021276598 + }, "related_data": { "qa": { "data_id": [ - "8_7423742_53383866", - "8_7450673_53431696", - "8_7444550_53422769" + "8_7423742_53383866@8", + "8_7444550_53422769@8" ] } } @@ -12695,7 +15014,7 @@ } ], "data": { - "uuid": "python-4-301", + "uuid": "python-4-306", "seg": [ [ [ @@ -12703,7 +15022,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20882978723404258, + "max": 0.20893617021276598 + }, "related_data": {} } } @@ -12711,7 +15033,7 @@ { "分隔符": { "data": { - "uuid": "python-4-302", + "uuid": "python-4-307", "seg": [ [ [ @@ -12719,7 +15041,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20893617021276598, + "max": 0.20904255319148937 + }, "related_data": {} } } @@ -12735,7 +15060,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20851063829787236, + "max": 0.20904255319148937 + }, "related_data": {} } } @@ -12746,18 +15074,24 @@ { "标准类型层级结构": { "data": { - "uuid": "python-4-303", + "uuid": "python-4-308", "seg": [ [ [ "标准", "类型", "层级", - "结构" + "结构", + "标准类型", + "类型层级", + "层级结构" ] ] ], - "level": "1", + "level": { + "min": 0.20904255319148937, + "max": 0.20921985815602837 + }, "related_data": {} } } @@ -12765,16 +15099,20 @@ { "特殊方法名称": { "data": { - "uuid": "python-4-304", + "uuid": "python-4-309", "seg": [ [ [ "方法", - "名称" + "名称", + "方法名称" ] ] ], - "level": "1", + "level": { + "min": 0.20921985815602837, + "max": 0.2093971631205674 + }, "related_data": {} } } @@ -12785,7 +15123,7 @@ { "生成器如何进化成协程": { "data": { - "uuid": "python-5-217", + "uuid": "python-5-220", "seg": [ [ [ @@ -12796,7 +15134,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2093971631205674, + "max": 0.20942249240121583 + }, "related_data": {} } } @@ -12804,7 +15145,7 @@ { "用作协程的生成器的基本行为": { "data": { - "uuid": "python-5-218", + "uuid": "python-5-221", "seg": [ [ [ @@ -12814,7 +15155,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20942249240121583, + "max": 0.20944782168186424 + }, "related_data": {} } } @@ -12822,18 +15166,22 @@ { "预激协程的装饰器": { "data": { - "uuid": "python-5-219", + "uuid": "python-5-222", "seg": [ [ [ "预激", "协程", "装饰", - "器" + "器", + "装饰器" ] ] ], - "level": "1", + "level": { + "min": 0.20944782168186424, + "max": 0.20947315096251268 + }, "related_data": {} } } @@ -12841,20 +15189,24 @@ { "让协程返回值": { "data": { - "uuid": "python-5-220", + "uuid": "python-5-223", "seg": [ [ [ "协程", - "返回值" + "返回值", + "协程返回值" ] ] ], - "level": "1", + "level": { + "min": 0.20947315096251268, + "max": 0.2094984802431611 + }, "related_data": { "qa": { "data_id": [ - "8_7435927_53406943" + "8_7435927_53406943@8" ] } } @@ -12864,7 +15216,7 @@ { "使用yield from": { "data": { - "uuid": "python-5-221", + "uuid": "python-5-224", "seg": [ [ [ @@ -12873,7 +15225,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2094984802431611, + "max": 0.20952380952380953 + }, "related_data": {} } } @@ -12881,7 +15236,7 @@ { "yield from的意义": { "data": { - "uuid": "python-5-222", + "uuid": "python-5-225", "seg": [ [ [ @@ -12891,15 +15246,24 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.20952380952380953, + "max": 0.20954913880445794 + }, + "related_data": { + "qa": { + "data_id": [ + "8_1641721_6769631@8" + ] + } + } } } }, { "使用案例:使用协程做离散事件仿真": { "data": { - "uuid": "python-5-223", + "uuid": "python-5-226", "seg": [ [ [ @@ -12916,14 +15280,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20954913880445794, + "max": 0.20957446808510638 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-305", + "uuid": "python-4-310", "seg": [ [ [ @@ -12931,7 +15298,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2093971631205674, + "max": 0.20957446808510638 + }, "related_data": {} } } @@ -12946,7 +15316,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20904255319148937, + "max": 0.20957446808510638 + }, "related_data": {} } } @@ -12957,7 +15330,7 @@ { "程序的结构": { "data": { - "uuid": "python-4-306", + "uuid": "python-4-311", "seg": [ [ [ @@ -12966,14 +15339,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20957446808510638, + "max": 0.2098404255319149 + }, "related_data": { "qa": { "data_id": [ - "8_7451367_53432577", - "8_7432013_53401083", - "8_748030_799840", - "8_7435548_53406317" + "8_7451367_53432577@8", + "8_7432013_53401083@8", + "8_748030_799840@8", + "8_7435548_53406317@8" ] } } @@ -12983,7 +15359,7 @@ { "命名与绑定": { "data": { - "uuid": "python-4-307", + "uuid": "python-4-312", "seg": [ [ [ @@ -12994,7 +15370,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2098404255319149, + "max": 0.21010638297872342 + }, "related_data": {} } } @@ -13010,7 +15389,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.20957446808510638, + "max": 0.21010638297872342 + }, "related_data": {} } } @@ -13021,7 +15403,7 @@ { "importlib": { "data": { - "uuid": "python-4-308", + "uuid": "python-4-313", "seg": [ [ [ @@ -13029,7 +15411,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21010638297872342, + "max": 0.21017287234042553 + }, "related_data": {} } } @@ -13037,7 +15422,7 @@ { "搜索": { "data": { - "uuid": "python-4-309", + "uuid": "python-4-314", "seg": [ [ [ @@ -13045,7 +15430,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21017287234042553, + "max": 0.21023936170212768 + }, "related_data": {} } } @@ -13053,7 +15441,7 @@ { "加载": { "data": { - "uuid": "python-4-310", + "uuid": "python-4-315", "seg": [ [ [ @@ -13061,15 +15449,24 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.21023936170212768, + "max": 0.2103058510638298 + }, + "related_data": { + "qa": { + "data_id": [ + "8_7455037_53437803@8" + ] + } + } } } }, { "基于路径的查找器": { "data": { - "uuid": "python-4-311", + "uuid": "python-4-316", "seg": [ [ [ @@ -13079,7 +15476,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2103058510638298, + "max": 0.21037234042553193 + }, "related_data": {} } } @@ -13087,7 +15487,7 @@ { "替换标准导入系统": { "data": { - "uuid": "python-4-312", + "uuid": "python-4-317", "seg": [ [ [ @@ -13098,15 +15498,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21037234042553193, + "max": 0.21043882978723405 + }, "related_data": { "qa": { "data_id": [ - "8_7412426_53363787", - "8_7425670_53387288", - "8_7459397_53444322", - "8_7444607_53422912", - "8_7444483_53422766" + "8_7412426_53363787@8", + "8_7425670_53387288@8", + "8_7459397_53444322@8", + "8_7444607_53422912@8", + "8_7444483_53422766@8" ] } } @@ -13116,16 +15519,20 @@ { "包相对导入": { "data": { - "uuid": "python-4-313", + "uuid": "python-4-318", "seg": [ [ [ "包", - "导入" + "导入", + "相对导入" ] ] ], - "level": "1", + "level": { + "min": 0.21043882978723405, + "max": 0.21050531914893617 + }, "related_data": {} } } @@ -13133,7 +15540,7 @@ { "有关__main__的特殊事项": { "data": { - "uuid": "python-4-314", + "uuid": "python-4-319", "seg": [ [ [ @@ -13142,13 +15549,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21050531914893617, + "max": 0.2105718085106383 + }, "related_data": { "qa": { "data_id": [ - "8_381959_416113", - "8_1096157_1308180", - "8_1095555_1307032" + "8_381959_416113@8", + "8_1096157_1308180@8", + "8_1095555_1307032@8" ] } } @@ -13158,7 +15568,7 @@ { "参考文献": { "data": { - "uuid": "python-4-315", + "uuid": "python-4-320", "seg": [ [ [ @@ -13166,7 +15576,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2105718085106383, + "max": 0.21063829787234042 + }, "related_data": {} } } @@ -13182,7 +15595,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21010638297872342, + "max": 0.21063829787234042 + }, "related_data": {} } } @@ -13193,7 +15609,7 @@ { "while语句": { "data": { - "uuid": "python-4-316", + "uuid": "python-4-321", "seg": [ [ [ @@ -13202,7 +15618,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21063829787234042, + "max": 0.21074468085106382 + }, "related_data": {} } } @@ -13210,7 +15629,7 @@ { "try语句": { "data": { - "uuid": "python-4-317", + "uuid": "python-4-322", "seg": [ [ [ @@ -13219,11 +15638,34 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21074468085106382, + "max": 0.21085106382978724 + }, + "related_data": {} + } + } + }, + { + "with语句": { + "data": { + "uuid": "python-4-323", + "seg": [ + [ + [ + "with", + "语句" + ] + ] + ], + "level": { + "min": 0.21085106382978724, + "max": 0.21095744680851064 + }, "related_data": { "qa": { "data_id": [ - "8_1063517_1261540" + "8_757547_813087@8" ] } } @@ -13231,22 +15673,27 @@ } }, { - "with语句": { + "函数定义": { "data": { - "uuid": "python-4-318", + "uuid": "python-4-324", "seg": [ [ [ - "with", - "语句" + "函数", + "定义", + "函数定义" ] ] ], - "level": "1", + "level": { + "min": 0.21095744680851064, + "max": 0.21106382978723406 + }, "related_data": { "qa": { "data_id": [ - "8_757547_813087" + "8_7433766_53404068@8", + "8_7433763_53404067@8" ] } } @@ -13256,7 +15703,7 @@ { "类定义": { "data": { - "uuid": "python-4-319", + "uuid": "python-4-325", "seg": [ [ [ @@ -13265,7 +15712,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21106382978723406, + "max": 0.21117021276595746 + }, "related_data": {} } } @@ -13281,7 +15731,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21063829787234042, + "max": 0.21117021276595746 + }, "related_data": {} } } @@ -13295,16 +15748,20 @@ { "使用文本编辑器": { "data": { - "uuid": "python-5-224", + "uuid": "python-5-227", "seg": [ [ [ "文本编辑", - "器" + "器", + "文本编辑器" ] ] ], - "level": "1", + "level": { + "min": 0.21117021276595746, + "max": 0.2112367021276596 + }, "related_data": {} } } @@ -13312,24 +15769,28 @@ { "Python代码运行助手": { "data": { - "uuid": "python-5-225", + "uuid": "python-5-228", "seg": [ [ [ "python", "代码运行", - "助手" + "助手", + "代码运行助手" ] ] ], - "level": "1", + "level": { + "min": 0.2112367021276596, + "max": 0.21130319148936172 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-320", + "uuid": "python-4-326", "seg": [ [ [ @@ -13338,7 +15799,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21117021276595746, + "max": 0.21130319148936172 + }, "related_data": {} } } @@ -13346,7 +15810,7 @@ { "文件输入": { "data": { - "uuid": "python-4-321", + "uuid": "python-4-327", "seg": [ [ [ @@ -13355,15 +15819,24 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.21130319148936172, + "max": 0.21143617021276595 + }, + "related_data": { + "qa": { + "data_id": [ + "8_771488_834130@8" + ] + } + } } } }, { "交互式输入": { "data": { - "uuid": "python-4-322", + "uuid": "python-4-328", "seg": [ [ [ @@ -13372,7 +15845,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21143617021276595, + "max": 0.2115691489361702 + }, "related_data": {} } } @@ -13380,7 +15856,7 @@ { "表达式输入": { "data": { - "uuid": "python-4-323", + "uuid": "python-4-329", "seg": [ [ [ @@ -13389,7 +15865,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2115691489361702, + "max": 0.21170212765957447 + }, "related_data": {} } } @@ -13401,11 +15880,15 @@ [ [ "顶级", - "组件" + "组件", + "顶级组件" ] ] ], - "level": "1", + "level": { + "min": 0.21117021276595746, + "max": 0.21170212765957447 + }, "related_data": {} } } @@ -13418,11 +15901,15 @@ [ [ "语法", - "规范" + "规范", + "语法规范" ] ] ], - "level": "1", + "level": { + "min": 0.21170212765957447, + "max": 0.2122340425531915 + }, "related_data": {} } } @@ -13433,7 +15920,7 @@ { "由site模块添加的常量": { "data": { - "uuid": "python-4-324", + "uuid": "python-4-330", "seg": [ [ [ @@ -13444,7 +15931,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2122340425531915, + "max": 0.2127659574468085 + }, "related_data": {} } } @@ -13456,11 +15946,15 @@ [ [ "内置", - "常量" + "常量", + "内置常量" ] ] ], - "level": "1", + "level": { + "min": 0.2122340425531915, + "max": 0.2127659574468085 + }, "related_data": {} } } @@ -13471,7 +15965,7 @@ { "逻辑值检测": { "data": { - "uuid": "python-4-325", + "uuid": "python-4-331", "seg": [ [ [ @@ -13480,7 +15974,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2127659574468085, + "max": 0.21280687397708675 + }, "related_data": {} } } @@ -13488,7 +15985,7 @@ { "布尔运算 --- and, or, not": { "data": { - "uuid": "python-4-326", + "uuid": "python-4-332", "seg": [ [ [ @@ -13499,16 +15996,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21280687397708675, + "max": 0.212847790507365 + }, "related_data": { "qa": { "data_id": [ - "8_368230_394646", - "8_718045_711598", - "8_175126_55398", - "8_7452207_53434102", - "8_7402121_53349724", - "8_7406350_53355783" + "8_368230_394646@8", + "8_718045_711598@8", + "8_175126_55398@8", + "8_7452207_53434102@8", + "8_7402121_53349724@8", + "8_7406350_53355783@8" ] } } @@ -13518,13 +16018,16 @@ { "比较": { "data": { - "uuid": "python-4-327", + "uuid": "python-4-333", "seg": [ [ [] ] ], - "level": "1", + "level": { + "min": 0.212847790507365, + "max": 0.2128887070376432 + }, "related_data": {} } } @@ -13532,7 +16035,7 @@ { "数字类型 --- int, float, complex": { "data": { - "uuid": "python-4-328", + "uuid": "python-4-334", "seg": [ [ [ @@ -13540,18 +16043,22 @@ "类型", "int", "float", - "complex" + "complex", + "数字类型" ] ] ], - "level": "1", + "level": { + "min": 0.2128887070376432, + "max": 0.21292962356792144 + }, "related_data": { "qa": { "data_id": [ - "8_7398948_53345641", - "8_7424548_53385633", - "8_7439290_53413290", - "8_7410536_53361481" + "8_7398948_53345641@8", + "8_7424548_53385633@8", + "8_7439290_53413290@8", + "8_7410536_53361481@8" ] } } @@ -13561,17 +16068,21 @@ { "迭代器类型": { "data": { - "uuid": "python-4-329", + "uuid": "python-4-335", "seg": [ [ [ "迭代", "器", - "类型" + "类型", + "器类型" ] ] ], - "level": "1", + "level": { + "min": 0.21292962356792144, + "max": 0.21297054009819968 + }, "related_data": {} } } @@ -13579,7 +16090,7 @@ { "序列类型 --- list, tuple, range": { "data": { - "uuid": "python-4-330", + "uuid": "python-4-336", "seg": [ [ [ @@ -13587,16 +16098,20 @@ "类型", "list", "tuple", - "range" + "range", + "序列类型" ] ] ], - "level": "1", + "level": { + "min": 0.21297054009819968, + "max": 0.21301145662847792 + }, "related_data": { "qa": { "data_id": [ - "8_7418675_53374974", - "8_776103_841049" + "8_7418675_53374974@8", + "8_776103_841049@8" ] } } @@ -13606,22 +16121,27 @@ { "文本序列类型 --- str": { "data": { - "uuid": "python-4-331", + "uuid": "python-4-337", "seg": [ [ [ "文本", "序列", "类型", - "str" + "str", + "文本序列", + "序列类型" ] ] ], - "level": "1", + "level": { + "min": 0.21301145662847792, + "max": 0.21305237315875614 + }, "related_data": { "qa": { "data_id": [ - "8_7451782_53434165" + "8_7451782_53434165@8" ] } } @@ -13631,7 +16151,7 @@ { "二进制序列类型 --- bytes, bytearray, memoryview": { "data": { - "uuid": "python-4-332", + "uuid": "python-4-338", "seg": [ [ [ @@ -13640,11 +16160,16 @@ "类型", "bytes", "bytearray", - "memoryview" + "memoryview", + "二进制序列", + "序列类型" ] ] ], - "level": "1", + "level": { + "min": 0.21305237315875614, + "max": 0.21309328968903438 + }, "related_data": {} } } @@ -13652,7 +16177,7 @@ { "集合类型 --- set, frozenset": { "data": { - "uuid": "python-4-333", + "uuid": "python-4-339", "seg": [ [ [ @@ -13663,7 +16188,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21309328968903438, + "max": 0.21313420621931262 + }, "related_data": {} } } @@ -13671,7 +16199,7 @@ { "映射类型 --- dict": { "data": { - "uuid": "python-4-334", + "uuid": "python-4-340", "seg": [ [ [ @@ -13681,7 +16209,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21313420621931262, + "max": 0.21317512274959086 + }, "related_data": {} } } @@ -13689,17 +16220,21 @@ { "上下文管理器类型": { "data": { - "uuid": "python-4-335", + "uuid": "python-4-341", "seg": [ [ [ "上下文", "管理器", - "类型" + "类型", + "管理器类型" ] ] ], - "level": "1", + "level": { + "min": 0.21317512274959086, + "max": 0.21321603927986907 + }, "related_data": {} } } @@ -13707,7 +16242,7 @@ { "Generic Alias Type": { "data": { - "uuid": "python-4-336", + "uuid": "python-4-342", "seg": [ [ [ @@ -13717,7 +16252,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21321603927986907, + "max": 0.2132569558101473 + }, "related_data": {} } } @@ -13725,21 +16263,25 @@ { "其他内置类型": { "data": { - "uuid": "python-4-337", + "uuid": "python-4-343", "seg": [ [ [ "内置", - "类型" + "类型", + "内置类型" ] ] ], - "level": "1", + "level": { + "min": 0.2132569558101473, + "max": 0.21329787234042555 + }, "related_data": { "qa": { "data_id": [ - "8_175789_56960", - "8_169502_45467" + "8_175789_56960@8", + "8_169502_45467@8" ] } } @@ -13753,11 +16295,15 @@ [ [ "内置", - "类型" + "类型", + "内置类型" ] ] ], - "level": "1", + "level": { + "min": 0.2127659574468085, + "max": 0.21329787234042555 + }, "related_data": {} } } @@ -13768,7 +16314,7 @@ { "基类": { "data": { - "uuid": "python-4-338", + "uuid": "python-4-344", "seg": [ [ [ @@ -13776,7 +16322,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21329787234042555, + "max": 0.21347517730496454 + }, "related_data": {} } } @@ -13784,7 +16333,7 @@ { "警告": { "data": { - "uuid": "python-4-339", + "uuid": "python-4-345", "seg": [ [ [ @@ -13792,11 +16341,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21347517730496454, + "max": 0.21365248226950356 + }, "related_data": { "qa": { "data_id": [ - "8_660081_475570" + "8_660081_475570@8" ] } } @@ -13806,16 +16358,20 @@ { "异常层次结构": { "data": { - "uuid": "python-4-340", + "uuid": "python-4-346", "seg": [ [ [ "异常", - "层次结构" + "层次结构", + "异常层次结构" ] ] ], - "level": "1", + "level": { + "min": 0.21365248226950356, + "max": 0.21382978723404256 + }, "related_data": {} } } @@ -13831,7 +16387,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21329787234042555, + "max": 0.21382978723404256 + }, "related_data": {} } } @@ -13842,7 +16401,7 @@ { "string --- 常见的字符串操作": { "data": { - "uuid": "python-4-341", + "uuid": "python-4-347", "seg": [ [ [ @@ -13853,15 +16412,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21382978723404256, + "max": 0.21389627659574467 + }, "related_data": { "qa": { "data_id": [ - "8_716709_709601", - "8_1049281_1246675", - "8_724268_726238", - "8_771959_834947", - "8_1068610_1269438" + "8_716709_709601@8", + "8_1049281_1246675@8", + "8_724268_726238@8", + "8_771959_834947@8", + "8_1068610_1269438@8" ] } } @@ -13871,7 +16433,7 @@ { "re --- 正则表达式操作": { "data": { - "uuid": "python-4-342", + "uuid": "python-4-348", "seg": [ [ [ @@ -13881,7 +16443,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21389627659574467, + "max": 0.21396276595744682 + }, "related_data": {} } } @@ -13889,7 +16454,7 @@ { "difflib --- 计算差异的辅助工具": { "data": { - "uuid": "python-4-343", + "uuid": "python-4-349", "seg": [ [ [ @@ -13902,7 +16467,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21396276595744682, + "max": 0.21402925531914896 + }, "related_data": {} } } @@ -13910,7 +16478,7 @@ { "textwrap --- 文本自动换行与填充": { "data": { - "uuid": "python-4-344", + "uuid": "python-4-350", "seg": [ [ [ @@ -13924,7 +16492,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21402925531914896, + "max": 0.21409574468085107 + }, "related_data": {} } } @@ -13932,7 +16503,7 @@ { "unicodedata --- Unicode数据库": { "data": { - "uuid": "python-4-345", + "uuid": "python-4-351", "seg": [ [ [ @@ -13942,7 +16513,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21409574468085107, + "max": 0.2141622340425532 + }, "related_data": {} } } @@ -13950,18 +16524,22 @@ { "stringprep --- 因特网字符串预备": { "data": { - "uuid": "python-4-346", + "uuid": "python-4-352", "seg": [ [ [ "stringprep", "因特网", "字符串", - "预备" + "预备", + "因特网字符串" ] ] ], - "level": "1", + "level": { + "min": 0.2141622340425532, + "max": 0.21422872340425533 + }, "related_data": {} } } @@ -13969,7 +16547,7 @@ { "readline --- GNU readline接口": { "data": { - "uuid": "python-4-347", + "uuid": "python-4-353", "seg": [ [ [ @@ -13979,13 +16557,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21422872340425533, + "max": 0.21429521276595748 + }, "related_data": { "qa": { "data_id": [ - "8_7403941_53352714", - "8_1092705_1300877", - "8_7395316_53337636" + "8_7403941_53352714@8", + "8_1092705_1300877@8", + "8_7395316_53337636@8" ] } } @@ -13995,7 +16576,7 @@ { "rlcompleter --- GNU readline的补全函数": { "data": { - "uuid": "python-4-348", + "uuid": "python-4-354", "seg": [ [ [ @@ -14007,7 +16588,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21429521276595748, + "max": 0.2143617021276596 + }, "related_data": {} } } @@ -14023,7 +16607,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21382978723404256, + "max": 0.2143617021276596 + }, "related_data": {} } } @@ -14034,7 +16621,7 @@ { "struct --- 将字节串解读为打包的二进制数据": { "data": { - "uuid": "python-4-349", + "uuid": "python-4-355", "seg": [ [ [ @@ -14044,15 +16631,20 @@ "解读", "打包", "二进制", - "数据" + "数据", + "将字节", + "二进制数据" ] ] ], - "level": "1", + "level": { + "min": 0.2143617021276596, + "max": 0.2146276595744681 + }, "related_data": { "qa": { "data_id": [ - "8_194449_102145" + "8_194449_102145@8" ] } } @@ -14062,7 +16654,7 @@ { "codecs --- 编解码器注册和相关基类": { "data": { - "uuid": "python-4-350", + "uuid": "python-4-356", "seg": [ [ [ @@ -14076,7 +16668,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2146276595744681, + "max": 0.2148936170212766 + }, "related_data": {} } } @@ -14088,11 +16683,15 @@ [ [ "二进制", - "数据服务" + "数据服务", + "二进制数据服务" ] ] ], - "level": "1", + "level": { + "min": 0.2143617021276596, + "max": 0.2148936170212766 + }, "related_data": {} } } @@ -14103,7 +16702,7 @@ { "itertools --- 为高效循环而创建迭代器的函数": { "data": { - "uuid": "python-4-351", + "uuid": "python-4-357", "seg": [ [ [ @@ -14117,7 +16716,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2148936170212766, + "max": 0.21507092198581562 + }, "related_data": {} } } @@ -14125,13 +16727,14 @@ { "functools --- 高阶函数和可调用对象上的操作": { "data": { - "uuid": "python-4-352", + "uuid": "python-4-358", "seg": [ [ [ "functools", "高阶", - "函数" + "函数", + "高阶函数" ], [ "调用", @@ -14140,7 +16743,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21507092198581562, + "max": 0.21524822695035462 + }, "related_data": {} } } @@ -14148,18 +16754,24 @@ { "operator --- 标准运算符替代函数": { "data": { - "uuid": "python-4-353", + "uuid": "python-4-359", "seg": [ [ [ "operator", "标准", "运算符", - "函数" + "函数", + "标准运算符", + "运算符替代", + "替代函数" ] ] ], - "level": "1", + "level": { + "min": 0.21524822695035462, + "max": 0.21542553191489364 + }, "related_data": {} } } @@ -14172,11 +16784,16 @@ [ "函数", "编程", - "模块" + "模块", + "函数式", + "编程模块" ] ] ], - "level": "1", + "level": { + "min": 0.2148936170212766, + "max": 0.21542553191489364 + }, "related_data": {} } } @@ -14187,18 +16804,22 @@ { "pickle --- Python对象序列化": { "data": { - "uuid": "python-4-354", + "uuid": "python-4-360", "seg": [ [ [ "pickle", "python", "对象", - "序列化" + "序列化", + "对象序列化" ] ] ], - "level": "1", + "level": { + "min": 0.21542553191489364, + "max": 0.21551418439716313 + }, "related_data": {} } } @@ -14206,7 +16827,7 @@ { "copyreg --- 注册配合pickle模块使用的函数": { "data": { - "uuid": "python-4-355", + "uuid": "python-4-361", "seg": [ [ [ @@ -14219,11 +16840,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21551418439716313, + "max": 0.21560283687943263 + }, "related_data": { "qa": { "data_id": [ - "8_237489_217969" + "8_237489_217969@8" ] } } @@ -14233,7 +16857,7 @@ { "shelve --- Python对象持久化": { "data": { - "uuid": "python-4-356", + "uuid": "python-4-362", "seg": [ [ [ @@ -14245,7 +16869,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21560283687943263, + "max": 0.21569148936170213 + }, "related_data": {} } } @@ -14253,7 +16880,7 @@ { "marshal --- 内部Python对象序列化": { "data": { - "uuid": "python-4-357", + "uuid": "python-4-363", "seg": [ [ [ @@ -14261,11 +16888,15 @@ "内部", "python", "对象", - "序列化" + "序列化", + "对象序列化" ] ] ], - "level": "1", + "level": { + "min": 0.21569148936170213, + "max": 0.21578014184397165 + }, "related_data": {} } } @@ -14273,7 +16904,7 @@ { "dbm --- Unix \"数据库\" 接口": { "data": { - "uuid": "python-4-358", + "uuid": "python-4-364", "seg": [ [ [ @@ -14284,7 +16915,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21578014184397165, + "max": 0.21586879432624115 + }, "related_data": {} } } @@ -14292,7 +16926,7 @@ { "sqlite3 --- SQLite数据库DB-API 2.0 接口模块": { "data": { - "uuid": "python-4-359", + "uuid": "python-4-365", "seg": [ [ [ @@ -14306,7 +16940,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21586879432624115, + "max": 0.21595744680851064 + }, "related_data": {} } } @@ -14323,7 +16960,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21542553191489364, + "max": 0.21595744680851064 + }, "related_data": {} } } @@ -14334,7 +16974,7 @@ { "csv --- CSV文件读写": { "data": { - "uuid": "python-4-360", + "uuid": "python-4-366", "seg": [ [ [ @@ -14344,11 +16984,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21595744680851064, + "max": 0.21606382978723404 + }, "related_data": { "qa": { "data_id": [ - "8_1103849_1318233" + "8_1103849_1318233@8" ] } } @@ -14358,17 +17001,21 @@ { "configparser --- 配置文件解析器": { "data": { - "uuid": "python-4-361", + "uuid": "python-4-367", "seg": [ [ [ "configparser", "配置文件", - "解析器" + "解析器", + "配置文件解析器" ] ] ], - "level": "1", + "level": { + "min": 0.21606382978723404, + "max": 0.21617021276595746 + }, "related_data": {} } } @@ -14376,7 +17023,7 @@ { "netrc --- netrc文件处理": { "data": { - "uuid": "python-4-362", + "uuid": "python-4-368", "seg": [ [ [ @@ -14385,7 +17032,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21617021276595746, + "max": 0.21627659574468086 + }, "related_data": {} } } @@ -14393,7 +17043,7 @@ { "xdrlib --- 编码与解码XDR数据": { "data": { - "uuid": "python-4-363", + "uuid": "python-4-369", "seg": [ [ [ @@ -14407,7 +17057,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21627659574468086, + "max": 0.21638297872340428 + }, "related_data": {} } } @@ -14415,7 +17068,7 @@ { "plistlib --- 生成与解析Apple .plist文件": { "data": { - "uuid": "python-4-364", + "uuid": "python-4-370", "seg": [ [ [ @@ -14430,7 +17083,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21638297872340428, + "max": 0.21648936170212768 + }, "related_data": {} } } @@ -14445,7 +17101,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21595744680851064, + "max": 0.21648936170212768 + }, "related_data": {} } } @@ -14456,7 +17115,7 @@ { "hashlib --- 安全哈希与消息摘要": { "data": { - "uuid": "python-4-365", + "uuid": "python-4-371", "seg": [ [ [ @@ -14469,7 +17128,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21648936170212768, + "max": 0.21666666666666667 + }, "related_data": {} } } @@ -14477,7 +17139,7 @@ { "hmac --- 基于密钥的消息验证": { "data": { - "uuid": "python-4-366", + "uuid": "python-4-372", "seg": [ [ [ @@ -14488,7 +17150,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21666666666666667, + "max": 0.2168439716312057 + }, "related_data": {} } } @@ -14496,7 +17161,7 @@ { "secrets --- 生成管理密码的安全随机数": { "data": { - "uuid": "python-4-367", + "uuid": "python-4-373", "seg": [ [ [ @@ -14508,7 +17173,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2168439716312057, + "max": 0.2170212765957447 + }, "related_data": {} } } @@ -14524,7 +17192,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21648936170212768, + "max": 0.2170212765957447 + }, "related_data": {} } } @@ -14535,7 +17206,7 @@ { "os --- 多种操作系统接口": { "data": { - "uuid": "python-4-368", + "uuid": "python-4-374", "seg": [ [ [ @@ -14545,7 +17216,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2170212765957447, + "max": 0.21705452127659575 + }, "related_data": {} } } @@ -14553,18 +17227,22 @@ { "io --- 处理流的核心工具": { "data": { - "uuid": "python-4-369", + "uuid": "python-4-375", "seg": [ [ [ "io", "流", "核心", - "工具" + "工具", + "核心工具" ] ] ], - "level": "2", + "level": { + "min": 0.21705452127659575, + "max": 0.2170877659574468 + }, "related_data": {} } } @@ -14572,7 +17250,7 @@ { "time --- 时间的访问和转换": { "data": { - "uuid": "python-4-370", + "uuid": "python-4-376", "seg": [ [ [ @@ -14585,7 +17263,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2170877659574468, + "max": 0.2171210106382979 + }, "related_data": {} } } @@ -14593,23 +17274,30 @@ { "argparse --- 命令行选项、参数和子命令解析器": { "data": { - "uuid": "python-4-371", + "uuid": "python-4-377", "seg": [ [ [ "argparse", "命令行", - "选项" + "选项", + "命令行选项" ], [ "参数", "和子", "命令", - "解析器" + "解析器", + "参数和子", + "和子命令", + "命令解析器" ] ] ], - "level": "1", + "level": { + "min": 0.2171210106382979, + "max": 0.21715425531914895 + }, "related_data": {} } } @@ -14617,7 +17305,7 @@ { "getopt --- C风格的命令行选项解析器": { "data": { - "uuid": "python-4-372", + "uuid": "python-4-378", "seg": [ [ [ @@ -14626,11 +17314,16 @@ "风格", "命令行", "选项", - "解析器" + "解析器", + "命令行选项", + "选项解析器" ] ] ], - "level": "1", + "level": { + "min": 0.21715425531914895, + "max": 0.2171875 + }, "related_data": {} } } @@ -14638,7 +17331,7 @@ { "logging --- Python的日志记录工具": { "data": { - "uuid": "python-4-373", + "uuid": "python-4-379", "seg": [ [ [ @@ -14646,11 +17339,16 @@ "python", "日志", "记录", - "工具" + "工具", + "日志记录", + "记录工具" ] ] ], - "level": "1", + "level": { + "min": 0.2171875, + "max": 0.21722074468085106 + }, "related_data": {} } } @@ -14658,7 +17356,7 @@ { "logging.config --- 日志记录配置": { "data": { - "uuid": "python-4-374", + "uuid": "python-4-380", "seg": [ [ [ @@ -14666,11 +17364,15 @@ "config", "日志", "记录", - "配置" + "配置", + "日志记录" ] ] ], - "level": "1", + "level": { + "min": 0.21722074468085106, + "max": 0.21725398936170212 + }, "related_data": {} } } @@ -14678,18 +17380,22 @@ { "logging.handlers --- 日志处理程序": { "data": { - "uuid": "python-4-375", + "uuid": "python-4-381", "seg": [ [ [ "logging", "handlers", "日志", - "处理程序" + "处理程序", + "日志处理程序" ] ] ], - "level": "1", + "level": { + "min": 0.21725398936170212, + "max": 0.21728723404255318 + }, "related_data": {} } } @@ -14697,7 +17403,7 @@ { "getpass --- 便携式密码输入工具": { "data": { - "uuid": "python-4-376", + "uuid": "python-4-382", "seg": [ [ [ @@ -14709,7 +17415,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21728723404255318, + "max": 0.21732047872340426 + }, "related_data": {} } } @@ -14717,7 +17426,7 @@ { "curses --- 终端字符单元显示的处理": { "data": { - "uuid": "python-4-377", + "uuid": "python-4-383", "seg": [ [ [ @@ -14725,11 +17434,16 @@ "终端", "字符", "单元", - "显示" + "显示", + "终端字符", + "字符单元" ] ] ], - "level": "1", + "level": { + "min": 0.21732047872340426, + "max": 0.21735372340425532 + }, "related_data": {} } } @@ -14737,7 +17451,7 @@ { "curses.textpad --- 用于curses程序的文本输入控件": { "data": { - "uuid": "python-4-378", + "uuid": "python-4-384", "seg": [ [ [ @@ -14751,7 +17465,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21735372340425532, + "max": 0.21738696808510638 + }, "related_data": {} } } @@ -14759,7 +17476,7 @@ { "curses.ascii --- 用于ASCII字符的工具": { "data": { - "uuid": "python-4-379", + "uuid": "python-4-385", "seg": [ [ [ @@ -14771,7 +17488,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21738696808510638, + "max": 0.21742021276595744 + }, "related_data": {} } } @@ -14779,7 +17499,7 @@ { "curses.panel --- curses的面板栈扩展": { "data": { - "uuid": "python-4-380", + "uuid": "python-4-386", "seg": [ [ [ @@ -14787,11 +17507,15 @@ "panel", "面板", "栈", - "扩展" + "扩展", + "面板栈" ] ] ], - "level": "1", + "level": { + "min": 0.21742021276595744, + "max": 0.2174534574468085 + }, "related_data": {} } } @@ -14799,7 +17523,7 @@ { "platform --- 获取底层平台的标识数据": { "data": { - "uuid": "python-4-381", + "uuid": "python-4-387", "seg": [ [ [ @@ -14810,11 +17534,16 @@ "底层", "平台", "标识", - "数据" + "数据", + "底层平台", + "标识数据" ] ] ], - "level": "1", + "level": { + "min": 0.2174534574468085, + "max": 0.21748670212765958 + }, "related_data": {} } } @@ -14822,23 +17551,27 @@ { "errno --- 标准errno系统符号": { "data": { - "uuid": "python-4-382", + "uuid": "python-4-388", "seg": [ [ [ "errno", "标准", "系统", - "符号" + "符号", + "系统符号" ] ] ], - "level": "1", + "level": { + "min": 0.21748670212765958, + "max": 0.21751994680851064 + }, "related_data": { "qa": { "data_id": [ - "8_672406_497840", - "8_698353_585291" + "8_672406_497840@8", + "8_698353_585291@8" ] } } @@ -14848,7 +17581,7 @@ { "ctypes --- Python的外部函数库": { "data": { - "uuid": "python-4-383", + "uuid": "python-4-389", "seg": [ [ [ @@ -14859,7 +17592,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21751994680851064, + "max": 0.2175531914893617 + }, "related_data": {} } } @@ -14876,7 +17612,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2170212765957447, + "max": 0.2175531914893617 + }, "related_data": {} } } @@ -14887,7 +17626,7 @@ { "threading --- 基于线程的并行": { "data": { - "uuid": "python-4-384", + "uuid": "python-4-390", "seg": [ [ [ @@ -14897,7 +17636,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2175531914893617, + "max": 0.2176063829787234 + }, "related_data": {} } } @@ -14905,7 +17647,7 @@ { "multiprocessing --- 基于进程的并行": { "data": { - "uuid": "python-4-385", + "uuid": "python-4-391", "seg": [ [ [ @@ -14915,7 +17657,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2176063829787234, + "max": 0.2176595744680851 + }, "related_data": {} } } @@ -14923,7 +17668,7 @@ { "multiprocessing.shared_memory --- 可从进程直接访问的共享内存": { "data": { - "uuid": "python-4-386", + "uuid": "python-4-392", "seg": [ [ [ @@ -14936,7 +17681,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2176595744680851, + "max": 0.21771276595744682 + }, "related_data": {} } } @@ -14944,7 +17692,7 @@ { "concurrent包": { "data": { - "uuid": "python-4-387", + "uuid": "python-4-393", "seg": [ [ [ @@ -14953,7 +17701,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21771276595744682, + "max": 0.21776595744680852 + }, "related_data": {} } } @@ -14961,7 +17712,7 @@ { "concurrent.futures --- 启动并行任务": { "data": { - "uuid": "python-4-388", + "uuid": "python-4-394", "seg": [ [ [ @@ -14972,7 +17723,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21776595744680852, + "max": 0.21781914893617021 + }, "related_data": {} } } @@ -14980,24 +17734,28 @@ { "subprocess --- 子进程管理": { "data": { - "uuid": "python-4-389", + "uuid": "python-4-395", "seg": [ [ [ "subprocess", "子", "进程", - "管理" + "管理", + "子进程" ] ] ], - "level": "2", + "level": { + "min": 0.21781914893617021, + "max": 0.2178723404255319 + }, "related_data": { "qa": { "data_id": [ - "8_763706_822316", - "8_1071281_1273166", - "8_769967_831214" + "8_763706_822316@8", + "8_1071281_1273166@8", + "8_769967_831214@8" ] } } @@ -15007,18 +17765,23 @@ { "sched --- 事件调度器": { "data": { - "uuid": "python-4-390", + "uuid": "python-4-396", "seg": [ [ [ "sched", "事件", "调度", - "器" + "器", + "事件调度", + "调度器" ] ] ], - "level": "2", + "level": { + "min": 0.2178723404255319, + "max": 0.2179255319148936 + }, "related_data": {} } } @@ -15026,18 +17789,22 @@ { "queue --- 一个同步的队列类": { "data": { - "uuid": "python-4-391", + "uuid": "python-4-397", "seg": [ [ [ "queue", "同步", "队列", - "类" + "类", + "队列类" ] ] ], - "level": "2", + "level": { + "min": 0.2179255319148936, + "max": 0.21797872340425534 + }, "related_data": {} } } @@ -15045,7 +17812,7 @@ { "contextvars --- 上下文变量": { "data": { - "uuid": "python-4-392", + "uuid": "python-4-398", "seg": [ [ [ @@ -15055,7 +17822,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21797872340425534, + "max": 0.21803191489361703 + }, "related_data": {} } } @@ -15063,7 +17833,7 @@ { "_thread --- 底层多线程API": { "data": { - "uuid": "python-4-393", + "uuid": "python-4-399", "seg": [ [ [ @@ -15074,11 +17844,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21803191489361703, + "max": 0.21808510638297873 + }, "related_data": { "qa": { "data_id": [ - "8_7426580_53391091" + "8_7426580_53391091@8" ] } } @@ -15096,7 +17869,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2175531914893617, + "max": 0.21808510638297873 + }, "related_data": {} } } @@ -15107,7 +17883,7 @@ { "asyncio --- 异步I/O": { "data": { - "uuid": "python-4-394", + "uuid": "python-4-400", "seg": [ [ [ @@ -15118,7 +17894,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21808510638297873, + "max": 0.21814420803782505 + }, "related_data": {} } } @@ -15126,17 +17905,21 @@ { "socket --- 底层网络接口": { "data": { - "uuid": "python-4-395", + "uuid": "python-4-401", "seg": [ [ [ "socket", "底层", - "网络接口" + "网络接口", + "底层网络接口" ] ] ], - "level": "2", + "level": { + "min": 0.21814420803782505, + "max": 0.2182033096926714 + }, "related_data": {} } } @@ -15144,7 +17927,7 @@ { "ssl --- 套接字对象的TLS/SSL包装器": { "data": { - "uuid": "python-4-396", + "uuid": "python-4-402", "seg": [ [ [ @@ -15158,7 +17941,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2182033096926714, + "max": 0.21826241134751773 + }, "related_data": {} } } @@ -15166,7 +17952,7 @@ { "select --- 等待I/O完成": { "data": { - "uuid": "python-4-397", + "uuid": "python-4-403", "seg": [ [ [ @@ -15177,7 +17963,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21826241134751773, + "max": 0.21832151300236408 + }, "related_data": {} } } @@ -15185,7 +17974,7 @@ { "selectors --- 高级I/O复用库": { "data": { - "uuid": "python-4-398", + "uuid": "python-4-404", "seg": [ [ [ @@ -15198,11 +17987,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21832151300236408, + "max": 0.2183806146572104 + }, "related_data": { "qa": { "data_id": [ - "8_7434283_53404758" + "8_7434283_53404758@8" ] } } @@ -15212,7 +18004,7 @@ { "asyncore --- 异步套接字处理器": { "data": { - "uuid": "python-4-399", + "uuid": "python-4-405", "seg": [ [ [ @@ -15220,11 +18012,15 @@ "异步", "套", "接字", - "处理器" + "处理器", + "异步套" ] ] ], - "level": "2", + "level": { + "min": 0.2183806146572104, + "max": 0.21843971631205675 + }, "related_data": {} } } @@ -15232,7 +18028,7 @@ { "asynchat --- 异步套接字指令/响应处理程序": { "data": { - "uuid": "python-4-400", + "uuid": "python-4-406", "seg": [ [ [ @@ -15242,11 +18038,15 @@ "接字", "指令", "响应", - "处理程序" + "处理程序", + "异步套" ] ] ], - "level": "2", + "level": { + "min": 0.21843971631205675, + "max": 0.21849881796690307 + }, "related_data": {} } } @@ -15254,7 +18054,7 @@ { "signal --- 设置异步事件处理程序": { "data": { - "uuid": "python-4-401", + "uuid": "python-4-407", "seg": [ [ [ @@ -15262,11 +18062,16 @@ "设置", "异步", "事件", - "处理程序" + "处理程序", + "异步事件", + "事件处理程序" ] ] ], - "level": "2", + "level": { + "min": 0.21849881796690307, + "max": 0.21855791962174942 + }, "related_data": {} } } @@ -15274,7 +18079,7 @@ { "mmap --- 内存映射文件支持": { "data": { - "uuid": "python-4-402", + "uuid": "python-4-408", "seg": [ [ [ @@ -15286,7 +18091,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21855791962174942, + "max": 0.21861702127659574 + }, "related_data": {} } } @@ -15301,11 +18109,15 @@ ], [ "进程", - "间通信" + "间通信", + "进程间通信" ] ] ], - "level": "2", + "level": { + "min": 0.21808510638297873, + "max": 0.21861702127659574 + }, "related_data": {} } } @@ -15316,7 +18128,7 @@ { "email --- 电子邮件与MIME处理包": { "data": { - "uuid": "python-4-403", + "uuid": "python-4-409", "seg": [ [ [ @@ -15329,7 +18141,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21861702127659574, + "max": 0.21868351063829788 + }, "related_data": {} } } @@ -15337,7 +18152,7 @@ { "json --- JSON编码和解码器": { "data": { - "uuid": "python-4-404", + "uuid": "python-4-410", "seg": [ [ [ @@ -15349,7 +18164,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21868351063829788, + "max": 0.21875 + }, "related_data": {} } } @@ -15357,7 +18175,7 @@ { "mailcap --- Mailcap文件处理": { "data": { - "uuid": "python-4-405", + "uuid": "python-4-411", "seg": [ [ [ @@ -15366,7 +18184,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21875, + "max": 0.21881648936170212 + }, "related_data": {} } } @@ -15374,7 +18195,7 @@ { "mailbox --- 操作多种格式的邮箱": { "data": { - "uuid": "python-4-406", + "uuid": "python-4-412", "seg": [ [ [ @@ -15385,7 +18206,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21881648936170212, + "max": 0.21888297872340426 + }, "related_data": {} } } @@ -15393,7 +18217,7 @@ { "mimetypes --- 映射文件名到MIME类型": { "data": { - "uuid": "python-4-407", + "uuid": "python-4-413", "seg": [ [ [ @@ -15405,7 +18229,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21888297872340426, + "max": 0.2189494680851064 + }, "related_data": {} } } @@ -15413,7 +18240,7 @@ { "base64 --- Base16, Base32, Base64, Base85 数据编码": { "data": { - "uuid": "python-4-408", + "uuid": "python-4-414", "seg": [ [ [ @@ -15425,7 +18252,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2189494680851064, + "max": 0.21901595744680852 + }, "related_data": {} } } @@ -15433,7 +18263,7 @@ { "binascii --- 二进制和ASCII码互转": { "data": { - "uuid": "python-4-409", + "uuid": "python-4-415", "seg": [ [ [ @@ -15447,12 +18277,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21901595744680852, + "max": 0.21908244680851063 + }, "related_data": { "qa": { "data_id": [ - "8_752496_806604", - "8_7440181_53415246" + "8_752496_806604@8", + "8_7440181_53415246@8" ] } } @@ -15462,7 +18295,7 @@ { "quopri --- 编码与解码经过MIME转码的可打印数据": { "data": { - "uuid": "python-4-410", + "uuid": "python-4-416", "seg": [ [ [ @@ -15478,7 +18311,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21908244680851063, + "max": 0.21914893617021278 + }, "related_data": {} } } @@ -15490,15 +18326,19 @@ [ [ "互联网", - "数据处理" + "数据处理", + "互联网数据处理" ] ] ], - "level": "1", + "level": { + "min": 0.21861702127659574, + "max": 0.21914893617021278 + }, "related_data": { "qa": { "data_id": [ - "8_7463861_53450183" + "8_7463861_53450183@8" ] } } @@ -15511,7 +18351,7 @@ { "html --- 超文本标记语言支持": { "data": { - "uuid": "python-4-411", + "uuid": "python-4-417", "seg": [ [ [ @@ -15519,11 +18359,16 @@ "超文本", "标记", "语言", - "支持" + "支持", + "超文本标记", + "标记语言" ] ] ], - "level": "1", + "level": { + "min": 0.21914893617021278, + "max": 0.21918985270049102 + }, "related_data": {} } } @@ -15531,7 +18376,7 @@ { "html.parser --- 简单的HTML和XHTML解析器": { "data": { - "uuid": "python-4-412", + "uuid": "python-4-418", "seg": [ [ [ @@ -15544,7 +18389,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21918985270049102, + "max": 0.21923076923076923 + }, "related_data": {} } } @@ -15552,7 +18400,7 @@ { "html.entities --- HTML一般实体的定义": { "data": { - "uuid": "python-4-413", + "uuid": "python-4-419", "seg": [ [ [ @@ -15563,7 +18411,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21923076923076923, + "max": 0.21927168576104747 + }, "related_data": {} } } @@ -15571,7 +18422,7 @@ { "XML处理模块": { "data": { - "uuid": "python-4-414", + "uuid": "python-4-420", "seg": [ [ [ @@ -15580,7 +18431,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21927168576104747, + "max": 0.2193126022913257 + }, "related_data": {} } } @@ -15588,7 +18442,7 @@ { "xml.etree.ElementTree --- ElementTree XML API": { "data": { - "uuid": "python-4-415", + "uuid": "python-4-421", "seg": [ [ [ @@ -15599,7 +18453,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2193126022913257, + "max": 0.21935351882160392 + }, "related_data": {} } } @@ -15607,7 +18464,7 @@ { "xml.dom --- 文档对象模型API": { "data": { - "uuid": "python-4-416", + "uuid": "python-4-422", "seg": [ [ [ @@ -15616,11 +18473,16 @@ "文档", "对象", "模型", - "api" + "api", + "文档对象", + "对象模型" ] ] ], - "level": "1", + "level": { + "min": 0.21935351882160392, + "max": 0.21939443535188216 + }, "related_data": {} } } @@ -15628,7 +18490,7 @@ { "xml.dom.minidom --- Minimal DOM implementation": { "data": { - "uuid": "python-4-417", + "uuid": "python-4-423", "seg": [ [ [ @@ -15640,7 +18502,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21939443535188216, + "max": 0.2194353518821604 + }, "related_data": {} } } @@ -15648,7 +18513,7 @@ { "xml.dom.pulldom --- 支持构建部分DOM树": { "data": { - "uuid": "python-4-418", + "uuid": "python-4-424", "seg": [ [ [ @@ -15661,7 +18526,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2194353518821604, + "max": 0.21947626841243864 + }, "related_data": {} } } @@ -15669,7 +18537,7 @@ { "xml.sax --- 支持SAX2 解析器": { "data": { - "uuid": "python-4-419", + "uuid": "python-4-425", "seg": [ [ [ @@ -15681,7 +18549,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21947626841243864, + "max": 0.21951718494271685 + }, "related_data": {} } } @@ -15689,7 +18560,7 @@ { "xml.sax.handler --- SAX处理程序的基类": { "data": { - "uuid": "python-4-420", + "uuid": "python-4-426", "seg": [ [ [ @@ -15701,7 +18572,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21951718494271685, + "max": 0.2195581014729951 + }, "related_data": {} } } @@ -15709,7 +18583,7 @@ { "xml.sax.saxutils --- SAX工具集": { "data": { - "uuid": "python-4-421", + "uuid": "python-4-427", "seg": [ [ [ @@ -15720,7 +18594,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2195581014729951, + "max": 0.21959901800327333 + }, "related_data": {} } } @@ -15728,7 +18605,7 @@ { "xml.sax.xmlreader --- 用于XML解析器的接口": { "data": { - "uuid": "python-4-422", + "uuid": "python-4-428", "seg": [ [ [ @@ -15741,7 +18618,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21959901800327333, + "max": 0.21963993453355155 + }, "related_data": {} } } @@ -15749,7 +18629,7 @@ { "xml.parsers.expat --- Fast XML parsing using Expat": { "data": { - "uuid": "python-4-423", + "uuid": "python-4-429", "seg": [ [ [ @@ -15762,7 +18642,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21963993453355155, + "max": 0.21968085106382979 + }, "related_data": {} } } @@ -15775,11 +18658,15 @@ [ "结构化", "标记", - "工具" + "工具", + "结构化标记" ] ] ], - "level": "1", + "level": { + "min": 0.21914893617021278, + "max": 0.21968085106382979 + }, "related_data": {} } } @@ -15790,18 +18677,22 @@ { "webbrowser --- 方便的Web浏览器控制器": { "data": { - "uuid": "python-4-424", + "uuid": "python-4-430", "seg": [ [ [ "webbrowser", "web", "浏览器", - "控制器" + "控制器", + "浏览器控制器" ] ] ], - "level": "2", + "level": { + "min": 0.21968085106382979, + "max": 0.2196998480243161 + }, "related_data": {} } } @@ -15809,7 +18700,7 @@ { "cgi --- Common Gateway Interface support": { "data": { - "uuid": "python-4-425", + "uuid": "python-4-431", "seg": [ [ [ @@ -15821,7 +18712,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2196998480243161, + "max": 0.21971884498480243 + }, "related_data": {} } } @@ -15829,7 +18723,7 @@ { "cgitb --- 用于CGI脚本的回溯管理器": { "data": { - "uuid": "python-4-426", + "uuid": "python-4-432", "seg": [ [ [ @@ -15842,7 +18736,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21971884498480243, + "max": 0.21973784194528875 + }, "related_data": {} } } @@ -15850,7 +18747,7 @@ { "wsgiref --- WSGI Utilities and Reference Implementation": { "data": { - "uuid": "python-4-427", + "uuid": "python-4-433", "seg": [ [ [ @@ -15863,7 +18760,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21973784194528875, + "max": 0.21975683890577508 + }, "related_data": {} } } @@ -15871,7 +18771,7 @@ { "urllib --- URL处理模块": { "data": { - "uuid": "python-4-428", + "uuid": "python-4-434", "seg": [ [ [ @@ -15881,7 +18781,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21975683890577508, + "max": 0.2197758358662614 + }, "related_data": {} } } @@ -15889,7 +18792,7 @@ { "urllib.request --- 用于打开URL的可扩展库": { "data": { - "uuid": "python-4-429", + "uuid": "python-4-435", "seg": [ [ [ @@ -15903,7 +18806,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2197758358662614, + "max": 0.21979483282674772 + }, "related_data": {} } } @@ -15911,7 +18817,7 @@ { "urllib.response --- urllib使用的Response类": { "data": { - "uuid": "python-4-430", + "uuid": "python-4-436", "seg": [ [ [ @@ -15921,11 +18827,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21979483282674772, + "max": 0.21981382978723404 + }, "related_data": { "qa": { "data_id": [ - "8_7428770_53395071" + "8_7428770_53395071@8" ] } } @@ -15935,7 +18844,7 @@ { "urllib.parse用于解析URL": { "data": { - "uuid": "python-4-431", + "uuid": "python-4-437", "seg": [ [ [ @@ -15947,11 +18856,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21981382978723404, + "max": 0.21983282674772037 + }, "related_data": { "qa": { "data_id": [ - "8_7450349_53430937" + "8_7450349_53430937@8" ] } } @@ -15961,7 +18873,7 @@ { "urllib.error --- urllib.request引发的异常类": { "data": { - "uuid": "python-4-432", + "uuid": "python-4-438", "seg": [ [ [ @@ -15970,17 +18882,21 @@ "request", "引发", "异常", - "类" + "类", + "异常类" ] ] ], - "level": "2", + "level": { + "min": 0.21983282674772037, + "max": 0.2198518237082067 + }, "related_data": { "qa": { "data_id": [ - "8_760836_822131", - "8_264945_280390", - "8_1099309_1314350" + "8_760836_822131@8", + "8_264945_280390@8", + "8_1099309_1314350@8" ] } } @@ -15990,7 +18906,7 @@ { "urllib.robotparser --- robots.txt语法分析程序": { "data": { - "uuid": "python-4-433", + "uuid": "python-4-439", "seg": [ [ [ @@ -16003,7 +18919,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2198518237082067, + "max": 0.219870820668693 + }, "related_data": {} } } @@ -16011,7 +18930,7 @@ { "http --- HTTP模块": { "data": { - "uuid": "python-4-434", + "uuid": "python-4-440", "seg": [ [ [ @@ -16020,7 +18939,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.219870820668693, + "max": 0.21988981762917933 + }, "related_data": {} } } @@ -16028,18 +18950,22 @@ { "http.client --- HTTP协议客户端": { "data": { - "uuid": "python-4-435", + "uuid": "python-4-441", "seg": [ [ [ "http", "client", "协议", - "客户端" + "客户端", + "协议客户端" ] ] ], - "level": "2", + "level": { + "min": 0.21988981762917933, + "max": 0.21990881458966566 + }, "related_data": {} } } @@ -16047,18 +18973,22 @@ { "ftplib --- FTP协议客户端": { "data": { - "uuid": "python-4-436", + "uuid": "python-4-442", "seg": [ [ [ "ftplib", "ftp", "协议", - "客户端" + "客户端", + "协议客户端" ] ] ], - "level": "2", + "level": { + "min": 0.21990881458966566, + "max": 0.21992781155015198 + }, "related_data": {} } } @@ -16066,18 +18996,22 @@ { "poplib --- POP3 协议客户端": { "data": { - "uuid": "python-4-437", + "uuid": "python-4-443", "seg": [ [ [ "poplib", "pop3", "协议", - "客户端" + "客户端", + "协议客户端" ] ] ], - "level": "2", + "level": { + "min": 0.21992781155015198, + "max": 0.2199468085106383 + }, "related_data": {} } } @@ -16085,18 +19019,22 @@ { "imaplib --- IMAP4 协议客户端": { "data": { - "uuid": "python-4-438", + "uuid": "python-4-444", "seg": [ [ [ "imaplib", "imap4", "协议", - "客户端" + "客户端", + "协议客户端" ] ] ], - "level": "2", + "level": { + "min": 0.2199468085106383, + "max": 0.21996580547112463 + }, "related_data": {} } } @@ -16104,7 +19042,7 @@ { "nntplib --- NNTP protocol client": { "data": { - "uuid": "python-4-439", + "uuid": "python-4-445", "seg": [ [ [ @@ -16115,7 +19053,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21996580547112463, + "max": 0.21998480243161095 + }, "related_data": {} } } @@ -16123,18 +19064,22 @@ { "smtplib ---SMTP协议客户端": { "data": { - "uuid": "python-4-440", + "uuid": "python-4-446", "seg": [ [ [ "smtplib", "smtp", "协议", - "客户端" + "客户端", + "协议客户端" ] ] ], - "level": "2", + "level": { + "min": 0.21998480243161095, + "max": 0.22000379939209727 + }, "related_data": {} } } @@ -16142,7 +19087,7 @@ { "smtpd --- SMTP服务器": { "data": { - "uuid": "python-4-441", + "uuid": "python-4-447", "seg": [ [ [ @@ -16152,7 +19097,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22000379939209727, + "max": 0.2200227963525836 + }, "related_data": {} } } @@ -16160,7 +19108,7 @@ { "telnetlib -- Telnet客户端": { "data": { - "uuid": "python-4-442", + "uuid": "python-4-448", "seg": [ [ [ @@ -16170,7 +19118,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2200227963525836, + "max": 0.22004179331306992 + }, "related_data": {} } } @@ -16178,7 +19129,7 @@ { "uuid --- UUID objects according to RFC 4122": { "data": { - "uuid": "python-4-443", + "uuid": "python-4-449", "seg": [ [ [ @@ -16191,7 +19142,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22004179331306992, + "max": 0.22006079027355624 + }, "related_data": {} } } @@ -16199,7 +19153,7 @@ { "socketserver --- A framework for network servers": { "data": { - "uuid": "python-4-444", + "uuid": "python-4-450", "seg": [ [ [ @@ -16212,16 +19166,18 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22006079027355624, + "max": 0.22007978723404256 + }, "related_data": { "qa": { "data_id": [ - "8_698492_585767", - "8_3532032_23008990", - "8_901545_1037253", - "8_7441781_53418076", - "8_5588435_35515599", - "8_7450612_53431388" + "8_3532032_23008990@8", + "8_901545_1037253@8", + "8_7441781_53418076@8", + "8_5588435_35515599@8", + "8_7450612_53431388@8" ] } } @@ -16231,7 +19187,7 @@ { "http.server --- HTTP服务器": { "data": { - "uuid": "python-4-445", + "uuid": "python-4-451", "seg": [ [ [ @@ -16241,7 +19197,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22007978723404256, + "max": 0.22009878419452888 + }, "related_data": {} } } @@ -16249,7 +19208,7 @@ { "http.cookies --- HTTP状态管理": { "data": { - "uuid": "python-4-446", + "uuid": "python-4-452", "seg": [ [ [ @@ -16260,11 +19219,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22009878419452888, + "max": 0.2201177811550152 + }, "related_data": { "qa": { "data_id": [ - "8_7402685_53350780" + "8_7402685_53350780@8" ] } } @@ -16274,7 +19236,7 @@ { "http.cookiejar —— HTTP客户端的Cookie处理": { "data": { - "uuid": "python-4-447", + "uuid": "python-4-453", "seg": [ [ [ @@ -16285,7 +19247,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2201177811550152, + "max": 0.22013677811550153 + }, "related_data": {} } } @@ -16293,7 +19258,7 @@ { "xmlrpc --- XMLRPC服务端与客户端模块": { "data": { - "uuid": "python-4-448", + "uuid": "python-4-454", "seg": [ [ [ @@ -16302,11 +19267,15 @@ ], [ "客户端", - "模块" + "模块", + "客户端模块" ] ] ], - "level": "2", + "level": { + "min": 0.22013677811550153, + "max": 0.22015577507598785 + }, "related_data": {} } } @@ -16314,7 +19283,7 @@ { "xmlrpc.client --- XML-RPC客户端访问": { "data": { - "uuid": "python-4-449", + "uuid": "python-4-455", "seg": [ [ [ @@ -16327,7 +19296,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22015577507598785, + "max": 0.22017477203647418 + }, "related_data": {} } } @@ -16335,7 +19307,7 @@ { "xmlrpc.server --- 基本XML-RPC服务器": { "data": { - "uuid": "python-4-450", + "uuid": "python-4-456", "seg": [ [ [ @@ -16347,7 +19319,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22017477203647418, + "max": 0.2201937689969605 + }, "related_data": {} } } @@ -16355,7 +19330,7 @@ { "ipaddress --- IPv4/IPv6 操作库": { "data": { - "uuid": "python-4-451", + "uuid": "python-4-457", "seg": [ [ [ @@ -16367,7 +19342,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2201937689969605, + "max": 0.22021276595744682 + }, "related_data": {} } } @@ -16385,7 +19363,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21968085106382979, + "max": 0.22021276595744682 + }, "related_data": {} } } @@ -16396,18 +19377,22 @@ { "audioop --- 处理原始音频数据": { "data": { - "uuid": "python-4-452", + "uuid": "python-4-458", "seg": [ [ [ "audioop", "原始", "音频", - "数据" + "数据", + "音频数据" ] ] ], - "level": "1", + "level": { + "min": 0.22021276595744682, + "max": 0.22027186761229314 + }, "related_data": {} } } @@ -16415,7 +19400,7 @@ { "aifc --- 读写AIFF和AIFC文件": { "data": { - "uuid": "python-4-453", + "uuid": "python-4-459", "seg": [ [ [ @@ -16431,7 +19416,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22027186761229314, + "max": 0.2203309692671395 + }, "related_data": {} } } @@ -16439,7 +19427,7 @@ { "sunau --- 读写Sun AU文件": { "data": { - "uuid": "python-4-454", + "uuid": "python-4-460", "seg": [ [ [ @@ -16451,7 +19439,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2203309692671395, + "max": 0.22039007092198581 + }, "related_data": {} } } @@ -16459,7 +19450,7 @@ { "wave --- 读写WAV格式文件": { "data": { - "uuid": "python-4-455", + "uuid": "python-4-461", "seg": [ [ [ @@ -16470,7 +19461,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22039007092198581, + "max": 0.22044917257683216 + }, "related_data": {} } } @@ -16478,20 +19472,23 @@ { "chunk --- 读取IFF分块数据": { "data": { - "uuid": "python-4-456", + "uuid": "python-4-462", "seg": [ [ [ - "chun", - "k", + "chunk", "读取", "iff", "分块", - "数据" + "数据", + "分块数据" ] ] ], - "level": "1", + "level": { + "min": 0.22044917257683216, + "max": 0.22050827423167849 + }, "related_data": {} } } @@ -16499,18 +19496,22 @@ { "colorsys --- 颜色系统间的转换": { "data": { - "uuid": "python-4-457", + "uuid": "python-4-463", "seg": [ [ [ "colorsys", "颜色", "系统", - "转换" + "转换", + "颜色系统" ] ] ], - "level": "1", + "level": { + "min": 0.22050827423167849, + "max": 0.22056737588652484 + }, "related_data": {} } } @@ -16518,18 +19519,22 @@ { "imghdr --- 推测图像类型": { "data": { - "uuid": "python-4-458", + "uuid": "python-4-464", "seg": [ [ [ "imghdr", "推测", "图像", - "类型" + "类型", + "图像类型" ] ] ], - "level": "1", + "level": { + "min": 0.22056737588652484, + "max": 0.22062647754137116 + }, "related_data": {} } } @@ -16537,7 +19542,7 @@ { "sndhdr --- 推测声音文件的类型": { "data": { - "uuid": "python-4-459", + "uuid": "python-4-465", "seg": [ [ [ @@ -16548,7 +19553,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22062647754137116, + "max": 0.2206855791962175 + }, "related_data": {} } } @@ -16556,7 +19564,7 @@ { "ossaudiodev --- Access to OSS-compatible audio devices": { "data": { - "uuid": "python-4-460", + "uuid": "python-4-466", "seg": [ [ [ @@ -16570,11 +19578,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2206855791962175, + "max": 0.22074468085106383 + }, "related_data": { "qa": { "data_id": [ - "8_661981_477342" + "8_661981_477342@8" ] } } @@ -16592,7 +19603,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22021276595744682, + "max": 0.22074468085106383 + }, "related_data": {} } } @@ -16603,18 +19617,22 @@ { "gettext --- 多语种国际化服务": { "data": { - "uuid": "python-4-461", + "uuid": "python-4-467", "seg": [ [ [ "gettext", "多语种", "国际化", - "服务" + "服务", + "多语种国际化" ] ] ], - "level": "1", + "level": { + "min": 0.22074468085106383, + "max": 0.22101063829787235 + }, "related_data": {} } } @@ -16622,7 +19640,7 @@ { "locale --- 国际化服务": { "data": { - "uuid": "python-4-462", + "uuid": "python-4-468", "seg": [ [ [ @@ -16632,7 +19650,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22101063829787235, + "max": 0.22127659574468087 + }, "related_data": {} } } @@ -16647,7 +19668,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22074468085106383, + "max": 0.22127659574468087 + }, "related_data": {} } } @@ -16658,26 +19682,30 @@ { "turtle --- 海龟绘图": { "data": { - "uuid": "python-4-463", + "uuid": "python-4-469", "seg": [ [ [ "turtle", "海龟", - "绘图" + "绘图", + "海龟绘图" ] ] ], - "level": "1", + "level": { + "min": 0.22127659574468087, + "max": 0.22145390070921986 + }, "related_data": { "qa": { "data_id": [ - "8_7459844_53444871", - "8_7425366_53387077", - "8_7438259_53411990", - "8_7396145_53339459", - "8_7446052_53425107", - "8_7430334_53397410" + "8_7459844_53444871@8", + "8_7425366_53387077@8", + "8_7438259_53411990@8", + "8_7396145_53339459@8", + "8_7446052_53425107@8", + "8_7430334_53397410@8" ] } } @@ -16687,7 +19715,7 @@ { "cmd --- 支持面向行的命令解释器": { "data": { - "uuid": "python-4-464", + "uuid": "python-4-470", "seg": [ [ [ @@ -16696,17 +19724,21 @@ "面向", "行", "命令", - "解释器" + "解释器", + "命令解释器" ] ] ], - "level": "1", + "level": { + "min": 0.22145390070921986, + "max": 0.22163120567375888 + }, "related_data": { "qa": { "data_id": [ - "8_179262_64437", - "8_7418736_53375274", - "8_1097164_1310347" + "8_179262_64437@8", + "8_7418736_53375274@8", + "8_1097164_1310347@8" ] } } @@ -16716,7 +19748,7 @@ { "shlex --- Simple lexical analysis": { "data": { - "uuid": "python-4-465", + "uuid": "python-4-471", "seg": [ [ [ @@ -16727,7 +19759,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22163120567375888, + "max": 0.22180851063829787 + }, "related_data": {} } } @@ -16739,11 +19774,15 @@ [ [ "程序", - "框架" + "框架", + "程序框架" ] ] ], - "level": "1", + "level": { + "min": 0.22127659574468087, + "max": 0.22180851063829787 + }, "related_data": {} } } @@ -16754,7 +19793,7 @@ { "tkinter --- Tcl/Tk的Python接口": { "data": { - "uuid": "python-4-466", + "uuid": "python-4-472", "seg": [ [ [ @@ -16766,12 +19805,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22180851063829787, + "max": 0.2218568665377176 + }, "related_data": { "qa": { "data_id": [ - "8_764339_823183", - "8_7408979_53359215" + "8_764339_823183@8", + "8_7408979_53359215@8" ] } } @@ -16781,7 +19823,7 @@ { "tkinter.colorchooser --- 颜色选择对话框": { "data": { - "uuid": "python-4-467", + "uuid": "python-4-473", "seg": [ [ [ @@ -16793,7 +19835,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2218568665377176, + "max": 0.22190522243713734 + }, "related_data": {} } } @@ -16801,7 +19846,7 @@ { "tkinter.font --- Tkinter字体封装": { "data": { - "uuid": "python-4-468", + "uuid": "python-4-474", "seg": [ [ [ @@ -16812,7 +19857,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22190522243713734, + "max": 0.22195357833655707 + }, "related_data": {} } } @@ -16820,7 +19868,7 @@ { "Tkinter对话框": { "data": { - "uuid": "python-4-469", + "uuid": "python-4-475", "seg": [ [ [ @@ -16829,7 +19877,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22195357833655707, + "max": 0.2220019342359768 + }, "related_data": {} } } @@ -16837,7 +19888,7 @@ { "tkinter.messagebox --- Tkinter消息提示": { "data": { - "uuid": "python-4-470", + "uuid": "python-4-476", "seg": [ [ [ @@ -16848,13 +19899,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2220019342359768, + "max": 0.22205029013539654 + }, "related_data": { "qa": { "data_id": [ - "8_643756_443906", - "8_7456360_53440092", - "8_190668_91827" + "8_643756_443906@8", + "8_190668_91827@8" ] } } @@ -16864,7 +19917,7 @@ { "tkinter.scrolledtext --- 滚动文字控件": { "data": { - "uuid": "python-4-471", + "uuid": "python-4-477", "seg": [ [ [ @@ -16872,11 +19925,15 @@ "scrolledtext", "滚动", "文字", - "控件" + "控件", + "文字控件" ] ] ], - "level": "1", + "level": { + "min": 0.22205029013539654, + "max": 0.22209864603481624 + }, "related_data": {} } } @@ -16884,7 +19941,7 @@ { "tkinter.dnd --- 拖放操作支持": { "data": { - "uuid": "python-4-472", + "uuid": "python-4-478", "seg": [ [ [ @@ -16896,7 +19953,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22209864603481624, + "max": 0.22214700193423598 + }, "related_data": {} } } @@ -16904,7 +19964,7 @@ { "tkinter.ttk --- Tk主题部件": { "data": { - "uuid": "python-4-473", + "uuid": "python-4-479", "seg": [ [ [ @@ -16912,11 +19972,15 @@ "ttk", "tk", "主题", - "部件" + "部件", + "主题部件" ] ] ], - "level": "1", + "level": { + "min": 0.22214700193423598, + "max": 0.2221953578336557 + }, "related_data": {} } } @@ -16924,7 +19988,7 @@ { "tkinter.tix --- Extension widgets for Tk": { "data": { - "uuid": "python-4-474", + "uuid": "python-4-480", "seg": [ [ [ @@ -16937,11 +20001,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2221953578336557, + "max": 0.22224371373307544 + }, "related_data": { "qa": { "data_id": [ - "8_7461262_53446373" + "8_7461262_53446373@8" ] } } @@ -16951,7 +20018,7 @@ { "IDLE": { "data": { - "uuid": "python-4-475", + "uuid": "python-4-481", "seg": [ [ [ @@ -16959,16 +20026,20 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22224371373307544, + "max": 0.22229206963249518 + }, "related_data": { "qa": { "data_id": [ - "8_774296_838338", - "8_7397113_53341614", - "8_25740_6999", - "8_202822_128536", - "8_1055594_1252791", - "8_203969_132003" + "8_774296_838338@8", + "8_7397113_53341614@8", + "8_25740_6999@8", + "8_202822_128536@8", + "8_1055594_1252791@8", + "8_1095518_1306885@8", + "8_203969_132003@8" ] } } @@ -16978,7 +20049,7 @@ { "其他图形用户界面(GUI)包": { "data": { - "uuid": "python-4-476", + "uuid": "python-4-482", "seg": [ [ [ @@ -16988,7 +20059,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22229206963249518, + "max": 0.2223404255319149 + }, "related_data": {} } } @@ -17005,7 +20079,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22180851063829787, + "max": 0.2223404255319149 + }, "related_data": {} } } @@ -17016,7 +20093,7 @@ { "审计事件表": { "data": { - "uuid": "python-4-477", + "uuid": "python-4-483", "seg": [ [ [ @@ -17026,7 +20103,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2223404255319149, + "max": 0.22238878143133464 + }, "related_data": {} } } @@ -17034,7 +20114,7 @@ { "bdb --- Debugger framework": { "data": { - "uuid": "python-4-478", + "uuid": "python-4-484", "seg": [ [ [ @@ -17044,7 +20124,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22238878143133464, + "max": 0.22243713733075438 + }, "related_data": {} } } @@ -17052,7 +20135,7 @@ { "faulthandler --- Dump the Python traceback": { "data": { - "uuid": "python-4-479", + "uuid": "python-4-485", "seg": [ [ [ @@ -17064,7 +20147,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22243713733075438, + "max": 0.22248549323017408 + }, "related_data": {} } } @@ -17072,7 +20158,7 @@ { "pdb --- Python的调试器": { "data": { - "uuid": "python-4-480", + "uuid": "python-4-486", "seg": [ [ [ @@ -17082,7 +20168,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22248549323017408, + "max": 0.2225338491295938 + }, "related_data": {} } } @@ -17090,7 +20179,7 @@ { "Python Profilers分析器": { "data": { - "uuid": "python-4-481", + "uuid": "python-4-487", "seg": [ [ [ @@ -17100,7 +20189,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2225338491295938, + "max": 0.22258220502901355 + }, "related_data": {} } } @@ -17108,7 +20200,7 @@ { "timeit --- 测量小代码片段的执行时间": { "data": { - "uuid": "python-4-482", + "uuid": "python-4-488", "seg": [ [ [ @@ -17119,13 +20211,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22258220502901355, + "max": 0.22263056092843328 + }, "related_data": { "qa": { "data_id": [ - "8_708005_641245", - "8_7406880_53356549", - "8_1055709_1252961" + "8_708005_641245@8", + "8_7406880_53356549@8", + "8_1055709_1252961@8", + "8_7433732_53404035@8" ] } } @@ -17135,7 +20231,7 @@ { "trace --- 跟踪Python语句执行": { "data": { - "uuid": "python-4-483", + "uuid": "python-4-489", "seg": [ [ [ @@ -17147,7 +20243,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22263056092843328, + "max": 0.222678916827853 + }, "related_data": {} } } @@ -17155,7 +20254,7 @@ { "tracemalloc --- 跟踪内存分配": { "data": { - "uuid": "python-4-484", + "uuid": "python-4-490", "seg": [ [ [ @@ -17166,7 +20265,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.222678916827853, + "max": 0.22272727272727275 + }, "related_data": {} } } @@ -17174,7 +20276,7 @@ { "抛出异常": { "data": { - "uuid": "python-4-485", + "uuid": "python-4-491", "seg": [ [ [ @@ -17183,7 +20285,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22272727272727275, + "max": 0.22277562862669245 + }, "related_data": {} } } @@ -17191,7 +20296,7 @@ { "取得回溯字符串": { "data": { - "uuid": "python-4-486", + "uuid": "python-4-492", "seg": [ [ [ @@ -17200,11 +20305,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22277562862669245, + "max": 0.22282398452611218 + }, "related_data": { "qa": { "data_id": [ - "8_1099030_1314122" + "8_1099030_1314122@8" ] } } @@ -17214,7 +20322,7 @@ { "Mu的调试器": { "data": { - "uuid": "python-4-487", + "uuid": "python-4-493", "seg": [ [ [ @@ -17223,7 +20331,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22282398452611218, + "max": 0.22287234042553192 + }, "related_data": {} } } @@ -17241,7 +20352,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2223404255319149, + "max": 0.22287234042553192 + }, "related_data": {} } } @@ -17252,7 +20366,7 @@ { "distutils --- 构建和安装Python模块": { "data": { - "uuid": "python-4-488", + "uuid": "python-4-494", "seg": [ [ [ @@ -17266,7 +20380,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22287234042553192, + "max": 0.22300531914893618 + }, "related_data": {} } } @@ -17274,7 +20391,7 @@ { "ensurepip --- Bootstrapping the pip installer": { "data": { - "uuid": "python-4-489", + "uuid": "python-4-495", "seg": [ [ [ @@ -17286,7 +20403,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22300531914893618, + "max": 0.22313829787234044 + }, "related_data": {} } } @@ -17294,7 +20414,7 @@ { "venv --- 创建虚拟环境": { "data": { - "uuid": "python-4-490", + "uuid": "python-4-496", "seg": [ [ [ @@ -17304,7 +20424,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22313829787234044, + "max": 0.2232712765957447 + }, "related_data": {} } } @@ -17312,7 +20435,7 @@ { "zipapp --- Manage executable Python zip archives": { "data": { - "uuid": "python-4-491", + "uuid": "python-4-497", "seg": [ [ [ @@ -17325,7 +20448,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2232712765957447, + "max": 0.22340425531914895 + }, "related_data": {} } } @@ -17344,7 +20470,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22287234042553192, + "max": 0.22340425531914895 + }, "related_data": {} } } @@ -17355,7 +20484,7 @@ { "sysconfig --- Provide access to Python's configuration information": { "data": { - "uuid": "python-4-492", + "uuid": "python-4-498", "seg": [ [ [ @@ -17372,7 +20501,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22340425531914895, + "max": 0.2234451718494272 + }, "related_data": {} } } @@ -17380,7 +20512,7 @@ { "builtins --- 内建对象": { "data": { - "uuid": "python-4-493", + "uuid": "python-4-499", "seg": [ [ [ @@ -17390,7 +20522,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2234451718494272, + "max": 0.2234860883797054 + }, "related_data": {} } } @@ -17398,18 +20533,23 @@ { "__main__ --- 顶层脚本环境": { "data": { - "uuid": "python-4-494", + "uuid": "python-4-500", "seg": [ [ [ "main", "顶层", "脚本", - "环境" + "环境", + "顶层脚本", + "脚本环境" ] ] ], - "level": "1", + "level": { + "min": 0.2234860883797054, + "max": 0.22352700490998365 + }, "related_data": {} } } @@ -17417,7 +20557,7 @@ { "warnings --- Warning control": { "data": { - "uuid": "python-4-495", + "uuid": "python-4-501", "seg": [ [ [ @@ -17427,11 +20567,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22352700490998365, + "max": 0.22356792144026189 + }, "related_data": { "qa": { "data_id": [ - "8_7447039_53426572" + "8_7447039_53426572@8" ] } } @@ -17441,17 +20584,21 @@ { "dataclasses --- 数据类": { "data": { - "uuid": "python-4-496", + "uuid": "python-4-502", "seg": [ [ [ "dataclasses", "数据", - "类" + "类", + "数据类" ] ] ], - "level": "1", + "level": { + "min": 0.22356792144026189, + "max": 0.2236088379705401 + }, "related_data": {} } } @@ -17459,7 +20606,7 @@ { "contextlib --- 为with语句上下文提供的工具": { "data": { - "uuid": "python-4-497", + "uuid": "python-4-503", "seg": [ [ [ @@ -17472,7 +20619,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2236088379705401, + "max": 0.22364975450081834 + }, "related_data": {} } } @@ -17480,7 +20630,7 @@ { "abc --- 抽象基类": { "data": { - "uuid": "python-4-498", + "uuid": "python-4-504", "seg": [ [ [ @@ -17490,7 +20640,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22364975450081834, + "max": 0.22369067103109658 + }, "related_data": {} } } @@ -17498,7 +20651,7 @@ { "atexit --- 退出处理器": { "data": { - "uuid": "python-4-499", + "uuid": "python-4-505", "seg": [ [ [ @@ -17508,7 +20661,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22369067103109658, + "max": 0.22373158756137482 + }, "related_data": {} } } @@ -17516,7 +20672,7 @@ { "traceback --- 打印或检索堆栈回溯": { "data": { - "uuid": "python-4-500", + "uuid": "python-4-506", "seg": [ [ [ @@ -17528,13 +20684,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22373158756137482, + "max": 0.22377250409165303 + }, "related_data": { "qa": { "data_id": [ - "8_7431000_53398957", - "8_777554_844885", - "8_7405272_53354406" + "8_7431000_53398957@8", + "8_777554_844885@8", + "8_7405272_53354406@8" ] } } @@ -17544,17 +20703,21 @@ { "__future__ --- Future语句定义": { "data": { - "uuid": "python-4-501", + "uuid": "python-4-507", "seg": [ [ [ "future", "语句", - "定义" + "定义", + "语句定义" ] ] ], - "level": "1", + "level": { + "min": 0.22377250409165303, + "max": 0.22381342062193127 + }, "related_data": {} } } @@ -17562,7 +20725,7 @@ { "gc --- 垃圾回收器接口": { "data": { - "uuid": "python-4-502", + "uuid": "python-4-508", "seg": [ [ [ @@ -17574,7 +20737,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22381342062193127, + "max": 0.2238543371522095 + }, "related_data": {} } } @@ -17582,7 +20748,7 @@ { "inspect --- 检查对象": { "data": { - "uuid": "python-4-503", + "uuid": "python-4-509", "seg": [ [ [ @@ -17592,7 +20758,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2238543371522095, + "max": 0.22389525368248772 + }, "related_data": {} } } @@ -17600,7 +20769,7 @@ { "site —— 指定域的配置钩子": { "data": { - "uuid": "python-4-504", + "uuid": "python-4-510", "seg": [ [ [ @@ -17612,7 +20781,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22389525368248772, + "max": 0.22393617021276596 + }, "related_data": {} } } @@ -17629,7 +20801,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22340425531914895, + "max": 0.22393617021276596 + }, "related_data": {} } } @@ -17640,23 +20815,26 @@ { "code --- 解释器基类": { "data": { - "uuid": "python-4-505", + "uuid": "python-4-511", "seg": [ [ [ "code", "解释器", - "基类" + "基类", + "解释器基类" ] ] ], - "level": "1", + "level": { + "min": 0.22393617021276596, + "max": 0.22420212765957448 + }, "related_data": { "qa": { "data_id": [ - "8_663230_479339", - "8_7459867_53444895", - "8_7411797_53362846" + "8_7459867_53444895@8", + "8_7411797_53362846@8" ] } } @@ -17666,7 +20844,7 @@ { "codeop --- 编译Python代码": { "data": { - "uuid": "python-4-506", + "uuid": "python-4-512", "seg": [ [ [ @@ -17676,7 +20854,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22420212765957448, + "max": 0.224468085106383 + }, "related_data": {} } } @@ -17693,7 +20874,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22393617021276596, + "max": 0.224468085106383 + }, "related_data": {} } } @@ -17704,7 +20888,7 @@ { "zipimport --- 从Zip存档中导入模块": { "data": { - "uuid": "python-4-507", + "uuid": "python-4-513", "seg": [ [ [ @@ -17716,7 +20900,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.224468085106383, + "max": 0.2245567375886525 + }, "related_data": {} } } @@ -17724,7 +20911,7 @@ { "pkgutil --- 包扩展工具": { "data": { - "uuid": "python-4-508", + "uuid": "python-4-514", "seg": [ [ [ @@ -17735,7 +20922,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2245567375886525, + "max": 0.224645390070922 + }, "related_data": {} } } @@ -17743,7 +20933,7 @@ { "modulefinder --- 查找脚本使用的模块": { "data": { - "uuid": "python-4-509", + "uuid": "python-4-515", "seg": [ [ [ @@ -17754,7 +20944,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.224645390070922, + "max": 0.22473404255319152 + }, "related_data": {} } } @@ -17762,7 +20955,7 @@ { "runpy --- Locating and executing Python modules": { "data": { - "uuid": "python-4-510", + "uuid": "python-4-516", "seg": [ [ [ @@ -17775,7 +20968,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22473404255319152, + "max": 0.224822695035461 + }, "related_data": {} } } @@ -17783,7 +20979,7 @@ { "importlib --- import的实现": { "data": { - "uuid": "python-4-511", + "uuid": "python-4-517", "seg": [ [ [ @@ -17792,7 +20988,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.224822695035461, + "max": 0.2249113475177305 + }, "related_data": {} } } @@ -17800,7 +20999,7 @@ { "Using importlib.metadata": { "data": { - "uuid": "python-4-512", + "uuid": "python-4-518", "seg": [ [ [ @@ -17810,11 +21009,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2249113475177305, + "max": 0.225 + }, "related_data": { "qa": { "data_id": [ - "8_7420254_53378287" + "8_7420254_53378287@8" ] } } @@ -17832,7 +21034,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.224468085106383, + "max": 0.225 + }, "related_data": {} } } @@ -17843,7 +21048,7 @@ { "parser --- 访问Python解析树": { "data": { - "uuid": "python-4-513", + "uuid": "python-4-519", "seg": [ [ [ @@ -17855,7 +21060,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.225, + "max": 0.22504091653027825 + }, "related_data": {} } } @@ -17863,7 +21071,7 @@ { "ast --- 抽象语法树": { "data": { - "uuid": "python-4-514", + "uuid": "python-4-520", "seg": [ [ [ @@ -17874,7 +21082,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22504091653027825, + "max": 0.22508183306055646 + }, "related_data": {} } } @@ -17882,7 +21093,7 @@ { "symtable --- Access to the compiler's symbol tables": { "data": { - "uuid": "python-4-515", + "uuid": "python-4-521", "seg": [ [ [ @@ -17897,7 +21108,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22508183306055646, + "max": 0.2251227495908347 + }, "related_data": {} } } @@ -17905,7 +21119,7 @@ { "symbol --- 与Python解析树一起使用的常量": { "data": { - "uuid": "python-4-516", + "uuid": "python-4-522", "seg": [ [ [ @@ -17919,7 +21133,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2251227495908347, + "max": 0.22516366612111294 + }, "related_data": {} } } @@ -17927,7 +21144,7 @@ { "token --- 与Python解析树一起使用的常量": { "data": { - "uuid": "python-4-517", + "uuid": "python-4-523", "seg": [ [ [ @@ -17941,11 +21158,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22516366612111294, + "max": 0.22520458265139115 + }, "related_data": { "qa": { "data_id": [ - "8_7422620_53381330" + "8_7422620_53381330@8" ] } } @@ -17955,7 +21175,7 @@ { "keyword --- 检验Python关键字": { "data": { - "uuid": "python-4-518", + "uuid": "python-4-524", "seg": [ [ [ @@ -17966,11 +21186,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22520458265139115, + "max": 0.2252454991816694 + }, "related_data": { "qa": { "data_id": [ - "8_1096459_1308736" + "8_1096459_1308736@8" ] } } @@ -17980,22 +21203,26 @@ { "tokenize --- 对Python代码使用的标记解析器": { "data": { - "uuid": "python-4-519", + "uuid": "python-4-525", "seg": [ [ [ "tokenize", "python", "标记", - "解析器" + "解析器", + "标记解析器" ] ] ], - "level": "1", + "level": { + "min": 0.2252454991816694, + "max": 0.22528641571194763 + }, "related_data": { "qa": { "data_id": [ - "8_242406_229870" + "8_242406_229870@8" ] } } @@ -18005,7 +21232,7 @@ { "tabnanny --- 模糊缩进检测": { "data": { - "uuid": "python-4-520", + "uuid": "python-4-526", "seg": [ [ [ @@ -18016,7 +21243,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22528641571194763, + "max": 0.22532733224222587 + }, "related_data": {} } } @@ -18024,7 +21254,7 @@ { "pyclbr --- Python模块浏览器支持": { "data": { - "uuid": "python-4-521", + "uuid": "python-4-527", "seg": [ [ [ @@ -18032,11 +21262,15 @@ "python", "模块", "浏览器", - "支持" + "支持", + "模块浏览器" ] ] ], - "level": "1", + "level": { + "min": 0.22532733224222587, + "max": 0.22536824877250408 + }, "related_data": {} } } @@ -18044,7 +21278,7 @@ { "py_compile --- 编译Python源文件": { "data": { - "uuid": "python-4-522", + "uuid": "python-4-528", "seg": [ [ [ @@ -18056,7 +21290,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22536824877250408, + "max": 0.22540916530278232 + }, "related_data": {} } } @@ -18064,7 +21301,7 @@ { "compileall --- Byte-compile Python libraries": { "data": { - "uuid": "python-4-523", + "uuid": "python-4-529", "seg": [ [ [ @@ -18076,11 +21313,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22540916530278232, + "max": 0.22545008183306056 + }, "related_data": { "qa": { "data_id": [ - "8_159109_24333" + "8_159109_24333@8" ] } } @@ -18090,7 +21330,7 @@ { "dis --- Python字节码反汇编器": { "data": { - "uuid": "python-4-524", + "uuid": "python-4-530", "seg": [ [ [ @@ -18103,7 +21343,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22545008183306056, + "max": 0.22549099836333877 + }, "related_data": {} } } @@ -18111,18 +21354,22 @@ { "pickletools --- pickle开发者工具集": { "data": { - "uuid": "python-4-525", + "uuid": "python-4-531", "seg": [ [ [ "pickletools", "pickle", "开发者", - "工具集" + "工具集", + "开发者工具集" ] ] ], - "level": "1", + "level": { + "min": 0.22549099836333877, + "max": 0.225531914893617 + }, "related_data": {} } } @@ -18139,7 +21386,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.225, + "max": 0.225531914893617 + }, "related_data": {} } } @@ -18150,7 +21400,7 @@ { "formatter --- 通用格式化输出": { "data": { - "uuid": "python-4-526", + "uuid": "python-4-532", "seg": [ [ [ @@ -18162,7 +21412,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.225531914893617, + "max": 0.22606382978723405 + }, "related_data": {} } } @@ -18178,7 +21431,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.225531914893617, + "max": 0.22606382978723405 + }, "related_data": {} } } @@ -18189,7 +21445,7 @@ { "msilib --- Read and write Microsoft Installer files": { "data": { - "uuid": "python-4-527", + "uuid": "python-4-533", "seg": [ [ [ @@ -18203,13 +21459,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22606382978723405, + "max": 0.2261968085106383 + }, "related_data": { "qa": { "data_id": [ - "8_771303_833712", - "8_7461584_53446745", - "8_1099043_1314414" + "8_771303_833712@8", + "8_7461584_53446745@8", + "8_6982977_49888848@8", + "8_1099043_1314414@8" ] } } @@ -18219,7 +21479,7 @@ { "msvcrt --- 来自MS VC++ 运行时的有用例程": { "data": { - "uuid": "python-4-528", + "uuid": "python-4-534", "seg": [ [ [ @@ -18233,7 +21493,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2261968085106383, + "max": 0.22632978723404257 + }, "related_data": {} } } @@ -18241,7 +21504,7 @@ { "winreg --- Windows注册表访问": { "data": { - "uuid": "python-4-529", + "uuid": "python-4-535", "seg": [ [ [ @@ -18252,11 +21515,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22632978723404257, + "max": 0.22646276595744683 + }, "related_data": { "qa": { "data_id": [ - "8_7451237_53432288" + "8_7451237_53432288@8" ] } } @@ -18266,22 +21532,23 @@ { "winsound --- Sound-playing interface for Windows": { "data": { - "uuid": "python-4-530", + "uuid": "python-4-536", "seg": [ [ [ "winsound", "sound", - "pl", - "ayi", - "ng", + "playing", "interface", "for", "windows" ] ] ], - "level": "1", + "level": { + "min": 0.22646276595744683, + "max": 0.22659574468085109 + }, "related_data": {} } } @@ -18299,7 +21566,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22606382978723405, + "max": 0.22659574468085109 + }, "related_data": {} } } @@ -18310,7 +21580,7 @@ { "posix --- 最常见的POSIX系统调用": { "data": { - "uuid": "python-4-531", + "uuid": "python-4-537", "seg": [ [ [ @@ -18321,7 +21591,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22659574468085109, + "max": 0.22663666121112933 + }, "related_data": {} } } @@ -18329,18 +21602,23 @@ { "pwd --- 用户密码数据库": { "data": { - "uuid": "python-4-532", + "uuid": "python-4-538", "seg": [ [ [ "pwd", "用户", "密码", - "数据库" + "数据库", + "用户密码", + "密码数据库" ] ] ], - "level": "1", + "level": { + "min": 0.22663666121112933, + "max": 0.22667757774140754 + }, "related_data": {} } } @@ -18348,7 +21626,7 @@ { "spwd --- The shadow password database": { "data": { - "uuid": "python-4-533", + "uuid": "python-4-539", "seg": [ [ [ @@ -18360,11 +21638,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22667757774140754, + "max": 0.22671849427168578 + }, "related_data": { "qa": { "data_id": [ - "8_7409485_53359930" + "8_7409485_53359930@8" ] } } @@ -18374,7 +21655,7 @@ { "grp --- 组数据库": { "data": { - "uuid": "python-4-534", + "uuid": "python-4-540", "seg": [ [ [ @@ -18383,7 +21664,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22671849427168578, + "max": 0.22675941080196402 + }, "related_data": {} } } @@ -18391,7 +21675,7 @@ { "crypt --- Function to check Unix passwords": { "data": { - "uuid": "python-4-535", + "uuid": "python-4-541", "seg": [ [ [ @@ -18404,15 +21688,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22675941080196402, + "max": 0.22680032733224223 + }, "related_data": { "qa": { "data_id": [ - "8_7455744_53439069", - "8_1095528_1306953", - "8_7456861_53441578", - "8_1019212_1224566", - "8_1059490_1256892" + "8_7455744_53439069@8", + "8_1095528_1306953@8", + "8_7456861_53441578@8", + "8_1019212_1224566@8", + "8_1059490_1256892@8" ] } } @@ -18422,7 +21709,7 @@ { "termios --- POSIX风格的tty控制": { "data": { - "uuid": "python-4-536", + "uuid": "python-4-542", "seg": [ [ [ @@ -18434,7 +21721,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22680032733224223, + "max": 0.22684124386252047 + }, "related_data": {} } } @@ -18442,7 +21732,7 @@ { "tty --- 终端控制功能": { "data": { - "uuid": "python-4-537", + "uuid": "python-4-543", "seg": [ [ [ @@ -18453,7 +21743,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22684124386252047, + "max": 0.2268821603927987 + }, "related_data": {} } } @@ -18461,18 +21754,22 @@ { "pty --- 伪终端工具": { "data": { - "uuid": "python-4-538", + "uuid": "python-4-544", "seg": [ [ [ "pty", "伪", "终端", - "工具" + "工具", + "终端工具" ] ] ], - "level": "1", + "level": { + "min": 0.2268821603927987, + "max": 0.22692307692307695 + }, "related_data": {} } } @@ -18480,7 +21777,7 @@ { "fcntl --- The fcntl and ioctl system calls": { "data": { - "uuid": "python-4-539", + "uuid": "python-4-545", "seg": [ [ [ @@ -18493,11 +21790,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22692307692307695, + "max": 0.22696399345335516 + }, "related_data": { "qa": { "data_id": [ - "8_790158_872741" + "8_790158_872741@8" ] } } @@ -18507,18 +21807,22 @@ { "pipes --- 终端管道接口": { "data": { - "uuid": "python-4-540", + "uuid": "python-4-546", "seg": [ [ [ "pipes", "终端", "管道", - "接口" + "接口", + "终端管道" ] ] ], - "level": "1", + "level": { + "min": 0.22696399345335516, + "max": 0.2270049099836334 + }, "related_data": {} } } @@ -18526,7 +21830,7 @@ { "resource --- Resource usage information": { "data": { - "uuid": "python-4-541", + "uuid": "python-4-547", "seg": [ [ [ @@ -18538,15 +21842,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2270049099836334, + "max": 0.22704582651391164 + }, "related_data": { "qa": { "data_id": [ - "8_940215_1076695", - "8_755578_811283", - "8_7459237_53444103", - "8_652782_460815", - "8_685320_544767" + "8_940215_1076695@8", + "8_755578_811283@8", + "8_7459237_53444103@8", + "8_652782_460815@8", + "8_685320_544767@8" ] } } @@ -18556,7 +21863,7 @@ { "nis --- Sun的NIS (黄页) 接口": { "data": { - "uuid": "python-4-542", + "uuid": "python-4-548", "seg": [ [ [ @@ -18567,7 +21874,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22704582651391164, + "max": 0.22708674304418985 + }, "related_data": {} } } @@ -18575,18 +21885,22 @@ { "Unix syslog库例程": { "data": { - "uuid": "python-4-543", + "uuid": "python-4-549", "seg": [ [ [ "unix", "syslog", "库", - "例程" + "例程", + "库例程" ] ] ], - "level": "1", + "level": { + "min": 0.22708674304418985, + "max": 0.2271276595744681 + }, "related_data": {} } } @@ -18603,7 +21917,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22659574468085109, + "max": 0.2271276595744681 + }, "related_data": {} } } @@ -18614,18 +21931,22 @@ { "optparse --- 解析器的命令行选项": { "data": { - "uuid": "python-4-544", + "uuid": "python-4-550", "seg": [ [ [ "optparse", "解析器", "命令行", - "选项" + "选项", + "命令行选项" ] ] ], - "level": "1", + "level": { + "min": 0.2271276595744681, + "max": 0.22739361702127658 + }, "related_data": {} } } @@ -18633,7 +21954,7 @@ { "imp --- Access the import internals": { "data": { - "uuid": "python-4-545", + "uuid": "python-4-551", "seg": [ [ [ @@ -18645,7 +21966,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22739361702127658, + "max": 0.2276595744680851 + }, "related_data": {} } } @@ -18661,7 +21985,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2271276595744681, + "max": 0.2276595744680851 + }, "related_data": {} } } @@ -18672,17 +21999,21 @@ { "平台特定模块": { "data": { - "uuid": "python-4-546", + "uuid": "python-4-552", "seg": [ [ [ "平台", "特定", - "模块" + "模块", + "特定模块" ] ] ], - "level": "1", + "level": { + "min": 0.2276595744680851, + "max": 0.22819148936170214 + }, "related_data": {} } } @@ -18695,11 +22026,15 @@ [ "创建", "文档", - "模块" + "模块", + "未创建" ] ] ], - "level": "1", + "level": { + "min": 0.2276595744680851, + "max": 0.22819148936170214 + }, "related_data": {} } } @@ -18710,7 +22045,7 @@ { "在交互式环境中输入表达式": { "data": { - "uuid": "python-4-547", + "uuid": "python-4-553", "seg": [ [ [ @@ -18721,7 +22056,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22819148936170214, + "max": 0.22829787234042553 + }, "related_data": {} } } @@ -18729,7 +22067,7 @@ { "字符串连接和复制": { "data": { - "uuid": "python-4-548", + "uuid": "python-4-554", "seg": [ [ [ @@ -18741,7 +22079,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22829787234042553, + "max": 0.22840425531914893 + }, "related_data": {} } } @@ -18752,7 +22093,7 @@ { "变量名": { "data": { - "uuid": "python-5-226", + "uuid": "python-5-229", "seg": [ [ [ @@ -18760,12 +22101,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22840425531914893, + "max": 0.22851063829787235 + }, "related_data": { "qa": { "data_id": [ - "8_7428737_53394984", - "8_659107_472762" + "8_7428737_53394984@8", + "8_659107_472762@8" ] } } @@ -18774,7 +22118,7 @@ } ], "data": { - "uuid": "python-4-549", + "uuid": "python-4-555", "seg": [ [ [ @@ -18784,15 +22128,24 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.22840425531914893, + "max": 0.22851063829787235 + }, + "related_data": { + "qa": { + "data_id": [ + "8_7416127_53370030@8" + ] + } + } } } }, { "第一个程序": { "data": { - "uuid": "python-4-550", + "uuid": "python-4-556", "seg": [ [ [ @@ -18800,18 +22153,21 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22851063829787235, + "max": 0.22861702127659575 + }, "related_data": { "qa": { "data_id": [ - "8_7439367_53413655", - "8_650786_457791", - "8_7434637_53405016", - "8_7450233_53430803", - "8_235100_213291", - "8_7440493_53415784", - "8_7451735_53433180", - "8_7449165_53429218" + "8_7439367_53413655@8", + "8_650786_457791@8", + "8_7434637_53405016@8", + "8_7450233_53430803@8", + "8_235100_213291@8", + "8_7440493_53415784@8", + "8_7451735_53433180@8", + "8_7449165_53429218@8" ] } } @@ -18824,7 +22180,7 @@ { "print函数": { "data": { - "uuid": "python-5-227", + "uuid": "python-5-230", "seg": [ [ [ @@ -18833,13 +22189,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22861702127659575, + "max": 0.2286436170212766 + }, "related_data": { "qa": { "data_id": [ - "8_1098593_1313233", - "8_7396555_53340347", - "8_1059372_1256851" + "8_1098593_1313233@8", + "8_7396555_53340347@8", + "8_1059372_1256851@8" ] } } @@ -18849,7 +22208,7 @@ { "input函数": { "data": { - "uuid": "python-5-228", + "uuid": "python-5-231", "seg": [ [ [ @@ -18858,11 +22217,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2286436170212766, + "max": 0.22867021276595745 + }, "related_data": { "qa": { "data_id": [ - "8_699851_588313" + "8_699851_588313@8" ] } } @@ -18872,7 +22234,7 @@ { "输出用户的名字": { "data": { - "uuid": "python-5-229", + "uuid": "python-5-232", "seg": [ [ [ @@ -18882,11 +22244,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22867021276595745, + "max": 0.22869680851063828 + }, "related_data": { "qa": { "data_id": [ - "8_1119017_1445397" + "8_1119017_1445397@8" ] } } @@ -18896,7 +22261,7 @@ { "len函数": { "data": { - "uuid": "python-5-230", + "uuid": "python-5-233", "seg": [ [ [ @@ -18905,11 +22270,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22869680851063828, + "max": 0.22872340425531915 + }, "related_data": { "qa": { "data_id": [ - "8_766990_826425" + "8_766990_826425@8" ] } } @@ -18918,7 +22286,7 @@ } ], "data": { - "uuid": "python-4-551", + "uuid": "python-4-557", "seg": [ [ [ @@ -18927,7 +22295,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22861702127659575, + "max": 0.22872340425531915 + }, "related_data": {} } } @@ -18943,7 +22314,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22819148936170214, + "max": 0.22872340425531915 + }, "related_data": {} } } @@ -18954,7 +22328,7 @@ { "切片": { "data": { - "uuid": "python-4-552", + "uuid": "python-4-558", "seg": [ [ [ @@ -18962,7 +22336,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22872340425531915, + "max": 0.22890070921985817 + }, "related_data": {} } } @@ -18970,7 +22347,7 @@ { "迭代": { "data": { - "uuid": "python-4-553", + "uuid": "python-4-559", "seg": [ [ [ @@ -18978,7 +22355,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22890070921985817, + "max": 0.22907801418439716 + }, "related_data": {} } } @@ -18986,7 +22366,7 @@ { "列表生成式": { "data": { - "uuid": "python-4-554", + "uuid": "python-4-560", "seg": [ [ [ @@ -18995,7 +22375,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22907801418439716, + "max": 0.22925531914893618 + }, "related_data": {} } } @@ -19011,7 +22394,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22872340425531915, + "max": 0.22925531914893618 + }, "related_data": {} } } @@ -19025,7 +22411,7 @@ { "map/reduce": { "data": { - "uuid": "python-5-231", + "uuid": "python-5-234", "seg": [ [ [ @@ -19034,16 +22420,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22925531914893618, + "max": 0.22932180851063833 + }, "related_data": { "qa": { "data_id": [ - "8_7420591_53378467", - "8_7449379_53429400", - "8_7419660_53377192", - "8_7396540_53340373", - "8_7413090_53364865", - "8_713846_705436" + "8_7420591_53378467@8", + "8_7449379_53429400@8", + "8_7419660_53377192@8", + "8_7396540_53340373@8", + "8_7413090_53364865@8", + "8_713846_705436@8" ] } } @@ -19053,7 +22442,7 @@ { "filter": { "data": { - "uuid": "python-5-232", + "uuid": "python-5-235", "seg": [ [ [ @@ -19061,23 +22450,30 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22932180851063833, + "max": 0.22938829787234044 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-555", + "uuid": "python-4-561", "seg": [ [ [ "高阶", - "函数" + "函数", + "高阶函数" ] ] ], - "level": "1", + "level": { + "min": 0.22925531914893618, + "max": 0.22938829787234044 + }, "related_data": {} } } @@ -19085,7 +22481,7 @@ { "返回函数": { "data": { - "uuid": "python-4-556", + "uuid": "python-4-562", "seg": [ [ [ @@ -19094,11 +22490,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22938829787234044, + "max": 0.22952127659574467 + }, "related_data": { "qa": { "data_id": [ - "8_729403_742526" + "8_729403_742526@8" ] } } @@ -19108,7 +22507,7 @@ { "匿名函数": { "data": { - "uuid": "python-4-557", + "uuid": "python-4-563", "seg": [ [ [ @@ -19117,7 +22516,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22952127659574467, + "max": 0.22965425531914893 + }, "related_data": {} } } @@ -19125,7 +22527,7 @@ { "偏函数": { "data": { - "uuid": "python-4-558", + "uuid": "python-4-564", "seg": [ [ [ @@ -19134,7 +22536,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22965425531914893, + "max": 0.2297872340425532 + }, "related_data": {} } } @@ -19146,11 +22551,15 @@ [ [ "函数", - "编程" + "编程", + "函数式" ] ] ], - "level": "1", + "level": { + "min": 0.22925531914893618, + "max": 0.2297872340425532 + }, "related_data": {} } } @@ -19161,7 +22570,7 @@ { "使用__slots__": { "data": { - "uuid": "python-4-559", + "uuid": "python-4-565", "seg": [ [ [ @@ -19169,7 +22578,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2297872340425532, + "max": 0.22992021276595745 + }, "related_data": {} } } @@ -19177,7 +22589,7 @@ { "使用@property": { "data": { - "uuid": "python-4-560", + "uuid": "python-4-566", "seg": [ [ [ @@ -19185,12 +22597,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.22992021276595745, + "max": 0.2300531914893617 + }, "related_data": { "qa": { "data_id": [ - "8_354775_367474", - "8_1091493_1299003" + "8_354775_367474@8", + "8_1091493_1299003@8" ] } } @@ -19200,7 +22615,7 @@ { "定制类": { "data": { - "uuid": "python-4-561", + "uuid": "python-4-567", "seg": [ [ [ @@ -19209,7 +22624,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2300531914893617, + "max": 0.23018617021276597 + }, "related_data": {} } } @@ -19217,16 +22635,20 @@ { "使用枚举类": { "data": { - "uuid": "python-4-562", + "uuid": "python-4-568", "seg": [ [ [ "枚举", - "类" + "类", + "枚举类" ] ] ], - "level": "1", + "level": { + "min": 0.23018617021276597, + "max": 0.23031914893617023 + }, "related_data": {} } } @@ -19243,7 +22665,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2297872340425532, + "max": 0.23031914893617023 + }, "related_data": {} } } @@ -19254,7 +22679,7 @@ { "StringIO和BytesIO": { "data": { - "uuid": "python-4-563", + "uuid": "python-4-569", "seg": [ [ [ @@ -19265,7 +22690,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23031914893617023, + "max": 0.23049645390070922 + }, "related_data": {} } } @@ -19273,7 +22701,7 @@ { "操作文件和目录": { "data": { - "uuid": "python-4-564", + "uuid": "python-4-570", "seg": [ [ [ @@ -19285,7 +22713,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23049645390070922, + "max": 0.23067375886524824 + }, "related_data": {} } } @@ -19293,7 +22724,7 @@ { "序列化": { "data": { - "uuid": "python-4-565", + "uuid": "python-4-571", "seg": [ [ [ @@ -19301,7 +22732,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23067375886524824, + "max": 0.23085106382978723 + }, "related_data": {} } } @@ -19317,7 +22751,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23031914893617023, + "max": 0.23085106382978723 + }, "related_data": {} } } @@ -19328,7 +22765,7 @@ { "多进程": { "data": { - "uuid": "python-4-566", + "uuid": "python-4-572", "seg": [ [ [ @@ -19336,7 +22773,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23085106382978723, + "max": 0.2309840425531915 + }, "related_data": {} } } @@ -19344,7 +22784,7 @@ { "ThreadLocal": { "data": { - "uuid": "python-4-567", + "uuid": "python-4-573", "seg": [ [ [ @@ -19352,7 +22792,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2309840425531915, + "max": 0.23111702127659575 + }, "related_data": {} } } @@ -19360,7 +22803,7 @@ { "进程vs. 线程": { "data": { - "uuid": "python-4-568", + "uuid": "python-4-574", "seg": [ [ [ @@ -19370,15 +22813,18 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23111702127659575, + "max": 0.23125 + }, "related_data": { "qa": { "data_id": [ - "8_693219_570331", - "8_774518_838455", - "8_697320_582296", - "8_767492_827115", - "8_1058633_1255992" + "8_693219_570331@8", + "8_774518_838455@8", + "8_697320_582296@8", + "8_767492_827115@8", + "8_1058633_1255992@8" ] } } @@ -19388,16 +22834,20 @@ { "分布式进程": { "data": { - "uuid": "python-4-569", + "uuid": "python-4-575", "seg": [ [ [ "分布式", - "进程" + "进程", + "分布式进程" ] ] ], - "level": "1", + "level": { + "min": 0.23125, + "max": 0.23138297872340427 + }, "related_data": {} } } @@ -19415,7 +22865,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23085106382978723, + "max": 0.23138297872340427 + }, "related_data": {} } } @@ -19431,8 +22884,22 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.23138297872340427, + "max": 0.23191489361702128 + }, + "related_data": { + "qa": { + "data_id": [ + "8_1100547_1315358@8", + "8_778104_844573@8", + "8_7415393_53368983@8", + "8_7423075_53382341@8", + "8_338270_335969@8", + "8_7427112_53391229@8" + ] + } + } } } }, @@ -19442,7 +22909,7 @@ { "collections": { "data": { - "uuid": "python-4-570", + "uuid": "python-4-576", "seg": [ [ [ @@ -19450,7 +22917,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23191489361702128, + "max": 0.23197399527186763 + }, "related_data": {} } } @@ -19458,7 +22928,7 @@ { "base64": { "data": { - "uuid": "python-4-571", + "uuid": "python-4-577", "seg": [ [ [ @@ -19466,7 +22936,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23197399527186763, + "max": 0.23203309692671395 + }, "related_data": {} } } @@ -19474,7 +22947,7 @@ { "struct": { "data": { - "uuid": "python-4-572", + "uuid": "python-4-578", "seg": [ [ [ @@ -19482,7 +22955,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23203309692671395, + "max": 0.2320921985815603 + }, "related_data": {} } } @@ -19490,7 +22966,7 @@ { "hashlib": { "data": { - "uuid": "python-4-573", + "uuid": "python-4-579", "seg": [ [ [ @@ -19498,7 +22974,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2320921985815603, + "max": 0.23215130023640662 + }, "related_data": {} } } @@ -19506,7 +22985,7 @@ { "hmac": { "data": { - "uuid": "python-4-574", + "uuid": "python-4-580", "seg": [ [ [ @@ -19514,7 +22993,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23215130023640662, + "max": 0.23221040189125297 + }, "related_data": {} } } @@ -19522,7 +23004,7 @@ { "itertools": { "data": { - "uuid": "python-4-575", + "uuid": "python-4-581", "seg": [ [ [ @@ -19530,7 +23012,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23221040189125297, + "max": 0.2322695035460993 + }, "related_data": {} } } @@ -19538,7 +23023,7 @@ { "contextlib": { "data": { - "uuid": "python-4-576", + "uuid": "python-4-582", "seg": [ [ [ @@ -19546,7 +23031,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2322695035460993, + "max": 0.23232860520094564 + }, "related_data": {} } } @@ -19554,7 +23042,7 @@ { "XML": { "data": { - "uuid": "python-4-577", + "uuid": "python-4-583", "seg": [ [ [ @@ -19562,7 +23050,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23232860520094564, + "max": 0.23238770685579196 + }, "related_data": {} } } @@ -19570,7 +23061,7 @@ { "HTMLParser": { "data": { - "uuid": "python-4-578", + "uuid": "python-4-584", "seg": [ [ [ @@ -19578,7 +23069,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23238770685579196, + "max": 0.23244680851063831 + }, "related_data": {} } } @@ -19594,7 +23088,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23191489361702128, + "max": 0.23244680851063831 + }, "related_data": {} } } @@ -19610,7 +23107,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23244680851063831, + "max": 0.23297872340425532 + }, "related_data": {} } } @@ -19621,16 +23121,20 @@ { "海龟绘图": { "data": { - "uuid": "python-4-579", + "uuid": "python-4-585", "seg": [ [ [ "海龟", - "绘图" + "绘图", + "海龟绘图" ] ] ], - "level": "1", + "level": { + "min": 0.23297872340425532, + "max": 0.23351063829787233 + }, "related_data": {} } } @@ -19645,7 +23149,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23297872340425532, + "max": 0.23351063829787233 + }, "related_data": {} } } @@ -19656,7 +23163,7 @@ { "TCP/IP简介": { "data": { - "uuid": "python-4-580", + "uuid": "python-4-586", "seg": [ [ [ @@ -19666,7 +23173,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23351063829787233, + "max": 0.23359929078014183 + }, "related_data": {} } } @@ -19674,7 +23184,7 @@ { "TCP编程": { "data": { - "uuid": "python-4-581", + "uuid": "python-4-587", "seg": [ [ [ @@ -19683,7 +23193,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23359929078014183, + "max": 0.23368794326241135 + }, "related_data": {} } } @@ -19691,7 +23204,7 @@ { "UDP编程": { "data": { - "uuid": "python-4-582", + "uuid": "python-4-588", "seg": [ [ [ @@ -19700,7 +23213,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23368794326241135, + "max": 0.23377659574468085 + }, "related_data": {} } } @@ -19711,7 +23227,7 @@ { "模块socket": { "data": { - "uuid": "python-5-233", + "uuid": "python-5-236", "seg": [ [ [ @@ -19720,11 +23236,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23377659574468085, + "max": 0.2338209219858156 + }, "related_data": { "qa": { "data_id": [ - "8_251512_250187" + "8_251512_250187@8" ] } } @@ -19734,7 +23253,7 @@ { "模块urllib和urllib2": { "data": { - "uuid": "python-5-234", + "uuid": "python-5-237", "seg": [ [ [ @@ -19746,11 +23265,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2338209219858156, + "max": 0.23386524822695035 + }, "related_data": { "qa": { "data_id": [ - "8_727119_735458" + "8_727119_735458@8" ] } } @@ -19759,16 +23281,20 @@ } ], "data": { - "uuid": "python-4-583", + "uuid": "python-4-589", "seg": [ [ [ "网络", - "模块" + "模块", + "网络模块" ] ] ], - "level": "1", + "level": { + "min": 0.23377659574468085, + "max": 0.23386524822695035 + }, "related_data": {} } } @@ -19776,7 +23302,7 @@ { "SocketServer及相关的类": { "data": { - "uuid": "python-4-584", + "uuid": "python-4-590", "seg": [ [ [ @@ -19788,7 +23314,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23386524822695035, + "max": 0.23395390070921987 + }, "related_data": {} } } @@ -19799,7 +23328,7 @@ { "下载并安装Twisted": { "data": { - "uuid": "python-5-235", + "uuid": "python-5-238", "seg": [ [ [ @@ -19809,13 +23338,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23395390070921987, + "max": 0.2339982269503546 + }, "related_data": { "qa": { "data_id": [ - "8_733035_754081", - "8_7446679_53426198", - "8_1056774_1253820" + "8_733035_754081@8", + "8_7446679_53426198@8", + "8_1056774_1253820@8" ] } } @@ -19825,7 +23357,7 @@ { "编写Twisted服务器": { "data": { - "uuid": "python-5-236", + "uuid": "python-5-239", "seg": [ [ [ @@ -19835,14 +23367,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2339982269503546, + "max": 0.23404255319148937 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-585", + "uuid": "python-4-591", "seg": [ [ [ @@ -19850,7 +23385,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23395390070921987, + "max": 0.23404255319148937 + }, "related_data": {} } } @@ -19862,11 +23400,15 @@ [ [ "网络", - "编程" + "编程", + "网络编程" ] ] ], - "level": "1", + "level": { + "min": 0.23351063829787233, + "max": 0.23404255319148937 + }, "related_data": {} } } @@ -19877,7 +23419,7 @@ { "SMTP发送邮件": { "data": { - "uuid": "python-4-586", + "uuid": "python-4-592", "seg": [ [ [ @@ -19887,11 +23429,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23404255319148937, + "max": 0.23430851063829788 + }, "related_data": { "qa": { "data_id": [ - "8_1094618_1304988" + "8_1094618_1304988@8", + "8_1071691_1273967@8" ] } } @@ -19901,7 +23447,7 @@ { "POP3收取邮件": { "data": { - "uuid": "python-4-587", + "uuid": "python-4-593", "seg": [ [ [ @@ -19911,7 +23457,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23430851063829788, + "max": 0.2345744680851064 + }, "related_data": {} } } @@ -19926,7 +23475,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23404255319148937, + "max": 0.2345744680851064 + }, "related_data": {} } } @@ -19937,7 +23489,7 @@ { "使用SQLite": { "data": { - "uuid": "python-4-588", + "uuid": "python-4-594", "seg": [ [ [ @@ -19945,7 +23497,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2345744680851064, + "max": 0.2347517730496454 + }, "related_data": {} } } @@ -19953,7 +23508,7 @@ { "使用MySQL": { "data": { - "uuid": "python-4-589", + "uuid": "python-4-595", "seg": [ [ [ @@ -19961,7 +23516,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2347517730496454, + "max": 0.23492907801418442 + }, "related_data": {} } } @@ -19969,7 +23527,7 @@ { "使用SQLAlchemy": { "data": { - "uuid": "python-4-590", + "uuid": "python-4-596", "seg": [ [ [ @@ -19977,11 +23535,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23492907801418442, + "max": 0.2351063829787234 + }, "related_data": { "qa": { "data_id": [ - "8_348437_355577" + "8_348437_355577@8" ] } } @@ -19999,7 +23560,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2345744680851064, + "max": 0.2351063829787234 + }, "related_data": {} } } @@ -20010,7 +23574,7 @@ { "HTTP协议简介": { "data": { - "uuid": "python-4-591", + "uuid": "python-4-597", "seg": [ [ [ @@ -20020,7 +23584,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2351063829787234, + "max": 0.23523936170212767 + }, "related_data": {} } } @@ -20028,7 +23595,7 @@ { "HTML简介": { "data": { - "uuid": "python-4-592", + "uuid": "python-4-598", "seg": [ [ [ @@ -20037,7 +23604,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23523936170212767, + "max": 0.2353723404255319 + }, "related_data": {} } } @@ -20045,7 +23615,7 @@ { "WSGI接口": { "data": { - "uuid": "python-4-593", + "uuid": "python-4-599", "seg": [ [ [ @@ -20054,7 +23624,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2353723404255319, + "max": 0.23550531914893616 + }, "related_data": {} } } @@ -20062,7 +23635,7 @@ { "使用Web框架": { "data": { - "uuid": "python-4-594", + "uuid": "python-4-600", "seg": [ [ [ @@ -20071,7 +23644,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23550531914893616, + "max": 0.23563829787234042 + }, "related_data": {} } } @@ -20087,7 +23663,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2351063829787234, + "max": 0.23563829787234042 + }, "related_data": {} } } @@ -20098,7 +23677,7 @@ { "asyncio": { "data": { - "uuid": "python-4-595", + "uuid": "python-4-601", "seg": [ [ [ @@ -20106,7 +23685,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23563829787234042, + "max": 0.23581560283687944 + }, "related_data": {} } } @@ -20114,7 +23696,7 @@ { "async/await": { "data": { - "uuid": "python-4-596", + "uuid": "python-4-602", "seg": [ [ [ @@ -20123,7 +23705,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23581560283687944, + "max": 0.23599290780141843 + }, "related_data": {} } } @@ -20131,7 +23716,7 @@ { "aiohttp": { "data": { - "uuid": "python-4-597", + "uuid": "python-4-603", "seg": [ [ [ @@ -20139,7 +23724,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23599290780141843, + "max": 0.23617021276595745 + }, "related_data": {} } } @@ -20155,7 +23743,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23563829787234042, + "max": 0.23617021276595745 + }, "related_data": {} } } @@ -20166,7 +23757,7 @@ { "搭建开发环境": { "data": { - "uuid": "python-4-598", + "uuid": "python-4-604", "seg": [ [ [ @@ -20176,7 +23767,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23617021276595745, + "max": 0.2363031914893617 + }, "related_data": {} } } @@ -20184,7 +23778,7 @@ { "控制小车": { "data": { - "uuid": "python-4-599", + "uuid": "python-4-605", "seg": [ [ [ @@ -20193,7 +23787,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2363031914893617, + "max": 0.23643617021276597 + }, "related_data": {} } } @@ -20201,7 +23798,7 @@ { "遥控小车": { "data": { - "uuid": "python-4-600", + "uuid": "python-4-606", "seg": [ [ [ @@ -20210,7 +23807,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23643617021276597, + "max": 0.2365691489361702 + }, "related_data": {} } } @@ -20218,7 +23818,7 @@ { "遥控转向": { "data": { - "uuid": "python-4-601", + "uuid": "python-4-607", "seg": [ [ [ @@ -20227,7 +23827,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2365691489361702, + "max": 0.23670212765957446 + }, "related_data": {} } } @@ -20242,7 +23845,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23617021276595745, + "max": 0.23670212765957446 + }, "related_data": {} } } @@ -20253,7 +23859,7 @@ { "字典的用途": { "data": { - "uuid": "python-4-602", + "uuid": "python-4-608", "seg": [ [ [ @@ -20262,7 +23868,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23670212765957446, + "max": 0.2372340425531915 + }, "related_data": {} } } @@ -20278,7 +23887,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23670212765957446, + "max": 0.2372340425531915 + }, "related_data": {} } } @@ -20289,7 +23901,7 @@ { "懒惰是一种美德": { "data": { - "uuid": "python-4-603", + "uuid": "python-4-609", "seg": [ [ [ @@ -20298,7 +23910,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2372340425531915, + "max": 0.23736702127659576 + }, "related_data": {} } } @@ -20309,7 +23924,7 @@ { "给函数编写文档": { "data": { - "uuid": "python-5-237", + "uuid": "python-5-240", "seg": [ [ [ @@ -20319,18 +23934,21 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23736702127659576, + "max": 0.2375 + }, "related_data": { "qa": { "data_id": [ - "8_7446039_53425061", - "8_1102196_1316591", - "8_7427183_53391236", - "8_7428455_53394214", - "8_709882_667693", - "8_7456450_53440266", - "8_666241_484559", - "8_7456701_53441357" + "8_7446039_53425061@8", + "8_1102196_1316591@8", + "8_7427183_53391236@8", + "8_7428455_53394214@8", + "8_709882_667693@8", + "8_7456450_53440266@8", + "8_666241_484559@8", + "8_7456701_53441357@8" ] } } @@ -20339,7 +23957,7 @@ } ], "data": { - "uuid": "python-4-604", + "uuid": "python-4-610", "seg": [ [ [ @@ -20348,11 +23966,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23736702127659576, + "max": 0.2375 + }, "related_data": { "qa": { "data_id": [ - "8_7431787_53400340" + "8_7431787_53400340@8" ] } } @@ -20365,7 +23986,7 @@ { "值从哪里来": { "data": { - "uuid": "python-5-238", + "uuid": "python-5-241", "seg": [ [ [ @@ -20373,11 +23994,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2375, + "max": 0.23753324468085105 + }, "related_data": { "qa": { "data_id": [ - "8_7433138_53402943" + "8_7433138_53402943@8" ] } } @@ -20387,7 +24011,7 @@ { "我能修改参数吗": { "data": { - "uuid": "python-5-239", + "uuid": "python-5-242", "seg": [ [ [ @@ -20396,11 +24020,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23753324468085105, + "max": 0.2375664893617021 + }, "related_data": { "qa": { "data_id": [ - "8_7404691_53353650" + "8_7404691_53353650@8" ] } } @@ -20410,7 +24037,7 @@ { "收集参数": { "data": { - "uuid": "python-5-240", + "uuid": "python-5-243", "seg": [ [ [ @@ -20419,7 +24046,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2375664893617021, + "max": 0.2375997340425532 + }, "related_data": {} } } @@ -20427,7 +24057,7 @@ { "分配参数": { "data": { - "uuid": "python-5-241", + "uuid": "python-5-244", "seg": [ [ [ @@ -20436,11 +24066,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2375997340425532, + "max": 0.23763297872340425 + }, "related_data": { "qa": { "data_id": [ - "8_7410981_53361791" + "8_7410981_53361791@8" ] } } @@ -20449,16 +24082,20 @@ } ], "data": { - "uuid": "python-4-605", + "uuid": "python-4-611", "seg": [ [ [ "参数", - "魔法" + "魔法", + "参数魔法" ] ] ], - "level": "1", + "level": { + "min": 0.2375, + "max": 0.23763297872340425 + }, "related_data": {} } } @@ -20469,12 +24106,13 @@ { "两个经典案例:阶乘和幂": { "data": { - "uuid": "python-5-242", + "uuid": "python-5-245", "seg": [ [ [ "经典", - "案例" + "案例", + "经典案例" ] ], [ @@ -20486,11 +24124,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23763297872340425, + "max": 0.2376994680851064 + }, "related_data": { "qa": { "data_id": [ - "8_7432664_53402065" + "8_7432664_53402065@8" ] } } @@ -20500,12 +24141,13 @@ { "另一个经典案例:二分查找": { "data": { - "uuid": "python-5-243", + "uuid": "python-5-246", "seg": [ [ [ "经典", - "案例" + "案例", + "经典案例" ] ], [ @@ -20514,11 +24156,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2376994680851064, + "max": 0.2377659574468085 + }, "related_data": { "qa": { "data_id": [ - "8_1054999_1252053" + "8_1054999_1252053@8" ] } } @@ -20527,7 +24172,7 @@ } ], "data": { - "uuid": "python-4-606", + "uuid": "python-4-612", "seg": [ [ [ @@ -20535,13 +24180,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23763297872340425, + "max": 0.2377659574468085 + }, "related_data": { "qa": { "data_id": [ - "8_1064883_1263906", - "8_7447860_53427816", - "8_7434772_53405437" + "8_1064883_1263906@8", + "8_7447860_53427816@8", + "8_7434772_53405437@8" ] } } @@ -20558,7 +24206,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2372340425531915, + "max": 0.2377659574468085 + }, "related_data": {} } } @@ -20569,16 +24220,20 @@ { "对象魔法": { "data": { - "uuid": "python-4-607", + "uuid": "python-4-613", "seg": [ [ [ "对象", - "魔法" + "魔法", + "对象魔法" ] ] ], - "level": "1", + "level": { + "min": 0.2377659574468085, + "max": 0.23803191489361702 + }, "related_data": {} } } @@ -20586,7 +24241,7 @@ { "关于面向对象设计的一些思考": { "data": { - "uuid": "python-4-608", + "uuid": "python-4-614", "seg": [ [ [ @@ -20596,7 +24251,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23803191489361702, + "max": 0.23829787234042554 + }, "related_data": {} } } @@ -20608,11 +24266,15 @@ [ [ "谈", - "抽象" + "抽象", + "再谈" ] ] ], - "level": "1", + "level": { + "min": 0.2377659574468085, + "max": 0.23829787234042554 + }, "related_data": {} } } @@ -20626,7 +24288,7 @@ { "模块包含什么": { "data": { - "uuid": "python-5-244", + "uuid": "python-5-247", "seg": [ [ [ @@ -20635,7 +24297,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23829787234042554, + "max": 0.2384308510638298 + }, "related_data": {} } } @@ -20643,7 +24308,7 @@ { "使用help获取帮助": { "data": { - "uuid": "python-5-245", + "uuid": "python-5-248", "seg": [ [ [ @@ -20652,13 +24317,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2384308510638298, + "max": 0.23856382978723406 + }, "related_data": { "qa": { "data_id": [ - "8_1095308_1306531", - "8_7412927_53364476", - "8_1095291_1306481" + "8_7412927_53364476@8", + "8_1095291_1306481@8" ] } } @@ -20668,7 +24335,7 @@ { "文档": { "data": { - "uuid": "python-5-246", + "uuid": "python-5-249", "seg": [ [ [ @@ -20676,7 +24343,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23856382978723406, + "max": 0.2386968085106383 + }, "related_data": {} } } @@ -20684,20 +24354,23 @@ { "使用源代码": { "data": { - "uuid": "python-5-247", + "uuid": "python-5-250", "seg": [ [ [] ] ], - "level": "1", + "level": { + "min": 0.2386968085106383, + "max": 0.23882978723404255 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-609", + "uuid": "python-4-615", "seg": [ [ [ @@ -20706,7 +24379,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23829787234042554, + "max": 0.23882978723404255 + }, "related_data": {} } } @@ -20721,7 +24397,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23829787234042554, + "max": 0.23882978723404255 + }, "related_data": {} } } @@ -20735,7 +24414,7 @@ { "初探": { "data": { - "uuid": "python-5-248", + "uuid": "python-5-251", "seg": [ [ [ @@ -20743,7 +24422,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23882978723404255, + "max": 0.2388962765957447 + }, "related_data": {} } } @@ -20751,7 +24433,7 @@ { "布局": { "data": { - "uuid": "python-5-249", + "uuid": "python-5-252", "seg": [ [ [ @@ -20759,7 +24441,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2388962765957447, + "max": 0.2389627659574468 + }, "related_data": {} } } @@ -20767,7 +24452,7 @@ { "事件处理": { "data": { - "uuid": "python-5-250", + "uuid": "python-5-253", "seg": [ [ [ @@ -20775,7 +24460,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2389627659574468, + "max": 0.23902925531914893 + }, "related_data": {} } } @@ -20783,7 +24471,7 @@ { "最终的程序": { "data": { - "uuid": "python-5-251", + "uuid": "python-5-254", "seg": [ [ [ @@ -20792,11 +24480,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23902925531914893, + "max": 0.23909574468085107 + }, "related_data": { "qa": { "data_id": [ - "8_1098759_1313518" + "8_1098759_1313518@8" ] } } @@ -20805,18 +24496,22 @@ } ], "data": { - "uuid": "python-4-610", + "uuid": "python-4-616", "seg": [ [ [ "创建", "gui", "示例", - "应用程序" + "应用程序", + "示例应用程序" ] ] ], - "level": "1", + "level": { + "min": 0.23882978723404255, + "max": 0.23909574468085107 + }, "related_data": {} } } @@ -20824,7 +24519,7 @@ { "使用其他GUI工具包": { "data": { - "uuid": "python-4-611", + "uuid": "python-4-617", "seg": [ [ [ @@ -20833,7 +24528,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23909574468085107, + "max": 0.2393617021276596 + }, "related_data": {} } } @@ -20848,7 +24546,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23882978723404255, + "max": 0.2393617021276596 + }, "related_data": {} } } @@ -20862,7 +24563,7 @@ { "全局变量": { "data": { - "uuid": "python-5-252", + "uuid": "python-5-255", "seg": [ [ [ @@ -20870,8 +24571,18 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.2393617021276596, + "max": 0.23962765957446808 + }, + "related_data": { + "qa": { + "data_id": [ + "8_7429424_53396302@8", + "8_1090458_1297324@8" + ] + } + } } } }, @@ -20890,11 +24601,15 @@ ], [ "线程", - "化" + "化", + "线程化" ] ] ], - "level": "1", + "level": { + "min": 0.23962765957446808, + "max": 0.23976063829787234 + }, "related_data": {} } } @@ -20916,11 +24631,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23976063829787234, + "max": 0.2398936170212766 + }, "related_data": { "qa": { "data_id": [ - "8_1050402_1247553" + "8_1050402_1247553@8" ] } } @@ -20929,7 +24647,7 @@ } ], "data": { - "uuid": "python-5-253", + "uuid": "python-5-256", "seg": [ [ [ @@ -20940,14 +24658,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23962765957446808, + "max": 0.2398936170212766 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-612", + "uuid": "python-4-618", "seg": [ [ [ @@ -20957,7 +24678,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2393617021276596, + "max": 0.2398936170212766 + }, "related_data": {} } } @@ -20973,7 +24697,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2393617021276596, + "max": 0.2398936170212766 + }, "related_data": {} } } @@ -20987,7 +24714,7 @@ { "Tidy和XHTML解析": { "data": { - "uuid": "python-5-254", + "uuid": "python-5-257", "seg": [ [ [ @@ -20999,11 +24726,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2398936170212766, + "max": 0.23998226950354612 + }, "related_data": { "qa": { "data_id": [ - "8_7440602_53418882" + "8_7440602_53418882@8" ] } } @@ -21013,7 +24743,7 @@ { "Beautiful Soup": { "data": { - "uuid": "python-5-255", + "uuid": "python-5-258", "seg": [ [ [ @@ -21024,14 +24754,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.23998226950354612, + "max": 0.24007092198581562 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-613", + "uuid": "python-4-619", "seg": [ [ [ @@ -21040,11 +24773,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2398936170212766, + "max": 0.24007092198581562 + }, "related_data": { "qa": { "data_id": [ - "8_871746_1003841" + "8_871746_1003841@8" ] } } @@ -21057,7 +24793,7 @@ { "第一步:准备Web服务器": { "data": { - "uuid": "python-5-256", + "uuid": "python-5-259", "seg": [ [ [] @@ -21069,7 +24805,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24007092198581562, + "max": 0.240093085106383 + }, "related_data": {} } } @@ -21077,7 +24816,7 @@ { "第二步:添加!#行": { "data": { - "uuid": "python-5-257", + "uuid": "python-5-260", "seg": [ [ [] @@ -21090,11 +24829,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.240093085106383, + "max": 0.24011524822695035 + }, "related_data": { "qa": { "data_id": [ - "8_7444996_53423566" + "8_7444996_53423566@8" ] } } @@ -21104,7 +24846,7 @@ { "第三步:设置文件权限": { "data": { - "uuid": "python-5-258", + "uuid": "python-5-261", "seg": [ [ [] @@ -21113,11 +24855,15 @@ [ "设置", "文件", - "权限" + "权限", + "文件权限" ] ] ], - "level": "1", + "level": { + "min": 0.24011524822695035, + "max": 0.24013741134751773 + }, "related_data": {} } } @@ -21125,7 +24871,7 @@ { "CGI安全风险": { "data": { - "uuid": "python-5-259", + "uuid": "python-5-262", "seg": [ [ [ @@ -21134,7 +24880,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24013741134751773, + "max": 0.2401595744680851 + }, "related_data": {} } } @@ -21142,7 +24891,7 @@ { "简单的CGI脚本": { "data": { - "uuid": "python-5-260", + "uuid": "python-5-263", "seg": [ [ [ @@ -21151,7 +24900,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2401595744680851, + "max": 0.2401817375886525 + }, "related_data": {} } } @@ -21159,7 +24911,7 @@ { "使用cgitb进行调试": { "data": { - "uuid": "python-5-261", + "uuid": "python-5-264", "seg": [ [ [ @@ -21168,11 +24920,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2401817375886525, + "max": 0.24020390070921988 + }, "related_data": { "qa": { "data_id": [ - "8_919770_1055034" + "8_919770_1055034@8" ] } } @@ -21182,7 +24937,7 @@ { "使用模块cgi": { "data": { - "uuid": "python-5-262", + "uuid": "python-5-265", "seg": [ [ [ @@ -21191,7 +24946,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24020390070921988, + "max": 0.24022606382978723 + }, "related_data": {} } } @@ -21199,7 +24957,7 @@ { "简单的表单": { "data": { - "uuid": "python-5-263", + "uuid": "python-5-266", "seg": [ [ [ @@ -21207,25 +24965,32 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24022606382978723, + "max": 0.2402482269503546 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-614", + "uuid": "python-4-620", "seg": [ [ [ "cgi", "创建", "动态", - "网页" + "网页", + "动态网页" ] ] ], - "level": "1", + "level": { + "min": 0.24007092198581562, + "max": 0.2402482269503546 + }, "related_data": {} } } @@ -21236,7 +25001,7 @@ { "RSS和相关内容": { "data": { - "uuid": "python-5-264", + "uuid": "python-5-267", "seg": [ [ [ @@ -21248,7 +25013,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2402482269503546, + "max": 0.24030732860520096 + }, "related_data": {} } } @@ -21256,7 +25024,7 @@ { "使用XML-RPC进行远程过程调用": { "data": { - "uuid": "python-5-265", + "uuid": "python-5-268", "seg": [ [ [ @@ -21264,11 +25032,15 @@ "rpc", "远程", "过程", - "调用" + "调用", + "远程过程" ] ] ], - "level": "1", + "level": { + "min": 0.24030732860520096, + "max": 0.24036643026004728 + }, "related_data": {} } } @@ -21276,7 +25048,7 @@ { "SOAP": { "data": { - "uuid": "python-5-266", + "uuid": "python-5-269", "seg": [ [ [ @@ -21284,14 +25056,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24036643026004728, + "max": 0.24042553191489363 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-615", + "uuid": "python-4-621", "seg": [ [ [ @@ -21306,7 +25081,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2402482269503546, + "max": 0.24042553191489363 + }, "related_data": {} } } @@ -21324,7 +25102,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2398936170212766, + "max": 0.24042553191489363 + }, "related_data": {} } } @@ -21338,7 +25119,7 @@ { "准确的需求说明": { "data": { - "uuid": "python-5-267", + "uuid": "python-5-270", "seg": [ [ [ @@ -21347,7 +25128,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24042553191489363, + "max": 0.24048463356973995 + }, "related_data": {} } } @@ -21355,7 +25139,7 @@ { "做好应对变化的准备": { "data": { - "uuid": "python-5-268", + "uuid": "python-5-271", "seg": [ [ [ @@ -21365,11 +25149,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24048463356973995, + "max": 0.2405437352245863 + }, "related_data": { "qa": { "data_id": [ - "8_7452467_53434475" + "8_7452467_53434475@8" ] } } @@ -21379,28 +25166,36 @@ { "测试四步曲": { "data": { - "uuid": "python-5-269", + "uuid": "python-5-272", "seg": [ [ [] ] ], - "level": "1", + "level": { + "min": 0.2405437352245863, + "max": 0.24060283687943262 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-616", + "uuid": "python-4-622", "seg": [ [ [ - "编码" + "编码", + "先测试", + "再编码" ] ] ], - "level": "1", + "level": { + "min": 0.24042553191489363, + "max": 0.24060283687943262 + }, "related_data": {} } } @@ -21411,7 +25206,7 @@ { "doctest": { "data": { - "uuid": "python-5-270", + "uuid": "python-5-273", "seg": [ [ [ @@ -21419,7 +25214,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24060283687943262, + "max": 0.24069148936170215 + }, "related_data": {} } } @@ -21427,7 +25225,7 @@ { "unittest": { "data": { - "uuid": "python-5-271", + "uuid": "python-5-274", "seg": [ [ [ @@ -21435,12 +25233,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24069148936170215, + "max": 0.24078014184397165 + }, "related_data": { "qa": { "data_id": [ - "8_749200_801624", - "8_1057564_1254701" + "8_749200_801624@8", + "8_1057564_1254701@8" ] } } @@ -21449,7 +25250,7 @@ } ], "data": { - "uuid": "python-4-617", + "uuid": "python-4-623", "seg": [ [ [ @@ -21457,7 +25258,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24060283687943262, + "max": 0.24078014184397165 + }, "related_data": {} } } @@ -21468,7 +25272,7 @@ { "使用PyChecker和PyLint检查源代码": { "data": { - "uuid": "python-5-272", + "uuid": "python-5-275", "seg": [ [ [ @@ -21480,7 +25284,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24078014184397165, + "max": 0.24086879432624114 + }, "related_data": {} } } @@ -21488,7 +25295,7 @@ { "性能分析": { "data": { - "uuid": "python-5-273", + "uuid": "python-5-276", "seg": [ [ [ @@ -21497,14 +25304,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24086879432624114, + "max": 0.24095744680851064 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-618", + "uuid": "python-4-624", "seg": [ [ [ @@ -21513,7 +25323,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24078014184397165, + "max": 0.24095744680851064 + }, "related_data": {} } } @@ -21528,12 +25341,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24042553191489363, + "max": 0.24095744680851064 + }, "related_data": { "qa": { "data_id": [ - "8_7445378_53423924", - "8_662804_478611" + "8_7445378_53423924@8", + "8_662804_478611@8" ] } } @@ -21546,7 +25362,7 @@ { "鱼和熊掌兼得": { "data": { - "uuid": "python-4-619", + "uuid": "python-4-625", "seg": [ [ [ @@ -21558,7 +25374,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24095744680851064, + "max": 0.24113475177304963 + }, "related_data": {} } } @@ -21566,7 +25385,7 @@ { "简单易行的方式:Jython和IronPython": { "data": { - "uuid": "python-4-620", + "uuid": "python-4-626", "seg": [ [ [ @@ -21583,11 +25402,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24113475177304963, + "max": 0.24131205673758865 + }, "related_data": { "qa": { "data_id": [ - "8_719810_713939" + "8_719810_713939@8" ] } } @@ -21600,7 +25422,7 @@ { "SWIG": { "data": { - "uuid": "python-5-274", + "uuid": "python-5-277", "seg": [ [ [ @@ -21608,7 +25430,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24131205673758865, + "max": 0.24140070921985815 + }, "related_data": {} } } @@ -21616,7 +25441,7 @@ { "手工编写扩展": { "data": { - "uuid": "python-5-275", + "uuid": "python-5-278", "seg": [ [ [ @@ -21626,21 +25451,17 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "8_7447305_53426973", - "8_7443194_53420304" - ] - } - } + "level": { + "min": 0.24140070921985815, + "max": 0.24148936170212765 + }, + "related_data": {} } } } ], "data": { - "uuid": "python-4-621", + "uuid": "python-4-627", "seg": [ [ [ @@ -21650,7 +25471,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24131205673758865, + "max": 0.24148936170212765 + }, "related_data": {} } } @@ -21666,7 +25490,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24095744680851064, + "max": 0.24148936170212765 + }, "related_data": {} } } @@ -21677,7 +25504,7 @@ { "Setuptools基础": { "data": { - "uuid": "python-4-622", + "uuid": "python-4-628", "seg": [ [ [ @@ -21686,7 +25513,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24148936170212765, + "max": 0.2416223404255319 + }, "related_data": {} } } @@ -21694,7 +25524,7 @@ { "打包": { "data": { - "uuid": "python-4-623", + "uuid": "python-4-629", "seg": [ [ [ @@ -21702,12 +25532,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2416223404255319, + "max": 0.24175531914893617 + }, "related_data": { "qa": { "data_id": [ - "8_765472_825343", - "8_719184_713158" + "8_765472_825343@8", + "8_719184_713158@8" ] } } @@ -21717,7 +25550,7 @@ { "编译扩展": { "data": { - "uuid": "python-4-624", + "uuid": "python-4-630", "seg": [ [ [ @@ -21726,7 +25559,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24175531914893617, + "max": 0.24188829787234042 + }, "related_data": {} } } @@ -21734,7 +25570,7 @@ { "使用py2exe创建可执行程序": { "data": { - "uuid": "python-4-625", + "uuid": "python-4-631", "seg": [ [ [ @@ -21744,7 +25580,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24188829787234042, + "max": 0.24202127659574468 + }, "related_data": {} } } @@ -21760,7 +25599,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24148936170212765, + "max": 0.24202127659574468 + }, "related_data": {} } } @@ -21771,7 +25613,7 @@ { "为何要有趣": { "data": { - "uuid": "python-4-626", + "uuid": "python-4-632", "seg": [ [ [ @@ -21779,7 +25621,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24202127659574468, + "max": 0.24212765957446808 + }, "related_data": {} } } @@ -21787,16 +25632,20 @@ { "编程柔术": { "data": { - "uuid": "python-4-627", + "uuid": "python-4-633", "seg": [ [ [ "编程", - "柔术" + "柔术", + "编程柔术" ] ] ], - "level": "1", + "level": { + "min": 0.24212765957446808, + "max": 0.2422340425531915 + }, "related_data": {} } } @@ -21804,7 +25653,7 @@ { "原型设计": { "data": { - "uuid": "python-4-628", + "uuid": "python-4-634", "seg": [ [ [ @@ -21813,12 +25662,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2422340425531915, + "max": 0.2423404255319149 + }, "related_data": { "qa": { "data_id": [ - "8_7446138_53425433", - "8_1094263_1304330" + "8_7446138_53425433@8", + "8_7440106_53415073@8", + "8_1094263_1304330@8" ] } } @@ -21828,7 +25681,7 @@ { "如果你已不胜其烦": { "data": { - "uuid": "python-4-629", + "uuid": "python-4-635", "seg": [ [ [ @@ -21836,7 +25689,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2423404255319149, + "max": 0.24244680851063832 + }, "related_data": {} } } @@ -21844,7 +25700,7 @@ { "如果你想深入学习": { "data": { - "uuid": "python-4-630", + "uuid": "python-4-636", "seg": [ [ [ @@ -21853,20 +25709,23 @@ ] ] ], - "level": "3", + "level": { + "min": 0.24244680851063832, + "max": 0.24255319148936172 + }, "related_data": { "qa": { "data_id": [ - "8_372604_400122", - "8_7460518_53445602", - "8_7425399_53386846", - "8_7410908_53361714", - "8_743209_787047", - "8_7399012_53345856", - "8_7405824_53355216", - "8_747116_797973", - "8_7401339_53349193", - "8_7462705_53448330" + "8_372604_400122@8", + "8_7460518_53445602@8", + "8_7425399_53386846@8", + "8_7410908_53361714@8", + "8_743209_787047@8", + "8_747116_797973@8", + "8_7399012_53345856@8", + "8_882584_1022242@8", + "8_7405824_53355216@8", + "8_7437989_53411267@8" ] } } @@ -21880,11 +25739,15 @@ [ [ "趣味", - "编程" + "编程", + "趣味编程" ] ] ], - "level": "1", + "level": { + "min": 0.24202127659574468, + "max": 0.24255319148936172 + }, "related_data": {} } } @@ -21898,7 +25761,7 @@ { "布尔值": { "data": { - "uuid": "python-5-276", + "uuid": "python-5-279", "seg": [ [ [ @@ -21906,11 +25769,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24255319148936172, + "max": 0.24258643617021278 + }, "related_data": { "qa": { "data_id": [ - "8_1093476_1302960" + "8_1093476_1302960@8" ] } } @@ -21920,15 +25786,19 @@ { "比较操作符": { "data": { - "uuid": "python-5-277", + "uuid": "python-5-280", "seg": [ [ [ - "操作符" + "操作符", + "比较操作符" ] ] ], - "level": "1", + "level": { + "min": 0.24258643617021278, + "max": 0.24261968085106383 + }, "related_data": {} } } @@ -21944,11 +25814,15 @@ [ [ "布尔", - "操作符" + "操作符", + "布尔操作符" ] ] ], - "level": "1", + "level": { + "min": 0.24261968085106383, + "max": 0.24263630319148938 + }, "related_data": {} } } @@ -21965,20 +25839,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24263630319148938, + "max": 0.24265292553191492 + }, "related_data": { "qa": { "data_id": [ - "8_7417516_53372789", - "8_7443460_53420579", - "8_337637_335148", - "8_7456501_53440281", - "8_7410153_53360752", - "8_7413078_53365575", - "8_4646152_29329636", - "8_1024337_1217850", - "8_7407499_53357521", - "8_7464344_53450842" + "8_7417516_53372789@8", + "8_7443460_53420579@8", + "8_337637_335148@8", + "8_7456501_53440281@8", + "8_7410153_53360752@8", + "8_7413078_53365575@8", + "8_4646152_29329636@8", + "8_1024337_1217850@8", + "8_7407499_53357521@8", + "8_7464344_53450842@8" ] } } @@ -21987,16 +25864,20 @@ } ], "data": { - "uuid": "python-5-278", + "uuid": "python-5-281", "seg": [ [ [ "布尔", - "操作符" + "操作符", + "布尔操作符" ] ] ], - "level": "1", + "level": { + "min": 0.24261968085106383, + "max": 0.24265292553191492 + }, "related_data": {} } } @@ -22004,7 +25885,7 @@ { "混合布尔和比较操作符": { "data": { - "uuid": "python-5-279", + "uuid": "python-5-282", "seg": [ [ [ @@ -22012,11 +25893,15 @@ "布尔" ], [ - "操作符" + "操作符", + "比较操作符" ] ] ], - "level": "1", + "level": { + "min": 0.24265292553191492, + "max": 0.24268617021276598 + }, "related_data": {} } } @@ -22033,14 +25918,17 @@ [] ] ], - "level": "1", + "level": { + "min": 0.24268617021276598, + "max": 0.24271941489361704 + }, "related_data": {} } } } ], "data": { - "uuid": "python-5-280", + "uuid": "python-5-283", "seg": [ [ [ @@ -22049,7 +25937,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24268617021276598, + "max": 0.24271941489361704 + }, "related_data": {} } } @@ -22057,7 +25948,7 @@ { "程序执行": { "data": { - "uuid": "python-5-281", + "uuid": "python-5-284", "seg": [ [ [ @@ -22065,7 +25956,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24271941489361704, + "max": 0.24275265957446812 + }, "related_data": {} } } @@ -22085,13 +25979,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24275265957446812, + "max": 0.2427609707446809 + }, "related_data": { "qa": { "data_id": [ - "8_7442897_53419903", - "8_7464161_53450550", - "8_7408729_53358904" + "8_7442897_53419903@8", + "8_7464161_53450550@8", + "8_7408729_53358904@8" ] } } @@ -22110,11 +26007,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2427609707446809, + "max": 0.24276928191489366 + }, "related_data": { "qa": { "data_id": [ - "8_978019_1136637" + "8_978019_1136637@8" ] } } @@ -22133,7 +26033,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24276928191489366, + "max": 0.2427775930851064 + }, "related_data": {} } } @@ -22150,15 +26053,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2427775930851064, + "max": 0.24278590425531918 + }, "related_data": { "qa": { "data_id": [ - "8_712960_704022", - "8_654548_465625", - "8_7430841_53398340", - "8_1058609_1255944", - "8_7412007_53363154" + "8_712960_704022@8", + "8_654548_465625@8", + "8_7430841_53398340@8", + "8_1058609_1255944@8", + "8_7412007_53363154@8" ] } } @@ -22167,16 +26073,20 @@ } ], "data": { - "uuid": "python-5-282", + "uuid": "python-5-285", "seg": [ [ [ "控制流", - "语句" + "语句", + "控制流语句" ] ] ], - "level": "1", + "level": { + "min": 0.24275265957446812, + "max": 0.24278590425531918 + }, "related_data": {} } } @@ -22184,7 +26094,7 @@ { "用sys.exit函数提前结束程序": { "data": { - "uuid": "python-5-283", + "uuid": "python-5-286", "seg": [ [ [ @@ -22196,11 +26106,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24278590425531918, + "max": 0.24281914893617024 + }, "related_data": { "qa": { "data_id": [ - "8_772432_835717" + "8_772432_835717@8" ] } } @@ -22209,7 +26122,7 @@ } ], "data": { - "uuid": "python-4-631", + "uuid": "python-4-637", "seg": [ [ [ @@ -22217,7 +26130,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24255319148936172, + "max": 0.24281914893617024 + }, "related_data": {} } } @@ -22228,21 +26144,25 @@ { "将字符串放入其他字符串": { "data": { - "uuid": "python-5-284", + "uuid": "python-5-287", "seg": [ [ [ "字符串", - "放入" + "放入", + "将字符串" ] ] ], - "level": "1", + "level": { + "min": 0.24281914893617024, + "max": 0.2428433268858801 + }, "related_data": { "qa": { "data_id": [ - "8_7419634_53377162", - "8_7456425_53440196" + "8_7419634_53377162@8", + "8_7456425_53440196@8" ] } } @@ -22252,17 +26172,21 @@ { "有用的字符串方法": { "data": { - "uuid": "python-5-285", + "uuid": "python-5-288", "seg": [ [ [ "有用", "字符串", - "方法" + "方法", + "字符串方法" ] ] ], - "level": "1", + "level": { + "min": 0.2428433268858801, + "max": 0.24286750483558997 + }, "related_data": {} } } @@ -22270,7 +26194,7 @@ { "使用ord和chr函数的字符的数值": { "data": { - "uuid": "python-5-286", + "uuid": "python-5-289", "seg": [ [ [ @@ -22284,7 +26208,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24286750483558997, + "max": 0.24289168278529982 + }, "related_data": {} } } @@ -22292,22 +26219,27 @@ { "用pyperclip模块复制粘贴字符串": { "data": { - "uuid": "python-5-287", + "uuid": "python-5-290", "seg": [ [ [ "pyperclip", "模块", "复制粘贴", - "字符串" + "字符串", + "模块复制粘贴", + "复制粘贴字符串" ] ] ], - "level": "1", + "level": { + "min": 0.24289168278529982, + "max": 0.24291586073500968 + }, "related_data": { "qa": { "data_id": [ - "8_7443410_53420523" + "8_7443410_53420523@8" ] } } @@ -22317,7 +26249,7 @@ { "计算字符串的长度": { "data": { - "uuid": "python-5-288", + "uuid": "python-5-291", "seg": [ [ [ @@ -22327,13 +26259,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24291586073500968, + "max": 0.24294003868471956 + }, "related_data": { "qa": { "data_id": [ - "8_7443491_53420637", - "8_7426761_53390656", - "8_7444251_53422355" + "8_7443491_53420637@8", + "8_7426761_53390656@8", + "8_7444251_53422355@8" ] } } @@ -22343,7 +26278,7 @@ { "截取字符串": { "data": { - "uuid": "python-5-289", + "uuid": "python-5-292", "seg": [ [ [ @@ -22352,13 +26287,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24294003868471956, + "max": 0.2429642166344294 + }, "related_data": { "qa": { "data_id": [ - "8_7451147_53432178", - "8_7419304_53376334", - "8_718167_711835" + "8_7451147_53432178@8", + "8_7419304_53376334@8", + "8_718167_711835@8" ] } } @@ -22368,7 +26306,7 @@ { "分割、合并字符串": { "data": { - "uuid": "python-5-290", + "uuid": "python-5-293", "seg": [ [ [ @@ -22380,7 +26318,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2429642166344294, + "max": 0.2429883945841393 + }, "related_data": {} } } @@ -22388,7 +26329,7 @@ { "检索字符串": { "data": { - "uuid": "python-5-291", + "uuid": "python-5-294", "seg": [ [ [ @@ -22397,7 +26338,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2429883945841393, + "max": 0.24301257253384914 + }, "related_data": {} } } @@ -22405,7 +26349,7 @@ { "字母的大小写转换": { "data": { - "uuid": "python-5-292", + "uuid": "python-5-295", "seg": [ [ [ @@ -22415,13 +26359,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24301257253384914, + "max": 0.243036750483559 + }, "related_data": { "qa": { "data_id": [ - "8_769097_829741", - "8_7447458_53427323", - "8_7405282_53354418" + "8_769097_829741@8", + "8_7447458_53427323@8", + "8_7405282_53354418@8" ] } } @@ -22431,7 +26378,7 @@ { "去除字符串中的空格和": { "data": { - "uuid": "python-5-293", + "uuid": "python-5-296", "seg": [ [ [ @@ -22442,12 +26389,15 @@ [] ] ], - "level": "1", + "level": { + "min": 0.243036750483559, + "max": 0.24306092843326887 + }, "related_data": { "qa": { "data_id": [ - "8_716271_708943", - "8_7460625_53445719" + "8_716271_708943@8", + "8_7460625_53445719@8" ] } } @@ -22457,23 +26407,27 @@ { "格式化字符串": { "data": { - "uuid": "python-5-294", + "uuid": "python-5-297", "seg": [ [ [ "格式化", - "字符串" + "字符串", + "格式化字符串" ] ] ], - "level": "1", + "level": { + "min": 0.24306092843326887, + "max": 0.24308510638297873 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-632", + "uuid": "python-4-638", "seg": [ [ [ @@ -22482,7 +26436,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24281914893617024, + "max": 0.24308510638297873 + }, "related_data": {} } } @@ -22495,15 +26452,19 @@ [ "python", "编程", - "基础" + "基础", + "编程基础" ] ] ], - "level": "1", + "level": { + "min": 0.24255319148936172, + "max": 0.24308510638297873 + }, "related_data": { "qa": { "data_id": [ - "8_7464362_53450750" + "8_7464362_53450750@8" ] } } @@ -22528,7 +26489,8 @@ [ "关键字", "参数", - "min" + "min", + "关键字参数" ], [ "max" @@ -22541,7 +26503,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24308510638297873, + "max": 0.24309574468085107 + }, "related_data": {} } } @@ -22555,11 +26520,15 @@ [ "关键字", "参数", - "blank" + "blank", + "关键字参数" ] ] ], - "level": "1", + "level": { + "min": 0.24309574468085107, + "max": 0.24310638297872342 + }, "related_data": {} } } @@ -22573,7 +26542,8 @@ [ "关键字", "参数", - "limit" + "limit", + "关键字参数" ], [ "timeout" @@ -22583,7 +26553,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24310638297872342, + "max": 0.24311702127659574 + }, "related_data": {} } } @@ -22597,14 +26570,18 @@ [ "关键字", "参数", - "allowregexes" + "allowregexes", + "关键字参数" ], [ "blockregexes" ] ] ], - "level": "1", + "level": { + "min": 0.24311702127659574, + "max": 0.24312765957446808 + }, "related_data": {} } } @@ -22624,14 +26601,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24312765957446808, + "max": 0.24313829787234043 + }, "related_data": {} } } } ], "data": { - "uuid": "python-5-295", + "uuid": "python-5-298", "seg": [ [ [ @@ -22640,14 +26620,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24308510638297873, + "max": 0.24313829787234043 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-633", + "uuid": "python-4-639", "seg": [ [ [ @@ -22656,7 +26639,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24308510638297873, + "max": 0.24313829787234043 + }, "related_data": {} } } @@ -22667,7 +26653,7 @@ { "shutil模块": { "data": { - "uuid": "python-5-296", + "uuid": "python-5-299", "seg": [ [ [ @@ -22676,7 +26662,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24313829787234043, + "max": 0.24315602836879432 + }, "related_data": {} } } @@ -22684,7 +26673,7 @@ { "遍历目录树": { "data": { - "uuid": "python-5-297", + "uuid": "python-5-300", "seg": [ [ [ @@ -22694,7 +26683,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24315602836879432, + "max": 0.24317375886524822 + }, "related_data": {} } } @@ -22702,24 +26694,28 @@ { "用zipfile模块压缩文件": { "data": { - "uuid": "python-5-298", + "uuid": "python-5-301", "seg": [ [ [ "zipfile", "模块", - "压缩文件" + "压缩文件", + "模块压缩文件" ] ] ], - "level": "1", + "level": { + "min": 0.24317375886524822, + "max": 0.24319148936170212 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-634", + "uuid": "python-4-640", "seg": [ [ [ @@ -22728,7 +26724,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24313829787234043, + "max": 0.24319148936170212 + }, "related_data": {} } } @@ -22739,7 +26738,7 @@ { "用requests模块从Web下载文件": { "data": { - "uuid": "python-5-299", + "uuid": "python-5-302", "seg": [ [ [ @@ -22751,11 +26750,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24319148936170212, + "max": 0.24320212765957447 + }, "related_data": { "qa": { "data_id": [ - "8_704207_596108" + "8_704207_596108@8" ] } } @@ -22765,18 +26767,22 @@ { "将下载的文件保存到硬盘": { "data": { - "uuid": "python-5-300", + "uuid": "python-5-303", "seg": [ [ [ "下载", "文件", "保存", - "硬盘" + "硬盘", + "将下载" ] ] ], - "level": "1", + "level": { + "min": 0.24320212765957447, + "max": 0.2432127659574468 + }, "related_data": {} } } @@ -22784,7 +26790,7 @@ { "HTML": { "data": { - "uuid": "python-5-301", + "uuid": "python-5-304", "seg": [ [ [ @@ -22792,20 +26798,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2432127659574468, + "max": 0.24322340425531913 + }, "related_data": { "qa": { "data_id": [ - "8_7405224_53356380", - "8_1094702_1305167", - "8_1058060_1255330", - "8_7423964_53384358", - "8_750570_803726", - "8_704503_597858", - "8_223986_182656", - "8_1097833_1311915", - "8_769985_831293", - "8_7405715_53356029" + "8_7405224_53356380@8", + "8_1094702_1305167@8", + "8_1058060_1255330@8", + "8_7423964_53384358@8", + "8_750570_803726@8", + "8_704503_597858@8", + "8_223986_182656@8", + "8_1097833_1311915@8", + "8_769985_831293@8", + "8_7405715_53356029@8" ] } } @@ -22815,7 +26824,7 @@ { "用bs4模块解析HTML": { "data": { - "uuid": "python-5-302", + "uuid": "python-5-305", "seg": [ [ [ @@ -22826,11 +26835,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24322340425531913, + "max": 0.24323404255319148 + }, "related_data": { "qa": { "data_id": [ - "8_7405288_53354542" + "8_7405288_53354542@8" ] } } @@ -22840,7 +26852,7 @@ { "用selenium模块控制浏览器": { "data": { - "uuid": "python-5-303", + "uuid": "python-5-306", "seg": [ [ [ @@ -22851,14 +26863,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24323404255319148, + "max": 0.24324468085106382 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-635", + "uuid": "python-4-641", "seg": [ [ [ @@ -22868,11 +26883,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24319148936170212, + "max": 0.24324468085106382 + }, "related_data": { "qa": { "data_id": [ - "8_7458185_53442726" + "8_7458185_53442726@8" ] } } @@ -22885,7 +26903,7 @@ { "Excel文档": { "data": { - "uuid": "python-5-304", + "uuid": "python-5-307", "seg": [ [ [ @@ -22894,20 +26912,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24324468085106382, + "max": 0.24325132978723404 + }, "related_data": { "qa": { "data_id": [ - "8_7405597_53355007", - "8_4647286_29331593", - "8_1052049_1249565", - "8_237164_216975", - "8_7413725_53365965", - "8_7425586_53387159", - "8_7463828_53450002", - "8_7407431_53357545", - "8_7465157_53451929", - "8_708702_650062" + "8_7405597_53355007@8", + "8_4647286_29331593@8", + "8_1052049_1249565@8", + "8_237164_216975@8", + "8_7413725_53365965@8", + "8_7425586_53387159@8", + "8_7463828_53450002@8", + "8_7407431_53357545@8", + "8_7465157_53451929@8", + "8_708702_650062@8" ] } } @@ -22917,7 +26938,7 @@ { "安装openpyxl模块": { "data": { - "uuid": "python-5-305", + "uuid": "python-5-308", "seg": [ [ [ @@ -22927,7 +26948,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24325132978723404, + "max": 0.24325797872340424 + }, "related_data": {} } } @@ -22935,7 +26959,7 @@ { "读取Excel文档": { "data": { - "uuid": "python-5-306", + "uuid": "python-5-309", "seg": [ [ [ @@ -22945,16 +26969,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24325797872340424, + "max": 0.24326462765957446 + }, "related_data": { "qa": { "data_id": [ - "8_7431103_53399068", - "8_392375_435784", - "8_717934_711447", - "8_7417607_53373122", - "8_3535586_23009257", - "8_693943_572898" + "8_7431103_53399068@8", + "8_392375_435784@8", + "8_717934_711447@8", + "8_7417607_53373122@8", + "8_3535586_23009257@8", + "8_693943_572898@8" ] } } @@ -22964,7 +26991,7 @@ { "写入Excel文档": { "data": { - "uuid": "python-5-307", + "uuid": "python-5-310", "seg": [ [ [ @@ -22974,16 +27001,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24326462765957446, + "max": 0.24327127659574466 + }, "related_data": { "qa": { "data_id": [ - "8_778302_849363", - "8_262124_274832", - "8_7415965_53369805", - "8_763455_821889", - "8_7414773_53367715", - "8_1029085_1224134" + "8_778302_849363@8", + "8_262124_274832@8", + "8_7415965_53369805@8", + "8_763455_821889@8", + "8_7414773_53367715@8", + "8_1029085_1224134@8" ] } } @@ -22993,18 +27023,22 @@ { "设置单元格的字体风格": { "data": { - "uuid": "python-5-308", + "uuid": "python-5-311", "seg": [ [ [ "设置", "单元格", "字体", - "风格" + "风格", + "字体风格" ] ] ], - "level": "1", + "level": { + "min": 0.24327127659574466, + "max": 0.24327792553191488 + }, "related_data": {} } } @@ -23012,7 +27046,7 @@ { "Font对象": { "data": { - "uuid": "python-5-309", + "uuid": "python-5-312", "seg": [ [ [ @@ -23021,7 +27055,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24327792553191488, + "max": 0.2432845744680851 + }, "related_data": {} } } @@ -23029,7 +27066,7 @@ { "公式": { "data": { - "uuid": "python-5-310", + "uuid": "python-5-313", "seg": [ [ [ @@ -23037,11 +27074,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2432845744680851, + "max": 0.2432912234042553 + }, "related_data": { "qa": { "data_id": [ - "8_7396504_53340244" + "8_7396504_53340244@8" ] } } @@ -23051,7 +27091,7 @@ { "调整行和列": { "data": { - "uuid": "python-5-311", + "uuid": "python-5-314", "seg": [ [ [ @@ -23060,14 +27100,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2432912234042553, + "max": 0.24329787234042552 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-636", + "uuid": "python-4-642", "seg": [ [ [ @@ -23076,7 +27119,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24324468085106382, + "max": 0.24329787234042552 + }, "related_data": {} } } @@ -23087,7 +27133,7 @@ { "安装和设置EZSheets": { "data": { - "uuid": "python-5-312", + "uuid": "python-5-315", "seg": [ [ [ @@ -23099,7 +27145,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24329787234042552, + "max": 0.24331117021276594 + }, "related_data": {} } } @@ -23107,7 +27156,7 @@ { "Spreadsheet对象": { "data": { - "uuid": "python-5-313", + "uuid": "python-5-316", "seg": [ [ [ @@ -23116,7 +27165,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24331117021276594, + "max": 0.24332446808510638 + }, "related_data": {} } } @@ -23124,7 +27176,7 @@ { "工作表对象": { "data": { - "uuid": "python-5-314", + "uuid": "python-5-317", "seg": [ [ [ @@ -23134,7 +27186,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24332446808510638, + "max": 0.2433377659574468 + }, "related_data": {} } } @@ -23142,7 +27197,7 @@ { "利用Google Sheets配额": { "data": { - "uuid": "python-5-315", + "uuid": "python-5-318", "seg": [ [ [ @@ -23153,11 +27208,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2433377659574468, + "max": 0.24335106382978722 + }, "related_data": { "qa": { "data_id": [ - "8_7428390_53394082" + "8_7428390_53394082@8" ] } } @@ -23166,7 +27224,7 @@ } ], "data": { - "uuid": "python-4-637", + "uuid": "python-4-643", "seg": [ [ [ @@ -23175,7 +27233,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24329787234042552, + "max": 0.24335106382978722 + }, "related_data": {} } } @@ -23186,7 +27247,7 @@ { "PDF文档": { "data": { - "uuid": "python-5-316", + "uuid": "python-5-319", "seg": [ [ [ @@ -23195,13 +27256,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24335106382978722, + "max": 0.24336879432624112 + }, "related_data": { "qa": { "data_id": [ - "8_7423182_53382762", - "8_774625_838927", - "8_7414384_53367016" + "8_7423182_53382762@8", + "8_774625_838927@8", + "8_7414384_53367016@8" ] } } @@ -23211,7 +27275,7 @@ { "Word文档": { "data": { - "uuid": "python-5-317", + "uuid": "python-5-320", "seg": [ [ [ @@ -23220,16 +27284,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24336879432624112, + "max": 0.24338652482269504 + }, "related_data": { "qa": { "data_id": [ - "8_7463488_53449393", - "8_7439495_53414052", - "8_7422130_53379541", - "8_7407172_53357050", - "8_7456379_53443602", - "8_1054073_1251355" + "8_7463488_53449393@8", + "8_7439495_53414052@8", + "8_7422130_53379541@8", + "8_7407172_53357050@8", + "8_7456379_53443602@8", + "8_1054073_1251355@8" ] } } @@ -23239,7 +27306,7 @@ { "从Word文档中创建PDF": { "data": { - "uuid": "python-5-318", + "uuid": "python-5-321", "seg": [ [ [ @@ -23250,14 +27317,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24338652482269504, + "max": 0.24340425531914894 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-638", + "uuid": "python-4-644", "seg": [ [ [ @@ -23269,7 +27339,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24335106382978722, + "max": 0.24340425531914894 + }, "related_data": {} } } @@ -23280,7 +27353,7 @@ { "csv模块": { "data": { - "uuid": "python-5-319", + "uuid": "python-5-322", "seg": [ [ [ @@ -23289,20 +27362,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24340425531914894, + "max": 0.24343085106382978 + }, "related_data": { "qa": { "data_id": [ - "8_744365_793336", - "8_736481_764250", - "8_1070170_1271493", - "8_7415531_53368997", - "8_1019101_1210409", - "8_756374_811491", - "8_718685_712506", - "8_1061397_1259252", - "8_750763_804118", - "8_7462810_53448507" + "8_744365_793336@8", + "8_736481_764250@8", + "8_1070170_1271493@8", + "8_7415531_53368997@8", + "8_1019101_1210409@8", + "8_756374_811491@8", + "8_718685_712506@8", + "8_1061397_1259252@8", + "8_750763_804118@8", + "8_7462810_53448507@8" ] } } @@ -23312,7 +27388,7 @@ { "json模块": { "data": { - "uuid": "python-5-320", + "uuid": "python-5-323", "seg": [ [ [ @@ -23321,20 +27397,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24343085106382978, + "max": 0.24345744680851064 + }, "related_data": { "qa": { "data_id": [ - "8_757028_812294", - "8_7399757_53347240", - "8_643876_444042", - "8_631991_441788", - "8_7425897_53388274", - "8_7397643_53342821", - "8_797264_886228", - "8_917383_1057025", - "8_762709_822405", - "8_701101_590635" + "8_757028_812294@8", + "8_7399757_53347240@8", + "8_643876_444042@8", + "8_631991_441788@8", + "8_7425897_53388274@8", + "8_7397643_53342821@8", + "8_797264_886228@8", + "8_917383_1057025@8", + "8_762709_822405@8", + "8_701101_590635@8" ] } } @@ -23343,7 +27422,7 @@ } ], "data": { - "uuid": "python-4-639", + "uuid": "python-4-645", "seg": [ [ [ @@ -23356,7 +27435,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24340425531914894, + "max": 0.24345744680851064 + }, "related_data": {} } } @@ -23367,7 +27449,7 @@ { "使用Gmail API发送和接收电子邮件": { "data": { - "uuid": "python-5-321", + "uuid": "python-5-324", "seg": [ [ [ @@ -23381,7 +27463,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24345744680851064, + "max": 0.24346504559270518 + }, "related_data": {} } } @@ -23389,7 +27474,7 @@ { "SMTP": { "data": { - "uuid": "python-5-322", + "uuid": "python-5-325", "seg": [ [ [ @@ -23397,7 +27482,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24346504559270518, + "max": 0.2434726443768997 + }, "related_data": {} } } @@ -23405,7 +27493,7 @@ { "发送电子邮件": { "data": { - "uuid": "python-5-323", + "uuid": "python-5-326", "seg": [ [ [ @@ -23414,11 +27502,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2434726443768997, + "max": 0.24348024316109423 + }, "related_data": { "qa": { "data_id": [ - "8_7435579_53406455" + "8_7435579_53406455@8" ] } } @@ -23428,7 +27519,7 @@ { "IMAP": { "data": { - "uuid": "python-5-324", + "uuid": "python-5-327", "seg": [ [ [ @@ -23436,7 +27527,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24348024316109423, + "max": 0.24348784194528875 + }, "related_data": {} } } @@ -23444,7 +27538,7 @@ { "用IMAP获取和删除电子邮件": { "data": { - "uuid": "python-5-325", + "uuid": "python-5-328", "seg": [ [ [ @@ -23457,7 +27551,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24348784194528875, + "max": 0.2434954407294833 + }, "related_data": {} } } @@ -23465,18 +27562,23 @@ { "使用短信电子邮件网关发送短信": { "data": { - "uuid": "python-5-326", + "uuid": "python-5-329", "seg": [ [ [ "短信", "电子邮件", "网关", - "发送" + "发送", + "短信电子邮件", + "电子邮件网关" ] ] ], - "level": "2", + "level": { + "min": 0.2434954407294833, + "max": 0.2435030395136778 + }, "related_data": {} } } @@ -23484,7 +27586,7 @@ { "用Twilio发送短信": { "data": { - "uuid": "python-5-327", + "uuid": "python-5-330", "seg": [ [ [ @@ -23494,14 +27596,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2435030395136778, + "max": 0.24351063829787234 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-640", + "uuid": "python-4-646", "seg": [ [ [ @@ -23513,7 +27618,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24345744680851064, + "max": 0.24351063829787234 + }, "related_data": {} } } @@ -23524,17 +27632,22 @@ { "计算机图像基础": { "data": { - "uuid": "python-5-328", + "uuid": "python-5-331", "seg": [ [ [ "计算机", "图像", - "基础" + "基础", + "计算机图像", + "图像基础" ] ] ], - "level": "1", + "level": { + "min": 0.24351063829787234, + "max": 0.24352836879432624 + }, "related_data": {} } } @@ -23542,7 +27655,7 @@ { "用pillow操作图像": { "data": { - "uuid": "python-5-329", + "uuid": "python-5-332", "seg": [ [ [ @@ -23552,7 +27665,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24352836879432624, + "max": 0.24354609929078014 + }, "related_data": {} } } @@ -23568,11 +27684,15 @@ [ [ "绘制", - "形状" + "形状", + "绘制形状" ] ] ], - "level": "1", + "level": { + "min": 0.24354609929078014, + "max": 0.2435549645390071 + }, "related_data": {} } } @@ -23585,18 +27705,22 @@ [ [ "绘制", - "文本" + "文本", + "绘制文本" ] ] ], - "level": "1", + "level": { + "min": 0.2435549645390071, + "max": 0.24356382978723404 + }, "related_data": {} } } } ], "data": { - "uuid": "python-5-330", + "uuid": "python-5-333", "seg": [ [ [ @@ -23605,13 +27729,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24354609929078014, + "max": 0.24356382978723404 + }, "related_data": { "qa": { "data_id": [ - "8_7396806_53340998", - "8_6209071_43183303", - "8_7449341_53430632" + "8_7396806_53340998@8", + "8_6209071_43183303@8", + "8_7449341_53430632@8" ] } } @@ -23620,7 +27747,7 @@ } ], "data": { - "uuid": "python-4-641", + "uuid": "python-4-647", "seg": [ [ [ @@ -23629,7 +27756,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24351063829787234, + "max": 0.24356382978723404 + }, "related_data": {} } } @@ -23640,7 +27770,7 @@ { "安装pyautogui模块": { "data": { - "uuid": "python-5-331", + "uuid": "python-5-334", "seg": [ [ [ @@ -23650,7 +27780,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24356382978723404, + "max": 0.24356792144026185 + }, "related_data": {} } } @@ -23658,7 +27791,7 @@ { "在macOS上设置无障碍应用程序": { "data": { - "uuid": "python-5-332", + "uuid": "python-5-335", "seg": [ [ [ @@ -23669,7 +27802,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24356792144026185, + "max": 0.24357201309328969 + }, "related_data": {} } } @@ -23677,7 +27813,7 @@ { "走对路": { "data": { - "uuid": "python-5-333", + "uuid": "python-5-336", "seg": [ [ [ @@ -23686,7 +27822,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24357201309328969, + "max": 0.2435761047463175 + }, "related_data": {} } } @@ -23694,17 +27833,21 @@ { "控制鼠标指针移动": { "data": { - "uuid": "python-5-334", + "uuid": "python-5-337", "seg": [ [ [ "控制", "鼠标", - "指针" + "指针", + "鼠标指针" ] ] ], - "level": "2", + "level": { + "min": 0.2435761047463175, + "max": 0.24358019639934533 + }, "related_data": {} } } @@ -23712,7 +27855,7 @@ { "控制鼠标交互": { "data": { - "uuid": "python-5-335", + "uuid": "python-5-338", "seg": [ [ [ @@ -23722,12 +27865,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24358019639934533, + "max": 0.24358428805237314 + }, "related_data": { "qa": { "data_id": [ - "8_773500_837228", - "8_7443178_53420245" + "8_773500_837228@8", + "8_7443178_53420245@8" ] } } @@ -23737,17 +27883,21 @@ { "规划鼠标运动": { "data": { - "uuid": "python-5-336", + "uuid": "python-5-339", "seg": [ [ [ "规划", "鼠标", - "运动" + "运动", + "规划鼠标" ] ] ], - "level": "2", + "level": { + "min": 0.24358428805237314, + "max": 0.24358837970540098 + }, "related_data": {} } } @@ -23755,7 +27905,7 @@ { "处理屏幕": { "data": { - "uuid": "python-5-337", + "uuid": "python-5-340", "seg": [ [ [ @@ -23763,12 +27913,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24358837970540098, + "max": 0.2435924713584288 + }, "related_data": { "qa": { "data_id": [ - "8_7428076_53393364", - "8_7448551_53428724" + "8_7428076_53393364@8", + "8_7448551_53428724@8" ] } } @@ -23778,7 +27931,7 @@ { "图像识别": { "data": { - "uuid": "python-5-338", + "uuid": "python-5-341", "seg": [ [ [ @@ -23786,11 +27939,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2435924713584288, + "max": 0.24359656301145663 + }, "related_data": { "qa": { "data_id": [ - "8_852038_975374" + "8_852038_975374@8" ] } } @@ -23800,7 +27956,7 @@ { "获取窗口信息": { "data": { - "uuid": "python-5-339", + "uuid": "python-5-342", "seg": [ [ [ @@ -23810,13 +27966,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24359656301145663, + "max": 0.24360065466448444 + }, "related_data": { "qa": { "data_id": [ - "8_1053981_1251175", - "8_7462932_53448724", - "8_734839_759424" + "8_1053981_1251175@8", + "8_7462932_53448724@8", + "8_7423314_53383134@8", + "8_734839_759424@8" ] } } @@ -23826,7 +27986,7 @@ { "控制键盘": { "data": { - "uuid": "python-5-340", + "uuid": "python-5-343", "seg": [ [ [ @@ -23835,14 +27995,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24360065466448444, + "max": 0.24360474631751228 + }, "related_data": { "qa": { "data_id": [ - "8_7402766_53350935", - "8_764717_823495", - "8_371927_399126", - "8_1102465_1316908" + "8_7402766_53350935@8", + "8_764717_823495@8", + "8_371927_399126@8", + "8_1102465_1316908@8" ] } } @@ -23852,7 +28015,7 @@ { "设置GUI自动化脚本": { "data": { - "uuid": "python-5-341", + "uuid": "python-5-344", "seg": [ [ [ @@ -23863,12 +28026,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24360474631751228, + "max": 0.2436088379705401 + }, "related_data": { "qa": { "data_id": [ - "8_1054552_1251804", - "8_7444487_53426627" + "8_1054552_1251804@8", + "8_7444487_53426627@8" ] } } @@ -23878,7 +28044,7 @@ { "复习PyAutoGUI的函数": { "data": { - "uuid": "python-5-342", + "uuid": "python-5-345", "seg": [ [ [ @@ -23888,7 +28054,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2436088379705401, + "max": 0.24361292962356793 + }, "related_data": {} } } @@ -23896,7 +28065,7 @@ { "显示消息框": { "data": { - "uuid": "python-5-343", + "uuid": "python-5-346", "seg": [ [ [ @@ -23906,11 +28075,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24361292962356793, + "max": 0.24361702127659574 + }, "related_data": { "qa": { "data_id": [ - "8_731001_747646" + "8_731001_747646@8" ] } } @@ -23919,7 +28091,7 @@ } ], "data": { - "uuid": "python-4-642", + "uuid": "python-4-648", "seg": [ [ [ @@ -23933,7 +28105,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24356382978723404, + "max": 0.24361702127659574 + }, "related_data": {} } } @@ -23948,7 +28123,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24308510638297873, + "max": 0.24361702127659574 + }, "related_data": {} } } @@ -23962,7 +28140,7 @@ { "一摞Python风格的纸牌": { "data": { - "uuid": "python-5-344", + "uuid": "python-5-347", "seg": [ [ [ @@ -23972,7 +28150,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24361702127659574, + "max": 0.24388297872340425 + }, "related_data": {} } } @@ -23980,23 +28161,27 @@ { "特殊方法一览": { "data": { - "uuid": "python-5-345", + "uuid": "python-5-348", "seg": [ [ [ "方法", - "一览" + "一览", + "方法一览" ] ] ], - "level": "1", + "level": { + "min": 0.24388297872340425, + "max": 0.24414893617021277 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-643", + "uuid": "python-4-649", "seg": [ [ [ @@ -24005,7 +28190,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24361702127659574, + "max": 0.24414893617021277 + }, "related_data": {} } } @@ -24020,7 +28208,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24361702127659574, + "max": 0.24414893617021277 + }, "related_data": {} } } @@ -24034,7 +28225,7 @@ { "案例分析:重构“策略”模式": { "data": { - "uuid": "python-5-346", + "uuid": "python-5-349", "seg": [ [ [ @@ -24050,7 +28241,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24414893617021277, + "max": 0.2444148936170213 + }, "related_data": {} } } @@ -24058,7 +28252,7 @@ { "“命令”模式": { "data": { - "uuid": "python-5-347", + "uuid": "python-5-350", "seg": [ [ [ @@ -24067,12 +28261,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2444148936170213, + "max": 0.2446808510638298 + }, "related_data": { "qa": { "data_id": [ - "8_7429319_53396010", - "8_7419255_53376275" + "8_7429319_53396010@8", + "8_7419255_53376275@8" ] } } @@ -24081,7 +28278,7 @@ } ], "data": { - "uuid": "python-4-644", + "uuid": "python-4-650", "seg": [ [ [ @@ -24090,7 +28287,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24414893617021277, + "max": 0.2446808510638298 + }, "related_data": {} } } @@ -24107,7 +28307,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24414893617021277, + "max": 0.2446808510638298 + }, "related_data": {} } } @@ -24121,7 +28324,7 @@ { "变量不是盒子": { "data": { - "uuid": "python-5-348", + "uuid": "python-5-351", "seg": [ [ [ @@ -24130,7 +28333,35 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2446808510638298, + "max": 0.2447030141843972 + }, + "related_data": {} + } + } + }, + { + "标识、相等性和别名": { + "data": { + "uuid": "python-5-352", + "seg": [ + [ + [ + "标识" + ], + [ + "性" + ], + [ + "别名" + ] + ] + ], + "level": { + "min": 0.2447030141843972, + "max": 0.24472517730496457 + }, "related_data": {} } } @@ -24138,7 +28369,7 @@ { "默认做浅复制": { "data": { - "uuid": "python-5-349", + "uuid": "python-5-353", "seg": [ [ [ @@ -24149,7 +28380,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24472517730496457, + "max": 0.24474734042553192 + }, "related_data": {} } } @@ -24157,7 +28391,7 @@ { "函数的参数作为引用时": { "data": { - "uuid": "python-5-350", + "uuid": "python-5-354", "seg": [ [ [ @@ -24167,12 +28401,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24474734042553192, + "max": 0.2447695035460993 + }, "related_data": { "qa": { "data_id": [ - "8_700318_589145", - "8_7413734_53365943" + "8_700318_589145@8", + "8_7413734_53365943@8" ] } } @@ -24182,7 +28419,7 @@ { "del和垃圾回收": { "data": { - "uuid": "python-5-351", + "uuid": "python-5-355", "seg": [ [ [ @@ -24194,7 +28431,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2447695035460993, + "max": 0.24479166666666669 + }, "related_data": {} } } @@ -24202,7 +28442,7 @@ { "Python对不可变类型施加的把戏": { "data": { - "uuid": "python-5-352", + "uuid": "python-5-356", "seg": [ [ [ @@ -24214,14 +28454,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24479166666666669, + "max": 0.24481382978723407 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-645", + "uuid": "python-4-651", "seg": [ [ [ @@ -24237,7 +28480,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2446808510638298, + "max": 0.24481382978723407 + }, "related_data": {} } } @@ -24248,7 +28494,7 @@ { "对象表示形式": { "data": { - "uuid": "python-5-353", + "uuid": "python-5-357", "seg": [ [ [ @@ -24257,11 +28503,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24481382978723407, + "max": 0.24482860520094565 + }, "related_data": { "qa": { "data_id": [ - "8_7464736_53451299" + "8_7464736_53451299@8" ] } } @@ -24271,17 +28520,22 @@ { "再谈向量类": { "data": { - "uuid": "python-5-354", + "uuid": "python-5-358", "seg": [ [ [ "谈", "向量", - "类" + "类", + "再谈", + "向量类" ] ] ], - "level": "1", + "level": { + "min": 0.24482860520094565, + "max": 0.24484338061465724 + }, "related_data": {} } } @@ -24289,7 +28543,7 @@ { "备选构造方法": { "data": { - "uuid": "python-5-355", + "uuid": "python-5-359", "seg": [ [ [ @@ -24298,7 +28552,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24484338061465724, + "max": 0.24485815602836883 + }, "related_data": {} } } @@ -24306,7 +28563,7 @@ { "classmethod与staticmethod": { "data": { - "uuid": "python-5-356", + "uuid": "python-5-360", "seg": [ [ [ @@ -24317,7 +28574,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24485815602836883, + "max": 0.24487293144208042 + }, "related_data": {} } } @@ -24325,7 +28585,7 @@ { "格式化显示": { "data": { - "uuid": "python-5-357", + "uuid": "python-5-361", "seg": [ [ [ @@ -24334,7 +28594,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24487293144208042, + "max": 0.24488770685579198 + }, "related_data": {} } } @@ -24342,7 +28605,7 @@ { "可散列的Vector2d": { "data": { - "uuid": "python-5-358", + "uuid": "python-5-362", "seg": [ [ [ @@ -24351,7 +28614,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24488770685579198, + "max": 0.24490248226950356 + }, "related_data": {} } } @@ -24359,7 +28625,7 @@ { "Python的私有属性和“受保护的”属性": { "data": { - "uuid": "python-5-359", + "uuid": "python-5-363", "seg": [ [ [ @@ -24374,7 +28640,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24490248226950356, + "max": 0.24491725768321515 + }, "related_data": {} } } @@ -24382,7 +28651,7 @@ { "使用__slots__类属性节省空间": { "data": { - "uuid": "python-5-360", + "uuid": "python-5-364", "seg": [ [ [ @@ -24390,11 +28659,16 @@ "类", "属性", "节省", - "空间" + "空间", + "属性节省", + "节省空间" ] ] ], - "level": "1", + "level": { + "min": 0.24491725768321515, + "max": 0.24493203309692674 + }, "related_data": {} } } @@ -24402,7 +28676,7 @@ { "覆盖类属性": { "data": { - "uuid": "python-5-361", + "uuid": "python-5-365", "seg": [ [ [ @@ -24412,14 +28686,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24493203309692674, + "max": 0.24494680851063833 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-646", + "uuid": "python-4-652", "seg": [ [ [ @@ -24430,11 +28707,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24481382978723407, + "max": 0.24494680851063833 + }, "related_data": { "qa": { "data_id": [ - "8_6374902_44871586" + "8_6374902_44871586@8" ] } } @@ -24447,18 +28727,22 @@ { "子类化内置类型很麻烦": { "data": { - "uuid": "python-5-362", + "uuid": "python-5-366", "seg": [ [ [ "子", "类化", "内置", - "类型" + "类型", + "内置类型" ] ] ], - "level": "1", + "level": { + "min": 0.24494680851063833, + "max": 0.24499113475177306 + }, "related_data": {} } } @@ -24466,16 +28750,20 @@ { "多重继承的真实应用": { "data": { - "uuid": "python-5-363", + "uuid": "python-5-367", "seg": [ [ [ "继承", - "真实" + "真实", + "真实应用" ] ] ], - "level": "1", + "level": { + "min": 0.24499113475177306, + "max": 0.24503546099290782 + }, "related_data": {} } } @@ -24483,7 +28771,7 @@ { "一个现代示例:Django通用视图中的混入": { "data": { - "uuid": "python-5-364", + "uuid": "python-5-368", "seg": [ [ [ @@ -24499,14 +28787,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24503546099290782, + "max": 0.24507978723404256 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-647", + "uuid": "python-4-653", "seg": [ [ [ @@ -24515,7 +28806,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24494680851063833, + "max": 0.24507978723404256 + }, "related_data": {} } } @@ -24526,7 +28820,7 @@ { "运算符重载基础": { "data": { - "uuid": "python-5-365", + "uuid": "python-5-369", "seg": [ [ [ @@ -24536,7 +28830,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24507978723404256, + "max": 0.24510638297872342 + }, "related_data": {} } } @@ -24544,7 +28841,7 @@ { "重载向量加法运算符 +": { "data": { - "uuid": "python-5-366", + "uuid": "python-5-370", "seg": [ [ [ @@ -24555,7 +28852,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24510638297872342, + "max": 0.24513297872340425 + }, "related_data": {} } } @@ -24563,18 +28863,43 @@ { "重载标量乘法运算符 *": { "data": { - "uuid": "python-5-367", + "uuid": "python-5-371", "seg": [ [ [ "重载", "标量", "乘法", - "运算符" + "运算符", + "标量乘法", + "乘法运算符" + ] + ] + ], + "level": { + "min": 0.24513297872340425, + "max": 0.24515957446808512 + }, + "related_data": {} + } + } + }, + { + "众多比较运算符": { + "data": { + "uuid": "python-5-372", + "seg": [ + [ + [ + "运算符", + "比较运算符" ] ] ], - "level": "1", + "level": { + "min": 0.24515957446808512, + "max": 0.24518617021276595 + }, "related_data": {} } } @@ -24582,24 +28907,29 @@ { "增量赋值运算符": { "data": { - "uuid": "python-5-368", + "uuid": "python-5-373", "seg": [ [ [ "增量", "赋值", - "运算符" + "运算符", + "增量赋值", + "赋值运算符" ] ] ], - "level": "1", + "level": { + "min": 0.24518617021276595, + "max": 0.24521276595744682 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-648", + "uuid": "python-4-654", "seg": [ [ [ @@ -24608,7 +28938,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24507978723404256, + "max": 0.24521276595744682 + }, "related_data": {} } } @@ -24621,15 +28954,19 @@ [ "面向对象", "惯用", - "法" + "法", + "面向对象惯用" ] ] ], - "level": "1", + "level": { + "min": 0.2446808510638298, + "max": 0.24521276595744682 + }, "related_data": { "qa": { "data_id": [ - "8_7442945_53419958" + "8_7442945_53419958@8" ] } } @@ -24645,7 +28982,7 @@ { "阻塞型I/O和GIL": { "data": { - "uuid": "python-5-369", + "uuid": "python-5-374", "seg": [ [ [ @@ -24658,7 +28995,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24521276595744682, + "max": 0.24527925531914893 + }, "related_data": {} } } @@ -24666,7 +29006,7 @@ { "使用concurrent.futures模块启动进程": { "data": { - "uuid": "python-5-370", + "uuid": "python-5-375", "seg": [ [ [ @@ -24678,7 +29018,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24527925531914893, + "max": 0.24534574468085107 + }, "related_data": {} } } @@ -24686,7 +29029,7 @@ { "实验Executor.map方法": { "data": { - "uuid": "python-5-371", + "uuid": "python-5-376", "seg": [ [ [ @@ -24697,13 +29040,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24534574468085107, + "max": 0.2454122340425532 + }, "related_data": { "qa": { "data_id": [ - "8_7455783_53439118", - "8_7451008_53432077", - "8_1079250_1286684" + "8_7455783_53439118@8", + "8_7451008_53432077@8", + "8_1079250_1286684@8" ] } } @@ -24713,7 +29059,7 @@ { "显示下载进度并处理错误": { "data": { - "uuid": "python-5-372", + "uuid": "python-5-377", "seg": [ [ [ @@ -24724,14 +29070,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2454122340425532, + "max": 0.2454787234042553 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-649", + "uuid": "python-4-655", "seg": [ [ [ @@ -24740,7 +29089,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24521276595744682, + "max": 0.2454787234042553 + }, "related_data": {} } } @@ -24751,7 +29103,7 @@ { "避免阻塞型调用": { "data": { - "uuid": "python-5-373", + "uuid": "python-5-378", "seg": [ [ [ @@ -24760,7 +29112,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2454787234042553, + "max": 0.2455673758865248 + }, "related_data": {} } } @@ -24768,7 +29123,7 @@ { "改进asyncio下载脚本": { "data": { - "uuid": "python-5-374", + "uuid": "python-5-379", "seg": [ [ [ @@ -24779,7 +29134,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2455673758865248, + "max": 0.24565602836879433 + }, "related_data": {} } } @@ -24787,7 +29145,7 @@ { "使用asyncio包编写服务器": { "data": { - "uuid": "python-5-375", + "uuid": "python-5-380", "seg": [ [ [ @@ -24798,14 +29156,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24565602836879433, + "max": 0.24574468085106382 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-650", + "uuid": "python-4-656", "seg": [ [ [ @@ -24815,7 +29176,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2454787234042553, + "max": 0.24574468085106382 + }, "related_data": {} } } @@ -24831,7 +29195,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24521276595744682, + "max": 0.24574468085106382 + }, "related_data": {} } } @@ -24845,18 +29212,22 @@ { "使用动态属性转换数据": { "data": { - "uuid": "python-5-376", + "uuid": "python-5-381", "seg": [ [ [ "动态", "属性", "转换", - "数据" + "数据", + "动态属性" ] ] ], - "level": "1", + "level": { + "min": 0.24574468085106382, + "max": 0.24574862096138692 + }, "related_data": {} } } @@ -24864,7 +29235,7 @@ { "使用特性验证属性": { "data": { - "uuid": "python-5-377", + "uuid": "python-5-382", "seg": [ [ [ @@ -24874,7 +29245,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24574862096138692, + "max": 0.24575256107171 + }, "related_data": {} } } @@ -24882,7 +29256,7 @@ { "特性全解析": { "data": { - "uuid": "python-5-378", + "uuid": "python-5-383", "seg": [ [ [ @@ -24892,7 +29266,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24575256107171, + "max": 0.2457565011820331 + }, "related_data": {} } } @@ -24900,18 +29277,23 @@ { "定义一个特性工厂函数": { "data": { - "uuid": "python-5-379", + "uuid": "python-5-384", "seg": [ [ [ "定义", "特性", "工厂", - "函数" + "函数", + "特性工厂", + "工厂函数" ] ] ], - "level": "1", + "level": { + "min": 0.2457565011820331, + "max": 0.2457604412923562 + }, "related_data": {} } } @@ -24919,7 +29301,7 @@ { "处理属性删除操作": { "data": { - "uuid": "python-5-380", + "uuid": "python-5-385", "seg": [ [ [ @@ -24929,26 +29311,33 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2457604412923562, + "max": 0.24576438140267928 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-651", + "uuid": "python-4-657", "seg": [ [ [ "动态", - "属性" + "属性", + "动态属性" ], [ "特性" ] ] ], - "level": "1", + "level": { + "min": 0.24574468085106382, + "max": 0.24576438140267928 + }, "related_data": {} } } @@ -24959,12 +29348,13 @@ { "描述符示例:验证属性": { "data": { - "uuid": "python-5-381", + "uuid": "python-5-386", "seg": [ [ [ "描述符", - "示例" + "示例", + "描述符示例" ] ], [ @@ -24974,7 +29364,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24576438140267928, + "max": 0.24576832151300237 + }, "related_data": {} } } @@ -24982,7 +29375,7 @@ { "覆盖型与非覆盖型描述符对比": { "data": { - "uuid": "python-5-382", + "uuid": "python-5-387", "seg": [ [ [ @@ -24991,15 +29384,24 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.24576832151300237, + "max": 0.24577226162332547 + }, + "related_data": { + "qa": { + "data_id": [ + "8_7432510_53401665@8" + ] + } + } } } }, { "方法是描述符": { "data": { - "uuid": "python-5-383", + "uuid": "python-5-388", "seg": [ [ [ @@ -25008,7 +29410,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24577226162332547, + "max": 0.24577620173364853 + }, "related_data": {} } } @@ -25016,17 +29421,22 @@ { "描述符用法建议": { "data": { - "uuid": "python-5-384", + "uuid": "python-5-389", "seg": [ [ [ "描述符", "用法", - "建议" + "建议", + "描述符用法", + "用法建议" ] ] ], - "level": "1", + "level": { + "min": 0.24577620173364853, + "max": 0.24578014184397162 + }, "related_data": {} } } @@ -25034,13 +29444,14 @@ { "描述符的文档字符串和覆盖删除操作": { "data": { - "uuid": "python-5-385", + "uuid": "python-5-390", "seg": [ [ [ "描述符", "文档", - "字符串" + "字符串", + "文档字符串" ], [ "覆盖", @@ -25049,23 +29460,30 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24578014184397162, + "max": 0.24578408195429471 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-652", + "uuid": "python-4-658", "seg": [ [ [ "属性", - "描述符" + "描述符", + "属性描述符" ] ] ], - "level": "1", + "level": { + "min": 0.24576438140267928, + "max": 0.24578408195429471 + }, "related_data": {} } } @@ -25076,17 +29494,21 @@ { "类工厂函数": { "data": { - "uuid": "python-5-386", + "uuid": "python-5-391", "seg": [ [ [ "类", "工厂", - "函数" + "函数", + "工厂函数" ] ] ], - "level": "1", + "level": { + "min": 0.24578408195429471, + "max": 0.24578736537956397 + }, "related_data": {} } } @@ -25094,7 +29516,7 @@ { "定制描述符的类装饰器": { "data": { - "uuid": "python-5-387", + "uuid": "python-5-392", "seg": [ [ [ @@ -25102,11 +29524,16 @@ "描述符", "类", "装饰", - "器" + "器", + "类装饰", + "装饰器" ] ] ], - "level": "1", + "level": { + "min": 0.24578736537956397, + "max": 0.2457906488048332 + }, "related_data": {} } } @@ -25114,7 +29541,7 @@ { "导入时和运行时比较": { "data": { - "uuid": "python-5-388", + "uuid": "python-5-393", "seg": [ [ [ @@ -25125,7 +29552,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2457906488048332, + "max": 0.24579393223010243 + }, "related_data": {} } } @@ -25133,7 +29563,7 @@ { "元类基础知识": { "data": { - "uuid": "python-5-389", + "uuid": "python-5-394", "seg": [ [ [ @@ -25142,7 +29572,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24579393223010243, + "max": 0.2457972156553717 + }, "related_data": {} } } @@ -25150,7 +29583,7 @@ { "定制描述符的元类": { "data": { - "uuid": "python-5-390", + "uuid": "python-5-395", "seg": [ [ [ @@ -25160,7 +29593,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2457972156553717, + "max": 0.24580049908064094 + }, "related_data": {} } } @@ -25168,7 +29604,7 @@ { "元类的特殊方法__prepare__": { "data": { - "uuid": "python-5-391", + "uuid": "python-5-396", "seg": [ [ [ @@ -25178,11 +29614,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24580049908064094, + "max": 0.24580378250591017 + }, "related_data": { "qa": { "data_id": [ - "8_7434610_53404994" + "8_7434610_53404994@8" ] } } @@ -25191,16 +29630,20 @@ } ], "data": { - "uuid": "python-4-653", + "uuid": "python-4-659", "seg": [ [ [ "类元", - "编程" + "编程", + "类元编程" ] ] ], - "level": "1", + "level": { + "min": 0.24578408195429471, + "max": 0.24580378250591017 + }, "related_data": {} } } @@ -25208,7 +29651,7 @@ { "给函数添加一个包装": { "data": { - "uuid": "python-4-654", + "uuid": "python-4-660", "seg": [ [ [ @@ -25218,7 +29661,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24580378250591017, + "max": 0.2458234830575256 + }, "related_data": {} } } @@ -25226,7 +29672,7 @@ { "编写装饰器时如何保存函数的元数据": { "data": { - "uuid": "python-4-655", + "uuid": "python-4-661", "seg": [ [ [ @@ -25236,11 +29682,17 @@ "保存", "函数", "元", - "数据" + "数据", + "装饰器", + "器时", + "元数据" ] ] ], - "level": "1", + "level": { + "min": 0.2458234830575256, + "max": 0.24584318360914106 + }, "related_data": {} } } @@ -25248,27 +29700,31 @@ { "对装饰器进行解包装": { "data": { - "uuid": "python-4-656", + "uuid": "python-4-662", "seg": [ [ [ "装饰", "器", "解", - "包装" + "包装", + "装饰器" ] ] ], - "level": "1", + "level": { + "min": 0.24584318360914106, + "max": 0.2458628841607565 + }, "related_data": { "qa": { "data_id": [ - "8_7397302_53342073", - "8_7447217_53426745", - "8_7436978_53409440", - "8_7398573_53344953", - "8_7398290_53344291", - "8_7438384_53411720" + "8_7397302_53342073@8", + "8_7447217_53426745@8", + "8_7436978_53409440@8", + "8_7398573_53344953@8", + "8_7398290_53344291@8", + "8_7438384_53411720@8" ] } } @@ -25278,7 +29734,7 @@ { "定义一个可接受参数的装饰器": { "data": { - "uuid": "python-4-657", + "uuid": "python-4-663", "seg": [ [ [ @@ -25286,11 +29742,15 @@ "接受", "参数", "装饰", - "器" + "器", + "装饰器" ] ] ], - "level": "1", + "level": { + "min": 0.2458628841607565, + "max": 0.24588258471237195 + }, "related_data": {} } } @@ -25298,7 +29758,7 @@ { "定义一个属性可由用户修改的装饰器": { "data": { - "uuid": "python-4-658", + "uuid": "python-4-664", "seg": [ [ [ @@ -25307,11 +29767,15 @@ "用户", "修改", "装饰", - "器" + "器", + "装饰器" ] ] ], - "level": "1", + "level": { + "min": 0.24588258471237195, + "max": 0.24590228526398739 + }, "related_data": {} } } @@ -25319,7 +29783,7 @@ { "定义一个能接收可选参数的装饰器": { "data": { - "uuid": "python-4-659", + "uuid": "python-4-665", "seg": [ [ [ @@ -25327,11 +29791,15 @@ "接收", "参数", "装饰", - "器" + "器", + "装饰器" ] ] ], - "level": "1", + "level": { + "min": 0.24590228526398739, + "max": 0.24592198581560284 + }, "related_data": {} } } @@ -25339,7 +29807,7 @@ { "利用装饰器对函数参数强制执行类型检查": { "data": { - "uuid": "python-4-660", + "uuid": "python-4-666", "seg": [ [ [ @@ -25349,11 +29817,18 @@ "函数参数", "强制执行", "类型", - "检查" + "检查", + "利用装饰", + "装饰器", + "函数参数强制执行", + "强制执行类型" ] ] ], - "level": "1", + "level": { + "min": 0.24592198581560284, + "max": 0.24594168636721828 + }, "related_data": {} } } @@ -25361,18 +29836,23 @@ { "在类中定义装饰器": { "data": { - "uuid": "python-4-661", + "uuid": "python-4-667", "seg": [ [ [ "类", "定义", "装饰", - "器" + "器", + "定义装饰", + "装饰器" ] ] ], - "level": "1", + "level": { + "min": 0.24594168636721828, + "max": 0.24596138691883374 + }, "related_data": {} } } @@ -25380,18 +29860,24 @@ { "把装饰器定义成类": { "data": { - "uuid": "python-4-662", + "uuid": "python-4-668", "seg": [ [ [ "装饰", "器", "定义", - "成类" + "成类", + "装饰器", + "器定义", + "定义成类" ] ] ], - "level": "1", + "level": { + "min": 0.24596138691883374, + "max": 0.24598108747044917 + }, "related_data": {} } } @@ -25399,21 +29885,25 @@ { "把装饰器作用到类和静态方法上": { "data": { - "uuid": "python-4-663", + "uuid": "python-4-669", "seg": [ [ [ "装饰", "器", "作用", - "类" + "类", + "装饰器" ], [ "静态方法" ] ] ], - "level": "1", + "level": { + "min": 0.24598108747044917, + "max": 0.24600078802206463 + }, "related_data": {} } } @@ -25421,7 +29911,7 @@ { "编写装饰器为被包装的函数添加参数": { "data": { - "uuid": "python-4-664", + "uuid": "python-4-670", "seg": [ [ [ @@ -25431,11 +29921,15 @@ "包装", "函数", "添加", - "参数" + "参数", + "装饰器为" ] ] ], - "level": "1", + "level": { + "min": 0.24600078802206463, + "max": 0.24602048857368006 + }, "related_data": {} } } @@ -25443,7 +29937,7 @@ { "利用装饰器给类定义打补丁": { "data": { - "uuid": "python-4-665", + "uuid": "python-4-671", "seg": [ [ [ @@ -25452,11 +29946,16 @@ "器", "类", "定义", - "打补丁" + "打补丁", + "利用装饰", + "装饰器" ] ] ], - "level": "1", + "level": { + "min": 0.24602048857368006, + "max": 0.24604018912529552 + }, "related_data": {} } } @@ -25464,7 +29963,7 @@ { "获取类属性的定义顺序": { "data": { - "uuid": "python-4-666", + "uuid": "python-4-672", "seg": [ [ [ @@ -25472,11 +29971,15 @@ "类", "属性", "定义", - "顺序" + "顺序", + "定义顺序" ] ] ], - "level": "1", + "level": { + "min": 0.24604018912529552, + "max": 0.24605988967691095 + }, "related_data": {} } } @@ -25484,7 +29987,7 @@ { "定义一个能接受可选参数的元类": { "data": { - "uuid": "python-4-667", + "uuid": "python-4-673", "seg": [ [ [ @@ -25495,7 +29998,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24605988967691095, + "max": 0.2460795902285264 + }, "related_data": {} } } @@ -25503,7 +30009,7 @@ { "在*args和**kwargs上强制规定一种参数签名": { "data": { - "uuid": "python-4-668", + "uuid": "python-4-674", "seg": [ [ [ @@ -25517,11 +30023,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2460795902285264, + "max": 0.24609929078014184 + }, "related_data": { "qa": { "data_id": [ - "8_5716798_35650124" + "8_5716798_35650124@8" ] } } @@ -25531,18 +30040,22 @@ { "在类中强制规定编码约定": { "data": { - "uuid": "python-4-669", + "uuid": "python-4-675", "seg": [ [ [ "类", "强制", "编码", - "约定" + "约定", + "规定编码" ] ] ], - "level": "1", + "level": { + "min": 0.24609929078014184, + "max": 0.2461189913317573 + }, "related_data": {} } } @@ -25550,18 +30063,22 @@ { "通过编程的方式来定义类": { "data": { - "uuid": "python-4-670", + "uuid": "python-4-676", "seg": [ [ [ "编程", "方式", "定义", - "类" + "类", + "定义类" ] ] ], - "level": "1", + "level": { + "min": 0.2461189913317573, + "max": 0.24613869188337273 + }, "related_data": {} } } @@ -25569,7 +30086,7 @@ { "在定义的时候初始化类成员": { "data": { - "uuid": "python-4-671", + "uuid": "python-4-677", "seg": [ [ [ @@ -25580,7 +30097,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24613869188337273, + "max": 0.2461583924349882 + }, "related_data": {} } } @@ -25588,7 +30108,7 @@ { "通过函数注解来实现方法重载": { "data": { - "uuid": "python-4-672", + "uuid": "python-4-678", "seg": [ [ [ @@ -25599,7 +30119,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2461583924349882, + "max": 0.24617809298660362 + }, "related_data": {} } } @@ -25607,18 +30130,22 @@ { "避免出现重复的属性方法": { "data": { - "uuid": "python-4-673", + "uuid": "python-4-679", "seg": [ [ [ "避免出现", "重复", "属性", - "方法" + "方法", + "属性方法" ] ] ], - "level": "1", + "level": { + "min": 0.24617809298660362, + "max": 0.24619779353821908 + }, "related_data": {} } } @@ -25626,18 +30153,22 @@ { "以简单的方式定义上下文管理器": { "data": { - "uuid": "python-4-674", + "uuid": "python-4-680", "seg": [ [ [ "方式", "定义", "上下文", - "管理器" + "管理器", + "方式定义" ] ] ], - "level": "1", + "level": { + "min": 0.24619779353821908, + "max": 0.2462174940898345 + }, "related_data": {} } } @@ -25645,18 +30176,22 @@ { "执行带有局部副作用的代码": { "data": { - "uuid": "python-4-675", + "uuid": "python-4-681", "seg": [ [ [ "执行", "带有", "局部", - "副作用" + "副作用", + "局部副作用" ] ] ], - "level": "1", + "level": { + "min": 0.2462174940898345, + "max": 0.24623719464144997 + }, "related_data": {} } } @@ -25664,7 +30199,7 @@ { "解析并分析Python源代码": { "data": { - "uuid": "python-4-676", + "uuid": "python-4-682", "seg": [ [ [ @@ -25674,7 +30209,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24623719464144997, + "max": 0.2462568951930654 + }, "related_data": {} } } @@ -25682,18 +30220,22 @@ { "将Python源码分解为字节码": { "data": { - "uuid": "python-4-677", + "uuid": "python-4-683", "seg": [ [ [ "python", "分解", "字节", - "码" + "码", + "字节码" ] ] ], - "level": "1", + "level": { + "min": 0.2462568951930654, + "max": 0.24627659574468086 + }, "related_data": {} } } @@ -25708,8 +30250,19 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.24574468085106382, + "max": 0.24627659574468086 + }, + "related_data": { + "qa": { + "data_id": [ + "8_7452918_53435555@8", + "8_7431428_53399747@8", + "8_7445151_53423698@8" + ] + } + } } } }, @@ -25719,7 +30272,7 @@ { "读写CSV数据": { "data": { - "uuid": "python-4-678", + "uuid": "python-4-684", "seg": [ [ [ @@ -25729,7 +30282,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24627659574468086, + "max": 0.2463249516441006 + }, "related_data": {} } } @@ -25737,7 +30293,7 @@ { "读写JSON数据": { "data": { - "uuid": "python-4-679", + "uuid": "python-4-685", "seg": [ [ [ @@ -25747,7 +30303,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2463249516441006, + "max": 0.24637330754352033 + }, "related_data": {} } } @@ -25755,7 +30314,7 @@ { "解析简单的XML文档": { "data": { - "uuid": "python-4-680", + "uuid": "python-4-686", "seg": [ [ [ @@ -25765,7 +30324,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24637330754352033, + "max": 0.24642166344294003 + }, "related_data": {} } } @@ -25773,7 +30335,7 @@ { "以增量方式解析大型XML文件": { "data": { - "uuid": "python-4-681", + "uuid": "python-4-687", "seg": [ [ [ @@ -25782,11 +30344,15 @@ "解析", "大型", "xml", - "文件" + "文件", + "增量方式" ] ] ], - "level": "1", + "level": { + "min": 0.24642166344294003, + "max": 0.24647001934235976 + }, "related_data": {} } } @@ -25794,17 +30360,21 @@ { "将字典转换为XML": { "data": { - "uuid": "python-4-682", + "uuid": "python-4-688", "seg": [ [ [ "字典", "转换", - "xml" + "xml", + "将字典" ] ] ], - "level": "1", + "level": { + "min": 0.24647001934235976, + "max": 0.2465183752417795 + }, "related_data": {} } } @@ -25812,7 +30382,7 @@ { "用命名空间来解析XML文档": { "data": { - "uuid": "python-4-683", + "uuid": "python-4-689", "seg": [ [ [ @@ -25820,11 +30390,15 @@ "空间", "解析", "xml", - "文档" + "文档", + "命名空间" ] ] ], - "level": "1", + "level": { + "min": 0.2465183752417795, + "max": 0.24656673114119923 + }, "related_data": {} } } @@ -25832,36 +30406,74 @@ { "同关系型数据库进行交互": { "data": { - "uuid": "python-4-684", + "uuid": "python-4-690", "seg": [ [ [ "关系", "数据库", - "交互" + "交互", + "关系型" ] ] ], - "level": "1", + "level": { + "min": 0.24656673114119923, + "max": 0.24661508704061896 + }, "related_data": {} } } }, + { + "编码和解码十六进制数字": { + "data": { + "uuid": "python-4-691", + "seg": [ + [ + [ + "编码" + ], + [ + "解码", + "十六进制", + "数字" + ] + ] + ], + "level": { + "min": 0.24661508704061896, + "max": 0.2466634429400387 + }, + "related_data": { + "qa": { + "data_id": [ + "8_4646351_29329955@8" + ] + } + } + } + } + }, { "读写二进制结构的数组": { "data": { - "uuid": "python-4-685", + "uuid": "python-4-692", "seg": [ [ [ "读写", "二进制", "结构", - "数组" + "数组", + "二进制结构" ] ] ], - "level": "1", + "level": { + "min": 0.2466634429400387, + "max": 0.2467117988394584 + }, "related_data": {} } } @@ -25869,22 +30481,27 @@ { "读取嵌套型和大小可变的二进制结构": { "data": { - "uuid": "python-4-686", + "uuid": "python-4-693", "seg": [ [ [ "读取", - "嵌套" + "嵌套", + "嵌套型" ], [ "大小", "可变", "二进制", - "结构" + "结构", + "二进制结构" ] ] ], - "level": "1", + "level": { + "min": 0.2467117988394584, + "max": 0.24676015473887813 + }, "related_data": {} } } @@ -25892,19 +30509,23 @@ { "数据汇总和统计": { "data": { - "uuid": "python-4-687", + "uuid": "python-4-694", "seg": [ [ [ "数据", - "汇总" + "汇总", + "数据汇总" ], [ "统计" ] ] ], - "level": "1", + "level": { + "min": 0.24676015473887813, + "max": 0.24680851063829787 + }, "related_data": {} } } @@ -25920,7 +30541,10 @@ [] ] ], - "level": "1", + "level": { + "min": 0.24627659574468086, + "max": 0.24680851063829787 + }, "related_data": {} } } @@ -25931,7 +30555,7 @@ { "启动和停止线程": { "data": { - "uuid": "python-4-688", + "uuid": "python-4-695", "seg": [ [ [ @@ -25943,7 +30567,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24680851063829787, + "max": 0.2468465045592705 + }, "related_data": {} } } @@ -25951,17 +30578,21 @@ { "判断线程是否已经启动": { "data": { - "uuid": "python-4-689", + "uuid": "python-4-696", "seg": [ [ [ "判断", "线程", - "启动" + "启动", + "已经启动" ] ] ], - "level": "2", + "level": { + "min": 0.2468465045592705, + "max": 0.24688449848024316 + }, "related_data": {} } } @@ -25969,16 +30600,20 @@ { "线程间通信": { "data": { - "uuid": "python-4-690", + "uuid": "python-4-697", "seg": [ [ [ "线程", - "间通信" + "间通信", + "线程间通信" ] ] ], - "level": "2", + "level": { + "min": 0.24688449848024316, + "max": 0.2469224924012158 + }, "related_data": {} } } @@ -25986,7 +30621,7 @@ { "对临界区加锁": { "data": { - "uuid": "python-4-691", + "uuid": "python-4-698", "seg": [ [ [ @@ -25996,7 +30631,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2469224924012158, + "max": 0.24696048632218845 + }, "related_data": {} } } @@ -26004,7 +30642,7 @@ { "避免死锁": { "data": { - "uuid": "python-4-692", + "uuid": "python-4-699", "seg": [ [ [ @@ -26012,7 +30650,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24696048632218845, + "max": 0.2469984802431611 + }, "related_data": {} } } @@ -26020,7 +30661,7 @@ { "保存线程专有状态": { "data": { - "uuid": "python-4-693", + "uuid": "python-4-700", "seg": [ [ [ @@ -26031,7 +30672,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2469984802431611, + "max": 0.24703647416413374 + }, "related_data": {} } } @@ -26039,17 +30683,21 @@ { "创建线程池": { "data": { - "uuid": "python-4-694", + "uuid": "python-4-701", "seg": [ [ [ "创建", "线程", - "池" + "池", + "线程池" ] ] ], - "level": "2", + "level": { + "min": 0.24703647416413374, + "max": 0.24707446808510639 + }, "related_data": {} } } @@ -26057,7 +30705,7 @@ { "实现简单的并行编程": { "data": { - "uuid": "python-4-695", + "uuid": "python-4-702", "seg": [ [ [ @@ -26066,7 +30714,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24707446808510639, + "max": 0.24711246200607903 + }, "related_data": {} } } @@ -26074,7 +30725,7 @@ { "如何规避GIL带来的限制": { "data": { - "uuid": "python-4-696", + "uuid": "python-4-703", "seg": [ [ [ @@ -26084,7 +30735,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24711246200607903, + "max": 0.24715045592705168 + }, "related_data": {} } } @@ -26092,7 +30746,7 @@ { "定义一个Actor任务": { "data": { - "uuid": "python-4-697", + "uuid": "python-4-704", "seg": [ [ [ @@ -26101,7 +30755,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24715045592705168, + "max": 0.24718844984802432 + }, "related_data": {} } } @@ -26109,18 +30766,22 @@ { "实现发布者/订阅者消息模式": { "data": { - "uuid": "python-4-698", + "uuid": "python-4-705", "seg": [ [ [ "发布者", "订阅", "消息", - "模式" + "模式", + "消息模式" ] ] ], - "level": "2", + "level": { + "min": 0.24718844984802432, + "max": 0.24722644376899697 + }, "related_data": {} } } @@ -26128,17 +30789,21 @@ { "使用生成器作为线程的替代方案": { "data": { - "uuid": "python-4-699", + "uuid": "python-4-706", "seg": [ [ [ "生成器", "线程", - "方案" + "方案", + "替代方案" ] ] ], - "level": "2", + "level": { + "min": 0.24722644376899697, + "max": 0.2472644376899696 + }, "related_data": {} } } @@ -26146,17 +30811,21 @@ { "轮询多个线程队列": { "data": { - "uuid": "python-4-700", + "uuid": "python-4-707", "seg": [ [ [ "轮询", "线程", - "队列" + "队列", + "线程队列" ] ] ], - "level": "2", + "level": { + "min": 0.2472644376899696, + "max": 0.24730243161094226 + }, "related_data": {} } } @@ -26164,7 +30833,7 @@ { "在UNIX上加载守护进程": { "data": { - "uuid": "python-4-701", + "uuid": "python-4-708", "seg": [ [ [ @@ -26175,7 +30844,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24730243161094226, + "max": 0.2473404255319149 + }, "related_data": {} } } @@ -26190,11 +30862,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.24680851063829787, + "max": 0.2473404255319149 + }, "related_data": { "qa": { "data_id": [ - "8_7407583_53357718" + "8_7407583_53357718@8" ] } } @@ -26207,7 +30882,7 @@ { "通过重定向、管道或输入文件来作为脚本的输入": { "data": { - "uuid": "python-4-702", + "uuid": "python-4-709", "seg": [ [ [ @@ -26221,7 +30896,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2473404255319149, + "max": 0.24737841945288755 + }, "related_data": {} } } @@ -26229,7 +30907,7 @@ { "终止程序并显示错误信息": { "data": { - "uuid": "python-4-703", + "uuid": "python-4-710", "seg": [ [ [ @@ -26240,7 +30918,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24737841945288755, + "max": 0.2474164133738602 + }, "related_data": {} } } @@ -26248,17 +30929,21 @@ { "解析命令行选项": { "data": { - "uuid": "python-4-704", + "uuid": "python-4-711", "seg": [ [ [ "解析", "命令行", - "选项" + "选项", + "命令行选项" ] ] ], - "level": "1", + "level": { + "min": 0.2474164133738602, + "max": 0.24745440729483284 + }, "related_data": {} } } @@ -26266,7 +30951,7 @@ { "在运行时提供密码输入提示": { "data": { - "uuid": "python-4-705", + "uuid": "python-4-712", "seg": [ [ [ @@ -26278,7 +30963,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24745440729483284, + "max": 0.24749240121580549 + }, "related_data": {} } } @@ -26286,7 +30974,7 @@ { "获取终端大小": { "data": { - "uuid": "python-4-706", + "uuid": "python-4-713", "seg": [ [ [ @@ -26296,11 +30984,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24749240121580549, + "max": 0.24753039513677813 + }, "related_data": { "qa": { "data_id": [ - "8_706319_622160" + "8_706319_622160@8" ] } } @@ -26310,7 +31001,7 @@ { "执行外部命令并获取输出": { "data": { - "uuid": "python-4-707", + "uuid": "python-4-714", "seg": [ [ [ @@ -26321,7 +31012,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24753039513677813, + "max": 0.24756838905775078 + }, "related_data": {} } } @@ -26329,7 +31023,7 @@ { "创建和解包归档文件": { "data": { - "uuid": "python-4-708", + "uuid": "python-4-715", "seg": [ [ [ @@ -26340,7 +31034,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24756838905775078, + "max": 0.2476063829787234 + }, "related_data": {} } } @@ -26348,7 +31045,7 @@ { "通过名称来查找文件": { "data": { - "uuid": "python-4-709", + "uuid": "python-4-716", "seg": [ [ [ @@ -26357,7 +31054,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2476063829787234, + "max": 0.24764437689969604 + }, "related_data": {} } } @@ -26365,7 +31065,7 @@ { "读取配置文件": { "data": { - "uuid": "python-4-710", + "uuid": "python-4-717", "seg": [ [ [ @@ -26374,7 +31074,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24764437689969604, + "max": 0.24768237082066868 + }, "related_data": {} } } @@ -26382,18 +31085,22 @@ { "给脚本添加日志记录": { "data": { - "uuid": "python-4-711", + "uuid": "python-4-718", "seg": [ [ [ "脚本", "添加", "日志", - "记录" + "记录", + "日志记录" ] ] ], - "level": "1", + "level": { + "min": 0.24768237082066868, + "max": 0.24772036474164133 + }, "related_data": {} } } @@ -26401,18 +31108,22 @@ { "给库添加日志记录": { "data": { - "uuid": "python-4-712", + "uuid": "python-4-719", "seg": [ [ [ "库", "添加", "日志", - "记录" + "记录", + "日志记录" ] ] ], - "level": "1", + "level": { + "min": 0.24772036474164133, + "max": 0.24775835866261398 + }, "related_data": {} } } @@ -26420,17 +31131,21 @@ { "创建一个秒表计时器": { "data": { - "uuid": "python-4-713", + "uuid": "python-4-720", "seg": [ [ [ "创建", "秒表", - "计时器" + "计时器", + "秒表计时器" ] ] ], - "level": "1", + "level": { + "min": 0.24775835866261398, + "max": 0.24779635258358662 + }, "related_data": {} } } @@ -26438,7 +31153,7 @@ { "给内存和CPU使用量设定限制": { "data": { - "uuid": "python-4-714", + "uuid": "python-4-721", "seg": [ [ [ @@ -26451,7 +31166,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24779635258358662, + "max": 0.24783434650455927 + }, "related_data": {} } } @@ -26459,7 +31177,7 @@ { "加载Web浏览器": { "data": { - "uuid": "python-4-715", + "uuid": "python-4-722", "seg": [ [ [ @@ -26469,7 +31187,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24783434650455927, + "max": 0.2478723404255319 + }, "related_data": {} } } @@ -26488,11 +31209,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2473404255319149, + "max": 0.2478723404255319 + }, "related_data": { "qa": { "data_id": [ - "8_7455330_53438235" + "8_7455330_53438235@8" ] } } @@ -26505,7 +31229,7 @@ { "利用ctypes来访问C代码": { "data": { - "uuid": "python-4-716", + "uuid": "python-4-723", "seg": [ [ [ @@ -26516,12 +31240,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2478723404255319, + "max": 0.24789766970618035 + }, "related_data": { "qa": { "data_id": [ - "8_703730_596385", - "8_703803_596364" + "8_703730_596385@8", + "8_703803_596364@8" ] } } @@ -26531,7 +31258,7 @@ { "编写简单的C语言扩展模块": { "data": { - "uuid": "python-4-717", + "uuid": "python-4-724", "seg": [ [ [ @@ -26542,30 +31269,18 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "8_938000_1074700", - "8_913959_1049059", - "8_968532_1122119", - "8_938002_1074698", - "8_1005355_1186937", - "8_938001_1074699", - "8_913956_1049167", - "8_986176_1149650", - "8_968419_1122345", - "8_1005354_1186938" - ] - } - } + "level": { + "min": 0.24789766970618035, + "max": 0.24792299898682876 + }, + "related_data": {} } } }, { "编写一个可操作数组的扩展函数": { "data": { - "uuid": "python-4-718", + "uuid": "python-4-725", "seg": [ [ [ @@ -26577,7 +31292,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24792299898682876, + "max": 0.2479483282674772 + }, "related_data": {} } } @@ -26585,7 +31303,7 @@ { "在C扩展模块中管理不透明指针": { "data": { - "uuid": "python-4-719", + "uuid": "python-4-726", "seg": [ [ [ @@ -26594,11 +31312,15 @@ "模块", "管理", "透明", - "指针" + "指针", + "不透明" ] ] ], - "level": "1", + "level": { + "min": 0.2479483282674772, + "max": 0.24797365754812564 + }, "related_data": {} } } @@ -26606,7 +31328,7 @@ { "在扩展模块中定义并导出C API": { "data": { - "uuid": "python-4-720", + "uuid": "python-4-727", "seg": [ [ [ @@ -26619,7 +31341,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24797365754812564, + "max": 0.24799898682877405 + }, "related_data": {} } } @@ -26627,7 +31352,7 @@ { "从C中调用Python": { "data": { - "uuid": "python-4-721", + "uuid": "python-4-728", "seg": [ [ [ @@ -26637,13 +31362,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24799898682877405, + "max": 0.2480243161094225 + }, "related_data": { "qa": { "data_id": [ - "8_7457596_53441892", - "8_1641721_6769631", - "8_761376_820721" + "8_7457596_53441892@8" ] } } @@ -26653,7 +31379,7 @@ { "在C扩展模块中释放GIL": { "data": { - "uuid": "python-4-722", + "uuid": "python-4-729", "seg": [ [ [ @@ -26665,7 +31391,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2480243161094225, + "max": 0.24804964539007093 + }, "related_data": {} } } @@ -26673,7 +31402,7 @@ { "混合使用C和Python环境中的线程": { "data": { - "uuid": "python-4-723", + "uuid": "python-4-730", "seg": [ [ [ @@ -26687,7 +31416,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24804964539007093, + "max": 0.24807497467071934 + }, "related_data": {} } } @@ -26695,7 +31427,7 @@ { "用Swig来包装C代码": { "data": { - "uuid": "python-4-724", + "uuid": "python-4-731", "seg": [ [ [ @@ -26705,7 +31437,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24807497467071934, + "max": 0.24810030395136778 + }, "related_data": {} } } @@ -26713,7 +31448,7 @@ { "用Cython来包装C代码": { "data": { - "uuid": "python-4-725", + "uuid": "python-4-732", "seg": [ [ [ @@ -26723,7 +31458,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24810030395136778, + "max": 0.24812563323201622 + }, "related_data": {} } } @@ -26731,7 +31469,7 @@ { "用Cython来高效操作数组": { "data": { - "uuid": "python-4-726", + "uuid": "python-4-733", "seg": [ [ [ @@ -26742,7 +31480,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24812563323201622, + "max": 0.24815096251266464 + }, "related_data": {} } } @@ -26750,7 +31491,7 @@ { "把函数指针转换为可调用对象": { "data": { - "uuid": "python-4-727", + "uuid": "python-4-734", "seg": [ [ [ @@ -26761,7 +31502,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24815096251266464, + "max": 0.24817629179331308 + }, "related_data": {} } } @@ -26769,7 +31513,7 @@ { "把以NULL结尾的字符串传给C库": { "data": { - "uuid": "python-4-728", + "uuid": "python-4-735", "seg": [ [ [ @@ -26782,7 +31526,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24817629179331308, + "max": 0.24820162107396151 + }, "related_data": {} } } @@ -26790,7 +31537,7 @@ { "把Unicode字符串传递给C库": { "data": { - "uuid": "python-4-729", + "uuid": "python-4-736", "seg": [ [ [ @@ -26802,7 +31549,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24820162107396151, + "max": 0.24822695035460993 + }, "related_data": {} } } @@ -26810,7 +31560,7 @@ { "把C字符串转换到Python中": { "data": { - "uuid": "python-4-730", + "uuid": "python-4-737", "seg": [ [ [ @@ -26821,7 +31571,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24822695035460993, + "max": 0.24825227963525837 + }, "related_data": {} } } @@ -26829,18 +31582,22 @@ { "同编码方式不确定的C字符串打交道": { "data": { - "uuid": "python-4-731", + "uuid": "python-4-738", "seg": [ [ [ "编码方式", "c", "字符串", - "打交道" + "打交道", + "不确定" ] ] ], - "level": "1", + "level": { + "min": 0.24825227963525837, + "max": 0.2482776089159068 + }, "related_data": {} } } @@ -26848,7 +31605,7 @@ { "把文件名传给C扩展模块": { "data": { - "uuid": "python-4-732", + "uuid": "python-4-739", "seg": [ [ [ @@ -26860,7 +31617,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2482776089159068, + "max": 0.24830293819655522 + }, "related_data": {} } } @@ -26868,7 +31628,7 @@ { "把打开的文件传给C扩展模块": { "data": { - "uuid": "python-4-733", + "uuid": "python-4-740", "seg": [ [ [ @@ -26881,7 +31641,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24830293819655522, + "max": 0.24832826747720366 + }, "related_data": {} } } @@ -26889,18 +31652,22 @@ { "在C中读取文件型对象": { "data": { - "uuid": "python-4-734", + "uuid": "python-4-741", "seg": [ [ [ "c", "读取", "文件", - "对象" + "对象", + "文件型" ] ] ], - "level": "1", + "level": { + "min": 0.24832826747720366, + "max": 0.2483535967578521 + }, "related_data": {} } } @@ -26908,7 +31675,7 @@ { "从C中访问可迭代对象": { "data": { - "uuid": "python-4-735", + "uuid": "python-4-742", "seg": [ [ [ @@ -26919,7 +31686,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2483535967578521, + "max": 0.2483789260385005 + }, "related_data": {} } } @@ -26927,7 +31697,7 @@ { "排查段错误": { "data": { - "uuid": "python-4-736", + "uuid": "python-4-743", "seg": [ [ [ @@ -26936,19 +31706,22 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2483789260385005, + "max": 0.24840425531914895 + }, "related_data": { "qa": { "data_id": [ - "8_914070_1049205", - "8_769399_830157", - "8_716608_709448", - "8_913964_1049067", - "8_1067977_1268804", - "8_717177_710352", - "8_779859_848376", - "8_7396996_53341380", - "8_7448546_53428711" + "8_914070_1049205@8", + "8_769399_830157@8", + "8_716608_709448@8", + "8_913964_1049067@8", + "8_1067977_1268804@8", + "8_717177_710352@8", + "8_779859_848376@8", + "8_7396996_53341380@8", + "8_7448546_53428711@8" ] } } @@ -26966,7 +31739,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2478723404255319, + "max": 0.24840425531914895 + }, "related_data": {} } } @@ -26980,7 +31756,7 @@ { "开发环境概述": { "data": { - "uuid": "python-5-392", + "uuid": "python-5-397", "seg": [ [ [ @@ -26990,16 +31766,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24840425531914895, + "max": 0.2485372340425532 + }, "related_data": { "qa": { "data_id": [ - "8_683466_539666", - "8_7433297_53403715", - "8_7424164_53385317", - "8_733380_768557", - "8_7454053_53436721", - "8_751097_805477" + "8_683466_539666@8", + "8_7433297_53403715@8", + "8_7424164_53385317@8", + "8_733380_768557@8", + "8_7454053_53436721@8", + "8_751097_805477@8" ] } } @@ -27009,26 +31788,30 @@ { "运行已经编写好的.py文件": { "data": { - "uuid": "python-5-393", + "uuid": "python-5-398", "seg": [ [ [ "运行", "编写", "py", - "文件" + "文件", + "已经编写" ] ] ], - "level": "1", + "level": { + "min": 0.2485372340425532, + "max": 0.24867021276595747 + }, "related_data": { "qa": { "data_id": [ - "8_6211104_43273850", - "8_1096144_1308139", - "8_757177_812493", - "8_7456476_53440264", - "8_917588_1052607" + "8_6211104_43273850@8", + "8_1096144_1308139@8", + "8_757177_812493@8", + "8_7456476_53440264@8", + "8_917588_1052607@8" ] } } @@ -27037,7 +31820,7 @@ } ], "data": { - "uuid": "python-4-737", + "uuid": "python-4-744", "seg": [ [ [ @@ -27048,7 +31831,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24840425531914895, + "max": 0.24867021276595747 + }, "related_data": {} } } @@ -27059,7 +31845,7 @@ { "使用自带的IDLE": { "data": { - "uuid": "python-5-394", + "uuid": "python-5-399", "seg": [ [ [ @@ -27068,14 +31854,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24867021276595747, + "max": 0.24893617021276596 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-738", + "uuid": "python-4-745", "seg": [ [ [ @@ -27084,7 +31873,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24867021276595747, + "max": 0.24893617021276596 + }, "related_data": {} } } @@ -27100,7 +31892,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24840425531914895, + "max": 0.24893617021276596 + }, "related_data": {} } } @@ -27114,7 +31909,7 @@ { "注释规则": { "data": { - "uuid": "python-5-395", + "uuid": "python-5-400", "seg": [ [ [ @@ -27123,23 +31918,30 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24893617021276596, + "max": 0.24911347517730495 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-739", + "uuid": "python-4-746", "seg": [ [ [ "python", - "语法" + "语法", + "语法特点" ] ] ], - "level": "1", + "level": { + "min": 0.24893617021276596, + "max": 0.24911347517730495 + }, "related_data": {} } } @@ -27150,7 +31952,7 @@ { "理解Python中的变量": { "data": { - "uuid": "python-5-396", + "uuid": "python-5-401", "seg": [ [ [ @@ -27160,7 +31962,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24911347517730495, + "max": 0.24920212765957445 + }, "related_data": {} } } @@ -27168,7 +31973,7 @@ { "定义变量": { "data": { - "uuid": "python-5-397", + "uuid": "python-5-402", "seg": [ [ [ @@ -27177,12 +31982,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24920212765957445, + "max": 0.24929078014184397 + }, "related_data": { "qa": { "data_id": [ - "8_682943_538274", - "8_7397620_53342796" + "8_682943_538274@8", + "8_7397620_53342796@8" ] } } @@ -27191,7 +31999,7 @@ } ], "data": { - "uuid": "python-4-740", + "uuid": "python-4-747", "seg": [ [ [ @@ -27200,7 +32008,80 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24911347517730495, + "max": 0.24929078014184397 + }, + "related_data": {} + } + } + }, + { + "基本数据类型": { + "children": [ + { + "布尔类型": { + "data": { + "uuid": "python-5-403", + "seg": [ + [ + [ + "布尔", + "类型", + "布尔类型" + ] + ] + ], + "level": { + "min": 0.24929078014184397, + "max": 0.24937943262411347 + }, + "related_data": {} + } + } + }, + { + "数据类型转换": { + "data": { + "uuid": "python-5-404", + "seg": [ + [ + [ + "数据", + "类型转换" + ] + ] + ], + "level": { + "min": 0.24937943262411347, + "max": 0.24946808510638296 + }, + "related_data": { + "qa": { + "data_id": [ + "8_7445655_53424326@8", + "8_661374_476391@8" + ] + } + } + } + } + } + ], + "data": { + "uuid": "python-4-748", + "seg": [ + [ + [ + "数据类型", + "基本数据类型" + ] + ] + ], + "level": { + "min": 0.24929078014184397, + "max": 0.24946808510638296 + }, "related_data": {} } } @@ -27213,11 +32094,15 @@ [ "python", "语言", - "基础" + "基础", + "语言基础" ] ] ], - "level": "1", + "level": { + "min": 0.24893617021276596, + "max": 0.24946808510638296 + }, "related_data": {} } } @@ -27228,7 +32113,7 @@ { "程序结构": { "data": { - "uuid": "python-4-741", + "uuid": "python-4-749", "seg": [ [ [ @@ -27236,7 +32121,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24946808510638296, + "max": 0.24964539007092199 + }, "related_data": {} } } @@ -27247,7 +32135,7 @@ { "if…else语句": { "data": { - "uuid": "python-5-398", + "uuid": "python-5-405", "seg": [ [ [ @@ -27258,13 +32146,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24964539007092199, + "max": 0.2497044917257683 + }, "related_data": { "qa": { "data_id": [ - "8_1101987_1316432", - "8_770893_833006", - "8_693877_572457" + "8_7451994_53433823@8", + "8_770893_833006@8", + "8_693877_572457@8" ] } } @@ -27274,7 +32165,7 @@ { "if…elif…else语句": { "data": { - "uuid": "python-5-399", + "uuid": "python-5-406", "seg": [ [ [ @@ -27286,11 +32177,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2497044917257683, + "max": 0.24976359338061466 + }, "related_data": { "qa": { "data_id": [ - "8_771620_834263" + "8_771620_834263@8" ] } } @@ -27300,7 +32194,7 @@ { "if语句的嵌套": { "data": { - "uuid": "python-5-400", + "uuid": "python-5-407", "seg": [ [ [ @@ -27309,11 +32203,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24976359338061466, + "max": 0.24982269503546098 + }, "related_data": { "qa": { "data_id": [ - "8_7460045_53445074" + "8_181397_66488@8", + "8_7460045_53445074@8" ] } } @@ -27322,7 +32220,7 @@ } ], "data": { - "uuid": "python-4-742", + "uuid": "python-4-750", "seg": [ [ [ @@ -27331,7 +32229,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24964539007092199, + "max": 0.24982269503546098 + }, "related_data": {} } } @@ -27342,7 +32243,7 @@ { "循环嵌套": { "data": { - "uuid": "python-5-401", + "uuid": "python-5-408", "seg": [ [ [ @@ -27351,20 +32252,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24982269503546098, + "max": 0.25 + }, "related_data": { "qa": { "data_id": [ - "8_7434848_53405315", - "8_7457734_53442334", - "8_7458667_53443451", - "8_1013309_1203252", - "8_751535_805161", - "8_7401312_53349144", - "8_7416547_53370780", - "8_1097930_1312169", - "8_918915_1053902", - "8_714146_705871" + "8_7434848_53405315@8", + "8_7457734_53442334@8", + "8_7458667_53443451@8", + "8_1013309_1203252@8", + "8_751535_805161@8", + "8_7401312_53349144@8", + "8_7416547_53370780@8", + "8_1097930_1312169@8", + "8_918915_1053902@8", + "8_714146_705871@8" ] } } @@ -27373,7 +32277,7 @@ } ], "data": { - "uuid": "python-4-743", + "uuid": "python-4-751", "seg": [ [ [ @@ -27382,7 +32286,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24982269503546098, + "max": 0.25 + }, "related_data": {} } } @@ -27399,7 +32306,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.24946808510638296, + "max": 0.25 + }, "related_data": {} } } @@ -27412,7 +32322,10 @@ [] ] ], - "level": "1", + "level": { + "min": 0.2, + "max": 0.25 + }, "related_data": {} } } @@ -27428,6 +32341,10 @@ ] ] ], + "level": { + "min": 0.0, + "max": 0.25 + }, "related_data": {} } } @@ -27444,7 +32361,7 @@ { "time": { "data": { - "uuid": "python-4-744", + "uuid": "python-4-752", "seg": [ [ [ @@ -27452,11 +32369,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.25, + "max": 0.253125 + }, "related_data": { "qa": { "data_id": [ - "8_7438823_53412282" + "8_7438823_53412282@8" ] } } @@ -27466,7 +32386,7 @@ { "datetime": { "data": { - "uuid": "python-4-745", + "uuid": "python-4-753", "seg": [ [ [ @@ -27474,12 +32394,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.253125, + "max": 0.25625 + }, "related_data": { "qa": { "data_id": [ - "8_7419987_53377928", - "8_7420270_53378320" + "8_7419987_53377928@8" ] } } @@ -27497,7 +32419,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.25, + "max": 0.25625 + }, "related_data": {} } } @@ -27508,7 +32433,7 @@ { "excel/csv/hdf/netCDF": { "data": { - "uuid": "python-4-746", + "uuid": "python-4-754", "seg": [ [ [ @@ -27519,7 +32444,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.25625, + "max": 0.2625 + }, "related_data": {} } } @@ -27535,7 +32463,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.25625, + "max": 0.2625 + }, "related_data": {} } } @@ -27546,7 +32477,7 @@ { "数据库概述": { "data": { - "uuid": "python-4-747", + "uuid": "python-4-755", "seg": [ [ [ @@ -27555,7 +32486,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2625, + "max": 0.26339285714285715 + }, "related_data": {} } } @@ -27563,7 +32497,7 @@ { "数据库安装配置": { "data": { - "uuid": "python-4-748", + "uuid": "python-4-756", "seg": [ [ [ @@ -27573,7 +32507,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.26339285714285715, + "max": 0.2642857142857143 + }, "related_data": {} } } @@ -27581,7 +32518,7 @@ { "SQL语句": { "data": { - "uuid": "python-4-749", + "uuid": "python-4-757", "seg": [ [ [ @@ -27590,14 +32527,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2642857142857143, + "max": 0.26517857142857143 + }, "related_data": { "qa": { "data_id": [ - "8_202457_129310", - "8_766219_53394413", - "8_7450653_53431898", - "8_765322_824301" + "8_202457_129310@8", + "8_766219_53394413@8", + "8_7450653_53431898@8", + "8_765322_824301@8" ] } } @@ -27610,17 +32550,21 @@ { "创建数据库文件": { "data": { - "uuid": "python-5-402", + "uuid": "python-5-409", "seg": [ [ [ "创建", "数据库", - "文件" + "文件", + "数据库文件" ] ] ], - "level": "2", + "level": { + "min": 0.26517857142857143, + "max": 0.265625 + }, "related_data": {} } } @@ -27628,7 +32572,7 @@ { "操作SQLite": { "data": { - "uuid": "python-5-403", + "uuid": "python-5-410", "seg": [ [ [ @@ -27637,12 +32581,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.265625, + "max": 0.26607142857142857 + }, "related_data": { "qa": { "data_id": [ - "8_767624_827495", - "8_7453597_53436289" + "8_767624_827495@8", + "8_7453597_53436289@8" ] } } @@ -27651,7 +32598,7 @@ } ], "data": { - "uuid": "python-4-750", + "uuid": "python-4-758", "seg": [ [ [ @@ -27659,7 +32606,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.26517857142857143, + "max": 0.26607142857142857 + }, "related_data": {} } } @@ -27670,7 +32620,7 @@ { "下载安装MySQL": { "data": { - "uuid": "python-5-404", + "uuid": "python-5-411", "seg": [ [ [ @@ -27679,20 +32629,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.26607142857142857, + "max": 0.2662946428571429 + }, "related_data": { "qa": { "data_id": [ - "8_248606_243573", - "8_7443511_53420662", - "8_203882_132101", - "8_673965_503011", - "8_750839_804585", - "8_7449445_53429512", - "8_1082101_1287947", - "8_755906_811173", - "8_735973_762603", - "8_755251_810650" + "8_248606_243573@8", + "8_7443511_53420662@8", + "8_203882_132101@8", + "8_673965_503011@8", + "8_750839_804585@8", + "8_7449445_53429512@8", + "8_1082101_1287947@8", + "8_755906_811173@8", + "8_735973_762603@8", + "8_755251_810650@8" ] } } @@ -27702,7 +32655,7 @@ { "连接数据库": { "data": { - "uuid": "python-5-405", + "uuid": "python-5-412", "seg": [ [ [ @@ -27711,12 +32664,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2662946428571429, + "max": 0.26651785714285714 + }, "related_data": { "qa": { "data_id": [ - "8_7396833_53341054", - "8_338389_336196" + "8_7396833_53341054@8", + "8_338389_336196@8" ] } } @@ -27726,7 +32682,7 @@ { "创建数据表": { "data": { - "uuid": "python-5-406", + "uuid": "python-5-413", "seg": [ [ [ @@ -27735,7 +32691,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.26651785714285714, + "max": 0.2667410714285714 + }, "related_data": {} } } @@ -27743,7 +32702,7 @@ { "操作MySQL数据表": { "data": { - "uuid": "python-5-407", + "uuid": "python-5-414", "seg": [ [ [ @@ -27753,11 +32712,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2667410714285714, + "max": 0.2669642857142857 + }, "related_data": { "qa": { "data_id": [ - "8_770513_832342" + "8_770513_832342@8" ] } } @@ -27766,7 +32728,7 @@ } ], "data": { - "uuid": "python-4-751", + "uuid": "python-4-759", "seg": [ [ [ @@ -27774,7 +32736,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.26607142857142857, + "max": 0.2669642857142857 + }, "related_data": {} } } @@ -27782,7 +32747,7 @@ { "MongoDB": { "data": { - "uuid": "python-4-752", + "uuid": "python-4-760", "seg": [ [ [ @@ -27790,12 +32755,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2669642857142857, + "max": 0.26785714285714285 + }, "related_data": { "qa": { "data_id": [ - "8_190252_90602", - "8_190108_90598" + "8_190252_90602@8", + "8_190108_90598@8" ] } } @@ -27808,7 +32776,7 @@ { "连接对象": { "data": { - "uuid": "python-5-408", + "uuid": "python-5-415", "seg": [ [ [ @@ -27817,7 +32785,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.26785714285714285, + "max": 0.2683035714285714 + }, "related_data": {} } } @@ -27825,33 +32796,41 @@ { "游标对象": { "data": { - "uuid": "python-5-409", + "uuid": "python-5-416", "seg": [ [ [ "游标", - "对象" + "对象", + "游标对象" ] ] ], - "level": "2", + "level": { + "min": 0.2683035714285714, + "max": 0.26875 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-753", + "uuid": "python-4-761", "seg": [ [ [ "数据库", "编程", - "接口" + "接口", + "数据库编程" ] ] ], - "level": "2", + "level": { + "min": 0.26785714285714285, + "max": 0.26875 + }, "related_data": {} } } @@ -27867,7 +32846,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2625, + "max": 0.26875 + }, "related_data": {} } } @@ -27878,7 +32860,7 @@ { "OS/Sys": { "data": { - "uuid": "python-4-754", + "uuid": "python-4-762", "seg": [ [ [ @@ -27887,7 +32869,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.26875, + "max": 0.275 + }, "related_data": {} } } @@ -27905,7 +32890,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.26875, + "max": 0.275 + }, "related_data": {} } } @@ -27916,16 +32904,20 @@ { "基础概念": { "data": { - "uuid": "python-4-755", + "uuid": "python-4-763", "seg": [ [ [ "基础", - "概念" + "概念", + "基础概念" ] ] ], - "level": "2", + "level": { + "min": 0.275, + "max": 0.2760416666666667 + }, "related_data": {} } } @@ -27933,7 +32925,7 @@ { "加锁和解锁": { "data": { - "uuid": "python-4-756", + "uuid": "python-4-764", "seg": [ [ [ @@ -27944,7 +32936,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2760416666666667, + "max": 0.27708333333333335 + }, "related_data": {} } } @@ -27952,7 +32947,7 @@ { "threading": { "data": { - "uuid": "python-4-757", + "uuid": "python-4-765", "seg": [ [ [ @@ -27960,7 +32955,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.27708333333333335, + "max": 0.278125 + }, "related_data": {} } } @@ -27968,7 +32966,7 @@ { "multiprocessing": { "data": { - "uuid": "python-4-758", + "uuid": "python-4-766", "seg": [ [ [ @@ -27976,11 +32974,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.278125, + "max": 0.2791666666666667 + }, "related_data": { "qa": { "data_id": [ - "8_7413831_53366115" + "8_7413831_53366115@8" ] } } @@ -27990,7 +32991,7 @@ { "queue": { "data": { - "uuid": "python-4-759", + "uuid": "python-4-767", "seg": [ [ [ @@ -27998,11 +32999,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2791666666666667, + "max": 0.28020833333333334 + }, "related_data": { "qa": { "data_id": [ - "8_7426599_53390226" + "8_7426599_53390226@8" ] } } @@ -28012,7 +33016,7 @@ { "gevent": { "data": { - "uuid": "python-4-760", + "uuid": "python-4-768", "seg": [ [ [ @@ -28020,7 +33024,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.28020833333333334, + "max": 0.28125 + }, "related_data": {} } } @@ -28032,14 +33039,18 @@ [ [ "线程", - "进程" + "进程", + "线程进程" ], [ "协程" ] ] ], - "level": "2", + "level": { + "min": 0.275, + "max": 0.28125 + }, "related_data": {} } } @@ -28050,7 +33061,7 @@ { "pyinstaller": { "data": { - "uuid": "python-4-761", + "uuid": "python-4-769", "seg": [ [ [ @@ -28058,7 +33069,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.28125, + "max": 0.2875 + }, "related_data": {} } } @@ -28073,7 +33087,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.28125, + "max": 0.2875 + }, "related_data": {} } } @@ -28084,7 +33101,7 @@ { "socket": { "data": { - "uuid": "python-4-762", + "uuid": "python-4-770", "seg": [ [ [ @@ -28092,17 +33109,20 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2875, + "max": 0.2878472222222222 + }, "related_data": { "qa": { "data_id": [ - "8_884559_1024135", - "8_7433136_53402934", - "8_229057_196149", - "8_1097488_1311022", - "8_235920_215419", - "8_240274_225341", - "8_251314_251444" + "8_884559_1024135@8", + "8_7433136_53402934@8", + "8_229057_196149@8", + "8_1097488_1311022@8", + "8_235920_215419@8", + "8_240274_225341@8", + "8_251314_251444@8" ] } } @@ -28112,7 +33132,7 @@ { "与HTTP服务交互": { "data": { - "uuid": "python-4-763", + "uuid": "python-4-771", "seg": [ [ [], @@ -28123,7 +33143,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2878472222222222, + "max": 0.2881944444444444 + }, "related_data": {} } } @@ -28134,7 +33157,7 @@ { "TCP服务器": { "data": { - "uuid": "python-5-410", + "uuid": "python-5-417", "seg": [ [ [ @@ -28143,16 +33166,20 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2881944444444444, + "max": 0.28836805555555556 + }, "related_data": { "qa": { "data_id": [ - "8_7428190_53393633", - "8_679177_525511", - "8_814465_924131", - "8_736269_763350", - "8_695488_578213", - "8_685828_546566" + "8_7428190_53393633@8", + "8_679177_525511@8", + "8_814465_924131@8", + "8_736269_763350@8", + "8_695488_578213@8", + "8_685828_546566@8", + "8_7395566_53338143@8" ] } } @@ -28162,7 +33189,7 @@ { "UDP服务器": { "data": { - "uuid": "python-5-411", + "uuid": "python-5-418", "seg": [ [ [ @@ -28171,14 +33198,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.28836805555555556, + "max": 0.28854166666666664 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-764", + "uuid": "python-4-772", "seg": [ [ [ @@ -28187,7 +33217,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2881944444444444, + "max": 0.28854166666666664 + }, "related_data": {} } } @@ -28195,7 +33228,7 @@ { "通过CIDR地址生成对应的IP地址集": { "data": { - "uuid": "python-4-765", + "uuid": "python-4-773", "seg": [ [ [ @@ -28203,11 +33236,15 @@ "地址", "生成", "ip地址", - "集" + "集", + "IP地址集" ] ] ], - "level": "2", + "level": { + "min": 0.28854166666666664, + "max": 0.28888888888888886 + }, "related_data": {} } } @@ -28215,7 +33252,7 @@ { "REST接口创建": { "data": { - "uuid": "python-4-766", + "uuid": "python-4-774", "seg": [ [ [ @@ -28225,7 +33262,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.28888888888888886, + "max": 0.2892361111111111 + }, "related_data": {} } } @@ -28236,30 +33276,34 @@ { "远程方法调用": { "data": { - "uuid": "python-5-412", + "uuid": "python-5-419", "seg": [ [ [ "远程", "方法", - "调用" + "调用", + "远程方法" ] ] ], - "level": "2", + "level": { + "min": 0.2892361111111111, + "max": 0.28940972222222217 + }, "related_data": { "qa": { "data_id": [ - "8_192642_96267", - "8_735183_760262", - "8_7395302_53338139", - "8_7416619_53370943", - "8_7407910_53358089", - "8_1050869_1247999", - "8_7418875_53376335", - "8_690923_562303", - "8_378525_409855", - "8_7415495_53369003" + "8_192642_96267@8", + "8_735183_760262@8", + "8_7395302_53338139@8", + "8_7416619_53370943@8", + "8_7407910_53358089@8", + "8_1050869_1247999@8", + "8_7418875_53376335@8", + "8_690923_562303@8", + "8_378525_409855@8", + "8_7415495_53369003@8" ] } } @@ -28269,7 +33313,7 @@ { "通过XML-RPC远程调用": { "data": { - "uuid": "python-5-413", + "uuid": "python-5-420", "seg": [ [ [ @@ -28280,14 +33324,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.28940972222222217, + "max": 0.2895833333333333 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-767", + "uuid": "python-4-775", "seg": [ [ [ @@ -28296,7 +33343,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2892361111111111, + "max": 0.2895833333333333 + }, "related_data": {} } } @@ -28304,7 +33354,7 @@ { "不同Python解释器之间的交互": { "data": { - "uuid": "python-4-768", + "uuid": "python-4-776", "seg": [ [ [ @@ -28314,7 +33364,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2895833333333333, + "max": 0.2899305555555555 + }, "related_data": {} } } @@ -28322,7 +33375,7 @@ { "客户端认证": { "data": { - "uuid": "python-4-769", + "uuid": "python-4-777", "seg": [ [ [ @@ -28331,7 +33384,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2899305555555555, + "max": 0.29027777777777775 + }, "related_data": {} } } @@ -28339,18 +33395,22 @@ { "Socket文件描述符传递": { "data": { - "uuid": "python-4-770", + "uuid": "python-4-778", "seg": [ [ [ "socket", "文件", "描述符", - "传递" + "传递", + "文件描述符" ] ] ], - "level": "2", + "level": { + "min": 0.29027777777777775, + "max": 0.290625 + }, "related_data": {} } } @@ -28358,7 +33418,7 @@ { "事件驱动的I/O": { "data": { - "uuid": "python-4-771", + "uuid": "python-4-779", "seg": [ [ [ @@ -28368,7 +33428,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.290625, + "max": 0.29097222222222224 + }, "related_data": {} } } @@ -28376,7 +33439,7 @@ { "大型数组发送与接收": { "data": { - "uuid": "python-4-772", + "uuid": "python-4-780", "seg": [ [ [ @@ -28389,7 +33452,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.29097222222222224, + "max": 0.29131944444444446 + }, "related_data": {} } } @@ -28400,17 +33466,21 @@ { "客户端/服务端架构": { "data": { - "uuid": "python-5-414", + "uuid": "python-5-421", "seg": [ [ [ "客户端", "服务端", - "架构" + "架构", + "服务端架构" ] ] ], - "level": "2", + "level": { + "min": 0.29131944444444446, + "max": 0.2913888888888889 + }, "related_data": {} } } @@ -28418,7 +33488,7 @@ { "持久化存储": { "data": { - "uuid": "python-5-415", + "uuid": "python-5-422", "seg": [ [ [ @@ -28428,7 +33498,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2913888888888889, + "max": 0.2914583333333334 + }, "related_data": {} } } @@ -28436,19 +33509,23 @@ { "数据库基本操作和SQL": { "data": { - "uuid": "python-5-416", + "uuid": "python-5-423", "seg": [ [ [ "数据库", - "基本操作" + "基本操作", + "数据库基本操作" ], [ "sql" ] ] ], - "level": "2", + "level": { + "min": 0.2914583333333334, + "max": 0.2915277777777778 + }, "related_data": {} } } @@ -28456,7 +33533,7 @@ { "Web应用:客户端/服务器计算": { "data": { - "uuid": "python-5-417", + "uuid": "python-5-424", "seg": [ [ [ @@ -28471,7 +33548,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2915277777777778, + "max": 0.29159722222222223 + }, "related_data": {} } } @@ -28479,7 +33559,7 @@ { "因特网": { "data": { - "uuid": "python-5-418", + "uuid": "python-5-425", "seg": [ [ [ @@ -28487,14 +33567,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.29159722222222223, + "max": 0.2916666666666667 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-773", + "uuid": "python-4-781", "seg": [ [ [ @@ -28502,7 +33585,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.29131944444444446, + "max": 0.2916666666666667 + }, "related_data": {} } } @@ -28513,18 +33599,23 @@ { "硬件客户端/服务器架构": { "data": { - "uuid": "python-5-419", + "uuid": "python-5-426", "seg": [ [ [ "硬件", "客户端", "服务器", - "架构" + "架构", + "硬件客户端", + "服务器架构" ] ] ], - "level": "2", + "level": { + "min": 0.2916666666666667, + "max": 0.29175347222222225 + }, "related_data": {} } } @@ -28532,18 +33623,23 @@ { "软件客户端/服务器架构": { "data": { - "uuid": "python-5-420", + "uuid": "python-5-427", "seg": [ [ [ "软件", "客户端", "服务器", - "架构" + "架构", + "软件客户端", + "服务器架构" ] ] ], - "level": "2", + "level": { + "min": 0.29175347222222225, + "max": 0.29184027777777777 + }, "related_data": {} } } @@ -28551,17 +33647,21 @@ { "银行出纳员作为服务器吗": { "data": { - "uuid": "python-5-421", + "uuid": "python-5-428", "seg": [ [ [ "银行", "出纳员", - "服务器" + "服务器", + "银行出纳员" ] ] ], - "level": "2", + "level": { + "min": 0.29184027777777777, + "max": 0.29192708333333334 + }, "related_data": {} } } @@ -28569,35 +33669,44 @@ { "客户端/服务器网络编程": { "data": { - "uuid": "python-5-422", + "uuid": "python-5-429", "seg": [ [ [ "客户端", "服务器", "网络", - "编程" + "编程", + "服务器网络", + "网络编程" ] ] ], - "level": "2", + "level": { + "min": 0.29192708333333334, + "max": 0.2920138888888889 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-774", + "uuid": "python-4-782", "seg": [ [ [ "客户端", "服务器", - "架构" + "架构", + "服务器架构" ] ] ], - "level": "2", + "level": { + "min": 0.2916666666666667, + "max": 0.2920138888888889 + }, "related_data": {} } } @@ -28608,7 +33717,7 @@ { "套接字": { "data": { - "uuid": "python-5-423", + "uuid": "python-5-430", "seg": [ [ [ @@ -28617,11 +33726,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2920138888888889, + "max": 0.29212962962962963 + }, "related_data": { "qa": { "data_id": [ - "8_7458257_53442924" + "8_7458257_53442924@8" ] } } @@ -28631,7 +33743,7 @@ { "套接字地址:主机-端口对": { "data": { - "uuid": "python-5-424", + "uuid": "python-5-431", "seg": [ [ [ @@ -28647,11 +33759,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.29212962962962963, + "max": 0.2922453703703704 + }, "related_data": { "qa": { "data_id": [ - "8_649065_454990" + "8_649065_454990@8" ] } } @@ -28661,7 +33776,7 @@ { "面向连接的套接字与无连接的套接字": { "data": { - "uuid": "python-5-425", + "uuid": "python-5-432", "seg": [ [ [ @@ -28677,14 +33792,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2922453703703704, + "max": 0.2923611111111111 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-775", + "uuid": "python-4-783", "seg": [ [ [ @@ -28699,11 +33817,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2920138888888889, + "max": 0.2923611111111111 + }, "related_data": { "qa": { "data_id": [ - "8_7429472_53396351" + "8_7429472_53396351@8" ] } } @@ -28716,17 +33837,21 @@ { "socket模块函数": { "data": { - "uuid": "python-5-426", + "uuid": "python-5-433", "seg": [ [ [ "socket", "模块", - "函数" + "函数", + "模块函数" ] ] ], - "level": "2", + "level": { + "min": 0.2923611111111111, + "max": 0.2923996913580247 + }, "related_data": {} } } @@ -28734,7 +33859,7 @@ { "套接字对象(内置)方法": { "data": { - "uuid": "python-5-427", + "uuid": "python-5-434", "seg": [ [ [ @@ -28746,7 +33871,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2923996913580247, + "max": 0.2924382716049383 + }, "related_data": {} } } @@ -28754,7 +33882,7 @@ { "创建TCP服务器": { "data": { - "uuid": "python-5-428", + "uuid": "python-5-435", "seg": [ [ [ @@ -28764,7 +33892,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2924382716049383, + "max": 0.29247685185185185 + }, "related_data": {} } } @@ -28772,7 +33903,7 @@ { "创建TCP客户端": { "data": { - "uuid": "python-5-429", + "uuid": "python-5-436", "seg": [ [ [ @@ -28782,7 +33913,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.29247685185185185, + "max": 0.29251543209876546 + }, "related_data": {} } } @@ -28790,7 +33924,7 @@ { "执行TCP服务器和客户端": { "data": { - "uuid": "python-5-430", + "uuid": "python-5-437", "seg": [ [ [ @@ -28803,7 +33937,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.29251543209876546, + "max": 0.292554012345679 + }, "related_data": {} } } @@ -28811,7 +33948,7 @@ { "创建UDP服务器": { "data": { - "uuid": "python-5-431", + "uuid": "python-5-438", "seg": [ [ [ @@ -28821,7 +33958,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.292554012345679, + "max": 0.2925925925925926 + }, "related_data": {} } } @@ -28829,7 +33969,7 @@ { "创建UDP客户端": { "data": { - "uuid": "python-5-432", + "uuid": "python-5-439", "seg": [ [ [ @@ -28839,7 +33979,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2925925925925926, + "max": 0.2926311728395062 + }, "related_data": {} } } @@ -28847,7 +33990,7 @@ { "执行UDP服务器和客户端": { "data": { - "uuid": "python-5-433", + "uuid": "python-5-440", "seg": [ [ [ @@ -28860,7 +34003,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2926311728395062, + "max": 0.2926697530864198 + }, "related_data": {} } } @@ -28868,34 +34014,42 @@ { "socket模块属性": { "data": { - "uuid": "python-5-434", + "uuid": "python-5-441", "seg": [ [ [ "socket", "模块", - "属性" + "属性", + "模块属性" ] ] ], - "level": "2", + "level": { + "min": 0.2926697530864198, + "max": 0.29270833333333335 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-776", + "uuid": "python-4-784", "seg": [ [ [ "python", "网络", - "编程" + "编程", + "网络编程" ] ] ], - "level": "2", + "level": { + "min": 0.2923611111111111, + "max": 0.29270833333333335 + }, "related_data": {} } } @@ -28906,7 +34060,7 @@ { "创建SocketServer TCP服务器": { "data": { - "uuid": "python-5-435", + "uuid": "python-5-442", "seg": [ [ [ @@ -28917,7 +34071,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.29270833333333335, + "max": 0.2928819444444445 + }, "related_data": {} } } @@ -28925,7 +34082,7 @@ { "创建SocketServer TCP客户端": { "data": { - "uuid": "python-5-436", + "uuid": "python-5-443", "seg": [ [ [ @@ -28936,14 +34093,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2928819444444445, + "max": 0.29305555555555557 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-777", + "uuid": "python-4-785", "seg": [ [ [ @@ -28952,7 +34112,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.29270833333333335, + "max": 0.29305555555555557 + }, "related_data": {} } } @@ -28963,7 +34126,7 @@ { "创建Twisted Reactor TCP服务器": { "data": { - "uuid": "python-5-437", + "uuid": "python-5-444", "seg": [ [ [ @@ -28975,7 +34138,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.29305555555555557, + "max": 0.29322916666666665 + }, "related_data": {} } } @@ -28983,7 +34149,7 @@ { "创建Twisted Reactor TCP客户端": { "data": { - "uuid": "python-5-438", + "uuid": "python-5-445", "seg": [ [ [ @@ -28995,14 +34161,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.29322916666666665, + "max": 0.2934027777777778 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-778", + "uuid": "python-4-786", "seg": [ [ [ @@ -29012,7 +34181,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.29305555555555557, + "max": 0.2934027777777778 + }, "related_data": {} } } @@ -29023,24 +34195,29 @@ { "其他因特网客户端协议": { "data": { - "uuid": "python-5-439", + "uuid": "python-5-446", "seg": [ [ [ "因特网", "客户端", - "协议" + "协议", + "因特网客户端", + "客户端协议" ] ] ], - "level": "2", + "level": { + "min": 0.2934027777777778, + "max": 0.29375 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-779", + "uuid": "python-4-787", "seg": [ [ [ @@ -29049,7 +34226,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2934027777777778, + "max": 0.29375 + }, "related_data": {} } } @@ -29061,11 +34241,15 @@ [ [ "网络", - "编程" + "编程", + "网络编程" ] ] ], - "level": "2", + "level": { + "min": 0.2875, + "max": 0.29375 + }, "related_data": {} } } @@ -29076,7 +34260,7 @@ { "smtplib": { "data": { - "uuid": "python-4-780", + "uuid": "python-4-788", "seg": [ [ [ @@ -29084,7 +34268,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.29375, + "max": 0.3 + }, "related_data": {} } } @@ -29100,11 +34287,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.29375, + "max": 0.3 + }, "related_data": { "qa": { "data_id": [ - "8_7460328_53445433" + "8_7460328_53445433@8" ] } } @@ -29121,7 +34311,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.25, + "max": 0.3 + }, "related_data": {} } } @@ -29135,7 +34328,7 @@ { "HTML/HTML5/CSS": { "data": { - "uuid": "python-4-781", + "uuid": "python-4-789", "seg": [ [ [ @@ -29145,7 +34338,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3, + "max": 0.30125 + }, "related_data": {} } } @@ -29153,7 +34349,7 @@ { "前端数据库和后台": { "data": { - "uuid": "python-4-782", + "uuid": "python-4-790", "seg": [ [ [ @@ -29165,7 +34361,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.30125, + "max": 0.3025 + }, "related_data": {} } } @@ -29173,7 +34372,7 @@ { "MVC架构": { "data": { - "uuid": "python-4-783", + "uuid": "python-4-791", "seg": [ [ [ @@ -29182,7 +34381,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3025, + "max": 0.30374999999999996 + }, "related_data": {} } } @@ -29190,7 +34392,7 @@ { "REST和Ajax": { "data": { - "uuid": "python-4-784", + "uuid": "python-4-792", "seg": [ [ [ @@ -29201,7 +34403,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.30374999999999996, + "max": 0.305 + }, "related_data": {} } } @@ -29218,7 +34423,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3, + "max": 0.305 + }, "related_data": {} } } @@ -29229,7 +34437,7 @@ { "Django简介": { "data": { - "uuid": "python-4-785", + "uuid": "python-4-793", "seg": [ [ [ @@ -29238,18 +34446,21 @@ ] ] ], - "level": "1", + "level": { + "min": 0.305, + "max": 0.30521739130434783 + }, "related_data": { "qa": { "data_id": [ - "8_7437466_53410367", - "8_1083861_1306291", - "8_688370_554707", - "8_748725_800795", - "8_651682_459116", - "8_381980_416173", - "8_762450_820720", - "8_952670_1104320" + "8_7437466_53410367@8", + "8_1083861_1306291@8", + "8_688370_554707@8", + "8_748725_800795@8", + "8_651682_459116@8", + "8_381980_416173@8", + "8_762450_820720@8", + "8_952670_1104320@8" ] } } @@ -29259,7 +34470,7 @@ { "Django安装配置": { "data": { - "uuid": "python-4-786", + "uuid": "python-4-794", "seg": [ [ [ @@ -29269,7 +34480,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.30521739130434783, + "max": 0.30543478260869567 + }, "related_data": {} } } @@ -29277,7 +34491,7 @@ { "DTL(Django Template Language)": { "data": { - "uuid": "python-4-787", + "uuid": "python-4-795", "seg": [ [ [ @@ -29288,7 +34502,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.30543478260869567, + "max": 0.30565217391304345 + }, "related_data": {} } } @@ -29296,17 +34513,21 @@ { "Django路由定义": { "data": { - "uuid": "python-4-788", + "uuid": "python-4-796", "seg": [ [ [ "django", "路由", - "定义" + "定义", + "路由定义" ] ] ], - "level": "1", + "level": { + "min": 0.30565217391304345, + "max": 0.3058695652173913 + }, "related_data": {} } } @@ -29314,7 +34535,7 @@ { "Django请求数据解析": { "data": { - "uuid": "python-4-789", + "uuid": "python-4-797", "seg": [ [ [ @@ -29324,11 +34545,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3058695652173913, + "max": 0.3060869565217391 + }, "related_data": { "qa": { "data_id": [ - "8_766403_827014" + "8_766403_827014@8" ] } } @@ -29338,7 +34562,7 @@ { "Django数据库操作": { "data": { - "uuid": "python-4-790", + "uuid": "python-4-798", "seg": [ [ [ @@ -29348,11 +34572,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3060869565217391, + "max": 0.30630434782608695 + }, "related_data": { "qa": { "data_id": [ - "8_1085674_1292469" + "8_1085674_1292469@8" ] } } @@ -29362,7 +34589,7 @@ { "Django提交表单": { "data": { - "uuid": "python-4-791", + "uuid": "python-4-799", "seg": [ [ [ @@ -29372,11 +34599,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.30630434782608695, + "max": 0.3065217391304348 + }, "related_data": { "qa": { "data_id": [ - "8_184491_74159" + "8_184491_74159@8" ] } } @@ -29386,7 +34616,7 @@ { "Django Rest Framework": { "data": { - "uuid": "python-4-792", + "uuid": "python-4-800", "seg": [ [ [ @@ -29396,7 +34626,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3065217391304348, + "max": 0.3067391304347826 + }, "related_data": {} } } @@ -29404,17 +34637,21 @@ { "部署日志与安全": { "data": { - "uuid": "python-4-793", + "uuid": "python-4-801", "seg": [ [ [ "部署", - "日志" + "日志", + "部署日志" ], [] ] ], - "level": "1", + "level": { + "min": 0.3067391304347826, + "max": 0.3069565217391304 + }, "related_data": {} } } @@ -29422,7 +34659,7 @@ { "Django开发案例": { "data": { - "uuid": "python-4-794", + "uuid": "python-4-802", "seg": [ [ [ @@ -29432,11 +34669,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3069565217391304, + "max": 0.30717391304347824 + }, "related_data": { "qa": { "data_id": [ - "8_657376_469898" + "8_657376_469898@8" ] } } @@ -29446,7 +34686,7 @@ { "Web框架": { "data": { - "uuid": "python-4-795", + "uuid": "python-4-803", "seg": [ [ [ @@ -29455,7 +34695,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.30717391304347824, + "max": 0.3073913043478261 + }, "related_data": {} } } @@ -29463,7 +34706,7 @@ { "“Hello World”应用(一个博客)": { "data": { - "uuid": "python-4-796", + "uuid": "python-4-804", "seg": [ [ [ @@ -29473,13 +34716,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3073913043478261, + "max": 0.3076086956521739 + }, "related_data": { "qa": { "data_id": [ - "8_7460089_53445205", - "8_7436137_53407413", - "8_7461790_53447039" + "8_7460089_53445205@8", + "8_7436137_53407413@8", + "8_7461790_53447039@8" ] } } @@ -29492,7 +34738,7 @@ { "设置数据库": { "data": { - "uuid": "python-5-440", + "uuid": "python-5-447", "seg": [ [ [ @@ -29501,14 +34747,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3076086956521739, + "max": 0.30782608695652175 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-797", + "uuid": "python-4-805", "seg": [ [ [ @@ -29520,7 +34769,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3076086956521739, + "max": 0.30782608695652175 + }, "related_data": {} } } @@ -29531,7 +34783,7 @@ { "在Django中使用Python shell": { "data": { - "uuid": "python-5-441", + "uuid": "python-5-448", "seg": [ [ [ @@ -29541,19 +34793,22 @@ ] ] ], - "level": "1", + "level": { + "min": 0.30782608695652175, + "max": 0.30793478260869567 + }, "related_data": { "qa": { "data_id": [ - "8_183346_70166", - "8_7414018_53366293", - "8_738998_772326", - "8_692648_568195", - "8_160686_29253", - "8_774287_896750", - "8_361539_379489", - "8_1066832_1267071", - "8_1071910_1274045" + "8_183346_70166@8", + "8_7414018_53366293@8", + "8_738998_772326@8", + "8_692648_568195@8", + "8_160686_29253@8", + "8_774287_896750@8", + "8_361539_379489@8", + "8_1066832_1267071@8", + "8_1071910_1274045@8" ] } } @@ -29563,23 +34818,27 @@ { "测试数据模型": { "data": { - "uuid": "python-5-442", + "uuid": "python-5-449", "seg": [ [ [ "测试数据", - "模型" + "模型", + "测试数据模型" ] ] ], - "level": "1", + "level": { + "min": 0.30793478260869567, + "max": 0.3080434782608696 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-798", + "uuid": "python-4-806", "seg": [ [ [ @@ -29588,7 +34847,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.30782608695652175, + "max": 0.3080434782608696 + }, "related_data": {} } } @@ -29599,7 +34861,7 @@ { "设置admin": { "data": { - "uuid": "python-5-443", + "uuid": "python-5-450", "seg": [ [ [ @@ -29608,7 +34870,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3080434782608696, + "max": 0.3081521739130435 + }, "related_data": {} } } @@ -29616,7 +34881,7 @@ { "使用admin": { "data": { - "uuid": "python-5-444", + "uuid": "python-5-451", "seg": [ [ [ @@ -29624,11 +34889,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3081521739130435, + "max": 0.30826086956521737 + }, "related_data": { "qa": { "data_id": [ - "8_756182_812734" + "8_756182_812734@8" ] } } @@ -29637,7 +34905,7 @@ } ], "data": { - "uuid": "python-4-799", + "uuid": "python-4-807", "seg": [ [ [ @@ -29646,7 +34914,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3080434782608696, + "max": 0.30826086956521737 + }, "related_data": {} } } @@ -29657,7 +34928,7 @@ { "创建模板": { "data": { - "uuid": "python-5-445", + "uuid": "python-5-452", "seg": [ [ [ @@ -29666,16 +34937,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.30826086956521737, + "max": 0.3083333333333333 + }, "related_data": { "qa": { "data_id": [ - "8_955457_1100812", - "8_7439025_53413572", - "8_666538_484732", - "8_7448883_53429015", - "8_952306_1095059", - "8_175282_55740" + "8_955457_1100812@8", + "8_7439025_53413572@8", + "8_666538_484732@8", + "8_7448883_53429015@8", + "8_952306_1095059@8", + "8_175282_55740@8" ] } } @@ -29685,7 +34959,7 @@ { "创建URL模式": { "data": { - "uuid": "python-5-446", + "uuid": "python-5-453", "seg": [ [ [ @@ -29695,7 +34969,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3083333333333333, + "max": 0.3084057971014493 + }, "related_data": {} } } @@ -29703,24 +34980,28 @@ { "创建视图函数": { "data": { - "uuid": "python-5-447", + "uuid": "python-5-454", "seg": [ [ [ "创建", "视图", - "函数" + "函数", + "视图函数" ] ] ], - "level": "1", + "level": { + "min": 0.3084057971014493, + "max": 0.3084782608695652 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-800", + "uuid": "python-4-808", "seg": [ [ [ @@ -29730,7 +35011,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.30826086956521737, + "max": 0.3084782608695652 + }, "related_data": {} } } @@ -29738,7 +35022,7 @@ { "改进输出": { "data": { - "uuid": "python-4-801", + "uuid": "python-4-809", "seg": [ [ [ @@ -29747,7 +35031,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3084782608695652, + "max": 0.30869565217391304 + }, "related_data": {} } } @@ -29758,7 +35045,7 @@ { "添加URLconf项": { "data": { - "uuid": "python-5-448", + "uuid": "python-5-455", "seg": [ [ [ @@ -29768,11 +35055,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.30869565217391304, + "max": 0.30876811594202896 + }, "related_data": { "qa": { "data_id": [ - "8_7445929_53425006" + "8_7445929_53425006@8" ] } } @@ -29782,7 +35072,7 @@ { "视图:处理用户输入": { "data": { - "uuid": "python-5-449", + "uuid": "python-5-456", "seg": [ [ [ @@ -29796,20 +35086,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.30876811594202896, + "max": 0.30884057971014495 + }, "related_data": { "qa": { "data_id": [ - "8_7441674_53417978", - "8_698480_585495", - "8_3198067_21755191", - "8_7424772_53385987", - "8_692817_568872", - "8_753318_807745", - "8_7414002_53366446", - "8_1051269_1248608", - "8_693861_572500", - "8_1092910_1301655" + "8_7441674_53417978@8", + "8_698480_585495@8", + "8_3198067_21755191@8", + "8_7424772_53385987@8", + "8_692817_568872@8", + "8_753318_807745@8", + "8_7414002_53366446@8", + "8_1051269_1248608@8", + "8_693861_572500@8", + "8_1092910_1301655@8" ] } } @@ -29819,7 +35112,7 @@ { "跨站点请求伪造": { "data": { - "uuid": "python-5-450", + "uuid": "python-5-457", "seg": [ [ [ @@ -29829,14 +35122,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.30884057971014495, + "max": 0.3089130434782609 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-802", + "uuid": "python-4-810", "seg": [ [ [ @@ -29845,7 +35141,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.30869565217391304, + "max": 0.3089130434782609 + }, "related_data": {} } } @@ -29856,7 +35155,7 @@ { "Django表单简介": { "data": { - "uuid": "python-5-451", + "uuid": "python-5-458", "seg": [ [ [ @@ -29866,7 +35165,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3089130434782609, + "max": 0.3089673913043478 + }, "related_data": {} } } @@ -29874,17 +35176,22 @@ { "模型表单示例": { "data": { - "uuid": "python-5-452", + "uuid": "python-5-459", "seg": [ [ [ "模型", "表单", - "示例" + "示例", + "模型表单", + "表单示例" ] ] ], - "level": "2", + "level": { + "min": 0.3089673913043478, + "max": 0.3090217391304348 + }, "related_data": {} } } @@ -29892,7 +35199,7 @@ { "使用ModelForm来生成HTML表单": { "data": { - "uuid": "python-5-453", + "uuid": "python-5-460", "seg": [ [ [ @@ -29903,7 +35210,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3090217391304348, + "max": 0.3090760869565218 + }, "related_data": {} } } @@ -29911,7 +35221,7 @@ { "处理ModelForm数据": { "data": { - "uuid": "python-5-454", + "uuid": "python-5-461", "seg": [ [ [ @@ -29920,20 +35230,17 @@ ] ] ], - "level": "2", - "related_data": { - "qa": { - "data_id": [ - "8_651597_459028" - ] - } - } + "level": { + "min": 0.3090760869565218, + "max": 0.3091304347826087 + }, + "related_data": {} } } } ], "data": { - "uuid": "python-4-803", + "uuid": "python-4-811", "seg": [ [ [ @@ -29941,11 +35248,15 @@ ], [ "模型", - "表单" + "表单", + "模型表单" ] ] ], - "level": "2", + "level": { + "min": 0.3089130434782609, + "max": 0.3091304347826087 + }, "related_data": {} } } @@ -29953,16 +35264,20 @@ { "视图进阶": { "data": { - "uuid": "python-4-804", + "uuid": "python-4-812", "seg": [ [ [ "视图", - "进阶" + "进阶", + "视图进阶" ] ] ], - "level": "1", + "level": { + "min": 0.3091304347826087, + "max": 0.30934782608695655 + }, "related_data": {} } } @@ -29970,7 +35285,7 @@ { "*改善外观": { "data": { - "uuid": "python-4-805", + "uuid": "python-4-813", "seg": [ [ [ @@ -29979,7 +35294,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.30934782608695655, + "max": 0.3095652173913043 + }, "related_data": {} } } @@ -29990,7 +35308,7 @@ { "安装Twython库": { "data": { - "uuid": "python-5-455", + "uuid": "python-5-462", "seg": [ [ [ @@ -30000,7 +35318,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3095652173913043, + "max": 0.3096086956521739 + }, "related_data": {} } } @@ -30008,7 +35329,7 @@ { "URL结构": { "data": { - "uuid": "python-5-456", + "uuid": "python-5-463", "seg": [ [ [ @@ -30017,19 +35338,22 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3096086956521739, + "max": 0.30965217391304345 + }, "related_data": { "qa": { "data_id": [ - "8_195024_104213", - "8_7397001_53341381", - "8_721802_718713", - "8_209203_146452", - "8_1096485_1308823", - "8_1052954_1250310", - "8_771701_834347", - "8_769361_830197", - "8_924392_1059258" + "8_195024_104213@8", + "8_7397001_53341381@8", + "8_721802_718713@8", + "8_209203_146452@8", + "8_1096485_1308823@8", + "8_1052954_1250310@8", + "8_771701_834347@8", + "8_769361_830197@8", + "8_924392_1059258@8" ] } } @@ -30039,7 +35363,7 @@ { "数据模型": { "data": { - "uuid": "python-5-457", + "uuid": "python-5-464", "seg": [ [ [ @@ -30047,7 +35371,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.30965217391304345, + "max": 0.30969565217391304 + }, "related_data": {} } } @@ -30055,7 +35382,7 @@ { "提交新推文以便审核": { "data": { - "uuid": "python-5-458", + "uuid": "python-5-465", "seg": [ [ [ @@ -30065,7 +35392,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.30969565217391304, + "max": 0.3097391304347826 + }, "related_data": {} } } @@ -30073,7 +35403,7 @@ { "审核推文": { "data": { - "uuid": "python-5-459", + "uuid": "python-5-466", "seg": [ [ [ @@ -30082,14 +35412,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3097391304347826, + "max": 0.30978260869565216 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-806", + "uuid": "python-4-814", "seg": [ [ [ @@ -30103,7 +35436,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3095652173913043, + "max": 0.30978260869565216 + }, "related_data": {} } } @@ -30111,7 +35447,7 @@ { "资源": { "data": { - "uuid": "python-4-807", + "uuid": "python-4-815", "seg": [ [ [ @@ -30119,7 +35455,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.30978260869565216, + "max": 0.31 + }, "related_data": {} } } @@ -30134,7 +35473,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.305, + "max": 0.31 + }, "related_data": {} } } @@ -30145,7 +35487,7 @@ { "Tornado简介": { "data": { - "uuid": "python-4-808", + "uuid": "python-4-816", "seg": [ [ [ @@ -30154,7 +35496,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31, + "max": 0.31055555555555553 + }, "related_data": {} } } @@ -30162,7 +35507,7 @@ { "Tornado安装配置": { "data": { - "uuid": "python-4-809", + "uuid": "python-4-817", "seg": [ [ [ @@ -30172,7 +35517,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31055555555555553, + "max": 0.3111111111111111 + }, "related_data": {} } } @@ -30180,7 +35528,7 @@ { "Tornado提交表单": { "data": { - "uuid": "python-4-810", + "uuid": "python-4-818", "seg": [ [ [ @@ -30190,7 +35538,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3111111111111111, + "max": 0.31166666666666665 + }, "related_data": {} } } @@ -30198,7 +35549,7 @@ { "Tornado模板": { "data": { - "uuid": "python-4-811", + "uuid": "python-4-819", "seg": [ [ [ @@ -30207,11 +35558,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31166666666666665, + "max": 0.31222222222222223 + }, "related_data": { "qa": { "data_id": [ - "8_1094785_1305328" + "8_1094785_1305328@8" ] } } @@ -30221,7 +35575,7 @@ { "Tornado数据库操作": { "data": { - "uuid": "python-4-812", + "uuid": "python-4-820", "seg": [ [ [ @@ -30231,7 +35585,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31222222222222223, + "max": 0.31277777777777777 + }, "related_data": {} } } @@ -30239,7 +35596,7 @@ { "Tornado异步Web服务": { "data": { - "uuid": "python-4-813", + "uuid": "python-4-821", "seg": [ [ [ @@ -30250,7 +35607,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31277777777777777, + "max": 0.31333333333333335 + }, "related_data": {} } } @@ -30258,7 +35618,7 @@ { "外部服务认证(auth)": { "data": { - "uuid": "python-4-814", + "uuid": "python-4-822", "seg": [ [ [ @@ -30269,7 +35629,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31333333333333335, + "max": 0.3138888888888889 + }, "related_data": {} } } @@ -30277,17 +35640,21 @@ { "部署日志与安全": { "data": { - "uuid": "python-4-815", + "uuid": "python-4-823", "seg": [ [ [ "部署", - "日志" + "日志", + "部署日志" ], [] ] ], - "level": "1", + "level": { + "min": 0.3138888888888889, + "max": 0.31444444444444447 + }, "related_data": {} } } @@ -30295,7 +35662,7 @@ { "Tornado开发案例": { "data": { - "uuid": "python-4-816", + "uuid": "python-4-824", "seg": [ [ [ @@ -30305,7 +35672,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31444444444444447, + "max": 0.315 + }, "related_data": {} } } @@ -30320,7 +35690,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31, + "max": 0.315 + }, "related_data": {} } } @@ -30346,18 +35719,21 @@ ] ] ], - "level": "1", + "level": { + "min": 0.315, + "max": 0.3150108225108225 + }, "related_data": { "qa": { "data_id": [ - "8_202717_128131", - "8_7456868_53440938", - "8_7442525_53419397", - "8_7409725_53360159", - "8_7442552_53419432", - "8_7429909_53396846", - "8_7454604_53442021", - "8_218296_170253" + "8_202717_128131@8", + "8_7456868_53440938@8", + "8_7442525_53419397@8", + "8_7409725_53360159@8", + "8_7442552_53419432@8", + "8_7429909_53396846@8", + "8_7454604_53442021@8", + "8_218296_170253@8" ] } } @@ -30375,7 +35751,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3150108225108225, + "max": 0.31502164502164504 + }, "related_data": {} } } @@ -30393,7 +35772,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31502164502164504, + "max": 0.3150324675324675 + }, "related_data": {} } } @@ -30411,11 +35793,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3150324675324675, + "max": 0.31504329004329 + }, "related_data": { "qa": { "data_id": [ - "8_7455831_53439154" + "8_7455831_53439154@8" ] } } @@ -30433,7 +35818,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31504329004329, + "max": 0.31505411255411253 + }, "related_data": {} } } @@ -30452,20 +35840,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31505411255411253, + "max": 0.31506493506493505 + }, "related_data": { "qa": { "data_id": [ - "8_679094_525631", - "8_7427122_53391283", - "8_7442860_53419836", - "8_764175_822827", - "8_7437059_53409543", - "8_196761_109719", - "8_390629_432333", - "8_355090_368190", - "8_7423600_53383470", - "8_386747_425264" + "8_679094_525631@8", + "8_7427122_53391283@8", + "8_7442860_53419836@8", + "8_764175_822827@8", + "8_7437059_53409543@8", + "8_196761_109719@8", + "8_390629_432333@8", + "8_355090_368190@8", + "8_7423600_53383470@8", + "8_386747_425264@8" ] } } @@ -30474,7 +35865,7 @@ } ], "data": { - "uuid": "python-5-460", + "uuid": "python-5-467", "seg": [ [ [ @@ -30482,7 +35873,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.315, + "max": 0.31506493506493505 + }, "related_data": {} } } @@ -30501,7 +35895,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31506493506493505, + "max": 0.31507215007215006 + }, "related_data": {} } } @@ -30517,11 +35914,15 @@ ], [ "视图", - "函数" + "函数", + "视图函数" ] ] ], - "level": "1", + "level": { + "min": 0.31507215007215006, + "max": 0.31507936507936507 + }, "related_data": {} } } @@ -30535,7 +35936,10 @@ [] ] ], - "level": "1", + "level": { + "min": 0.31507936507936507, + "max": 0.3150865800865801 + }, "related_data": {} } } @@ -30553,7 +35957,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3150865800865801, + "max": 0.3150937950937951 + }, "related_data": {} } } @@ -30566,11 +35973,15 @@ [ [ "动态", - "路由" + "路由", + "动态路由" ] ] ], - "level": "1", + "level": { + "min": 0.3150937950937951, + "max": 0.3151010101010101 + }, "related_data": {} } } @@ -30586,7 +35997,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3151010101010101, + "max": 0.3151082251082251 + }, "related_data": {} } } @@ -30599,11 +36013,15 @@ [ [ "命令行", - "选项" + "选项", + "命令行选项" ] ] ], - "level": "1", + "level": { + "min": 0.3151082251082251, + "max": 0.3151154401154401 + }, "related_data": {} } } @@ -30623,7 +36041,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3151154401154401, + "max": 0.3151172438672439 + }, "related_data": {} } } @@ -30639,7 +36060,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3151172438672439, + "max": 0.31511904761904763 + }, "related_data": {} } } @@ -30659,20 +36083,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31511904761904763, + "max": 0.3151196488696489 + }, "related_data": { "qa": { "data_id": [ - "8_7444759_53423281", - "8_762208_820302", - "8_643866_444190", - "8_716549_711207", - "8_261104_272356", - "8_1097614_1311315", - "8_7421155_53379628", - "8_728244_739122", - "8_730504_745777", - "8_7436907_53409176" + "8_7444759_53423281@8", + "8_762208_820302@8", + "8_643866_444190@8", + "8_716549_711207@8", + "8_261104_272356@8", + "8_1097614_1311315@8", + "8_7421155_53379628@8", + "8_728244_739122@8", + "8_730504_745777@8", + "8_7436907_53409176@8" ] } } @@ -30680,9 +36107,30 @@ } }, { - "由字符串调用对象": { + "有效创建大量对象": { "data": { "uuid": "python-8-1", + "seg": [ + [ + [ + "创建", + "对象", + "大量对象" + ] + ] + ], + "level": { + "min": 0.3151196488696489, + "max": 0.31512025012025013 + }, + "related_data": {} + } + } + }, + { + "由字符串调用对象": { + "data": { + "uuid": "python-8-2", "seg": [ [ [ @@ -30692,7 +36140,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31512025012025013, + "max": 0.3151208513708514 + }, "related_data": {} } } @@ -30707,7 +36158,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31511904761904763, + "max": 0.3151208513708514 + }, "related_data": {} } } @@ -30723,7 +36177,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3151208513708514, + "max": 0.31512265512265514 + }, "related_data": {} } } @@ -30740,7 +36197,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3151154401154401, + "max": 0.31512265512265514 + }, "related_data": {} } } @@ -30757,22 +36217,29 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31512265512265514, + "max": 0.31512987012987015 + }, "related_data": {} } } } ], "data": { - "uuid": "python-5-461", + "uuid": "python-5-468", "seg": [ [ [ - "结构" + "结构", + "基本结构" ] ] ], - "level": "1", + "level": { + "min": 0.31506493506493505, + "max": 0.31512987012987015 + }, "related_data": {} } } @@ -30795,11 +36262,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31512987012987015, + "max": 0.31513347763347765 + }, "related_data": { "qa": { "data_id": [ - "8_7438391_53411733" + "8_7438391_53411733@8" ] } } @@ -30812,7 +36282,7 @@ { "匿名函数捕获变量值": { "data": { - "uuid": "python-8-2", + "uuid": "python-8-3", "seg": [ [ [ @@ -30823,7 +36293,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31513347763347765, + "max": 0.3151352813852814 + }, "related_data": {} } } @@ -30831,7 +36304,7 @@ { "访问闭包中定义的变量": { "data": { - "uuid": "python-8-3", + "uuid": "python-8-4", "seg": [ [ [ @@ -30843,18 +36316,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3151352813852814, + "max": 0.31513708513708516 + }, "related_data": { "qa": { "data_id": [ - "8_1069819_1271011", - "8_1073935_1276621", - "8_7156514_51352698", - "8_1054260_1251550", - "8_7431624_53400131", - "8_7416127_53370030", - "8_1071691_1273967", - "8_753434_807935" + "8_1069819_1271011@8", + "8_1073935_1276621@8", + "8_7156514_51352698@8", + "8_1054260_1251550@8", + "8_7431624_53400131@8", + "8_753434_807935@8" ] } } @@ -30871,15 +36345,11 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "8_929579_1064422", - "8_6240932_43549673" - ] - } - } + "level": { + "min": 0.31513347763347765, + "max": 0.31513708513708516 + }, + "related_data": {} } } }, @@ -30894,7 +36364,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31513708513708516, + "max": 0.31514069264069267 + }, "related_data": {} } } @@ -30907,11 +36380,15 @@ [ "jinja2", "模板", - "引擎" + "引擎", + "模板引擎" ] ] ], - "level": "1", + "level": { + "min": 0.31512987012987015, + "max": 0.31514069264069267 + }, "related_data": {} } } @@ -30929,7 +36406,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31514069264069267, + "max": 0.3151515151515152 + }, "related_data": {} } } @@ -30942,11 +36422,15 @@ [ [ "自定义", - "页面" + "页面", + "错误页面" ] ] ], - "level": "1", + "level": { + "min": 0.3151515151515152, + "max": 0.3151623376623377 + }, "related_data": {} } } @@ -30962,12 +36446,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3151623376623377, + "max": 0.31517316017316016 + }, "related_data": { "qa": { "data_id": [ - "8_703686_594233", - "8_1713444_7643137" + "8_703686_594233@8", + "8_1713444_7643137@8" ] } } @@ -30982,11 +36469,15 @@ [ [ "静态", - "文件" + "文件", + "静态文件" ] ] ], - "level": "1", + "level": { + "min": 0.31517316017316016, + "max": 0.3151839826839827 + }, "related_data": {} } } @@ -31008,14 +36499,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3151839826839827, + "max": 0.3151948051948052 + }, "related_data": {} } } } ], "data": { - "uuid": "python-5-462", + "uuid": "python-5-469", "seg": [ [ [ @@ -31023,7 +36517,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31512987012987015, + "max": 0.3151948051948052 + }, "related_data": {} } } @@ -31042,11 +36539,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3151948051948052, + "max": 0.3152056277056277 + }, "related_data": { "qa": { "data_id": [ - "8_739252_773040" + "8_739252_773040@8" ] } } @@ -31061,11 +36561,15 @@ [ [ "表单", - "类" + "类", + "表单类" ] ] ], - "level": "2", + "level": { + "min": 0.3152056277056277, + "max": 0.31521645021645023 + }, "related_data": {} } } @@ -31084,7 +36588,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.31521645021645023, + "max": 0.3152272727272727 + }, "related_data": {} } } @@ -31098,11 +36605,15 @@ [ "视图", "函数", - "表单" + "表单", + "视图函数" ] ] ], - "level": "2", + "level": { + "min": 0.3152272727272727, + "max": 0.3152380952380952 + }, "related_data": {} } } @@ -31122,11 +36633,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3152380952380952, + "max": 0.3152489177489177 + }, "related_data": { "qa": { "data_id": [ - "8_1051891_1249253" + "8_1051891_1249253@8" ] } } @@ -31145,14 +36659,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3152489177489177, + "max": 0.31525974025974024 + }, "related_data": {} } } } ], "data": { - "uuid": "python-5-463", + "uuid": "python-5-470", "seg": [ [ [ @@ -31161,7 +36678,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3151948051948052, + "max": 0.31525974025974024 + }, "related_data": {} } } @@ -31181,15 +36701,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31525974025974024, + "max": 0.3152656434474616 + }, "related_data": { "qa": { "data_id": [ - "8_7417109_53371855", - "8_695156_577076", - "8_752908_807173", - "8_716386_709151", - "8_757299_812999" + "8_7417109_53371855@8", + "8_695156_577076@8", + "8_752908_807173@8", + "8_716386_709151@8", + "8_757299_812999@8" ] } } @@ -31208,7 +36731,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3152656434474616, + "max": 0.315271546635183 + }, "related_data": {} } } @@ -31225,7 +36751,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.315271546635183, + "max": 0.31527744982290434 + }, "related_data": {} } } @@ -31239,11 +36768,15 @@ [ "python", "数据库", - "框架" + "框架", + "数据库框架" ] ] ], - "level": "1", + "level": { + "min": 0.31527744982290434, + "max": 0.3152833530106257 + }, "related_data": {} } } @@ -31262,11 +36795,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3152833530106257, + "max": 0.3152892561983471 + }, "related_data": { "qa": { "data_id": [ - "8_754917_810330" + "8_754917_810330@8" ] } } @@ -31281,11 +36817,15 @@ [ [ "定义", - "模型" + "模型", + "定义模型" ] ] ], - "level": "1", + "level": { + "min": 0.3152892561983471, + "max": 0.31529515938606845 + }, "related_data": {} } } @@ -31301,12 +36841,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31529515938606845, + "max": 0.3153010625737898 + }, "related_data": { "qa": { "data_id": [ - "8_364424_386032", - "8_7442754_53419710" + "8_364424_386032@8", + "8_7442754_53419710@8" ] } } @@ -31328,11 +36871,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3153010625737898, + "max": 0.3153022432113341 + }, "related_data": { "qa": { "data_id": [ - "8_7439428_53414033" + "8_7439428_53414033@8" ] } } @@ -31350,11 +36896,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3153022432113341, + "max": 0.3153034238488784 + }, "related_data": { "qa": { "data_id": [ - "8_7427643_53392268" + "8_7427643_53392268@8" ] } } @@ -31372,17 +36921,20 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3153034238488784, + "max": 0.3153046044864226 + }, "related_data": { "qa": { "data_id": [ - "8_7440964_53416676", - "8_7441644_53417884", - "8_7455081_53437878", - "8_7409818_53360277", - "8_1063698_1261807", - "8_7460375_53445444", - "8_7451749_53433253" + "8_7440964_53416676@8", + "8_7441644_53417884@8", + "8_7455081_53437878@8", + "8_7409818_53360277@8", + "8_1063698_1261807@8", + "8_7460375_53445444@8", + "8_7451749_53433253@8" ] } } @@ -31400,7 +36952,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3153046044864226, + "max": 0.3153057851239669 + }, "related_data": {} } } @@ -31416,13 +36971,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3153057851239669, + "max": 0.3153069657615112 + }, "related_data": { "qa": { "data_id": [ - "8_762056_820181", - "8_730680_746320", - "8_1077441_1281847" + "8_762056_820181@8", + "8_730680_746320@8", + "8_1077441_1281847@8" ] } } @@ -31440,11 +36998,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3153010625737898, + "max": 0.3153069657615112 + }, "related_data": { "qa": { "data_id": [ - "8_691553_564711" + "8_691553_564711@8" ] } } @@ -31461,15 +37022,19 @@ "视图", "函数", "操作", - "数据库" + "数据库", + "视图函数" ] ] ], - "level": "1", + "level": { + "min": 0.3153069657615112, + "max": 0.31531286894923255 + }, "related_data": { "qa": { "data_id": [ - "8_1070486_1271996" + "8_1070486_1271996@8" ] } } @@ -31489,7 +37054,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31531286894923255, + "max": 0.3153187721369539 + }, "related_data": {} } } @@ -31510,7 +37078,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3153187721369539, + "max": 0.31532024793388425 + }, "related_data": {} } } @@ -31528,7 +37099,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31532024793388425, + "max": 0.3153217237308146 + }, "related_data": {} } } @@ -31541,24 +37115,28 @@ [ [ "更新", - "数据库" + "数据库", + "更新数据库" ] ] ], - "level": "1", + "level": { + "min": 0.3153217237308146, + "max": 0.31532319952774496 + }, "related_data": { "qa": { "data_id": [ - "8_704602_598045", - "8_7451437_53432670", - "8_668340_488584", - "8_7464919_53451699", - "8_768617_829657", - "8_675714_511663", - "8_7410195_53360793", - "8_7434841_53405303", - "8_691951_565647", - "8_739249_773035" + "8_704602_598045@8", + "8_7451437_53432670@8", + "8_668340_488584@8", + "8_7464919_53451699@8", + "8_768617_829657@8", + "8_675714_511663@8", + "8_7410195_53360793@8", + "8_7434841_53405303@8", + "8_691951_565647@8", + "8_739249_773035@8" ] } } @@ -31577,7 +37155,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31532319952774496, + "max": 0.3153246753246753 + }, "related_data": {} } } @@ -31595,11 +37176,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3153187721369539, + "max": 0.3153246753246753 + }, "related_data": { "qa": { "data_id": [ - "8_7408099_53358372" + "8_7408099_53358372@8" ] } } @@ -31608,7 +37192,7 @@ } ], "data": { - "uuid": "python-5-464", + "uuid": "python-5-471", "seg": [ [ [ @@ -31616,7 +37200,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31525974025974024, + "max": 0.3153246753246753 + }, "related_data": {} } } @@ -31639,7 +37226,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3153246753246753, + "max": 0.3153296703296703 + }, "related_data": {} } } @@ -31656,7 +37246,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3153296703296703, + "max": 0.3153346653346653 + }, "related_data": {} } } @@ -31675,7 +37268,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3153346653346653, + "max": 0.3153396603396603 + }, "related_data": {} } } @@ -31694,7 +37290,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3153396603396603, + "max": 0.31534465534465533 + }, "related_data": {} } } @@ -31712,7 +37311,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31534465534465533, + "max": 0.31534965034965035 + }, "related_data": {} } } @@ -31729,7 +37331,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31534965034965035, + "max": 0.31535464535464536 + }, "related_data": {} } } @@ -31746,7 +37351,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31535464535464536, + "max": 0.3153596403596403 + }, "related_data": {} } } @@ -31765,11 +37373,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3153596403596403, + "max": 0.3153646353646353 + }, "related_data": { "qa": { "data_id": [ - "8_990271_1157295" + "8_990271_1157295@8" ] } } @@ -31789,7 +37400,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3153646353646353, + "max": 0.31536963036963034 + }, "related_data": {} } } @@ -31808,7 +37422,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31536963036963034, + "max": 0.31537462537462535 + }, "related_data": {} } } @@ -31829,7 +37446,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31537462537462535, + "max": 0.31537962037962036 + }, "related_data": {} } } @@ -31847,7 +37467,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31537962037962036, + "max": 0.3153846153846154 + }, "related_data": {} } } @@ -31866,14 +37489,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3153846153846154, + "max": 0.3153896103896104 + }, "related_data": {} } } } ], "data": { - "uuid": "python-5-465", + "uuid": "python-5-472", "seg": [ [ [ @@ -31881,7 +37507,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3153246753246753, + "max": 0.3153896103896104 + }, "related_data": {} } } @@ -31901,7 +37530,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3153896103896104, + "max": 0.31539888682745826 + }, "related_data": {} } } @@ -31917,11 +37549,15 @@ [ [ "工厂", - "函数" + "函数", + "工厂函数" ] ] ], - "level": "1", + "level": { + "min": 0.31539888682745826, + "max": 0.3154035250463822 + }, "related_data": {} } } @@ -31938,11 +37574,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3154035250463822, + "max": 0.31540816326530613 + }, "related_data": { "qa": { "data_id": [ - "8_7440574_53415903" + "8_7440574_53415903@8" ] } } @@ -31959,7 +37598,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31539888682745826, + "max": 0.31540816326530613 + }, "related_data": {} } } @@ -31975,14 +37617,11 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "8_1068539_1269399" - ] - } - } + "level": { + "min": 0.31540816326530613, + "max": 0.315417439703154 + }, + "related_data": {} } } }, @@ -31998,11 +37637,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.315417439703154, + "max": 0.3154267161410018 + }, "related_data": { "qa": { "data_id": [ - "8_7411331_53362231" + "8_7411331_53362231@8" ] } } @@ -32024,12 +37666,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3154267161410018, + "max": 0.3154359925788497 + }, "related_data": { "qa": { "data_id": [ - "8_735152_760194", - "8_735196_760295" + "8_735152_760194@8", + "8_735196_760295@8" ] } } @@ -32046,7 +37691,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3154267161410018, + "max": 0.3154359925788497 + }, "related_data": {} } } @@ -32063,7 +37711,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3154359925788497, + "max": 0.31544526901669756 + }, "related_data": {} } } @@ -32079,18 +37730,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31544526901669756, + "max": 0.31545454545454543 + }, "related_data": { "qa": { "data_id": [ - "8_1086136_1292942", - "8_716265_708908", - "8_7458112_53442587", - "8_774885_838887", - "8_919771_1056227", - "8_7461154_53446241", - "8_22_30", - "8_7428482_53394244" + "8_1086136_1292942@8", + "8_716265_708908@8" ] } } @@ -32099,7 +37747,7 @@ } ], "data": { - "uuid": "python-5-466", + "uuid": "python-5-473", "seg": [ [ [ @@ -32108,14 +37756,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3153896103896104, + "max": 0.31545454545454543 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-817", + "uuid": "python-4-825", "seg": [ [ [ @@ -32124,7 +37775,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.315, + "max": 0.31545454545454543 + }, "related_data": {} } } @@ -32132,7 +37786,7 @@ { "Flask安装配置": { "data": { - "uuid": "python-4-818", + "uuid": "python-4-826", "seg": [ [ [ @@ -32142,7 +37796,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31545454545454543, + "max": 0.3159090909090909 + }, "related_data": {} } } @@ -32150,7 +37807,7 @@ { "Flask实现HTTP请求与响应": { "data": { - "uuid": "python-4-819", + "uuid": "python-4-827", "seg": [ [ [ @@ -32162,7 +37819,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3159090909090909, + "max": 0.31636363636363635 + }, "related_data": {} } } @@ -32170,7 +37830,7 @@ { "Flask cookie与session": { "data": { - "uuid": "python-4-820", + "uuid": "python-4-828", "seg": [ [ [ @@ -32182,7 +37842,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31636363636363635, + "max": 0.31681818181818183 + }, "related_data": {} } } @@ -32190,7 +37853,7 @@ { "Flask模板": { "data": { - "uuid": "python-4-821", + "uuid": "python-4-829", "seg": [ [ [ @@ -32199,7 +37862,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31681818181818183, + "max": 0.31727272727272726 + }, "related_data": {} } } @@ -32207,7 +37873,7 @@ { "Flask提交表单": { "data": { - "uuid": "python-4-822", + "uuid": "python-4-830", "seg": [ [ [ @@ -32217,7 +37883,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31727272727272726, + "max": 0.31772727272727275 + }, "related_data": {} } } @@ -32225,7 +37894,7 @@ { "Flask数据库操作": { "data": { - "uuid": "python-4-823", + "uuid": "python-4-831", "seg": [ [ [ @@ -32235,7 +37904,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31772727272727275, + "max": 0.3181818181818182 + }, "related_data": {} } } @@ -32243,7 +37915,7 @@ { "Bootstrap-Flask": { "data": { - "uuid": "python-4-824", + "uuid": "python-4-832", "seg": [ [ [ @@ -32252,7 +37924,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3181818181818182, + "max": 0.31863636363636366 + }, "related_data": {} } } @@ -32260,7 +37935,7 @@ { "Flask开发REST Web服务": { "data": { - "uuid": "python-4-825", + "uuid": "python-4-833", "seg": [ [ [ @@ -32272,7 +37947,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.31863636363636366, + "max": 0.3190909090909091 + }, "related_data": {} } } @@ -32280,17 +37958,21 @@ { "部署日志与安全": { "data": { - "uuid": "python-4-826", + "uuid": "python-4-834", "seg": [ [ [ "部署", - "日志" + "日志", + "部署日志" ], [] ] ], - "level": "1", + "level": { + "min": 0.3190909090909091, + "max": 0.3195454545454546 + }, "related_data": {} } } @@ -32298,7 +37980,7 @@ { "Flask开发案例": { "data": { - "uuid": "python-4-827", + "uuid": "python-4-835", "seg": [ [ [ @@ -32308,7 +37990,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3195454545454546, + "max": 0.32 + }, "related_data": {} } } @@ -32323,7 +38008,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.315, + "max": 0.32 + }, "related_data": {} } } @@ -32334,7 +38022,7 @@ { "Echarts": { "data": { - "uuid": "python-4-828", + "uuid": "python-4-836", "seg": [ [ [ @@ -32342,7 +38030,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.32, + "max": 0.32499999999999996 + }, "related_data": {} } } @@ -32354,15 +38045,19 @@ [ [ "网站", - "可视化" + "可视化", + "网站可视化" ] ] ], - "level": "1", + "level": { + "min": 0.32, + "max": 0.32499999999999996 + }, "related_data": { "qa": { "data_id": [ - "8_7443233_53420572" + "8_7443233_53420572@8" ] } } @@ -32382,7 +38077,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.32499999999999996, + "max": 0.32999999999999996 + }, "related_data": {} } } @@ -32396,18 +38094,22 @@ { "统一资源定位符": { "data": { - "uuid": "python-5-467", + "uuid": "python-5-474", "seg": [ [ [ "统一", "资源", "定位", - "符" + "符", + "资源定位" ] ] ], - "level": "2", + "level": { + "min": 0.32999999999999996, + "max": 0.3303333333333333 + }, "related_data": {} } } @@ -32415,7 +38117,7 @@ { "urlparse模块": { "data": { - "uuid": "python-5-468", + "uuid": "python-5-475", "seg": [ [ [ @@ -32424,7 +38126,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3303333333333333, + "max": 0.3306666666666666 + }, "related_data": {} } } @@ -32432,7 +38137,7 @@ { "urllib模块/包": { "data": { - "uuid": "python-5-469", + "uuid": "python-5-476", "seg": [ [ [ @@ -32442,7 +38147,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3306666666666666, + "max": 0.33099999999999996 + }, "related_data": {} } } @@ -32450,7 +38158,7 @@ { "使用urllib2 HTTP验证的示例": { "data": { - "uuid": "python-5-470", + "uuid": "python-5-477", "seg": [ [ [ @@ -32461,7 +38169,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.33099999999999996, + "max": 0.33133333333333326 + }, "related_data": {} } } @@ -32469,7 +38180,7 @@ { "将HTTP验证示例移植到Python 3中": { "data": { - "uuid": "python-5-471", + "uuid": "python-5-478", "seg": [ [ [ @@ -32481,25 +38192,32 @@ ] ] ], - "level": "2", + "level": { + "min": 0.33133333333333326, + "max": 0.3316666666666666 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-829", + "uuid": "python-4-837", "seg": [ [ [ "python", "web", "客户端", - "工具" + "工具", + "客户端工具" ] ] ], - "level": "2", + "level": { + "min": 0.32999999999999996, + "max": 0.3316666666666666 + }, "related_data": {} } } @@ -32510,7 +38228,7 @@ { "一个简单的Web爬虫/蜘蛛/机器人": { "data": { - "uuid": "python-5-472", + "uuid": "python-5-479", "seg": [ [ [ @@ -32521,7 +38239,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3316666666666666, + "max": 0.3322222222222222 + }, "related_data": {} } } @@ -32529,7 +38250,7 @@ { "解析Web页面": { "data": { - "uuid": "python-5-473", + "uuid": "python-5-480", "seg": [ [ [ @@ -32539,7 +38260,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3322222222222222, + "max": 0.33277777777777773 + }, "related_data": {} } } @@ -32547,7 +38271,7 @@ { "可编程的Web浏览": { "data": { - "uuid": "python-5-474", + "uuid": "python-5-481", "seg": [ [ [ @@ -32557,16 +38281,19 @@ ] ] ], - "level": "2", + "level": { + "min": 0.33277777777777773, + "max": 0.3333333333333333 + }, "related_data": { "qa": { "data_id": [ - "8_7403635_53352182", - "8_4645266_29327603", - "8_754240_809149", - "8_188816_86492", - "8_195519_105415", - "8_7445692_53425531" + "8_7403635_53352182@8", + "8_4645266_29327603@8", + "8_754240_809149@8", + "8_188816_86492@8", + "8_195519_105415@8", + "8_7445692_53425531@8" ] } } @@ -32575,7 +38302,7 @@ } ], "data": { - "uuid": "python-4-830", + "uuid": "python-4-838", "seg": [ [ [ @@ -32584,7 +38311,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3316666666666666, + "max": 0.3333333333333333 + }, "related_data": {} } } @@ -32592,7 +38322,7 @@ { "Web(HTTP)服务器": { "data": { - "uuid": "python-4-831", + "uuid": "python-4-839", "seg": [ [ [ @@ -32602,7 +38332,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3333333333333333, + "max": 0.33499999999999996 + }, "related_data": {} } } @@ -32621,7 +38354,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.32999999999999996, + "max": 0.33499999999999996 + }, "related_data": {} } } @@ -32635,7 +38371,7 @@ { "CGI简介": { "data": { - "uuid": "python-5-475", + "uuid": "python-5-482", "seg": [ [ [ @@ -32644,7 +38380,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.33499999999999996, + "max": 0.33520833333333333 + }, "related_data": {} } } @@ -32652,7 +38391,7 @@ { "CGI应用程序": { "data": { - "uuid": "python-5-476", + "uuid": "python-5-483", "seg": [ [ [ @@ -32661,21 +38400,18 @@ ] ] ], - "level": "2", - "related_data": { - "qa": { - "data_id": [ - "8_1051667_1248934" - ] - } - } + "level": { + "min": 0.33520833333333333, + "max": 0.33541666666666664 + }, + "related_data": {} } } }, { "cgi模块": { "data": { - "uuid": "python-5-477", + "uuid": "python-5-484", "seg": [ [ [ @@ -32684,7 +38420,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.33541666666666664, + "max": 0.33562499999999995 + }, "related_data": {} } } @@ -32692,7 +38431,7 @@ { "cgitb模块": { "data": { - "uuid": "python-5-478", + "uuid": "python-5-485", "seg": [ [ [ @@ -32701,25 +38440,32 @@ ] ] ], - "level": "2", + "level": { + "min": 0.33562499999999995, + "max": 0.3358333333333333 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-832", + "uuid": "python-4-840", "seg": [ [ [ "web", "服务器", "客户端", - "数据" + "数据", + "客户端数据" ] ] ], - "level": "2", + "level": { + "min": 0.33499999999999996, + "max": 0.3358333333333333 + }, "related_data": {} } } @@ -32730,7 +38476,7 @@ { "构建Web服务器": { "data": { - "uuid": "python-5-479", + "uuid": "python-5-486", "seg": [ [ [ @@ -32740,7 +38486,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3358333333333333, + "max": 0.33599999999999997 + }, "related_data": {} } } @@ -32748,7 +38497,7 @@ { "建立表单页": { "data": { - "uuid": "python-5-480", + "uuid": "python-5-487", "seg": [ [ [ @@ -32757,7 +38506,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.33599999999999997, + "max": 0.3361666666666666 + }, "related_data": {} } } @@ -32765,21 +38517,25 @@ { "生成结果页面": { "data": { - "uuid": "python-5-481", + "uuid": "python-5-488", "seg": [ [ [ "生成", - "页面" + "页面", + "结果页面" ] ] ], - "level": "1", + "level": { + "min": 0.3361666666666666, + "max": 0.3363333333333333 + }, "related_data": { "qa": { "data_id": [ - "8_731376_748650", - "8_7411470_53362927" + "8_731376_748650@8", + "8_7411470_53362927@8" ] } } @@ -32789,7 +38545,7 @@ { "生成表单和结果页面": { "data": { - "uuid": "python-5-482", + "uuid": "python-5-489", "seg": [ [ [ @@ -32797,11 +38553,15 @@ "表单" ], [ - "页面" + "页面", + "结果页面" ] ] ], - "level": "2", + "level": { + "min": 0.3363333333333333, + "max": 0.33649999999999997 + }, "related_data": {} } } @@ -32809,7 +38569,7 @@ { "全面交互的Web站点": { "data": { - "uuid": "python-5-483", + "uuid": "python-5-490", "seg": [ [ [ @@ -32819,14 +38579,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.33649999999999997, + "max": 0.3366666666666666 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-833", + "uuid": "python-4-841", "seg": [ [ [ @@ -32836,7 +38599,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3358333333333333, + "max": 0.3366666666666666 + }, "related_data": {} } } @@ -32844,7 +38610,7 @@ { "在CGI中使用Unicode": { "data": { - "uuid": "python-4-834", + "uuid": "python-4-842", "seg": [ [ [ @@ -32853,7 +38619,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3366666666666666, + "max": 0.33749999999999997 + }, "related_data": {} } } @@ -32864,7 +38633,7 @@ { "mulitipart表单提交和文件上传": { "data": { - "uuid": "python-5-484", + "uuid": "python-5-491", "seg": [ [ [ @@ -32878,7 +38647,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.33749999999999997, + "max": 0.33791666666666664 + }, "related_data": {} } } @@ -32886,29 +38658,27 @@ { "多值字段": { "data": { - "uuid": "python-5-485", + "uuid": "python-5-492", "seg": [ [ [ "值", - "字段" + "字段", + "值字段" ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "8_7423529_53383414" - ] - } - } + "level": { + "min": 0.33791666666666664, + "max": 0.3383333333333333 + }, + "related_data": {} } } } ], "data": { - "uuid": "python-4-835", + "uuid": "python-4-843", "seg": [ [ [ @@ -32917,7 +38687,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.33749999999999997, + "max": 0.3383333333333333 + }, "related_data": {} } } @@ -32928,7 +38701,7 @@ { "动机(替代CGI)": { "data": { - "uuid": "python-5-486", + "uuid": "python-5-493", "seg": [ [ [ @@ -32937,7 +38710,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3383333333333333, + "max": 0.3384259259259259 + }, "related_data": {} } } @@ -32945,7 +38721,7 @@ { "服务器集成": { "data": { - "uuid": "python-5-487", + "uuid": "python-5-494", "seg": [ [ [ @@ -32954,7 +38730,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3384259259259259, + "max": 0.3385185185185185 + }, "related_data": {} } } @@ -32962,7 +38741,7 @@ { "外部进程": { "data": { - "uuid": "python-5-488", + "uuid": "python-5-495", "seg": [ [ [ @@ -32971,7 +38750,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3385185185185185, + "max": 0.3386111111111111 + }, "related_data": {} } } @@ -32979,7 +38761,7 @@ { "WSGI简介": { "data": { - "uuid": "python-5-489", + "uuid": "python-5-496", "seg": [ [ [ @@ -32988,7 +38770,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3386111111111111, + "max": 0.3387037037037037 + }, "related_data": {} } } @@ -32996,7 +38781,7 @@ { "WSGI服务器": { "data": { - "uuid": "python-5-490", + "uuid": "python-5-497", "seg": [ [ [ @@ -33005,7 +38790,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3387037037037037, + "max": 0.33879629629629626 + }, "related_data": {} } } @@ -33013,7 +38801,7 @@ { "参考服务器": { "data": { - "uuid": "python-5-491", + "uuid": "python-5-498", "seg": [ [ [ @@ -33022,7 +38810,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.33879629629629626, + "max": 0.33888888888888885 + }, "related_data": {} } } @@ -33030,7 +38821,7 @@ { "WSGI应用示例": { "data": { - "uuid": "python-5-492", + "uuid": "python-5-499", "seg": [ [ [ @@ -33039,7 +38830,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.33888888888888885, + "max": 0.33898148148148144 + }, "related_data": {} } } @@ -33047,7 +38841,7 @@ { "中间件及封装WSGI应用": { "data": { - "uuid": "python-5-493", + "uuid": "python-5-500", "seg": [ [ [ @@ -33059,7 +38853,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.33898148148148144, + "max": 0.33907407407407403 + }, "related_data": {} } } @@ -33067,7 +38864,7 @@ { "在Python 3中使用WSGI": { "data": { - "uuid": "python-5-494", + "uuid": "python-5-501", "seg": [ [ [ @@ -33076,14 +38873,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.33907407407407403, + "max": 0.3391666666666666 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-836", + "uuid": "python-4-844", "seg": [ [ [ @@ -33092,7 +38892,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3383333333333333, + "max": 0.3391666666666666 + }, "related_data": {} } } @@ -33100,18 +38903,22 @@ { "现实世界中的Web开发": { "data": { - "uuid": "python-4-837", + "uuid": "python-4-845", "seg": [ [ [ "现实", "世界", "web", - "开发" + "开发", + "现实世界" ] ] ], - "level": "1", + "level": { + "min": 0.3391666666666666, + "max": 0.33999999999999997 + }, "related_data": {} } } @@ -33135,7 +38942,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.33499999999999996, + "max": 0.33999999999999997 + }, "related_data": {} } } @@ -33149,7 +38959,7 @@ { "云计算服务的层次": { "data": { - "uuid": "python-5-495", + "uuid": "python-5-502", "seg": [ [ [ @@ -33159,20 +38969,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.33999999999999997, + "max": 0.34015624999999994 + }, "related_data": { "qa": { "data_id": [ - "8_1101343_1315888", - "8_361735_379904", - "8_7455299_53438152", - "8_7442242_53419050", - "8_704280_596274", - "8_871758_1003858", - "8_7414737_53367681", - "8_7460113_53445158", - "8_7441446_53417680", - "8_7457823_53442301" + "8_1101343_1315888@8", + "8_361735_379904@8", + "8_7455299_53438152@8", + "8_7442242_53419050@8", + "8_704280_596274@8", + "8_871758_1003858@8", + "8_7414737_53367681@8", + "8_7460113_53445158@8", + "8_7441446_53417680@8", + "8_7457823_53442301@8" ] } } @@ -33182,7 +38995,7 @@ { "App Engine": { "data": { - "uuid": "python-5-496", + "uuid": "python-5-503", "seg": [ [ [ @@ -33191,14 +39004,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.34015624999999994, + "max": 0.34031249999999996 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-838", + "uuid": "python-4-846", "seg": [ [ [ @@ -33207,7 +39023,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.33999999999999997, + "max": 0.34031249999999996 + }, "related_data": {} } } @@ -33215,7 +39034,7 @@ { "沙盒和App Engine SDK": { "data": { - "uuid": "python-4-839", + "uuid": "python-4-847", "seg": [ [ [ @@ -33228,7 +39047,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.34031249999999996, + "max": 0.34062499999999996 + }, "related_data": {} } } @@ -33236,7 +39058,7 @@ { "选择一个App Engine框架": { "data": { - "uuid": "python-4-840", + "uuid": "python-4-848", "seg": [ [ [ @@ -33247,7 +39069,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.34062499999999996, + "max": 0.34093749999999995 + }, "related_data": {} } } @@ -33258,7 +39083,7 @@ { "一般差异": { "data": { - "uuid": "python-5-497", + "uuid": "python-5-504", "seg": [ [ [ @@ -33266,7 +39091,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.34093749999999995, + "max": 0.34109375 + }, "related_data": {} } } @@ -33274,7 +39102,7 @@ { "代码中的差异": { "data": { - "uuid": "python-5-498", + "uuid": "python-5-505", "seg": [ [ [ @@ -33282,14 +39110,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.34109375, + "max": 0.34124999999999994 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-841", + "uuid": "python-4-849", "seg": [ [ [ @@ -33298,7 +39129,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.34093749999999995, + "max": 0.34124999999999994 + }, "related_data": {} } } @@ -33309,12 +39143,13 @@ { "快速发现改动:30秒内将纯文本转成HTML": { "data": { - "uuid": "python-5-499", + "uuid": "python-5-506", "seg": [ [ [ "快速", - "改动" + "改动", + "快速发现" ] ], [ @@ -33327,7 +39162,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.34124999999999994, + "max": 0.34131249999999996 + }, "related_data": {} } } @@ -33335,7 +39173,7 @@ { "添加表单": { "data": { - "uuid": "python-5-500", + "uuid": "python-5-507", "seg": [ [ [ @@ -33344,7 +39182,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.34131249999999996, + "max": 0.341375 + }, "related_data": {} } } @@ -33352,7 +39193,7 @@ { "添加Datastore服务": { "data": { - "uuid": "python-5-501", + "uuid": "python-5-508", "seg": [ [ [ @@ -33362,7 +39203,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.341375, + "max": 0.34143749999999995 + }, "related_data": {} } } @@ -33370,7 +39214,7 @@ { "迭代改进": { "data": { - "uuid": "python-5-502", + "uuid": "python-5-509", "seg": [ [ [ @@ -33379,7 +39223,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.34143749999999995, + "max": 0.34149999999999997 + }, "related_data": {} } } @@ -33387,7 +39234,7 @@ { "开发/SDK控制台": { "data": { - "uuid": "python-5-503", + "uuid": "python-5-510", "seg": [ [ [ @@ -33397,12 +39244,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.34149999999999997, + "max": 0.3415625 + }, "related_data": { "qa": { "data_id": [ - "8_1091092_1298367", - "8_773680_837775" + "8_1091092_1298367@8", + "8_773680_837775@8" ] } } @@ -33411,7 +39261,7 @@ } ], "data": { - "uuid": "python-4-842", + "uuid": "python-4-850", "seg": [ [ [ @@ -33422,7 +39272,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.34124999999999994, + "max": 0.3415625 + }, "related_data": {} } } @@ -33430,7 +39283,7 @@ { "添加Memcache服务": { "data": { - "uuid": "python-4-843", + "uuid": "python-4-851", "seg": [ [ [ @@ -33440,7 +39293,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3415625, + "max": 0.341875 + }, "related_data": {} } } @@ -33451,7 +39307,7 @@ { "Google账号验证": { "data": { - "uuid": "python-5-504", + "uuid": "python-5-511", "seg": [ [ [ @@ -33461,7 +39317,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.341875, + "max": 0.34203125 + }, "related_data": {} } } @@ -33469,7 +39328,7 @@ { "联合验证": { "data": { - "uuid": "python-5-505", + "uuid": "python-5-512", "seg": [ [ [ @@ -33478,14 +39337,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.34203125, + "max": 0.3421875 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-844", + "uuid": "python-4-852", "seg": [ [ [ @@ -33494,7 +39356,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.341875, + "max": 0.3421875 + }, "related_data": {} } } @@ -33502,7 +39367,7 @@ { "远程API shell": { "data": { - "uuid": "python-4-845", + "uuid": "python-4-853", "seg": [ [ [ @@ -33512,7 +39377,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3421875, + "max": 0.34249999999999997 + }, "related_data": {} } } @@ -33520,7 +39388,7 @@ { "问与答(Python实现)": { "data": { - "uuid": "python-4-846", + "uuid": "python-4-854", "seg": [ [ [ @@ -33529,7 +39397,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.34249999999999997, + "max": 0.34281249999999996 + }, "related_data": {} } } @@ -33537,7 +39408,7 @@ { "使用XMPP发送即时消息": { "data": { - "uuid": "python-4-847", + "uuid": "python-4-855", "seg": [ [ [ @@ -33547,7 +39418,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.34281249999999996, + "max": 0.34312499999999996 + }, "related_data": {} } } @@ -33555,7 +39429,7 @@ { "处理图片": { "data": { - "uuid": "python-4-848", + "uuid": "python-4-856", "seg": [ [ [ @@ -33563,20 +39437,22 @@ ] ] ], - "level": "1", + "level": { + "min": 0.34312499999999996, + "max": 0.34343749999999995 + }, "related_data": { "qa": { "data_id": [ - "8_7438990_53412450", - "8_7459349_53444221", - "8_7442696_53419721", - "8_7414390_53367057", - "8_374275_403137", - "8_752546_806642", - "8_7448299_53428436", - "8_7404178_53352993", - "8_7455037_53437803", - "8_7437984_53411246" + "8_7438990_53412450@8", + "8_7459349_53444221@8", + "8_7442696_53419721@8", + "8_7414390_53367057@8", + "8_374275_403137@8", + "8_752546_806642@8", + "8_7448299_53428436@8", + "8_7404178_53352993@8", + "8_7400316_53348162@8" ] } } @@ -33589,7 +39465,7 @@ { "配置app.yaml": { "data": { - "uuid": "python-5-506", + "uuid": "python-5-513", "seg": [ [ [ @@ -33599,11 +39475,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.34343749999999995, + "max": 0.343515625 + }, "related_data": { "qa": { "data_id": [ - "8_7423874_53384240" + "8_7423874_53384240@8" ] } } @@ -33613,7 +39492,7 @@ { "其他任务创建选项": { "data": { - "uuid": "python-5-507", + "uuid": "python-5-514", "seg": [ [ [ @@ -33622,7 +39501,31 @@ ] ] ], - "level": "1", + "level": { + "min": 0.343515625, + "max": 0.34359375 + }, + "related_data": {} + } + } + }, + { + "将发送电子邮件作为任务": { + "data": { + "uuid": "python-5-515", + "seg": [ + [ + [ + "发送", + "电子邮件", + "将发送" + ] + ] + ], + "level": { + "min": 0.34359375, + "max": 0.34367187499999996 + }, "related_data": {} } } @@ -33630,7 +39533,7 @@ { "deferred包": { "data": { - "uuid": "python-5-508", + "uuid": "python-5-516", "seg": [ [ [ @@ -33639,23 +39542,31 @@ ] ] ], - "level": "1", + "level": { + "min": 0.34367187499999996, + "max": 0.34375 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-849", + "uuid": "python-4-857", "seg": [ [ [ "队列", - "定期" + "定期", + "任务队列", + "非定期" ] ] ], - "level": "1", + "level": { + "min": 0.34343749999999995, + "max": 0.34375 + }, "related_data": {} } } @@ -33666,7 +39577,7 @@ { "在app.yaml中添加标准处理程序": { "data": { - "uuid": "python-5-509", + "uuid": "python-5-517", "seg": [ [ [ @@ -33674,11 +39585,15 @@ "yaml", "添加", "标准", - "处理程序" + "处理程序", + "标准处理程序" ] ] ], - "level": "1", + "level": { + "min": 0.34375, + "max": 0.3438541666666667 + }, "related_data": {} } } @@ -33686,7 +39601,7 @@ { "添加自定义Admin Console页面": { "data": { - "uuid": "python-5-510", + "uuid": "python-5-518", "seg": [ [ [ @@ -33698,7 +39613,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3438541666666667, + "max": 0.3439583333333333 + }, "related_data": {} } } @@ -33706,24 +39624,28 @@ { "作为内置界面启用界面": { "data": { - "uuid": "python-5-511", + "uuid": "python-5-519", "seg": [ [ [ "内置", "界面", - "启用" + "启用", + "内置界面" ] ] ], - "level": "2", + "level": { + "min": 0.3439583333333333, + "max": 0.3440625 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-850", + "uuid": "python-4-858", "seg": [ [ [ @@ -33732,7 +39654,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.34375, + "max": 0.3440625 + }, "related_data": {} } } @@ -33740,7 +39665,7 @@ { "URLfetch服务": { "data": { - "uuid": "python-4-851", + "uuid": "python-4-859", "seg": [ [ [ @@ -33749,7 +39674,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3440625, + "max": 0.344375 + }, "related_data": {} } } @@ -33760,17 +39688,22 @@ { "Cron服务(计划任务作业)": { "data": { - "uuid": "python-5-512", + "uuid": "python-5-520", "seg": [ [ [ "cron", "服务", - "计划" + "计划", + "计划任务", + "任务作业" ] ] ], - "level": "1", + "level": { + "min": 0.344375, + "max": 0.34447916666666667 + }, "related_data": {} } } @@ -33778,7 +39711,7 @@ { "预热请求": { "data": { - "uuid": "python-5-513", + "uuid": "python-5-521", "seg": [ [ [ @@ -33786,7 +39719,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.34447916666666667, + "max": 0.3445833333333333 + }, "related_data": {} } } @@ -33794,7 +39730,7 @@ { "DoS保护": { "data": { - "uuid": "python-5-514", + "uuid": "python-5-522", "seg": [ [ [ @@ -33803,14 +39739,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3445833333333333, + "max": 0.3446875 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-852", + "uuid": "python-4-860", "seg": [ [ [ @@ -33819,7 +39758,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.344375, + "max": 0.3446875 + }, "related_data": {} } } @@ -33827,7 +39769,7 @@ { "厂商锁定": { "data": { - "uuid": "python-4-853", + "uuid": "python-4-861", "seg": [ [ [ @@ -33836,7 +39778,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3446875, + "max": 0.345 + }, "related_data": {} } } @@ -33859,7 +39804,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.33999999999999997, + "max": 0.345 + }, "related_data": {} } } @@ -33870,7 +39818,7 @@ { "Yahoo!金融股票报价服务器": { "data": { - "uuid": "python-4-854", + "uuid": "python-4-862", "seg": [ [ [ @@ -33879,11 +39827,17 @@ "金融", "股票", "报价", - "服务器" + "服务器", + "金融股票", + "股票报价", + "报价服务器" ] ] ], - "level": "1", + "level": { + "min": 0.345, + "max": 0.3475 + }, "related_data": {} } } @@ -33894,16 +39848,20 @@ { "社交网络": { "data": { - "uuid": "python-5-515", + "uuid": "python-5-523", "seg": [ [ [ "社交", - "网络" + "网络", + "社交网络" ] ] ], - "level": "1", + "level": { + "min": 0.3475, + "max": 0.34833333333333333 + }, "related_data": {} } } @@ -33911,7 +39869,7 @@ { "稍微长一点的API组合应用示例": { "data": { - "uuid": "python-5-516", + "uuid": "python-5-524", "seg": [ [ [ @@ -33923,11 +39881,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.34833333333333333, + "max": 0.3491666666666666 + }, "related_data": { "qa": { "data_id": [ - "8_713334_704677" + "8_713334_704677@8" ] } } @@ -33937,7 +39898,7 @@ { "额外在线资源": { "data": { - "uuid": "python-5-517", + "uuid": "python-5-525", "seg": [ [ [ @@ -33946,14 +39907,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3491666666666666, + "max": 0.35 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-855", + "uuid": "python-4-863", "seg": [ [ [ @@ -33963,11 +39927,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3475, + "max": 0.35 + }, "related_data": { "qa": { "data_id": [ - "8_170090_46380" + "8_170090_46380@8" ] } } @@ -33985,7 +39952,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.345, + "max": 0.35 + }, "related_data": {} } } @@ -34001,7 +39971,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3, + "max": 0.35 + }, "related_data": {} } } @@ -34015,16 +39988,20 @@ { "什么是网络爬虫": { "data": { - "uuid": "python-4-856", + "uuid": "python-4-864", "seg": [ [ [ "网络", - "爬虫" + "爬虫", + "网络爬虫" ] ] ], - "level": "2", + "level": { + "min": 0.35, + "max": 0.35044642857142855 + }, "related_data": {} } } @@ -34032,7 +40009,7 @@ { "HTML与DOM树分析": { "data": { - "uuid": "python-4-857", + "uuid": "python-4-865", "seg": [ [ [ @@ -34045,7 +40022,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.35044642857142855, + "max": 0.3508928571428571 + }, "related_data": {} } } @@ -34053,17 +40033,22 @@ { "常用网络爬虫工具": { "data": { - "uuid": "python-4-858", + "uuid": "python-4-866", "seg": [ [ [ "网络", "爬虫", - "工具" + "工具", + "网络爬虫", + "爬虫工具" ] ] ], - "level": "2", + "level": { + "min": 0.3508928571428571, + "max": 0.3513392857142857 + }, "related_data": {} } } @@ -34071,7 +40056,7 @@ { "相关法律及注意事项": { "data": { - "uuid": "python-4-859", + "uuid": "python-4-867", "seg": [ [ [ @@ -34083,7 +40068,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3513392857142857, + "max": 0.35178571428571426 + }, "related_data": {} } } @@ -34095,11 +40083,15 @@ [ [ "基础", - "概念" + "概念", + "基础概念" ] ] ], - "level": "1", + "level": { + "min": 0.35, + "max": 0.35178571428571426 + }, "related_data": {} } } @@ -34109,107 +40101,8 @@ "children": [ { "处理异常": { - "children": [ - { - "捕获所有异常": { - "data": { - "uuid": "python-5-518", - "seg": [ - [ - [ - "捕获", - "异常" - ] - ] - ], - "level": "1", - "related_data": {} - } - } - }, - { - "自定义异常": { - "data": { - "uuid": "python-5-519", - "seg": [ - [ - [ - "自定义", - "异常" - ] - ] - ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "8_6386932_44841254" - ] - } - } - } - } - }, - { - "抛出新的异常": { - "data": { - "uuid": "python-5-520", - "seg": [ - [ - [ - "出新", - "异常" - ] - ] - ], - "level": "1", - "related_data": {} - } - } - }, - { - "异常重新抛出": { - "data": { - "uuid": "python-5-521", - "seg": [ - [ - [ - "异常", - "抛出" - ] - ] - ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "8_929826_1085958" - ] - } - } - } - } - }, - { - "警告信息": { - "data": { - "uuid": "python-5-522", - "seg": [ - [ - [ - "警告", - "信息" - ] - ] - ], - "level": "1", - "related_data": {} - } - } - } - ], "data": { - "uuid": "python-4-860", + "uuid": "python-4-868", "seg": [ [ [ @@ -34217,7 +40110,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.35178571428571426, + "max": 0.35238095238095235 + }, "related_data": {} } } @@ -34225,7 +40121,7 @@ { "解析链接": { "data": { - "uuid": "python-4-861", + "uuid": "python-4-869", "seg": [ [ [ @@ -34234,7 +40130,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.35238095238095235, + "max": 0.35297619047619044 + }, "related_data": {} } } @@ -34242,7 +40141,7 @@ { "分析Robots协议": { "data": { - "uuid": "python-4-862", + "uuid": "python-4-870", "seg": [ [ [ @@ -34252,7 +40151,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.35297619047619044, + "max": 0.35357142857142854 + }, "related_data": {} } } @@ -34267,14 +40169,11 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "8_653772_462863" - ] - } - } + "level": { + "min": 0.35178571428571426, + "max": 0.35357142857142854 + }, + "related_data": {} } } }, @@ -34284,7 +40183,7 @@ { "RE(Regular Expression )": { "data": { - "uuid": "python-4-863", + "uuid": "python-4-871", "seg": [ [ [ @@ -34294,20 +40193,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.35357142857142854, + "max": 0.35382653061224484 + }, "related_data": { "qa": { "data_id": [ - "8_668566_488981", - "8_672138_498832", - "8_7424928_53386111", - "8_753780_808485", - "8_1098397_1312897", - "8_1094744_1305243", - "8_7439878_53414719", - "8_701803_591846", - "8_761543_819024", - "8_7415914_53369686" + "8_7401679_53349426@8" ] } } @@ -34317,16 +40210,20 @@ { "基础语法": { "data": { - "uuid": "python-4-864", + "uuid": "python-4-872", "seg": [ [ [ "基础", - "语法" + "语法", + "基础语法" ] ] ], - "level": "1", + "level": { + "min": 0.35382653061224484, + "max": 0.3540816326530612 + }, "related_data": {} } } @@ -34334,7 +40231,7 @@ { "标签匹配常用规则": { "data": { - "uuid": "python-4-865", + "uuid": "python-4-873", "seg": [ [ [ @@ -34344,7 +40241,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3540816326530612, + "max": 0.3543367346938775 + }, "related_data": {} } } @@ -34352,7 +40252,7 @@ { "简介/动机": { "data": { - "uuid": "python-4-866", + "uuid": "python-4-874", "seg": [ [ [ @@ -34361,7 +40261,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3543367346938775, + "max": 0.35459183673469385 + }, "related_data": {} } } @@ -34372,7 +40275,7 @@ { "使用择一匹配符号匹配多个正则表达式模式": { "data": { - "uuid": "python-5-523", + "uuid": "python-5-526", "seg": [ [ [ @@ -34384,17 +40287,20 @@ ] ] ], - "level": "1", + "level": { + "min": 0.35459183673469385, + "max": 0.3546201814058957 + }, "related_data": { "qa": { "data_id": [ - "8_7405279_53354521", - "8_761083_818354", - "8_7435322_53405812", - "8_784911_859305", - "8_7435542_53406438", - "8_7406575_53356078", - "8_767572_827245" + "8_7405279_53354521@8", + "8_761083_818354@8", + "8_7435322_53405812@8", + "8_784911_859305@8", + "8_7435542_53406438@8", + "8_7406575_53356078@8", + "8_767572_827245@8" ] } } @@ -34404,7 +40310,7 @@ { "匹配任意单个字符": { "data": { - "uuid": "python-5-524", + "uuid": "python-5-527", "seg": [ [ [ @@ -34415,16 +40321,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3546201814058957, + "max": 0.35464852607709746 + }, "related_data": { "qa": { "data_id": [ - "8_190510_91081", - "8_1006707_1189937", - "8_366278_390476", - "8_7454693_53437382", - "8_1048886_1246358", - "8_701961_592060" + "8_190510_91081@8", + "8_1006707_1189937@8", + "8_366278_390476@8", + "8_7454693_53437382@8", + "8_1048886_1246358@8", + "8_701961_592060@8" ] } } @@ -34434,7 +40343,7 @@ { "从字符串起始或者结尾或者单词边界匹配": { "data": { - "uuid": "python-5-525", + "uuid": "python-5-528", "seg": [ [ [ @@ -34443,15 +40352,19 @@ "结尾", "单词", "边界", - "匹配" + "匹配", + "单词边界" ] ] ], - "level": "1", + "level": { + "min": 0.35464852607709746, + "max": 0.3546768707482993 + }, "related_data": { "qa": { "data_id": [ - "8_7434541_53404950" + "8_7434541_53404950@8" ] } } @@ -34461,7 +40374,7 @@ { "创建字符集": { "data": { - "uuid": "python-5-526", + "uuid": "python-5-529", "seg": [ [ [ @@ -34470,7 +40383,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3546768707482993, + "max": 0.3547052154195011 + }, "related_data": {} } } @@ -34478,7 +40394,7 @@ { "限定范围和否定": { "data": { - "uuid": "python-5-527", + "uuid": "python-5-530", "seg": [ [ [ @@ -34489,7 +40405,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3547052154195011, + "max": 0.3547335600907029 + }, "related_data": {} } } @@ -34497,7 +40416,7 @@ { "使用闭包操作符实现存在性和频数匹配": { "data": { - "uuid": "python-5-528", + "uuid": "python-5-531", "seg": [ [ [ @@ -34512,7 +40431,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3547335600907029, + "max": 0.3547619047619047 + }, "related_data": {} } } @@ -34520,7 +40442,7 @@ { "表示字符集的特殊字符": { "data": { - "uuid": "python-5-529", + "uuid": "python-5-532", "seg": [ [ [ @@ -34529,7 +40451,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3547619047619047, + "max": 0.35479024943310655 + }, "related_data": {} } } @@ -34537,7 +40462,7 @@ { "使用圆括号指定分组": { "data": { - "uuid": "python-5-530", + "uuid": "python-5-533", "seg": [ [ [ @@ -34547,7 +40472,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.35479024943310655, + "max": 0.3548185941043083 + }, "related_data": {} } } @@ -34555,7 +40483,7 @@ { "扩展表示法": { "data": { - "uuid": "python-5-531", + "uuid": "python-5-534", "seg": [ [ [ @@ -34564,14 +40492,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3548185941043083, + "max": 0.35484693877551016 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-867", + "uuid": "python-4-875", "seg": [ [ [ @@ -34582,7 +40513,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.35459183673469385, + "max": 0.35484693877551016 + }, "related_data": {} } } @@ -34590,7 +40524,7 @@ { "一些正则表达式示例": { "data": { - "uuid": "python-4-868", + "uuid": "python-4-876", "seg": [ [ [ @@ -34599,16 +40533,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.35484693877551016, + "max": 0.3551020408163265 + }, "related_data": { "qa": { "data_id": [ - "8_382962_418431", - "8_740439_777853", - "8_7410924_53361808", - "8_1095585_1307055", - "8_7448938_53429049", - "8_355657_373057" + "8_382962_418431@8", + "8_740439_777853@8", + "8_7410924_53361808@8", + "8_1095585_1307055@8", + "8_7448938_53429049@8", + "8_355657_373057@8" ] } } @@ -34618,7 +40555,7 @@ { "更长的正则表达式示例": { "data": { - "uuid": "python-4-869", + "uuid": "python-4-877", "seg": [ [ [ @@ -34628,7 +40565,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3551020408163265, + "max": 0.3553571428571428 + }, "related_data": {} } } @@ -34643,19 +40583,11 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "8_1100547_1315358", - "8_778104_844573", - "8_7415393_53368983", - "8_7423075_53382341", - "8_338270_335969", - "8_7427112_53391229" - ] - } - } + "level": { + "min": 0.35357142857142854, + "max": 0.3553571428571428 + }, + "related_data": {} } } }, @@ -34665,7 +40597,7 @@ { "Beautiful Soup简介": { "data": { - "uuid": "python-4-870", + "uuid": "python-4-878", "seg": [ [ [ @@ -34677,7 +40609,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3553571428571428, + "max": 0.3557142857142857 + }, "related_data": {} } } @@ -34685,7 +40620,7 @@ { "安装配置": { "data": { - "uuid": "python-4-871", + "uuid": "python-4-879", "seg": [ [ [ @@ -34694,7 +40629,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3557142857142857, + "max": 0.35607142857142854 + }, "related_data": {} } } @@ -34702,7 +40640,7 @@ { "Beautiful Soup对象": { "data": { - "uuid": "python-4-872", + "uuid": "python-4-880", "seg": [ [ [ @@ -34714,20 +40652,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.35607142857142854, + "max": 0.35642857142857143 + }, "related_data": { "qa": { "data_id": [ - "8_7463735_53449864", - "8_7443152_53420192", - "8_649999_458243", - "8_377191_407648", - "8_892173_1030643", - "8_807188_902604", - "8_211342_151179", - "8_747913_799558", - "8_727955_739773", - "8_7402070_53349691" + "8_7463735_53449864@8", + "8_7443152_53420192@8", + "8_649999_458243@8", + "8_377191_407648@8", + "8_892173_1030643@8", + "8_807188_902604@8", + "8_211342_151179@8", + "8_747913_799558@8", + "8_727955_739773@8", + "8_7402070_53349691@8" ] } } @@ -34737,20 +40678,24 @@ { "元素定位": { "data": { - "uuid": "python-4-873", + "uuid": "python-4-881", "seg": [ [ [ "元素", - "定位" + "定位", + "元素定位" ] ] ], - "level": "1", + "level": { + "min": 0.35642857142857143, + "max": 0.35678571428571426 + }, "related_data": { "qa": { "data_id": [ - "8_7451149_53432181" + "8_7451149_53432181@8" ] } } @@ -34760,7 +40705,7 @@ { "文档树遍历与搜索": { "data": { - "uuid": "python-4-874", + "uuid": "python-4-882", "seg": [ [ [ @@ -34773,7 +40718,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.35678571428571426, + "max": 0.35714285714285715 + }, "related_data": {} } } @@ -34791,7 +40739,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3553571428571428, + "max": 0.35714285714285715 + }, "related_data": {} } } @@ -34802,7 +40753,7 @@ { "安装配置": { "data": { - "uuid": "python-4-875", + "uuid": "python-4-883", "seg": [ [ [ @@ -34811,7 +40762,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.35714285714285715, + "max": 0.3574404761904762 + }, "related_data": {} } } @@ -34819,7 +40773,7 @@ { "lxml.etree": { "data": { - "uuid": "python-4-876", + "uuid": "python-4-884", "seg": [ [ [ @@ -34828,11 +40782,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3574404761904762, + "max": 0.35773809523809524 + }, "related_data": { "qa": { "data_id": [ - "8_754198_809252" + "8_754198_809252@8" ] } } @@ -34842,7 +40799,7 @@ { "XPath选择器": { "data": { - "uuid": "python-4-877", + "uuid": "python-4-885", "seg": [ [ [ @@ -34851,7 +40808,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.35773809523809524, + "max": 0.3580357142857143 + }, "related_data": {} } } @@ -34859,7 +40819,7 @@ { "find/findall": { "data": { - "uuid": "python-4-878", + "uuid": "python-4-886", "seg": [ [ [ @@ -34868,13 +40828,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3580357142857143, + "max": 0.35833333333333334 + }, "related_data": { "qa": { "data_id": [ - "8_208443_144450", - "8_7413252_53365136", - "8_1057987_1255194" + "8_208443_144450@8", + "8_7413252_53365136@8", + "8_1057987_1255194@8" ] } } @@ -34884,7 +40847,7 @@ { "CSS选择器": { "data": { - "uuid": "python-4-879", + "uuid": "python-4-887", "seg": [ [ [ @@ -34893,7 +40856,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.35833333333333334, + "max": 0.3586309523809524 + }, "related_data": {} } } @@ -34901,7 +40867,7 @@ { "解析HTML": { "data": { - "uuid": "python-4-880", + "uuid": "python-4-888", "seg": [ [ [ @@ -34910,7 +40876,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3586309523809524, + "max": 0.35892857142857143 + }, "related_data": {} } } @@ -34925,7 +40894,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.35714285714285715, + "max": 0.35892857142857143 + }, "related_data": {} } } @@ -34936,7 +40908,7 @@ { "安装配置": { "data": { - "uuid": "python-4-881", + "uuid": "python-4-889", "seg": [ [ [ @@ -34945,7 +40917,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.35892857142857143, + "max": 0.35909090909090907 + }, "related_data": {} } } @@ -34953,7 +40928,7 @@ { "发送请求与HTTP请求类型": { "data": { - "uuid": "python-4-882", + "uuid": "python-4-890", "seg": [ [ [ @@ -34965,7 +40940,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.35909090909090907, + "max": 0.35925324675324677 + }, "related_data": {} } } @@ -34973,7 +40951,7 @@ { "传递URL参数": { "data": { - "uuid": "python-4-883", + "uuid": "python-4-891", "seg": [ [ [ @@ -34983,12 +40961,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.35925324675324677, + "max": 0.3594155844155844 + }, "related_data": { "qa": { "data_id": [ - "8_774861_838822", - "8_1093257_1302452" + "8_774861_838822@8", + "8_1093257_1302452@8" ] } } @@ -34998,7 +40979,7 @@ { "响应内容": { "data": { - "uuid": "python-4-884", + "uuid": "python-4-892", "seg": [ [ [ @@ -35007,7 +40988,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3594155844155844, + "max": 0.35957792207792205 + }, "related_data": {} } } @@ -35015,7 +40999,7 @@ { "定制请求头": { "data": { - "uuid": "python-4-885", + "uuid": "python-4-893", "seg": [ [ [ @@ -35024,31 +41008,32 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "8_5609600_36999481" - ] - } - } + "level": { + "min": 0.35957792207792205, + "max": 0.35974025974025975 + }, + "related_data": {} } } }, { "响应状态码": { "data": { - "uuid": "python-4-886", + "uuid": "python-4-894", "seg": [ [ [ "响应", "状态", - "码" + "码", + "状态码" ] ] ], - "level": "1", + "level": { + "min": 0.35974025974025975, + "max": 0.3599025974025974 + }, "related_data": {} } } @@ -35056,7 +41041,7 @@ { "Cookie": { "data": { - "uuid": "python-4-887", + "uuid": "python-4-895", "seg": [ [ [ @@ -35064,14 +41049,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3599025974025974, + "max": 0.3600649350649351 + }, "related_data": { "qa": { "data_id": [ - "8_752483_806545", - "8_7415720_53369306", - "8_770642_832598", - "8_7396625_53342170" + "8_752483_806545@8", + "8_7415720_53369306@8", + "8_770642_832598@8", + "8_7396625_53342170@8" ] } } @@ -35081,7 +41069,7 @@ { "POST请求": { "data": { - "uuid": "python-4-888", + "uuid": "python-4-896", "seg": [ [ [ @@ -35089,20 +41077,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3600649350649351, + "max": 0.36022727272727273 + }, "related_data": { "qa": { "data_id": [ - "8_7423932_53384321", - "8_687711_551865", - "8_391843_434731", - "8_4647458_29331787", - "8_765257_824115", - "8_172553_50263", - "8_1587676_6273215", - "8_682674_537528", - "8_7422520_53381132", - "8_7444289_53422492" + "8_7423932_53384321@8", + "8_687711_551865@8", + "8_391843_434731@8", + "8_4647458_29331787@8", + "8_765257_824115@8", + "8_172553_50263@8", + "8_1587676_6273215@8", + "8_682674_537528@8", + "8_7422520_53381132@8", + "8_7444289_53422492@8" ] } } @@ -35112,7 +41103,7 @@ { "身份认证": { "data": { - "uuid": "python-4-889", + "uuid": "python-4-897", "seg": [ [ [ @@ -35121,7 +41112,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.36022727272727273, + "max": 0.36038961038961037 + }, "related_data": {} } } @@ -35129,15 +41123,19 @@ { "基本用法": { "data": { - "uuid": "python-4-890", + "uuid": "python-4-898", "seg": [ [ [ - "用法" + "用法", + "基本用法" ] ] ], - "level": "1", + "level": { + "min": 0.36038961038961037, + "max": 0.36055194805194807 + }, "related_data": {} } } @@ -35145,7 +41143,7 @@ { "高级用法": { "data": { - "uuid": "python-4-891", + "uuid": "python-4-899", "seg": [ [ [ @@ -35154,7 +41152,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.36055194805194807, + "max": 0.3607142857142857 + }, "related_data": {} } } @@ -35169,7 +41170,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.35892857142857143, + "max": 0.3607142857142857 + }, "related_data": {} } } @@ -35180,7 +41184,7 @@ { "Selenium简介": { "data": { - "uuid": "python-4-892", + "uuid": "python-4-900", "seg": [ [ [ @@ -35189,20 +41193,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3607142857142857, + "max": 0.3609375 + }, "related_data": { "qa": { "data_id": [ - "8_205499_136603", - "8_684996_544033", - "8_1061932_1259781", - "8_685636_546385", - "8_755595_811113", - "8_7416461_53370578", - "8_7398853_53345968", - "8_695019_576496", - "8_1050905_1248037", - "8_713146_704846" + "8_205499_136603@8", + "8_684996_544033@8", + "8_1061932_1259781@8", + "8_685636_546385@8", + "8_755595_811113@8", + "8_7416461_53370578@8", + "8_7398853_53345968@8", + "8_695019_576496@8", + "8_1050905_1248037@8", + "8_713146_704846@8" ] } } @@ -35212,7 +41219,7 @@ { "安装配置": { "data": { - "uuid": "python-4-893", + "uuid": "python-4-901", "seg": [ [ [ @@ -35221,7 +41228,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3609375, + "max": 0.3611607142857143 + }, "related_data": {} } } @@ -35229,7 +41239,7 @@ { "单元素定位(find_element_id/name/xpath)": { "data": { - "uuid": "python-4-894", + "uuid": "python-4-902", "seg": [ [ [ @@ -35240,19 +41250,30 @@ "element", "id", "name", - "xpath" + "xpath", + "单元素", + "元素定位" ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.3611607142857143, + "max": 0.36138392857142854 + }, + "related_data": { + "qa": { + "data_id": [ + "8_755569_811203@8" + ] + } + } } } }, { "多元素定位(find_elements_id/name/xpath)": { "data": { - "uuid": "python-4-895", + "uuid": "python-4-903", "seg": [ [ [ @@ -35262,12 +41283,26 @@ "elements", "id", "name", - "xpath" + "xpath", + "元素定位" ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.36138392857142854, + "max": 0.36160714285714285 + }, + "related_data": { + "qa": { + "data_id": [ + "8_1051556_1248915@8", + "8_1034280_1229508@8", + "8_1095308_1306531@8", + "8_1101987_1316432@8", + "8_814466_910105@8" + ] + } + } } } }, @@ -35277,7 +41312,7 @@ { "可管理属性创建": { "data": { - "uuid": "python-5-532", + "uuid": "python-5-535", "seg": [ [ [ @@ -35287,17 +41322,20 @@ ] ] ], - "level": "1", + "level": { + "min": 0.36160714285714285, + "max": 0.3616517857142857 + }, "related_data": { "qa": { "data_id": [ - "8_780083_849310", - "8_755033_810294", - "8_7443270_53420343", - "8_1061469_1259323", - "8_659631_473394", - "8_7458332_53442871", - "8_1058519_1255841" + "8_780083_849310@8", + "8_755033_810294@8", + "8_7443270_53420343@8", + "8_1061469_1259323@8", + "8_659631_473394@8", + "8_7458332_53442871@8", + "8_1058519_1255841@8" ] } } @@ -35307,7 +41345,7 @@ { "延迟计算属性": { "data": { - "uuid": "python-5-533", + "uuid": "python-5-536", "seg": [ [ [ @@ -35317,7 +41355,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3616517857142857, + "max": 0.3616964285714286 + }, "related_data": {} } } @@ -35325,7 +41366,7 @@ { "属性的代理访问": { "data": { - "uuid": "python-5-534", + "uuid": "python-5-537", "seg": [ [ [ @@ -35335,13 +41376,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3616964285714286, + "max": 0.3617410714285714 + }, "related_data": { "qa": { "data_id": [ - "8_7429847_53396777", - "8_7409419_53359857", - "8_1034072_1229420" + "8_7429847_53396777@8", + "8_7409419_53359857@8", + "8_1034072_1229420@8" ] } } @@ -35351,7 +41395,7 @@ { "创建用于计算的属性": { "data": { - "uuid": "python-5-535", + "uuid": "python-5-538", "seg": [ [ [ @@ -35362,11 +41406,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3617410714285714, + "max": 0.3617857142857143 + }, "related_data": { "qa": { "data_id": [ - "8_679279_525937" + "8_679279_525937@8" ] } } @@ -35376,7 +41423,7 @@ { "为属性添加安全保护机制": { "data": { - "uuid": "python-5-536", + "uuid": "python-5-539", "seg": [ [ [ @@ -35387,14 +41434,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3617857142857143, + "max": 0.36183035714285716 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-896", + "uuid": "python-4-904", "seg": [ [ [ @@ -35405,7 +41455,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.36160714285714285, + "max": 0.36183035714285716 + }, "related_data": {} } } @@ -35413,7 +41466,7 @@ { "键盘和鼠标操作": { "data": { - "uuid": "python-4-897", + "uuid": "python-4-905", "seg": [ [ [ @@ -35425,7 +41478,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.36183035714285716, + "max": 0.3620535714285714 + }, "related_data": {} } } @@ -35433,7 +41489,7 @@ { "WebDriver API": { "data": { - "uuid": "python-4-898", + "uuid": "python-4-906", "seg": [ [ [ @@ -35442,20 +41498,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3620535714285714, + "max": 0.3622767857142857 + }, "related_data": { "qa": { "data_id": [ - "8_7457773_53444167", - "8_365324_388330", - "8_729159_741885", - "8_2072943_15672082", - "8_932000_1067512", - "8_677365_533575", - "8_766260_825408", - "8_7427274_53391428", - "8_1095331_1306601", - "8_7406568_53358136" + "8_7457773_53444167@8", + "8_365324_388330@8", + "8_729159_741885@8", + "8_2072943_15672082@8", + "8_932000_1067512@8", + "8_677365_533575@8", + "8_766260_825408@8", + "8_7427274_53391428@8", + "8_1095331_1306601@8", + "8_7406568_53358136@8" ] } } @@ -35465,7 +41524,7 @@ { "表单交互": { "data": { - "uuid": "python-4-899", + "uuid": "python-4-907", "seg": [ [ [ @@ -35474,7 +41533,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3622767857142857, + "max": 0.3625 + }, "related_data": {} } } @@ -35489,12 +41551,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3607142857142857, + "max": 0.3625 + }, "related_data": { "qa": { "data_id": [ - "8_7439772_53414502", - "8_7444444_53423148" + "8_7439772_53414502@8", + "8_7444444_53423148@8" ] } } @@ -35507,7 +41572,7 @@ { "Scrapy简介": { "data": { - "uuid": "python-4-900", + "uuid": "python-4-908", "seg": [ [ [ @@ -35516,7 +41581,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3625, + "max": 0.3625892857142857 + }, "related_data": {} } } @@ -35524,7 +41592,7 @@ { "安装配置": { "data": { - "uuid": "python-4-901", + "uuid": "python-4-909", "seg": [ [ [ @@ -35533,7 +41601,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3625892857142857, + "max": 0.3626785714285714 + }, "related_data": {} } } @@ -35541,7 +41612,7 @@ { "Scrapy框架组成": { "data": { - "uuid": "python-4-902", + "uuid": "python-4-910", "seg": [ [ [ @@ -35550,15 +41621,18 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3626785714285714, + "max": 0.36276785714285714 + }, "related_data": { "qa": { "data_id": [ - "8_864146_1008920", - "8_1069899_1271082", - "8_7436291_53407876", - "8_1060422_1258109", - "8_246175_237399" + "8_864146_1008920@8", + "8_1069899_1271082@8", + "8_7436291_53407876@8", + "8_1060422_1258109@8", + "8_246175_237399@8" ] } } @@ -35568,7 +41642,7 @@ { "Item Pipeline": { "data": { - "uuid": "python-4-903", + "uuid": "python-4-911", "seg": [ [ [ @@ -35577,11 +41651,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.36276785714285714, + "max": 0.3628571428571428 + }, "related_data": { "qa": { "data_id": [ - "8_7451131_53432232" + "8_7451131_53432232@8" ] } } @@ -35591,7 +41668,7 @@ { "Downloader": { "data": { - "uuid": "python-4-904", + "uuid": "python-4-912", "seg": [ [ [ @@ -35599,7 +41676,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3628571428571428, + "max": 0.36294642857142856 + }, "related_data": {} } } @@ -35607,7 +41687,7 @@ { "Spiders": { "data": { - "uuid": "python-4-905", + "uuid": "python-4-913", "seg": [ [ [ @@ -35615,7 +41695,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.36294642857142856, + "max": 0.3630357142857143 + }, "related_data": {} } } @@ -35623,7 +41706,7 @@ { "Scheduler": { "data": { - "uuid": "python-4-906", + "uuid": "python-4-914", "seg": [ [ [ @@ -35631,7 +41714,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3630357142857143, + "max": 0.363125 + }, "related_data": {} } } @@ -35639,7 +41725,7 @@ { "Scrapy框架介绍": { "data": { - "uuid": "python-4-907", + "uuid": "python-4-915", "seg": [ [ [ @@ -35649,7 +41735,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.363125, + "max": 0.3632142857142857 + }, "related_data": {} } } @@ -35657,7 +41746,7 @@ { "Scrapy入门": { "data": { - "uuid": "python-4-908", + "uuid": "python-4-916", "seg": [ [ [ @@ -35666,20 +41755,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3632142857142857, + "max": 0.3633035714285714 + }, "related_data": { "qa": { "data_id": [ - "8_383654_419220", - "8_211544_151579", - "8_7418184_53374052", - "8_7434858_53405383", - "8_1096070_1308002", - "8_7434575_53405198", - "8_7398176_53344065", - "8_942820_1098375", - "8_765164_824280", - "8_761571_823600" + "8_383654_419220@8", + "8_211544_151579@8", + "8_7418184_53374052@8", + "8_7434858_53405383@8", + "8_1096070_1308002@8", + "8_7434575_53405198@8", + "8_7398176_53344065@8", + "8_942820_1098375@8", + "8_765164_824280@8", + "8_761571_823600@8" ] } } @@ -35689,7 +41781,7 @@ { "Selector的用法": { "data": { - "uuid": "python-4-909", + "uuid": "python-4-917", "seg": [ [ [ @@ -35698,11 +41790,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3633035714285714, + "max": 0.36339285714285713 + }, "related_data": { "qa": { "data_id": [ - "8_754765_809848" + "8_754765_809848@8" ] } } @@ -35712,7 +41807,7 @@ { "Spider的用法": { "data": { - "uuid": "python-4-910", + "uuid": "python-4-918", "seg": [ [ [ @@ -35721,7 +41816,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.36339285714285713, + "max": 0.36348214285714286 + }, "related_data": {} } } @@ -35729,7 +41827,7 @@ { "Downloader Middleware的用法": { "data": { - "uuid": "python-4-911", + "uuid": "python-4-919", "seg": [ [ [ @@ -35739,7 +41837,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.36348214285714286, + "max": 0.36357142857142855 + }, "related_data": {} } } @@ -35747,7 +41848,7 @@ { "Spider Middleware的用法": { "data": { - "uuid": "python-4-912", + "uuid": "python-4-920", "seg": [ [ [ @@ -35757,7 +41858,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.36357142857142855, + "max": 0.3636607142857143 + }, "related_data": {} } } @@ -35765,7 +41869,7 @@ { "Item Pipeline的用法": { "data": { - "uuid": "python-4-913", + "uuid": "python-4-921", "seg": [ [ [ @@ -35775,7 +41879,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3636607142857143, + "max": 0.36374999999999996 + }, "related_data": {} } } @@ -35783,7 +41890,7 @@ { "Scrapy对接Selenium": { "data": { - "uuid": "python-4-914", + "uuid": "python-4-922", "seg": [ [ [ @@ -35793,12 +41900,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.36374999999999996, + "max": 0.3638392857142857 + }, "related_data": { "qa": { "data_id": [ - "8_1093671_1303392", - "8_1093668_1303799" + "8_1093671_1303392@8", + "8_1093668_1303799@8" ] } } @@ -35808,7 +41918,7 @@ { "Scrapy对接Splash": { "data": { - "uuid": "python-4-915", + "uuid": "python-4-923", "seg": [ [ [ @@ -35818,7 +41928,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3638392857142857, + "max": 0.36392857142857143 + }, "related_data": {} } } @@ -35826,7 +41939,7 @@ { "Scrapy通用爬虫": { "data": { - "uuid": "python-4-916", + "uuid": "python-4-924", "seg": [ [ [ @@ -35836,16 +41949,19 @@ ] ] ], - "level": "2", + "level": { + "min": 0.36392857142857143, + "max": 0.3640178571428571 + }, "related_data": { "qa": { "data_id": [ - "8_757267_837865", - "8_724246_768617", - "8_7425797_53387797", - "8_1091167_1298646", - "8_1078656_1283150", - "8_1069889_1271069" + "8_757267_837865@8", + "8_724246_768617@8", + "8_7425797_53387797@8", + "8_1091167_1298646@8", + "8_1078656_1283150@8", + "8_1069889_1271069@8" ] } } @@ -35855,7 +41971,7 @@ { "Scrapyrt的使用": { "data": { - "uuid": "python-4-917", + "uuid": "python-4-925", "seg": [ [ [ @@ -35863,7 +41979,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3640178571428571, + "max": 0.36410714285714285 + }, "related_data": {} } } @@ -35871,7 +41990,7 @@ { "Scrapy对接Docker": { "data": { - "uuid": "python-4-918", + "uuid": "python-4-926", "seg": [ [ [ @@ -35881,7 +42000,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.36410714285714285, + "max": 0.36419642857142853 + }, "related_data": {} } } @@ -35889,7 +42011,7 @@ { "Scrapy爬取新浪微博": { "data": { - "uuid": "python-4-919", + "uuid": "python-4-927", "seg": [ [ [ @@ -35901,14 +42023,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.36419642857142853, + "max": 0.36428571428571427 + }, "related_data": { "qa": { "data_id": [ - "8_7448773_53428923", - "8_743866_789024", - "8_1021180_1213851", - "8_7456124_53439642" + "8_7448773_53428923@8", + "8_743866_789024@8", + "8_1021180_1213851@8", + "8_7456124_53439642@8" ] } } @@ -35926,7 +42051,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3625, + "max": 0.36428571428571427 + }, "related_data": {} } } @@ -35940,7 +42068,7 @@ { "TXT文本存储": { "data": { - "uuid": "python-5-537", + "uuid": "python-5-540", "seg": [ [ [ @@ -35950,20 +42078,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.36428571428571427, + "max": 0.3644345238095238 + }, "related_data": { "qa": { "data_id": [ - "8_1103628_1317996", - "8_380993_414331", - "8_234697_212125", - "8_768355_828452", - "8_697827_584246", - "8_235201_213566", - "8_763820_822374", - "8_7403541_53352081", - "8_7445215_53423774", - "8_235166_213464" + "8_1103628_1317996@8", + "8_380993_414331@8", + "8_959590_1107297@8", + "8_234697_212125@8", + "8_768355_828452@8", + "8_697827_584246@8", + "8_235201_213566@8", + "8_763820_822374@8", + "8_7403541_53352081@8", + "8_7445215_53423774@8" ] } } @@ -35973,7 +42104,7 @@ { "JSON文件存储": { "data": { - "uuid": "python-5-538", + "uuid": "python-5-541", "seg": [ [ [ @@ -35983,12 +42114,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3644345238095238, + "max": 0.3645833333333333 + }, "related_data": { "qa": { "data_id": [ - "8_7417450_53372686", - "8_750769_804067" + "8_7417450_53372686@8", + "8_750769_804067@8" ] } } @@ -35998,7 +42132,7 @@ { "CSV文件存储": { "data": { - "uuid": "python-5-539", + "uuid": "python-5-542", "seg": [ [ [ @@ -36008,14 +42142,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3645833333333333, + "max": 0.36473214285714284 + }, "related_data": { "qa": { "data_id": [ - "8_7417591_53372876", - "8_7453987_53436657", - "8_7404006_53352798", - "8_7403364_53351766" + "8_7417591_53372876@8", + "8_7453987_53436657@8", + "8_7404006_53352798@8", + "8_7403364_53351766@8" ] } } @@ -36024,7 +42161,7 @@ } ], "data": { - "uuid": "python-4-920", + "uuid": "python-4-928", "seg": [ [ [ @@ -36033,7 +42170,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.36428571428571427, + "max": 0.36473214285714284 + }, "related_data": {} } } @@ -36041,7 +42181,7 @@ { "数据库存储": { "data": { - "uuid": "python-4-921", + "uuid": "python-4-929", "seg": [ [ [ @@ -36050,11 +42190,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.36473214285714284, + "max": 0.3651785714285714 + }, "related_data": { "qa": { "data_id": [ - "8_758094_813841" + "8_758094_813841@8" ] } } @@ -36067,7 +42210,7 @@ { "MySQL的存储": { "data": { - "uuid": "python-5-540", + "uuid": "python-5-543", "seg": [ [ [ @@ -36076,15 +42219,42 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3651785714285714, + "max": 0.365625 + }, "related_data": {} } } + } + ], + "data": { + "uuid": "python-4-930", + "seg": [ + [ + [ + "关系", + "数据库", + "存储", + "关系型" + ] + ] + ], + "level": { + "min": 0.3651785714285714, + "max": 0.365625 }, + "related_data": {} + } + } + }, + { + "非关系型数据库存储": { + "children": [ { "MongoDB存储": { "data": { - "uuid": "python-5-541", + "uuid": "python-5-544", "seg": [ [ [ @@ -36093,7 +42263,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.365625, + "max": 0.36584821428571423 + }, "related_data": {} } } @@ -36101,7 +42274,7 @@ { "Redis存储": { "data": { - "uuid": "python-5-542", + "uuid": "python-5-545", "seg": [ [ [ @@ -36110,24 +42283,32 @@ ] ] ], - "level": "1", + "level": { + "min": 0.36584821428571423, + "max": 0.36607142857142855 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-922", + "uuid": "python-4-931", "seg": [ [ [ "关系", "数据库", - "存储" + "存储", + "非关系", + "关系型" ] ] ], - "level": "1", + "level": { + "min": 0.365625, + "max": 0.36607142857142855 + }, "related_data": {} } } @@ -36143,7 +42324,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.36428571428571427, + "max": 0.36607142857142855 + }, "related_data": {} } } @@ -36154,7 +42338,7 @@ { "WebKit/Selenium/headless/PhantomJS": { "data": { - "uuid": "python-4-923", + "uuid": "python-4-932", "seg": [ [ [ @@ -36165,7 +42349,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.36607142857142855, + "max": 0.3678571428571428 + }, "related_data": {} } } @@ -36178,11 +42365,15 @@ [ "渲染", "动态", - "网页" + "网页", + "动态网页" ] ] ], - "level": "1", + "level": { + "min": 0.36607142857142855, + "max": 0.3678571428571428 + }, "related_data": {} } } @@ -36199,7 +42390,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3678571428571428, + "max": 0.36964285714285716 + }, "related_data": {} } } @@ -36210,7 +42404,7 @@ { "timeout": { "data": { - "uuid": "python-4-924", + "uuid": "python-4-933", "seg": [ [ [ @@ -36218,14 +42412,11 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "8_1915276_9431451" - ] - } - } + "level": { + "min": 0.36964285714285716, + "max": 0.37142857142857144 + }, + "related_data": {} } } } @@ -36236,11 +42427,15 @@ [ [ "超时", - "异常" + "异常", + "异常处理" ] ] ], - "level": "1", + "level": { + "min": 0.36964285714285716, + "max": 0.37142857142857144 + }, "related_data": {} } } @@ -36251,7 +42446,7 @@ { "自动输入/OCR字符识别": { "data": { - "uuid": "python-4-925", + "uuid": "python-4-934", "seg": [ [ [ @@ -36262,7 +42457,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.37142857142857144, + "max": 0.3732142857142857 + }, "related_data": {} } } @@ -36277,7 +42475,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.37142857142857144, + "max": 0.3732142857142857 + }, "related_data": {} } } @@ -36294,11 +42495,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3732142857142857, + "max": 0.375 + }, "related_data": { "qa": { "data_id": [ - "8_7443750_53421074" + "8_7443750_53421074@8" ] } } @@ -36317,7 +42521,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.375, + "max": 0.3767857142857143 + }, "related_data": {} } } @@ -36331,7 +42538,7 @@ { "Windows下的安装": { "data": { - "uuid": "python-5-543", + "uuid": "python-5-546", "seg": [ [ [ @@ -36340,7 +42547,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3767857142857143, + "max": 0.3768518518518518 + }, "related_data": {} } } @@ -36348,7 +42558,7 @@ { "Linux下的安装": { "data": { - "uuid": "python-5-544", + "uuid": "python-5-547", "seg": [ [ [ @@ -36357,11 +42567,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3768518518518518, + "max": 0.37691798941798943 + }, "related_data": { "qa": { "data_id": [ - "8_7438304_53411649" + "8_7438304_53411649@8" ] } } @@ -36371,7 +42584,7 @@ { "Mac下的安装": { "data": { - "uuid": "python-5-545", + "uuid": "python-5-548", "seg": [ [ [ @@ -36380,11 +42593,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.37691798941798943, + "max": 0.376984126984127 + }, "related_data": { "qa": { "data_id": [ - "8_7459734_53446642" + "8_7459734_53446642@8" ] } } @@ -36393,7 +42609,7 @@ } ], "data": { - "uuid": "python-4-926", + "uuid": "python-4-935", "seg": [ [ [ @@ -36402,7 +42618,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3767857142857143, + "max": 0.376984126984127 + }, "related_data": {} } } @@ -36413,7 +42632,7 @@ { "requests的安装": { "data": { - "uuid": "python-5-546", + "uuid": "python-5-549", "seg": [ [ [ @@ -36422,13 +42641,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.376984126984127, + "max": 0.3770171957671958 + }, "related_data": { "qa": { "data_id": [ - "8_751015_804469", - "8_361376_379175", - "8_7413326_53365235" + "8_751015_804469@8", + "8_361376_379175@8", + "8_7413326_53365235@8" ] } } @@ -36438,7 +42660,7 @@ { "Selenium的安装": { "data": { - "uuid": "python-5-547", + "uuid": "python-5-550", "seg": [ [ [ @@ -36447,7 +42669,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3770171957671958, + "max": 0.3770502645502645 + }, "related_data": {} } } @@ -36455,7 +42680,7 @@ { "ChromeDriver的安装": { "data": { - "uuid": "python-5-548", + "uuid": "python-5-551", "seg": [ [ [ @@ -36464,12 +42689,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3770502645502645, + "max": 0.3770833333333333 + }, "related_data": { "qa": { "data_id": [ - "8_7433969_53404330", - "8_697389_583100" + "8_7433969_53404330@8", + "8_697389_583100@8" ] } } @@ -36479,7 +42707,7 @@ { "GeckoDriver的安装": { "data": { - "uuid": "python-5-549", + "uuid": "python-5-552", "seg": [ [ [ @@ -36488,7 +42716,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3770833333333333, + "max": 0.3771164021164021 + }, "related_data": {} } } @@ -36496,7 +42727,7 @@ { "PhantomJS的安装": { "data": { - "uuid": "python-5-550", + "uuid": "python-5-553", "seg": [ [ [ @@ -36505,11 +42736,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3771164021164021, + "max": 0.3771494708994709 + }, "related_data": { "qa": { "data_id": [ - "8_686807_549071" + "8_686807_549071@8" ] } } @@ -36519,7 +42753,7 @@ { "aiohttp的安装": { "data": { - "uuid": "python-5-551", + "uuid": "python-5-554", "seg": [ [ [ @@ -36528,11 +42762,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3771494708994709, + "max": 0.3771825396825397 + }, "related_data": { "qa": { "data_id": [ - "8_7428809_53395164" + "8_7428809_53395164@8" ] } } @@ -36541,7 +42778,7 @@ } ], "data": { - "uuid": "python-4-927", + "uuid": "python-4-936", "seg": [ [ [ @@ -36550,11 +42787,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.376984126984127, + "max": 0.3771825396825397 + }, "related_data": { "qa": { "data_id": [ - "8_354805_367533" + "8_354805_367533@8" ] } } @@ -36567,7 +42807,7 @@ { "lxml的安装": { "data": { - "uuid": "python-5-552", + "uuid": "python-5-555", "seg": [ [ [ @@ -36576,7 +42816,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3771825396825397, + "max": 0.37723214285714285 + }, "related_data": {} } } @@ -36584,7 +42827,7 @@ { "Beautiful Soup的安装": { "data": { - "uuid": "python-5-553", + "uuid": "python-5-556", "seg": [ [ [ @@ -36596,7 +42839,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.37723214285714285, + "max": 0.377281746031746 + }, "related_data": {} } } @@ -36604,7 +42850,7 @@ { "pyquery的安装": { "data": { - "uuid": "python-5-554", + "uuid": "python-5-557", "seg": [ [ [ @@ -36613,7 +42859,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.377281746031746, + "max": 0.3773313492063492 + }, "related_data": {} } } @@ -36621,7 +42870,7 @@ { "tesserocr的安装": { "data": { - "uuid": "python-5-555", + "uuid": "python-5-558", "seg": [ [ [ @@ -36630,12 +42879,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3773313492063492, + "max": 0.3773809523809524 + }, "related_data": { "qa": { "data_id": [ - "8_6131139_41057836", - "8_7432068_53400971" + "8_6131139_41057836@8", + "8_7432068_53400971@8" ] } } @@ -36644,7 +42896,7 @@ } ], "data": { - "uuid": "python-4-928", + "uuid": "python-4-937", "seg": [ [ [ @@ -36654,7 +42906,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3771825396825397, + "max": 0.3773809523809524 + }, "related_data": {} } } @@ -36665,7 +42920,7 @@ { "MySQL的安装": { "data": { - "uuid": "python-5-556", + "uuid": "python-5-559", "seg": [ [ [ @@ -36674,7 +42929,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3773809523809524, + "max": 0.3774470899470899 + }, "related_data": {} } } @@ -36682,7 +42940,7 @@ { "MongoDB的安装": { "data": { - "uuid": "python-5-557", + "uuid": "python-5-560", "seg": [ [ [ @@ -36691,7 +42949,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3774470899470899, + "max": 0.3775132275132275 + }, "related_data": {} } } @@ -36699,7 +42960,7 @@ { "Redis的安装": { "data": { - "uuid": "python-5-558", + "uuid": "python-5-561", "seg": [ [ [ @@ -36708,14 +42969,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3775132275132275, + "max": 0.37757936507936507 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-929", + "uuid": "python-4-938", "seg": [ [ [ @@ -36724,7 +42988,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3773809523809524, + "max": 0.37757936507936507 + }, "related_data": {} } } @@ -36735,7 +43002,7 @@ { "PyMySQL的安装": { "data": { - "uuid": "python-5-559", + "uuid": "python-5-562", "seg": [ [ [ @@ -36744,7 +43011,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.37757936507936507, + "max": 0.37762896825396824 + }, "related_data": {} } } @@ -36752,7 +43022,7 @@ { "PyMongo的安装": { "data": { - "uuid": "python-5-560", + "uuid": "python-5-563", "seg": [ [ [ @@ -36761,7 +43031,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.37762896825396824, + "max": 0.3776785714285714 + }, "related_data": {} } } @@ -36769,7 +43042,7 @@ { "redis-py的安装": { "data": { - "uuid": "python-5-561", + "uuid": "python-5-564", "seg": [ [ [ @@ -36779,12 +43052,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3776785714285714, + "max": 0.3777281746031746 + }, "related_data": { "qa": { "data_id": [ - "8_7434952_53405525", - "8_647666_451734" + "8_7434952_53405525@8", + "8_647666_451734@8" ] } } @@ -36794,7 +43070,7 @@ { "RedisDump的安装": { "data": { - "uuid": "python-5-562", + "uuid": "python-5-565", "seg": [ [ [ @@ -36803,14 +43079,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3777281746031746, + "max": 0.37777777777777777 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-930", + "uuid": "python-4-939", "seg": [ [ [ @@ -36820,7 +43099,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.37757936507936507, + "max": 0.37777777777777777 + }, "related_data": {} } } @@ -36831,7 +43113,7 @@ { "Flask的安装": { "data": { - "uuid": "python-5-563", + "uuid": "python-5-566", "seg": [ [ [ @@ -36840,7 +43122,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.37777777777777777, + "max": 0.3778769841269841 + }, "related_data": {} } } @@ -36848,7 +43133,7 @@ { "Tornado的安装": { "data": { - "uuid": "python-5-564", + "uuid": "python-5-567", "seg": [ [ [ @@ -36857,14 +43142,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3778769841269841, + "max": 0.37797619047619047 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-931", + "uuid": "python-4-940", "seg": [ [ [ @@ -36874,7 +43162,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.37777777777777777, + "max": 0.37797619047619047 + }, "related_data": {} } } @@ -36885,7 +43176,7 @@ { "Charles的安装": { "data": { - "uuid": "python-5-565", + "uuid": "python-5-568", "seg": [ [ [ @@ -36894,7 +43185,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.37797619047619047, + "max": 0.378042328042328 + }, "related_data": {} } } @@ -36902,7 +43196,7 @@ { "mitmproxy的安装": { "data": { - "uuid": "python-5-566", + "uuid": "python-5-569", "seg": [ [ [ @@ -36911,7 +43205,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.378042328042328, + "max": 0.3781084656084656 + }, "related_data": {} } } @@ -36919,7 +43216,7 @@ { "Appium的安装": { "data": { - "uuid": "python-5-567", + "uuid": "python-5-570", "seg": [ [ [ @@ -36928,11 +43225,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3781084656084656, + "max": 0.37817460317460316 + }, "related_data": { "qa": { "data_id": [ - "8_197744_112299" + "8_197744_112299@8" ] } } @@ -36941,7 +43241,7 @@ } ], "data": { - "uuid": "python-4-932", + "uuid": "python-4-941", "seg": [ [ [ @@ -36953,7 +43253,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.37797619047619047, + "max": 0.37817460317460316 + }, "related_data": {} } } @@ -36964,7 +43267,7 @@ { "pyspider的安装": { "data": { - "uuid": "python-5-568", + "uuid": "python-5-571", "seg": [ [ [ @@ -36973,7 +43276,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.37817460317460316, + "max": 0.37822420634920634 + }, "related_data": {} } } @@ -36981,7 +43287,7 @@ { "Scrapy的安装": { "data": { - "uuid": "python-5-569", + "uuid": "python-5-572", "seg": [ [ [ @@ -36990,7 +43296,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.37822420634920634, + "max": 0.3782738095238095 + }, "related_data": {} } } @@ -36998,7 +43307,7 @@ { "Scrapy-Splash的安装": { "data": { - "uuid": "python-5-570", + "uuid": "python-5-573", "seg": [ [ [ @@ -37008,7 +43317,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3782738095238095, + "max": 0.3783234126984127 + }, "related_data": {} } } @@ -37016,7 +43328,7 @@ { "Scrapy-Redis的安装": { "data": { - "uuid": "python-5-571", + "uuid": "python-5-574", "seg": [ [ [ @@ -37026,24 +43338,31 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3783234126984127, + "max": 0.37837301587301586 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-933", + "uuid": "python-4-942", "seg": [ [ [ "爬虫", "框架", - "安装" + "安装", + "爬虫框架" ] ] ], - "level": "2", + "level": { + "min": 0.37817460317460316, + "max": 0.37837301587301586 + }, "related_data": {} } } @@ -37054,7 +43373,7 @@ { "Docker的安装": { "data": { - "uuid": "python-5-572", + "uuid": "python-5-575", "seg": [ [ [ @@ -37063,7 +43382,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.37837301587301586, + "max": 0.37840608465608466 + }, "related_data": {} } } @@ -37071,7 +43393,7 @@ { "Scrapyd的安装": { "data": { - "uuid": "python-5-573", + "uuid": "python-5-576", "seg": [ [ [ @@ -37080,7 +43402,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.37840608465608466, + "max": 0.3784391534391534 + }, "related_data": {} } } @@ -37088,7 +43413,7 @@ { "Scrapyd-Client的安装": { "data": { - "uuid": "python-5-574", + "uuid": "python-5-577", "seg": [ [ [ @@ -37098,7 +43423,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3784391534391534, + "max": 0.3784722222222222 + }, "related_data": {} } } @@ -37106,7 +43434,7 @@ { "Scrapyd API的安装": { "data": { - "uuid": "python-5-575", + "uuid": "python-5-578", "seg": [ [ [ @@ -37116,7 +43444,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3784722222222222, + "max": 0.378505291005291 + }, "related_data": {} } } @@ -37124,7 +43455,7 @@ { "Scrapyrt的安装": { "data": { - "uuid": "python-5-576", + "uuid": "python-5-579", "seg": [ [ [ @@ -37133,7 +43464,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.378505291005291, + "max": 0.37853835978835976 + }, "related_data": {} } } @@ -37141,7 +43475,7 @@ { "Gerapy的安装": { "data": { - "uuid": "python-5-577", + "uuid": "python-5-580", "seg": [ [ [ @@ -37150,14 +43484,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.37853835978835976, + "max": 0.37857142857142856 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-934", + "uuid": "python-4-943", "seg": [ [ [ @@ -37168,7 +43505,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.37837301587301586, + "max": 0.37857142857142856 + }, "related_data": {} } } @@ -37185,7 +43525,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3767857142857143, + "max": 0.37857142857142856 + }, "related_data": {} } } @@ -37199,7 +43542,7 @@ { "URI和URL": { "data": { - "uuid": "python-5-578", + "uuid": "python-5-581", "seg": [ [ [ @@ -37210,13 +43553,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.37857142857142856, + "max": 0.37863095238095235 + }, "related_data": { "qa": { "data_id": [ - "8_7430199_53397223", - "8_719861_714505", - "8_7427810_53392620" + "8_7430199_53397223@8", + "8_719861_714505@8", + "8_7427810_53392620@8" ] } } @@ -37226,7 +43572,7 @@ { "超文本": { "data": { - "uuid": "python-5-579", + "uuid": "python-5-582", "seg": [ [ [ @@ -37234,7 +43580,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.37863095238095235, + "max": 0.3786904761904762 + }, "related_data": {} } } @@ -37242,7 +43591,7 @@ { "HTTP和HTTPS": { "data": { - "uuid": "python-5-580", + "uuid": "python-5-583", "seg": [ [ [ @@ -37253,7 +43602,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3786904761904762, + "max": 0.37875 + }, "related_data": {} } } @@ -37261,7 +43613,7 @@ { "HTTP请求过程": { "data": { - "uuid": "python-5-581", + "uuid": "python-5-584", "seg": [ [ [ @@ -37270,16 +43622,19 @@ ] ] ], - "level": "2", + "level": { + "min": 0.37875, + "max": 0.37880952380952376 + }, "related_data": { "qa": { "data_id": [ - "8_7450986_53432049", - "8_7445946_53425003", - "8_7442207_53419000", - "8_7453839_53436522", - "8_7443648_53420843", - "8_7453813_53436513" + "8_7450986_53432049@8", + "8_7445946_53425003@8", + "8_7442207_53419000@8", + "8_7453839_53436522@8", + "8_7443648_53420843@8", + "8_7453813_53436513@8" ] } } @@ -37289,13 +43644,16 @@ { "请求": { "data": { - "uuid": "python-5-582", + "uuid": "python-5-585", "seg": [ [ [] ] ], - "level": "2", + "level": { + "min": 0.37880952380952376, + "max": 0.3788690476190476 + }, "related_data": {} } } @@ -37303,7 +43661,7 @@ { "响应": { "data": { - "uuid": "python-5-583", + "uuid": "python-5-586", "seg": [ [ [ @@ -37311,14 +43669,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3788690476190476, + "max": 0.3789285714285714 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-935", + "uuid": "python-4-944", "seg": [ [ [ @@ -37327,7 +43688,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.37857142857142856, + "max": 0.3789285714285714 + }, "related_data": {} } } @@ -37338,7 +43702,7 @@ { "网页的组成": { "data": { - "uuid": "python-5-584", + "uuid": "python-5-587", "seg": [ [ [ @@ -37346,20 +43710,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3789285714285714, + "max": 0.37901785714285713 + }, "related_data": { "qa": { "data_id": [ - "8_660322_474556", - "8_7417878_53373647", - "8_164266_37881", - "8_7450618_53431472", - "8_960372_1109276", - "8_771109_833647", - "8_1092994_1301945", - "8_831188_929764", - "8_7445361_53423916", - "8_7439490_53414003" + "8_660322_474556@8", + "8_7417878_53373647@8", + "8_164266_37881@8", + "8_7450618_53431472@8", + "8_960372_1109276@8", + "8_771109_833647@8", + "8_1092994_1301945@8", + "8_831188_929764@8", + "8_7445361_53423916@8", + "8_7439490_53414003@8" ] } } @@ -37369,7 +43736,7 @@ { "网页的结构": { "data": { - "uuid": "python-5-585", + "uuid": "python-5-588", "seg": [ [ [ @@ -37378,7 +43745,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.37901785714285713, + "max": 0.37910714285714286 + }, "related_data": {} } } @@ -37386,7 +43756,7 @@ { "节点树及节点间的关系": { "data": { - "uuid": "python-5-586", + "uuid": "python-5-589", "seg": [ [ [ @@ -37396,7 +43766,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.37910714285714286, + "max": 0.37919642857142855 + }, "related_data": {} } } @@ -37404,7 +43777,7 @@ { "选择器": { "data": { - "uuid": "python-5-587", + "uuid": "python-5-590", "seg": [ [ [ @@ -37412,23 +43785,30 @@ ] ] ], - "level": "2", + "level": { + "min": 0.37919642857142855, + "max": 0.3792857142857143 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-936", + "uuid": "python-4-945", "seg": [ [ [ "网页", - "基础" + "基础", + "网页基础" ] ] ], - "level": "2", + "level": { + "min": 0.3789285714285714, + "max": 0.3792857142857143 + }, "related_data": {} } } @@ -37439,7 +43819,7 @@ { "爬虫概述": { "data": { - "uuid": "python-5-588", + "uuid": "python-5-591", "seg": [ [ [ @@ -37448,20 +43828,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3792857142857143, + "max": 0.3794047619047619 + }, "related_data": { "qa": { "data_id": [ - "8_720123_714441", - "8_7400947_53349142", - "8_235454_214439", - "8_200546_121145", - "8_7409933_53360666", - "8_7451354_53432612", - "8_806966_902585", - "8_7411487_53411305", - "8_7405027_53354182", - "8_7443585_53420767" + "8_720123_714441@8", + "8_7400947_53349142@8", + "8_235454_214439@8", + "8_200546_121145@8", + "8_7409933_53360666@8", + "8_7451354_53432612@8", + "8_806966_902585@8", + "8_7411487_53411305@8", + "8_7405027_53354182@8", + "8_7443585_53420767@8" ] } } @@ -37471,7 +43854,7 @@ { "能抓怎样的数据": { "data": { - "uuid": "python-5-589", + "uuid": "python-5-592", "seg": [ [ [ @@ -37480,14 +43863,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3794047619047619, + "max": 0.3795238095238095 + }, "related_data": { "qa": { "data_id": [ - "8_7434252_53404652", - "8_900102_1036909", - "8_978354_1138230", - "8_7460759_53445859" + "8_7434252_53404652@8", + "8_900102_1036909@8", + "8_978354_1138230@8", + "8_7460759_53445859@8" ] } } @@ -37497,7 +43883,7 @@ { "JavaScript渲染页面": { "data": { - "uuid": "python-5-590", + "uuid": "python-5-593", "seg": [ [ [ @@ -37507,11 +43893,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3795238095238095, + "max": 0.3796428571428571 + }, "related_data": { "qa": { "data_id": [ - "8_7411292_53362136" + "8_7411292_53362136@8" ] } } @@ -37520,7 +43909,7 @@ } ], "data": { - "uuid": "python-4-937", + "uuid": "python-4-946", "seg": [ [ [ @@ -37529,7 +43918,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3792857142857143, + "max": 0.3796428571428571 + }, "related_data": {} } } @@ -37540,25 +43932,30 @@ { "静态网页和动态网页": { "data": { - "uuid": "python-5-591", + "uuid": "python-5-594", "seg": [ [ [ "静态", - "网页" + "网页", + "静态网页" ], [ "动态", - "网页" + "网页", + "动态网页" ] ] ], - "level": "2", + "level": { + "min": 0.3796428571428571, + "max": 0.37976190476190474 + }, "related_data": { "qa": { "data_id": [ - "8_717310_710610", - "8_718834_713136" + "8_717310_710610@8", + "8_718834_713136@8" ] } } @@ -37568,7 +43965,7 @@ { "无状态HTTP": { "data": { - "uuid": "python-5-592", + "uuid": "python-5-595", "seg": [ [ [ @@ -37577,7 +43974,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.37976190476190474, + "max": 0.3798809523809524 + }, "related_data": {} } } @@ -37585,7 +43985,7 @@ { "常见误区": { "data": { - "uuid": "python-5-593", + "uuid": "python-5-596", "seg": [ [ [ @@ -37594,14 +43994,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3798809523809524, + "max": 0.38 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-938", + "uuid": "python-4-947", "seg": [ [ [ @@ -37612,12 +44015,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3796428571428571, + "max": 0.38 + }, "related_data": { "qa": { "data_id": [ - "8_1017546_1210331", - "8_7411172_53361923" + "8_1017546_1210331@8", + "8_7411172_53361923@8" ] } } @@ -37630,7 +44036,7 @@ { "基本原理": { "data": { - "uuid": "python-5-594", + "uuid": "python-5-597", "seg": [ [ [ @@ -37638,7 +44044,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.38, + "max": 0.38007142857142856 + }, "related_data": {} } } @@ -37646,7 +44055,7 @@ { "代理的作用": { "data": { - "uuid": "python-5-595", + "uuid": "python-5-598", "seg": [ [ [ @@ -37655,12 +44064,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.38007142857142856, + "max": 0.3801428571428571 + }, "related_data": { "qa": { "data_id": [ - "8_4646199_29329661", - "8_771587_834191" + "8_4646199_29329661@8", + "8_771587_834191@8" ] } } @@ -37670,20 +44082,24 @@ { "爬虫代理": { "data": { - "uuid": "python-5-596", + "uuid": "python-5-599", "seg": [ [ [ "爬虫", - "代理" + "代理", + "爬虫代理" ] ] ], - "level": "2", + "level": { + "min": 0.3801428571428571, + "max": 0.3802142857142857 + }, "related_data": { "qa": { "data_id": [ - "8_5995588_40761369" + "8_5995588_40761369@8" ] } } @@ -37693,16 +44109,20 @@ { "代理分类": { "data": { - "uuid": "python-5-597", + "uuid": "python-5-600", "seg": [ [ [ "代理", - "分类" + "分类", + "代理分类" ] ] ], - "level": "2", + "level": { + "min": 0.3802142857142857, + "max": 0.3802857142857143 + }, "related_data": {} } } @@ -37710,7 +44130,7 @@ { "常见代理设置": { "data": { - "uuid": "python-5-598", + "uuid": "python-5-601", "seg": [ [ [ @@ -37720,14 +44140,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3802857142857143, + "max": 0.38035714285714284 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-939", + "uuid": "python-4-948", "seg": [ [ [ @@ -37736,7 +44159,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.38, + "max": 0.38035714285714284 + }, "related_data": {} } } @@ -37748,11 +44174,15 @@ [ [ "爬虫", - "基础" + "基础", + "爬虫基础" ] ] ], - "level": "2", + "level": { + "min": 0.37857142857142856, + "max": 0.38035714285714284 + }, "related_data": {} } } @@ -37763,18 +44193,22 @@ { "抓取猫眼电影排行": { "data": { - "uuid": "python-4-940", + "uuid": "python-4-949", "seg": [ [ [ "抓取", "猫眼", "电影", - "排行" + "排行", + "猫眼电影" ] ] ], - "level": "1", + "level": { + "min": 0.38035714285714284, + "max": 0.3821428571428572 + }, "related_data": {} } } @@ -37785,11 +44219,15 @@ "seg": [ [ [ - "库" + "库", + "基本库" ] ] ], - "level": "1", + "level": { + "min": 0.38035714285714284, + "max": 0.3821428571428572 + }, "related_data": {} } } @@ -37800,7 +44238,7 @@ { "使用XPath": { "data": { - "uuid": "python-4-941", + "uuid": "python-4-950", "seg": [ [ [ @@ -37808,20 +44246,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3821428571428572, + "max": 0.3830357142857143 + }, "related_data": { "qa": { "data_id": [ - "8_7460213_53445277", - "8_7399983_53347616", - "8_692921_569357", - "8_1104083_1318410", - "8_715470_707880", - "8_7423280_53383014", - "8_7400211_53347988", - "8_721190_726161", - "8_1058620_1255953", - "8_716927_710071" + "8_7460213_53445277@8", + "8_7399983_53347616@8", + "8_692921_569357@8", + "8_1104083_1318410@8", + "8_715470_707880@8", + "8_7423280_53383014@8", + "8_7400211_53347988@8", + "8_721190_726161@8", + "8_1058620_1255953@8", + "8_716927_710071@8" ] } } @@ -37831,7 +44272,7 @@ { "使用pyquery": { "data": { - "uuid": "python-4-942", + "uuid": "python-4-951", "seg": [ [ [ @@ -37839,7 +44280,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3830357142857143, + "max": 0.38392857142857145 + }, "related_data": {} } } @@ -37855,7 +44299,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3821428571428572, + "max": 0.38392857142857145 + }, "related_data": {} } } @@ -37866,7 +44313,7 @@ { "什么是Ajax": { "data": { - "uuid": "python-4-943", + "uuid": "python-4-952", "seg": [ [ [ @@ -37874,12 +44321,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.38392857142857145, + "max": 0.384375 + }, "related_data": { "qa": { "data_id": [ - "8_770576_832435", - "8_691716_564774" + "8_770576_832435@8", + "8_691716_564774@8" ] } } @@ -37889,7 +44339,7 @@ { "Ajax分析方法": { "data": { - "uuid": "python-4-944", + "uuid": "python-4-953", "seg": [ [ [ @@ -37898,7 +44348,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.384375, + "max": 0.3848214285714286 + }, "related_data": {} } } @@ -37906,7 +44359,7 @@ { "Ajax结果提取": { "data": { - "uuid": "python-4-945", + "uuid": "python-4-954", "seg": [ [ [ @@ -37915,7 +44368,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3848214285714286, + "max": 0.38526785714285716 + }, "related_data": {} } } @@ -37923,7 +44379,7 @@ { "分析Ajax爬取今日头条街拍美图": { "data": { - "uuid": "python-4-946", + "uuid": "python-4-955", "seg": [ [ [ @@ -37934,12 +44390,15 @@ "头条", "街", "拍", - "美", - "图" + "美图", + "头条街" ] ] ], - "level": "1", + "level": { + "min": 0.38526785714285716, + "max": 0.38571428571428573 + }, "related_data": {} } } @@ -37956,7 +44415,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.38392857142857145, + "max": 0.38571428571428573 + }, "related_data": {} } } @@ -37967,7 +44429,7 @@ { "Splash的使用": { "data": { - "uuid": "python-4-947", + "uuid": "python-4-956", "seg": [ [ [ @@ -37975,7 +44437,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.38571428571428573, + "max": 0.3863095238095238 + }, "related_data": {} } } @@ -37983,7 +44448,7 @@ { "Splash负载均衡配置": { "data": { - "uuid": "python-4-948", + "uuid": "python-4-957", "seg": [ [ [ @@ -37994,7 +44459,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3863095238095238, + "max": 0.3869047619047619 + }, "related_data": {} } } @@ -38002,23 +44470,27 @@ { "使用Selenium爬取淘宝商品": { "data": { - "uuid": "python-4-949", + "uuid": "python-4-958", "seg": [ [ [ "selenium", "爬取", "淘宝", - "商品" + "商品", + "淘宝商品" ] ] ], - "level": "1", + "level": { + "min": 0.3869047619047619, + "max": 0.3875 + }, "related_data": { "qa": { "data_id": [ - "8_7453265_53436013", - "8_7453270_53435997" + "8_7453265_53436013@8", + "8_7453270_53435997@8" ] } } @@ -38038,7 +44510,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.38571428571428573, + "max": 0.3875 + }, "related_data": {} } } @@ -38049,17 +44524,21 @@ { "图形验证码的识别": { "data": { - "uuid": "python-4-950", + "uuid": "python-4-959", "seg": [ [ [ "图形", "验证码", - "识别" + "识别", + "图形验证码" ] ] ], - "level": "1", + "level": { + "min": 0.3875, + "max": 0.3879464285714286 + }, "related_data": {} } } @@ -38067,7 +44546,7 @@ { "极验滑动验证码的识别": { "data": { - "uuid": "python-4-951", + "uuid": "python-4-960", "seg": [ [ [ @@ -38078,11 +44557,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3879464285714286, + "max": 0.38839285714285715 + }, "related_data": { "qa": { "data_id": [ - "8_1081735_1307459" + "8_1081735_1307459@8" ] } } @@ -38092,7 +44574,7 @@ { "点触验证码的识别": { "data": { - "uuid": "python-4-952", + "uuid": "python-4-961", "seg": [ [ [ @@ -38102,13 +44584,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.38839285714285715, + "max": 0.3888392857142857 + }, "related_data": { "qa": { "data_id": [ - "8_1068640_1269512", - "8_748828_802140", - "8_7410581_53423588" + "8_1068640_1269512@8", + "8_748828_802140@8", + "8_7410581_53423588@8" ] } } @@ -38118,7 +44603,7 @@ { "微博宫格验证码的识别": { "data": { - "uuid": "python-4-953", + "uuid": "python-4-962", "seg": [ [ [ @@ -38126,11 +44611,16 @@ "博", "宫格", "验证码", - "识别" + "识别", + "博宫格", + "宫格验证码" ] ] ], - "level": "2", + "level": { + "min": 0.3888392857142857, + "max": 0.3892857142857143 + }, "related_data": {} } } @@ -38146,7 +44636,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3875, + "max": 0.3892857142857143 + }, "related_data": {} } } @@ -38157,7 +44650,7 @@ { "代理的设置": { "data": { - "uuid": "python-4-954", + "uuid": "python-4-963", "seg": [ [ [ @@ -38166,12 +44659,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3892857142857143, + "max": 0.3896428571428571 + }, "related_data": { "qa": { "data_id": [ - "8_7429339_53396148", - "8_766524_825819" + "8_7429339_53396148@8", + "8_766524_825819@8" ] } } @@ -38181,17 +44677,21 @@ { "代理池的维护": { "data": { - "uuid": "python-4-955", + "uuid": "python-4-964", "seg": [ [ [ "代理", "池", - "维护" + "维护", + "代理池" ] ] ], - "level": "1", + "level": { + "min": 0.3896428571428571, + "max": 0.39 + }, "related_data": {} } } @@ -38199,7 +44699,7 @@ { "付费代理的使用": { "data": { - "uuid": "python-4-956", + "uuid": "python-4-965", "seg": [ [ [ @@ -38208,7 +44708,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.39, + "max": 0.39035714285714285 + }, "related_data": {} } } @@ -38216,7 +44719,7 @@ { "ADSL拨号代理": { "data": { - "uuid": "python-4-957", + "uuid": "python-4-966", "seg": [ [ [ @@ -38226,7 +44729,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.39035714285714285, + "max": 0.39071428571428574 + }, "related_data": {} } } @@ -38234,7 +44740,7 @@ { "使用代理爬取微信公众号文章": { "data": { - "uuid": "python-4-958", + "uuid": "python-4-967", "seg": [ [ [ @@ -38246,7 +44752,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.39071428571428574, + "max": 0.39107142857142857 + }, "related_data": {} } } @@ -38261,7 +44770,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3892857142857143, + "max": 0.39107142857142857 + }, "related_data": {} } } @@ -38272,7 +44784,7 @@ { "模拟登录并爬取GitHub": { "data": { - "uuid": "python-4-959", + "uuid": "python-4-968", "seg": [ [ [ @@ -38283,17 +44795,20 @@ ] ] ], - "level": "1", + "level": { + "min": 0.39107142857142857, + "max": 0.39196428571428577 + }, "related_data": { "qa": { "data_id": [ - "8_383201_418473", - "8_653244_461742", - "8_701953_592099", - "8_714108_706611", - "8_7460605_53445717", - "8_1095426_1306710", - "8_1091500_1298995" + "8_383201_418473@8", + "8_653244_461742@8", + "8_701953_592099@8", + "8_714108_706611@8", + "8_7460605_53445717@8", + "8_1095426_1306710@8", + "8_1091500_1298995@8" ] } } @@ -38303,7 +44818,7 @@ { "Cookies池的搭建": { "data": { - "uuid": "python-4-960", + "uuid": "python-4-969", "seg": [ [ [ @@ -38313,7 +44828,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.39196428571428577, + "max": 0.3928571428571429 + }, "related_data": {} } } @@ -38329,7 +44847,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.39107142857142857, + "max": 0.3928571428571429 + }, "related_data": {} } } @@ -38340,7 +44861,7 @@ { "Charles的使用": { "data": { - "uuid": "python-4-961", + "uuid": "python-4-970", "seg": [ [ [ @@ -38348,7 +44869,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3928571428571429, + "max": 0.39315476190476195 + }, "related_data": {} } } @@ -38356,7 +44880,7 @@ { "mitmproxy的使用": { "data": { - "uuid": "python-4-962", + "uuid": "python-4-971", "seg": [ [ [ @@ -38364,11 +44888,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.39315476190476195, + "max": 0.393452380952381 + }, "related_data": { "qa": { "data_id": [ - "8_1092999_1301928" + "8_1092999_1301928@8" ] } } @@ -38378,7 +44905,7 @@ { "mitmdump爬取“得到”App电子书": { "data": { - "uuid": "python-4-963", + "uuid": "python-4-972", "seg": [ [ [ @@ -38389,14 +44916,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.393452380952381, + "max": 0.39375000000000004 + }, "related_data": { "qa": { "data_id": [ - "8_719435_726258", - "8_703127_593834", - "8_761117_822129", - "8_1095098_1305987" + "8_719435_726258@8", + "8_703127_593834@8", + "8_761117_822129@8", + "8_1095098_1305987@8" ] } } @@ -38406,7 +44936,7 @@ { "Appium的基本使用": { "data": { - "uuid": "python-4-964", + "uuid": "python-4-973", "seg": [ [ [ @@ -38414,11 +44944,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.39375000000000004, + "max": 0.3940476190476191 + }, "related_data": { "qa": { "data_id": [ - "8_7418619_53374913" + "8_7418619_53374913@8" ] } } @@ -38428,7 +44961,7 @@ { "Appium爬取微信朋友圈": { "data": { - "uuid": "python-4-965", + "uuid": "python-4-974", "seg": [ [ [ @@ -38439,20 +44972,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3940476190476191, + "max": 0.39434523809523814 + }, "related_data": { "qa": { "data_id": [ - "8_7423976_53384464", - "8_1053051_1250403", - "8_7404511_53353420", - "8_1097392_1311002", - "8_226038_188216", - "8_7458291_53442843", - "8_753902_808641", - "8_774487_841064", - "8_7431802_53400357", - "8_7400229_53348633" + "8_7423976_53384464@8", + "8_1053051_1250403@8", + "8_7404511_53353420@8", + "8_1097392_1311002@8", + "8_226038_188216@8", + "8_7458291_53442843@8", + "8_753902_808641@8", + "8_774487_841064@8", + "8_7431802_53400357@8", + "8_7400229_53348633@8" ] } } @@ -38462,7 +44998,7 @@ { "Appium+mitmdump爬取京东商品": { "data": { - "uuid": "python-4-966", + "uuid": "python-4-975", "seg": [ [ [ @@ -38470,15 +45006,19 @@ "mitmdump", "爬取", "京东", - "商品" + "商品", + "京东商品" ] ] ], - "level": "1", + "level": { + "min": 0.39434523809523814, + "max": 0.3946428571428572 + }, "related_data": { "qa": { "data_id": [ - "8_7453262_53436044" + "8_7453262_53436044@8" ] } } @@ -38496,7 +45036,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3928571428571429, + "max": 0.3946428571428572 + }, "related_data": {} } } @@ -38507,7 +45050,7 @@ { "pyspider框架介绍": { "data": { - "uuid": "python-4-967", + "uuid": "python-4-976", "seg": [ [ [ @@ -38517,7 +45060,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3946428571428572, + "max": 0.3952380952380953 + }, "related_data": {} } } @@ -38525,7 +45071,7 @@ { "pyspider的基本使用": { "data": { - "uuid": "python-4-968", + "uuid": "python-4-977", "seg": [ [ [ @@ -38533,7 +45079,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3952380952380953, + "max": 0.39583333333333337 + }, "related_data": {} } } @@ -38541,7 +45090,7 @@ { "pyspider用法详解": { "data": { - "uuid": "python-4-969", + "uuid": "python-4-978", "seg": [ [ [ @@ -38551,7 +45100,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.39583333333333337, + "max": 0.39642857142857146 + }, "related_data": {} } } @@ -38567,7 +45119,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.3946428571428572, + "max": 0.39642857142857146 + }, "related_data": {} } } @@ -38578,17 +45133,22 @@ { "分布式爬虫原理": { "data": { - "uuid": "python-4-970", + "uuid": "python-4-979", "seg": [ [ [ "分布式", "爬虫", - "原理" + "原理", + "分布式爬虫", + "爬虫原理" ] ] ], - "level": "2", + "level": { + "min": 0.39642857142857146, + "max": 0.39687500000000003 + }, "related_data": {} } } @@ -38596,7 +45156,7 @@ { "Scrapy-Redis源码解析": { "data": { - "uuid": "python-4-971", + "uuid": "python-4-980", "seg": [ [ [ @@ -38606,7 +45166,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.39687500000000003, + "max": 0.3973214285714286 + }, "related_data": {} } } @@ -38614,7 +45177,7 @@ { "Scrapy分布式实现": { "data": { - "uuid": "python-4-972", + "uuid": "python-4-981", "seg": [ [ [ @@ -38623,7 +45186,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3973214285714286, + "max": 0.3977678571428572 + }, "related_data": {} } } @@ -38631,7 +45197,7 @@ { "Bloom Filter的对接": { "data": { - "uuid": "python-4-973", + "uuid": "python-4-982", "seg": [ [ [ @@ -38641,7 +45207,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3977678571428572, + "max": 0.39821428571428574 + }, "related_data": {} } } @@ -38653,11 +45222,15 @@ [ [ "分布式", - "爬虫" + "爬虫", + "分布式爬虫" ] ] ], - "level": "2", + "level": { + "min": 0.39642857142857146, + "max": 0.39821428571428574 + }, "related_data": {} } } @@ -38668,21 +45241,25 @@ { "Scrapyd分布式部署": { "data": { - "uuid": "python-4-974", + "uuid": "python-4-983", "seg": [ [ [ "scrapyd", "分布式", - "部署" + "部署", + "分布式部署" ] ] ], - "level": "2", + "level": { + "min": 0.39821428571428574, + "max": 0.3985714285714286 + }, "related_data": { "qa": { "data_id": [ - "8_748327_800287" + "8_748327_800287@8" ] } } @@ -38692,7 +45269,7 @@ { "Scrapyd-Client的使用": { "data": { - "uuid": "python-4-975", + "uuid": "python-4-984", "seg": [ [ [ @@ -38701,11 +45278,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3985714285714286, + "max": 0.39892857142857147 + }, "related_data": { "qa": { "data_id": [ - "8_7423099_53382483" + "8_7423099_53382483@8" ] } } @@ -38715,7 +45295,7 @@ { "Scrapyd对接Docker": { "data": { - "uuid": "python-4-976", + "uuid": "python-4-985", "seg": [ [ [ @@ -38725,7 +45305,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.39892857142857147, + "max": 0.3992857142857143 + }, "related_data": {} } } @@ -38733,21 +45316,25 @@ { "Scrapyd批量部署": { "data": { - "uuid": "python-4-977", + "uuid": "python-4-986", "seg": [ [ [ "scrapyd", "批量", - "部署" + "部署", + "批量部署" ] ] ], - "level": "2", + "level": { + "min": 0.3992857142857143, + "max": 0.3996428571428572 + }, "related_data": { "qa": { "data_id": [ - "8_367965_394204" + "8_367965_394204@8" ] } } @@ -38757,7 +45344,7 @@ { "Gerapy分布式管理": { "data": { - "uuid": "python-4-978", + "uuid": "python-4-987", "seg": [ [ [ @@ -38767,7 +45354,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3996428571428572, + "max": 0.4 + }, "related_data": {} } } @@ -38780,11 +45370,15 @@ [ "分布式", "爬虫", - "部署" + "部署", + "分布式爬虫" ] ] ], - "level": "2", + "level": { + "min": 0.39821428571428574, + "max": 0.4 + }, "related_data": {} } } @@ -38796,15 +45390,19 @@ [ [ "网络", - "爬虫" + "爬虫", + "网络爬虫" ] ] ], - "level": "1", + "level": { + "min": 0.35, + "max": 0.4 + }, "related_data": { "qa": { "data_id": [ - "8_7457735_53442209" + "8_7457735_53442209@8" ] } } @@ -38820,7 +45418,7 @@ { "Tkinter简介": { "data": { - "uuid": "python-4-979", + "uuid": "python-4-988", "seg": [ [ [ @@ -38829,7 +45427,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4, + "max": 0.4027777777777778 + }, "related_data": {} } } @@ -38837,7 +45438,7 @@ { "安装配置": { "data": { - "uuid": "python-4-980", + "uuid": "python-4-989", "seg": [ [ [ @@ -38846,7 +45447,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4027777777777778, + "max": 0.40555555555555556 + }, "related_data": {} } } @@ -38854,7 +45458,7 @@ { "Tkinter模块": { "data": { - "uuid": "python-4-981", + "uuid": "python-4-990", "seg": [ [ [ @@ -38863,11 +45467,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.40555555555555556, + "max": 0.4083333333333333 + }, "related_data": { "qa": { "data_id": [ - "8_7427193_53391329" + "8_7427193_53391329@8" ] } } @@ -38877,7 +45484,7 @@ { "Tkinter控件": { "data": { - "uuid": "python-4-982", + "uuid": "python-4-991", "seg": [ [ [ @@ -38886,7 +45493,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4083333333333333, + "max": 0.41111111111111115 + }, "related_data": {} } } @@ -38894,16 +45504,20 @@ { "标准属性": { "data": { - "uuid": "python-4-983", + "uuid": "python-4-992", "seg": [ [ [ "标准", - "属性" + "属性", + "标准属性" ] ] ], - "level": "2", + "level": { + "min": 0.41111111111111115, + "max": 0.4138888888888889 + }, "related_data": {} } } @@ -38911,7 +45525,7 @@ { "几何管理": { "data": { - "uuid": "python-4-984", + "uuid": "python-4-993", "seg": [ [ [ @@ -38919,7 +45533,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4138888888888889, + "max": 0.4166666666666667 + }, "related_data": {} } } @@ -38934,14 +45551,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4, + "max": 0.4166666666666667 + }, "related_data": { "qa": { "data_id": [ - "8_1065329_1264447", - "8_1064576_1262838", - "8_1063466_1263016", - "8_1064695_1263017" + "8_1065329_1264447@8", + "8_1064576_1262838@8", + "8_1063466_1263016@8", + "8_1064695_1263017@8" ] } } @@ -38954,7 +45574,7 @@ { "PyQT简介": { "data": { - "uuid": "python-4-985", + "uuid": "python-4-994", "seg": [ [ [ @@ -38963,7 +45583,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4166666666666667, + "max": 0.4185185185185185 + }, "related_data": {} } } @@ -38971,7 +45594,7 @@ { "安装配置": { "data": { - "uuid": "python-4-986", + "uuid": "python-4-995", "seg": [ [ [ @@ -38980,7 +45603,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4185185185185185, + "max": 0.4203703703703704 + }, "related_data": {} } } @@ -38988,7 +45614,7 @@ { "PyQT模块": { "data": { - "uuid": "python-4-987", + "uuid": "python-4-996", "seg": [ [ [ @@ -38997,7 +45623,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4203703703703704, + "max": 0.4222222222222222 + }, "related_data": {} } } @@ -39005,7 +45634,7 @@ { "PyQT布局管理": { "data": { - "uuid": "python-4-988", + "uuid": "python-4-997", "seg": [ [ [ @@ -39015,7 +45644,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4222222222222222, + "max": 0.4240740740740741 + }, "related_data": {} } } @@ -39023,7 +45655,7 @@ { "PyQT菜单和工具栏": { "data": { - "uuid": "python-4-989", + "uuid": "python-4-998", "seg": [ [ [ @@ -39035,7 +45667,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4240740740740741, + "max": 0.42592592592592593 + }, "related_data": {} } } @@ -39043,7 +45678,7 @@ { "事件和信号": { "data": { - "uuid": "python-4-990", + "uuid": "python-4-999", "seg": [ [ [ @@ -39054,7 +45689,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.42592592592592593, + "max": 0.4277777777777778 + }, "related_data": {} } } @@ -39062,7 +45700,7 @@ { "PyQT对话框": { "data": { - "uuid": "python-4-991", + "uuid": "python-4-1000", "seg": [ [ [ @@ -39071,7 +45709,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4277777777777778, + "max": 0.42962962962962964 + }, "related_data": {} } } @@ -39079,7 +45720,7 @@ { "PyQT控件": { "data": { - "uuid": "python-4-992", + "uuid": "python-4-1001", "seg": [ [ [ @@ -39088,7 +45729,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.42962962962962964, + "max": 0.4314814814814815 + }, "related_data": {} } } @@ -39096,7 +45740,7 @@ { "PyQT拖拽与绘图": { "data": { - "uuid": "python-4-993", + "uuid": "python-4-1002", "seg": [ [ [ @@ -39108,7 +45752,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4314814814814815, + "max": 0.43333333333333335 + }, "related_data": {} } } @@ -39123,7 +45770,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4166666666666667, + "max": 0.43333333333333335 + }, "related_data": {} } } @@ -39134,7 +45784,7 @@ { "WxPython简介": { "data": { - "uuid": "python-4-994", + "uuid": "python-4-1003", "seg": [ [ [ @@ -39143,7 +45793,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43333333333333335, + "max": 0.4351851851851852 + }, "related_data": {} } } @@ -39151,7 +45804,7 @@ { "安装配置": { "data": { - "uuid": "python-4-995", + "uuid": "python-4-1004", "seg": [ [ [ @@ -39160,7 +45813,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4351851851851852, + "max": 0.43703703703703706 + }, "related_data": {} } } @@ -39168,7 +45824,7 @@ { "WxPython常用类": { "data": { - "uuid": "python-4-996", + "uuid": "python-4-1005", "seg": [ [ [ @@ -39177,7 +45833,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43703703703703706, + "max": 0.4388888888888889 + }, "related_data": {} } } @@ -39185,7 +45844,7 @@ { "WxPython布局管理": { "data": { - "uuid": "python-4-997", + "uuid": "python-4-1006", "seg": [ [ [ @@ -39195,7 +45854,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4388888888888889, + "max": 0.44074074074074077 + }, "related_data": {} } } @@ -39203,7 +45865,7 @@ { "WxPython事件处理": { "data": { - "uuid": "python-4-998", + "uuid": "python-4-1007", "seg": [ [ [ @@ -39212,20 +45874,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44074074074074077, + "max": 0.4425925925925926 + }, "related_data": { "qa": { "data_id": [ - "8_7456673_53440729", - "8_751536_805177", - "8_693300_570579", - "8_731024_747704", - "8_723518_724316", - "8_7414276_53367040", - "8_7435791_53406800", - "8_655520_466846", - "8_1093424_1302861", - "8_7413778_53366204" + "8_7456673_53440729@8", + "8_751536_805177@8", + "8_693300_570579@8", + "8_731024_747704@8", + "8_723518_724316@8", + "8_7414276_53367040@8", + "8_7435791_53406800@8", + "8_655520_466846@8", + "8_1093424_1302861@8", + "8_7413778_53366204@8" ] } } @@ -39235,7 +45900,7 @@ { "WxPython对话框": { "data": { - "uuid": "python-4-999", + "uuid": "python-4-1008", "seg": [ [ [ @@ -39244,7 +45909,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4425925925925926, + "max": 0.4444444444444445 + }, "related_data": {} } } @@ -39252,7 +45920,7 @@ { "WxPython组件": { "data": { - "uuid": "python-4-1000", + "uuid": "python-4-1009", "seg": [ [ [ @@ -39261,11 +45929,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4444444444444445, + "max": 0.4462962962962963 + }, "related_data": { "qa": { "data_id": [ - "8_705066_605413" + "8_705066_605413@8" ] } } @@ -39275,7 +45946,7 @@ { "WxPython拖拽处理": { "data": { - "uuid": "python-4-1001", + "uuid": "python-4-1010", "seg": [ [ [ @@ -39284,7 +45955,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4462962962962963, + "max": 0.4481481481481482 + }, "related_data": {} } } @@ -39292,7 +45966,7 @@ { "WxPython绘图API": { "data": { - "uuid": "python-4-1002", + "uuid": "python-4-1011", "seg": [ [ [ @@ -39302,7 +45976,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4481481481481482, + "max": 0.45 + }, "related_data": {} } } @@ -39317,11 +45994,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43333333333333335, + "max": 0.45 + }, "related_data": { "qa": { "data_id": [ - "8_371800_398566" + "8_371800_398566@8" ] } } @@ -39339,7 +46019,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4, + "max": 0.45 + }, "related_data": {} } } @@ -39353,17 +46036,21 @@ { "Python总体架构": { "data": { - "uuid": "python-4-1003", + "uuid": "python-4-1012", "seg": [ [ [ "python", "总体", - "架构" + "架构", + "总体架构" ] ] ], - "level": "1", + "level": { + "min": 0.45, + "max": 0.45092592592592595 + }, "related_data": {} } } @@ -39371,7 +46058,7 @@ { "Python源码组织": { "data": { - "uuid": "python-4-1004", + "uuid": "python-4-1013", "seg": [ [ [ @@ -39380,7 +46067,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45092592592592595, + "max": 0.45185185185185184 + }, "related_data": {} } } @@ -39391,7 +46081,7 @@ { "Python内的对象": { "data": { - "uuid": "python-5-599", + "uuid": "python-5-602", "seg": [ [ [ @@ -39400,7 +46090,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45185185185185184, + "max": 0.45195473251028806 + }, "related_data": {} } } @@ -39408,7 +46101,7 @@ { "对象的分类": { "data": { - "uuid": "python-5-600", + "uuid": "python-5-603", "seg": [ [ [ @@ -39417,7 +46110,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45195473251028806, + "max": 0.4520576131687243 + }, "related_data": {} } } @@ -39425,18 +46121,22 @@ { "对象机制的基石—PyObject": { "data": { - "uuid": "python-5-601", + "uuid": "python-5-604", "seg": [ [ [ "对象", "机制", "基石", - "pyobject" + "pyobject", + "对象机制" ] ] ], - "level": "1", + "level": { + "min": 0.4520576131687243, + "max": 0.4521604938271605 + }, "related_data": {} } } @@ -39444,7 +46144,7 @@ { "定长对象和变长对象": { "data": { - "uuid": "python-5-602", + "uuid": "python-5-605", "seg": [ [ [ @@ -39458,7 +46158,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4521604938271605, + "max": 0.4522633744855967 + }, "related_data": {} } } @@ -39466,16 +46169,20 @@ { "类型对象": { "data": { - "uuid": "python-5-603", + "uuid": "python-5-606", "seg": [ [ [ "类型", - "对象" + "对象", + "类型对象" ] ] ], - "level": "1", + "level": { + "min": 0.4522633744855967, + "max": 0.4523662551440329 + }, "related_data": {} } } @@ -39483,7 +46190,7 @@ { "类型的类型": { "data": { - "uuid": "python-5-604", + "uuid": "python-5-607", "seg": [ [ [ @@ -39491,7 +46198,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4523662551440329, + "max": 0.4524691358024691 + }, "related_data": {} } } @@ -39499,7 +46209,7 @@ { "对象的创建": { "data": { - "uuid": "python-5-605", + "uuid": "python-5-608", "seg": [ [ [ @@ -39508,7 +46218,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4524691358024691, + "max": 0.45257201646090534 + }, "related_data": {} } } @@ -39516,7 +46229,7 @@ { "对象的多态性": { "data": { - "uuid": "python-5-606", + "uuid": "python-5-609", "seg": [ [ [ @@ -39525,7 +46238,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45257201646090534, + "max": 0.45267489711934156 + }, "related_data": {} } } @@ -39533,7 +46249,7 @@ { "引用计数": { "data": { - "uuid": "python-5-607", + "uuid": "python-5-610", "seg": [ [ [ @@ -39542,14 +46258,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45267489711934156, + "max": 0.4527777777777778 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1005", + "uuid": "python-4-1014", "seg": [ [ [ @@ -39559,7 +46278,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45185185185185184, + "max": 0.4527777777777778 + }, "related_data": {} } } @@ -39575,7 +46297,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45, + "max": 0.4527777777777778 + }, "related_data": {} } } @@ -39589,7 +46314,7 @@ { "PyLongObject对象": { "data": { - "uuid": "python-5-608", + "uuid": "python-5-611", "seg": [ [ [ @@ -39598,7 +46323,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4527777777777778, + "max": 0.45291005291005293 + }, "related_data": {} } } @@ -39606,16 +46334,20 @@ { "小整数对象": { "data": { - "uuid": "python-5-609", + "uuid": "python-5-612", "seg": [ [ [ "整数", - "对象" + "对象", + "整数对象" ] ] ], - "level": "1", + "level": { + "min": 0.45291005291005293, + "max": 0.453042328042328 + }, "related_data": {} } } @@ -39623,23 +46355,27 @@ { "大整数对象": { "data": { - "uuid": "python-5-610", + "uuid": "python-5-613", "seg": [ [ [ "整数", - "对象" + "对象", + "整数对象" ] ] ], - "level": "1", + "level": { + "min": 0.453042328042328, + "max": 0.4531746031746032 + }, "related_data": { "qa": { "data_id": [ - "8_7399405_53347740", - "8_1014625_1205099", - "8_7451906_53433621", - "8_7431454_53399809" + "8_7399405_53347740@8", + "8_1014625_1205099@8", + "8_7451906_53433621@8", + "8_7431454_53399809@8" ] } } @@ -39648,16 +46384,20 @@ } ], "data": { - "uuid": "python-4-1006", + "uuid": "python-4-1015", "seg": [ [ [ "整数", - "对象" + "对象", + "整数对象" ] ] ], - "level": "1", + "level": { + "min": 0.4527777777777778, + "max": 0.4531746031746032 + }, "related_data": {} } } @@ -39665,25 +46405,29 @@ { "数字格式化输出": { "data": { - "uuid": "python-4-1007", + "uuid": "python-4-1016", "seg": [ [ [ "数字", "格式化", - "输出" + "输出", + "数字格式化" ] ] ], - "level": "1", + "level": { + "min": 0.4531746031746032, + "max": 0.45357142857142857 + }, "related_data": { "qa": { "data_id": [ - "8_7449160_53429209", - "8_7455742_53439060", - "8_887431_1026631", - "8_1089074_1295488", - "8_7399243_53346188" + "8_7449160_53429209@8", + "8_7455742_53439060@8", + "8_887431_1026631@8", + "8_1089074_1295488@8", + "8_7399243_53346188@8" ] } } @@ -39693,7 +46437,7 @@ { "进制转换": { "data": { - "uuid": "python-4-1008", + "uuid": "python-4-1017", "seg": [ [ [ @@ -39702,13 +46446,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45357142857142857, + "max": 0.45396825396825397 + }, "related_data": { "qa": { "data_id": [ - "8_812205_908321", - "8_7428884_53395244", - "8_7409673_53360484" + "8_812205_908321@8", + "8_7428884_53395244@8", + "8_7409673_53360484@8" ] } } @@ -39721,7 +46468,7 @@ { "四舍五入运算": { "data": { - "uuid": "python-5-611", + "uuid": "python-5-614", "seg": [ [ [ @@ -39730,7 +46477,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45396825396825397, + "max": 0.4540343915343915 + }, "related_data": {} } } @@ -39738,7 +46488,7 @@ { "浮点数运算": { "data": { - "uuid": "python-5-612", + "uuid": "python-5-615", "seg": [ [ [ @@ -39747,7 +46497,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4540343915343915, + "max": 0.4541005291005291 + }, "related_data": {} } } @@ -39755,7 +46508,7 @@ { "复数运算": { "data": { - "uuid": "python-5-613", + "uuid": "python-5-616", "seg": [ [ [ @@ -39764,7 +46517,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4541005291005291, + "max": 0.45416666666666666 + }, "related_data": {} } } @@ -39772,7 +46528,7 @@ { "分数运算": { "data": { - "uuid": "python-5-614", + "uuid": "python-5-617", "seg": [ [ [ @@ -39781,7 +46537,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45416666666666666, + "max": 0.4542328042328042 + }, "related_data": {} } } @@ -39789,7 +46548,7 @@ { "大型数组运算": { "data": { - "uuid": "python-5-615", + "uuid": "python-5-618", "seg": [ [ [ @@ -39799,11 +46558,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4542328042328042, + "max": 0.4542989417989418 + }, "related_data": { "qa": { "data_id": [ - "8_827445_924449" + "8_827445_924449@8" ] } } @@ -39813,7 +46575,7 @@ { "矩阵与线性代数运算": { "data": { - "uuid": "python-5-616", + "uuid": "python-5-619", "seg": [ [ [ @@ -39825,14 +46587,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4542989417989418, + "max": 0.45436507936507936 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1009", + "uuid": "python-4-1018", "seg": [ [ [ @@ -39841,20 +46606,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45396825396825397, + "max": 0.45436507936507936 + }, "related_data": { "qa": { "data_id": [ - "8_7403152_53351426", - "8_4646173_29329623", - "8_7398141_53344019", - "8_1052024_1249472", - "8_2054796_11785133", - "8_838007_950915", - "8_756398_811688", - "8_1063635_1261697", - "8_7444281_53422414", - "8_768749_829097" + "8_7403152_53351426@8", + "8_4646173_29329623@8", + "8_7398141_53344019@8", + "8_1052024_1249472@8", + "8_2054796_11785133@8", + "8_838007_950915@8", + "8_756398_811688@8", + "8_1063635_1261697@8", + "8_7444281_53422414@8", + "8_768749_829097@8" ] } } @@ -39864,7 +46632,7 @@ { "字节到大整数的打包与解包": { "data": { - "uuid": "python-4-1010", + "uuid": "python-4-1019", "seg": [ [ [ @@ -39877,7 +46645,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45436507936507936, + "max": 0.45476190476190476 + }, "related_data": {} } } @@ -39885,7 +46656,7 @@ { "无穷大与NaN": { "data": { - "uuid": "python-4-1011", + "uuid": "python-4-1020", "seg": [ [ [ @@ -39896,12 +46667,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45476190476190476, + "max": 0.45515873015873015 + }, "related_data": { "qa": { "data_id": [ - "8_1084095_1290577", - "8_685620_545724" + "8_1084095_1290577@8", + "8_685620_545724@8" ] } } @@ -39911,7 +46685,7 @@ { "随机数": { "data": { - "uuid": "python-4-1012", + "uuid": "python-4-1021", "seg": [ [ [ @@ -39919,7 +46693,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45515873015873015, + "max": 0.45555555555555555 + }, "related_data": {} } } @@ -39931,11 +46708,15 @@ [ [ "数字", - "对象" + "对象", + "数字对象" ] ] ], - "level": "1", + "level": { + "min": 0.4527777777777778, + "max": 0.45555555555555555 + }, "related_data": {} } } @@ -39949,18 +46730,22 @@ { "字符串对象的intern机制": { "data": { - "uuid": "python-5-617", + "uuid": "python-5-620", "seg": [ [ [ "字符串", "对象", "intern", - "机制" + "机制", + "字符串对象" ] ] ], - "level": "1", + "level": { + "min": 0.45555555555555555, + "max": 0.4557098765432099 + }, "related_data": {} } } @@ -39968,7 +46753,7 @@ { "字符串操作效率": { "data": { - "uuid": "python-5-618", + "uuid": "python-5-621", "seg": [ [ [ @@ -39978,11 +46763,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4557098765432099, + "max": 0.4558641975308642 + }, "related_data": { "qa": { "data_id": [ - "8_7431026_53398984" + "8_7431026_53398984@8" ] } } @@ -39991,17 +46779,21 @@ } ], "data": { - "uuid": "python-4-1013", + "uuid": "python-4-1022", "seg": [ [ [ "字符串", "对象", - "解析" + "解析", + "字符串对象" ] ] ], - "level": "1", + "level": { + "min": 0.45555555555555555, + "max": 0.4558641975308642 + }, "related_data": {} } } @@ -40012,7 +46804,7 @@ { "字符串分割": { "data": { - "uuid": "python-5-619", + "uuid": "python-5-622", "seg": [ [ [ @@ -40021,20 +46813,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4558641975308642, + "max": 0.4559082892416226 + }, "related_data": { "qa": { "data_id": [ - "8_2021307_10637837", - "8_768474_828639", - "8_7450334_53430894", - "8_1054489_1251826", - "8_7426188_53389213", - "8_831823_931516", - "8_7436051_53407155", - "8_7431899_53400605", - "8_1102105_1316509", - "8_7438045_53411351" + "8_2021307_10637837@8", + "8_768474_828639@8", + "8_7450334_53430894@8", + "8_1054489_1251826@8", + "8_7426188_53389213@8", + "8_831823_931516@8", + "8_7436051_53407155@8", + "8_7431899_53400605@8", + "8_1102105_1316509@8", + "8_7438045_53411351@8" ] } } @@ -40044,16 +46839,20 @@ { "删除不需要的字符": { "data": { - "uuid": "python-5-620", + "uuid": "python-5-623", "seg": [ [ [ "删除", - "字符" + "字符", + "不需要" ] ] ], - "level": "1", + "level": { + "min": 0.4559082892416226, + "max": 0.45595238095238094 + }, "related_data": {} } } @@ -40061,7 +46860,7 @@ { "字符串清理": { "data": { - "uuid": "python-5-621", + "uuid": "python-5-624", "seg": [ [ [ @@ -40070,7 +46869,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45595238095238094, + "max": 0.4559964726631393 + }, "related_data": {} } } @@ -40078,7 +46880,7 @@ { "字符串对齐": { "data": { - "uuid": "python-5-622", + "uuid": "python-5-625", "seg": [ [ [ @@ -40087,7 +46889,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4559964726631393, + "max": 0.4560405643738977 + }, "related_data": {} } } @@ -40095,7 +46900,7 @@ { "字符串拼接": { "data": { - "uuid": "python-5-623", + "uuid": "python-5-626", "seg": [ [ [ @@ -40104,7 +46909,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4560405643738977, + "max": 0.4560846560846561 + }, "related_data": {} } } @@ -40112,7 +46920,7 @@ { "字符串插入": { "data": { - "uuid": "python-5-624", + "uuid": "python-5-627", "seg": [ [ [ @@ -40121,7 +46929,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4560846560846561, + "max": 0.45612874779541446 + }, "related_data": {} } } @@ -40129,20 +46940,24 @@ { "字符串格式化": { "data": { - "uuid": "python-5-625", + "uuid": "python-5-628", "seg": [ [ [ "字符串", - "格式化" + "格式化", + "字符串格式化" ] ] ], - "level": "1", + "level": { + "min": 0.45612874779541446, + "max": 0.4561728395061728 + }, "related_data": { "qa": { "data_id": [ - "8_7444553_53423196" + "8_7444553_53423196@8" ] } } @@ -40151,7 +46966,7 @@ } ], "data": { - "uuid": "python-4-1014", + "uuid": "python-4-1023", "seg": [ [ [ @@ -40160,7 +46975,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4558641975308642, + "max": 0.4561728395061728 + }, "related_data": {} } } @@ -40171,7 +46989,7 @@ { "字符串开头或结尾匹配": { "data": { - "uuid": "python-5-626", + "uuid": "python-5-629", "seg": [ [ [ @@ -40182,14 +47000,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4561728395061728, + "max": 0.45625 + }, "related_data": { "qa": { "data_id": [ - "8_1055590_1252784", - "8_7408511_53358641", - "8_7404225_53353117", - "8_7448467_53428620" + "8_1055590_1252784@8", + "8_7408511_53358641@8", + "8_7404225_53353117@8", + "8_7448467_53428620@8" ] } } @@ -40199,7 +47020,7 @@ { "用Shell通配符匹配字符串": { "data": { - "uuid": "python-5-627", + "uuid": "python-5-630", "seg": [ [ [ @@ -40210,11 +47031,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45625, + "max": 0.45632716049382716 + }, "related_data": { "qa": { "data_id": [ - "8_962559_1112693" + "8_962559_1112693@8" ] } } @@ -40224,7 +47048,7 @@ { "最短匹配": { "data": { - "uuid": "python-5-628", + "uuid": "python-5-631", "seg": [ [ [ @@ -40233,7 +47057,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45632716049382716, + "max": 0.4564043209876543 + }, "related_data": {} } } @@ -40241,7 +47068,7 @@ { "多行匹配": { "data": { - "uuid": "python-5-629", + "uuid": "python-5-632", "seg": [ [ [ @@ -40249,20 +47076,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4564043209876543, + "max": 0.4564814814814815 + }, "related_data": { "qa": { "data_id": [ - "8_175512_56322", - "8_4645684_29328641", - "8_703171_593922", - "8_7427852_53393100", - "8_391736_436685", - "8_175708_56810", - "8_220737_173812", - "8_761503_819055", - "8_769176_829840", - "8_7407719_53357829" + "8_175512_56322@8", + "8_4645684_29328641@8", + "8_703171_593922@8", + "8_7427852_53393100@8", + "8_391736_436685@8", + "8_175708_56810@8", + "8_220737_173812@8", + "8_761503_819055@8", + "8_769176_829840@8", + "8_7407719_53357829@8" ] } } @@ -40271,7 +47101,7 @@ } ], "data": { - "uuid": "python-4-1015", + "uuid": "python-4-1024", "seg": [ [ [ @@ -40280,7 +47110,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4561728395061728, + "max": 0.4564814814814815 + }, "related_data": {} } } @@ -40291,7 +47124,7 @@ { "字符串搜索替换": { "data": { - "uuid": "python-5-630", + "uuid": "python-5-633", "seg": [ [ [ @@ -40301,14 +47134,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4564814814814815, + "max": 0.4566358024691358 + }, "related_data": { "qa": { "data_id": [ - "8_727241_735904", - "8_739234_772992", - "8_772758_836208", - "8_1065070_1264112" + "8_727241_735904@8", + "8_739234_772992@8", + "8_772758_836208@8", + "8_1065070_1264112@8" ] } } @@ -40318,7 +47154,7 @@ { "字符串忽略大小写的搜索替换": { "data": { - "uuid": "python-5-631", + "uuid": "python-5-634", "seg": [ [ [ @@ -40329,11 +47165,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4566358024691358, + "max": 0.45679012345679015 + }, "related_data": { "qa": { "data_id": [ - "8_7428340_53393931" + "8_7428340_53393931@8" ] } } @@ -40342,7 +47181,7 @@ } ], "data": { - "uuid": "python-4-1016", + "uuid": "python-4-1025", "seg": [ [ [ @@ -40351,7 +47190,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4564814814814815, + "max": 0.45679012345679015 + }, "related_data": {} } } @@ -40359,7 +47201,7 @@ { "将Unicode文本标准化": { "data": { - "uuid": "python-4-1017", + "uuid": "python-4-1026", "seg": [ [ [ @@ -40369,7 +47211,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45679012345679015, + "max": 0.45709876543209876 + }, "related_data": {} } } @@ -40377,7 +47222,7 @@ { "在正则表达式中使用Unicode字符": { "data": { - "uuid": "python-4-1018", + "uuid": "python-4-1027", "seg": [ [ [ @@ -40387,7 +47232,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45709876543209876, + "max": 0.45740740740740743 + }, "related_data": {} } } @@ -40395,7 +47243,7 @@ { "令牌解析": { "data": { - "uuid": "python-4-1019", + "uuid": "python-4-1028", "seg": [ [ [ @@ -40404,7 +47252,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45740740740740743, + "max": 0.4577160493827161 + }, "related_data": {} } } @@ -40412,7 +47263,7 @@ { "简单的递归下降分析器实现": { "data": { - "uuid": "python-4-1020", + "uuid": "python-4-1029", "seg": [ [ [ @@ -40422,7 +47273,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4577160493827161, + "max": 0.4580246913580247 + }, "related_data": {} } } @@ -40430,17 +47284,21 @@ { "字节字符串操作": { "data": { - "uuid": "python-4-1021", + "uuid": "python-4-1030", "seg": [ [ [ "字节", "字符串", - "操作" + "操作", + "字节字符串" ] ] ], - "level": "1", + "level": { + "min": 0.4580246913580247, + "max": 0.45833333333333337 + }, "related_data": {} } } @@ -40455,15 +47313,11 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "8_7457287_53441431", - "8_7409586_53360048" - ] - } - } + "level": { + "min": 0.45555555555555555, + "max": 0.45833333333333337 + }, + "related_data": {} } } }, @@ -40476,17 +47330,21 @@ { "序列对象解析": { "data": { - "uuid": "python-5-632", + "uuid": "python-5-635", "seg": [ [ [ "序列", "对象", - "解析" + "解析", + "序列对象" ] ] ], - "level": "1", + "level": { + "min": 0.45833333333333337, + "max": 0.458390022675737 + }, "related_data": {} } } @@ -40494,7 +47352,7 @@ { "序列解压": { "data": { - "uuid": "python-5-633", + "uuid": "python-5-636", "seg": [ [ [ @@ -40503,14 +47361,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.458390022675737, + "max": 0.45844671201814063 + }, "related_data": { "qa": { "data_id": [ - "8_381898_416048", - "8_7432124_53402042", - "8_380780_413917", - "8_765273_824560" + "8_381898_416048@8", + "8_7432124_53402042@8", + "8_380780_413917@8", + "8_765273_824560@8" ] } } @@ -40520,7 +47381,7 @@ { "序列去重并保持顺序": { "data": { - "uuid": "python-5-634", + "uuid": "python-5-637", "seg": [ [ [ @@ -40530,11 +47391,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45844671201814063, + "max": 0.45850340136054424 + }, "related_data": { "qa": { "data_id": [ - "8_7425671_53387276" + "8_7425671_53387276@8" ] } } @@ -40544,21 +47408,25 @@ { "序列元素统计": { "data": { - "uuid": "python-5-635", + "uuid": "python-5-638", "seg": [ [ [ "序列", "元素", - "统计" + "统计", + "序列元素" ] ] ], - "level": "1", + "level": { + "min": 0.45850340136054424, + "max": 0.4585600907029479 + }, "related_data": { "qa": { "data_id": [ - "8_1064444_1262681" + "8_1064444_1262681@8" ] } } @@ -40568,17 +47436,21 @@ { "过滤序列元素": { "data": { - "uuid": "python-5-636", + "uuid": "python-5-639", "seg": [ [ [ "过滤", "序列", - "元素" + "元素", + "序列元素" ] ] ], - "level": "1", + "level": { + "min": 0.4585600907029479, + "max": 0.4586167800453515 + }, "related_data": {} } } @@ -40586,18 +47458,23 @@ { "序列元素名称映射": { "data": { - "uuid": "python-5-637", + "uuid": "python-5-640", "seg": [ [ [ "序列", "元素", "名称", - "映射" + "映射", + "序列元素", + "元素名称" ] ] ], - "level": "1", + "level": { + "min": 0.4586167800453515, + "max": 0.45867346938775516 + }, "related_data": {} } } @@ -40605,7 +47482,7 @@ { "转换并计算数据": { "data": { - "uuid": "python-5-638", + "uuid": "python-5-641", "seg": [ [ [ @@ -40615,11 +47492,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45867346938775516, + "max": 0.45873015873015877 + }, "related_data": { "qa": { "data_id": [ - "8_1065811_1265133" + "8_1065811_1265133@8" ] } } @@ -40628,7 +47508,7 @@ } ], "data": { - "uuid": "python-4-1022", + "uuid": "python-4-1031", "seg": [ [ [ @@ -40636,7 +47516,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45833333333333337, + "max": 0.45873015873015877 + }, "related_data": {} } } @@ -40647,17 +47530,21 @@ { "字典对象解析": { "data": { - "uuid": "python-5-639", + "uuid": "python-5-642", "seg": [ [ [ "字典", "对象", - "解析" + "解析", + "字典对象" ] ] ], - "level": "1", + "level": { + "min": 0.45873015873015877, + "max": 0.45877976190476194 + }, "related_data": {} } } @@ -40665,7 +47552,7 @@ { "字典映射": { "data": { - "uuid": "python-5-640", + "uuid": "python-5-643", "seg": [ [ [ @@ -40674,7 +47561,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45877976190476194, + "max": 0.4588293650793651 + }, "related_data": {} } } @@ -40682,22 +47572,26 @@ { "字典排序": { "data": { - "uuid": "python-5-641", + "uuid": "python-5-644", "seg": [ [ [ "字典", - "排序" + "排序", + "字典排序" ] ] ], - "level": "1", + "level": { + "min": 0.4588293650793651, + "max": 0.4588789682539683 + }, "related_data": { "qa": { "data_id": [ - "8_744789_791416", - "8_1108757_1429519", - "8_7459736_53444751" + "8_744789_791416@8", + "8_1108757_1429519@8", + "8_7459736_53444751@8" ] } } @@ -40707,7 +47601,7 @@ { "字典运算": { "data": { - "uuid": "python-5-642", + "uuid": "python-5-645", "seg": [ [ [ @@ -40716,7 +47610,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4588789682539683, + "max": 0.45892857142857146 + }, "related_data": {} } } @@ -40724,7 +47621,7 @@ { "字典查找": { "data": { - "uuid": "python-5-643", + "uuid": "python-5-646", "seg": [ [ [ @@ -40733,7 +47630,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45892857142857146, + "max": 0.45897817460317464 + }, "related_data": {} } } @@ -40741,17 +47641,22 @@ { "通过关键字排序字典": { "data": { - "uuid": "python-5-644", + "uuid": "python-5-647", "seg": [ [ [ "关键字", "排序", - "字典" + "字典", + "关键字排序", + "排序字典" ] ] ], - "level": "1", + "level": { + "min": 0.45897817460317464, + "max": 0.4590277777777778 + }, "related_data": {} } } @@ -40759,7 +47664,7 @@ { "字典提取": { "data": { - "uuid": "python-5-645", + "uuid": "python-5-648", "seg": [ [ [ @@ -40768,13 +47673,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4590277777777778, + "max": 0.459077380952381 + }, "related_data": { "qa": { "data_id": [ - "8_771129_833454", - "8_1059157_1256447", - "8_7451163_53432198" + "8_771129_833454@8", + "8_1059157_1256447@8", + "8_7451163_53432198@8" ] } } @@ -40784,7 +47692,7 @@ { "字典合并": { "data": { - "uuid": "python-5-646", + "uuid": "python-5-649", "seg": [ [ [ @@ -40793,11 +47701,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.459077380952381, + "max": 0.45912698412698416 + }, "related_data": { "qa": { "data_id": [ - "8_7399101_53345955" + "8_7399101_53345955@8" ] } } @@ -40806,7 +47717,7 @@ } ], "data": { - "uuid": "python-4-1023", + "uuid": "python-4-1032", "seg": [ [ [ @@ -40814,7 +47725,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45873015873015877, + "max": 0.45912698412698416 + }, "related_data": {} } } @@ -40825,7 +47739,7 @@ { "可迭代对象解压": { "data": { - "uuid": "python-5-647", + "uuid": "python-5-650", "seg": [ [ [ @@ -40835,7 +47749,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45912698412698416, + "max": 0.4592592592592593 + }, "related_data": {} } } @@ -40843,7 +47760,7 @@ { "保留最后N个元素": { "data": { - "uuid": "python-5-648", + "uuid": "python-5-651", "seg": [ [ [ @@ -40853,7 +47770,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4592592592592593, + "max": 0.4593915343915344 + }, "related_data": {} } } @@ -40861,7 +47781,7 @@ { "记录分组": { "data": { - "uuid": "python-5-649", + "uuid": "python-5-652", "seg": [ [ [ @@ -40870,14 +47790,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4593915343915344, + "max": 0.45952380952380956 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1024", + "uuid": "python-4-1033", "seg": [ [ [ @@ -40887,7 +47810,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45912698412698416, + "max": 0.45952380952380956 + }, "related_data": {} } } @@ -40895,7 +47821,7 @@ { "查找最大或最小的N个元素": { "data": { - "uuid": "python-4-1025", + "uuid": "python-4-1034", "seg": [ [ [ @@ -40906,12 +47832,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45952380952380956, + "max": 0.45992063492063495 + }, "related_data": { "qa": { "data_id": [ - "8_7430534_53397624", - "8_753006_807294" + "8_7430534_53397624@8", + "8_753006_807294@8" ] } } @@ -40921,7 +47850,7 @@ { "实现一个优先级队列": { "data": { - "uuid": "python-4-1026", + "uuid": "python-4-1035", "seg": [ [ [ @@ -40930,7 +47859,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45992063492063495, + "max": 0.46031746031746035 + }, "related_data": {} } } @@ -40938,16 +47870,20 @@ { "命名切片": { "data": { - "uuid": "python-4-1027", + "uuid": "python-4-1036", "seg": [ [ [ "命名", - "切片" + "切片", + "命名切片" ] ] ], - "level": "1", + "level": { + "min": 0.46031746031746035, + "max": 0.46071428571428574 + }, "related_data": {} } } @@ -40955,22 +47891,26 @@ { "排序不支持原生比较的对象": { "data": { - "uuid": "python-4-1028", + "uuid": "python-4-1037", "seg": [ [ [ "排序", "支持", "原生", - "对象" + "对象", + "不支持" ] ] ], - "level": "1", + "level": { + "min": 0.46071428571428574, + "max": 0.46111111111111114 + }, "related_data": { "qa": { "data_id": [ - "8_7436992_53415210" + "8_7436992_53415210@8" ] } } @@ -40987,7 +47927,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45833333333333337, + "max": 0.46111111111111114 + }, "related_data": {} } } @@ -41001,7 +47944,7 @@ { "手动遍历迭代器": { "data": { - "uuid": "python-5-650", + "uuid": "python-5-653", "seg": [ [ [ @@ -41012,7 +47955,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.46111111111111114, + "max": 0.4611574074074074 + }, "related_data": {} } } @@ -41020,7 +47966,7 @@ { "代理迭代": { "data": { - "uuid": "python-5-651", + "uuid": "python-5-654", "seg": [ [ [ @@ -41029,12 +47975,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4611574074074074, + "max": 0.4612037037037037 + }, "related_data": { "qa": { "data_id": [ - "8_1099741_1314792", - "8_685273_544907" + "8_1099741_1314792@8", + "8_685273_544907@8" ] } } @@ -41044,7 +47993,7 @@ { "实现迭代协议": { "data": { - "uuid": "python-5-652", + "uuid": "python-5-655", "seg": [ [ [ @@ -41053,7 +48002,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4612037037037037, + "max": 0.46125000000000005 + }, "related_data": {} } } @@ -41061,7 +48013,7 @@ { "反向迭代": { "data": { - "uuid": "python-5-653", + "uuid": "python-5-656", "seg": [ [ [ @@ -41070,11 +48022,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.46125000000000005, + "max": 0.4612962962962963 + }, "related_data": { "qa": { "data_id": [ - "8_688856_555602" + "8_688856_555602@8", + "8_761376_820721@8" ] } } @@ -41084,17 +48040,21 @@ { "迭代器切片": { "data": { - "uuid": "python-5-654", + "uuid": "python-5-657", "seg": [ [ [ "迭代", "器", - "切片" + "切片", + "器切片" ] ] ], - "level": "1", + "level": { + "min": 0.4612962962962963, + "max": 0.4613425925925926 + }, "related_data": {} } } @@ -41102,7 +48062,7 @@ { "跳过可迭代对象的开始部分": { "data": { - "uuid": "python-5-655", + "uuid": "python-5-658", "seg": [ [ [ @@ -41112,11 +48072,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4613425925925926, + "max": 0.4613888888888889 + }, "related_data": { "qa": { "data_id": [ - "8_851824_973103" + "8_851824_973103@8" ] } } @@ -41126,7 +48089,7 @@ { "排列组合的迭代": { "data": { - "uuid": "python-5-656", + "uuid": "python-5-659", "seg": [ [ [ @@ -41135,7 +48098,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4613888888888889, + "max": 0.4614351851851852 + }, "related_data": {} } } @@ -41143,18 +48109,22 @@ { "序列上索引值迭代": { "data": { - "uuid": "python-5-657", + "uuid": "python-5-660", "seg": [ [ [ "序列", "索引", "值", - "迭代" + "迭代", + "索引值" ] ] ], - "level": "1", + "level": { + "min": 0.4614351851851852, + "max": 0.4614814814814815 + }, "related_data": {} } } @@ -41162,7 +48132,7 @@ { "多个序列迭代": { "data": { - "uuid": "python-5-658", + "uuid": "python-5-661", "seg": [ [ [ @@ -41171,7 +48141,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4614814814814815, + "max": 0.46152777777777776 + }, "related_data": {} } } @@ -41179,7 +48152,7 @@ { "集合元素的迭代": { "data": { - "uuid": "python-5-659", + "uuid": "python-5-662", "seg": [ [ [ @@ -41189,7 +48162,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.46152777777777776, + "max": 0.4615740740740741 + }, "related_data": {} } } @@ -41197,7 +48173,7 @@ { "顺序迭代合并后的排序迭代对象": { "data": { - "uuid": "python-5-660", + "uuid": "python-5-663", "seg": [ [ [ @@ -41209,11 +48185,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4615740740740741, + "max": 0.4616203703703704 + }, "related_data": { "qa": { "data_id": [ - "8_7406129_53355534" + "8_7406129_53355534@8" ] } } @@ -41223,7 +48202,7 @@ { "迭代器代替while无限循环": { "data": { - "uuid": "python-5-661", + "uuid": "python-5-664", "seg": [ [ [ @@ -41235,14 +48214,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4616203703703704, + "max": 0.46166666666666667 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1029", + "uuid": "python-4-1038", "seg": [ [ [ @@ -41251,7 +48233,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.46111111111111114, + "max": 0.46166666666666667 + }, "related_data": {} } } @@ -41259,7 +48244,7 @@ { "使用生成器创建新的迭代模式": { "data": { - "uuid": "python-4-1030", + "uuid": "python-4-1039", "seg": [ [ [ @@ -41270,11 +48255,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.46166666666666667, + "max": 0.46222222222222226 + }, "related_data": { "qa": { "data_id": [ - "8_773914_837826" + "8_773914_837826@8" ] } } @@ -41284,7 +48272,7 @@ { "带有外部状态的生成器函数": { "data": { - "uuid": "python-4-1031", + "uuid": "python-4-1040", "seg": [ [ [ @@ -41296,7 +48284,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.46222222222222226, + "max": 0.4627777777777778 + }, "related_data": {} } } @@ -41304,17 +48295,21 @@ { "创建数据处理管道": { "data": { - "uuid": "python-4-1032", + "uuid": "python-4-1041", "seg": [ [ [ "创建", "数据处理", - "管道" + "管道", + "数据处理管道" ] ] ], - "level": "1", + "level": { + "min": 0.4627777777777778, + "max": 0.4633333333333334 + }, "related_data": {} } } @@ -41322,7 +48317,7 @@ { "展开嵌套的序列": { "data": { - "uuid": "python-4-1033", + "uuid": "python-4-1042", "seg": [ [ [ @@ -41332,7 +48327,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4633333333333334, + "max": 0.4638888888888889 + }, "related_data": {} } } @@ -41351,7 +48349,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.46111111111111114, + "max": 0.4638888888888889 + }, "related_data": {} } } @@ -41365,22 +48366,27 @@ { "读/写文本数据": { "data": { - "uuid": "python-5-662", + "uuid": "python-5-665", "seg": [ [ [ "读", "写", "文本", - "数据" + "数据", + "文本数据" ] ] ], - "level": "1", + "level": { + "min": 0.4638888888888889, + "max": 0.46402116402116406 + }, "related_data": { "qa": { "data_id": [ - "8_7443142_53420180" + "8_7443142_53420180@8", + "8_7411280_53362590@8" ] } } @@ -41390,18 +48396,22 @@ { "读/写字节数据": { "data": { - "uuid": "python-5-663", + "uuid": "python-5-666", "seg": [ [ [ "读", "写", "字节", - "数据" + "数据", + "字节数据" ] ] ], - "level": "1", + "level": { + "min": 0.46402116402116406, + "max": 0.46415343915343915 + }, "related_data": {} } } @@ -41409,7 +48419,7 @@ { "读/写压缩文件": { "data": { - "uuid": "python-5-664", + "uuid": "python-5-667", "seg": [ [ [ @@ -41419,20 +48429,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.46415343915343915, + "max": 0.4642857142857143 + }, "related_data": { "qa": { "data_id": [ - "8_7448187_53428228", - "8_7446337_53425511", - "8_7452328_53434256", - "8_7435333_53405891", - "8_878815_1014828", - "8_217013_164815", - "8_7451146_53432180", - "8_7447325_53427042", - "8_7434334_53404698", - "8_7447197_53426716" + "8_7448187_53428228@8", + "8_7446337_53425511@8", + "8_7452328_53434256@8", + "8_7435333_53405891@8", + "8_878815_1014828@8", + "8_217013_164815@8", + "8_7451146_53432180@8", + "8_7447325_53427042@8", + "8_7434334_53404698@8", + "8_7447197_53426716@8" ] } } @@ -41441,7 +48454,7 @@ } ], "data": { - "uuid": "python-4-1034", + "uuid": "python-4-1043", "seg": [ [ [ @@ -41451,7 +48464,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4638888888888889, + "max": 0.4642857142857143 + }, "related_data": {} } } @@ -41462,7 +48478,7 @@ { "文件的写入": { "data": { - "uuid": "python-5-665", + "uuid": "python-5-668", "seg": [ [ [ @@ -41471,11 +48487,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4642857142857143, + "max": 0.46431216931216934 + }, "related_data": { "qa": { "data_id": [ - "8_7427151_53391208" + "8_7427151_53391208@8" ] } } @@ -41485,22 +48504,26 @@ { "操作文件路径名": { "data": { - "uuid": "python-5-666", + "uuid": "python-5-669", "seg": [ [ [ "操作", "文件", - "路径名" + "路径名", + "文件路径名" ] ] ], - "level": "1", + "level": { + "min": 0.46431216931216934, + "max": 0.46433862433862433 + }, "related_data": { "qa": { "data_id": [ - "8_7452190_53434090", - "8_1094253_1304319" + "8_7452190_53434090@8", + "8_1094253_1304319@8" ] } } @@ -41510,7 +48533,7 @@ { "文件检查": { "data": { - "uuid": "python-5-667", + "uuid": "python-5-670", "seg": [ [ [ @@ -41519,7 +48542,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.46433862433862433, + "max": 0.46436507936507937 + }, "related_data": {} } } @@ -41527,21 +48553,25 @@ { "文件列表获取": { "data": { - "uuid": "python-5-668", + "uuid": "python-5-671", "seg": [ [ [ "文件", "列表", - "获取" + "获取", + "文件列表" ] ] ], - "level": "1", + "level": { + "min": 0.46436507936507937, + "max": 0.4643915343915344 + }, "related_data": { "qa": { "data_id": [ - "8_175803_56934" + "8_175803_56934@8" ] } } @@ -41551,16 +48581,21 @@ { "忽略文件名编码": { "data": { - "uuid": "python-5-669", + "uuid": "python-5-672", "seg": [ [ [ "文件名", - "编码" + "编码", + "忽略文件名", + "文件名编码" ] ] ], - "level": "1", + "level": { + "min": 0.4643915343915344, + "max": 0.46441798941798945 + }, "related_data": {} } } @@ -41568,17 +48603,21 @@ { "打印不合法的文件名": { "data": { - "uuid": "python-5-670", + "uuid": "python-5-673", "seg": [ [ [ "打印", "合法", - "文件名" + "文件名", + "不合法" ] ] ], - "level": "1", + "level": { + "min": 0.46441798941798945, + "max": 0.46444444444444444 + }, "related_data": {} } } @@ -41586,22 +48625,26 @@ { "文件编码变更": { "data": { - "uuid": "python-5-671", + "uuid": "python-5-674", "seg": [ [ [ "文件", "编码", - "变更" + "变更", + "文件编码" ] ] ], - "level": "1", + "level": { + "min": 0.46444444444444444, + "max": 0.4644708994708995 + }, "related_data": { "qa": { "data_id": [ - "8_662504_478250", - "8_7425660_53387249" + "8_662504_478250@8", + "8_7425660_53387249@8" ] } } @@ -41611,7 +48654,7 @@ { "在文本文件中写入字节": { "data": { - "uuid": "python-5-672", + "uuid": "python-5-675", "seg": [ [ [ @@ -41621,7 +48664,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4644708994708995, + "max": 0.4644973544973545 + }, "related_data": {} } } @@ -41629,17 +48675,21 @@ { "文件描述符包装": { "data": { - "uuid": "python-5-673", + "uuid": "python-5-676", "seg": [ [ [ "文件", "描述符", - "包装" + "包装", + "文件描述符" ] ] ], - "level": "1", + "level": { + "min": 0.4644973544973545, + "max": 0.46452380952380956 + }, "related_data": {} } } @@ -41647,7 +48697,7 @@ { "创建临时文件和文件夹": { "data": { - "uuid": "python-5-674", + "uuid": "python-5-677", "seg": [ [ [ @@ -41659,7 +48709,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.46452380952380956, + "max": 0.46455026455026455 + }, "related_data": {} } } @@ -41667,7 +48720,7 @@ { "文件迭代": { "data": { - "uuid": "python-5-675", + "uuid": "python-5-678", "seg": [ [ [ @@ -41676,7 +48729,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.46455026455026455, + "max": 0.4645767195767196 + }, "related_data": {} } } @@ -41684,22 +48740,26 @@ { "二进制文件映射": { "data": { - "uuid": "python-5-676", + "uuid": "python-5-679", "seg": [ [ [ "二进制", "文件", - "映射" + "映射", + "二进制文件" ] ] ], - "level": "1", + "level": { + "min": 0.4645767195767196, + "max": 0.46460317460317463 + }, "related_data": { "qa": { "data_id": [ - "8_7395775_53338660", - "8_7409941_53360481" + "8_7395775_53338660@8", + "8_7409941_53360481@8" ] } } @@ -41709,7 +48769,7 @@ { "创建和解压归档文件": { "data": { - "uuid": "python-5-677", + "uuid": "python-5-680", "seg": [ [ [ @@ -41721,7 +48781,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.46460317460317463, + "max": 0.46462962962962967 + }, "related_data": {} } } @@ -41729,7 +48792,7 @@ { "文件查找": { "data": { - "uuid": "python-5-678", + "uuid": "python-5-681", "seg": [ [ [ @@ -41738,7 +48801,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.46462962962962967, + "max": 0.46465608465608466 + }, "related_data": {} } } @@ -41746,7 +48812,7 @@ { "配置文件读取": { "data": { - "uuid": "python-5-679", + "uuid": "python-5-682", "seg": [ [ [ @@ -41755,136 +48821,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.46465608465608466, + "max": 0.4646825396825397 + }, "related_data": {} } } - }, - { - "关闭文件": { - "data": { - "uuid": "python-5-680", - "seg": [ - [ - [ - "关闭", - "文件" - ] - ] - ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "8_7454455_53437156", - "8_685956_546738", - "8_1100143_1315065", - "8_7399989_53347631", - "8_5571133_34167755", - "8_7412977_53364578", - "8_7443483_53421117", - "8_993586_1164323", - "8_760794_817949", - "8_7440160_53415220" - ] - } - } - } - } - }, - { - "打开文件时使用with语句": { - "data": { - "uuid": "python-5-681", - "seg": [ - [ - [ - "打开", - "文件", - "with", - "语句" - ] - ] - ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "8_1095518_1306885", - "8_717875_711337", - "8_750386_803435", - "8_715560_707908", - "8_6982977_49888848", - "8_751402_805020", - "8_1059993_1257437", - "8_7432868_53402453", - "8_7408437_53358653" - ] - } - } - } - } - }, - { - "写入文件内容": { - "data": { - "uuid": "python-5-682", - "seg": [ - [ - [ - "写入", - "文件", - "内容" - ] - ] - ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "8_7416533_53370965", - "8_7419365_53376495", - "8_653804_462925", - "8_1074828_1278752" - ] - } - } - } - } - }, - { - "读取文件": { - "data": { - "uuid": "python-5-683", - "seg": [ - [ - [ - "读取", - "文件" - ] - ] - ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "8_774694_838681", - "8_346673_353417", - "8_959590_1107297", - "8_7440427_53415600", - "8_184707_75083", - "8_7417299_53372136", - "8_323527_314211", - "8_7465041_53451773" - ] - } - } - } - } } ], "data": { - "uuid": "python-4-1035", + "uuid": "python-4-1044", "seg": [ [ [ @@ -41893,7 +48840,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4642857142857143, + "max": 0.4646825396825397 + }, "related_data": {} } } @@ -41901,18 +48851,22 @@ { "使用分隔符或行终止符打印": { "data": { - "uuid": "python-4-1036", + "uuid": "python-4-1045", "seg": [ [ [ "分隔符", "行", "终止符", - "打印" + "打印", + "行终止符" ] ] ], - "level": "1", + "level": { + "min": 0.4646825396825397, + "max": 0.4650793650793651 + }, "related_data": {} } } @@ -41920,7 +48874,7 @@ { "字符串的I/O操作": { "data": { - "uuid": "python-4-1037", + "uuid": "python-4-1046", "seg": [ [ [ @@ -41931,15 +48885,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4650793650793651, + "max": 0.4654761904761905 + }, "related_data": { "qa": { "data_id": [ - "8_7444320_53422435", - "8_921754_1057441", - "8_1071986_1274126", - "8_7461650_53446831", - "8_7413794_53366168" + "8_7444320_53422435@8", + "8_921754_1057441@8", + "8_1071986_1274126@8", + "8_7461650_53446831@8", + "8_7413794_53366168@8" ] } } @@ -41949,7 +48906,7 @@ { "可变缓冲区中二进制数据的读取": { "data": { - "uuid": "python-4-1038", + "uuid": "python-4-1047", "seg": [ [ [ @@ -41957,11 +48914,15 @@ "缓冲区", "二进制", "数据", - "读取" + "读取", + "二进制数据" ] ] ], - "level": "1", + "level": { + "min": 0.4654761904761905, + "max": 0.4658730158730159 + }, "related_data": {} } } @@ -41969,7 +48930,7 @@ { "串行端口的数据通信": { "data": { - "uuid": "python-4-1039", + "uuid": "python-4-1048", "seg": [ [ [ @@ -41979,7 +48940,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4658730158730159, + "max": 0.4662698412698413 + }, "related_data": {} } } @@ -41987,16 +48951,20 @@ { "对象序列化": { "data": { - "uuid": "python-4-1040", + "uuid": "python-4-1049", "seg": [ [ [ "对象", - "序列化" + "序列化", + "对象序列化" ] ] ], - "level": "1", + "level": { + "min": 0.4662698412698413, + "max": 0.4666666666666667 + }, "related_data": {} } } @@ -42015,7 +48983,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4638888888888889, + "max": 0.4666666666666667 + }, "related_data": {} } } @@ -42029,7 +49000,7 @@ { "CSV数据读/写": { "data": { - "uuid": "python-5-684", + "uuid": "python-5-683", "seg": [ [ [ @@ -42040,12 +49011,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4666666666666667, + "max": 0.4668055555555556 + }, "related_data": { "qa": { "data_id": [ - "8_7427532_53393548", - "8_748584_800598" + "8_7427532_53393548@8", + "8_748584_800598@8" ] } } @@ -42055,7 +49029,7 @@ { "JSON数据读/写": { "data": { - "uuid": "python-5-685", + "uuid": "python-5-684", "seg": [ [ [ @@ -42066,7 +49040,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4668055555555556, + "max": 0.46694444444444444 + }, "related_data": {} } } @@ -42074,7 +49051,7 @@ { "二进制数组数据读/写": { "data": { - "uuid": "python-5-686", + "uuid": "python-5-685", "seg": [ [ [ @@ -42082,15 +49059,20 @@ "数组", "数据", "读", - "写" + "写", + "二进制数组", + "数组数据" ] ] ], - "level": "1", + "level": { + "min": 0.46694444444444444, + "max": 0.4670833333333333 + }, "related_data": { "qa": { "data_id": [ - "8_1071215_1273039" + "8_1071215_1273039@8" ] } } @@ -42100,7 +49082,7 @@ { "嵌套和可变长二进制数据读取": { "data": { - "uuid": "python-5-687", + "uuid": "python-5-686", "seg": [ [ [ @@ -42111,18 +49093,22 @@ "长", "二进制", "数据", - "读取" + "读取", + "二进制数据" ] ] ], - "level": "1", + "level": { + "min": 0.4670833333333333, + "max": 0.4672222222222222 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1041", + "uuid": "python-4-1050", "seg": [ [ [ @@ -42132,7 +49118,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4666666666666667, + "max": 0.4672222222222222 + }, "related_data": {} } } @@ -42143,7 +49132,7 @@ { "简单XML数据解析": { "data": { - "uuid": "python-5-688", + "uuid": "python-5-687", "seg": [ [ [ @@ -42153,17 +49142,20 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4672222222222222, + "max": 0.4674074074074074 + }, "related_data": { "qa": { "data_id": [ - "8_7121511_51052702", - "8_743705_788514", - "8_7439463_53414129", - "8_7461228_53446311", - "8_7439766_53414492", - "8_7446011_53425062", - "8_7415926_53369553" + "8_7121511_51052702@8", + "8_743705_788514@8", + "8_7439463_53414129@8", + "8_7461228_53446311@8", + "8_7439766_53414492@8", + "8_7446011_53425062@8", + "8_7415926_53369553@8" ] } } @@ -42173,7 +49165,7 @@ { "解析XML文档": { "data": { - "uuid": "python-5-689", + "uuid": "python-5-688", "seg": [ [ [ @@ -42183,7 +49175,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4674074074074074, + "max": 0.4675925925925926 + }, "related_data": {} } } @@ -42191,7 +49186,7 @@ { "修改XML": { "data": { - "uuid": "python-5-690", + "uuid": "python-5-689", "seg": [ [ [ @@ -42200,12 +49195,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4675925925925926, + "max": 0.4677777777777778 + }, "related_data": { "qa": { "data_id": [ - "8_372812_403203", - "8_856683_982292" + "8_372812_403203@8", + "8_856683_982292@8" ] } } @@ -42214,7 +49212,7 @@ } ], "data": { - "uuid": "python-4-1042", + "uuid": "python-4-1051", "seg": [ [ [ @@ -42224,7 +49222,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4672222222222222, + "max": 0.4677777777777778 + }, "related_data": {} } } @@ -42232,7 +49233,7 @@ { "字典转换为XML": { "data": { - "uuid": "python-4-1043", + "uuid": "python-4-1052", "seg": [ [ [ @@ -42242,7 +49243,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4677777777777778, + "max": 0.4683333333333333 + }, "related_data": {} } } @@ -42250,18 +49254,22 @@ { "与关系型数据库的交互": { "data": { - "uuid": "python-4-1044", + "uuid": "python-4-1053", "seg": [ [ [], [ "关系", "数据库", - "交互" + "交互", + "关系型" ] ] ], - "level": "1", + "level": { + "min": 0.4683333333333333, + "max": 0.4688888888888889 + }, "related_data": {} } } @@ -42272,28 +49280,32 @@ { "十六进制数编码和解码": { "data": { - "uuid": "python-5-691", + "uuid": "python-5-690", "seg": [ [ [ "十六进制", "数", - "编码" + "编码", + "数编码" ], [ "解码" ] ] ], - "level": "1", + "level": { + "min": 0.4688888888888889, + "max": 0.4691666666666667 + }, "related_data": { "qa": { "data_id": [ - "8_350942_359942", - "8_7436880_53409217", - "8_7431064_53399025", - "8_1089095_1295967", - "8_7445159_53423714" + "8_350942_359942@8", + "8_7436880_53409217@8", + "8_7431064_53399025@8", + "8_1089095_1295967@8", + "8_7445159_53423714@8" ] } } @@ -42303,7 +49315,7 @@ { "编码/解码Base64数据": { "data": { - "uuid": "python-5-692", + "uuid": "python-5-691", "seg": [ [ [ @@ -42314,15 +49326,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4691666666666667, + "max": 0.46944444444444444 + }, "related_data": { "qa": { "data_id": [ - "8_1102246_1316619", - "8_237152_216885", - "8_4646351_29329955", - "8_693232_570403", - "8_716916_709991" + "8_1102246_1316619@8", + "8_237152_216885@8", + "8_693232_570403@8", + "8_716916_709991@8" ] } } @@ -42331,7 +49345,7 @@ } ], "data": { - "uuid": "python-4-1045", + "uuid": "python-4-1054", "seg": [ [ [ @@ -42340,7 +49354,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4688888888888889, + "max": 0.46944444444444444 + }, "related_data": {} } } @@ -42356,7 +49373,10 @@ [] ] ], - "level": "1", + "level": { + "min": 0.4666666666666667, + "max": 0.46944444444444444 + }, "related_data": {} } } @@ -42370,31 +49390,35 @@ { "有默认参数的函数定义": { "data": { - "uuid": "python-5-693", + "uuid": "python-5-692", "seg": [ [ [ "默认", "参数", "函数", - "定义" + "定义", + "函数定义" ] ] ], - "level": "1", + "level": { + "min": 0.46944444444444444, + "max": 0.46958333333333335 + }, "related_data": { "qa": { "data_id": [ - "8_7403514_53352023", - "8_7398553_53344867", - "8_7409305_53359690", - "8_771909_834988", - "8_7443075_53420102", - "8_7439664_53414130", - "8_7434731_53405170", - "8_7452461_53434465", - "8_7455354_53438228", - "8_767205_826712" + "8_7403514_53352023@8", + "8_7398553_53344867@8", + "8_7409305_53359690@8", + "8_771909_834988@8", + "8_7443075_53420102@8", + "8_7439664_53414130@8", + "8_7434731_53405170@8", + "8_7452461_53434465@8", + "8_7455354_53438228@8", + "8_767205_826712@8" ] } } @@ -42404,42 +49428,44 @@ { "匿名或内联函数定义": { "data": { - "uuid": "python-5-694", + "uuid": "python-5-693", "seg": [ [ [ "匿名", "内联", "函数", - "定义" + "定义", + "内联函数", + "函数定义" ] ] ], - "level": "1", + "level": { + "min": 0.46958333333333335, + "max": 0.4697222222222222 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1046", + "uuid": "python-4-1055", "seg": [ [ [ "函数", - "定义" + "定义", + "函数定义" ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "8_7433766_53404068", - "8_7433763_53404067" - ] - } - } + "level": { + "min": 0.46944444444444444, + "max": 0.4697222222222222 + }, + "related_data": {} } } }, @@ -42449,18 +49475,22 @@ { "接收任意数量参数": { "data": { - "uuid": "python-5-695", + "uuid": "python-5-694", "seg": [ [ [ "接收", "任意", "数量", - "参数" + "参数", + "数量参数" ] ] ], - "level": "1", + "level": { + "min": 0.4697222222222222, + "max": 0.46979166666666666 + }, "related_data": {} } } @@ -42468,17 +49498,21 @@ { "接收关键字参数": { "data": { - "uuid": "python-5-696", + "uuid": "python-5-695", "seg": [ [ [ "接收", "关键字", - "参数" + "参数", + "关键字参数" ] ] ], - "level": "1", + "level": { + "min": 0.46979166666666666, + "max": 0.46986111111111106 + }, "related_data": {} } } @@ -42486,7 +49520,7 @@ { "为参数增加元信息": { "data": { - "uuid": "python-5-697", + "uuid": "python-5-696", "seg": [ [ [ @@ -42496,12 +49530,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.46986111111111106, + "max": 0.4699305555555555 + }, "related_data": { "qa": { "data_id": [ - "8_7436472_53408489", - "8_7423314_53383134" + "8_7436472_53408489@8" ] } } @@ -42511,24 +49547,28 @@ { "减少参数个数": { "data": { - "uuid": "python-5-698", + "uuid": "python-5-697", "seg": [ [ [ "减少", "参数", - "个数" + "个数", + "参数个数" ] ] ], - "level": "1", + "level": { + "min": 0.4699305555555555, + "max": 0.47 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1047", + "uuid": "python-4-1056", "seg": [ [ [ @@ -42537,7 +49577,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4697222222222222, + "max": 0.47 + }, "related_data": {} } } @@ -42545,7 +49588,7 @@ { "返回多个值的函数": { "data": { - "uuid": "python-4-1048", + "uuid": "python-4-1057", "seg": [ [ [ @@ -42555,7 +49598,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.47, + "max": 0.4702777777777778 + }, "related_data": {} } } @@ -42563,7 +49609,7 @@ { "类转换为函数": { "data": { - "uuid": "python-4-1049", + "uuid": "python-4-1058", "seg": [ [ [ @@ -42573,11 +49619,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4702777777777778, + "max": 0.47055555555555556 + }, "related_data": { "qa": { "data_id": [ - "8_5144767_34402885" + "8_5144767_34402885@8" ] } } @@ -42590,7 +49639,7 @@ { "有额外状态信息的回调函数": { "data": { - "uuid": "python-5-699", + "uuid": "python-5-698", "seg": [ [ [ @@ -42598,11 +49647,15 @@ "状态", "信息", "回调", - "函数" + "函数", + "状态信息" ] ] ], - "level": "1", + "level": { + "min": 0.47055555555555556, + "max": 0.4706944444444444 + }, "related_data": {} } } @@ -42610,7 +49663,7 @@ { "内联回调函数": { "data": { - "uuid": "python-5-700", + "uuid": "python-5-699", "seg": [ [ [ @@ -42620,14 +49673,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4706944444444444, + "max": 0.4708333333333333 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1050", + "uuid": "python-4-1059", "seg": [ [ [ @@ -42636,7 +49692,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.47055555555555556, + "max": 0.4708333333333333 + }, "related_data": {} } } @@ -42647,7 +49706,7 @@ { "创建一个函数": { "data": { - "uuid": "python-5-701", + "uuid": "python-5-700", "seg": [ [ [ @@ -42656,19 +49715,22 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4708333333333333, + "max": 0.47097222222222224 + }, "related_data": { "qa": { "data_id": [ - "8_773507_837502", - "8_7426070_53388802", - "8_7426068_53388815", - "8_7452156_53434000", - "8_231634_203069", - "8_7419067_53376075", - "8_771657_834330", - "8_1263418_3475211", - "8_1090287_1297066" + "8_773507_837502@8", + "8_7426070_53388802@8", + "8_7426068_53388815@8", + "8_7452156_53434000@8", + "8_231634_203069@8", + "8_7419067_53376075@8", + "8_771657_834330@8", + "8_1263418_3475211@8", + "8_1090287_1297066@8" ] } } @@ -42678,7 +49740,7 @@ { "调用函数": { "data": { - "uuid": "python-5-702", + "uuid": "python-5-701", "seg": [ [ [ @@ -42686,14 +49748,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.47097222222222224, + "max": 0.4711111111111111 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1051", + "uuid": "python-4-1060", "seg": [ [ [ @@ -42705,7 +49770,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4708333333333333, + "max": 0.4711111111111111 + }, "related_data": {} } } @@ -42716,18 +49784,22 @@ { "了解形式参数和实际参数": { "data": { - "uuid": "python-5-703", + "uuid": "python-5-702", "seg": [ [ [ "形式参数" ], [ - "参数" + "参数", + "实际参数" ] ] ], - "level": "1", + "level": { + "min": 0.4711111111111111, + "max": 0.4711666666666666 + }, "related_data": {} } } @@ -42735,7 +49807,7 @@ { "位置参数": { "data": { - "uuid": "python-5-704", + "uuid": "python-5-703", "seg": [ [ [ @@ -42744,31 +49816,31 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "8_7430233_53397286", - "8_7461764_53446982" - ] - } - } + "level": { + "min": 0.4711666666666666, + "max": 0.4712222222222222 + }, + "related_data": {} } } }, { "关键字参数": { "data": { - "uuid": "python-5-705", + "uuid": "python-5-704", "seg": [ [ [ "关键字", - "参数" + "参数", + "关键字参数" ] ] ], - "level": "1", + "level": { + "min": 0.4712222222222222, + "max": 0.47127777777777774 + }, "related_data": {} } } @@ -42776,7 +49848,7 @@ { "为参数设置默认值": { "data": { - "uuid": "python-5-706", + "uuid": "python-5-705", "seg": [ [ [ @@ -42785,7 +49857,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.47127777777777774, + "max": 0.4713333333333333 + }, "related_data": {} } } @@ -42793,7 +49868,7 @@ { "可变参数": { "data": { - "uuid": "python-5-707", + "uuid": "python-5-706", "seg": [ [ [ @@ -42802,14 +49877,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4713333333333333, + "max": 0.47138888888888886 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1052", + "uuid": "python-4-1061", "seg": [ [ [ @@ -42817,7 +49895,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4711111111111111, + "max": 0.47138888888888886 + }, "related_data": {} } } @@ -42825,7 +49906,7 @@ { "返回值": { "data": { - "uuid": "python-4-1053", + "uuid": "python-4-1062", "seg": [ [ [ @@ -42833,7 +49914,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.47138888888888886, + "max": 0.4716666666666667 + }, "related_data": {} } } @@ -42844,7 +49928,7 @@ { "局部变量": { "data": { - "uuid": "python-5-708", + "uuid": "python-5-707", "seg": [ [ [ @@ -42852,7 +49936,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4716666666666667, + "max": 0.4718055555555556 + }, "related_data": {} } } @@ -42860,7 +49947,7 @@ { "全局变量": { "data": { - "uuid": "python-5-709", + "uuid": "python-5-708", "seg": [ [ [ @@ -42868,21 +49955,17 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "8_7429424_53396302", - "8_1090458_1297324" - ] - } - } + "level": { + "min": 0.4718055555555556, + "max": 0.47194444444444444 + }, + "related_data": {} } } } ], "data": { - "uuid": "python-4-1054", + "uuid": "python-4-1063", "seg": [ [ [ @@ -42891,12 +49974,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4716666666666667, + "max": 0.47194444444444444 + }, "related_data": { "qa": { "data_id": [ - "8_7433376_53403578", - "8_7438894_53412339" + "8_7433376_53403578@8", + "8_7438894_53412339@8" ] } } @@ -42906,7 +49992,7 @@ { "匿名函数": { "data": { - "uuid": "python-4-1055", + "uuid": "python-4-1064", "seg": [ [ [ @@ -42915,7 +50001,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.47194444444444444, + "max": 0.4722222222222222 + }, "related_data": {} } } @@ -42930,7 +50019,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.46944444444444444, + "max": 0.4722222222222222 + }, "related_data": {} } } @@ -42944,22 +50036,26 @@ { "函数添加装饰器": { "data": { - "uuid": "python-5-710", + "uuid": "python-5-709", "seg": [ [ [ "函数", "添加", "装饰", - "器" + "器", + "装饰器" ] ] ], - "level": "1", + "level": { + "min": 0.4722222222222222, + "max": 0.4722400284900285 + }, "related_data": { "qa": { "data_id": [ - "8_1067953_1268416" + "8_1067953_1268416@8" ] } } @@ -42969,7 +50065,7 @@ { "装饰器中保留函数元信息": { "data": { - "uuid": "python-5-711", + "uuid": "python-5-710", "seg": [ [ [ @@ -42977,11 +50073,15 @@ "器", "保留", "函数", - "信息" + "信息", + "装饰器" ] ] ], - "level": "1", + "level": { + "min": 0.4722400284900285, + "max": 0.4722578347578347 + }, "related_data": {} } } @@ -42989,23 +50089,27 @@ { "解除装饰器": { "data": { - "uuid": "python-5-712", + "uuid": "python-5-711", "seg": [ [ [ "解除", "装饰", - "器" + "器", + "装饰器" ] ] ], - "level": "1", + "level": { + "min": 0.4722578347578347, + "max": 0.472275641025641 + }, "related_data": { "qa": { "data_id": [ - "8_698224_584953", - "8_7412935_53364487", - "8_1082008_1287825" + "8_698224_584953@8", + "8_7412935_53364487@8", + "8_1082008_1287825@8" ] } } @@ -43015,25 +50119,28 @@ { "带参数的装饰器": { "data": { - "uuid": "python-5-713", + "uuid": "python-5-712", "seg": [ [ [ "带", "参数", "装饰", - "器" + "器", + "装饰器" ] ] ], - "level": "1", + "level": { + "min": 0.472275641025641, + "max": 0.4722934472934473 + }, "related_data": { "qa": { "data_id": [ - "8_1054413_1251678", - "8_7453451_53436168", - "8_7430452_53397530", - "8_7430478_53397565" + "8_1054413_1251678@8", + "8_7453451_53436168@8", + "8_7430478_53397565@8" ] } } @@ -43043,18 +50150,22 @@ { "装饰器自定义属性": { "data": { - "uuid": "python-5-714", + "uuid": "python-5-713", "seg": [ [ [ "装饰", "器", "自定义", - "属性" + "属性", + "装饰器" ] ] ], - "level": "1", + "level": { + "min": 0.4722934472934473, + "max": 0.47231125356125353 + }, "related_data": {} } } @@ -43062,7 +50173,7 @@ { "带可选参数的装饰器": { "data": { - "uuid": "python-5-715", + "uuid": "python-5-714", "seg": [ [ [ @@ -43070,11 +50181,15 @@ "可选", "参数", "装饰", - "器" + "器", + "装饰器" ] ] ], - "level": "1", + "level": { + "min": 0.47231125356125353, + "max": 0.4723290598290598 + }, "related_data": {} } } @@ -43082,7 +50197,7 @@ { "函数的类型检查": { "data": { - "uuid": "python-5-716", + "uuid": "python-5-715", "seg": [ [ [ @@ -43092,7 +50207,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4723290598290598, + "max": 0.4723468660968661 + }, "related_data": {} } } @@ -43100,18 +50218,23 @@ { "类中定义装饰器": { "data": { - "uuid": "python-5-717", + "uuid": "python-5-716", "seg": [ [ [ "类", "定义", "装饰", - "器" + "器", + "定义装饰", + "装饰器" ] ] ], - "level": "1", + "level": { + "min": 0.4723468660968661, + "max": 0.47236467236467233 + }, "related_data": {} } } @@ -43119,17 +50242,22 @@ { "装饰器定义为类": { "data": { - "uuid": "python-5-718", + "uuid": "python-5-717", "seg": [ [ [ "装饰", "器", - "定义" + "定义", + "装饰器", + "器定义" ] ] ], - "level": "1", + "level": { + "min": 0.47236467236467233, + "max": 0.4723824786324786 + }, "related_data": {} } } @@ -43137,7 +50265,7 @@ { "类和静态方法的装饰器": { "data": { - "uuid": "python-5-719", + "uuid": "python-5-718", "seg": [ [ [ @@ -43146,11 +50274,15 @@ [ "静态方法", "装饰", - "器" + "器", + "装饰器" ] ] ], - "level": "1", + "level": { + "min": 0.4723824786324786, + "max": 0.4724002849002849 + }, "related_data": {} } } @@ -43158,7 +50290,7 @@ { "给函数增加参数": { "data": { - "uuid": "python-5-720", + "uuid": "python-5-719", "seg": [ [ [ @@ -43168,11 +50300,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4724002849002849, + "max": 0.47241809116809114 + }, "related_data": { "qa": { "data_id": [ - "8_5884522_37226974" + "8_5884522_37226974@8" ] } } @@ -43182,7 +50317,7 @@ { "扩充类的功能": { "data": { - "uuid": "python-5-721", + "uuid": "python-5-720", "seg": [ [ [ @@ -43192,30 +50327,31 @@ ] ] ], - "level": "1", + "level": { + "min": 0.47241809116809114, + "max": 0.4724358974358974 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1056", + "uuid": "python-4-1065", "seg": [ [ [ "装饰", - "器" + "器", + "装饰器" ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "8_750243_803136" - ] - } - } + "level": { + "min": 0.4722222222222222, + "max": 0.4724358974358974 + }, + "related_data": {} } } }, @@ -43225,7 +50361,7 @@ { "元类定义可选参数": { "data": { - "uuid": "python-5-722", + "uuid": "python-5-721", "seg": [ [ [ @@ -43235,11 +50371,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4724358974358974, + "max": 0.47264957264957264 + }, "related_data": { "qa": { "data_id": [ - "8_235866_215290" + "8_235866_215290@8" ] } } @@ -43248,7 +50387,7 @@ } ], "data": { - "uuid": "python-4-1057", + "uuid": "python-4-1066", "seg": [ [ [ @@ -43256,34 +50395,34 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "8_5649701_35331453", - "8_7428863_53395321", - "8_7445414_53424014" - ] - } - } + "level": { + "min": 0.4724358974358974, + "max": 0.47264957264957264 + }, + "related_data": {} } } }, { "类的属性定义顺序": { "data": { - "uuid": "python-4-1058", + "uuid": "python-4-1067", "seg": [ [ [ "类", "属性", "定义", - "顺序" + "顺序", + "属性定义", + "定义顺序" ] ] ], - "level": "1", + "level": { + "min": 0.47264957264957264, + "max": 0.47286324786324785 + }, "related_data": {} } } @@ -43291,7 +50430,7 @@ { "强制参数签名": { "data": { - "uuid": "python-4-1059", + "uuid": "python-4-1068", "seg": [ [ [ @@ -43301,7 +50440,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.47286324786324785, + "max": 0.47307692307692306 + }, "related_data": {} } } @@ -43309,17 +50451,21 @@ { "强制使用编程规约": { "data": { - "uuid": "python-4-1060", + "uuid": "python-4-1069", "seg": [ [ [ "强制", "编程", - "规约" + "规约", + "编程规约" ] ] ], - "level": "1", + "level": { + "min": 0.47307692307692306, + "max": 0.4732905982905983 + }, "related_data": {} } } @@ -43327,18 +50473,24 @@ { "以编程方式定义类": { "data": { - "uuid": "python-4-1061", + "uuid": "python-4-1070", "seg": [ [ [ "编程", "方式", "定义", - "类" + "类", + "编程方式", + "方式定义", + "定义类" ] ] ], - "level": "1", + "level": { + "min": 0.4732905982905983, + "max": 0.4735042735042735 + }, "related_data": {} } } @@ -43346,7 +50498,7 @@ { "初始化类的成员": { "data": { - "uuid": "python-4-1062", + "uuid": "python-4-1071", "seg": [ [ [ @@ -43356,7 +50508,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4735042735042735, + "max": 0.4737179487179487 + }, "related_data": {} } } @@ -43364,7 +50519,7 @@ { "利用注解实现方法重载": { "data": { - "uuid": "python-4-1063", + "uuid": "python-4-1072", "seg": [ [ [ @@ -43375,7 +50530,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4737179487179487, + "max": 0.4739316239316239 + }, "related_data": {} } } @@ -43383,17 +50541,21 @@ { "避免重复的属性方法": { "data": { - "uuid": "python-4-1064", + "uuid": "python-4-1073", "seg": [ [ [ "重复", "属性", - "方法" + "方法", + "属性方法" ] ] ], - "level": "1", + "level": { + "min": 0.4739316239316239, + "max": 0.4741452991452991 + }, "related_data": {} } } @@ -43401,7 +50563,7 @@ { "定义上下文管理器": { "data": { - "uuid": "python-4-1065", + "uuid": "python-4-1074", "seg": [ [ [ @@ -43411,7 +50573,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4741452991452991, + "max": 0.47435897435897434 + }, "related_data": {} } } @@ -43419,17 +50584,21 @@ { "局部变量域中执行代码": { "data": { - "uuid": "python-4-1066", + "uuid": "python-4-1075", "seg": [ [ [ "局部变量", "域", - "执行" + "执行", + "局部变量域" ] ] ], - "level": "1", + "level": { + "min": 0.47435897435897434, + "max": 0.47457264957264955 + }, "related_data": {} } } @@ -43437,7 +50606,7 @@ { "Python源码解析": { "data": { - "uuid": "python-4-1067", + "uuid": "python-4-1076", "seg": [ [ [ @@ -43446,7 +50615,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.47457264957264955, + "max": 0.47478632478632476 + }, "related_data": {} } } @@ -43454,18 +50626,22 @@ { "Python字节码拆解": { "data": { - "uuid": "python-4-1068", + "uuid": "python-4-1077", "seg": [ [ [ "python", "字节", "码", - "拆解" + "拆解", + "字节码" ] ] ], - "level": "1", + "level": { + "min": 0.47478632478632476, + "max": 0.475 + }, "related_data": {} } } @@ -43480,16 +50656,11 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "8_7452918_53435555", - "8_7431428_53399747", - "8_7445151_53423698" - ] - } - } + "level": { + "min": 0.4722222222222222, + "max": 0.475 + }, + "related_data": {} } } }, @@ -43502,7 +50673,7 @@ { "线程的启动与停止": { "data": { - "uuid": "python-5-723", + "uuid": "python-5-722", "seg": [ [ [ @@ -43514,11 +50685,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.475, + "max": 0.4750566893424036 + }, "related_data": { "qa": { "data_id": [ - "8_7418793_53375289" + "8_7418793_53375289@8" ] } } @@ -43528,7 +50702,7 @@ { "线程判断": { "data": { - "uuid": "python-5-724", + "uuid": "python-5-723", "seg": [ [ [ @@ -43537,14 +50711,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4750566893424036, + "max": 0.47511337868480724 + }, "related_data": { "qa": { "data_id": [ - "8_7430810_53398326", - "8_7430220_53397261", - "8_7416666_53371061", - "8_7436922_53409437" + "8_7430810_53398326@8", + "8_7430220_53397261@8", + "8_7416666_53371061@8", + "8_7436922_53409437@8" ] } } @@ -43554,16 +50731,20 @@ { "线程间通信": { "data": { - "uuid": "python-5-725", + "uuid": "python-5-724", "seg": [ [ [ "线程", - "间通信" + "间通信", + "线程间通信" ] ] ], - "level": "2", + "level": { + "min": 0.47511337868480724, + "max": 0.47517006802721085 + }, "related_data": {} } } @@ -43571,7 +50752,7 @@ { "线程加锁": { "data": { - "uuid": "python-5-726", + "uuid": "python-5-725", "seg": [ [ [ @@ -43580,7 +50761,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.47517006802721085, + "max": 0.4752267573696145 + }, "related_data": {} } } @@ -43588,7 +50772,7 @@ { "防止死锁": { "data": { - "uuid": "python-5-727", + "uuid": "python-5-726", "seg": [ [ [ @@ -43596,7 +50780,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4752267573696145, + "max": 0.4752834467120181 + }, "related_data": {} } } @@ -43604,18 +50791,23 @@ { "线程状态信息保存": { "data": { - "uuid": "python-5-728", + "uuid": "python-5-727", "seg": [ [ [ "线程", "状态", "信息", - "保存" + "保存", + "线程状态", + "状态信息" ] ] ], - "level": "2", + "level": { + "min": 0.4752834467120181, + "max": 0.47534013605442177 + }, "related_data": {} } } @@ -43623,21 +50815,25 @@ { "创建线程池": { "data": { - "uuid": "python-5-729", + "uuid": "python-5-728", "seg": [ [ [ "创建", "线程", - "池" + "池", + "线程池" ] ] ], - "level": "2", + "level": { + "min": 0.47534013605442177, + "max": 0.4753968253968254 + }, "related_data": { "qa": { "data_id": [ - "8_7428377_53394095" + "8_7428377_53394095@8" ] } } @@ -43646,7 +50842,7 @@ } ], "data": { - "uuid": "python-4-1069", + "uuid": "python-4-1078", "seg": [ [ [ @@ -43654,7 +50850,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.475, + "max": 0.4753968253968254 + }, "related_data": {} } } @@ -43662,7 +50861,7 @@ { "并行编程": { "data": { - "uuid": "python-4-1070", + "uuid": "python-4-1079", "seg": [ [ [ @@ -43671,7 +50870,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4753968253968254, + "max": 0.47579365079365077 + }, "related_data": {} } } @@ -43679,16 +50881,20 @@ { "Actor任务定义": { "data": { - "uuid": "python-4-1071", + "uuid": "python-4-1080", "seg": [ [ [ "actor", - "定义" + "定义", + "任务定义" ] ] ], - "level": "2", + "level": { + "min": 0.47579365079365077, + "max": 0.47619047619047616 + }, "related_data": {} } } @@ -43696,7 +50902,7 @@ { "消息发布/订阅模型": { "data": { - "uuid": "python-4-1072", + "uuid": "python-4-1081", "seg": [ [ [ @@ -43707,7 +50913,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.47619047619047616, + "max": 0.4765873015873016 + }, "related_data": {} } } @@ -43715,7 +50924,7 @@ { "生成器代替线程": { "data": { - "uuid": "python-4-1073", + "uuid": "python-4-1082", "seg": [ [ [ @@ -43724,7 +50933,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4765873015873016, + "max": 0.476984126984127 + }, "related_data": {} } } @@ -43732,17 +50944,21 @@ { "线程队列轮询": { "data": { - "uuid": "python-4-1074", + "uuid": "python-4-1083", "seg": [ [ [ "线程", "队列", - "轮询" + "轮询", + "线程队列" ] ] ], - "level": "2", + "level": { + "min": 0.476984126984127, + "max": 0.4773809523809524 + }, "related_data": {} } } @@ -43750,7 +50966,7 @@ { "守护进程": { "data": { - "uuid": "python-4-1075", + "uuid": "python-4-1084", "seg": [ [ [ @@ -43759,7 +50975,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4773809523809524, + "max": 0.4777777777777778 + }, "related_data": {} } } @@ -43775,7 +50994,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.475, + "max": 0.4777777777777778 + }, "related_data": {} } } @@ -43786,7 +51008,7 @@ { "脚本接收": { "data": { - "uuid": "python-4-1076", + "uuid": "python-4-1085", "seg": [ [ [ @@ -43795,12 +51017,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4777777777777778, + "max": 0.47808641975308647 + }, "related_data": { "qa": { "data_id": [ - "8_7460188_53445249", - "8_769484_830444" + "8_7460188_53445249@8", + "8_769484_830444@8" ] } } @@ -43810,7 +51035,7 @@ { "终止程序": { "data": { - "uuid": "python-4-1077", + "uuid": "python-4-1086", "seg": [ [ [ @@ -43819,7 +51044,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.47808641975308647, + "max": 0.4783950617283951 + }, "related_data": {} } } @@ -43827,17 +51055,21 @@ { "解析命令行选项": { "data": { - "uuid": "python-4-1078", + "uuid": "python-4-1087", "seg": [ [ [ "解析", "命令行", - "选项" + "选项", + "命令行选项" ] ] ], - "level": "1", + "level": { + "min": 0.4783950617283951, + "max": 0.47870370370370374 + }, "related_data": {} } } @@ -43845,7 +51077,7 @@ { "弹出密码输入提示": { "data": { - "uuid": "python-4-1079", + "uuid": "python-4-1088", "seg": [ [ [ @@ -43857,13 +51089,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.47870370370370374, + "max": 0.47901234567901235 + }, "related_data": { "qa": { "data_id": [ - "8_7435249_53405757", - "8_7396383_53339905", - "8_7451063_53432123" + "8_7435249_53405757@8", + "8_7396383_53339905@8", + "8_7451063_53432123@8" ] } } @@ -43873,7 +51108,7 @@ { "执行外部命令": { "data": { - "uuid": "python-4-1080", + "uuid": "python-4-1089", "seg": [ [ [ @@ -43882,12 +51117,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.47901234567901235, + "max": 0.479320987654321 + }, "related_data": { "qa": { "data_id": [ - "8_7412807_53364821", - "8_7424160_53385314" + "8_7412807_53364821@8", + "8_7424160_53385314@8" ] } } @@ -43900,18 +51138,22 @@ { "脚本增加日志功能": { "data": { - "uuid": "python-5-730", + "uuid": "python-5-729", "seg": [ [ [ "脚本", "增加", "日志", - "功能" + "功能", + "日志功能" ] ] ], - "level": "1", + "level": { + "min": 0.479320987654321, + "max": 0.4794753086419753 + }, "related_data": {} } } @@ -43919,25 +51161,29 @@ { "函数库增加日志功能": { "data": { - "uuid": "python-5-731", + "uuid": "python-5-730", "seg": [ [ [ "函数库", "增加", "日志", - "功能" + "功能", + "日志功能" ] ] ], - "level": "1", + "level": { + "min": 0.4794753086419753, + "max": 0.47962962962962963 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1081", + "uuid": "python-4-1090", "seg": [ [ [ @@ -43946,7 +51192,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.479320987654321, + "max": 0.47962962962962963 + }, "related_data": {} } } @@ -43954,7 +51203,7 @@ { "实现计时器": { "data": { - "uuid": "python-4-1082", + "uuid": "python-4-1091", "seg": [ [ [ @@ -43962,7 +51211,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.47962962962962963, + "max": 0.4799382716049383 + }, "related_data": {} } } @@ -43970,7 +51222,7 @@ { "内存和CPU监测": { "data": { - "uuid": "python-4-1083", + "uuid": "python-4-1092", "seg": [ [ [ @@ -43982,7 +51234,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4799382716049383, + "max": 0.4802469135802469 + }, "related_data": {} } } @@ -43990,7 +51245,7 @@ { "启动Web浏览器": { "data": { - "uuid": "python-4-1084", + "uuid": "python-4-1093", "seg": [ [ [ @@ -44000,7 +51255,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4802469135802469, + "max": 0.48055555555555557 + }, "related_data": {} } } @@ -44012,14 +51270,18 @@ [ [ "脚本", - "编程" + "编程", + "脚本编程" ], [ "系统管理" ] ] ], - "level": "1", + "level": { + "min": 0.4777777777777778, + "max": 0.48055555555555557 + }, "related_data": {} } } @@ -44030,17 +51292,21 @@ { "Python内存架构": { "data": { - "uuid": "python-4-1085", + "uuid": "python-4-1094", "seg": [ [ [ "python", "内存", - "架构" + "架构", + "内存架构" ] ] ], - "level": "1", + "level": { + "min": 0.48055555555555557, + "max": 0.48125 + }, "related_data": {} } } @@ -44051,7 +51317,7 @@ { "block": { "data": { - "uuid": "python-5-732", + "uuid": "python-5-731", "seg": [ [ [ @@ -44059,7 +51325,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48125, + "max": 0.4814236111111111 + }, "related_data": {} } } @@ -44067,7 +51336,7 @@ { "pool": { "data": { - "uuid": "python-5-733", + "uuid": "python-5-732", "seg": [ [ [ @@ -44075,7 +51344,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4814236111111111, + "max": 0.48159722222222223 + }, "related_data": {} } } @@ -44083,7 +51355,7 @@ { "arena": { "data": { - "uuid": "python-5-734", + "uuid": "python-5-733", "seg": [ [ [ @@ -44091,7 +51363,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48159722222222223, + "max": 0.48177083333333337 + }, "related_data": {} } } @@ -44099,20 +51374,24 @@ { "内存池": { "data": { - "uuid": "python-5-735", + "uuid": "python-5-734", "seg": [ [ [ "内存", - "池" + "池", + "内存池" ] ] ], - "level": "1", + "level": { + "min": 0.48177083333333337, + "max": 0.48194444444444445 + }, "related_data": { "qa": { "data_id": [ - "8_7453010_53435577" + "8_7453010_53435577@8" ] } } @@ -44121,17 +51400,21 @@ } ], "data": { - "uuid": "python-4-1086", + "uuid": "python-4-1095", "seg": [ [ [ "空间", "内存", - "池" + "池", + "内存池" ] ] ], - "level": "1", + "level": { + "min": 0.48125, + "max": 0.48194444444444445 + }, "related_data": {} } } @@ -44142,24 +51425,29 @@ { "三色标记模型": { "data": { - "uuid": "python-5-736", + "uuid": "python-5-735", "seg": [ [ [ "色", "标记", - "模型" + "模型", + "色标记", + "标记模型" ] ] ], - "level": "1", + "level": { + "min": 0.48194444444444445, + "max": 0.4826388888888889 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1087", + "uuid": "python-4-1096", "seg": [ [ [ @@ -44170,7 +51458,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48194444444444445, + "max": 0.4826388888888889 + }, "related_data": {} } } @@ -44181,17 +51472,21 @@ { "可收集对象链表": { "data": { - "uuid": "python-5-737", + "uuid": "python-5-736", "seg": [ [ [ "收集", "对象", - "链表" + "链表", + "对象链表" ] ] ], - "level": "1", + "level": { + "min": 0.4826388888888889, + "max": 0.4828703703703704 + }, "related_data": {} } } @@ -44199,17 +51494,21 @@ { "分代垃圾收集": { "data": { - "uuid": "python-5-738", + "uuid": "python-5-737", "seg": [ [ [ "分代", "垃圾", - "收集" + "收集", + "分代垃圾" ] ] ], - "level": "1", + "level": { + "min": 0.4828703703703704, + "max": 0.48310185185185184 + }, "related_data": {} } } @@ -44217,7 +51516,7 @@ { "Python中的标记—清除方法": { "data": { - "uuid": "python-5-739", + "uuid": "python-5-738", "seg": [ [ [ @@ -44228,14 +51527,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48310185185185184, + "max": 0.48333333333333334 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1088", + "uuid": "python-4-1097", "seg": [ [ [ @@ -44245,7 +51547,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4826388888888889, + "max": 0.48333333333333334 + }, "related_data": {} } } @@ -44258,11 +51563,15 @@ [ "python", "内存", - "管理机制" + "管理机制", + "内存管理机制" ] ] ], - "level": "1", + "level": { + "min": 0.48055555555555557, + "max": 0.48333333333333334 + }, "related_data": {} } } @@ -44276,16 +51585,21 @@ { "先使程序可以正常工作": { "data": { - "uuid": "python-5-740", + "uuid": "python-5-739", "seg": [ [ [ "程序", - "工作" + "工作", + "先使", + "正常工作" ] ] ], - "level": "1", + "level": { + "min": 0.48333333333333334, + "max": 0.48356481481481484 + }, "related_data": {} } } @@ -44293,7 +51607,7 @@ { "从用户的角度进行": { "data": { - "uuid": "python-5-741", + "uuid": "python-5-740", "seg": [ [ [ @@ -44302,7 +51616,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48356481481481484, + "max": 0.4837962962962963 + }, "related_data": {} } } @@ -44310,7 +51627,7 @@ { "保证代码易读": { "data": { - "uuid": "python-5-742", + "uuid": "python-5-741", "seg": [ [ [ @@ -44319,14 +51636,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4837962962962963, + "max": 0.4840277777777778 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1089", + "uuid": "python-4-1098", "seg": [ [ [ @@ -44335,7 +51655,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48333333333333334, + "max": 0.4840277777777778 + }, "related_data": {} } } @@ -44346,7 +51669,7 @@ { "寻找其他原因": { "data": { - "uuid": "python-5-743", + "uuid": "python-5-742", "seg": [ [ [ @@ -44355,17 +51678,20 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4840277777777778, + "max": 0.4842592592592593 + }, "related_data": { "qa": { "data_id": [ - "8_7398114_53343976", - "8_7445002_53423579", - "8_7413918_53366158", - "8_7425006_53386187", - "8_7440009_53414867", - "8_7460903_53446041", - "8_4646498_29330404" + "8_7398114_53343976@8", + "8_7445002_53423579@8", + "8_7413918_53366158@8", + "8_7425006_53386187@8", + "8_7440009_53414867@8", + "8_7460903_53446041@8", + "8_4646498_29330404@8" ] } } @@ -44375,16 +51701,20 @@ { "度量硬件": { "data": { - "uuid": "python-5-744", + "uuid": "python-5-743", "seg": [ [ [ "度量", - "硬件" + "硬件", + "度量硬件" ] ] ], - "level": "1", + "level": { + "min": 0.4842592592592593, + "max": 0.4844907407407407 + }, "related_data": {} } } @@ -44392,24 +51722,28 @@ { "编写速度测试代码": { "data": { - "uuid": "python-5-745", + "uuid": "python-5-744", "seg": [ [ [ "编写", "速度", - "测试代码" + "测试代码", + "速度测试代码" ] ] ], - "level": "1", + "level": { + "min": 0.4844907407407407, + "max": 0.4847222222222222 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1090", + "uuid": "python-4-1099", "seg": [ [ [ @@ -44418,7 +51752,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4840277777777778, + "max": 0.4847222222222222 + }, "related_data": {} } } @@ -44429,7 +51766,7 @@ { "剖析CPU使用情况": { "data": { - "uuid": "python-5-746", + "uuid": "python-5-745", "seg": [ [ [ @@ -44439,11 +51776,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4847222222222222, + "max": 0.48506944444444444 + }, "related_data": { "qa": { "data_id": [ - "8_1064492_1262788" + "8_1064492_1262788@8" ] } } @@ -44453,7 +51793,7 @@ { "剖析内存使用情况": { "data": { - "uuid": "python-5-747", + "uuid": "python-5-746", "seg": [ [ [ @@ -44463,14 +51803,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48506944444444444, + "max": 0.48541666666666666 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1091", + "uuid": "python-4-1100", "seg": [ [ [ @@ -44479,7 +51822,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4847222222222222, + "max": 0.48541666666666666 + }, "related_data": {} } } @@ -44490,7 +51836,7 @@ { "测量回路复杂度": { "data": { - "uuid": "python-5-748", + "uuid": "python-5-747", "seg": [ [ [ @@ -44500,7 +51846,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48541666666666666, + "max": 0.48564814814814816 + }, "related_data": {} } } @@ -44508,7 +51857,7 @@ { "测量大O记号": { "data": { - "uuid": "python-5-749", + "uuid": "python-5-748", "seg": [ [ [ @@ -44518,7 +51867,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48564814814814816, + "max": 0.4858796296296296 + }, "related_data": {} } } @@ -44526,7 +51878,7 @@ { "简化": { "data": { - "uuid": "python-5-750", + "uuid": "python-5-749", "seg": [ [ [ @@ -44534,11 +51886,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4858796296296296, + "max": 0.4861111111111111 + }, "related_data": { "qa": { "data_id": [ - "8_7401718_53349446" + "8_7401718_53349446@8" ] } } @@ -44547,7 +51902,7 @@ } ], "data": { - "uuid": "python-4-1092", + "uuid": "python-4-1101", "seg": [ [ [ @@ -44556,7 +51911,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48541666666666666, + "max": 0.4861111111111111 + }, "related_data": {} } } @@ -44575,7 +51933,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48333333333333334, + "max": 0.4861111111111111 + }, "related_data": {} } } @@ -44589,17 +51950,21 @@ { "因特网客户端简介": { "data": { - "uuid": "python-5-751", + "uuid": "python-5-750", "seg": [ [ [ "因特网", "客户端", - "简介" + "简介", + "因特网客户端" ] ] ], - "level": "2", + "level": { + "min": 0.4861111111111111, + "max": 0.48626543209876544 + }, "related_data": {} } } @@ -44616,11 +51981,15 @@ [ "文件传输", "因特网", - "协议" + "协议", + "因特网协议" ] ] ], - "level": "2", + "level": { + "min": 0.48626543209876544, + "max": 0.4862911522633745 + }, "related_data": {} } } @@ -44637,7 +52006,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4862911522633745, + "max": 0.48631687242798355 + }, "related_data": {} } } @@ -44656,7 +52028,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48631687242798355, + "max": 0.4863425925925926 + }, "related_data": {} } } @@ -44674,7 +52049,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4863425925925926, + "max": 0.4863683127572016 + }, "related_data": {} } } @@ -44689,11 +52067,15 @@ "客户端", "ftp", "程序", - "示例" + "示例", + "程序示例" ] ] ], - "level": "2", + "level": { + "min": 0.4863683127572016, + "max": 0.48639403292181066 + }, "related_data": {} } } @@ -44710,11 +52092,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48639403292181066, + "max": 0.4864197530864197 + }, "related_data": { "qa": { "data_id": [ - "8_1061625_1259458" + "8_1061625_1259458@8" ] } } @@ -44723,7 +52108,7 @@ } ], "data": { - "uuid": "python-5-752", + "uuid": "python-5-751", "seg": [ [ [ @@ -44731,7 +52116,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48626543209876544, + "max": 0.4864197530864197 + }, "related_data": {} } } @@ -44753,7 +52141,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4864197530864197, + "max": 0.48644547325102877 + }, "related_data": {} } } @@ -44771,7 +52162,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.48644547325102877, + "max": 0.4864711934156378 + }, "related_data": {} } } @@ -44790,7 +52184,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4864711934156378, + "max": 0.4864969135802469 + }, "related_data": {} } } @@ -44808,7 +52205,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4864969135802469, + "max": 0.48652263374485594 + }, "related_data": {} } } @@ -44826,7 +52226,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48652263374485594, + "max": 0.486548353909465 + }, "related_data": {} } } @@ -44843,14 +52246,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.486548353909465, + "max": 0.48657407407407405 + }, "related_data": {} } } } ], "data": { - "uuid": "python-5-753", + "uuid": "python-5-752", "seg": [ [ [ @@ -44858,24 +52264,32 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4864197530864197, + "max": 0.48657407407407405 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1093", + "uuid": "python-4-1102", "seg": [ [ [ "因特网", "客户端", - "编程" + "编程", + "因特网客户端", + "客户端编程" ] ] ], - "level": "1", + "level": { + "min": 0.4861111111111111, + "max": 0.48657407407407405 + }, "related_data": {} } } @@ -44886,7 +52300,7 @@ { "thread模块": { "data": { - "uuid": "python-5-754", + "uuid": "python-5-753", "seg": [ [ [ @@ -44895,7 +52309,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48657407407407405, + "max": 0.48666666666666664 + }, "related_data": {} } } @@ -44915,7 +52332,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48666666666666664, + "max": 0.48671296296296296 + }, "related_data": {} } } @@ -44933,12 +52353,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48671296296296296, + "max": 0.4867592592592592 + }, "related_data": { "qa": { "data_id": [ - "8_1090457_1297431", - "8_225783_187579" + "8_1090457_1297431@8", + "8_225783_187579@8" ] } } @@ -44947,7 +52370,7 @@ } ], "data": { - "uuid": "python-5-755", + "uuid": "python-5-754", "seg": [ [ [ @@ -44956,7 +52379,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48666666666666664, + "max": 0.4867592592592592 + }, "related_data": {} } } @@ -44964,7 +52390,7 @@ { "单线程和多线程执行对比": { "data": { - "uuid": "python-5-756", + "uuid": "python-5-755", "seg": [ [ [ @@ -44976,11 +52402,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4867592592592592, + "max": 0.48685185185185187 + }, "related_data": { "qa": { "data_id": [ - "8_689219_556764" + "8_689219_556764@8" ] } } @@ -45003,7 +52432,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48685185185185187, + "max": 0.486875 + }, "related_data": {} } } @@ -45016,15 +52448,19 @@ [ [ "同步", - "原语" + "原语", + "同步原语" ] ] ], - "level": "1", + "level": { + "min": 0.486875, + "max": 0.48689814814814814 + }, "related_data": { "qa": { "data_id": [ - "8_7445863_53424952" + "8_7445863_53424952@8" ] } } @@ -45043,7 +52479,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48689814814814814, + "max": 0.4869212962962963 + }, "related_data": {} } } @@ -45056,18 +52495,22 @@ [ [ "信号量", - "示例" + "示例", + "信号量示例" ] ] ], - "level": "1", + "level": { + "min": 0.4869212962962963, + "max": 0.48694444444444446 + }, "related_data": {} } } } ], "data": { - "uuid": "python-5-757", + "uuid": "python-5-756", "seg": [ [ [ @@ -45076,15 +52519,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48685185185185187, + "max": 0.48694444444444446 + }, "related_data": { "qa": { "data_id": [ - "8_688948_555847", - "8_756864_812080", - "8_650141_456571", - "8_7413180_53364999", - "8_696441_580397" + "8_688948_555847@8", + "8_756864_812080@8", + "8_650141_456571@8", + "8_7413180_53364999@8", + "8_696441_580397@8" ] } } @@ -45106,11 +52552,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48694444444444446, + "max": 0.4869753086419753 + }, "related_data": { "qa": { "data_id": [ - "8_938609_1252393" + "8_938609_1252393@8" ] } } @@ -45129,7 +52578,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4869753086419753, + "max": 0.4870061728395062 + }, "related_data": {} } } @@ -45147,27 +52599,34 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4870061728395062, + "max": 0.48703703703703705 + }, "related_data": {} } } } ], "data": { - "uuid": "python-5-758", + "uuid": "python-5-757", "seg": [ [ [ "线程", - "方案" + "方案", + "替代方案" ] ] ], - "level": "1", + "level": { + "min": 0.48694444444444446, + "max": 0.48703703703703705 + }, "related_data": { "qa": { "data_id": [ - "8_978246_1136950" + "8_978246_1136950@8" ] } } @@ -45176,7 +52635,7 @@ } ], "data": { - "uuid": "python-4-1094", + "uuid": "python-4-1103", "seg": [ [ [ @@ -45185,7 +52644,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48657407407407405, + "max": 0.48703703703703705 + }, "related_data": {} } } @@ -45208,11 +52670,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48703703703703705, + "max": 0.4870756172839506 + }, "related_data": { "qa": { "data_id": [ - "8_1091884_1299540" + "8_1091884_1299540@8" ] } } @@ -45231,13 +52696,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4870756172839506, + "max": 0.4871141975308642 + }, "related_data": { "qa": { "data_id": [ - "8_7400925_53349070", - "8_199904_119126", - "8_1093030_1302028" + "8_7400925_53349070@8", + "8_199904_119126@8", + "8_1093030_1302028@8" ] } } @@ -45259,7 +52727,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4871141975308642, + "max": 0.48715277777777777 + }, "related_data": {} } } @@ -45282,7 +52753,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48715277777777777, + "max": 0.4871913580246913 + }, "related_data": {} } } @@ -45300,7 +52774,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4871913580246913, + "max": 0.48722993827160493 + }, "related_data": {} } } @@ -45318,20 +52795,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48722993827160493, + "max": 0.4872685185185185 + }, "related_data": { "qa": { "data_id": [ - "8_7409209_53359543", - "8_227956_193131", - "8_7418023_53373974", - "8_760153_816728", - "8_7438717_53412138", - "8_7449330_53429401", - "8_1098697_1313417", - "8_7386004_53337209", - "8_7416714_53371058", - "8_160312_27673" + "8_7409209_53359543@8", + "8_227956_193131@8", + "8_7418023_53373974@8", + "8_760153_816728@8", + "8_7438717_53412138@8", + "8_7449330_53429401@8", + "8_1098697_1313417@8", + "8_7386004_53337209@8", + "8_7416714_53371058@8", + "8_160312_27673@8" ] } } @@ -45340,7 +52820,7 @@ } ], "data": { - "uuid": "python-5-759", + "uuid": "python-5-758", "seg": [ [ [ @@ -45349,7 +52829,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48703703703703705, + "max": 0.4872685185185185 + }, "related_data": {} } } @@ -45371,7 +52854,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4872685185185185, + "max": 0.48732638888888885 + }, "related_data": {} } } @@ -45389,7 +52875,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48732638888888885, + "max": 0.4873842592592592 + }, "related_data": {} } } @@ -45408,7 +52897,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4873842592592592, + "max": 0.48744212962962963 + }, "related_data": {} } } @@ -45425,14 +52917,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48744212962962963, + "max": 0.4875 + }, "related_data": {} } } } ], "data": { - "uuid": "python-5-760", + "uuid": "python-5-759", "seg": [ [ [ @@ -45441,14 +52936,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4872685185185185, + "max": 0.4875 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1095", + "uuid": "python-4-1104", "seg": [ [ [ @@ -45457,7 +52955,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48703703703703705, + "max": 0.4875 + }, "related_data": {} } } @@ -45476,11 +52977,15 @@ [ [ "模块", - "属性" + "属性", + "模块属性" ] ] ], - "level": "1", + "level": { + "min": 0.4875, + "max": 0.4875192901234568 + }, "related_data": {} } } @@ -45497,7 +53002,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4875192901234568, + "max": 0.48753858024691354 + }, "related_data": {} } } @@ -45514,13 +53022,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48753858024691354, + "max": 0.48755787037037035 + }, "related_data": { "qa": { "data_id": [ - "8_381274_414840", - "8_7437545_53411027", - "8_1092442_1300378" + "8_381274_414840@8", + "8_7437545_53411027@8", + "8_1092442_1300378@8" ] } } @@ -45538,7 +53049,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48755787037037035, + "max": 0.48757716049382716 + }, "related_data": {} } } @@ -45552,11 +53066,15 @@ [ "数据库", "适配器", - "示例" + "示例", + "数据库适配器" ] ] ], - "level": "1", + "level": { + "min": 0.48757716049382716, + "max": 0.4875964506172839 + }, "related_data": {} } } @@ -45570,18 +53088,23 @@ [ "数据库", "适配器", - "示例" + "示例", + "数据库适配器", + "适配器示例" ] ] ], - "level": "1", + "level": { + "min": 0.4875964506172839, + "max": 0.4876157407407407 + }, "related_data": {} } } } ], "data": { - "uuid": "python-5-761", + "uuid": "python-5-760", "seg": [ [ [ @@ -45591,11 +53114,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4875, + "max": 0.4876157407407407 + }, "related_data": { "qa": { "data_id": [ - "8_7424761_53386318" + "8_7424761_53386318@8" ] } } @@ -45617,7 +53143,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4876157407407407, + "max": 0.4876446759259259 + }, "related_data": {} } } @@ -45632,11 +53161,17 @@ "员工", "角色", "数据库", - "示例" + "示例", + "员工角色", + "角色数据库", + "数据库示例" ] ] ], - "level": "1", + "level": { + "min": 0.4876446759259259, + "max": 0.48767361111111107 + }, "related_data": {} } } @@ -45652,12 +53187,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48767361111111107, + "max": 0.4877025462962963 + }, "related_data": { "qa": { "data_id": [ - "8_666634_487817", - "8_1061585_1259489" + "8_666634_487817@8", + "8_1061585_1259489@8" ] } } @@ -45675,14 +53213,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4877025462962963, + "max": 0.4877314814814815 + }, "related_data": {} } } } ], "data": { - "uuid": "python-5-762", + "uuid": "python-5-761", "seg": [ [ [ @@ -45690,7 +53231,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4876157407407407, + "max": 0.4877314814814815 + }, "related_data": {} } } @@ -45710,22 +53254,29 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4877314814814815, + "max": 0.4878472222222222 + }, "related_data": {} } } } ], "data": { - "uuid": "python-5-763", + "uuid": "python-5-762", "seg": [ [ [ - "关系数据库" + "关系数据库", + "非关系数据库" ] ] ], - "level": "1", + "level": { + "min": 0.4877314814814815, + "max": 0.4878472222222222 + }, "related_data": {} } } @@ -45733,7 +53284,7 @@ { "相关文献": { "data": { - "uuid": "python-5-764", + "uuid": "python-5-763", "seg": [ [ [ @@ -45742,27 +53293,34 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4878472222222222, + "max": 0.48796296296296293 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1096", + "uuid": "python-4-1105", "seg": [ [ [ "数据库", - "编程" + "编程", + "数据库编程" ] ] ], - "level": "1", + "level": { + "min": 0.4875, + "max": 0.48796296296296293 + }, "related_data": { "qa": { "data_id": [ - "8_7453245_53435963" + "8_7453245_53435963@8" ] } } @@ -45788,20 +53346,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.48796296296296293, + "max": 0.4880208333333333 + }, "related_data": { "qa": { "data_id": [ - "8_675661_510740", - "8_5649730_36820927", - "8_693001_569579", - "8_7461686_53446922", - "8_1063618_1261677", - "8_7395899_53338951", - "8_7450467_53431132", - "8_7439332_53413599", - "8_7446542_53425998", - "8_7451851_53433627" + "8_675661_510740@8", + "8_5649730_36820927@8", + "8_693001_569579@8", + "8_7461686_53446922@8", + "8_1063618_1261677@8", + "8_7395899_53338951@8", + "8_7450467_53431132@8", + "8_7439332_53413599@8", + "8_7446542_53425998@8", + "8_7451851_53433627@8" ] } } @@ -45819,16 +53380,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4880208333333333, + "max": 0.48807870370370365 + }, "related_data": { "qa": { "data_id": [ - "8_675807_511796", - "8_235675_214891", - "8_737510_767519", - "8_716392_709149", - "8_724717_727505", - "8_7400525_53348462" + "8_675807_511796@8", + "8_235675_214891@8", + "8_737510_767519@8", + "8_716392_709149@8", + "8_724717_727505@8", + "8_7400525_53348462@8" ] } } @@ -45837,18 +53401,22 @@ } ], "data": { - "uuid": "python-5-765", + "uuid": "python-5-764", "seg": [ [ [ "python", "com", "客户端", - "编程" + "编程", + "客户端编程" ] ] ], - "level": "1", + "level": { + "min": 0.48796296296296293, + "max": 0.48807870370370365 + }, "related_data": {} } } @@ -45867,7 +53435,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48807870370370365, + "max": 0.48810763888888886 + }, "related_data": {} } } @@ -45883,7 +53454,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48810763888888886, + "max": 0.48813657407407407 + }, "related_data": {} } } @@ -45899,7 +53473,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48813657407407407, + "max": 0.4881655092592592 + }, "related_data": {} } } @@ -45915,23 +53492,30 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4881655092592592, + "max": 0.48819444444444443 + }, "related_data": {} } } } ], "data": { - "uuid": "python-5-766", + "uuid": "python-5-765", "seg": [ [ [ "入门", - "示例" + "示例", + "入门示例" ] ] ], - "level": "1", + "level": { + "min": 0.48807870370370365, + "max": 0.48819444444444443 + }, "related_data": {} } } @@ -45950,7 +53534,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48819444444444443, + "max": 0.48823302469135804 + }, "related_data": {} } } @@ -45966,11 +53553,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48823302469135804, + "max": 0.4882716049382716 + }, "related_data": { "qa": { "data_id": [ - "8_7412218_53363657" + "8_7412218_53363657@8" ] } } @@ -45988,14 +53578,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4882716049382716, + "max": 0.4883101851851852 + }, "related_data": {} } } } ], "data": { - "uuid": "python-5-767", + "uuid": "python-5-766", "seg": [ [ [ @@ -46004,7 +53597,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48819444444444443, + "max": 0.4883101851851852 + }, "related_data": {} } } @@ -46012,7 +53608,7 @@ { "相关模块/包": { "data": { - "uuid": "python-5-768", + "uuid": "python-5-767", "seg": [ [ [ @@ -46022,14 +53618,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4883101851851852, + "max": 0.48842592592592593 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1097", + "uuid": "python-4-1106", "seg": [ [ [ @@ -46039,14 +53638,11 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "8_756181_811295" - ] - } - } + "level": { + "min": 0.48796296296296293, + "max": 0.48842592592592593 + }, + "related_data": {} } } }, @@ -46069,20 +53665,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48842592592592593, + "max": 0.4885030864197531 + }, "related_data": { "qa": { "data_id": [ - "8_1058085_1255346", - "8_1057001_1254146", - "8_751045_804484", - "8_7446374_53425554", - "8_7459778_53444785", - "8_7411744_53363059", - "8_774528_838506", - "8_757788_813444", - "8_895240_1033332", - "8_7398533_53344826" + "8_1058085_1255346@8", + "8_7447305_53426973@8", + "8_1057001_1254146@8", + "8_751045_804484@8", + "8_7446374_53425554@8", + "8_7459778_53444785@8", + "8_7411744_53363059@8", + "8_774528_838506@8", + "8_757788_813444@8", + "8_895240_1033332@8" ] } } @@ -46100,12 +53699,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4885030864197531, + "max": 0.4885802469135802 + }, "related_data": { "qa": { "data_id": [ - "8_222179_177658", - "8_184971_75772" + "8_222179_177658@8", + "8_184971_75772@8" ] } } @@ -46123,14 +53725,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4885802469135802, + "max": 0.4886574074074074 + }, "related_data": {} } } } ], "data": { - "uuid": "python-5-769", + "uuid": "python-5-768", "seg": [ [ [ @@ -46140,7 +53745,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48842592592592593, + "max": 0.4886574074074074 + }, "related_data": {} } } @@ -46159,7 +53767,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4886574074074074, + "max": 0.488695987654321 + }, "related_data": {} } } @@ -46175,7 +53786,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.488695987654321, + "max": 0.48873456790123454 + }, "related_data": {} } } @@ -46191,7 +53805,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48873456790123454, + "max": 0.4887731481481481 + }, "related_data": {} } } @@ -46207,7 +53824,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4887731481481481, + "max": 0.4888117283950617 + }, "related_data": {} } } @@ -46223,7 +53843,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4888117283950617, + "max": 0.4888503086419753 + }, "related_data": {} } } @@ -46240,14 +53863,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4888503086419753, + "max": 0.4888888888888889 + }, "related_data": {} } } } ], "data": { - "uuid": "python-5-770", + "uuid": "python-5-769", "seg": [ [ [ @@ -46256,13 +53882,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4886574074074074, + "max": 0.4888888888888889 + }, "related_data": { "qa": { "data_id": [ - "8_987962_1152055", - "8_181397_66488", - "8_713264_704686" + "8_987962_1152055@8", + "8_713264_704686@8" ] } } @@ -46271,7 +53899,7 @@ } ], "data": { - "uuid": "python-4-1098", + "uuid": "python-4-1107", "seg": [ [ [ @@ -46280,7 +53908,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48842592592592593, + "max": 0.4888888888888889 + }, "related_data": {} } } @@ -46296,7 +53927,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4861111111111111, + "max": 0.4888888888888889 + }, "related_data": {} } } @@ -46310,7 +53944,7 @@ { "行定位符": { "data": { - "uuid": "python-5-771", + "uuid": "python-5-770", "seg": [ [ [ @@ -46319,7 +53953,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4888888888888889, + "max": 0.4890432098765432 + }, "related_data": {} } } @@ -46327,7 +53964,7 @@ { "元字符": { "data": { - "uuid": "python-5-772", + "uuid": "python-5-771", "seg": [ [ [ @@ -46335,7 +53972,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4890432098765432, + "max": 0.48919753086419754 + }, "related_data": {} } } @@ -46343,7 +53983,7 @@ { "重复": { "data": { - "uuid": "python-5-773", + "uuid": "python-5-772", "seg": [ [ [ @@ -46351,11 +53991,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48919753086419754, + "max": 0.48935185185185187 + }, "related_data": { "qa": { "data_id": [ - "8_7437861_53411104" + "8_7437861_53411104@8" ] } } @@ -46365,16 +54008,20 @@ { "字符类": { "data": { - "uuid": "python-5-774", + "uuid": "python-5-773", "seg": [ [ [ "字符", - "类" + "类", + "字符类" ] ] ], - "level": "1", + "level": { + "min": 0.48935185185185187, + "max": 0.4895061728395062 + }, "related_data": {} } } @@ -46382,7 +54029,7 @@ { "排除字符": { "data": { - "uuid": "python-5-775", + "uuid": "python-5-774", "seg": [ [ [ @@ -46391,12 +54038,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4895061728395062, + "max": 0.4896604938271605 + }, "related_data": { "qa": { "data_id": [ - "8_7427390_53391786", - "8_766921_826835" + "8_7427390_53391786@8", + "8_766921_826835@8" ] } } @@ -46406,7 +54056,7 @@ { "选择字符": { "data": { - "uuid": "python-5-776", + "uuid": "python-5-775", "seg": [ [ [ @@ -46415,13 +54065,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4896604938271605, + "max": 0.4898148148148148 + }, "related_data": { "qa": { "data_id": [ - "8_7457507_53441719", - "8_730832_746958", - "8_7456807_53440866" + "8_7457507_53441719@8", + "8_730832_746958@8", + "8_7456807_53440866@8" ] } } @@ -46431,7 +54084,7 @@ { "转义字符": { "data": { - "uuid": "python-5-777", + "uuid": "python-5-776", "seg": [ [ [ @@ -46439,12 +54092,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4898148148148148, + "max": 0.48996913580246915 + }, "related_data": { "qa": { "data_id": [ - "8_719808_713934", - "8_753215_807628" + "8_719808_713934@8", + "8_753215_807628@8" ] } } @@ -46454,7 +54110,7 @@ { "分组": { "data": { - "uuid": "python-5-778", + "uuid": "python-5-777", "seg": [ [ [ @@ -46462,12 +54118,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.48996913580246915, + "max": 0.4901234567901235 + }, "related_data": { "qa": { "data_id": [ - "8_1093359_1302704", - "8_7409592_53360063" + "8_1093359_1302704@8", + "8_7409592_53360063@8" ] } } @@ -46477,7 +54136,7 @@ { "在Python中使用正则": { "data": { - "uuid": "python-5-779", + "uuid": "python-5-778", "seg": [ [ [ @@ -46486,13 +54145,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4901234567901235, + "max": 0.4902777777777778 + }, "related_data": { "qa": { "data_id": [ - "8_7427498_53392032", - "8_1095542_1306990", - "8_7410869_53361698" + "8_7427498_53392032@8", + "8_1095542_1306990@8" ] } } @@ -46501,7 +54162,7 @@ } ], "data": { - "uuid": "python-4-1099", + "uuid": "python-4-1108", "seg": [ [ [ @@ -46510,11 +54171,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4888888888888889, + "max": 0.4902777777777778 + }, "related_data": { "qa": { "data_id": [ - "8_384968_422585" + "8_384968_422585@8" ] } } @@ -46527,7 +54191,7 @@ { "替换字符串": { "data": { - "uuid": "python-5-780", + "uuid": "python-5-779", "seg": [ [ [ @@ -46536,11 +54200,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4902777777777778, + "max": 0.49097222222222225 + }, "related_data": { "qa": { "data_id": [ - "8_7408377_53358588" + "8_7408377_53358588@8" ] } } @@ -46550,7 +54217,7 @@ { "使用正则表达式分割字符串": { "data": { - "uuid": "python-5-781", + "uuid": "python-5-780", "seg": [ [ [ @@ -46560,20 +54227,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49097222222222225, + "max": 0.4916666666666667 + }, "related_data": { "qa": { "data_id": [ - "8_6648908_47808650", - "8_760500_817412", - "8_765641_824604", - "8_801605_896019", - "8_7422924_53381816", - "8_7452792_53435063", - "8_7430743_53398059", - "8_1016729_1208668", - "8_769289_830001", - "8_7413592_53365691" + "8_7424928_53386111@8", + "8_753780_808485@8", + "8_7439878_53414719@8", + "8_1098397_1312897@8", + "8_6648908_47808650@8", + "8_760500_817412@8", + "8_765641_824604@8", + "8_801605_896019@8", + "8_7422924_53381816@8", + "8_7452792_53435063@8" ] } } @@ -46582,7 +54252,7 @@ } ], "data": { - "uuid": "python-4-1100", + "uuid": "python-4-1109", "seg": [ [ [ @@ -46593,8 +54263,17 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.4902777777777778, + "max": 0.4916666666666667 + }, + "related_data": { + "qa": { + "data_id": [ + "8_701803_591846@8" + ] + } + } } } } @@ -46609,7 +54288,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4888888888888889, + "max": 0.4916666666666667 + }, "related_data": {} } } @@ -46623,25 +54305,29 @@ { "面向对象程序设计的特点": { "data": { - "uuid": "python-5-782", + "uuid": "python-5-781", "seg": [ [ [ "面向对象", - "程序设计" + "程序设计", + "面向对象程序设计" ] ] ], - "level": "1", + "level": { + "min": 0.4916666666666667, + "max": 0.49259259259259264 + }, "related_data": { "qa": { "data_id": [ - "8_7430911_53398729", - "8_945401_1083942", - "8_7455656_53438977", - "8_7455567_53438743", - "8_7434174_53404586", - "8_1520230_5575494" + "8_7430911_53398729@8", + "8_945401_1083942@8", + "8_7455656_53438977@8", + "8_7455567_53438743@8", + "8_7434174_53404586@8", + "8_1520230_5575494@8" ] } } @@ -46650,7 +54336,7 @@ } ], "data": { - "uuid": "python-4-1101", + "uuid": "python-4-1110", "seg": [ [ [ @@ -46659,7 +54345,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4916666666666667, + "max": 0.49259259259259264 + }, "related_data": {} } } @@ -46670,29 +54359,33 @@ { "定义类": { "data": { - "uuid": "python-5-783", + "uuid": "python-5-782", "seg": [ [ [ "定义", - "类" + "类", + "定义类" ] ] ], - "level": "1", + "level": { + "min": 0.49259259259259264, + "max": 0.49282407407407414 + }, "related_data": { "qa": { "data_id": [ - "8_656871_469044", - "8_738918_772129", - "8_769218_829891", - "8_7458786_53443455", - "8_7419472_53376678", - "8_919782_1057528", - "8_1078629_1283106", - "8_810208_905553", - "8_4646919_29330850", - "8_7435709_53406614" + "8_656871_469044@8", + "8_738918_772129@8", + "8_769218_829891@8", + "8_7458786_53443455@8", + "8_7419472_53376678@8", + "8_919782_1057528@8", + "8_1078629_1283106@8", + "8_810208_905553@8", + "8_4646919_29330850@8", + "8_7435709_53406614@8" ] } } @@ -46702,7 +54395,7 @@ { "创建__init__方法": { "data": { - "uuid": "python-5-784", + "uuid": "python-5-783", "seg": [ [ [ @@ -46712,14 +54405,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.49282407407407414, + "max": 0.4930555555555556 + }, "related_data": { "qa": { "data_id": [ - "8_1078723_1283519", - "8_763888_822482", - "8_1056725_1253780", - "8_1082094_1288713" + "8_763888_822482@8", + "8_1056725_1253780@8" ] } } @@ -46729,7 +54423,7 @@ { "创建类的成员并访问": { "data": { - "uuid": "python-5-785", + "uuid": "python-5-784", "seg": [ [ [ @@ -46740,11 +54434,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4930555555555556, + "max": 0.493287037037037 + }, "related_data": { "qa": { "data_id": [ - "8_7420308_53378405" + "8_7420308_53378405@8" ] } } @@ -46754,7 +54451,7 @@ { "访问限制": { "data": { - "uuid": "python-5-786", + "uuid": "python-5-785", "seg": [ [ [ @@ -46762,11 +54459,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.493287037037037, + "max": 0.4935185185185185 + }, "related_data": { "qa": { "data_id": [ - "8_210446_149328" + "8_210446_149328@8" ] } } @@ -46775,7 +54475,7 @@ } ], "data": { - "uuid": "python-4-1102", + "uuid": "python-4-1111", "seg": [ [ [ @@ -46785,7 +54485,10 @@ [] ] ], - "level": "1", + "level": { + "min": 0.49259259259259264, + "max": 0.4935185185185185 + }, "related_data": {} } } @@ -46796,20 +54499,24 @@ { "继承的基本语法": { "data": { - "uuid": "python-5-787", + "uuid": "python-5-786", "seg": [ [ [ "继承", - "语法" + "语法", + "基本语法" ] ] ], - "level": "1", + "level": { + "min": 0.4935185185185185, + "max": 0.4938271604938272 + }, "related_data": { "qa": { "data_id": [ - "8_7452833_53435698" + "8_7452833_53435698@8" ] } } @@ -46819,7 +54526,7 @@ { "方法重写": { "data": { - "uuid": "python-5-788", + "uuid": "python-5-787", "seg": [ [ [ @@ -46828,7 +54535,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4938271604938272, + "max": 0.4941358024691358 + }, "related_data": {} } } @@ -46836,7 +54546,7 @@ { "派生类中调用基类的__init__方法": { "data": { - "uuid": "python-5-789", + "uuid": "python-5-788", "seg": [ [ [ @@ -46848,11 +54558,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4941358024691358, + "max": 0.49444444444444446 + }, "related_data": { "qa": { "data_id": [ - "8_1068290_1269304" + "8_1068290_1269304@8" ] } } @@ -46861,90 +54574,361 @@ } ], "data": { - "uuid": "python-4-1103", + "uuid": "python-4-1112", + "seg": [ + [ + [ + "继承" + ] + ] + ], + "level": { + "min": 0.4935185185185185, + "max": 0.49444444444444446 + }, + "related_data": {} + } + } + } + ], + "data": { + "uuid": "python-3-192", + "seg": [ + [ + [ + "面向对象", + "程序设计", + "面向对象程序设计" + ] + ] + ], + "level": { + "min": 0.4916666666666667, + "max": 0.49444444444444446 + }, + "related_data": {} + } + } + }, + { + "模块": { + "children": [ + { + "模块概述": { + "data": { + "uuid": "python-4-1113", + "seg": [ + [ + [ + "模块", + "概述" + ] + ] + ], + "level": { + "min": 0.49444444444444446, + "max": 0.4951388888888889 + }, + "related_data": {} + } + } + }, + { + "自定义模块": { + "children": [ + { + "创建模块": { + "data": { + "uuid": "python-5-789", + "seg": [ + [ + [ + "创建", + "模块" + ] + ] + ], + "level": { + "min": 0.4951388888888889, + "max": 0.49531250000000004 + }, + "related_data": { + "qa": { + "data_id": [ + "8_237160_216907@8", + "8_7400620_53348638@8", + "8_757909_813704@8", + "8_182255_68056@8", + "8_764341_823009@8", + "8_983436_1145979@8", + "8_7429939_53396899@8", + "8_5894331_37302528@8", + "8_718587_838729@8", + "8_1093556_1303071@8" + ] + } + } + } + } + }, + { + "使用import语句导入模块": { + "data": { + "uuid": "python-5-790", + "seg": [ + [ + [ + "import", + "语句", + "导入", + "模块" + ] + ] + ], + "level": { + "min": 0.49531250000000004, + "max": 0.4954861111111111 + }, + "related_data": { + "qa": { + "data_id": [ + "8_753204_807821@8", + "8_391925_434851@8", + "8_695949_579187@8", + "8_387570_426747@8", + "8_7460689_53445790@8", + "8_686420_548037@8", + "8_693168_570182@8", + "8_706351_622340@8", + "8_717427_710706@8" + ] + } + } + } + } + }, + { + "使用from…import语句": { + "data": { + "uuid": "python-5-791", + "seg": [ + [ + [ + "from", + "…", + "import", + "语句" + ] + ] + ], + "level": { + "min": 0.4954861111111111, + "max": 0.4956597222222222 + }, + "related_data": { + "qa": { + "data_id": [ + "8_765078_823975@8" + ] + } + } + } + } + }, + { + "模块搜索目录": { + "data": { + "uuid": "python-5-792", + "seg": [ + [ + [ + "模块", + "搜索", + "目录" + ] + ] + ], + "level": { + "min": 0.4956597222222222, + "max": 0.49583333333333335 + }, + "related_data": {} + } + } + } + ], + "data": { + "uuid": "python-4-1114", + "seg": [ + [ + [ + "自定义", + "模块" + ] + ] + ], + "level": { + "min": 0.4951388888888889, + "max": 0.49583333333333335 + }, + "related_data": {} + } + } + }, + { + "Python中的包": { + "children": [ + { + "Python程序的包结构": { + "data": { + "uuid": "python-5-793", + "seg": [ + [ + [ + "python", + "程序", + "包", + "结构" + ] + ] + ], + "level": { + "min": 0.49583333333333335, + "max": 0.49618055555555557 + }, + "related_data": {} + } + } + }, + { + "以主程序的形式执行": { + "data": { + "uuid": "python-5-794", + "seg": [ + [ + [ + "主程序", + "形式", + "执行" + ] + ] + ], + "level": { + "min": 0.49618055555555557, + "max": 0.4965277777777778 + }, + "related_data": {} + } + } + } + ], + "data": { + "uuid": "python-4-1115", + "seg": [ + [ + [ + "python", + "包" + ] + ] + ], + "level": { + "min": 0.49583333333333335, + "max": 0.4965277777777778 + }, + "related_data": {} + } + } + }, + { + "引用其他模块": { + "data": { + "uuid": "python-4-1116", "seg": [ [ [ - "继承" + "引用", + "模块" ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "8_1057705_1254825" - ] - } - } + "level": { + "min": 0.4965277777777778, + "max": 0.49722222222222223 + }, + "related_data": {} } } } ], "data": { - "uuid": "python-3-192", + "uuid": "python-3-193", "seg": [ [ [ - "面向对象", - "程序设计" + "模块" ] ] ], - "level": "1", + "level": { + "min": 0.49444444444444446, + "max": 0.49722222222222223 + }, "related_data": {} } } }, { - "模块": { + "异常处理及程序调试": { "children": [ { - "模块概述": { + "异常概述": { "data": { - "uuid": "python-4-1104", + "uuid": "python-4-1117", "seg": [ [ [ - "模块", - "概述" + "异常", + "概述", + "异常概述" ] ] ], - "level": "1", + "level": { + "min": 0.49722222222222223, + "max": 0.4981481481481482 + }, "related_data": {} } } }, { - "自定义模块": { + "异常处理语句": { "children": [ { - "创建模块": { + "try…except语句": { "data": { - "uuid": "python-5-790", + "uuid": "python-5-795", "seg": [ [ [ - "创建", - "模块" + "try", + "…", + "except", + "语句" ] ] ], - "level": "1", + "level": { + "min": 0.4981481481481482, + "max": 0.4983796296296297 + }, "related_data": { "qa": { "data_id": [ - "8_237160_216907", - "8_7400620_53348638", - "8_757909_813704", - "8_182255_68056", - "8_764341_823009", - "8_983436_1145979", - "8_7429939_53396899", - "8_5894331_37302528", - "8_718587_838729", - "8_1093556_1303071" + "8_7404249_53353091@8", + "8_7403646_53352214@8", + "8_1063517_1261540@8" ] } } @@ -46952,188 +54936,188 @@ } }, { - "使用import语句导入模块": { + "try…except…else语句": { "data": { - "uuid": "python-5-791", + "uuid": "python-5-796", "seg": [ [ [ - "import", - "语句", - "导入", - "模块" + "try", + "…", + "except", + "else", + "语句" ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "8_753204_807821", - "8_391925_434851", - "8_695949_579187", - "8_387570_426747", - "8_7460689_53445790", - "8_686420_548037", - "8_693168_570182", - "8_706351_622340", - "8_717427_710706" - ] - } - } + "level": { + "min": 0.4983796296296297, + "max": 0.4986111111111111 + }, + "related_data": {} } } }, { - "使用from…import语句": { + "try…except…finally语句": { "data": { - "uuid": "python-5-792", + "uuid": "python-5-797", "seg": [ [ [ - "from", + "try", "…", - "import", + "except", + "finally", "语句" ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "8_765078_823975", - "8_7451994_53433823" - ] - } - } + "level": { + "min": 0.4986111111111111, + "max": 0.49884259259259256 + }, + "related_data": {} } } }, { - "模块搜索目录": { + "使用raise语句抛出异常": { "data": { - "uuid": "python-5-793", + "uuid": "python-5-798", "seg": [ [ [ - "模块", - "搜索", - "目录" + "raise", + "语句", + "抛出", + "异常" ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.49884259259259256, + "max": 0.49907407407407406 + }, + "related_data": { + "qa": { + "data_id": [ + "8_937139_1072787@8", + "8_929826_1085958@8" + ] + } + } } } } ], "data": { - "uuid": "python-4-1105", + "uuid": "python-4-1118", "seg": [ [ [ - "自定义", - "模块" + "异常", + "语句", + "异常处理" ] ] ], - "level": "1", + "level": { + "min": 0.4981481481481482, + "max": 0.49907407407407406 + }, "related_data": {} } } }, { - "Python中的包": { + "程序调试": { "children": [ { - "Python程序的包结构": { + "使用自带的IDLE进行程序调试": { "data": { - "uuid": "python-5-794", + "uuid": "python-5-799", "seg": [ [ [ - "python", - "程序", - "包", - "结构" + "自带", + "idle", + "程序调试" ] ] ], - "level": "1", + "level": { + "min": 0.49907407407407406, + "max": 0.499537037037037 + }, "related_data": {} } } }, { - "以主程序的形式执行": { + "使用assert语句调试程序": { "data": { - "uuid": "python-5-795", + "uuid": "python-5-800", "seg": [ [ [ - "主程序", - "形式", - "执行" + "assert", + "语句", + "调试程序", + "语句调试程序" ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.499537037037037, + "max": 0.5 + }, + "related_data": { + "qa": { + "data_id": [ + "8_7456360_53440092@8" + ] + } + } } } } ], "data": { - "uuid": "python-4-1106", + "uuid": "python-4-1119", "seg": [ [ [ - "python", - "包" + "程序调试" ] ] ], - "level": "1", + "level": { + "min": 0.49907407407407406, + "max": 0.5 + }, "related_data": {} } } - }, - { - "引用其他模块": { - "data": { - "uuid": "python-4-1107", - "seg": [ - [ - [ - "引用", - "模块" - ] - ] - ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "8_6182731_43026343" - ] - } - } - } - } } ], "data": { - "uuid": "python-3-193", + "uuid": "python-3-194", "seg": [ [ [ - "模块" + "异常", + "异常处理" + ], + [ + "程序调试" ] ] ], - "level": "1", + "level": { + "min": 0.49722222222222223, + "max": 0.5 + }, "related_data": {} } } @@ -47146,7 +55130,10 @@ [] ] ], - "level": "1", + "level": { + "min": 0.45, + "max": 0.5 + }, "related_data": {} } } @@ -47162,6 +55149,10 @@ ] ] ], + "level": { + "min": 0.25, + "max": 0.5 + }, "related_data": {} } } @@ -47178,7 +55169,7 @@ { "NumPy的前世今生": { "data": { - "uuid": "python-4-1108", + "uuid": "python-4-1120", "seg": [ [ [ @@ -47188,7 +55179,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.5, + "max": 0.50078125 + }, "related_data": {} } } @@ -47196,7 +55190,7 @@ { "NumPy数组vs Python列表": { "data": { - "uuid": "python-4-1109", + "uuid": "python-4-1121", "seg": [ [ [ @@ -47208,7 +55202,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.50078125, + "max": 0.5015625 + }, "related_data": {} } } @@ -47216,20 +55213,24 @@ { "NumPy数组类型和属性": { "data": { - "uuid": "python-4-1110", + "uuid": "python-4-1122", "seg": [ [ [ "numpy", "数组", - "类型" + "类型", + "数组类型" ], [ "属性" ] ] ], - "level": "3", + "level": { + "min": 0.5015625, + "max": 0.50234375 + }, "related_data": {} } } @@ -47237,7 +55238,7 @@ { "维、轴、秩": { "data": { - "uuid": "python-4-1111", + "uuid": "python-4-1123", "seg": [ [ [ @@ -47249,7 +55250,10 @@ [] ] ], - "level": "3", + "level": { + "min": 0.50234375, + "max": 0.503125 + }, "related_data": {} } } @@ -47257,7 +55261,7 @@ { "广播和矢量化": { "data": { - "uuid": "python-4-1112", + "uuid": "python-4-1124", "seg": [ [ [ @@ -47268,14 +55272,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.503125, + "max": 0.50390625 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-194", + "uuid": "python-3-195", "seg": [ [ [ @@ -47284,7 +55291,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.5, + "max": 0.50390625 + }, "related_data": {} } } @@ -47292,7 +55302,7 @@ { "安装配置": { "data": { - "uuid": "python-3-195", + "uuid": "python-3-196", "seg": [ [ [ @@ -47301,7 +55311,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.50390625, + "max": 0.5078125 + }, "related_data": {} } } @@ -47309,7 +55322,7 @@ { "创建数组": { "data": { - "uuid": "python-3-196", + "uuid": "python-3-197", "seg": [ [ [ @@ -47318,7 +55331,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.5078125, + "max": 0.51171875 + }, "related_data": {} } } @@ -47329,7 +55345,7 @@ { "索引": { "data": { - "uuid": "python-4-1113", + "uuid": "python-4-1125", "seg": [ [ [ @@ -47337,7 +55353,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.51171875, + "max": 0.5121527777777778 + }, "related_data": {} } } @@ -47345,7 +55364,7 @@ { "切片": { "data": { - "uuid": "python-4-1114", + "uuid": "python-4-1126", "seg": [ [ [ @@ -47353,12 +55372,15 @@ ] ] ], - "level": "3", + "level": { + "min": 0.5121527777777778, + "max": 0.5125868055555556 + }, "related_data": { "qa": { "data_id": [ - "8_7464469_53450889", - "8_387679_427313" + "8_7464469_53450889@8", + "8_387679_427313@8" ] } } @@ -47368,17 +55390,21 @@ { "改变数组结构": { "data": { - "uuid": "python-4-1115", + "uuid": "python-4-1127", "seg": [ [ [ "改变", "数组", - "结构" + "结构", + "数组结构" ] ] ], - "level": "3", + "level": { + "min": 0.5125868055555556, + "max": 0.5130208333333334 + }, "related_data": {} } } @@ -47386,7 +55412,7 @@ { "合并和拆分": { "data": { - "uuid": "python-4-1116", + "uuid": "python-4-1128", "seg": [ [ [ @@ -47397,7 +55423,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.5130208333333334, + "max": 0.5134548611111112 + }, "related_data": {} } } @@ -47405,7 +55434,7 @@ { "复制": { "data": { - "uuid": "python-4-1117", + "uuid": "python-4-1129", "seg": [ [ [ @@ -47413,7 +55442,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.5134548611111112, + "max": 0.5138888888888888 + }, "related_data": {} } } @@ -47421,7 +55453,7 @@ { "排序": { "data": { - "uuid": "python-4-1118", + "uuid": "python-4-1130", "seg": [ [ [ @@ -47429,7 +55461,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.5138888888888888, + "max": 0.5143229166666666 + }, "related_data": {} } } @@ -47437,7 +55472,7 @@ { "查找": { "data": { - "uuid": "python-4-1119", + "uuid": "python-4-1131", "seg": [ [ [ @@ -47445,12 +55480,15 @@ ] ] ], - "level": "3", + "level": { + "min": 0.5143229166666666, + "max": 0.5147569444444444 + }, "related_data": { "qa": { "data_id": [ - "8_7413302_53365170", - "8_7454528_53437206" + "8_7413302_53365170@8", + "8_7454528_53437206@8" ] } } @@ -47460,7 +55498,7 @@ { "筛选": { "data": { - "uuid": "python-4-1120", + "uuid": "python-4-1132", "seg": [ [ [ @@ -47468,11 +55506,14 @@ ] ] ], - "level": "3", + "level": { + "min": 0.5147569444444444, + "max": 0.5151909722222222 + }, "related_data": { "qa": { "data_id": [ - "8_751308_805113" + "8_751308_805113@8" ] } } @@ -47482,7 +55523,7 @@ { "数组I/O": { "data": { - "uuid": "python-4-1121", + "uuid": "python-4-1133", "seg": [ [ [ @@ -47492,11 +55533,14 @@ ] ] ], - "level": "3", + "level": { + "min": 0.5151909722222222, + "max": 0.515625 + }, "related_data": { "qa": { "data_id": [ - "8_7419627_53377132" + "8_7419627_53377132@8" ] } } @@ -47505,7 +55549,7 @@ } ], "data": { - "uuid": "python-3-197", + "uuid": "python-3-198", "seg": [ [ [ @@ -47514,7 +55558,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.51171875, + "max": 0.515625 + }, "related_data": {} } } @@ -47525,7 +55572,7 @@ { "np.nan和np.inf": { "data": { - "uuid": "python-4-1122", + "uuid": "python-4-1134", "seg": [ [ [ @@ -47538,14 +55585,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.515625, + "max": 0.5161830357142857 + }, "related_data": { "qa": { "data_id": [ - "8_7416417_53370481", - "8_3535708_23009405", - "8_772571_835873", - "8_748937_801649" + "8_7416417_53370481@8", + "8_3535708_23009405@8", + "8_772571_835873@8", + "8_748937_801649@8" ] } } @@ -47555,17 +55605,22 @@ { "函数命名空间": { "data": { - "uuid": "python-4-1123", + "uuid": "python-4-1135", "seg": [ [ [ "函数", "命名", - "空间" + "空间", + "函数命名", + "命名空间" ] ] ], - "level": "3", + "level": { + "min": 0.5161830357142857, + "max": 0.5167410714285714 + }, "related_data": {} } } @@ -47573,16 +55628,20 @@ { "数学函数": { "data": { - "uuid": "python-4-1124", + "uuid": "python-4-1136", "seg": [ [ [ "数学", - "函数" + "函数", + "数学函数" ] ] ], - "level": "3", + "level": { + "min": 0.5167410714285714, + "max": 0.5172991071428571 + }, "related_data": {} } } @@ -47590,7 +55649,7 @@ { "统计函数": { "data": { - "uuid": "python-4-1125", + "uuid": "python-4-1137", "seg": [ [ [ @@ -47599,7 +55658,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.5172991071428571, + "max": 0.5178571428571429 + }, "related_data": {} } } @@ -47607,16 +55669,20 @@ { "插值函数": { "data": { - "uuid": "python-4-1126", + "uuid": "python-4-1138", "seg": [ [ [ "插值", - "函数" + "函数", + "插值函数" ] ] ], - "level": "3", + "level": { + "min": 0.5178571428571429, + "max": 0.5184151785714286 + }, "related_data": {} } } @@ -47624,7 +55690,7 @@ { "多项式拟合函数": { "data": { - "uuid": "python-4-1127", + "uuid": "python-4-1139", "seg": [ [ [ @@ -47634,7 +55700,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.5184151785714286, + "max": 0.5189732142857143 + }, "related_data": {} } } @@ -47642,7 +55711,7 @@ { "自定义广播函数": { "data": { - "uuid": "python-4-1128", + "uuid": "python-4-1140", "seg": [ [ [ @@ -47652,14 +55721,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.5189732142857143, + "max": 0.51953125 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-198", + "uuid": "python-3-199", "seg": [ [ [ @@ -47667,7 +55739,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.515625, + "max": 0.51953125 + }, "related_data": {} } } @@ -47678,17 +55753,21 @@ { "创建掩码数组": { "data": { - "uuid": "python-4-1129", + "uuid": "python-4-1141", "seg": [ [ [ "创建", "掩码", - "数组" + "数组", + "掩码数组" ] ] ], - "level": "3", + "level": { + "min": 0.51953125, + "max": 0.521484375 + }, "related_data": {} } } @@ -47696,33 +55775,41 @@ { "访问掩码数组": { "data": { - "uuid": "python-4-1130", + "uuid": "python-4-1142", "seg": [ [ [ "访问", "掩码", - "数组" + "数组", + "掩码数组" ] ] ], - "level": "3", + "level": { + "min": 0.521484375, + "max": 0.5234375 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-199", + "uuid": "python-3-200", "seg": [ [ [ "掩码", - "数组" + "数组", + "掩码数组" ] ] ], - "level": "3", + "level": { + "min": 0.51953125, + "max": 0.5234375 + }, "related_data": {} } } @@ -47733,7 +55820,7 @@ { "创建矩阵": { "data": { - "uuid": "python-4-1131", + "uuid": "python-4-1143", "seg": [ [ [ @@ -47742,13 +55829,16 @@ ] ] ], - "level": "3", + "level": { + "min": 0.5234375, + "max": 0.5247395833333334 + }, "related_data": { "qa": { "data_id": [ - "8_6546437_46134052", - "8_714290_706442", - "8_7426376_53389966" + "8_6546437_46134052@8", + "8_714290_706442@8", + "8_7426376_53389966@8" ] } } @@ -47758,7 +55848,7 @@ { "矩阵特有属性": { "data": { - "uuid": "python-4-1132", + "uuid": "python-4-1144", "seg": [ [ [ @@ -47768,7 +55858,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.5247395833333334, + "max": 0.5260416666666666 + }, "related_data": {} } } @@ -47776,32 +55869,40 @@ { "矩阵乘法": { "data": { - "uuid": "python-4-1133", + "uuid": "python-4-1145", "seg": [ [ [ "矩阵", - "乘法" + "乘法", + "矩阵乘法" ] ] ], - "level": "3", + "level": { + "min": 0.5260416666666666, + "max": 0.52734375 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-200", + "uuid": "python-3-201", "seg": [ [ [ "矩阵", - "对象" + "对象", + "矩阵对象" ] ] ], - "level": "3", + "level": { + "min": 0.5234375, + "max": 0.52734375 + }, "related_data": {} } } @@ -47812,7 +55913,7 @@ { "随机数": { "data": { - "uuid": "python-4-1134", + "uuid": "python-4-1146", "seg": [ [ [ @@ -47820,7 +55921,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.52734375, + "max": 0.5283203125 + }, "related_data": {} } } @@ -47828,7 +55932,7 @@ { "随机抽样": { "data": { - "uuid": "python-4-1135", + "uuid": "python-4-1147", "seg": [ [ [ @@ -47836,7 +55940,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.5283203125, + "max": 0.529296875 + }, "related_data": {} } } @@ -47844,7 +55951,7 @@ { "正态分布": { "data": { - "uuid": "python-4-1136", + "uuid": "python-4-1148", "seg": [ [ [ @@ -47852,7 +55959,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.529296875, + "max": 0.5302734375 + }, "related_data": {} } } @@ -47860,7 +55970,7 @@ { "伪随机数的深度思考": { "data": { - "uuid": "python-4-1137", + "uuid": "python-4-1149", "seg": [ [ [ @@ -47871,24 +55981,31 @@ ] ] ], - "level": "3", + "level": { + "min": 0.5302734375, + "max": 0.53125 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-201", + "uuid": "python-3-202", "seg": [ [ [ "随机抽样", "子", - "模块" + "模块", + "子模块" ] ] ], - "level": "3", + "level": { + "min": 0.52734375, + "max": 0.53125 + }, "related_data": {} } } @@ -47902,11 +56019,15 @@ "科学计算", "基础", "软件包", - "numpy" + "numpy", + "科学计算基础" ] ] ], - "level": "3", + "level": { + "min": 0.5, + "max": 0.53125 + }, "related_data": {} } } @@ -47920,7 +56041,7 @@ { "Panda的特点": { "data": { - "uuid": "python-4-1138", + "uuid": "python-4-1150", "seg": [ [ [ @@ -47928,7 +56049,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.53125, + "max": 0.53515625 + }, "related_data": {} } } @@ -47936,7 +56060,7 @@ { "安装和使用": { "data": { - "uuid": "python-4-1139", + "uuid": "python-4-1151", "seg": [ [ [ @@ -47945,11 +56069,14 @@ [] ] ], - "level": "1", + "level": { + "min": 0.53515625, + "max": 0.5390625 + }, "related_data": { "qa": { "data_id": [ - "8_1055649_1252870" + "8_1055649_1252870@8" ] } } @@ -47958,7 +56085,7 @@ } ], "data": { - "uuid": "python-3-202", + "uuid": "python-3-203", "seg": [ [ [ @@ -47967,7 +56094,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.53125, + "max": 0.5390625 + }, "related_data": {} } } @@ -47978,17 +56108,21 @@ { "索引数组Index": { "data": { - "uuid": "python-4-1140", + "uuid": "python-4-1152", "seg": [ [ [ "索引", "数组", - "index" + "index", + "索引数组" ] ] ], - "level": "1", + "level": { + "min": 0.5390625, + "max": 0.5416666666666666 + }, "related_data": {} } } @@ -47996,7 +56130,7 @@ { "带标签的一维同构数组Series": { "data": { - "uuid": "python-4-1141", + "uuid": "python-4-1153", "seg": [ [ [ @@ -48004,11 +56138,15 @@ "标签", "同构", "数组", - "series" + "series", + "同构数组" ] ] ], - "level": "1", + "level": { + "min": 0.5416666666666666, + "max": 0.5442708333333334 + }, "related_data": {} } } @@ -48016,7 +56154,7 @@ { "带标签的二维异构表格DataFrame": { "data": { - "uuid": "python-4-1142", + "uuid": "python-4-1154", "seg": [ [ [ @@ -48024,16 +56162,20 @@ "标签", "异构", "表格", - "dataframe" + "dataframe", + "异构表格" ] ] ], - "level": "1", + "level": { + "min": 0.5442708333333334, + "max": 0.546875 + }, "related_data": { "qa": { "data_id": [ - "8_7395384_53338744", - "8_7442292_53419716" + "8_7395384_53338744@8", + "8_7442292_53419716@8" ] } } @@ -48042,7 +56184,7 @@ } ], "data": { - "uuid": "python-3-203", + "uuid": "python-3-204", "seg": [ [ [ @@ -48050,7 +56192,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5390625, + "max": 0.546875 + }, "related_data": {} } } @@ -48061,7 +56206,7 @@ { "数据预览": { "data": { - "uuid": "python-4-1143", + "uuid": "python-4-1155", "seg": [ [ [ @@ -48070,7 +56215,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.546875, + "max": 0.5481770833333334 + }, "related_data": {} } } @@ -48078,7 +56226,7 @@ { "数据选择": { "data": { - "uuid": "python-4-1144", + "uuid": "python-4-1156", "seg": [ [ [ @@ -48087,7 +56235,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5481770833333334, + "max": 0.5494791666666666 + }, "related_data": {} } } @@ -48095,7 +56246,7 @@ { "改变数据结构": { "data": { - "uuid": "python-4-1145", + "uuid": "python-4-1157", "seg": [ [ [ @@ -48104,7 +56255,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5494791666666666, + "max": 0.55078125 + }, "related_data": {} } } @@ -48112,7 +56266,7 @@ { "改变数据类型": { "data": { - "uuid": "python-4-1146", + "uuid": "python-4-1158", "seg": [ [ [ @@ -48121,7 +56275,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.55078125, + "max": 0.5520833333333334 + }, "related_data": {} } } @@ -48129,7 +56286,7 @@ { "广播与矢量化运算": { "data": { - "uuid": "python-4-1147", + "uuid": "python-4-1159", "seg": [ [ [ @@ -48141,7 +56298,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5520833333333334, + "max": 0.5533854166666666 + }, "related_data": {} } } @@ -48149,22 +56309,26 @@ { "行列级广播函数": { "data": { - "uuid": "python-4-1148", + "uuid": "python-4-1160", "seg": [ [ [ "行列", "级", "广播", - "函数" + "函数", + "行列级" ] ] ], - "level": "1", + "level": { + "min": 0.5533854166666666, + "max": 0.5546875 + }, "related_data": { "qa": { "data_id": [ - "8_7433504_53403772" + "8_7433504_53403772@8" ] } } @@ -48173,7 +56337,7 @@ } ], "data": { - "uuid": "python-3-204", + "uuid": "python-3-205", "seg": [ [ [ @@ -48181,7 +56345,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.546875, + "max": 0.5546875 + }, "related_data": {} } } @@ -48192,7 +56359,7 @@ { "分组": { "data": { - "uuid": "python-4-1149", + "uuid": "python-4-1161", "seg": [ [ [ @@ -48200,7 +56367,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5546875, + "max": 0.5556640625 + }, "related_data": {} } } @@ -48208,7 +56378,7 @@ { "聚合": { "data": { - "uuid": "python-4-1150", + "uuid": "python-4-1162", "seg": [ [ [ @@ -48216,7 +56386,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5556640625, + "max": 0.556640625 + }, "related_data": {} } } @@ -48224,16 +56397,20 @@ { "层次化索引": { "data": { - "uuid": "python-4-1151", + "uuid": "python-4-1163", "seg": [ [ [ "层次化", - "索引" + "索引", + "层次化索引" ] ] ], - "level": "1", + "level": { + "min": 0.556640625, + "max": 0.5576171875 + }, "related_data": {} } } @@ -48241,7 +56418,7 @@ { "表级广播函数": { "data": { - "uuid": "python-4-1152", + "uuid": "python-4-1164", "seg": [ [ [ @@ -48251,7 +56428,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5576171875, + "max": 0.55859375 + }, "related_data": {} } } @@ -48259,18 +56439,23 @@ { "日期时间索引对象": { "data": { - "uuid": "python-4-1153", + "uuid": "python-4-1165", "seg": [ [ [ "日期", "时间", "索引", - "对象" + "对象", + "时间索引", + "索引对象" ] ] ], - "level": "1", + "level": { + "min": 0.55859375, + "max": 0.5595703125 + }, "related_data": {} } } @@ -48278,7 +56463,7 @@ { "透视表": { "data": { - "uuid": "python-4-1154", + "uuid": "python-4-1166", "seg": [ [ [ @@ -48287,7 +56472,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5595703125, + "max": 0.560546875 + }, "related_data": {} } } @@ -48295,23 +56483,27 @@ { "数据可视化": { "data": { - "uuid": "python-4-1155", + "uuid": "python-4-1167", "seg": [ [ [ "数据", - "可视化" + "可视化", + "数据可视化" ] ] ], - "level": "1", + "level": { + "min": 0.560546875, + "max": 0.5615234375 + }, "related_data": { "qa": { "data_id": [ - "8_7455800_53439138", - "8_7445343_53425952", - "8_7460967_53446178", - "8_7454719_53437378" + "8_7455800_53439138@8", + "8_7445343_53425952@8", + "8_7460967_53446178@8", + "8_7454719_53437378@8" ] } } @@ -48321,7 +56513,7 @@ { "数据I/O": { "data": { - "uuid": "python-4-1156", + "uuid": "python-4-1168", "seg": [ [ [ @@ -48331,14 +56523,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5615234375, + "max": 0.5625 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-205", + "uuid": "python-3-206", "seg": [ [ [ @@ -48346,7 +56541,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.5546875, + "max": 0.5625 + }, "related_data": {} } } @@ -48364,7 +56562,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.53125, + "max": 0.5625 + }, "related_data": {} } } @@ -48375,7 +56576,7 @@ { "安装配置": { "data": { - "uuid": "python-3-206", + "uuid": "python-3-207", "seg": [ [ [ @@ -48384,7 +56585,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.5625, + "max": 0.56875 + }, "related_data": {} } } @@ -48395,7 +56599,7 @@ { "画布": { "data": { - "uuid": "python-4-1157", + "uuid": "python-4-1169", "seg": [ [ [ @@ -48403,11 +56607,14 @@ ] ] ], - "level": "3", + "level": { + "min": 0.56875, + "max": 0.57 + }, "related_data": { "qa": { "data_id": [ - "8_4645606_29328454" + "8_4645606_29328454@8" ] } } @@ -48417,7 +56624,7 @@ { "子图与子图布局": { "data": { - "uuid": "python-4-1158", + "uuid": "python-4-1170", "seg": [ [ [ @@ -48425,11 +56632,15 @@ ], [ "子图", - "布局" + "布局", + "子图布局" ] ] ], - "level": "3", + "level": { + "min": 0.57, + "max": 0.5712499999999999 + }, "related_data": {} } } @@ -48437,7 +56648,7 @@ { "坐标轴与刻度的名称": { "data": { - "uuid": "python-4-1159", + "uuid": "python-4-1171", "seg": [ [ [ @@ -48449,11 +56660,14 @@ ] ] ], - "level": "3", + "level": { + "min": 0.5712499999999999, + "max": 0.5725 + }, "related_data": { "qa": { "data_id": [ - "8_7414502_53367271" + "8_7414502_53367271@8" ] } } @@ -48463,7 +56677,7 @@ { "图例和文本标注": { "data": { - "uuid": "python-4-1160", + "uuid": "python-4-1172", "seg": [ [ [ @@ -48475,7 +56689,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.5725, + "max": 0.57375 + }, "related_data": {} } } @@ -48483,7 +56700,7 @@ { "显示和保存": { "data": { - "uuid": "python-4-1161", + "uuid": "python-4-1173", "seg": [ [ [ @@ -48494,24 +56711,31 @@ ] ] ], - "level": "3", + "level": { + "min": 0.57375, + "max": 0.575 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-207", + "uuid": "python-3-208", "seg": [ [ [ "matplotlib", "快速", - "入门" + "入门", + "快速入门" ] ] ], - "level": "3", + "level": { + "min": 0.56875, + "max": 0.575 + }, "related_data": {} } } @@ -48522,7 +56746,7 @@ { "曲线图": { "data": { - "uuid": "python-4-1162", + "uuid": "python-4-1174", "seg": [ [ [ @@ -48530,7 +56754,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.575, + "max": 0.5758928571428571 + }, "related_data": {} } } @@ -48538,7 +56765,7 @@ { "散点图": { "data": { - "uuid": "python-4-1163", + "uuid": "python-4-1175", "seg": [ [ [ @@ -48546,7 +56773,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.5758928571428571, + "max": 0.5767857142857142 + }, "related_data": {} } } @@ -48554,7 +56784,7 @@ { "直方图": { "data": { - "uuid": "python-4-1164", + "uuid": "python-4-1176", "seg": [ [ [ @@ -48562,7 +56792,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.5767857142857142, + "max": 0.5776785714285714 + }, "related_data": {} } } @@ -48570,20 +56803,24 @@ { "饼图": { "data": { - "uuid": "python-4-1165", + "uuid": "python-4-1177", "seg": [ [ [ "饼", - "图" + "图", + "饼图" ] ] ], - "level": "3", + "level": { + "min": 0.5776785714285714, + "max": 0.5785714285714286 + }, "related_data": { "qa": { "data_id": [ - "8_766549_825821" + "8_766549_825821@8" ] } } @@ -48593,7 +56830,7 @@ { "箱线图": { "data": { - "uuid": "python-4-1166", + "uuid": "python-4-1178", "seg": [ [ [ @@ -48602,7 +56839,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.5785714285714286, + "max": 0.5794642857142858 + }, "related_data": {} } } @@ -48610,29 +56850,33 @@ { "绘制图像": { "data": { - "uuid": "python-4-1167", + "uuid": "python-4-1179", "seg": [ [ [ "绘制", - "图像" + "图像", + "绘制图像" ] ] ], - "level": "3", + "level": { + "min": 0.5794642857142858, + "max": 0.5803571428571429 + }, "related_data": { "qa": { "data_id": [ - "8_7433020_53402770", - "8_7427408_53391882", - "8_7418814_53375375", - "8_1093243_1302772", - "8_7451295_53432482", - "8_7453232_53435931", - "8_1097130_1310477", - "8_7435618_53406724", - "8_1078202_1282579", - "8_7452008_53433875" + "8_7433020_53402770@8", + "8_7427408_53391882@8", + "8_7418814_53375375@8", + "8_1093243_1302772@8", + "8_7451295_53432482@8", + "8_7453232_53435931@8", + "8_1097130_1310477@8", + "8_7435618_53406724@8", + "8_1078202_1282579@8", + "8_7452008_53433875@8" ] } } @@ -48642,20 +56886,24 @@ { "极坐标绘图": { "data": { - "uuid": "python-4-1168", + "uuid": "python-4-1180", "seg": [ [ [ "极坐标", - "绘图" + "绘图", + "极坐标绘图" ] ] ], - "level": "3", + "level": { + "min": 0.5803571428571429, + "max": 0.58125 + }, "related_data": { "qa": { "data_id": [ - "8_7461674_53447324" + "8_7461674_53447324@8" ] } } @@ -48664,21 +56912,25 @@ } ], "data": { - "uuid": "python-3-208", + "uuid": "python-3-209", "seg": [ [ [ "图形", - "绘制" + "绘制", + "图形绘制" ] ] ], - "level": "3", + "level": { + "min": 0.575, + "max": 0.58125 + }, "related_data": { "qa": { "data_id": [ - "8_7438475_53411829", - "8_1090113_1296786" + "8_7438475_53411829@8", + "8_1090113_1296786@8" ] } } @@ -48691,7 +56943,7 @@ { "画布设置": { "data": { - "uuid": "python-4-1169", + "uuid": "python-4-1181", "seg": [ [ [ @@ -48700,7 +56952,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.58125, + "max": 0.5819444444444445 + }, "related_data": {} } } @@ -48708,16 +56963,20 @@ { "子图布局": { "data": { - "uuid": "python-4-1170", + "uuid": "python-4-1182", "seg": [ [ [ "子图", - "布局" + "布局", + "子图布局" ] ] ], - "level": "3", + "level": { + "min": 0.5819444444444445, + "max": 0.5826388888888889 + }, "related_data": {} } } @@ -48725,7 +56984,7 @@ { "颜色": { "data": { - "uuid": "python-4-1171", + "uuid": "python-4-1183", "seg": [ [ [ @@ -48733,7 +56992,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.5826388888888889, + "max": 0.5833333333333334 + }, "related_data": {} } } @@ -48741,17 +57003,21 @@ { "线条和点的样式": { "data": { - "uuid": "python-4-1172", + "uuid": "python-4-1184", "seg": [ [ [ "线条", "和点", - "样式" + "样式", + "线条和点" ] ] ], - "level": "3", + "level": { + "min": 0.5833333333333334, + "max": 0.5840277777777778 + }, "related_data": {} } } @@ -48759,7 +57025,7 @@ { "坐标轴": { "data": { - "uuid": "python-4-1173", + "uuid": "python-4-1185", "seg": [ [ [ @@ -48767,7 +57033,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.5840277777777778, + "max": 0.5847222222222223 + }, "related_data": {} } } @@ -48775,7 +57044,7 @@ { "刻度": { "data": { - "uuid": "python-4-1174", + "uuid": "python-4-1186", "seg": [ [ [ @@ -48783,7 +57052,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.5847222222222223, + "max": 0.5854166666666667 + }, "related_data": {} } } @@ -48791,7 +57063,7 @@ { "文本": { "data": { - "uuid": "python-4-1175", + "uuid": "python-4-1187", "seg": [ [ [ @@ -48799,7 +57071,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.5854166666666667, + "max": 0.5861111111111111 + }, "related_data": {} } } @@ -48807,7 +57082,7 @@ { "图例": { "data": { - "uuid": "python-4-1176", + "uuid": "python-4-1188", "seg": [ [ [ @@ -48815,7 +57090,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.5861111111111111, + "max": 0.5868055555555556 + }, "related_data": {} } } @@ -48823,7 +57101,7 @@ { "网格设置": { "data": { - "uuid": "python-4-1177", + "uuid": "python-4-1189", "seg": [ [ [ @@ -48832,14 +57110,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.5868055555555556, + "max": 0.5875 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-209", + "uuid": "python-3-210", "seg": [ [ [ @@ -48850,7 +57131,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.58125, + "max": 0.5875 + }, "related_data": {} } } @@ -48861,7 +57145,7 @@ { "使用BaseMap绘制地图": { "data": { - "uuid": "python-4-1178", + "uuid": "python-4-1190", "seg": [ [ [ @@ -48870,11 +57154,14 @@ ] ] ], - "level": "3", + "level": { + "min": 0.5875, + "max": 0.590625 + }, "related_data": { "qa": { "data_id": [ - "8_1090115_1296815" + "8_1090115_1296815@8" ] } } @@ -48884,24 +57171,28 @@ { "3D绘图工具包": { "data": { - "uuid": "python-4-1179", + "uuid": "python-4-1191", "seg": [ [ [ "d", "绘图", - "工具包" + "工具包", + "绘图工具包" ] ] ], - "level": "3", + "level": { + "min": 0.590625, + "max": 0.59375 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-210", + "uuid": "python-3-211", "seg": [ [ [ @@ -48910,7 +57201,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.5875, + "max": 0.59375 + }, "related_data": {} } } @@ -48927,7 +57221,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.5625, + "max": 0.59375 + }, "related_data": {} } } @@ -48938,7 +57235,7 @@ { "SciPy概览": { "data": { - "uuid": "python-3-211", + "uuid": "python-3-212", "seg": [ [ [ @@ -48947,11 +57244,14 @@ ] ] ], - "level": "3", + "level": { + "min": 0.59375, + "max": 0.5965909090909091 + }, "related_data": { "qa": { "data_id": [ - "8_7438221_53412615" + "8_7438221_53412615@8" ] } } @@ -48961,7 +57261,7 @@ { "安装配置": { "data": { - "uuid": "python-3-212", + "uuid": "python-3-213", "seg": [ [ [ @@ -48970,7 +57270,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.5965909090909091, + "max": 0.5994318181818182 + }, "related_data": {} } } @@ -48981,7 +57284,7 @@ { "一维插值": { "data": { - "uuid": "python-4-1180", + "uuid": "python-4-1192", "seg": [ [ [ @@ -48989,7 +57292,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.5994318181818182, + "max": 0.600378787878788 + }, "related_data": {} } } @@ -48997,7 +57303,7 @@ { "二维插值": { "data": { - "uuid": "python-4-1181", + "uuid": "python-4-1193", "seg": [ [ [ @@ -49005,7 +57311,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.600378787878788, + "max": 0.6013257575757576 + }, "related_data": {} } } @@ -49013,34 +57322,42 @@ { "离散数据插值到网格": { "data": { - "uuid": "python-4-1182", + "uuid": "python-4-1194", "seg": [ [ [ "离散", "数据", "插值", - "网格" + "网格", + "数据插值" ] ] ], - "level": "3", + "level": { + "min": 0.6013257575757576, + "max": 0.6022727272727273 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-213", + "uuid": "python-3-214", "seg": [ [ [ "数据", - "插值" + "插值", + "数据插值" ] ] ], - "level": "3", + "level": { + "min": 0.5994318181818182, + "max": 0.6022727272727273 + }, "related_data": {} } } @@ -49051,7 +57368,7 @@ { "最小二乘法拟合": { "data": { - "uuid": "python-4-1183", + "uuid": "python-4-1195", "seg": [ [ [ @@ -49061,7 +57378,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6022727272727273, + "max": 0.603219696969697 + }, "related_data": {} } } @@ -49069,7 +57389,7 @@ { "使用curve_fit函数拟合": { "data": { - "uuid": "python-4-1184", + "uuid": "python-4-1196", "seg": [ [ [ @@ -49080,11 +57400,14 @@ ] ] ], - "level": "3", + "level": { + "min": 0.603219696969697, + "max": 0.6041666666666666 + }, "related_data": { "qa": { "data_id": [ - "8_7455746_53439065" + "8_7455746_53439065@8" ] } } @@ -49094,7 +57417,7 @@ { "多项式拟合函数": { "data": { - "uuid": "python-4-1185", + "uuid": "python-4-1197", "seg": [ [ [ @@ -49104,14 +57427,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6041666666666666, + "max": 0.6051136363636364 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-214", + "uuid": "python-3-215", "seg": [ [ [ @@ -49119,7 +57445,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6022727272727273, + "max": 0.6051136363636364 + }, "related_data": {} } } @@ -49130,7 +57459,7 @@ { "时域到频域的转换": { "data": { - "uuid": "python-4-1186", + "uuid": "python-4-1198", "seg": [ [ [ @@ -49140,7 +57469,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6051136363636364, + "max": 0.6060606060606061 + }, "related_data": {} } } @@ -49148,7 +57480,7 @@ { "一维傅里叶变换的应用": { "data": { - "uuid": "python-4-1187", + "uuid": "python-4-1199", "seg": [ [ [ @@ -49157,7 +57489,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6060606060606061, + "max": 0.6070075757575757 + }, "related_data": {} } } @@ -49165,7 +57500,7 @@ { "二维傅里叶变换的应用": { "data": { - "uuid": "python-4-1188", + "uuid": "python-4-1200", "seg": [ [ [ @@ -49174,14 +57509,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6070075757575757, + "max": 0.6079545454545454 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-215", + "uuid": "python-3-216", "seg": [ [ [ @@ -49190,7 +57528,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6051136363636364, + "max": 0.6079545454545454 + }, "related_data": {} } } @@ -49201,16 +57542,20 @@ { "图像卷积": { "data": { - "uuid": "python-4-1189", + "uuid": "python-4-1201", "seg": [ [ [ "图像", - "卷积" + "卷积", + "图像卷积" ] ] ], - "level": "3", + "level": { + "min": 0.6079545454545454, + "max": 0.6086647727272727 + }, "related_data": {} } } @@ -49218,7 +57563,7 @@ { "边缘检测": { "data": { - "uuid": "python-4-1190", + "uuid": "python-4-1202", "seg": [ [ [ @@ -49227,7 +57572,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6086647727272727, + "max": 0.609375 + }, "related_data": {} } } @@ -49235,7 +57583,7 @@ { "侵蚀和膨胀": { "data": { - "uuid": "python-4-1191", + "uuid": "python-4-1203", "seg": [ [ [ @@ -49246,7 +57594,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.609375, + "max": 0.6100852272727273 + }, "related_data": {} } } @@ -49254,7 +57605,7 @@ { "图像测量": { "data": { - "uuid": "python-4-1192", + "uuid": "python-4-1204", "seg": [ [ [ @@ -49263,14 +57614,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6100852272727273, + "max": 0.6107954545454546 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-216", + "uuid": "python-3-217", "seg": [ [ [ @@ -49278,7 +57632,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6079545454545454, + "max": 0.6107954545454546 + }, "related_data": {} } } @@ -49289,7 +57646,7 @@ { "对给定函数的定积分": { "data": { - "uuid": "python-4-1193", + "uuid": "python-4-1205", "seg": [ [ [ @@ -49300,7 +57657,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6107954545454546, + "max": 0.6117424242424243 + }, "related_data": {} } } @@ -49308,7 +57668,7 @@ { "对给定样本的定积分": { "data": { - "uuid": "python-4-1194", + "uuid": "python-4-1206", "seg": [ [ [ @@ -49319,7 +57679,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6117424242424243, + "max": 0.6126893939393939 + }, "related_data": {} } } @@ -49327,7 +57690,7 @@ { "二重定积分": { "data": { - "uuid": "python-4-1195", + "uuid": "python-4-1207", "seg": [ [ [ @@ -49336,11 +57699,14 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6126893939393939, + "max": 0.6136363636363636 + }, "related_data": { "qa": { "data_id": [ - "8_7408037_53358350" + "8_7408037_53358350@8" ] } } @@ -49349,7 +57715,7 @@ } ], "data": { - "uuid": "python-3-217", + "uuid": "python-3-218", "seg": [ [ [ @@ -49357,7 +57723,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6107954545454546, + "max": 0.6136363636363636 + }, "related_data": {} } } @@ -49368,7 +57737,7 @@ { "非线性方程": { "data": { - "uuid": "python-4-1196", + "uuid": "python-4-1208", "seg": [ [ [ @@ -49377,13 +57746,16 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6136363636363636, + "max": 0.6150568181818181 + }, "related_data": { "qa": { "data_id": [ - "8_1053954_1251226", - "8_652809_460840", - "8_7422761_53381427" + "8_1053954_1251226@8", + "8_652809_460840@8", + "8_7422761_53381427@8" ] } } @@ -49393,22 +57765,26 @@ { "非线性方程组": { "data": { - "uuid": "python-4-1197", + "uuid": "python-4-1209", "seg": [ [ [ - "线性方程组" + "线性方程组", + "非线性方程组" ] ] ], - "level": "3", + "level": { + "min": 0.6150568181818181, + "max": 0.6164772727272727 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-218", + "uuid": "python-3-219", "seg": [ [ [ @@ -49417,7 +57793,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6136363636363636, + "max": 0.6164772727272727 + }, "related_data": {} } } @@ -49428,7 +57807,7 @@ { "计算矩阵的行列式": { "data": { - "uuid": "python-4-1198", + "uuid": "python-4-1210", "seg": [ [ [ @@ -49438,7 +57817,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6164772727272727, + "max": 0.6170454545454546 + }, "related_data": {} } } @@ -49446,7 +57828,7 @@ { "求解逆矩阵": { "data": { - "uuid": "python-4-1199", + "uuid": "python-4-1211", "seg": [ [ [ @@ -49455,7 +57837,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6170454545454546, + "max": 0.6176136363636363 + }, "related_data": {} } } @@ -49463,7 +57848,7 @@ { "计算特征向量和特征值": { "data": { - "uuid": "python-4-1200", + "uuid": "python-4-1212", "seg": [ [ [ @@ -49475,7 +57860,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6176136363636363, + "max": 0.6181818181818182 + }, "related_data": {} } } @@ -49483,7 +57871,7 @@ { "矩阵的奇异值分解": { "data": { - "uuid": "python-4-1201", + "uuid": "python-4-1213", "seg": [ [ [ @@ -49494,7 +57882,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6181818181818182, + "max": 0.6187499999999999 + }, "related_data": {} } } @@ -49502,7 +57893,7 @@ { "求解线性方程组": { "data": { - "uuid": "python-4-1202", + "uuid": "python-4-1214", "seg": [ [ [ @@ -49510,14 +57901,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6187499999999999, + "max": 0.6193181818181818 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-219", + "uuid": "python-3-220", "seg": [ [ [ @@ -49525,7 +57919,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6164772727272727, + "max": 0.6193181818181818 + }, "related_data": {} } } @@ -49536,7 +57933,7 @@ { "k-means聚类": { "data": { - "uuid": "python-4-1203", + "uuid": "python-4-1215", "seg": [ [ [ @@ -49546,7 +57943,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6193181818181818, + "max": 0.6207386363636364 + }, "related_data": {} } } @@ -49554,7 +57954,7 @@ { "层次聚类": { "data": { - "uuid": "python-4-1204", + "uuid": "python-4-1216", "seg": [ [ [ @@ -49562,14 +57962,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6207386363636364, + "max": 0.6221590909090909 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-220", + "uuid": "python-3-221", "seg": [ [ [ @@ -49577,7 +57980,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6193181818181818, + "max": 0.6221590909090909 + }, "related_data": {} } } @@ -49588,7 +57994,7 @@ { "空间旋转的表述": { "data": { - "uuid": "python-4-1205", + "uuid": "python-4-1217", "seg": [ [ [ @@ -49598,11 +58004,14 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6221590909090909, + "max": 0.6235795454545454 + }, "related_data": { "qa": { "data_id": [ - "8_7442345_53419164" + "8_7442345_53419164@8" ] } } @@ -49612,7 +58021,7 @@ { "三维旋转": { "data": { - "uuid": "python-4-1206", + "uuid": "python-4-1218", "seg": [ [ [ @@ -49620,14 +58029,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6235795454545454, + "max": 0.625 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-221", + "uuid": "python-3-222", "seg": [ [ [ @@ -49636,7 +58048,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6221590909090909, + "max": 0.625 + }, "related_data": {} } } @@ -49649,11 +58064,15 @@ [ "科学计算", "工具包", - "scipy" + "scipy", + "科学计算工具包" ] ] ], - "level": "3", + "level": { + "min": 0.59375, + "max": 0.625 + }, "related_data": {} } } @@ -49667,7 +58086,7 @@ { "创建Python脚本": { "data": { - "uuid": "python-4-1207", + "uuid": "python-4-1219", "seg": [ [ [ @@ -49677,7 +58096,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.625, + "max": 0.6251775568181819 + }, "related_data": {} } } @@ -49685,7 +58107,7 @@ { "运行Python脚本": { "data": { - "uuid": "python-4-1208", + "uuid": "python-4-1220", "seg": [ [ [ @@ -49695,7 +58117,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6251775568181819, + "max": 0.6253551136363636 + }, "related_data": {} } } @@ -49703,7 +58128,7 @@ { "与命令行进行交互的几项技巧": { "data": { - "uuid": "python-4-1209", + "uuid": "python-4-1221", "seg": [ [ [], @@ -49714,7 +58139,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6253551136363636, + "max": 0.6255326704545454 + }, "related_data": {} } } @@ -49725,7 +58153,7 @@ { "数值": { "data": { - "uuid": "python-5-796", + "uuid": "python-5-801", "seg": [ [ [ @@ -49733,13 +58161,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6255326704545454, + "max": 0.6255548650568181 + }, "related_data": { "qa": { "data_id": [ - "8_7461142_53446232", - "8_766031_825095", - "8_7447209_53426721" + "8_7461142_53446232@8", + "8_766031_825095@8", + "8_7447209_53426721@8" ] } } @@ -49749,7 +58180,7 @@ { "字符串": { "data": { - "uuid": "python-5-797", + "uuid": "python-5-802", "seg": [ [ [ @@ -49757,7 +58188,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6255548650568181, + "max": 0.6255770596590908 + }, "related_data": {} } } @@ -49765,7 +58199,7 @@ { "正则表达式与模式匹配": { "data": { - "uuid": "python-5-798", + "uuid": "python-5-803", "seg": [ [ [ @@ -49776,7 +58210,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6255770596590908, + "max": 0.6255992542613636 + }, "related_data": {} } } @@ -49784,7 +58221,7 @@ { "日期": { "data": { - "uuid": "python-5-799", + "uuid": "python-5-804", "seg": [ [ [ @@ -49792,12 +58229,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6255992542613636, + "max": 0.6256214488636364 + }, "related_data": { "qa": { "data_id": [ - "8_732919_753729", - "8_7440397_53415856" + "8_732919_753729@8", + "8_7440397_53415856@8" ] } } @@ -49807,7 +58247,7 @@ { "列表": { "data": { - "uuid": "python-5-800", + "uuid": "python-5-805", "seg": [ [ [ @@ -49815,7 +58255,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6256214488636364, + "max": 0.6256436434659091 + }, "related_data": {} } } @@ -49823,7 +58266,7 @@ { "元组": { "data": { - "uuid": "python-5-801", + "uuid": "python-5-806", "seg": [ [ [ @@ -49831,11 +58274,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6256436434659091, + "max": 0.6256658380681819 + }, "related_data": { "qa": { "data_id": [ - "8_938910_1074696" + "8_938910_1074696@8" ] } } @@ -49845,7 +58291,7 @@ { "字典": { "data": { - "uuid": "python-5-802", + "uuid": "python-5-807", "seg": [ [ [ @@ -49853,7 +58299,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6256658380681819, + "max": 0.6256880326704546 + }, "related_data": {} } } @@ -49861,7 +58310,7 @@ { "控制流": { "data": { - "uuid": "python-5-803", + "uuid": "python-5-808", "seg": [ [ [ @@ -49869,25 +58318,33 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6256880326704546, + "max": 0.6257102272727273 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1210", + "uuid": "python-4-1222", "seg": [ [ [ "python", "语言", "基础", - "要素" + "要素", + "语言基础", + "基础要素" ] ] ], - "level": "1", + "level": { + "min": 0.6255326704545454, + "max": 0.6257102272727273 + }, "related_data": {} } } @@ -49898,7 +58355,7 @@ { "创建文本文件": { "data": { - "uuid": "python-5-804", + "uuid": "python-5-809", "seg": [ [ [ @@ -49907,7 +58364,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6257102272727273, + "max": 0.625769412878788 + }, "related_data": {} } } @@ -49915,7 +58375,7 @@ { "脚本和输入文件在同一位置": { "data": { - "uuid": "python-5-805", + "uuid": "python-5-810", "seg": [ [ [ @@ -49928,7 +58388,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.625769412878788, + "max": 0.6258285984848485 + }, "related_data": {} } } @@ -49936,7 +58399,7 @@ { "读取文件的新型语法": { "data": { - "uuid": "python-5-806", + "uuid": "python-5-811", "seg": [ [ [ @@ -49947,14 +58410,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6258285984848485, + "max": 0.6258877840909092 + }, "related_data": { "qa": { "data_id": [ - "8_1056636_1253701", - "8_176615_59100", - "8_763250_821608", - "8_7399539_53346808" + "8_1056636_1253701@8", + "8_176615_59100@8", + "8_763250_821608@8", + "8_7399539_53346808@8" ] } } @@ -49963,7 +58429,7 @@ } ], "data": { - "uuid": "python-4-1211", + "uuid": "python-4-1223", "seg": [ [ [ @@ -49972,7 +58438,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6257102272727273, + "max": 0.6258877840909092 + }, "related_data": {} } } @@ -49980,7 +58449,7 @@ { "使用glob读取多个文本文件": { "data": { - "uuid": "python-4-1212", + "uuid": "python-4-1224", "seg": [ [ [ @@ -49990,7 +58459,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6258877840909092, + "max": 0.6260653409090909 + }, "related_data": {} } } @@ -50001,7 +58473,7 @@ { "向first_script.py添加代码": { "data": { - "uuid": "python-5-807", + "uuid": "python-5-812", "seg": [ [ [ @@ -50012,11 +58484,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6260653409090909, + "max": 0.6261541193181819 + }, "related_data": { "qa": { "data_id": [ - "8_1100789_1315555" + "8_1100789_1315555@8" ] } } @@ -50026,7 +58501,7 @@ { "写入CSV文件": { "data": { - "uuid": "python-5-808", + "uuid": "python-5-813", "seg": [ [ [ @@ -50036,13 +58511,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6261541193181819, + "max": 0.6262428977272727 + }, "related_data": { "qa": { "data_id": [ - "8_7458683_53444143", - "8_663861_480442", - "8_7456241_53439713" + "8_7458683_53444143@8", + "8_663861_480442@8", + "8_7456241_53439713@8" ] } } @@ -50051,7 +58529,7 @@ } ], "data": { - "uuid": "python-4-1213", + "uuid": "python-4-1225", "seg": [ [ [ @@ -50060,7 +58538,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6260653409090909, + "max": 0.6262428977272727 + }, "related_data": {} } } @@ -50068,7 +58549,7 @@ { "print语句": { "data": { - "uuid": "python-4-1214", + "uuid": "python-4-1226", "seg": [ [ [ @@ -50077,12 +58558,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6262428977272727, + "max": 0.6264204545454546 + }, "related_data": { "qa": { "data_id": [ - "8_737107_766224", - "8_698346_585241" + "8_737107_766224@8", + "8_698346_585241@8" ] } } @@ -50091,7 +58575,7 @@ } ], "data": { - "uuid": "python-3-222", + "uuid": "python-3-223", "seg": [ [ [ @@ -50100,7 +58584,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.625, + "max": 0.6264204545454546 + }, "related_data": {} } } @@ -50114,7 +58601,7 @@ { "行中的值满足某个条件": { "data": { - "uuid": "python-5-809", + "uuid": "python-5-814", "seg": [ [ [ @@ -50124,7 +58611,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6264204545454546, + "max": 0.6264880952380952 + }, "related_data": {} } } @@ -50132,7 +58622,7 @@ { "行中的值属于某个集合": { "data": { - "uuid": "python-5-810", + "uuid": "python-5-815", "seg": [ [ [ @@ -50142,16 +58632,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6264880952380952, + "max": 0.626555735930736 + }, "related_data": { "qa": { "data_id": [ - "8_7460228_53445301", - "8_7452556_53434573", - "8_7426549_53390031", - "8_7451550_53432859", - "8_1058196_1255401", - "8_1064433_1262679" + "8_7460228_53445301@8", + "8_7452556_53434573@8", + "8_7426549_53390031@8", + "8_7451550_53432859@8", + "8_1058196_1255401@8", + "8_1064433_1262679@8" ] } } @@ -50161,7 +58654,7 @@ { "行中的值匹配于某个模式/ 正则表达式": { "data": { - "uuid": "python-5-811", + "uuid": "python-5-816", "seg": [ [ [ @@ -50173,14 +58666,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.626555735930736, + "max": 0.6266233766233766 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1215", + "uuid": "python-4-1227", "seg": [ [ [ @@ -50190,7 +58686,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6264204545454546, + "max": 0.6266233766233766 + }, "related_data": {} } } @@ -50201,17 +58700,21 @@ { "列索引值": { "data": { - "uuid": "python-5-812", + "uuid": "python-5-817", "seg": [ [ [ "列", "索引", - "值" + "值", + "索引值" ] ] ], - "level": "1", + "level": { + "min": 0.6266233766233766, + "max": 0.6267248376623377 + }, "related_data": {} } } @@ -50219,7 +58722,7 @@ { "列标题": { "data": { - "uuid": "python-5-813", + "uuid": "python-5-818", "seg": [ [ [ @@ -50228,14 +58731,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6267248376623377, + "max": 0.6268262987012987 + }, "related_data": { "qa": { "data_id": [ - "8_7413510_53365581", - "8_1100988_1315645", - "8_7409271_53359709", - "8_7405947_53355815" + "8_7413510_53365581@8", + "8_1100988_1315645@8", + "8_7409271_53359709@8", + "8_7405947_53355815@8" ] } } @@ -50244,7 +58750,7 @@ } ], "data": { - "uuid": "python-4-1216", + "uuid": "python-4-1228", "seg": [ [ [ @@ -50254,7 +58760,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6266233766233766, + "max": 0.6268262987012987 + }, "related_data": {} } } @@ -50262,7 +58771,7 @@ { "选取连续的行": { "data": { - "uuid": "python-4-1217", + "uuid": "python-4-1229", "seg": [ [ [ @@ -50272,7 +58781,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6268262987012987, + "max": 0.6270292207792207 + }, "related_data": {} } } @@ -50280,7 +58792,7 @@ { "添加标题行": { "data": { - "uuid": "python-4-1218", + "uuid": "python-4-1230", "seg": [ [ [ @@ -50289,7 +58801,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6270292207792207, + "max": 0.6272321428571429 + }, "related_data": {} } } @@ -50297,7 +58812,7 @@ { "读取多个CSV文件": { "data": { - "uuid": "python-4-1219", + "uuid": "python-4-1231", "seg": [ [ [ @@ -50307,20 +58822,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6272321428571429, + "max": 0.627435064935065 + }, "related_data": { "qa": { "data_id": [ - "8_7419585_53377102", - "8_7413835_53366111", - "8_7396380_53339913", - "8_679523_527139", - "8_7413102_53364872", - "8_213101_155349", - "8_7438411_53411862", - "8_702073_592287", - "8_884124_1022934", - "8_7405551_53355183" + "8_7419585_53377102@8", + "8_7413835_53366111@8", + "8_7396380_53339913@8", + "8_679523_527139@8", + "8_7413102_53364872@8", + "8_213101_155349@8", + "8_7438411_53411862@8", + "8_702073_592287@8", + "8_884124_1022934@8", + "8_7405551_53355183@8" ] } } @@ -50330,7 +58848,7 @@ { "从多个文件中连接数据": { "data": { - "uuid": "python-4-1220", + "uuid": "python-4-1232", "seg": [ [ [ @@ -50340,13 +58858,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.627435064935065, + "max": 0.627637987012987 + }, "related_data": { "qa": { "data_id": [ - "8_6211752_43388542", - "8_7439435_53414388", - "8_7423255_53383105" + "8_6211752_43388542@8", + "8_7439435_53414388@8", + "8_7423255_53383105@8" ] } } @@ -50356,28 +58877,32 @@ { "计算每个文件中值的总和与均值": { "data": { - "uuid": "python-4-1221", + "uuid": "python-4-1233", "seg": [ [ [ "计算", "文件", "中值", - "总和" + "总和", + "文件中值" ], [ "均值" ] ] ], - "level": "1", + "level": { + "min": 0.627637987012987, + "max": 0.6278409090909091 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-223", + "uuid": "python-3-224", "seg": [ [ [ @@ -50386,7 +58911,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6264204545454546, + "max": 0.6278409090909091 + }, "related_data": {} } } @@ -50397,7 +58925,7 @@ { "内省Excel工作簿": { "data": { - "uuid": "python-4-1222", + "uuid": "python-4-1234", "seg": [ [ [ @@ -50408,7 +58936,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6278409090909091, + "max": 0.6281249999999999 + }, "related_data": {} } } @@ -50419,7 +58950,7 @@ { "读写Excel文件": { "data": { - "uuid": "python-5-814", + "uuid": "python-5-819", "seg": [ [ [ @@ -50429,20 +58960,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6281249999999999, + "max": 0.6282196969696969 + }, "related_data": { "qa": { "data_id": [ - "8_1062383_1260144", - "8_807520_903618", - "8_7430140_53397149", - "8_7458887_53443770", - "8_7405566_53354833", - "8_7428192_53393641", - "8_1058142_1255605", - "8_7396837_53341154", - "8_1090634_1297677", - "8_7410314_53360933" + "8_1062383_1260144@8", + "8_807520_903618@8", + "8_7430140_53397149@8", + "8_7458887_53443770@8", + "8_7405566_53354833@8", + "8_7428192_53393641@8", + "8_1058142_1255605@8", + "8_7396837_53341154@8", + "8_1090634_1297677@8", + "8_7410314_53360933@8" ] } } @@ -50452,7 +58986,7 @@ { "筛选特定行": { "data": { - "uuid": "python-5-815", + "uuid": "python-5-820", "seg": [ [ [ @@ -50461,14 +58995,39 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6282196969696969, + "max": 0.6283143939393939 + }, + "related_data": {} + } + } + }, + { + "选取特定列": { + "data": { + "uuid": "python-5-821", + "seg": [ + [ + [ + "选取", + "特定", + "列", + "特定列" + ] + ] + ], + "level": { + "min": 0.6283143939393939, + "max": 0.6284090909090909 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1223", + "uuid": "python-4-1235", "seg": [ [ [ @@ -50478,7 +59037,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6281249999999999, + "max": 0.6284090909090909 + }, "related_data": {} } } @@ -50489,7 +59051,7 @@ { "在所有工作表中筛选特定行": { "data": { - "uuid": "python-5-816", + "uuid": "python-5-822", "seg": [ [ [ @@ -50500,7 +59062,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.6284090909090909, + "max": 0.6285511363636364 + }, "related_data": {} } } @@ -50508,7 +59073,7 @@ { "在所有工作表中选取特定列": { "data": { - "uuid": "python-5-817", + "uuid": "python-5-823", "seg": [ [ [ @@ -50516,18 +59081,22 @@ "表中", "选取", "特定", - "列" + "列", + "特定列" ] ] ], - "level": "2", + "level": { + "min": 0.6285511363636364, + "max": 0.6286931818181818 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1224", + "uuid": "python-4-1236", "seg": [ [ [ @@ -50538,7 +59107,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6284090909090909, + "max": 0.6286931818181818 + }, "related_data": {} } } @@ -50546,7 +59118,7 @@ { "在Excel工作簿中读取一组工作表": { "data": { - "uuid": "python-4-1225", + "uuid": "python-4-1237", "seg": [ [ [ @@ -50558,7 +59130,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6286931818181818, + "max": 0.6289772727272728 + }, "related_data": {} } } @@ -50569,7 +59144,7 @@ { "工作表计数以及每个工作表中的行列计数": { "data": { - "uuid": "python-5-818", + "uuid": "python-5-824", "seg": [ [ [ @@ -50581,15 +59156,19 @@ "工作", "表中", "行列", - "计数" + "计数", + "行列计数" ] ] ], - "level": "2", + "level": { + "min": 0.6289772727272728, + "max": 0.6291193181818182 + }, "related_data": { "qa": { "data_id": [ - "8_699675_587881" + "8_699675_587881@8" ] } } @@ -50599,7 +59178,7 @@ { "从多个工作簿中连接数据": { "data": { - "uuid": "python-5-819", + "uuid": "python-5-825", "seg": [ [ [ @@ -50610,14 +59189,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.6291193181818182, + "max": 0.6292613636363636 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1226", + "uuid": "python-4-1238", "seg": [ [ [ @@ -50626,14 +59208,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6289772727272728, + "max": 0.6292613636363636 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-224", + "uuid": "python-3-225", "seg": [ [ [ @@ -50642,7 +59227,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6278409090909091, + "max": 0.6292613636363636 + }, "related_data": {} } } @@ -50656,7 +59244,7 @@ { "向表中插入新记录": { "data": { - "uuid": "python-5-820", + "uuid": "python-5-826", "seg": [ [ [ @@ -50666,7 +59254,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6292613636363636, + "max": 0.6296164772727273 + }, "related_data": {} } } @@ -50674,24 +59265,28 @@ { "更新表中记录": { "data": { - "uuid": "python-5-821", + "uuid": "python-5-827", "seg": [ [ [ "更新", "表中", - "记录" + "记录", + "更新表中" ] ] ], - "level": "1", + "level": { + "min": 0.6296164772727273, + "max": 0.6299715909090909 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1227", + "uuid": "python-4-1239", "seg": [ [ [ @@ -50702,7 +59297,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6292613636363636, + "max": 0.6299715909090909 + }, "related_data": {} } } @@ -50713,7 +59311,7 @@ { "向表中插入新记录": { "data": { - "uuid": "python-5-822", + "uuid": "python-5-828", "seg": [ [ [ @@ -50723,7 +59321,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6299715909090909, + "max": 0.6302083333333334 + }, "related_data": {} } } @@ -50731,7 +59332,7 @@ { "查询一个表并将输出写入CSV文件": { "data": { - "uuid": "python-5-823", + "uuid": "python-5-829", "seg": [ [ [ @@ -50740,11 +59341,15 @@ "输出", "写入", "csv", - "文件" + "文件", + "将输出" ] ] ], - "level": "1", + "level": { + "min": 0.6302083333333334, + "max": 0.6304450757575758 + }, "related_data": {} } } @@ -50752,24 +59357,28 @@ { "更新表中记录": { "data": { - "uuid": "python-5-824", + "uuid": "python-5-830", "seg": [ [ [ "更新", "表中", - "记录" + "记录", + "更新表中" ] ] ], - "level": "1", + "level": { + "min": 0.6304450757575758, + "max": 0.6306818181818182 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1228", + "uuid": "python-4-1240", "seg": [ [ [ @@ -50778,14 +59387,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6299715909090909, + "max": 0.6306818181818182 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-225", + "uuid": "python-3-226", "seg": [ [ [ @@ -50793,7 +59405,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6292613636363636, + "max": 0.6306818181818182 + }, "related_data": {} } } @@ -50804,7 +59419,7 @@ { "为CSV文件中数据的任意数目分类计算统计量": { "data": { - "uuid": "python-4-1229", + "uuid": "python-4-1241", "seg": [ [ [ @@ -50816,11 +59431,15 @@ "分类", "计算", "统计", - "量" + "量", + "数目分类" ] ] ], - "level": "1", + "level": { + "min": 0.6306818181818182, + "max": 0.6313920454545454 + }, "related_data": {} } } @@ -50828,7 +59447,7 @@ { "为文本文件中数据的任意数目分类计算统计量": { "data": { - "uuid": "python-4-1230", + "uuid": "python-4-1242", "seg": [ [ [ @@ -50839,18 +59458,22 @@ "分类", "计算", "统计", - "量" + "量", + "数目分类" ] ] ], - "level": "1", + "level": { + "min": 0.6313920454545454, + "max": 0.6321022727272727 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-226", + "uuid": "python-3-227", "seg": [ [ [ @@ -50858,7 +59481,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6306818181818182, + "max": 0.6321022727272727 + }, "related_data": {} } } @@ -50872,7 +59498,7 @@ { "条形图": { "data": { - "uuid": "python-5-825", + "uuid": "python-5-831", "seg": [ [ [ @@ -50880,7 +59506,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6321022727272727, + "max": 0.6321732954545455 + }, "related_data": {} } } @@ -50888,7 +59517,7 @@ { "直方图": { "data": { - "uuid": "python-5-826", + "uuid": "python-5-832", "seg": [ [ [ @@ -50896,7 +59525,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6321732954545455, + "max": 0.6322443181818181 + }, "related_data": {} } } @@ -50904,7 +59536,7 @@ { "折线图": { "data": { - "uuid": "python-5-827", + "uuid": "python-5-833", "seg": [ [ [ @@ -50912,14 +59544,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6322443181818181, + "max": 0.6323153409090909 + }, "related_data": { "qa": { "data_id": [ - "8_7443534_53420711", - "8_714759_706840", - "8_7411419_53362345", - "8_7425876_53387798" + "8_7443534_53420711@8", + "8_714759_706840@8", + "8_7411419_53362345@8", + "8_7425876_53387798@8" ] } } @@ -50929,7 +59564,7 @@ { "散点图": { "data": { - "uuid": "python-5-828", + "uuid": "python-5-834", "seg": [ [ [ @@ -50937,7 +59572,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6323153409090909, + "max": 0.6323863636363636 + }, "related_data": {} } } @@ -50945,7 +59583,7 @@ { "箱线图": { "data": { - "uuid": "python-5-829", + "uuid": "python-5-835", "seg": [ [ [ @@ -50954,14 +59592,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6323863636363636, + "max": 0.6324573863636364 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1231", + "uuid": "python-4-1243", "seg": [ [ [ @@ -50969,7 +59610,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6321022727272727, + "max": 0.6324573863636364 + }, "related_data": {} } } @@ -50977,7 +59621,7 @@ { "pandas": { "data": { - "uuid": "python-4-1232", + "uuid": "python-4-1244", "seg": [ [ [ @@ -50985,7 +59629,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6324573863636364, + "max": 0.6328125 + }, "related_data": {} } } @@ -50993,7 +59640,7 @@ { "ggplot": { "data": { - "uuid": "python-4-1233", + "uuid": "python-4-1245", "seg": [ [ [ @@ -51001,7 +59648,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6328125, + "max": 0.6331676136363636 + }, "related_data": {} } } @@ -51009,7 +59659,7 @@ { "seaborn": { "data": { - "uuid": "python-4-1234", + "uuid": "python-4-1246", "seg": [ [ [ @@ -51017,14 +59667,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6331676136363636, + "max": 0.6335227272727273 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-227", + "uuid": "python-3-228", "seg": [ [ [ @@ -51035,7 +59688,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6321022727272727, + "max": 0.6335227272727273 + }, "related_data": {} } } @@ -51049,16 +59705,20 @@ { "葡萄酒质量": { "data": { - "uuid": "python-5-830", + "uuid": "python-5-836", "seg": [ [ [ "葡萄酒", - "质量" + "质量", + "葡萄酒质量" ] ] ], - "level": "3", + "level": { + "min": 0.6335227272727273, + "max": 0.6337594696969697 + }, "related_data": {} } } @@ -51066,7 +59726,7 @@ { "客户流失": { "data": { - "uuid": "python-5-831", + "uuid": "python-5-837", "seg": [ [ [ @@ -51075,23 +59735,30 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6337594696969697, + "max": 0.6339962121212122 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1235", + "uuid": "python-4-1247", "seg": [ [ [ "数据", - "集" + "集", + "数据集" ] ] ], - "level": "3", + "level": { + "min": 0.6335227272727273, + "max": 0.6339962121212122 + }, "related_data": {} } } @@ -51102,7 +59769,7 @@ { "描述性统计": { "data": { - "uuid": "python-5-832", + "uuid": "python-5-838", "seg": [ [ [ @@ -51111,16 +59778,19 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6339962121212122, + "max": 0.6340751262626263 + }, "related_data": { "qa": { "data_id": [ - "8_7423980_53384417", - "8_7430312_53397395", - "8_7455040_53437777", - "8_7430120_53397108", - "8_7451835_53433466", - "8_1679770_21754919" + "8_7423980_53384417@8", + "8_7430312_53397395@8", + "8_7455040_53437777@8", + "8_7430120_53397108@8", + "8_7451835_53433466@8", + "8_1679770_21754919@8" ] } } @@ -51130,7 +59800,7 @@ { "成对变量之间的关系和相关性": { "data": { - "uuid": "python-5-833", + "uuid": "python-5-839", "seg": [ [ [ @@ -51143,7 +59813,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6340751262626263, + "max": 0.6341540404040404 + }, "related_data": {} } } @@ -51151,7 +59824,7 @@ { "使用最小二乘估计进行线性回归": { "data": { - "uuid": "python-5-834", + "uuid": "python-5-840", "seg": [ [ [ @@ -51162,7 +59835,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6341540404040404, + "max": 0.6342329545454546 + }, "related_data": {} } } @@ -51170,7 +59846,7 @@ { "系数解释": { "data": { - "uuid": "python-5-835", + "uuid": "python-5-841", "seg": [ [ [ @@ -51178,7 +59854,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6342329545454546, + "max": 0.6343118686868686 + }, "related_data": {} } } @@ -51186,7 +59865,7 @@ { "自变量标准化": { "data": { - "uuid": "python-5-836", + "uuid": "python-5-842", "seg": [ [ [ @@ -51195,7 +59874,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6343118686868686, + "max": 0.6343907828282828 + }, "related_data": {} } } @@ -51203,7 +59885,7 @@ { "预测": { "data": { - "uuid": "python-5-837", + "uuid": "python-5-843", "seg": [ [ [ @@ -51211,23 +59893,30 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6343907828282828, + "max": 0.6344696969696969 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1236", + "uuid": "python-4-1248", "seg": [ [ [ "葡萄酒", - "质量" + "质量", + "葡萄酒质量" ] ] ], - "level": "3", + "level": { + "min": 0.6339962121212122, + "max": 0.6344696969696969 + }, "related_data": {} } } @@ -51238,17 +59927,21 @@ { "逻辑斯蒂回归": { "data": { - "uuid": "python-5-838", + "uuid": "python-5-844", "seg": [ [ [ "逻辑", "斯蒂", - "回归" + "回归", + "逻辑斯蒂" ] ] ], - "level": "3", + "level": { + "min": 0.6344696969696969, + "max": 0.6346275252525252 + }, "related_data": {} } } @@ -51256,7 +59949,7 @@ { "系数解释": { "data": { - "uuid": "python-5-839", + "uuid": "python-5-845", "seg": [ [ [ @@ -51264,7 +59957,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6346275252525252, + "max": 0.6347853535353535 + }, "related_data": {} } } @@ -51272,7 +59968,7 @@ { "预测": { "data": { - "uuid": "python-5-840", + "uuid": "python-5-846", "seg": [ [ [ @@ -51280,14 +59976,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6347853535353535, + "max": 0.6349431818181818 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1237", + "uuid": "python-4-1249", "seg": [ [ [ @@ -51296,14 +59995,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6344696969696969, + "max": 0.6349431818181818 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-228", + "uuid": "python-3-229", "seg": [ [ [ @@ -51315,7 +60017,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6335227272727273, + "max": 0.6349431818181818 + }, "related_data": {} } } @@ -51326,18 +60031,23 @@ { "任务计划程序(Windows系统)": { "data": { - "uuid": "python-4-1238", + "uuid": "python-4-1250", "seg": [ [ [ "计划", "程序", "windows", - "系统" + "系统", + "任务计划", + "计划程序" ] ] ], - "level": "1", + "level": { + "min": 0.6349431818181818, + "max": 0.6356534090909091 + }, "related_data": {} } } @@ -51348,7 +60058,7 @@ { "cron表文件:一次性设置": { "data": { - "uuid": "python-5-841", + "uuid": "python-5-847", "seg": [ [ [ @@ -51360,11 +60070,15 @@ [ [ "一次性", - "设置" + "设置", + "一次性设置" ] ] ], - "level": "1", + "level": { + "min": 0.6356534090909091, + "max": 0.6360085227272727 + }, "related_data": {} } } @@ -51372,7 +60086,7 @@ { "向cron表文件中添加cron任务": { "data": { - "uuid": "python-5-842", + "uuid": "python-5-848", "seg": [ [ [ @@ -51383,14 +60097,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6360085227272727, + "max": 0.6363636363636364 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1239", + "uuid": "python-4-1251", "seg": [ [ [ @@ -51405,14 +60122,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6356534090909091, + "max": 0.6363636363636364 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-229", + "uuid": "python-3-230", "seg": [ [ [ @@ -51423,7 +60143,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6349431818181818, + "max": 0.6363636363636364 + }, "related_data": {} } } @@ -51437,25 +60160,30 @@ { "Python标准库(PSL):更多的标准模块": { "data": { - "uuid": "python-5-843", + "uuid": "python-5-849", "seg": [ [ [ "python", "标准", "库", - "psl" + "psl", + "标准库" ] ], [ [ "更多", "标准", - "模块" + "模块", + "标准模块" ] ] ], - "level": "1", + "level": { + "min": 0.6363636363636364, + "max": 0.6365411931818181 + }, "related_data": {} } } @@ -51463,20 +60191,24 @@ { "内置函数": { "data": { - "uuid": "python-5-844", + "uuid": "python-5-850", "seg": [ [ [ "内置", - "函数" + "函数", + "内置函数" ] ] ], - "level": "1", + "level": { + "min": 0.6365411931818181, + "max": 0.63671875 + }, "related_data": { "qa": { "data_id": [ - "8_757704_814547" + "8_757704_814547@8" ] } } @@ -51485,22 +60217,28 @@ } ], "data": { - "uuid": "python-4-1240", + "uuid": "python-4-1252", "seg": [ [ [ "更多", "标准", "库", - "模块" + "模块", + "标准库", + "库模块" ], [ "内置", - "函数" + "函数", + "内置函数" ] ] ], - "level": "1", + "level": { + "min": 0.6363636363636364, + "max": 0.63671875 + }, "related_data": {} } } @@ -51511,7 +60249,7 @@ { "NumPy": { "data": { - "uuid": "python-5-845", + "uuid": "python-5-851", "seg": [ [ [ @@ -51519,7 +60257,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.63671875, + "max": 0.6368075284090909 + }, "related_data": {} } } @@ -51527,7 +60268,7 @@ { "SciPy": { "data": { - "uuid": "python-5-846", + "uuid": "python-5-852", "seg": [ [ [ @@ -51535,11 +60276,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6368075284090909, + "max": 0.6368963068181819 + }, "related_data": { "qa": { "data_id": [ - "8_7428766_53395298" + "8_7428766_53395298@8" ] } } @@ -51549,7 +60293,7 @@ { "Scikit-Learn": { "data": { - "uuid": "python-5-847", + "uuid": "python-5-853", "seg": [ [ [ @@ -51558,7 +60302,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6368963068181819, + "max": 0.6369850852272727 + }, "related_data": {} } } @@ -51566,7 +60313,7 @@ { "更多的扩展包": { "data": { - "uuid": "python-5-848", + "uuid": "python-5-854", "seg": [ [ [ @@ -51576,14 +60323,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6369850852272727, + "max": 0.6370738636363636 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1241", + "uuid": "python-4-1253", "seg": [ [ [ @@ -51601,7 +60351,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.63671875, + "max": 0.6370738636363636 + }, "related_data": {} } } @@ -51612,7 +60365,7 @@ { "栈": { "data": { - "uuid": "python-5-849", + "uuid": "python-5-855", "seg": [ [ [ @@ -51620,7 +60373,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6370738636363636, + "max": 0.6371922348484849 + }, "related_data": {} } } @@ -51628,7 +60384,7 @@ { "队列": { "data": { - "uuid": "python-5-850", + "uuid": "python-5-856", "seg": [ [ [ @@ -51636,7 +60392,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6371922348484849, + "max": 0.6373106060606061 + }, "related_data": {} } } @@ -51644,7 +60403,7 @@ { "树": { "data": { - "uuid": "python-5-851", + "uuid": "python-5-857", "seg": [ [ [ @@ -51652,14 +60411,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6373106060606061, + "max": 0.6374289772727273 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1242", + "uuid": "python-4-1254", "seg": [ [ [ @@ -51668,7 +60430,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6370738636363636, + "max": 0.6374289772727273 + }, "related_data": {} } } @@ -51676,7 +60441,7 @@ { "从这里启航": { "data": { - "uuid": "python-4-1243", + "uuid": "python-4-1255", "seg": [ [ [ @@ -51684,14 +60449,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6374289772727273, + "max": 0.6377840909090909 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-230", + "uuid": "python-3-231", "seg": [ [ [ @@ -51699,7 +60467,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6363636363636364, + "max": 0.6377840909090909 + }, "related_data": {} } } @@ -51713,7 +60484,7 @@ { "什么类型的数据": { "data": { - "uuid": "python-5-852", + "uuid": "python-5-858", "seg": [ [ [ @@ -51722,11 +60493,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6377840909090909, + "max": 0.6380208333333334 + }, "related_data": { "qa": { "data_id": [ - "8_7427496_53391961" + "8_7427496_53391961@8" ] } } @@ -51735,7 +60509,7 @@ } ], "data": { - "uuid": "python-4-1244", + "uuid": "python-4-1256", "seg": [ [ [ @@ -51743,7 +60517,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6377840909090909, + "max": 0.6380208333333334 + }, "related_data": {} } } @@ -51754,7 +60531,7 @@ { "Python作为胶水": { "data": { - "uuid": "python-5-853", + "uuid": "python-5-859", "seg": [ [ [ @@ -51763,7 +60540,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6380208333333334, + "max": 0.6380997474747475 + }, "related_data": {} } } @@ -51771,23 +60551,27 @@ { "解决“双语言”难题": { "data": { - "uuid": "python-5-854", + "uuid": "python-5-860", "seg": [ [ [ "双", "语言", - "难题" + "难题", + "双语言" ] ] ], - "level": "1", + "level": { + "min": 0.6380997474747475, + "max": 0.6381786616161617 + }, "related_data": { "qa": { "data_id": [ - "8_1087322_1294082", - "8_7450887_53432105", - "8_7442971_53419987" + "8_1087322_1294082@8", + "8_7450887_53432105@8", + "8_7442971_53419987@8" ] } } @@ -51797,22 +60581,26 @@ { "为何不使用Python": { "data": { - "uuid": "python-5-855", + "uuid": "python-5-861", "seg": [ [ [ - "python" + "python", + "不使用" ] ] ], - "level": "1", + "level": { + "min": 0.6381786616161617, + "max": 0.6382575757575758 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1245", + "uuid": "python-4-1257", "seg": [ [ [ @@ -51822,12 +60610,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6380208333333334, + "max": 0.6382575757575758 + }, "related_data": { "qa": { "data_id": [ - "8_7444386_53422586", - "8_7430372_53397467" + "8_7444386_53422586@8", + "8_7430372_53397467@8" ] } } @@ -51840,7 +60631,7 @@ { "IPython与Jupyter": { "data": { - "uuid": "python-5-856", + "uuid": "python-5-862", "seg": [ [ [ @@ -51851,11 +60642,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6382575757575758, + "max": 0.638375946969697 + }, "related_data": { "qa": { "data_id": [ - "8_688181_553536" + "8_688181_553536@8" ] } } @@ -51865,7 +60659,7 @@ { "statsmodels": { "data": { - "uuid": "python-5-857", + "uuid": "python-5-863", "seg": [ [ [ @@ -51873,14 +60667,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.638375946969697, + "max": 0.6384943181818181 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1246", + "uuid": "python-4-1258", "seg": [ [ [ @@ -51889,7 +60686,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6382575757575758, + "max": 0.6384943181818181 + }, "related_data": {} } } @@ -51900,7 +60700,7 @@ { "Windows": { "data": { - "uuid": "python-5-858", + "uuid": "python-5-864", "seg": [ [ [ @@ -51908,7 +60708,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6384943181818181, + "max": 0.6385337752525252 + }, "related_data": {} } } @@ -51916,7 +60719,7 @@ { "Apple(OS X和macOS)": { "data": { - "uuid": "python-5-859", + "uuid": "python-5-865", "seg": [ [ [ @@ -51929,15 +60732,25 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.6385337752525252, + "max": 0.6385732323232323 + }, + "related_data": { + "qa": { + "data_id": [ + "8_7436909_53409177@8", + "8_7430452_53397530@8" + ] + } + } } } }, { "GNU/Linux": { "data": { - "uuid": "python-5-860", + "uuid": "python-5-866", "seg": [ [ [ @@ -51946,11 +60759,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6385732323232323, + "max": 0.6386126893939393 + }, "related_data": { "qa": { "data_id": [ - "8_1079554_1284231" + "8_1079554_1284231@8" ] } } @@ -51960,7 +60776,7 @@ { "安装及更新Python包": { "data": { - "uuid": "python-5-861", + "uuid": "python-5-867", "seg": [ [ [ @@ -51973,7 +60789,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6386126893939393, + "max": 0.6386521464646464 + }, "related_data": {} } } @@ -51981,7 +60800,7 @@ { "Python 2和Python": { "data": { - "uuid": "python-5-862", + "uuid": "python-5-868", "seg": [ [ [ @@ -51992,7 +60811,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6386521464646464, + "max": 0.6386916035353535 + }, "related_data": {} } } @@ -52000,7 +60822,7 @@ { "集成开发环境和文本编辑器": { "data": { - "uuid": "python-5-863", + "uuid": "python-5-869", "seg": [ [ [ @@ -52010,18 +60832,22 @@ ], [ "文本编辑", - "器" + "器", + "文本编辑器" ] ] ], - "level": "1", + "level": { + "min": 0.6386916035353535, + "max": 0.6387310606060606 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1247", + "uuid": "python-4-1259", "seg": [ [ [ @@ -52032,7 +60858,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6384943181818181, + "max": 0.6387310606060606 + }, "related_data": {} } } @@ -52040,7 +60869,7 @@ { "社区和会议": { "data": { - "uuid": "python-4-1248", + "uuid": "python-4-1260", "seg": [ [ [ @@ -52051,54 +60880,33 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6387310606060606, + "max": 0.638967803030303 + }, "related_data": {} } } }, - { - "快速浏览本书": { - "children": [ - { - "代码示例": { - "children": [ - { - "一次性模拟多次随机漫步": { - "data": { - "uuid": "python-6-174", - "seg": [ - [ - [ - "一次性", - "模拟", - "随机", - "漫步" - ] - ] - ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "8_7461711_53446985", - "8_7399272_53346692" - ] - } - } - } - } - } - ], + { + "快速浏览本书": { + "children": [ + { + "代码示例": { "data": { - "uuid": "python-5-864", + "uuid": "python-5-870", "seg": [ [ [ - "示例" + "示例", + "代码示例" ] ] ], - "level": "1", + "level": { + "min": 0.638967803030303, + "max": 0.6390269886363635 + }, "related_data": {} } } @@ -52106,16 +60914,20 @@ { "示例数据": { "data": { - "uuid": "python-5-865", + "uuid": "python-5-871", "seg": [ [ [ "示例", - "数据" + "数据", + "示例数据" ] ] ], - "level": "1", + "level": { + "min": 0.6390269886363635, + "max": 0.6390861742424242 + }, "related_data": {} } } @@ -52123,7 +60935,7 @@ { "导入约定": { "data": { - "uuid": "python-5-866", + "uuid": "python-5-872", "seg": [ [ [ @@ -52132,7 +60944,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6390861742424242, + "max": 0.6391453598484849 + }, "related_data": {} } } @@ -52140,7 +60955,7 @@ { "术语": { "data": { - "uuid": "python-5-867", + "uuid": "python-5-873", "seg": [ [ [ @@ -52148,27 +60963,34 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6391453598484849, + "max": 0.6392045454545454 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1249", + "uuid": "python-4-1261", "seg": [ [ [ "快速", - "浏览" + "浏览", + "快速浏览" ] ] ], - "level": "1", + "level": { + "min": 0.638967803030303, + "max": 0.6392045454545454 + }, "related_data": { "qa": { "data_id": [ - "8_7432807_53433894" + "8_7432807_53433894@8" ] } } @@ -52177,7 +60999,7 @@ } ], "data": { - "uuid": "python-3-231", + "uuid": "python-3-232", "seg": [ [ [ @@ -52185,7 +61007,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6377840909090909, + "max": 0.6392045454545454 + }, "related_data": {} } } @@ -52199,17 +61024,21 @@ { "内建序列函数": { "data": { - "uuid": "python-5-868", + "uuid": "python-5-874", "seg": [ [ [ "建", "序列", - "函数" + "函数", + "序列函数" ] ] ], - "level": "1", + "level": { + "min": 0.6392045454545454, + "max": 0.6394412878787878 + }, "related_data": {} } } @@ -52217,7 +61046,7 @@ { "集合": { "data": { - "uuid": "python-5-869", + "uuid": "python-5-875", "seg": [ [ [ @@ -52225,14 +61054,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6394412878787878, + "max": 0.6396780303030303 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1250", + "uuid": "python-4-1262", "seg": [ [ [ @@ -52243,11 +61075,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6392045454545454, + "max": 0.6396780303030303 + }, "related_data": { "qa": { "data_id": [ - "8_7449231_53430634" + "8_7449231_53430634@8" ] } } @@ -52260,12 +61095,13 @@ { "命名空间、作用域和本地函数": { "data": { - "uuid": "python-5-870", + "uuid": "python-5-876", "seg": [ [ [ "命名", - "空间" + "空间", + "命名空间" ], [ "作用域" @@ -52275,11 +61111,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6396780303030303, + "max": 0.6397456709956709 + }, "related_data": { "qa": { "data_id": [ - "8_797744_887910" + "8_797744_887910@8" ] } } @@ -52289,7 +61128,7 @@ { "返回多个值": { "data": { - "uuid": "python-5-871", + "uuid": "python-5-877", "seg": [ [ [ @@ -52298,7 +61137,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6397456709956709, + "max": 0.6398133116883117 + }, "related_data": {} } } @@ -52306,7 +61148,7 @@ { "函数是对象": { "data": { - "uuid": "python-5-872", + "uuid": "python-5-878", "seg": [ [ [ @@ -52315,20 +61157,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6398133116883117, + "max": 0.6398809523809523 + }, "related_data": { "qa": { "data_id": [ - "8_7451750_53433211", - "8_703144_593982", - "8_356621_372419", - "8_7409903_53360369", - "8_7440948_53416651", - "8_7418387_53374331", - "8_357891_375207", - "8_4645846_30317356", - "8_390227_431620", - "8_7435502_53406141" + "8_7451750_53433211@8", + "8_703144_593982@8", + "8_356621_372419@8", + "8_7409903_53360369@8", + "8_7440948_53416651@8", + "8_7418387_53374331@8", + "8_357891_375207@8", + "8_4645846_30317356@8", + "8_390227_431620@8", + "8_7435502_53406141@8" ] } } @@ -52338,7 +61183,7 @@ { "匿名(Lambda)函数": { "data": { - "uuid": "python-5-873", + "uuid": "python-5-879", "seg": [ [ [ @@ -52348,15 +61193,27 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.6398809523809523, + "max": 0.6399485930735931 + }, + "related_data": { + "qa": { + "data_id": [ + "8_7395146_53337257@8", + "8_7396015_53339152@8", + "8_1063329_1261255@8", + "8_1071676_1273970@8" + ] + } + } } } }, { "柯里化:部分参数应用": { "data": { - "uuid": "python-5-874", + "uuid": "python-5-880", "seg": [ [ [ @@ -52365,11 +61222,15 @@ ], [ [ - "参数" + "参数", + "部分参数" ] ] ], - "level": "1", + "level": { + "min": 0.6399485930735931, + "max": 0.6400162337662337 + }, "related_data": {} } } @@ -52377,7 +61238,7 @@ { "生成器": { "data": { - "uuid": "python-5-875", + "uuid": "python-5-881", "seg": [ [ [ @@ -52385,7 +61246,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6400162337662337, + "max": 0.6400838744588745 + }, "related_data": {} } } @@ -52393,23 +61257,27 @@ { "错误和异常处理": { "data": { - "uuid": "python-5-876", + "uuid": "python-5-882", "seg": [ [ [], [ - "异常" + "异常", + "异常处理" ] ] ], - "level": "1", + "level": { + "min": 0.6400838744588745, + "max": 0.6401515151515151 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1251", + "uuid": "python-4-1263", "seg": [ [ [ @@ -52417,7 +61285,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6396780303030303, + "max": 0.6401515151515151 + }, "related_data": {} } } @@ -52428,7 +61299,7 @@ { "字节与Unicode文件": { "data": { - "uuid": "python-5-877", + "uuid": "python-5-883", "seg": [ [ [ @@ -52440,14 +61311,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6401515151515151, + "max": 0.640625 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1252", + "uuid": "python-4-1264", "seg": [ [ [ @@ -52458,14 +61332,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6401515151515151, + "max": 0.640625 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-232", + "uuid": "python-3-233", "seg": [ [ [ @@ -52480,7 +61357,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6392045454545454, + "max": 0.640625 + }, "related_data": {} } } @@ -52494,7 +61374,7 @@ { "生成ndarray": { "data": { - "uuid": "python-5-878", + "uuid": "python-5-884", "seg": [ [ [ @@ -52503,13 +61383,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.640625, + "max": 0.6406539888682746 + }, "related_data": { "qa": { "data_id": [ - "8_7461639_53446928", - "8_898843_1035505", - "8_1082356_1288345" + "8_7461639_53446928@8", + "8_898843_1035505@8", + "8_1082356_1288345@8" ] } } @@ -52519,7 +61402,7 @@ { "ndarray的数据类型": { "data": { - "uuid": "python-5-879", + "uuid": "python-5-885", "seg": [ [ [ @@ -52528,11 +61411,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6406539888682746, + "max": 0.6406829777365491 + }, "related_data": { "qa": { "data_id": [ - "8_792591_884620" + "8_792591_884620@8" ] } } @@ -52542,30 +61428,34 @@ { "NumPy数组算术": { "data": { - "uuid": "python-5-880", + "uuid": "python-5-886", "seg": [ [ [ "numpy", "数组", - "算术" + "算术", + "数组算术" ] ] ], - "level": "1", + "level": { + "min": 0.6406829777365491, + "max": 0.6407119666048238 + }, "related_data": { "qa": { "data_id": [ - "8_1906824_9415288", - "8_7418088_53373929", - "8_5781159_36547322", - "8_7421145_53379058", - "8_7409349_53359726", - "8_7432142_53401084", - "8_1099671_1314699", - "8_749709_802350", - "8_7414453_53367218", - "8_750865_805888" + "8_1906824_9415288@8", + "8_7418088_53373929@8", + "8_5781159_36547322@8", + "8_7421145_53379058@8", + "8_7409349_53359726@8", + "8_7432142_53401084@8", + "8_1099671_1314699@8", + "8_749709_802350@8", + "8_7414453_53367218@8", + "8_750865_805888@8" ] } } @@ -52575,19 +61465,23 @@ { "基础索引与切片": { "data": { - "uuid": "python-5-881", + "uuid": "python-5-887", "seg": [ [ [ "基础", - "索引" + "索引", + "基础索引" ], [ "切片" ] ] ], - "level": "1", + "level": { + "min": 0.6407119666048238, + "max": 0.6407409554730983 + }, "related_data": {} } } @@ -52595,16 +61489,20 @@ { "布尔索引": { "data": { - "uuid": "python-5-882", + "uuid": "python-5-888", "seg": [ [ [ "布尔", - "索引" + "索引", + "布尔索引" ] ] ], - "level": "1", + "level": { + "min": 0.6407409554730983, + "max": 0.6407699443413729 + }, "related_data": {} } } @@ -52612,7 +61510,7 @@ { "神奇索引": { "data": { - "uuid": "python-5-883", + "uuid": "python-5-889", "seg": [ [ [ @@ -52621,7 +61519,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6407699443413729, + "max": 0.6407989332096474 + }, "related_data": {} } } @@ -52629,7 +61530,7 @@ { "数组转置和换轴": { "data": { - "uuid": "python-5-884", + "uuid": "python-5-890", "seg": [ [ [ @@ -52641,20 +61542,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6407989332096474, + "max": 0.640827922077922 + }, "related_data": { "qa": { "data_id": [ - "8_7408783_53358999", - "8_3535547_23009112", - "8_7445364_53424010", - "8_7452581_53434587", - "8_831996_933928", - "8_864358_993346", - "8_7418765_53375395", - "8_701111_590653", - "8_1097325_1310672", - "8_747864_799424" + "8_7408783_53358999@8", + "8_3535547_23009112@8", + "8_7445364_53424010@8", + "8_7452581_53434587@8", + "8_831996_933928@8", + "8_864358_993346@8", + "8_7418765_53375395@8", + "8_701111_590653@8", + "8_1097325_1310672@8", + "8_747864_799424@8" ] } } @@ -52663,7 +61567,7 @@ } ], "data": { - "uuid": "python-4-1253", + "uuid": "python-4-1265", "seg": [ [ [ @@ -52674,11 +61578,15 @@ [ [ "数组", - "对象" + "对象", + "数组对象" ] ] ], - "level": "1", + "level": { + "min": 0.640625, + "max": 0.640827922077922 + }, "related_data": {} } } @@ -52686,7 +61594,7 @@ { "通用函数:快速的逐元素数组函数": { "data": { - "uuid": "python-4-1254", + "uuid": "python-4-1266", "seg": [ [ [ @@ -52700,11 +61608,17 @@ "逐", "元素", "数组", - "函数" + "函数", + "逐元素", + "元素数组", + "数组函数" ] ] ], - "level": "1", + "level": { + "min": 0.640827922077922, + "max": 0.6410308441558442 + }, "related_data": {} } } @@ -52715,7 +61629,7 @@ { "将条件逻辑作为数组操作": { "data": { - "uuid": "python-5-885", + "uuid": "python-5-891", "seg": [ [ [ @@ -52725,11 +61639,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6410308441558442, + "max": 0.6410714285714286 + }, "related_data": { "qa": { "data_id": [ - "8_768492_828880" + "8_768492_828880@8" ] } } @@ -52739,7 +61656,7 @@ { "数学和统计方法": { "data": { - "uuid": "python-5-886", + "uuid": "python-5-892", "seg": [ [ [ @@ -52751,7 +61668,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6410714285714286, + "max": 0.641112012987013 + }, "related_data": {} } } @@ -52759,17 +61679,21 @@ { "布尔值数组的方法": { "data": { - "uuid": "python-5-887", + "uuid": "python-5-893", "seg": [ [ [ "布尔值", "数组", - "方法" + "方法", + "布尔值数组" ] ] ], - "level": "1", + "level": { + "min": 0.641112012987013, + "max": 0.6411525974025974 + }, "related_data": {} } } @@ -52777,7 +61701,7 @@ { "排序": { "data": { - "uuid": "python-5-888", + "uuid": "python-5-894", "seg": [ [ [ @@ -52785,15 +61709,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6411525974025974, + "max": 0.6411931818181819 + }, "related_data": { "qa": { "data_id": [ - "8_700541_589424", - "8_1063906_1262051", - "8_217438_165891", - "8_7425372_53386794", - "8_7399575_53346992" + "8_700541_589424@8", + "8_1063906_1262051@8", + "8_217438_165891@8", + "8_7425372_53386794@8", + "8_7399575_53346992@8" ] } } @@ -52803,7 +61730,7 @@ { "唯一值与其他集合逻辑": { "data": { - "uuid": "python-5-889", + "uuid": "python-5-895", "seg": [ [ [ @@ -52816,24 +61743,32 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6411931818181819, + "max": 0.6412337662337663 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1255", + "uuid": "python-4-1267", "seg": [ [ [ "数组", "面向", - "编程" + "编程", + "面向数组", + "数组编程" ] ] ], - "level": "1", + "level": { + "min": 0.6410308441558442, + "max": 0.6412337662337663 + }, "related_data": {} } } @@ -52841,7 +61776,7 @@ { "使用数组进行文件输入和输出": { "data": { - "uuid": "python-4-1256", + "uuid": "python-4-1268", "seg": [ [ [ @@ -52854,12 +61789,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6412337662337663, + "max": 0.6414366883116883 + }, "related_data": { "qa": { "data_id": [ - "8_7455407_53438285", - "8_758758_814791" + "8_7455407_53438285@8", + "8_758758_814791@8" ] } } @@ -52869,7 +61807,7 @@ { "线性代数": { "data": { - "uuid": "python-4-1257", + "uuid": "python-4-1269", "seg": [ [ [ @@ -52877,7 +61815,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6414366883116883, + "max": 0.6416396103896104 + }, "related_data": {} } } @@ -52885,7 +61826,7 @@ { "伪随机数生成": { "data": { - "uuid": "python-4-1258", + "uuid": "python-4-1270", "seg": [ [ [ @@ -52895,20 +61836,90 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6416396103896104, + "max": 0.6418425324675325 + }, "related_data": { "qa": { "data_id": [ - "8_702083_592274" + "8_702083_592274@8" ] } } } } + }, + { + "示例:随机漫步": { + "children": [ + { + "一次性模拟多次随机漫步": { + "data": { + "uuid": "python-5-896", + "seg": [ + [ + [ + "一次性", + "模拟", + "随机", + "漫步", + "一次性模拟", + "随机漫步" + ] + ] + ], + "level": { + "min": 0.6418425324675325, + "max": 0.6420454545454546 + }, + "related_data": { + "qa": { + "data_id": [ + "8_7461711_53446985@8", + "8_7399272_53346692@8", + "8_716715_709624@8", + "8_7458855_53443612@8", + "8_7422933_53382743@8", + "8_1097501_1311047@8", + "8_7465264_53452040@8", + "8_7444725_53423310@8", + "8_7450673_53431696@8", + "8_7437984_53411246@8" + ] + } + } + } + } + } + ], + "data": { + "uuid": "python-4-1271", + "seg": [ + [ + [ + "示例" + ] + ], + [ + [ + "随机", + "漫步", + "随机漫步" + ] + ] + ], + "level": { + "min": 0.6418425324675325, + "max": 0.6420454545454546 + }, + "related_data": {} + } + } } ], "data": { - "uuid": "python-3-233", + "uuid": "python-3-234", "seg": [ [ [ @@ -52926,7 +61937,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.640625, + "max": 0.6420454545454546 + }, "related_data": {} } } @@ -52940,7 +61954,7 @@ { "Series": { "data": { - "uuid": "python-5-890", + "uuid": "python-5-897", "seg": [ [ [ @@ -52948,12 +61962,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6420454545454546, + "max": 0.6422032828282829 + }, "related_data": { "qa": { "data_id": [ - "8_863734_999674", - "8_770378_832056" + "8_863734_999674@8", + "8_770378_832056@8" ] } } @@ -52963,7 +61980,7 @@ { "DataFrame": { "data": { - "uuid": "python-5-891", + "uuid": "python-5-898", "seg": [ [ [ @@ -52971,20 +61988,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6422032828282829, + "max": 0.6423611111111112 + }, "related_data": { "qa": { "data_id": [ - "8_7439198_53412993", - "8_7457519_53441741", - "8_7428688_53394804", - "8_7396359_53339924", - "8_7410819_53361621", - "8_7407107_53356857", - "8_886557_1035772", - "8_772299_836735", - "8_7431560_53400830", - "8_7416732_53371115" + "8_7439198_53412993@8", + "8_7457519_53441741@8", + "8_7428688_53394804@8", + "8_7396359_53339924@8", + "8_7410819_53361621@8", + "8_7407107_53356857@8", + "8_886557_1035772@8", + "8_772299_836735@8", + "8_7431560_53400830@8", + "8_7416732_53371115@8" ] } } @@ -52994,20 +62014,24 @@ { "索引对象": { "data": { - "uuid": "python-5-892", + "uuid": "python-5-899", "seg": [ [ [ "索引", - "对象" + "对象", + "索引对象" ] ] ], - "level": "1", + "level": { + "min": 0.6423611111111112, + "max": 0.6425189393939394 + }, "related_data": { "qa": { "data_id": [ - "8_7410664_53361540" + "8_7410664_53361540@8" ] } } @@ -53016,7 +62040,7 @@ } ], "data": { - "uuid": "python-4-1259", + "uuid": "python-4-1272", "seg": [ [ [ @@ -53026,20 +62050,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6420454545454546, + "max": 0.6425189393939394 + }, "related_data": { "qa": { "data_id": [ - "8_7432262_53401350", - "8_1060287_1257810", - "8_7407880_53358083", - "8_714781_706834", - "8_1063561_1261573", - "8_7130867_51214474", - "8_7456702_53440829", - "8_7403605_53352133", - "8_748074_799761", - "8_693426_571175" + "8_7432262_53401350@8", + "8_1060287_1257810@8", + "8_7407880_53358083@8", + "8_714781_706834@8", + "8_1063561_1261573@8", + "8_7130867_51214474@8", + "8_7456702_53440829@8", + "8_7403605_53352133@8", + "8_748074_799761@8", + "8_693426_571175@8" ] } } @@ -53052,7 +62079,7 @@ { "重建索引": { "data": { - "uuid": "python-5-893", + "uuid": "python-5-900", "seg": [ [ [ @@ -53061,7 +62088,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6425189393939394, + "max": 0.6425978535353536 + }, "related_data": {} } } @@ -53069,18 +62099,22 @@ { "轴向上删除条目": { "data": { - "uuid": "python-5-894", + "uuid": "python-5-901", "seg": [ [ [ "轴", "向上", "删除", - "条目" + "条目", + "向上删除" ] ] ], - "level": "1", + "level": { + "min": 0.6425978535353536, + "max": 0.6426767676767677 + }, "related_data": {} } } @@ -53088,7 +62122,7 @@ { "索引、选择与过滤": { "data": { - "uuid": "python-5-895", + "uuid": "python-5-902", "seg": [ [ [ @@ -53102,7 +62136,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6426767676767677, + "max": 0.6427556818181819 + }, "related_data": {} } } @@ -53110,16 +62147,20 @@ { "整数索引": { "data": { - "uuid": "python-5-896", + "uuid": "python-5-903", "seg": [ [ [ "整数", - "索引" + "索引", + "整数索引" ] ] ], - "level": "1", + "level": { + "min": 0.6427556818181819, + "max": 0.6428345959595959 + }, "related_data": {} } } @@ -53127,7 +62168,7 @@ { "算术和数据对齐": { "data": { - "uuid": "python-5-897", + "uuid": "python-5-904", "seg": [ [ [ @@ -53139,7 +62180,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6428345959595959, + "max": 0.64291351010101 + }, "related_data": {} } } @@ -53147,7 +62191,7 @@ { "含有重复标签的轴索引": { "data": { - "uuid": "python-5-898", + "uuid": "python-5-905", "seg": [ [ [ @@ -53155,18 +62199,23 @@ "重复", "标签", "轴", - "索引" + "索引", + "重复标签", + "轴索引" ] ] ], - "level": "1", + "level": { + "min": 0.64291351010101, + "max": 0.6429924242424242 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1260", + "uuid": "python-4-1273", "seg": [ [ [ @@ -53174,7 +62223,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6425189393939394, + "max": 0.6429924242424242 + }, "related_data": {} } } @@ -53182,7 +62234,7 @@ { "描述性统计的概述与计算": { "data": { - "uuid": "python-4-1261", + "uuid": "python-4-1274", "seg": [ [ [ @@ -53195,14 +62247,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6429924242424242, + "max": 0.6434659090909091 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-234", + "uuid": "python-3-235", "seg": [ [ [ @@ -53211,7 +62266,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6420454545454546, + "max": 0.6434659090909091 + }, "related_data": {} } } @@ -53225,7 +62283,7 @@ { "分块读入文本文件": { "data": { - "uuid": "python-5-899", + "uuid": "python-5-906", "seg": [ [ [ @@ -53235,7 +62293,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6434659090909091, + "max": 0.6435369318181818 + }, "related_data": {} } } @@ -53243,21 +62304,25 @@ { "将数据写入文本格式": { "data": { - "uuid": "python-5-900", + "uuid": "python-5-907", "seg": [ [ [ "数据", "写入", - "文本格式" + "文本格式", + "将数据" ] ] ], - "level": "3", + "level": { + "min": 0.6435369318181818, + "max": 0.6436079545454545 + }, "related_data": { "qa": { "data_id": [ - "8_7442555_53419444" + "8_7442555_53419444@8" ] } } @@ -53267,7 +62332,7 @@ { "使用分隔格式": { "data": { - "uuid": "python-5-901", + "uuid": "python-5-908", "seg": [ [ [ @@ -53276,7 +62341,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6436079545454545, + "max": 0.6436789772727273 + }, "related_data": {} } } @@ -53284,7 +62352,7 @@ { "JSON数据": { "data": { - "uuid": "python-5-902", + "uuid": "python-5-909", "seg": [ [ [ @@ -53293,7 +62361,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6436789772727273, + "max": 0.6437499999999999 + }, "related_data": {} } } @@ -53301,7 +62372,7 @@ { "XML和HTML:网络抓取": { "data": { - "uuid": "python-5-903", + "uuid": "python-5-910", "seg": [ [ [ @@ -53318,13 +62389,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6437499999999999, + "max": 0.6438210227272727 + }, "related_data": { "qa": { "data_id": [ - "8_730559_745643", - "8_770033_831427", - "8_7430854_53398410" + "8_730559_745643@8", + "8_770033_831427@8", + "8_7430854_53398410@8" ] } } @@ -53333,17 +62407,21 @@ } ], "data": { - "uuid": "python-4-1262", + "uuid": "python-4-1275", "seg": [ [ [ "文本格式", "数据", - "读写" + "读写", + "文本格式数据" ] ] ], - "level": "1", + "level": { + "min": 0.6434659090909091, + "max": 0.6438210227272727 + }, "related_data": {} } } @@ -53354,7 +62432,7 @@ { "使用HDF5格式": { "data": { - "uuid": "python-5-904", + "uuid": "python-5-911", "seg": [ [ [ @@ -53363,17 +62441,20 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6438210227272727, + "max": 0.6439985795454546 + }, "related_data": { "qa": { "data_id": [ - "8_7462874_53448614", - "8_7437528_53410454", - "8_7462767_53448474", - "8_1095306_1306538", - "8_7454103_53436878", - "8_1095307_1306537", - "8_1099026_1313983" + "8_7462874_53448614@8", + "8_7437528_53410454@8", + "8_7462767_53448474@8", + "8_1095306_1306538@8", + "8_7454103_53436878@8", + "8_1095307_1306537@8", + "8_1099026_1313983@8" ] } } @@ -53383,7 +62464,7 @@ { "读取Microsoft Excel文件": { "data": { - "uuid": "python-5-905", + "uuid": "python-5-912", "seg": [ [ [ @@ -53394,23 +62475,30 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6439985795454546, + "max": 0.6441761363636364 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1263", + "uuid": "python-4-1276", "seg": [ [ [ "二进制", - "格式" + "格式", + "二进制格式" ] ] ], - "level": "1", + "level": { + "min": 0.6438210227272727, + "max": 0.6441761363636364 + }, "related_data": {} } } @@ -53418,7 +62506,7 @@ { "与Web API交互": { "data": { - "uuid": "python-4-1264", + "uuid": "python-4-1277", "seg": [ [ [], @@ -53429,11 +62517,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6441761363636364, + "max": 0.64453125 + }, "related_data": { "qa": { "data_id": [ - "8_7449539_53429712" + "8_7449539_53429712@8" ] } } @@ -53443,7 +62534,7 @@ { "与数据库交互": { "data": { - "uuid": "python-4-1265", + "uuid": "python-4-1278", "seg": [ [ [], @@ -53453,14 +62544,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.64453125, + "max": 0.6448863636363636 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-235", + "uuid": "python-3-236", "seg": [ [ [ @@ -53475,7 +62569,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6434659090909091, + "max": 0.6448863636363636 + }, "related_data": {} } } @@ -53489,7 +62586,7 @@ { "过滤缺失值": { "data": { - "uuid": "python-5-906", + "uuid": "python-5-913", "seg": [ [ [ @@ -53499,7 +62596,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6448863636363636, + "max": 0.6451231060606061 + }, "related_data": {} } } @@ -53507,7 +62607,7 @@ { "补全缺失值": { "data": { - "uuid": "python-5-907", + "uuid": "python-5-914", "seg": [ [ [ @@ -53517,18 +62617,21 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6451231060606061, + "max": 0.6453598484848485 + }, "related_data": { "qa": { "data_id": [ - "8_762637_820886", - "8_7404260_53353079", - "8_718744_712541", - "8_7407153_53356945", - "8_1648440_6825009", - "8_1027062_1222172", - "8_1069072_1269890", - "8_932853_1071898" + "8_762637_820886@8", + "8_7404260_53353079@8", + "8_718744_712541@8", + "8_7407153_53356945@8", + "8_1648440_6825009@8", + "8_1027062_1222172@8", + "8_1069072_1269890@8", + "8_932853_1071898@8" ] } } @@ -53537,7 +62640,7 @@ } ], "data": { - "uuid": "python-4-1266", + "uuid": "python-4-1279", "seg": [ [ [ @@ -53546,7 +62649,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6448863636363636, + "max": 0.6453598484848485 + }, "related_data": {} } } @@ -53557,21 +62663,25 @@ { "删除重复值": { "data": { - "uuid": "python-5-908", + "uuid": "python-5-915", "seg": [ [ [ "删除", "重复", - "值" + "值", + "重复值" ] ] ], - "level": "1", + "level": { + "min": 0.6453598484848485, + "max": 0.6454190340909092 + }, "related_data": { "qa": { "data_id": [ - "8_7460165_53445223" + "8_7460165_53445223@8" ] } } @@ -53581,7 +62691,7 @@ { "使用函数或映射进行数据转换": { "data": { - "uuid": "python-5-909", + "uuid": "python-5-916", "seg": [ [ [ @@ -53592,20 +62702,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6454190340909092, + "max": 0.6454782196969697 + }, "related_data": { "qa": { "data_id": [ - "8_728331_739411", - "8_7427073_53391086", - "8_7395984_53339398", - "8_1101333_1315894", - "8_7456552_53440542", - "8_1097423_1310921", - "8_7404699_53353694", - "8_1015154_1206793", - "8_4645343_29327952", - "8_1096152_1308171" + "8_728331_739411@8", + "8_7427073_53391086@8", + "8_7395984_53339398@8", + "8_1101333_1315894@8", + "8_7456552_53440542@8", + "8_1097423_1310921@8", + "8_7404699_53353694@8", + "8_1015154_1206793@8", + "8_4645343_29327952@8", + "8_1096152_1308171@8" ] } } @@ -53615,19 +62728,23 @@ { "替代值": { "data": { - "uuid": "python-5-910", + "uuid": "python-5-917", "seg": [ [ [ - "值" + "值", + "替代值" ] ] ], - "level": "1", + "level": { + "min": 0.6454782196969697, + "max": 0.6455374053030303 + }, "related_data": { "qa": { "data_id": [ - "8_752040_805943" + "8_752040_805943@8" ] } } @@ -53637,17 +62754,22 @@ { "重命名轴索引": { "data": { - "uuid": "python-5-911", + "uuid": "python-5-918", "seg": [ [ [ "重命名", "轴", - "索引" + "索引", + "重命名轴", + "轴索引" ] ] ], - "level": "1", + "level": { + "min": 0.6455374053030303, + "max": 0.6455965909090909 + }, "related_data": {} } } @@ -53655,7 +62777,7 @@ { "离散化和分箱": { "data": { - "uuid": "python-5-912", + "uuid": "python-5-919", "seg": [ [ [ @@ -53667,7 +62789,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6455965909090909, + "max": 0.6456557765151516 + }, "related_data": {} } } @@ -53675,7 +62800,7 @@ { "检测和过滤异常值": { "data": { - "uuid": "python-5-913", + "uuid": "python-5-920", "seg": [ [ [ @@ -53684,11 +62809,15 @@ [ "过滤", "异常", - "值" + "值", + "异常值" ] ] ], - "level": "1", + "level": { + "min": 0.6456557765151516, + "max": 0.6457149621212122 + }, "related_data": {} } } @@ -53696,7 +62825,7 @@ { "置换和随机抽样": { "data": { - "uuid": "python-5-914", + "uuid": "python-5-921", "seg": [ [ [ @@ -53707,7 +62836,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6457149621212122, + "max": 0.6457741477272727 + }, "related_data": {} } } @@ -53715,7 +62847,7 @@ { "计算指标/虚拟变量": { "data": { - "uuid": "python-5-915", + "uuid": "python-5-922", "seg": [ [ [ @@ -53726,14 +62858,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6457741477272727, + "max": 0.6458333333333334 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1267", + "uuid": "python-4-1280", "seg": [ [ [ @@ -53742,7 +62877,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6453598484848485, + "max": 0.6458333333333334 + }, "related_data": {} } } @@ -53753,17 +62891,22 @@ { "字符串对象方法": { "data": { - "uuid": "python-5-916", + "uuid": "python-5-923", "seg": [ [ [ "字符串", "对象", - "方法" + "方法", + "字符串对象", + "对象方法" ] ] ], - "level": "1", + "level": { + "min": 0.6458333333333334, + "max": 0.6460700757575758 + }, "related_data": {} } } @@ -53771,25 +62914,29 @@ { "pandas中的向量化字符串函数": { "data": { - "uuid": "python-5-917", + "uuid": "python-5-924", "seg": [ [ [ "pandas", "量化", "字符串", - "函数" + "函数", + "字符串函数" ] ] ], - "level": "3", + "level": { + "min": 0.6460700757575758, + "max": 0.6463068181818182 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1268", + "uuid": "python-4-1281", "seg": [ [ [ @@ -53798,14 +62945,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6458333333333334, + "max": 0.6463068181818182 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-236", + "uuid": "python-3-237", "seg": [ [ [ @@ -53815,7 +62965,10 @@ [] ] ], - "level": "1", + "level": { + "min": 0.6448863636363636, + "max": 0.6463068181818182 + }, "related_data": {} } } @@ -53829,7 +62982,7 @@ { "重排序和层级排序": { "data": { - "uuid": "python-5-918", + "uuid": "python-5-925", "seg": [ [ [ @@ -53838,11 +62991,15 @@ ], [ "层级", - "排序" + "排序", + "层级排序" ] ] ], - "level": "3", + "level": { + "min": 0.6463068181818182, + "max": 0.6464646464646465 + }, "related_data": {} } } @@ -53850,7 +63007,7 @@ { "按层级进行汇总统计": { "data": { - "uuid": "python-5-919", + "uuid": "python-5-926", "seg": [ [ [ @@ -53860,7 +63017,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6464646464646465, + "max": 0.6466224747474748 + }, "related_data": {} } } @@ -53868,7 +63028,7 @@ { "使用DataFrame的列进行索引": { "data": { - "uuid": "python-5-920", + "uuid": "python-5-927", "seg": [ [ [ @@ -53878,20 +63038,23 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6466224747474748, + "max": 0.6467803030303031 + }, "related_data": { "qa": { "data_id": [ - "8_771286_833820", - "8_770954_833169", - "8_1062510_1260268", - "8_817993_913246", - "8_7426896_53390877", - "8_968633_1124005", - "8_7411646_53362595", - "8_963654_1115547", - "8_7425144_53386402", - "8_1096738_1309289" + "8_771286_833820@8", + "8_770954_833169@8", + "8_1062510_1260268@8", + "8_817993_913246@8", + "8_7426896_53390877@8", + "8_968633_1124005@8", + "8_7411646_53362595@8", + "8_963654_1115547@8", + "8_7425144_53386402@8", + "8_1096738_1309289@8" ] } } @@ -53900,16 +63063,20 @@ } ], "data": { - "uuid": "python-4-1269", + "uuid": "python-4-1282", "seg": [ [ [ "分层", - "索引" + "索引", + "分层索引" ] ] ], - "level": "3", + "level": { + "min": 0.6463068181818182, + "max": 0.6467803030303031 + }, "related_data": {} } } @@ -53920,18 +63087,22 @@ { "数据库风格的DataFrame连接": { "data": { - "uuid": "python-5-921", + "uuid": "python-5-928", "seg": [ [ [ "数据库", "风格", "dataframe", - "连接" + "连接", + "数据库风格" ] ] ], - "level": "3", + "level": { + "min": 0.6467803030303031, + "max": 0.6468986742424243 + }, "related_data": {} } } @@ -53939,7 +63110,7 @@ { "根据索引合并": { "data": { - "uuid": "python-5-922", + "uuid": "python-5-929", "seg": [ [ [ @@ -53948,13 +63119,16 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6468986742424243, + "max": 0.6470170454545454 + }, "related_data": { "qa": { "data_id": [ - "8_773576_837590", - "8_755008_810341", - "8_7434558_53405056" + "8_773576_837590@8", + "8_755008_810341@8", + "8_7434558_53405056@8" ] } } @@ -53964,7 +63138,7 @@ { "沿轴向连接": { "data": { - "uuid": "python-5-923", + "uuid": "python-5-930", "seg": [ [ [ @@ -53973,11 +63147,14 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6470170454545454, + "max": 0.6471354166666666 + }, "related_data": { "qa": { "data_id": [ - "8_7442665_53421670" + "8_7442665_53421670@8" ] } } @@ -53987,7 +63164,7 @@ { "联合重叠数据": { "data": { - "uuid": "python-5-924", + "uuid": "python-5-931", "seg": [ [ [ @@ -53997,14 +63174,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6471354166666666, + "max": 0.6472537878787878 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1270", + "uuid": "python-4-1283", "seg": [ [ [ @@ -54013,11 +63193,15 @@ [ "合并", "数据", - "集" + "集", + "数据集" ] ] ], - "level": "3", + "level": { + "min": 0.6467803030303031, + "max": 0.6472537878787878 + }, "related_data": {} } } @@ -54028,7 +63212,7 @@ { "使用多层索引进行重塑": { "data": { - "uuid": "python-5-925", + "uuid": "python-5-932", "seg": [ [ [ @@ -54037,7 +63221,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6472537878787878, + "max": 0.6474116161616161 + }, "related_data": {} } } @@ -54045,7 +63232,7 @@ { "将“长”透视为“宽”": { "data": { - "uuid": "python-5-926", + "uuid": "python-5-933", "seg": [ [ [ @@ -54055,7 +63242,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6474116161616161, + "max": 0.6475694444444444 + }, "related_data": {} } } @@ -54063,7 +63253,7 @@ { "将“宽”透视为“长”": { "data": { - "uuid": "python-5-927", + "uuid": "python-5-934", "seg": [ [ [ @@ -54073,14 +63263,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6475694444444444, + "max": 0.6477272727272727 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1271", + "uuid": "python-4-1284", "seg": [ [ [ @@ -54091,14 +63284,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6472537878787878, + "max": 0.6477272727272727 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-237", + "uuid": "python-3-238", "seg": [ [ [ @@ -54118,7 +63314,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6463068181818182, + "max": 0.6477272727272727 + }, "related_data": {} } } @@ -54132,7 +63331,7 @@ { "图片与子图": { "data": { - "uuid": "python-5-928", + "uuid": "python-5-935", "seg": [ [ [ @@ -54143,7 +63342,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6477272727272727, + "max": 0.6478456439393939 + }, "related_data": {} } } @@ -54151,7 +63353,7 @@ { "颜色、标记和线类型": { "data": { - "uuid": "python-5-929", + "uuid": "python-5-936", "seg": [ [ [ @@ -54160,11 +63362,16 @@ [ "标记", "和线", - "类型" + "类型", + "标记和线", + "和线类型" ] ] ], - "level": "1", + "level": { + "min": 0.6478456439393939, + "max": 0.6479640151515151 + }, "related_data": {} } } @@ -54172,7 +63379,7 @@ { "刻度、标签和图例": { "data": { - "uuid": "python-5-930", + "uuid": "python-5-937", "seg": [ [ [ @@ -54186,7 +63393,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6479640151515151, + "max": 0.6480823863636364 + }, "related_data": {} } } @@ -54194,7 +63404,7 @@ { "注释与子图加工": { "data": { - "uuid": "python-5-931", + "uuid": "python-5-938", "seg": [ [ [ @@ -54206,7 +63416,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6480823863636364, + "max": 0.6482007575757576 + }, "related_data": {} } } @@ -54214,25 +63427,29 @@ { "将图片保存到文件": { "data": { - "uuid": "python-5-932", + "uuid": "python-5-939", "seg": [ [ [ "图片", "保存", - "文件" + "文件", + "将图片" ] ] ], - "level": "1", + "level": { + "min": 0.6482007575757576, + "max": 0.6483191287878788 + }, "related_data": { "qa": { "data_id": [ - "8_7434228_53404650", - "8_692679_568378", - "8_7462884_53448612", - "8_700726_589781", - "8_7426151_53389071" + "8_7434228_53404650@8", + "8_692679_568378@8", + "8_7462884_53448612@8", + "8_700726_589781@8", + "8_7426151_53389071@8" ] } } @@ -54242,7 +63459,7 @@ { "matplotlib设置": { "data": { - "uuid": "python-5-933", + "uuid": "python-5-940", "seg": [ [ [ @@ -54251,20 +63468,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6483191287878788, + "max": 0.6484375 + }, "related_data": { "qa": { "data_id": [ - "8_960153_1111954", - "8_7417687_53373559", - "8_7444714_53423223", - "8_7406772_53356401", - "8_667771_487194", - "8_719931_714345", - "8_682823_538009", - "8_748583_800590", - "8_748633_800681", - "8_7447499_53427379" + "8_960153_1111954@8", + "8_7417687_53373559@8", + "8_7444714_53423223@8", + "8_7406772_53356401@8", + "8_667771_487194@8", + "8_719931_714345@8", + "8_682823_538009@8", + "8_748583_800590@8", + "8_748633_800681@8", + "8_7447499_53427379@8" ] } } @@ -54273,7 +63493,7 @@ } ], "data": { - "uuid": "python-4-1272", + "uuid": "python-4-1285", "seg": [ [ [ @@ -54284,7 +63504,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6477272727272727, + "max": 0.6484375 + }, "related_data": {} } } @@ -54292,24 +63515,28 @@ { "其他Python可视化工具": { "data": { - "uuid": "python-4-1273", + "uuid": "python-4-1286", "seg": [ [ [ "python", "可视化", - "工具" + "工具", + "可视化工具" ] ] ], - "level": "1", + "level": { + "min": 0.6484375, + "max": 0.6491477272727273 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-238", + "uuid": "python-3-239", "seg": [ [ [ @@ -54320,7 +63547,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6477272727272727, + "max": 0.6491477272727273 + }, "related_data": {} } } @@ -54334,7 +63564,7 @@ { "遍历各分组": { "data": { - "uuid": "python-5-934", + "uuid": "python-5-941", "seg": [ [ [ @@ -54343,7 +63573,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6491477272727273, + "max": 0.6492365056818182 + }, "related_data": {} } } @@ -54351,7 +63584,7 @@ { "选择一列或所有列的子集": { "data": { - "uuid": "python-5-935", + "uuid": "python-5-942", "seg": [ [ [ @@ -54361,7 +63594,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6492365056818182, + "max": 0.6493252840909092 + }, "related_data": {} } } @@ -54369,7 +63605,7 @@ { "使用函数分组": { "data": { - "uuid": "python-5-936", + "uuid": "python-5-943", "seg": [ [ [ @@ -54378,11 +63614,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6493252840909092, + "max": 0.6494140625 + }, "related_data": { "qa": { "data_id": [ - "8_7414509_53367569" + "8_7414509_53367569@8" ] } } @@ -54392,24 +63631,28 @@ { "根据索引层级分组": { "data": { - "uuid": "python-5-937", + "uuid": "python-5-944", "seg": [ [ [ "索引", "层级", - "分组" + "分组", + "索引层级" ] ] ], - "level": "1", + "level": { + "min": 0.6494140625, + "max": 0.6495028409090909 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1274", + "uuid": "python-4-1287", "seg": [ [ [ @@ -54418,7 +63661,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6491477272727273, + "max": 0.6495028409090909 + }, "related_data": {} } } @@ -54429,7 +63675,7 @@ { "返回不含行索引的聚合数据": { "data": { - "uuid": "python-5-938", + "uuid": "python-5-945", "seg": [ [ [ @@ -54437,16 +63683,20 @@ "含行", "索引", "聚合", - "数据" + "数据", + "不含行" ] ] ], - "level": "3", + "level": { + "min": 0.6495028409090909, + "max": 0.6498579545454546 + }, "related_data": { "qa": { "data_id": [ - "8_1058559_1255894", - "8_772486_835795" + "8_1058559_1255894@8", + "8_772486_835795@8" ] } } @@ -54455,7 +63705,7 @@ } ], "data": { - "uuid": "python-4-1275", + "uuid": "python-4-1288", "seg": [ [ [ @@ -54464,7 +63714,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6495028409090909, + "max": 0.6498579545454546 + }, "related_data": {} } } @@ -54475,7 +63728,7 @@ { "压缩分组键": { "data": { - "uuid": "python-5-939", + "uuid": "python-5-946", "seg": [ [ [ @@ -54485,7 +63738,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6498579545454546, + "max": 0.6500355113636364 + }, "related_data": {} } } @@ -54493,7 +63749,7 @@ { "分位数与桶分析": { "data": { - "uuid": "python-5-940", + "uuid": "python-5-947", "seg": [ [ [ @@ -54506,14 +63762,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6500355113636364, + "max": 0.6502130681818181 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1276", + "uuid": "python-4-1289", "seg": [ [ [] @@ -54526,7 +63785,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6498579545454546, + "max": 0.6502130681818181 + }, "related_data": {} } } @@ -54537,7 +63799,7 @@ { "交叉表:crosstab": { "data": { - "uuid": "python-5-941", + "uuid": "python-5-948", "seg": [ [ [ @@ -54551,14 +63813,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6502130681818181, + "max": 0.6505681818181818 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1277", + "uuid": "python-4-1290", "seg": [ [ [ @@ -54570,14 +63835,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6502130681818181, + "max": 0.6505681818181818 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-239", + "uuid": "python-3-240", "seg": [ [ [ @@ -54590,7 +63858,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6491477272727273, + "max": 0.6505681818181818 + }, "related_data": {} } } @@ -54604,7 +63875,7 @@ { "含有重复索引的时间序列": { "data": { - "uuid": "python-5-942", + "uuid": "python-5-949", "seg": [ [ [ @@ -54612,16 +63883,21 @@ "重复", "索引", "时间", - "序列" + "序列", + "重复索引", + "时间序列" ] ] ], - "level": "1", + "level": { + "min": 0.6505681818181818, + "max": 0.6508522727272726 + }, "related_data": { "qa": { "data_id": [ - "8_774633_838599", - "8_7400421_53348290" + "8_774633_838599@8", + "8_7400421_53348290@8" ] } } @@ -54630,17 +63906,22 @@ } ], "data": { - "uuid": "python-4-1278", + "uuid": "python-4-1291", "seg": [ [ [ "时间", "序列", - "基础" + "基础", + "时间序列", + "序列基础" ] ] ], - "level": "1", + "level": { + "min": 0.6505681818181818, + "max": 0.6508522727272726 + }, "related_data": {} } } @@ -54651,7 +63932,7 @@ { "时区的本地化和转换": { "data": { - "uuid": "python-5-943", + "uuid": "python-5-950", "seg": [ [ [ @@ -54663,7 +63944,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6508522727272726, + "max": 0.6509469696969696 + }, "related_data": {} } } @@ -54671,7 +63955,7 @@ { "时区感知时间戳对象的操作": { "data": { - "uuid": "python-5-944", + "uuid": "python-5-951", "seg": [ [ [ @@ -54680,15 +63964,19 @@ "时间", "戳", "对象", - "操作" + "操作", + "时区" ] ] ], - "level": "1", + "level": { + "min": 0.6509469696969696, + "max": 0.6510416666666666 + }, "related_data": { "qa": { "data_id": [ - "8_7424729_53385899" + "8_7424729_53385899@8" ] } } @@ -54698,7 +63986,7 @@ { "不同时区间的操作": { "data": { - "uuid": "python-5-945", + "uuid": "python-5-952", "seg": [ [ [ @@ -54707,22 +63995,29 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6510416666666666, + "max": 0.6511363636363636 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1279", + "uuid": "python-4-1292", "seg": [ [ [ - "区" + "区", + "时区" ] ] ], - "level": "1", + "level": { + "min": 0.6508522727272726, + "max": 0.6511363636363636 + }, "related_data": {} } } @@ -54733,21 +64028,25 @@ { "区间频率转换": { "data": { - "uuid": "python-5-946", + "uuid": "python-5-953", "seg": [ [ [ "区间", "频率", - "转换" + "转换", + "区间频率" ] ] ], - "level": "3", + "level": { + "min": 0.6511363636363636, + "max": 0.6512073863636363 + }, "related_data": { "qa": { "data_id": [ - "8_7432963_53402848" + "8_7432963_53402848@8" ] } } @@ -54757,17 +64056,22 @@ { "季度区间频率": { "data": { - "uuid": "python-5-947", + "uuid": "python-5-954", "seg": [ [ [ "季度", "区间", - "频率" + "频率", + "季度区间", + "区间频率" ] ] ], - "level": "3", + "level": { + "min": 0.6512073863636363, + "max": 0.6512784090909091 + }, "related_data": {} } } @@ -54775,14 +64079,15 @@ { "将时间戳转换为区间(以及逆转换)": { "data": { - "uuid": "python-5-948", + "uuid": "python-5-955", "seg": [ [ [ "时间", "戳", "转换", - "区间" + "区间", + "将时间" ], [ "逆", @@ -54790,20 +64095,23 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6512784090909091, + "max": 0.6513494318181818 + }, "related_data": { "qa": { "data_id": [ - "8_172786_50893", - "8_7414677_53367619", - "8_7446043_53426360", - "8_1060909_1258648", - "8_7425370_53411809", - "8_7403382_53351863", - "8_7433732_53404035", - "8_7435975_53406996", - "8_7435045_53405562", - "8_1102736_1317169" + "8_172786_50893@8", + "8_7414677_53367619@8", + "8_7446043_53426360@8", + "8_1060909_1258648@8", + "8_7425370_53411809@8", + "8_7403382_53351863@8", + "8_7435975_53406996@8", + "8_7435045_53405562@8", + "8_1102736_1317169@8", + "8_7447263_53426827@8" ] } } @@ -54813,7 +64121,7 @@ { "从数组生成PeriodIndex": { "data": { - "uuid": "python-5-949", + "uuid": "python-5-956", "seg": [ [ [ @@ -54823,11 +64131,14 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6513494318181818, + "max": 0.6514204545454545 + }, "related_data": { "qa": { "data_id": [ - "8_915325_1051578" + "8_915325_1051578@8" ] } } @@ -54836,20 +64147,25 @@ } ], "data": { - "uuid": "python-4-1280", + "uuid": "python-4-1293", "seg": [ [ [ "时间", - "区间" + "区间", + "时间区间" ], [ "区间", - "算术" + "算术", + "区间算术" ] ] ], - "level": "1", + "level": { + "min": 0.6511363636363636, + "max": 0.6514204545454545 + }, "related_data": {} } } @@ -54860,7 +64176,7 @@ { "向下采样": { "data": { - "uuid": "python-5-950", + "uuid": "python-5-957", "seg": [ [ [ @@ -54869,7 +64185,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6514204545454545, + "max": 0.6515151515151515 + }, "related_data": {} } } @@ -54877,19 +64196,23 @@ { "向上采样与插值": { "data": { - "uuid": "python-5-951", + "uuid": "python-5-958", "seg": [ [ [ "向上", - "采样" + "采样", + "向上采样" ], [ "插值" ] ] ], - "level": "3", + "level": { + "min": 0.6515151515151515, + "max": 0.6516098484848485 + }, "related_data": {} } } @@ -54897,7 +64220,7 @@ { "使用区间进行重新采样": { "data": { - "uuid": "python-5-952", + "uuid": "python-5-959", "seg": [ [ [ @@ -54906,14 +64229,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6516098484848485, + "max": 0.6517045454545455 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1281", + "uuid": "python-4-1294", "seg": [ [ [ @@ -54925,7 +64251,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6514204545454545, + "max": 0.6517045454545455 + }, "related_data": {} } } @@ -54936,7 +64265,7 @@ { "指数加权函数": { "data": { - "uuid": "python-5-953", + "uuid": "python-5-960", "seg": [ [ [ @@ -54946,7 +64275,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6517045454545455, + "max": 0.6517992424242425 + }, "related_data": {} } } @@ -54954,7 +64286,7 @@ { "二元移动窗口函数": { "data": { - "uuid": "python-5-954", + "uuid": "python-5-961", "seg": [ [ [ @@ -54963,14 +64295,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6517992424242425, + "max": 0.6518939393939394 + }, "related_data": { "qa": { "data_id": [ - "8_751965_805845", - "8_7398232_53344186", - "8_973697_1131808", - "8_1094223_1304293" + "8_751965_805845@8", + "8_7398232_53344186@8", + "8_973697_1131808@8", + "8_1094223_1304293@8" ] } } @@ -54980,7 +64315,7 @@ { "用户自定义的移动窗口函数": { "data": { - "uuid": "python-5-955", + "uuid": "python-5-962", "seg": [ [ [ @@ -54991,14 +64326,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6518939393939394, + "max": 0.6519886363636364 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1282", + "uuid": "python-4-1295", "seg": [ [ [ @@ -55007,23 +64345,30 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6517045454545455, + "max": 0.6519886363636364 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-240", + "uuid": "python-3-241", "seg": [ [ [ "时间", - "序列" + "序列", + "时间序列" ] ] ], - "level": "1", + "level": { + "min": 0.6505681818181818, + "max": 0.6519886363636364 + }, "related_data": {} } } @@ -55037,7 +64382,7 @@ { "背景和目标": { "data": { - "uuid": "python-5-956", + "uuid": "python-5-963", "seg": [ [ [ @@ -55048,7 +64393,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6519886363636364, + "max": 0.6521070075757576 + }, "related_data": {} } } @@ -55056,7 +64404,7 @@ { "pandas中的Categorical类型": { "data": { - "uuid": "python-5-957", + "uuid": "python-5-964", "seg": [ [ [ @@ -55066,20 +64414,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6521070075757576, + "max": 0.6522253787878788 + }, "related_data": { "qa": { "data_id": [ - "8_7445996_53425041", - "8_760336_817107", - "8_696322_579899", - "8_7449123_53429206", - "8_714700_706783", - "8_783041_859306", - "8_367253_392691", - "8_7422210_53379622", - "8_771986_834964", - "8_7419825_53377843" + "8_7445996_53425041@8", + "8_760336_817107@8", + "8_696322_579899@8", + "8_7449123_53429206@8", + "8_714700_706783@8", + "8_783041_859306@8", + "8_367253_392691@8", + "8_7422210_53379622@8", + "8_771986_834964@8", + "8_7419825_53377843@8" ] } } @@ -55089,7 +64440,7 @@ { "使用Categorical对象进行计算": { "data": { - "uuid": "python-5-958", + "uuid": "python-5-965", "seg": [ [ [ @@ -55099,7 +64450,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6522253787878788, + "max": 0.65234375 + }, "related_data": {} } } @@ -55107,21 +64461,25 @@ { "分类方法": { "data": { - "uuid": "python-5-959", + "uuid": "python-5-966", "seg": [ [ [ "分类", - "方法" + "方法", + "分类方法" ] ] ], - "level": "1", + "level": { + "min": 0.65234375, + "max": 0.6524621212121212 + }, "related_data": { "qa": { "data_id": [ - "8_7435899_53406896", - "8_717328_710581" + "8_7435899_53406896@8", + "8_717328_710581@8" ] } } @@ -55130,16 +64488,20 @@ } ], "data": { - "uuid": "python-4-1283", + "uuid": "python-4-1296", "seg": [ [ [ "分类", - "数据" + "数据", + "分类数据" ] ] ], - "level": "1", + "level": { + "min": 0.6519886363636364, + "max": 0.6524621212121212 + }, "related_data": {} } } @@ -55150,7 +64512,7 @@ { "分组转换和“展开”GroupBy": { "data": { - "uuid": "python-5-960", + "uuid": "python-5-967", "seg": [ [ [ @@ -55163,13 +64525,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6524621212121212, + "max": 0.6526988636363636 + }, "related_data": { "qa": { "data_id": [ - "8_7458929_53443895", - "8_894818_1032542", - "8_7419176_53376165" + "8_7458929_53443895@8", + "8_894818_1032542@8", + "8_7419176_53376165@8" ] } } @@ -55179,7 +64544,7 @@ { "分组的时间重新采样": { "data": { - "uuid": "python-5-961", + "uuid": "python-5-968", "seg": [ [ [ @@ -55189,14 +64554,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6526988636363636, + "max": 0.6529356060606061 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1284", + "uuid": "python-4-1297", "seg": [ [ [ @@ -55205,7 +64573,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6524621212121212, + "max": 0.6529356060606061 + }, "related_data": {} } } @@ -55216,7 +64587,7 @@ { "pipe方法": { "data": { - "uuid": "python-5-962", + "uuid": "python-5-969", "seg": [ [ [ @@ -55225,11 +64596,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6529356060606061, + "max": 0.6534090909090909 + }, "related_data": { "qa": { "data_id": [ - "8_754274_809244" + "8_754274_809244@8" ] } } @@ -55238,24 +64612,29 @@ } ], "data": { - "uuid": "python-4-1285", + "uuid": "python-4-1298", "seg": [ [ [ "方法", "链", - "技术" + "技术", + "方法链", + "链技术" ] ] ], - "level": "1", + "level": { + "min": 0.6529356060606061, + "max": 0.6534090909090909 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-241", + "uuid": "python-3-242", "seg": [ [ [ @@ -55264,7 +64643,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6519886363636364, + "max": 0.6534090909090909 + }, "related_data": {} } } @@ -55278,7 +64660,7 @@ { "Patsy公式中的数据转换": { "data": { - "uuid": "python-5-963", + "uuid": "python-5-970", "seg": [ [ [ @@ -55289,14 +64671,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6534090909090909, + "max": 0.6537642045454546 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1286", + "uuid": "python-4-1299", "seg": [ [ [ @@ -55307,7 +64692,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6534090909090909, + "max": 0.6537642045454546 + }, "related_data": {} } } @@ -55318,21 +64706,25 @@ { "评估线性模型": { "data": { - "uuid": "python-5-964", + "uuid": "python-5-971", "seg": [ [ [ "评估", "线性", - "模型" + "模型", + "线性模型" ] ] ], - "level": "1", + "level": { + "min": 0.6537642045454546, + "max": 0.6539417613636364 + }, "related_data": { "qa": { "data_id": [ - "8_7431071_53399566" + "8_7431071_53399566@8" ] } } @@ -55342,24 +64734,28 @@ { "评估时间序列处理": { "data": { - "uuid": "python-5-965", + "uuid": "python-5-972", "seg": [ [ [ "评估", "时间", - "序列" + "序列", + "时间序列" ] ] ], - "level": "1", + "level": { + "min": 0.6539417613636364, + "max": 0.6541193181818181 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1287", + "uuid": "python-4-1300", "seg": [ [ [ @@ -55368,7 +64764,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6537642045454546, + "max": 0.6541193181818181 + }, "related_data": {} } } @@ -55376,7 +64775,7 @@ { "scikit-learn介绍": { "data": { - "uuid": "python-4-1288", + "uuid": "python-4-1301", "seg": [ [ [ @@ -55386,7 +64785,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6541193181818181, + "max": 0.6544744318181818 + }, "related_data": {} } } @@ -55394,7 +64796,7 @@ { "继续你的教育": { "data": { - "uuid": "python-4-1289", + "uuid": "python-4-1302", "seg": [ [ [ @@ -55402,25 +64804,32 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6544744318181818, + "max": 0.6548295454545454 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-242", + "uuid": "python-3-243", "seg": [ [ [ "python", "建模", "库", - "介绍" + "介绍", + "建模库" ] ] ], - "level": "1", + "level": { + "min": 0.6534090909090909, + "max": 0.6548295454545454 + }, "related_data": {} } } @@ -55434,22 +64843,26 @@ { "纯Python时区计数": { "data": { - "uuid": "python-5-966", + "uuid": "python-5-973", "seg": [ [ [ "纯", "python", "时区", - "计数" + "计数", + "时区计数" ] ] ], - "level": "1", + "level": { + "min": 0.6548295454545454, + "max": 0.6549715909090909 + }, "related_data": { "qa": { "data_id": [ - "8_7444593_53422828" + "8_7444593_53422828@8" ] } } @@ -55459,24 +64872,29 @@ { "使用pandas进行时区计数": { "data": { - "uuid": "python-5-967", + "uuid": "python-5-974", "seg": [ [ [ "pandas", "区", - "计数" + "计数", + "时区", + "区计数" ] ] ], - "level": "1", + "level": { + "min": 0.6549715909090909, + "max": 0.6551136363636363 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1290", + "uuid": "python-4-1303", "seg": [ [ [ @@ -55488,7 +64906,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6548295454545454, + "max": 0.6551136363636363 + }, "related_data": {} } } @@ -55499,35 +64920,43 @@ { "测量评价分歧": { "data": { - "uuid": "python-5-968", + "uuid": "python-5-975", "seg": [ [ [ "测量", "评价", - "分歧" + "分歧", + "评价分歧" ] ] ], - "level": "1", + "level": { + "min": 0.6551136363636363, + "max": 0.6553977272727273 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1291", + "uuid": "python-4-1304", "seg": [ [ [ "movielens", "m", "数据", - "集" + "集", + "数据集" ] ] ], - "level": "1", + "level": { + "min": 0.6551136363636363, + "max": 0.6553977272727273 + }, "related_data": {} } } @@ -55538,34 +64967,42 @@ { "分析名字趋势": { "data": { - "uuid": "python-5-969", + "uuid": "python-5-976", "seg": [ [ [ "分析", "名字", - "趋势" + "趋势", + "名字趋势" ] ] ], - "level": "1", + "level": { + "min": 0.6553977272727273, + "max": 0.6556818181818181 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1292", + "uuid": "python-4-1305", "seg": [ [ [ "美国", "婴儿", - "名字" + "名字", + "婴儿名字" ] ] ], - "level": "1", + "level": { + "min": 0.6553977272727273, + "max": 0.6556818181818181 + }, "related_data": {} } } @@ -55573,17 +65010,22 @@ { "美国农业部食品数据库": { "data": { - "uuid": "python-4-1293", + "uuid": "python-4-1306", "seg": [ [ [ "美国农业部", "食品", - "数据库" + "数据库", + "美国农业部食品", + "食品数据库" ] ] ], - "level": "1", + "level": { + "min": 0.6556818181818181, + "max": 0.6559659090909091 + }, "related_data": {} } } @@ -55594,7 +65036,7 @@ { "按职业和雇主的捐献统计": { "data": { - "uuid": "python-5-970", + "uuid": "python-5-977", "seg": [ [ [ @@ -55607,7 +65049,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6559659090909091, + "max": 0.6560606060606061 + }, "related_data": {} } } @@ -55615,7 +65060,7 @@ { "捐赠金额分桶": { "data": { - "uuid": "python-5-971", + "uuid": "python-5-978", "seg": [ [ [ @@ -55624,7 +65069,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6560606060606061, + "max": 0.656155303030303 + }, "related_data": {} } } @@ -55632,7 +65080,7 @@ { "按州进行捐赠统计": { "data": { - "uuid": "python-5-972", + "uuid": "python-5-979", "seg": [ [ [ @@ -55642,32 +65090,39 @@ ] ] ], - "level": "1", + "level": { + "min": 0.656155303030303, + "max": 0.65625 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1294", + "uuid": "python-4-1307", "seg": [ [ [ "联邦", "选举", "委员会", - "数据库" + "数据库", + "委员会数据库" ] ] ], - "level": "1", + "level": { + "min": 0.6559659090909091, + "max": 0.65625 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-243", + "uuid": "python-3-244", "seg": [ [ [ @@ -55676,12 +65131,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6548295454545454, + "max": 0.65625 + }, "related_data": { "qa": { "data_id": [ - "8_767470_827181", - "8_7461007_53446104" + "8_767470_827181@8", + "8_7461007_53446104@8" ] } } @@ -55698,7 +65156,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.625, + "max": 0.65625 + }, "related_data": {} } } @@ -55712,7 +65173,7 @@ { "Scikit-learn概览": { "data": { - "uuid": "python-4-1295", + "uuid": "python-4-1308", "seg": [ [ [ @@ -55722,12 +65183,15 @@ ] ] ], - "level": "3", + "level": { + "min": 0.65625, + "max": 0.6565972222222223 + }, "related_data": { "qa": { "data_id": [ - "8_7407580_53357824", - "8_7441502_53417684" + "8_7407580_53357824@8", + "8_7441502_53417684@8" ] } } @@ -55737,7 +65201,7 @@ { "安装配置": { "data": { - "uuid": "python-4-1296", + "uuid": "python-4-1309", "seg": [ [ [ @@ -55746,7 +65210,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6565972222222223, + "max": 0.6569444444444444 + }, "related_data": {} } } @@ -55757,7 +65224,7 @@ { "Scikit-learn自带的数据集": { "data": { - "uuid": "python-5-973", + "uuid": "python-5-980", "seg": [ [ [ @@ -55765,11 +65232,15 @@ "learn", "自带", "数据", - "集" + "集", + "数据集" ] ] ], - "level": "3", + "level": { + "min": 0.6569444444444444, + "max": 0.6570601851851852 + }, "related_data": {} } } @@ -55777,7 +65248,7 @@ { "样本生成器": { "data": { - "uuid": "python-5-974", + "uuid": "python-5-981", "seg": [ [ [ @@ -55786,7 +65257,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6570601851851852, + "max": 0.657175925925926 + }, "related_data": {} } } @@ -55794,25 +65268,29 @@ { "加载其他数据集": { "data": { - "uuid": "python-5-975", + "uuid": "python-5-982", "seg": [ [ [ "加载", "数据", - "集" + "集", + "数据集" ] ] ], - "level": "3", + "level": { + "min": 0.657175925925926, + "max": 0.6572916666666667 + }, "related_data": { "qa": { "data_id": [ - "8_779329_847674", - "8_7411430_53362368", - "8_681170_533280", - "8_7414979_53368138", - "8_7406886_53356555" + "8_779329_847674@8", + "8_7411430_53362368@8", + "8_681170_533280@8", + "8_7414979_53368138@8", + "8_7406886_53356555@8" ] } } @@ -55821,16 +65299,20 @@ } ], "data": { - "uuid": "python-4-1297", + "uuid": "python-4-1310", "seg": [ [ [ "数据", - "集" + "集", + "数据集" ] ] ], - "level": "3", + "level": { + "min": 0.6569444444444444, + "max": 0.6572916666666667 + }, "related_data": {} } } @@ -55841,7 +65323,7 @@ { "标准化": { "data": { - "uuid": "python-5-976", + "uuid": "python-5-983", "seg": [ [ [ @@ -55849,7 +65331,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6572916666666667, + "max": 0.657349537037037 + }, "related_data": {} } } @@ -55857,7 +65342,7 @@ { "归一化": { "data": { - "uuid": "python-5-977", + "uuid": "python-5-984", "seg": [ [ [ @@ -55865,7 +65350,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.657349537037037, + "max": 0.6574074074074074 + }, "related_data": {} } } @@ -55873,16 +65361,20 @@ { "正则化": { "data": { - "uuid": "python-5-978", + "uuid": "python-5-985", "seg": [ [ [ "正则", - "化" + "化", + "正则化" ] ] ], - "level": "3", + "level": { + "min": 0.6574074074074074, + "max": 0.6574652777777779 + }, "related_data": {} } } @@ -55890,7 +65382,7 @@ { "离散化": { "data": { - "uuid": "python-5-979", + "uuid": "python-5-986", "seg": [ [ [ @@ -55899,7 +65391,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6574652777777779, + "max": 0.6575231481481482 + }, "related_data": {} } } @@ -55907,16 +65402,20 @@ { "特征编码": { "data": { - "uuid": "python-5-980", + "uuid": "python-5-987", "seg": [ [ [ "特征", - "编码" + "编码", + "特征编码" ] ] ], - "level": "3", + "level": { + "min": 0.6575231481481482, + "max": 0.6575810185185185 + }, "related_data": {} } } @@ -55924,7 +65423,7 @@ { "缺失值补全": { "data": { - "uuid": "python-5-981", + "uuid": "python-5-988", "seg": [ [ [ @@ -55934,11 +65433,14 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6575810185185185, + "max": 0.6576388888888889 + }, "related_data": { "qa": { "data_id": [ - "8_7461275_53446347" + "8_7461275_53446347@8" ] } } @@ -55947,7 +65449,7 @@ } ], "data": { - "uuid": "python-4-1298", + "uuid": "python-4-1311", "seg": [ [ [ @@ -55957,7 +65459,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6572916666666667, + "max": 0.6576388888888889 + }, "related_data": {} } } @@ -55968,7 +65473,7 @@ { "K-近邻分类": { "data": { - "uuid": "python-5-982", + "uuid": "python-5-989", "seg": [ [ [ @@ -55978,7 +65483,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6576388888888889, + "max": 0.6576884920634921 + }, "related_data": {} } } @@ -55986,16 +65494,20 @@ { "贝叶斯分类": { "data": { - "uuid": "python-5-983", + "uuid": "python-5-990", "seg": [ [ [ "贝叶斯", - "分类" + "分类", + "贝叶斯分类" ] ] ], - "level": "3", + "level": { + "min": 0.6576884920634921, + "max": 0.6577380952380952 + }, "related_data": {} } } @@ -56003,16 +65515,20 @@ { "决策树分类": { "data": { - "uuid": "python-5-984", + "uuid": "python-5-991", "seg": [ [ [ "决策树", - "分类" + "分类", + "决策树分类" ] ] ], - "level": "3", + "level": { + "min": 0.6577380952380952, + "max": 0.6577876984126985 + }, "related_data": {} } } @@ -56020,22 +65536,27 @@ { "支持向量机分类": { "data": { - "uuid": "python-5-985", + "uuid": "python-5-992", "seg": [ [ [ "支持", "向量", "机", - "分类" + "分类", + "向量机", + "机分类" ] ] ], - "level": "3", + "level": { + "min": 0.6577876984126985, + "max": 0.6578373015873016 + }, "related_data": { "qa": { "data_id": [ - "8_7413389_53365545" + "8_7413389_53365545@8" ] } } @@ -56045,21 +65566,26 @@ { "随机森林分类": { "data": { - "uuid": "python-5-986", + "uuid": "python-5-993", "seg": [ [ [ "随机", "森林", - "分类" + "分类", + "随机森林", + "森林分类" ] ] ], - "level": "3", + "level": { + "min": 0.6578373015873016, + "max": 0.6578869047619048 + }, "related_data": { "qa": { "data_id": [ - "8_755202_810739" + "8_755202_810739@8" ] } } @@ -56069,7 +65595,7 @@ { "集成学习Bagging/Boosting": { "data": { - "uuid": "python-5-987", + "uuid": "python-5-994", "seg": [ [ [ @@ -56080,7 +65606,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6578869047619048, + "max": 0.6579365079365079 + }, "related_data": {} } } @@ -56088,23 +65617,27 @@ { "神经网络模型": { "data": { - "uuid": "python-5-988", + "uuid": "python-5-995", "seg": [ [ [ "神经网络", - "模型" + "模型", + "神经网络模型" ] ] ], - "level": "3", + "level": { + "min": 0.6579365079365079, + "max": 0.6579861111111112 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1299", + "uuid": "python-4-1312", "seg": [ [ [ @@ -56115,7 +65648,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6576388888888889, + "max": 0.6579861111111112 + }, "related_data": {} } } @@ -56126,7 +65662,7 @@ { "线性回归": { "data": { - "uuid": "python-5-989", + "uuid": "python-5-996", "seg": [ [ [ @@ -56135,12 +65671,15 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6579861111111112, + "max": 0.6580357142857143 + }, "related_data": { "qa": { "data_id": [ - "8_7461537_53446955", - "8_692917_569159" + "8_7461537_53446955@8", + "8_692917_569159@8" ] } } @@ -56150,7 +65689,7 @@ { "Lasso回归": { "data": { - "uuid": "python-5-990", + "uuid": "python-5-997", "seg": [ [ [ @@ -56159,7 +65698,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6580357142857143, + "max": 0.6580853174603175 + }, "related_data": {} } } @@ -56167,18 +65709,22 @@ { "支持向量机回归": { "data": { - "uuid": "python-5-991", + "uuid": "python-5-998", "seg": [ [ [ "支持", "向量", "机", - "回归" + "回归", + "向量机" ] ] ], - "level": "3", + "level": { + "min": 0.6580853174603175, + "max": 0.6581349206349206 + }, "related_data": {} } } @@ -56186,7 +65732,7 @@ { "K-近邻回归": { "data": { - "uuid": "python-5-992", + "uuid": "python-5-999", "seg": [ [ [ @@ -56196,7 +65742,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6581349206349206, + "max": 0.6581845238095239 + }, "related_data": {} } } @@ -56204,7 +65753,7 @@ { "决策树回归": { "data": { - "uuid": "python-5-993", + "uuid": "python-5-1000", "seg": [ [ [ @@ -56213,7 +65762,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6581845238095239, + "max": 0.658234126984127 + }, "related_data": {} } } @@ -56221,32 +65773,29 @@ { "随机森林回归": { "data": { - "uuid": "python-5-994", + "uuid": "python-5-1001", "seg": [ [ [ "随机", "森林", - "回归" + "回归", + "随机森林" ] ] ], - "level": "3", - "related_data": { - "qa": { - "data_id": [ - "8_1097501_1311047", - "8_7444725_53423310" - ] - } - } + "level": { + "min": 0.658234126984127, + "max": 0.6582837301587302 + }, + "related_data": {} } } }, { "逻辑回归": { "data": { - "uuid": "python-5-995", + "uuid": "python-5-1002", "seg": [ [ [ @@ -56255,13 +65804,16 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6582837301587302, + "max": 0.6583333333333333 + }, "related_data": { "qa": { "data_id": [ - "8_7402087_53349695", - "8_7443656_53420844", - "8_7406432_53355990" + "8_7402087_53349695@8", + "8_7443656_53420844@8", + "8_7406432_53355990@8" ] } } @@ -56270,7 +65822,7 @@ } ], "data": { - "uuid": "python-4-1300", + "uuid": "python-4-1313", "seg": [ [ [ @@ -56279,7 +65831,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6579861111111112, + "max": 0.6583333333333333 + }, "related_data": {} } } @@ -56290,7 +65845,7 @@ { "K-Means聚类": { "data": { - "uuid": "python-5-996", + "uuid": "python-5-1003", "seg": [ [ [ @@ -56300,11 +65855,14 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6583333333333333, + "max": 0.6584027777777778 + }, "related_data": { "qa": { "data_id": [ - "8_759772_816179" + "8_759772_816179@8" ] } } @@ -56314,7 +65872,7 @@ { "均值漂移聚类": { "data": { - "uuid": "python-5-997", + "uuid": "python-5-1004", "seg": [ [ [ @@ -56324,7 +65882,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6584027777777778, + "max": 0.6584722222222222 + }, "related_data": {} } } @@ -56332,17 +65893,21 @@ { "基于密度的空间聚类": { "data": { - "uuid": "python-5-998", + "uuid": "python-5-1005", "seg": [ [ [ "密度", "空间", - "聚类" + "聚类", + "空间聚类" ] ] ], - "level": "3", + "level": { + "min": 0.6584722222222222, + "max": 0.6585416666666667 + }, "related_data": {} } } @@ -56350,7 +65915,7 @@ { "谱聚类": { "data": { - "uuid": "python-5-999", + "uuid": "python-5-1006", "seg": [ [ [ @@ -56359,7 +65924,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6585416666666667, + "max": 0.6586111111111111 + }, "related_data": {} } } @@ -56370,7 +65938,7 @@ { "自下而上的方法": { "data": { - "uuid": "python-6-175", + "uuid": "python-6-174", "seg": [ [ [ @@ -56379,7 +65947,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6586111111111111, + "max": 0.6586284722222222 + }, "related_data": {} } } @@ -56387,7 +65958,7 @@ { "聚类之间的距离": { "data": { - "uuid": "python-6-176", + "uuid": "python-6-175", "seg": [ [ [ @@ -56396,12 +65967,15 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6586284722222222, + "max": 0.6586458333333334 + }, "related_data": { "qa": { "data_id": [ - "8_7409259_53359956", - "8_7426748_53390598" + "8_7409259_53359956@8", + "8_7426748_53390598@8" ] } } @@ -56411,7 +65985,7 @@ { "自上而下的方法": { "data": { - "uuid": "python-6-177", + "uuid": "python-6-176", "seg": [ [ [ @@ -56420,7 +65994,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6586458333333334, + "max": 0.6586631944444445 + }, "related_data": {} } } @@ -56428,23 +66005,27 @@ { "图论方法": { "data": { - "uuid": "python-6-178", + "uuid": "python-6-177", "seg": [ [ [ "图论", - "方法" + "方法", + "图论方法" ] ] ], - "level": "3", + "level": { + "min": 0.6586631944444445, + "max": 0.6586805555555556 + }, "related_data": {} } } } ], "data": { - "uuid": "python-5-1000", + "uuid": "python-5-1007", "seg": [ [ [ @@ -56452,14 +66033,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6586111111111111, + "max": 0.6586805555555556 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1301", + "uuid": "python-4-1314", "seg": [ [ [ @@ -56468,7 +66052,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6583333333333333, + "max": 0.6586805555555556 + }, "related_data": {} } } @@ -56479,7 +66066,7 @@ { "主成分分析": { "data": { - "uuid": "python-5-1001", + "uuid": "python-5-1008", "seg": [ [ [ @@ -56489,7 +66076,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6586805555555556, + "max": 0.6587673611111111 + }, "related_data": {} } } @@ -56497,7 +66087,7 @@ { "因子分析": { "data": { - "uuid": "python-5-1002", + "uuid": "python-5-1009", "seg": [ [ [ @@ -56505,7 +66095,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6587673611111111, + "max": 0.6588541666666667 + }, "related_data": {} } } @@ -56513,7 +66106,7 @@ { "截断奇异值分解": { "data": { - "uuid": "python-5-1003", + "uuid": "python-5-1010", "seg": [ [ [ @@ -56524,7 +66117,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6588541666666667, + "max": 0.6589409722222223 + }, "related_data": {} } } @@ -56532,7 +66128,7 @@ { "独立成分分析ICA(Independent Component Analysis)": { "data": { - "uuid": "python-5-1004", + "uuid": "python-5-1011", "seg": [ [ [ @@ -56546,14 +66142,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6589409722222223, + "max": 0.6590277777777778 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1302", + "uuid": "python-4-1315", "seg": [ [ [ @@ -56565,7 +66164,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6586805555555556, + "max": 0.6590277777777778 + }, "related_data": {} } } @@ -56576,7 +66178,7 @@ { "估计器得分": { "data": { - "uuid": "python-5-1005", + "uuid": "python-5-1012", "seg": [ [ [ @@ -56586,7 +66188,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6590277777777778, + "max": 0.6590972222222222 + }, "related_data": {} } } @@ -56594,7 +66199,7 @@ { "交叉验证": { "data": { - "uuid": "python-5-1006", + "uuid": "python-5-1013", "seg": [ [ [ @@ -56603,7 +66208,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6590972222222222, + "max": 0.6591666666666667 + }, "related_data": {} } } @@ -56611,16 +66219,20 @@ { "评价指标": { "data": { - "uuid": "python-5-1007", + "uuid": "python-5-1014", "seg": [ [ [ "评价", - "指标" + "指标", + "评价指标" ] ] ], - "level": "3", + "level": { + "min": 0.6591666666666667, + "max": 0.6592361111111111 + }, "related_data": {} } } @@ -56628,7 +66240,7 @@ { "参数调优": { "data": { - "uuid": "python-5-1008", + "uuid": "python-5-1015", "seg": [ [ [ @@ -56637,7 +66249,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6592361111111111, + "max": 0.6593055555555556 + }, "related_data": {} } } @@ -56645,7 +66260,7 @@ { "模型持久化": { "data": { - "uuid": "python-5-1009", + "uuid": "python-5-1016", "seg": [ [ [ @@ -56655,14 +66270,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6593055555555556, + "max": 0.659375 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1303", + "uuid": "python-4-1316", "seg": [ [ [ @@ -56675,14 +66293,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6590277777777778, + "max": 0.659375 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-244", + "uuid": "python-3-245", "seg": [ [ [ @@ -56694,7 +66315,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.65625, + "max": 0.659375 + }, "related_data": {} } } @@ -56708,7 +66332,7 @@ { "人工智能发展历史": { "data": { - "uuid": "python-5-1010", + "uuid": "python-5-1017", "seg": [ [ [ @@ -56718,7 +66342,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.659375, + "max": 0.6594308035714286 + }, "related_data": {} } } @@ -56726,7 +66353,7 @@ { "神经元": { "data": { - "uuid": "python-5-1011", + "uuid": "python-5-1018", "seg": [ [ [ @@ -56734,7 +66361,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6594308035714286, + "max": 0.6594866071428571 + }, "related_data": {} } } @@ -56742,7 +66372,7 @@ { "BP神经网络": { "data": { - "uuid": "python-5-1012", + "uuid": "python-5-1019", "seg": [ [ [ @@ -56751,12 +66381,15 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6594866071428571, + "max": 0.6595424107142858 + }, "related_data": { "qa": { "data_id": [ - "8_703262_598031", - "8_7426962_53390979" + "8_703262_598031@8", + "8_7426962_53390979@8" ] } } @@ -56766,7 +66399,7 @@ { "梯度下降": { "data": { - "uuid": "python-5-1013", + "uuid": "python-5-1020", "seg": [ [ [ @@ -56775,7 +66408,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6595424107142858, + "max": 0.6595982142857143 + }, "related_data": {} } } @@ -56783,7 +66419,7 @@ { "激励函数": { "data": { - "uuid": "python-5-1014", + "uuid": "python-5-1021", "seg": [ [ [ @@ -56791,7 +66427,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6595982142857143, + "max": 0.6596540178571428 + }, "related_data": {} } } @@ -56799,7 +66438,7 @@ { "过拟合、欠拟合": { "data": { - "uuid": "python-5-1015", + "uuid": "python-5-1022", "seg": [ [ [ @@ -56811,11 +66450,14 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6596540178571428, + "max": 0.6597098214285715 + }, "related_data": { "qa": { "data_id": [ - "8_7418071_53373973" + "8_7418071_53373973@8" ] } } @@ -56825,7 +66467,7 @@ { "优化器Optimizer": { "data": { - "uuid": "python-5-1016", + "uuid": "python-5-1023", "seg": [ [ [ @@ -56835,7 +66477,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6597098214285715, + "max": 0.659765625 + }, "related_data": {} } } @@ -56843,7 +66488,7 @@ { "常用开发工具": { "data": { - "uuid": "python-5-1017", + "uuid": "python-5-1024", "seg": [ [ [ @@ -56851,11 +66496,14 @@ ] ] ], - "level": "3", + "level": { + "min": 0.659765625, + "max": 0.6598214285714286 + }, "related_data": { "qa": { "data_id": [ - "8_1036983_1233720" + "8_1036983_1233720@8" ] } } @@ -56864,16 +66512,20 @@ } ], "data": { - "uuid": "python-4-1304", + "uuid": "python-4-1317", "seg": [ [ [ "神经网络", - "基础知识" + "基础知识", + "神经网络基础知识" ] ] ], - "level": "3", + "level": { + "min": 0.659375, + "max": 0.6598214285714286 + }, "related_data": {} } } @@ -56884,7 +66536,7 @@ { "Windows搭建深度学习环境": { "data": { - "uuid": "python-5-1018", + "uuid": "python-5-1025", "seg": [ [ [ @@ -56896,7 +66548,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6598214285714286, + "max": 0.6599330357142857 + }, "related_data": {} } } @@ -56904,7 +66559,7 @@ { "Linux搭建深度学习环境": { "data": { - "uuid": "python-5-1019", + "uuid": "python-5-1026", "seg": [ [ [ @@ -56916,7 +66571,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6599330357142857, + "max": 0.6600446428571429 + }, "related_data": {} } } @@ -56924,7 +66582,7 @@ { "MacOS搭建深度学习环境": { "data": { - "uuid": "python-5-1020", + "uuid": "python-5-1027", "seg": [ [ [ @@ -56936,7 +66594,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6600446428571429, + "max": 0.66015625 + }, "related_data": {} } } @@ -56944,7 +66605,7 @@ { "CPU/GPU环境搭建": { "data": { - "uuid": "python-5-1021", + "uuid": "python-5-1028", "seg": [ [ [ @@ -56955,12 +66616,15 @@ ] ] ], - "level": "3", + "level": { + "min": 0.66015625, + "max": 0.6602678571428572 + }, "related_data": { "qa": { "data_id": [ - "8_760087_816637", - "8_770372_832019" + "8_760087_816637@8", + "8_770372_832019@8" ] } } @@ -56969,7 +66633,7 @@ } ], "data": { - "uuid": "python-4-1305", + "uuid": "python-4-1318", "seg": [ [ [ @@ -56978,7 +66642,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6598214285714286, + "max": 0.6602678571428572 + }, "related_data": {} } } @@ -56989,7 +66656,7 @@ { "Theano基础知识": { "data": { - "uuid": "python-5-1022", + "uuid": "python-5-1029", "seg": [ [ [ @@ -56998,12 +66665,15 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6602678571428572, + "max": 0.6603316326530613 + }, "related_data": { "qa": { "data_id": [ - "8_172916_51297", - "8_357792_375114" + "8_172916_51297@8", + "8_357792_375114@8" ] } } @@ -57013,7 +66683,7 @@ { "定义Layer": { "data": { - "uuid": "python-5-1023", + "uuid": "python-5-1030", "seg": [ [ [ @@ -57022,7 +66692,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6603316326530613, + "max": 0.6603954081632654 + }, "related_data": {} } } @@ -57030,7 +66703,7 @@ { "CNN": { "data": { - "uuid": "python-5-1024", + "uuid": "python-5-1031", "seg": [ [ [ @@ -57038,7 +66711,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6603954081632654, + "max": 0.6604591836734695 + }, "related_data": {} } } @@ -57046,7 +66722,7 @@ { "RNN(GRU/LSTM)": { "data": { - "uuid": "python-5-1025", + "uuid": "python-5-1032", "seg": [ [ [ @@ -57056,7 +66732,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6604591836734695, + "max": 0.6605229591836734 + }, "related_data": {} } } @@ -57064,7 +66743,7 @@ { "Autoencoder": { "data": { - "uuid": "python-5-1026", + "uuid": "python-5-1033", "seg": [ [ [ @@ -57072,7 +66751,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6605229591836734, + "max": 0.6605867346938775 + }, "related_data": {} } } @@ -57080,17 +66762,21 @@ { "神经网络参数保存": { "data": { - "uuid": "python-5-1027", + "uuid": "python-5-1034", "seg": [ [ [ "神经网络", "参数", - "保存" + "保存", + "神经网络参数" ] ] ], - "level": "3", + "level": { + "min": 0.6605867346938775, + "max": 0.6606505102040816 + }, "related_data": {} } } @@ -57098,24 +66784,29 @@ { "神经网络性能评价": { "data": { - "uuid": "python-5-1028", + "uuid": "python-5-1035", "seg": [ [ [ "神经网络", "性能", - "评价" + "评价", + "神经网络性能", + "性能评价" ] ] ], - "level": "3", + "level": { + "min": 0.6606505102040816, + "max": 0.6607142857142857 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1306", + "uuid": "python-4-1319", "seg": [ [ [ @@ -57123,7 +66814,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6602678571428572, + "max": 0.6607142857142857 + }, "related_data": {} } } @@ -57134,7 +66828,7 @@ { "TensorFlow基础知识": { "data": { - "uuid": "python-5-1029", + "uuid": "python-5-1036", "seg": [ [ [ @@ -57143,15 +66837,18 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6607142857142857, + "max": 0.6607486263736264 + }, "related_data": { "qa": { "data_id": [ - "8_686850_549462", - "8_1071605_1273636", - "8_7426038_53388709", - "8_798076_1027813", - "8_766817_826343" + "8_686850_549462@8", + "8_1071605_1273636@8", + "8_7426038_53388709@8", + "8_798076_1027813@8", + "8_766817_826343@8" ] } } @@ -57161,7 +66858,7 @@ { "Tensor": { "data": { - "uuid": "python-5-1030", + "uuid": "python-5-1037", "seg": [ [ [ @@ -57169,7 +66866,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6607486263736264, + "max": 0.660782967032967 + }, "related_data": {} } } @@ -57177,7 +66877,7 @@ { "Session": { "data": { - "uuid": "python-5-1031", + "uuid": "python-5-1038", "seg": [ [ [ @@ -57185,7 +66885,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.660782967032967, + "max": 0.6608173076923077 + }, "related_data": {} } } @@ -57193,7 +66896,7 @@ { "Variable": { "data": { - "uuid": "python-5-1032", + "uuid": "python-5-1039", "seg": [ [ [ @@ -57201,7 +66904,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6608173076923077, + "max": 0.6608516483516483 + }, "related_data": {} } } @@ -57209,7 +66915,7 @@ { "Placeholder": { "data": { - "uuid": "python-5-1033", + "uuid": "python-5-1040", "seg": [ [ [ @@ -57217,11 +66923,14 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6608516483516483, + "max": 0.660885989010989 + }, "related_data": { "qa": { "data_id": [ - "8_665271_482693" + "8_665271_482693@8" ] } } @@ -57231,7 +66940,7 @@ { "Dropout": { "data": { - "uuid": "python-5-1034", + "uuid": "python-5-1041", "seg": [ [ [ @@ -57239,7 +66948,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.660885989010989, + "max": 0.6609203296703297 + }, "related_data": {} } } @@ -57247,7 +66959,7 @@ { "Tensorboard": { "data": { - "uuid": "python-5-1035", + "uuid": "python-5-1042", "seg": [ [ [ @@ -57255,7 +66967,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6609203296703297, + "max": 0.6609546703296704 + }, "related_data": {} } } @@ -57263,7 +66978,7 @@ { "CNN": { "data": { - "uuid": "python-5-1036", + "uuid": "python-5-1043", "seg": [ [ [ @@ -57271,7 +66986,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6609546703296704, + "max": 0.660989010989011 + }, "related_data": {} } } @@ -57279,7 +66997,7 @@ { "RNN(GRU/LSTM)": { "data": { - "uuid": "python-5-1037", + "uuid": "python-5-1044", "seg": [ [ [ @@ -57289,7 +67007,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.660989010989011, + "max": 0.6610233516483517 + }, "related_data": {} } } @@ -57297,7 +67018,7 @@ { "Autoencoder": { "data": { - "uuid": "python-5-1038", + "uuid": "python-5-1045", "seg": [ [ [ @@ -57305,7 +67026,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6610233516483517, + "max": 0.6610576923076923 + }, "related_data": {} } } @@ -57313,7 +67037,7 @@ { "GNN": { "data": { - "uuid": "python-5-1039", + "uuid": "python-5-1046", "seg": [ [ [ @@ -57321,7 +67045,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6610576923076923, + "max": 0.661092032967033 + }, "related_data": {} } } @@ -57329,17 +67056,21 @@ { "神经网络参数保存": { "data": { - "uuid": "python-5-1040", + "uuid": "python-5-1047", "seg": [ [ [ "神经网络", "参数", - "保存" + "保存", + "神经网络参数" ] ] ], - "level": "3", + "level": { + "min": 0.661092032967033, + "max": 0.6611263736263736 + }, "related_data": {} } } @@ -57347,24 +67078,29 @@ { "神经网络性能评价": { "data": { - "uuid": "python-5-1041", + "uuid": "python-5-1048", "seg": [ [ [ "神经网络", "性能", - "评价" + "评价", + "神经网络性能", + "性能评价" ] ] ], - "level": "3", + "level": { + "min": 0.6611263736263736, + "max": 0.6611607142857143 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1307", + "uuid": "python-4-1320", "seg": [ [ [ @@ -57372,7 +67108,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6607142857142857, + "max": 0.6611607142857143 + }, "related_data": {} } } @@ -57383,25 +67122,28 @@ { "Keras基础语法": { "data": { - "uuid": "python-5-1042", + "uuid": "python-5-1049", "seg": [ [ [ "keras", "基础", - "语法" + "语法", + "基础语法" ] ] ], - "level": "3", + "level": { + "min": 0.6611607142857143, + "max": 0.6611950549450549 + }, "related_data": { "qa": { "data_id": [ - "8_670424_493006", - "8_670476_493113", - "8_345355_349502", - "8_7442239_53419032", - "8_7447581_53427959" + "8_670424_493006@8", + "8_670476_493113@8", + "8_345355_349502@8", + "8_7442239_53419032@8" ] } } @@ -57411,7 +67153,7 @@ { "兼容Backend": { "data": { - "uuid": "python-5-1043", + "uuid": "python-5-1050", "seg": [ [ [ @@ -57420,7 +67162,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6611950549450549, + "max": 0.6612293956043956 + }, "related_data": {} } } @@ -57428,20 +67173,25 @@ { "函数模型和序列模型": { "data": { - "uuid": "python-5-1044", + "uuid": "python-5-1051", "seg": [ [ [ "函数", - "模型" + "模型", + "函数模型" ], [ "序列", - "模型" + "模型", + "序列模型" ] ] ], - "level": "3", + "level": { + "min": 0.6612293956043956, + "max": 0.6612637362637362 + }, "related_data": {} } } @@ -57449,7 +67199,7 @@ { "定义Layer": { "data": { - "uuid": "python-5-1045", + "uuid": "python-5-1052", "seg": [ [ [ @@ -57458,7 +67208,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6612637362637362, + "max": 0.661298076923077 + }, "related_data": {} } } @@ -57466,7 +67219,7 @@ { "CNN": { "data": { - "uuid": "python-5-1046", + "uuid": "python-5-1053", "seg": [ [ [ @@ -57474,7 +67227,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.661298076923077, + "max": 0.6613324175824176 + }, "related_data": {} } } @@ -57482,7 +67238,7 @@ { "RNN(GRU/LSTM)": { "data": { - "uuid": "python-5-1047", + "uuid": "python-5-1054", "seg": [ [ [ @@ -57492,15 +67248,24 @@ ] ] ], - "level": "3", - "related_data": {} + "level": { + "min": 0.6613324175824176, + "max": 0.6613667582417583 + }, + "related_data": { + "qa": { + "data_id": [ + "8_7447581_53427959@8" + ] + } + } } } }, { "Autoencoder": { "data": { - "uuid": "python-5-1048", + "uuid": "python-5-1055", "seg": [ [ [ @@ -57508,7 +67273,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6613667582417583, + "max": 0.6614010989010989 + }, "related_data": {} } } @@ -57516,7 +67284,7 @@ { "GNN": { "data": { - "uuid": "python-5-1049", + "uuid": "python-5-1056", "seg": [ [ [ @@ -57524,7 +67292,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6614010989010989, + "max": 0.6614354395604396 + }, "related_data": {} } } @@ -57532,7 +67303,7 @@ { "迁移学习": { "data": { - "uuid": "python-5-1050", + "uuid": "python-5-1057", "seg": [ [ [ @@ -57541,7 +67312,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6614354395604396, + "max": 0.6614697802197802 + }, "related_data": {} } } @@ -57549,7 +67323,7 @@ { "BiLSTM-Attention": { "data": { - "uuid": "python-5-1051", + "uuid": "python-5-1058", "seg": [ [ [ @@ -57558,7 +67332,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6614697802197802, + "max": 0.6615041208791209 + }, "related_data": {} } } @@ -57566,7 +67343,7 @@ { "生成对抗网络GAN": { "data": { - "uuid": "python-5-1052", + "uuid": "python-5-1059", "seg": [ [ [ @@ -57577,7 +67354,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6615041208791209, + "max": 0.6615384615384615 + }, "related_data": {} } } @@ -57585,17 +67365,21 @@ { "神经网络参数保存": { "data": { - "uuid": "python-5-1053", + "uuid": "python-5-1060", "seg": [ [ [ "神经网络", "参数", - "保存" + "保存", + "神经网络参数" ] ] ], - "level": "3", + "level": { + "min": 0.6615384615384615, + "max": 0.6615728021978022 + }, "related_data": {} } } @@ -57603,24 +67387,29 @@ { "神经网络性能评价": { "data": { - "uuid": "python-5-1054", + "uuid": "python-5-1061", "seg": [ [ [ "神经网络", "性能", - "评价" + "评价", + "神经网络性能", + "性能评价" ] ] ], - "level": "3", + "level": { + "min": 0.6615728021978022, + "max": 0.6616071428571428 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1308", + "uuid": "python-4-1321", "seg": [ [ [ @@ -57628,7 +67417,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6611607142857143, + "max": 0.6616071428571428 + }, "related_data": {} } } @@ -57639,7 +67431,7 @@ { "PyTorch基础知识": { "data": { - "uuid": "python-5-1055", + "uuid": "python-5-1062", "seg": [ [ [ @@ -57648,7 +67440,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6616071428571428, + "max": 0.6616414835164836 + }, "related_data": {} } } @@ -57656,7 +67451,7 @@ { "Tensor": { "data": { - "uuid": "python-5-1056", + "uuid": "python-5-1063", "seg": [ [ [ @@ -57664,7 +67459,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6616414835164836, + "max": 0.6616758241758242 + }, "related_data": {} } } @@ -57672,7 +67470,7 @@ { "Variable": { "data": { - "uuid": "python-5-1057", + "uuid": "python-5-1064", "seg": [ [ [ @@ -57680,7 +67478,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6616758241758242, + "max": 0.6617101648351649 + }, "related_data": {} } } @@ -57688,7 +67489,7 @@ { "定义Layer": { "data": { - "uuid": "python-5-1058", + "uuid": "python-5-1065", "seg": [ [ [ @@ -57697,7 +67498,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6617101648351649, + "max": 0.6617445054945055 + }, "related_data": {} } } @@ -57705,7 +67509,7 @@ { "可视化": { "data": { - "uuid": "python-5-1059", + "uuid": "python-5-1066", "seg": [ [ [ @@ -57713,7 +67517,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6617445054945055, + "max": 0.6617788461538462 + }, "related_data": {} } } @@ -57721,7 +67528,7 @@ { "CNN(TextCNN)": { "data": { - "uuid": "python-5-1060", + "uuid": "python-5-1067", "seg": [ [ [ @@ -57730,7 +67537,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6617788461538462, + "max": 0.6618131868131868 + }, "related_data": {} } } @@ -57738,7 +67548,7 @@ { "RNN(GRU/LSTM)": { "data": { - "uuid": "python-5-1061", + "uuid": "python-5-1068", "seg": [ [ [ @@ -57748,7 +67558,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6618131868131868, + "max": 0.6618475274725275 + }, "related_data": {} } } @@ -57756,7 +67569,7 @@ { "Autoencoder": { "data": { - "uuid": "python-5-1062", + "uuid": "python-5-1069", "seg": [ [ [ @@ -57764,7 +67577,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6618475274725275, + "max": 0.6618818681318681 + }, "related_data": {} } } @@ -57772,7 +67588,7 @@ { "GNN/GCN": { "data": { - "uuid": "python-5-1063", + "uuid": "python-5-1070", "seg": [ [ [ @@ -57781,7 +67597,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6618818681318681, + "max": 0.6619162087912088 + }, "related_data": {} } } @@ -57789,7 +67608,7 @@ { "迁移学习": { "data": { - "uuid": "python-5-1064", + "uuid": "python-5-1071", "seg": [ [ [ @@ -57798,7 +67617,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6619162087912088, + "max": 0.6619505494505494 + }, "related_data": {} } } @@ -57806,7 +67628,7 @@ { "生成对抗网络GAN": { "data": { - "uuid": "python-5-1065", + "uuid": "python-5-1072", "seg": [ [ [ @@ -57817,7 +67639,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6619505494505494, + "max": 0.6619848901098901 + }, "related_data": {} } } @@ -57825,17 +67650,21 @@ { "神经网络参数保存": { "data": { - "uuid": "python-5-1066", + "uuid": "python-5-1073", "seg": [ [ [ "神经网络", "参数", - "保存" + "保存", + "神经网络参数" ] ] ], - "level": "3", + "level": { + "min": 0.6619848901098901, + "max": 0.6620192307692307 + }, "related_data": {} } } @@ -57843,24 +67672,29 @@ { "神经网络性能评价": { "data": { - "uuid": "python-5-1067", + "uuid": "python-5-1074", "seg": [ [ [ "神经网络", "性能", - "评价" + "评价", + "神经网络性能", + "性能评价" ] ] ], - "level": "3", + "level": { + "min": 0.6620192307692307, + "max": 0.6620535714285715 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1309", + "uuid": "python-4-1322", "seg": [ [ [ @@ -57868,7 +67702,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6616071428571428, + "max": 0.6620535714285715 + }, "related_data": {} } } @@ -57879,7 +67716,7 @@ { "强化学习概念": { "data": { - "uuid": "python-5-1068", + "uuid": "python-5-1075", "seg": [ [ [ @@ -57889,20 +67726,23 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6620535714285715, + "max": 0.6621279761904763 + }, "related_data": { "qa": { "data_id": [ - "8_668876_489642", - "8_7409408_53359833", - "8_698520_585596", - "8_7432423_53401546", - "8_1101805_1316392", - "8_7465035_53451747", - "8_7458904_53443682", - "8_7453806_53436503", - "8_1100646_1315443", - "8_7464777_53451335" + "8_668876_489642@8", + "8_7409408_53359833@8", + "8_698520_585596@8", + "8_7432423_53401546@8", + "8_1101805_1316392@8", + "8_7465035_53451747@8", + "8_7458904_53443682@8", + "8_7453806_53436503@8", + "8_1100646_1315443@8", + "8_7464777_53451335@8" ] } } @@ -57912,7 +67752,7 @@ { "Q-Learning": { "data": { - "uuid": "python-5-1069", + "uuid": "python-5-1076", "seg": [ [ [ @@ -57921,11 +67761,14 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6621279761904763, + "max": 0.6622023809523809 + }, "related_data": { "qa": { "data_id": [ - "8_7424857_53386093" + "8_7424857_53386093@8" ] } } @@ -57935,7 +67778,7 @@ { "Sarsa": { "data": { - "uuid": "python-5-1070", + "uuid": "python-5-1077", "seg": [ [ [ @@ -57943,7 +67786,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6622023809523809, + "max": 0.6622767857142857 + }, "related_data": {} } } @@ -57951,7 +67797,7 @@ { "DQN(Deep Q Network)": { "data": { - "uuid": "python-5-1071", + "uuid": "python-5-1078", "seg": [ [ [ @@ -57962,15 +67808,24 @@ ] ] ], - "level": "3", - "related_data": {} + "level": { + "min": 0.6622767857142857, + "max": 0.6623511904761905 + }, + "related_data": { + "qa": { + "data_id": [ + "8_698492_585767@8" + ] + } + } } } }, { "Policy Gradients": { "data": { - "uuid": "python-5-1072", + "uuid": "python-5-1079", "seg": [ [ [ @@ -57979,7 +67834,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6623511904761905, + "max": 0.6624255952380952 + }, "related_data": {} } } @@ -57987,7 +67845,7 @@ { "Actor Critic": { "data": { - "uuid": "python-5-1073", + "uuid": "python-5-1080", "seg": [ [ [ @@ -57996,14 +67854,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6624255952380952, + "max": 0.6625 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1310", + "uuid": "python-4-1323", "seg": [ [ [ @@ -58012,11 +67873,14 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6620535714285715, + "max": 0.6625 + }, "related_data": { "qa": { "data_id": [ - "8_7433033_53402822" + "8_7433033_53402822@8" ] } } @@ -58025,7 +67889,7 @@ } ], "data": { - "uuid": "python-3-245", + "uuid": "python-3-246", "seg": [ [ [ @@ -58034,7 +67898,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.659375, + "max": 0.6625 + }, "related_data": {} } } @@ -58048,7 +67915,7 @@ { "数字图像处理": { "data": { - "uuid": "python-5-1074", + "uuid": "python-5-1081", "seg": [ [ [ @@ -58056,11 +67923,14 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6625, + "max": 0.6625300480769231 + }, "related_data": { "qa": { "data_id": [ - "8_1077769_1282167" + "8_1077769_1282167@8" ] } } @@ -58070,7 +67940,7 @@ { "图像三要素": { "data": { - "uuid": "python-5-1075", + "uuid": "python-5-1082", "seg": [ [ [ @@ -58079,7 +67949,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6625300480769231, + "max": 0.6625600961538461 + }, "related_data": {} } } @@ -58087,7 +67960,7 @@ { "像素及图像类型": { "data": { - "uuid": "python-5-1076", + "uuid": "python-5-1083", "seg": [ [ [ @@ -58095,11 +67968,15 @@ ], [ "图像", - "类型" + "类型", + "图像类型" ] ] ], - "level": "3", + "level": { + "min": 0.6625600961538461, + "max": 0.6625901442307692 + }, "related_data": {} } } @@ -58107,25 +67984,30 @@ { "图像信号数字转换": { "data": { - "uuid": "python-5-1077", + "uuid": "python-5-1084", "seg": [ [ [ "图像", "信号", "数字", - "转换" + "转换", + "图像信号", + "信号数字" ] ] ], - "level": "3", + "level": { + "min": 0.6625901442307692, + "max": 0.6626201923076923 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1311", + "uuid": "python-4-1324", "seg": [ [ [ @@ -58134,7 +68016,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6625, + "max": 0.6626201923076923 + }, "related_data": {} } } @@ -58145,7 +68030,7 @@ { "安装配置": { "data": { - "uuid": "python-5-1078", + "uuid": "python-5-1085", "seg": [ [ [ @@ -58154,7 +68039,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6626201923076923, + "max": 0.6626602564102564 + }, "related_data": {} } } @@ -58162,30 +68050,34 @@ { "OpenCV基础语法": { "data": { - "uuid": "python-5-1079", + "uuid": "python-5-1086", "seg": [ [ [ "opencv", "基础", - "语法" + "语法", + "基础语法" ] ] ], - "level": "3", + "level": { + "min": 0.6626602564102564, + "max": 0.6627003205128206 + }, "related_data": { "qa": { "data_id": [ - "8_7399576_53346884", - "8_1064141_1262348", - "8_7427454_53392016", - "8_1067665_1268345", - "8_702166_592717", - "8_7416441_53370527", - "8_1087249_1295101", - "8_7444846_53423389", - "8_689196_556844", - "8_345984_350924" + "8_7399576_53346884@8", + "8_1064141_1262348@8", + "8_7427454_53392016@8", + "8_1067665_1268345@8", + "8_702166_592717@8", + "8_7416441_53370527@8", + "8_1087249_1295101@8", + "8_7444846_53423389@8", + "8_689196_556844@8", + "8_345984_350924@8" ] } } @@ -58195,7 +68087,7 @@ { "几何图形绘制": { "data": { - "uuid": "python-5-1080", + "uuid": "python-5-1087", "seg": [ [ [ @@ -58204,14 +68096,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6627003205128206, + "max": 0.6627403846153846 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1312", + "uuid": "python-4-1325", "seg": [ [ [ @@ -58220,7 +68115,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6626201923076923, + "max": 0.6627403846153846 + }, "related_data": {} } } @@ -58231,7 +68129,7 @@ { "读取显示图像": { "data": { - "uuid": "python-5-1081", + "uuid": "python-5-1088", "seg": [ [ [ @@ -58241,7 +68139,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6627403846153846, + "max": 0.6627704326923077 + }, "related_data": {} } } @@ -58249,7 +68150,7 @@ { "读取修改像素": { "data": { - "uuid": "python-5-1082", + "uuid": "python-5-1089", "seg": [ [ [ @@ -58259,11 +68160,14 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6627704326923077, + "max": 0.6628004807692307 + }, "related_data": { "qa": { "data_id": [ - "8_7438792_53412229" + "8_7438792_53412229@8" ] } } @@ -58273,7 +68177,7 @@ { "创建复制保存图像": { "data": { - "uuid": "python-5-1083", + "uuid": "python-5-1090", "seg": [ [ [ @@ -58284,7 +68188,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6628004807692307, + "max": 0.6628305288461538 + }, "related_data": {} } } @@ -58292,36 +68199,44 @@ { "获取图像属性及通道": { "data": { - "uuid": "python-5-1084", + "uuid": "python-5-1091", "seg": [ [ [ "获取", "图像", - "属性" + "属性", + "图像属性" ], [ "通道" ] ] ], - "level": "3", + "level": { + "min": 0.6628305288461538, + "max": 0.6628605769230769 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1313", + "uuid": "python-4-1326", "seg": [ [ [ "图像处理", - "入门" + "入门", + "图像处理入门" ] ] ], - "level": "3", + "level": { + "min": 0.6627403846153846, + "max": 0.6628605769230769 + }, "related_data": {} } } @@ -58332,7 +68247,7 @@ { "图像加法运算": { "data": { - "uuid": "python-5-1085", + "uuid": "python-5-1092", "seg": [ [ [ @@ -58342,7 +68257,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6628605769230769, + "max": 0.662880608974359 + }, "related_data": {} } } @@ -58350,7 +68268,7 @@ { "图像减法运算": { "data": { - "uuid": "python-5-1086", + "uuid": "python-5-1093", "seg": [ [ [ @@ -58360,7 +68278,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.662880608974359, + "max": 0.662900641025641 + }, "related_data": {} } } @@ -58368,7 +68289,7 @@ { "图像与运算": { "data": { - "uuid": "python-5-1087", + "uuid": "python-5-1094", "seg": [ [ [ @@ -58379,7 +68300,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.662900641025641, + "max": 0.662920673076923 + }, "related_data": {} } } @@ -58387,7 +68311,7 @@ { "图像或运算": { "data": { - "uuid": "python-5-1088", + "uuid": "python-5-1095", "seg": [ [ [ @@ -58396,7 +68320,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.662920673076923, + "max": 0.6629407051282051 + }, "related_data": {} } } @@ -58404,17 +68331,21 @@ { "图像异或运算": { "data": { - "uuid": "python-5-1089", + "uuid": "python-5-1096", "seg": [ [ [ "图像", "异或", - "运算" + "运算", + "异或运算" ] ] ], - "level": "3", + "level": { + "min": 0.6629407051282051, + "max": 0.6629607371794871 + }, "related_data": {} } } @@ -58422,35 +68353,43 @@ { "图像非运算": { "data": { - "uuid": "python-5-1090", + "uuid": "python-5-1097", "seg": [ [ [ "图像", - "运算" + "运算", + "非运算" ] ] ], - "level": "3", + "level": { + "min": 0.6629607371794871, + "max": 0.6629807692307692 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1314", + "uuid": "python-4-1327", "seg": [ [ [ "图像", - "算数" + "算数", + "图像算数" ], [ "逻辑运算" ] ] ], - "level": "3", + "level": { + "min": 0.6628605769230769, + "max": 0.6629807692307692 + }, "related_data": {} } } @@ -58461,7 +68400,7 @@ { "平移变换": { "data": { - "uuid": "python-5-1091", + "uuid": "python-5-1098", "seg": [ [ [ @@ -58469,7 +68408,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6629807692307692, + "max": 0.6630008012820513 + }, "related_data": {} } } @@ -58477,7 +68419,7 @@ { "缩放变换": { "data": { - "uuid": "python-5-1092", + "uuid": "python-5-1099", "seg": [ [ [ @@ -58486,7 +68428,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6630008012820513, + "max": 0.6630208333333333 + }, "related_data": {} } } @@ -58494,7 +68439,7 @@ { "旋转变换": { "data": { - "uuid": "python-5-1093", + "uuid": "python-5-1100", "seg": [ [ [ @@ -58502,7 +68447,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6630208333333333, + "max": 0.6630408653846154 + }, "related_data": {} } } @@ -58510,7 +68458,7 @@ { "镜像变换": { "data": { - "uuid": "python-5-1094", + "uuid": "python-5-1101", "seg": [ [ [ @@ -58519,11 +68467,14 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6630408653846154, + "max": 0.6630608974358975 + }, "related_data": { "qa": { "data_id": [ - "8_7402039_53349594" + "8_7402039_53349594@8" ] } } @@ -58533,7 +68484,7 @@ { "仿射变换": { "data": { - "uuid": "python-5-1095", + "uuid": "python-5-1102", "seg": [ [ [ @@ -58541,11 +68492,14 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6630608974358975, + "max": 0.6630809294871794 + }, "related_data": { "qa": { "data_id": [ - "8_765006_823866" + "8_765006_823866@8" ] } } @@ -58555,7 +68509,7 @@ { "透视变换": { "data": { - "uuid": "python-5-1096", + "uuid": "python-5-1103", "seg": [ [ [ @@ -58564,11 +68518,14 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6630809294871794, + "max": 0.6631009615384615 + }, "related_data": { "qa": { "data_id": [ - "8_7428101_53393422" + "8_7428101_53393422@8" ] } } @@ -58577,7 +68534,7 @@ } ], "data": { - "uuid": "python-4-1315", + "uuid": "python-4-1328", "seg": [ [ [ @@ -58586,7 +68543,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6629807692307692, + "max": 0.6631009615384615 + }, "related_data": {} } } @@ -58597,7 +68557,7 @@ { "图像量化处理": { "data": { - "uuid": "python-5-1097", + "uuid": "python-5-1104", "seg": [ [ [ @@ -58606,11 +68566,14 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6631009615384615, + "max": 0.6631310096153846 + }, "related_data": { "qa": { "data_id": [ - "8_4646124_29329806" + "8_4646124_29329806@8" ] } } @@ -58620,7 +68583,7 @@ { "图像采样处理": { "data": { - "uuid": "python-5-1098", + "uuid": "python-5-1105", "seg": [ [ [ @@ -58629,7 +68592,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6631310096153846, + "max": 0.6631610576923077 + }, "related_data": {} } } @@ -58637,20 +68603,24 @@ { "图像金字塔": { "data": { - "uuid": "python-5-1099", + "uuid": "python-5-1106", "seg": [ [ [ "图像", - "金字塔" + "金字塔", + "图像金字塔" ] ] ], - "level": "3", + "level": { + "min": 0.6631610576923077, + "max": 0.6631911057692308 + }, "related_data": { "qa": { "data_id": [ - "8_7416676_53371092" + "8_7416676_53371092@8" ] } } @@ -58660,23 +68630,27 @@ { "局部马赛克处理": { "data": { - "uuid": "python-5-1100", + "uuid": "python-5-1107", "seg": [ [ [ "局部", - "马赛克" + "马赛克", + "局部马赛克" ] ] ], - "level": "3", + "level": { + "min": 0.6631911057692308, + "max": 0.6632211538461539 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1316", + "uuid": "python-4-1329", "seg": [ [ [ @@ -58688,7 +68662,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6631009615384615, + "max": 0.6632211538461539 + }, "related_data": {} } } @@ -58699,7 +68676,7 @@ { "直方图概述": { "data": { - "uuid": "python-5-1101", + "uuid": "python-5-1108", "seg": [ [ [ @@ -58708,7 +68685,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6632211538461539, + "max": 0.6632451923076923 + }, "related_data": {} } } @@ -58716,16 +68696,20 @@ { "直方图绘制": { "data": { - "uuid": "python-5-1102", + "uuid": "python-5-1109", "seg": [ [ [ "直方图", - "绘制" + "绘制", + "直方图绘制" ] ] ], - "level": "3", + "level": { + "min": 0.6632451923076923, + "max": 0.6632692307692307 + }, "related_data": {} } } @@ -58733,16 +68717,20 @@ { "掩膜直方图": { "data": { - "uuid": "python-5-1103", + "uuid": "python-5-1110", "seg": [ [ [ "掩膜", - "直方图" + "直方图", + "掩膜直方图" ] ] ], - "level": "3", + "level": { + "min": 0.6632692307692307, + "max": 0.6632932692307693 + }, "related_data": {} } } @@ -58750,7 +68738,7 @@ { "H-S直方图": { "data": { - "uuid": "python-5-1104", + "uuid": "python-5-1111", "seg": [ [ [ @@ -58760,11 +68748,14 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6632932692307693, + "max": 0.6633173076923077 + }, "related_data": { "qa": { "data_id": [ - "8_1094344_1304571" + "8_1094344_1304571@8" ] } } @@ -58774,7 +68765,7 @@ { "直方图对比": { "data": { - "uuid": "python-5-1105", + "uuid": "python-5-1112", "seg": [ [ [ @@ -58782,14 +68773,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6633173076923077, + "max": 0.6633413461538461 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1317", + "uuid": "python-4-1330", "seg": [ [ [ @@ -58798,7 +68792,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6632211538461539, + "max": 0.6633413461538461 + }, "related_data": {} } } @@ -58809,7 +68806,7 @@ { "图像增强": { "data": { - "uuid": "python-5-1106", + "uuid": "python-5-1113", "seg": [ [ [ @@ -58817,7 +68814,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6633413461538461, + "max": 0.6633653846153845 + }, "related_data": {} } } @@ -58825,16 +68825,20 @@ { "直方图均衡化": { "data": { - "uuid": "python-5-1107", + "uuid": "python-5-1114", "seg": [ [ [ "直方图", - "均衡化" + "均衡化", + "直方图均衡化" ] ] ], - "level": "3", + "level": { + "min": 0.6633653846153845, + "max": 0.6633894230769231 + }, "related_data": {} } } @@ -58842,17 +68846,22 @@ { "局部直方图均衡化": { "data": { - "uuid": "python-5-1108", + "uuid": "python-5-1115", "seg": [ [ [ "局部", "直方图", - "均衡化" + "均衡化", + "局部直方图", + "直方图均衡化" ] ] ], - "level": "3", + "level": { + "min": 0.6633894230769231, + "max": 0.6634134615384615 + }, "related_data": {} } } @@ -58860,17 +68869,21 @@ { "自动色彩均衡化": { "data": { - "uuid": "python-5-1109", + "uuid": "python-5-1116", "seg": [ [ [ "自动", "色彩", - "均衡化" + "均衡化", + "色彩均衡化" ] ] ], - "level": "3", + "level": { + "min": 0.6634134615384615, + "max": 0.6634375 + }, "related_data": {} } } @@ -58878,7 +68891,7 @@ { "图像去雾": { "data": { - "uuid": "python-5-1110", + "uuid": "python-5-1117", "seg": [ [ [ @@ -58887,14 +68900,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6634375, + "max": 0.6634615384615384 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1318", + "uuid": "python-4-1331", "seg": [ [ [ @@ -58902,7 +68918,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6633413461538461, + "max": 0.6634615384615384 + }, "related_data": {} } } @@ -58913,7 +68932,7 @@ { "图像平滑概述": { "data": { - "uuid": "python-5-1111", + "uuid": "python-5-1118", "seg": [ [ [ @@ -58923,7 +68942,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6634615384615384, + "max": 0.6634815705128205 + }, "related_data": {} } } @@ -58931,16 +68953,20 @@ { "均值滤波": { "data": { - "uuid": "python-5-1112", + "uuid": "python-5-1119", "seg": [ [ [ "均值", - "滤波" + "滤波", + "均值滤波" ] ] ], - "level": "3", + "level": { + "min": 0.6634815705128205, + "max": 0.6635016025641025 + }, "related_data": {} } } @@ -58948,16 +68974,20 @@ { "方框滤波": { "data": { - "uuid": "python-5-1113", + "uuid": "python-5-1120", "seg": [ [ [ "方框", - "滤波" + "滤波", + "方框滤波" ] ] ], - "level": "3", + "level": { + "min": 0.6635016025641025, + "max": 0.6635216346153846 + }, "related_data": {} } } @@ -58965,16 +68995,20 @@ { "高斯滤波": { "data": { - "uuid": "python-5-1114", + "uuid": "python-5-1121", "seg": [ [ [ "高斯", - "滤波" + "滤波", + "高斯滤波" ] ] ], - "level": "3", + "level": { + "min": 0.6635216346153846, + "max": 0.6635416666666667 + }, "related_data": {} } } @@ -58982,16 +69016,20 @@ { "中值滤波": { "data": { - "uuid": "python-5-1115", + "uuid": "python-5-1122", "seg": [ [ [ "值", - "滤波" + "滤波", + "值滤波" ] ] ], - "level": "3", + "level": { + "min": 0.6635416666666667, + "max": 0.6635616987179487 + }, "related_data": {} } } @@ -58999,23 +69037,27 @@ { "双边滤波": { "data": { - "uuid": "python-5-1116", + "uuid": "python-5-1123", "seg": [ [ [ "双边", - "滤波" + "滤波", + "双边滤波" ] ] ], - "level": "3", + "level": { + "min": 0.6635616987179487, + "max": 0.6635817307692308 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1319", + "uuid": "python-4-1332", "seg": [ [ [ @@ -59024,7 +69066,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6634615384615384, + "max": 0.6635817307692308 + }, "related_data": {} } } @@ -59035,22 +69080,29 @@ { "一阶微分算法、二阶微分算子": { "data": { - "uuid": "python-5-1117", + "uuid": "python-5-1124", "seg": [ [ [ "阶", "微分", - "算法" + "算法", + "阶微分", + "微分算法" ], [ "二阶", "微分", - "算子" + "算子", + "二阶微分", + "微分算子" ] ] ], - "level": "3", + "level": { + "min": 0.6635817307692308, + "max": 0.6635967548076923 + }, "related_data": {} } } @@ -59058,7 +69110,7 @@ { "Roberts算子": { "data": { - "uuid": "python-5-1118", + "uuid": "python-5-1125", "seg": [ [ [ @@ -59067,7 +69119,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6635967548076923, + "max": 0.6636117788461539 + }, "related_data": {} } } @@ -59075,7 +69130,7 @@ { "Prewitt算子": { "data": { - "uuid": "python-5-1119", + "uuid": "python-5-1126", "seg": [ [ [ @@ -59084,7 +69139,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6636117788461539, + "max": 0.6636268028846154 + }, "related_data": {} } } @@ -59092,7 +69150,7 @@ { "Sobel算子": { "data": { - "uuid": "python-5-1120", + "uuid": "python-5-1127", "seg": [ [ [ @@ -59101,7 +69159,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6636268028846154, + "max": 0.6636418269230769 + }, "related_data": {} } } @@ -59109,7 +69170,7 @@ { "Laplacian算子": { "data": { - "uuid": "python-5-1121", + "uuid": "python-5-1128", "seg": [ [ [ @@ -59118,7 +69179,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6636418269230769, + "max": 0.6636568509615385 + }, "related_data": {} } } @@ -59126,7 +69190,7 @@ { "Scharr算子": { "data": { - "uuid": "python-5-1122", + "uuid": "python-5-1129", "seg": [ [ [ @@ -59135,7 +69199,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6636568509615385, + "max": 0.663671875 + }, "related_data": {} } } @@ -59143,7 +69210,7 @@ { "Canny算子": { "data": { - "uuid": "python-5-1123", + "uuid": "python-5-1130", "seg": [ [ [ @@ -59152,7 +69219,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.663671875, + "max": 0.6636868990384616 + }, "related_data": {} } } @@ -59160,7 +69230,7 @@ { "LOG算子": { "data": { - "uuid": "python-5-1124", + "uuid": "python-5-1131", "seg": [ [ [ @@ -59169,13 +69239,16 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6636868990384616, + "max": 0.6637019230769231 + }, "related_data": { "qa": { "data_id": [ - "8_756835_812017", - "8_754358_809793", - "8_1052443_1250014" + "8_756835_812017@8", + "8_754358_809793@8", + "8_1052443_1250014@8" ] } } @@ -59184,7 +69257,7 @@ } ], "data": { - "uuid": "python-4-1320", + "uuid": "python-4-1333", "seg": [ [ [ @@ -59197,7 +69270,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6635817307692308, + "max": 0.6637019230769231 + }, "related_data": {} } } @@ -59208,7 +69284,7 @@ { "图像腐蚀": { "data": { - "uuid": "python-5-1125", + "uuid": "python-5-1132", "seg": [ [ [ @@ -59217,7 +69293,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6637019230769231, + "max": 0.6637190934065934 + }, "related_data": {} } } @@ -59225,7 +69304,7 @@ { "图像膨胀": { "data": { - "uuid": "python-5-1126", + "uuid": "python-5-1133", "seg": [ [ [ @@ -59234,7 +69313,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6637190934065934, + "max": 0.6637362637362637 + }, "related_data": {} } } @@ -59242,7 +69324,7 @@ { "图像开运算": { "data": { - "uuid": "python-5-1127", + "uuid": "python-5-1134", "seg": [ [ [ @@ -59252,7 +69334,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6637362637362637, + "max": 0.663753434065934 + }, "related_data": {} } } @@ -59260,7 +69345,7 @@ { "图像闭运算": { "data": { - "uuid": "python-5-1128", + "uuid": "python-5-1135", "seg": [ [ [ @@ -59270,7 +69355,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.663753434065934, + "max": 0.6637706043956044 + }, "related_data": {} } } @@ -59278,17 +69366,21 @@ { "图像梯度运算": { "data": { - "uuid": "python-5-1129", + "uuid": "python-5-1136", "seg": [ [ [ "图像", "梯度", - "运算" + "运算", + "图像梯度" ] ] ], - "level": "3", + "level": { + "min": 0.6637706043956044, + "max": 0.6637877747252747 + }, "related_data": {} } } @@ -59296,17 +69388,21 @@ { "图像顶帽运算": { "data": { - "uuid": "python-5-1130", + "uuid": "python-5-1137", "seg": [ [ [ "图像", "顶帽", - "运算" + "运算", + "图像顶帽" ] ] ], - "level": "3", + "level": { + "min": 0.6637877747252747, + "max": 0.663804945054945 + }, "related_data": {} } } @@ -59314,33 +69410,41 @@ { "图像底帽运算": { "data": { - "uuid": "python-5-1131", + "uuid": "python-5-1138", "seg": [ [ [ "图像", "底帽", - "运算" + "运算", + "图像底帽" ] ] ], - "level": "3", + "level": { + "min": 0.663804945054945, + "max": 0.6638221153846153 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1321", + "uuid": "python-4-1334", "seg": [ [ [ "图像", - "形态学" + "形态学", + "图像形态学" ] ] ], - "level": "3", + "level": { + "min": 0.6637019230769231, + "max": 0.6638221153846153 + }, "related_data": {} } } @@ -59351,7 +69455,7 @@ { "基于阈值的图像分割": { "data": { - "uuid": "python-5-1132", + "uuid": "python-5-1139", "seg": [ [ [ @@ -59361,14 +69465,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6638221153846153, + "max": 0.6638371394230769 + }, "related_data": { "qa": { "data_id": [ - "8_1066514_1266204", - "8_7443882_53422124", - "8_7444510_53422654", - "8_7439000_53412555" + "8_1066514_1266204@8", + "8_7443882_53422124@8", + "8_7444510_53422654@8", + "8_7439000_53412555@8" ] } } @@ -59378,7 +69485,7 @@ { "基于边缘检测的图像分割": { "data": { - "uuid": "python-5-1133", + "uuid": "python-5-1140", "seg": [ [ [ @@ -59389,7 +69496,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6638371394230769, + "max": 0.6638521634615384 + }, "related_data": {} } } @@ -59397,18 +69507,22 @@ { "基于纹理背景的图像分割": { "data": { - "uuid": "python-5-1134", + "uuid": "python-5-1141", "seg": [ [ [ "纹理", "背景", "图像", - "分割" + "分割", + "纹理背景" ] ] ], - "level": "3", + "level": { + "min": 0.6638521634615384, + "max": 0.6638671875 + }, "related_data": {} } } @@ -59416,7 +69530,7 @@ { "基于K-Means聚类的区域分割": { "data": { - "uuid": "python-5-1135", + "uuid": "python-5-1142", "seg": [ [ [ @@ -59427,7 +69541,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6638671875, + "max": 0.6638822115384615 + }, "related_data": {} } } @@ -59435,7 +69552,7 @@ { "基于均值漂移算法的图像分割": { "data": { - "uuid": "python-5-1136", + "uuid": "python-5-1143", "seg": [ [ [ @@ -59447,11 +69564,14 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6638822115384615, + "max": 0.663897235576923 + }, "related_data": { "qa": { "data_id": [ - "8_774401_838444" + "8_774401_838444@8" ] } } @@ -59461,18 +69581,22 @@ { "基于分水岭算法的图像分割": { "data": { - "uuid": "python-5-1137", + "uuid": "python-5-1144", "seg": [ [ [ "分水岭", "算法", "图像", - "分割" + "分割", + "分水岭算法" ] ] ], - "level": "3", + "level": { + "min": 0.663897235576923, + "max": 0.6639122596153846 + }, "related_data": {} } } @@ -59480,18 +69604,22 @@ { "图像漫水填充分割": { "data": { - "uuid": "python-5-1138", + "uuid": "python-5-1145", "seg": [ [ [ "图像", "漫水", "填充", - "分割" + "分割", + "图像漫水" ] ] ], - "level": "3", + "level": { + "min": 0.6639122596153846, + "max": 0.6639272836538461 + }, "related_data": {} } } @@ -59499,26 +69627,30 @@ { "文字区域分割及定位": { "data": { - "uuid": "python-5-1139", + "uuid": "python-5-1146", "seg": [ [ [ "文字", - "区域分割" + "区域分割", + "文字区域分割" ], [ "定位" ] ] ], - "level": "3", + "level": { + "min": 0.6639272836538461, + "max": 0.6639423076923077 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1322", + "uuid": "python-4-1335", "seg": [ [ [ @@ -59527,7 +69659,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6638221153846153, + "max": 0.6639423076923077 + }, "related_data": {} } } @@ -59538,7 +69673,7 @@ { "傅里叶变换": { "data": { - "uuid": "python-5-1140", + "uuid": "python-5-1147", "seg": [ [ [ @@ -59547,12 +69682,15 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6639423076923077, + "max": 0.6639723557692307 + }, "related_data": { "qa": { "data_id": [ - "8_1079568_1284274", - "8_178178_63074" + "8_1079568_1284274@8", + "8_178178_63074@8" ] } } @@ -59562,7 +69700,7 @@ { "傅里叶逆变换": { "data": { - "uuid": "python-5-1141", + "uuid": "python-5-1148", "seg": [ [ [ @@ -59571,7 +69709,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6639723557692307, + "max": 0.6640024038461538 + }, "related_data": {} } } @@ -59579,16 +69720,20 @@ { "高通滤波器": { "data": { - "uuid": "python-5-1142", + "uuid": "python-5-1149", "seg": [ [ [ "高通", - "滤波器" + "滤波器", + "高通滤波器" ] ] ], - "level": "3", + "level": { + "min": 0.6640024038461538, + "max": 0.6640324519230769 + }, "related_data": {} } } @@ -59596,7 +69741,7 @@ { "低通滤波器": { "data": { - "uuid": "python-5-1143", + "uuid": "python-5-1150", "seg": [ [ [ @@ -59604,14 +69749,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6640324519230769, + "max": 0.6640625 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1323", + "uuid": "python-4-1336", "seg": [ [ [ @@ -59620,7 +69768,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6639423076923077, + "max": 0.6640625 + }, "related_data": {} } } @@ -59631,7 +69782,7 @@ { "霍夫变换": { "data": { - "uuid": "python-5-1144", + "uuid": "python-5-1151", "seg": [ [ [ @@ -59640,7 +69791,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6640625, + "max": 0.6641025641025641 + }, "related_data": {} } } @@ -59648,7 +69802,7 @@ { "霍夫线变换": { "data": { - "uuid": "python-5-1145", + "uuid": "python-5-1152", "seg": [ [ [ @@ -59657,7 +69811,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6641025641025641, + "max": 0.6641426282051283 + }, "related_data": {} } } @@ -59665,7 +69822,7 @@ { "霍夫圆变换": { "data": { - "uuid": "python-5-1146", + "uuid": "python-5-1153", "seg": [ [ [ @@ -59674,14 +69831,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6641426282051283, + "max": 0.6641826923076923 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1324", + "uuid": "python-4-1337", "seg": [ [ [ @@ -59690,7 +69850,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6640625, + "max": 0.6641826923076923 + }, "related_data": {} } } @@ -59701,17 +69864,21 @@ { "图像毛玻璃特效": { "data": { - "uuid": "python-5-1147", + "uuid": "python-5-1154", "seg": [ [ [ "图像", "毛玻璃", - "特效" + "特效", + "图像毛玻璃" ] ] ], - "level": "3", + "level": { + "min": 0.6641826923076923, + "max": 0.6641977163461539 + }, "related_data": {} } } @@ -59719,17 +69886,21 @@ { "图像浮雕特效": { "data": { - "uuid": "python-5-1148", + "uuid": "python-5-1155", "seg": [ [ [ "图像", "浮雕", - "特效" + "特效", + "图像浮雕" ] ] ], - "level": "3", + "level": { + "min": 0.6641977163461539, + "max": 0.6642127403846154 + }, "related_data": {} } } @@ -59737,17 +69908,21 @@ { "图像素描特效": { "data": { - "uuid": "python-5-1149", + "uuid": "python-5-1156", "seg": [ [ [ "图像", "素描", - "特效" + "特效", + "图像素描" ] ] ], - "level": "3", + "level": { + "min": 0.6642127403846154, + "max": 0.664227764423077 + }, "related_data": {} } } @@ -59755,7 +69930,7 @@ { "图像怀旧特效": { "data": { - "uuid": "python-5-1150", + "uuid": "python-5-1157", "seg": [ [ [ @@ -59765,7 +69940,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.664227764423077, + "max": 0.6642427884615385 + }, "related_data": {} } } @@ -59773,17 +69951,21 @@ { "图像流年特效": { "data": { - "uuid": "python-5-1151", + "uuid": "python-5-1158", "seg": [ [ [ "图像", - "流", - "特效" + "流年", + "特效", + "图像流年" ] ] ], - "level": "3", + "level": { + "min": 0.6642427884615385, + "max": 0.6642578125 + }, "related_data": {} } } @@ -59791,17 +69973,21 @@ { "图像滤镜特效": { "data": { - "uuid": "python-5-1152", + "uuid": "python-5-1159", "seg": [ [ [ "图像", "滤镜", - "特效" + "特效", + "图像滤镜" ] ] ], - "level": "3", + "level": { + "min": 0.6642578125, + "max": 0.6642728365384616 + }, "related_data": {} } } @@ -59809,17 +69995,21 @@ { "图像水波特效": { "data": { - "uuid": "python-5-1153", + "uuid": "python-5-1160", "seg": [ [ [ "图像", "水波", - "特效" + "特效", + "图像水波" ] ] ], - "level": "3", + "level": { + "min": 0.6642728365384616, + "max": 0.6642878605769231 + }, "related_data": {} } } @@ -59827,24 +70017,28 @@ { "图像卡通特效": { "data": { - "uuid": "python-5-1154", + "uuid": "python-5-1161", "seg": [ [ [ "图像", "卡通", - "特效" + "特效", + "图像卡通" ] ] ], - "level": "3", + "level": { + "min": 0.6642878605769231, + "max": 0.6643028846153847 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1325", + "uuid": "python-4-1338", "seg": [ [ [ @@ -59853,7 +70047,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6641826923076923, + "max": 0.6643028846153847 + }, "related_data": {} } } @@ -59864,17 +70061,21 @@ { "图像分类概述": { "data": { - "uuid": "python-5-1155", + "uuid": "python-5-1162", "seg": [ [ [ "图像", "分类", - "概述" + "概述", + "图像分类" ] ] ], - "level": "3", + "level": { + "min": 0.6643028846153847, + "max": 0.664320054945055 + }, "related_data": {} } } @@ -59882,22 +70083,26 @@ { "基于机器学习的图像分类": { "data": { - "uuid": "python-5-1156", + "uuid": "python-5-1163", "seg": [ [ [ "机器", "学习", "图像", - "分类" + "分类", + "图像分类" ] ] ], - "level": "3", + "level": { + "min": 0.664320054945055, + "max": 0.6643372252747253 + }, "related_data": { "qa": { "data_id": [ - "8_728763_740619" + "8_728763_740619@8" ] } } @@ -59907,23 +70112,27 @@ { "基于深度学习的图像分类": { "data": { - "uuid": "python-5-1157", + "uuid": "python-5-1164", "seg": [ [ [ "深度", "学习", "图像", - "分类" + "分类", + "图像分类" ] ] ], - "level": "3", + "level": { + "min": 0.6643372252747253, + "max": 0.6643543956043956 + }, "related_data": { "qa": { "data_id": [ - "8_789542_875086", - "8_783782_952834" + "8_789542_875086@8", + "8_783782_952834@8" ] } } @@ -59933,7 +70142,7 @@ { "LeNet": { "data": { - "uuid": "python-5-1158", + "uuid": "python-5-1165", "seg": [ [ [ @@ -59941,7 +70150,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6643543956043956, + "max": 0.664371565934066 + }, "related_data": {} } } @@ -59949,7 +70161,7 @@ { "VGG": { "data": { - "uuid": "python-5-1159", + "uuid": "python-5-1166", "seg": [ [ [ @@ -59957,7 +70169,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.664371565934066, + "max": 0.6643887362637363 + }, "related_data": {} } } @@ -59965,7 +70180,7 @@ { "AlexNet": { "data": { - "uuid": "python-5-1160", + "uuid": "python-5-1167", "seg": [ [ [ @@ -59973,7 +70188,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6643887362637363, + "max": 0.6644059065934066 + }, "related_data": {} } } @@ -59981,7 +70199,7 @@ { "ResNet": { "data": { - "uuid": "python-5-1161", + "uuid": "python-5-1168", "seg": [ [ [ @@ -59989,11 +70207,14 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6644059065934066, + "max": 0.6644230769230769 + }, "related_data": { "qa": { "data_id": [ - "8_7420678_53378824" + "8_7420678_53378824@8" ] } } @@ -60002,16 +70223,20 @@ } ], "data": { - "uuid": "python-4-1326", + "uuid": "python-4-1339", "seg": [ [ [ "图像", - "分类" + "分类", + "图像分类" ] ] ], - "level": "3", + "level": { + "min": 0.6643028846153847, + "max": 0.6644230769230769 + }, "related_data": {} } } @@ -60019,7 +70244,7 @@ { "人脸识别": { "data": { - "uuid": "python-4-1327", + "uuid": "python-4-1340", "seg": [ [ [ @@ -60027,7 +70252,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6644230769230769, + "max": 0.6645432692307692 + }, "related_data": {} } } @@ -60038,7 +70266,7 @@ { "目标检测概述": { "data": { - "uuid": "python-5-1162", + "uuid": "python-5-1169", "seg": [ [ [ @@ -60048,13 +70276,16 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6645432692307692, + "max": 0.6645604395604395 + }, "related_data": { "qa": { "data_id": [ - "8_748430_800396", - "8_7397574_53343850", - "8_7436818_53408967" + "8_748430_800396@8", + "8_7397574_53343850@8", + "8_7436818_53408967@8" ] } } @@ -60064,7 +70295,7 @@ { "RCNN": { "data": { - "uuid": "python-5-1163", + "uuid": "python-5-1170", "seg": [ [ [ @@ -60072,7 +70303,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6645604395604395, + "max": 0.6645776098901099 + }, "related_data": {} } } @@ -60080,7 +70314,7 @@ { "Fast-RCNN": { "data": { - "uuid": "python-5-1164", + "uuid": "python-5-1171", "seg": [ [ [ @@ -60089,7 +70323,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6645776098901099, + "max": 0.6645947802197802 + }, "related_data": {} } } @@ -60097,7 +70334,7 @@ { "SPPNet": { "data": { - "uuid": "python-5-1165", + "uuid": "python-5-1172", "seg": [ [ [ @@ -60105,7 +70342,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6645947802197802, + "max": 0.6646119505494505 + }, "related_data": {} } } @@ -60113,7 +70353,7 @@ { "Mask-RCNN": { "data": { - "uuid": "python-5-1166", + "uuid": "python-5-1173", "seg": [ [ [ @@ -60122,12 +70362,15 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6646119505494505, + "max": 0.6646291208791208 + }, "related_data": { "qa": { "data_id": [ - "8_1058702_1256112", - "8_1065083_1264127" + "8_1058702_1256112@8", + "8_1065083_1264127@8" ] } } @@ -60137,7 +70380,7 @@ { "SSD": { "data": { - "uuid": "python-5-1167", + "uuid": "python-5-1174", "seg": [ [ [ @@ -60145,7 +70388,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6646291208791208, + "max": 0.6646462912087913 + }, "related_data": {} } } @@ -60153,7 +70399,7 @@ { "YOLO系列算法": { "data": { - "uuid": "python-5-1168", + "uuid": "python-5-1175", "seg": [ [ [ @@ -60163,11 +70409,14 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6646462912087913, + "max": 0.6646634615384616 + }, "related_data": { "qa": { "data_id": [ - "8_754662_809846" + "8_754662_809846@8" ] } } @@ -60176,7 +70425,7 @@ } ], "data": { - "uuid": "python-4-1328", + "uuid": "python-4-1341", "seg": [ [ [ @@ -60185,7 +70434,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6645432692307692, + "max": 0.6646634615384616 + }, "related_data": {} } } @@ -60196,7 +70448,7 @@ { "创建神经网络块": { "data": { - "uuid": "python-5-1169", + "uuid": "python-5-1176", "seg": [ [ [ @@ -60205,7 +70457,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6646634615384616, + "max": 0.6646834935897437 + }, "related_data": {} } } @@ -60213,7 +70468,7 @@ { "TensorFlow介绍": { "data": { - "uuid": "python-5-1170", + "uuid": "python-5-1177", "seg": [ [ [ @@ -60222,7 +70477,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6646834935897437, + "max": 0.6647035256410256 + }, "related_data": {} } } @@ -60230,18 +70488,22 @@ { "MNIST数据集介绍": { "data": { - "uuid": "python-5-1171", + "uuid": "python-5-1178", "seg": [ [ [ "mnist", "数据", "集", - "介绍" + "介绍", + "数据集" ] ] ], - "level": "3", + "level": { + "min": 0.6647035256410256, + "max": 0.6647235576923077 + }, "related_data": {} } } @@ -60249,7 +70511,7 @@ { "Keras深度学习库概述": { "data": { - "uuid": "python-5-1172", + "uuid": "python-5-1179", "seg": [ [ [ @@ -60261,7 +70523,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6647235576923077, + "max": 0.6647435897435898 + }, "related_data": {} } } @@ -60272,7 +70537,7 @@ { "训练和测试数据的检索": { "data": { - "uuid": "python-6-179", + "uuid": "python-6-178", "seg": [ [ [ @@ -60284,7 +70549,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6647435897435898, + "max": 0.6647475961538463 + }, "related_data": {} } } @@ -60292,7 +70560,7 @@ { "训练数据的可视化": { "data": { - "uuid": "python-6-180", + "uuid": "python-6-179", "seg": [ [ [ @@ -60302,11 +70570,14 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6647475961538463, + "max": 0.6647516025641026 + }, "related_data": { "qa": { "data_id": [ - "8_7442181_53419035" + "8_7442181_53419035@8" ] } } @@ -60316,7 +70587,7 @@ { "创建神经网络": { "data": { - "uuid": "python-6-181", + "uuid": "python-6-180", "seg": [ [ [ @@ -60325,7 +70596,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6647516025641026, + "max": 0.664755608974359 + }, "related_data": {} } } @@ -60333,7 +70607,7 @@ { "训练神经网络": { "data": { - "uuid": "python-6-182", + "uuid": "python-6-181", "seg": [ [ [ @@ -60342,12 +70616,15 @@ ] ] ], - "level": "3", + "level": { + "min": 0.664755608974359, + "max": 0.6647596153846154 + }, "related_data": { "qa": { "data_id": [ - "8_7415944_53369575", - "8_7416109_53370095" + "8_7415944_53369575@8", + "8_7416109_53370095@8" ] } } @@ -60357,20 +70634,23 @@ { "测试": { "data": { - "uuid": "python-6-183", + "uuid": "python-6-182", "seg": [ [ [] ] ], - "level": "3", + "level": { + "min": 0.6647596153846154, + "max": 0.6647636217948718 + }, "related_data": {} } } } ], "data": { - "uuid": "python-5-1173", + "uuid": "python-5-1180", "seg": [ [ [ @@ -60380,15 +70660,19 @@ "mnist", "手写", "数字", - "识别" + "识别", + "手写数字" ] ] ], - "level": "3", + "level": { + "min": 0.6647435897435898, + "max": 0.6647636217948718 + }, "related_data": { "qa": { "data_id": [ - "8_1068540_1269354" + "8_1068540_1269354@8" ] } } @@ -60398,7 +70682,7 @@ { "理解反向传播": { "data": { - "uuid": "python-5-1174", + "uuid": "python-5-1181", "seg": [ [ [ @@ -60408,24 +70692,31 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6647636217948718, + "max": 0.6647836538461539 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1329", + "uuid": "python-4-1342", "seg": [ [ [ "深度", "神经网络", - "概述" + "概述", + "深度神经网络" ] ] ], - "level": "3", + "level": { + "min": 0.6646634615384616, + "max": 0.6647836538461539 + }, "related_data": {} } } @@ -60436,7 +70727,7 @@ { "CNN历史": { "data": { - "uuid": "python-5-1175", + "uuid": "python-5-1182", "seg": [ [ [ @@ -60445,7 +70736,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6647836538461539, + "max": 0.66484375 + }, "related_data": {} } } @@ -60456,7 +70750,7 @@ { "计算机如何解释图像": { "data": { - "uuid": "python-6-184", + "uuid": "python-6-183", "seg": [ [ [ @@ -60465,11 +70759,14 @@ ] ] ], - "level": "3", + "level": { + "min": 0.66484375, + "max": 0.664853766025641 + }, "related_data": { "qa": { "data_id": [ - "8_7435918_53406922" + "8_7435918_53406922@8" ] } } @@ -60479,17 +70776,21 @@ { "编码实现图像可视化": { "data": { - "uuid": "python-6-185", + "uuid": "python-6-184", "seg": [ [ [ "编码", "图像", - "可视化" + "可视化", + "图像可视化" ] ] ], - "level": "3", + "level": { + "min": 0.664853766025641, + "max": 0.664863782051282 + }, "related_data": {} } } @@ -60497,7 +70798,7 @@ { "dropout": { "data": { - "uuid": "python-6-186", + "uuid": "python-6-185", "seg": [ [ [ @@ -60505,7 +70806,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.664863782051282, + "max": 0.664873798076923 + }, "related_data": {} } } @@ -60513,7 +70817,7 @@ { "输入层": { "data": { - "uuid": "python-6-187", + "uuid": "python-6-186", "seg": [ [ [ @@ -60522,7 +70826,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.664873798076923, + "max": 0.664883814102564 + }, "related_data": {} } } @@ -60530,16 +70837,20 @@ { "卷积层": { "data": { - "uuid": "python-6-188", + "uuid": "python-6-187", "seg": [ [ [ "卷积", - "层" + "层", + "卷积层" ] ] ], - "level": "3", + "level": { + "min": 0.664883814102564, + "max": 0.6648938301282051 + }, "related_data": {} } } @@ -60547,7 +70858,7 @@ { "池化层": { "data": { - "uuid": "python-6-189", + "uuid": "python-6-188", "seg": [ [ [ @@ -60555,40 +70866,51 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6648938301282051, + "max": 0.6649038461538461 + }, "related_data": {} } } } ], "data": { - "uuid": "python-5-1176", + "uuid": "python-5-1183", "seg": [ [ [ "卷积", - "神经网络" + "神经网络", + "卷积神经网络" ] ] ], - "level": "3", + "level": { + "min": 0.66484375, + "max": 0.6649038461538461 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1330", + "uuid": "python-4-1343", "seg": [ [ [ "卷积", "神经网络", - "介绍" + "介绍", + "卷积神经网络" ] ] ], - "level": "3", + "level": { + "min": 0.6647836538461539, + "max": 0.6649038461538461 + }, "related_data": {} } } @@ -60602,7 +70924,7 @@ { "卷积操作": { "data": { - "uuid": "python-6-190", + "uuid": "python-6-189", "seg": [ [ [ @@ -60611,7 +70933,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6649038461538461, + "max": 0.6649188701923077 + }, "related_data": {} } } @@ -60619,7 +70944,7 @@ { "池化、步长和填充操作": { "data": { - "uuid": "python-6-191", + "uuid": "python-6-190", "seg": [ [ [ @@ -60634,14 +70959,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6649188701923077, + "max": 0.6649338942307692 + }, "related_data": {} } } } ], "data": { - "uuid": "python-5-1177", + "uuid": "python-5-1184", "seg": [ [ [ @@ -60654,7 +70982,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6649038461538461, + "max": 0.6649338942307692 + }, "related_data": {} } } @@ -60665,7 +70996,7 @@ { "在TensorFlow中应用池化操作": { "data": { - "uuid": "python-6-192", + "uuid": "python-6-191", "seg": [ [ [ @@ -60675,7 +71006,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6649338942307692, + "max": 0.6649489182692307 + }, "related_data": {} } } @@ -60683,7 +71017,7 @@ { "TensorFlow中的卷积操作": { "data": { - "uuid": "python-6-193", + "uuid": "python-6-192", "seg": [ [ [ @@ -60693,25 +71027,32 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6649489182692307, + "max": 0.6649639423076923 + }, "related_data": {} } } } ], "data": { - "uuid": "python-5-1178", + "uuid": "python-5-1185", "seg": [ [ [ "tensorflow", "卷积", "和池化", - "操作" + "操作", + "卷积和池化" ] ] ], - "level": "3", + "level": { + "min": 0.6649338942307692, + "max": 0.6649639423076923 + }, "related_data": {} } } @@ -60722,7 +71063,7 @@ { "初始化权重和偏置": { "data": { - "uuid": "python-6-194", + "uuid": "python-6-193", "seg": [ [ [ @@ -60734,7 +71075,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6649639423076923, + "max": 0.6649739583333333 + }, "related_data": {} } } @@ -60742,16 +71086,20 @@ { "正则化": { "data": { - "uuid": "python-6-195", + "uuid": "python-6-194", "seg": [ [ [ "正则", - "化" + "化", + "正则化" ] ] ], - "level": "3", + "level": { + "min": 0.6649739583333333, + "max": 0.6649839743589744 + }, "related_data": {} } } @@ -60759,7 +71107,7 @@ { "激活函数": { "data": { - "uuid": "python-6-196", + "uuid": "python-6-195", "seg": [ [ [ @@ -60768,14 +71116,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6649839743589744, + "max": 0.6649939903846154 + }, "related_data": {} } } } ], "data": { - "uuid": "python-5-1179", + "uuid": "python-5-1186", "seg": [ [ [ @@ -60784,11 +71135,14 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6649639423076923, + "max": 0.6649939903846154 + }, "related_data": { "qa": { "data_id": [ - "8_769783_830940" + "8_769783_830940@8" ] } } @@ -60801,7 +71155,7 @@ { "隐含层数量": { "data": { - "uuid": "python-6-197", + "uuid": "python-6-196", "seg": [ [ [ @@ -60811,7 +71165,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6649939903846154, + "max": 0.6649969951923077 + }, "related_data": {} } } @@ -60819,18 +71176,22 @@ { "每个隐含层的神经元个数": { "data": { - "uuid": "python-6-198", + "uuid": "python-6-197", "seg": [ [ [ "隐含", "层", "神经元", - "个数" + "个数", + "神经元个数" ] ] ], - "level": "3", + "level": { + "min": 0.6649969951923077, + "max": 0.665 + }, "related_data": {} } } @@ -60838,7 +71199,7 @@ { "批标准化": { "data": { - "uuid": "python-6-199", + "uuid": "python-6-198", "seg": [ [ [ @@ -60847,7 +71208,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.665, + "max": 0.6650030048076923 + }, "related_data": {} } } @@ -60855,7 +71219,7 @@ { "高级正则化及过拟合的避免": { "data": { - "uuid": "python-6-200", + "uuid": "python-6-199", "seg": [ [ [ @@ -60866,7 +71230,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6650030048076923, + "max": 0.6650060096153846 + }, "related_data": {} } } @@ -60874,7 +71241,7 @@ { "运用哪个优化器": { "data": { - "uuid": "python-6-201", + "uuid": "python-6-200", "seg": [ [ [ @@ -60883,15 +71250,18 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6650060096153846, + "max": 0.6650090144230769 + }, "related_data": { "qa": { "data_id": [ - "8_733761_756051", - "8_158580_23104", - "8_700898_590152", - "8_213903_157317", - "8_4646448_29330064" + "8_733761_756051@8", + "8_158580_23104@8", + "8_700898_590152@8", + "8_213903_157317@8", + "8_4646448_29330064@8" ] } } @@ -60901,7 +71271,7 @@ { "内存调优": { "data": { - "uuid": "python-6-202", + "uuid": "python-6-201", "seg": [ [ [ @@ -60910,7 +71280,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6650090144230769, + "max": 0.6650120192307692 + }, "related_data": {} } } @@ -60918,7 +71291,7 @@ { "层的位置调优": { "data": { - "uuid": "python-6-203", + "uuid": "python-6-202", "seg": [ [ [ @@ -60928,7 +71301,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6650120192307692, + "max": 0.6650150240384616 + }, "related_data": {} } } @@ -60936,7 +71312,7 @@ { "综合所有操作创建第二个CNN": { "data": { - "uuid": "python-6-204", + "uuid": "python-6-203", "seg": [ [ [ @@ -60947,7 +71323,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6650150240384616, + "max": 0.6650180288461538 + }, "related_data": {} } } @@ -60955,20 +71334,24 @@ { "数据集描述和预处理": { "data": { - "uuid": "python-6-205", + "uuid": "python-6-204", "seg": [ [ [ "数据", "集", - "描述" + "描述", + "数据集" ], [ "预处理" ] ] ], - "level": "3", + "level": { + "min": 0.6650180288461538, + "max": 0.6650210336538461 + }, "related_data": {} } } @@ -60976,7 +71359,7 @@ { "创建CNN模型": { "data": { - "uuid": "python-6-206", + "uuid": "python-6-205", "seg": [ [ [ @@ -60986,12 +71369,15 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6650210336538461, + "max": 0.6650240384615385 + }, "related_data": { "qa": { "data_id": [ - "8_7429341_53396131", - "8_7405217_53354621" + "8_7429341_53396131@8", + "8_7405217_53354621@8" ] } } @@ -61000,24 +71386,28 @@ } ], "data": { - "uuid": "python-5-1180", + "uuid": "python-5-1187", "seg": [ [ [ "模型", "性能", - "优化" + "优化", + "模型性能" ] ] ], - "level": "3", + "level": { + "min": 0.6649939903846154, + "max": 0.6650240384615385 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1331", + "uuid": "python-4-1344", "seg": [ [ [ @@ -61028,7 +71418,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6649038461538461, + "max": 0.6650240384615385 + }, "related_data": {} } } @@ -61039,7 +71432,7 @@ { "ImageNet介绍": { "data": { - "uuid": "python-5-1181", + "uuid": "python-5-1188", "seg": [ [ [ @@ -61048,7 +71441,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6650240384615385, + "max": 0.6650480769230769 + }, "related_data": {} } } @@ -61056,7 +71452,7 @@ { "AlexNet架构": { "data": { - "uuid": "python-5-1182", + "uuid": "python-5-1189", "seg": [ [ [ @@ -61065,7 +71461,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6650480769230769, + "max": 0.6650721153846154 + }, "related_data": {} } } @@ -61073,7 +71472,7 @@ { "VGGNet架构": { "data": { - "uuid": "python-5-1183", + "uuid": "python-5-1190", "seg": [ [ [ @@ -61082,7 +71481,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6650721153846154, + "max": 0.6650961538461538 + }, "related_data": {} } } @@ -61093,16 +71495,20 @@ { "架构洞察": { "data": { - "uuid": "python-6-207", + "uuid": "python-6-206", "seg": [ [ [ "架构", - "洞察" + "洞察", + "架构洞察" ] ] ], - "level": "3", + "level": { + "min": 0.6650961538461538, + "max": 0.665108173076923 + }, "related_data": {} } } @@ -61110,7 +71516,7 @@ { "inception模块": { "data": { - "uuid": "python-6-208", + "uuid": "python-6-207", "seg": [ [ [ @@ -61119,14 +71525,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.665108173076923, + "max": 0.6651201923076924 + }, "related_data": {} } } } ], "data": { - "uuid": "python-5-1184", + "uuid": "python-5-1191", "seg": [ [ [ @@ -61135,7 +71544,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6650961538461538, + "max": 0.6651201923076924 + }, "related_data": {} } } @@ -61143,7 +71555,7 @@ { "ResNet架构": { "data": { - "uuid": "python-5-1185", + "uuid": "python-5-1192", "seg": [ [ [ @@ -61152,25 +71564,32 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6651201923076924, + "max": 0.6651442307692308 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1332", + "uuid": "python-4-1345", "seg": [ [ [ "经典", "cnn", "模型", - "架构" + "架构", + "模型架构" ] ] ], - "level": "3", + "level": { + "min": 0.6650240384615385, + "max": 0.6651442307692308 + }, "related_data": {} } } @@ -61184,13 +71603,15 @@ { "目标数据集较小且与原始训练集相似": { "data": { - "uuid": "python-6-209", + "uuid": "python-6-208", "seg": [ [ [ "目标", "数据", - "集" + "集", + "目标数据", + "数据集" ], [ "原始", @@ -61199,7 +71620,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6651442307692308, + "max": 0.6651542467948718 + }, "related_data": {} } } @@ -61207,13 +71631,15 @@ { "目标数据集较小且与原始训练集不同": { "data": { - "uuid": "python-6-210", + "uuid": "python-6-209", "seg": [ [ [ "目标", "数据", - "集" + "集", + "目标数据", + "数据集" ], [ "原始", @@ -61222,7 +71648,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6651542467948718, + "max": 0.6651642628205128 + }, "related_data": {} } } @@ -61230,14 +71659,16 @@ { "目标数据集很大且与原始训练集相似": { "data": { - "uuid": "python-6-211", + "uuid": "python-6-210", "seg": [ [ [ "目标", "数据", "集", - "很大" + "很大", + "目标数据", + "数据集" ], [ "原始", @@ -61246,7 +71677,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6651642628205128, + "max": 0.6651742788461539 + }, "related_data": {} } } @@ -61254,14 +71688,16 @@ { "目标数据集很大且与原始训练集不同": { "data": { - "uuid": "python-6-212", + "uuid": "python-6-211", "seg": [ [ [ "目标", "数据", "集", - "很大" + "很大", + "目标数据", + "数据集" ], [ "原始", @@ -61270,23 +71706,30 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6651742788461539, + "max": 0.6651842948717949 + }, "related_data": {} } } } ], "data": { - "uuid": "python-5-1186", + "uuid": "python-5-1193", "seg": [ [ [ "特征提取", - "方法" + "方法", + "特征提取方法" ] ] ], - "level": "3", + "level": { + "min": 0.6651442307692308, + "max": 0.6651842948717949 + }, "related_data": {} } } @@ -61294,7 +71737,7 @@ { "转移学习示例": { "data": { - "uuid": "python-5-1187", + "uuid": "python-5-1194", "seg": [ [ [ @@ -61304,7 +71747,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6651842948717949, + "max": 0.665224358974359 + }, "related_data": {} } } @@ -61312,7 +71758,7 @@ { "多任务学习": { "data": { - "uuid": "python-5-1188", + "uuid": "python-5-1195", "seg": [ [ [ @@ -61321,14 +71767,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.665224358974359, + "max": 0.6652644230769231 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1333", + "uuid": "python-4-1346", "seg": [ [ [ @@ -61337,7 +71786,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6651442307692308, + "max": 0.6652644230769231 + }, "related_data": {} } } @@ -61348,7 +71800,7 @@ { "自编码器介绍": { "data": { - "uuid": "python-5-1189", + "uuid": "python-5-1196", "seg": [ [ [ @@ -61357,7 +71809,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6652644230769231, + "max": 0.6653044871794872 + }, "related_data": {} } } @@ -61365,7 +71820,7 @@ { "卷积自编码器": { "data": { - "uuid": "python-5-1190", + "uuid": "python-5-1197", "seg": [ [ [ @@ -61374,7 +71829,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6653044871794872, + "max": 0.6653445512820513 + }, "related_data": {} } } @@ -61382,20 +71840,23 @@ { "应用": { "data": { - "uuid": "python-5-1191", + "uuid": "python-5-1198", "seg": [ [ [] ] ], - "level": "3", + "level": { + "min": 0.6653445512820513, + "max": 0.6653846153846154 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1334", + "uuid": "python-4-1347", "seg": [ [ [ @@ -61404,7 +71865,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6652644230769231, + "max": 0.6653846153846154 + }, "related_data": {} } } @@ -61418,7 +71882,7 @@ { "CycleGAN": { "data": { - "uuid": "python-6-213", + "uuid": "python-6-212", "seg": [ [ [ @@ -61426,7 +71890,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6653846153846154, + "max": 0.6654046474358974 + }, "related_data": {} } } @@ -61434,7 +71901,7 @@ { "训练GAN模型": { "data": { - "uuid": "python-6-214", + "uuid": "python-6-213", "seg": [ [ [ @@ -61444,12 +71911,15 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6654046474358974, + "max": 0.6654246794871794 + }, "related_data": { "qa": { "data_id": [ - "8_3460891_23009154", - "8_753315_809246" + "8_3460891_23009154@8", + "8_753315_809246@8" ] } } @@ -61458,7 +71928,7 @@ } ], "data": { - "uuid": "python-5-1192", + "uuid": "python-5-1199", "seg": [ [ [ @@ -61473,7 +71943,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6653846153846154, + "max": 0.6654246794871794 + }, "related_data": {} } } @@ -61484,7 +71957,7 @@ { "计算损失": { "data": { - "uuid": "python-6-215", + "uuid": "python-6-214", "seg": [ [ [ @@ -61493,7 +71966,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6654246794871794, + "max": 0.6654447115384615 + }, "related_data": {} } } @@ -61501,7 +71977,7 @@ { "半监督学习和GAN": { "data": { - "uuid": "python-6-216", + "uuid": "python-6-215", "seg": [ [ [ @@ -61513,23 +71989,30 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6654447115384615, + "max": 0.6654647435897436 + }, "related_data": {} } } } ], "data": { - "uuid": "python-5-1193", + "uuid": "python-5-1200", "seg": [ [ [ "gan", - "示例" + "示例", + "代码示例" ] ] ], - "level": "3", + "level": { + "min": 0.6654246794871794, + "max": 0.6654647435897436 + }, "related_data": {} } } @@ -61540,7 +72023,7 @@ { "基于半监督分类的GAN示例": { "data": { - "uuid": "python-6-217", + "uuid": "python-6-216", "seg": [ [ [ @@ -61551,7 +72034,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6654647435897436, + "max": 0.6654847756410256 + }, "related_data": {} } } @@ -61559,24 +72045,28 @@ { "深度卷积GAN": { "data": { - "uuid": "python-6-218", + "uuid": "python-6-217", "seg": [ [ [ "深度", "卷积", - "gan" + "gan", + "深度卷积" ] ] ], - "level": "3", + "level": { + "min": 0.6654847756410256, + "max": 0.6655048076923077 + }, "related_data": {} } } } ], "data": { - "uuid": "python-5-1194", + "uuid": "python-5-1201", "seg": [ [ [ @@ -61585,14 +72075,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6654647435897436, + "max": 0.6655048076923077 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1335", + "uuid": "python-4-1348", "seg": [ [ [ @@ -61607,7 +72100,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6653846153846154, + "max": 0.6655048076923077 + }, "related_data": {} } } @@ -61618,18 +72114,22 @@ { "图像描述中的注意力机制": { "data": { - "uuid": "python-5-1195", + "uuid": "python-5-1202", "seg": [ [ [ "图像", "描述", "注意力", - "机制" + "机制", + "注意力机制" ] ] ], - "level": "3", + "level": { + "min": 0.6655048076923077, + "max": 0.6655348557692308 + }, "related_data": {} } } @@ -61640,7 +72140,7 @@ { "硬注意力": { "data": { - "uuid": "python-6-219", + "uuid": "python-6-218", "seg": [ [ [ @@ -61649,7 +72149,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6655348557692308, + "max": 0.6655498798076923 + }, "related_data": {} } } @@ -61657,7 +72160,7 @@ { "软注意力": { "data": { - "uuid": "python-6-220", + "uuid": "python-6-219", "seg": [ [ [ @@ -61666,23 +72169,30 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6655498798076923, + "max": 0.6655649038461539 + }, "related_data": {} } } } ], "data": { - "uuid": "python-5-1196", + "uuid": "python-5-1203", "seg": [ [ [ "注意力", - "类型" + "类型", + "注意力类型" ] ] ], - "level": "3", + "level": { + "min": 0.6655348557692308, + "max": 0.6655649038461539 + }, "related_data": {} } } @@ -61693,7 +72203,7 @@ { "视觉CNN模型次优性能的原因": { "data": { - "uuid": "python-6-221", + "uuid": "python-6-220", "seg": [ [ [ @@ -61706,7 +72216,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6655649038461539, + "max": 0.6655799278846154 + }, "related_data": {} } } @@ -61714,23 +72227,28 @@ { "循环视觉注意力模型": { "data": { - "uuid": "python-6-222", + "uuid": "python-6-221", "seg": [ [ [ "循环", "视觉", "注意力", - "模型" + "模型", + "视觉注意力", + "注意力模型" ] ] ], - "level": "3", + "level": { + "min": 0.6655799278846154, + "max": 0.6655949519230769 + }, "related_data": { "qa": { "data_id": [ - "8_7412643_53364841", - "8_7395881_53339130" + "8_7412643_53364841@8", + "8_7395881_53339130@8" ] } } @@ -61739,18 +72257,22 @@ } ], "data": { - "uuid": "python-5-1197", + "uuid": "python-5-1204", "seg": [ [ [ "注意力", "改善", "视觉", - "模型" + "模型", + "视觉模型" ] ] ], - "level": "3", + "level": { + "min": 0.6655649038461539, + "max": 0.6655949519230769 + }, "related_data": {} } } @@ -61758,7 +72280,7 @@ { "参考文献": { "data": { - "uuid": "python-5-1198", + "uuid": "python-5-1205", "seg": [ [ [ @@ -61766,14 +72288,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6655949519230769, + "max": 0.665625 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1336", + "uuid": "python-4-1349", "seg": [ [ [ @@ -61783,27 +72308,36 @@ "视觉", "模型", "注意力", - "机制" + "机制", + "视觉模型", + "注意力机制" ] ] ], - "level": "3", + "level": { + "min": 0.6655048076923077, + "max": 0.665625 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-246", + "uuid": "python-3-247", "seg": [ [ [ "计算机", - "视觉" + "视觉", + "计算机视觉" ] ] ], - "level": "3", + "level": { + "min": 0.6625, + "max": 0.665625 + }, "related_data": {} } } @@ -61817,7 +72351,7 @@ { "自然语言处理的基本概念": { "data": { - "uuid": "python-5-1199", + "uuid": "python-5-1206", "seg": [ [ [ @@ -61826,7 +72360,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.665625, + "max": 0.6656828703703704 + }, "related_data": {} } } @@ -61834,7 +72371,7 @@ { "自然语言处理的面临困难": { "data": { - "uuid": "python-5-1200", + "uuid": "python-5-1207", "seg": [ [ [ @@ -61844,7 +72381,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6656828703703704, + "max": 0.6657407407407407 + }, "related_data": {} } } @@ -61852,7 +72392,7 @@ { "自然语言处理的研究现状": { "data": { - "uuid": "python-5-1201", + "uuid": "python-5-1208", "seg": [ [ [ @@ -61862,11 +72402,14 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6657407407407407, + "max": 0.6657986111111112 + }, "related_data": { "qa": { "data_id": [ - "8_7456720_53440762" + "8_7456720_53440762@8" ] } } @@ -61875,7 +72418,7 @@ } ], "data": { - "uuid": "python-4-1337", + "uuid": "python-4-1350", "seg": [ [ [ @@ -61884,7 +72427,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.665625, + "max": 0.6657986111111112 + }, "related_data": {} } } @@ -61895,16 +72441,20 @@ { "概率论基础知识": { "data": { - "uuid": "python-5-1202", + "uuid": "python-5-1209", "seg": [ [ [ "概率论", - "基础知识" + "基础知识", + "概率论基础知识" ] ] ], - "level": "3", + "level": { + "min": 0.6657986111111112, + "max": 0.665811011904762 + }, "related_data": {} } } @@ -61912,16 +72462,20 @@ { "最大似然估计": { "data": { - "uuid": "python-5-1203", + "uuid": "python-5-1210", "seg": [ [ [ "似然", - "估计" + "估计", + "似然估计" ] ] ], - "level": "3", + "level": { + "min": 0.665811011904762, + "max": 0.6658234126984127 + }, "related_data": {} } } @@ -61929,17 +72483,22 @@ { "隐马尔可夫模型": { "data": { - "uuid": "python-5-1204", + "uuid": "python-5-1211", "seg": [ [ [ "隐", "马尔可夫", - "模型" + "模型", + "隐马尔可夫", + "马尔可夫模型" ] ] ], - "level": "3", + "level": { + "min": 0.6658234126984127, + "max": 0.6658358134920636 + }, "related_data": {} } } @@ -61947,16 +72506,20 @@ { "贝叶斯网络": { "data": { - "uuid": "python-5-1205", + "uuid": "python-5-1212", "seg": [ [ [ "贝叶斯", - "网络" + "网络", + "贝叶斯网络" ] ] ], - "level": "3", + "level": { + "min": 0.6658358134920636, + "max": 0.6658482142857143 + }, "related_data": {} } } @@ -61964,16 +72527,20 @@ { "条件概率分布": { "data": { - "uuid": "python-5-1206", + "uuid": "python-5-1213", "seg": [ [ [ "条件", - "概率分布" + "概率分布", + "条件概率分布" ] ] ], - "level": "3", + "level": { + "min": 0.6658482142857143, + "max": 0.6658606150793651 + }, "related_data": {} } } @@ -61981,16 +72548,20 @@ { "信息论基础知识": { "data": { - "uuid": "python-5-1207", + "uuid": "python-5-1214", "seg": [ [ [ "信息论", - "基础知识" + "基础知识", + "信息论基础知识" ] ] ], - "level": "3", + "level": { + "min": 0.6658606150793651, + "max": 0.6658730158730158 + }, "related_data": {} } } @@ -61998,7 +72569,7 @@ { "熵": { "data": { - "uuid": "python-5-1208", + "uuid": "python-5-1215", "seg": [ [ [ @@ -62006,7 +72577,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6658730158730158, + "max": 0.6658854166666667 + }, "related_data": {} } } @@ -62014,7 +72588,7 @@ { "困惑度": { "data": { - "uuid": "python-5-1209", + "uuid": "python-5-1216", "seg": [ [ [ @@ -62022,7 +72596,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6658854166666667, + "max": 0.6658978174603175 + }, "related_data": {} } } @@ -62030,7 +72607,7 @@ { "互信息": { "data": { - "uuid": "python-5-1210", + "uuid": "python-5-1217", "seg": [ [ [ @@ -62038,7 +72615,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6658978174603175, + "max": 0.6659102182539682 + }, "related_data": {} } } @@ -62046,16 +72626,20 @@ { "神经网络基础知识": { "data": { - "uuid": "python-5-1211", + "uuid": "python-5-1218", "seg": [ [ [ "神经网络", - "基础知识" + "基础知识", + "神经网络基础知识" ] ] ], - "level": "3", + "level": { + "min": 0.6659102182539682, + "max": 0.6659226190476191 + }, "related_data": {} } } @@ -62063,7 +72647,7 @@ { "CRF": { "data": { - "uuid": "python-5-1212", + "uuid": "python-5-1219", "seg": [ [ [ @@ -62071,7 +72655,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6659226190476191, + "max": 0.6659350198412698 + }, "related_data": {} } } @@ -62079,7 +72666,7 @@ { "BiLSTM+Attention": { "data": { - "uuid": "python-5-1213", + "uuid": "python-5-1220", "seg": [ [ [ @@ -62088,7 +72675,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6659350198412698, + "max": 0.6659474206349206 + }, "related_data": {} } } @@ -62096,7 +72686,7 @@ { "迁移学习": { "data": { - "uuid": "python-5-1214", + "uuid": "python-5-1221", "seg": [ [ [ @@ -62105,7 +72695,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6659474206349206, + "max": 0.6659598214285714 + }, "related_data": {} } } @@ -62113,7 +72706,7 @@ { "常用语料库和知识库": { "data": { - "uuid": "python-5-1215", + "uuid": "python-5-1222", "seg": [ [ [ @@ -62124,14 +72717,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6659598214285714, + "max": 0.6659722222222222 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1338", + "uuid": "python-4-1351", "seg": [ [ [ @@ -62140,7 +72736,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6657986111111112, + "max": 0.6659722222222222 + }, "related_data": {} } } @@ -62151,7 +72750,7 @@ { "jieba概述": { "data": { - "uuid": "python-5-1216", + "uuid": "python-5-1223", "seg": [ [ [ @@ -62160,7 +72759,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6659722222222222, + "max": 0.6660069444444444 + }, "related_data": {} } } @@ -62168,7 +72770,7 @@ { "jieba分词": { "data": { - "uuid": "python-5-1217", + "uuid": "python-5-1224", "seg": [ [ [ @@ -62177,12 +72779,15 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6660069444444444, + "max": 0.6660416666666666 + }, "related_data": { "qa": { "data_id": [ - "8_7430524_53397631", - "8_1092631_1300730" + "8_7430524_53397631@8", + "8_1092631_1300730@8" ] } } @@ -62192,7 +72797,7 @@ { "jieba添加自定义词典": { "data": { - "uuid": "python-5-1218", + "uuid": "python-5-1225", "seg": [ [ [ @@ -62203,7 +72808,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6660416666666666, + "max": 0.6660763888888889 + }, "related_data": {} } } @@ -62211,7 +72819,7 @@ { "jieba词性标注": { "data": { - "uuid": "python-5-1219", + "uuid": "python-5-1226", "seg": [ [ [ @@ -62221,7 +72829,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6660763888888889, + "max": 0.6661111111111111 + }, "related_data": {} } } @@ -62229,7 +72840,7 @@ { "jieba关键词抽取": { "data": { - "uuid": "python-5-1220", + "uuid": "python-5-1227", "seg": [ [ [ @@ -62239,14 +72850,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6661111111111111, + "max": 0.6661458333333333 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1339", + "uuid": "python-4-1352", "seg": [ [ [ @@ -62254,11 +72868,14 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6659722222222222, + "max": 0.6661458333333333 + }, "related_data": { "qa": { "data_id": [ - "8_7438759_53412146" + "8_7438759_53412146@8" ] } } @@ -62271,7 +72888,7 @@ { "nltk概述": { "data": { - "uuid": "python-5-1221", + "uuid": "python-5-1228", "seg": [ [ [ @@ -62280,7 +72897,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6661458333333333, + "max": 0.6661675347222222 + }, "related_data": {} } } @@ -62288,7 +72908,7 @@ { "nltk字符串处理": { "data": { - "uuid": "python-5-1222", + "uuid": "python-5-1229", "seg": [ [ [ @@ -62297,7 +72917,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6661675347222222, + "max": 0.6661892361111111 + }, "related_data": {} } } @@ -62305,7 +72928,7 @@ { "nltk词性标注": { "data": { - "uuid": "python-5-1223", + "uuid": "python-5-1230", "seg": [ [ [ @@ -62315,7 +72938,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6661892361111111, + "max": 0.6662109375 + }, "related_data": {} } } @@ -62323,7 +72949,7 @@ { "nltk词干提取": { "data": { - "uuid": "python-5-1224", + "uuid": "python-5-1231", "seg": [ [ [ @@ -62333,7 +72959,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6662109375, + "max": 0.6662326388888888 + }, "related_data": {} } } @@ -62341,18 +72970,22 @@ { "nltk命名实体识别": { "data": { - "uuid": "python-5-1225", + "uuid": "python-5-1232", "seg": [ [ [ "nltk", "命名", "实体", - "识别" + "识别", + "命名实体" ] ] ], - "level": "3", + "level": { + "min": 0.6662326388888888, + "max": 0.6662543402777777 + }, "related_data": {} } } @@ -62360,7 +72993,7 @@ { "nltk分块处理": { "data": { - "uuid": "python-5-1226", + "uuid": "python-5-1233", "seg": [ [ [ @@ -62369,7 +73002,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6662543402777777, + "max": 0.6662760416666667 + }, "related_data": {} } } @@ -62377,17 +73013,21 @@ { "nltk文本分类": { "data": { - "uuid": "python-5-1227", + "uuid": "python-5-1234", "seg": [ [ [ "nltk", "文本", - "分类" + "分类", + "文本分类" ] ] ], - "level": "3", + "level": { + "min": 0.6662760416666667, + "max": 0.6662977430555556 + }, "related_data": {} } } @@ -62395,7 +73035,7 @@ { "nltk情感分析": { "data": { - "uuid": "python-5-1228", + "uuid": "python-5-1235", "seg": [ [ [ @@ -62405,14 +73045,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6662977430555556, + "max": 0.6663194444444445 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1340", + "uuid": "python-4-1353", "seg": [ [ [ @@ -62420,7 +73063,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6661458333333333, + "max": 0.6663194444444445 + }, "related_data": {} } } @@ -62431,7 +73077,7 @@ { "TF-IDF": { "data": { - "uuid": "python-5-1229", + "uuid": "python-5-1236", "seg": [ [ [ @@ -62440,11 +73086,14 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6663194444444445, + "max": 0.6663541666666667 + }, "related_data": { "qa": { "data_id": [ - "8_1064889_1267447" + "8_1064889_1267447@8" ] } } @@ -62454,7 +73103,7 @@ { "similarities": { "data": { - "uuid": "python-5-1230", + "uuid": "python-5-1237", "seg": [ [ [ @@ -62462,7 +73111,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6663541666666667, + "max": 0.6663888888888889 + }, "related_data": {} } } @@ -62470,7 +73122,7 @@ { "LSA": { "data": { - "uuid": "python-5-1231", + "uuid": "python-5-1238", "seg": [ [ [ @@ -62478,7 +73130,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6663888888888889, + "max": 0.6664236111111111 + }, "related_data": {} } } @@ -62486,7 +73141,7 @@ { "LDA": { "data": { - "uuid": "python-5-1232", + "uuid": "python-5-1239", "seg": [ [ [ @@ -62494,7 +73149,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6664236111111111, + "max": 0.6664583333333334 + }, "related_data": {} } } @@ -62502,7 +73160,7 @@ { "Word2vec": { "data": { - "uuid": "python-5-1233", + "uuid": "python-5-1240", "seg": [ [ [ @@ -62510,14 +73168,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6664583333333334, + "max": 0.6664930555555556 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1341", + "uuid": "python-4-1354", "seg": [ [ [ @@ -62525,7 +73186,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6663194444444445, + "max": 0.6664930555555556 + }, "related_data": {} } } @@ -62536,25 +73200,36 @@ { "分词(英文分词/中文分词)": { "data": { - "uuid": "python-5-1234", + "uuid": "python-5-1241", "seg": [ [ [ "分词", "英文", - "中文" + "中文", + "英文分词", + "中文分词" ] ] ], - "level": "3", - "related_data": {} + "level": { + "min": 0.6664930555555556, + "max": 0.6665277777777778 + }, + "related_data": { + "qa": { + "data_id": [ + "8_684854_543508@8" + ] + } + } } } }, { "词干提取": { "data": { - "uuid": "python-5-1235", + "uuid": "python-5-1242", "seg": [ [ [ @@ -62563,7 +73238,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6665277777777778, + "max": 0.6665625000000001 + }, "related_data": {} } } @@ -62571,7 +73249,7 @@ { "词形还原": { "data": { - "uuid": "python-5-1236", + "uuid": "python-5-1243", "seg": [ [ [ @@ -62580,7 +73258,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6665625000000001, + "max": 0.6665972222222222 + }, "related_data": {} } } @@ -62588,7 +73269,7 @@ { "词性标注": { "data": { - "uuid": "python-5-1237", + "uuid": "python-5-1244", "seg": [ [ [ @@ -62597,7 +73278,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6665972222222222, + "max": 0.6666319444444444 + }, "related_data": {} } } @@ -62605,21 +73289,25 @@ { "命名实体识别": { "data": { - "uuid": "python-5-1238", + "uuid": "python-5-1245", "seg": [ [ [ "命名", "实体", - "识别" + "识别", + "命名实体" ] ] ], - "level": "3", + "level": { + "min": 0.6666319444444444, + "max": 0.6666666666666666 + }, "related_data": { "qa": { "data_id": [ - "8_7416936_53371682" + "8_7416936_53371682@8" ] } } @@ -62628,7 +73316,7 @@ } ], "data": { - "uuid": "python-4-1342", + "uuid": "python-4-1355", "seg": [ [ [ @@ -62637,7 +73325,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6664930555555556, + "max": 0.6666666666666666 + }, "related_data": {} } } @@ -62648,17 +73339,21 @@ { "短语结构分析": { "data": { - "uuid": "python-5-1239", + "uuid": "python-5-1246", "seg": [ [ [ "短语", "结构", - "分析" + "分析", + "短语结构" ] ] ], - "level": "3", + "level": { + "min": 0.6666666666666666, + "max": 0.6667534722222221 + }, "related_data": {} } } @@ -62666,7 +73361,7 @@ { "依存句法分析": { "data": { - "uuid": "python-5-1240", + "uuid": "python-5-1247", "seg": [ [ [ @@ -62675,14 +73370,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6667534722222221, + "max": 0.6668402777777778 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1343", + "uuid": "python-4-1356", "seg": [ [ [ @@ -62690,7 +73388,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6666666666666666, + "max": 0.6668402777777778 + }, "related_data": {} } } @@ -62701,17 +73402,22 @@ { "命名实体消歧": { "data": { - "uuid": "python-5-1241", + "uuid": "python-5-1248", "seg": [ [ [ "命名", "实体", - "消歧" + "消歧", + "命名实体", + "实体消歧" ] ] ], - "level": "3", + "level": { + "min": 0.6668402777777778, + "max": 0.666869212962963 + }, "related_data": {} } } @@ -62719,7 +73425,7 @@ { "指代消解": { "data": { - "uuid": "python-5-1242", + "uuid": "python-5-1249", "seg": [ [ [ @@ -62728,7 +73434,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.666869212962963, + "max": 0.6668981481481482 + }, "related_data": {} } } @@ -62736,17 +73445,21 @@ { "语义角色标注": { "data": { - "uuid": "python-5-1243", + "uuid": "python-5-1250", "seg": [ [ [ "语义", "角色", - "标注" + "标注", + "语义角色" ] ] ], - "level": "3", + "level": { + "min": 0.6668981481481482, + "max": 0.6669270833333334 + }, "related_data": {} } } @@ -62754,17 +73467,21 @@ { "语义关系抽取": { "data": { - "uuid": "python-5-1244", + "uuid": "python-5-1251", "seg": [ [ [ "语义", "关系", - "抽取" + "抽取", + "语义关系" ] ] ], - "level": "3", + "level": { + "min": 0.6669270833333334, + "max": 0.6669560185185185 + }, "related_data": {} } } @@ -62772,7 +73489,7 @@ { "语义依存分析": { "data": { - "uuid": "python-5-1245", + "uuid": "python-5-1252", "seg": [ [ [ @@ -62782,14 +73499,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6669560185185185, + "max": 0.6669849537037037 + }, "related_data": { "qa": { "data_id": [ - "8_751136_804606", - "8_237019_216584", - "8_7426926_53390903", - "8_710232_668200" + "8_751136_804606@8", + "8_237019_216584@8", + "8_7426926_53390903@8", + "8_710232_668200@8" ] } } @@ -62799,7 +73519,7 @@ { "抽象语义表示": { "data": { - "uuid": "python-5-1246", + "uuid": "python-5-1253", "seg": [ [ [ @@ -62808,14 +73528,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6669849537037037, + "max": 0.6670138888888889 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1344", + "uuid": "python-4-1357", "seg": [ [ [ @@ -62824,7 +73547,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6668402777777778, + "max": 0.6670138888888889 + }, "related_data": {} } } @@ -62835,7 +73561,7 @@ { "Word2Vec": { "data": { - "uuid": "python-5-1247", + "uuid": "python-5-1254", "seg": [ [ [ @@ -62843,7 +73569,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6670138888888889, + "max": 0.6670428240740741 + }, "related_data": {} } } @@ -62851,7 +73580,7 @@ { "GloVe": { "data": { - "uuid": "python-5-1248", + "uuid": "python-5-1255", "seg": [ [ [ @@ -62859,11 +73588,14 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6670428240740741, + "max": 0.6670717592592593 + }, "related_data": { "qa": { "data_id": [ - "8_7425497_53387049" + "8_7425497_53387049@8" ] } } @@ -62873,7 +73605,7 @@ { "fastText": { "data": { - "uuid": "python-5-1249", + "uuid": "python-5-1256", "seg": [ [ [ @@ -62881,7 +73613,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6670717592592593, + "max": 0.6671006944444444 + }, "related_data": {} } } @@ -62889,7 +73624,7 @@ { "ELMo": { "data": { - "uuid": "python-5-1250", + "uuid": "python-5-1257", "seg": [ [ [ @@ -62897,7 +73632,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6671006944444444, + "max": 0.6671296296296296 + }, "related_data": {} } } @@ -62905,7 +73643,7 @@ { "BERT": { "data": { - "uuid": "python-5-1251", + "uuid": "python-5-1258", "seg": [ [ [ @@ -62913,7 +73651,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6671296296296296, + "max": 0.6671585648148148 + }, "related_data": {} } } @@ -62921,7 +73662,7 @@ { "XLNet": { "data": { - "uuid": "python-5-1252", + "uuid": "python-5-1259", "seg": [ [ [ @@ -62929,14 +73670,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6671585648148148, + "max": 0.6671875 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1345", + "uuid": "python-4-1358", "seg": [ [ [ @@ -62945,12 +73689,15 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6670138888888889, + "max": 0.6671875 + }, "related_data": { "qa": { "data_id": [ - "8_7431208_53399226", - "8_7442353_53419216" + "8_7431208_53399226@8", + "8_7442353_53419216@8" ] } } @@ -62963,7 +73710,7 @@ { "文本相似度计算": { "data": { - "uuid": "python-5-1253", + "uuid": "python-5-1260", "seg": [ [ [ @@ -62972,7 +73719,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6671875, + "max": 0.6672309027777779 + }, "related_data": {} } } @@ -62980,16 +73730,20 @@ { "文本聚类": { "data": { - "uuid": "python-5-1254", + "uuid": "python-5-1261", "seg": [ [ [ "文本", - "聚类" + "聚类", + "文本聚类" ] ] ], - "level": "3", + "level": { + "min": 0.6672309027777779, + "max": 0.6672743055555556 + }, "related_data": {} } } @@ -62997,16 +73751,20 @@ { "文本分类": { "data": { - "uuid": "python-5-1255", + "uuid": "python-5-1262", "seg": [ [ [ "文本", - "分类" + "分类", + "文本分类" ] ] ], - "level": "3", + "level": { + "min": 0.6672743055555556, + "max": 0.6673177083333333 + }, "related_data": {} } } @@ -63014,7 +73772,7 @@ { "文本摘要": { "data": { - "uuid": "python-5-1256", + "uuid": "python-5-1263", "seg": [ [ [ @@ -63023,18 +73781,23 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6673177083333333, + "max": 0.6673611111111111 + }, "related_data": { "qa": { "data_id": [ - "8_175569_56460", - "8_773453_837133", - "8_7435587_53407310", - "8_7425164_53386391", - "8_7416671_53371042", - "8_7459336_53444307", - "8_7428287_53393915", - "8_769177_829885" + "8_175569_56460@8", + "8_773453_837133@8", + "8_7435587_53407310@8", + "8_7425164_53386391@8", + "8_7416671_53371042@8", + "8_7459336_53444307@8", + "8_7428287_53393915@8", + "8_769177_829885@8", + "8_7408664_53358837@8", + "8_7411278_53362127@8" ] } } @@ -63043,7 +73806,7 @@ } ], "data": { - "uuid": "python-4-1346", + "uuid": "python-4-1359", "seg": [ [ [ @@ -63052,7 +73815,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6671875, + "max": 0.6673611111111111 + }, "related_data": {} } } @@ -63063,17 +73829,21 @@ { "基于情感词典的情感分析": { "data": { - "uuid": "python-5-1257", + "uuid": "python-5-1264", "seg": [ [ [ "情感", "词典", - "分析" + "分析", + "情感词典" ] ] ], - "level": "3", + "level": { + "min": 0.6673611111111111, + "max": 0.6674479166666667 + }, "related_data": {} } } @@ -63081,7 +73851,7 @@ { "基于深度学习的情感分析": { "data": { - "uuid": "python-5-1258", + "uuid": "python-5-1265", "seg": [ [ [ @@ -63092,14 +73862,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6674479166666667, + "max": 0.6675347222222222 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1347", + "uuid": "python-4-1360", "seg": [ [ [ @@ -63108,7 +73881,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6673611111111111, + "max": 0.6675347222222222 + }, "related_data": {} } } @@ -63119,7 +73895,7 @@ { "LSA": { "data": { - "uuid": "python-5-1259", + "uuid": "python-5-1266", "seg": [ [ [ @@ -63127,7 +73903,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6675347222222222, + "max": 0.6676215277777777 + }, "related_data": {} } } @@ -63135,7 +73914,7 @@ { "LDA": { "data": { - "uuid": "python-5-1260", + "uuid": "python-5-1267", "seg": [ [ [ @@ -63143,12 +73922,15 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6676215277777777, + "max": 0.6677083333333333 + }, "related_data": { "qa": { "data_id": [ - "8_7427617_53392754", - "8_7445702_53424402" + "8_7427617_53392754@8", + "8_7445702_53424402@8" ] } } @@ -63157,16 +73939,20 @@ } ], "data": { - "uuid": "python-4-1348", + "uuid": "python-4-1361", "seg": [ [ [ "主题", - "模型" + "模型", + "主题模型" ] ] ], - "level": "3", + "level": { + "min": 0.6675347222222222, + "max": 0.6677083333333333 + }, "related_data": {} } } @@ -63177,7 +73963,7 @@ { "IBM统计翻译模型": { "data": { - "uuid": "python-5-1261", + "uuid": "python-5-1268", "seg": [ [ [ @@ -63188,7 +73974,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6677083333333333, + "max": 0.6677372685185186 + }, "related_data": {} } } @@ -63196,7 +73985,7 @@ { "短语抽取": { "data": { - "uuid": "python-5-1262", + "uuid": "python-5-1269", "seg": [ [ [ @@ -63205,38 +73994,54 @@ ] ] ], - "level": "3", - "related_data": { - "qa": { - "data_id": [ - "8_7465264_53452040" - ] - } - } + "level": { + "min": 0.6677372685185186, + "max": 0.6677662037037037 + }, + "related_data": {} } } }, { "语言模型": { "data": { - "uuid": "python-5-1263", + "uuid": "python-5-1270", "seg": [ [ [ "语言", - "模型" + "模型", + "语言模型" ] ] ], - "level": "3", - "related_data": {} + "level": { + "min": 0.6677662037037037, + "max": 0.6677951388888889 + }, + "related_data": { + "qa": { + "data_id": [ + "8_938000_1074700@8", + "8_913959_1049059@8", + "8_968532_1122119@8", + "8_938002_1074698@8", + "8_1005355_1186937@8", + "8_938001_1074699@8", + "8_913956_1049167@8", + "8_986176_1149650@8", + "8_968419_1122345@8", + "8_1005354_1186938@8" + ] + } + } } } }, { "GNMT": { "data": { - "uuid": "python-5-1264", + "uuid": "python-5-1271", "seg": [ [ [ @@ -63244,7 +74049,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6677951388888889, + "max": 0.6678240740740741 + }, "related_data": {} } } @@ -63252,7 +74060,7 @@ { "Seq2Seq": { "data": { - "uuid": "python-5-1265", + "uuid": "python-5-1272", "seg": [ [ [ @@ -63260,7 +74068,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6678240740740741, + "max": 0.6678530092592592 + }, "related_data": {} } } @@ -63268,7 +74079,7 @@ { "Transformer": { "data": { - "uuid": "python-5-1266", + "uuid": "python-5-1273", "seg": [ [ [ @@ -63278,14 +74089,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6678530092592592, + "max": 0.6678819444444444 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1349", + "uuid": "python-4-1362", "seg": [ [ [ @@ -63293,7 +74107,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6677083333333333, + "max": 0.6678819444444444 + }, "related_data": {} } } @@ -63304,7 +74121,7 @@ { "n-gram": { "data": { - "uuid": "python-5-1267", + "uuid": "python-5-1274", "seg": [ [ [ @@ -63313,17 +74130,20 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6678819444444444, + "max": 0.6679166666666666 + }, "related_data": { "qa": { "data_id": [ - "8_7436006_53407220", - "8_7435995_53407043", - "8_7432940_53402649", - "8_4646141_29329597", - "8_7451396_53432625", - "8_7459033_53444899", - "8_7447619_53427557" + "8_7436006_53407220@8", + "8_7435995_53407043@8", + "8_7432940_53402649@8", + "8_4646141_29329597@8", + "8_7451396_53432625@8", + "8_7459033_53444899@8", + "8_7447619_53427557@8" ] } } @@ -63333,18 +74153,22 @@ { "Pitman-Yor过程模型": { "data": { - "uuid": "python-5-1268", + "uuid": "python-5-1275", "seg": [ [ [ "pitman", "yor", "过程", - "模型" + "模型", + "过程模型" ] ] ], - "level": "3", + "level": { + "min": 0.6679166666666666, + "max": 0.6679513888888888 + }, "related_data": {} } } @@ -63352,7 +74176,7 @@ { "AWD-LSTM": { "data": { - "uuid": "python-5-1269", + "uuid": "python-5-1276", "seg": [ [ [ @@ -63361,7 +74185,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6679513888888888, + "max": 0.6679861111111111 + }, "related_data": {} } } @@ -63369,7 +74196,7 @@ { "Transformer-XL": { "data": { - "uuid": "python-5-1270", + "uuid": "python-5-1277", "seg": [ [ [ @@ -63380,7 +74207,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6679861111111111, + "max": 0.6680208333333333 + }, "related_data": {} } } @@ -63388,7 +74218,7 @@ { "Gated CNN": { "data": { - "uuid": "python-5-1271", + "uuid": "python-5-1278", "seg": [ [ [ @@ -63397,23 +74227,30 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6680208333333333, + "max": 0.6680555555555555 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1350", + "uuid": "python-4-1363", "seg": [ [ [ "语言", - "模型" + "模型", + "语言模型" ] ] ], - "level": "3", + "level": { + "min": 0.6678819444444444, + "max": 0.6680555555555555 + }, "related_data": {} } } @@ -63424,7 +74261,7 @@ { "基于知识的问答": { "data": { - "uuid": "python-5-1272", + "uuid": "python-5-1279", "seg": [ [ [ @@ -63433,7 +74270,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6680555555555555, + "max": 0.6680989583333333 + }, "related_data": {} } } @@ -63441,7 +74281,7 @@ { "基于检索的问答": { "data": { - "uuid": "python-5-1273", + "uuid": "python-5-1280", "seg": [ [ [ @@ -63450,7 +74290,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6680989583333333, + "max": 0.668142361111111 + }, "related_data": {} } } @@ -63458,7 +74301,7 @@ { "阅读理解": { "data": { - "uuid": "python-5-1274", + "uuid": "python-5-1281", "seg": [ [ [ @@ -63467,14 +74310,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.668142361111111, + "max": 0.6681857638888888 + }, "related_data": { "qa": { "data_id": [ - "8_742041_783281", - "8_7465161_53451896", - "8_7453990_53436658", - "8_7412159_53363342" + "8_742041_783281@8", + "8_7465161_53451896@8", + "8_7453990_53436658@8", + "8_7412159_53363342@8" ] } } @@ -63484,7 +74330,7 @@ { "完形填空": { "data": { - "uuid": "python-5-1275", + "uuid": "python-5-1282", "seg": [ [ [ @@ -63492,14 +74338,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6681857638888888, + "max": 0.6682291666666667 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1351", + "uuid": "python-4-1364", "seg": [ [ [ @@ -63508,7 +74357,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6680555555555555, + "max": 0.6682291666666667 + }, "related_data": {} } } @@ -63519,7 +74371,7 @@ { "对话行为分类": { "data": { - "uuid": "python-5-1276", + "uuid": "python-5-1283", "seg": [ [ [ @@ -63528,7 +74380,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6682291666666667, + "max": 0.6682581018518519 + }, "related_data": {} } } @@ -63536,17 +74391,21 @@ { "对话状态跟踪": { "data": { - "uuid": "python-5-1277", + "uuid": "python-5-1284", "seg": [ [ [ "对话", "状态", - "跟踪" + "跟踪", + "对话状态" ] ] ], - "level": "3", + "level": { + "min": 0.6682581018518519, + "max": 0.6682870370370371 + }, "related_data": {} } } @@ -63554,17 +74413,21 @@ { "检索式聊天机器人": { "data": { - "uuid": "python-5-1278", + "uuid": "python-5-1285", "seg": [ [ [ "检索", "聊天", - "机器人" + "机器人", + "聊天机器人" ] ] ], - "level": "3", + "level": { + "min": 0.6682870370370371, + "max": 0.6683159722222223 + }, "related_data": {} } } @@ -63572,17 +74435,21 @@ { "生成式聊天机器人": { "data": { - "uuid": "python-5-1279", + "uuid": "python-5-1286", "seg": [ [ [ "生成式", "聊天", - "机器人" + "机器人", + "聊天机器人" ] ] ], - "level": "3", + "level": { + "min": 0.6683159722222223, + "max": 0.6683449074074074 + }, "related_data": {} } } @@ -63590,7 +74457,7 @@ { "意图识别": { "data": { - "uuid": "python-5-1280", + "uuid": "python-5-1287", "seg": [ [ [ @@ -63599,7 +74466,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6683449074074074, + "max": 0.6683738425925926 + }, "related_data": {} } } @@ -63607,7 +74477,7 @@ { "槽填充(Slot Filling)": { "data": { - "uuid": "python-5-1281", + "uuid": "python-5-1288", "seg": [ [ [ @@ -63618,23 +74488,30 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6683738425925926, + "max": 0.6684027777777778 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1352", + "uuid": "python-4-1365", "seg": [ [ [ "智能", - "对话" + "对话", + "智能对话" ] ] ], - "level": "3", + "level": { + "min": 0.6682291666666667, + "max": 0.6684027777777778 + }, "related_data": {} } } @@ -63645,7 +74522,7 @@ { "傅里叶变换": { "data": { - "uuid": "python-5-1282", + "uuid": "python-5-1289", "seg": [ [ [ @@ -63654,7 +74531,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6684027777777778, + "max": 0.6684275793650793 + }, "related_data": {} } } @@ -63662,16 +74542,20 @@ { "声学模型": { "data": { - "uuid": "python-5-1283", + "uuid": "python-5-1290", "seg": [ [ [ "声学", - "模型" + "模型", + "声学模型" ] ] ], - "level": "3", + "level": { + "min": 0.6684275793650793, + "max": 0.6684523809523809 + }, "related_data": {} } } @@ -63679,17 +74563,22 @@ { "隐马尔可夫模型": { "data": { - "uuid": "python-5-1284", + "uuid": "python-5-1291", "seg": [ [ [ "隐", "马尔可夫", - "模型" + "模型", + "隐马尔可夫", + "马尔可夫模型" ] ] ], - "level": "3", + "level": { + "min": 0.6684523809523809, + "max": 0.6684771825396825 + }, "related_data": {} } } @@ -63697,7 +74586,7 @@ { "CNN": { "data": { - "uuid": "python-5-1285", + "uuid": "python-5-1292", "seg": [ [ [ @@ -63705,7 +74594,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6684771825396825, + "max": 0.6685019841269841 + }, "related_data": {} } } @@ -63713,7 +74605,7 @@ { "LSTM-HMM": { "data": { - "uuid": "python-5-1286", + "uuid": "python-5-1293", "seg": [ [ [ @@ -63722,7 +74614,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6685019841269841, + "max": 0.6685267857142857 + }, "related_data": {} } } @@ -63730,17 +74625,22 @@ { "神经网络语言模型": { "data": { - "uuid": "python-5-1287", + "uuid": "python-5-1294", "seg": [ [ [ "神经网络", "语言", - "模型" + "模型", + "神经网络语言", + "语言模型" ] ] ], - "level": "3", + "level": { + "min": 0.6685267857142857, + "max": 0.6685515873015873 + }, "related_data": {} } } @@ -63748,7 +74648,7 @@ { "MFCC": { "data": { - "uuid": "python-5-1288", + "uuid": "python-5-1295", "seg": [ [ [ @@ -63756,14 +74656,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6685515873015873, + "max": 0.6685763888888888 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1353", + "uuid": "python-4-1366", "seg": [ [ [ @@ -63772,11 +74675,14 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6684027777777778, + "max": 0.6685763888888888 + }, "related_data": { "qa": { "data_id": [ - "8_7417263_53372082" + "8_7417263_53372082@8" ] } } @@ -63789,7 +74695,7 @@ { "知识图谱构建": { "data": { - "uuid": "python-5-1289", + "uuid": "python-5-1296", "seg": [ [ [ @@ -63799,7 +74705,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6685763888888888, + "max": 0.6686197916666666 + }, "related_data": {} } } @@ -63807,7 +74716,7 @@ { "知识计算": { "data": { - "uuid": "python-5-1290", + "uuid": "python-5-1297", "seg": [ [ [ @@ -63816,7 +74725,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6686197916666666, + "max": 0.6686631944444443 + }, "related_data": {} } } @@ -63824,7 +74736,7 @@ { "知识存储": { "data": { - "uuid": "python-5-1291", + "uuid": "python-5-1298", "seg": [ [ [ @@ -63833,12 +74745,15 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6686631944444443, + "max": 0.6687065972222221 + }, "related_data": { "qa": { "data_id": [ - "8_695112_576951", - "8_7443668_53423812" + "8_695112_576951@8", + "8_7443668_53423812@8" ] } } @@ -63848,7 +74763,7 @@ { "知识服务与应用": { "data": { - "uuid": "python-5-1292", + "uuid": "python-5-1299", "seg": [ [ [ @@ -63858,14 +74773,17 @@ [] ] ], - "level": "3", + "level": { + "min": 0.6687065972222221, + "max": 0.66875 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1354", + "uuid": "python-4-1367", "seg": [ [ [ @@ -63874,14 +74792,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6685763888888888, + "max": 0.66875 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-247", + "uuid": "python-3-248", "seg": [ [ [ @@ -63889,7 +74810,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.665625, + "max": 0.66875 + }, "related_data": {} } } @@ -63900,7 +74824,7 @@ { "为何选择Python": { "data": { - "uuid": "python-4-1355", + "uuid": "python-4-1368", "seg": [ [ [ @@ -63909,7 +74833,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.66875, + "max": 0.6692708333333333 + }, "related_data": {} } } @@ -63917,7 +74844,7 @@ { "何时避免使用Python": { "data": { - "uuid": "python-4-1356", + "uuid": "python-4-1369", "seg": [ [ [ @@ -63925,7 +74852,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6692708333333333, + "max": 0.6697916666666667 + }, "related_data": {} } } @@ -63933,7 +74863,7 @@ { "Python中的面向对象编程": { "data": { - "uuid": "python-4-1357", + "uuid": "python-4-1370", "seg": [ [ [ @@ -63942,7 +74872,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6697916666666667, + "max": 0.6703125 + }, "related_data": {} } } @@ -63950,7 +74883,7 @@ { "在Python中调用其他语言": { "data": { - "uuid": "python-4-1358", + "uuid": "python-4-1371", "seg": [ [ [ @@ -63960,7 +74893,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6703125, + "max": 0.6708333333333333 + }, "related_data": {} } } @@ -63968,7 +74904,7 @@ { "将Python模型作为微服务": { "data": { - "uuid": "python-4-1359", + "uuid": "python-4-1372", "seg": [ [ [ @@ -63979,7 +74915,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6708333333333333, + "max": 0.6713541666666667 + }, "related_data": {} } } @@ -63987,7 +74926,7 @@ { "高性能API和并发编程": { "data": { - "uuid": "python-4-1360", + "uuid": "python-4-1373", "seg": [ [ [ @@ -64000,14 +74939,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.6713541666666667, + "max": 0.671875 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-248", + "uuid": "python-3-249", "seg": [ [ [ @@ -64015,7 +74957,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.66875, + "max": 0.671875 + }, "related_data": {} } } @@ -64029,7 +74974,7 @@ { "如何安装MySQLdb": { "data": { - "uuid": "python-5-1293", + "uuid": "python-5-1300", "seg": [ [ [ @@ -64038,11 +74983,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.671875, + "max": 0.6719105113636363 + }, "related_data": { "qa": { "data_id": [ - "8_689415_557421" + "8_689415_557421@8" ] } } @@ -64052,7 +75000,7 @@ { "数据库连接": { "data": { - "uuid": "python-5-1294", + "uuid": "python-5-1301", "seg": [ [ [ @@ -64061,7 +75009,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6719105113636363, + "max": 0.6719460227272727 + }, "related_data": {} } } @@ -64069,7 +75020,7 @@ { "INSERT操作": { "data": { - "uuid": "python-5-1295", + "uuid": "python-5-1302", "seg": [ [ [ @@ -64078,11 +75029,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6719460227272727, + "max": 0.6719815340909091 + }, "related_data": { "qa": { "data_id": [ - "8_751092_804525" + "8_751092_804525@8" ] } } @@ -64092,7 +75046,7 @@ { "READ操作": { "data": { - "uuid": "python-5-1296", + "uuid": "python-5-1303", "seg": [ [ [ @@ -64101,12 +75055,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6719815340909091, + "max": 0.6720170454545454 + }, "related_data": { "qa": { "data_id": [ - "8_7441024_53416772", - "8_782841_853939" + "8_782841_853939@8" ] } } @@ -64116,7 +75072,7 @@ { "DELETE操作": { "data": { - "uuid": "python-5-1297", + "uuid": "python-5-1304", "seg": [ [ [ @@ -64125,7 +75081,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6720170454545454, + "max": 0.6720525568181818 + }, "related_data": {} } } @@ -64133,7 +75092,7 @@ { "UPDATE操作": { "data": { - "uuid": "python-5-1298", + "uuid": "python-5-1305", "seg": [ [ [ @@ -64142,12 +75101,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6720525568181818, + "max": 0.6720880681818182 + }, "related_data": { "qa": { "data_id": [ - "8_7429356_53396206", - "8_7429057_53395503" + "8_7429356_53396206@8", + "8_7429057_53395503@8" ] } } @@ -64157,7 +75119,7 @@ { "COMMIT操作": { "data": { - "uuid": "python-5-1299", + "uuid": "python-5-1306", "seg": [ [ [ @@ -64166,7 +75128,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6720880681818182, + "max": 0.6721235795454545 + }, "related_data": {} } } @@ -64174,7 +75139,7 @@ { "ROLL-BACK操作": { "data": { - "uuid": "python-5-1300", + "uuid": "python-5-1307", "seg": [ [ [ @@ -64184,14 +75149,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6721235795454545, + "max": 0.6721590909090909 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1361", + "uuid": "python-4-1374", "seg": [ [ [ @@ -64199,7 +75167,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.671875, + "max": 0.6721590909090909 + }, "related_data": {} } } @@ -64207,7 +75178,7 @@ { "Elasticsearch": { "data": { - "uuid": "python-4-1362", + "uuid": "python-4-1375", "seg": [ [ [ @@ -64215,7 +75186,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6721590909090909, + "max": 0.6724431818181819 + }, "related_data": {} } } @@ -64223,7 +75197,7 @@ { "Neo4j Python驱动": { "data": { - "uuid": "python-4-1363", + "uuid": "python-4-1376", "seg": [ [ [ @@ -64233,7 +75207,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6724431818181819, + "max": 0.6727272727272727 + }, "related_data": {} } } @@ -64241,7 +75218,7 @@ { "neo4j-rest-client": { "data": { - "uuid": "python-4-1364", + "uuid": "python-4-1377", "seg": [ [ [ @@ -64251,7 +75228,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6727272727272727, + "max": 0.6730113636363636 + }, "related_data": {} } } @@ -64259,16 +75239,20 @@ { "内存数据库": { "data": { - "uuid": "python-4-1365", + "uuid": "python-4-1378", "seg": [ [ [ "内存", - "数据库" + "数据库", + "内存数据库" ] ] ], - "level": "1", + "level": { + "min": 0.6730113636363636, + "max": 0.6732954545454546 + }, "related_data": {} } } @@ -64279,17 +75263,21 @@ { "将数据导入集合": { "data": { - "uuid": "python-5-1301", + "uuid": "python-5-1308", "seg": [ [ [ "数据", "导入", - "集合" + "集合", + "将数据" ] ] ], - "level": "1", + "level": { + "min": 0.6732954545454546, + "max": 0.673342803030303 + }, "related_data": {} } } @@ -64297,7 +75285,7 @@ { "使用pymongo创建连接": { "data": { - "uuid": "python-5-1302", + "uuid": "python-5-1309", "seg": [ [ [ @@ -64307,7 +75295,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.673342803030303, + "max": 0.6733901515151516 + }, "related_data": {} } } @@ -64315,21 +75306,25 @@ { "访问数据库对象": { "data": { - "uuid": "python-5-1303", + "uuid": "python-5-1310", "seg": [ [ [ "访问", "数据库", - "对象" + "对象", + "数据库对象" ] ] ], - "level": "1", + "level": { + "min": 0.6733901515151516, + "max": 0.6734375 + }, "related_data": { "qa": { "data_id": [ - "8_753300_807726" + "8_753300_807726@8" ] } } @@ -64339,7 +75334,7 @@ { "插入数据": { "data": { - "uuid": "python-5-1304", + "uuid": "python-5-1311", "seg": [ [ [ @@ -64348,11 +75343,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6734375, + "max": 0.6734848484848485 + }, "related_data": { "qa": { "data_id": [ - "8_6716309_47578445" + "8_6716309_47578445@8" ] } } @@ -64362,16 +75360,20 @@ { "更新数据": { "data": { - "uuid": "python-5-1305", + "uuid": "python-5-1312", "seg": [ [ [ "更新", - "数据" + "数据", + "更新数据" ] ] ], - "level": "1", + "level": { + "min": 0.6734848484848485, + "max": 0.673532196969697 + }, "related_data": {} } } @@ -64379,7 +75381,7 @@ { "删除数据": { "data": { - "uuid": "python-5-1306", + "uuid": "python-5-1313", "seg": [ [ [ @@ -64388,12 +75390,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.673532196969697, + "max": 0.6735795454545455 + }, "related_data": { "qa": { "data_id": [ - "8_757434_812944", - "8_7442837_53419801" + "8_757434_812944@8", + "8_7442837_53419801@8" ] } } @@ -64402,7 +75407,7 @@ } ], "data": { - "uuid": "python-4-1366", + "uuid": "python-4-1379", "seg": [ [ [ @@ -64412,7 +75417,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6732954545454546, + "max": 0.6735795454545455 + }, "related_data": {} } } @@ -64420,7 +75428,7 @@ { "Pandas": { "data": { - "uuid": "python-4-1367", + "uuid": "python-4-1380", "seg": [ [ [ @@ -64428,7 +75436,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6735795454545455, + "max": 0.6738636363636364 + }, "related_data": {} } } @@ -64439,7 +75450,7 @@ { "电子邮件解析": { "data": { - "uuid": "python-5-1307", + "uuid": "python-5-1314", "seg": [ [ [ @@ -64448,7 +75459,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6738636363636364, + "max": 0.6740056818181819 + }, "related_data": {} } } @@ -64456,7 +75470,7 @@ { "主题爬取": { "data": { - "uuid": "python-5-1308", + "uuid": "python-5-1315", "seg": [ [ [ @@ -64465,14 +75479,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6740056818181819, + "max": 0.6741477272727273 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1368", + "uuid": "python-4-1381", "seg": [ [ [ @@ -64480,7 +75497,9 @@ "非", "结构化", "数据", - "提取" + "提取", + "非结构化", + "结构化数据" ], [ "转换" @@ -64490,7 +75509,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6738636363636364, + "max": 0.6741477272727273 + }, "related_data": {} } } @@ -64498,7 +75520,7 @@ { "稳定方差": { "data": { - "uuid": "python-4-1369", + "uuid": "python-4-1382", "seg": [ [ [ @@ -64507,7 +75529,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6741477272727273, + "max": 0.6744318181818182 + }, "related_data": {} } } @@ -64515,7 +75540,7 @@ { "使周期效应累加": { "data": { - "uuid": "python-4-1370", + "uuid": "python-4-1383", "seg": [ [ [ @@ -64525,7 +75550,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6744318181818182, + "max": 0.6747159090909092 + }, "related_data": {} } } @@ -64533,7 +75561,7 @@ { "使数据呈正态分布": { "data": { - "uuid": "python-4-1371", + "uuid": "python-4-1384", "seg": [ [ [ @@ -64543,21 +75571,25 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6747159090909092, + "max": 0.675 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-249", + "uuid": "python-3-250", "seg": [ [ [ "python", "结构化", "数据", - "提取" + "提取", + "结构化数据" ], [ "转换" @@ -64567,7 +75599,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.671875, + "max": 0.675 + }, "related_data": {} } } @@ -64581,7 +75616,7 @@ { "相关性分析": { "data": { - "uuid": "python-5-1309", + "uuid": "python-5-1316", "seg": [ [ [ @@ -64590,14 +75625,17 @@ ] ] ], - "level": "3", + "level": { + "min": 0.675, + "max": 0.6752604166666667 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1372", + "uuid": "python-4-1385", "seg": [ [ [ @@ -64606,7 +75644,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.675, + "max": 0.6752604166666667 + }, "related_data": {} } } @@ -64614,7 +75655,7 @@ { "使用Python进行分类": { "data": { - "uuid": "python-4-1373", + "uuid": "python-4-1386", "seg": [ [ [ @@ -64623,7 +75664,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6752604166666667, + "max": 0.6755208333333333 + }, "related_data": {} } } @@ -64634,7 +75678,7 @@ { "哪个属性优先": { "data": { - "uuid": "python-5-1310", + "uuid": "python-5-1317", "seg": [ [ [ @@ -64643,7 +75687,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6755208333333333, + "max": 0.6756510416666667 + }, "related_data": {} } } @@ -64651,24 +75698,29 @@ { "随机森林分类器": { "data": { - "uuid": "python-5-1311", + "uuid": "python-5-1318", "seg": [ [ [ "随机", "森林", - "分类器" + "分类器", + "随机森林", + "森林分类器" ] ] ], - "level": "3", + "level": { + "min": 0.6756510416666667, + "max": 0.67578125 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1374", + "uuid": "python-4-1387", "seg": [ [ [ @@ -64676,11 +75728,14 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6755208333333333, + "max": 0.67578125 + }, "related_data": { "qa": { "data_id": [ - "8_7425762_53387565" + "8_7425762_53387565@8" ] } } @@ -64690,21 +75745,26 @@ { "朴素贝叶斯分类器": { "data": { - "uuid": "python-4-1375", + "uuid": "python-4-1388", "seg": [ [ [ "朴素", "贝叶斯", - "分类器" + "分类器", + "朴素贝叶斯", + "贝叶斯分类器" ] ] ], - "level": "3", + "level": { + "min": 0.67578125, + "max": 0.6760416666666667 + }, "related_data": { "qa": { "data_id": [ - "8_681473_534568" + "8_681473_534568@8" ] } } @@ -64714,21 +75774,25 @@ { "支持向量机": { "data": { - "uuid": "python-4-1376", + "uuid": "python-4-1389", "seg": [ [ [ "支持", "向量", - "机" + "机", + "向量机" ] ] ], - "level": "3", + "level": { + "min": 0.6760416666666667, + "max": 0.6763020833333333 + }, "related_data": { "qa": { "data_id": [ - "8_7443094_53420753" + "8_7443094_53420753@8" ] } } @@ -64738,16 +75802,20 @@ { "最近邻分类器": { "data": { - "uuid": "python-4-1377", + "uuid": "python-4-1390", "seg": [ [ [ "邻", - "分类器" + "分类器", + "邻分类器" ] ] ], - "level": "3", + "level": { + "min": 0.6763020833333333, + "max": 0.6765625 + }, "related_data": {} } } @@ -64755,7 +75823,7 @@ { "情绪分析": { "data": { - "uuid": "python-4-1378", + "uuid": "python-4-1391", "seg": [ [ [ @@ -64764,7 +75832,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6765625, + "max": 0.6768229166666667 + }, "related_data": {} } } @@ -64772,7 +75843,7 @@ { "图像识别": { "data": { - "uuid": "python-4-1379", + "uuid": "python-4-1392", "seg": [ [ [ @@ -64780,7 +75851,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6768229166666667, + "max": 0.6770833333333334 + }, "related_data": {} } } @@ -64791,7 +75865,7 @@ { "最小二乘估计": { "data": { - "uuid": "python-5-1312", + "uuid": "python-5-1319", "seg": [ [ [ @@ -64800,11 +75874,14 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6770833333333334, + "max": 0.67734375 + }, "related_data": { "qa": { "data_id": [ - "8_7425433_53386909" + "8_7425433_53386909@8" ] } } @@ -64813,7 +75890,7 @@ } ], "data": { - "uuid": "python-4-1380", + "uuid": "python-4-1393", "seg": [ [ [ @@ -64822,7 +75899,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6770833333333334, + "max": 0.67734375 + }, "related_data": {} } } @@ -64830,7 +75910,7 @@ { "分类和回归": { "data": { - "uuid": "python-4-1381", + "uuid": "python-4-1394", "seg": [ [ [ @@ -64841,7 +75921,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.67734375, + "max": 0.6776041666666667 + }, "related_data": {} } } @@ -64849,7 +75932,7 @@ { "使模型高估或低估": { "data": { - "uuid": "python-4-1382", + "uuid": "python-4-1395", "seg": [ [ [ @@ -64859,7 +75942,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.6776041666666667, + "max": 0.6778645833333333 + }, "related_data": {} } } @@ -64867,24 +75953,28 @@ { "处理分类型数据": { "data": { - "uuid": "python-4-1383", + "uuid": "python-4-1396", "seg": [ [ [ "分", "类型", - "数据" + "数据", + "类型数据" ] ] ], - "level": "3", + "level": { + "min": 0.6778645833333333, + "max": 0.678125 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-250", + "uuid": "python-3-251", "seg": [ [ [ @@ -64894,7 +75984,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.675, + "max": 0.678125 + }, "related_data": {} } } @@ -64905,17 +75998,21 @@ { "K均值聚类": { "data": { - "uuid": "python-4-1384", + "uuid": "python-4-1397", "seg": [ [ [ "k", "均值", - "聚类" + "聚类", + "均值聚类" ] ] ], - "level": "3", + "level": { + "min": 0.678125, + "max": 0.67875 + }, "related_data": {} } } @@ -64923,18 +76020,22 @@ { "选择K—肘部法则": { "data": { - "uuid": "python-4-1385", + "uuid": "python-4-1398", "seg": [ [ [ "选择", "k", "肘部", - "法则" + "法则", + "肘部法则" ] ] ], - "level": "3", + "level": { + "min": 0.67875, + "max": 0.679375 + }, "related_data": {} } } @@ -64945,7 +76046,7 @@ { "属性": { "data": { - "uuid": "python-5-1313", + "uuid": "python-5-1320", "seg": [ [ [ @@ -64953,7 +76054,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.679375, + "max": 0.6795312499999999 + }, "related_data": {} } } @@ -64961,17 +76065,21 @@ { "一般及欧氏距离": { "data": { - "uuid": "python-5-1314", + "uuid": "python-5-1321", "seg": [ [ [], [ "欧氏", - "距离" + "距离", + "欧氏距离" ] ] ], - "level": "3", + "level": { + "min": 0.6795312499999999, + "max": 0.6796875 + }, "related_data": {} } } @@ -64979,21 +76087,25 @@ { "平方欧氏距离": { "data": { - "uuid": "python-5-1315", + "uuid": "python-5-1322", "seg": [ [ [ "平方", "欧氏", - "距离" + "距离", + "欧氏距离" ] ] ], - "level": "3", + "level": { + "min": 0.6796875, + "max": 0.6798437500000001 + }, "related_data": { "qa": { "data_id": [ - "8_7425190_53386476" + "8_7425190_53386476@8" ] } } @@ -65003,34 +76115,42 @@ { "字符串之间的编辑距离": { "data": { - "uuid": "python-5-1316", + "uuid": "python-5-1323", "seg": [ [ [ "字符串", "编辑", - "距离" + "距离", + "编辑距离" ] ] ], - "level": "3", + "level": { + "min": 0.6798437500000001, + "max": 0.68 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1386", + "uuid": "python-4-1399", "seg": [ [ [ "距离", "相似性", - "度量" + "度量", + "相似性度量" ] ] ], - "level": "3", + "level": { + "min": 0.679375, + "max": 0.68 + }, "related_data": {} } } @@ -65038,7 +76158,7 @@ { "文档上下文的相似性": { "data": { - "uuid": "python-4-1387", + "uuid": "python-4-1400", "seg": [ [ [ @@ -65048,7 +76168,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.68, + "max": 0.680625 + }, "related_data": {} } } @@ -65056,23 +76179,27 @@ { "如何判断聚类结果是否良好": { "data": { - "uuid": "python-4-1388", + "uuid": "python-4-1401", "seg": [ [ [ "判断", - "聚类" + "聚类", + "聚类结果" ] ] ], - "level": "3", + "level": { + "min": 0.680625, + "max": 0.68125 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-251", + "uuid": "python-3-252", "seg": [ [ [ @@ -65082,7 +76209,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.678125, + "max": 0.68125 + }, "related_data": {} } } @@ -65093,7 +76223,7 @@ { "变化的分类": { "data": { - "uuid": "python-4-1389", + "uuid": "python-4-1402", "seg": [ [ [ @@ -65102,7 +76232,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.68125, + "max": 0.6815625000000001 + }, "related_data": {} } } @@ -65113,7 +76246,7 @@ { "曲线拟合": { "data": { - "uuid": "python-5-1317", + "uuid": "python-5-1324", "seg": [ [ [ @@ -65121,7 +76254,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6815625000000001, + "max": 0.68171875 + }, "related_data": {} } } @@ -65129,22 +76265,26 @@ { "从时间序列中去除趋势": { "data": { - "uuid": "python-5-1318", + "uuid": "python-5-1325", "seg": [ [ [ "时间", "序列", "去除", - "趋势" + "趋势", + "时间序列" ] ] ], - "level": "1", + "level": { + "min": 0.68171875, + "max": 0.681875 + }, "related_data": { "qa": { "data_id": [ - "8_7439531_53414091" + "8_7439531_53414091@8" ] } } @@ -65153,7 +76293,7 @@ } ], "data": { - "uuid": "python-4-1390", + "uuid": "python-4-1403", "seg": [ [ [ @@ -65164,7 +76304,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6815625000000001, + "max": 0.681875 + }, "related_data": {} } } @@ -65172,7 +76315,7 @@ { "包含周期性的序列数据分析": { "data": { - "uuid": "python-4-1391", + "uuid": "python-4-1404", "seg": [ [ [ @@ -65183,7 +76326,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.681875, + "max": 0.6821875 + }, "related_data": {} } } @@ -65194,7 +76340,7 @@ { "滤波": { "data": { - "uuid": "python-5-1319", + "uuid": "python-5-1326", "seg": [ [ [ @@ -65202,7 +76348,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6821875, + "max": 0.68234375 + }, "related_data": {} } } @@ -65210,7 +76359,7 @@ { "差分": { "data": { - "uuid": "python-5-1320", + "uuid": "python-5-1327", "seg": [ [ [ @@ -65218,25 +76367,32 @@ ] ] ], - "level": "1", + "level": { + "min": 0.68234375, + "max": 0.6825 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1392", + "uuid": "python-4-1405", "seg": [ [ [ "时间", "序列", "去除", - "周期性" + "周期性", + "时间序列" ] ] ], - "level": "1", + "level": { + "min": 0.6821875, + "max": 0.6825 + }, "related_data": {} } } @@ -65247,7 +76403,7 @@ { "平稳过程": { "data": { - "uuid": "python-5-1321", + "uuid": "python-5-1328", "seg": [ [ [ @@ -65256,7 +76412,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6825, + "max": 0.6826041666666667 + }, "related_data": {} } } @@ -65264,7 +76423,7 @@ { "自相关和相关图": { "data": { - "uuid": "python-5-1322", + "uuid": "python-5-1329", "seg": [ [ [ @@ -65276,17 +76435,20 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6826041666666667, + "max": 0.6827083333333334 + }, "related_data": { "qa": { "data_id": [ - "8_772501_835791", - "8_769960_831242", - "8_7452373_53434330", - "8_7432790_53402324", - "8_7415394_53368798", - "8_7396616_53340547", - "8_7422252_53379719" + "8_772501_835791@8", + "8_769960_831242@8", + "8_7452373_53434330@8", + "8_7432790_53402324@8", + "8_7415394_53368798@8", + "8_7396616_53340547@8", + "8_7422252_53379719@8" ] } } @@ -65296,7 +76458,7 @@ { "自协方差和自相关函数的估计": { "data": { - "uuid": "python-5-1323", + "uuid": "python-5-1330", "seg": [ [ [ @@ -65309,24 +76471,31 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6827083333333334, + "max": 0.6828125 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1393", + "uuid": "python-4-1406", "seg": [ [ [ "平稳", "时间", - "序列" + "序列", + "时间序列" ] ] ], - "level": "1", + "level": { + "min": 0.6825, + "max": 0.6828125 + }, "related_data": {} } } @@ -65337,7 +76506,7 @@ { "有用的方法": { "data": { - "uuid": "python-5-1324", + "uuid": "python-5-1331", "seg": [ [ [ @@ -65346,7 +76515,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6828125, + "max": 0.6829166666666667 + }, "related_data": {} } } @@ -65354,7 +76526,7 @@ { "自回归过程": { "data": { - "uuid": "python-5-1325", + "uuid": "python-5-1332", "seg": [ [ [ @@ -65363,7 +76535,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6829166666666667, + "max": 0.6830208333333333 + }, "related_data": {} } } @@ -65371,7 +76546,7 @@ { "估计AR过程的参数": { "data": { - "uuid": "python-5-1326", + "uuid": "python-5-1333", "seg": [ [ [ @@ -65382,25 +76557,32 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6830208333333333, + "max": 0.683125 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1394", + "uuid": "python-4-1407", "seg": [ [ [ "python", "时间", "序列", - "分析" + "分析", + "时间序列" ] ] ], - "level": "1", + "level": { + "min": 0.6828125, + "max": 0.683125 + }, "related_data": {} } } @@ -65408,7 +76590,7 @@ { "混合ARMA模型": { "data": { - "uuid": "python-4-1395", + "uuid": "python-4-1408", "seg": [ [ [ @@ -65418,7 +76600,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.683125, + "max": 0.6834374999999999 + }, "related_data": {} } } @@ -65426,7 +76611,7 @@ { "集成ARMA模型": { "data": { - "uuid": "python-4-1396", + "uuid": "python-4-1409", "seg": [ [ [ @@ -65436,7 +76621,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6834374999999999, + "max": 0.68375 + }, "related_data": {} } } @@ -65444,7 +76632,7 @@ { "一个特殊的场景": { "data": { - "uuid": "python-4-1397", + "uuid": "python-4-1410", "seg": [ [ [ @@ -65452,7 +76640,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.68375, + "max": 0.6840625 + }, "related_data": {} } } @@ -65460,7 +76651,7 @@ { "数据缺失": { "data": { - "uuid": "python-4-1398", + "uuid": "python-4-1411", "seg": [ [ [ @@ -65469,23 +76660,30 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6840625, + "max": 0.684375 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-252", + "uuid": "python-3-253", "seg": [ [ [ "时间", - "序列" + "序列", + "时间序列" ] ] ], - "level": "1", + "level": { + "min": 0.68125, + "max": 0.684375 + }, "related_data": {} } } @@ -65499,7 +76697,7 @@ { "MapReduce编程": { "data": { - "uuid": "python-5-1327", + "uuid": "python-5-1334", "seg": [ [ [ @@ -65508,11 +76706,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.684375, + "max": 0.6845312499999999 + }, "related_data": { "qa": { "data_id": [ - "8_7414249_53367702" + "8_7414249_53367702@8" ] } } @@ -65522,7 +76723,7 @@ { "partitioning函数": { "data": { - "uuid": "python-5-1328", + "uuid": "python-5-1335", "seg": [ [ [ @@ -65531,7 +76732,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6845312499999999, + "max": 0.6846874999999999 + }, "related_data": {} } } @@ -65539,7 +76743,7 @@ { "combiner函数": { "data": { - "uuid": "python-5-1329", + "uuid": "python-5-1336", "seg": [ [ [ @@ -65548,7 +76752,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6846874999999999, + "max": 0.68484375 + }, "related_data": {} } } @@ -65556,7 +76763,7 @@ { "HDFS文件系统": { "data": { - "uuid": "python-5-1330", + "uuid": "python-5-1337", "seg": [ [ [ @@ -65565,7 +76772,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.68484375, + "max": 0.6849999999999999 + }, "related_data": {} } } @@ -65573,7 +76783,7 @@ { "MapReduce设计模式": { "data": { - "uuid": "python-5-1331", + "uuid": "python-5-1338", "seg": [ [ [ @@ -65582,14 +76792,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6849999999999999, + "max": 0.6851562499999999 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1399", + "uuid": "python-4-1412", "seg": [ [ [ @@ -65597,7 +76810,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.684375, + "max": 0.6851562499999999 + }, "related_data": {} } } @@ -65605,7 +76821,7 @@ { "Spark": { "data": { - "uuid": "python-4-1400", + "uuid": "python-4-1413", "seg": [ [ [ @@ -65613,7 +76829,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6851562499999999, + "max": 0.6859375 + }, "related_data": {} } } @@ -65621,7 +76840,7 @@ { "云分析": { "data": { - "uuid": "python-4-1401", + "uuid": "python-4-1414", "seg": [ [ [ @@ -65630,7 +76849,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6859375, + "max": 0.68671875 + }, "related_data": {} } } @@ -65638,7 +76860,7 @@ { "物联网": { "data": { - "uuid": "python-4-1402", + "uuid": "python-4-1415", "seg": [ [ [ @@ -65646,14 +76868,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.68671875, + "max": 0.6875 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-253", + "uuid": "python-3-254", "seg": [ [ [ @@ -65661,11 +76886,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.684375, + "max": 0.6875 + }, "related_data": { "qa": { "data_id": [ - "8_7448381_53428538" + "8_7448381_53428538@8" ] } } @@ -65682,7 +76910,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.65625, + "max": 0.6875 + }, "related_data": {} } } @@ -65699,7 +76930,7 @@ { "优美胜于丑陋": { "data": { - "uuid": "python-5-1332", + "uuid": "python-5-1339", "seg": [ [ [ @@ -65709,7 +76940,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6875, + "max": 0.6875234962406015 + }, "related_data": {} } } @@ -65717,7 +76951,7 @@ { "明了胜于晦涩": { "data": { - "uuid": "python-5-1333", + "uuid": "python-5-1340", "seg": [ [ [ @@ -65727,7 +76961,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6875234962406015, + "max": 0.687546992481203 + }, "related_data": {} } } @@ -65735,7 +76972,7 @@ { "简洁胜于复杂": { "data": { - "uuid": "python-5-1334", + "uuid": "python-5-1341", "seg": [ [ [ @@ -65744,7 +76981,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.687546992481203, + "max": 0.6875704887218045 + }, "related_data": {} } } @@ -65752,17 +76992,21 @@ { "复杂胜于难以理解": { "data": { - "uuid": "python-5-1335", + "uuid": "python-5-1342", "seg": [ [ [ "胜", "难以", - "理解" + "理解", + "难以理解" ] ] ], - "level": "1", + "level": { + "min": 0.6875704887218045, + "max": 0.687593984962406 + }, "related_data": {} } } @@ -65770,7 +77014,7 @@ { "扁平胜于嵌套": { "data": { - "uuid": "python-5-1336", + "uuid": "python-5-1343", "seg": [ [ [ @@ -65780,7 +77024,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.687593984962406, + "max": 0.6876174812030076 + }, "related_data": {} } } @@ -65788,7 +77035,7 @@ { "宽松胜于紧凑": { "data": { - "uuid": "python-5-1337", + "uuid": "python-5-1344", "seg": [ [ [ @@ -65798,7 +77045,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6876174812030076, + "max": 0.6876409774436091 + }, "related_data": {} } } @@ -65806,7 +77056,7 @@ { "可读性很重要": { "data": { - "uuid": "python-5-1338", + "uuid": "python-5-1345", "seg": [ [ [ @@ -65814,7 +77064,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6876409774436091, + "max": 0.6876644736842106 + }, "related_data": {} } } @@ -65822,17 +77075,21 @@ { "即便是特例,也不可违背这些规则": { "data": { - "uuid": "python-5-1339", + "uuid": "python-5-1346", "seg": [ [ [ "特例", "违背", - "规则" + "规则", + "也不可" ] ] ], - "level": "1", + "level": { + "min": 0.6876644736842106, + "max": 0.6876879699248121 + }, "related_data": {} } } @@ -65840,7 +77097,7 @@ { "实用性胜于纯粹性": { "data": { - "uuid": "python-5-1340", + "uuid": "python-5-1347", "seg": [ [ [ @@ -65850,7 +77107,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6876879699248121, + "max": 0.6877114661654136 + }, "related_data": {} } } @@ -65858,20 +77118,24 @@ { "错误永远不应该悄无声息地过去": { "data": { - "uuid": "python-5-1341", + "uuid": "python-5-1348", "seg": [ [ [ "永远", - "悄无声息" + "悄无声息", + "不应该" ] ] ], - "level": "1", + "level": { + "min": 0.6877114661654136, + "max": 0.6877349624060151 + }, "related_data": { "qa": { "data_id": [ - "8_7446667_53426144" + "8_7446667_53426144@8" ] } } @@ -65881,7 +77145,7 @@ { "除非明确地沉默": { "data": { - "uuid": "python-5-1342", + "uuid": "python-5-1349", "seg": [ [ [ @@ -65889,7 +77153,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6877349624060151, + "max": 0.6877584586466166 + }, "related_data": {} } } @@ -65897,7 +77164,7 @@ { "面对模棱两可的情况,拒绝猜测的诱惑": { "data": { - "uuid": "python-5-1343", + "uuid": "python-5-1350", "seg": [ [ [ @@ -65910,7 +77177,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6877584586466166, + "max": 0.687781954887218 + }, "related_data": {} } } @@ -65918,7 +77188,7 @@ { "应该有一种(最好只有一种)显而易见的方法": { "data": { - "uuid": "python-5-1344", + "uuid": "python-5-1351", "seg": [ [ [ @@ -65927,7 +77197,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.687781954887218, + "max": 0.6878054511278195 + }, "related_data": {} } } @@ -65935,16 +77208,20 @@ { "尽管这种方式起初可能并不明显,除非你是荷兰人": { "data": { - "uuid": "python-5-1345", + "uuid": "python-5-1352", "seg": [ [ [ "方式", - "荷兰人" + "荷兰人", + "起初可能" ] ] ], - "level": "1", + "level": { + "min": 0.6878054511278195, + "max": 0.687828947368421 + }, "related_data": {} } } @@ -65952,29 +77229,33 @@ { "做比不做要好": { "data": { - "uuid": "python-5-1346", + "uuid": "python-5-1353", "seg": [ [ [ "做比", - "做" + "做", + "不做" ] ] ], - "level": "1", + "level": { + "min": 0.687828947368421, + "max": 0.6878524436090226 + }, "related_data": { "qa": { "data_id": [ - "8_7449321_53429361", - "8_7435343_53405838", - "8_7433477_53403730", - "8_7433911_53404257", - "8_7444492_53422658", - "8_7446689_53426255", - "8_7441250_53417127", - "8_7455044_53437782", - "8_950378_1091886", - "8_7459286_53444141" + "8_7449321_53429361@8", + "8_7435343_53405838@8", + "8_7433477_53403730@8", + "8_7433911_53404257@8", + "8_7444492_53422658@8", + "8_7446689_53426255@8", + "8_7441250_53417127@8", + "8_7455044_53437782@8", + "8_950378_1091886@8", + "8_7459286_53444141@8" ] } } @@ -65984,17 +77265,22 @@ { "不假思索就动手还不如不做": { "data": { - "uuid": "python-5-1347", + "uuid": "python-5-1354", "seg": [ [ [ "不假思索", "动手", - "做" + "做", + "就动手", + "不做" ] ] ], - "level": "1", + "level": { + "min": 0.6878524436090226, + "max": 0.6878759398496241 + }, "related_data": {} } } @@ -66002,17 +77288,21 @@ { "如果实现难以解释,那就是一个糟糕的想法": { "data": { - "uuid": "python-5-1348", + "uuid": "python-5-1355", "seg": [ [ [ "难以", "糟糕", - "想法" + "想法", + "难以解释" ] ] ], - "level": "1", + "level": { + "min": 0.6878759398496241, + "max": 0.6878994360902256 + }, "related_data": {} } } @@ -66020,15 +77310,19 @@ { "如果实现容易解释,则可能是一个好主意": { "data": { - "uuid": "python-5-1349", + "uuid": "python-5-1356", "seg": [ [ [ - "主意" + "主意", + "则可能" ] ] ], - "level": "1", + "level": { + "min": 0.6878994360902256, + "max": 0.6879229323308271 + }, "related_data": {} } } @@ -66036,7 +77330,7 @@ { "命名空间是一个很棒的想法,让我们做更多这样的事情吧": { "data": { - "uuid": "python-5-1350", + "uuid": "python-5-1357", "seg": [ [ [ @@ -66045,18 +77339,22 @@ "很棒", "想法", "做", - "事情" + "事情", + "命名空间" ] ] ], - "level": "1", + "level": { + "min": 0.6879229323308271, + "max": 0.6879464285714286 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1403", + "uuid": "python-4-1416", "seg": [ [ [ @@ -66065,7 +77363,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6875, + "max": 0.6879464285714286 + }, "related_data": {} } } @@ -66073,7 +77374,7 @@ { "不要重复自己": { "data": { - "uuid": "python-4-1404", + "uuid": "python-4-1417", "seg": [ [ [ @@ -66081,7 +77382,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6879464285714286, + "max": 0.6883928571428571 + }, "related_data": {} } } @@ -66089,7 +77393,7 @@ { "松耦合": { "data": { - "uuid": "python-4-1405", + "uuid": "python-4-1418", "seg": [ [ [ @@ -66098,7 +77402,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6883928571428571, + "max": 0.6888392857142858 + }, "related_data": {} } } @@ -66106,16 +77413,20 @@ { "武士原则": { "data": { - "uuid": "python-4-1406", + "uuid": "python-4-1419", "seg": [ [ [ "武士", - "原则" + "原则", + "武士原则" ] ] ], - "level": "1", + "level": { + "min": 0.6888392857142858, + "max": 0.6892857142857143 + }, "related_data": {} } } @@ -66123,16 +77434,20 @@ { "帕累托原则": { "data": { - "uuid": "python-4-1407", + "uuid": "python-4-1420", "seg": [ [ [ "帕累托", - "原则" + "原则", + "帕累托原则" ] ] ], - "level": "1", + "level": { + "min": 0.6892857142857143, + "max": 0.6897321428571429 + }, "related_data": {} } } @@ -66140,16 +77455,20 @@ { "稳健性原则": { "data": { - "uuid": "python-4-1408", + "uuid": "python-4-1421", "seg": [ [ [ "稳健性", - "原则" + "原则", + "稳健性原则" ] ] ], - "level": "1", + "level": { + "min": 0.6897321428571429, + "max": 0.6901785714285714 + }, "related_data": {} } } @@ -66157,7 +77476,7 @@ { "向后兼容性": { "data": { - "uuid": "python-4-1409", + "uuid": "python-4-1422", "seg": [ [ [ @@ -66165,14 +77484,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6901785714285714, + "max": 0.690625 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-254", + "uuid": "python-3-255", "seg": [ [ [ @@ -66183,11 +77505,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6875, + "max": 0.690625 + }, "related_data": { "qa": { "data_id": [ - "8_7456886_53440969" + "8_7456886_53440969@8" ] } } @@ -66203,7 +77528,7 @@ { "迭代": { "data": { - "uuid": "python-5-1351", + "uuid": "python-5-1358", "seg": [ [ [ @@ -66211,7 +77536,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.690625, + "max": 0.6907986111111112 + }, "related_data": {} } } @@ -66219,7 +77547,7 @@ { "缓存": { "data": { - "uuid": "python-5-1352", + "uuid": "python-5-1359", "seg": [ [ [ @@ -66227,11 +77555,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6907986111111112, + "max": 0.6909722222222222 + }, "related_data": { "qa": { "data_id": [ - "8_940317_1078150" + "8_940317_1078150@8" ] } } @@ -66241,7 +77572,7 @@ { "透明度": { "data": { - "uuid": "python-5-1353", + "uuid": "python-5-1360", "seg": [ [ [ @@ -66249,23 +77580,30 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6909722222222222, + "max": 0.6911458333333333 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1410", + "uuid": "python-4-1423", "seg": [ [ [ "总体", - "概念" + "概念", + "总体概念" ] ] ], - "level": "1", + "level": { + "min": 0.690625, + "max": 0.6911458333333333 + }, "related_data": {} } } @@ -66276,7 +77614,7 @@ { "捕获异常": { "data": { - "uuid": "python-5-1354", + "uuid": "python-5-1361", "seg": [ [ [ @@ -66285,7 +77623,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6911458333333333, + "max": 0.6912202380952381 + }, "related_data": {} } } @@ -66293,16 +77634,20 @@ { "异常链": { "data": { - "uuid": "python-5-1355", + "uuid": "python-5-1362", "seg": [ [ [ "异常", - "链" + "链", + "异常链" ] ] ], - "level": "1", + "level": { + "min": 0.6912202380952381, + "max": 0.6912946428571428 + }, "related_data": {} } } @@ -66310,7 +77655,7 @@ { "当一切顺利的时候": { "data": { - "uuid": "python-5-1356", + "uuid": "python-5-1363", "seg": [ [ [ @@ -66318,7 +77663,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6912946428571428, + "max": 0.6913690476190476 + }, "related_data": {} } } @@ -66326,7 +77674,7 @@ { "继续执行,无论异常如何": { "data": { - "uuid": "python-5-1357", + "uuid": "python-5-1364", "seg": [ [ [ @@ -66335,7 +77683,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6913690476190476, + "max": 0.6914434523809524 + }, "related_data": {} } } @@ -66343,7 +77694,7 @@ { "优化循环": { "data": { - "uuid": "python-5-1358", + "uuid": "python-5-1365", "seg": [ [ [ @@ -66352,7 +77703,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6914434523809524, + "max": 0.6915178571428572 + }, "related_data": {} } } @@ -66360,7 +77714,7 @@ { "with语句": { "data": { - "uuid": "python-5-1359", + "uuid": "python-5-1366", "seg": [ [ [ @@ -66369,11 +77723,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6915178571428572, + "max": 0.6915922619047619 + }, "related_data": { "qa": { "data_id": [ - "8_564848_439784" + "8_564848_439784@8", + "8_715560_707908@8" ] } } @@ -66383,23 +77741,27 @@ { "条件表达式": { "data": { - "uuid": "python-5-1360", + "uuid": "python-5-1367", "seg": [ [ [ "条件", - "表达式" + "表达式", + "条件表达式" ] ] ], - "level": "1", + "level": { + "min": 0.6915922619047619, + "max": 0.6916666666666667 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1411", + "uuid": "python-4-1424", "seg": [ [ [ @@ -66408,7 +77770,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6911458333333333, + "max": 0.6916666666666667 + }, "related_data": {} } } @@ -66419,7 +77784,7 @@ { "序列解包": { "data": { - "uuid": "python-5-1361", + "uuid": "python-5-1368", "seg": [ [ [ @@ -66428,7 +77793,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6916666666666667, + "max": 0.6917410714285714 + }, "related_data": {} } } @@ -66436,7 +77804,7 @@ { "列表解析式": { "data": { - "uuid": "python-5-1362", + "uuid": "python-5-1369", "seg": [ [ [ @@ -66445,7 +77813,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6917410714285714, + "max": 0.6918154761904761 + }, "related_data": {} } } @@ -66453,7 +77824,7 @@ { "生成器表达式": { "data": { - "uuid": "python-5-1363", + "uuid": "python-5-1370", "seg": [ [ [ @@ -66462,7 +77833,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6918154761904761, + "max": 0.6918898809523809 + }, "related_data": {} } } @@ -66470,7 +77844,7 @@ { "集合解析式": { "data": { - "uuid": "python-5-1364", + "uuid": "python-5-1371", "seg": [ [ [ @@ -66479,7 +77853,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6918898809523809, + "max": 0.6919642857142857 + }, "related_data": {} } } @@ -66487,7 +77864,7 @@ { "字典解析式": { "data": { - "uuid": "python-5-1365", + "uuid": "python-5-1372", "seg": [ [ [ @@ -66496,7 +77873,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6919642857142857, + "max": 0.6920386904761905 + }, "related_data": {} } } @@ -66504,17 +77884,22 @@ { "将迭代器链接在一起": { "data": { - "uuid": "python-5-1366", + "uuid": "python-5-1373", "seg": [ [ [ "迭代", "器", - "链接" + "链接", + "将迭代", + "器链接" ] ] ], - "level": "1", + "level": { + "min": 0.6920386904761905, + "max": 0.6921130952380952 + }, "related_data": {} } } @@ -66522,24 +77907,28 @@ { "将迭代器压缩在一起": { "data": { - "uuid": "python-5-1367", + "uuid": "python-5-1374", "seg": [ [ [ "迭代", "器", - "压缩" + "压缩", + "将迭代" ] ] ], - "level": "1", + "level": { + "min": 0.6921130952380952, + "max": 0.6921875 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1412", + "uuid": "python-4-1425", "seg": [ [ [ @@ -66547,7 +77936,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6916666666666667, + "max": 0.6921875 + }, "related_data": {} } } @@ -66558,7 +77950,7 @@ { "集合": { "data": { - "uuid": "python-5-1368", + "uuid": "python-5-1375", "seg": [ [ [ @@ -66566,7 +77958,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6921875, + "max": 0.6923177083333333 + }, "related_data": {} } } @@ -66574,16 +77969,20 @@ { "命名元组": { "data": { - "uuid": "python-5-1369", + "uuid": "python-5-1376", "seg": [ [ [ "命名", - "元组" + "元组", + "命名元组" ] ] ], - "level": "1", + "level": { + "min": 0.6923177083333333, + "max": 0.6924479166666666 + }, "related_data": {} } } @@ -66591,16 +77990,20 @@ { "有序字典": { "data": { - "uuid": "python-5-1370", + "uuid": "python-5-1377", "seg": [ [ [ "有序", - "字典" + "字典", + "有序字典" ] ] ], - "level": "1", + "level": { + "min": 0.6924479166666666, + "max": 0.692578125 + }, "related_data": {} } } @@ -66608,7 +78011,7 @@ { "带有默认值的字典": { "data": { - "uuid": "python-5-1371", + "uuid": "python-5-1378", "seg": [ [ [ @@ -66618,11 +78021,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.692578125, + "max": 0.6927083333333334 + }, "related_data": { "qa": { "data_id": [ - "8_7453924_53436598" + "8_7453924_53436598@8" ] } } @@ -66631,16 +78037,20 @@ } ], "data": { - "uuid": "python-4-1413", + "uuid": "python-4-1426", "seg": [ [ [ "容器", - "数据类型" + "数据类型", + "容器数据类型" ] ] ], - "level": "1", + "level": { + "min": 0.6921875, + "max": 0.6927083333333334 + }, "related_data": {} } } @@ -66651,7 +78061,7 @@ { "回退(备用)导入": { "data": { - "uuid": "python-5-1372", + "uuid": "python-5-1379", "seg": [ [ [ @@ -66661,31 +78071,32 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "8_760899_818200" - ] - } - } + "level": { + "min": 0.6927083333333334, + "max": 0.6927951388888889 + }, + "related_data": {} } } }, { "从即将发布的版本中导入": { "data": { - "uuid": "python-5-1373", + "uuid": "python-5-1380", "seg": [ [ [ "发布", "版本", - "导入" + "导入", + "即将发布" ] ] ], - "level": "1", + "level": { + "min": 0.6927951388888889, + "max": 0.6928819444444445 + }, "related_data": {} } } @@ -66693,7 +78104,7 @@ { "使用__all__进行自定义导入": { "data": { - "uuid": "python-5-1374", + "uuid": "python-5-1381", "seg": [ [ [ @@ -66703,11 +78114,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6928819444444445, + "max": 0.69296875 + }, "related_data": { "qa": { "data_id": [ - "8_4644978_29327026" + "8_4644978_29327026@8" ] } } @@ -66717,23 +78131,33 @@ { "相对导入": { "data": { - "uuid": "python-5-1375", + "uuid": "python-5-1382", "seg": [ [ [ - "导入" + "导入", + "相对导入" ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.69296875, + "max": 0.6930555555555555 + }, + "related_data": { + "qa": { + "data_id": [ + "8_760899_818200@8" + ] + } + } } } }, { "__import__函数": { "data": { - "uuid": "python-5-1376", + "uuid": "python-5-1383", "seg": [ [ [ @@ -66742,7 +78166,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6930555555555555, + "max": 0.6931423611111112 + }, "related_data": {} } } @@ -66750,7 +78177,7 @@ { "importlib模块": { "data": { - "uuid": "python-5-1377", + "uuid": "python-5-1384", "seg": [ [ [ @@ -66759,14 +78186,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6931423611111112, + "max": 0.6932291666666667 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1414", + "uuid": "python-4-1427", "seg": [ [ [ @@ -66774,7 +78204,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6927083333333334, + "max": 0.6932291666666667 + }, "related_data": {} } } @@ -66785,18 +78218,22 @@ { "如何安装NIST信标库": { "data": { - "uuid": "python-5-1378", + "uuid": "python-5-1385", "seg": [ [ [ "安装", "nist", "信标", - "库" + "库", + "信标库" ] ] ], - "level": "1", + "level": { + "min": 0.6932291666666667, + "max": 0.6932484567901235 + }, "related_data": {} } } @@ -66804,7 +78241,7 @@ { "示例:获取值": { "data": { - "uuid": "python-5-1379", + "uuid": "python-5-1386", "seg": [ [ [ @@ -66818,7 +78255,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6932484567901235, + "max": 0.6932677469135803 + }, "related_data": {} } } @@ -66826,7 +78266,7 @@ { "示例:模拟抛硬币并记录每次正反面的结果": { "data": { - "uuid": "python-5-1380", + "uuid": "python-5-1387", "seg": [ [ [ @@ -66842,7 +78282,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6932677469135803, + "max": 0.6932870370370371 + }, "related_data": {} } } @@ -66850,7 +78293,7 @@ { "安装Pandas和matplotlib": { "data": { - "uuid": "python-5-1381", + "uuid": "python-5-1388", "seg": [ [ [ @@ -66862,7 +78305,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6932870370370371, + "max": 0.6933063271604938 + }, "related_data": {} } } @@ -66870,7 +78316,7 @@ { "创建文本文件": { "data": { - "uuid": "python-5-1382", + "uuid": "python-5-1389", "seg": [ [ [ @@ -66879,7 +78325,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6933063271604938, + "max": 0.6933256172839506 + }, "related_data": {} } } @@ -66887,7 +78336,7 @@ { "使用Pandas显示数据": { "data": { - "uuid": "python-5-1383", + "uuid": "python-5-1390", "seg": [ [ [ @@ -66897,7 +78346,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6933256172839506, + "max": 0.6933449074074074 + }, "related_data": {} } } @@ -66905,7 +78357,7 @@ { "进行一些数据分析": { "data": { - "uuid": "python-5-1384", + "uuid": "python-5-1391", "seg": [ [ [ @@ -66913,7 +78365,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6933449074074074, + "max": 0.6933641975308642 + }, "related_data": {} } } @@ -66921,7 +78376,7 @@ { "使用matplotlib进行绘图": { "data": { - "uuid": "python-5-1385", + "uuid": "python-5-1392", "seg": [ [ [ @@ -66930,7 +78385,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6933641975308642, + "max": 0.693383487654321 + }, "related_data": {} } } @@ -66938,7 +78396,7 @@ { "图表的类型": { "data": { - "uuid": "python-5-1386", + "uuid": "python-5-1393", "seg": [ [ [ @@ -66947,7 +78405,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.693383487654321, + "max": 0.6934027777777778 + }, "related_data": {} } } @@ -66955,7 +78416,7 @@ { "安装Scrapy": { "data": { - "uuid": "python-5-1387", + "uuid": "python-5-1394", "seg": [ [ [ @@ -66964,7 +78425,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6934027777777778, + "max": 0.6934220679012346 + }, "related_data": {} } } @@ -66972,7 +78436,7 @@ { "运行Scrapy": { "data": { - "uuid": "python-5-1388", + "uuid": "python-5-1395", "seg": [ [ [ @@ -66981,7 +78445,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6934220679012346, + "max": 0.6934413580246913 + }, "related_data": {} } } @@ -66989,7 +78456,7 @@ { "使用Scrapy获取Web数据": { "data": { - "uuid": "python-5-1389", + "uuid": "python-5-1396", "seg": [ [ [ @@ -67000,7 +78467,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6934413580246913, + "max": 0.6934606481481481 + }, "related_data": {} } } @@ -67008,7 +78478,7 @@ { "通过Scrapy浏览网页": { "data": { - "uuid": "python-5-1390", + "uuid": "python-5-1397", "seg": [ [ [ @@ -67018,7 +78488,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6934606481481481, + "max": 0.6934799382716049 + }, "related_data": {} } } @@ -67026,7 +78499,7 @@ { "shell选项": { "data": { - "uuid": "python-5-1391", + "uuid": "python-5-1398", "seg": [ [ [ @@ -67035,7 +78508,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6934799382716049, + "max": 0.6934992283950617 + }, "related_data": {} } } @@ -67043,7 +78519,7 @@ { "安装Beautiful Soup": { "data": { - "uuid": "python-5-1392", + "uuid": "python-5-1399", "seg": [ [ [ @@ -67055,7 +78531,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6934992283950617, + "max": 0.6935185185185185 + }, "related_data": {} } } @@ -67063,7 +78542,7 @@ { "使用Beautiful Soup": { "data": { - "uuid": "python-5-1393", + "uuid": "python-5-1400", "seg": [ [ [ @@ -67074,7 +78553,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6935185185185185, + "max": 0.6935378086419753 + }, "related_data": {} } } @@ -67082,7 +78564,7 @@ { "如何安装feedparser库": { "data": { - "uuid": "python-5-1394", + "uuid": "python-5-1401", "seg": [ [ [ @@ -67092,7 +78574,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6935378086419753, + "max": 0.693557098765432 + }, "related_data": {} } } @@ -67100,7 +78585,7 @@ { "如何使用feedparser库": { "data": { - "uuid": "python-5-1395", + "uuid": "python-5-1402", "seg": [ [ [ @@ -67109,21 +78594,18 @@ ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "8_7422933_53382743" - ] - } - } + "level": { + "min": 0.693557098765432, + "max": 0.6935763888888888 + }, + "related_data": {} } } }, { "安装NumPy": { "data": { - "uuid": "python-5-1396", + "uuid": "python-5-1403", "seg": [ [ [ @@ -67132,7 +78614,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6935763888888888, + "max": 0.6935956790123456 + }, "related_data": {} } } @@ -67140,7 +78625,7 @@ { "使用NumPy": { "data": { - "uuid": "python-5-1397", + "uuid": "python-5-1404", "seg": [ [ [ @@ -67148,7 +78633,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6935956790123456, + "max": 0.6936149691358025 + }, "related_data": {} } } @@ -67156,7 +78644,7 @@ { "使用NumPy数组": { "data": { - "uuid": "python-5-1398", + "uuid": "python-5-1405", "seg": [ [ [ @@ -67165,7 +78653,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6936149691358025, + "max": 0.6936342592592593 + }, "related_data": {} } } @@ -67173,7 +78664,7 @@ { "统计度量": { "data": { - "uuid": "python-5-1399", + "uuid": "python-5-1406", "seg": [ [ [ @@ -67182,7 +78673,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6936342592592593, + "max": 0.6936535493827161 + }, "related_data": {} } } @@ -67190,7 +78684,7 @@ { "如何安装Pillow库": { "data": { - "uuid": "python-5-1400", + "uuid": "python-5-1407", "seg": [ [ [ @@ -67200,7 +78694,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6936535493827161, + "max": 0.6936728395061729 + }, "related_data": {} } } @@ -67208,7 +78705,7 @@ { "图像显示:确定文件的大小和类型并显示": { "data": { - "uuid": "python-5-1401", + "uuid": "python-5-1408", "seg": [ [ [ @@ -67227,7 +78724,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6936728395061729, + "max": 0.6936921296296296 + }, "related_data": {} } } @@ -67235,7 +78735,7 @@ { "图像处理:裁剪图像的一部分": { "data": { - "uuid": "python-5-1402", + "uuid": "python-5-1409", "seg": [ [ [ @@ -67249,7 +78749,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6936921296296296, + "max": 0.6937114197530864 + }, "related_data": {} } } @@ -67257,7 +78760,7 @@ { "随机数": { "data": { - "uuid": "python-5-1403", + "uuid": "python-5-1410", "seg": [ [ [ @@ -67265,12 +78768,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6937114197530864, + "max": 0.6937307098765432 + }, "related_data": { "qa": { "data_id": [ - "8_7436311_53407961", - "8_757801_813436" + "8_7436311_53407961@8", + "8_757801_813436@8" ] } } @@ -67280,7 +78786,7 @@ { "密码生成器": { "data": { - "uuid": "python-5-1404", + "uuid": "python-5-1411", "seg": [ [ [ @@ -67289,14 +78795,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6937307098765432, + "max": 0.69375 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1415", + "uuid": "python-4-1428", "seg": [ [ [ @@ -67313,14 +78822,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6932291666666667, + "max": 0.69375 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-255", + "uuid": "python-3-256", "seg": [ [ [ @@ -67328,7 +78840,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.690625, + "max": 0.69375 + }, "related_data": {} } } @@ -67342,16 +78857,20 @@ { "规划时的灵活性": { "data": { - "uuid": "python-5-1405", + "uuid": "python-5-1412", "seg": [ [ [ "规划", - "灵活性" + "灵活性", + "规划时" ] ] ], - "level": "1", + "level": { + "min": 0.69375, + "max": 0.6938244047619048 + }, "related_data": {} } } @@ -67359,7 +78878,7 @@ { "可变位置参数": { "data": { - "uuid": "python-5-1406", + "uuid": "python-5-1413", "seg": [ [ [ @@ -67369,13 +78888,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6938244047619048, + "max": 0.6938988095238094 + }, "related_data": { "qa": { "data_id": [ - "8_7425110_53386302", - "8_7456545_53440359", - "8_7399447_53346657" + "8_7425110_53386302@8", + "8_7456545_53440359@8", + "8_7399447_53346657@8" ] } } @@ -67385,17 +78907,21 @@ { "可变关键字参数": { "data": { - "uuid": "python-5-1407", + "uuid": "python-5-1414", "seg": [ [ [ "可变", "关键字", - "参数" + "参数", + "关键字参数" ] ] ], - "level": "1", + "level": { + "min": 0.6938988095238094, + "max": 0.6939732142857142 + }, "related_data": {} } } @@ -67403,7 +78929,7 @@ { "组合不同类型的参数": { "data": { - "uuid": "python-5-1408", + "uuid": "python-5-1415", "seg": [ [ [ @@ -67413,11 +78939,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6939732142857142, + "max": 0.694047619047619 + }, "related_data": { "qa": { "data_id": [ - "8_7414950_53368159" + "8_7414950_53368159@8" ] } } @@ -67427,7 +78956,7 @@ { "调用具有可变参数的函数": { "data": { - "uuid": "python-5-1409", + "uuid": "python-5-1416", "seg": [ [ [ @@ -67438,12 +78967,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.694047619047619, + "max": 0.6941220238095238 + }, "related_data": { "qa": { "data_id": [ - "8_697921_584217", - "8_7400569_53348550" + "8_697921_584217@8", + "8_7400569_53348550@8" ] } } @@ -67453,7 +78985,7 @@ { "传递参数": { "data": { - "uuid": "python-5-1410", + "uuid": "python-5-1417", "seg": [ [ [ @@ -67462,20 +78994,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6941220238095238, + "max": 0.6941964285714285 + }, "related_data": { "qa": { "data_id": [ - "8_661908_477269", - "8_683841_540603", - "8_7426094_53388825", - "8_7408842_53359041", - "8_7462931_53448753", - "8_7436298_53407886", - "8_1102041_1316448", - "8_665808_483661", - "8_1101907_1316391", - "8_691682_564613" + "8_661908_477269@8", + "8_683841_540603@8", + "8_7426094_53388825@8", + "8_7408842_53359041@8", + "8_7462931_53448753@8", + "8_7436298_53407886@8", + "8_1102041_1316448@8", + "8_665808_483661@8", + "8_1101907_1316391@8", + "8_691682_564613@8" ] } } @@ -67485,20 +79020,23 @@ { "自省": { "data": { - "uuid": "python-5-1411", + "uuid": "python-5-1418", "seg": [ [ [] ] ], - "level": "1", + "level": { + "min": 0.6941964285714285, + "max": 0.6942708333333333 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1416", + "uuid": "python-4-1429", "seg": [ [ [ @@ -67506,7 +79044,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.69375, + "max": 0.6942708333333333 + }, "related_data": {} } } @@ -67517,7 +79058,7 @@ { "闭包": { "data": { - "uuid": "python-5-1412", + "uuid": "python-5-1419", "seg": [ [ [ @@ -67526,7 +79067,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6942708333333333, + "max": 0.6944010416666666 + }, "related_data": {} } } @@ -67534,7 +79078,7 @@ { "包装器": { "data": { - "uuid": "python-5-1413", + "uuid": "python-5-1420", "seg": [ [ [ @@ -67543,11 +79087,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6944010416666666, + "max": 0.69453125 + }, "related_data": { "qa": { "data_id": [ - "8_7456975_53441583" + "8_7456975_53441583@8" ] } } @@ -67557,22 +79104,26 @@ { "带参数的装饰器": { "data": { - "uuid": "python-5-1414", + "uuid": "python-5-1421", "seg": [ [ [ "带", "参数", "装饰", - "器" + "器", + "装饰器" ] ] ], - "level": "1", + "level": { + "min": 0.69453125, + "max": 0.6946614583333334 + }, "related_data": { "qa": { "data_id": [ - "8_7439759_53414855" + "8_7439759_53414855@8" ] } } @@ -67582,34 +79133,43 @@ { "带参数或不带参数的装饰器": { "data": { - "uuid": "python-5-1415", + "uuid": "python-5-1422", "seg": [ [ [ "带", "参数", "装饰", - "器" + "器", + "不带", + "装饰器" ] ] ], - "level": "1", + "level": { + "min": 0.6946614583333334, + "max": 0.6947916666666667 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1417", + "uuid": "python-4-1430", "seg": [ [ [ "装饰", - "器" + "器", + "装饰器" ] ] ], - "level": "1", + "level": { + "min": 0.6942708333333333, + "max": 0.6947916666666667 + }, "related_data": {} } } @@ -67620,7 +79180,7 @@ { "提取样板": { "data": { - "uuid": "python-5-1416", + "uuid": "python-5-1423", "seg": [ [ [ @@ -67629,7 +79189,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6947916666666667, + "max": 0.6950520833333333 + }, "related_data": {} } } @@ -67637,24 +79200,28 @@ { "用装饰器进行注解": { "data": { - "uuid": "python-5-1417", + "uuid": "python-5-1424", "seg": [ [ [ "装饰", "器", - "注解" + "注解", + "装饰器" ] ] ], - "level": "1", + "level": { + "min": 0.6950520833333333, + "max": 0.6953125 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1418", + "uuid": "python-4-1431", "seg": [ [ [ @@ -67663,7 +79230,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6947916666666667, + "max": 0.6953125 + }, "related_data": {} } } @@ -67671,7 +79241,7 @@ { "生成器": { "data": { - "uuid": "python-4-1419", + "uuid": "python-4-1432", "seg": [ [ [ @@ -67679,7 +79249,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6953125, + "max": 0.6958333333333333 + }, "related_data": {} } } @@ -67687,7 +79260,7 @@ { "lambda": { "data": { - "uuid": "python-4-1420", + "uuid": "python-4-1433", "seg": [ [ [ @@ -67695,15 +79268,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6958333333333333, + "max": 0.6963541666666667 + }, "related_data": { "qa": { "data_id": [ - "8_7395146_53337257", - "8_1063329_1261255", - "8_1071676_1273970", - "8_7396015_53339152", - "8_695393_577863" + "8_695393_577863@8" ] } } @@ -67716,17 +79288,22 @@ { "标识对象类型": { "data": { - "uuid": "python-5-1418", + "uuid": "python-5-1425", "seg": [ [ [ "标识", "对象", - "类型" + "类型", + "标识对象", + "对象类型" ] ] ], - "level": "1", + "level": { + "min": 0.6963541666666667, + "max": 0.6965277777777779 + }, "related_data": {} } } @@ -67734,7 +79311,7 @@ { "模块和软件包": { "data": { - "uuid": "python-5-1419", + "uuid": "python-5-1426", "seg": [ [ [ @@ -67745,7 +79322,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6965277777777779, + "max": 0.6967013888888889 + }, "related_data": {} } } @@ -67756,7 +79336,7 @@ { "描述函数的作用": { "data": { - "uuid": "python-6-223", + "uuid": "python-6-222", "seg": [ [ [ @@ -67766,7 +79346,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6967013888888889, + "max": 0.6967592592592593 + }, "related_data": {} } } @@ -67774,7 +79357,7 @@ { "返回值": { "data": { - "uuid": "python-6-224", + "uuid": "python-6-223", "seg": [ [ [ @@ -67782,7 +79365,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6967592592592593, + "max": 0.6968171296296296 + }, "related_data": {} } } @@ -67790,7 +79376,7 @@ { "包含预期的异常": { "data": { - "uuid": "python-6-225", + "uuid": "python-6-224", "seg": [ [ [ @@ -67800,11 +79386,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6968171296296296, + "max": 0.696875 + }, "related_data": { "qa": { "data_id": [ - "8_7443370_53420823" + "8_7443370_53420823@8" ] } } @@ -67813,36 +79402,43 @@ } ], "data": { - "uuid": "python-5-1420", + "uuid": "python-5-1427", "seg": [ [ [ "文档", - "字符串" + "字符串", + "文档字符串" ] ] ], - "level": "1", + "level": { + "min": 0.6967013888888889, + "max": 0.696875 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1421", + "uuid": "python-4-1434", "seg": [ [ [] ] ], - "level": "1", + "level": { + "min": 0.6963541666666667, + "max": 0.696875 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-256", + "uuid": "python-3-257", "seg": [ [ [ @@ -67850,7 +79446,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.69375, + "max": 0.696875 + }, "related_data": {} } } @@ -67864,7 +79463,7 @@ { "多重继承": { "data": { - "uuid": "python-5-1421", + "uuid": "python-5-1428", "seg": [ [ [ @@ -67872,13 +79471,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.696875, + "max": 0.69703125 + }, "related_data": { "qa": { "data_id": [ - "8_7426882_53390933", - "8_7399787_53347321", - "8_7419306_53376360" + "8_7426882_53390933@8", + "8_7399787_53347321@8", + "8_7419306_53376360@8" ] } } @@ -67888,7 +79490,7 @@ { "方法解析顺序": { "data": { - "uuid": "python-5-1422", + "uuid": "python-5-1429", "seg": [ [ [ @@ -67898,7 +79500,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.69703125, + "max": 0.6971875000000001 + }, "related_data": {} } } @@ -67906,7 +79511,7 @@ { "使用super函数将控制权传递给其他类": { "data": { - "uuid": "python-5-1423", + "uuid": "python-5-1430", "seg": [ [ [ @@ -67914,15 +79519,19 @@ "函数", "控制权", "传递", - "类" + "类", + "将控制权" ] ] ], - "level": "1", + "level": { + "min": 0.6971875000000001, + "max": 0.69734375 + }, "related_data": { "qa": { "data_id": [ - "8_1091303_1298651" + "8_1091303_1298651@8" ] } } @@ -67932,20 +79541,23 @@ { "自省": { "data": { - "uuid": "python-5-1424", + "uuid": "python-5-1431", "seg": [ [ [] ] ], - "level": "1", + "level": { + "min": 0.69734375, + "max": 0.6975 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1422", + "uuid": "python-4-1435", "seg": [ [ [ @@ -67953,7 +79565,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.696875, + "max": 0.6975 + }, "related_data": {} } } @@ -67964,7 +79579,7 @@ { "在运行时创建类": { "data": { - "uuid": "python-5-1425", + "uuid": "python-5-1432", "seg": [ [ [ @@ -67974,17 +79589,20 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6975, + "max": 0.6977083333333334 + }, "related_data": { "qa": { "data_id": [ - "8_7396298_53339736", - "8_7425487_53386943", - "8_7431278_53399484", - "8_7421178_53379518", - "8_695356_577765", - "8_7448147_53428159", - "8_1056927_1254094" + "8_7396298_53339736@8", + "8_7425487_53386943@8", + "8_7431278_53399484@8", + "8_7421178_53379518@8", + "8_695356_577765@8", + "8_7448147_53428159@8", + "8_1056927_1254094@8" ] } } @@ -67994,7 +79612,7 @@ { "元类": { "data": { - "uuid": "python-5-1426", + "uuid": "python-5-1433", "seg": [ [ [ @@ -68002,20 +79620,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6977083333333334, + "max": 0.6979166666666666 + }, "related_data": { "qa": { "data_id": [ - "8_697693_583641", - "8_7426705_53390621", - "8_7452227_53434357", - "8_733469_800699", - "8_7455352_53438211", - "8_1080794_1286361", - "8_730467_745426", - "8_7443007_53420032", - "8_178099_61937", - "8_7426568_53390093" + "8_697693_583641@8", + "8_7426705_53390621@8", + "8_7452227_53434357@8", + "8_733469_800699@8", + "8_7455352_53438211@8", + "8_1080794_1286361@8", + "8_730467_745426@8", + "8_7443007_53420032@8", + "8_178099_61937@8", + "8_7426568_53390093@8" ] } } @@ -68025,24 +79646,28 @@ { "控制命名空间": { "data": { - "uuid": "python-5-1427", + "uuid": "python-5-1434", "seg": [ [ [ "控制", "命名", - "空间" + "空间", + "命名空间" ] ] ], - "level": "1", + "level": { + "min": 0.6979166666666666, + "max": 0.698125 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1423", + "uuid": "python-4-1436", "seg": [ [ [ @@ -68051,7 +79676,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6975, + "max": 0.698125 + }, "related_data": {} } } @@ -68062,7 +79690,7 @@ { "属性": { "data": { - "uuid": "python-5-1428", + "uuid": "python-5-1435", "seg": [ [ [ @@ -68070,7 +79698,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.698125, + "max": 0.6984375 + }, "related_data": {} } } @@ -68078,7 +79709,7 @@ { "描述器": { "data": { - "uuid": "python-5-1429", + "uuid": "python-5-1436", "seg": [ [ [ @@ -68087,11 +79718,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6984375, + "max": 0.69875 + }, "related_data": { "qa": { "data_id": [ - "8_7436146_53407436" + "8_7436146_53407436@8" ] } } @@ -68100,7 +79734,7 @@ } ], "data": { - "uuid": "python-4-1424", + "uuid": "python-4-1437", "seg": [ [ [ @@ -68109,7 +79743,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.698125, + "max": 0.69875 + }, "related_data": {} } } @@ -68120,16 +79757,20 @@ { "非绑定方法": { "data": { - "uuid": "python-5-1430", + "uuid": "python-5-1437", "seg": [ [ [ "绑定", - "方法" + "方法", + "非绑定" ] ] ], - "level": "1", + "level": { + "min": 0.69875, + "max": 0.6990624999999999 + }, "related_data": {} } } @@ -68137,7 +79778,7 @@ { "绑定方法": { "data": { - "uuid": "python-5-1431", + "uuid": "python-5-1438", "seg": [ [ [ @@ -68146,20 +79787,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6990624999999999, + "max": 0.699375 + }, "related_data": { "qa": { "data_id": [ - "8_7424567_53385666", - "8_7427174_53391248", - "8_7433452_53403694", - "8_7396716_53340826", - "8_830555_929770", - "8_7453021_53435572", - "8_7460684_53445858", - "8_7463001_53448767", - "8_7413490_53365497", - "8_752458_806553" + "8_7424567_53385666@8", + "8_7427174_53391248@8", + "8_7433452_53403694@8", + "8_7396716_53340826@8", + "8_830555_929770@8", + "8_7453021_53435572@8", + "8_7460684_53445858@8", + "8_7463001_53448767@8", + "8_7413490_53365497@8", + "8_752458_806553@8" ] } } @@ -68168,7 +79812,7 @@ } ], "data": { - "uuid": "python-4-1425", + "uuid": "python-4-1438", "seg": [ [ [ @@ -68176,7 +79820,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.69875, + "max": 0.699375 + }, "related_data": {} } } @@ -68187,7 +79834,7 @@ { "处理成员变量": { "data": { - "uuid": "python-5-1432", + "uuid": "python-5-1439", "seg": [ [ [ @@ -68196,7 +79843,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.699375, + "max": 0.6996875 + }, "related_data": {} } } @@ -68223,7 +79873,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6996875, + "max": 0.6997265625 + }, "related_data": {} } } @@ -68242,27 +79895,34 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6997265625, + "max": 0.699765625 + }, "related_data": {} } } } ], "data": { - "uuid": "python-6-226", + "uuid": "python-6-225", "seg": [ [ [ "字节", - "字符串" + "字符串", + "字节字符串" ] ] ], - "level": "1", + "level": { + "min": 0.6996875, + "max": 0.699765625 + }, "related_data": { "qa": { "data_id": [ - "8_856351_981509" + "8_856351_981509@8" ] } } @@ -68283,14 +79943,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.699765625, + "max": 0.6998046874999999 + }, "related_data": { "qa": { "data_id": [ - "8_200319_120483", - "8_7431338_53399569", - "8_717036_710275", - "8_7414933_53368053" + "8_200319_120483@8", + "8_7431338_53399569@8", + "8_717036_710275@8", + "8_7414933_53368053@8" ] } } @@ -68308,11 +79971,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6998046874999999, + "max": 0.69984375 + }, "related_data": { "qa": { "data_id": [ - "8_7450298_53430844" + "8_7450298_53430844@8" ] } } @@ -68321,7 +79987,7 @@ } ], "data": { - "uuid": "python-6-227", + "uuid": "python-6-226", "seg": [ [ [ @@ -68329,7 +79995,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.699765625, + "max": 0.69984375 + }, "related_data": {} } } @@ -68337,7 +80006,7 @@ { "简单的替换": { "data": { - "uuid": "python-6-228", + "uuid": "python-6-227", "seg": [ [ [ @@ -68345,13 +80014,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.69984375, + "max": 0.699921875 + }, "related_data": { "qa": { "data_id": [ - "8_2165_5043", - "8_1084382_1290976", - "8_7460867_53445985" + "8_2165_5043@8", + "8_1084382_1290976@8", + "8_7460867_53445985@8" ] } } @@ -68374,7 +80046,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.699921875, + "max": 0.6999375 + }, "related_data": {} } } @@ -68388,11 +80063,16 @@ [ "区分", "字符串", - "类型" + "类型", + "区分字符串", + "字符串类型" ] ] ], - "level": "1", + "level": { + "min": 0.6999375, + "max": 0.699953125 + }, "related_data": {} } } @@ -68406,11 +80086,16 @@ [ "标准", "格式", - "规范" + "规范", + "标准格式", + "格式规范" ] ] ], - "level": "1", + "level": { + "min": 0.699953125, + "max": 0.69996875 + }, "related_data": {} } } @@ -68428,12 +80113,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.69996875, + "max": 0.699984375 + }, "related_data": { "qa": { "data_id": [ - "8_7451087_53432172", - "8_760554_817954" + "8_7451087_53432172@8", + "8_760554_817954@8" ] } } @@ -68449,18 +80137,22 @@ [ "自定义", "格式", - "规范" + "规范", + "格式规范" ] ] ], - "level": "1", + "level": { + "min": 0.699984375, + "max": 0.7 + }, "related_data": {} } } } ], "data": { - "uuid": "python-6-229", + "uuid": "python-6-228", "seg": [ [ [ @@ -68468,14 +80160,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.699921875, + "max": 0.7 + }, "related_data": {} } } } ], "data": { - "uuid": "python-5-1433", + "uuid": "python-5-1440", "seg": [ [ [ @@ -68483,27 +80178,34 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6996875, + "max": 0.7 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1426", + "uuid": "python-4-1439", "seg": [ [ [ "魔术", - "方法" + "方法", + "魔术方法" ] ] ], - "level": "1", + "level": { + "min": 0.699375, + "max": 0.7 + }, "related_data": { "qa": { "data_id": [ - "8_7416213_53370263" + "8_7416213_53370263@8" ] } } @@ -68512,7 +80214,7 @@ } ], "data": { - "uuid": "python-3-257", + "uuid": "python-3-258", "seg": [ [ [ @@ -68520,7 +80222,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.696875, + "max": 0.7 + }, "related_data": {} } } @@ -68534,7 +80239,7 @@ { "数学运算": { "data": { - "uuid": "python-5-1434", + "uuid": "python-5-1441", "seg": [ [ [ @@ -68543,7 +80248,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7, + "max": 0.7001488095238095 + }, "related_data": {} } } @@ -68551,7 +80259,7 @@ { "按位运算": { "data": { - "uuid": "python-5-1435", + "uuid": "python-5-1442", "seg": [ [ [ @@ -68560,14 +80268,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7001488095238095, + "max": 0.700297619047619 + }, "related_data": { "qa": { "data_id": [ - "8_7440608_53416042", - "8_7449500_53429646", - "8_7430509_53397609", - "8_7449351_53429676" + "8_7440608_53416042@8", + "8_7449500_53429646@8", + "8_7430509_53397609@8", + "8_7449351_53429676@8" ] } } @@ -68577,7 +80288,7 @@ { "运算符的变体": { "data": { - "uuid": "python-5-1436", + "uuid": "python-5-1443", "seg": [ [ [ @@ -68586,14 +80297,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.700297619047619, + "max": 0.7004464285714286 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1427", + "uuid": "python-4-1440", "seg": [ [ [ @@ -68601,7 +80315,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7, + "max": 0.7004464285714286 + }, "related_data": {} } } @@ -68612,7 +80329,7 @@ { "符号运算": { "data": { - "uuid": "python-5-1437", + "uuid": "python-5-1444", "seg": [ [ [ @@ -68621,12 +80338,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7004464285714286, + "max": 0.7006696428571428 + }, "related_data": { "qa": { "data_id": [ - "8_7425125_53386330", - "8_7442730_53419672" + "8_7425125_53386330@8", + "8_7442730_53419672@8" ] } } @@ -68636,22 +80356,26 @@ { "比较运算": { "data": { - "uuid": "python-5-1438", + "uuid": "python-5-1445", "seg": [ [ [ - "运算" + "运算", + "比较运算" ] ] ], - "level": "1", + "level": { + "min": 0.7006696428571428, + "max": 0.7008928571428571 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1428", + "uuid": "python-4-1441", "seg": [ [ [ @@ -68659,7 +80383,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7004464285714286, + "max": 0.7008928571428571 + }, "related_data": {} } } @@ -68667,7 +80394,7 @@ { "可迭代对象": { "data": { - "uuid": "python-4-1429", + "uuid": "python-4-1442", "seg": [ [ [ @@ -68676,7 +80403,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7008928571428571, + "max": 0.7013392857142857 + }, "related_data": {} } } @@ -68684,7 +80414,7 @@ { "序列": { "data": { - "uuid": "python-4-1430", + "uuid": "python-4-1443", "seg": [ [ [ @@ -68692,7 +80422,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7013392857142857, + "max": 0.7017857142857142 + }, "related_data": {} } } @@ -68700,7 +80433,7 @@ { "映射": { "data": { - "uuid": "python-4-1431", + "uuid": "python-4-1444", "seg": [ [ [ @@ -68708,7 +80441,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7017857142857142, + "max": 0.7022321428571429 + }, "related_data": {} } } @@ -68716,7 +80452,7 @@ { "_call_方法": { "data": { - "uuid": "python-4-1432", + "uuid": "python-4-1445", "seg": [ [ [ @@ -68725,7 +80461,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7022321428571429, + "max": 0.7026785714285714 + }, "related_data": {} } } @@ -68733,7 +80472,7 @@ { "上下文管理器": { "data": { - "uuid": "python-4-1433", + "uuid": "python-4-1446", "seg": [ [ [ @@ -68742,14 +80481,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7026785714285714, + "max": 0.703125 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-258", + "uuid": "python-3-259", "seg": [ [ [ @@ -68758,7 +80500,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7, + "max": 0.703125 + }, "related_data": {} } } @@ -68769,17 +80514,22 @@ { "命名空间字典": { "data": { - "uuid": "python-4-1434", + "uuid": "python-4-1447", "seg": [ [ [ "命名", "空间", - "字典" + "字典", + "命名空间", + "空间字典" ] ] ], - "level": "1", + "level": { + "min": 0.703125, + "max": 0.70390625 + }, "related_data": {} } } @@ -68790,7 +80540,7 @@ { "引用计数": { "data": { - "uuid": "python-5-1439", + "uuid": "python-5-1446", "seg": [ [ [ @@ -68799,7 +80549,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.70390625, + "max": 0.7041666666666666 + }, "related_data": {} } } @@ -68807,7 +80560,7 @@ { "循环引用": { "data": { - "uuid": "python-5-1440", + "uuid": "python-5-1447", "seg": [ [ [ @@ -68816,11 +80569,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7041666666666666, + "max": 0.7044270833333334 + }, "related_data": { "qa": { "data_id": [ - "8_728538_740043" + "8_728538_740043@8" ] } } @@ -68830,7 +80586,7 @@ { "弱引用": { "data": { - "uuid": "python-5-1441", + "uuid": "python-5-1448", "seg": [ [ [ @@ -68839,14 +80595,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7044270833333334, + "max": 0.7046875 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1435", + "uuid": "python-4-1448", "seg": [ [ [ @@ -68855,7 +80614,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.70390625, + "max": 0.7046875 + }, "related_data": {} } } @@ -68863,7 +80625,7 @@ { "Python对象的序列化": { "data": { - "uuid": "python-4-1436", + "uuid": "python-4-1449", "seg": [ [ [ @@ -68873,7 +80635,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7046875, + "max": 0.7054687500000001 + }, "related_data": {} } } @@ -68884,7 +80649,7 @@ { "浅层复制": { "data": { - "uuid": "python-5-1442", + "uuid": "python-5-1449", "seg": [ [ [ @@ -68893,11 +80658,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7054687500000001, + "max": 0.7058593750000001 + }, "related_data": { "qa": { "data_id": [ - "8_7435153_53405695" + "8_7435153_53405695@8" ] } } @@ -68907,7 +80675,7 @@ { "深层复制": { "data": { - "uuid": "python-5-1443", + "uuid": "python-5-1450", "seg": [ [ [ @@ -68916,11 +80684,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7058593750000001, + "max": 0.70625 + }, "related_data": { "qa": { "data_id": [ - "8_168687_44115" + "8_168687_44115@8" ] } } @@ -68929,7 +80700,7 @@ } ], "data": { - "uuid": "python-4-1437", + "uuid": "python-4-1450", "seg": [ [ [ @@ -68937,14 +80708,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7054687500000001, + "max": 0.70625 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-259", + "uuid": "python-3-260", "seg": [ [ [ @@ -68953,7 +80727,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.703125, + "max": 0.70625 + }, "related_data": {} } } @@ -68964,7 +80741,7 @@ { "恰当地命名": { "data": { - "uuid": "python-4-1438", + "uuid": "python-4-1451", "seg": [ [ [ @@ -68973,7 +80750,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.70625, + "max": 0.70703125 + }, "related_data": {} } } @@ -68981,7 +80761,7 @@ { "注释": { "data": { - "uuid": "python-4-1439", + "uuid": "python-4-1452", "seg": [ [ [ @@ -68989,7 +80769,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.70703125, + "max": 0.7078125 + }, "related_data": {} } } @@ -69000,7 +80783,7 @@ { "安装与配置": { "data": { - "uuid": "python-5-1444", + "uuid": "python-5-1451", "seg": [ [ [ @@ -69011,7 +80794,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7078125, + "max": 0.7080729166666666 + }, "related_data": {} } } @@ -69019,7 +80805,7 @@ { "教程": { "data": { - "uuid": "python-5-1445", + "uuid": "python-5-1452", "seg": [ [ [ @@ -69027,12 +80813,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7080729166666666, + "max": 0.7083333333333334 + }, "related_data": { "qa": { "data_id": [ - "8_1095911_1308616", - "8_7441964_53418595" + "8_1095911_1308616@8", + "8_7441964_53418595@8" ] } } @@ -69042,7 +80831,7 @@ { "参考文档": { "data": { - "uuid": "python-5-1446", + "uuid": "python-5-1453", "seg": [ [ [ @@ -69051,14 +80840,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7083333333333334, + "max": 0.70859375 + }, "related_data": { "qa": { "data_id": [ - "8_1078235_1282634", - "8_750535_803650", - "8_7444935_53423492", - "8_1078229_1282604" + "8_1078235_1282634@8", + "8_750535_803650@8", + "8_7444935_53423492@8", + "8_1078229_1282604@8" ] } } @@ -69067,7 +80859,7 @@ } ], "data": { - "uuid": "python-4-1440", + "uuid": "python-4-1453", "seg": [ [ [ @@ -69076,7 +80868,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7078125, + "max": 0.70859375 + }, "related_data": {} } } @@ -69087,7 +80882,7 @@ { "链接": { "data": { - "uuid": "python-5-1447", + "uuid": "python-5-1454", "seg": [ [ [ @@ -69095,7 +80890,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.70859375, + "max": 0.708984375 + }, "related_data": {} } } @@ -69103,7 +80901,7 @@ { "Sphinx": { "data": { - "uuid": "python-5-1448", + "uuid": "python-5-1455", "seg": [ [ [ @@ -69111,14 +80909,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.708984375, + "max": 0.709375 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1441", + "uuid": "python-4-1454", "seg": [ [ [ @@ -69129,14 +80930,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.70859375, + "max": 0.709375 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-260", + "uuid": "python-3-261", "seg": [ [ [ @@ -69145,7 +80949,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.70625, + "max": 0.709375 + }, "related_data": {} } } @@ -69156,7 +80963,7 @@ { "测试驱动开发": { "data": { - "uuid": "python-4-1442", + "uuid": "python-4-1455", "seg": [ [ [ @@ -69165,11 +80972,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.709375, + "max": 0.71015625 + }, "related_data": { "qa": { "data_id": [ - "8_7451499_53432790" + "8_7451499_53432790@8" ] } } @@ -69179,10 +80989,30 @@ { "doctest": { "children": [ + { + "格式化代码": { + "data": { + "uuid": "python-5-1456", + "seg": [ + [ + [ + "格式化", + "格式化代码" + ] + ] + ], + "level": { + "min": 0.71015625, + "max": 0.7103515625000001 + }, + "related_data": {} + } + } + }, { "呈现输出": { "data": { - "uuid": "python-5-1449", + "uuid": "python-5-1457", "seg": [ [ [ @@ -69191,7 +81021,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7103515625000001, + "max": 0.710546875 + }, "related_data": {} } } @@ -69199,7 +81032,7 @@ { "与文档集成": { "data": { - "uuid": "python-5-1450", + "uuid": "python-5-1458", "seg": [ [ [], @@ -69209,7 +81042,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.710546875, + "max": 0.7107421875 + }, "related_data": {} } } @@ -69217,7 +81053,7 @@ { "运行测试": { "data": { - "uuid": "python-5-1451", + "uuid": "python-5-1459", "seg": [ [ [ @@ -69225,14 +81061,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7107421875, + "max": 0.7109375 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1443", + "uuid": "python-4-1456", "seg": [ [ [ @@ -69240,7 +81079,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.71015625, + "max": 0.7109375 + }, "related_data": {} } } @@ -69251,7 +81093,7 @@ { "初始化配置": { "data": { - "uuid": "python-5-1452", + "uuid": "python-5-1460", "seg": [ [ [ @@ -69260,7 +81102,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7109375, + "max": 0.7110677083333333 + }, "related_data": {} } } @@ -69268,7 +81113,7 @@ { "编写测试": { "data": { - "uuid": "python-5-1453", + "uuid": "python-5-1461", "seg": [ [ [ @@ -69276,20 +81121,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7110677083333333, + "max": 0.7111979166666667 + }, "related_data": { "qa": { "data_id": [ - "8_990484_1157810", - "8_7440561_53415905", - "8_7454419_53437139", - "8_7446343_53425495", - "8_7447759_53427705", - "8_7452866_53435291", - "8_7438286_53411981", - "8_7443024_53420059", - "8_7450559_53431245", - "8_7443021_53420061" + "8_990484_1157810@8", + "8_7440561_53415905@8", + "8_7454419_53437139@8", + "8_7446343_53425495@8", + "8_7447759_53427705@8", + "8_7452866_53435291@8", + "8_7438286_53411981@8", + "8_7443024_53420059@8", + "8_7450559_53431245@8", + "8_7443021_53420061@8" ] } } @@ -69299,13 +81147,16 @@ { "其他比较": { "data": { - "uuid": "python-5-1454", + "uuid": "python-5-1462", "seg": [ [ [] ] ], - "level": "1", + "level": { + "min": 0.7111979166666667, + "max": 0.711328125 + }, "related_data": {} } } @@ -69313,7 +81164,7 @@ { "测试异常": { "data": { - "uuid": "python-5-1455", + "uuid": "python-5-1463", "seg": [ [ [ @@ -69321,7 +81172,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.711328125, + "max": 0.7114583333333333 + }, "related_data": {} } } @@ -69329,16 +81183,20 @@ { "测试对象标识": { "data": { - "uuid": "python-5-1456", + "uuid": "python-5-1464", "seg": [ [ [ "对象", - "标识" + "标识", + "对象标识" ] ] ], - "level": "1", + "level": { + "min": 0.7114583333333333, + "max": 0.7115885416666666 + }, "related_data": {} } } @@ -69346,7 +81204,7 @@ { "释放资源": { "data": { - "uuid": "python-5-1457", + "uuid": "python-5-1465", "seg": [ [ [ @@ -69355,14 +81213,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7115885416666666, + "max": 0.71171875 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1444", + "uuid": "python-4-1457", "seg": [ [ [ @@ -69371,7 +81232,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7109375, + "max": 0.71171875 + }, "related_data": {} } } @@ -69379,7 +81243,7 @@ { "提供自定义的测试类": { "data": { - "uuid": "python-4-1445", + "uuid": "python-4-1458", "seg": [ [ [ @@ -69389,20 +81253,26 @@ ] ] ], - "level": "1", + "level": { + "min": 0.71171875, + "max": 0.7125 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-261", + "uuid": "python-3-262", "seg": [ [ [] ] ], - "level": "1", + "level": { + "min": 0.709375, + "max": 0.7125 + }, "related_data": {} } } @@ -69416,7 +81286,7 @@ { "GNU通用公共许可证": { "data": { - "uuid": "python-5-1458", + "uuid": "python-5-1466", "seg": [ [ [ @@ -69427,7 +81297,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7125, + "max": 0.7127083333333334 + }, "related_data": {} } } @@ -69435,7 +81308,7 @@ { "Affero通用公共许可证": { "data": { - "uuid": "python-5-1459", + "uuid": "python-5-1467", "seg": [ [ [ @@ -69446,11 +81319,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7127083333333334, + "max": 0.7129166666666666 + }, "related_data": { "qa": { "data_id": [ - "8_717031_835269" + "8_717031_835269@8" ] } } @@ -69460,7 +81336,7 @@ { "GNU宽通用公共许可证": { "data": { - "uuid": "python-5-1460", + "uuid": "python-5-1468", "seg": [ [ [ @@ -69472,7 +81348,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7129166666666666, + "max": 0.713125 + }, "related_data": {} } } @@ -69480,18 +81359,22 @@ { "伯克利软件发行许可证": { "data": { - "uuid": "python-5-1461", + "uuid": "python-5-1469", "seg": [ [ [ "伯克利", "软件", "发行", - "许可证" + "许可证", + "伯克利软件" ] ] ], - "level": "1", + "level": { + "min": 0.713125, + "max": 0.7133333333333333 + }, "related_data": {} } } @@ -69499,7 +81382,7 @@ { "其他许可证": { "data": { - "uuid": "python-5-1462", + "uuid": "python-5-1470", "seg": [ [ [ @@ -69507,14 +81390,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7133333333333333, + "max": 0.7135416666666666 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1446", + "uuid": "python-4-1459", "seg": [ [ [ @@ -69522,7 +81408,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7125, + "max": 0.7135416666666666 + }, "related_data": {} } } @@ -69533,7 +81422,7 @@ { "setup.py": { "data": { - "uuid": "python-5-1463", + "uuid": "python-5-1471", "seg": [ [ [ @@ -69542,20 +81431,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7135416666666666, + "max": 0.7138888888888889 + }, "related_data": { "qa": { "data_id": [ - "8_7398362_53344427", - "8_7460526_53445603", - "8_662603_478562", - "8_7398986_53345718", - "8_7456539_53440726", - "8_72609_36651", - "8_7406993_53356714", - "8_699289_587335", - "8_1060961_1258745", - "8_648615_453820" + "8_7398362_53344427@8", + "8_7460526_53445603@8", + "8_662603_478562@8", + "8_7398986_53345718@8", + "8_7456539_53440726@8", + "8_72609_36651@8", + "8_7406993_53356714@8", + "8_699289_587335@8", + "8_1060961_1258745@8", + "8_648615_453820@8" ] } } @@ -69565,7 +81457,7 @@ { "MANIFEST.in": { "data": { - "uuid": "python-5-1464", + "uuid": "python-5-1472", "seg": [ [ [ @@ -69574,11 +81466,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7138888888888889, + "max": 0.7142361111111111 + }, "related_data": { "qa": { "data_id": [ - "8_7408921_53359142" + "8_7414886_53368020@8", + "8_7408921_53359142@8", + "8_648746_456316@8", + "8_869416_1249590@8", + "8_1093416_1302840@8" ] } } @@ -69588,7 +81487,7 @@ { "sdist命令": { "data": { - "uuid": "python-5-1465", + "uuid": "python-5-1473", "seg": [ [ [ @@ -69597,14 +81496,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7142361111111111, + "max": 0.7145833333333333 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1447", + "uuid": "python-4-1460", "seg": [ [ [ @@ -69612,7 +81514,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7135416666666666, + "max": 0.7145833333333333 + }, "related_data": {} } } @@ -69620,7 +81525,7 @@ { "发布": { "data": { - "uuid": "python-4-1448", + "uuid": "python-4-1461", "seg": [ [ [ @@ -69628,14 +81533,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7145833333333333, + "max": 0.715625 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-262", + "uuid": "python-3-263", "seg": [ [ [ @@ -69643,7 +81551,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7125, + "max": 0.715625 + }, "related_data": {} } } @@ -69657,18 +81568,23 @@ { "声明性编程简介": { "data": { - "uuid": "python-5-1466", + "uuid": "python-5-1474", "seg": [ [ [ "声明", "性", "编程", - "简介" + "简介", + "声明性", + "性编程" ] ] ], - "level": "1", + "level": { + "min": 0.715625, + "max": 0.7159374999999999 + }, "related_data": {} } } @@ -69676,36 +81592,46 @@ { "是否构建声明性框架": { "data": { - "uuid": "python-5-1467", + "uuid": "python-5-1475", "seg": [ [ [ "构建", "声明", "性", - "框架" + "框架", + "声明性", + "性框架" ] ] ], - "level": "2", + "level": { + "min": 0.7159374999999999, + "max": 0.7162499999999999 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1449", + "uuid": "python-4-1462", "seg": [ [ [ "构建", "声明", "性", - "框架" + "框架", + "声明性", + "性框架" ] ] ], - "level": "1", + "level": { + "min": 0.715625, + "max": 0.7162499999999999 + }, "related_data": {} } } @@ -69716,7 +81642,7 @@ { "管理选项": { "data": { - "uuid": "python-5-1468", + "uuid": "python-5-1476", "seg": [ [ [ @@ -69725,7 +81651,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7162499999999999, + "max": 0.716375 + }, "related_data": {} } } @@ -69733,17 +81662,22 @@ { "定义字段": { "data": { - "uuid": "python-5-1469", + "uuid": "python-5-1477", "seg": [ [ [ "定义", "字", - "段" + "段", + "定义字", + "字段" ] ] ], - "level": "1", + "level": { + "min": 0.716375, + "max": 0.7164999999999999 + }, "related_data": {} } } @@ -69751,7 +81685,7 @@ { "将字段附加到类": { "data": { - "uuid": "python-5-1470", + "uuid": "python-5-1478", "seg": [ [ [ @@ -69761,7 +81695,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7164999999999999, + "max": 0.716625 + }, "related_data": {} } } @@ -69769,7 +81706,7 @@ { "添加元类": { "data": { - "uuid": "python-5-1471", + "uuid": "python-5-1479", "seg": [ [ [ @@ -69778,7 +81715,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.716625, + "max": 0.7167499999999999 + }, "related_data": {} } } @@ -69786,7 +81726,7 @@ { "整合": { "data": { - "uuid": "python-5-1472", + "uuid": "python-5-1480", "seg": [ [ [ @@ -69794,14 +81734,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7167499999999999, + "max": 0.7168749999999999 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1450", + "uuid": "python-4-1463", "seg": [ [ [ @@ -69810,7 +81753,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7162499999999999, + "max": 0.7168749999999999 + }, "related_data": {} } } @@ -69821,7 +81767,7 @@ { "DeclarativeMeta.__prepare__": { "data": { - "uuid": "python-5-1473", + "uuid": "python-5-1481", "seg": [ [ [ @@ -69830,7 +81776,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7168749999999999, + "max": 0.717 + }, "related_data": {} } } @@ -69838,7 +81787,7 @@ { "Column.__init__": { "data": { - "uuid": "python-5-1474", + "uuid": "python-5-1482", "seg": [ [ [ @@ -69847,13 +81796,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.717, + "max": 0.717125 + }, "related_data": { "qa": { "data_id": [ - "8_159666_29307", - "8_7447913_53427859", - "8_680514_530615" + "8_159666_29307@8", + "8_7447913_53427859@8", + "8_680514_530615@8" ] } } @@ -69863,7 +81815,7 @@ { "Column.__new__": { "data": { - "uuid": "python-5-1475", + "uuid": "python-5-1483", "seg": [ [ [ @@ -69872,7 +81824,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.717125, + "max": 0.7172499999999999 + }, "related_data": {} } } @@ -69880,7 +81835,7 @@ { "CounterMeta.__call__": { "data": { - "uuid": "python-5-1476", + "uuid": "python-5-1484", "seg": [ [ [ @@ -69889,7 +81844,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7172499999999999, + "max": 0.717375 + }, "related_data": {} } } @@ -69897,7 +81855,7 @@ { "挑选选项": { "data": { - "uuid": "python-5-1477", + "uuid": "python-5-1485", "seg": [ [ [ @@ -69906,33 +81864,32 @@ ] ] ], - "level": "1", + "level": { + "min": 0.717375, + "max": 0.7175 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1451", + "uuid": "python-4-1464", "seg": [ [ [ "字", "段", - "排序" + "排序", + "字段" ] ] ], - "level": "1", - "related_data": { - "qa": { - "data_id": [ - "8_770447_832258", - "8_7462309_53448015", - "8_7414144_53366632" - ] - } - } + "level": { + "min": 0.7168749999999999, + "max": 0.7175 + }, + "related_data": {} } } }, @@ -69942,26 +81899,40 @@ { "StringField(字符串字段)": { "data": { - "uuid": "python-5-1478", + "uuid": "python-5-1486", "seg": [ [ [ "stringfield", "字符串", "字", - "段" + "段", + "字符串字", + "字段" ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.7175, + "max": 0.7176250000000001 + }, + "related_data": { + "qa": { + "data_id": [ + "8_770447_832258@8", + "8_7462309_53448015@8", + "8_7414144_53366632@8", + "8_7423529_53383414@8" + ] + } + } } } }, { "IntegerColumn(整数列)": { "data": { - "uuid": "python-5-1479", + "uuid": "python-5-1487", "seg": [ [ [ @@ -69971,7 +81942,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7176250000000001, + "max": 0.71775 + }, "related_data": {} } } @@ -69979,7 +81953,7 @@ { "FloatColumn(浮点数列)": { "data": { - "uuid": "python-5-1480", + "uuid": "python-5-1488", "seg": [ [ [ @@ -69989,7 +81963,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.71775, + "max": 0.717875 + }, "related_data": {} } } @@ -69997,7 +81974,7 @@ { "DecimalColumn(小数列)": { "data": { - "uuid": "python-5-1481", + "uuid": "python-5-1489", "seg": [ [ [ @@ -70005,7 +81982,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.717875, + "max": 0.718 + }, "related_data": {} } } @@ -70013,7 +81993,7 @@ { "DateColumn(日期列)": { "data": { - "uuid": "python-5-1482", + "uuid": "python-5-1490", "seg": [ [ [ @@ -70023,24 +82003,31 @@ ] ] ], - "level": "1", + "level": { + "min": 0.718, + "max": 0.718125 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1452", + "uuid": "python-4-1465", "seg": [ [ [ "构建", "字段", - "库" + "库", + "字段库" ] ] ], - "level": "1", + "level": { + "min": 0.7175, + "max": 0.718125 + }, "related_data": {} } } @@ -70051,7 +82038,7 @@ { "检查参数": { "data": { - "uuid": "python-5-1483", + "uuid": "python-5-1491", "seg": [ [ [ @@ -70060,7 +82047,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.718125, + "max": 0.71828125 + }, "related_data": {} } } @@ -70068,7 +82058,7 @@ { "填充值": { "data": { - "uuid": "python-5-1484", + "uuid": "python-5-1492", "seg": [ [ [ @@ -70077,7 +82067,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.71828125, + "max": 0.7184375000000001 + }, "related_data": {} } } @@ -70085,7 +82078,7 @@ { "读取器": { "data": { - "uuid": "python-5-1485", + "uuid": "python-5-1493", "seg": [ [ [ @@ -70093,7 +82086,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7184375000000001, + "max": 0.71859375 + }, "related_data": {} } } @@ -70101,7 +82097,7 @@ { "写入器": { "data": { - "uuid": "python-5-1486", + "uuid": "python-5-1494", "seg": [ [ [ @@ -70110,14 +82106,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.71859375, + "max": 0.71875 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1453", + "uuid": "python-4-1466", "seg": [ [ [ @@ -70126,14 +82125,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.718125, + "max": 0.71875 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-263", + "uuid": "python-3-264", "seg": [ [ [ @@ -70144,7 +82146,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.715625, + "max": 0.71875 + }, "related_data": {} } } @@ -70160,7 +82165,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.6875, + "max": 0.71875 + }, "related_data": {} } } @@ -70177,7 +82185,7 @@ { "什么是GUI": { "data": { - "uuid": "python-5-1487", + "uuid": "python-5-1495", "seg": [ [ [ @@ -70185,18 +82193,21 @@ ] ] ], - "level": "1", + "level": { + "min": 0.71875, + "max": 0.719047619047619 + }, "related_data": { "qa": { "data_id": [ - "8_7434802_53405206", - "8_7451673_53433125", - "8_7418406_53374329", - "8_7439039_53416120", - "8_668350_488565", - "8_713129_704299", - "8_718217_711805", - "8_1100557_1315375" + "8_7434802_53405206@8", + "8_7451673_53433125@8", + "8_7418406_53374329@8", + "8_7439039_53416120@8", + "8_668350_488565@8", + "8_713129_704299@8", + "8_718217_711805@8", + "8_1100557_1315375@8" ] } } @@ -70206,7 +82217,7 @@ { "常用的GUI框架": { "data": { - "uuid": "python-5-1488", + "uuid": "python-5-1496", "seg": [ [ [ @@ -70215,7 +82226,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.719047619047619, + "max": 0.7193452380952381 + }, "related_data": {} } } @@ -70223,7 +82237,7 @@ { "安装wxPython": { "data": { - "uuid": "python-5-1489", + "uuid": "python-5-1497", "seg": [ [ [ @@ -70232,14 +82246,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7193452380952381, + "max": 0.7196428571428571 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1454", + "uuid": "python-4-1467", "seg": [ [ [ @@ -70248,7 +82265,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.71875, + "max": 0.7196428571428571 + }, "related_data": {} } } @@ -70259,7 +82279,7 @@ { "创建一个wx.App的子类": { "data": { - "uuid": "python-5-1490", + "uuid": "python-5-1498", "seg": [ [ [ @@ -70270,7 +82290,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7196428571428571, + "max": 0.7199404761904762 + }, "related_data": {} } } @@ -70278,7 +82301,7 @@ { "直接使用wx.App": { "data": { - "uuid": "python-5-1491", + "uuid": "python-5-1499", "seg": [ [ [ @@ -70287,7 +82310,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7199404761904762, + "max": 0.7202380952380952 + }, "related_data": {} } } @@ -70295,7 +82321,7 @@ { "使用wx.Frame框架": { "data": { - "uuid": "python-5-1492", + "uuid": "python-5-1500", "seg": [ [ [ @@ -70305,14 +82331,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7202380952380952, + "max": 0.7205357142857143 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1455", + "uuid": "python-4-1468", "seg": [ [ [ @@ -70321,7 +82350,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7196428571428571, + "max": 0.7205357142857143 + }, "related_data": {} } } @@ -70332,17 +82364,21 @@ { "StaticText文本类": { "data": { - "uuid": "python-5-1493", + "uuid": "python-5-1501", "seg": [ [ [ "statictext", "文本", - "类" + "类", + "文本类" ] ] ], - "level": "1", + "level": { + "min": 0.7205357142857143, + "max": 0.7208333333333333 + }, "related_data": {} } } @@ -70350,18 +82386,22 @@ { "TextCtrl输入文本类": { "data": { - "uuid": "python-5-1494", + "uuid": "python-5-1502", "seg": [ [ [ "textctrl", "输入", "文本", - "类" + "类", + "文本类" ] ] ], - "level": "1", + "level": { + "min": 0.7208333333333333, + "max": 0.7211309523809524 + }, "related_data": {} } } @@ -70369,24 +82409,28 @@ { "Button按钮类": { "data": { - "uuid": "python-5-1495", + "uuid": "python-5-1503", "seg": [ [ [ "button", "按钮", - "类" + "类", + "按钮类" ] ] ], - "level": "1", + "level": { + "min": 0.7211309523809524, + "max": 0.7214285714285714 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1456", + "uuid": "python-4-1469", "seg": [ [ [ @@ -70394,11 +82438,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7205357142857143, + "max": 0.7214285714285714 + }, "related_data": { "qa": { "data_id": [ - "8_736669_765029" + "8_736669_765029@8" ] } } @@ -70411,7 +82458,7 @@ { "什么是BoxSizer": { "data": { - "uuid": "python-5-1496", + "uuid": "python-5-1504", "seg": [ [ [ @@ -70419,7 +82466,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7214285714285714, + "max": 0.721875 + }, "related_data": {} } } @@ -70427,7 +82477,7 @@ { "使用BoxSizer布局": { "data": { - "uuid": "python-5-1497", + "uuid": "python-5-1505", "seg": [ [ [ @@ -70436,11 +82486,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.721875, + "max": 0.7223214285714286 + }, "related_data": { "qa": { "data_id": [ - "8_1078148_1282521" + "8_1078148_1282521@8" ] } } @@ -70449,7 +82502,7 @@ } ], "data": { - "uuid": "python-4-1457", + "uuid": "python-4-1470", "seg": [ [ [ @@ -70458,7 +82511,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7214285714285714, + "max": 0.7223214285714286 + }, "related_data": {} } } @@ -70469,7 +82525,7 @@ { "什么是事件": { "data": { - "uuid": "python-5-1498", + "uuid": "python-5-1506", "seg": [ [ [ @@ -70477,7 +82533,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7223214285714286, + "max": 0.7227678571428571 + }, "related_data": {} } } @@ -70485,7 +82544,7 @@ { "绑定事件": { "data": { - "uuid": "python-5-1499", + "uuid": "python-5-1507", "seg": [ [ [ @@ -70494,11 +82553,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7227678571428571, + "max": 0.7232142857142857 + }, "related_data": { "qa": { "data_id": [ - "8_7432708_53402390" + "8_7432708_53402390@8" ] } } @@ -70507,7 +82569,7 @@ } ], "data": { - "uuid": "python-4-1458", + "uuid": "python-4-1471", "seg": [ [ [ @@ -70515,24 +82577,31 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7223214285714286, + "max": 0.7232142857142857 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-264", + "uuid": "python-3-265", "seg": [ [ [ "gui", "界面", - "编程" + "编程", + "界面编程" ] ] ], - "level": "1", + "level": { + "min": 0.71875, + "max": 0.7232142857142857 + }, "related_data": {} } } @@ -70546,7 +82615,7 @@ { "安装Pygame": { "data": { - "uuid": "python-5-1500", + "uuid": "python-5-1508", "seg": [ [ [ @@ -70555,7 +82624,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7232142857142857, + "max": 0.7239583333333333 + }, "related_data": {} } } @@ -70563,7 +82635,7 @@ { "Pygame常用模块": { "data": { - "uuid": "python-5-1501", + "uuid": "python-5-1509", "seg": [ [ [ @@ -70572,14 +82644,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7239583333333333, + "max": 0.7247023809523809 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1459", + "uuid": "python-4-1472", "seg": [ [ [ @@ -70588,7 +82663,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7232142857142857, + "max": 0.7247023809523809 + }, "related_data": {} } } @@ -70596,7 +82674,7 @@ { "Pygame基本使用": { "data": { - "uuid": "python-4-1460", + "uuid": "python-4-1473", "seg": [ [ [ @@ -70604,7 +82682,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7247023809523809, + "max": 0.7261904761904762 + }, "related_data": {} } } @@ -70615,7 +82696,7 @@ { "游戏简介": { "data": { - "uuid": "python-5-1502", + "uuid": "python-5-1510", "seg": [ [ [ @@ -70624,7 +82705,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7261904761904762, + "max": 0.7264030612244897 + }, "related_data": {} } } @@ -70632,7 +82716,7 @@ { "游戏分析": { "data": { - "uuid": "python-5-1503", + "uuid": "python-5-1511", "seg": [ [ [ @@ -70641,16 +82725,20 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7264030612244897, + "max": 0.7266156462585034 + }, "related_data": { "qa": { "data_id": [ - "8_769876_831094", - "8_354570_367108", - "8_1048722_1246232", - "8_1069179_1270459", - "8_7459761_53444790", - "8_931363_1066446" + "8_769876_831094@8", + "8_354570_367108@8", + "8_1048722_1246232@8", + "8_7443194_53420304@8", + "8_1069179_1270459@8", + "8_7459761_53444790@8", + "8_931363_1066446@8" ] } } @@ -70660,7 +82748,7 @@ { "搭建主框架": { "data": { - "uuid": "python-5-1504", + "uuid": "python-5-1512", "seg": [ [ [ @@ -70670,11 +82758,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7266156462585034, + "max": 0.726828231292517 + }, "related_data": { "qa": { "data_id": [ - "8_361578_379570" + "8_361578_379570@8" ] } } @@ -70684,7 +82775,7 @@ { "创建小鸟类": { "data": { - "uuid": "python-5-1505", + "uuid": "python-5-1513", "seg": [ [ [ @@ -70693,7 +82784,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.726828231292517, + "max": 0.7270408163265306 + }, "related_data": {} } } @@ -70701,17 +82795,21 @@ { "创建管道类": { "data": { - "uuid": "python-5-1506", + "uuid": "python-5-1514", "seg": [ [ [ "创建", "管道", - "类" + "类", + "管道类" ] ] ], - "level": "2", + "level": { + "min": 0.7270408163265306, + "max": 0.7272534013605442 + }, "related_data": {} } } @@ -70719,7 +82817,7 @@ { "计算得分": { "data": { - "uuid": "python-5-1507", + "uuid": "python-5-1515", "seg": [ [ [ @@ -70728,11 +82826,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7272534013605442, + "max": 0.7274659863945578 + }, "related_data": { "qa": { "data_id": [ - "8_7454572_53437253" + "8_7454572_53437253@8" ] } } @@ -70742,7 +82843,7 @@ { "碰撞检测": { "data": { - "uuid": "python-5-1508", + "uuid": "python-5-1516", "seg": [ [ [ @@ -70750,14 +82851,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7274659863945578, + "max": 0.7276785714285714 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1461", + "uuid": "python-4-1474", "seg": [ [ [ @@ -70768,24 +82872,31 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7261904761904762, + "max": 0.7276785714285714 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-265", + "uuid": "python-3-266", "seg": [ [ [ "pygame", "游戏", - "编程" + "编程", + "游戏编程" ] ] ], - "level": "1", + "level": { + "min": 0.7232142857142857, + "max": 0.7276785714285714 + }, "related_data": {} } } @@ -70799,23 +82910,27 @@ { "网络爬虫概述": { "data": { - "uuid": "python-5-1509", + "uuid": "python-5-1517", "seg": [ [ [ "网络", "爬虫", - "概述" + "概述", + "网络爬虫" ] ] ], - "level": "2", + "level": { + "min": 0.7276785714285714, + "max": 0.7281746031746031 + }, "related_data": { "qa": { "data_id": [ - "8_716511_709361", - "8_955242_1099793", - "8_1079567_1284316" + "8_716511_709361@8", + "8_955242_1099793@8", + "8_1079567_1284316@8" ] } } @@ -70825,17 +82940,21 @@ { "网络爬虫的分类": { "data": { - "uuid": "python-5-1510", + "uuid": "python-5-1518", "seg": [ [ [ "网络", "爬虫", - "分类" + "分类", + "网络爬虫" ] ] ], - "level": "2", + "level": { + "min": 0.7281746031746031, + "max": 0.7286706349206349 + }, "related_data": {} } } @@ -70843,34 +82962,43 @@ { "网络爬虫的基本原理": { "data": { - "uuid": "python-5-1511", + "uuid": "python-5-1519", "seg": [ [ [ "网络", "爬虫", - "基本原理" + "基本原理", + "网络爬虫" ] ] ], - "level": "2", + "level": { + "min": 0.7286706349206349, + "max": 0.7291666666666666 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1462", + "uuid": "python-4-1475", "seg": [ [ [ "初识", "网络", - "爬虫" + "爬虫", + "初识网络", + "网络爬虫" ] ] ], - "level": "2", + "level": { + "min": 0.7276785714285714, + "max": 0.7291666666666666 + }, "related_data": {} } } @@ -70881,7 +83009,7 @@ { "Python的网络请求": { "data": { - "uuid": "python-5-1512", + "uuid": "python-5-1520", "seg": [ [ [ @@ -70890,14 +83018,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7291666666666666, + "max": 0.7294642857142857 + }, "related_data": { "qa": { "data_id": [ - "8_687492_805179", - "8_7413367_53365304", - "8_179454_64784", - "8_1101412_1315915" + "8_687492_805179@8", + "8_7413367_53365304@8", + "8_179454_64784@8", + "8_1101412_1315915@8" ] } } @@ -70907,7 +83038,7 @@ { "请求headers处理": { "data": { - "uuid": "python-5-1513", + "uuid": "python-5-1521", "seg": [ [ [ @@ -70915,11 +83046,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7294642857142857, + "max": 0.7297619047619047 + }, "related_data": { "qa": { "data_id": [ - "8_7407825_53357988" + "8_7407825_53357988@8" ] } } @@ -70929,7 +83063,7 @@ { "网络超时": { "data": { - "uuid": "python-5-1514", + "uuid": "python-5-1522", "seg": [ [ [ @@ -70938,11 +83072,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7297619047619047, + "max": 0.7300595238095238 + }, "related_data": { "qa": { "data_id": [ - "8_7412356_53363856" + "8_7412356_53363856@8" ] } } @@ -70952,7 +83089,7 @@ { "代理服务": { "data": { - "uuid": "python-5-1515", + "uuid": "python-5-1523", "seg": [ [ [ @@ -70960,7 +83097,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7300595238095238, + "max": 0.7303571428571428 + }, "related_data": {} } } @@ -70968,7 +83108,7 @@ { "HTML解析之BeautifulSoup": { "data": { - "uuid": "python-5-1516", + "uuid": "python-5-1524", "seg": [ [ [ @@ -70980,12 +83120,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7303571428571428, + "max": 0.7306547619047619 + }, "related_data": { "qa": { "data_id": [ - "8_1050574_1247876", - "8_1056290_1253439" + "8_1050574_1247876@8", + "8_1056290_1253439@8" ] } } @@ -70994,21 +83137,25 @@ } ], "data": { - "uuid": "python-4-1463", + "uuid": "python-4-1476", "seg": [ [ [ "网络", "爬虫", - "技术" + "技术", + "网络爬虫" ] ] ], - "level": "2", + "level": { + "min": 0.7291666666666666, + "max": 0.7306547619047619 + }, "related_data": { "qa": { "data_id": [ - "8_7438596_53412262" + "8_7438596_53412262@8" ] } } @@ -71021,21 +83168,25 @@ { "Scrapy爬虫框架": { "data": { - "uuid": "python-5-1517", + "uuid": "python-5-1525", "seg": [ [ [ "scrapy", "爬虫", - "框架" + "框架", + "爬虫框架" ] ] ], - "level": "2", + "level": { + "min": 0.7306547619047619, + "max": 0.7311507936507936 + }, "related_data": { "qa": { "data_id": [ - "8_1090245_1296983" + "8_1090245_1296983@8" ] } } @@ -71045,21 +83196,25 @@ { "Crawley爬虫框架": { "data": { - "uuid": "python-5-1518", + "uuid": "python-5-1526", "seg": [ [ [ "crawley", "爬虫", - "框架" + "框架", + "爬虫框架" ] ] ], - "level": "2", + "level": { + "min": 0.7311507936507936, + "max": 0.7316468253968254 + }, "related_data": { "qa": { "data_id": [ - "8_4645514_29328195" + "8_4645514_29328195@8" ] } } @@ -71069,52 +83224,64 @@ { "PySpider爬虫框架": { "data": { - "uuid": "python-5-1519", + "uuid": "python-5-1527", "seg": [ [ [ "pyspider", "爬虫", - "框架" + "框架", + "爬虫框架" ] ] ], - "level": "2", + "level": { + "min": 0.7316468253968254, + "max": 0.7321428571428571 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1464", + "uuid": "python-4-1477", "seg": [ [ [ "网络", "爬虫", "开发", - "框架" + "框架", + "网络爬虫" ] ] ], - "level": "2", + "level": { + "min": 0.7306547619047619, + "max": 0.7321428571428571 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-266", + "uuid": "python-3-267", "seg": [ [ [ "网络", "爬虫", - "开发" + "开发", + "网络爬虫" ] ] ], - "level": "1", + "level": { + "min": 0.7276785714285714, + "max": 0.7321428571428571 + }, "related_data": {} } } @@ -71125,7 +83292,7 @@ { "什么是进程": { "data": { - "uuid": "python-4-1465", + "uuid": "python-4-1478", "seg": [ [ [ @@ -71133,7 +83300,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7321428571428571, + "max": 0.7328869047619048 + }, "related_data": {} } } @@ -71144,7 +83314,7 @@ { "使用multiprocessing模块创建进程": { "data": { - "uuid": "python-5-1520", + "uuid": "python-5-1528", "seg": [ [ [ @@ -71155,11 +83325,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7328869047619048, + "max": 0.7331349206349206 + }, "related_data": { "qa": { "data_id": [ - "8_1070935_1272556" + "8_1070935_1272556@8" ] } } @@ -71169,7 +83342,7 @@ { "使用Process子类创建进程": { "data": { - "uuid": "python-5-1521", + "uuid": "python-5-1529", "seg": [ [ [ @@ -71180,11 +83353,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7331349206349206, + "max": 0.7333829365079365 + }, "related_data": { "qa": { "data_id": [ - "8_7395380_53338562" + "8_7395380_53338562@8" ] } } @@ -71194,23 +83370,27 @@ { "使用进程池Pool创建进程": { "data": { - "uuid": "python-5-1522", + "uuid": "python-5-1530", "seg": [ [ [ "进程", "池", "pool", - "创建" + "创建", + "进程池" ] ] ], - "level": "2", + "level": { + "min": 0.7333829365079365, + "max": 0.7336309523809523 + }, "related_data": { "qa": { "data_id": [ - "8_715115_707357", - "8_7441008_53416756" + "8_715115_707357@8", + "8_7441008_53416756@8" ] } } @@ -71219,7 +83399,7 @@ } ], "data": { - "uuid": "python-4-1466", + "uuid": "python-4-1479", "seg": [ [ [ @@ -71229,7 +83409,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7328869047619048, + "max": 0.7336309523809523 + }, "related_data": {} } } @@ -71240,7 +83423,7 @@ { "队列简介": { "data": { - "uuid": "python-5-1523", + "uuid": "python-5-1531", "seg": [ [ [ @@ -71249,7 +83432,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7336309523809523, + "max": 0.7338789682539683 + }, "related_data": {} } } @@ -71257,24 +83443,28 @@ { "多进程队列的使用": { "data": { - "uuid": "python-5-1524", + "uuid": "python-5-1532", "seg": [ [ [ "进程", - "队列" + "队列", + "进程队列" ] ] ], - "level": "2", + "level": { + "min": 0.7338789682539683, + "max": 0.7341269841269841 + }, "related_data": { "qa": { "data_id": [ - "8_677429_519257", - "8_1008246_1191962", - "8_7415431_53368956", - "8_3669054_24091150", - "8_7429887_53396833" + "8_677429_519257@8", + "8_1008246_1191962@8", + "8_7415431_53368956@8", + "8_3669054_24091150@8", + "8_7429887_53396833@8" ] } } @@ -71284,33 +83474,41 @@ { "使用队列在进程间通信": { "data": { - "uuid": "python-5-1525", + "uuid": "python-5-1533", "seg": [ [ [ "队列", "进程", - "间通信" + "间通信", + "进程间通信" ] ] ], - "level": "2", + "level": { + "min": 0.7341269841269841, + "max": 0.734375 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1467", + "uuid": "python-4-1480", "seg": [ [ [ "进程", - "间通信" + "间通信", + "进程间通信" ] ] ], - "level": "2", + "level": { + "min": 0.7336309523809523, + "max": 0.734375 + }, "related_data": {} } } @@ -71318,7 +83516,7 @@ { "什么是线程": { "data": { - "uuid": "python-4-1468", + "uuid": "python-4-1481", "seg": [ [ [ @@ -71326,7 +83524,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.734375, + "max": 0.7351190476190477 + }, "related_data": {} } } @@ -71337,7 +83538,7 @@ { "使用threading模块创建线程": { "data": { - "uuid": "python-5-1526", + "uuid": "python-5-1534", "seg": [ [ [ @@ -71348,7 +83549,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7351190476190477, + "max": 0.7354910714285714 + }, "related_data": {} } } @@ -71356,7 +83560,7 @@ { "使用Thread子类创建线程": { "data": { - "uuid": "python-5-1527", + "uuid": "python-5-1535", "seg": [ [ [ @@ -71367,11 +83571,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7354910714285714, + "max": 0.7358630952380952 + }, "related_data": { "qa": { "data_id": [ - "8_7417012_53371621" + "8_7417012_53371621@8" ] } } @@ -71380,7 +83587,7 @@ } ], "data": { - "uuid": "python-4-1469", + "uuid": "python-4-1482", "seg": [ [ [ @@ -71389,7 +83596,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7351190476190477, + "max": 0.7358630952380952 + }, "related_data": {} } } @@ -71400,7 +83610,7 @@ { "什么是互斥锁": { "data": { - "uuid": "python-5-1528", + "uuid": "python-5-1536", "seg": [ [ [ @@ -71409,11 +83619,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7358630952380952, + "max": 0.7361111111111112 + }, "related_data": { "qa": { "data_id": [ - "8_783342_855029" + "8_783342_855029@8" ] } } @@ -71423,7 +83636,7 @@ { "使用互斥锁": { "data": { - "uuid": "python-5-1529", + "uuid": "python-5-1537", "seg": [ [ [ @@ -71432,7 +83645,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7361111111111112, + "max": 0.736359126984127 + }, "related_data": {} } } @@ -71440,40 +83656,48 @@ { "使用队列在线程间通信": { "data": { - "uuid": "python-5-1530", + "uuid": "python-5-1538", "seg": [ [ [ "队列", "程", - "间通信" + "间通信", + "程间通信" ] ] ], - "level": "2", + "level": { + "min": 0.736359126984127, + "max": 0.7366071428571429 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1470", + "uuid": "python-4-1483", "seg": [ [ [ "线程", - "间通信" + "间通信", + "线程间通信" ] ] ], - "level": "2", + "level": { + "min": 0.7358630952380952, + "max": 0.7366071428571429 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-267", + "uuid": "python-3-268", "seg": [ [ [ @@ -71484,7 +83708,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7321428571428571, + "max": 0.7366071428571429 + }, "related_data": {} } } @@ -71498,7 +83725,7 @@ { "TCP/IP简介": { "data": { - "uuid": "python-5-1531", + "uuid": "python-5-1539", "seg": [ [ [ @@ -71508,18 +83735,21 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7366071428571429, + "max": 0.7371031746031746 + }, "related_data": { "qa": { "data_id": [ - "8_676347_515186", - "8_5718088_37910519", - "8_338334_336135", - "8_680488_530507", - "8_338259_335932", - "8_7423350_53383664", - "8_1070868_1272507", - "8_932639_1072137" + "8_676347_515186@8", + "8_5718088_37910519@8", + "8_338334_336135@8", + "8_680488_530507@8", + "8_338259_335932@8", + "8_7423350_53383664@8", + "8_1070868_1272507@8", + "8_932639_1072137@8" ] } } @@ -71529,7 +83759,7 @@ { "UDP简介": { "data": { - "uuid": "python-5-1532", + "uuid": "python-5-1540", "seg": [ [ [ @@ -71538,7 +83768,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7371031746031746, + "max": 0.7375992063492064 + }, "related_data": {} } } @@ -71546,7 +83779,7 @@ { "Socket简介": { "data": { - "uuid": "python-5-1533", + "uuid": "python-5-1541", "seg": [ [ [ @@ -71555,23 +83788,30 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7375992063492064, + "max": 0.7380952380952381 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1471", + "uuid": "python-4-1484", "seg": [ [ [ "网络", - "基础" + "基础", + "网络基础" ] ] ], - "level": "1", + "level": { + "min": 0.7366071428571429, + "max": 0.7380952380952381 + }, "related_data": {} } } @@ -71582,7 +83822,7 @@ { "创建TCP服务器": { "data": { - "uuid": "python-5-1534", + "uuid": "python-5-1542", "seg": [ [ [ @@ -71592,7 +83832,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7380952380952381, + "max": 0.7385912698412699 + }, "related_data": {} } } @@ -71600,7 +83843,7 @@ { "创建TCP客户端": { "data": { - "uuid": "python-5-1535", + "uuid": "python-5-1543", "seg": [ [ [ @@ -71610,11 +83853,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7385912698412699, + "max": 0.7390873015873016 + }, "related_data": { "qa": { "data_id": [ - "8_157702_20946" + "8_157702_20946@8" ] } } @@ -71624,7 +83870,7 @@ { "执行TCP服务器和客户端": { "data": { - "uuid": "python-5-1536", + "uuid": "python-5-1544", "seg": [ [ [ @@ -71637,14 +83883,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7390873015873016, + "max": 0.7395833333333334 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1472", + "uuid": "python-4-1485", "seg": [ [ [ @@ -71653,7 +83902,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7380952380952381, + "max": 0.7395833333333334 + }, "related_data": {} } } @@ -71664,7 +83916,7 @@ { "创建UDP服务器": { "data": { - "uuid": "python-5-1537", + "uuid": "python-5-1545", "seg": [ [ [ @@ -71674,7 +83926,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7395833333333334, + "max": 0.7400793650793651 + }, "related_data": {} } } @@ -71682,7 +83937,7 @@ { "创建UDP客户端": { "data": { - "uuid": "python-5-1538", + "uuid": "python-5-1546", "seg": [ [ [ @@ -71692,13 +83947,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7400793650793651, + "max": 0.7405753968253969 + }, "related_data": { "qa": { "data_id": [ - "8_338042_335582", - "8_338236_336117", - "8_338203_335798" + "8_338042_335582@8", + "8_338236_336117@8", + "8_338203_335798@8" ] } } @@ -71708,7 +83966,7 @@ { "执行UDP服务器和客户端": { "data": { - "uuid": "python-5-1539", + "uuid": "python-5-1547", "seg": [ [ [ @@ -71721,14 +83979,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7405753968253969, + "max": 0.7410714285714286 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1473", + "uuid": "python-4-1486", "seg": [ [ [ @@ -71737,23 +83998,30 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7395833333333334, + "max": 0.7410714285714286 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-268", + "uuid": "python-3-269", "seg": [ [ [ "网络", - "编程" + "编程", + "网络编程" ] ] ], - "level": "1", + "level": { + "min": 0.7366071428571429, + "max": 0.7410714285714286 + }, "related_data": {} } } @@ -71767,7 +84035,7 @@ { "HTTP协议": { "data": { - "uuid": "python-5-1540", + "uuid": "python-5-1548", "seg": [ [ [ @@ -71776,7 +84044,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7410714285714286, + "max": 0.7414434523809524 + }, "related_data": {} } } @@ -71784,7 +84055,7 @@ { "Web服务器": { "data": { - "uuid": "python-5-1541", + "uuid": "python-5-1549", "seg": [ [ [ @@ -71793,7 +84064,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7414434523809524, + "max": 0.7418154761904763 + }, "related_data": {} } } @@ -71801,7 +84075,7 @@ { "前端基础": { "data": { - "uuid": "python-5-1542", + "uuid": "python-5-1550", "seg": [ [ [ @@ -71810,20 +84084,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7418154761904763, + "max": 0.7421875 + }, "related_data": { "qa": { "data_id": [ - "8_7462783_53448445", - "8_1086913_1293689", - "8_7419234_53376254", - "8_7432239_53401270", - "8_3115086_19903244", - "8_7396843_53341099", - "8_7429035_53395492", - "8_7457696_53442118", - "8_7413309_53365200", - "8_645972_448043" + "8_7462783_53448445@8", + "8_1086913_1293689@8", + "8_7419234_53376254@8", + "8_7432239_53401270@8", + "8_3115086_19903244@8", + "8_7396843_53341099@8", + "8_7429035_53395492@8", + "8_7457696_53442118@8", + "8_7413309_53365200@8", + "8_645972_448043@8" ] } } @@ -71833,23 +84110,27 @@ { "静态服务器": { "data": { - "uuid": "python-5-1543", + "uuid": "python-5-1551", "seg": [ [ [ "静态", - "服务器" + "服务器", + "静态服务器" ] ] ], - "level": "1", + "level": { + "min": 0.7421875, + "max": 0.7425595238095238 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1474", + "uuid": "python-4-1487", "seg": [ [ [ @@ -71858,7 +84139,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7410714285714286, + "max": 0.7425595238095238 + }, "related_data": {} } } @@ -71869,7 +84153,7 @@ { "CGI简介": { "data": { - "uuid": "python-5-1544", + "uuid": "python-5-1552", "seg": [ [ [ @@ -71878,7 +84162,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7425595238095238, + "max": 0.7429315476190477 + }, "related_data": {} } } @@ -71886,7 +84173,7 @@ { "WSGI简介": { "data": { - "uuid": "python-5-1545", + "uuid": "python-5-1553", "seg": [ [ [ @@ -71895,7 +84182,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7429315476190477, + "max": 0.7433035714285714 + }, "related_data": {} } } @@ -71903,7 +84193,7 @@ { "定义WSGI接口": { "data": { - "uuid": "python-5-1546", + "uuid": "python-5-1554", "seg": [ [ [ @@ -71913,13 +84203,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7433035714285714, + "max": 0.7436755952380952 + }, "related_data": { "qa": { "data_id": [ - "8_7419076_53376267", - "8_1080533_1311692", - "8_773322_836985" + "8_7419076_53376267@8", + "8_1080533_1311692@8", + "8_773322_836985@8" ] } } @@ -71929,7 +84222,7 @@ { "运行WSGI服务": { "data": { - "uuid": "python-5-1547", + "uuid": "python-5-1555", "seg": [ [ [ @@ -71939,14 +84232,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7436755952380952, + "max": 0.7440476190476191 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1475", + "uuid": "python-4-1488", "seg": [ [ [ @@ -71955,7 +84251,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7425595238095238, + "max": 0.7440476190476191 + }, "related_data": {} } } @@ -71966,7 +84265,7 @@ { "什么是Web框架": { "data": { - "uuid": "python-5-1548", + "uuid": "python-5-1556", "seg": [ [ [ @@ -71975,13 +84274,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7440476190476191, + "max": 0.7447916666666667 + }, "related_data": { "qa": { "data_id": [ - "8_7463420_53449301", - "8_746367_795737", - "8_1064165_1262345" + "8_7463420_53449301@8", + "8_746367_795737@8", + "8_1064165_1262345@8" ] } } @@ -71991,7 +84293,7 @@ { "Python中常用的Web框架": { "data": { - "uuid": "python-5-1549", + "uuid": "python-5-1557", "seg": [ [ [ @@ -72001,14 +84303,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7447916666666667, + "max": 0.7455357142857143 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1476", + "uuid": "python-4-1489", "seg": [ [ [ @@ -72017,14 +84322,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7440476190476191, + "max": 0.7455357142857143 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-269", + "uuid": "python-3-270", "seg": [ [ [ @@ -72033,7 +84341,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7410714285714286, + "max": 0.7455357142857143 + }, "related_data": {} } } @@ -72047,7 +84358,7 @@ { "安装虚拟环境": { "data": { - "uuid": "python-5-1550", + "uuid": "python-5-1558", "seg": [ [ [ @@ -72056,7 +84367,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7455357142857143, + "max": 0.7459077380952381 + }, "related_data": {} } } @@ -72064,7 +84378,7 @@ { "安装Flask": { "data": { - "uuid": "python-5-1551", + "uuid": "python-5-1559", "seg": [ [ [ @@ -72073,16 +84387,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7459077380952381, + "max": 0.7462797619047619 + }, "related_data": { "qa": { "data_id": [ - "8_7440563_53415893", - "8_192123_94728", - "8_653829_463556", - "8_7422859_53384260", - "8_190182_90995", - "8_7440885_53416551" + "8_7440563_53415893@8", + "8_192123_94728@8", + "8_653829_463556@8", + "8_7422859_53384260@8", + "8_190182_90995@8", + "8_7440885_53416551@8" ] } } @@ -72092,7 +84409,7 @@ { "第一个Flask程序": { "data": { - "uuid": "python-5-1552", + "uuid": "python-5-1560", "seg": [ [ [ @@ -72101,14 +84418,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7462797619047619, + "max": 0.7466517857142857 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1477", + "uuid": "python-4-1490", "seg": [ [ [ @@ -72117,7 +84437,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7455357142857143, + "max": 0.7466517857142857 + }, "related_data": {} } } @@ -72128,7 +84451,7 @@ { "开启调试模式": { "data": { - "uuid": "python-5-1553", + "uuid": "python-5-1561", "seg": [ [ [ @@ -72137,7 +84460,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7466517857142857, + "max": 0.7469308035714286 + }, "related_data": {} } } @@ -72145,7 +84471,7 @@ { "路由": { "data": { - "uuid": "python-5-1554", + "uuid": "python-5-1562", "seg": [ [ [ @@ -72153,7 +84479,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7469308035714286, + "max": 0.7472098214285714 + }, "related_data": {} } } @@ -72161,16 +84490,20 @@ { "静态文件": { "data": { - "uuid": "python-5-1555", + "uuid": "python-5-1563", "seg": [ [ [ "静态", - "文件" + "文件", + "静态文件" ] ] ], - "level": "1", + "level": { + "min": 0.7472098214285714, + "max": 0.7474888392857143 + }, "related_data": {} } } @@ -72178,7 +84511,7 @@ { "蓝图": { "data": { - "uuid": "python-5-1556", + "uuid": "python-5-1564", "seg": [ [ [ @@ -72186,14 +84519,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7474888392857143, + "max": 0.7477678571428572 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1478", + "uuid": "python-4-1491", "seg": [ [ [ @@ -72202,7 +84538,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7466517857142857, + "max": 0.7477678571428572 + }, "related_data": {} } } @@ -72213,7 +84552,7 @@ { "渲染模板": { "data": { - "uuid": "python-5-1557", + "uuid": "python-5-1565", "seg": [ [ [ @@ -72222,7 +84561,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7477678571428572, + "max": 0.748139880952381 + }, "related_data": {} } } @@ -72230,7 +84572,7 @@ { "变量": { "data": { - "uuid": "python-5-1558", + "uuid": "python-5-1566", "seg": [ [ [ @@ -72238,7 +84580,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.748139880952381, + "max": 0.7485119047619048 + }, "related_data": {} } } @@ -72246,7 +84591,7 @@ { "控制结构": { "data": { - "uuid": "python-5-1559", + "uuid": "python-5-1567", "seg": [ [ [ @@ -72254,14 +84599,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7485119047619048, + "max": 0.7488839285714286 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1479", + "uuid": "python-4-1492", "seg": [ [ [ @@ -72269,7 +84617,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7477678571428572, + "max": 0.7488839285714286 + }, "related_data": {} } } @@ -72280,7 +84631,7 @@ { "CSRF保护和验证": { "data": { - "uuid": "python-5-1560", + "uuid": "python-5-1568", "seg": [ [ [ @@ -72292,7 +84643,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7488839285714286, + "max": 0.7492559523809524 + }, "related_data": {} } } @@ -72300,16 +84654,20 @@ { "表单类": { "data": { - "uuid": "python-5-1561", + "uuid": "python-5-1569", "seg": [ [ [ "表单", - "类" + "类", + "表单类" ] ] ], - "level": "2", + "level": { + "min": 0.7492559523809524, + "max": 0.7496279761904762 + }, "related_data": {} } } @@ -72317,7 +84675,7 @@ { "把表单渲染成HTML": { "data": { - "uuid": "python-5-1562", + "uuid": "python-5-1570", "seg": [ [ [ @@ -72328,14 +84686,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7496279761904762, + "max": 0.75 + }, "related_data": {} } } } ], "data": { - "uuid": "python-4-1480", + "uuid": "python-4-1493", "seg": [ [ [ @@ -72344,14 +84705,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7488839285714286, + "max": 0.75 + }, "related_data": {} } } } ], "data": { - "uuid": "python-3-270", + "uuid": "python-3-271", "seg": [ [ [ @@ -72360,11 +84724,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.7455357142857143, + "max": 0.75 + }, "related_data": { "qa": { "data_id": [ - "8_356834_375068" + "8_356834_375068@8" ] } } @@ -72379,7 +84746,10 @@ [] ] ], - "level": "1", + "level": { + "min": 0.71875, + "max": 0.75 + }, "related_data": {} } } @@ -72395,6 +84765,10 @@ ] ] ], + "level": { + "min": 0.5, + "max": 0.75 + }, "related_data": {} } } @@ -72410,23 +84784,29 @@ [ [ "类别", - "标签" + "标签", + "类别标签", + "标签问题" ] ] ], + "level": { + "min": 0.75, + "max": 0.8333333333333334 + }, "related_data": { "qa": { "data_id": [ - "8_769637_830593", - "8_1090983_1298161", - "8_720114_714420", - "8_772034_835058", - "8_6840189_50887868", - "8_7413270_53365115", - "8_738459_770368", - "8_1097042_1310014", - "8_772242_835898", - "8_1054372_1251698" + "8_769637_830593@8", + "8_1090983_1298161@8", + "8_720114_714420@8", + "8_772034_835058@8", + "8_6840189_50887868@8", + "8_7413270_53365115@8", + "8_738459_770368@8", + "8_1097042_1310014@8", + "8_772242_835898@8", + "8_1054372_1251698@8" ] } } @@ -72444,19 +84824,23 @@ ] ] ], + "level": { + "min": 0.8333333333333334, + "max": 0.9166666666666666 + }, "related_data": { "qa": { "data_id": [ - "8_838954_947554", - "8_1099978_1314903", - "8_7445785_53424616", - "8_768584_830176", - "8_7399295_53346285", - "8_7456509_53440302", - "8_770050_831384", - "8_718014_711556", - "8_703307_594118", - "8_356720_372635" + "8_838954_947554@8", + "8_1099978_1314903@8", + "8_7445785_53424616@8", + "8_768584_830176@8", + "8_7399295_53346285@8", + "8_7456509_53440302@8", + "8_770050_831384@8", + "8_718014_711556@8", + "8_703307_594118@8", + "8_356720_372635@8" ] } } @@ -72474,19 +84858,23 @@ ] ] ], + "level": { + "min": 0.9166666666666666, + "max": 1.0 + }, "related_data": { "qa": { "data_id": [ - "8_1077828_1282264", - "8_985644_1149188", - "8_1059883_1257278", - "8_688018_552849", - "8_7448039_53428034", - "8_783398_855452", - "8_7442196_53419008", - "8_7451545_53432836", - "8_7457671_53442092", - "8_7419404_53376575" + "8_1077828_1282264@8", + "8_985644_1149188@8", + "8_1059883_1257278@8", + "8_688018_552849@8", + "8_7448039_53428034@8", + "8_783398_855452@8", + "8_7442196_53419008@8", + "8_7451545_53432836@8", + "8_7457671_53442092@8", + "8_7419404_53376575@8" ] } } @@ -72501,6 +84889,10 @@ [] ] ], + "level": { + "min": 0.75, + "max": 1.0 + }, "related_data": {} } } @@ -72518,6 +84910,10 @@ ] ] ], + "level": { + "min": 0, + "max": 1 + }, "related_data": {} } } diff --git "a/data/tree_\344\272\221\345\216\237\347\224\237_mapping.json" "b/data/tree_\344\272\221\345\216\237\347\224\237_mapping.json" index 9c6c5ba..5b2c31d 100644 --- "a/data/tree_\344\272\221\345\216\237\347\224\237_mapping.json" +++ "b/data/tree_\344\272\221\345\216\237\347\224\237_mapping.json" @@ -19,7 +19,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0, + "max": 0.0010504201680672268 + }, "related_data": {} } } @@ -36,7 +39,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0010504201680672268, + "max": 0.0021008403361344537 + }, "related_data": {} } } @@ -53,7 +59,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0021008403361344537, + "max": 0.0031512605042016808 + }, "related_data": {} } } @@ -72,7 +81,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0031512605042016808, + "max": 0.003326330532212885 + }, "related_data": {} } } @@ -95,7 +107,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.003326330532212885, + "max": 0.0033482142857142855 + }, "related_data": {} } } @@ -112,7 +127,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0033482142857142855, + "max": 0.0033700980392156864 + }, "related_data": {} } } @@ -125,11 +143,15 @@ [ [ "部署", - "函数" + "函数", + "部署函数" ] ] ], - "level": "2", + "level": { + "min": 0.0033700980392156864, + "max": 0.003391981792717087 + }, "related_data": {} } } @@ -146,11 +168,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.003391981792717087, + "max": 0.0034138655462184874 + }, "related_data": { "blog": { "data_id": [ - "87943888" + "87943888@serverless@云原生" ] } } @@ -168,7 +193,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.003326330532212885, + "max": 0.0034138655462184874 + }, "related_data": {} } } @@ -177,9 +205,30 @@ "Function": { "children": [ { - "函数调用": { + "函数部署": { "data": { "uuid": "云原生-6-4", + "seg": [ + [ + [ + "函数", + "部署", + "函数部署" + ] + ] + ], + "level": { + "min": 0.0034138655462184874, + "max": 0.0034430438842203547 + }, + "related_data": {} + } + } + }, + { + "函数调用": { + "data": { + "uuid": "云原生-6-5", "seg": [ [ [ @@ -187,7 +236,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0034430438842203547, + "max": 0.0034722222222222225 + }, "related_data": {} } } @@ -195,7 +247,7 @@ { "自动扩展": { "data": { - "uuid": "云原生-6-5", + "uuid": "云原生-6-6", "seg": [ [ [ @@ -204,8 +256,17 @@ ] ] ], - "level": "2", - "related_data": {} + "level": { + "min": 0.0034722222222222225, + "max": 0.0035014005602240898 + }, + "related_data": { + "blog": { + "data_id": [ + "73457256@mesh@云原生" + ] + } + } } } } @@ -219,12 +280,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0034138655462184874, + "max": 0.0035014005602240898 + }, "related_data": { "blog": { "data_id": [ - "7040944", - "7514146" + "7040944@分布式@云原生", + "7514146@分布式@云原生" ] } } @@ -241,7 +305,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.003326330532212885, + "max": 0.0035014005602240898 + }, "related_data": {} } } @@ -255,7 +322,7 @@ { "部署Fission Chart": { "data": { - "uuid": "云原生-6-6", + "uuid": "云原生-6-7", "seg": [ [ [ @@ -265,7 +332,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0035014005602240898, + "max": 0.0035159897292250234 + }, "related_data": {} } } @@ -273,16 +343,20 @@ { "命令行工具": { "data": { - "uuid": "云原生-6-7", + "uuid": "云原生-6-8", "seg": [ [ [ "命令行", - "工具" + "工具", + "命令行工具" ] ] ], - "level": "2", + "level": { + "min": 0.0035159897292250234, + "max": 0.003530578898225957 + }, "related_data": {} } } @@ -290,7 +364,7 @@ { "Hello Fission": { "data": { - "uuid": "云原生-6-8", + "uuid": "云原生-6-9", "seg": [ [ [ @@ -299,11 +373,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.003530578898225957, + "max": 0.0035451680672268907 + }, "related_data": { "blog": { "data_id": [ - "86647304" + "86647304@kubeless@云原生", + "86647304@serverless@云原生" ] } } @@ -321,7 +399,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0035014005602240898, + "max": 0.0035451680672268907 + }, "related_data": {} } } @@ -332,7 +413,7 @@ { "Environment": { "data": { - "uuid": "云原生-6-9", + "uuid": "云原生-6-10", "seg": [ [ [ @@ -340,7 +421,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0035451680672268907, + "max": 0.003588935574229692 + }, "related_data": {} } } @@ -356,7 +440,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0035451680672268907, + "max": 0.003588935574229692 + }, "related_data": {} } } @@ -367,7 +454,7 @@ { "Poolbased模式": { "data": { - "uuid": "云原生-6-10", + "uuid": "云原生-6-11", "seg": [ [ [ @@ -376,7 +463,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.003588935574229692, + "max": 0.0036108193277310926 + }, "related_data": {} } } @@ -384,7 +474,7 @@ { "New Deploy模式": { "data": { - "uuid": "云原生-6-11", + "uuid": "云原生-6-12", "seg": [ [ [ @@ -394,7 +484,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0036108193277310926, + "max": 0.003632703081232493 + }, "related_data": {} } } @@ -410,7 +503,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.003588935574229692, + "max": 0.003632703081232493 + }, "related_data": {} } } @@ -421,7 +517,7 @@ { "Workflows定义": { "data": { - "uuid": "云原生-6-12", + "uuid": "云原生-6-13", "seg": [ [ [ @@ -430,7 +526,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.003632703081232493, + "max": 0.0036472922502334268 + }, "related_data": {} } } @@ -438,7 +537,7 @@ { "配置Workflows": { "data": { - "uuid": "云原生-6-13", + "uuid": "云原生-6-14", "seg": [ [ [ @@ -447,7 +546,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0036472922502334268, + "max": 0.0036618814192343604 + }, "related_data": {} } } @@ -455,7 +557,7 @@ { "Fortune Whale": { "data": { - "uuid": "云原生-6-14", + "uuid": "云原生-6-15", "seg": [ [ [ @@ -464,20 +566,11 @@ ] ] ], - "level": "2", - "related_data": { - "blog": { - "data_id": [ - "53893672", - "34809467", - "96889697", - "112598022", - "109192472", - "90112241", - "108806597" - ] - } - } + "level": { + "min": 0.0036618814192343604, + "max": 0.003676470588235294 + }, + "related_data": {} } } } @@ -491,7 +584,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.003632703081232493, + "max": 0.003676470588235294 + }, "related_data": {} } } @@ -506,7 +602,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0035014005602240898, + "max": 0.003676470588235294 + }, "related_data": {} } } @@ -520,7 +619,7 @@ { "图形界面": { "data": { - "uuid": "云原生-6-15", + "uuid": "云原生-6-16", "seg": [ [ [ @@ -528,7 +627,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.003676470588235294, + "max": 0.0037056489262371614 + }, "related_data": {} } } @@ -544,7 +646,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.003676470588235294, + "max": 0.0037056489262371614 + }, "related_data": {} } } @@ -555,7 +660,7 @@ { "抽象方式": { "data": { - "uuid": "云原生-6-16", + "uuid": "云原生-6-17", "seg": [ [ [ @@ -564,7 +669,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0037056489262371614, + "max": 0.003712943510737628 + }, "related_data": {} } } @@ -572,16 +680,20 @@ { "函数模板": { "data": { - "uuid": "云原生-6-17", + "uuid": "云原生-6-18", "seg": [ [ [ "函数", - "模板" + "模板", + "函数模板" ] ] ], - "level": "2", + "level": { + "min": 0.003712943510737628, + "max": 0.003720238095238095 + }, "related_data": {} } } @@ -589,7 +701,7 @@ { "构建函数": { "data": { - "uuid": "云原生-6-18", + "uuid": "云原生-6-19", "seg": [ [ [ @@ -598,14 +710,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.003720238095238095, + "max": 0.003727532679738562 + }, "related_data": { "blog": { "data_id": [ - "79012419", - "81056767", - "78170863", - "82883078" + "79012419@mesh@云原生", + "81056767@mesh@云原生", + "78170863@mesh@云原生", + "82883078@mesh@云原生" ] } } @@ -615,7 +730,7 @@ { "推送镜像": { "data": { - "uuid": "云原生-6-19", + "uuid": "云原生-6-20", "seg": [ [ [ @@ -624,7 +739,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.003727532679738562, + "max": 0.0037348272642390287 + }, "related_data": {} } } @@ -640,14 +758,20 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0037056489262371614, + "max": 0.0037348272642390287 + }, "related_data": { "blog": { "data_id": [ - "86647163", - "85945793", - "109816846", - "110310033" + "86647163@serverless@云原生", + "85945793@serverless@云原生", + "109845563@serverless@云原生", + "114483494@serverless@云原生", + "109816846@serverless@云原生", + "110310033@serverless@云原生", + "109900209@serverless@云原生" ] } } @@ -660,7 +784,7 @@ { "工作原理": { "data": { - "uuid": "云原生-6-20", + "uuid": "云原生-6-21", "seg": [ [ [ @@ -669,7 +793,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0037348272642390287, + "max": 0.0037445533769063176 + }, "related_data": {} } } @@ -677,7 +804,7 @@ { "配置Watchdog": { "data": { - "uuid": "云原生-6-21", + "uuid": "云原生-6-22", "seg": [ [ [ @@ -686,11 +813,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0037445533769063176, + "max": 0.003754279489573607 + }, "related_data": { "blog": { "data_id": [ - "109971608" + "110285578@serverless@云原生", + "109971608@serverless@云原生" ] } } @@ -700,7 +831,7 @@ { "ofwatchdog": { "data": { - "uuid": "云原生-6-22", + "uuid": "云原生-6-23", "seg": [ [ [ @@ -708,7 +839,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.003754279489573607, + "max": 0.003764005602240896 + }, "related_data": {} } } @@ -723,7 +857,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0037348272642390287, + "max": 0.003764005602240896 + }, "related_data": {} } } @@ -734,7 +871,7 @@ { "监控指标": { "data": { - "uuid": "云原生-6-23", + "uuid": "云原生-6-24", "seg": [ [ [ @@ -743,7 +880,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.003764005602240896, + "max": 0.0037737317149081854 + }, "related_data": {} } } @@ -751,7 +891,7 @@ { "监控面板": { "data": { - "uuid": "云原生-6-24", + "uuid": "云原生-6-25", "seg": [ [ [ @@ -760,7 +900,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0037737317149081854, + "max": 0.0037834578275754743 + }, "related_data": {} } } @@ -768,7 +911,7 @@ { "监控预警": { "data": { - "uuid": "云原生-6-25", + "uuid": "云原生-6-26", "seg": [ [ [ @@ -777,7 +920,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0037834578275754743, + "max": 0.0037931839402427637 + }, "related_data": {} } } @@ -792,7 +938,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.003764005602240896, + "max": 0.0037931839402427637 + }, "related_data": {} } } @@ -803,7 +952,7 @@ { "基于Alertmanager扩展": { "data": { - "uuid": "云原生-6-26", + "uuid": "云原生-6-27", "seg": [ [ [ @@ -812,7 +961,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0037931839402427637, + "max": 0.0038077731092436974 + }, "related_data": {} } } @@ -820,7 +972,7 @@ { "基于HPA扩展": { "data": { - "uuid": "云原生-6-27", + "uuid": "云原生-6-28", "seg": [ [ [ @@ -829,7 +981,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0038077731092436974, + "max": 0.003822362278244631 + }, "related_data": {} } } @@ -845,7 +1000,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0037931839402427637, + "max": 0.003822362278244631 + }, "related_data": {} } } @@ -862,7 +1020,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.003822362278244631, + "max": 0.0038515406162464984 + }, "related_data": {} } } @@ -877,7 +1038,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.003676470588235294, + "max": 0.0038515406162464984 + }, "related_data": {} } } @@ -897,7 +1061,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0038515406162464984, + "max": 0.0038807189542483657 + }, "related_data": {} } } @@ -908,7 +1075,7 @@ { "Namespace": { "data": { - "uuid": "云原生-6-28", + "uuid": "云原生-6-29", "seg": [ [ [ @@ -916,7 +1083,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0038807189542483657, + "max": 0.003886554621848739 + }, "related_data": {} } } @@ -924,7 +1094,7 @@ { "Package": { "data": { - "uuid": "云原生-6-29", + "uuid": "云原生-6-30", "seg": [ [ [ @@ -932,7 +1102,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.003886554621848739, + "max": 0.0038923902894491126 + }, "related_data": {} } } @@ -940,7 +1113,7 @@ { "Action": { "data": { - "uuid": "云原生-6-30", + "uuid": "云原生-6-31", "seg": [ [ [ @@ -948,11 +1121,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0038923902894491126, + "max": 0.0038982259570494865 + }, "related_data": { "blog": { "data_id": [ - "52415346" + "52415346@控制器@云原生" ] } } @@ -962,7 +1138,7 @@ { "Feed": { "data": { - "uuid": "云原生-6-31", + "uuid": "云原生-6-32", "seg": [ [ [ @@ -970,7 +1146,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0038982259570494865, + "max": 0.00390406162464986 + }, "related_data": {} } } @@ -978,7 +1157,7 @@ { "Rule": { "data": { - "uuid": "云原生-6-32", + "uuid": "云原生-6-33", "seg": [ [ [ @@ -986,7 +1165,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.00390406162464986, + "max": 0.003909897292250233 + }, "related_data": {} } } @@ -998,11 +1180,15 @@ [ [ "逻辑", - "架构" + "架构", + "逻辑架构" ] ] ], - "level": "2", + "level": { + "min": 0.0038807189542483657, + "max": 0.003909897292250233 + }, "related_data": {} } } @@ -1015,16 +1201,20 @@ [ [ "系统", - "架构" + "架构", + "系统架构" ] ] ], - "level": "2", + "level": { + "min": 0.003909897292250233, + "max": 0.003939075630252101 + }, "related_data": { "blog": { "data_id": [ - "72877127", - "78900555" + "72877127@分布式@云原生", + "78900555@中间件@云原生" ] } } @@ -1037,7 +1227,7 @@ { "准备Kubernetes集群": { "data": { - "uuid": "云原生-6-33", + "uuid": "云原生-6-34", "seg": [ [ [ @@ -1046,7 +1236,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.003939075630252101, + "max": 0.003943243964252367 + }, "related_data": {} } } @@ -1054,17 +1247,21 @@ { "集群基础设置": { "data": { - "uuid": "云原生-6-34", + "uuid": "云原生-6-35", "seg": [ [ [ "集群", "基础", - "设置" + "设置", + "集群基础" ] ] ], - "level": "2", + "level": { + "min": 0.003943243964252367, + "max": 0.003947412298252634 + }, "related_data": {} } } @@ -1072,7 +1269,7 @@ { "创建访问入口": { "data": { - "uuid": "云原生-6-35", + "uuid": "云原生-6-36", "seg": [ [ [ @@ -1082,7 +1279,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.003947412298252634, + "max": 0.003951580632252901 + }, "related_data": {} } } @@ -1090,16 +1290,20 @@ { "部署组件": { "data": { - "uuid": "云原生-6-36", + "uuid": "云原生-6-37", "seg": [ [ [ "部署", - "组件" + "组件", + "部署组件" ] ] ], - "level": "2", + "level": { + "min": 0.003951580632252901, + "max": 0.003955748966253168 + }, "related_data": {} } } @@ -1107,7 +1311,7 @@ { "加载系统配置": { "data": { - "uuid": "云原生-6-37", + "uuid": "云原生-6-38", "seg": [ [ [ @@ -1116,7 +1320,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.003955748966253168, + "max": 0.003959917300253434 + }, "related_data": {} } } @@ -1124,7 +1331,7 @@ { "测试集群": { "data": { - "uuid": "云原生-6-38", + "uuid": "云原生-6-39", "seg": [ [ [ @@ -1132,7 +1339,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.003959917300253434, + "max": 0.003964085634253702 + }, "related_data": {} } } @@ -1140,7 +1350,7 @@ { "删除集群": { "data": { - "uuid": "云原生-6-39", + "uuid": "云原生-6-40", "seg": [ [ [ @@ -1149,7 +1359,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.003964085634253702, + "max": 0.003968253968253968 + }, "related_data": {} } } @@ -1165,7 +1378,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.003939075630252101, + "max": 0.003968253968253968 + }, "related_data": {} } } @@ -1176,7 +1392,7 @@ { "安装Helm": { "data": { - "uuid": "云原生-6-40", + "uuid": "云原生-6-41", "seg": [ [ [ @@ -1185,11 +1401,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.003968253968253968, + "max": 0.003975548552754435 + }, "related_data": { "blog": { "data_id": [ - "114002681" + "114002681@serverless@云原生" ] } } @@ -1199,7 +1418,7 @@ { "环境配置": { "data": { - "uuid": "云原生-6-41", + "uuid": "云原生-6-42", "seg": [ [ [ @@ -1208,7 +1427,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.003975548552754435, + "max": 0.003982843137254902 + }, "related_data": {} } } @@ -1216,7 +1438,7 @@ { "部署Chart": { "data": { - "uuid": "云原生-6-42", + "uuid": "云原生-6-43", "seg": [ [ [ @@ -1225,14 +1447,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.003982843137254902, + "max": 0.0039901377217553685 + }, "related_data": { "blog": { "data_id": [ - "118195461", - "81907836", - "90815393", - "117828384" + "118195461@docker@云原生", + "81907836@docker@云原生", + "90815393@docker@云原生", + "117828384@go@云原生" ] } } @@ -1242,7 +1467,7 @@ { "管理应用": { "data": { - "uuid": "云原生-6-43", + "uuid": "云原生-6-44", "seg": [ [ [ @@ -1250,7 +1475,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0039901377217553685, + "max": 0.003997432306255835 + }, "related_data": {} } } @@ -1266,7 +1494,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.003968253968253968, + "max": 0.003997432306255835 + }, "related_data": {} } } @@ -1277,7 +1508,7 @@ { "开发环境": { "data": { - "uuid": "云原生-6-44", + "uuid": "云原生-6-45", "seg": [ [ [ @@ -1286,7 +1517,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.003997432306255835, + "max": 0.004003267973856209 + }, "related_data": {} } } @@ -1294,7 +1528,7 @@ { "定义Action": { "data": { - "uuid": "云原生-6-45", + "uuid": "云原生-6-46", "seg": [ [ [ @@ -1303,7 +1537,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.004003267973856209, + "max": 0.004009103641456582 + }, "related_data": {} } } @@ -1311,7 +1548,7 @@ { "创建Package": { "data": { - "uuid": "云原生-6-46", + "uuid": "云原生-6-47", "seg": [ [ [ @@ -1320,7 +1557,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.004009103641456582, + "max": 0.004014939309056956 + }, "related_data": {} } } @@ -1328,7 +1568,7 @@ { "部署Action": { "data": { - "uuid": "云原生-6-47", + "uuid": "云原生-6-48", "seg": [ [ [ @@ -1337,7 +1577,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.004014939309056956, + "max": 0.004020774976657329 + }, "related_data": {} } } @@ -1345,7 +1588,7 @@ { "发布API": { "data": { - "uuid": "云原生-6-48", + "uuid": "云原生-6-49", "seg": [ [ [ @@ -1354,7 +1597,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.004020774976657329, + "max": 0.004026610644257703 + }, "related_data": {} } } @@ -1371,7 +1617,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.003997432306255835, + "max": 0.004026610644257703 + }, "related_data": {} } } @@ -1386,7 +1635,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0038515406162464984, + "max": 0.004026610644257703 + }, "related_data": {} } } @@ -1403,7 +1655,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.004026610644257703, + "max": 0.004201680672268907 + }, "related_data": {} } } @@ -1419,7 +1674,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0031512605042016808, + "max": 0.004201680672268907 + }, "related_data": {} } } @@ -1436,7 +1694,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.004201680672268907, + "max": 0.005252100840336134 + }, "related_data": {} } } @@ -1453,17 +1714,21 @@ { "从SOA到微服务": { "data": { - "uuid": "云原生-6-49", + "uuid": "云原生-6-50", "seg": [ [ [ "soa", "到微", - "服务" + "服务", + "到微服务" ] ] ], - "level": "2", + "level": { + "min": 0.005252100840336134, + "max": 0.005317752100840336 + }, "related_data": {} } } @@ -1471,7 +1736,7 @@ { "微服务的价值与挑战": { "data": { - "uuid": "云原生-6-50", + "uuid": "云原生-6-51", "seg": [ [ [ @@ -1484,7 +1749,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.005317752100840336, + "max": 0.005383403361344538 + }, "related_data": {} } } @@ -1505,7 +1773,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.005252100840336134, + "max": 0.005383403361344538 + }, "related_data": {} } } @@ -1521,7 +1792,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.005383403361344538, + "max": 0.005514705882352941 + }, "related_data": {} } } @@ -1536,7 +1810,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.005252100840336134, + "max": 0.005514705882352941 + }, "related_data": {} } } @@ -1557,7 +1834,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.005514705882352941, + "max": 0.005567226890756302 + }, "related_data": {} } } @@ -1573,11 +1853,15 @@ "单一", "用途", "状态", - "函数" + "函数", + "状态函数" ] ] ], - "level": "2", + "level": { + "min": 0.005567226890756302, + "max": 0.005619747899159664 + }, "related_data": {} } } @@ -1598,7 +1882,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.005619747899159664, + "max": 0.005672268907563025 + }, "related_data": {} } } @@ -1619,7 +1906,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.005672268907563025, + "max": 0.005724789915966387 + }, "related_data": {} } } @@ -1636,7 +1926,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.005724789915966387, + "max": 0.005777310924369748 + }, "related_data": {} } } @@ -1649,11 +1942,16 @@ [ "服务器", "架构", - "原则" + "原则", + "服务器架构", + "架构原则" ] ] ], - "level": "2", + "level": { + "min": 0.005514705882352941, + "max": 0.005777310924369748 + }, "related_data": {} } } @@ -1671,7 +1969,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.005777310924369748, + "max": 0.006039915966386555 + }, "related_data": {} } } @@ -1692,7 +1993,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.006039915966386555, + "max": 0.006171218487394959 + }, "related_data": {} } } @@ -1708,20 +2012,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.006171218487394959, + "max": 0.0063025210084033615 + }, "related_data": { "blog": { "data_id": [ - "90032997", - "117407975", - "88851190", - "108921819", - "110438060", - "90613294", - "7734986", - "5783677", - "79867130", - "7726666" + "90032997@docker@云原生", + "117407975@运维@云原生", + "88851190@无服务器@云原生", + "108921819@阿里云@云原生", + "78207881@阿里云@云原生", + "110438060@docker@云原生", + "90613294@无服务器@云原生", + "7734986@中间件@云原生", + "5783677@分布式@云原生", + "79867130@无服务器@云原生" ] } } @@ -1739,7 +2046,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.006039915966386555, + "max": 0.0063025210084033615 + }, "related_data": {} } } @@ -1755,7 +2065,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.005252100840336134, + "max": 0.0063025210084033615 + }, "related_data": {} } } @@ -1778,7 +2091,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0063025210084033615, + "max": 0.006360877684407096 + }, "related_data": {} } } @@ -1797,7 +2113,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.006360877684407096, + "max": 0.006419234360410831 + }, "related_data": {} } } @@ -1810,11 +2129,15 @@ [ [ "实时", - "分析" + "分析", + "实时分析" ] ] ], - "level": "2", + "level": { + "min": 0.006419234360410831, + "max": 0.006477591036414565 + }, "related_data": {} } } @@ -1832,7 +2155,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.006477591036414565, + "max": 0.006535947712418301 + }, "related_data": {} } } @@ -1849,7 +2175,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.006535947712418301, + "max": 0.0065943043884220355 + }, "related_data": {} } } @@ -1870,7 +2199,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0065943043884220355, + "max": 0.00665266106442577 + }, "related_data": {} } } @@ -1885,7 +2217,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0063025210084033615, + "max": 0.00665266106442577 + }, "related_data": {} } } @@ -1905,7 +2240,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.00665266106442577, + "max": 0.006711017740429505 + }, "related_data": {} } } @@ -1923,7 +2261,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.006711017740429505, + "max": 0.00676937441643324 + }, "related_data": {} } } @@ -1939,7 +2280,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.00676937441643324, + "max": 0.006827731092436975 + }, "related_data": {} } } @@ -1955,7 +2299,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.006827731092436975, + "max": 0.0068860877684407094 + }, "related_data": {} } } @@ -1972,7 +2319,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0068860877684407094, + "max": 0.006944444444444445 + }, "related_data": {} } } @@ -1988,7 +2338,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.006944444444444445, + "max": 0.0070028011204481795 + }, "related_data": {} } } @@ -2003,7 +2356,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.00665266106442577, + "max": 0.0070028011204481795 + }, "related_data": {} } } @@ -2019,11 +2375,15 @@ [ [ "命令", - "模式" + "模式", + "命令模式" ] ] ], - "level": "2", + "level": { + "min": 0.0070028011204481795, + "max": 0.007072829131652661 + }, "related_data": {} } } @@ -2041,11 +2401,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.007072829131652661, + "max": 0.007142857142857143 + }, "related_data": { "blog": { "data_id": [ - "56049305" + "56049305@中间件@云原生" ] } } @@ -2061,11 +2424,15 @@ [ "优先级", "队列", - "模式" + "模式", + "队列模式" ] ] ], - "level": "2", + "level": { + "min": 0.007142857142857143, + "max": 0.007212885154061625 + }, "related_data": {} } } @@ -2083,7 +2450,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.007212885154061625, + "max": 0.007282913165266107 + }, "related_data": {} } } @@ -2099,11 +2469,15 @@ ], [ "过滤器", - "模式" + "模式", + "过滤器模式" ] ] ], - "level": "2", + "level": { + "min": 0.007282913165266107, + "max": 0.007352941176470588 + }, "related_data": {} } } @@ -2118,7 +2492,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0070028011204481795, + "max": 0.007352941176470588 + }, "related_data": {} } } @@ -2136,7 +2513,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0063025210084033615, + "max": 0.007352941176470588 + }, "related_data": {} } } @@ -2159,7 +2539,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.007352941176470588, + "max": 0.007376283846872082 + }, "related_data": {} } } @@ -2178,7 +2561,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.007376283846872082, + "max": 0.007399626517273576 + }, "related_data": {} } } @@ -2196,7 +2582,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.007399626517273576, + "max": 0.00742296918767507 + }, "related_data": {} } } @@ -2213,7 +2602,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.00742296918767507, + "max": 0.0074463118580765635 + }, "related_data": {} } } @@ -2227,7 +2619,10 @@ [] ] ], - "level": "2", + "level": { + "min": 0.0074463118580765635, + "max": 0.007469654528478058 + }, "related_data": {} } } @@ -2244,7 +2639,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.007469654528478058, + "max": 0.007492997198879552 + }, "related_data": {} } } @@ -2264,7 +2662,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.007492997198879552, + "max": 0.007516339869281046 + }, "related_data": {} } } @@ -2280,7 +2681,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.007516339869281046, + "max": 0.00753968253968254 + }, "related_data": {} } } @@ -2297,7 +2701,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.00753968253968254, + "max": 0.007563025210084034 + }, "related_data": {} } } @@ -2309,11 +2716,15 @@ [ [ "小时", - "视频" + "视频", + "小时视频" ] ] ], - "level": "2", + "level": { + "min": 0.007352941176470588, + "max": 0.007563025210084034 + }, "related_data": {} } } @@ -2336,7 +2747,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.007563025210084034, + "max": 0.007633053221288515 + }, "related_data": {} } } @@ -2354,7 +2768,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.007633053221288515, + "max": 0.007703081232492998 + }, "related_data": {} } } @@ -2370,7 +2787,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.007703081232492998, + "max": 0.007773109243697479 + }, "related_data": {} } } @@ -2390,12 +2810,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.007563025210084034, + "max": 0.007773109243697479 + }, "related_data": { "blog": { "data_id": [ - "4141177", - "6142146" + "38919751@中间件@云原生", + "4141177@go@云原生", + "6142146@go@云原生" ] } } @@ -2417,7 +2841,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.007773109243697479, + "max": 0.00784313725490196 + }, "related_data": {} } } @@ -2434,7 +2861,10 @@ [] ] ], - "level": "2", + "level": { + "min": 0.00784313725490196, + "max": 0.007913165266106442 + }, "related_data": {} } } @@ -2450,7 +2880,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.007913165266106442, + "max": 0.007983193277310924 + }, "related_data": {} } } @@ -2463,11 +2896,15 @@ [ "设置", "视频", - "权限" + "权限", + "视频权限" ] ] ], - "level": "2", + "level": { + "min": 0.007773109243697479, + "max": 0.007983193277310924 + }, "related_data": {} } } @@ -2480,11 +2917,15 @@ [ [ "生成元", - "数据" + "数据", + "生成元数据" ] ] ], - "level": "2", + "level": { + "min": 0.007983193277310924, + "max": 0.00819327731092437 + }, "related_data": {} } } @@ -2500,7 +2941,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.00819327731092437, + "max": 0.008403361344537815 + }, "related_data": {} } } @@ -2516,7 +2960,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.007352941176470588, + "max": 0.008403361344537815 + }, "related_data": {} } } @@ -2543,7 +2990,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.008403361344537815, + "max": 0.009453781512605041 + }, "related_data": {} } } @@ -2562,7 +3012,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.008403361344537815, + "max": 0.009453781512605041 + }, "related_data": {} } } @@ -2579,7 +3032,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.008403361344537815, + "max": 0.009453781512605041 + }, "related_data": {} } } @@ -2595,7 +3051,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.009453781512605041, + "max": 0.010504201680672268 + }, "related_data": {} } } @@ -2614,11 +3073,15 @@ [ [ "服务器", - "方法" + "方法", + "服务器方法" ] ] ], - "level": "2", + "level": { + "min": 0.010504201680672268, + "max": 0.01059173669467787 + }, "related_data": {} } } @@ -2635,11 +3098,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.01059173669467787, + "max": 0.010679271708683474 + }, "related_data": { "blog": { "data_id": [ - "6861267" + "6861267@中间件@云原生" ] } } @@ -2657,7 +3123,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.010679271708683474, + "max": 0.010766806722689076 + }, "related_data": {} } } @@ -2671,11 +3140,15 @@ "服务器", "环境", "身份", - "认证" + "认证", + "服务器环境" ] ] ], - "level": "2", + "level": { + "min": 0.010504201680672268, + "max": 0.010766806722689076 + }, "related_data": {} } } @@ -2694,7 +3167,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.010766806722689076, + "max": 0.010810574229691877 + }, "related_data": {} } } @@ -2711,7 +3187,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.010810574229691877, + "max": 0.010854341736694677 + }, "related_data": {} } } @@ -2725,11 +3204,16 @@ [ "小时", "视频", - "网站" + "网站", + "小时视频", + "视频网站" ] ] ], - "level": "2", + "level": { + "min": 0.010854341736694677, + "max": 0.010898109243697478 + }, "related_data": {} } } @@ -2746,7 +3230,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.010898109243697478, + "max": 0.01094187675070028 + }, "related_data": {} } } @@ -2763,7 +3250,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.01094187675070028, + "max": 0.01098564425770308 + }, "related_data": {} } } @@ -2780,7 +3270,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.01098564425770308, + "max": 0.011029411764705881 + }, "related_data": {} } } @@ -2795,11 +3288,15 @@ "视频", "增加", "身份", - "认证" + "认证", + "小时视频" ] ] ], - "level": "2", + "level": { + "min": 0.010766806722689076, + "max": 0.011029411764705881 + }, "related_data": {} } } @@ -2816,11 +3313,15 @@ [ "用户", "信息", - "lambda" + "lambda", + "用户信息" ] ] ], - "level": "2", + "level": { + "min": 0.011029411764705881, + "max": 0.011081932773109242 + }, "related_data": {} } } @@ -2845,20 +3346,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.011081932773109242, + "max": 0.01108718487394958 + }, "related_data": { "blog": { "data_id": [ - "52896720", - "79226121", - "87204090", - "113759771", - "47187757", - "25392833", - "53671164", - "102457403", - "53607844", - "81952786" + "52896720@aws@云原生", + "52896720@gateway@云原生", + "79226121@aws@云原生", + "87204090@aws@云原生", + "113759771@aws@云原生", + "47187757@aws@云原生", + "25392833@aws@云原生", + "102457403@aws@云原生", + "53607844@aws@云原生", + "81952786@aws@云原生" ] } } @@ -2876,14 +3380,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.01108718487394958, + "max": 0.011092436974789914 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-6-51", + "uuid": "云原生-6-52", "seg": [ [ [ @@ -2893,20 +3400,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.011081932773109242, + "max": 0.011092436974789914 + }, "related_data": { "blog": { "data_id": [ - "85238110", - "80520827", - "50817559", - "51565074", - "90247043", - "87084646", - "71078016", - "83900200", - "79802452", - "82752408" + "85238110@gateway@云原生", + "80520827@gateway@云原生", + "50817559@gateway@云原生", + "51565074@gateway@云原生", + "90247043@gateway@云原生", + "87084646@gateway@云原生", + "71078016@gateway@云原生", + "83900200@gateway@云原生", + "79802452@gateway@云原生", + "82752408@gateway@云原生" ] } } @@ -2916,7 +3426,7 @@ { "创建资源和方法": { "data": { - "uuid": "云原生-6-52", + "uuid": "云原生-6-53", "seg": [ [ [ @@ -2928,7 +3438,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.011092436974789914, + "max": 0.011102941176470586 + }, "related_data": {} } } @@ -2936,7 +3449,7 @@ { "配置方法执行": { "data": { - "uuid": "云原生-6-53", + "uuid": "云原生-6-54", "seg": [ [ [ @@ -2946,7 +3459,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.011102941176470586, + "max": 0.01111344537815126 + }, "related_data": {} } } @@ -2954,16 +3470,20 @@ { "更新网站": { "data": { - "uuid": "云原生-6-54", + "uuid": "云原生-6-55", "seg": [ [ [ "更新", - "网站" + "网站", + "更新网站" ] ] ], - "level": "2", + "level": { + "min": 0.01111344537815126, + "max": 0.011123949579831932 + }, "related_data": {} } } @@ -2980,7 +3500,10 @@ [] ] ], - "level": "2", + "level": { + "min": 0.011123949579831932, + "max": 0.011129201680672267 + }, "related_data": {} } } @@ -2996,14 +3519,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.011129201680672267, + "max": 0.011134453781512604 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-6-55", + "uuid": "云原生-6-56", "seg": [ [ [ @@ -3012,7 +3538,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.011123949579831932, + "max": 0.011134453781512604 + }, "related_data": {} } } @@ -3028,7 +3557,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.011081932773109242, + "max": 0.011134453781512604 + }, "related_data": {} } } @@ -3044,7 +3576,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.011134453781512604, + "max": 0.011186974789915965 + }, "related_data": {} } } @@ -3063,7 +3598,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.011186974789915965, + "max": 0.011239495798319326 + }, "related_data": {} } } @@ -3081,7 +3619,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.011239495798319326, + "max": 0.011292016806722687 + }, "related_data": {} } } @@ -3098,7 +3639,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.011029411764705881, + "max": 0.011292016806722687 + }, "related_data": {} } } @@ -3114,11 +3658,15 @@ [ [ "真实", - "案例" + "案例", + "真实案例" ] ] ], - "level": "2", + "level": { + "min": 0.011292016806722687, + "max": 0.01142331932773109 + }, "related_data": {} } } @@ -3132,11 +3680,15 @@ [ "开通", "委托", - "令牌" + "令牌", + "委托令牌" ] ] ], - "level": "2", + "level": { + "min": 0.01142331932773109, + "max": 0.011554621848739495 + }, "related_data": {} } } @@ -3148,11 +3700,15 @@ [ [ "委托", - "令牌" + "令牌", + "委托令牌" ] ] ], - "level": "2", + "level": { + "min": 0.011292016806722687, + "max": 0.011554621848739495 + }, "related_data": {} } } @@ -3171,7 +3727,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.010504201680672268, + "max": 0.011554621848739495 + }, "related_data": {} } } @@ -3191,11 +3750,16 @@ [ "事件", "模型", - "和源" + "和源", + "事件模型", + "模型和源" ] ] ], - "level": "2", + "level": { + "min": 0.011554621848739495, + "max": 0.011589635854341735 + }, "related_data": {} } } @@ -3212,11 +3776,15 @@ [ "拉取", "事件", - "模型" + "模型", + "事件模型" ] ] ], - "level": "2", + "level": { + "min": 0.011589635854341735, + "max": 0.011624649859943976 + }, "related_data": {} } } @@ -3233,7 +3801,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.011624649859943976, + "max": 0.011659663865546219 + }, "related_data": {} } } @@ -3250,7 +3821,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.011659663865546219, + "max": 0.01169467787114846 + }, "related_data": {} } } @@ -3268,12 +3842,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.01169467787114846, + "max": 0.0117296918767507 + }, "related_data": { "blog": { "data_id": [ - "79263437", - "52269565" + "79263437@aws@云原生", + "52269565@aws@云原生" ] } } @@ -3291,7 +3868,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.011554621848739495, + "max": 0.0117296918767507 + }, "related_data": {} } } @@ -3307,11 +3887,15 @@ [ [ "函数", - "处理程序" + "处理程序", + "函数处理程序" ] ] ], - "level": "2", + "level": { + "min": 0.0117296918767507, + "max": 0.011745607333842627 + }, "related_data": {} } } @@ -3324,11 +3908,15 @@ [ [ "事件", - "对象" + "对象", + "事件对象" ] ] ], - "level": "2", + "level": { + "min": 0.011745607333842627, + "max": 0.011761522790934556 + }, "related_data": {} } } @@ -3345,7 +3933,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.011761522790934556, + "max": 0.011777438248026482 + }, "related_data": {} } } @@ -3362,7 +3953,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.011777438248026482, + "max": 0.011793353705118411 + }, "related_data": {} } } @@ -3378,7 +3972,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.011793353705118411, + "max": 0.011809269162210338 + }, "related_data": {} } } @@ -3394,7 +3991,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.011809269162210338, + "max": 0.011825184619302266 + }, "related_data": {} } } @@ -3410,12 +4010,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.011825184619302266, + "max": 0.011841100076394193 + }, "related_data": { "blog": { "data_id": [ - "7914902", - "6601558" + "7914902@go@云原生", + "6601558@go@云原生" ] } } @@ -3434,7 +4037,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.011841100076394193, + "max": 0.011857015533486122 + }, "related_data": {} } } @@ -3451,7 +4057,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.011857015533486122, + "max": 0.011872930990578049 + }, "related_data": {} } } @@ -3463,11 +4072,15 @@ "seg": [ [ [ - "异常" + "异常", + "异常处理" ] ] ], - "level": "2", + "level": { + "min": 0.011872930990578049, + "max": 0.011888846447669977 + }, "related_data": {} } } @@ -3483,7 +4096,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.011888846447669977, + "max": 0.011904761904761904 + }, "related_data": {} } } @@ -3495,11 +4111,15 @@ [ [ "编程", - "模型" + "模型", + "编程模型" ] ] ], - "level": "2", + "level": { + "min": 0.0117296918767507, + "max": 0.011904761904761904 + }, "related_data": {} } } @@ -3519,11 +4139,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.011904761904761904, + "max": 0.011963118580765639 + }, "related_data": { "blog": { "data_id": [ - "82823798" + "82823798@分布式@云原生" ] } } @@ -3541,7 +4164,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.011963118580765639, + "max": 0.012021475256769373 + }, "related_data": {} } } @@ -3557,7 +4183,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.012021475256769373, + "max": 0.012079831932773108 + }, "related_data": {} } } @@ -3579,7 +4208,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.011904761904761904, + "max": 0.012079831932773108 + }, "related_data": {} } } @@ -3599,7 +4231,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.012079831932773108, + "max": 0.012254901960784314 + }, "related_data": {} } } @@ -3612,11 +4247,15 @@ [ "命令行", "界面", - "cli" + "cli", + "命令行界面" ] ] ], - "level": "2", + "level": { + "min": 0.012079831932773108, + "max": 0.012254901960784314 + }, "related_data": {} } } @@ -3632,11 +4271,15 @@ [ [ "异步", - "瀑布" + "瀑布", + "异步瀑布" ] ] ], - "level": "2", + "level": { + "min": 0.012254901960784314, + "max": 0.012298669467787115 + }, "related_data": {} } } @@ -3655,7 +4298,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.012298669467787115, + "max": 0.012342436974789917 + }, "related_data": {} } } @@ -3671,7 +4317,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.012342436974789917, + "max": 0.012386204481792718 + }, "related_data": {} } } @@ -3689,7 +4338,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.012386204481792718, + "max": 0.01242997198879552 + }, "related_data": {} } } @@ -3705,7 +4357,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.012254901960784314, + "max": 0.01242997198879552 + }, "related_data": {} } } @@ -3722,7 +4377,10 @@ [] ] ], - "level": "2", + "level": { + "min": 0.01242997198879552, + "max": 0.012517507002801121 + }, "related_data": {} } } @@ -3738,7 +4396,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.012517507002801121, + "max": 0.012605042016806723 + }, "related_data": {} } } @@ -3754,7 +4415,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.01242997198879552, + "max": 0.012605042016806723 + }, "related_data": {} } } @@ -3770,7 +4434,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.011554621848739495, + "max": 0.012605042016806723 + }, "related_data": {} } } @@ -3787,7 +4454,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.012605042016806723, + "max": 0.01365546218487395 + }, "related_data": {} } } @@ -3809,7 +4479,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.01365546218487395, + "max": 0.013713818860877684 + }, "related_data": {} } } @@ -3823,11 +4496,15 @@ [ "托管", "静态", - "网站" + "网站", + "静态网站" ] ] ], - "level": "2", + "level": { + "min": 0.013713818860877684, + "max": 0.013772175536881419 + }, "related_data": {} } } @@ -3844,16 +4521,19 @@ ] ] ], - "level": "2", + "level": { + "min": 0.013772175536881419, + "max": 0.013830532212885153 + }, "related_data": { "blog": { "data_id": [ - "8665738", - "88655608", - "111464534", - "6569447", - "117236116", - "116677477" + "8665738@控制器@云原生", + "88655608@分布式@云原生", + "111464534@docker@云原生", + "6569447@cloud@云原生", + "117236116@分布式@云原生", + "116677477@分布式@云原生" ] } } @@ -3869,11 +4549,15 @@ [ "对象", "生命周期", - "管理" + "管理", + "对象生命周期" ] ] ], - "level": "2", + "level": { + "min": 0.013830532212885153, + "max": 0.01388888888888889 + }, "related_data": {} } } @@ -3890,7 +4574,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.01388888888888889, + "max": 0.013947245564892624 + }, "related_data": {} } } @@ -3907,7 +4594,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.013947245564892624, + "max": 0.014005602240896359 + }, "related_data": {} } } @@ -3919,11 +4609,15 @@ [ [ "智能", - "存储" + "存储", + "更智能" ] ] ], - "level": "2", + "level": { + "min": 0.01365546218487395, + "max": 0.014005602240896359 + }, "related_data": {} } } @@ -3944,7 +4638,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.014005602240896359, + "max": 0.014122315592903828 + }, "related_data": {} } } @@ -3962,11 +4659,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.014122315592903828, + "max": 0.014239028944911298 + }, "related_data": { "blog": { "data_id": [ - "69357365" + "69357365@jwt@云原生" ] } } @@ -3985,11 +4685,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.014239028944911298, + "max": 0.014355742296918767 + }, "related_data": { "blog": { "data_id": [ - "52643702" + "52643702@阿里云@云原生" ] } } @@ -4006,7 +4709,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.014005602240896359, + "max": 0.014355742296918767 + }, "related_data": {} } } @@ -4027,7 +4733,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.014355742296918767, + "max": 0.014414098972922501 + }, "related_data": {} } } @@ -4046,11 +4755,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.014414098972922501, + "max": 0.014472455648926236 + }, "related_data": { "blog": { "data_id": [ - "62042292" + "62042292@控制器@云原生" ] } } @@ -4070,11 +4782,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.014472455648926236, + "max": 0.014530812324929972 + }, "related_data": { "blog": { "data_id": [ - "81505963" + "81505963@go@云原生" ] } } @@ -4094,7 +4809,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.014530812324929972, + "max": 0.014589169000933707 + }, "related_data": {} } } @@ -4111,7 +4829,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.014589169000933707, + "max": 0.014647525676937442 + }, "related_data": {} } } @@ -4129,7 +4850,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.014647525676937442, + "max": 0.014705882352941176 + }, "related_data": {} } } @@ -4145,7 +4869,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.014355742296918767, + "max": 0.014705882352941176 + }, "related_data": {} } } @@ -4160,7 +4887,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.01365546218487395, + "max": 0.014705882352941176 + }, "related_data": {} } } @@ -4182,7 +4912,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.014705882352941176, + "max": 0.014968487394957982 + }, "related_data": {} } } @@ -4198,7 +4931,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.014968487394957982, + "max": 0.01523109243697479 + }, "related_data": {} } } @@ -4214,7 +4950,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.014705882352941176, + "max": 0.01523109243697479 + }, "related_data": {} } } @@ -4234,7 +4973,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.01523109243697479, + "max": 0.015318627450980392 + }, "related_data": {} } } @@ -4249,11 +4991,15 @@ "修改", "转码", "视频", - "lambda" + "lambda", + "转码视频" ] ] ], - "level": "2", + "level": { + "min": 0.015318627450980392, + "max": 0.015406162464985993 + }, "related_data": {} } } @@ -4273,7 +5019,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.015406162464985993, + "max": 0.015493697478991597 + }, "related_data": {} } } @@ -4290,7 +5039,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.015493697478991597, + "max": 0.015581232492997199 + }, "related_data": {} } } @@ -4306,11 +5058,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.015581232492997199, + "max": 0.0156687675070028 + }, "related_data": { "blog": { "data_id": [ - "81436075" + "81436075@spring@云原生" ] } } @@ -4328,7 +5083,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0156687675070028, + "max": 0.015756302521008403 + }, "related_data": {} } } @@ -4342,11 +5100,15 @@ "小时", "视频", "添加", - "firebase" + "firebase", + "小时视频" ] ] ], - "level": "2", + "level": { + "min": 0.01523109243697479, + "max": 0.015756302521008403 + }, "related_data": {} } } @@ -4361,7 +5123,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.014705882352941176, + "max": 0.015756302521008403 + }, "related_data": {} } } @@ -4383,7 +5148,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.015756302521008403, + "max": 0.015966386554621848 + }, "related_data": {} } } @@ -4402,7 +5170,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.015966386554621848, + "max": 0.016176470588235292 + }, "related_data": {} } } @@ -4419,7 +5190,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.016176470588235292, + "max": 0.01638655462184874 + }, "related_data": {} } } @@ -4436,7 +5210,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.01638655462184874, + "max": 0.016596638655462185 + }, "related_data": {} } } @@ -4453,7 +5230,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.016596638655462185, + "max": 0.01680672268907563 + }, "related_data": {} } } @@ -4466,7 +5246,10 @@ [] ] ], - "level": "2", + "level": { + "min": 0.015756302521008403, + "max": 0.01680672268907563 + }, "related_data": {} } } @@ -4490,19 +5273,22 @@ ] ] ], - "level": "2", + "level": { + "min": 0.01680672268907563, + "max": 0.01682172869147659 + }, "related_data": { "blog": { "data_id": [ - "91176481", - "116491708", - "85967830", - "91897999", - "101664662", - "89559796", - "117385144", - "112778230", - "108753823" + "91176481@serverless@云原生", + "116491708@serverless@云原生", + "85967830@serverless@云原生", + "91897999@serverless@云原生", + "101664662@serverless@云原生", + "89559796@serverless@云原生", + "117385144@serverless@云原生", + "112778230@serverless@云原生", + "108753823@serverless@云原生" ] } } @@ -4515,7 +5301,7 @@ { "Chalice": { "data": { - "uuid": "云原生-6-56", + "uuid": "云原生-6-57", "seg": [ [ [ @@ -4523,7 +5309,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.01682172869147659, + "max": 0.016824729891956783 + }, "related_data": {} } } @@ -4531,7 +5320,7 @@ { "Claudia.js": { "data": { - "uuid": "云原生-6-57", + "uuid": "云原生-6-58", "seg": [ [ [ @@ -4540,20 +5329,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.016824729891956783, + "max": 0.016827731092436973 + }, "related_data": { "blog": { "data_id": [ - "87989691", - "110220249", - "91467143", - "115031746", - "114851314", - "77825396", - "92796438", - "79748825", - "80042006", - "111166886" + "87989691@serverless@云原生", + "110220249@serverless@云原生", + "91467143@serverless@云原生", + "113902683@serverless@云原生", + "115031746@serverless@云原生", + "114851314@阿里云@云原生", + "77825396@mesh@云原生", + "92796438@无服务器@云原生", + "79748825@控制器@云原生", + "80042006@mesh@云原生" ] } } @@ -4563,7 +5355,7 @@ { "Apex": { "data": { - "uuid": "云原生-6-58", + "uuid": "云原生-6-59", "seg": [ [ [ @@ -4571,7 +5363,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.016827731092436973, + "max": 0.016830732292917167 + }, "related_data": {} } } @@ -4579,7 +5374,7 @@ { "Spring Cloud Function": { "data": { - "uuid": "云原生-6-59", + "uuid": "云原生-6-60", "seg": [ [ [ @@ -4589,20 +5384,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.016830732292917167, + "max": 0.016833733493397358 + }, "related_data": { "blog": { "data_id": [ - "100133932", - "89117087", - "102859463", - "72818673", - "84639676", - "79667184", - "115012844", - "89760037", - "108346274", - "50707868" + "100133932@serverless@云原生", + "89117087@serverless@云原生", + "102859463@serverless@云原生", + "72818673@serverless@云原生", + "84639676@serverless@云原生", + "79667184@mesh@云原生", + "79667184@serverless@云原生", + "108346274@容器@云原生", + "108346274@微服务@云原生", + "108346274@中间件@云原生" ] } } @@ -4612,7 +5410,7 @@ { "AWS SAM": { "data": { - "uuid": "云原生-6-60", + "uuid": "云原生-6-61", "seg": [ [ [ @@ -4621,20 +5419,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.016833733493397358, + "max": 0.01683673469387755 + }, "related_data": { "blog": { "data_id": [ - "51912795", - "91450055", - "60141447", - "86721206", - "79816861", - "50514123", - "84936818", - "97698097", - "93879302", - "110493112" + "51912795@serverless@云原生", + "51912795@aws@云原生", + "91450055@serverless@云原生", + "60141447@serverless@云原生", + "60141447@aws@云原生", + "86721206@serverless@云原生", + "79816861@无服务器@云原生", + "50514123@serverless@云原生", + "84936818@无服务器@云原生", + "50514123@aws@云原生" ] } } @@ -4655,15 +5456,19 @@ ] ] ], - "level": "2", + "level": { + "min": 0.01682172869147659, + "max": 0.01683673469387755 + }, "related_data": { "blog": { "data_id": [ - "114846168", - "110881857", - "100744213", - "116739942", - "109071867" + "114846168@serverless@云原生", + "110881857@serverless@云原生", + "100744213@serverless@云原生", + "116739942@云原生@云原生", + "109071867@serverless@云原生", + "116739942@serverless@云原生" ] } } @@ -4683,20 +5488,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.01683673469387755, + "max": 0.01685174069627851 + }, "related_data": { "blog": { "data_id": [ - "80311217", - "91815630", - "104328850", - "102519302", - "103158470", - "80910401", - "89155164", - "89414836", - "89550740", - "103665094" + "80311217@serverless@云原生", + "91815630@serverless@云原生", + "104328850@serverless@云原生", + "102519302@serverless@云原生", + "103158470@serverless@云原生", + "80910401@无服务器@云原生", + "89155164@serverless@云原生", + "89550740@serverless@云原生", + "103665094@serverless@云原生", + "111710658@serverless@云原生" ] } } @@ -4716,7 +5524,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.01685174069627851, + "max": 0.01686674669867947 + }, "related_data": {} } } @@ -4734,11 +5545,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.01686674669867947, + "max": 0.01688175270108043 + }, "related_data": { "blog": { "data_id": [ - "79803267" + "79803267@serverless@云原生", + "79803267@无服务器@云原生" ] } } @@ -4753,11 +5568,15 @@ [ [ "编辑", - "函数" + "函数", + "编辑函数" ] ] ], - "level": "2", + "level": { + "min": 0.01688175270108043, + "max": 0.016896758703481392 + }, "related_data": {} } } @@ -4773,7 +5592,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.016896758703481392, + "max": 0.016911764705882352 + }, "related_data": {} } } @@ -4790,7 +5612,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.016911764705882352, + "max": 0.01692677070828331 + }, "related_data": {} } } @@ -4807,7 +5632,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.01692677070828331, + "max": 0.016941776710684274 + }, "related_data": {} } } @@ -4823,11 +5651,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.016941776710684274, + "max": 0.016956782713085233 + }, "related_data": { "blog": { "data_id": [ - "100770212" + "100770212@CNCF@云原生" ] } } @@ -4844,7 +5675,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.01680672268907563, + "max": 0.016956782713085233 + }, "related_data": {} } } @@ -4862,7 +5696,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.016956782713085233, + "max": 0.017106842737094837 + }, "related_data": {} } } @@ -4882,7 +5719,10 @@ [] ] ], - "level": "2", + "level": { + "min": 0.017106842737094837, + "max": 0.017181872749099637 + }, "related_data": {} } } @@ -4893,7 +5733,7 @@ { "FaaS的架构": { "data": { - "uuid": "云原生-6-61", + "uuid": "云原生-6-62", "seg": [ [ [ @@ -4902,20 +5742,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.017181872749099637, + "max": 0.017196878751500597 + }, "related_data": { "blog": { "data_id": [ - "82682082", - "109988994", - "85405018", - "82682087", - "102833144", - "85951023", - "83713623", - "87389931", - "97290306", - "79909862" + "82682082@serverless@云原生", + "109988994@serverless@云原生", + "85405018@serverless@云原生", + "82682087@serverless@云原生", + "102833144@serverless@云原生", + "85951023@serverless@云原生", + "83713623@serverless@云原生", + "87389931@serverless@云原生", + "97290306@无服务器@云原生", + "87389931@aws@云原生" ] } } @@ -4925,7 +5768,7 @@ { "函数的生命周期": { "data": { - "uuid": "云原生-6-62", + "uuid": "云原生-6-63", "seg": [ [ [ @@ -4934,7 +5777,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.017196878751500597, + "max": 0.01721188475390156 + }, "related_data": {} } } @@ -4942,7 +5788,7 @@ { "函数工作流": { "data": { - "uuid": "云原生-6-63", + "uuid": "云原生-6-64", "seg": [ [ [ @@ -4952,11 +5798,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.01721188475390156, + "max": 0.01722689075630252 + }, "related_data": { "blog": { "data_id": [ - "81240083" + "81240083@无服务器@云原生" ] } } @@ -4966,7 +5815,7 @@ { "BaaS的价值": { "data": { - "uuid": "云原生-6-64", + "uuid": "云原生-6-65", "seg": [ [ [ @@ -4975,12 +5824,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.01722689075630252, + "max": 0.01724189675870348 + }, "related_data": { "blog": { "data_id": [ - "80702555", - "65445813" + "80702555@serverless@云原生", + "65445813@paas@云原生" ] } } @@ -4990,7 +5842,7 @@ { "广义的Serverless": { "data": { - "uuid": "云原生-6-65", + "uuid": "云原生-6-66", "seg": [ [ [ @@ -4999,7 +5851,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.01724189675870348, + "max": 0.01725690276110444 + }, "related_data": {} } } @@ -5017,7 +5872,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.017181872749099637, + "max": 0.01725690276110444 + }, "related_data": {} } } @@ -5033,7 +5891,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.017106842737094837, + "max": 0.01725690276110444 + }, "related_data": {} } } @@ -5053,7 +5914,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.01725690276110444, + "max": 0.017331932773109245 + }, "related_data": {} } } @@ -5070,20 +5934,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.017331932773109245, + "max": 0.017406962785114045 + }, "related_data": { "blog": { "data_id": [ - "52133533", - "80257980", - "89756366", - "91440364", - "103592869", - "53581728", - "88931487", - "103518327", - "104215723", - "103818074" + "52133533@serverless@云原生", + "80257980@无服务器@云原生", + "89756366@serverless@云原生", + "91440364@serverless@云原生", + "91727544@serverless@云原生", + "103592869@serverless@云原生", + "53581728@devops@云原生", + "88931487@serverless@云原生", + "103518327@serverless@云原生", + "104215723@serverless@云原生" ] } } @@ -5101,7 +5968,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.01725690276110444, + "max": 0.017406962785114045 + }, "related_data": {} } } @@ -5114,11 +5984,15 @@ [ [ "serverless", - "技术" + "技术", + "技术特点" ] ] ], - "level": "2", + "level": { + "min": 0.017406962785114045, + "max": 0.01755702280912365 + }, "related_data": {} } } @@ -5135,7 +6009,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.01755702280912365, + "max": 0.017707082833133252 + }, "related_data": {} } } @@ -5152,7 +6029,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.017707082833133252, + "max": 0.017857142857142856 + }, "related_data": {} } } @@ -5168,7 +6048,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.01680672268907563, + "max": 0.017857142857142856 + }, "related_data": {} } } @@ -5188,20 +6071,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.017857142857142856, + "max": 0.01800720288115246 + }, "related_data": { "blog": { "data_id": [ - "72842956", - "67636996", - "79160034", - "79474884", - "81103440", - "79788829", - "80989986", - "74939002", - "79965612", - "86698765" + "72842956@aws@云原生", + "67636996@aws@云原生", + "79160034@aws@云原生", + "79474884@aws@云原生", + "81103440@aws@云原生", + "79788829@aws@云原生", + "80989986@aws@云原生", + "74939002@aws@云原生", + "79965612@aws@云原生", + "86698765@aws@云原生" ] } } @@ -5221,20 +6107,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.01800720288115246, + "max": 0.018157262905162064 + }, "related_data": { "blog": { "data_id": [ - "79744051", - "108552711", - "82967837", - "78411610", - "78526093", - "78405452", - "78616153", - "78404789", - "78608872", - "78410205" + "79744051@无服务器@云原生", + "108552711@aws@云原生", + "82967837@aws@云原生", + "78411610@无服务器@云原生", + "78405452@无服务器@云原生", + "78616153@无服务器@云原生", + "78404789@无服务器@云原生", + "78608872@无服务器@云原生", + "78410205@无服务器@云原生", + "78404796@无服务器@云原生" ] } } @@ -5255,11 +6144,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.018157262905162064, + "max": 0.018207282913165264 + }, "related_data": { "blog": { "data_id": [ - "84902650" + "84902650@aws@云原生" ] } } @@ -5277,7 +6169,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.018207282913165264, + "max": 0.018257302921168467 + }, "related_data": {} } } @@ -5293,7 +6188,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.018257302921168467, + "max": 0.018307322929171668 + }, "related_data": {} } } @@ -5309,7 +6207,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.018157262905162064, + "max": 0.018307322929171668 + }, "related_data": {} } } @@ -5325,11 +6226,15 @@ [ [ "事件", - "源" + "源", + "事件源" ] ] ], - "level": "2", + "level": { + "min": 0.018307322929171668, + "max": 0.018382352941176468 + }, "related_data": {} } } @@ -5346,7 +6251,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.018382352941176468, + "max": 0.01845738295318127 + }, "related_data": {} } } @@ -5361,7 +6269,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.018307322929171668, + "max": 0.01845738295318127 + }, "related_data": {} } } @@ -5378,7 +6289,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.01845738295318127, + "max": 0.018607442977190875 + }, "related_data": {} } } @@ -5397,7 +6311,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.018607442977190875, + "max": 0.01875750300120048 + }, "related_data": {} } } @@ -5413,7 +6330,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.018607442977190875, + "max": 0.01875750300120048 + }, "related_data": {} } } @@ -5432,7 +6352,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.01875750300120048, + "max": 0.018832533013205283 + }, "related_data": {} } } @@ -5449,7 +6372,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.018832533013205283, + "max": 0.018907563025210083 + }, "related_data": {} } } @@ -5464,7 +6390,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.01875750300120048, + "max": 0.018907563025210083 + }, "related_data": {} } } @@ -5480,7 +6409,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.017857142857142856, + "max": 0.018907563025210083 + }, "related_data": {} } } @@ -5500,12 +6432,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.018907563025210083, + "max": 0.019082633053221287 + }, "related_data": { "blog": { "data_id": [ - "1479866", - "6582531" + "1479866@中间件@云原生" ] } } @@ -5525,7 +6459,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.019082633053221287, + "max": 0.01925770308123249 + }, "related_data": {} } } @@ -5546,7 +6483,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.01925770308123249, + "max": 0.019316059757236225 + }, "related_data": {} } } @@ -5563,20 +6503,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.019316059757236225, + "max": 0.019374416433239963 + }, "related_data": { "blog": { "data_id": [ - "109695110", - "95630180", - "54093533", - "85003711", - "90342232", - "51970934", - "54632592", - "11194289", - "6279735", - "118151757" + "109695110@serverless@云原生", + "95630180@devops@云原生", + "54093533@paas@云原生", + "85003711@devops@云原生", + "90342232@无服务器@云原生", + "51970934@aws@云原生", + "54632592@devops@云原生", + "54632592@aws@云原生", + "11194289@aws@云原生", + "6279735@paas@云原生" ] } } @@ -5594,7 +6537,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.019374416433239963, + "max": 0.019432773109243698 + }, "related_data": {} } } @@ -5611,7 +6557,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.01925770308123249, + "max": 0.019432773109243698 + }, "related_data": {} } } @@ -5631,11 +6580,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.019432773109243698, + "max": 0.0195203081232493 + }, "related_data": { "blog": { "data_id": [ - "83061973" + "83061973@docker@云原生" ] } } @@ -5655,7 +6607,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0195203081232493, + "max": 0.0196078431372549 + }, "related_data": {} } } @@ -5672,7 +6627,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.019432773109243698, + "max": 0.0196078431372549 + }, "related_data": {} } } @@ -5692,7 +6650,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0196078431372549, + "max": 0.019651610644257703 + }, "related_data": {} } } @@ -5703,7 +6664,7 @@ { "HTTP Trigger": { "data": { - "uuid": "云原生-6-66", + "uuid": "云原生-6-67", "seg": [ [ [ @@ -5712,7 +6673,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.019651610644257703, + "max": 0.019662552521008403 + }, "related_data": {} } } @@ -5720,7 +6684,7 @@ { "Cronjob Trigger": { "data": { - "uuid": "云原生-6-67", + "uuid": "云原生-6-68", "seg": [ [ [ @@ -5729,7 +6693,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.019662552521008403, + "max": 0.019673494397759103 + }, "related_data": {} } } @@ -5737,7 +6704,7 @@ { "Kafka Trigger": { "data": { - "uuid": "云原生-6-68", + "uuid": "云原生-6-69", "seg": [ [ [ @@ -5746,7 +6713,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.019673494397759103, + "max": 0.019684436274509803 + }, "related_data": {} } } @@ -5754,7 +6724,7 @@ { "NATS Trigger": { "data": { - "uuid": "云原生-6-69", + "uuid": "云原生-6-70", "seg": [ [ [ @@ -5763,7 +6733,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.019684436274509803, + "max": 0.019695378151260504 + }, "related_data": {} } } @@ -5781,7 +6754,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.019651610644257703, + "max": 0.019695378151260504 + }, "related_data": {} } } @@ -5794,11 +6770,15 @@ [ [ "函数", - "代理" + "代理", + "函数代理" ] ] ], - "level": "2", + "level": { + "min": 0.019695378151260504, + "max": 0.019739145658263305 + }, "related_data": {} } } @@ -5814,7 +6794,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.019739145658263305, + "max": 0.019782913165266106 + }, "related_data": {} } } @@ -5830,7 +6813,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0196078431372549, + "max": 0.019782913165266106 + }, "related_data": {} } } @@ -5844,11 +6830,15 @@ [ "私有", "云", - "部署" + "部署", + "云部署" ] ] ], - "level": "2", + "level": { + "min": 0.019782913165266106, + "max": 0.01995798319327731 + }, "related_data": {} } } @@ -5864,7 +6854,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.018907563025210083, + "max": 0.01995798319327731 + }, "related_data": {} } } @@ -5886,20 +6879,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.01995798319327731, + "max": 0.02002363445378151 + }, "related_data": { "blog": { "data_id": [ - "109277817", - "80553680", - "38183629", - "78705593", - "52130449", - "72082011", - "52047600", - "53333373", - "18473761", - "84800637" + "109277817@docker@云原生", + "80553680@容器@云原生", + "38183629@容器@云原生", + "78705593@容器@云原生", + "52130449@docker@云原生", + "72082011@docker@云原生", + "52130449@容器@云原生", + "52047600@容器@云原生", + "53333373@容器@云原生", + "18473761@容器@云原生" ] } } @@ -5914,18 +6910,23 @@ [ [ "容器", - "镜像" + "镜像", + "容器镜像" ] ] ], - "level": "2", + "level": { + "min": 0.02002363445378151, + "max": 0.020089285714285712 + }, "related_data": { "blog": { "data_id": [ - "78522206", - "82996909", - "81154945", - "102827125" + "78522206@docker@云原生", + "78522206@容器@云原生", + "82996909@容器@云原生", + "81154945@容器@云原生", + "102827125@容器@云原生" ] } } @@ -5940,11 +6941,15 @@ [ [ "镜像", - "仓库" + "仓库", + "镜像仓库" ] ] ], - "level": "2", + "level": { + "min": 0.020089285714285712, + "max": 0.020154936974789914 + }, "related_data": {} } } @@ -5961,7 +6966,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.020154936974789914, + "max": 0.020220588235294115 + }, "related_data": {} } } @@ -5976,7 +6984,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.01995798319327731, + "max": 0.020220588235294115 + }, "related_data": {} } } @@ -5995,11 +7006,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.020220588235294115, + "max": 0.020264355742296916 + }, "related_data": { "blog": { "data_id": [ - "110818421" + "110818421@vagrant@云原生" ] } } @@ -6017,11 +7031,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.020264355742296916, + "max": 0.020308123249299717 + }, "related_data": { "blog": { "data_id": [ - "109759626" + "109759626@容器@云原生" ] } } @@ -6040,7 +7057,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.020308123249299717, + "max": 0.020351890756302518 + }, "related_data": {} } } @@ -6057,7 +7077,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.020351890756302518, + "max": 0.02039565826330532 + }, "related_data": {} } } @@ -6071,11 +7094,15 @@ [ "构建", "容器", - "镜像" + "镜像", + "容器镜像" ] ] ], - "level": "2", + "level": { + "min": 0.02039565826330532, + "max": 0.02043942577030812 + }, "related_data": {} } } @@ -6092,7 +7119,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.02043942577030812, + "max": 0.02048319327731092 + }, "related_data": {} } } @@ -6107,7 +7137,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.020220588235294115, + "max": 0.02048319327731092 + }, "related_data": {} } } @@ -6123,11 +7156,15 @@ [ [ "命名", - "空间" + "空间", + "命名空间" ] ] ], - "level": "2", + "level": { + "min": 0.02048319327731092, + "max": 0.02051601890756302 + }, "related_data": {} } } @@ -6143,7 +7180,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.02051601890756302, + "max": 0.020548844537815122 + }, "related_data": {} } } @@ -6159,7 +7199,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.020548844537815122, + "max": 0.020581670168067223 + }, "related_data": {} } } @@ -6175,7 +7218,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.020581670168067223, + "max": 0.020614495798319324 + }, "related_data": {} } } @@ -6191,7 +7237,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.020614495798319324, + "max": 0.020647321428571428 + }, "related_data": {} } } @@ -6207,7 +7256,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.020647321428571428, + "max": 0.02068014705882353 + }, "related_data": {} } } @@ -6223,7 +7275,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.02068014705882353, + "max": 0.02071297268907563 + }, "related_data": {} } } @@ -6240,7 +7295,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.02071297268907563, + "max": 0.02074579831932773 + }, "related_data": {} } } @@ -6256,7 +7314,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.02048319327731092, + "max": 0.02074579831932773 + }, "related_data": {} } } @@ -6277,7 +7338,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.02074579831932773, + "max": 0.020877100840336133 + }, "related_data": {} } } @@ -6295,7 +7359,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.020877100840336133, + "max": 0.021008403361344536 + }, "related_data": {} } } @@ -6312,7 +7379,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.02074579831932773, + "max": 0.021008403361344536 + }, "related_data": {} } } @@ -6325,11 +7395,16 @@ [ "容器", "技术", - "基础" + "基础", + "容器技术", + "技术基础" ] ] ], - "level": "2", + "level": { + "min": 0.01995798319327731, + "max": 0.021008403361344536 + }, "related_data": {} } } @@ -6349,7 +7424,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.021008403361344536, + "max": 0.021271008403361342 + }, "related_data": {} } } @@ -6369,8 +7447,17 @@ ] ] ], - "level": "2", - "related_data": {} + "level": { + "min": 0.021271008403361342, + "max": 0.021358543417366944 + }, + "related_data": { + "blog": { + "data_id": [ + "10944819@阿里云@云原生" + ] + } + } } } }, @@ -6386,11 +7473,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.021358543417366944, + "max": 0.02144607843137255 + }, "related_data": { "blog": { "data_id": [ - "78933061" + "78933061@cloud@云原生" ] } } @@ -6409,7 +7499,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.02144607843137255, + "max": 0.02153361344537815 + }, "related_data": {} } } @@ -6426,7 +7519,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.021271008403361342, + "max": 0.02153361344537815 + }, "related_data": {} } } @@ -6446,7 +7542,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.02153361344537815, + "max": 0.021621148459383753 + }, "related_data": {} } } @@ -6463,7 +7562,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.021621148459383753, + "max": 0.021708683473389355 + }, "related_data": {} } } @@ -6482,7 +7584,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.021708683473389355, + "max": 0.021796218487394957 + }, "related_data": {} } } @@ -6495,11 +7600,15 @@ [ "serverless", "架构", - "转型" + "转型", + "架构转型" ] ] ], - "level": "2", + "level": { + "min": 0.02153361344537815, + "max": 0.021796218487394957 + }, "related_data": {} } } @@ -6516,11 +7625,15 @@ [ "建立", "行业", - "规范" + "规范", + "行业规范" ] ] ], - "level": "2", + "level": { + "min": 0.021796218487394957, + "max": 0.02192752100840336 + }, "related_data": {} } } @@ -6534,11 +7647,15 @@ [ "完善", "工具", - "链" + "链", + "工具链" ] ] ], - "level": "2", + "level": { + "min": 0.02192752100840336, + "max": 0.022058823529411763 + }, "related_data": {} } } @@ -6554,7 +7671,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.021796218487394957, + "max": 0.022058823529411763 + }, "related_data": {} } } @@ -6573,7 +7693,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.021008403361344536, + "max": 0.022058823529411763 + }, "related_data": {} } } @@ -6595,7 +7718,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.022058823529411763, + "max": 0.02240896358543417 + }, "related_data": {} } } @@ -6614,7 +7740,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.02240896358543417, + "max": 0.02275910364145658 + }, "related_data": {} } } @@ -6631,11 +7760,15 @@ [ "视频", "转码", - "服务" + "服务", + "视频转码" ] ] ], - "level": "2", + "level": { + "min": 0.02275910364145658, + "max": 0.022829131652661063 + }, "related_data": {} } } @@ -6653,7 +7786,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.022829131652661063, + "max": 0.022899159663865545 + }, "related_data": {} } } @@ -6671,7 +7807,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.022899159663865545, + "max": 0.022969187675070026 + }, "related_data": {} } } @@ -6689,7 +7828,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.022969187675070026, + "max": 0.023039215686274508 + }, "related_data": {} } } @@ -6706,7 +7848,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.023039215686274508, + "max": 0.02310924369747899 + }, "related_data": {} } } @@ -6722,7 +7867,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.02275910364145658, + "max": 0.02310924369747899 + }, "related_data": {} } } @@ -6738,7 +7886,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.022058823529411763, + "max": 0.02310924369747899 + }, "related_data": {} } } @@ -6762,15 +7913,39 @@ ] ] ], - "level": "2", + "level": { + "min": 0.02310924369747899, + "max": 0.02319677871148459 + }, "related_data": {} } } }, { - "工作流程": { + "函数生命周期": { "data": { "uuid": "云原生-5-190", + "seg": [ + [ + [ + "函数", + "生命周期", + "函数生命周期" + ] + ] + ], + "level": { + "min": 0.02319677871148459, + "max": 0.023284313725490193 + }, + "related_data": {} + } + } + }, + { + "工作流程": { + "data": { + "uuid": "云原生-5-191", "seg": [ [ [ @@ -6779,7 +7954,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.023284313725490193, + "max": 0.023371848739495795 + }, "related_data": {} } } @@ -6792,11 +7970,15 @@ [ "serverless", "架构", - "规范" + "规范", + "架构规范" ] ] ], - "level": "2", + "level": { + "min": 0.02310924369747899, + "max": 0.023371848739495795 + }, "related_data": {} } } @@ -6807,7 +7989,7 @@ { "相关术语": { "data": { - "uuid": "云原生-5-191", + "uuid": "云原生-5-192", "seg": [ [ [ @@ -6816,7 +7998,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.023371848739495795, + "max": 0.0235031512605042 + }, "related_data": {} } } @@ -6824,7 +8009,7 @@ { "上下文属性": { "data": { - "uuid": "云原生-5-192", + "uuid": "云原生-5-193", "seg": [ [ [ @@ -6833,7 +8018,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0235031512605042, + "max": 0.023634453781512604 + }, "related_data": {} } } @@ -6851,7 +8039,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.023371848739495795, + "max": 0.023634453781512604 + }, "related_data": {} } } @@ -6862,7 +8053,7 @@ { "Google Cloud Function": { "data": { - "uuid": "云原生-5-193", + "uuid": "云原生-5-194", "seg": [ [ [ @@ -6872,20 +8063,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.023634453781512604, + "max": 0.023765756302521007 + }, "related_data": { "blog": { "data_id": [ - "7549787", - "7044471", - "7222501", - "7026193", - "17610451", - "7826023", - "5822149", - "117016520", - "5482854", - "46988621" + "7549787@go@云原生", + "7044471@go@云原生", + "7222501@go@云原生", + "7026193@go@云原生", + "17610451@go@云原生", + "5822149@go@云原生", + "117016520@go@云原生", + "5482854@go@云原生", + "46988621@go@云原生", + "62896784@go@云原生" ] } } @@ -6895,23 +8089,27 @@ { "腾讯云SCF": { "data": { - "uuid": "云原生-5-194", + "uuid": "云原生-5-195", "seg": [ [ [ "腾讯", "云", - "scf" + "scf", + "腾讯云" ] ] ], - "level": "2", + "level": { + "min": 0.023765756302521007, + "max": 0.02389705882352941 + }, "related_data": { "blog": { "data_id": [ - "89160986", - "78949251", - "107925405" + "89160986@无服务器@云原生", + "78949251@无服务器@云原生", + "107925405@cloud@云原生" ] } } @@ -6929,7 +8127,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.023634453781512604, + "max": 0.02389705882352941 + }, "related_data": {} } } @@ -6940,21 +8141,25 @@ { "CLI命令行工具": { "data": { - "uuid": "云原生-5-195", + "uuid": "云原生-5-196", "seg": [ [ [ "cli", "命令行", - "工具" + "工具", + "命令行工具" ] ] ], - "level": "2", + "level": { + "min": 0.02389705882352941, + "max": 0.024028361344537813 + }, "related_data": { "blog": { "data_id": [ - "115752171" + "115752171@运维@云原生" ] } } @@ -6964,7 +8169,7 @@ { "插件": { "data": { - "uuid": "云原生-5-196", + "uuid": "云原生-5-197", "seg": [ [ [ @@ -6972,7 +8177,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.024028361344537813, + "max": 0.024159663865546216 + }, "related_data": {} } } @@ -6985,11 +8193,15 @@ [ "开发", "运维", - "工具" + "工具", + "运维工具" ] ] ], - "level": "2", + "level": { + "min": 0.02389705882352941, + "max": 0.024159663865546216 + }, "related_data": {} } } @@ -7005,7 +8217,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.02310924369747899, + "max": 0.024159663865546216 + }, "related_data": {} } } @@ -7019,7 +8234,7 @@ { "上传图片加水印": { "data": { - "uuid": "云原生-5-197", + "uuid": "云原生-5-198", "seg": [ [ [ @@ -7030,7 +8245,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.024159663865546216, + "max": 0.024509803921568627 + }, "related_data": {} } } @@ -7038,18 +8256,22 @@ { "用IP地址查天气并在小程序中应用": { "data": { - "uuid": "云原生-5-198", + "uuid": "云原生-5-199", "seg": [ [ [ "ip地址", "查", "天气", - "程序" + "程序", + "小程序" ] ] ], - "level": "1", + "level": { + "min": 0.024509803921568627, + "max": 0.024859943977591035 + }, "related_data": {} } } @@ -7057,7 +8279,7 @@ { "简易用户反馈功能与快应用实践": { "data": { - "uuid": "云原生-5-199", + "uuid": "云原生-5-200", "seg": [ [ [ @@ -7071,7 +8293,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.024859943977591035, + "max": 0.025210084033613446 + }, "related_data": {} } } @@ -7090,7 +8315,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.024159663865546216, + "max": 0.025210084033613446 + }, "related_data": {} } } @@ -7111,7 +8339,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.024159663865546216, + "max": 0.025210084033613446 + }, "related_data": {} } } @@ -7128,19 +8359,23 @@ [ "数据", "技术", - "mapreduce" + "mapreduce", + "数据技术" ] ] ], - "level": "2", + "level": { + "min": 0.025210084033613446, + "max": 0.025735294117647058 + }, "related_data": { "blog": { "data_id": [ - "81133090", - "7091686", - "112360378", - "98833901", - "109241829" + "81133090@kafka@云原生", + "7091686@中间件@云原生", + "112360378@分布式@云原生", + "98833901@运维@云原生", + "109241829@运维@云原生" ] } } @@ -7153,7 +8388,7 @@ { "自然语言处理为你的网站赋能": { "data": { - "uuid": "云原生-5-200", + "uuid": "云原生-5-201", "seg": [ [ [ @@ -7163,7 +8398,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.025735294117647058, + "max": 0.02586659663865546 + }, "related_data": {} } } @@ -7171,24 +8409,30 @@ { "智能客服与微信小程序": { "data": { - "uuid": "云原生-5-201", + "uuid": "云原生-5-202", "seg": [ [ [ "智能", - "客服" + "客服", + "智能客服" ], [ "微信", - "程序" + "程序", + "小程序" ] ] ], - "level": "2", + "level": { + "min": 0.02586659663865546, + "max": 0.025997899159663863 + }, "related_data": { "blog": { "data_id": [ - "87971576" + "87971576@go@云原生", + "117408914@阿里云@云原生" ] } } @@ -7198,7 +8442,7 @@ { "简单的车牌识别系统": { "data": { - "uuid": "云原生-5-202", + "uuid": "云原生-5-203", "seg": [ [ [ @@ -7207,7 +8451,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.025997899159663863, + "max": 0.02612920168067227 + }, "related_data": {} } } @@ -7215,7 +8462,7 @@ { "视觉:对象检测系统": { "data": { - "uuid": "云原生-5-203", + "uuid": "云原生-5-204", "seg": [ [ [ @@ -7230,11 +8477,14 @@ ] ] ], - "level": "3", + "level": { + "min": 0.02612920168067227, + "max": 0.026260504201680673 + }, "related_data": { "blog": { "data_id": [ - "8782369" + "8782369@etcd@云原生" ] } } @@ -7249,15 +8499,19 @@ [ "人工智能", "领域", - "实践" + "实践", + "人工智能领域" ] ] ], - "level": "2", + "level": { + "min": 0.025735294117647058, + "max": 0.026260504201680673 + }, "related_data": { "blog": { "data_id": [ - "79526474" + "79526474@go@云原生" ] } } @@ -7275,11 +8529,15 @@ [ "人工智能", "场景", - "实践" + "实践", + "人工智能场景" ] ] ], - "level": "2", + "level": { + "min": 0.025210084033613446, + "max": 0.026260504201680673 + }, "related_data": {} } } @@ -7299,15 +8557,19 @@ "定制", "智能", "音箱", - "工具" + "工具", + "智能音箱" ] ] ], - "level": "2", + "level": { + "min": 0.026260504201680673, + "max": 0.026785714285714288 + }, "related_data": { "blog": { "data_id": [ - "88743945" + "88743945@阿里云@云原生" ] } } @@ -7320,7 +8582,7 @@ { "OJ判题机/小程序在线编程系统实现": { "data": { - "uuid": "云原生-5-204", + "uuid": "云原生-5-205", "seg": [ [ [ @@ -7329,15 +8591,20 @@ "机", "程序", "编程", - "系统" + "系统", + "判题机", + "编程系统" ] ] ], - "level": "2", + "level": { + "min": 0.026785714285714288, + "max": 0.027048319327731093 + }, "related_data": { "blog": { "data_id": [ - "51516329" + "51516329@中间件@云原生" ] } } @@ -7347,7 +8614,7 @@ { "微信公众号机器人": { "data": { - "uuid": "云原生-5-205", + "uuid": "云原生-5-206", "seg": [ [ [ @@ -7357,7 +8624,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.027048319327731093, + "max": 0.0273109243697479 + }, "related_data": {} } } @@ -7373,7 +8643,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.026785714285714288, + "max": 0.0273109243697479 + }, "related_data": {} } } @@ -7392,7 +8665,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.026260504201680673, + "max": 0.0273109243697479 + }, "related_data": {} } } @@ -7409,11 +8685,15 @@ [ "serverless", "架构", - "实时" + "实时", + "不仅仅是" ] ] ], - "level": "2", + "level": { + "min": 0.0273109243697479, + "max": 0.02783613445378151 + }, "related_data": {} } } @@ -7430,7 +8710,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.02783613445378151, + "max": 0.028361344537815126 + }, "related_data": {} } } @@ -7446,7 +8729,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0273109243697479, + "max": 0.028361344537815126 + }, "related_data": {} } } @@ -7467,7 +8753,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.028361344537815126, + "max": 0.02857142857142857 + }, "related_data": {} } } @@ -7484,7 +8773,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.02857142857142857, + "max": 0.028781512605042015 + }, "related_data": {} } } @@ -7501,7 +8793,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.028781512605042015, + "max": 0.028991596638655463 + }, "related_data": {} } } @@ -7519,7 +8814,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.028991596638655463, + "max": 0.029201680672268908 + }, "related_data": {} } } @@ -7537,7 +8835,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.029201680672268908, + "max": 0.029411764705882353 + }, "related_data": {} } } @@ -7555,7 +8856,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.028361344537815126, + "max": 0.029411764705882353 + }, "related_data": {} } } @@ -7575,7 +8879,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.029411764705882353, + "max": 0.02967436974789916 + }, "related_data": {} } } @@ -7592,7 +8899,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.02967436974789916, + "max": 0.029936974789915964 + }, "related_data": {} } } @@ -7609,7 +8919,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.029936974789915964, + "max": 0.030199579831932773 + }, "related_data": {} } } @@ -7626,7 +8939,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.030199579831932773, + "max": 0.03046218487394958 + }, "related_data": {} } } @@ -7643,7 +8959,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.029411764705882353, + "max": 0.03046218487394958 + }, "related_data": {} } } @@ -7663,7 +8982,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03046218487394958, + "max": 0.030812324929971987 + }, "related_data": {} } } @@ -7682,7 +9004,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.030812324929971987, + "max": 0.031162464985994398 + }, "related_data": {} } } @@ -7702,7 +9027,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.031162464985994398, + "max": 0.031512605042016806 + }, "related_data": {} } } @@ -7719,7 +9047,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03046218487394958, + "max": 0.031512605042016806 + }, "related_data": {} } } @@ -7739,7 +9070,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.031512605042016806, + "max": 0.031862745098039214 + }, "related_data": {} } } @@ -7759,7 +9093,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.031862745098039214, + "max": 0.03221288515406162 + }, "related_data": {} } } @@ -7779,7 +9116,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03221288515406162, + "max": 0.03256302521008403 + }, "related_data": {} } } @@ -7796,7 +9136,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.031512605042016806, + "max": 0.03256302521008403 + }, "related_data": {} } } @@ -7816,16 +9159,19 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03256302521008403, + "max": 0.032773109243697474 + }, "related_data": { "blog": { "data_id": [ - "86538525", - "80900579", - "47724029", - "115396018", - "115298732", - "51464808" + "86538525@aws@云原生", + "80900579@aws@云原生", + "47724029@aws@云原生", + "115396018@aws@云原生", + "115298732@aws@云原生", + "51464808@aws@云原生" ] } } @@ -7844,7 +9190,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.032773109243697474, + "max": 0.03298319327731092 + }, "related_data": {} } } @@ -7859,11 +9208,15 @@ "私有", "子网", "保护", - "lambda" + "lambda", + "子网内" ] ] ], - "level": "2", + "level": { + "min": 0.03298319327731092, + "max": 0.03319327731092437 + }, "related_data": {} } } @@ -7881,7 +9234,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03319327731092437, + "max": 0.033403361344537814 + }, "related_data": {} } } @@ -7900,7 +9256,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.033403361344537814, + "max": 0.03361344537815126 + }, "related_data": {} } } @@ -7917,7 +9276,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03256302521008403, + "max": 0.03361344537815126 + }, "related_data": {} } } @@ -7937,7 +9299,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03361344537815126, + "max": 0.033876050420168065 + }, "related_data": {} } } @@ -7956,7 +9321,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.033876050420168065, + "max": 0.03413865546218488 + }, "related_data": {} } } @@ -7973,7 +9341,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03413865546218488, + "max": 0.03440126050420168 + }, "related_data": {} } } @@ -7990,7 +9361,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03440126050420168, + "max": 0.03466386554621849 + }, "related_data": {} } } @@ -8008,7 +9382,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03361344537815126, + "max": 0.03466386554621849 + }, "related_data": {} } } @@ -8030,7 +9407,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03466386554621849, + "max": 0.034926470588235295 + }, "related_data": {} } } @@ -8048,7 +9428,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.034926470588235295, + "max": 0.0351890756302521 + }, "related_data": {} } } @@ -8064,7 +9447,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0351890756302521, + "max": 0.035451680672268907 + }, "related_data": {} } } @@ -8084,7 +9470,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.035451680672268907, + "max": 0.03571428571428571 + }, "related_data": {} } } @@ -8102,7 +9491,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03466386554621849, + "max": 0.03571428571428571 + }, "related_data": {} } } @@ -8117,7 +9509,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0, + "max": 0.03571428571428571 + }, "related_data": {} } } @@ -8139,7 +9534,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03571428571428571, + "max": 0.035817805383022774 + }, "related_data": {} } } @@ -8155,7 +9553,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.035817805383022774, + "max": 0.035921325051759836 + }, "related_data": {} } } @@ -8171,7 +9572,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.035921325051759836, + "max": 0.03602484472049689 + }, "related_data": {} } } @@ -8189,7 +9593,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03602484472049689, + "max": 0.036128364389233954 + }, "related_data": {} } } @@ -8207,7 +9614,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.036128364389233954, + "max": 0.036231884057971016 + }, "related_data": {} } } @@ -8223,7 +9633,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03571428571428571, + "max": 0.036231884057971016 + }, "related_data": {} } } @@ -8242,7 +9655,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.036231884057971016, + "max": 0.03640441683919945 + }, "related_data": {} } } @@ -8253,7 +9669,7 @@ { "简介": { "data": { - "uuid": "云原生-5-206", + "uuid": "云原生-5-207", "seg": [ [ [ @@ -8261,7 +9677,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03640441683919945, + "max": 0.036490683229813664 + }, "related_data": {} } } @@ -8269,7 +9688,7 @@ { "常用组件": { "data": { - "uuid": "云原生-5-207", + "uuid": "云原生-5-208", "seg": [ [ [ @@ -8277,7 +9696,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.036490683229813664, + "max": 0.03657694962042788 + }, "related_data": {} } } @@ -8293,7 +9715,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03640441683919945, + "max": 0.03657694962042788 + }, "related_data": {} } } @@ -8309,7 +9734,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03657694962042788, + "max": 0.03674948240165631 + }, "related_data": {} } } @@ -8324,12 +9752,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.036231884057971016, + "max": 0.03674948240165631 + }, "related_data": { "blog": { "data_id": [ - "78925282", - "100051535" + "78925282@mesh@云原生", + "100051535@分布式@云原生" ] } } @@ -8345,17 +9776,21 @@ { "单体架构简介": { "data": { - "uuid": "云原生-5-208", + "uuid": "云原生-5-209", "seg": [ [ [ "单体", "架构", - "简介" + "简介", + "单体架构" ] ] ], - "level": "2", + "level": { + "min": 0.03674948240165631, + "max": 0.036783988957902 + }, "related_data": {} } } @@ -8363,16 +9798,20 @@ { "单体架构存在的不足": { "data": { - "uuid": "云原生-5-209", + "uuid": "云原生-5-210", "seg": [ [ [ "单体", - "架构" + "架构", + "单体架构" ] ] ], - "level": "2", + "level": { + "min": 0.036783988957902, + "max": 0.03681849551414769 + }, "related_data": {} } } @@ -8380,24 +9819,29 @@ { "单体架构使用服务器集群及存在的不足": { "data": { - "uuid": "云原生-5-210", + "uuid": "云原生-5-211", "seg": [ [ [ "单体", "架构", "服务器", - "集群" + "集群", + "单体架构", + "服务器集群" ], [] ] ], - "level": "2", + "level": { + "min": 0.03681849551414769, + "max": 0.036853002070393374 + }, "related_data": { "blog": { "data_id": [ - "89292631", - "84345442" + "89292631@微服务@云原生", + "84345442@分布式@云原生" ] } } @@ -8411,11 +9855,15 @@ [ [ "单体", - "架构" + "架构", + "单体架构" ] ] ], - "level": "2", + "level": { + "min": 0.03674948240165631, + "max": 0.036853002070393374 + }, "related_data": {} } } @@ -8426,7 +9874,7 @@ { "什么是微服务": { "data": { - "uuid": "云原生-5-211", + "uuid": "云原生-5-212", "seg": [ [ [ @@ -8435,20 +9883,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.036853002070393374, + "max": 0.036904761904761905 + }, "related_data": { "blog": { "data_id": [ - "74420720", - "118449828", - "79270625", - "103509855", - "81284292", - "89879370", - "112240377", - "81016500", - "113605650", - "92982266" + "74420720@微服务@云原生", + "118449828@微服务@云原生", + "79270625@docker@云原生", + "103509855@eureka@云原生", + "79270625@微服务@云原生", + "81284292@微服务@云原生", + "89879370@服务发现@云原生", + "112240377@服务发现@云原生", + "81016500@分布式@云原生", + "113605650@eureka@云原生" ] } } @@ -8458,7 +9909,7 @@ { "微服务的优势": { "data": { - "uuid": "云原生-5-212", + "uuid": "云原生-5-213", "seg": [ [ [ @@ -8468,7 +9919,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.036904761904761905, + "max": 0.03695652173913044 + }, "related_data": {} } } @@ -8484,7 +9938,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.036853002070393374, + "max": 0.03695652173913044 + }, "related_data": {} } } @@ -8495,7 +9952,7 @@ { "微服务的复杂度": { "data": { - "uuid": "云原生-5-213", + "uuid": "云原生-5-214", "seg": [ [ [ @@ -8505,7 +9962,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03695652173913044, + "max": 0.0369824016563147 + }, "related_data": {} } } @@ -8513,23 +9973,29 @@ { "分布式事务": { "data": { - "uuid": "云原生-5-214", + "uuid": "云原生-5-215", "seg": [ [ [ "分布式", - "事务" + "事务", + "分布式事务" ] ] ], - "level": "2", + "level": { + "min": 0.0369824016563147, + "max": 0.03700828157349896 + }, "related_data": { "blog": { "data_id": [ - "100340071", - "70195154", - "100519659", - "108934133" + "100340071@分布式@云原生", + "100340071@微服务@云原生", + "70195154@分布式@云原生", + "70195154@微服务@云原生", + "100519659@eureka@云原生", + "108934133@中间件@云原生" ] } } @@ -8539,7 +10005,7 @@ { "服务的划分": { "data": { - "uuid": "云原生-5-215", + "uuid": "云原生-5-216", "seg": [ [ [ @@ -8548,7 +10014,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03700828157349896, + "max": 0.037034161490683226 + }, "related_data": {} } } @@ -8556,7 +10025,7 @@ { "服务的部署": { "data": { - "uuid": "云原生-5-216", + "uuid": "云原生-5-217", "seg": [ [ [ @@ -8565,7 +10034,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.037034161490683226, + "max": 0.03706004140786749 + }, "related_data": {} } } @@ -8581,7 +10053,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03695652173913044, + "max": 0.03706004140786749 + }, "related_data": {} } } @@ -8602,11 +10077,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03706004140786749, + "max": 0.037163561076604554 + }, "related_data": { "blog": { "data_id": [ - "118574712" + "118574712@微服务@云原生" ] } } @@ -8627,7 +10105,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.037163561076604554, + "max": 0.037267080745341616 + }, "related_data": {} } } @@ -8644,7 +10125,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03674948240165631, + "max": 0.037267080745341616 + }, "related_data": {} } } @@ -8658,7 +10142,7 @@ { "服务的注册与发现": { "data": { - "uuid": "云原生-5-217", + "uuid": "云原生-5-218", "seg": [ [ [ @@ -8668,17 +10152,20 @@ [] ] ], - "level": "2", + "level": { + "min": 0.037267080745341616, + "max": 0.03728864734299517 + }, "related_data": { "blog": { "data_id": [ - "82257549", - "72891766", - "80691179", - "81913874", - "103747236", - "53559160", - "98069465" + "82257549@服务发现@云原生", + "72891766@服务发现@云原生", + "80691179@服务发现@云原生", + "81913874@eureka@云原生", + "103747236@服务发现@云原生", + "53559160@服务发现@云原生", + "98069465@服务发现@云原生" ] } } @@ -8688,7 +10175,7 @@ { "服务的负载均衡": { "data": { - "uuid": "云原生-5-218", + "uuid": "云原生-5-219", "seg": [ [ [ @@ -8698,13 +10185,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03728864734299517, + "max": 0.03731021394064873 + }, "related_data": { "blog": { "data_id": [ - "85012006", - "51066562", - "52167226" + "85012006@服务发现@云原生", + "51066562@服务发现@云原生", + "52167226@服务发现@云原生" ] } } @@ -8714,7 +10204,7 @@ { "服务的容错": { "data": { - "uuid": "云原生-5-219", + "uuid": "云原生-5-220", "seg": [ [ [ @@ -8723,7 +10213,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03731021394064873, + "max": 0.03733178053830228 + }, "related_data": {} } } @@ -8734,7 +10227,7 @@ { "服务网关的实现原理": { "data": { - "uuid": "云原生-6-70", + "uuid": "云原生-6-71", "seg": [ [ [ @@ -8744,11 +10237,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03733178053830228, + "max": 0.03733609385783299 + }, "related_data": { "blog": { "data_id": [ - "96330149" + "96330149@服务发现@云原生" ] } } @@ -8768,11 +10264,16 @@ "after", "路由", "断言", - "工厂" + "工厂", + "路由断言", + "断言工厂" ] ] ], - "level": "2", + "level": { + "min": 0.03733609385783299, + "max": 0.03733671004633738 + }, "related_data": {} } } @@ -8786,11 +10287,15 @@ [ "header", "断言", - "工厂" + "工厂", + "断言工厂" ] ] ], - "level": "2", + "level": { + "min": 0.03733671004633738, + "max": 0.03733732623484177 + }, "related_data": {} } } @@ -8805,11 +10310,16 @@ "cookie", "路由", "断言", - "工厂" + "工厂", + "路由断言", + "断言工厂" ] ] ], - "level": "2", + "level": { + "min": 0.03733732623484177, + "max": 0.037337942423346156 + }, "related_data": {} } } @@ -8824,15 +10334,20 @@ "host", "路由", "断言", - "工厂" + "工厂", + "路由断言", + "断言工厂" ] ] ], - "level": "2", + "level": { + "min": 0.037337942423346156, + "max": 0.037338558611850536 + }, "related_data": { "blog": { "data_id": [ - "82191023" + "82191023@CNCF@云原生" ] } } @@ -8849,11 +10364,16 @@ "method", "路由", "断言", - "工厂" + "工厂", + "路由断言", + "断言工厂" ] ] ], - "level": "2", + "level": { + "min": 0.037338558611850536, + "max": 0.037339174800354924 + }, "related_data": {} } } @@ -8868,11 +10388,16 @@ "path", "路由", "断言", - "工厂" + "工厂", + "路由断言", + "断言工厂" ] ] ], - "level": "2", + "level": { + "min": 0.037339174800354924, + "max": 0.03733979098885931 + }, "related_data": {} } } @@ -8887,27 +10412,36 @@ "query", "路由", "断言", - "工厂" + "工厂", + "路由断言", + "断言工厂" ] ] ], - "level": "2", + "level": { + "min": 0.03733979098885931, + "max": 0.0373404071773637 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-6-71", + "uuid": "云原生-6-72", "seg": [ [ [ "断言", - "工厂" + "工厂", + "断言工厂" ] ] ], - "level": "2", + "level": { + "min": 0.03733609385783299, + "max": 0.0373404071773637 + }, "related_data": {} } } @@ -8927,7 +10461,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0373404071773637, + "max": 0.03734148550724638 + }, "related_data": {} } } @@ -8944,7 +10481,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03734148550724638, + "max": 0.037342563837129056 + }, "related_data": {} } } @@ -8957,11 +10497,15 @@ [ [ "网关", - "过滤器" + "过滤器", + "网关过滤器" ] ] ], - "level": "2", + "level": { + "min": 0.037342563837129056, + "max": 0.037343642167011734 + }, "related_data": {} } } @@ -8974,18 +10518,22 @@ [ [ "全局", - "过滤器" + "过滤器", + "全局过滤器" ] ] ], - "level": "2", + "level": { + "min": 0.037343642167011734, + "max": 0.03734472049689441 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-6-72", + "uuid": "云原生-6-73", "seg": [ [ [ @@ -8993,7 +10541,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0373404071773637, + "max": 0.03734472049689441 + }, "related_data": {} } } @@ -9010,11 +10561,15 @@ [ "常见", "限流", - "算法" + "算法", + "限流算法" ] ] ], - "level": "2", + "level": { + "min": 0.03734472049689441, + "max": 0.03734579882677709 + }, "related_data": {} } } @@ -9032,7 +10587,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03734579882677709, + "max": 0.03734687715665977 + }, "related_data": {} } } @@ -9044,11 +10602,15 @@ "seg": [ [ [ - "方式" + "方式", + "普通方式" ] ] ], - "level": "2", + "level": { + "min": 0.03734687715665977, + "max": 0.03734795548654244 + }, "related_data": {} } } @@ -9061,18 +10623,22 @@ [ [ "条件", - "方式" + "方式", + "条件方式" ] ] ], - "level": "2", + "level": { + "min": 0.03734795548654244, + "max": 0.03734903381642512 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-6-73", + "uuid": "云原生-6-74", "seg": [ [ [ @@ -9080,7 +10646,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03734472049689441, + "max": 0.03734903381642512 + }, "related_data": {} } } @@ -9100,7 +10669,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03734903381642512, + "max": 0.037351190476190475 + }, "related_data": {} } } @@ -9120,14 +10692,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.037351190476190475, + "max": 0.03735334713595583 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-6-74", + "uuid": "云原生-6-75", "seg": [ [ [ @@ -9135,14 +10710,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03734903381642512, + "max": 0.03735334713595583 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-220", + "uuid": "云原生-5-221", "seg": [ [ [ @@ -9151,7 +10729,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03733178053830228, + "max": 0.03735334713595583 + }, "related_data": {} } } @@ -9159,7 +10740,7 @@ { "服务配置的统一管理": { "data": { - "uuid": "云原生-5-221", + "uuid": "云原生-5-222", "seg": [ [ [ @@ -9170,7 +10751,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03735334713595583, + "max": 0.03737491373360939 + }, "related_data": {} } } @@ -9178,7 +10762,7 @@ { "服务链路追踪": { "data": { - "uuid": "云原生-5-222", + "uuid": "云原生-5-223", "seg": [ [ [ @@ -9188,7 +10772,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03737491373360939, + "max": 0.03739648033126294 + }, "related_data": {} } } @@ -9206,7 +10793,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.037267080745341616, + "max": 0.03739648033126294 + }, "related_data": {} } } @@ -9223,7 +10813,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03739648033126294, + "max": 0.037525879917184264 + }, "related_data": {} } } @@ -9240,7 +10833,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.037525879917184264, + "max": 0.037655279503105585 + }, "related_data": {} } } @@ -9260,7 +10856,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.037655279503105585, + "max": 0.03778467908902691 + }, "related_data": {} } } @@ -9277,7 +10876,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.037267080745341616, + "max": 0.03778467908902691 + }, "related_data": {} } } @@ -9291,7 +10893,7 @@ { "JDK的下载和安装": { "data": { - "uuid": "云原生-5-223", + "uuid": "云原生-5-224", "seg": [ [ [ @@ -9303,20 +10905,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03778467908902691, + "max": 0.03787094547964113 + }, "related_data": { "blog": { "data_id": [ - "52752625", - "78943147", - "86110808", - "7275460", - "50203133", - "109596586", - "82015155", - "7946254", - "100066929", - "53147604" + "52752625@服务发现@云原生", + "78943147@zookeeper@云原生", + "86110808@阿里云@云原生", + "7275460@go@云原生", + "50203133@kafka@云原生", + "109596586@aws@云原生", + "82015155@iptables@云原生", + "7946254@go@云原生", + "100066929@阿里云@云原生", + "53147604@分布式@云原生" ] } } @@ -9326,7 +10931,7 @@ { "环境变量的配置": { "data": { - "uuid": "云原生-5-224", + "uuid": "云原生-5-225", "seg": [ [ [ @@ -9335,7 +10940,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03787094547964113, + "max": 0.037957211870255345 + }, "related_data": {} } } @@ -9351,7 +10959,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03778467908902691, + "max": 0.037957211870255345 + }, "related_data": {} } } @@ -9362,7 +10973,7 @@ { "IDEA的下载": { "data": { - "uuid": "云原生-5-225", + "uuid": "云原生-5-226", "seg": [ [ [ @@ -9371,20 +10982,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.037957211870255345, + "max": 0.03804347826086957 + }, "related_data": { "blog": { "data_id": [ - "100287663", - "97375938", - "79035374", - "80550378", - "88141444", - "88875784", - "103781940", - "82797236", - "6685739", - "116518773" + "100287663@docker@云原生", + "97375938@dashboard@云原生", + "79035374@eureka@云原生", + "80550378@dashboard@云原生", + "88141444@dashboard@云原生", + "88875784@docker@云原生", + "103781940@dashboard@云原生", + "82797236@docker@云原生", + "116518773@kafka@云原生", + "82215893@spring@云原生" ] } } @@ -9394,7 +11008,7 @@ { "用IDEA创建一个Spring Boot工程": { "data": { - "uuid": "云原生-5-226", + "uuid": "云原生-5-227", "seg": [ [ [ @@ -9406,12 +11020,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03804347826086957, + "max": 0.038129744651483784 + }, "related_data": { "blog": { "data_id": [ - "109321248", - "54376855" + "109321248@微服务@云原生", + "54376855@分布式@云原生" ] } } @@ -9429,7 +11046,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.037957211870255345, + "max": 0.038129744651483784 + }, "related_data": {} } } @@ -9440,7 +11060,7 @@ { "Maven简介": { "data": { - "uuid": "云原生-5-227", + "uuid": "云原生-5-228", "seg": [ [ [ @@ -9449,7 +11069,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.038129744651483784, + "max": 0.03816425120772947 + }, "related_data": {} } } @@ -9457,7 +11080,7 @@ { "Maven的安装": { "data": { - "uuid": "云原生-5-228", + "uuid": "云原生-5-229", "seg": [ [ [ @@ -9466,12 +11089,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03816425120772947, + "max": 0.038198757763975154 + }, "related_data": { "blog": { "data_id": [ - "78720976", - "79080601" + "78720976@docker@云原生", + "79080601@分布式@云原生" ] } } @@ -9481,17 +11107,21 @@ { "Maven的核心概念": { "data": { - "uuid": "云原生-5-229", + "uuid": "云原生-5-230", "seg": [ [ [ "maven", "核心", - "概念" + "概念", + "核心概念" ] ] ], - "level": "2", + "level": { + "min": 0.038198757763975154, + "max": 0.038233264320220846 + }, "related_data": {} } } @@ -9499,7 +11129,7 @@ { "编写Pom文件": { "data": { - "uuid": "云原生-5-230", + "uuid": "云原生-5-231", "seg": [ [ [ @@ -9509,7 +11139,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.038233264320220846, + "max": 0.03826777087646653 + }, "related_data": {} } } @@ -9517,7 +11150,7 @@ { "常用的Maven命令": { "data": { - "uuid": "云原生-5-231", + "uuid": "云原生-5-232", "seg": [ [ [ @@ -9526,7 +11159,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03826777087646653, + "max": 0.038302277432712216 + }, "related_data": {} } } @@ -9543,7 +11179,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.038129744651483784, + "max": 0.038302277432712216 + }, "related_data": {} } } @@ -9560,7 +11199,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03778467908902691, + "max": 0.038302277432712216 + }, "related_data": {} } } @@ -9574,7 +11216,7 @@ { "Spring Boot的特点": { "data": { - "uuid": "云原生-5-232", + "uuid": "云原生-5-233", "seg": [ [ [ @@ -9583,20 +11225,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.038302277432712216, + "max": 0.03833924874297545 + }, "related_data": { "blog": { "data_id": [ - "50278205", - "50281151", - "115591996", - "111519711", - "108698616", - "77592433", - "115448516", - "77249029", - "50520958", - "78789087" + "50278205@spring@云原生", + "50281151@spring@云原生", + "115591996@eureka@云原生", + "111519711@eureka@云原生", + "108698616@ribbon@云原生", + "77592433@gateway@云原生", + "115448516@gateway@云原生", + "77249029@spring@云原生", + "50520958@spring@云原生", + "78789087@spring@云原生" ] } } @@ -9606,7 +11251,7 @@ { "Spring Boot的优点": { "data": { - "uuid": "云原生-5-233", + "uuid": "云原生-5-234", "seg": [ [ [ @@ -9616,11 +11261,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03833924874297545, + "max": 0.03837622005323869 + }, "related_data": { "blog": { "data_id": [ - "76407830" + "76407830@微服务@云原生" ] } } @@ -9639,7 +11287,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.038302277432712216, + "max": 0.03837622005323869 + }, "related_data": {} } } @@ -9650,7 +11301,7 @@ { "在Spring Boot工程中构建Web程序": { "data": { - "uuid": "云原生-5-234", + "uuid": "云原生-5-235", "seg": [ [ [ @@ -9663,18 +11314,22 @@ ] ] ], - "level": "1", + "level": { + "min": 0.03837622005323869, + "max": 0.03841319136350192 + }, "related_data": { "blog": { "data_id": [ - "51923017", - "80993516", - "79025689", - "107577563", - "114999207", - "107650296", - "70341651", - "103550083" + "51923017@jwt@云原生", + "80993516@oauth@云原生", + "79025689@oauth@云原生", + "107577563@spring@云原生", + "114999207@jwt@云原生", + "114999207@oauth@云原生", + "107650296@jwt@云原生", + "70341651@spring@云原生", + "103550083@控制器@云原生" ] } } @@ -9684,7 +11339,7 @@ { "Spring Boot的测试": { "data": { - "uuid": "云原生-5-235", + "uuid": "云原生-5-236", "seg": [ [ [ @@ -9693,20 +11348,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03841319136350192, + "max": 0.03845016267376516 + }, "related_data": { "blog": { "data_id": [ - "108273295", - "103015306", - "108445846", - "113773714", - "70598903", - "98478625", - "113834293", - "108419455", - "109083325", - "100192558" + "108273295@eureka@云原生", + "103015306@docker@云原生", + "108445846@spring@云原生", + "113773714@spring@云原生", + "70598903@spring@云原生", + "98478625@ribbon@云原生", + "113834293@spring@云原生", + "108419455@spring@云原生", + "109083325@eureka@云原生", + "100192558@spring@云原生" ] } } @@ -9727,7 +11385,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03837622005323869, + "max": 0.03845016267376516 + }, "related_data": {} } } @@ -9738,7 +11399,7 @@ { "自定义属性": { "data": { - "uuid": "云原生-5-236", + "uuid": "云原生-5-237", "seg": [ [ [ @@ -9747,7 +11408,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03845016267376516, + "max": 0.03846864832889678 + }, "related_data": {} } } @@ -9755,18 +11419,22 @@ { "将配置文件的属性赋给实体类": { "data": { - "uuid": "云原生-5-237", + "uuid": "云原生-5-238", "seg": [ [ [ "配置文件", "属性", "赋给", - "实体类" + "实体类", + "将配置文件" ] ] ], - "level": "2", + "level": { + "min": 0.03846864832889678, + "max": 0.03848713398402839 + }, "related_data": {} } } @@ -9774,7 +11442,7 @@ { "自定义配置文件": { "data": { - "uuid": "云原生-5-238", + "uuid": "云原生-5-239", "seg": [ [ [ @@ -9783,7 +11451,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03848713398402839, + "max": 0.03850561963916001 + }, "related_data": {} } } @@ -9791,7 +11462,7 @@ { "多个环境的配置文件": { "data": { - "uuid": "云原生-5-239", + "uuid": "云原生-5-240", "seg": [ [ [ @@ -9800,7 +11471,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03850561963916001, + "max": 0.03852410529429163 + }, "related_data": {} } } @@ -9818,7 +11492,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03845016267376516, + "max": 0.03852410529429163 + }, "related_data": {} } } @@ -9829,7 +11506,7 @@ { "查看运行程序的健康状态": { "data": { - "uuid": "云原生-5-240", + "uuid": "云原生-5-241", "seg": [ [ [ @@ -9841,7 +11518,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03852410529429163, + "max": 0.03854259094942325 + }, "related_data": {} } } @@ -9849,7 +11529,7 @@ { "查看运行程序的Bean": { "data": { - "uuid": "云原生-5-241", + "uuid": "云原生-5-242", "seg": [ [ [ @@ -9860,7 +11540,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03854259094942325, + "max": 0.038561076604554864 + }, "related_data": {} } } @@ -9868,7 +11551,7 @@ { "使用Actuator关闭应用程序": { "data": { - "uuid": "云原生-5-242", + "uuid": "云原生-5-243", "seg": [ [ [ @@ -9878,7 +11561,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.038561076604554864, + "max": 0.03857956225968648 + }, "related_data": {} } } @@ -9886,7 +11572,7 @@ { "使用shell连接Actuator": { "data": { - "uuid": "云原生-5-243", + "uuid": "云原生-5-244", "seg": [ [ [ @@ -9896,7 +11582,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03857956225968648, + "max": 0.0385980479148181 + }, "related_data": {} } } @@ -9914,7 +11603,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03852410529429163, + "max": 0.0385980479148181 + }, "related_data": {} } } @@ -9933,11 +11625,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0385980479148181, + "max": 0.03867199053534457 + }, "related_data": { "blog": { "data_id": [ - "6253232" + "6253232@分布式@云原生" ] } } @@ -9950,7 +11645,7 @@ { "Redis简介": { "data": { - "uuid": "云原生-5-244", + "uuid": "云原生-5-245", "seg": [ [ [ @@ -9959,7 +11654,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03867199053534457, + "max": 0.03869663807552006 + }, "related_data": {} } } @@ -9967,7 +11665,7 @@ { "Redis的安装": { "data": { - "uuid": "云原生-5-245", + "uuid": "云原生-5-246", "seg": [ [ [ @@ -9976,20 +11674,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03869663807552006, + "max": 0.03872128561569555 + }, "related_data": { "blog": { "data_id": [ - "89403136", - "78901124", - "80571389", - "98097708", - "87270959", - "100172640", - "80694560", - "88323561", - "109238083", - "109236398" + "89403136@docker@云原生", + "78901124@分布式@云原生", + "80571389@运维@云原生", + "98097708@spring@云原生", + "87270959@docker@云原生", + "100172640@etcd@云原生", + "100172640@服务发现@云原生", + "80694560@分布式@云原生", + "88323561@docker@云原生", + "109238083@spring@云原生" ] } } @@ -9999,7 +11700,7 @@ { "在Spring Boot中使用Redis": { "data": { - "uuid": "云原生-5-246", + "uuid": "云原生-5-247", "seg": [ [ [ @@ -10009,20 +11710,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03872128561569555, + "max": 0.03874593315587104 + }, "related_data": { "blog": { "data_id": [ - "107064160", - "107025391", - "109038461", - "101351944", - "80308771", - "107300987", - "114260521", - "107560607", - "109388429", - "107590598" + "107064160@spring@云原生", + "107025391@jwt@云原生", + "109038461@gateway@云原生", + "101351944@docker@云原生", + "101351944@spring@云原生", + "80308771@中间件@云原生", + "107300987@spring@云原生", + "114260521@spring@云原生", + "107560607@spring@云原生", + "109388429@oauth@云原生" ] } } @@ -10042,7 +11746,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03867199053534457, + "max": 0.03874593315587104 + }, "related_data": {} } } @@ -10065,7 +11772,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03874593315587104, + "max": 0.03881987577639751 + }, "related_data": {} } } @@ -10083,7 +11793,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.038302277432712216, + "max": 0.03881987577639751 + }, "related_data": {} } } @@ -10103,11 +11816,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03881987577639751, + "max": 0.038923395445134575 + }, "related_data": { "blog": { "data_id": [ - "97281910" + "97281910@cloud@云原生" ] } } @@ -10126,11 +11842,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.038923395445134575, + "max": 0.03902691511387164 + }, "related_data": { "blog": { "data_id": [ - "78045738" + "78045738@ribbon@云原生" ] } } @@ -10153,20 +11872,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03902691511387164, + "max": 0.03913043478260869 + }, "related_data": { "blog": { "data_id": [ - "109005227", - "90025305", - "85246193", - "77206665", - "102891148", - "82905372", - "79820735", - "109050872", - "77336290", - "82148906" + "109005227@ribbon@云原生", + "90025305@ribbon@云原生", + "85246193@ribbon@云原生", + "77206665@ribbon@云原生", + "102891148@ribbon@云原生", + "82905372@ribbon@云原生", + "79820735@服务发现@云原生", + "109050872@ribbon@云原生", + "77336290@ribbon@云原生", + "82148906@ribbon@云原生" ] } } @@ -10185,7 +11907,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03913043478260869, + "max": 0.039233954451345754 + }, "related_data": {} } } @@ -10202,7 +11927,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.039233954451345754, + "max": 0.039337474120082816 + }, "related_data": {} } } @@ -10219,7 +11947,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03881987577639751, + "max": 0.039337474120082816 + }, "related_data": {} } } @@ -10240,7 +11971,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.039337474120082816, + "max": 0.03942374051069703 + }, "related_data": {} } } @@ -10257,7 +11991,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03942374051069703, + "max": 0.03951000690131125 + }, "related_data": {} } } @@ -10274,7 +12011,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03951000690131125, + "max": 0.039596273291925464 + }, "related_data": {} } } @@ -10294,7 +12034,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.039596273291925464, + "max": 0.03968253968253968 + }, "related_data": {} } } @@ -10314,7 +12057,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03968253968253968, + "max": 0.039768806073153896 + }, "related_data": {} } } @@ -10332,18 +12078,21 @@ ] ] ], - "level": "2", + "level": { + "min": 0.039768806073153896, + "max": 0.03985507246376811 + }, "related_data": { "blog": { "data_id": [ - "51470051", - "92638667", - "103293139", - "84258559", - "81363038", - "80785973", - "108629490", - "88124773" + "51470051@服务发现@云原生", + "92638667@consul@云原生", + "103293139@eureka@云原生", + "84258559@eureka@云原生", + "81363038@cloud@云原生", + "80785973@微服务@云原生", + "108629490@服务发现@云原生", + "88124773@eureka@云原生" ] } } @@ -10358,11 +12107,15 @@ [ "声明", "调用", - "feign" + "feign", + "声明式" ] ] ], - "level": "2", + "level": { + "min": 0.039337474120082816, + "max": 0.03985507246376811 + }, "related_data": {} } } @@ -10382,7 +12135,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03985507246376811, + "max": 0.03994133885438233 + }, "related_data": {} } } @@ -10400,7 +12156,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03994133885438233, + "max": 0.040027605244996545 + }, "related_data": {} } } @@ -10418,7 +12177,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.040027605244996545, + "max": 0.04011387163561077 + }, "related_data": {} } } @@ -10435,7 +12197,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04011387163561077, + "max": 0.040200138026224984 + }, "related_data": {} } } @@ -10446,7 +12211,7 @@ { "在RestTemplate中使用Hystrix Dashboard": { "data": { - "uuid": "云原生-5-247", + "uuid": "云原生-5-248", "seg": [ [ [ @@ -10456,7 +12221,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.040200138026224984, + "max": 0.040243271221532095 + }, "related_data": {} } } @@ -10464,7 +12232,7 @@ { "在Feign中使用Hystrix Dashboard": { "data": { - "uuid": "云原生-5-248", + "uuid": "云原生-5-249", "seg": [ [ [ @@ -10474,20 +12242,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.040243271221532095, + "max": 0.0402864044168392 + }, "related_data": { "blog": { "data_id": [ - "87370201", - "84288994", - "85269153", - "78533727", - "92609776", - "96844651", - "89300789", - "117396341", - "114236813", - "84926330" + "87370201@dashboard@云原生", + "84288994@dashboard@云原生", + "85269153@dashboard@云原生", + "78533727@dashboard@云原生", + "92609776@dashboard@云原生", + "96844651@dashboard@云原生", + "89300789@dashboard@云原生", + "117396341@cloud@云原生", + "114236813@dashboard@云原生", + "84926330@dashboard@云原生" ] } } @@ -10508,7 +12279,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.040200138026224984, + "max": 0.0402864044168392 + }, "related_data": {} } } @@ -10526,7 +12300,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0402864044168392, + "max": 0.040372670807453416 + }, "related_data": {} } } @@ -10542,7 +12319,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03985507246376811, + "max": 0.040372670807453416 + }, "related_data": {} } } @@ -10563,13 +12343,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.040372670807453416, + "max": 0.04089026915113871 + }, "related_data": { "blog": { "data_id": [ - "92806596", - "80590364", - "79698409" + "92806596@eureka@云原生", + "80590364@cloud@云原生", + "79698409@eureka@云原生" ] } } @@ -10586,11 +12369,15 @@ "网关", "spring", "cloud", - "zuul" + "zuul", + "路由网关" ] ] ], - "level": "2", + "level": { + "min": 0.040372670807453416, + "max": 0.04089026915113871 + }, "related_data": {} } } @@ -10604,7 +12391,7 @@ { "构建Config Server": { "data": { - "uuid": "云原生-5-249", + "uuid": "云原生-5-250", "seg": [ [ [ @@ -10614,20 +12401,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04089026915113871, + "max": 0.040942028985507244 + }, "related_data": { "blog": { "data_id": [ - "1786182", - "82182309", - "75332005", - "19557807", - "80734508", - "83993937", - "7183503", - "69055536", - "76598413", - "74516505" + "1786182@中间件@云原生", + "82182309@控制器@云原生", + "75332005@阿里云@云原生", + "19557807@oauth@云原生", + "80734508@控制器@云原生", + "83993937@控制器@云原生", + "7183503@分布式@云原生", + "69055536@阿里云@云原生", + "76598413@zookeeper@云原生", + "74516505@阿里云@云原生" ] } } @@ -10637,7 +12427,7 @@ { "构建Config Client": { "data": { - "uuid": "云原生-5-250", + "uuid": "云原生-5-251", "seg": [ [ [ @@ -10647,18 +12437,21 @@ ] ] ], - "level": "2", + "level": { + "min": 0.040942028985507244, + "max": 0.040993788819875775 + }, "related_data": { "blog": { "data_id": [ - "91175252", - "88578076", - "88200110", - "99826864", - "89840918", - "84455645", - "109707615", - "76921090" + "91175252@eureka@云原生", + "88578076@cloud@云原生", + "88200110@服务发现@云原生", + "99826864@gateway@云原生", + "89840918@eureka@云原生", + "84455645@cloud@云原生", + "109707615@cloud@云原生", + "76921090@cloud@云原生" ] } } @@ -10678,7 +12471,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04089026915113871, + "max": 0.040993788819875775 + }, "related_data": {} } } @@ -10700,14 +12496,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.040993788819875775, + "max": 0.04109730848861284 + }, "related_data": { "blog": { "data_id": [ - "52996911", - "79177871", - "88944357", - "114106272" + "52996911@docker@云原生", + "79177871@控制器@云原生", + "88944357@控制器@云原生", + "114106272@分布式@云原生" ] } } @@ -10720,7 +12519,7 @@ { "构建Eureka Server": { "data": { - "uuid": "云原生-5-251", + "uuid": "云原生-5-252", "seg": [ [ [ @@ -10730,20 +12529,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04109730848861284, + "max": 0.04113181504485852 + }, "related_data": { "blog": { "data_id": [ - "110062280", - "102668158", - "86756898", - "95909012", - "90752257", - "75969014", - "84872312", - "78184793", - "80704853", - "95374910" + "110062280@eureka@云原生", + "102668158@eureka@云原生", + "86756898@服务发现@云原生", + "95909012@服务发现@云原生", + "90752257@服务发现@云原生", + "75969014@eureka@云原生", + "84872312@eureka@云原生", + "109608594@eureka@云原生", + "78184793@eureka@云原生", + "80704853@eureka@云原生" ] } } @@ -10753,7 +12555,7 @@ { "改造Config Server": { "data": { - "uuid": "云原生-5-252", + "uuid": "云原生-5-253", "seg": [ [ [ @@ -10763,7 +12565,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04113181504485852, + "max": 0.04116632160110421 + }, "related_data": {} } } @@ -10771,7 +12576,7 @@ { "改造Config Client": { "data": { - "uuid": "云原生-5-253", + "uuid": "云原生-5-254", "seg": [ [ [ @@ -10781,7 +12586,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04116632160110421, + "max": 0.04120082815734989 + }, "related_data": {} } } @@ -10800,7 +12608,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04109730848861284, + "max": 0.04120082815734989 + }, "related_data": {} } } @@ -10820,7 +12631,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04120082815734989, + "max": 0.041304347826086954 + }, "related_data": {} } } @@ -10831,7 +12645,7 @@ { "改造config-server工程": { "data": { - "uuid": "云原生-5-254", + "uuid": "云原生-5-255", "seg": [ [ [ @@ -10842,7 +12656,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.041304347826086954, + "max": 0.041356107660455485 + }, "related_data": {} } } @@ -10850,7 +12667,7 @@ { "初始化数据库": { "data": { - "uuid": "云原生-5-255", + "uuid": "云原生-5-256", "seg": [ [ [ @@ -10859,11 +12676,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.041356107660455485, + "max": 0.041407867494824016 + }, "related_data": { "blog": { "data_id": [ - "28587051" + "28587051@阿里云@云原生" ] } } @@ -10879,11 +12699,15 @@ "配置", "存储", "mysql", - "数据库" + "数据库", + "将配置" ] ] ], - "level": "1", + "level": { + "min": 0.041304347826086954, + "max": 0.041407867494824016 + }, "related_data": {} } } @@ -10902,7 +12726,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04089026915113871, + "max": 0.041407867494824016 + }, "related_data": {} } } @@ -10917,11 +12744,15 @@ "seg": [ [ [ - "术语" + "术语", + "基本术语" ] ] ], - "level": "2", + "level": { + "min": 0.041407867494824016, + "max": 0.04148181011535049 + }, "related_data": {} } } @@ -10932,7 +12763,7 @@ { "启动Zipkin Server": { "data": { - "uuid": "云原生-5-256", + "uuid": "云原生-5-257", "seg": [ [ [ @@ -10942,7 +12773,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04148181011535049, + "max": 0.04150645765552598 + }, "related_data": {} } } @@ -10950,7 +12784,7 @@ { "构建服务提供者": { "data": { - "uuid": "云原生-5-257", + "uuid": "云原生-5-258", "seg": [ [ [ @@ -10959,7 +12793,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04150645765552598, + "max": 0.04153110519570147 + }, "related_data": {} } } @@ -10967,7 +12804,7 @@ { "构建服务消费者": { "data": { - "uuid": "云原生-5-258", + "uuid": "云原生-5-259", "seg": [ [ [ @@ -10977,7 +12814,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04153110519570147, + "max": 0.04155575273587696 + }, "related_data": {} } } @@ -10993,7 +12833,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04148181011535049, + "max": 0.04155575273587696 + }, "related_data": {} } } @@ -11008,11 +12851,15 @@ "链路", "数据", "添加", - "定义数据" + "定义数据", + "链路数据" ] ] ], - "level": "2", + "level": { + "min": 0.04155575273587696, + "max": 0.04162969535640343 + }, "related_data": {} } } @@ -11027,11 +12874,15 @@ "rabbitmq", "传输", "链路", - "数据" + "数据", + "链路数据" ] ] ], - "level": "2", + "level": { + "min": 0.04162969535640343, + "max": 0.0417036379769299 + }, "related_data": {} } } @@ -11047,11 +12898,15 @@ "数据库", "存储", "链路", - "数据" + "数据", + "链路数据" ] ] ], - "level": "1", + "level": { + "min": 0.0417036379769299, + "max": 0.04177758059745637 + }, "related_data": {} } } @@ -11066,11 +12921,15 @@ "elasticsearch", "存储", "链路", - "数据" + "数据", + "链路数据" ] ] ], - "level": "2", + "level": { + "min": 0.04177758059745637, + "max": 0.04185152321798284 + }, "related_data": {} } } @@ -11085,11 +12944,15 @@ "kibana", "展示", "链路", - "数据" + "数据", + "链路数据" ] ] ], - "level": "2", + "level": { + "min": 0.04185152321798284, + "max": 0.04192546583850931 + }, "related_data": {} } } @@ -11109,7 +12972,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.041407867494824016, + "max": 0.04192546583850931 + }, "related_data": {} } } @@ -11123,7 +12989,7 @@ { "创建Spring Boot Admin Server": { "data": { - "uuid": "云原生-5-259", + "uuid": "云原生-5-260", "seg": [ [ [ @@ -11135,7 +13001,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.04192546583850931, + "max": 0.04201173222912353 + }, "related_data": {} } } @@ -11143,7 +13012,7 @@ { "创建Spring Boot Admin Client": { "data": { - "uuid": "云原生-5-260", + "uuid": "云原生-5-261", "seg": [ [ [ @@ -11155,20 +13024,23 @@ ] ] ], - "level": "3", + "level": { + "min": 0.04201173222912353, + "max": 0.042097998619737745 + }, "related_data": { "blog": { "data_id": [ - "112030573", - "79246665", - "112427297", - "83058455", - "80698312", - "105715005", - "110938662", - "80518266", - "116234700", - "110204462" + "112030573@docker@云原生", + "79246665@eureka@云原生", + "112427297@kafka@云原生", + "83058455@微服务@云原生", + "80698312@eureka@云原生", + "105715005@eureka@云原生", + "105715005@zookeeper@云原生", + "110938662@微服务@云原生", + "80518266@阿里云@云原生", + "116234700@分布式@云原生" ] } } @@ -11189,7 +13061,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04192546583850931, + "max": 0.042097998619737745 + }, "related_data": {} } } @@ -11200,7 +13075,7 @@ { "构建Admin Server": { "data": { - "uuid": "云原生-5-261", + "uuid": "云原生-5-262", "seg": [ [ [ @@ -11210,7 +13085,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.042097998619737745, + "max": 0.04218426501035197 + }, "related_data": {} } } @@ -11218,7 +13096,7 @@ { "构建Admin Client": { "data": { - "uuid": "云原生-5-262", + "uuid": "云原生-5-263", "seg": [ [ [ @@ -11228,14 +13106,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04218426501035197, + "max": 0.042270531400966184 + }, "related_data": { "blog": { "data_id": [ - "52997286", - "80753491", - "96995564", - "82702380" + "80753491@dashboard@云原生", + "96995564@dashboard@云原生", + "82702380@go@云原生" ] } } @@ -11258,7 +13138,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.042097998619737745, + "max": 0.042270531400966184 + }, "related_data": {} } } @@ -11269,7 +13152,7 @@ { "Spring Boot Admin集成Security组件": { "data": { - "uuid": "云原生-5-263", + "uuid": "云原生-5-264", "seg": [ [ [ @@ -11282,7 +13165,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.042270531400966184, + "max": 0.0423567977915804 + }, "related_data": {} } } @@ -11290,7 +13176,7 @@ { "Spring Boot Admin集成Mail组件": { "data": { - "uuid": "云原生-5-264", + "uuid": "云原生-5-265", "seg": [ [ [ @@ -11303,11 +13189,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0423567977915804, + "max": 0.042443064182194616 + }, "related_data": { "blog": { "data_id": [ - "113934858" + "113934858@容器@云原生" ] } } @@ -11332,7 +13221,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.042270531400966184, + "max": 0.042443064182194616 + }, "related_data": {} } } @@ -11352,7 +13244,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04192546583850931, + "max": 0.042443064182194616 + }, "related_data": {} } } @@ -11366,7 +13261,7 @@ { "什么是Spring Security": { "data": { - "uuid": "云原生-5-265", + "uuid": "云原生-5-266", "seg": [ [ [ @@ -11375,20 +13270,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.042443064182194616, + "max": 0.04252933057280883 + }, "related_data": { "blog": { "data_id": [ - "103508579", - "81082453", - "52108369", - "70175198", - "78604376", - "109528425", - "79748422", - "76898524", - "77046453", - "76977239" + "103508579@jwt@云原生", + "81082453@oauth@云原生", + "52108369@oauth@云原生", + "70175198@oauth@云原生", + "78604376@oauth@云原生", + "70175198@cloud@云原生", + "109528425@jwt@云原生", + "79748422@oauth@云原生", + "76898524@oauth@云原生", + "77046453@oauth@云原生" ] } } @@ -11398,7 +13296,7 @@ { "Spring Security提供的安全模块": { "data": { - "uuid": "云原生-5-266", + "uuid": "云原生-5-267", "seg": [ [ [ @@ -11409,7 +13307,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04252933057280883, + "max": 0.04261559696342305 + }, "related_data": {} } } @@ -11426,7 +13327,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.042443064182194616, + "max": 0.04261559696342305 + }, "related_data": {} } } @@ -11449,7 +13353,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04261559696342305, + "max": 0.04278812974465148 + }, "related_data": {} } } @@ -11460,7 +13367,7 @@ { "构建Spring Boot Security工程": { "data": { - "uuid": "云原生-5-267", + "uuid": "云原生-5-268", "seg": [ [ [ @@ -11472,20 +13379,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04278812974465148, + "max": 0.042822636300897166 + }, "related_data": { "blog": { "data_id": [ - "54319508", - "103682289", - "79975975", - "89048257", - "85015868", - "112759382", - "80918842", - "78241724", - "104180112", - "111504155" + "54319508@spring@云原生", + "103682289@spring@云原生", + "79975975@jwt@云原生", + "89048257@jwt@云原生", + "85015868@oauth@云原生", + "112759382@jwt@云原生", + "80918842@jwt@云原生", + "78241724@oauth@云原生", + "104180112@oauth@云原生", + "111504155@jwt@云原生" ] } } @@ -11495,7 +13405,7 @@ { "配置Spring Security": { "data": { - "uuid": "云原生-5-268", + "uuid": "云原生-5-269", "seg": [ [ [ @@ -11505,20 +13415,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.042822636300897166, + "max": 0.04285714285714285 + }, "related_data": { "blog": { "data_id": [ - "79815491", - "81631064", - "74914852", - "108856337", - "82117166", - "80626930", - "109260840", - "110518984", - "110211808", - "109075810" + "79815491@oauth@云原生", + "81631064@eureka@云原生", + "74914852@oauth@云原生", + "108856337@oauth@云原生", + "82117166@kafka@云原生", + "80626930@spring@云原生", + "109260840@oauth@云原生", + "110518984@devops@云原生", + "110211808@spring@云原生", + "109075810@spring@云原生" ] } } @@ -11528,7 +13441,7 @@ { "编写相关界面": { "data": { - "uuid": "云原生-5-269", + "uuid": "云原生-5-270", "seg": [ [ [ @@ -11538,7 +13451,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.04285714285714285, + "max": 0.04289164941338854 + }, "related_data": {} } } @@ -11546,7 +13462,7 @@ { "Spring Security方法级别上的保护": { "data": { - "uuid": "云原生-5-270", + "uuid": "云原生-5-271", "seg": [ [ [ @@ -11554,11 +13470,15 @@ "security", "方法", "级别", - "保护" + "保护", + "方法级别" ] ] ], - "level": "2", + "level": { + "min": 0.04289164941338854, + "max": 0.04292615596963423 + }, "related_data": {} } } @@ -11566,7 +13486,7 @@ { "从数据库中读取用户的认证信息": { "data": { - "uuid": "云原生-5-271", + "uuid": "云原生-5-272", "seg": [ [ [ @@ -11578,7 +13498,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04292615596963423, + "max": 0.04296066252587991 + }, "related_data": {} } } @@ -11597,7 +13520,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04278812974465148, + "max": 0.04296066252587991 + }, "related_data": {} } } @@ -11615,7 +13541,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.042443064182194616, + "max": 0.04296066252587991 + }, "related_data": {} } } @@ -11634,7 +13563,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04296066252587991, + "max": 0.043133195307108345 + }, "related_data": {} } } @@ -11645,7 +13577,7 @@ { "OAuth2 Provider": { "data": { - "uuid": "云原生-5-272", + "uuid": "云原生-5-273", "seg": [ [ [ @@ -11654,7 +13586,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.043133195307108345, + "max": 0.04321946169772256 + }, "related_data": {} } } @@ -11662,7 +13597,7 @@ { "OAuth2 Client": { "data": { - "uuid": "云原生-5-273", + "uuid": "云原生-5-274", "seg": [ [ [ @@ -11671,16 +13606,19 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04321946169772256, + "max": 0.043305728088336784 + }, "related_data": { "blog": { "data_id": [ - "79194512", - "90672537", - "86745592", - "87376712", - "84912644", - "99686809" + "79194512@oauth@云原生", + "90672537@oauth@云原生", + "86745592@oauth@云原生", + "87376712@oauth@云原生", + "84912644@oauth@云原生", + "99686809@oauth@云原生" ] } } @@ -11698,7 +13636,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.043133195307108345, + "max": 0.043305728088336784 + }, "related_data": {} } } @@ -11709,7 +13650,7 @@ { "编写Eureka Server": { "data": { - "uuid": "云原生-5-274", + "uuid": "云原生-5-275", "seg": [ [ [ @@ -11719,20 +13660,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.043305728088336784, + "max": 0.04333448355187486 + }, "related_data": { "blog": { "data_id": [ - "109010117", - "85077717", - "76977314", - "47038209", - "80320732", - "82785740", - "82980717", - "87100773", - "103769016", - "95605377" + "109010117@eureka@云原生", + "85077717@eureka@云原生", + "76977314@服务发现@云原生", + "47038209@服务发现@云原生", + "80320732@服务发现@云原生", + "82785740@eureka@云原生", + "87100773@eureka@云原生", + "103769016@eureka@云原生", + "95605377@eureka@云原生", + "85276486@eureka@云原生" ] } } @@ -11742,7 +13686,7 @@ { "编写Uaa授权服务": { "data": { - "uuid": "云原生-5-275", + "uuid": "云原生-5-276", "seg": [ [ [ @@ -11753,7 +13697,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04333448355187486, + "max": 0.043363239015412926 + }, "related_data": {} } } @@ -11761,7 +13708,7 @@ { "编写service-hi资源服务": { "data": { - "uuid": "云原生-5-276", + "uuid": "云原生-5-277", "seg": [ [ [ @@ -11773,7 +13720,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.043363239015412926, + "max": 0.043391994478951 + }, "related_data": {} } } @@ -11781,16 +13731,20 @@ { "案例架构设计": { "data": { - "uuid": "云原生-5-277", + "uuid": "云原生-5-278", "seg": [ [ [ "案例", - "架构设计" + "架构设计", + "案例架构设计" ] ] ], - "level": "2", + "level": { + "min": 0.043391994478951, + "max": 0.043420749942489074 + }, "related_data": {} } } @@ -11798,7 +13752,7 @@ { "编写主Maven工程": { "data": { - "uuid": "云原生-5-278", + "uuid": "云原生-5-279", "seg": [ [ [ @@ -11809,7 +13763,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.043420749942489074, + "max": 0.04344950540602714 + }, "related_data": {} } } @@ -11817,7 +13774,7 @@ { "编写user-service资源服务": { "data": { - "uuid": "云原生-5-279", + "uuid": "云原生-5-280", "seg": [ [ [ @@ -11829,7 +13786,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04344950540602714, + "max": 0.043478260869565216 + }, "related_data": {} } } @@ -11845,7 +13805,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.043305728088336784, + "max": 0.043478260869565216 + }, "related_data": {} } } @@ -11866,7 +13829,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04296066252587991, + "max": 0.043478260869565216 + }, "related_data": {} } } @@ -11880,7 +13846,7 @@ { "什么是JWT": { "data": { - "uuid": "云原生-5-280", + "uuid": "云原生-5-281", "seg": [ [ [ @@ -11888,20 +13854,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.043478260869565216, + "max": 0.043607660455486544 + }, "related_data": { "blog": { "data_id": [ - "84998517", - "87917869", - "115702298", - "88185206", - "85273757", - "90743199", - "52351772", - "54342258", - "103879771", - "115305231" + "84998517@jwt@云原生", + "87917869@oauth@云原生", + "115702298@jwt@云原生", + "88185206@jwt@云原生", + "85273757@oauth@云原生", + "90743199@jwt@云原生", + "52351772@jwt@云原生", + "54342258@jwt@云原生", + "103879771@jwt@云原生", + "115305231@jwt@云原生" ] } } @@ -11911,7 +13880,7 @@ { "JWT的结构": { "data": { - "uuid": "云原生-5-281", + "uuid": "云原生-5-282", "seg": [ [ [ @@ -11920,7 +13889,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.043607660455486544, + "max": 0.043737060041407864 + }, "related_data": {} } } @@ -11928,7 +13900,7 @@ { "JWT的应用场景": { "data": { - "uuid": "云原生-5-282", + "uuid": "云原生-5-283", "seg": [ [ [ @@ -11937,12 +13909,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.043737060041407864, + "max": 0.043866459627329185 + }, "related_data": { "blog": { "data_id": [ - "94409848", - "105770750" + "94409848@jwt@云原生", + "105770750@jwt@云原生" ] } } @@ -11952,7 +13927,7 @@ { "如何使用JWT": { "data": { - "uuid": "云原生-5-283", + "uuid": "云原生-5-284", "seg": [ [ [ @@ -11960,7 +13935,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.043866459627329185, + "max": 0.04399585921325051 + }, "related_data": {} } } @@ -11976,7 +13954,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.043478260869565216, + "max": 0.04399585921325051 + }, "related_data": {} } } @@ -12000,7 +13981,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.043478260869565216, + "max": 0.04399585921325051 + }, "related_data": {} } } @@ -12014,16 +13998,20 @@ { "工程结构": { "data": { - "uuid": "云原生-5-284", + "uuid": "云原生-5-285", "seg": [ [ [ "工程", - "结构" + "结构", + "工程结构" ] ] ], - "level": "2", + "level": { + "min": 0.04399585921325051, + "max": 0.04403899240855762 + }, "related_data": {} } } @@ -12031,21 +14019,25 @@ { "使用的技术栈": { "data": { - "uuid": "云原生-5-285", + "uuid": "云原生-5-286", "seg": [ [ [ "技术", - "栈" + "栈", + "技术栈" ] ] ], - "level": "2", + "level": { + "min": 0.04403899240855762, + "max": 0.04408212560386473 + }, "related_data": { "blog": { "data_id": [ - "105881191", - "74170843" + "105881191@运维@云原生", + "74170843@中间件@云原生" ] } } @@ -12055,16 +14047,20 @@ { "工程架构": { "data": { - "uuid": "云原生-5-286", + "uuid": "云原生-5-287", "seg": [ [ [ "工程", - "架构" + "架构", + "工程架构" ] ] ], - "level": "2", + "level": { + "min": 0.04408212560386473, + "max": 0.04412525879917184 + }, "related_data": {} } } @@ -12072,7 +14068,7 @@ { "功能展示": { "data": { - "uuid": "云原生-5-287", + "uuid": "云原生-5-288", "seg": [ [ [ @@ -12081,7 +14077,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04412525879917184, + "max": 0.044168391994478945 + }, "related_data": {} } } @@ -12097,7 +14096,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04399585921325051, + "max": 0.044168391994478945 + }, "related_data": {} } } @@ -12108,7 +14110,7 @@ { "准备工作": { "data": { - "uuid": "云原生-5-288", + "uuid": "云原生-5-289", "seg": [ [ [ @@ -12116,7 +14118,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.044168391994478945, + "max": 0.04418276972624798 + }, "related_data": {} } } @@ -12124,7 +14129,7 @@ { "构建主Maven工程": { "data": { - "uuid": "云原生-5-289", + "uuid": "云原生-5-290", "seg": [ [ [ @@ -12135,7 +14140,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04418276972624798, + "max": 0.04419714745801702 + }, "related_data": {} } } @@ -12143,7 +14151,7 @@ { "构建eureka-server工程": { "data": { - "uuid": "云原生-5-290", + "uuid": "云原生-5-291", "seg": [ [ [ @@ -12154,12 +14162,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04419714745801702, + "max": 0.044211525189786056 + }, "related_data": { "blog": { "data_id": [ - "86678822", - "84864551" + "86678822@eureka@云原生", + "84864551@微服务@云原生" ] } } @@ -12169,7 +14180,7 @@ { "构建config-server工程": { "data": { - "uuid": "云原生-5-291", + "uuid": "云原生-5-292", "seg": [ [ [ @@ -12180,7 +14191,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.044211525189786056, + "max": 0.044225902921555094 + }, "related_data": {} } } @@ -12188,7 +14202,7 @@ { "构建Zipkin工程": { "data": { - "uuid": "云原生-5-292", + "uuid": "云原生-5-293", "seg": [ [ [ @@ -12198,7 +14212,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.044225902921555094, + "max": 0.04424028065332413 + }, "related_data": {} } } @@ -12206,7 +14223,7 @@ { "构建monitoring-service工程": { "data": { - "uuid": "云原生-5-293", + "uuid": "云原生-5-294", "seg": [ [ [ @@ -12217,7 +14234,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04424028065332413, + "max": 0.04425465838509317 + }, "related_data": {} } } @@ -12225,7 +14245,7 @@ { "构建uaa-service工程": { "data": { - "uuid": "云原生-5-294", + "uuid": "云原生-5-295", "seg": [ [ [ @@ -12236,7 +14256,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04425465838509317, + "max": 0.0442690361168622 + }, "related_data": {} } } @@ -12244,7 +14267,7 @@ { "构建gateway-service工程": { "data": { - "uuid": "云原生-5-295", + "uuid": "云原生-5-296", "seg": [ [ [ @@ -12255,7 +14278,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0442690361168622, + "max": 0.044283413848631235 + }, "related_data": {} } } @@ -12263,7 +14289,7 @@ { "构建admin-service工程": { "data": { - "uuid": "云原生-5-296", + "uuid": "云原生-5-297", "seg": [ [ [ @@ -12274,7 +14300,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.044283413848631235, + "max": 0.04429779158040027 + }, "related_data": {} } } @@ -12282,7 +14311,7 @@ { "构建user-service工程": { "data": { - "uuid": "云原生-5-297", + "uuid": "云原生-5-298", "seg": [ [ [ @@ -12293,7 +14322,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04429779158040027, + "max": 0.04431216931216931 + }, "related_data": {} } } @@ -12301,7 +14333,7 @@ { "构建blog-service工程": { "data": { - "uuid": "云原生-5-298", + "uuid": "云原生-5-299", "seg": [ [ [ @@ -12312,7 +14344,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04431216931216931, + "max": 0.04432654704393835 + }, "related_data": {} } } @@ -12320,7 +14355,7 @@ { "构建log-service工程": { "data": { - "uuid": "云原生-5-299", + "uuid": "云原生-5-300", "seg": [ [ [ @@ -12331,7 +14366,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04432654704393835, + "max": 0.044340924775707384 + }, "related_data": {} } } @@ -12347,7 +14385,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.044168391994478945, + "max": 0.044340924775707384 + }, "related_data": {} } } @@ -12360,11 +14401,15 @@ [ [ "启动", - "工程" + "工程", + "源码工程" ] ] ], - "level": "2", + "level": { + "min": 0.044340924775707384, + "max": 0.044513457556935816 + }, "related_data": {} } } @@ -12385,7 +14430,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04399585921325051, + "max": 0.044513457556935816 + }, "related_data": {} } } @@ -12413,7 +14461,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.044513457556935816, + "max": 0.04468599033816425 + }, "related_data": {} } } @@ -12424,7 +14475,7 @@ { "Web服务器:WebServer": { "data": { - "uuid": "云原生-5-300", + "uuid": "云原生-5-301", "seg": [ [ [ @@ -12438,7 +14489,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.04468599033816425, + "max": 0.044720496894409933 + }, "related_data": {} } } @@ -12446,7 +14500,7 @@ { "条件注解:@ConditionalOnXX": { "data": { - "uuid": "云原生-5-301", + "uuid": "云原生-5-302", "seg": [ [ [ @@ -12460,7 +14514,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.044720496894409933, + "max": 0.04475500345065562 + }, "related_data": {} } } @@ -12468,7 +14525,7 @@ { "工厂加载机制": { "data": { - "uuid": "云原生-5-302", + "uuid": "云原生-5-303", "seg": [ [ [ @@ -12478,7 +14535,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04475500345065562, + "max": 0.04478951000690131 + }, "related_data": {} } } @@ -12486,7 +14546,7 @@ { "配置加载机制": { "data": { - "uuid": "云原生-5-303", + "uuid": "云原生-5-304", "seg": [ [ [ @@ -12496,7 +14556,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04478951000690131, + "max": 0.044824016563146996 + }, "related_data": {} } } @@ -12504,7 +14567,7 @@ { "Spring Boot Actuator": { "data": { - "uuid": "云原生-5-304", + "uuid": "云原生-5-305", "seg": [ [ [ @@ -12514,11 +14577,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.044824016563146996, + "max": 0.04485852311939268 + }, "related_data": { "blog": { "data_id": [ - "78817449" + "78817449@spring@云原生" ] } } @@ -12534,11 +14600,15 @@ "spring", "boot", "核心", - "特性" + "特性", + "核心特性" ] ] ], - "level": "2", + "level": { + "min": 0.04468599033816425, + "max": 0.04485852311939268 + }, "related_data": {} } } @@ -12549,7 +14619,7 @@ { "Spring Cloud诞生背景": { "data": { - "uuid": "云原生-5-305", + "uuid": "云原生-5-306", "seg": [ [ [ @@ -12560,7 +14630,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04485852311939268, + "max": 0.04490165631469979 + }, "related_data": {} } } @@ -12568,7 +14641,7 @@ { "Netflix OSS": { "data": { - "uuid": "云原生-5-306", + "uuid": "云原生-5-307", "seg": [ [ [ @@ -12577,20 +14650,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04490165631469979, + "max": 0.0449447895100069 + }, "related_data": { "blog": { "data_id": [ - "71194519", - "101678657", - "45290311", - "80702805", - "53113274", - "66968718", - "52083553", - "109323530", - "79666166", - "112478109" + "71194519@阿里云@云原生", + "101678657@阿里云@云原生", + "45290311@阿里云@云原生", + "80702805@阿里云@云原生", + "53113274@阿里云@云原生", + "66968718@阿里云@云原生", + "52083553@阿里云@云原生", + "109323530@分布式@云原生", + "79666166@阿里云@云原生", + "112478109@阿里云@云原生" ] } } @@ -12600,7 +14676,7 @@ { "Spring Cloud版本": { "data": { - "uuid": "云原生-5-307", + "uuid": "云原生-5-308", "seg": [ [ [ @@ -12610,20 +14686,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0449447895100069, + "max": 0.044987922705314 + }, "related_data": { "blog": { "data_id": [ - "88759268", - "90028383", - "79474419", - "80067092", - "99725122", - "70810297", - "82860521", - "81049662", - "83382571", - "83382106" + "88759268@服务发现@云原生", + "90028383@服务发现@云原生", + "79474419@eureka@云原生", + "80067092@ribbon@云原生", + "99725122@ribbon@云原生", + "70810297@ribbon@云原生", + "82860521@ribbon@云原生", + "81049662@consul@云原生", + "82860521@cloud@云原生", + "83382571@gateway@云原生" ] } } @@ -12633,31 +14712,35 @@ { "Spring Cloud最新动态": { "data": { - "uuid": "云原生-5-308", + "uuid": "云原生-5-309", "seg": [ [ [ "spring", "cloud", "最新", - "动态" + "动态", + "最新动态" ] ] ], - "level": "2", + "level": { + "min": 0.044987922705314, + "max": 0.04503105590062111 + }, "related_data": { "blog": { "data_id": [ - "106507150", - "106635918", - "113627950", - "89310353", - "109468057", - "108797606", - "116012372", - "103403932", - "106590923", - "81481222" + "106507150@cloud@云原生", + "106635918@gateway@云原生", + "113627950@gateway@云原生", + "89310353@gateway@云原生", + "108797606@gateway@云原生", + "109468057@gateway@云原生", + "116012372@consul@云原生", + "116012372@gateway@云原生", + "106590923@ribbon@云原生", + "81481222@spring@云原生" ] } } @@ -12676,7 +14759,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04485852311939268, + "max": 0.04503105590062111 + }, "related_data": {} } } @@ -12693,7 +14779,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.044513457556935816, + "max": 0.04503105590062111 + }, "related_data": {} } } @@ -12714,12 +14803,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04503105590062111, + "max": 0.04509575569358178 + }, "related_data": { "blog": { "data_id": [ - "103658690", - "54193868" + "103658690@服务发现@云原生", + "54193868@分布式@云原生" ] } } @@ -12742,11 +14834,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04509575569358178, + "max": 0.04516045548654244 + }, "related_data": { "blog": { "data_id": [ - "98027648" + "98027648@cloud@云原生" ] } } @@ -12759,7 +14854,7 @@ { "RibbonLoadBalancerClient": { "data": { - "uuid": "云原生-5-309", + "uuid": "云原生-5-310", "seg": [ [ [ @@ -12767,7 +14862,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04516045548654244, + "max": 0.04516854296066252 + }, "related_data": {} } } @@ -12775,7 +14873,7 @@ { "RibbonServer和Server": { "data": { - "uuid": "云原生-5-310", + "uuid": "云原生-5-311", "seg": [ [ [ @@ -12786,11 +14884,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04516854296066252, + "max": 0.04517663043478261 + }, "related_data": { "blog": { "data_id": [ - "80797798" + "80797798@ribbon@云原生" ] } } @@ -12800,7 +14901,7 @@ { "ServerIntrospector": { "data": { - "uuid": "云原生-5-311", + "uuid": "云原生-5-312", "seg": [ [ [ @@ -12808,7 +14909,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04517663043478261, + "max": 0.04518471790890269 + }, "related_data": {} } } @@ -12816,7 +14920,7 @@ { "ILoadBalancer": { "data": { - "uuid": "云原生-5-312", + "uuid": "云原生-5-313", "seg": [ [ [ @@ -12824,7 +14928,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04518471790890269, + "max": 0.04519280538302277 + }, "related_data": {} } } @@ -12832,7 +14939,7 @@ { "ServerList": { "data": { - "uuid": "云原生-5-313", + "uuid": "云原生-5-314", "seg": [ [ [ @@ -12840,11 +14947,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04519280538302277, + "max": 0.045200892857142856 + }, "related_data": { "blog": { "data_id": [ - "109907421" + "109907421@ribbon@云原生" ] } } @@ -12854,7 +14964,7 @@ { "ServerListUpdater": { "data": { - "uuid": "云原生-5-314", + "uuid": "云原生-5-315", "seg": [ [ [ @@ -12862,7 +14972,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.045200892857142856, + "max": 0.045208980331262937 + }, "related_data": {} } } @@ -12870,7 +14983,7 @@ { "ServerStats": { "data": { - "uuid": "云原生-5-315", + "uuid": "云原生-5-316", "seg": [ [ [ @@ -12878,7 +14991,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.045208980331262937, + "max": 0.045217067805383024 + }, "related_data": {} } } @@ -12886,7 +15002,7 @@ { "Ribbon缓存时间": { "data": { - "uuid": "云原生-5-316", + "uuid": "云原生-5-317", "seg": [ [ [ @@ -12896,20 +15012,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.045217067805383024, + "max": 0.045225155279503104 + }, "related_data": { "blog": { "data_id": [ - "111079799", - "89531148", - "81273110", - "78345502", - "86619401", - "103523464", - "115690553", - "84836573", - "85849702", - "84941333" + "111079799@ribbon@云原生", + "89531148@ribbon@云原生", + "81273110@ribbon@云原生", + "78345502@ribbon@云原生", + "86619401@ribbon@云原生", + "103523464@ribbon@云原生", + "115690553@ribbon@云原生", + "84836573@ribbon@云原生", + "85849702@ribbon@云原生", + "85335209@ribbon@云原生" ] } } @@ -12929,7 +15048,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04516045548654244, + "max": 0.045225155279503104 + }, "related_data": {} } } @@ -12948,7 +15070,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.045225155279503104, + "max": 0.04528985507246376 + }, "related_data": {} } } @@ -12959,7 +15084,7 @@ { "OpenFeign概述": { "data": { - "uuid": "云原生-5-317", + "uuid": "云原生-5-318", "seg": [ [ [ @@ -12968,12 +15093,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04528985507246376, + "max": 0.04531142167011731 + }, "related_data": { "blog": { "data_id": [ - "115609599", - "87866269" + "115609599@ribbon@云原生" ] } } @@ -12983,7 +15110,7 @@ { "OpenFeign对JAX-RS的支持": { "data": { - "uuid": "云原生-5-318", + "uuid": "云原生-5-319", "seg": [ [ [ @@ -12994,7 +15121,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04531142167011731, + "max": 0.04533298826777087 + }, "related_data": {} } } @@ -13002,7 +15132,7 @@ { "OpenFeign底层执行原理": { "data": { - "uuid": "云原生-5-319", + "uuid": "云原生-5-320", "seg": [ [ [ @@ -13013,7 +15143,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04533298826777087, + "max": 0.045354554865424425 + }, "related_data": {} } } @@ -13031,11 +15164,15 @@ [ "声明", "rest", - "客户端" + "客户端", + "声明式" ] ] ], - "level": "2", + "level": { + "min": 0.04528985507246376, + "max": 0.045354554865424425 + }, "related_data": {} } } @@ -13060,7 +15197,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.045354554865424425, + "max": 0.04541925465838509 + }, "related_data": {} } } @@ -13073,7 +15213,8 @@ [ [ "谈", - "路由" + "路由", + "再谈" ], [ "负载", @@ -13081,7 +15222,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04541925465838509, + "max": 0.04548395445134575 + }, "related_data": {} } } @@ -13092,22 +15236,26 @@ { "流量控制应用的业务场景": { "data": { - "uuid": "云原生-5-320", + "uuid": "云原生-5-321", "seg": [ [ [ "流量", "控制", "业务", - "场景" + "场景", + "业务场景" ] ] ], - "level": "2", + "level": { + "min": 0.04548395445134575, + "max": 0.04551630434782608 + }, "related_data": { "blog": { "data_id": [ - "47844375" + "47844375@控制器@云原生" ] } } @@ -13117,7 +15265,7 @@ { "使用Netflix Ribbon完成应用灰度发布": { "data": { - "uuid": "云原生-5-321", + "uuid": "云原生-5-322", "seg": [ [ [ @@ -13128,7 +15276,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04551630434782608, + "max": 0.045548654244306416 + }, "related_data": {} } } @@ -13149,7 +15300,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04548395445134575, + "max": 0.045548654244306416 + }, "related_data": {} } } @@ -13169,7 +15323,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04503105590062111, + "max": 0.045548654244306416 + }, "related_data": {} } } @@ -13187,11 +15344,15 @@ "配置", "中心", "背景", - "概述" + "概述", + "中心背景" ] ] ], - "level": "2", + "level": { + "min": 0.045548654244306416, + "max": 0.04572118702553485 + }, "related_data": {} } } @@ -13202,7 +15363,7 @@ { "Spring Cloud Config Server": { "data": { - "uuid": "云原生-5-322", + "uuid": "云原生-5-323", "seg": [ [ [ @@ -13213,12 +15374,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04572118702553485, + "max": 0.04576432022084195 + }, "related_data": { "blog": { "data_id": [ - "80435269", - "6161475" + "80435269@eureka@云原生", + "6161475@spring@云原生" ] } } @@ -13228,7 +15392,7 @@ { "Spring Cloud Config Client": { "data": { - "uuid": "云原生-5-323", + "uuid": "云原生-5-324", "seg": [ [ [ @@ -13239,17 +15403,20 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04576432022084195, + "max": 0.045807453416149065 + }, "related_data": { "blog": { "data_id": [ - "78652017", - "71075527", - "80676753", - "80687902", - "51612187", - "80375185", - "104125790" + "78652017@微服务@云原生", + "71075527@eureka@云原生", + "80676753@eureka@云原生", + "80687902@eureka@云原生", + "51612187@oauth@云原生", + "80375185@gateway@云原生", + "104125790@阿里云@云原生" ] } } @@ -13259,7 +15426,7 @@ { "Spring Cloud Config Client与Service Discovery整合": { "data": { - "uuid": "云原生-5-324", + "uuid": "云原生-5-325", "seg": [ [ [ @@ -13275,11 +15442,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.045807453416149065, + "max": 0.045850586611456176 + }, "related_data": { "blog": { "data_id": [ - "91355761" + "91355761@服务发现@云原生" ] } } @@ -13289,7 +15459,7 @@ { "Spring Cloud Config配置动态刷新": { "data": { - "uuid": "云原生-5-325", + "uuid": "云原生-5-326", "seg": [ [ [ @@ -13302,13 +15472,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.045850586611456176, + "max": 0.04589371980676328 + }, "related_data": { "blog": { "data_id": [ - "113066637", - "108433917", - "88718052" + "108433917@ribbon@云原生", + "88718052@cloud@云原生" ] } } @@ -13329,7 +15501,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04572118702553485, + "max": 0.04589371980676328 + }, "related_data": {} } } @@ -13344,11 +15519,15 @@ "谈", "配置", "动态", - "刷新" + "刷新", + "再谈" ] ] ], - "level": "2", + "level": { + "min": 0.04589371980676328, + "max": 0.04606625258799171 + }, "related_data": {} } } @@ -13363,7 +15542,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.045548654244306416, + "max": 0.04606625258799171 + }, "related_data": {} } } @@ -13380,11 +15562,15 @@ [ "熔断器", "模式", - "概述" + "概述", + "熔断器模式" ] ] ], - "level": "2", + "level": { + "min": 0.04606625258799171, + "max": 0.04615251897860593 + }, "related_data": {} } } @@ -13395,7 +15581,7 @@ { "定义State枚举和Counter计数器类": { "data": { - "uuid": "云原生-5-326", + "uuid": "云原生-5-327", "seg": [ [ [ @@ -13406,11 +15592,15 @@ [ "counter", "计数器", - "类" + "类", + "计数器类" ] ] ], - "level": "2", + "level": { + "min": 0.04615251897860593, + "max": 0.046181274442144 + }, "related_data": {} } } @@ -13418,7 +15608,7 @@ { "定义CircuitBreaker类": { "data": { - "uuid": "云原生-5-327", + "uuid": "云原生-5-328", "seg": [ [ [ @@ -13428,7 +15618,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.046181274442144, + "max": 0.04621002990568207 + }, "related_data": {} } } @@ -13436,7 +15629,7 @@ { "使用CircuitBreaker进行场景测试": { "data": { - "uuid": "云原生-5-328", + "uuid": "云原生-5-329", "seg": [ [ [ @@ -13445,7 +15638,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04621002990568207, + "max": 0.046238785369220145 + }, "related_data": {} } } @@ -13461,7 +15657,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04615251897860593, + "max": 0.046238785369220145 + }, "related_data": {} } } @@ -13482,7 +15681,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.046238785369220145, + "max": 0.04632505175983437 + }, "related_data": {} } } @@ -13493,7 +15695,7 @@ { "Sentinel核心概述": { "data": { - "uuid": "云原生-5-329", + "uuid": "云原生-5-330", "seg": [ [ [ @@ -13503,7 +15705,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04632505175983437, + "max": 0.04634661835748792 + }, "related_data": {} } } @@ -13511,7 +15716,7 @@ { "Spring Cloud Alib*ba Sentinel": { "data": { - "uuid": "云原生-5-330", + "uuid": "云原生-5-331", "seg": [ [ [ @@ -13523,7 +15728,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04634661835748792, + "max": 0.04636818495514147 + }, "related_data": {} } } @@ -13531,7 +15739,7 @@ { "Sentinel限流与Dashboard": { "data": { - "uuid": "云原生-5-331", + "uuid": "云原生-5-332", "seg": [ [ [ @@ -13543,14 +15751,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04636818495514147, + "max": 0.04638975155279503 + }, "related_data": { "blog": { "data_id": [ - "94030377", - "115399917", - "99222541", - "87570156" + "94030377@dashboard@云原生", + "115399917@dashboard@云原生", + "99222541@dashboard@云原生", + "87570156@dashboard@云原生" ] } } @@ -13560,7 +15771,7 @@ { "Sentinel的高级特性": { "data": { - "uuid": "云原生-5-332", + "uuid": "云原生-5-333", "seg": [ [ [ @@ -13570,7 +15781,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04638975155279503, + "max": 0.046411318150448584 + }, "related_data": {} } } @@ -13587,7 +15801,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04632505175983437, + "max": 0.046411318150448584 + }, "related_data": {} } } @@ -13598,7 +15815,7 @@ { "Hystrix核心概述": { "data": { - "uuid": "云原生-5-333", + "uuid": "云原生-5-334", "seg": [ [ [ @@ -13608,7 +15825,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.046411318150448584, + "max": 0.046432884748102136 + }, "related_data": {} } } @@ -13616,7 +15836,7 @@ { "Spring Cloud Netflix Hystrix": { "data": { - "uuid": "云原生-5-334", + "uuid": "云原生-5-335", "seg": [ [ [ @@ -13627,16 +15847,19 @@ ] ] ], - "level": "2", + "level": { + "min": 0.046432884748102136, + "max": 0.046454451345755696 + }, "related_data": { "blog": { "data_id": [ - "51649240", - "103677889", - "80127590", - "103113833", - "78476740", - "112298417" + "51649240@微服务@云原生", + "103677889@ribbon@云原生", + "80127590@服务发现@云原生", + "103113833@云原生@云原生", + "78476740@devops@云原生", + "112298417@eureka@云原生" ] } } @@ -13646,7 +15869,7 @@ { "Hystrix限流与Dashboard": { "data": { - "uuid": "云原生-5-335", + "uuid": "云原生-5-336", "seg": [ [ [ @@ -13658,7 +15881,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.046454451345755696, + "max": 0.04647601794340925 + }, "related_data": {} } } @@ -13666,7 +15892,7 @@ { "Hystrix的高级特性": { "data": { - "uuid": "云原生-5-336", + "uuid": "云原生-5-337", "seg": [ [ [ @@ -13676,7 +15902,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04647601794340925, + "max": 0.0464975845410628 + }, "related_data": {} } } @@ -13692,7 +15921,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.046411318150448584, + "max": 0.0464975845410628 + }, "related_data": {} } } @@ -13703,7 +15935,7 @@ { "Resilience4j体验": { "data": { - "uuid": "云原生-5-337", + "uuid": "云原生-5-338", "seg": [ [ [ @@ -13712,7 +15944,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0464975845410628, + "max": 0.046526340004600875 + }, "related_data": {} } } @@ -13720,7 +15955,7 @@ { "Spring Cloud Resilience4j": { "data": { - "uuid": "云原生-5-338", + "uuid": "云原生-5-339", "seg": [ [ [ @@ -13730,7 +15965,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.046526340004600875, + "max": 0.04655509546813894 + }, "related_data": {} } } @@ -13738,7 +15976,7 @@ { "Resilience4j的高级特性": { "data": { - "uuid": "云原生-5-339", + "uuid": "云原生-5-340", "seg": [ [ [ @@ -13748,7 +15986,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04655509546813894, + "max": 0.046583850931677016 + }, "related_data": {} } } @@ -13763,7 +16004,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0464975845410628, + "max": 0.046583850931677016 + }, "related_data": {} } } @@ -13778,7 +16022,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04606625258799171, + "max": 0.046583850931677016 + }, "related_data": {} } } @@ -13798,7 +16045,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.046583850931677016, + "max": 0.04671325051759834 + }, "related_data": {} } } @@ -13809,18 +16059,23 @@ { "消息编程模型的统一": { "data": { - "uuid": "云原生-5-340", + "uuid": "云原生-5-341", "seg": [ [ [ "消息", "编程", "模型", - "统一" + "统一", + "消息编程", + "编程模型" ] ] ], - "level": "2", + "level": { + "min": 0.04671325051759834, + "max": 0.04675638371290545 + }, "related_data": {} } } @@ -13828,7 +16083,7 @@ { "消息的发送和订阅": { "data": { - "uuid": "云原生-5-341", + "uuid": "云原生-5-342", "seg": [ [ [ @@ -13840,11 +16095,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04675638371290545, + "max": 0.04679951690821255 + }, "related_data": { "blog": { "data_id": [ - "91368332" + "91368332@中间件@云原生" ] } } @@ -13854,7 +16112,7 @@ { "WebSocket": { "data": { - "uuid": "云原生-5-342", + "uuid": "云原生-5-343", "seg": [ [ [ @@ -13862,14 +16120,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04679951690821255, + "max": 0.046842650103519665 + }, "related_data": { "blog": { "data_id": [ - "38392629", - "80275084", - "78113463", - "73252904" + "38392629@spring@云原生", + "80275084@spring@云原生", + "78113463@中间件@云原生", + "73252904@kafka@云原生" ] } } @@ -13889,7 +16150,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04671325051759834, + "max": 0.046842650103519665 + }, "related_data": {} } } @@ -13900,7 +16164,7 @@ { "Spring Integration核心组件概述": { "data": { - "uuid": "云原生-5-343", + "uuid": "云原生-5-344", "seg": [ [ [ @@ -13908,15 +16172,19 @@ "integration", "核心", "组件", - "概述" + "概述", + "核心组件" ] ] ], - "level": "2", + "level": { + "min": 0.046842650103519665, + "max": 0.04690734989648033 + }, "related_data": { "blog": { "data_id": [ - "108679699" + "108679699@容器@云原生" ] } } @@ -13926,23 +16194,27 @@ { "Spring Integration核心组件的使用": { "data": { - "uuid": "云原生-5-344", + "uuid": "云原生-5-345", "seg": [ [ [ "spring", "integration", "核心", - "组件" + "组件", + "核心组件" ] ] ], - "level": "2", + "level": { + "min": 0.04690734989648033, + "max": 0.04697204968944099 + }, "related_data": { "blog": { "data_id": [ - "86654905", - "115508363" + "86654905@gateway@云原生", + "115508363@容器@云原生" ] } } @@ -13960,7 +16232,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.046842650103519665, + "max": 0.04697204968944099 + }, "related_data": {} } } @@ -13971,7 +16246,7 @@ { "使用Spring Cloud Stream发送和接收消息": { "data": { - "uuid": "云原生-5-345", + "uuid": "云原生-5-346", "seg": [ [ [ @@ -13986,12 +16261,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04697204968944099, + "max": 0.04700439958592132 + }, "related_data": { "blog": { "data_id": [ - "117927021", - "108032887" + "117927021@kafka@云原生", + "108032887@微服务@云原生" ] } } @@ -14001,7 +16279,7 @@ { "理解Binder和Binding": { "data": { - "uuid": "云原生-5-346", + "uuid": "云原生-5-347", "seg": [ [ [ @@ -14013,7 +16291,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04700439958592132, + "max": 0.04703674948240165 + }, "related_data": {} } } @@ -14021,7 +16302,7 @@ { "深入理解Spring Cloud Stream": { "data": { - "uuid": "云原生-5-347", + "uuid": "云原生-5-348", "seg": [ [ [ @@ -14032,14 +16313,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04703674948240165, + "max": 0.047069099378881984 + }, "related_data": { "blog": { "data_id": [ - "72401373", - "111182985", - "80578340", - "80865009" + "72401373@cloud@云原生", + "111182985@dashboard@云原生", + "80578340@ribbon@云原生", + "80865009@kafka@云原生" ] } } @@ -14049,7 +16333,7 @@ { "Spring Cloud Stream的高级特性": { "data": { - "uuid": "云原生-5-348", + "uuid": "云原生-5-349", "seg": [ [ [ @@ -14061,11 +16345,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.047069099378881984, + "max": 0.04710144927536231 + }, "related_data": { "blog": { "data_id": [ - "108082936" + "108082936@控制器@云原生" ] } } @@ -14084,7 +16371,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04697204968944099, + "max": 0.04710144927536231 + }, "related_data": {} } } @@ -14098,11 +16388,15 @@ "spring", "生态", "消息", - "驱动" + "驱动", + "生态消息" ] ] ], - "level": "2", + "level": { + "min": 0.046583850931677016, + "max": 0.04710144927536231 + }, "related_data": {} } } @@ -14119,11 +16413,15 @@ [ "消息", "总线", - "概述" + "概述", + "消息总线" ] ] ], - "level": "2", + "level": { + "min": 0.04710144927536231, + "max": 0.04736024844720496 + }, "related_data": {} } } @@ -14134,7 +16432,7 @@ { "Spring Cloud Bus的使用": { "data": { - "uuid": "云原生-5-349", + "uuid": "云原生-5-350", "seg": [ [ [ @@ -14144,7 +16442,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04736024844720496, + "max": 0.047424948240165625 + }, "related_data": {} } } @@ -14152,7 +16453,7 @@ { "Spring Cloud Bus的原理": { "data": { - "uuid": "云原生-5-350", + "uuid": "云原生-5-351", "seg": [ [ [ @@ -14163,7 +16464,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.047424948240165625, + "max": 0.04748964803312629 + }, "related_data": {} } } @@ -14171,7 +16475,7 @@ { "Spring Cloud Bus事件": { "data": { - "uuid": "云原生-5-351", + "uuid": "云原生-5-352", "seg": [ [ [ @@ -14182,7 +16486,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04748964803312629, + "max": 0.04755434782608695 + }, "related_data": {} } } @@ -14190,7 +16497,7 @@ { "Spring Cloud Bus源码分析": { "data": { - "uuid": "云原生-5-352", + "uuid": "云原生-5-353", "seg": [ [ [ @@ -14201,7 +16508,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04755434782608695, + "max": 0.047619047619047616 + }, "related_data": {} } } @@ -14219,7 +16529,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04736024844720496, + "max": 0.047619047619047616 + }, "related_data": {} } } @@ -14231,11 +16544,15 @@ [ [ "消息", - "总线" + "总线", + "消息总线" ] ] ], - "level": "2", + "level": { + "min": 0.04710144927536231, + "max": 0.047619047619047616 + }, "related_data": {} } } @@ -14256,7 +16573,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.047619047619047616, + "max": 0.04767655854612376 + }, "related_data": {} } } @@ -14280,7 +16600,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.04767655854612376, + "max": 0.04773406947319991 + }, "related_data": {} } } @@ -14302,18 +16625,22 @@ "github", "仓库", "指标", - "数据" + "数据", + "指标数据" ] ] ], - "level": "2", + "level": { + "min": 0.04773406947319991, + "max": 0.04779158040027605 + }, "related_data": { "blog": { "data_id": [ - "88852292", - "88008918", - "54581015", - "117281035" + "88852292@docker@云原生", + "88008918@无服务器@云原生", + "54581015@阿里云@云原生", + "117281035@运维@云原生" ] } } @@ -14336,7 +16663,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04779158040027605, + "max": 0.04784909132735219 + }, "related_data": {} } } @@ -14356,14 +16686,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04784909132735219, + "max": 0.04790660225442834 + }, "related_data": { "blog": { "data_id": [ - "79710534", - "111711929", - "7973511", - "92999646" + "79710534@kafka@云原生", + "111711929@服务发现@云原生", + "7973511@go@云原生", + "92999646@docker@云原生" ] } } @@ -14383,7 +16716,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04790660225442834, + "max": 0.04796411318150448 + }, "related_data": {} } } @@ -14394,7 +16730,7 @@ { "TaskLauncher接口": { "data": { - "uuid": "云原生-5-353", + "uuid": "云原生-5-354", "seg": [ [ [ @@ -14403,7 +16739,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04796411318150448, + "max": 0.04798328349052986 + }, "related_data": {} } } @@ -14411,7 +16750,7 @@ { "AppDeployer接口": { "data": { - "uuid": "云原生-5-354", + "uuid": "云原生-5-355", "seg": [ [ [ @@ -14420,7 +16759,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04798328349052986, + "max": 0.04800245379955524 + }, "related_data": {} } } @@ -14428,7 +16770,7 @@ { "LocalAppDeployer": { "data": { - "uuid": "云原生-5-355", + "uuid": "云原生-5-356", "seg": [ [ [ @@ -14436,7 +16778,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04800245379955524, + "max": 0.04802162410858062 + }, "related_data": {} } } @@ -14453,7 +16798,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04796411318150448, + "max": 0.04802162410858062 + }, "related_data": {} } } @@ -14464,7 +16812,7 @@ { "体验Spring Cloud Task": { "data": { - "uuid": "云原生-5-356", + "uuid": "云原生-5-357", "seg": [ [ [ @@ -14475,7 +16823,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04802162410858062, + "max": 0.048040794417606 + }, "related_data": {} } } @@ -14483,7 +16834,7 @@ { "深入理解Spring Cloud Task": { "data": { - "uuid": "云原生-5-357", + "uuid": "云原生-5-358", "seg": [ [ [ @@ -14494,19 +16845,22 @@ ] ] ], - "level": "2", + "level": { + "min": 0.048040794417606, + "max": 0.04805996472663139 + }, "related_data": { "blog": { "data_id": [ - "81701320", - "81089997", - "80553666", - "79638403", - "109597104", - "68946881", - "111028208", - "80786726", - "86529788" + "81701320@微服务@云原生", + "81089997@cloud@云原生", + "80553666@ribbon@云原生", + "79638403@微服务@云原生", + "109597104@微服务@云原生", + "68946881@spring@云原生", + "111028208@eureka@云原生", + "80786726@cloud@云原生", + "86529788@cloud@云原生" ] } } @@ -14516,7 +16870,7 @@ { "Spring Cloud Task Batch": { "data": { - "uuid": "云原生-5-358", + "uuid": "云原生-5-359", "seg": [ [ [ @@ -14527,7 +16881,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04805996472663139, + "max": 0.04807913503565677 + }, "related_data": {} } } @@ -14544,7 +16901,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04802162410858062, + "max": 0.04807913503565677 + }, "related_data": {} } } @@ -14555,25 +16915,29 @@ { "Spring Batch核心组件": { "data": { - "uuid": "云原生-5-359", + "uuid": "云原生-5-360", "seg": [ [ [ "spring", "batch", "核心", - "组件" + "组件", + "核心组件" ] ] ], - "level": "2", + "level": { + "min": 0.04807913503565677, + "max": 0.04813664596273291 + }, "related_data": { "blog": { "data_id": [ - "98459194", - "109065239", - "53369173", - "117289722" + "98459194@容器@云原生", + "109065239@spring@云原生", + "53369173@kafka@云原生", + "117289722@微服务@云原生" ] } } @@ -14591,7 +16955,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04807913503565677, + "max": 0.04813664596273291 + }, "related_data": {} } } @@ -14609,7 +16976,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.047619047619047616, + "max": 0.04813664596273291 + }, "related_data": {} } } @@ -14623,7 +16993,7 @@ { "API网关的定义、职能与关注点": { "data": { - "uuid": "云原生-5-360", + "uuid": "云原生-5-361", "seg": [ [ [ @@ -14639,7 +17009,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04813664596273291, + "max": 0.04816899585921325 + }, "related_data": {} } } @@ -14647,7 +17020,7 @@ { "API网关的分类与技术分析": { "data": { - "uuid": "云原生-5-361", + "uuid": "云原生-5-362", "seg": [ [ [ @@ -14661,17 +17034,19 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04816899585921325, + "max": 0.04820134575569358 + }, "related_data": { "blog": { "data_id": [ - "86742532", - "86742973", - "95726741", - "84036052", - "73087478", - "89675753", - "110230011" + "86742532@服务发现@云原生", + "86742973@服务发现@云原生", + "95726741@oauth@云原生", + "84036052@dashboard@云原生", + "73087478@阿里云@云原生", + "110230011@etcd@云原生" ] } } @@ -14690,7 +17065,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04813664596273291, + "max": 0.04820134575569358 + }, "related_data": {} } } @@ -14707,7 +17085,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04820134575569358, + "max": 0.04826604554865424 + }, "related_data": {} } } @@ -14722,11 +17103,15 @@ "阻塞", "spring", "cloud", - "gateway" + "gateway", + "非阻塞" ] ] ], - "level": "2", + "level": { + "min": 0.04826604554865424, + "max": 0.048330745341614904 + }, "related_data": {} } } @@ -14740,11 +17125,15 @@ [ "route", "路由", - "信息" + "信息", + "路由信息" ] ] ], - "level": "2", + "level": { + "min": 0.048330745341614904, + "max": 0.04839544513457557 + }, "related_data": {} } } @@ -14755,7 +17144,7 @@ { "PredicateDefinition和AsyncPredicate": { "data": { - "uuid": "云原生-5-362", + "uuid": "云原生-5-363", "seg": [ [ [ @@ -14766,7 +17155,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04839544513457557, + "max": 0.04841701173222912 + }, "related_data": {} } } @@ -14774,7 +17166,7 @@ { "RoutePredicateFactory": { "data": { - "uuid": "云原生-5-363", + "uuid": "云原生-5-364", "seg": [ [ [ @@ -14782,7 +17174,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04841701173222912, + "max": 0.04843857832988267 + }, "related_data": {} } } @@ -14790,7 +17185,7 @@ { "内置RoutePredicateFactory": { "data": { - "uuid": "云原生-5-364", + "uuid": "云原生-5-365", "seg": [ [ [ @@ -14799,7 +17194,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04843857832988267, + "max": 0.048460144927536225 + }, "related_data": {} } } @@ -14815,7 +17213,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04839544513457557, + "max": 0.048460144927536225 + }, "related_data": {} } } @@ -14826,7 +17227,7 @@ { "FilterDefinition和GatewayFilter": { "data": { - "uuid": "云原生-5-365", + "uuid": "云原生-5-366", "seg": [ [ [ @@ -14837,7 +17238,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.048460144927536225, + "max": 0.04847631987577639 + }, "related_data": {} } } @@ -14845,7 +17249,7 @@ { "GlobalFilter": { "data": { - "uuid": "云原生-5-366", + "uuid": "云原生-5-367", "seg": [ [ [ @@ -14853,7 +17257,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04847631987577639, + "max": 0.04849249482401656 + }, "related_data": {} } } @@ -14861,7 +17268,7 @@ { "内置GatewayFilterFactory": { "data": { - "uuid": "云原生-5-367", + "uuid": "云原生-5-368", "seg": [ [ [ @@ -14870,7 +17277,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04849249482401656, + "max": 0.04850866977225672 + }, "related_data": {} } } @@ -14878,21 +17288,25 @@ { "网关内置的GlobalFilter": { "data": { - "uuid": "云原生-5-368", + "uuid": "云原生-5-369", "seg": [ [ [ "网关", "内置", - "globalfilter" + "globalfilter", + "网关内置" ] ] ], - "level": "2", + "level": { + "min": 0.04850866977225672, + "max": 0.04852484472049689 + }, "related_data": { "blog": { "data_id": [ - "110120547" + "110120547@gateway@云原生" ] } } @@ -14910,12 +17324,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.048460144927536225, + "max": 0.04852484472049689 + }, "related_data": { "blog": { "data_id": [ - "81075432", - "52250297" + "81075432@分布式@云原生", + "52250297@mesh@云原生" ] } } @@ -14939,7 +17356,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04852484472049689, + "max": 0.04858954451345755 + }, "related_data": {} } } @@ -14955,7 +17375,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04858954451345755, + "max": 0.048654244306418216 + }, "related_data": {} } } @@ -14970,7 +17393,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04813664596273291, + "max": 0.048654244306418216 + }, "related_data": {} } } @@ -14991,7 +17417,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.048654244306418216, + "max": 0.04871894409937888 + }, "related_data": {} } } @@ -15008,11 +17437,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04871894409937888, + "max": 0.048783643892339544 + }, "related_data": { "blog": { "data_id": [ - "108114333" + "108114333@cloud@云原生" ] } } @@ -15033,7 +17465,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.048783643892339544, + "max": 0.04884834368530021 + }, "related_data": {} } } @@ -15052,7 +17487,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04884834368530021, + "max": 0.048913043478260865 + }, "related_data": {} } } @@ -15070,7 +17508,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.048913043478260865, + "max": 0.04897774327122153 + }, "related_data": {} } } @@ -15090,7 +17531,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04897774327122153, + "max": 0.04904244306418219 + }, "related_data": {} } } @@ -15107,7 +17551,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04904244306418219, + "max": 0.049107142857142856 + }, "related_data": {} } } @@ -15124,7 +17571,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.049107142857142856, + "max": 0.04917184265010352 + }, "related_data": {} } } @@ -15139,7 +17589,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.048654244306418216, + "max": 0.04917184265010352 + }, "related_data": {} } } @@ -15161,7 +17614,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04917184265010352, + "max": 0.04921165790731008 + }, "related_data": {} } } @@ -15172,7 +17628,7 @@ { "研发环境和流程上的转变": { "data": { - "uuid": "云原生-5-369", + "uuid": "云原生-5-370", "seg": [ [ [ @@ -15184,7 +17640,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04921165790731008, + "max": 0.04923156553591336 + }, "related_data": {} } } @@ -15192,18 +17651,22 @@ { "拆分前先做好解耦": { "data": { - "uuid": "云原生-5-370", + "uuid": "云原生-5-371", "seg": [ [ [ "拆分", "做好", "解", - "耦" + "耦", + "先做好" ] ] ], - "level": "2", + "level": { + "min": 0.04923156553591336, + "max": 0.04925147316451664 + }, "related_data": {} } } @@ -15222,7 +17685,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04921165790731008, + "max": 0.04925147316451664 + }, "related_data": {} } } @@ -15233,7 +17699,7 @@ { "基于业务复杂度选择服务划分方法": { "data": { - "uuid": "云原生-5-371", + "uuid": "云原生-5-372", "seg": [ [ [ @@ -15242,11 +17708,15 @@ "选择", "服务", "划分", - "方法" + "方法", + "业务复杂度" ] ] ], - "level": "2", + "level": { + "min": 0.04925147316451664, + "max": 0.049258109040717736 + }, "related_data": {} } } @@ -15254,7 +17724,7 @@ { "基于数据驱动划分服务": { "data": { - "uuid": "云原生-5-372", + "uuid": "云原生-5-373", "seg": [ [ [ @@ -15265,12 +17735,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.049258109040717736, + "max": 0.049264744916918825 + }, "related_data": { "blog": { "data_id": [ - "78435658", - "78460599" + "78435658@mesh@云原生", + "78460599@mesh@云原生" ] } } @@ -15280,7 +17753,7 @@ { "基于领域驱动划分服务": { "data": { - "uuid": "云原生-5-373", + "uuid": "云原生-5-374", "seg": [ [ [ @@ -15291,7 +17764,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.049264744916918825, + "max": 0.04927138079311992 + }, "related_data": {} } } @@ -15299,7 +17775,7 @@ { "从已有单体架构中逐步划分服务": { "data": { - "uuid": "云原生-5-374", + "uuid": "云原生-5-375", "seg": [ [ [ @@ -15307,11 +17783,16 @@ "单体", "架构", "划分", - "服务" + "服务", + "单体架构", + "逐步划分" ] ] ], - "level": "2", + "level": { + "min": 0.04927138079311992, + "max": 0.049278016669321016 + }, "related_data": {} } } @@ -15319,7 +17800,7 @@ { "微服务拆分策略": { "data": { - "uuid": "云原生-5-375", + "uuid": "云原生-5-376", "seg": [ [ [ @@ -15330,11 +17811,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.049278016669321016, + "max": 0.049284652545522105 + }, "related_data": { "blog": { "data_id": [ - "77511818" + "77511818@oauth@云原生" ] } } @@ -15344,7 +17828,7 @@ { "如何衡量服务划分的合理性": { "data": { - "uuid": "云原生-5-376", + "uuid": "云原生-5-377", "seg": [ [ [ @@ -15355,7 +17839,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.049284652545522105, + "max": 0.0492912884217232 + }, "related_data": {} } } @@ -15373,7 +17860,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04925147316451664, + "max": 0.0492912884217232 + }, "related_data": {} } } @@ -15392,7 +17882,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0492912884217232, + "max": 0.04933110367892977 + }, "related_data": {} } } @@ -15403,7 +17896,7 @@ { "YXAPI的设计原则": { "data": { - "uuid": "云原生-5-377", + "uuid": "云原生-5-378", "seg": [ [ [ @@ -15413,7 +17906,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04933110367892977, + "max": 0.04933679157281642 + }, "related_data": {} } } @@ -15421,7 +17917,7 @@ { "服务间通信——RPC": { "data": { - "uuid": "云原生-5-378", + "uuid": "云原生-5-379", "seg": [ [ [ @@ -15431,7 +17927,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04933679157281642, + "max": 0.049342479466703074 + }, "related_data": {} } } @@ -15439,7 +17938,7 @@ { "序列化——Protobuf": { "data": { - "uuid": "云原生-5-379", + "uuid": "云原生-5-380", "seg": [ [ [ @@ -15448,7 +17947,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.049342479466703074, + "max": 0.04934816736058972 + }, "related_data": {} } } @@ -15456,7 +17958,7 @@ { "服务间通信——RESTful": { "data": { - "uuid": "云原生-5-380", + "uuid": "云原生-5-381", "seg": [ [ [ @@ -15466,7 +17968,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04934816736058972, + "max": 0.04935385525447637 + }, "related_data": {} } } @@ -15474,7 +17979,7 @@ { "通过Swagger实现RESTful": { "data": { - "uuid": "云原生-5-381", + "uuid": "云原生-5-382", "seg": [ [ [ @@ -15483,11 +17988,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04935385525447637, + "max": 0.04935954314836302 + }, "related_data": { "blog": { "data_id": [ - "78008029" + "78008029@devops@云原生" ] } } @@ -15497,7 +18005,7 @@ { "HTTP协议的进化——HTTP/2": { "data": { - "uuid": "云原生-5-382", + "uuid": "云原生-5-383", "seg": [ [ [ @@ -15507,7 +18015,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.04935954314836302, + "max": 0.04936523104224968 + }, "related_data": {} } } @@ -15515,7 +18026,7 @@ { "HTTP/2和Protobuf的组合——gRPC": { "data": { - "uuid": "云原生-5-383", + "uuid": "云原生-5-384", "seg": [ [ [ @@ -15528,7 +18039,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04936523104224968, + "max": 0.04937091893613633 + }, "related_data": {} } } @@ -15546,11 +18060,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04933110367892977, + "max": 0.04937091893613633 + }, "related_data": { "blog": { "data_id": [ - "113920007" + "113920007@dashboard@云原生" ] } } @@ -15570,7 +18087,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04937091893613633, + "max": 0.04941073419334289 + }, "related_data": {} } } @@ -15589,7 +18109,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04941073419334289, + "max": 0.04945054945054945 + }, "related_data": {} } } @@ -15609,7 +18132,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04945054945054945, + "max": 0.04949036470775601 + }, "related_data": {} } } @@ -15630,13 +18156,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04949036470775601, + "max": 0.04953017996496257 + }, "related_data": { "blog": { "data_id": [ - "89512986", - "103940111", - "109281835" + "89512986@consul@云原生", + "89512986@etcd@云原生", + "103940111@etcd@云原生", + "109281835@etcd@云原生" ] } } @@ -15649,7 +18179,7 @@ { "服务D享数据库": { "data": { - "uuid": "云原生-5-384", + "uuid": "云原生-5-385", "seg": [ [ [ @@ -15660,7 +18190,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04953017996496257, + "max": 0.049550087593565856 + }, "related_data": {} } } @@ -15668,7 +18201,7 @@ { "服务D享虚拟机/容器": { "data": { - "uuid": "云原生-5-385", + "uuid": "云原生-5-386", "seg": [ [ [ @@ -15680,7 +18213,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.049550087593565856, + "max": 0.049569995222169136 + }, "related_data": {} } } @@ -15694,11 +18230,15 @@ "微", "服务", "部署", - "策略" + "策略", + "部署策略" ] ] ], - "level": "2", + "level": { + "min": 0.04953017996496257, + "max": 0.049569995222169136 + }, "related_data": {} } } @@ -15709,7 +18249,7 @@ { "ZeroC IceGrid微服务架构": { "data": { - "uuid": "云原生-5-386", + "uuid": "云原生-5-387", "seg": [ [ [ @@ -15721,7 +18261,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.049569995222169136, + "max": 0.049579949036470776 + }, "related_data": {} } } @@ -15729,7 +18272,7 @@ { "Spring Cloud微服务架构": { "data": { - "uuid": "云原生-5-387", + "uuid": "云原生-5-388", "seg": [ [ [ @@ -15741,15 +18284,19 @@ ] ] ], - "level": "2", + "level": { + "min": 0.049579949036470776, + "max": 0.049589902850772416 + }, "related_data": { "blog": { "data_id": [ - "81519267", - "69788938", - "113833391", - "77881185", - "108731234" + "81519267@微服务@云原生", + "69788938@微服务@云原生", + "69788938@spring@云原生", + "113833391@云原生@云原生", + "77881185@devops@云原生", + "108731234@微服务@云原生" ] } } @@ -15759,7 +18306,7 @@ { "基于消息队列的微服务架构": { "data": { - "uuid": "云原生-5-388", + "uuid": "云原生-5-389", "seg": [ [ [ @@ -15767,11 +18314,15 @@ "队列", "微", "服务", - "架构" + "架构", + "消息队列" ] ] ], - "level": "2", + "level": { + "min": 0.049589902850772416, + "max": 0.049599856665074056 + }, "related_data": {} } } @@ -15779,7 +18330,7 @@ { "Docker Swarm微服务架构": { "data": { - "uuid": "云原生-5-389", + "uuid": "云原生-5-390", "seg": [ [ [ @@ -15791,18 +18342,22 @@ ] ] ], - "level": "2", + "level": { + "min": 0.049599856665074056, + "max": 0.049609810479375696 + }, "related_data": { "blog": { "data_id": [ - "103925651", - "51588291", - "75758211", - "50822061", - "81868136", - "50510163", - "53728728", - "117646369" + "103925651@服务发现@云原生", + "51588291@服务发现@云原生", + "75758211@容器@云原生", + "50822061@服务发现@云原生", + "81868136@微服务@云原生", + "50510163@服务发现@云原生", + "53728728@服务发现@云原生", + "117646369@分布式@云原生", + "117646369@微服务@云原生" ] } } @@ -15819,11 +18374,15 @@ "微", "服务", "架构", - "方案" + "方案", + "架构方案" ] ] ], - "level": "2", + "level": { + "min": 0.049569995222169136, + "max": 0.049609810479375696 + }, "related_data": {} } } @@ -15834,7 +18393,7 @@ { "基于Kubernetes的PaaS平台": { "data": { - "uuid": "云原生-5-390", + "uuid": "云原生-5-391", "seg": [ [ [ @@ -15844,11 +18403,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.049609810479375696, + "max": 0.049649625736582256 + }, "related_data": { "blog": { "data_id": [ - "89015435" + "89015435@paas@云原生" ] } } @@ -15863,11 +18425,15 @@ [ "kubernetes", "微", - "服务平台" + "服务平台", + "微服务平台" ] ] ], - "level": "2", + "level": { + "min": 0.049609810479375696, + "max": 0.049649625736582256 + }, "related_data": {} } } @@ -15878,7 +18444,7 @@ { "Service Mesh之再见架构": { "data": { - "uuid": "云原生-5-391", + "uuid": "云原生-5-392", "seg": [ [ [ @@ -15889,7 +18455,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.049649625736582256, + "max": 0.049659579550883896 + }, "related_data": {} } } @@ -15897,7 +18466,7 @@ { "Envoy核心实践入门": { "data": { - "uuid": "云原生-5-392", + "uuid": "云原生-5-393", "seg": [ [ [ @@ -15908,7 +18477,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.049659579550883896, + "max": 0.049669533365185536 + }, "related_data": {} } } @@ -15916,7 +18488,7 @@ { "Istio背后的技术": { "data": { - "uuid": "云原生-5-393", + "uuid": "云原生-5-394", "seg": [ [ [ @@ -15926,11 +18498,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.049669533365185536, + "max": 0.049679487179487176 + }, "related_data": { "blog": { "data_id": [ - "113821240" + "113821240@cloud@云原生" ] } } @@ -15940,7 +18515,7 @@ { "Istio的架构演变": { "data": { - "uuid": "云原生-5-394", + "uuid": "云原生-5-395", "seg": [ [ [ @@ -15950,7 +18525,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.049679487179487176, + "max": 0.049689440993788817 + }, "related_data": {} } } @@ -15968,11 +18546,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.049649625736582256, + "max": 0.049689440993788817 + }, "related_data": { "blog": { "data_id": [ - "97885718" + "97885718@mesh@云原生" ] } } @@ -15991,11 +18572,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04917184265010352, + "max": 0.049689440993788817 + }, "related_data": { "blog": { "data_id": [ - "37659335" + "37659335@微服务@云原生" ] } } @@ -16015,11 +18599,15 @@ "传统", "基础设施", "面临", - "挑战" + "挑战", + "传统基础设施" ] ] ], - "level": "2", + "level": { + "min": 0.049689440993788817, + "max": 0.04974695192086496 + }, "related_data": {} } } @@ -16036,7 +18624,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04974695192086496, + "max": 0.04980446284794111 + }, "related_data": {} } } @@ -16047,7 +18638,7 @@ { "容器VS虚拟机": { "data": { - "uuid": "云原生-5-395", + "uuid": "云原生-5-396", "seg": [ [ [ @@ -16057,15 +18648,18 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04980446284794111, + "max": 0.049818840579710144 + }, "related_data": { "blog": { "data_id": [ - "100548241", - "70568448", - "80426680", - "80456781", - "83688797" + "100548241@无服务器@云原生", + "70568448@容器@云原生", + "80426680@容器@云原生", + "80456781@容器@云原生", + "83688797@无服务器@云原生" ] } } @@ -16075,7 +18669,7 @@ { "安装Docker": { "data": { - "uuid": "云原生-5-396", + "uuid": "云原生-5-397", "seg": [ [ [ @@ -16084,7 +18678,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.049818840579710144, + "max": 0.049833218311479174 + }, "related_data": {} } } @@ -16092,7 +18689,7 @@ { "部署私有Docker Registry": { "data": { - "uuid": "云原生-5-397", + "uuid": "云原生-5-398", "seg": [ [ [ @@ -16103,7 +18700,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.049833218311479174, + "max": 0.04984759604324821 + }, "related_data": {} } } @@ -16111,7 +18711,7 @@ { "基于docker-compose管理容器": { "data": { - "uuid": "云原生-5-398", + "uuid": "云原生-5-399", "seg": [ [ [ @@ -16122,7 +18722,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04984759604324821, + "max": 0.04986197377501725 + }, "related_data": {} } } @@ -16139,7 +18742,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04980446284794111, + "max": 0.04986197377501725 + }, "related_data": {} } } @@ -16155,11 +18761,15 @@ "基础", "服务", "平台", - "化" + "化", + "平台化" ] ] ], - "level": "2", + "level": { + "min": 0.04986197377501725, + "max": 0.04991948470209339 + }, "related_data": {} } } @@ -16170,7 +18780,7 @@ { "监控数据采集": { "data": { - "uuid": "云原生-5-399", + "uuid": "云原生-5-400", "seg": [ [ [ @@ -16180,11 +18790,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04991948470209339, + "max": 0.04993098688750862 + }, "related_data": { "blog": { "data_id": [ - "110921219" + "110921219@运维@云原生" ] } } @@ -16194,7 +18807,7 @@ { "监控数据接收模式": { "data": { - "uuid": "云原生-5-400", + "uuid": "云原生-5-401", "seg": [ [ [ @@ -16205,7 +18818,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04993098688750862, + "max": 0.04994248907292385 + }, "related_data": {} } } @@ -16213,7 +18829,7 @@ { "通过时间序列数据库存储监控数据": { "data": { - "uuid": "云原生-5-401", + "uuid": "云原生-5-402", "seg": [ [ [ @@ -16222,11 +18838,16 @@ "数据库", "存储", "监控", - "数据" + "数据", + "时间序列", + "序列数据库" ] ] ], - "level": "2", + "level": { + "min": 0.04994248907292385, + "max": 0.04995399125833908 + }, "related_data": {} } } @@ -16234,7 +18855,7 @@ { "开源监控系统实现Prometheus": { "data": { - "uuid": "云原生-5-402", + "uuid": "云原生-5-403", "seg": [ [ [ @@ -16245,11 +18866,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04995399125833908, + "max": 0.04996549344375431 + }, "related_data": { "blog": { "data_id": [ - "88078657" + "88078657@中间件@云原生" ] } } @@ -16259,7 +18883,7 @@ { "通过Prometheus和Grafana监控服务": { "data": { - "uuid": "云原生-5-403", + "uuid": "云原生-5-404", "seg": [ [ [ @@ -16272,7 +18896,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04996549344375431, + "max": 0.04997699562916954 + }, "related_data": {} } } @@ -16290,7 +18917,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04991948470209339, + "max": 0.04997699562916954 + }, "related_data": {} } } @@ -16301,7 +18931,7 @@ { "分布式消息中间件的作用": { "data": { - "uuid": "云原生-5-404", + "uuid": "云原生-5-405", "seg": [ [ [ @@ -16311,11 +18941,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04997699562916954, + "max": 0.04998658078368223 + }, "related_data": { "blog": { "data_id": [ - "52779157" + "52779157@中间件@云原生" ] } } @@ -16325,7 +18958,7 @@ { "业界常用的分布式消息中间件": { "data": { - "uuid": "云原生-5-405", + "uuid": "云原生-5-406", "seg": [ [ [ @@ -16335,13 +18968,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04998658078368223, + "max": 0.04999616593819492 + }, "related_data": { "blog": { "data_id": [ - "40114533", - "54411464", - "107075876" + "40114533@中间件@云原生", + "54411464@中间件@云原生", + "107075876@中间件@云原生" ] } } @@ -16351,7 +18987,7 @@ { "Kafka的设计原理": { "data": { - "uuid": "云原生-5-406", + "uuid": "云原生-5-407", "seg": [ [ [ @@ -16361,20 +18997,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04999616593819492, + "max": 0.05000575109270761 + }, "related_data": { "blog": { "data_id": [ - "85528519", - "48053965", - "72943207", - "88173552", - "80297208", - "102790124", - "100563722", - "86682232", - "72856762", - "57411790" + "85528519@kafka@云原生", + "48053965@kafka@云原生", + "80827085@kafka@云原生", + "72943207@kafka@云原生", + "88173552@kafka@云原生", + "80297208@kafka@云原生", + "102790124@中间件@云原生", + "102790124@kafka@云原生", + "100563722@中间件@云原生", + "86682232@中间件@云原生" ] } } @@ -16384,7 +19023,7 @@ { "Kafka的数据存储结构": { "data": { - "uuid": "云原生-5-407", + "uuid": "云原生-5-408", "seg": [ [ [ @@ -16395,20 +19034,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05000575109270761, + "max": 0.0500153362472203 + }, "related_data": { "blog": { "data_id": [ - "114019167", - "81910407", - "115368141", - "109010395", - "109685442", - "78519245", - "116599379", - "52268592", - "108002293", - "108599723" + "114019167@kafka@云原生", + "81910407@kafka@云原生", + "115368141@kafka@云原生", + "109010395@kafka@云原生", + "109685442@kafka@云原生", + "78519245@kafka@云原生", + "116599379@kafka@云原生", + "52268592@kafka@云原生", + "108002293@kafka@云原生", + "108599723@分布式@云原生" ] } } @@ -16418,22 +19060,26 @@ { "如何保证Kafka不丢消息": { "data": { - "uuid": "云原生-5-408", + "uuid": "云原生-5-409", "seg": [ [ [ "保证", "kafka", "丢", - "消息" + "消息", + "不丢" ] ] ], - "level": "2", + "level": { + "min": 0.0500153362472203, + "max": 0.050024921401732994 + }, "related_data": { "blog": { "data_id": [ - "79888144" + "79888144@kafka@云原生" ] } } @@ -16443,7 +19089,7 @@ { "Kafka跨数据中心场景集群部署模式": { "data": { - "uuid": "云原生-5-409", + "uuid": "云原生-5-410", "seg": [ [ [ @@ -16453,11 +19099,18 @@ "场景", "集群", "部署", - "模式" + "模式", + "数据中心场景", + "场景集群", + "集群部署", + "部署模式" ] ] ], - "level": "2", + "level": { + "min": 0.050024921401732994, + "max": 0.05003450655624568 + }, "related_data": {} } } @@ -16474,7 +19127,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.04997699562916954, + "max": 0.05003450655624568 + }, "related_data": {} } } @@ -16485,7 +19141,7 @@ { "分布式缓存的应用场景": { "data": { - "uuid": "云原生-5-410", + "uuid": "云原生-5-411", "seg": [ [ [ @@ -16495,7 +19151,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05003450655624568, + "max": 0.05004600874166091 + }, "related_data": {} } } @@ -16503,7 +19162,7 @@ { "业界常用的分布式缓存Memcached": { "data": { - "uuid": "云原生-5-411", + "uuid": "云原生-5-412", "seg": [ [ [ @@ -16514,7 +19173,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05004600874166091, + "max": 0.05005751092707614 + }, "related_data": {} } } @@ -16522,7 +19184,7 @@ { "业界常用的分布式缓存——Redis": { "data": { - "uuid": "云原生-5-412", + "uuid": "云原生-5-413", "seg": [ [ [ @@ -16533,13 +19195,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05005751092707614, + "max": 0.050069013112491366 + }, "related_data": { "blog": { "data_id": [ - "78769428", - "108109523", - "108374664" + "78769428@分布式@云原生", + "108109523@分布式@云原生", + "108374664@分布式@云原生" ] } } @@ -16549,7 +19214,7 @@ { "Redis常用的分布式缓存集群模式": { "data": { - "uuid": "云原生-5-413", + "uuid": "云原生-5-414", "seg": [ [ [ @@ -16557,11 +19222,15 @@ "分布式", "缓存", "集群", - "模式" + "模式", + "集群模式" ] ] ], - "level": "2", + "level": { + "min": 0.050069013112491366, + "max": 0.050080515297906594 + }, "related_data": {} } } @@ -16569,7 +19238,7 @@ { "基于Codis实现Redis分布式缓存集群": { "data": { - "uuid": "云原生-5-414", + "uuid": "云原生-5-415", "seg": [ [ [ @@ -16581,13 +19250,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.050080515297906594, + "max": 0.05009201748332182 + }, "related_data": { "blog": { "data_id": [ - "51307229", - "86102235", - "80417961" + "51307229@分布式@云原生", + "86102235@分布式@云原生", + "80417961@分布式@云原生" ] } } @@ -16606,7 +19278,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05003450655624568, + "max": 0.05009201748332182 + }, "related_data": {} } } @@ -16617,17 +19292,21 @@ { "通过Tbschedule实现分布式任务调度": { "data": { - "uuid": "云原生-5-415", + "uuid": "云原生-5-416", "seg": [ [ [ "tbschedule", "分布式", - "任务调度" + "任务调度", + "分布式任务调度" ] ] ], - "level": "2", + "level": { + "min": 0.05009201748332182, + "max": 0.0501207729468599 + }, "related_data": {} } } @@ -16635,22 +19314,26 @@ { "通过Elastic-Job实现分布式任务调度": { "data": { - "uuid": "云原生-5-416", + "uuid": "云原生-5-417", "seg": [ [ [ "elastic", "job", "分布式", - "任务调度" + "任务调度", + "分布式任务调度" ] ] ], - "level": "2", + "level": { + "min": 0.0501207729468599, + "max": 0.05014952841039797 + }, "related_data": { "blog": { "data_id": [ - "43449621" + "43449621@zookeeper@云原生" ] } } @@ -16665,11 +19348,15 @@ [ "分布式", "任务调度", - "服务" + "服务", + "分布式任务调度" ] ] ], - "level": "2", + "level": { + "min": 0.05009201748332182, + "max": 0.05014952841039797 + }, "related_data": {} } } @@ -16680,7 +19367,7 @@ { "UUID": { "data": { - "uuid": "云原生-5-417", + "uuid": "云原生-5-418", "seg": [ [ [ @@ -16688,7 +19375,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05014952841039797, + "max": 0.05016869871942335 + }, "related_data": {} } } @@ -16696,7 +19386,7 @@ { "SDwFlake": { "data": { - "uuid": "云原生-5-418", + "uuid": "云原生-5-419", "seg": [ [ [ @@ -16704,7 +19394,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05016869871942335, + "max": 0.05018786902844873 + }, "related_data": {} } } @@ -16712,7 +19405,7 @@ { "Ticket Server": { "data": { - "uuid": "云原生-5-419", + "uuid": "云原生-5-420", "seg": [ [ [ @@ -16721,7 +19414,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05018786902844873, + "max": 0.05020703933747411 + }, "related_data": {} } } @@ -16738,7 +19434,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05014952841039797, + "max": 0.05020703933747411 + }, "related_data": {} } } @@ -16759,7 +19458,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.049689440993788817, + "max": 0.05020703933747411 + }, "related_data": {} } } @@ -16773,7 +19475,7 @@ { "影子测试": { "data": { - "uuid": "云原生-5-420", + "uuid": "云原生-5-421", "seg": [ [ [ @@ -16781,7 +19483,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05020703933747411, + "max": 0.05023579480101219 + }, "related_data": {} } } @@ -16789,16 +19494,20 @@ { "蓝绿部署": { "data": { - "uuid": "云原生-5-421", + "uuid": "云原生-5-422", "seg": [ [ [ "蓝绿", - "部署" + "部署", + "蓝绿部署" ] ] ], - "level": "2", + "level": { + "min": 0.05023579480101219, + "max": 0.050264550264550255 + }, "related_data": {} } } @@ -16806,7 +19515,7 @@ { "灰度发布/金丝雀发布": { "data": { - "uuid": "云原生-5-422", + "uuid": "云原生-5-423", "seg": [ [ [ @@ -16816,7 +19525,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.050264550264550255, + "max": 0.05029330572808833 + }, "related_data": {} } } @@ -16827,11 +19539,15 @@ "seg": [ [ [ - "切换" + "切换", + "逐步切换" ] ] ], - "level": "2", + "level": { + "min": 0.05020703933747411, + "max": 0.05029330572808833 + }, "related_data": {} } } @@ -16842,7 +19558,7 @@ { "消除单点": { "data": { - "uuid": "云原生-5-423", + "uuid": "云原生-5-424", "seg": [ [ [ @@ -16851,7 +19567,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05029330572808833, + "max": 0.050307683459857366 + }, "related_data": {} } } @@ -16859,7 +19578,7 @@ { "特性开关": { "data": { - "uuid": "云原生-5-424", + "uuid": "云原生-5-425", "seg": [ [ [ @@ -16868,7 +19587,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.050307683459857366, + "max": 0.050322061191626404 + }, "related_data": {} } } @@ -16876,7 +19598,7 @@ { "服务分级": { "data": { - "uuid": "云原生-5-425", + "uuid": "云原生-5-426", "seg": [ [ [ @@ -16885,7 +19607,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.050322061191626404, + "max": 0.05033643892339544 + }, "related_data": {} } } @@ -16893,7 +19618,7 @@ { "降级设计": { "data": { - "uuid": "云原生-5-426", + "uuid": "云原生-5-427", "seg": [ [ [ @@ -16902,20 +19627,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05033643892339544, + "max": 0.05035081665516447 + }, "related_data": { "blog": { "data_id": [ - "100399302", - "88635542", - "51931090", - "108128069", - "74014237", - "51986430", - "52039587", - "103938638", - "116456820", - "103967173" + "100399302@控制器@云原生", + "88635542@控制器@云原生", + "51931090@中间件@云原生", + "108128069@控制器@云原生", + "74014237@控制器@云原生", + "51986430@中间件@云原生", + "52039587@中间件@云原生", + "103938638@控制器@云原生", + "114797075@控制器@云原生", + "115248849@控制器@云原生" ] } } @@ -16925,7 +19653,7 @@ { "超时重试": { "data": { - "uuid": "云原生-5-427", + "uuid": "云原生-5-428", "seg": [ [ [ @@ -16934,7 +19662,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05035081665516447, + "max": 0.05036519438693351 + }, "related_data": {} } } @@ -16942,7 +19673,7 @@ { "隔离策略": { "data": { - "uuid": "云原生-5-428", + "uuid": "云原生-5-429", "seg": [ [ [ @@ -16951,7 +19682,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05036519438693351, + "max": 0.050379572118702545 + }, "related_data": {} } } @@ -16967,7 +19701,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05029330572808833, + "max": 0.050379572118702545 + }, "related_data": {} } } @@ -16978,20 +19715,24 @@ { "限流算法": { "data": { - "uuid": "云原生-5-429", + "uuid": "云原生-5-430", "seg": [ [ [ "限流", - "算法" + "算法", + "限流算法" ] ] ], - "level": "2", + "level": { + "min": 0.050379572118702545, + "max": 0.0504011387163561 + }, "related_data": { "blog": { "data_id": [ - "6825843" + "6825843@分布式@云原生" ] } } @@ -17001,7 +19742,7 @@ { "流控策略": { "data": { - "uuid": "云原生-5-430", + "uuid": "云原生-5-431", "seg": [ [ [ @@ -17010,7 +19751,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0504011387163561, + "max": 0.05042270531400966 + }, "related_data": {} } } @@ -17018,7 +19762,7 @@ { "基于Guava限流": { "data": { - "uuid": "云原生-5-431", + "uuid": "云原生-5-432", "seg": [ [ [ @@ -17027,7 +19771,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05042270531400966, + "max": 0.050444271911663216 + }, "related_data": {} } } @@ -17035,7 +19782,7 @@ { "基于Nginx限流": { "data": { - "uuid": "云原生-5-432", + "uuid": "云原生-5-433", "seg": [ [ [ @@ -17044,7 +19791,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.050444271911663216, + "max": 0.05046583850931677 + }, "related_data": {} } } @@ -17060,7 +19810,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.050379572118702545, + "max": 0.05046583850931677 + }, "related_data": {} } } @@ -17077,7 +19830,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05046583850931677, + "max": 0.050552104899930984 + }, "related_data": {} } } @@ -17094,7 +19850,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.050552104899930984, + "max": 0.0506383712905452 + }, "related_data": {} } } @@ -17105,17 +19864,21 @@ { "逻辑分离,物理不分离": { "data": { - "uuid": "云原生-5-433", + "uuid": "云原生-5-434", "seg": [ [ [ "逻辑", "分离", - "物理" + "物理", + "不分离" ] ] ], - "level": "2", + "level": { + "min": 0.0506383712905452, + "max": 0.050681504485852305 + }, "related_data": {} } } @@ -17123,7 +19886,7 @@ { "物理分离": { "data": { - "uuid": "云原生-5-434", + "uuid": "云原生-5-435", "seg": [ [ [ @@ -17132,7 +19895,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.050681504485852305, + "max": 0.05072463768115942 + }, "related_data": {} } } @@ -17148,7 +19914,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0506383712905452, + "max": 0.05072463768115942 + }, "related_data": {} } } @@ -17164,7 +19933,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05020703933747411, + "max": 0.05072463768115942 + }, "related_data": {} } } @@ -17184,7 +19956,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05072463768115942, + "max": 0.05082815734989648 + }, "related_data": {} } } @@ -17202,7 +19977,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05082815734989648, + "max": 0.05093167701863354 + }, "related_data": {} } } @@ -17220,7 +19998,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05093167701863354, + "max": 0.051035196687370596 + }, "related_data": {} } } @@ -17231,7 +20012,7 @@ { "X轴扩展——主从复制集群": { "data": { - "uuid": "云原生-5-435", + "uuid": "云原生-5-436", "seg": [ [ [ @@ -17243,7 +20024,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.051035196687370596, + "max": 0.051055900621118006 + }, "related_data": {} } } @@ -17251,7 +20035,7 @@ { "Y轴扩展——分库、垂直分表": { "data": { - "uuid": "云原生-5-436", + "uuid": "云原生-5-437", "seg": [ [ [ @@ -17266,12 +20050,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.051055900621118006, + "max": 0.05107660455486542 + }, "related_data": { "blog": { "data_id": [ - "110646899", - "110914448" + "110646899@中间件@云原生", + "110914448@中间件@云原生" ] } } @@ -17281,7 +20068,7 @@ { "Z轴扩展——分片(sharding)": { "data": { - "uuid": "云原生-5-437", + "uuid": "云原生-5-438", "seg": [ [ [ @@ -17293,7 +20080,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05107660455486542, + "max": 0.05109730848861283 + }, "related_data": {} } } @@ -17301,7 +20091,7 @@ { "分片扩容(re-sharding)": { "data": { - "uuid": "云原生-5-438", + "uuid": "云原生-5-439", "seg": [ [ [ @@ -17312,15 +20102,24 @@ ] ] ], - "level": "2", - "related_data": {} + "level": { + "min": 0.05109730848861283, + "max": 0.05111801242236025 + }, + "related_data": { + "blog": { + "data_id": [ + "87101059@中间件@云原生" + ] + } + } } } }, { "精选案例": { "data": { - "uuid": "云原生-5-439", + "uuid": "云原生-5-440", "seg": [ [ [ @@ -17329,7 +20128,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05111801242236025, + "max": 0.05113871635610766 + }, "related_data": {} } } @@ -17345,7 +20147,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.051035196687370596, + "max": 0.05113871635610766 + }, "related_data": {} } } @@ -17356,7 +20161,7 @@ { "两地三中心和同城多活": { "data": { - "uuid": "云原生-5-440", + "uuid": "云原生-5-441", "seg": [ [ [ @@ -17369,7 +20174,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05113871635610766, + "max": 0.05117322291235334 + }, "related_data": {} } } @@ -17377,7 +20185,7 @@ { "同城多活": { "data": { - "uuid": "云原生-5-441", + "uuid": "云原生-5-442", "seg": [ [ [ @@ -17386,7 +20194,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05117322291235334, + "max": 0.051207729468599035 + }, "related_data": {} } } @@ -17394,7 +20205,7 @@ { "异地多活": { "data": { - "uuid": "云原生-5-442", + "uuid": "云原生-5-443", "seg": [ [ [ @@ -17403,7 +20214,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.051207729468599035, + "max": 0.05124223602484472 + }, "related_data": {} } } @@ -17419,7 +20233,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05113871635610766, + "max": 0.05124223602484472 + }, "related_data": {} } } @@ -17435,7 +20252,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05072463768115942, + "max": 0.05124223602484472 + }, "related_data": {} } } @@ -17454,7 +20274,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05124223602484472, + "max": 0.05129974695192086 + }, "related_data": {} } } @@ -17471,7 +20294,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05129974695192086, + "max": 0.05135725787899701 + }, "related_data": {} } } @@ -17488,7 +20314,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05135725787899701, + "max": 0.05141476880607315 + }, "related_data": {} } } @@ -17501,11 +20330,15 @@ [ [ "定位", - "瓶颈" + "瓶颈", + "定位瓶颈" ] ] ], - "level": "2", + "level": { + "min": 0.05141476880607315, + "max": 0.051472279733149294 + }, "related_data": {} } } @@ -17516,17 +20349,21 @@ { "同步转异步": { "data": { - "uuid": "云原生-5-443", + "uuid": "云原生-5-444", "seg": [ [ [ "同步", "转", - "异步" + "异步", + "同步转" ] ] ], - "level": "2", + "level": { + "min": 0.051472279733149294, + "max": 0.051491450042174675 + }, "related_data": {} } } @@ -17534,7 +20371,7 @@ { "阻塞转非阻塞": { "data": { - "uuid": "云原生-5-444", + "uuid": "云原生-5-445", "seg": [ [ [ @@ -17543,7 +20380,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.051491450042174675, + "max": 0.05151062035120006 + }, "related_data": {} } } @@ -17551,7 +20391,7 @@ { "序列化": { "data": { - "uuid": "云原生-5-445", + "uuid": "云原生-5-446", "seg": [ [ [ @@ -17559,7 +20399,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05151062035120006, + "max": 0.05152979066022544 + }, "related_data": {} } } @@ -17576,7 +20419,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.051472279733149294, + "max": 0.05152979066022544 + }, "related_data": {} } } @@ -17595,11 +20441,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05152979066022544, + "max": 0.051587301587301584 + }, "related_data": { "blog": { "data_id": [ - "109038205" + "109038205@中间件@云原生" ] } } @@ -17612,7 +20461,7 @@ { "基于ConcurrentHashMap实现本地缓存": { "data": { - "uuid": "云原生-5-446", + "uuid": "云原生-5-447", "seg": [ [ [ @@ -17621,13 +20470,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.051587301587301584, + "max": 0.051606471896326965 + }, "related_data": { "blog": { "data_id": [ - "79953811", - "81389583", - "72783008" + "79953811@容器@云原生", + "81389583@容器@云原生", + "72783008@容器@云原生" ] } } @@ -17637,7 +20489,7 @@ { "基于Guava Cache实现本地缓存": { "data": { - "uuid": "云原生-5-447", + "uuid": "云原生-5-448", "seg": [ [ [ @@ -17647,11 +20499,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.051606471896326965, + "max": 0.051625642205352346 + }, "related_data": { "blog": { "data_id": [ - "81283167" + "81283167@go@云原生" ] } } @@ -17661,7 +20516,7 @@ { "缓存的常用模式": { "data": { - "uuid": "云原生-5-448", + "uuid": "云原生-5-449", "seg": [ [ [ @@ -17670,7 +20525,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.051625642205352346, + "max": 0.051644812514377726 + }, "related_data": {} } } @@ -17688,7 +20546,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.051587301587301584, + "max": 0.051644812514377726 + }, "related_data": {} } } @@ -17699,7 +20560,7 @@ { "通过执行计划分析瓶颈点": { "data": { - "uuid": "云原生-5-449", + "uuid": "云原生-5-450", "seg": [ [ [ @@ -17710,7 +20571,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.051644812514377726, + "max": 0.05165919024614676 + }, "related_data": {} } } @@ -17718,19 +20582,21 @@ { "为搜索字段创建索引": { "data": { - "uuid": "云原生-5-450", + "uuid": "云原生-5-451", "seg": [ [ [ "搜索", - "字", - "段", + "字段", "创建", "索引" ] ] ], - "level": "2", + "level": { + "min": 0.05165919024614676, + "max": 0.0516735679779158 + }, "related_data": {} } } @@ -17738,7 +20604,7 @@ { "通过慢查询日志分析瓶颈点": { "data": { - "uuid": "云原生-5-451", + "uuid": "云原生-5-452", "seg": [ [ [ @@ -17750,7 +20616,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0516735679779158, + "max": 0.05168794570968484 + }, "related_data": {} } } @@ -17758,7 +20627,7 @@ { "通过提升硬件能力优化数据库": { "data": { - "uuid": "云原生-5-452", + "uuid": "云原生-5-453", "seg": [ [ [ @@ -17766,11 +20635,15 @@ "硬件", "能力", "优化", - "数据库" + "数据库", + "硬件能力" ] ] ], - "level": "2", + "level": { + "min": 0.05168794570968484, + "max": 0.051702323441453875 + }, "related_data": {} } } @@ -17786,7 +20659,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.051644812514377726, + "max": 0.051702323441453875 + }, "related_data": {} } } @@ -17797,7 +20673,7 @@ { "转移复杂度": { "data": { - "uuid": "云原生-5-453", + "uuid": "云原生-5-454", "seg": [ [ [ @@ -17806,7 +20682,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.051702323441453875, + "max": 0.05173107890499194 + }, "related_data": {} } } @@ -17814,17 +20693,21 @@ { "从业务角度优化": { "data": { - "uuid": "云原生-5-454", + "uuid": "云原生-5-455", "seg": [ [ [ "业务", "角度", - "优化" + "优化", + "业务角度" ] ] ], - "level": "2", + "level": { + "min": 0.05173107890499194, + "max": 0.05175983436853002 + }, "related_data": {} } } @@ -17840,7 +20723,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.051702323441453875, + "max": 0.05175983436853002 + }, "related_data": {} } } @@ -17856,7 +20742,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05124223602484472, + "max": 0.05175983436853002 + }, "related_data": {} } } @@ -17870,7 +20759,7 @@ { "CAP定理": { "data": { - "uuid": "云原生-5-455", + "uuid": "云原生-5-456", "seg": [ [ [ @@ -17879,7 +20768,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05175983436853002, + "max": 0.05177708764665286 + }, "related_data": {} } } @@ -17887,7 +20779,7 @@ { "BASE理论": { "data": { - "uuid": "云原生-5-456", + "uuid": "云原生-5-457", "seg": [ [ [ @@ -17896,11 +20788,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05177708764665286, + "max": 0.0517943409247757 + }, "related_data": { "blog": { "data_id": [ - "78601213" + "78601213@docker@云原生" ] } } @@ -17910,7 +20805,7 @@ { "Quorum机制(NWR模型)": { "data": { - "uuid": "云原生-5-457", + "uuid": "云原生-5-458", "seg": [ [ [ @@ -17921,7 +20816,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0517943409247757, + "max": 0.05181159420289855 + }, "related_data": {} } } @@ -17929,17 +20827,21 @@ { "租约机制(Lease)": { "data": { - "uuid": "云原生-5-458", + "uuid": "云原生-5-459", "seg": [ [ [ "租约", "机制", - "lease" + "lease", + "租约机制" ] ] ], - "level": "2", + "level": { + "min": 0.05181159420289855, + "max": 0.05182884748102139 + }, "related_data": {} } } @@ -17947,7 +20849,7 @@ { "状态机(Replicated State Machine)": { "data": { - "uuid": "云原生-5-459", + "uuid": "云原生-5-460", "seg": [ [ [ @@ -17958,8 +20860,17 @@ ] ] ], - "level": "2", - "related_data": {} + "level": { + "min": 0.05182884748102139, + "max": 0.05184610075914423 + }, + "related_data": { + "blog": { + "data_id": [ + "46309797@分布式@云原生" + ] + } + } } } } @@ -17973,7 +20884,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05175983436853002, + "max": 0.05184610075914423 + }, "related_data": {} } } @@ -17984,22 +20898,26 @@ { "以数据为中心的一致性模型": { "data": { - "uuid": "云原生-5-460", + "uuid": "云原生-5-461", "seg": [ [ [ "数据", "中心", "一致性", - "模型" + "模型", + "一致性模型" ] ] ], - "level": "2", + "level": { + "min": 0.05184610075914423, + "max": 0.05187485622268231 + }, "related_data": { "blog": { "data_id": [ - "53768464" + "53768464@分布式@云原生" ] } } @@ -18009,18 +20927,22 @@ { "以用户为中心的一致性模型": { "data": { - "uuid": "云原生-5-461", + "uuid": "云原生-5-462", "seg": [ [ [ "用户", "中心", "一致性", - "模型" + "模型", + "一致性模型" ] ] ], - "level": "2", + "level": { + "min": 0.05187485622268231, + "max": 0.051903611686220374 + }, "related_data": {} } } @@ -18028,17 +20950,21 @@ { "业界常用的一致性模型": { "data": { - "uuid": "云原生-5-462", + "uuid": "云原生-5-463", "seg": [ [ [ "业界", "一致性", - "模型" + "模型", + "一致性模型" ] ] ], - "level": "2", + "level": { + "min": 0.051903611686220374, + "max": 0.05193236714975845 + }, "related_data": {} } } @@ -18051,11 +20977,15 @@ [ "分布式系统", "一致性", - "分类" + "分类", + "一致性分类" ] ] ], - "level": "2", + "level": { + "min": 0.05184610075914423, + "max": 0.05193236714975845 + }, "related_data": {} } } @@ -18066,7 +20996,7 @@ { "两阶段提交": { "data": { - "uuid": "云原生-5-463", + "uuid": "云原生-5-464", "seg": [ [ [ @@ -18075,7 +21005,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05193236714975845, + "max": 0.05197550034506555 + }, "related_data": {} } } @@ -18083,7 +21016,7 @@ { "三阶段提交(3PC)": { "data": { - "uuid": "云原生-5-464", + "uuid": "云原生-5-465", "seg": [ [ [ @@ -18093,8 +21026,17 @@ ] ] ], - "level": "2", - "related_data": {} + "level": { + "min": 0.05197550034506555, + "max": 0.052018633540372665 + }, + "related_data": { + "blog": { + "data_id": [ + "6582531@cloud@云原生" + ] + } + } } } } @@ -18109,7 +21051,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05193236714975845, + "max": 0.052018633540372665 + }, "related_data": {} } } @@ -18120,7 +21065,7 @@ { "重试机制": { "data": { - "uuid": "云原生-5-465", + "uuid": "云原生-5-466", "seg": [ [ [ @@ -18129,7 +21074,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.052018633540372665, + "max": 0.05203588681849551 + }, "related_data": {} } } @@ -18137,16 +21085,20 @@ { "本地记录日志": { "data": { - "uuid": "云原生-5-466", + "uuid": "云原生-5-467", "seg": [ [ [ "记录", - "日志" + "日志", + "记录日志" ] ] ], - "level": "2", + "level": { + "min": 0.05203588681849551, + "max": 0.05205314009661835 + }, "related_data": {} } } @@ -18154,17 +21106,21 @@ { "可靠事件模式": { "data": { - "uuid": "云原生-5-467", + "uuid": "云原生-5-468", "seg": [ [ [ "可靠", "事件", - "模式" + "模式", + "事件模式" ] ] ], - "level": "2", + "level": { + "min": 0.05205314009661835, + "max": 0.052070393374741196 + }, "related_data": {} } } @@ -18172,17 +21128,21 @@ { "Saga事务模型": { "data": { - "uuid": "云原生-5-468", + "uuid": "云原生-5-469", "seg": [ [ [ "saga", "事务", - "模型" + "模型", + "事务模型" ] ] ], - "level": "2", + "level": { + "min": 0.052070393374741196, + "max": 0.052087646652864035 + }, "related_data": {} } } @@ -18190,17 +21150,21 @@ { "TCC事务模型": { "data": { - "uuid": "云原生-5-469", + "uuid": "云原生-5-470", "seg": [ [ [ "tcc", "事务", - "模型" + "模型", + "事务模型" ] ] ], - "level": "2", + "level": { + "min": 0.052087646652864035, + "max": 0.05210489993098688 + }, "related_data": {} } } @@ -18213,11 +21177,15 @@ [ "z", "终", - "一致性" + "一致性", + "终一致性" ] ] ], - "level": "2", + "level": { + "min": 0.052018633540372665, + "max": 0.05210489993098688 + }, "related_data": {} } } @@ -18228,7 +21196,7 @@ { "基于数据库实现悲观锁和乐观锁": { "data": { - "uuid": "云原生-5-470", + "uuid": "云原生-5-471", "seg": [ [ [ @@ -18242,7 +21210,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05210489993098688, + "max": 0.052133655394524955 + }, "related_data": {} } } @@ -18250,7 +21221,7 @@ { "基于ZooKeeper的分布式锁": { "data": { - "uuid": "云原生-5-471", + "uuid": "云原生-5-472", "seg": [ [ [ @@ -18260,17 +21231,20 @@ ] ] ], - "level": "2", + "level": { + "min": 0.052133655394524955, + "max": 0.05216241085806302 + }, "related_data": { "blog": { "data_id": [ - "82081953", - "102993655", - "108504704", - "83786331", - "83896169", - "85038336", - "116980779" + "82081953@分布式@云原生", + "102993655@zookeeper@云原生", + "108504704@zookeeper@云原生", + "83786331@zookeeper@云原生", + "83896169@zookeeper@云原生", + "85038336@zookeeper@云原生", + "116980779@etcd@云原生" ] } } @@ -18280,7 +21254,7 @@ { "基于Redis实现分布式锁": { "data": { - "uuid": "云原生-5-472", + "uuid": "云原生-5-473", "seg": [ [ [ @@ -18290,20 +21264,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05216241085806302, + "max": 0.0521911663216011 + }, "related_data": { "blog": { "data_id": [ - "82080962", - "88696999", - "82751790", - "79336986", - "111600302", - "81775044", - "114296755", - "80692278", - "108384490", - "86260854" + "82080962@分布式@云原生", + "88696999@分布式@云原生", + "82751790@分布式@云原生", + "79336986@分布式@云原生", + "111600302@分布式@云原生", + "81775044@zookeeper@云原生", + "114296755@分布式@云原生", + "80692278@分布式@云原生", + "79006572@分布式@云原生", + "114296755@zookeeper@云原生" ] } } @@ -18321,7 +21298,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05210489993098688, + "max": 0.0521911663216011 + }, "related_data": {} } } @@ -18332,7 +21312,7 @@ { "幂等令牌(Idempotency Key)": { "data": { - "uuid": "云原生-5-473", + "uuid": "云原生-5-474", "seg": [ [ [ @@ -18343,7 +21323,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0521911663216011, + "max": 0.05223429951690821 + }, "related_data": {} } } @@ -18351,7 +21334,7 @@ { "在数据库中实现幂等性": { "data": { - "uuid": "云原生-5-474", + "uuid": "云原生-5-475", "seg": [ [ [ @@ -18361,7 +21344,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05223429951690821, + "max": 0.05227743271221531 + }, "related_data": {} } } @@ -18378,7 +21364,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0521911663216011, + "max": 0.05227743271221531 + }, "related_data": {} } } @@ -18394,7 +21383,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05175983436853002, + "max": 0.05227743271221531 + }, "related_data": {} } } @@ -18408,7 +21400,7 @@ { "什么是Serverless": { "data": { - "uuid": "云原生-5-475", + "uuid": "云原生-5-476", "seg": [ [ [ @@ -18416,7 +21408,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05227743271221531, + "max": 0.052449965493443745 + }, "related_data": {} } } @@ -18424,7 +21419,7 @@ { "Serverless的现状": { "data": { - "uuid": "云原生-5-476", + "uuid": "云原生-5-477", "seg": [ [ [ @@ -18433,7 +21428,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.052449965493443745, + "max": 0.052622498274672184 + }, "related_data": {} } } @@ -18441,7 +21439,7 @@ { "Serverless的应用场景": { "data": { - "uuid": "云原生-5-477", + "uuid": "云原生-5-478", "seg": [ [ [ @@ -18450,7 +21448,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.052622498274672184, + "max": 0.05279503105590062 + }, "related_data": {} } } @@ -18465,7 +21466,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05227743271221531, + "max": 0.05279503105590062 + }, "related_data": {} } } @@ -18483,11 +21487,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05227743271221531, + "max": 0.05279503105590062 + }, "related_data": { "blog": { "data_id": [ - "18854551" + "18854551@docker@云原生" ] } } @@ -18508,7 +21515,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05279503105590062, + "max": 0.05286897367642709 + }, "related_data": {} } } @@ -18519,7 +21529,7 @@ { "单元测试": { "data": { - "uuid": "云原生-5-478", + "uuid": "云原生-5-479", "seg": [ [ [ @@ -18527,7 +21537,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05286897367642709, + "max": 0.05289362121660258 + }, "related_data": {} } } @@ -18535,7 +21548,7 @@ { "TDD": { "data": { - "uuid": "云原生-5-479", + "uuid": "云原生-5-480", "seg": [ [ [ @@ -18543,7 +21556,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05289362121660258, + "max": 0.05291826875677807 + }, "related_data": {} } } @@ -18551,7 +21567,7 @@ { "提交即意味着可测试": { "data": { - "uuid": "云原生-5-480", + "uuid": "云原生-5-481", "seg": [ [ [ @@ -18560,7 +21576,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05291826875677807, + "max": 0.05294291629695356 + }, "related_data": {} } } @@ -18575,7 +21594,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05286897367642709, + "max": 0.05294291629695356 + }, "related_data": {} } } @@ -18586,7 +21608,7 @@ { "Code Review的意义": { "data": { - "uuid": "云原生-5-481", + "uuid": "云原生-5-482", "seg": [ [ [ @@ -18596,7 +21618,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05294291629695356, + "max": 0.05296756383712905 + }, "related_data": {} } } @@ -18604,7 +21629,7 @@ { "Code Review的原则": { "data": { - "uuid": "云原生-5-482", + "uuid": "云原生-5-483", "seg": [ [ [ @@ -18614,14 +21639,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05296756383712905, + "max": 0.05299221137730454 + }, "related_data": { "blog": { "data_id": [ - "84959946", - "69566209", - "53914588", - "89921877" + "84959946@devops@云原生", + "69566209@oauth@云原生", + "53914588@oauth@云原生", + "89921877@oauth@云原生" ] } } @@ -18631,7 +21659,7 @@ { "Code Review的过程": { "data": { - "uuid": "云原生-5-483", + "uuid": "云原生-5-484", "seg": [ [ [ @@ -18641,7 +21669,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05299221137730454, + "max": 0.05301685891748003 + }, "related_data": {} } } @@ -18657,7 +21688,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05294291629695356, + "max": 0.05301685891748003 + }, "related_data": {} } } @@ -18668,7 +21702,7 @@ { "持续交付": { "data": { - "uuid": "云原生-5-484", + "uuid": "云原生-5-485", "seg": [ [ [ @@ -18677,7 +21711,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05301685891748003, + "max": 0.053031647441585325 + }, "related_data": {} } } @@ -18685,17 +21722,21 @@ { "持续部署流水线": { "data": { - "uuid": "云原生-5-485", + "uuid": "云原生-5-486", "seg": [ [ [ "持续", "部署", - "流水线" + "流水线", + "部署流水线" ] ] ], - "level": "2", + "level": { + "min": 0.053031647441585325, + "max": 0.05304643596569062 + }, "related_data": {} } } @@ -18703,7 +21744,7 @@ { "基于开源打造流水线": { "data": { - "uuid": "云原生-5-486", + "uuid": "云原生-5-487", "seg": [ [ [ @@ -18713,7 +21754,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05304643596569062, + "max": 0.053061224489795916 + }, "related_data": {} } } @@ -18721,7 +21765,7 @@ { "YMX的流水线": { "data": { - "uuid": "云原生-5-487", + "uuid": "云原生-5-488", "seg": [ [ [ @@ -18730,7 +21774,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.053061224489795916, + "max": 0.05307601301390121 + }, "related_data": {} } } @@ -18738,7 +21785,7 @@ { "开发人员自服务": { "data": { - "uuid": "云原生-5-488", + "uuid": "云原生-5-489", "seg": [ [ [ @@ -18747,7 +21794,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05307601301390121, + "max": 0.05309080153800651 + }, "related_data": {} } } @@ -18762,7 +21812,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05301685891748003, + "max": 0.05309080153800651 + }, "related_data": {} } } @@ -18783,7 +21836,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05309080153800651, + "max": 0.05316474415853298 + }, "related_data": {} } } @@ -18800,7 +21856,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05316474415853298, + "max": 0.05323868677905945 + }, "related_data": {} } } @@ -18816,7 +21875,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05323868677905945, + "max": 0.05331262939958592 + }, "related_data": {} } } @@ -18832,7 +21894,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05279503105590062, + "max": 0.05331262939958592 + }, "related_data": {} } } @@ -18846,16 +21911,20 @@ { "康威定律": { "data": { - "uuid": "云原生-5-489", + "uuid": "云原生-5-490", "seg": [ [ [ "康威", - "定律" + "定律", + "康威定律" ] ] ], - "level": "2", + "level": { + "min": 0.05331262939958592, + "max": 0.053344979296066256 + }, "related_data": {} } } @@ -18863,7 +21932,7 @@ { "扁平化的组织": { "data": { - "uuid": "云原生-5-490", + "uuid": "云原生-5-491", "seg": [ [ [ @@ -18872,7 +21941,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.053344979296066256, + "max": 0.053377329192546584 + }, "related_data": {} } } @@ -18880,7 +21952,7 @@ { "D裁的管理方式还是民主的管理方式": { "data": { - "uuid": "云原生-5-491", + "uuid": "云原生-5-492", "seg": [ [ [ @@ -18892,7 +21964,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.053377329192546584, + "max": 0.05340967908902691 + }, "related_data": {} } } @@ -18900,7 +21975,7 @@ { "民主的团队如何做决策": { "data": { - "uuid": "云原生-5-492", + "uuid": "云原生-5-493", "seg": [ [ [ @@ -18911,7 +21986,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05340967908902691, + "max": 0.05344202898550725 + }, "related_data": {} } } @@ -18927,7 +22005,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05331262939958592, + "max": 0.05344202898550725 + }, "related_data": {} } } @@ -18938,7 +22019,7 @@ { "公开透明的工作环境": { "data": { - "uuid": "云原生-5-493", + "uuid": "云原生-5-494", "seg": [ [ [ @@ -18949,7 +22030,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05344202898550725, + "max": 0.05346790890269151 + }, "related_data": {} } } @@ -18957,7 +22041,7 @@ { "学习型组织": { "data": { - "uuid": "云原生-5-494", + "uuid": "云原生-5-495", "seg": [ [ [ @@ -18966,7 +22050,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05346790890269151, + "max": 0.05349378881987578 + }, "related_data": {} } } @@ -18974,7 +22061,7 @@ { "减少正式的汇报": { "data": { - "uuid": "云原生-5-495", + "uuid": "云原生-5-496", "seg": [ [ [ @@ -18984,7 +22071,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05349378881987578, + "max": 0.05351966873706004 + }, "related_data": {} } } @@ -18992,7 +22082,7 @@ { "高效的会议": { "data": { - "uuid": "云原生-5-496", + "uuid": "云原生-5-497", "seg": [ [ [ @@ -19001,7 +22091,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05351966873706004, + "max": 0.0535455486542443 + }, "related_data": {} } } @@ -19009,7 +22102,7 @@ { "量化指标致死": { "data": { - "uuid": "云原生-5-497", + "uuid": "云原生-5-498", "seg": [ [ [ @@ -19019,7 +22112,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0535455486542443, + "max": 0.05357142857142857 + }, "related_data": {} } } @@ -19031,11 +22127,15 @@ [ [ "环境", - "氛围" + "氛围", + "环境氛围" ] ] ], - "level": "2", + "level": { + "min": 0.05344202898550725, + "max": 0.05357142857142857 + }, "related_data": {} } } @@ -19046,7 +22146,7 @@ { "下属请假你会拒绝吗": { "data": { - "uuid": "云原生-5-498", + "uuid": "云原生-5-499", "seg": [ [ [ @@ -19056,7 +22156,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05357142857142857, + "max": 0.053597308488612834 + }, "related_data": {} } } @@ -19064,7 +22167,7 @@ { "得到了所有人的认可,说明你并不是一个好的管理者": { "data": { - "uuid": "云原生-5-499", + "uuid": "云原生-5-500", "seg": [ [ [ @@ -19074,7 +22177,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.053597308488612834, + "max": 0.0536231884057971 + }, "related_data": {} } } @@ -19082,7 +22188,7 @@ { "尽量避免用自己的权力去做决策": { "data": { - "uuid": "云原生-5-500", + "uuid": "云原生-5-501", "seg": [ [ [ @@ -19093,7 +22199,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0536231884057971, + "max": 0.05364906832298136 + }, "related_data": {} } } @@ -19101,7 +22210,7 @@ { "一屋不扫也可助你“荡平天下”": { "data": { - "uuid": "云原生-5-501", + "uuid": "云原生-5-502", "seg": [ [ [ @@ -19109,11 +22218,16 @@ "扫", "可助", "荡平", - "天下" + "天下", + "不扫", + "也可助" ] ] ], - "level": "2", + "level": { + "min": 0.05364906832298136, + "max": 0.053674948240165624 + }, "related_data": {} } } @@ -19121,7 +22235,7 @@ { "如何留下你想要的人": { "data": { - "uuid": "云原生-5-502", + "uuid": "云原生-5-503", "seg": [ [ [ @@ -19129,7 +22243,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.053674948240165624, + "max": 0.05370082815734989 + }, "related_data": {} } } @@ -19145,7 +22262,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05357142857142857, + "max": 0.05370082815734989 + }, "related_data": {} } } @@ -19156,17 +22276,21 @@ { "Instagram的团队文化": { "data": { - "uuid": "云原生-5-503", + "uuid": "云原生-5-504", "seg": [ [ [ "instagram", "团队", - "文化" + "文化", + "团队文化" ] ] ], - "level": "2", + "level": { + "min": 0.05370082815734989, + "max": 0.05376552795031055 + }, "related_data": {} } } @@ -19174,17 +22298,21 @@ { "Netflix的团队文化": { "data": { - "uuid": "云原生-5-504", + "uuid": "云原生-5-505", "seg": [ [ [ "netflix", "团队", - "文化" + "文化", + "团队文化" ] ] ], - "level": "2", + "level": { + "min": 0.05376552795031055, + "max": 0.05383022774327122 + }, "related_data": {} } } @@ -19196,11 +22324,15 @@ [ [ "经典", - "案例" + "案例", + "经典案例" ] ] ], - "level": "2", + "level": { + "min": 0.05370082815734989, + "max": 0.05383022774327122 + }, "related_data": {} } } @@ -19212,11 +22344,15 @@ [ [ "团队", - "文化" + "文化", + "团队文化" ] ] ], - "level": "2", + "level": { + "min": 0.05331262939958592, + "max": 0.05383022774327122 + }, "related_data": {} } } @@ -19230,7 +22366,7 @@ { "微服务架构面临的一些挑战": { "data": { - "uuid": "云原生-5-505", + "uuid": "云原生-5-506", "seg": [ [ [ @@ -19242,7 +22378,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05383022774327122, + "max": 0.05389492753623188 + }, "related_data": {} } } @@ -19250,21 +22389,25 @@ { "技术架构演进": { "data": { - "uuid": "云原生-5-506", + "uuid": "云原生-5-507", "seg": [ [ [ "技术", "架构", - "演进" + "演进", + "技术架构" ] ] ], - "level": "2", + "level": { + "min": 0.05389492753623188, + "max": 0.053959627329192544 + }, "related_data": { "blog": { "data_id": [ - "6876058" + "6876058@中间件@云原生" ] } } @@ -19274,7 +22417,7 @@ { "Service Mesh的功能": { "data": { - "uuid": "云原生-5-507", + "uuid": "云原生-5-508", "seg": [ [ [ @@ -19284,7 +22427,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.053959627329192544, + "max": 0.0540243271221532 + }, "related_data": {} } } @@ -19295,7 +22441,7 @@ { "Envoy": { "data": { - "uuid": "云原生-6-75", + "uuid": "云原生-6-76", "seg": [ [ [ @@ -19303,11 +22449,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0540243271221532, + "max": 0.054089026915113865 + }, "related_data": { "blog": { "data_id": [ - "90902514" + "90902514@mesh@云原生" ] } } @@ -19316,7 +22465,7 @@ } ], "data": { - "uuid": "云原生-5-508", + "uuid": "云原生-5-509", "seg": [ [ [ @@ -19327,7 +22476,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0540243271221532, + "max": 0.054089026915113865 + }, "related_data": {} } } @@ -19344,7 +22496,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05383022774327122, + "max": 0.054089026915113865 + }, "related_data": {} } } @@ -19355,7 +22510,7 @@ { "Linkerd架构": { "data": { - "uuid": "云原生-5-509", + "uuid": "云原生-5-510", "seg": [ [ [ @@ -19364,7 +22519,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.054089026915113865, + "max": 0.05415372670807453 + }, "related_data": {} } } @@ -19372,7 +22530,7 @@ { "Linkerd主要功能": { "data": { - "uuid": "云原生-5-510", + "uuid": "云原生-5-511", "seg": [ [ [ @@ -19381,7 +22539,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05415372670807453, + "max": 0.054218426501035186 + }, "related_data": {} } } @@ -19407,7 +22568,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.054218426501035186, + "max": 0.054221507443557124 + }, "related_data": {} } } @@ -19428,20 +22592,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.054221507443557124, + "max": 0.054224588386079055 + }, "related_data": { "blog": { "data_id": [ - "90521818", - "51559228", - "74838182", - "84874315", - "89394459", - "110402009", - "89389194", - "105555146", - "108331787", - "88373553" + "90521818@consul@云原生", + "90521818@服务发现@云原生", + "51559228@consul@云原生", + "51559228@服务发现@云原生", + "74838182@consul@云原生", + "84874315@服务发现@云原生", + "89394459@consul@云原生", + "110402009@consul@云原生", + "89389194@consul@云原生", + "105555146@consul@云原生" ] } } @@ -19460,7 +22627,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.054224588386079055, + "max": 0.05422766932860099 + }, "related_data": {} } } @@ -19474,11 +22644,15 @@ [ "部署", "示例", - "服务" + "服务", + "部署示例" ] ] ], - "level": "2", + "level": { + "min": 0.05422766932860099, + "max": 0.05423075027112293 + }, "related_data": {} } } @@ -19499,11 +22673,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05423075027112293, + "max": 0.05423177725196358 + }, "related_data": { "blog": { "data_id": [ - "49683221" + "49683221@docker@云原生" ] } } @@ -19522,11 +22699,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05423177725196358, + "max": 0.05423280423280422 + }, "related_data": { "blog": { "data_id": [ - "50405532" + "50405532@控制器@云原生" ] } } @@ -19545,7 +22725,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05423280423280422, + "max": 0.05423383121364487 + }, "related_data": {} } } @@ -19562,12 +22745,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05423075027112293, + "max": 0.05423383121364487 + }, "related_data": { "blog": { "data_id": [ - "81088799", - "106673157" + "81088799@阿里云@云原生", + "106673157@控制器@云原生" ] } } @@ -19587,7 +22773,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05423383121364487, + "max": 0.0542369121561668 + }, "related_data": {} } } @@ -19605,14 +22794,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0542369121561668, + "max": 0.05423999309868874 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-6-76", + "uuid": "云原生-6-77", "seg": [ [ [ @@ -19620,7 +22812,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.054218426501035186, + "max": 0.05423999309868874 + }, "related_data": {} } } @@ -19628,7 +22823,7 @@ { "传统安装方式": { "data": { - "uuid": "云原生-6-77", + "uuid": "云原生-6-78", "seg": [ [ [ @@ -19638,7 +22833,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05423999309868874, + "max": 0.0542615596963423 + }, "related_data": {} } } @@ -19646,7 +22844,7 @@ { "基于Docker的安装方式": { "data": { - "uuid": "云原生-6-78", + "uuid": "云原生-6-79", "seg": [ [ [ @@ -19656,14 +22854,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0542615596963423, + "max": 0.05428312629399585 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-511", + "uuid": "云原生-5-512", "seg": [ [ [ @@ -19672,7 +22873,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.054218426501035186, + "max": 0.05428312629399585 + }, "related_data": {} } } @@ -19696,7 +22900,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05428312629399585, + "max": 0.054293909592822626 + }, "related_data": {} } } @@ -19714,14 +22921,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.054293909592822626, + "max": 0.0543046928916494 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-6-79", + "uuid": "云原生-6-80", "seg": [ [ [ @@ -19729,11 +22939,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05428312629399585, + "max": 0.0543046928916494 + }, "related_data": { "blog": { "data_id": [ - "102921702" + "102921702@运维@云原生" ] } } @@ -19743,7 +22956,7 @@ { "基于文件的服务发现": { "data": { - "uuid": "云原生-6-80", + "uuid": "云原生-6-81", "seg": [ [ [ @@ -19752,7 +22965,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0543046928916494, + "max": 0.05432625948930296 + }, "related_data": {} } } @@ -19760,7 +22976,7 @@ { "示例演示": { "data": { - "uuid": "云原生-6-81", + "uuid": "云原生-6-82", "seg": [ [ [ @@ -19769,14 +22985,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05432625948930296, + "max": 0.05434782608695651 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-512", + "uuid": "云原生-5-513", "seg": [ [ [ @@ -19785,7 +23004,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05428312629399585, + "max": 0.05434782608695651 + }, "related_data": {} } } @@ -19801,7 +23023,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.054089026915113865, + "max": 0.05434782608695651 + }, "related_data": {} } } @@ -19813,15 +23038,19 @@ [ [ "基础", - "篇" + "篇", + "基础篇" ] ] ], - "level": "2", + "level": { + "min": 0.05383022774327122, + "max": 0.05434782608695651 + }, "related_data": { "blog": { "data_id": [ - "53122999" + "53122999@控制器@云原生" ] } } @@ -19837,7 +23066,7 @@ { "Linkerd术语": { "data": { - "uuid": "云原生-5-513", + "uuid": "云原生-5-514", "seg": [ [ [ @@ -19846,7 +23075,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05434782608695651, + "max": 0.05438017598343685 + }, "related_data": {} } } @@ -19857,7 +23089,7 @@ { "配置构成": { "data": { - "uuid": "云原生-6-82", + "uuid": "云原生-6-83", "seg": [ [ [ @@ -19865,20 +23097,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05438017598343685, + "max": 0.05438556763285024 + }, "related_data": { "blog": { "data_id": [ - "51235898", - "52278376", - "117787705", - "67636240", - "80555526", - "97886185", - "51919553", - "90632239", - "89679004", - "104558908" + "51235898@mesh@云原生", + "52278376@mesh@云原生", + "117787705@docker@云原生", + "67636240@docker@云原生", + "80647620@docker@云原生", + "80555526@控制器@云原生", + "97886185@控制器@云原生", + "51919553@mesh@云原生", + "90632239@阿里云@云原生", + "89679004@阿里云@云原生" ] } } @@ -19888,7 +23123,7 @@ { "admin": { "data": { - "uuid": "云原生-6-83", + "uuid": "云原生-6-84", "seg": [ [ [ @@ -19896,7 +23131,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05438556763285024, + "max": 0.054390959282263625 + }, "related_data": {} } } @@ -19904,7 +23142,7 @@ { "namer": { "data": { - "uuid": "云原生-6-84", + "uuid": "云原生-6-85", "seg": [ [ [ @@ -19912,7 +23150,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.054390959282263625, + "max": 0.05439635093167701 + }, "related_data": {} } } @@ -19920,7 +23161,7 @@ { "router": { "data": { - "uuid": "云原生-6-85", + "uuid": "云原生-6-86", "seg": [ [ [ @@ -19928,7 +23169,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05439635093167701, + "max": 0.0544017425810904 + }, "related_data": {} } } @@ -19936,7 +23180,7 @@ { "telemetry": { "data": { - "uuid": "云原生-6-86", + "uuid": "云原生-6-87", "seg": [ [ [ @@ -19944,7 +23188,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0544017425810904, + "max": 0.05440713423050379 + }, "related_data": {} } } @@ -19952,7 +23199,7 @@ { "usage": { "data": { - "uuid": "云原生-6-87", + "uuid": "云原生-6-88", "seg": [ [ [ @@ -19960,14 +23207,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05440713423050379, + "max": 0.05441252587991718 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-514", + "uuid": "云原生-5-515", "seg": [ [ [ @@ -19976,7 +23226,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05438017598343685, + "max": 0.05441252587991718 + }, "related_data": {} } } @@ -19993,7 +23246,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05434782608695651, + "max": 0.05441252587991718 + }, "related_data": {} } } @@ -20007,7 +23263,7 @@ { "dtab定义": { "data": { - "uuid": "云原生-6-88", + "uuid": "云原生-6-89", "seg": [ [ [ @@ -20016,7 +23272,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05441252587991718, + "max": 0.054428700828157345 + }, "related_data": {} } } @@ -20024,24 +23283,28 @@ { "dtab路由原理": { "data": { - "uuid": "云原生-6-89", + "uuid": "云原生-6-90", "seg": [ [ [ "dtab", "路由", - "原理" + "原理", + "路由原理" ] ] ], - "level": "1", + "level": { + "min": 0.054428700828157345, + "max": 0.054444875776397506 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-515", + "uuid": "云原生-5-516", "seg": [ [ [ @@ -20050,7 +23313,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05441252587991718, + "max": 0.054444875776397506 + }, "related_data": {} } } @@ -20061,7 +23327,7 @@ { "鉴别": { "data": { - "uuid": "云原生-6-90", + "uuid": "云原生-6-91", "seg": [ [ [ @@ -20069,7 +23335,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.054444875776397506, + "max": 0.054452963250517586 + }, "related_data": {} } } @@ -20077,7 +23346,7 @@ { "绑定": { "data": { - "uuid": "云原生-6-91", + "uuid": "云原生-6-92", "seg": [ [ [ @@ -20085,7 +23354,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.054452963250517586, + "max": 0.05446105072463767 + }, "related_data": {} } } @@ -20093,7 +23365,7 @@ { "解析": { "data": { - "uuid": "云原生-6-92", + "uuid": "云原生-6-93", "seg": [ [ [ @@ -20101,11 +23373,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05446105072463767, + "max": 0.05446913819875776 + }, "related_data": { "blog": { "data_id": [ - "78496778" + "78496778@控制器@云原生" ] } } @@ -20115,7 +23390,7 @@ { "转换": { "data": { - "uuid": "云原生-6-93", + "uuid": "云原生-6-94", "seg": [ [ [ @@ -20123,14 +23398,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05446913819875776, + "max": 0.05447722567287784 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-516", + "uuid": "云原生-5-517", "seg": [ [ [ @@ -20141,11 +23419,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.054444875776397506, + "max": 0.05447722567287784 + }, "related_data": { "blog": { "data_id": [ - "109174606" + "109174606@控制器@云原生" ] } } @@ -20165,7 +23446,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.05441252587991718, + "max": 0.05447722567287784 + }, "related_data": {} } } @@ -20179,7 +23463,7 @@ { "Per-host模式": { "data": { - "uuid": "云原生-6-94", + "uuid": "云原生-6-95", "seg": [ [ [ @@ -20189,7 +23473,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05447722567287784, + "max": 0.05448800897170462 + }, "related_data": {} } } @@ -20197,7 +23484,7 @@ { "Sidecar模式": { "data": { - "uuid": "云原生-6-95", + "uuid": "云原生-6-96", "seg": [ [ [ @@ -20206,7 +23493,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05448800897170462, + "max": 0.0544987922705314 + }, "related_data": {} } } @@ -20214,7 +23504,7 @@ { "Per-host模式和Sidecar模式": { "data": { - "uuid": "云原生-6-96", + "uuid": "云原生-6-97", "seg": [ [ [ @@ -20228,24 +23518,31 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0544987922705314, + "max": 0.054509575569358176 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-517", + "uuid": "云原生-5-518", "seg": [ [ [ "linkerd", "部署", - "模式" + "模式", + "部署模式" ] ] ], - "level": "2", + "level": { + "min": 0.05447722567287784, + "max": 0.054509575569358176 + }, "related_data": {} } } @@ -20256,7 +23553,7 @@ { "service-to-linker模型": { "data": { - "uuid": "云原生-6-97", + "uuid": "云原生-6-98", "seg": [ [ [ @@ -20267,7 +23564,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.054509575569358176, + "max": 0.05452035886818495 + }, "related_data": {} } } @@ -20275,7 +23575,7 @@ { "linker-to-service模型": { "data": { - "uuid": "云原生-6-98", + "uuid": "云原生-6-99", "seg": [ [ [ @@ -20286,7 +23586,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05452035886818495, + "max": 0.05453114216701173 + }, "related_data": {} } } @@ -20294,7 +23597,7 @@ { "linker-to-linker模型": { "data": { - "uuid": "云原生-6-99", + "uuid": "云原生-6-100", "seg": [ [ [ @@ -20304,16 +23607,19 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05453114216701173, + "max": 0.054541925465838505 + }, "related_data": { "blog": { "data_id": [ - "44156895", - "7901687", - "80753051", - "6636549", - "103260026", - "108763398" + "44156895@docker@云原生", + "7901687@go@云原生", + "80753051@go@云原生", + "6636549@go@云原生", + "103260026@eureka@云原生", + "108763398@eureka@云原生" ] } } @@ -20322,7 +23628,7 @@ } ], "data": { - "uuid": "云原生-5-518", + "uuid": "云原生-5-519", "seg": [ [ [ @@ -20331,7 +23637,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.054509575569358176, + "max": 0.054541925465838505 + }, "related_data": {} } } @@ -20344,11 +23653,15 @@ [ "linkerd", "部署", - "模式" + "模式", + "部署模式" ] ] ], - "level": "2", + "level": { + "min": 0.05447722567287784, + "max": 0.054541925465838505 + }, "related_data": {} } } @@ -20359,7 +23672,7 @@ { "Namerd简介": { "data": { - "uuid": "云原生-5-519", + "uuid": "云原生-5-520", "seg": [ [ [ @@ -20368,7 +23681,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.054541925465838505, + "max": 0.05455810041407867 + }, "related_data": {} } } @@ -20379,7 +23695,7 @@ { "admin配置": { "data": { - "uuid": "云原生-6-100", + "uuid": "云原生-6-101", "seg": [ [ [ @@ -20388,7 +23704,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05455810041407867, + "max": 0.05456214415113871 + }, "related_data": {} } } @@ -20396,7 +23715,7 @@ { "interface配置": { "data": { - "uuid": "云原生-6-101", + "uuid": "云原生-6-102", "seg": [ [ [ @@ -20405,7 +23724,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05456214415113871, + "max": 0.05456618788819875 + }, "related_data": {} } } @@ -20413,7 +23735,7 @@ { "storage配置": { "data": { - "uuid": "云原生-6-102", + "uuid": "云原生-6-103", "seg": [ [ [ @@ -20422,7 +23744,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05456618788819875, + "max": 0.05457023162525879 + }, "related_data": {} } } @@ -20430,7 +23755,7 @@ { "namer配置": { "data": { - "uuid": "云原生-6-103", + "uuid": "云原生-6-104", "seg": [ [ [ @@ -20439,14 +23764,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05457023162525879, + "max": 0.05457427536231883 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-520", + "uuid": "云原生-5-521", "seg": [ [ [ @@ -20456,7 +23784,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05455810041407867, + "max": 0.05457427536231883 + }, "related_data": {} } } @@ -20467,7 +23798,7 @@ { "准备Namerd配置文件": { "data": { - "uuid": "云原生-6-104", + "uuid": "云原生-6-105", "seg": [ [ [ @@ -20476,7 +23807,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05457427536231883, + "max": 0.05457831909937887 + }, "related_data": {} } } @@ -20484,7 +23818,7 @@ { "启动Namerd": { "data": { - "uuid": "云原生-6-105", + "uuid": "云原生-6-106", "seg": [ [ [ @@ -20493,7 +23827,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05457831909937887, + "max": 0.054582362836438914 + }, "related_data": {} } } @@ -20501,7 +23838,7 @@ { "准备Linkerd配置文件": { "data": { - "uuid": "云原生-6-106", + "uuid": "云原生-6-107", "seg": [ [ [ @@ -20510,7 +23847,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.054582362836438914, + "max": 0.05458640657349896 + }, "related_data": {} } } @@ -20518,7 +23858,7 @@ { "启动Linkerd": { "data": { - "uuid": "云原生-6-107", + "uuid": "云原生-6-108", "seg": [ [ [ @@ -20527,14 +23867,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05458640657349896, + "max": 0.054590450310559 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-521", + "uuid": "云原生-5-522", "seg": [ [ [ @@ -20546,7 +23889,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05457427536231883, + "max": 0.054590450310559 + }, "related_data": {} } } @@ -20557,7 +23903,7 @@ { "Namerd API简介": { "data": { - "uuid": "云原生-6-108", + "uuid": "云原生-6-109", "seg": [ [ [ @@ -20567,7 +23913,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.054590450310559, + "max": 0.05459584195997239 + }, "related_data": {} } } @@ -20575,7 +23924,7 @@ { "通过Namerd API管理dtab": { "data": { - "uuid": "云原生-6-109", + "uuid": "云原生-6-110", "seg": [ [ [ @@ -20586,7 +23935,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05459584195997239, + "max": 0.05460123360938578 + }, "related_data": {} } } @@ -20594,7 +23946,7 @@ { "通过namerctl CLI管理dtab": { "data": { - "uuid": "云原生-6-110", + "uuid": "云原生-6-111", "seg": [ [ [ @@ -20605,14 +23957,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05460123360938578, + "max": 0.05460662525879917 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-522", + "uuid": "云原生-5-523", "seg": [ [ [ @@ -20622,7 +23977,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.054590450310559, + "max": 0.05460662525879917 + }, "related_data": {} } } @@ -20644,7 +24002,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.054541925465838505, + "max": 0.05460662525879917 + }, "related_data": {} } } @@ -20655,7 +24016,7 @@ { "Istio东西向流量管理": { "data": { - "uuid": "云原生-5-523", + "uuid": "云原生-5-524", "seg": [ [ [ @@ -20666,7 +24027,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05460662525879917, + "max": 0.05462280020703933 + }, "related_data": {} } } @@ -20674,7 +24038,7 @@ { "Istio路由控制": { "data": { - "uuid": "云原生-5-524", + "uuid": "云原生-5-525", "seg": [ [ [ @@ -20684,7 +24048,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05462280020703933, + "max": 0.0546389751552795 + }, "related_data": {} } } @@ -20692,7 +24059,7 @@ { "实现东西向流量转移路由": { "data": { - "uuid": "云原生-5-525", + "uuid": "云原生-5-526", "seg": [ [ [ @@ -20703,7 +24070,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0546389751552795, + "max": 0.054655150103519665 + }, "related_data": {} } } @@ -20711,19 +24081,23 @@ { "实现流量镜像及对比分析": { "data": { - "uuid": "云原生-5-526", + "uuid": "云原生-5-527", "seg": [ [ [ "流量", - "镜像" + "镜像", + "流量镜像" ], [ "分析" ] ] ], - "level": "2", + "level": { + "min": 0.054655150103519665, + "max": 0.054671325051759825 + }, "related_data": {} } } @@ -20740,7 +24114,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05460662525879917, + "max": 0.054671325051759825 + }, "related_data": {} } } @@ -20751,7 +24128,7 @@ { "Istio南北向流量管理": { "data": { - "uuid": "云原生-5-527", + "uuid": "云原生-5-528", "seg": [ [ [ @@ -20762,7 +24139,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.054671325051759825, + "max": 0.05468426501035196 + }, "related_data": {} } } @@ -20770,7 +24150,7 @@ { "Istio网关与K8s Ingress": { "data": { - "uuid": "云原生-5-528", + "uuid": "云原生-5-529", "seg": [ [ [ @@ -20783,7 +24163,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05468426501035196, + "max": 0.05469720496894409 + }, "related_data": {} } } @@ -20791,18 +24174,22 @@ { "保护Istio网关流量": { "data": { - "uuid": "云原生-5-529", + "uuid": "云原生-5-530", "seg": [ [ [ "保护", "istio", "网关", - "流量" + "流量", + "网关流量" ] ] ], - "level": "2", + "level": { + "min": 0.05469720496894409, + "max": 0.054710144927536224 + }, "related_data": {} } } @@ -20810,7 +24197,7 @@ { "实现入口流量路由的统一管理": { "data": { - "uuid": "云原生-5-530", + "uuid": "云原生-5-531", "seg": [ [ [ @@ -20818,11 +24205,16 @@ "流量", "路由", "统一", - "管理" + "管理", + "入口流量", + "流量路由" ] ] ], - "level": "2", + "level": { + "min": 0.054710144927536224, + "max": 0.054723084886128356 + }, "related_data": {} } } @@ -20830,7 +24222,7 @@ { "实现出口流量路由的统一管理": { "data": { - "uuid": "云原生-5-531", + "uuid": "云原生-5-532", "seg": [ [ [ @@ -20838,11 +24230,15 @@ "流量", "路由", "统一", - "管理" + "管理", + "流量路由" ] ] ], - "level": "2", + "level": { + "min": 0.054723084886128356, + "max": 0.05473602484472049 + }, "related_data": {} } } @@ -20859,7 +24255,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.054671325051759825, + "max": 0.05473602484472049 + }, "related_data": {} } } @@ -20870,7 +24269,7 @@ { "Citadel架构设计": { "data": { - "uuid": "云原生-5-532", + "uuid": "云原生-5-533", "seg": [ [ [ @@ -20879,7 +24278,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05473602484472049, + "max": 0.054745267672286296 + }, "related_data": {} } } @@ -20887,7 +24289,7 @@ { "认证机制": { "data": { - "uuid": "云原生-5-533", + "uuid": "云原生-5-534", "seg": [ [ [ @@ -20896,7 +24298,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.054745267672286296, + "max": 0.05475451049985211 + }, "related_data": {} } } @@ -20904,7 +24309,7 @@ { "授权机制": { "data": { - "uuid": "云原生-5-534", + "uuid": "云原生-5-535", "seg": [ [ [ @@ -20913,7 +24318,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05475451049985211, + "max": 0.05476375332741792 + }, "related_data": {} } } @@ -20921,7 +24329,7 @@ { "使用认证策略": { "data": { - "uuid": "云原生-5-535", + "uuid": "云原生-5-536", "seg": [ [ [ @@ -20930,7 +24338,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05476375332741792, + "max": 0.054772996154983725 + }, "related_data": {} } } @@ -20938,7 +24349,7 @@ { "使用双向认证": { "data": { - "uuid": "云原生-5-536", + "uuid": "云原生-5-537", "seg": [ [ [ @@ -20947,7 +24358,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.054772996154983725, + "max": 0.05478223898254953 + }, "related_data": {} } } @@ -20955,7 +24369,7 @@ { "消除Privileged容器提升安全性": { "data": { - "uuid": "云原生-5-537", + "uuid": "云原生-5-538", "seg": [ [ [ @@ -20967,11 +24381,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05478223898254953, + "max": 0.054791481810115346 + }, "related_data": { "blog": { "data_id": [ - "43499409" + "43499409@docker@云原生" ] } } @@ -20981,7 +24398,7 @@ { "通过NetworkPolicy增强安全性": { "data": { - "uuid": "云原生-5-538", + "uuid": "云原生-5-539", "seg": [ [ [ @@ -20991,7 +24408,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.054791481810115346, + "max": 0.05480072463768115 + }, "related_data": {} } } @@ -21004,7 +24424,10 @@ [] ] ], - "level": "2", + "level": { + "min": 0.05473602484472049, + "max": 0.05480072463768115 + }, "related_data": {} } } @@ -21015,7 +24438,7 @@ { "Mixer架构设计": { "data": { - "uuid": "云原生-5-539", + "uuid": "云原生-5-540", "seg": [ [ [ @@ -21024,7 +24447,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05480072463768115, + "max": 0.05480996746524696 + }, "related_data": {} } } @@ -21032,16 +24458,20 @@ { "适配器机制": { "data": { - "uuid": "云原生-5-540", + "uuid": "云原生-5-541", "seg": [ [ [ "适配器", - "机制" + "机制", + "适配器机制" ] ] ], - "level": "2", + "level": { + "min": 0.05480996746524696, + "max": 0.054819210292812774 + }, "related_data": {} } } @@ -21049,7 +24479,7 @@ { "使用速率限制策略": { "data": { - "uuid": "云原生-5-541", + "uuid": "云原生-5-542", "seg": [ [ [ @@ -21058,7 +24488,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.054819210292812774, + "max": 0.05482845312037858 + }, "related_data": {} } } @@ -21066,16 +24499,20 @@ { "使用黑白名单策略": { "data": { - "uuid": "云原生-5-542", + "uuid": "云原生-5-543", "seg": [ [ [ "名单", - "策略" + "策略", + "名单策略" ] ] ], - "level": "2", + "level": { + "min": 0.05482845312037858, + "max": 0.05483769594794439 + }, "related_data": {} } } @@ -21083,7 +24520,7 @@ { "使用基于Zipkin与Jaeger的分布式跟踪": { "data": { - "uuid": "云原生-5-543", + "uuid": "云原生-5-544", "seg": [ [ [ @@ -21096,7 +24533,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05483769594794439, + "max": 0.054846938775510196 + }, "related_data": {} } } @@ -21104,18 +24544,23 @@ { "集成度量数据收集": { "data": { - "uuid": "云原生-5-544", + "uuid": "云原生-5-545", "seg": [ [ [ "集成度", "量", "数据", - "收集" + "收集", + "集成度量", + "量数据" ] ] ], - "level": "2", + "level": { + "min": 0.054846938775510196, + "max": 0.05485618160307601 + }, "related_data": {} } } @@ -21123,18 +24568,22 @@ { "集成日志数据收集": { "data": { - "uuid": "云原生-5-545", + "uuid": "云原生-5-546", "seg": [ [ [ "集成", "日志", "数据", - "收集" + "收集", + "日志数据" ] ] ], - "level": "2", + "level": { + "min": 0.05485618160307601, + "max": 0.05486542443064182 + }, "related_data": {} } } @@ -21153,7 +24602,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05480072463768115, + "max": 0.05486542443064182 + }, "related_data": {} } } @@ -21169,7 +24621,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05434782608695651, + "max": 0.05486542443064182 + }, "related_data": {} } } @@ -21183,7 +24638,7 @@ { "通过示例看看Istio能做什么": { "data": { - "uuid": "云原生-5-546", + "uuid": "云原生-5-547", "seg": [ [ [ @@ -21193,7 +24648,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05486542443064182, + "max": 0.05493936705116829 + }, "related_data": {} } } @@ -21209,7 +24667,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05486542443064182, + "max": 0.05493936705116829 + }, "related_data": {} } } @@ -21220,7 +24681,7 @@ { "Istio的工作机制": { "data": { - "uuid": "云原生-5-547", + "uuid": "云原生-5-548", "seg": [ [ [ @@ -21230,7 +24691,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05493936705116829, + "max": 0.05496401459134378 + }, "related_data": {} } } @@ -21241,7 +24705,7 @@ { "Istio的服务": { "data": { - "uuid": "云原生-6-111", + "uuid": "云原生-6-112", "seg": [ [ [ @@ -21250,15 +24714,18 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05496401459134378, + "max": 0.05497633836143152 + }, "related_data": { "blog": { "data_id": [ - "80804580", - "79127353", - "103903309", - "100833886", - "82350106" + "80804580@mesh@云原生", + "79127353@mesh@云原生", + "103903309@mesh@云原生", + "100833886@gateway@云原生", + "82350106@mesh@云原生" ] } } @@ -21268,7 +24735,7 @@ { "Istio的服务版本": { "data": { - "uuid": "云原生-6-112", + "uuid": "云原生-6-113", "seg": [ [ [ @@ -21278,14 +24745,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05497633836143152, + "max": 0.05498866213151927 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-548", + "uuid": "云原生-5-549", "seg": [ [ [ @@ -21295,7 +24765,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05496401459134378, + "max": 0.05498866213151927 + }, "related_data": {} } } @@ -21306,7 +24779,7 @@ { "istio-pilot": { "data": { - "uuid": "云原生-6-113", + "uuid": "云原生-6-114", "seg": [ [ [ @@ -21315,12 +24788,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05498866213151927, + "max": 0.054991743074041206 + }, "related_data": { "blog": { "data_id": [ - "92000621", - "103941348" + "92000621@mesh@云原生", + "103941348@服务发现@云原生" ] } } @@ -21330,7 +24806,7 @@ { "istio-telemetry": { "data": { - "uuid": "云原生-6-114", + "uuid": "云原生-6-115", "seg": [ [ [ @@ -21339,7 +24815,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.054991743074041206, + "max": 0.05499482401656314 + }, "related_data": {} } } @@ -21347,7 +24826,7 @@ { "istio-policy": { "data": { - "uuid": "云原生-6-115", + "uuid": "云原生-6-116", "seg": [ [ [ @@ -21356,7 +24835,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05499482401656314, + "max": 0.054997904959085075 + }, "related_data": {} } } @@ -21364,7 +24846,7 @@ { "istio-citadel": { "data": { - "uuid": "云原生-6-116", + "uuid": "云原生-6-117", "seg": [ [ [ @@ -21373,7 +24855,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.054997904959085075, + "max": 0.055000985901607014 + }, "related_data": {} } } @@ -21381,7 +24866,7 @@ { "istio-galley": { "data": { - "uuid": "云原生-6-117", + "uuid": "云原生-6-118", "seg": [ [ [ @@ -21390,7 +24875,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.055000985901607014, + "max": 0.05500406684412895 + }, "related_data": {} } } @@ -21398,7 +24886,7 @@ { "istio-sidecar-injector": { "data": { - "uuid": "云原生-6-118", + "uuid": "云原生-6-119", "seg": [ [ [ @@ -21408,7 +24896,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05500406684412895, + "max": 0.05500714778665089 + }, "related_data": {} } } @@ -21416,7 +24907,7 @@ { "istio-proxy": { "data": { - "uuid": "云原生-6-119", + "uuid": "云原生-6-120", "seg": [ [ [ @@ -21425,11 +24916,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05500714778665089, + "max": 0.05501022872917282 + }, "related_data": { "blog": { "data_id": [ - "39475765" + "39475765@docker@云原生" ] } } @@ -21439,7 +24933,7 @@ { "istio-ingressgateway": { "data": { - "uuid": "云原生-6-120", + "uuid": "云原生-6-121", "seg": [ [ [ @@ -21448,11 +24942,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05501022872917282, + "max": 0.05501330967169476 + }, "related_data": { "blog": { "data_id": [ - "89035105" + "89035105@gateway@云原生" ] } } @@ -21461,7 +24958,7 @@ } ], "data": { - "uuid": "云原生-5-549", + "uuid": "云原生-5-550", "seg": [ [ [ @@ -21470,7 +24967,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05498866213151927, + "max": 0.05501330967169476 + }, "related_data": {} } } @@ -21487,7 +24987,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05493936705116829, + "max": 0.05501330967169476 + }, "related_data": {} } } @@ -21501,7 +25004,7 @@ { "服务熔断": { "data": { - "uuid": "云原生-6-121", + "uuid": "云原生-6-122", "seg": [ [ [ @@ -21510,7 +25013,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05501330967169476, + "max": 0.05501577442571231 + }, "related_data": {} } } @@ -21530,7 +25036,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05501577442571231, + "max": 0.055017006802721084 + }, "related_data": {} } } @@ -21547,14 +25056,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.055017006802721084, + "max": 0.05501823917972986 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-6-122", + "uuid": "云原生-6-123", "seg": [ [ [ @@ -21562,7 +25074,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05501577442571231, + "max": 0.05501823917972986 + }, "related_data": {} } } @@ -21586,11 +25101,15 @@ "路由", "服务", "v1", - "版本" + "版本", + "都路由" ] ] ], - "level": "2", + "level": { + "min": 0.05501823917972986, + "max": 0.05501859128744665 + }, "related_data": {} } } @@ -21604,15 +25123,19 @@ [ "流量", "比例", - "路由" + "路由", + "流量比例" ] ] ], - "level": "2", + "level": { + "min": 0.05501859128744665, + "max": 0.055018943395163444 + }, "related_data": { "blog": { "data_id": [ - "81232992" + "81232992@mesh@云原生" ] } } @@ -21631,7 +25154,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.055018943395163444, + "max": 0.05501929550288023 + }, "related_data": {} } } @@ -21645,11 +25171,15 @@ [ "组合", "条件", - "路由" + "路由", + "条件路由" ] ] ], - "level": "2", + "level": { + "min": 0.05501929550288023, + "max": 0.05501964761059703 + }, "related_data": {} } } @@ -21667,7 +25197,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05501964761059703, + "max": 0.05501999971831382 + }, "related_data": {} } } @@ -21686,7 +25219,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05501999971831382, + "max": 0.055020351826030614 + }, "related_data": {} } } @@ -21701,15 +25237,19 @@ "seg": [ [ [ - "发布" + "发布", + "正常发布" ] ] ], - "level": "2", + "level": { + "min": 0.055020351826030614, + "max": 0.05502052787988901 + }, "related_data": { "blog": { "data_id": [ - "111030263" + "111030263@阿里云@云原生" ] } } @@ -21724,11 +25264,15 @@ [ [ "异常", - "发布" + "发布", + "异常发布" ] ] ], - "level": "2", + "level": { + "min": 0.05502052787988901, + "max": 0.0550207039337474 + }, "related_data": {} } } @@ -21745,14 +25289,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.055020351826030614, + "max": 0.0550207039337474 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-6-123", + "uuid": "云原生-6-124", "seg": [ [ [ @@ -21761,7 +25308,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05501823917972986, + "max": 0.0550207039337474 + }, "related_data": {} } } @@ -21769,7 +25319,7 @@ { "服务访问入口": { "data": { - "uuid": "云原生-6-124", + "uuid": "云原生-6-125", "seg": [ [ [ @@ -21779,7 +25329,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0550207039337474, + "max": 0.05502316868776495 + }, "related_data": {} } } @@ -21787,7 +25340,7 @@ { "外部接入服务治理": { "data": { - "uuid": "云原生-6-125", + "uuid": "云原生-6-126", "seg": [ [ [ @@ -21798,14 +25351,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05502316868776495, + "max": 0.055025633441782504 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-550", + "uuid": "云原生-5-551", "seg": [ [ [ @@ -21816,7 +25372,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05501330967169476, + "max": 0.055025633441782504 + }, "related_data": {} } } @@ -21827,18 +25386,22 @@ { "路由规则配置示例": { "data": { - "uuid": "云原生-6-126", + "uuid": "云原生-6-127", "seg": [ [ [ "路由", "规则", "配置", - "示例" + "示例", + "路由规则" ] ] ], - "level": "2", + "level": { + "min": 0.055025633441782504, + "max": 0.05502739398036647 + }, "related_data": {} } } @@ -21846,17 +25409,22 @@ { "路由规则定义": { "data": { - "uuid": "云原生-6-127", + "uuid": "云原生-6-128", "seg": [ [ [ "路由", "规则", - "定义" + "定义", + "路由规则", + "规则定义" ] ] ], - "level": "2", + "level": { + "min": 0.05502739398036647, + "max": 0.05502915451895043 + }, "related_data": {} } } @@ -21864,7 +25432,7 @@ { "HTTP路由(HTTPRoute)": { "data": { - "uuid": "云原生-6-128", + "uuid": "云原生-6-129", "seg": [ [ [ @@ -21874,7 +25442,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05502915451895043, + "max": 0.055030915057534394 + }, "related_data": {} } } @@ -21882,7 +25453,7 @@ { "TLS路由(TLSRoute)": { "data": { - "uuid": "云原生-6-129", + "uuid": "云原生-6-130", "seg": [ [ [ @@ -21892,7 +25463,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.055030915057534394, + "max": 0.05503267559611836 + }, "related_data": {} } } @@ -21900,7 +25474,7 @@ { "TCP路由(TCPRoute)": { "data": { - "uuid": "云原生-6-130", + "uuid": "云原生-6-131", "seg": [ [ [ @@ -21910,12 +25484,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05503267559611836, + "max": 0.055034436134702325 + }, "related_data": { "blog": { "data_id": [ - "98946090", - "76528206" + "98946090@运维@云原生", + "76528206@中间件@云原生" ] } } @@ -21925,17 +25502,22 @@ { "三种协议路由规则的对比": { "data": { - "uuid": "云原生-6-131", + "uuid": "云原生-6-132", "seg": [ [ [ "协议", "路由", - "规则" + "规则", + "协议路由", + "路由规则" ] ] ], - "level": "2", + "level": { + "min": 0.055034436134702325, + "max": 0.05503619667328628 + }, "related_data": {} } } @@ -21943,7 +25525,7 @@ { "VirtualService的典型应用": { "data": { - "uuid": "云原生-6-132", + "uuid": "云原生-6-133", "seg": [ [ [ @@ -21952,21 +25534,25 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05503619667328628, + "max": 0.05503795721187025 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-551", + "uuid": "云原生-5-552", "seg": [ [ [ "istio", "路由", "规则", - "配置" + "配置", + "路由规则" ] ], [ @@ -21975,7 +25561,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.055025633441782504, + "max": 0.05503795721187025 + }, "related_data": {} } } @@ -21986,7 +25575,7 @@ { "DestinationRule配置示例": { "data": { - "uuid": "云原生-6-133", + "uuid": "云原生-6-134", "seg": [ [ [ @@ -21996,7 +25585,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05503795721187025, + "max": 0.05504206513523283 + }, "related_data": {} } } @@ -22004,17 +25596,21 @@ { "DestinationRule规则定义": { "data": { - "uuid": "云原生-6-134", + "uuid": "云原生-6-135", "seg": [ [ [ "destinationrule", "规则", - "定义" + "定义", + "规则定义" ] ] ], - "level": "2", + "level": { + "min": 0.05504206513523283, + "max": 0.05504617305859541 + }, "related_data": {} } } @@ -22022,7 +25618,7 @@ { "DestinationRule的典型应用": { "data": { - "uuid": "云原生-6-135", + "uuid": "云原生-6-136", "seg": [ [ [ @@ -22031,21 +25627,25 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05504617305859541, + "max": 0.055050280981957994 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-552", + "uuid": "云原生-5-553", "seg": [ [ [ "istio", "目标", "规则", - "配置" + "配置", + "目标规则" ] ], [ @@ -22054,7 +25654,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05503795721187025, + "max": 0.055050280981957994 + }, "related_data": {} } } @@ -22065,7 +25668,7 @@ { "Gateway配置示例": { "data": { - "uuid": "云原生-6-136", + "uuid": "云原生-6-137", "seg": [ [ [ @@ -22075,20 +25678,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.055050280981957994, + "max": 0.05505438890532058 + }, "related_data": { "blog": { "data_id": [ - "114500414", - "42422057", - "87873660", - "83863763", - "50537363", - "109118207", - "109504218", - "74951590", - "85255338", - "109483842" + "114500414@gateway@云原生", + "42422057@gateway@云原生", + "87873660@gateway@云原生", + "83863763@gateway@云原生", + "50537363@gateway@云原生", + "109118207@gateway@云原生", + "109504218@gateway@云原生", + "74951590@gateway@云原生", + "85255338@gateway@云原生", + "109483842@gateway@云原生" ] } } @@ -22098,21 +25704,25 @@ { "Gateway规则定义": { "data": { - "uuid": "云原生-6-137", + "uuid": "云原生-6-138", "seg": [ [ [ "gateway", "规则", - "定义" + "定义", + "规则定义" ] ] ], - "level": "2", + "level": { + "min": 0.05505438890532058, + "max": 0.055058496828683155 + }, "related_data": { "blog": { "data_id": [ - "108328767" + "108328767@gateway@云原生" ] } } @@ -22122,7 +25732,7 @@ { "Gateway的典型应用": { "data": { - "uuid": "云原生-6-138", + "uuid": "云原生-6-139", "seg": [ [ [ @@ -22131,20 +25741,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.055058496828683155, + "max": 0.05506260475204574 + }, "related_data": { "blog": { "data_id": [ - "102469745", - "85346170", - "105579033", - "108230113", - "99656413", - "109100433", - "78739661", - "72356586", - "42062071", - "107839335" + "102469745@gateway@云原生", + "85346170@gateway@云原生", + "105579033@gateway@云原生", + "108230113@gateway@云原生", + "99656413@微服务@云原生", + "109100433@gateway@云原生", + "78739661@gateway@云原生", + "72356586@gateway@云原生", + "42062071@gateway@云原生", + "107839335@gateway@云原生" ] } } @@ -22153,7 +25766,7 @@ } ], "data": { - "uuid": "云原生-5-553", + "uuid": "云原生-5-554", "seg": [ [ [ @@ -22169,7 +25782,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.055050280981957994, + "max": 0.05506260475204574 + }, "related_data": {} } } @@ -22180,7 +25796,7 @@ { "ServiceEntry配置示例": { "data": { - "uuid": "云原生-6-139", + "uuid": "云原生-6-140", "seg": [ [ [ @@ -22190,7 +25806,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05506260475204574, + "max": 0.05506671267540832 + }, "related_data": {} } } @@ -22198,7 +25817,7 @@ { "ServiceEntry规则的定义和用法": { "data": { - "uuid": "云原生-6-140", + "uuid": "云原生-6-141", "seg": [ [ [ @@ -22211,7 +25830,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05506671267540832, + "max": 0.0550708205987709 + }, "related_data": {} } } @@ -22219,7 +25841,7 @@ { "ServiceEntry的典型应用": { "data": { - "uuid": "云原生-6-141", + "uuid": "云原生-6-142", "seg": [ [ [ @@ -22228,14 +25850,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0550708205987709, + "max": 0.055074928522133484 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-554", + "uuid": "云原生-5-555", "seg": [ [ [ @@ -22251,7 +25876,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05506260475204574, + "max": 0.055074928522133484 + }, "related_data": {} } } @@ -22262,7 +25890,7 @@ { "Sidecar配置示例": { "data": { - "uuid": "云原生-6-142", + "uuid": "云原生-6-143", "seg": [ [ [ @@ -22272,7 +25900,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.055074928522133484, + "max": 0.05508109040717736 + }, "related_data": {} } } @@ -22280,31 +25911,36 @@ { "Sidecar规则定义": { "data": { - "uuid": "云原生-6-143", + "uuid": "云原生-6-144", "seg": [ [ [ "sidecar", "规则", - "定义" + "定义", + "规则定义" ] ] ], - "level": "2", + "level": { + "min": 0.05508109040717736, + "max": 0.05508725229222123 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-555", + "uuid": "云原生-5-556", "seg": [ [ [ "istio", "代理", "规则", - "配置" + "配置", + "代理规则" ] ], [ @@ -22313,7 +25949,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.055074928522133484, + "max": 0.05508725229222123 + }, "related_data": {} } } @@ -22326,11 +25965,15 @@ [ "侵入", "流量", - "治理" + "治理", + "非侵入" ] ] ], - "level": "2", + "level": { + "min": 0.05501330967169476, + "max": 0.05508725229222123 + }, "related_data": {} } } @@ -22344,7 +25987,7 @@ { "应用场景": { "data": { - "uuid": "云原生-6-144", + "uuid": "云原生-6-145", "seg": [ [ [ @@ -22352,7 +25995,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05508725229222123, + "max": 0.05509187370600414 + }, "related_data": {} } } @@ -22360,7 +26006,7 @@ { "工作原理": { "data": { - "uuid": "云原生-6-145", + "uuid": "云原生-6-146", "seg": [ [ [ @@ -22369,13 +26015,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05509187370600414, + "max": 0.05509649511978704 + }, "related_data": { "blog": { "data_id": [ - "84854824", - "106676776", - "102917780" + "84854824@控制器@云原生", + "106676776@分布式@云原生", + "102917780@控制器@云原生" ] } } @@ -22385,7 +26034,7 @@ { "属性": { "data": { - "uuid": "云原生-6-146", + "uuid": "云原生-6-147", "seg": [ [ [ @@ -22393,7 +26042,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05509649511978704, + "max": 0.055101116533569944 + }, "related_data": {} } } @@ -22401,7 +26053,7 @@ { "Mixer的配置模型": { "data": { - "uuid": "云原生-6-147", + "uuid": "云原生-6-148", "seg": [ [ [ @@ -22411,14 +26063,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.055101116533569944, + "max": 0.05510573794735285 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-556", + "uuid": "云原生-5-557", "seg": [ [ [ @@ -22431,7 +26086,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05508725229222123, + "max": 0.05510573794735285 + }, "related_data": {} } } @@ -22442,7 +26100,7 @@ { "Prometheus适配器": { "data": { - "uuid": "云原生-6-148", + "uuid": "云原生-6-149", "seg": [ [ [ @@ -22451,7 +26109,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05510573794735285, + "max": 0.05510881888987479 + }, "related_data": {} } } @@ -22459,7 +26120,7 @@ { "Fluentd适配器": { "data": { - "uuid": "云原生-6-149", + "uuid": "云原生-6-150", "seg": [ [ [ @@ -22468,7 +26129,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05510881888987479, + "max": 0.05511189983239672 + }, "related_data": {} } } @@ -22476,7 +26140,7 @@ { "StatsD适配器": { "data": { - "uuid": "云原生-6-150", + "uuid": "云原生-6-151", "seg": [ [ [ @@ -22485,7 +26149,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05511189983239672, + "max": 0.05511498077491866 + }, "related_data": {} } } @@ -22493,7 +26160,7 @@ { "Stdio适配器": { "data": { - "uuid": "云原生-6-151", + "uuid": "云原生-6-152", "seg": [ [ [ @@ -22502,7 +26169,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05511498077491866, + "max": 0.055118061717440596 + }, "related_data": {} } } @@ -22510,7 +26180,7 @@ { "Zipkin适配器": { "data": { - "uuid": "云原生-6-152", + "uuid": "云原生-6-153", "seg": [ [ [ @@ -22519,7 +26189,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.055118061717440596, + "max": 0.05512114265996253 + }, "related_data": {} } } @@ -22527,23 +26200,27 @@ { "厂商适配器": { "data": { - "uuid": "云原生-6-153", + "uuid": "云原生-6-154", "seg": [ [ [ "厂商", - "适配器" + "适配器", + "厂商适配器" ] ] ], - "level": "2", + "level": { + "min": 0.05512114265996253, + "max": 0.055124223602484465 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-557", + "uuid": "云原生-5-558", "seg": [ [ [ @@ -22554,7 +26231,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05510573794735285, + "max": 0.055124223602484465 + }, "related_data": {} } } @@ -22565,7 +26245,7 @@ { "List适配器": { "data": { - "uuid": "云原生-6-154", + "uuid": "云原生-6-155", "seg": [ [ [ @@ -22574,20 +26254,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.055124223602484465, + "max": 0.05512884501626737 + }, "related_data": { "blog": { "data_id": [ - "81477649", - "55061737", - "117406359", - "47759729", - "47983033", - "117467942", - "8525451", - "41368989", - "56831089", - "8572000" + "81477649@容器@云原生", + "55061737@容器@云原生", + "117406359@容器@云原生", + "47759729@容器@云原生", + "51178378@容器@云原生", + "47983033@容器@云原生", + "117467942@容器@云原生", + "8525451@容器@云原生", + "41368989@容器@云原生", + "56831089@容器@云原生" ] } } @@ -22597,7 +26280,7 @@ { "Denier适配器": { "data": { - "uuid": "云原生-6-155", + "uuid": "云原生-6-156", "seg": [ [ [ @@ -22606,7 +26289,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05512884501626737, + "max": 0.05513346643005028 + }, "related_data": {} } } @@ -22614,7 +26300,7 @@ { "Memory Quota适配器": { "data": { - "uuid": "云原生-6-156", + "uuid": "云原生-6-157", "seg": [ [ [ @@ -22624,7 +26310,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05513346643005028, + "max": 0.05513808784383318 + }, "related_data": {} } } @@ -22632,7 +26321,7 @@ { "Redis Quota适配器": { "data": { - "uuid": "云原生-6-157", + "uuid": "云原生-6-158", "seg": [ [ [ @@ -22642,25 +26331,32 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05513808784383318, + "max": 0.055142709257616086 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-558", + "uuid": "云原生-5-559", "seg": [ [ [ "istio", "策略", "适配器", - "配置" + "配置", + "策略适配器" ] ] ], - "level": "2", + "level": { + "min": 0.055124223602484465, + "max": 0.055142709257616086 + }, "related_data": {} } } @@ -22668,7 +26364,7 @@ { "Kubernetes Env适配器配置": { "data": { - "uuid": "云原生-5-559", + "uuid": "云原生-5-560", "seg": [ [ [ @@ -22679,7 +26375,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.055142709257616086, + "max": 0.05516119491274771 + }, "related_data": {} } } @@ -22698,7 +26397,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05508725229222123, + "max": 0.05516119491274771 + }, "related_data": {} } } @@ -22712,7 +26414,7 @@ { "认证": { "data": { - "uuid": "云原生-6-158", + "uuid": "云原生-6-159", "seg": [ [ [ @@ -22720,7 +26422,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05516119491274771, + "max": 0.05516941075947287 + }, "related_data": {} } } @@ -22738,11 +26443,16 @@ "命名", "空间", "级别", - "访问控制" + "访问控制", + "命名空间", + "空间级别" ] ] ], - "level": "2", + "level": { + "min": 0.05516941075947287, + "max": 0.05517351868283545 + }, "related_data": {} } } @@ -22760,14 +26470,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05517351868283545, + "max": 0.05517762660619804 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-6-159", + "uuid": "云原生-6-160", "seg": [ [ [ @@ -22775,7 +26488,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05516941075947287, + "max": 0.05517762660619804 + }, "related_data": {} } } @@ -22783,24 +26499,28 @@ { "密钥证书管理": { "data": { - "uuid": "云原生-6-160", + "uuid": "云原生-6-161", "seg": [ [ [ "密钥", "证书", - "管理" + "管理", + "密钥证书" ] ] ], - "level": "2", + "level": { + "min": 0.05517762660619804, + "max": 0.0551858424529232 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-560", + "uuid": "云原生-5-561", "seg": [ [ [ @@ -22810,7 +26530,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05516119491274771, + "max": 0.0551858424529232 + }, "related_data": {} } } @@ -22821,7 +26544,7 @@ { "认证策略配置示例": { "data": { - "uuid": "云原生-6-161", + "uuid": "云原生-6-162", "seg": [ [ [ @@ -22832,7 +26555,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0551858424529232, + "max": 0.055192004337967074 + }, "related_data": {} } } @@ -22840,7 +26566,7 @@ { "认证策略的定义": { "data": { - "uuid": "云原生-6-162", + "uuid": "云原生-6-163", "seg": [ [ [ @@ -22850,7 +26576,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.055192004337967074, + "max": 0.05519816622301094 + }, "related_data": {} } } @@ -22858,7 +26587,7 @@ { "TLS访问配置": { "data": { - "uuid": "云原生-6-163", + "uuid": "云原生-6-164", "seg": [ [ [ @@ -22868,7 +26597,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05519816622301094, + "max": 0.05520432810805481 + }, "related_data": {} } } @@ -22876,7 +26608,7 @@ { "认证策略的典型应用": { "data": { - "uuid": "云原生-6-164", + "uuid": "云原生-6-165", "seg": [ [ [ @@ -22886,14 +26618,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05520432810805481, + "max": 0.05521048999309869 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-561", + "uuid": "云原生-5-562", "seg": [ [ [ @@ -22904,7 +26639,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0551858424529232, + "max": 0.05521048999309869 + }, "related_data": {} } } @@ -22915,7 +26653,7 @@ { "授权启用配置": { "data": { - "uuid": "云原生-6-165", + "uuid": "云原生-6-166", "seg": [ [ [ @@ -22925,11 +26663,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05521048999309869, + "max": 0.05521870583982385 + }, "related_data": { "blog": { "data_id": [ - "110879101" + "110879101@服务发现@云原生" ] } } @@ -22939,7 +26680,7 @@ { "授权策略配置": { "data": { - "uuid": "云原生-6-166", + "uuid": "云原生-6-167", "seg": [ [ [ @@ -22949,7 +26690,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05521870583982385, + "max": 0.05522692168654902 + }, "related_data": {} } } @@ -22957,7 +26701,7 @@ { "授权策略的典型应用": { "data": { - "uuid": "云原生-6-167", + "uuid": "云原生-6-168", "seg": [ [ [ @@ -22967,14 +26711,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05522692168654902, + "max": 0.05523513753327418 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-562", + "uuid": "云原生-5-563", "seg": [ [ [ @@ -22985,7 +26732,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05521048999309869, + "max": 0.05523513753327418 + }, "related_data": {} } } @@ -23001,7 +26751,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05516119491274771, + "max": 0.05523513753327418 + }, "related_data": {} } } @@ -23015,7 +26768,7 @@ { "Sidecar Injector自动注入的原理": { "data": { - "uuid": "云原生-6-168", + "uuid": "云原生-6-169", "seg": [ [ [ @@ -23027,7 +26780,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05523513753327418, + "max": 0.05525362318840579 + }, "related_data": {} } } @@ -23035,7 +26791,7 @@ { "Sidecar注入的实现": { "data": { - "uuid": "云原生-6-169", + "uuid": "云原生-6-170", "seg": [ [ [ @@ -23044,12 +26800,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05525362318840579, + "max": 0.055272108843537414 + }, "related_data": { "blog": { "data_id": [ - "102983834", - "81281327" + "102983834@eureka@云原生", + "81281327@mesh@云原生" ] } } @@ -23058,7 +26817,7 @@ } ], "data": { - "uuid": "云原生-5-563", + "uuid": "云原生-5-564", "seg": [ [ [ @@ -23067,7 +26826,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05523513753327418, + "max": 0.055272108843537414 + }, "related_data": {} } } @@ -23078,7 +26840,7 @@ { "iptables的基本原理": { "data": { - "uuid": "云原生-6-170", + "uuid": "云原生-6-171", "seg": [ [ [ @@ -23087,7 +26849,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.055272108843537414, + "max": 0.05528443261362516 + }, "related_data": {} } } @@ -23095,7 +26860,7 @@ { "iptables的规则设置": { "data": { - "uuid": "云原生-6-171", + "uuid": "云原生-6-172", "seg": [ [ [ @@ -23105,7 +26870,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05528443261362516, + "max": 0.055296756383712904 + }, "related_data": {} } } @@ -23113,7 +26881,7 @@ { "流量拦截原理": { "data": { - "uuid": "云原生-6-172", + "uuid": "云原生-6-173", "seg": [ [ [ @@ -23123,14 +26891,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.055296756383712904, + "max": 0.05530908015380065 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-564", + "uuid": "云原生-5-565", "seg": [ [ [ @@ -23140,7 +26911,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.055272108843537414, + "max": 0.05530908015380065 + }, "related_data": {} } } @@ -23157,7 +26931,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05523513753327418, + "max": 0.05530908015380065 + }, "related_data": {} } } @@ -23171,7 +26948,7 @@ { "Istio多集群的相关概念": { "data": { - "uuid": "云原生-6-173", + "uuid": "云原生-6-174", "seg": [ [ [ @@ -23182,11 +26959,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05530908015380065, + "max": 0.055318322981366456 + }, "related_data": { "blog": { "data_id": [ - "56673522" + "56673522@中间件@云原生" ] } } @@ -23196,7 +26976,7 @@ { "Istio多集群服务治理现状": { "data": { - "uuid": "云原生-6-174", + "uuid": "云原生-6-175", "seg": [ [ [ @@ -23208,18 +26988,22 @@ ] ] ], - "level": "2", + "level": { + "min": 0.055318322981366456, + "max": 0.055327565808932264 + }, "related_data": { "blog": { "data_id": [ - "78292448", - "79987802", - "114974691", - "84312543", - "115586468", - "76167159", - "115357298", - "82428279" + "78292448@服务发现@云原生", + "79987802@docker@云原生", + "114974691@eureka@云原生", + "84312543@服务发现@云原生", + "115586468@eureka@云原生", + "76167159@服务发现@云原生", + "103284961@服务发现@云原生", + "115357298@eureka@云原生", + "82428279@服务发现@云原生" ] } } @@ -23228,7 +27012,7 @@ } ], "data": { - "uuid": "云原生-5-565", + "uuid": "云原生-5-566", "seg": [ [ [ @@ -23239,7 +27023,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05530908015380065, + "max": 0.055327565808932264 + }, "related_data": {} } } @@ -23250,7 +27037,7 @@ { "服务DNS解析的原理": { "data": { - "uuid": "云原生-6-175", + "uuid": "云原生-6-176", "seg": [ [ [ @@ -23261,11 +27048,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.055327565808932264, + "max": 0.05533680863649808 + }, "related_data": { "blog": { "data_id": [ - "105358762" + "105358762@控制器@云原生" ] } } @@ -23275,7 +27065,7 @@ { "Gateway连接的原理": { "data": { - "uuid": "云原生-6-176", + "uuid": "云原生-6-177", "seg": [ [ [ @@ -23285,19 +27075,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05533680863649808, + "max": 0.055346051464063885 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-566", + "uuid": "云原生-5-567", "seg": [ [ [ "集群", - "模式" + "模式", + "集群模式" ] ], [ @@ -23307,7 +27101,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.055327565808932264, + "max": 0.055346051464063885 + }, "related_data": {} } } @@ -23315,12 +27112,13 @@ { "多集群模式2:VPN直连单控制面": { "data": { - "uuid": "云原生-5-567", + "uuid": "云原生-5-568", "seg": [ [ [ "集群", - "模式" + "模式", + "集群模式" ] ], [ @@ -23333,7 +27131,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.055346051464063885, + "max": 0.055364537119195506 + }, "related_data": {} } } @@ -23341,12 +27142,13 @@ { "多集群模式3:集群感知服务路由单控制面": { "data": { - "uuid": "云原生-5-568", + "uuid": "云原生-5-569", "seg": [ [ [ "集群", - "模式" + "模式", + "集群模式" ] ], [ @@ -23357,11 +27159,15 @@ "路由", "单", "控制", - "面" + "面", + "路由单" ] ] ], - "level": "2", + "level": { + "min": 0.055364537119195506, + "max": 0.05538302277432712 + }, "related_data": {} } } @@ -23378,7 +27184,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05530908015380065, + "max": 0.05538302277432712 + }, "related_data": {} } } @@ -23393,7 +27202,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05486542443064182, + "max": 0.05538302277432712 + }, "related_data": {} } } @@ -23407,7 +27219,7 @@ { "调用链跟踪": { "data": { - "uuid": "云原生-5-569", + "uuid": "云原生-5-570", "seg": [ [ [ @@ -23417,11 +27229,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05538302277432712, + "max": 0.05542615596963423 + }, "related_data": { "blog": { "data_id": [ - "99641821" + "99641821@cloud@云原生" ] } } @@ -23434,7 +27249,7 @@ { "Grafana": { "data": { - "uuid": "云原生-6-177", + "uuid": "云原生-6-178", "seg": [ [ [ @@ -23442,14 +27257,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05542615596963423, + "max": 0.055469289164941336 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-570", + "uuid": "云原生-5-571", "seg": [ [ [ @@ -23458,7 +27276,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05542615596963423, + "max": 0.055469289164941336 + }, "related_data": {} } } @@ -23466,7 +27287,7 @@ { "服务网格监控": { "data": { - "uuid": "云原生-5-571", + "uuid": "云原生-5-572", "seg": [ [ [ @@ -23476,7 +27297,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.055469289164941336, + "max": 0.05551242236024845 + }, "related_data": {} } } @@ -23492,7 +27316,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05538302277432712, + "max": 0.05551242236024845 + }, "related_data": {} } } @@ -23506,7 +27333,7 @@ { "ROUND_ROBIN模式": { "data": { - "uuid": "云原生-6-178", + "uuid": "云原生-6-179", "seg": [ [ [ @@ -23516,7 +27343,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05551242236024845, + "max": 0.055517043774031355 + }, "related_data": {} } } @@ -23524,7 +27354,7 @@ { "RANDOM模式": { "data": { - "uuid": "云原生-6-179", + "uuid": "云原生-6-180", "seg": [ [ [ @@ -23533,14 +27363,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.055517043774031355, + "max": 0.055521665187814255 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-572", + "uuid": "云原生-5-573", "seg": [ [ [ @@ -23550,7 +27383,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05551242236024845, + "max": 0.055521665187814255 + }, "related_data": {} } } @@ -23558,7 +27394,7 @@ { "会话保持": { "data": { - "uuid": "云原生-5-573", + "uuid": "云原生-5-574", "seg": [ [ [ @@ -23566,7 +27402,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.055521665187814255, + "max": 0.05553090801538006 + }, "related_data": {} } } @@ -23574,7 +27413,7 @@ { "超时": { "data": { - "uuid": "云原生-5-574", + "uuid": "云原生-5-575", "seg": [ [ [ @@ -23582,7 +27421,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05553090801538006, + "max": 0.055540150842945876 + }, "related_data": {} } } @@ -23590,7 +27432,7 @@ { "重试": { "data": { - "uuid": "云原生-5-575", + "uuid": "云原生-5-576", "seg": [ [ [ @@ -23598,7 +27440,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.055540150842945876, + "max": 0.05554939367051168 + }, "related_data": {} } } @@ -23606,7 +27451,7 @@ { "HTTP重定向": { "data": { - "uuid": "云原生-5-576", + "uuid": "云原生-5-577", "seg": [ [ [ @@ -23615,7 +27460,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05554939367051168, + "max": 0.05555863649807749 + }, "related_data": {} } } @@ -23623,7 +27471,7 @@ { "HTTP重写": { "data": { - "uuid": "云原生-5-577", + "uuid": "云原生-5-578", "seg": [ [ [ @@ -23632,7 +27480,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05555863649807749, + "max": 0.0555678793256433 + }, "related_data": {} } } @@ -23640,7 +27491,7 @@ { "熔断": { "data": { - "uuid": "云原生-5-578", + "uuid": "云原生-5-579", "seg": [ [ [ @@ -23648,7 +27499,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0555678793256433, + "max": 0.055577122153209105 + }, "related_data": {} } } @@ -23656,7 +27510,7 @@ { "服务隔离": { "data": { - "uuid": "云原生-5-579", + "uuid": "云原生-5-580", "seg": [ [ [ @@ -23665,7 +27519,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.055577122153209105, + "max": 0.05558636498077492 + }, "related_data": {} } } @@ -23673,16 +27530,20 @@ { "使用流量策略": { "data": { - "uuid": "云原生-5-580", + "uuid": "云原生-5-581", "seg": [ [ [ "流量", - "策略" + "策略", + "流量策略" ] ] ], - "level": "2", + "level": { + "min": 0.05558636498077492, + "max": 0.055595607808340726 + }, "related_data": {} } } @@ -23690,7 +27551,7 @@ { "设置负载均衡": { "data": { - "uuid": "云原生-5-581", + "uuid": "云原生-5-582", "seg": [ [ [ @@ -23700,7 +27561,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.055595607808340726, + "max": 0.05560485063590653 + }, "related_data": {} } } @@ -23708,7 +27572,7 @@ { "管理连接池": { "data": { - "uuid": "云原生-5-582", + "uuid": "云原生-5-583", "seg": [ [ [ @@ -23717,7 +27581,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05560485063590653, + "max": 0.05561409346347234 + }, "related_data": {} } } @@ -23725,17 +27592,21 @@ { "增强路由规则": { "data": { - "uuid": "云原生-5-583", + "uuid": "云原生-5-584", "seg": [ [ [ "增强", "路由", - "规则" + "规则", + "路由规则" ] ] ], - "level": "2", + "level": { + "min": 0.05561409346347234, + "max": 0.055623336291038154 + }, "related_data": {} } } @@ -23743,7 +27614,7 @@ { "混沌工程之熔断": { "data": { - "uuid": "云原生-5-584", + "uuid": "云原生-5-585", "seg": [ [ [ @@ -23753,7 +27624,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.055623336291038154, + "max": 0.05563257911860396 + }, "related_data": {} } } @@ -23761,7 +27635,7 @@ { "混沌工程之故障注入": { "data": { - "uuid": "云原生-5-585", + "uuid": "云原生-5-586", "seg": [ [ [ @@ -23771,7 +27645,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05563257911860396, + "max": 0.05564182194616977 + }, "related_data": {} } } @@ -23787,7 +27664,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05551242236024845, + "max": 0.05564182194616977 + }, "related_data": {} } } @@ -23801,7 +27681,7 @@ { "单向TLS网关": { "data": { - "uuid": "云原生-6-180", + "uuid": "云原生-6-181", "seg": [ [ [ @@ -23811,7 +27691,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05564182194616977, + "max": 0.05566338854382332 + }, "related_data": {} } } @@ -23819,7 +27702,7 @@ { "双向TLS网关": { "data": { - "uuid": "云原生-6-181", + "uuid": "云原生-6-182", "seg": [ [ [ @@ -23829,7 +27712,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05566338854382332, + "max": 0.05568495514147688 + }, "related_data": {} } } @@ -23837,33 +27723,41 @@ { "用SDS加密网关": { "data": { - "uuid": "云原生-6-182", + "uuid": "云原生-6-183", "seg": [ [ [ "sds", "加密", - "网关" + "网关", + "加密网关" ] ] ], - "level": "1", + "level": { + "min": 0.05568495514147688, + "max": 0.05570652173913043 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-586", + "uuid": "云原生-5-587", "seg": [ [ [ "网关", - "加密" + "加密", + "网关加密" ] ] ], - "level": "2", + "level": { + "min": 0.05564182194616977, + "max": 0.05570652173913043 + }, "related_data": {} } } @@ -23874,7 +27768,7 @@ { "黑名单": { "data": { - "uuid": "云原生-6-183", + "uuid": "云原生-6-184", "seg": [ [ [ @@ -23882,7 +27776,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05570652173913043, + "max": 0.05573887163561076 + }, "related_data": {} } } @@ -23890,7 +27787,7 @@ { "白名单": { "data": { - "uuid": "云原生-6-184", + "uuid": "云原生-6-185", "seg": [ [ [ @@ -23898,14 +27795,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05573887163561076, + "max": 0.05577122153209109 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-587", + "uuid": "云原生-5-588", "seg": [ [ [ @@ -23913,7 +27813,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05570652173913043, + "max": 0.05577122153209109 + }, "related_data": {} } } @@ -23929,7 +27832,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05564182194616977, + "max": 0.05577122153209109 + }, "related_data": {} } } @@ -23946,7 +27852,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05577122153209109, + "max": 0.05590062111801242 + }, "related_data": {} } } @@ -23962,7 +27871,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05538302277432712, + "max": 0.05590062111801242 + }, "related_data": {} } } @@ -23979,7 +27891,7 @@ { "xDS协议": { "data": { - "uuid": "云原生-6-185", + "uuid": "云原生-6-186", "seg": [ [ [ @@ -23988,11 +27900,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05590062111801242, + "max": 0.05592218771566597 + }, "related_data": { "blog": { "data_id": [ - "116943268" + "116943268@云原生@云原生" ] } } @@ -24001,7 +27916,7 @@ } ], "data": { - "uuid": "云原生-5-588", + "uuid": "云原生-5-589", "seg": [ [ [ @@ -24010,7 +27925,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05590062111801242, + "max": 0.05592218771566597 + }, "related_data": {} } } @@ -24021,7 +27939,7 @@ { "Pilot的启动与初始化": { "data": { - "uuid": "云原生-6-186", + "uuid": "云原生-6-187", "seg": [ [ [ @@ -24033,7 +27951,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05592218771566597, + "max": 0.055929376581550484 + }, "related_data": {} } } @@ -24041,7 +27962,7 @@ { "配置规则发现": { "data": { - "uuid": "云原生-6-187", + "uuid": "云原生-6-188", "seg": [ [ [ @@ -24050,7 +27971,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.055929376581550484, + "max": 0.055936565447435006 + }, "related_data": {} } } @@ -24058,7 +27982,7 @@ { "Envoy的配置分发": { "data": { - "uuid": "云原生-6-188", + "uuid": "云原生-6-189", "seg": [ [ [ @@ -24068,14 +27992,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.055936565447435006, + "max": 0.05594375431331952 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-589", + "uuid": "云原生-5-590", "seg": [ [ [ @@ -24085,7 +28012,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05592218771566597, + "max": 0.05594375431331952 + }, "related_data": {} } } @@ -24096,7 +28026,7 @@ { "安全插件": { "data": { - "uuid": "云原生-6-189", + "uuid": "云原生-6-190", "seg": [ [ [ @@ -24104,13 +28034,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05594375431331952, + "max": 0.055950943179204043 + }, "related_data": { "blog": { "data_id": [ - "80479051", - "53708758", - "117434069" + "80479051@cloud@云原生", + "117434069@阿里云@云原生" ] } } @@ -24120,16 +28052,20 @@ { "健康检查插件": { "data": { - "uuid": "云原生-6-190", + "uuid": "云原生-6-191", "seg": [ [ [ "健康检查", - "插件" + "插件", + "健康检查插件" ] ] ], - "level": "2", + "level": { + "min": 0.055950943179204043, + "max": 0.05595813204508856 + }, "related_data": {} } } @@ -24137,7 +28073,7 @@ { "Mixer插件": { "data": { - "uuid": "云原生-6-191", + "uuid": "云原生-6-192", "seg": [ [ [ @@ -24146,14 +28082,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05595813204508856, + "max": 0.05596532091097308 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-590", + "uuid": "云原生-5-591", "seg": [ [ [ @@ -24162,7 +28101,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05594375431331952, + "max": 0.05596532091097308 + }, "related_data": {} } } @@ -24173,7 +28115,7 @@ { "三级缓存优化": { "data": { - "uuid": "云原生-6-192", + "uuid": "云原生-6-193", "seg": [ [ [ @@ -24183,7 +28125,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05596532091097308, + "max": 0.055970712560386465 + }, "related_data": {} } } @@ -24191,7 +28136,7 @@ { "去抖动分发": { "data": { - "uuid": "云原生-6-193", + "uuid": "云原生-6-194", "seg": [ [ [ @@ -24200,7 +28145,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.055970712560386465, + "max": 0.05597610420979986 + }, "related_data": {} } } @@ -24208,7 +28156,7 @@ { "增量EDS": { "data": { - "uuid": "云原生-6-194", + "uuid": "云原生-6-195", "seg": [ [ [ @@ -24217,7 +28165,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05597610420979986, + "max": 0.05598149585921325 + }, "related_data": {} } } @@ -24225,7 +28176,7 @@ { "资源隔离": { "data": { - "uuid": "云原生-6-195", + "uuid": "云原生-6-196", "seg": [ [ [ @@ -24234,14 +28185,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05598149585921325, + "max": 0.05598688750862663 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-591", + "uuid": "云原生-5-592", "seg": [ [ [ @@ -24251,7 +28205,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05596532091097308, + "max": 0.05598688750862663 + }, "related_data": {} } } @@ -24267,7 +28224,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05590062111801242, + "max": 0.05598688750862663 + }, "related_data": {} } } @@ -24278,17 +28238,21 @@ { "Mixer的整体架构": { "data": { - "uuid": "云原生-5-592", + "uuid": "云原生-5-593", "seg": [ [ [ "mixer", "整体", - "架构" + "架构", + "整体架构" ] ] ], - "level": "2", + "level": { + "min": 0.05598688750862663, + "max": 0.05600414078674948 + }, "related_data": {} } } @@ -24299,7 +28263,7 @@ { "Template": { "data": { - "uuid": "云原生-6-196", + "uuid": "云原生-6-197", "seg": [ [ [ @@ -24307,11 +28271,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05600414078674948, + "max": 0.0560127674258109 + }, "related_data": { "blog": { "data_id": [ - "102651461" + "102651461@consul@云原生" ] } } @@ -24321,7 +28288,7 @@ { "Adapter": { "data": { - "uuid": "云原生-6-197", + "uuid": "云原生-6-198", "seg": [ [ [ @@ -24329,14 +28296,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0560127674258109, + "max": 0.05602139406487232 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-593", + "uuid": "云原生-5-594", "seg": [ [ [ @@ -24346,7 +28316,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05600414078674948, + "max": 0.05602139406487232 + }, "related_data": {} } } @@ -24357,7 +28330,7 @@ { "启动初始化": { "data": { - "uuid": "云原生-6-198", + "uuid": "云原生-6-199", "seg": [ [ [ @@ -24366,7 +28339,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05602139406487232, + "max": 0.05602570738440303 + }, "related_data": {} } } @@ -24374,18 +28350,22 @@ { "用户配置信息规则处理": { "data": { - "uuid": "云原生-6-199", + "uuid": "云原生-6-200", "seg": [ [ [ "用户", "配置", "信息", - "规则" + "规则", + "信息规则" ] ] ], - "level": "2", + "level": { + "min": 0.05602570738440303, + "max": 0.056030020703933744 + }, "related_data": {} } } @@ -24393,7 +28373,7 @@ { "访问策略的执行": { "data": { - "uuid": "云原生-6-200", + "uuid": "云原生-6-201", "seg": [ [ [ @@ -24403,7 +28383,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.056030020703933744, + "max": 0.05603433402346445 + }, "related_data": {} } } @@ -24411,7 +28394,7 @@ { "无侵入遥测": { "data": { - "uuid": "云原生-6-201", + "uuid": "云原生-6-202", "seg": [ [ [ @@ -24420,14 +28403,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05603433402346445, + "max": 0.056038647342995164 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-594", + "uuid": "云原生-5-595", "seg": [ [ [ @@ -24437,7 +28423,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05602139406487232, + "max": 0.056038647342995164 + }, "related_data": {} } } @@ -24445,7 +28434,7 @@ { "Mixer的设计亮点": { "data": { - "uuid": "云原生-5-595", + "uuid": "云原生-5-596", "seg": [ [ [ @@ -24455,7 +28444,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.056038647342995164, + "max": 0.056055900621118 + }, "related_data": {} } } @@ -24466,7 +28458,7 @@ { "Adapter实现概述": { "data": { - "uuid": "云原生-6-202", + "uuid": "云原生-6-203", "seg": [ [ [ @@ -24475,7 +28467,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.056055900621118, + "max": 0.056060213940648716 + }, "related_data": {} } } @@ -24483,7 +28478,7 @@ { "内置式Adapter的开发步骤": { "data": { - "uuid": "云原生-6-203", + "uuid": "云原生-6-204", "seg": [ [ [ @@ -24494,7 +28489,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.056060213940648716, + "max": 0.05606452726017942 + }, "related_data": {} } } @@ -24502,7 +28500,7 @@ { "独立进程式Adapter的开发步骤": { "data": { - "uuid": "云原生-6-204", + "uuid": "云原生-6-205", "seg": [ [ [ @@ -24510,15 +28508,19 @@ "进程", "adapter", "开发", - "步骤" + "步骤", + "进程式" ] ] ], - "level": "2", + "level": { + "min": 0.05606452726017942, + "max": 0.056068840579710136 + }, "related_data": { "blog": { "data_id": [ - "46516559" + "46516559@中间件@云原生" ] } } @@ -24528,7 +28530,7 @@ { "独立仓库式Adapter的开发步骤": { "data": { - "uuid": "云原生-6-205", + "uuid": "云原生-6-206", "seg": [ [ [ @@ -24536,18 +28538,22 @@ "仓库", "adapter", "开发", - "步骤" + "步骤", + "仓库式" ] ] ], - "level": "2", + "level": { + "min": 0.056068840579710136, + "max": 0.05607315389924085 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-596", + "uuid": "云原生-5-597", "seg": [ [ [ @@ -24557,7 +28563,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.056055900621118, + "max": 0.05607315389924085 + }, "related_data": {} } } @@ -24573,7 +28582,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05598688750862663, + "max": 0.05607315389924085 + }, "related_data": {} } } @@ -24584,7 +28596,7 @@ { "Citadel的架构": { "data": { - "uuid": "云原生-5-597", + "uuid": "云原生-5-598", "seg": [ [ [ @@ -24593,7 +28605,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05607315389924085, + "max": 0.056116287094547954 + }, "related_data": {} } } @@ -24604,7 +28619,7 @@ { "启动初始化": { "data": { - "uuid": "云原生-6-206", + "uuid": "云原生-6-207", "seg": [ [ [ @@ -24613,7 +28628,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.056116287094547954, + "max": 0.05612491373360937 + }, "related_data": {} } } @@ -24621,16 +28639,20 @@ { "证书控制器": { "data": { - "uuid": "云原生-6-207", + "uuid": "云原生-6-208", "seg": [ [ [ "证书", - "控制器" + "控制器", + "证书控制器" ] ] ], - "level": "2", + "level": { + "min": 0.05612491373360937, + "max": 0.0561335403726708 + }, "related_data": {} } } @@ -24638,7 +28660,7 @@ { "gRPC服务器": { "data": { - "uuid": "云原生-6-208", + "uuid": "云原生-6-209", "seg": [ [ [ @@ -24647,7 +28669,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0561335403726708, + "max": 0.05614216701173222 + }, "related_data": {} } } @@ -24655,7 +28680,7 @@ { "证书轮换器": { "data": { - "uuid": "云原生-6-209", + "uuid": "云原生-6-210", "seg": [ [ [ @@ -24665,7 +28690,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05614216701173222, + "max": 0.056150793650793646 + }, "related_data": {} } } @@ -24673,7 +28701,7 @@ { "SDS服务器": { "data": { - "uuid": "云原生-6-210", + "uuid": "云原生-6-211", "seg": [ [ [ @@ -24682,14 +28710,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.056150793650793646, + "max": 0.056159420289855065 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-598", + "uuid": "云原生-5-599", "seg": [ [ [ @@ -24699,7 +28730,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.056116287094547954, + "max": 0.056159420289855065 + }, "related_data": {} } } @@ -24715,7 +28749,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05607315389924085, + "max": 0.056159420289855065 + }, "related_data": {} } } @@ -24726,7 +28763,7 @@ { "Envoy的架构": { "data": { - "uuid": "云原生-5-599", + "uuid": "云原生-5-600", "seg": [ [ [ @@ -24735,7 +28772,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.056159420289855065, + "max": 0.0561737980216241 + }, "related_data": {} } } @@ -24743,7 +28783,7 @@ { "Envoy的特性": { "data": { - "uuid": "云原生-5-600", + "uuid": "云原生-5-601", "seg": [ [ [ @@ -24752,7 +28792,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0561737980216241, + "max": 0.05618817575339314 + }, "related_data": {} } } @@ -24760,17 +28803,21 @@ { "Envoy的模块结构": { "data": { - "uuid": "云原生-5-601", + "uuid": "云原生-5-602", "seg": [ [ [ "envoy", "模块", - "结构" + "结构", + "模块结构" ] ] ], - "level": "2", + "level": { + "min": 0.05618817575339314, + "max": 0.05620255348516218 + }, "related_data": {} } } @@ -24778,17 +28825,21 @@ { "Envoy的线程模型": { "data": { - "uuid": "云原生-5-602", + "uuid": "云原生-5-603", "seg": [ [ [ "envoy", "线程", - "模型" + "模型", + "线程模型" ] ] ], - "level": "2", + "level": { + "min": 0.05620255348516218, + "max": 0.05621693121693121 + }, "related_data": {} } } @@ -24799,7 +28850,7 @@ { "变量管理": { "data": { - "uuid": "云原生-6-211", + "uuid": "云原生-6-212", "seg": [ [ [ @@ -24808,7 +28859,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05621693121693121, + "max": 0.05622412008281573 + }, "related_data": {} } } @@ -24816,7 +28870,7 @@ { "Buffer管理": { "data": { - "uuid": "云原生-6-212", + "uuid": "云原生-6-213", "seg": [ [ [ @@ -24825,11 +28879,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05622412008281573, + "max": 0.056231308948700244 + }, "related_data": { "blog": { "data_id": [ - "7484627" + "7484627@go@云原生" ] } } @@ -24838,7 +28895,7 @@ } ], "data": { - "uuid": "云原生-5-603", + "uuid": "云原生-5-604", "seg": [ [ [ @@ -24848,7 +28905,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05621693121693121, + "max": 0.056231308948700244 + }, "related_data": {} } } @@ -24856,7 +28916,7 @@ { "Envoy的流量控制": { "data": { - "uuid": "云原生-5-604", + "uuid": "云原生-5-605", "seg": [ [ [ @@ -24866,7 +28926,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.056231308948700244, + "max": 0.05624568668046928 + }, "related_data": {} } } @@ -24879,11 +28942,15 @@ [ "高性能", "代理", - "envoy" + "envoy", + "高性能代理" ] ] ], - "level": "2", + "level": { + "min": 0.056159420289855065, + "max": 0.05624568668046928 + }, "related_data": {} } } @@ -24897,7 +28964,7 @@ { "Envoy的启动": { "data": { - "uuid": "云原生-6-213", + "uuid": "云原生-6-214", "seg": [ [ [ @@ -24906,7 +28973,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05624568668046928, + "max": 0.056267253278122834 + }, "related_data": {} } } @@ -24914,7 +28984,7 @@ { "Envoy的热重启": { "data": { - "uuid": "云原生-6-214", + "uuid": "云原生-6-215", "seg": [ [ [ @@ -24924,7 +28994,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.056267253278122834, + "max": 0.056288819875776386 + }, "related_data": {} } } @@ -24932,7 +29005,7 @@ { "守护Envoy": { "data": { - "uuid": "云原生-6-215", + "uuid": "云原生-6-216", "seg": [ [ [ @@ -24941,7 +29014,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.056288819875776386, + "max": 0.056310386473429945 + }, "related_data": {} } } @@ -24949,7 +29025,7 @@ { "优雅退出": { "data": { - "uuid": "云原生-6-216", + "uuid": "云原生-6-217", "seg": [ [ [ @@ -24958,14 +29034,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.056310386473429945, + "max": 0.0563319530710835 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-605", + "uuid": "云原生-5-606", "seg": [ [ [ @@ -24976,7 +29055,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05624568668046928, + "max": 0.0563319530710835 + }, "related_data": {} } } @@ -24995,7 +29077,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05624568668046928, + "max": 0.0563319530710835 + }, "related_data": {} } } @@ -25009,7 +29094,7 @@ { "MCP": { "data": { - "uuid": "云原生-6-217", + "uuid": "云原生-6-218", "seg": [ [ [ @@ -25017,7 +29102,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0563319530710835, + "max": 0.05635351966873706 + }, "related_data": {} } } @@ -25025,7 +29113,7 @@ { "MCP API": { "data": { - "uuid": "云原生-6-218", + "uuid": "云原生-6-219", "seg": [ [ [ @@ -25034,14 +29122,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05635351966873706, + "max": 0.05637508626639061 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-606", + "uuid": "云原生-5-607", "seg": [ [ [ @@ -25050,11 +29141,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0563319530710835, + "max": 0.05637508626639061 + }, "related_data": { "blog": { "data_id": [ - "80913058" + "80913058@oauth@云原生" ] } } @@ -25067,7 +29161,7 @@ { "启动初始化": { "data": { - "uuid": "云原生-6-219", + "uuid": "云原生-6-220", "seg": [ [ [ @@ -25076,7 +29170,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05637508626639061, + "max": 0.056389463998159646 + }, "related_data": {} } } @@ -25084,7 +29181,7 @@ { "配置校验": { "data": { - "uuid": "云原生-6-220", + "uuid": "云原生-6-221", "seg": [ [ [ @@ -25093,7 +29190,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.056389463998159646, + "max": 0.056403841729928676 + }, "related_data": {} } } @@ -25101,7 +29201,7 @@ { "配置聚合与分发": { "data": { - "uuid": "云原生-6-221", + "uuid": "云原生-6-222", "seg": [ [ [ @@ -25113,14 +29213,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.056403841729928676, + "max": 0.05641821946169771 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-607", + "uuid": "云原生-5-608", "seg": [ [ [ @@ -25130,7 +29233,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05637508626639061, + "max": 0.05641821946169771 + }, "related_data": {} } } @@ -25147,7 +29253,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0563319530710835, + "max": 0.05641821946169771 + }, "related_data": {} } } @@ -25159,11 +29268,15 @@ [ [ "架构", - "篇" + "篇", + "架构篇" ] ] ], - "level": "2", + "level": { + "min": 0.05590062111801242, + "max": 0.05641821946169771 + }, "related_data": {} } } @@ -25177,7 +29290,7 @@ { "进程启动流程": { "data": { - "uuid": "云原生-5-608", + "uuid": "云原生-5-609", "seg": [ [ [ @@ -25187,7 +29300,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05641821946169771, + "max": 0.056469979296066244 + }, "related_data": {} } } @@ -25198,7 +29314,7 @@ { "ConfigController": { "data": { - "uuid": "云原生-6-222", + "uuid": "云原生-6-223", "seg": [ [ [ @@ -25206,7 +29322,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.056469979296066244, + "max": 0.05648291925465838 + }, "related_data": {} } } @@ -25214,7 +29333,7 @@ { "ServiceController": { "data": { - "uuid": "云原生-6-223", + "uuid": "云原生-6-224", "seg": [ [ [ @@ -25222,7 +29341,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05648291925465838, + "max": 0.05649585921325051 + }, "related_data": {} } } @@ -25230,17 +29352,21 @@ { "xDS异步分发": { "data": { - "uuid": "云原生-6-224", + "uuid": "云原生-6-225", "seg": [ [ [ "xds", "异步", - "分发" + "分发", + "异步分发" ] ] ], - "level": "2", + "level": { + "min": 0.05649585921325051, + "max": 0.05650879917184264 + }, "related_data": {} } } @@ -25248,33 +29374,41 @@ { "配置更新预处理": { "data": { - "uuid": "云原生-6-225", + "uuid": "云原生-6-226", "seg": [ [ [ "配置", "更新", - "预处理" + "预处理", + "更新预处理" ] ] ], - "level": "2", + "level": { + "min": 0.05650879917184264, + "max": 0.056521739130434775 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-609", + "uuid": "云原生-5-610", "seg": [ [ [ "关键", - "分析" + "分析", + "关键代码" ] ] ], - "level": "2", + "level": { + "min": 0.056469979296066244, + "max": 0.056521739130434775 + }, "related_data": {} } } @@ -25290,7 +29424,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05641821946169771, + "max": 0.056521739130434775 + }, "related_data": {} } } @@ -25304,7 +29441,7 @@ { "runServer通过newServer新建Server对象": { "data": { - "uuid": "云原生-6-226", + "uuid": "云原生-6-227", "seg": [ [ [ @@ -25316,7 +29453,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.056521739130434775, + "max": 0.05654761904761904 + }, "related_data": {} } } @@ -25324,7 +29464,7 @@ { "启动Mixer gRPC Server": { "data": { - "uuid": "云原生-6-227", + "uuid": "云原生-6-228", "seg": [ [ [ @@ -25335,14 +29475,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05654761904761904, + "max": 0.05657349896480331 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-610", + "uuid": "云原生-5-611", "seg": [ [ [ @@ -25352,7 +29495,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.056521739130434775, + "max": 0.05657349896480331 + }, "related_data": {} } } @@ -25363,7 +29509,7 @@ { "监听用户的配置": { "data": { - "uuid": "云原生-6-228", + "uuid": "云原生-6-229", "seg": [ [ [ @@ -25373,7 +29519,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05657349896480331, + "max": 0.05658385093167701 + }, "related_data": {} } } @@ -25381,7 +29530,7 @@ { "构建数据模型": { "data": { - "uuid": "云原生-6-229", + "uuid": "云原生-6-230", "seg": [ [ [ @@ -25390,7 +29539,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05658385093167701, + "max": 0.056594202898550716 + }, "related_data": {} } } @@ -25398,7 +29550,7 @@ { "Check接口": { "data": { - "uuid": "云原生-6-230", + "uuid": "云原生-6-231", "seg": [ [ [ @@ -25407,7 +29559,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.056594202898550716, + "max": 0.05660455486542443 + }, "related_data": {} } } @@ -25415,7 +29570,7 @@ { "Report接口": { "data": { - "uuid": "云原生-6-231", + "uuid": "云原生-6-232", "seg": [ [ [ @@ -25424,7 +29579,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05660455486542443, + "max": 0.05661490683229813 + }, "related_data": {} } } @@ -25432,7 +29590,7 @@ { "协程池": { "data": { - "uuid": "云原生-6-232", + "uuid": "云原生-6-233", "seg": [ [ [ @@ -25440,23 +29598,30 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05661490683229813, + "max": 0.05662525879917184 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-611", + "uuid": "云原生-5-612", "seg": [ [ [ "关键", - "分析" + "分析", + "关键代码" ] ] ], - "level": "2", + "level": { + "min": 0.05657349896480331, + "max": 0.05662525879917184 + }, "related_data": {} } } @@ -25472,7 +29637,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.056521739130434775, + "max": 0.05662525879917184 + }, "related_data": {} } } @@ -25483,7 +29651,7 @@ { "进程启动流程": { "data": { - "uuid": "云原生-5-612", + "uuid": "云原生-5-613", "seg": [ [ [ @@ -25493,7 +29661,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05662525879917184, + "max": 0.05667701863354037 + }, "related_data": {} } } @@ -25504,7 +29675,7 @@ { "证书签发实体IstioCA": { "data": { - "uuid": "云原生-6-233", + "uuid": "云原生-6-234", "seg": [ [ [ @@ -25515,7 +29686,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05667701863354037, + "max": 0.05669427191166321 + }, "related_data": {} } } @@ -25523,7 +29697,7 @@ { "SecretController的创建和核心原理": { "data": { - "uuid": "云原生-6-234", + "uuid": "云原生-6-235", "seg": [ [ [ @@ -25532,11 +29706,15 @@ ], [ "核心", - "原理" + "原理", + "核心原理" ] ] ], - "level": "2", + "level": { + "min": 0.05669427191166321, + "max": 0.056711525189786054 + }, "related_data": {} } } @@ -25544,7 +29722,7 @@ { "CA Server的创建和核心原理": { "data": { - "uuid": "云原生-6-235", + "uuid": "云原生-6-236", "seg": [ [ [ @@ -25554,27 +29732,35 @@ ], [ "核心", - "原理" + "原理", + "核心原理" ] ] ], - "level": "2", + "level": { + "min": 0.056711525189786054, + "max": 0.05672877846790889 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-613", + "uuid": "云原生-5-614", "seg": [ [ [ "关键", - "分析" + "分析", + "关键代码" ] ] ], - "level": "2", + "level": { + "min": 0.05667701863354037, + "max": 0.05672877846790889 + }, "related_data": {} } } @@ -25590,7 +29776,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05662525879917184, + "max": 0.05672877846790889 + }, "related_data": {} } } @@ -25604,7 +29793,7 @@ { "启动参数bootstrap的初始化": { "data": { - "uuid": "云原生-6-236", + "uuid": "云原生-6-237", "seg": [ [ [ @@ -25615,7 +29804,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05672877846790889, + "max": 0.056733091787439606 + }, "related_data": {} } } @@ -25623,7 +29815,7 @@ { "Admin API的初始化": { "data": { - "uuid": "云原生-6-237", + "uuid": "云原生-6-238", "seg": [ [ [ @@ -25633,7 +29825,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.056733091787439606, + "max": 0.05673740510697031 + }, "related_data": {} } } @@ -25641,7 +29836,7 @@ { "Worker的初始化": { "data": { - "uuid": "云原生-6-238", + "uuid": "云原生-6-239", "seg": [ [ [ @@ -25650,7 +29845,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05673740510697031, + "max": 0.056741718426501025 + }, "related_data": {} } } @@ -25658,7 +29856,7 @@ { "CDS的初始化": { "data": { - "uuid": "云原生-6-239", + "uuid": "云原生-6-240", "seg": [ [ [ @@ -25667,7 +29865,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.056741718426501025, + "max": 0.05674603174603174 + }, "related_data": {} } } @@ -25675,7 +29876,7 @@ { "LDS的初始化": { "data": { - "uuid": "云原生-6-240", + "uuid": "云原生-6-241", "seg": [ [ [ @@ -25684,7 +29885,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05674603174603174, + "max": 0.056750345065562445 + }, "related_data": {} } } @@ -25692,7 +29896,7 @@ { "GuardDog的初始化": { "data": { - "uuid": "云原生-6-241", + "uuid": "云原生-6-242", "seg": [ [ [ @@ -25701,14 +29905,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.056750345065562445, + "max": 0.05675465838509316 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-614", + "uuid": "云原生-5-615", "seg": [ [ [ @@ -25717,7 +29924,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05672877846790889, + "max": 0.05675465838509316 + }, "related_data": {} } } @@ -25728,7 +29938,7 @@ { "启动worker": { "data": { - "uuid": "云原生-6-242", + "uuid": "云原生-6-243", "seg": [ [ [ @@ -25737,7 +29947,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05675465838509316, + "max": 0.05676328502415458 + }, "related_data": {} } } @@ -25745,7 +29958,7 @@ { "Listener的加载": { "data": { - "uuid": "云原生-6-243", + "uuid": "云原生-6-244", "seg": [ [ [ @@ -25754,7 +29967,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05676328502415458, + "max": 0.056771911663216004 + }, "related_data": {} } } @@ -25762,7 +29978,7 @@ { "接收连接": { "data": { - "uuid": "云原生-6-244", + "uuid": "云原生-6-245", "seg": [ [ [ @@ -25771,11 +29987,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.056771911663216004, + "max": 0.056780538302277424 + }, "related_data": { "blog": { "data_id": [ - "107311897" + "107311897@阿里云@云原生" ] } } @@ -25784,7 +30003,7 @@ } ], "data": { - "uuid": "云原生-5-615", + "uuid": "云原生-5-616", "seg": [ [ [ @@ -25797,7 +30016,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05675465838509316, + "max": 0.056780538302277424 + }, "related_data": {} } } @@ -25808,7 +30030,7 @@ { "读取数据": { "data": { - "uuid": "云原生-6-245", + "uuid": "云原生-6-246", "seg": [ [ [ @@ -25816,7 +30038,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.056780538302277424, + "max": 0.056793478260869557 + }, "related_data": {} } } @@ -25824,7 +30049,7 @@ { "接收数据": { "data": { - "uuid": "云原生-6-246", + "uuid": "云原生-6-247", "seg": [ [ [ @@ -25832,14 +30057,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.056793478260869557, + "max": 0.05680641821946169 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-616", + "uuid": "云原生-5-617", "seg": [ [ [ @@ -25853,7 +30081,10 @@ [] ] ], - "level": "2", + "level": { + "min": 0.056780538302277424, + "max": 0.05680641821946169 + }, "related_data": {} } } @@ -25864,7 +30095,7 @@ { "匹配路由": { "data": { - "uuid": "云原生-6-247", + "uuid": "云原生-6-248", "seg": [ [ [ @@ -25873,7 +30104,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05680641821946169, + "max": 0.05681504485852311 + }, "related_data": {} } } @@ -25881,7 +30115,7 @@ { "获取连接池": { "data": { - "uuid": "云原生-6-248", + "uuid": "云原生-6-249", "seg": [ [ [ @@ -25890,7 +30124,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05681504485852311, + "max": 0.056823671497584535 + }, "related_data": {} } } @@ -25898,7 +30135,7 @@ { "选择上游主机": { "data": { - "uuid": "云原生-6-249", + "uuid": "云原生-6-250", "seg": [ [ [ @@ -25908,14 +30145,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.056823671497584535, + "max": 0.056832298136645955 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-617", + "uuid": "云原生-5-618", "seg": [ [ [ @@ -25925,7 +30165,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05680641821946169, + "max": 0.056832298136645955 + }, "related_data": {} } } @@ -25941,7 +30184,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05672877846790889, + "max": 0.056832298136645955 + }, "related_data": {} } } @@ -25955,7 +30201,7 @@ { "RunServer的启动流程": { "data": { - "uuid": "云原生-6-250", + "uuid": "云原生-6-251", "seg": [ [ [ @@ -25965,7 +30211,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.056832298136645955, + "max": 0.05685817805383022 + }, "related_data": {} } } @@ -25973,7 +30222,7 @@ { "RunValidation Server的启动流程": { "data": { - "uuid": "云原生-6-251", + "uuid": "云原生-6-252", "seg": [ [ [ @@ -25984,14 +30233,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05685817805383022, + "max": 0.056884057971014486 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-618", + "uuid": "云原生-5-619", "seg": [ [ [ @@ -26001,7 +30253,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.056832298136645955, + "max": 0.056884057971014486 + }, "related_data": {} } } @@ -26012,7 +30267,7 @@ { "配置监听": { "data": { - "uuid": "云原生-6-252", + "uuid": "云原生-6-253", "seg": [ [ [ @@ -26021,7 +30276,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.056884057971014486, + "max": 0.05690993788819875 + }, "related_data": {} } } @@ -26029,7 +30287,7 @@ { "配置分发": { "data": { - "uuid": "云原生-6-253", + "uuid": "云原生-6-254", "seg": [ [ [ @@ -26038,23 +30296,30 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05690993788819875, + "max": 0.05693581780538302 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-619", + "uuid": "云原生-5-620", "seg": [ [ [ "关键", - "分析" + "分析", + "关键代码" ] ] ], - "level": "2", + "level": { + "min": 0.056884057971014486, + "max": 0.05693581780538302 + }, "related_data": {} } } @@ -26070,7 +30335,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.056832298136645955, + "max": 0.05693581780538302 + }, "related_data": {} } } @@ -26081,11 +30349,15 @@ "seg": [ [ [ - "篇" + "篇", + "源码篇" ] ] ], - "level": "2", + "level": { + "min": 0.05641821946169771, + "max": 0.05693581780538302 + }, "related_data": {} } } @@ -26099,7 +30371,7 @@ { "在MiniKube上搭建Istio环境": { "data": { - "uuid": "云原生-5-620", + "uuid": "云原生-5-621", "seg": [ [ [ @@ -26110,7 +30382,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05693581780538302, + "max": 0.05700051759834368 + }, "related_data": {} } } @@ -26118,7 +30393,7 @@ { "在Docker Desktop上搭建Istio环境": { "data": { - "uuid": "云原生-5-621", + "uuid": "云原生-5-622", "seg": [ [ [ @@ -26130,11 +30405,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05700051759834368, + "max": 0.05706521739130434 + }, "related_data": { "blog": { "data_id": [ - "108641842" + "108641842@docker@云原生" ] } } @@ -26144,7 +30422,7 @@ { "使用公有云Istio服务": { "data": { - "uuid": "云原生-5-622", + "uuid": "云原生-5-623", "seg": [ [ [ @@ -26155,7 +30433,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05706521739130434, + "max": 0.057129917184265 + }, "related_data": {} } } @@ -26163,17 +30444,21 @@ { "在Istio中部署第一个应用程序": { "data": { - "uuid": "云原生-5-623", + "uuid": "云原生-5-624", "seg": [ [ [ "istio", "部署", - "应用程序" + "应用程序", + "中部署" ] ] ], - "level": "2", + "level": { + "min": 0.057129917184265, + "max": 0.057194616977225665 + }, "related_data": {} } } @@ -26186,11 +30471,15 @@ [ "快速", "上手", - "istio" + "istio", + "快速上手" ] ] ], - "level": "2", + "level": { + "min": 0.05693581780538302, + "max": 0.057194616977225665 + }, "related_data": {} } } @@ -26201,18 +30490,23 @@ { "Istio架构总体结构": { "data": { - "uuid": "云原生-5-624", + "uuid": "云原生-5-625", "seg": [ [ [ "istio", "架构", "总体", - "结构" + "结构", + "架构总体", + "总体结构" ] ] ], - "level": "2", + "level": { + "min": 0.057194616977225665, + "max": 0.05728088336783988 + }, "related_data": {} } } @@ -26223,7 +30517,7 @@ { "Istio Mixer": { "data": { - "uuid": "云原生-6-254", + "uuid": "云原生-6-255", "seg": [ [ [ @@ -26232,11 +30526,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05728088336783988, + "max": 0.057367149758454104 + }, "related_data": { "blog": { "data_id": [ - "104282753" + "104282753@云原生@云原生" ] } } @@ -26245,7 +30542,7 @@ } ], "data": { - "uuid": "云原生-5-625", + "uuid": "云原生-5-626", "seg": [ [ [ @@ -26256,7 +30553,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05728088336783988, + "max": 0.057367149758454104 + }, "related_data": {} } } @@ -26267,7 +30567,7 @@ { "Envoy代理": { "data": { - "uuid": "云原生-6-255", + "uuid": "云原生-6-256", "seg": [ [ [ @@ -26276,7 +30576,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.057367149758454104, + "max": 0.05739590522199218 + }, "related_data": {} } } @@ -26284,7 +30587,7 @@ { "Envoy静态与动态配置": { "data": { - "uuid": "云原生-6-256", + "uuid": "云原生-6-257", "seg": [ [ [ @@ -26297,7 +30600,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05739590522199218, + "max": 0.057424660685530246 + }, "related_data": {} } } @@ -26305,34 +30611,42 @@ { "代理部署": { "data": { - "uuid": "云原生-6-257", + "uuid": "云原生-6-258", "seg": [ [ [ "代理", - "部署" + "部署", + "代理部署" ] ] ], - "level": "2", + "level": { + "min": 0.057424660685530246, + "max": 0.05745341614906832 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-626", + "uuid": "云原生-5-627", "seg": [ [ [ "剖析", "istio", "数据", - "平面" + "平面", + "数据平面" ] ] ], - "level": "2", + "level": { + "min": 0.057367149758454104, + "max": 0.05745341614906832 + }, "related_data": {} } } @@ -26349,7 +30663,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.057194616977225665, + "max": 0.05745341614906832 + }, "related_data": {} } } @@ -26365,7 +30682,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05693581780538302, + "max": 0.05745341614906832 + }, "related_data": {} } } @@ -26379,17 +30699,21 @@ { "Istio功能稳定性": { "data": { - "uuid": "云原生-5-627", + "uuid": "云原生-5-628", "seg": [ [ [ "istio", "功能", - "稳定性" + "稳定性", + "功能稳定性" ] ] ], - "level": "2", + "level": { + "min": 0.05745341614906832, + "max": 0.057485766045548656 + }, "related_data": {} } } @@ -26397,7 +30721,7 @@ { "Istio性能分析": { "data": { - "uuid": "云原生-5-628", + "uuid": "云原生-5-629", "seg": [ [ [ @@ -26407,11 +30731,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.057485766045548656, + "max": 0.057518115942028984 + }, "related_data": { "blog": { "data_id": [ - "106174708" + "106174708@控制器@云原生" ] } } @@ -26421,7 +30748,7 @@ { "Istio组件升级与回滚": { "data": { - "uuid": "云原生-5-629", + "uuid": "云原生-5-630", "seg": [ [ [ @@ -26434,7 +30761,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.057518115942028984, + "max": 0.05755046583850931 + }, "related_data": {} } } @@ -26442,29 +30772,33 @@ { "Pilot运维指南": { "data": { - "uuid": "云原生-5-630", + "uuid": "云原生-5-631", "seg": [ [ [ "pilot", "运维", - "指南" + "指南", + "运维指南" ] ] ], - "level": "2", + "level": { + "min": 0.05755046583850931, + "max": 0.05758281573498965 + }, "related_data": { "blog": { "data_id": [ - "82526118", - "79022399", - "96774478", - "106679564", - "80592130", - "111560117", - "88124998", - "95935199", - "117307874" + "82526118@运维@云原生", + "79022399@运维@云原生", + "96774478@运维@云原生", + "106679564@运维@云原生", + "80592130@运维@云原生", + "111560117@运维@云原生", + "88124998@运维@云原生", + "95935199@运维@云原生", + "117307874@运维@云原生" ] } } @@ -26486,7 +30820,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05745341614906832, + "max": 0.05758281573498965 + }, "related_data": {} } } @@ -26497,7 +30834,7 @@ { "Mixer模板设计": { "data": { - "uuid": "云原生-5-631", + "uuid": "云原生-5-632", "seg": [ [ [ @@ -26507,7 +30844,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05758281573498965, + "max": 0.057608695652173914 + }, "related_data": {} } } @@ -26515,17 +30855,21 @@ { "适配器生命周期管理": { "data": { - "uuid": "云原生-5-632", + "uuid": "云原生-5-633", "seg": [ [ [ "适配器", "生命周期", - "管理" + "管理", + "适配器生命周期" ] ] ], - "level": "2", + "level": { + "min": 0.057608695652173914, + "max": 0.05763457556935818 + }, "related_data": {} } } @@ -26533,7 +30877,7 @@ { "开发实现适配器": { "data": { - "uuid": "云原生-5-633", + "uuid": "云原生-5-634", "seg": [ [ [ @@ -26542,7 +30886,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05763457556935818, + "max": 0.05766045548654244 + }, "related_data": {} } } @@ -26550,7 +30897,7 @@ { "编译与打包适配器": { "data": { - "uuid": "云原生-5-634", + "uuid": "云原生-5-635", "seg": [ [ [ @@ -26562,7 +30909,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05766045548654244, + "max": 0.0576863354037267 + }, "related_data": {} } } @@ -26570,7 +30920,7 @@ { "扩展EnvoyFilter": { "data": { - "uuid": "云原生-5-635", + "uuid": "云原生-5-636", "seg": [ [ [ @@ -26579,7 +30929,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0576863354037267, + "max": 0.05771221532091097 + }, "related_data": {} } } @@ -26598,7 +30951,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05758281573498965, + "max": 0.05771221532091097 + }, "related_data": {} } } @@ -26609,7 +30965,7 @@ { "Knative架构解析": { "data": { - "uuid": "云原生-5-636", + "uuid": "云原生-5-637", "seg": [ [ [ @@ -26619,7 +30975,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05771221532091097, + "max": 0.05773378191856452 + }, "related_data": {} } } @@ -26627,7 +30986,7 @@ { "基于Istio实现Serving组件": { "data": { - "uuid": "云原生-5-637", + "uuid": "云原生-5-638", "seg": [ [ [ @@ -26637,7 +30996,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05773378191856452, + "max": 0.05775534851621807 + }, "related_data": {} } } @@ -26645,7 +31007,7 @@ { "Knative Build运行机制": { "data": { - "uuid": "云原生-5-638", + "uuid": "云原生-5-639", "seg": [ [ [ @@ -26655,7 +31017,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05775534851621807, + "max": 0.05777691511387163 + }, "related_data": {} } } @@ -26663,7 +31028,7 @@ { "Knative Eventing运行机制": { "data": { - "uuid": "云原生-5-639", + "uuid": "云原生-5-640", "seg": [ [ [ @@ -26673,7 +31038,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05777691511387163, + "max": 0.057798481711525185 + }, "related_data": {} } } @@ -26681,17 +31049,21 @@ { "在Istio上部署Knative": { "data": { - "uuid": "云原生-5-640", + "uuid": "云原生-5-641", "seg": [ [ [ "istio", "部署", - "knative" + "knative", + "上部署" ] ] ], - "level": "2", + "level": { + "min": 0.057798481711525185, + "max": 0.05782004830917874 + }, "related_data": {} } } @@ -26699,7 +31071,7 @@ { "开发部署Knative应用": { "data": { - "uuid": "云原生-5-641", + "uuid": "云原生-5-642", "seg": [ [ [ @@ -26709,7 +31081,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05782004830917874, + "max": 0.05784161490683229 + }, "related_data": {} } } @@ -26731,7 +31106,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05771221532091097, + "max": 0.05784161490683229 + }, "related_data": {} } } @@ -26747,15 +31125,19 @@ "原生", "计算", "未来", - "展望" + "展望", + "云原生" ] ] ], - "level": "2", + "level": { + "min": 0.05784161490683229, + "max": 0.05797101449275362 + }, "related_data": { "blog": { "data_id": [ - "108072234" + "108072234@云原生@云原生" ] } } @@ -26773,7 +31155,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05745341614906832, + "max": 0.05797101449275362 + }, "related_data": {} } } @@ -26789,7 +31174,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05797101449275362, + "max": 0.058488612836438914 + }, "related_data": {} } } @@ -26806,7 +31194,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.058488612836438914, + "max": 0.05900621118012422 + }, "related_data": {} } } @@ -26824,7 +31215,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.05900621118012422, + "max": 0.05952380952380952 + }, "related_data": {} } } @@ -26842,7 +31236,10 @@ [] ] ], - "level": "2", + "level": { + "min": 0.05952380952380952, + "max": 0.06004140786749482 + }, "related_data": {} } } @@ -26862,7 +31259,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06004140786749482, + "max": 0.06055900621118012 + }, "related_data": {} } } @@ -26879,7 +31279,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06055900621118012, + "max": 0.061076604554865424 + }, "related_data": {} } } @@ -26893,7 +31296,7 @@ { "领域驱动设计概览": { "data": { - "uuid": "云原生-5-642", + "uuid": "云原生-5-643", "seg": [ [ [ @@ -26904,12 +31307,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.061076604554865424, + "max": 0.06114130434782609 + }, "related_data": { "blog": { "data_id": [ - "81091470", - "103963100" + "81091470@微服务@云原生", + "103963100@控制器@云原生" ] } } @@ -26919,7 +31325,7 @@ { "限界上下文": { "data": { - "uuid": "云原生-5-643", + "uuid": "云原生-5-644", "seg": [ [ [ @@ -26928,7 +31334,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06114130434782609, + "max": 0.06120600414078675 + }, "related_data": {} } } @@ -26936,7 +31345,7 @@ { "上下文映射": { "data": { - "uuid": "云原生-5-644", + "uuid": "云原生-5-645", "seg": [ [ [ @@ -26945,7 +31354,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06120600414078675, + "max": 0.06127070393374741 + }, "related_data": {} } } @@ -26953,16 +31365,20 @@ { "领域架构": { "data": { - "uuid": "云原生-5-645", + "uuid": "云原生-5-646", "seg": [ [ [ "领域", - "架构" + "架构", + "领域架构" ] ] ], - "level": "2", + "level": { + "min": 0.06127070393374741, + "max": 0.06133540372670807 + }, "related_data": {} } } @@ -26979,7 +31395,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.061076604554865424, + "max": 0.06133540372670807 + }, "related_data": {} } } @@ -26990,7 +31409,7 @@ { "限界上下文的边界": { "data": { - "uuid": "云原生-5-646", + "uuid": "云原生-5-647", "seg": [ [ [ @@ -27000,7 +31419,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06133540372670807, + "max": 0.061400103519668736 + }, "related_data": {} } } @@ -27008,18 +31430,22 @@ { "限界上下文即微服务": { "data": { - "uuid": "云原生-5-647", + "uuid": "云原生-5-648", "seg": [ [ [ "限界", "上下文", "即微", - "服务" + "服务", + "即微服务" ] ] ], - "level": "2", + "level": { + "min": 0.061400103519668736, + "max": 0.06146480331262939 + }, "related_data": {} } } @@ -27027,7 +31453,7 @@ { "识别限界上下文": { "data": { - "uuid": "云原生-5-648", + "uuid": "云原生-5-649", "seg": [ [ [ @@ -27037,7 +31463,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06146480331262939, + "max": 0.06152950310559006 + }, "related_data": {} } } @@ -27045,7 +31474,7 @@ { "微服务之间的协作": { "data": { - "uuid": "云原生-5-649", + "uuid": "云原生-5-650", "seg": [ [ [ @@ -27055,20 +31484,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06152950310559006, + "max": 0.06159420289855072 + }, "related_data": { "blog": { "data_id": [ - "102634941", - "84921558", - "95642923", - "112151316", - "111056474", - "112748723", - "110896877", - "112749362", - "110096925", - "110354642" + "102634941@微服务@云原生", + "84921558@服务发现@云原生", + "95642923@服务发现@云原生", + "112151316@服务发现@云原生", + "111056474@服务发现@云原生", + "112748723@服务发现@云原生", + "110896877@服务发现@云原生", + "112749362@服务发现@云原生", + "110096925@服务发现@云原生", + "110354642@服务发现@云原生" ] } } @@ -27087,7 +31519,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06133540372670807, + "max": 0.06159420289855072 + }, "related_data": {} } } @@ -27106,7 +31541,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.061076604554865424, + "max": 0.06159420289855072 + }, "related_data": {} } } @@ -27120,7 +31558,7 @@ { "Dubbo框架的选型": { "data": { - "uuid": "云原生-5-650", + "uuid": "云原生-5-651", "seg": [ [ [ @@ -27130,7 +31568,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06159420289855072, + "max": 0.06168046928916494 + }, "related_data": {} } } @@ -27138,7 +31579,7 @@ { "Dubbo框架的使用": { "data": { - "uuid": "云原生-5-651", + "uuid": "云原生-5-652", "seg": [ [ [ @@ -27147,20 +31588,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06168046928916494, + "max": 0.06176673567977915 + }, "related_data": { "blog": { "data_id": [ - "87010107", - "90712125", - "51282874", - "98780664", - "70214612", - "84921596", - "47082341", - "100106261", - "89012724", - "80962974" + "87010107@服务发现@云原生", + "90712125@服务发现@云原生", + "51282874@zookeeper@云原生", + "98780664@zookeeper@云原生", + "70214612@zookeeper@云原生", + "84921596@服务发现@云原生", + "47082341@分布式@云原生", + "100106261@zookeeper@云原生", + "89012724@zookeeper@云原生", + "80962974@zookeeper@云原生" ] } } @@ -27180,7 +31624,10 @@ [] ] ], - "level": "2", + "level": { + "min": 0.06159420289855072, + "max": 0.06176673567977915 + }, "related_data": {} } } @@ -27191,17 +31638,21 @@ { "总体架构分析": { "data": { - "uuid": "云原生-5-652", + "uuid": "云原生-5-653", "seg": [ [ [ "总体", "架构", - "分析" + "分析", + "总体架构" ] ] ], - "level": "2", + "level": { + "min": 0.06176673567977915, + "max": 0.06179549114331723 + }, "related_data": {} } } @@ -27209,7 +31660,7 @@ { "Dubbo Bean的加载": { "data": { - "uuid": "云原生-5-653", + "uuid": "云原生-5-654", "seg": [ [ [ @@ -27219,12 +31670,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06179549114331723, + "max": 0.061824246606855295 + }, "related_data": { "blog": { "data_id": [ - "82182533", - "102896795" + "82182533@eureka@云原生", + "102896795@eureka@云原生" ] } } @@ -27234,7 +31688,7 @@ { "Dubbo Extension机制": { "data": { - "uuid": "云原生-5-654", + "uuid": "云原生-5-655", "seg": [ [ [ @@ -27244,12 +31698,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.061824246606855295, + "max": 0.06185300207039337 + }, "related_data": { "blog": { "data_id": [ - "102765349", - "109863382" + "102765349@zookeeper@云原生", + "109863382@服务发现@云原生" ] } } @@ -27259,7 +31716,7 @@ { "Dubbo消费端": { "data": { - "uuid": "云原生-5-655", + "uuid": "云原生-5-656", "seg": [ [ [ @@ -27269,7 +31726,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06185300207039337, + "max": 0.06188175753393144 + }, "related_data": {} } } @@ -27277,7 +31737,7 @@ { "Dubbo服务端": { "data": { - "uuid": "云原生-5-656", + "uuid": "云原生-5-657", "seg": [ [ [ @@ -27286,13 +31746,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06188175753393144, + "max": 0.06191051299746951 + }, "related_data": { "blog": { "data_id": [ - "51818769", - "51926682", - "107029848" + "51818769@中间件@云原生", + "51926682@微服务@云原生", + "107029848@zookeeper@云原生" ] } } @@ -27302,7 +31765,7 @@ { "Dubbo的通信机制": { "data": { - "uuid": "云原生-5-657", + "uuid": "云原生-5-658", "seg": [ [ [ @@ -27312,11 +31775,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06191051299746951, + "max": 0.061939268461007585 + }, "related_data": { "blog": { "data_id": [ - "52290292" + "52290292@zookeeper@云原生" ] } } @@ -27336,7 +31802,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06176673567977915, + "max": 0.061939268461007585 + }, "related_data": {} } } @@ -27347,7 +31816,7 @@ { "Mock模拟系统的产生": { "data": { - "uuid": "云原生-5-658", + "uuid": "云原生-5-659", "seg": [ [ [ @@ -27356,7 +31825,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.061939268461007585, + "max": 0.06198240165631469 + }, "related_data": {} } } @@ -27364,7 +31836,7 @@ { "Dubbo Mock的使用": { "data": { - "uuid": "云原生-5-659", + "uuid": "云原生-5-660", "seg": [ [ [ @@ -27373,7 +31845,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06198240165631469, + "max": 0.0620255348516218 + }, "related_data": {} } } @@ -27381,7 +31856,7 @@ { "Dubbo Mock的原理解析": { "data": { - "uuid": "云原生-5-660", + "uuid": "云原生-5-661", "seg": [ [ [ @@ -27392,11 +31867,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0620255348516218, + "max": 0.06206866804692891 + }, "related_data": { "blog": { "data_id": [ - "92832811" + "92832811@分布式@云原生" ] } } @@ -27406,7 +31884,7 @@ { "自动化Mock系统的实现": { "data": { - "uuid": "云原生-5-661", + "uuid": "云原生-5-662", "seg": [ [ [ @@ -27416,11 +31894,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06206866804692891, + "max": 0.06211180124223602 + }, "related_data": { "blog": { "data_id": [ - "66475879" + "66475879@go@云原生" ] } } @@ -27440,7 +31921,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.061939268461007585, + "max": 0.06211180124223602 + }, "related_data": {} } } @@ -27459,11 +31943,14 @@ [] ] ], - "level": "2", + "level": { + "min": 0.06159420289855072, + "max": 0.06211180124223602 + }, "related_data": { "blog": { "data_id": [ - "109690336" + "109690336@分布式@云原生" ] } } @@ -27479,7 +31966,7 @@ { "Spring Boot Quick Start": { "data": { - "uuid": "云原生-5-662", + "uuid": "云原生-5-663", "seg": [ [ [ @@ -27490,12 +31977,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06211180124223602, + "max": 0.06213768115942028 + }, "related_data": { "blog": { "data_id": [ - "34446629", - "108310357" + "34446629@中间件@云原生", + "108310357@运维@云原生", + "108310357@分布式@云原生" ] } } @@ -27505,7 +31996,7 @@ { "Spring Boot之SpringApplication": { "data": { - "uuid": "云原生-5-663", + "uuid": "云原生-5-664", "seg": [ [ [ @@ -27515,20 +32006,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06213768115942028, + "max": 0.06216356107660455 + }, "related_data": { "blog": { "data_id": [ - "95054675", - "113730679", - "80561748", - "113876580", - "52249289", - "77446947", - "112761439", - "81407400", - "112781694", - "117898550" + "95054675@ribbon@云原生", + "117898550@cloud@云原生", + "113730679@cloud@云原生", + "80561748@eureka@云原生", + "113876580@eureka@云原生", + "113876580@ribbon@云原生", + "52249289@eureka@云原生", + "77446947@eureka@云原生", + "112761439@eureka@云原生", + "112761439@ribbon@云原生" ] } } @@ -27538,7 +32032,7 @@ { "spring-boot-loaded模块分析": { "data": { - "uuid": "云原生-5-664", + "uuid": "云原生-5-665", "seg": [ [ [ @@ -27550,7 +32044,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06216356107660455, + "max": 0.062189440993788814 + }, "related_data": {} } } @@ -27558,7 +32055,7 @@ { "spring-boot-autoconfigure模块分析": { "data": { - "uuid": "云原生-5-665", + "uuid": "云原生-5-666", "seg": [ [ [ @@ -27570,7 +32067,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.062189440993788814, + "max": 0.06221532091097308 + }, "related_data": {} } } @@ -27578,7 +32078,7 @@ { "Spring Boot Conditional注解分析": { "data": { - "uuid": "云原生-5-666", + "uuid": "云原生-5-667", "seg": [ [ [ @@ -27590,14 +32090,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06221532091097308, + "max": 0.062241200828157345 + }, "related_data": { "blog": { "data_id": [ - "50120001", - "106005176", - "81491071", - "110791709" + "50120001@spring@云原生", + "106005176@spring@云原生", + "81491071@spring@云原生", + "110791709@控制器@云原生" ] } } @@ -27617,7 +32120,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06211180124223602, + "max": 0.062241200828157345 + }, "related_data": {} } } @@ -27628,7 +32134,7 @@ { "Dubbo Spring Boot Starter简介": { "data": { - "uuid": "云原生-5-667", + "uuid": "云原生-5-668", "seg": [ [ [ @@ -27640,20 +32146,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.062241200828157345, + "max": 0.06227355072463767 + }, "related_data": { "blog": { "data_id": [ - "108439933", - "51658292", - "76660353", - "116928501", - "78957309", - "44980193", - "54377043", - "109840365", - "92953982", - "108953093" + "108439933@gateway@云原生", + "51658292@zookeeper@云原生", + "76660353@zookeeper@云原生", + "116928501@devops@云原生", + "78957309@微服务@云原生", + "44980193@zookeeper@云原生", + "54377043@zookeeper@云原生", + "109840365@zookeeper@云原生", + "108953093@阿里云@云原生", + "92953982@eureka@云原生" ] } } @@ -27663,7 +32172,7 @@ { "Dubbo Initializr及sample": { "data": { - "uuid": "云原生-5-668", + "uuid": "云原生-5-669", "seg": [ [ [ @@ -27675,7 +32184,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06227355072463767, + "max": 0.062305900621118 + }, "related_data": {} } } @@ -27683,7 +32195,7 @@ { "dubbo-spring-boot-autoconfigure模块": { "data": { - "uuid": "云原生-5-669", + "uuid": "云原生-5-670", "seg": [ [ [ @@ -27695,7 +32207,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.062305900621118, + "max": 0.06233825051759834 + }, "related_data": {} } } @@ -27703,7 +32218,7 @@ { "dubbo-spring-boot-actuator模块": { "data": { - "uuid": "云原生-5-670", + "uuid": "云原生-5-671", "seg": [ [ [ @@ -27715,11 +32230,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06233825051759834, + "max": 0.062370600414078665 + }, "related_data": { "blog": { "data_id": [ - "80511588" + "80511588@consul@云原生" ] } } @@ -27739,7 +32257,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.062241200828157345, + "max": 0.062370600414078665 + }, "related_data": {} } } @@ -27750,7 +32271,7 @@ { "Spring Cloud技术栈总览": { "data": { - "uuid": "云原生-5-671", + "uuid": "云原生-5-672", "seg": [ [ [ @@ -27758,18 +32279,24 @@ "cloud", "技术", "栈", - "总览" + "总览", + "技术栈", + "栈总览" ] ] ], - "level": "2", + "level": { + "min": 0.062370600414078665, + "max": 0.06243530020703933 + }, "related_data": { "blog": { "data_id": [ - "117635759", - "109003365", - "111613781", - "108776298" + "117635759@gateway@云原生", + "109003365@微服务@云原生", + "111613781@微服务@云原生", + "111613781@中间件@云原生", + "108776298@cloud@云原生" ] } } @@ -27779,7 +32306,7 @@ { "spring-cloud-scaffold基础库集合": { "data": { - "uuid": "云原生-5-672", + "uuid": "云原生-5-673", "seg": [ [ [ @@ -27788,15 +32315,19 @@ "scaffold", "基础", "库", - "集合" + "集合", + "基础库" ] ] ], - "level": "2", + "level": { + "min": 0.06243530020703933, + "max": 0.062499999999999986 + }, "related_data": { "blog": { "data_id": [ - "108695328" + "108695328@微服务@云原生" ] } } @@ -27815,7 +32346,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.062370600414078665, + "max": 0.062499999999999986 + }, "related_data": {} } } @@ -27826,7 +32360,7 @@ { "Maven Archetype": { "data": { - "uuid": "云原生-5-673", + "uuid": "云原生-5-674", "seg": [ [ [ @@ -27835,20 +32369,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.062499999999999986, + "max": 0.06254313319530709 + }, "related_data": { "blog": { "data_id": [ - "55258275", - "81363205", - "78422953", - "78266520", - "53506401", - "52913086", - "80041146", - "54864504", - "117506859", - "77881467" + "55258275@devops@云原生", + "81363205@devops@云原生", + "78422953@阿里云@云原生", + "78266520@cloud@云原生", + "53506401@aws@云原生", + "52913086@阿里云@云原生", + "80041146@阿里云@云原生", + "54864504@阿里云@云原生", + "117506859@spring@云原生", + "77881467@阿里云@云原生" ] } } @@ -27858,7 +32395,7 @@ { "脚手架的搭建": { "data": { - "uuid": "云原生-5-674", + "uuid": "云原生-5-675", "seg": [ [ [ @@ -27867,7 +32404,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06254313319530709, + "max": 0.06258626639061421 + }, "related_data": {} } } @@ -27875,7 +32415,7 @@ { "生成脚手架": { "data": { - "uuid": "云原生-5-675", + "uuid": "云原生-5-676", "seg": [ [ [ @@ -27884,7 +32424,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06258626639061421, + "max": 0.06262939958592131 + }, "related_data": {} } } @@ -27901,7 +32444,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.062499999999999986, + "max": 0.06262939958592131 + }, "related_data": {} } } @@ -27919,7 +32465,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06211180124223602, + "max": 0.06262939958592131 + }, "related_data": {} } } @@ -27940,7 +32489,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06262939958592131, + "max": 0.06280193236714975 + }, "related_data": {} } } @@ -27951,17 +32503,21 @@ { "限流原理与实现": { "data": { - "uuid": "云原生-5-676", + "uuid": "云原生-5-677", "seg": [ [ [ "限流", - "原理" + "原理", + "限流原理" ], [] ] ], - "level": "2", + "level": { + "min": 0.06280193236714975, + "max": 0.06288819875776397 + }, "related_data": {} } } @@ -27969,17 +32525,21 @@ { "断路器原理与实现": { "data": { - "uuid": "云原生-5-677", + "uuid": "云原生-5-678", "seg": [ [ [ "断路器", - "原理" + "原理", + "断路器原理" ], [] ] ], - "level": "2", + "level": { + "min": 0.06288819875776397, + "max": 0.06297446514837819 + }, "related_data": {} } } @@ -27995,7 +32555,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06280193236714975, + "max": 0.06297446514837819 + }, "related_data": {} } } @@ -28006,7 +32569,7 @@ { "异步": { "data": { - "uuid": "云原生-5-678", + "uuid": "云原生-5-679", "seg": [ [ [ @@ -28014,7 +32577,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06297446514837819, + "max": 0.06306073153899242 + }, "related_data": {} } } @@ -28022,7 +32588,7 @@ { "缓存": { "data": { - "uuid": "云原生-5-679", + "uuid": "云原生-5-680", "seg": [ [ [ @@ -28030,7 +32596,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06306073153899242, + "max": 0.06314699792960662 + }, "related_data": {} } } @@ -28046,11 +32615,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06297446514837819, + "max": 0.06314699792960662 + }, "related_data": { "blog": { "data_id": [ - "114272270" + "114272270@分布式@云原生" ] } } @@ -28071,7 +32643,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06262939958592131, + "max": 0.06314699792960662 + }, "related_data": {} } } @@ -28088,11 +32663,15 @@ [ "事务", "分布式", - "演变" + "演变", + "分布式事务" ] ] ], - "level": "2", + "level": { + "min": 0.06314699792960662, + "max": 0.06331953071083506 + }, "related_data": {} } } @@ -28103,7 +32682,7 @@ { "二阶段提交协议": { "data": { - "uuid": "云原生-5-680", + "uuid": "云原生-5-681", "seg": [ [ [ @@ -28113,7 +32692,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06331953071083506, + "max": 0.06340579710144928 + }, "related_data": {} } } @@ -28121,7 +32703,7 @@ { "三阶段提交协议": { "data": { - "uuid": "云原生-5-681", + "uuid": "云原生-5-682", "seg": [ [ [ @@ -28131,7 +32713,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06340579710144928, + "max": 0.06349206349206349 + }, "related_data": {} } } @@ -28144,11 +32729,15 @@ [ "强", "一致性", - "解决方案" + "解决方案", + "一致性解决方案" ] ] ], - "level": "2", + "level": { + "min": 0.06331953071083506, + "max": 0.06349206349206349 + }, "related_data": {} } } @@ -28159,7 +32748,7 @@ { "TCC模式": { "data": { - "uuid": "云原生-5-682", + "uuid": "云原生-5-683", "seg": [ [ [ @@ -28168,7 +32757,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06349206349206349, + "max": 0.0635783298826777 + }, "related_data": {} } } @@ -28176,7 +32768,7 @@ { "补偿模式": { "data": { - "uuid": "云原生-5-683", + "uuid": "云原生-5-684", "seg": [ [ [ @@ -28185,7 +32777,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0635783298826777, + "max": 0.06366459627329192 + }, "related_data": {} } } @@ -28198,11 +32793,16 @@ [ "最终", "一致性", - "解决方案" + "解决方案", + "最终一致性", + "一致性解决方案" ] ] ], - "level": "2", + "level": { + "min": 0.06349206349206349, + "max": 0.06366459627329192 + }, "related_data": {} } } @@ -28221,7 +32821,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06314699792960662, + "max": 0.06366459627329192 + }, "related_data": {} } } @@ -28235,18 +32838,22 @@ { "常见的开源网关介绍": { "data": { - "uuid": "云原生-5-684", + "uuid": "云原生-5-685", "seg": [ [ [ "常见", "开源", "网关", - "介绍" + "介绍", + "开源网关" ] ] ], - "level": "2", + "level": { + "min": 0.06366459627329192, + "max": 0.06379399585921325 + }, "related_data": {} } } @@ -28254,18 +32861,22 @@ { "四大开源网关的对比分析": { "data": { - "uuid": "云原生-5-685", + "uuid": "云原生-5-686", "seg": [ [ [ "四大", "开源", "网关", - "分析" + "分析", + "开源网关" ] ] ], - "level": "2", + "level": { + "min": 0.06379399585921325, + "max": 0.06392339544513456 + }, "related_data": {} } } @@ -28278,14 +32889,18 @@ [ "开源", "网关", - "分析" + "分析", + "开源网关" ], [ "调研" ] ] ], - "level": "2", + "level": { + "min": 0.06366459627329192, + "max": 0.06392339544513456 + }, "related_data": {} } } @@ -28296,20 +32911,24 @@ { "业务网关的设计与最佳实践": { "data": { - "uuid": "云原生-5-686", + "uuid": "云原生-5-687", "seg": [ [ [ "业务", "网关", - "设计" + "设计", + "业务网关" ], [ "实践" ] ] ], - "level": "2", + "level": { + "min": 0.06392339544513456, + "max": 0.06418219461697722 + }, "related_data": {} } } @@ -28324,11 +32943,15 @@ "交易系统", "api", "网关", - "设计" + "设计", + "流量交易系统" ] ] ], - "level": "2", + "level": { + "min": 0.06392339544513456, + "max": 0.06418219461697722 + }, "related_data": {} } } @@ -28343,12 +32966,16 @@ "微", "服务", "网关", - "设计" + "设计", + "流量微" ], [] ] ], - "level": "2", + "level": { + "min": 0.06366459627329192, + "max": 0.06418219461697722 + }, "related_data": {} } } @@ -28368,7 +32995,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06418219461697722, + "max": 0.06431159420289854 + }, "related_data": {} } } @@ -28386,7 +33016,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06431159420289854, + "max": 0.06444099378881987 + }, "related_data": {} } } @@ -28403,7 +33036,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06444099378881987, + "max": 0.0645703933747412 + }, "related_data": {} } } @@ -28414,7 +33050,7 @@ { "Client层源码分析": { "data": { - "uuid": "云原生-5-687", + "uuid": "云原生-5-688", "seg": [ [ [ @@ -28424,11 +33060,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0645703933747412, + "max": 0.0646135265700483 + }, "related_data": { "blog": { "data_id": [ - "100776066" + "100776066@微服务@云原生" ] } } @@ -28438,7 +33077,7 @@ { "Server端源码分析": { "data": { - "uuid": "云原生-5-688", + "uuid": "云原生-5-689", "seg": [ [ [ @@ -28448,7 +33087,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0646135265700483, + "max": 0.06465665976535542 + }, "related_data": {} } } @@ -28456,7 +33098,7 @@ { "core端源码分析": { "data": { - "uuid": "云原生-5-689", + "uuid": "云原生-5-690", "seg": [ [ [ @@ -28466,7 +33108,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06465665976535542, + "max": 0.06469979296066253 + }, "related_data": {} } } @@ -28483,7 +33128,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0645703933747412, + "max": 0.06469979296066253 + }, "related_data": {} } } @@ -28500,7 +33148,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06418219461697722, + "max": 0.06469979296066253 + }, "related_data": {} } } @@ -28520,7 +33171,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06469979296066253, + "max": 0.06480331262939959 + }, "related_data": {} } } @@ -28531,7 +33185,7 @@ { "什么是数据仓库": { "data": { - "uuid": "云原生-5-690", + "uuid": "云原生-5-691", "seg": [ [ [ @@ -28539,7 +33193,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06480331262939959, + "max": 0.06482919254658386 + }, "related_data": {} } } @@ -28547,16 +33204,20 @@ { "数据仓库架构": { "data": { - "uuid": "云原生-5-691", + "uuid": "云原生-5-692", "seg": [ [ [ "数据仓库", - "架构" + "架构", + "数据仓库架构" ] ] ], - "level": "2", + "level": { + "min": 0.06482919254658386, + "max": 0.06485507246376812 + }, "related_data": {} } } @@ -28564,17 +33225,22 @@ { "数据仓库建模方法": { "data": { - "uuid": "云原生-5-692", + "uuid": "云原生-5-693", "seg": [ [ [ "数据仓库", "建模", - "方法" + "方法", + "数据仓库建模", + "建模方法" ] ] ], - "level": "2", + "level": { + "min": 0.06485507246376812, + "max": 0.06488095238095239 + }, "related_data": {} } } @@ -28582,7 +33248,7 @@ { "数据统计": { "data": { - "uuid": "云原生-5-693", + "uuid": "云原生-5-694", "seg": [ [ [ @@ -28591,11 +33257,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06488095238095239, + "max": 0.06490683229813665 + }, "related_data": { "blog": { "data_id": [ - "88085543" + "88085543@cloud@云原生" ] } } @@ -28613,7 +33282,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06480331262939959, + "max": 0.06490683229813665 + }, "related_data": {} } } @@ -28624,7 +33296,7 @@ { "安装Hive": { "data": { - "uuid": "云原生-5-694", + "uuid": "云原生-5-695", "seg": [ [ [ @@ -28633,12 +33305,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06490683229813665, + "max": 0.06494133885438233 + }, "related_data": { "blog": { "data_id": [ - "88569175", - "109937861" + "88569175@zookeeper@云原生", + "109937861@zookeeper@云原生" ] } } @@ -28648,7 +33323,7 @@ { "Hive数据库": { "data": { - "uuid": "云原生-5-695", + "uuid": "云原生-5-696", "seg": [ [ [ @@ -28657,18 +33332,22 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06494133885438233, + "max": 0.06497584541062802 + }, "related_data": { "blog": { "data_id": [ - "45675705", - "40982435", - "85313410", - "82352856", - "20386731", - "78937820", - "50615816", - "111559274" + "45675705@zookeeper@云原生", + "40982435@zookeeper@云原生", + "85313410@kafka@云原生", + "82352856@kafka@云原生", + "20386731@aws@云原生", + "78937820@zookeeper@云原生", + "50615816@zookeeper@云原生", + "111559274@oauth@云原生", + "111559274@阿里云@云原生" ] } } @@ -28678,7 +33357,7 @@ { "Hive表": { "data": { - "uuid": "云原生-5-696", + "uuid": "云原生-5-697", "seg": [ [ [ @@ -28687,7 +33366,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06497584541062802, + "max": 0.0650103519668737 + }, "related_data": {} } } @@ -28700,11 +33382,15 @@ [ "数据仓库", "工具", - "hive" + "hive", + "数据仓库工具" ] ] ], - "level": "2", + "level": { + "min": 0.06490683229813665, + "max": 0.0650103519668737 + }, "related_data": {} } } @@ -28715,7 +33401,7 @@ { "安装Sqoop": { "data": { - "uuid": "云原生-5-697", + "uuid": "云原生-5-698", "seg": [ [ [ @@ -28724,7 +33410,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0650103519668737, + "max": 0.06506211180124223 + }, "related_data": {} } } @@ -28732,7 +33421,7 @@ { "将MySQL表数据导入Hive表": { "data": { - "uuid": "云原生-5-698", + "uuid": "云原生-5-699", "seg": [ [ [ @@ -28744,15 +33433,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06506211180124223, + "max": 0.06511387163561076 + }, "related_data": { "blog": { "data_id": [ - "77607054", - "115426714", - "46309797", - "112669032", - "116430161" + "77607054@go@云原生", + "115426714@分布式@云原生", + "112669032@运维@云原生", + "116430161@中间件@云原生" ] } } @@ -28771,7 +33462,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0650103519668737, + "max": 0.06511387163561076 + }, "related_data": {} } } @@ -28784,15 +33478,19 @@ [ [ "etl", - "调度" + "调度", + "作业调度" ] ] ], - "level": "2", + "level": { + "min": 0.06511387163561076, + "max": 0.06521739130434782 + }, "related_data": { "blog": { "data_id": [ - "111868775" + "111868775@云原生@云原生" ] } } @@ -28815,7 +33513,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06469979296066253, + "max": 0.06521739130434782 + }, "related_data": {} } } @@ -28836,7 +33537,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06521739130434782, + "max": 0.06547619047619047 + }, "related_data": {} } } @@ -28847,17 +33551,22 @@ { "单机房部署": { "data": { - "uuid": "云原生-5-699", + "uuid": "云原生-5-700", "seg": [ [ [ "单", "机房", - "部署" + "部署", + "单机房", + "机房部署" ] ] ], - "level": "2", + "level": { + "min": 0.06547619047619047, + "max": 0.06556245686680469 + }, "related_data": {} } } @@ -28865,17 +33574,22 @@ { "双机房部署": { "data": { - "uuid": "云原生-5-700", + "uuid": "云原生-5-701", "seg": [ [ [ "双", "机房", - "部署" + "部署", + "双机房", + "机房部署" ] ] ], - "level": "2", + "level": { + "min": 0.06556245686680469, + "max": 0.0656487232574189 + }, "related_data": {} } } @@ -28883,7 +33597,7 @@ { "基于支付场景的双活体系建设": { "data": { - "uuid": "云原生-5-701", + "uuid": "云原生-5-702", "seg": [ [ [ @@ -28891,11 +33605,15 @@ "场景", "双活", "体系", - "建设" + "建设", + "双活体系" ] ] ], - "level": "2", + "level": { + "min": 0.0656487232574189, + "max": 0.06573498964803312 + }, "related_data": {} } } @@ -28907,11 +33625,15 @@ [ [ "活", - "数据中心" + "数据中心", + "活数据中心" ] ] ], - "level": "2", + "level": { + "min": 0.06547619047619047, + "max": 0.06573498964803312 + }, "related_data": {} } } @@ -28926,11 +33648,15 @@ "服务", "活", "体系", - "建设" + "建设", + "活体系" ] ] ], - "level": "2", + "level": { + "min": 0.06521739130434782, + "max": 0.06573498964803312 + }, "related_data": {} } } @@ -28951,7 +33677,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06573498964803312, + "max": 0.06590752242926155 + }, "related_data": {} } } @@ -28962,7 +33691,7 @@ { "从代码和设计的角度看": { "data": { - "uuid": "云原生-5-702", + "uuid": "云原生-5-703", "seg": [ [ [], @@ -28972,7 +33701,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06590752242926155, + "max": 0.06599378881987578 + }, "related_data": {} } } @@ -28980,17 +33712,21 @@ { "从整体架构的角度看": { "data": { - "uuid": "云原生-5-703", + "uuid": "云原生-5-704", "seg": [ [ [ "整体", "架构", - "角度看" + "角度看", + "整体架构" ] ] ], - "level": "2", + "level": { + "min": 0.06599378881987578, + "max": 0.06608005521048999 + }, "related_data": {} } } @@ -29006,11 +33742,15 @@ "微", "服务", "架构", - "性能" + "性能", + "代码层面" ] ] ], - "level": "2", + "level": { + "min": 0.06590752242926155, + "max": 0.06608005521048999 + }, "related_data": {} } } @@ -29032,7 +33772,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06608005521048999, + "max": 0.06625258799171842 + }, "related_data": {} } } @@ -29055,7 +33798,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06573498964803312, + "max": 0.06625258799171842 + }, "related_data": {} } } @@ -29071,11 +33817,16 @@ [ [ "分层", - "结构" + "结构", + "代码分层", + "分层结构" ] ] ], - "level": "2", + "level": { + "min": 0.06625258799171842, + "max": 0.06638198757763975 + }, "related_data": {} } } @@ -29096,7 +33847,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06638198757763975, + "max": 0.06651138716356106 + }, "related_data": {} } } @@ -29112,11 +33866,15 @@ "系统", "拆分", "服务", - "方法论" + "方法论", + "单体系统" ] ] ], - "level": "1", + "level": { + "min": 0.06651138716356106, + "max": 0.06664078674948239 + }, "related_data": {} } } @@ -29127,15 +33885,19 @@ { "从代码重构开始": { "data": { - "uuid": "云原生-5-704", + "uuid": "云原生-5-705", "seg": [ [ [ - "重构" + "重构", + "代码重构" ] ] ], - "level": "2", + "level": { + "min": 0.06664078674948239, + "max": 0.06665516448125142 + }, "related_data": {} } } @@ -29143,7 +33905,7 @@ { "拆分服务需要面向服务进行架构设计": { "data": { - "uuid": "云原生-5-705", + "uuid": "云原生-5-706", "seg": [ [ [ @@ -29154,7 +33916,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06665516448125142, + "max": 0.06666954221302046 + }, "related_data": {} } } @@ -29162,7 +33927,7 @@ { "改造是一个渐进的过程": { "data": { - "uuid": "云原生-5-706", + "uuid": "云原生-5-707", "seg": [ [ [ @@ -29172,7 +33937,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06666954221302046, + "max": 0.06668391994478949 + }, "related_data": {} } } @@ -29180,7 +33948,7 @@ { "单元测试是基石": { "data": { - "uuid": "云原生-5-707", + "uuid": "云原生-5-708", "seg": [ [ [ @@ -29189,7 +33957,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06668391994478949, + "max": 0.06669829767655854 + }, "related_data": {} } } @@ -29197,7 +33968,7 @@ { "面向失败的设计": { "data": { - "uuid": "云原生-5-708", + "uuid": "云原生-5-709", "seg": [ [ [ @@ -29207,7 +33978,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06669829767655854, + "max": 0.06671267540832757 + }, "related_data": {} } } @@ -29215,7 +33989,7 @@ { "前后端分离": { "data": { - "uuid": "云原生-5-709", + "uuid": "云原生-5-710", "seg": [ [ [ @@ -29224,11 +33998,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06671267540832757, + "max": 0.06672705314009661 + }, "related_data": { "blog": { "data_id": [ - "81138127" + "81138127@oauth@云原生" ] } } @@ -29238,7 +34015,7 @@ { "共享现有数据库": { "data": { - "uuid": "云原生-5-710", + "uuid": "云原生-5-711", "seg": [ [ [ @@ -29248,7 +34025,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06672705314009661, + "max": 0.06674143087186564 + }, "related_data": {} } } @@ -29256,7 +34036,7 @@ { "灰度发布的必要性": { "data": { - "uuid": "云原生-5-711", + "uuid": "云原生-5-712", "seg": [ [ [ @@ -29266,7 +34046,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06674143087186564, + "max": 0.06675580860363468 + }, "related_data": {} } } @@ -29274,7 +34057,7 @@ { "日志聚合与全链路监控": { "data": { - "uuid": "云原生-5-712", + "uuid": "云原生-5-713", "seg": [ [ [ @@ -29284,11 +34067,15 @@ [ "全", "链路", - "监控" + "监控", + "全链路" ] ] ], - "level": "1", + "level": { + "min": 0.06675580860363468, + "max": 0.06677018633540371 + }, "related_data": {} } } @@ -29308,7 +34095,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06664078674948239, + "max": 0.06677018633540371 + }, "related_data": {} } } @@ -29328,7 +34118,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06625258799171842, + "max": 0.06677018633540371 + }, "related_data": {} } } @@ -29349,7 +34142,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06677018633540371, + "max": 0.06687370600414078 + }, "related_data": {} } } @@ -29360,7 +34156,7 @@ { "Service Mesh架构": { "data": { - "uuid": "云原生-5-713", + "uuid": "云原生-5-714", "seg": [ [ [ @@ -29370,20 +34166,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06687370600414078, + "max": 0.06692546583850931 + }, "related_data": { "blog": { "data_id": [ - "78678460", - "97626386", - "88944391", - "79785493", - "80333423", - "84257923", - "78630241", - "79295896", - "112061313", - "78872404" + "78678460@mesh@云原生", + "97626386@mesh@云原生", + "88944391@mesh@云原生", + "79785493@mesh@云原生", + "80333423@mesh@云原生", + "84257923@容器@云原生", + "78630241@mesh@云原生", + "79295896@mesh@云原生", + "112061313@mesh@云原生", + "78872404@paas@云原生" ] } } @@ -29393,7 +34192,7 @@ { "Service Mesh能做什么": { "data": { - "uuid": "云原生-5-714", + "uuid": "云原生-5-715", "seg": [ [ [ @@ -29403,12 +34202,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06692546583850931, + "max": 0.06697722567287784 + }, "related_data": { "blog": { "data_id": [ - "89944800", - "82832345" + "89944800@mesh@云原生", + "82832345@服务发现@云原生" ] } } @@ -29427,7 +34229,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06687370600414078, + "max": 0.06697722567287784 + }, "related_data": {} } } @@ -29445,7 +34250,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06697722567287784, + "max": 0.0670807453416149 + }, "related_data": {} } } @@ -29456,7 +34264,7 @@ { "Istio架构": { "data": { - "uuid": "云原生-5-715", + "uuid": "云原生-5-716", "seg": [ [ [ @@ -29465,7 +34273,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0670807453416149, + "max": 0.06710662525879917 + }, "related_data": {} } } @@ -29473,16 +34284,20 @@ { "数据平面": { "data": { - "uuid": "云原生-5-716", + "uuid": "云原生-5-717", "seg": [ [ [ "数据", - "平面" + "平面", + "数据平面" ] ] ], - "level": "2", + "level": { + "min": 0.06710662525879917, + "max": 0.06713250517598343 + }, "related_data": {} } } @@ -29490,7 +34305,7 @@ { "控制平面": { "data": { - "uuid": "云原生-5-717", + "uuid": "云原生-5-718", "seg": [ [ [ @@ -29499,7 +34314,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06713250517598343, + "max": 0.0671583850931677 + }, "related_data": {} } } @@ -29507,7 +34325,7 @@ { "Isito案例": { "data": { - "uuid": "云原生-5-718", + "uuid": "云原生-5-719", "seg": [ [ [ @@ -29516,7 +34334,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0671583850931677, + "max": 0.06718426501035196 + }, "related_data": {} } } @@ -29532,11 +34353,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0670807453416149, + "max": 0.06718426501035196 + }, "related_data": { "blog": { "data_id": [ - "90205359" + "90205359@spring@云原生" ] } } @@ -29556,7 +34380,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06718426501035196, + "max": 0.06728778467908902 + }, "related_data": {} } } @@ -29573,7 +34400,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06677018633540371, + "max": 0.06728778467908902 + }, "related_data": {} } } @@ -29589,11 +34419,15 @@ [ [ "国际", - "互联网" + "互联网", + "国际互联网" ] ] ], - "level": "2", + "level": { + "min": 0.06728778467908902, + "max": 0.06737405106970323 + }, "related_data": {} } } @@ -29604,7 +34438,7 @@ { "难懂的ByteBuffer": { "data": { - "uuid": "云原生-5-719", + "uuid": "云原生-5-720", "seg": [ [ [ @@ -29613,7 +34447,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06737405106970323, + "max": 0.06740280653324131 + }, "related_data": {} } } @@ -29621,16 +34458,20 @@ { "晦涩的“非阻塞”": { "data": { - "uuid": "云原生-5-720", + "uuid": "云原生-5-721", "seg": [ [ [ "晦涩", - "阻塞" + "阻塞", + "非阻塞" ] ] ], - "level": "1", + "level": { + "min": 0.06740280653324131, + "max": 0.06743156199677938 + }, "related_data": {} } } @@ -29638,7 +34479,7 @@ { "复杂的Reactor模型": { "data": { - "uuid": "云原生-5-721", + "uuid": "云原生-5-722", "seg": [ [ [ @@ -29647,7 +34488,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06743156199677938, + "max": 0.06746031746031746 + }, "related_data": {} } } @@ -29663,11 +34507,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06737405106970323, + "max": 0.06746031746031746 + }, "related_data": { "blog": { "data_id": [ - "111089399" + "111089399@分布式@云原生" ] } } @@ -29691,7 +34538,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06746031746031746, + "max": 0.06754658385093168 + }, "related_data": {} } } @@ -29702,7 +34552,7 @@ { "HTTP的设计思路": { "data": { - "uuid": "云原生-5-722", + "uuid": "云原生-5-723", "seg": [ [ [ @@ -29712,7 +34562,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06754658385093168, + "max": 0.06756383712905452 + }, "related_data": {} } } @@ -29720,7 +34573,7 @@ { "HTTP如何保持状态": { "data": { - "uuid": "云原生-5-723", + "uuid": "云原生-5-724", "seg": [ [ [ @@ -29729,20 +34582,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06756383712905452, + "max": 0.06758109040717736 + }, "related_data": { "blog": { "data_id": [ - "101020993", - "78979268", - "56847456", - "6570515", - "53893581", - "114817924", - "47354737", - "36634729", - "52385944", - "107373617" + "101020993@spring@云原生", + "78979268@ribbon@云原生", + "56847456@中间件@云原生", + "6570515@中间件@云原生", + "53893581@oauth@云原生", + "114817924@阿里云@云原生", + "47354737@中间件@云原生", + "36634729@oauth@云原生", + "52385944@aws@云原生", + "107373617@oauth@云原生" ] } } @@ -29752,7 +34608,7 @@ { "Session的秘密": { "data": { - "uuid": "云原生-5-724", + "uuid": "云原生-5-725", "seg": [ [ [ @@ -29761,12 +34617,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06758109040717736, + "max": 0.06759834368530021 + }, "related_data": { "blog": { "data_id": [ - "50510717", - "6595267" + "50510717@中间件@云原生", + "6595267@中间件@云原生" ] } } @@ -29776,16 +34635,20 @@ { "再谈Token": { "data": { - "uuid": "云原生-5-725", + "uuid": "云原生-5-726", "seg": [ [ [ "谈", - "token" + "token", + "再谈" ] ] ], - "level": "1", + "level": { + "min": 0.06759834368530021, + "max": 0.06761559696342305 + }, "related_data": {} } } @@ -29793,7 +34656,7 @@ { "分布式Session": { "data": { - "uuid": "云原生-5-726", + "uuid": "云原生-5-727", "seg": [ [ [ @@ -29802,7 +34665,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06761559696342305, + "max": 0.06763285024154589 + }, "related_data": {} } } @@ -29819,7 +34685,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.06754658385093168, + "max": 0.06763285024154589 + }, "related_data": {} } } @@ -29842,8 +34711,17 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.06763285024154589, + "max": 0.0677191166321601 + }, + "related_data": { + "blog": { + "data_id": [ + "87974209@运维@云原生" + ] + } + } } } }, @@ -29853,7 +34731,7 @@ { "互联互不通的运营商网络": { "data": { - "uuid": "云原生-5-727", + "uuid": "云原生-5-728", "seg": [ [ [ @@ -29861,11 +34739,16 @@ "互不", "通", "运营商", - "网络" + "网络", + "互不通", + "运营商网络" ] ] ], - "level": "1", + "level": { + "min": 0.0677191166321601, + "max": 0.06774068322981365 + }, "related_data": {} } } @@ -29873,16 +34756,20 @@ { "双线机房的出现": { "data": { - "uuid": "云原生-5-728", + "uuid": "云原生-5-729", "seg": [ [ [ "双线", - "机房" + "机房", + "双线机房" ] ] ], - "level": "2", + "level": { + "min": 0.06774068322981365, + "max": 0.0677622498274672 + }, "related_data": {} } } @@ -29890,7 +34777,7 @@ { "CDN的作用": { "data": { - "uuid": "云原生-5-729", + "uuid": "云原生-5-730", "seg": [ [ [ @@ -29899,13 +34786,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0677622498274672, + "max": 0.06778381642512077 + }, "related_data": { "blog": { "data_id": [ - "50395444", - "71331717", - "112264242" + "50395444@aws@云原生", + "71331717@阿里云@云原生" ] } } @@ -29915,7 +34804,7 @@ { "SD-WAN技术的诞生": { "data": { - "uuid": "云原生-5-730", + "uuid": "云原生-5-731", "seg": [ [ [ @@ -29926,7 +34815,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06778381642512077, + "max": 0.06780538302277432 + }, "related_data": {} } } @@ -29943,7 +34835,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0677191166321601, + "max": 0.06780538302277432 + }, "related_data": {} } } @@ -29959,7 +34854,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06728778467908902, + "max": 0.06780538302277432 + }, "related_data": {} } } @@ -29981,7 +34879,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06780538302277432, + "max": 0.06789164941338854 + }, "related_data": {} } } @@ -29995,11 +34896,15 @@ [ "分布式系统", "一致性", - "原理" + "原理", + "一致性原理" ] ] ], - "level": "2", + "level": { + "min": 0.06789164941338854, + "max": 0.06797791580400275 + }, "related_data": {} } } @@ -30010,7 +34915,7 @@ { "ZooKeeper的原理与功能": { "data": { - "uuid": "云原生-5-731", + "uuid": "云原生-5-732", "seg": [ [ [ @@ -30022,20 +34927,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06797791580400275, + "max": 0.06802104899930986 + }, "related_data": { "blog": { "data_id": [ - "52901319", - "19006911", - "77043523", - "79206893", - "79775738", - "117421309", - "78742625", - "78642052", - "52698555", - "23180355" + "52901319@分布式@云原生", + "19006911@zookeeper@云原生", + "77043523@服务发现@云原生", + "79206893@zookeeper@云原生", + "79775738@zookeeper@云原生", + "117421309@zookeeper@云原生", + "78742625@zookeeper@云原生", + "78642052@zookeeper@云原生", + "52698555@zookeeper@云原生", + "23180355@zookeeper@云原生" ] } } @@ -30045,29 +34953,35 @@ { "ZooKeeper的应用场景案例分析": { "data": { - "uuid": "云原生-5-732", + "uuid": "云原生-5-733", "seg": [ [ [ "zookeeper", "场景", "案例", - "分析" + "分析", + "场景案例" ] ] ], - "level": "2", + "level": { + "min": 0.06802104899930986, + "max": 0.06806418219461696 + }, "related_data": { "blog": { "data_id": [ - "80955110", - "77784171", - "85063868", - "52386229", - "53992653", - "53039482", - "109249069", - "106124543" + "80955110@zookeeper@云原生", + "77784171@zookeeper@云原生", + "85063868@zookeeper@云原生", + "52386229@zookeeper@云原生", + "52386229@etcd@云原生", + "53992653@zookeeper@云原生", + "53039482@zookeeper@云原生", + "109249069@zookeeper@云原生", + "106124543@zookeeper@云原生", + "106124543@kafka@云原生" ] } } @@ -30086,7 +35000,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06797791580400275, + "max": 0.06806418219461696 + }, "related_data": {} } } @@ -30104,12 +35021,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06806418219461696, + "max": 0.06815044858523119 + }, "related_data": { "blog": { "data_id": [ - "106901367", - "30635543" + "106901367@微服务@云原生", + "30635543@分布式@云原生" ] } } @@ -30131,7 +35051,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06815044858523119, + "max": 0.06823671497584541 + }, "related_data": {} } } @@ -30142,22 +35065,27 @@ { "数据库单机事务的实现原理": { "data": { - "uuid": "云原生-5-733", + "uuid": "云原生-5-734", "seg": [ [ [ "数据库", "单机", "事务", - "原理" + "原理", + "数据库单机", + "单机事务" ] ] ], - "level": "2", + "level": { + "min": 0.06823671497584541, + "max": 0.06826547043938348 + }, "related_data": { "blog": { "data_id": [ - "7184799" + "7184799@中间件@云原生" ] } } @@ -30167,7 +35095,7 @@ { "经典的X/OpenDTP事务模型": { "data": { - "uuid": "云原生-5-734", + "uuid": "云原生-5-735", "seg": [ [ [ @@ -30175,11 +35103,15 @@ "x", "opendtp", "事务", - "模型" + "模型", + "事务模型" ] ] ], - "level": "2", + "level": { + "min": 0.06826547043938348, + "max": 0.06829422590292154 + }, "related_data": {} } } @@ -30187,31 +35119,36 @@ { "互联网中的分布式事务解决方案": { "data": { - "uuid": "云原生-5-735", + "uuid": "云原生-5-736", "seg": [ [ [ "互联网", "分布式", "事务", - "解决方案" + "解决方案", + "分布式事务", + "事务解决方案" ] ] ], - "level": "2", + "level": { + "min": 0.06829422590292154, + "max": 0.06832298136645962 + }, "related_data": { "blog": { "data_id": [ - "43197665", - "79516298", - "108545380", - "64118963", - "52691210", - "88290514", - "104196903", - "89136666", - "106965828", - "116061960" + "43197665@分布式@云原生", + "79516298@分布式@云原生", + "79516298@微服务@云原生", + "108545380@分布式@云原生", + "64118963@分布式@云原生", + "52691210@中间件@云原生", + "88290514@分布式@云原生", + "104196903@eureka@云原生", + "104196903@cloud@云原生", + "89136666@分布式@云原生" ] } } @@ -30226,11 +35163,15 @@ [ "重新认识", "分布式", - "事务" + "事务", + "分布式事务" ] ] ], - "level": "2", + "level": { + "min": 0.06823671497584541, + "max": 0.06832298136645962 + }, "related_data": {} } } @@ -30243,11 +35184,15 @@ [ "分布式系统", "经典", - "理论" + "理论", + "经典理论" ] ] ], - "level": "2", + "level": { + "min": 0.06780538302277432, + "max": 0.06832298136645962 + }, "related_data": {} } } @@ -30268,7 +35213,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06832298136645962, + "max": 0.06845238095238095 + }, "related_data": {} } } @@ -30282,11 +35230,15 @@ [ "古老", "生命力", - "rpc" + "rpc", + "又有" ] ] ], - "level": "2", + "level": { + "min": 0.06845238095238095, + "max": 0.06858178053830227 + }, "related_data": {} } } @@ -30305,7 +35257,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06858178053830227, + "max": 0.0687111801242236 + }, "related_data": {} } } @@ -30316,7 +35271,7 @@ { "ZeroC Ice的前世今生": { "data": { - "uuid": "云原生-5-736", + "uuid": "云原生-5-737", "seg": [ [ [ @@ -30327,12 +35282,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0687111801242236, + "max": 0.0687543133195307 + }, "related_data": { "blog": { "data_id": [ - "6372444", - "6726754" + "6372444@中间件@云原生", + "6726754@中间件@云原生" ] } } @@ -30342,7 +35300,7 @@ { "ZeroC Ice微服务架构指南": { "data": { - "uuid": "云原生-5-737", + "uuid": "云原生-5-738", "seg": [ [ [ @@ -30351,11 +35309,15 @@ "微", "服务", "架构", - "指南" + "指南", + "架构指南" ] ] ], - "level": "2", + "level": { + "min": 0.0687543133195307, + "max": 0.06879744651483782 + }, "related_data": {} } } @@ -30366,7 +35328,7 @@ { "微服务架构兴起的原因": { "data": { - "uuid": "云原生-6-258", + "uuid": "云原生-6-259", "seg": [ [ [ @@ -30378,7 +35340,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06879744651483782, + "max": 0.06881182424660685 + }, "related_data": {} } } @@ -30386,17 +35351,22 @@ { "不得不提的容器技术": { "data": { - "uuid": "云原生-6-259", + "uuid": "云原生-6-260", "seg": [ [ [ "提", "容器", - "技术" + "技术", + "不得不提", + "容器技术" ] ] ], - "level": "2", + "level": { + "min": 0.06881182424660685, + "max": 0.0688262019783759 + }, "related_data": {} } } @@ -30404,7 +35374,7 @@ { "如何全面理解微服务架构": { "data": { - "uuid": "云原生-6-260", + "uuid": "云原生-6-261", "seg": [ [ [ @@ -30415,20 +35385,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0688262019783759, + "max": 0.06884057971014493 + }, "related_data": { "blog": { "data_id": [ - "80534499", - "80951608", - "69055979", - "72651984", - "76408158", - "115507833", - "88935655", - "83654498", - "78515231", - "93629306" + "80534499@微服务@云原生", + "80951608@微服务@云原生", + "69055979@服务发现@云原生", + "72651984@微服务@云原生", + "76408158@微服务@云原生", + "115507833@微服务@云原生", + "88935655@服务发现@云原生", + "83654498@服务发现@云原生", + "78515231@docker@云原生", + "93629306@eureka@云原生" ] } } @@ -30437,7 +35410,7 @@ } ], "data": { - "uuid": "云原生-5-738", + "uuid": "云原生-5-739", "seg": [ [ [ @@ -30448,7 +35421,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06879744651483782, + "max": 0.06884057971014493 + }, "related_data": {} } } @@ -30464,11 +35440,15 @@ "微", "服务", "架构", - "指南" + "指南", + "架构指南" ] ] ], - "level": "2", + "level": { + "min": 0.0687111801242236, + "max": 0.06884057971014493 + }, "related_data": {} } } @@ -30484,7 +35464,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06832298136645962, + "max": 0.06884057971014493 + }, "related_data": {} } } @@ -30498,7 +35481,7 @@ { "复杂的CPU与单纯的内存": { "data": { - "uuid": "云原生-5-739", + "uuid": "云原生-5-740", "seg": [ [ [ @@ -30509,12 +35492,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06884057971014493, + "max": 0.0689052795031056 + }, "related_data": { "blog": { "data_id": [ - "110914585", - "51282415" + "110914585@控制器@云原生", + "89502404@控制器@云原生", + "110430622@控制器@云原生", + "112519369@控制器@云原生", + "89600703@控制器@云原生", + "88264682@控制器@云原生", + "117901084@控制器@云原生", + "106382148@控制器@云原生", + "108032120@控制器@云原生", + "51282415@控制器@云原生" ] } } @@ -30524,7 +35518,7 @@ { "深入理解不一致性内存": { "data": { - "uuid": "云原生-5-740", + "uuid": "云原生-5-741", "seg": [ [ [ @@ -30534,7 +35528,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0689052795031056, + "max": 0.06896997929606626 + }, "related_data": {} } } @@ -30546,11 +35543,15 @@ [ [ "内存", - "知识" + "知识", + "不知道" ] ] ], - "level": "2", + "level": { + "min": 0.06884057971014493, + "max": 0.06896997929606626 + }, "related_data": {} } } @@ -30565,11 +35566,15 @@ "内存", "计算技术", "前世", - "今生" + "今生", + "内存计算技术" ] ] ], - "level": "2", + "level": { + "min": 0.06896997929606626, + "max": 0.06909937888198758 + }, "related_data": {} } } @@ -30580,7 +35585,7 @@ { "缓存概述": { "data": { - "uuid": "云原生-5-741", + "uuid": "云原生-5-742", "seg": [ [ [ @@ -30589,7 +35594,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06909937888198758, + "max": 0.0691317287784679 + }, "related_data": {} } } @@ -30597,7 +35605,7 @@ { "缓存实现的几种方式": { "data": { - "uuid": "云原生-5-742", + "uuid": "云原生-5-743", "seg": [ [ [ @@ -30606,15 +35614,24 @@ ] ] ], - "level": "2", - "related_data": {} + "level": { + "min": 0.0691317287784679, + "max": 0.06916407867494824 + }, + "related_data": { + "blog": { + "data_id": [ + "110087331@中间件@云原生" + ] + } + } } } }, { "Memcache的内存管理技术": { "data": { - "uuid": "云原生-5-743", + "uuid": "云原生-5-744", "seg": [ [ [ @@ -30625,11 +35642,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06916407867494824, + "max": 0.06919642857142858 + }, "related_data": { "blog": { "data_id": [ - "113733598" + "53081687@docker@云原生", + "113733598@控制器@云原生", + "107587812@cloud@云原生", + "103374906@mesh@云原生" ] } } @@ -30639,7 +35662,7 @@ { "Redis的独特之处": { "data": { - "uuid": "云原生-5-744", + "uuid": "云原生-5-745", "seg": [ [ [ @@ -30649,7 +35672,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06919642857142858, + "max": 0.0692287784679089 + }, "related_data": {} } } @@ -30667,7 +35693,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06909937888198758, + "max": 0.0692287784679089 + }, "related_data": {} } } @@ -30678,7 +35707,7 @@ { "SAP HANA": { "data": { - "uuid": "云原生-5-745", + "uuid": "云原生-5-746", "seg": [ [ [ @@ -30687,11 +35716,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0692287784679089, + "max": 0.069271911663216 + }, "related_data": { "blog": { "data_id": [ - "5772874" + "5772874@中间件@云原生" ] } } @@ -30701,7 +35733,7 @@ { "Hazelcast": { "data": { - "uuid": "云原生-5-746", + "uuid": "云原生-5-747", "seg": [ [ [ @@ -30709,7 +35741,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.069271911663216, + "max": 0.06931504485852312 + }, "related_data": {} } } @@ -30717,7 +35752,7 @@ { "VoltDB": { "data": { - "uuid": "云原生-5-747", + "uuid": "云原生-5-748", "seg": [ [ [ @@ -30725,7 +35760,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06931504485852312, + "max": 0.06935817805383022 + }, "related_data": {} } } @@ -30743,11 +35781,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0692287784679089, + "max": 0.06935817805383022 + }, "related_data": { "blog": { "data_id": [ - "78142540" + "78142540@阿里云@云原生" ] } } @@ -30765,7 +35806,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06884057971014493, + "max": 0.06935817805383022 + }, "related_data": {} } } @@ -30786,7 +35830,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06935817805383022, + "max": 0.0694321206743567 + }, "related_data": {} } } @@ -30805,7 +35852,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0694321206743567, + "max": 0.06950606329488317 + }, "related_data": {} } } @@ -30824,7 +35874,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06950606329488317, + "max": 0.06958000591540964 + }, "related_data": {} } } @@ -30842,7 +35895,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06958000591540964, + "max": 0.06965394853593611 + }, "related_data": {} } } @@ -30858,15 +35914,19 @@ "linux", "分布式", "存储系统", - "ceph" + "ceph", + "分布式存储系统" ] ] ], - "level": "2", + "level": { + "min": 0.06965394853593611, + "max": 0.06972789115646258 + }, "related_data": { "blog": { "data_id": [ - "118110564" + "118110564@云原生@云原生" ] } } @@ -30886,7 +35946,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06972789115646258, + "max": 0.06980183377698905 + }, "related_data": {} } } @@ -30900,15 +35963,19 @@ [ "软件", "定义", - "存储" + "存储", + "软件定义" ] ] ], - "level": "2", + "level": { + "min": 0.06980183377698905, + "max": 0.06987577639751552 + }, "related_data": { "blog": { "data_id": [ - "89156724" + "89156724@CNCF@云原生" ] } } @@ -30924,11 +35991,15 @@ "解析", "分布式", "文件", - "存储" + "存储", + "分布式文件" ] ] ], - "level": "2", + "level": { + "min": 0.06935817805383022, + "max": 0.06987577639751552 + }, "related_data": {} } } @@ -30945,11 +36016,15 @@ [ "说", "actor", - "模型" + "模型", + "不得不说" ] ] ], - "level": "2", + "level": { + "min": 0.06987577639751552, + "max": 0.07000517598343685 + }, "related_data": {} } } @@ -30966,7 +36041,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07000517598343685, + "max": 0.07013457556935818 + }, "related_data": {} } } @@ -30984,12 +36062,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07013457556935818, + "max": 0.0702639751552795 + }, "related_data": { "blog": { "data_id": [ - "54691618", - "38168025" + "54691618@kafka@云原生", + "38168025@分布式@云原生" ] } } @@ -31009,14 +36090,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0702639751552795, + "max": 0.07039337474120083 + }, "related_data": { "blog": { "data_id": [ - "76228522", - "1726553", - "6689489", - "104127040" + "76228522@分布式@云原生", + "1726553@分布式@云原生", + "6689489@分布式@云原生", + "104127040@cloud@云原生" ] } } @@ -31034,7 +36118,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.06987577639751552, + "max": 0.07039337474120083 + }, "related_data": {} } } @@ -31048,7 +36135,7 @@ { "Lucene": { "data": { - "uuid": "云原生-5-748", + "uuid": "云原生-5-749", "seg": [ [ [ @@ -31056,11 +36143,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07039337474120083, + "max": 0.07047964113181504 + }, "related_data": { "blog": { "data_id": [ - "6827391" + "6827391@go@云原生" ] } } @@ -31070,7 +36160,7 @@ { "Solr": { "data": { - "uuid": "云原生-5-749", + "uuid": "云原生-5-750", "seg": [ [ [ @@ -31078,7 +36168,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07047964113181504, + "max": 0.07056590752242926 + }, "related_data": {} } } @@ -31086,7 +36179,7 @@ { "ElasticSearch": { "data": { - "uuid": "云原生-5-750", + "uuid": "云原生-5-751", "seg": [ [ [ @@ -31094,8 +36187,21 @@ ] ] ], - "level": "2", - "related_data": {} + "level": { + "min": 0.07056590752242926, + "max": 0.07065217391304347 + }, + "related_data": { + "blog": { + "data_id": [ + "111594267@docker@云原生", + "116431436@分布式@云原生", + "114696262@consul@云原生", + "102728604@运维@云原生", + "117374349@分布式@云原生" + ] + } + } } } } @@ -31109,7 +36215,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07039337474120083, + "max": 0.07065217391304347 + }, "related_data": {} } } @@ -31120,7 +36229,7 @@ { "JEE专属的JMS": { "data": { - "uuid": "云原生-5-751", + "uuid": "云原生-5-752", "seg": [ [ [ @@ -31130,12 +36239,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07065217391304347, + "max": 0.07071687370600413 + }, "related_data": { "blog": { "data_id": [ - "23391967", - "78657177" + "23391967@中间件@云原生", + "78657177@中间件@云原生" ] } } @@ -31145,7 +36257,7 @@ { "生生不息的ActiveMQ": { "data": { - "uuid": "云原生-5-752", + "uuid": "云原生-5-753", "seg": [ [ [ @@ -31154,20 +36266,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07071687370600413, + "max": 0.0707815734989648 + }, "related_data": { "blog": { "data_id": [ - "78842061", - "7968886", - "81283951", - "5193464", - "74905616", - "52777526", - "109775813", - "108987860", - "53572400", - "54176520" + "78842061@中间件@云原生", + "7968886@中间件@云原生", + "81283951@中间件@云原生", + "5193464@中间件@云原生", + "74905616@中间件@云原生", + "52777526@中间件@云原生", + "109775813@中间件@云原生", + "108987860@分布式@云原生", + "108987860@中间件@云原生", + "53572400@中间件@云原生" ] } } @@ -31177,7 +36292,7 @@ { "RabbitMQ": { "data": { - "uuid": "云原生-5-753", + "uuid": "云原生-5-754", "seg": [ [ [ @@ -31185,20 +36300,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0707815734989648, + "max": 0.07084627329192546 + }, "related_data": { "blog": { "data_id": [ - "84101852", - "116243905", - "79371312", - "72782138", - "110039741", - "100167717", - "114321124", - "88363376", - "86590758", - "54315940" + "84101852@中间件@云原生", + "79371312@中间件@云原生", + "116243905@中间件@云原生", + "72782138@中间件@云原生", + "110039741@docker@云原生", + "100167717@中间件@云原生", + "114321124@中间件@云原生", + "88363376@中间件@云原生", + "86590758@中间件@云原生", + "54315940@中间件@云原生" ] } } @@ -31208,7 +36326,7 @@ { "Kafka": { "data": { - "uuid": "云原生-5-754", + "uuid": "云原生-5-755", "seg": [ [ [ @@ -31216,20 +36334,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07084627329192546, + "max": 0.07091097308488611 + }, "related_data": { "blog": { "data_id": [ - "80271853", - "81283142", - "85395080", - "52295772", - "99652448", - "23743821", - "116465216", - "64190798", - "80950337", - "53524884" + "81283142@kafka@云原生", + "85395080@kafka@云原生", + "52295772@kafka@云原生", + "99652448@kafka@云原生", + "23743821@分布式@云原生", + "23743821@kafka@云原生", + "116465216@中间件@云原生", + "64190798@中间件@云原生", + "116465216@kafka@云原生", + "64190798@kafka@云原生" ] } } @@ -31243,19 +36364,24 @@ [ [ "消息", - "队列" + "队列", + "消息队列" ] ] ], - "level": "2", + "level": { + "min": 0.07065217391304347, + "max": 0.07091097308488611 + }, "related_data": { "blog": { "data_id": [ - "80217591", - "88863904", - "109120499", - "80624521", - "51945408" + "80217591@中间件@云原生", + "88863904@分布式@云原生", + "88863904@中间件@云原生", + "109120499@中间件@云原生", + "80624521@中间件@云原生", + "51945408@分布式@云原生" ] } } @@ -31273,11 +36399,16 @@ [ "消息", "队列", - "中间件" + "中间件", + "消息队列", + "队列中间件" ] ] ], - "level": "2", + "level": { + "min": 0.07039337474120083, + "max": 0.07091097308488611 + }, "related_data": {} } } @@ -31299,11 +36430,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07091097308488611, + "max": 0.07116977225672877 + }, "related_data": { "blog": { "data_id": [ - "83784684" + "83784684@中间件@云原生" ] } } @@ -31320,16 +36454,20 @@ "diy", "难度", "分布式", - "集群" + "集群", + "分布式集群" ] ] ], - "level": "2", + "level": { + "min": 0.07116977225672877, + "max": 0.07142857142857142 + }, "related_data": { "blog": { "data_id": [ - "50512442", - "103486958" + "50512442@docker@云原生", + "103486958@分布式@云原生" ] } } @@ -31347,7 +36485,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07091097308488611, + "max": 0.07142857142857142 + }, "related_data": {} } } @@ -31363,7 +36504,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.03571428571428571, + "max": 0.07142857142857142 + }, "related_data": {} } } @@ -31382,7 +36526,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07142857142857142, + "max": 0.07285714285714286 + }, "related_data": {} } } @@ -31402,11 +36549,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07285714285714286, + "max": 0.07303571428571429 + }, "related_data": { "blog": { "data_id": [ - "104280493" + "104280493@云原生@云原生" ] } } @@ -31421,11 +36571,15 @@ [ [ "命令行", - "参数" + "参数", + "命令行参数" ] ] ], - "level": "2", + "level": { + "min": 0.07303571428571429, + "max": 0.07321428571428572 + }, "related_data": {} } } @@ -31442,7 +36596,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07321428571428572, + "max": 0.07339285714285715 + }, "related_data": {} } } @@ -31459,7 +36616,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07339285714285715, + "max": 0.07357142857142857 + }, "related_data": {} } } @@ -31476,7 +36636,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07357142857142857, + "max": 0.07375 + }, "related_data": {} } } @@ -31494,7 +36657,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.07375, + "max": 0.07392857142857143 + }, "related_data": {} } } @@ -31511,7 +36677,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.07392857142857143, + "max": 0.07410714285714286 + }, "related_data": {} } } @@ -31527,7 +36696,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07410714285714286, + "max": 0.07428571428571429 + }, "related_data": {} } } @@ -31542,7 +36714,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07285714285714286, + "max": 0.07428571428571429 + }, "related_data": {} } } @@ -31561,7 +36736,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07428571428571429, + "max": 0.07448979591836735 + }, "related_data": {} } } @@ -31577,7 +36755,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07448979591836735, + "max": 0.0746938775510204 + }, "related_data": {} } } @@ -31588,7 +36769,7 @@ { "短变量声明": { "data": { - "uuid": "云原生-5-755", + "uuid": "云原生-5-756", "seg": [ [ [ @@ -31598,7 +36779,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0746938775510204, + "max": 0.07474489795918367 + }, "related_data": {} } } @@ -31606,7 +36790,7 @@ { "指针": { "data": { - "uuid": "云原生-5-756", + "uuid": "云原生-5-757", "seg": [ [ [ @@ -31614,7 +36798,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07474489795918367, + "max": 0.07479591836734693 + }, "related_data": {} } } @@ -31622,7 +36809,7 @@ { "new函数": { "data": { - "uuid": "云原生-5-757", + "uuid": "云原生-5-758", "seg": [ [ [ @@ -31631,11 +36818,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07479591836734693, + "max": 0.0748469387755102 + }, "related_data": { "blog": { "data_id": [ - "21281933" + "21281933@容器@云原生" ] } } @@ -31645,7 +36835,7 @@ { "变量的生命周期": { "data": { - "uuid": "云原生-5-758", + "uuid": "云原生-5-759", "seg": [ [ [ @@ -31654,7 +36844,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0748469387755102, + "max": 0.07489795918367347 + }, "related_data": {} } } @@ -31669,7 +36862,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0746938775510204, + "max": 0.07489795918367347 + }, "related_data": {} } } @@ -31680,7 +36876,7 @@ { "多重赋值": { "data": { - "uuid": "云原生-5-759", + "uuid": "云原生-5-760", "seg": [ [ [ @@ -31688,7 +36884,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07489795918367347, + "max": 0.075 + }, "related_data": {} } } @@ -31696,16 +36895,20 @@ { "可赋值性": { "data": { - "uuid": "云原生-5-760", + "uuid": "云原生-5-761", "seg": [ [ [ "赋值", - "性" + "性", + "赋值性" ] ] ], - "level": "2", + "level": { + "min": 0.075, + "max": 0.07510204081632653 + }, "related_data": {} } } @@ -31720,7 +36923,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07489795918367347, + "max": 0.07510204081632653 + }, "related_data": {} } } @@ -31733,11 +36939,15 @@ [ [ "类型", - "声明" + "声明", + "类型声明" ] ] ], - "level": "2", + "level": { + "min": 0.07510204081632653, + "max": 0.07530612244897959 + }, "related_data": {} } } @@ -31751,7 +36961,7 @@ { "远程导入": { "data": { - "uuid": "云原生-6-261", + "uuid": "云原生-6-262", "seg": [ [ [ @@ -31760,11 +36970,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07530612244897959, + "max": 0.07535714285714284 + }, "related_data": { "blog": { "data_id": [ - "75363642" + "75363642@控制器@云原生" ] } } @@ -31774,7 +36987,7 @@ { "命名导入": { "data": { - "uuid": "云原生-6-262", + "uuid": "云原生-6-263", "seg": [ [ [ @@ -31783,14 +36996,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07535714285714284, + "max": 0.07540816326530611 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-761", + "uuid": "云原生-5-762", "seg": [ [ [ @@ -31798,7 +37014,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07530612244897959, + "max": 0.07540816326530611 + }, "related_data": {} } } @@ -31806,7 +37025,7 @@ { "包初始化": { "data": { - "uuid": "云原生-5-762", + "uuid": "云原生-5-763", "seg": [ [ [ @@ -31815,7 +37034,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07540816326530611, + "max": 0.07551020408163264 + }, "related_data": {} } } @@ -31831,7 +37053,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07530612244897959, + "max": 0.07551020408163264 + }, "related_data": {} } } @@ -31847,7 +37072,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07551020408163264, + "max": 0.0757142857142857 + }, "related_data": {} } } @@ -31862,7 +37090,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07428571428571429, + "max": 0.0757142857142857 + }, "related_data": {} } } @@ -31881,7 +37112,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0757142857142857, + "max": 0.07595238095238094 + }, "related_data": {} } } @@ -31897,7 +37131,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07595238095238094, + "max": 0.07619047619047618 + }, "related_data": {} } } @@ -31913,7 +37150,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07619047619047618, + "max": 0.07642857142857143 + }, "related_data": {} } } @@ -31929,7 +37169,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07642857142857143, + "max": 0.07666666666666666 + }, "related_data": {} } } @@ -31940,17 +37183,22 @@ { "字符串字面量": { "data": { - "uuid": "云原生-5-763", + "uuid": "云原生-5-764", "seg": [ [ [ "字符串", "字面", - "量" + "量", + "字符串字面", + "字面量" ] ] ], - "level": "2", + "level": { + "min": 0.07666666666666666, + "max": 0.07671428571428571 + }, "related_data": {} } } @@ -31958,7 +37206,7 @@ { "Unicode": { "data": { - "uuid": "云原生-5-764", + "uuid": "云原生-5-765", "seg": [ [ [ @@ -31966,7 +37214,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07671428571428571, + "max": 0.07676190476190475 + }, "related_data": {} } } @@ -31974,7 +37225,7 @@ { "UTF-8": { "data": { - "uuid": "云原生-5-765", + "uuid": "云原生-5-766", "seg": [ [ [ @@ -31982,7 +37233,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07676190476190475, + "max": 0.0768095238095238 + }, "related_data": {} } } @@ -31990,7 +37244,7 @@ { "字符串和字节slice": { "data": { - "uuid": "云原生-5-766", + "uuid": "云原生-5-767", "seg": [ [ [ @@ -32002,11 +37256,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0768095238095238, + "max": 0.07685714285714285 + }, "related_data": { "blog": { "data_id": [ - "113532665" + "113532665@cloud@云原生" ] } } @@ -32016,7 +37273,7 @@ { "字符串和数字的相互转换": { "data": { - "uuid": "云原生-5-767", + "uuid": "云原生-5-768", "seg": [ [ [ @@ -32025,11 +37282,15 @@ [ "数字", "相互", - "转换" + "转换", + "相互转换" ] ] ], - "level": "2", + "level": { + "min": 0.07685714285714285, + "max": 0.07690476190476189 + }, "related_data": {} } } @@ -32044,7 +37305,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07666666666666666, + "max": 0.07690476190476189 + }, "related_data": {} } } @@ -32055,7 +37319,7 @@ { "常量生成器iota": { "data": { - "uuid": "云原生-5-768", + "uuid": "云原生-5-769", "seg": [ [ [ @@ -32065,7 +37329,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07690476190476189, + "max": 0.07702380952380952 + }, "related_data": {} } } @@ -32073,16 +37340,20 @@ { "无类型常量": { "data": { - "uuid": "云原生-5-769", + "uuid": "云原生-5-770", "seg": [ [ [ "类型", - "常量" + "常量", + "类型常量" ] ] ], - "level": "2", + "level": { + "min": 0.07702380952380952, + "max": 0.07714285714285714 + }, "related_data": {} } } @@ -32097,7 +37368,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07690476190476189, + "max": 0.07714285714285714 + }, "related_data": {} } } @@ -32108,11 +37382,15 @@ "seg": [ [ [ - "数据" + "数据", + "基本数据" ] ] ], - "level": "2", + "level": { + "min": 0.0757142857142857, + "max": 0.07714285714285714 + }, "related_data": {} } } @@ -32131,7 +37409,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07714285714285714, + "max": 0.07738095238095238 + }, "related_data": {} } } @@ -32142,7 +37423,7 @@ { "append函数": { "data": { - "uuid": "云原生-5-770", + "uuid": "云原生-5-771", "seg": [ [ [ @@ -32151,7 +37432,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07738095238095238, + "max": 0.0775 + }, "related_data": {} } } @@ -32159,16 +37443,20 @@ { "slice就地修改": { "data": { - "uuid": "云原生-5-771", + "uuid": "云原生-5-772", "seg": [ [ [ "slice", - "修改" + "修改", + "就地" ] ] ], - "level": "2", + "level": { + "min": 0.0775, + "max": 0.07761904761904762 + }, "related_data": {} } } @@ -32183,7 +37471,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07738095238095238, + "max": 0.07761904761904762 + }, "related_data": {} } } @@ -32199,18 +37490,20 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07761904761904762, + "max": 0.07785714285714285 + }, "related_data": { "blog": { "data_id": [ - "41889579", - "52706283", - "38035577", - "34856603", - "85175095", - "14164421", - "58221151", - "72862373" + "41889579@容器@云原生", + "52706283@容器@云原生", + "34856603@go@云原生", + "85175095@分布式@云原生", + "14164421@容器@云原生", + "58221151@容器@云原生", + "72862373@容器@云原生" ] } } @@ -32223,18 +37516,24 @@ { "结构体字面量": { "data": { - "uuid": "云原生-5-772", + "uuid": "云原生-5-773", "seg": [ [ [ "结构", "体", "字面", - "量" + "量", + "结构体", + "体字面", + "字面量" ] ] ], - "level": "2", + "level": { + "min": 0.07785714285714285, + "max": 0.07793650793650793 + }, "related_data": {} } } @@ -32242,20 +37541,24 @@ { "结构体比较": { "data": { - "uuid": "云原生-5-773", + "uuid": "云原生-5-774", "seg": [ [ [ "结构", - "体" + "体", + "结构体" ] ] ], - "level": "2", + "level": { + "min": 0.07793650793650793, + "max": 0.07801587301587301 + }, "related_data": { "blog": { "data_id": [ - "96753385" + "96753385@容器@云原生" ] } } @@ -32265,13 +37568,15 @@ { "结构体嵌套和匿名成员": { "data": { - "uuid": "云原生-5-774", + "uuid": "云原生-5-775", "seg": [ [ [ "结构", "体", - "嵌套" + "嵌套", + "结构体", + "体嵌套" ], [ "匿名", @@ -32279,7 +37584,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07801587301587301, + "max": 0.07809523809523809 + }, "related_data": {} } } @@ -32291,11 +37599,15 @@ [ [ "结构", - "体" + "体", + "结构体" ] ] ], - "level": "2", + "level": { + "min": 0.07785714285714285, + "max": 0.07809523809523809 + }, "related_data": {} } } @@ -32311,7 +37623,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07809523809523809, + "max": 0.07833333333333334 + }, "related_data": {} } } @@ -32331,7 +37646,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07833333333333334, + "max": 0.07857142857142857 + }, "related_data": {} } } @@ -32347,7 +37665,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07714285714285714, + "max": 0.07857142857142857 + }, "related_data": {} } } @@ -32363,11 +37684,15 @@ [ [ "函数", - "声明" + "声明", + "函数声明" ] ] ], - "level": "2", + "level": { + "min": 0.07857142857142857, + "max": 0.07863945578231292 + }, "related_data": {} } } @@ -32383,7 +37708,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07863945578231292, + "max": 0.07870748299319728 + }, "related_data": {} } } @@ -32399,7 +37727,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07870748299319728, + "max": 0.07877551020408163 + }, "related_data": {} } } @@ -32410,7 +37741,7 @@ { "错误处理策略": { "data": { - "uuid": "云原生-5-775", + "uuid": "云原生-5-776", "seg": [ [ [ @@ -32419,7 +37750,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07877551020408163, + "max": 0.0788095238095238 + }, "related_data": {} } } @@ -32427,7 +37761,7 @@ { "文件结束标识": { "data": { - "uuid": "云原生-5-776", + "uuid": "云原生-5-777", "seg": [ [ [ @@ -32437,7 +37771,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0788095238095238, + "max": 0.07884353741496598 + }, "related_data": {} } } @@ -32450,7 +37787,10 @@ [] ] ], - "level": "2", + "level": { + "min": 0.07877551020408163, + "max": 0.07884353741496598 + }, "related_data": {} } } @@ -32467,7 +37807,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07884353741496598, + "max": 0.07891156462585033 + }, "related_data": {} } } @@ -32484,7 +37827,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07891156462585033, + "max": 0.0789795918367347 + }, "related_data": {} } } @@ -32502,7 +37848,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0789795918367347, + "max": 0.07904761904761905 + }, "related_data": {} } } @@ -32519,7 +37868,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07904761904761905, + "max": 0.0791156462585034 + }, "related_data": {} } } @@ -32535,7 +37887,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0791156462585034, + "max": 0.07918367346938776 + }, "related_data": {} } } @@ -32551,7 +37906,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07918367346938776, + "max": 0.07925170068027211 + }, "related_data": {} } } @@ -32563,11 +37921,15 @@ "seg": [ [ [ - "语法" + "语法", + "基本语法" ] ] ], - "level": "2", + "level": { + "min": 0.07925170068027211, + "max": 0.07931972789115646 + }, "related_data": {} } } @@ -32584,11 +37946,15 @@ [ "返回值", "内存", - "布局" + "布局", + "内存布局" ] ] ], - "level": "2", + "level": { + "min": 0.07931972789115646, + "max": 0.07938775510204081 + }, "related_data": {} } } @@ -32605,7 +37971,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07938775510204081, + "max": 0.07945578231292517 + }, "related_data": {} } } @@ -32622,11 +37991,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07945578231292517, + "max": 0.07952380952380952 + }, "related_data": { "blog": { "data_id": [ - "15416015" + "15416015@容器@云原生" ] } } @@ -32641,11 +38013,15 @@ [ [ "宏", - "函数" + "函数", + "宏函数" ] ] ], - "level": "2", + "level": { + "min": 0.07952380952380952, + "max": 0.07959183673469387 + }, "related_data": {} } } @@ -32658,11 +38034,15 @@ [ [ "函数调用", - "规范" + "规范", + "函数调用规范" ] ] ], - "level": "2", + "level": { + "min": 0.07959183673469387, + "max": 0.07965986394557824 + }, "related_data": {} } } @@ -32679,7 +38059,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07965986394557824, + "max": 0.07972789115646259 + }, "related_data": {} } } @@ -32698,7 +38081,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07972789115646259, + "max": 0.07979591836734694 + }, "related_data": {} } } @@ -32711,11 +38097,15 @@ [ [ "方法", - "函数" + "函数", + "方法函数" ] ] ], - "level": "2", + "level": { + "min": 0.07979591836734694, + "max": 0.07986394557823129 + }, "related_data": {} } } @@ -32737,7 +38127,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07986394557823129, + "max": 0.07993197278911565 + }, "related_data": {} } } @@ -32755,7 +38148,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07993197278911565, + "max": 0.08 + }, "related_data": {} } } @@ -32770,7 +38166,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07857142857142857, + "max": 0.08 + }, "related_data": {} } } @@ -32786,11 +38185,15 @@ [ [ "方法", - "声明" + "声明", + "方法声明" ] ] ], - "level": "2", + "level": { + "min": 0.08, + "max": 0.08023809523809523 + }, "related_data": {} } } @@ -32804,11 +38207,15 @@ [ "指针", "接收者", - "方法" + "方法", + "指针接收者" ] ] ], - "level": "2", + "level": { + "min": 0.08023809523809523, + "max": 0.08047619047619048 + }, "related_data": {} } } @@ -32823,11 +38230,15 @@ "结构", "体内", "嵌", - "类型" + "类型", + "结构体内" ] ] ], - "level": "2", + "level": { + "min": 0.08047619047619048, + "max": 0.08071428571428571 + }, "related_data": {} } } @@ -32847,12 +38258,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08071428571428571, + "max": 0.08095238095238094 + }, "related_data": { "blog": { "data_id": [ - "82631123", - "43668349" + "82631123@cloud@云原生" ] } } @@ -32876,7 +38289,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08095238095238094, + "max": 0.08119047619047619 + }, "related_data": {} } } @@ -32892,7 +38308,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08119047619047619, + "max": 0.08142857142857142 + }, "related_data": {} } } @@ -32907,7 +38326,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08, + "max": 0.08142857142857142 + }, "related_data": {} } } @@ -32927,7 +38349,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08142857142857142, + "max": 0.0815126050420168 + }, "related_data": {} } } @@ -32943,7 +38368,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0815126050420168, + "max": 0.08159663865546217 + }, "related_data": {} } } @@ -32959,7 +38387,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08159663865546217, + "max": 0.08168067226890756 + }, "related_data": {} } } @@ -32978,7 +38409,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08168067226890756, + "max": 0.08176470588235293 + }, "related_data": {} } } @@ -32995,7 +38429,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08176470588235293, + "max": 0.08184873949579831 + }, "related_data": {} } } @@ -33013,12 +38450,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08184873949579831, + "max": 0.08193277310924368 + }, "related_data": { "blog": { "data_id": [ - "39337331", - "80179680" + "39337331@容器@云原生", + "80179680@容器@云原生" ] } } @@ -33038,7 +38478,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08193277310924368, + "max": 0.08201680672268907 + }, "related_data": {} } } @@ -33055,12 +38498,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08201680672268907, + "max": 0.08210084033613445 + }, "related_data": { "blog": { "data_id": [ - "50086577", - "86678486" + "50086577@mesh@云原生", + "86678486@docker@云原生" ] } } @@ -33075,11 +38521,15 @@ [ [ "类型", - "断言" + "断言", + "类型断言" ] ] ], - "level": "2", + "level": { + "min": 0.08210084033613445, + "max": 0.08218487394957982 + }, "related_data": {} } } @@ -33093,11 +38543,15 @@ [ "类型", "断言", - "识别" + "识别", + "类型断言" ] ] ], - "level": "2", + "level": { + "min": 0.08218487394957982, + "max": 0.0822689075630252 + }, "related_data": {} } } @@ -33112,11 +38566,15 @@ "接口类型", "断言", "查询", - "特性" + "特性", + "接口类型断言" ] ] ], - "level": "2", + "level": { + "min": 0.0822689075630252, + "max": 0.08235294117647059 + }, "related_data": {} } } @@ -33129,11 +38587,15 @@ [ [ "类型", - "分支" + "分支", + "类型分支" ] ] ], - "level": "2", + "level": { + "min": 0.08235294117647059, + "max": 0.08243697478991596 + }, "related_data": {} } } @@ -33149,7 +38611,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08243697478991596, + "max": 0.08252100840336134 + }, "related_data": {} } } @@ -33160,7 +38625,7 @@ { "文档与源代码": { "data": { - "uuid": "云原生-5-777", + "uuid": "云原生-5-778", "seg": [ [ [ @@ -33169,7 +38634,10 @@ [] ] ], - "level": "2", + "level": { + "min": 0.08252100840336134, + "max": 0.08254201680672268 + }, "related_data": {} } } @@ -33180,7 +38648,7 @@ { "log包": { "data": { - "uuid": "云原生-6-263", + "uuid": "云原生-6-264", "seg": [ [ [ @@ -33189,13 +38657,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08254201680672268, + "max": 0.08254901960784312 + }, "related_data": { "blog": { "data_id": [ - "47336269", - "78930070", - "6682211" + "47336269@docker@云原生", + "78930070@mesh@云原生", + "6682211@go@云原生" ] } } @@ -33205,22 +38676,26 @@ { "定制的日志记录器": { "data": { - "uuid": "云原生-6-264", + "uuid": "云原生-6-265", "seg": [ [ [ "定制", "日志", - "记录器" + "记录器", + "日志记录器" ] ] ], - "level": "2", + "level": { + "min": 0.08254901960784312, + "max": 0.08255602240896358 + }, "related_data": { "blog": { "data_id": [ - "117004292", - "88695321" + "117004292@中间件@云原生", + "88695321@docker@云原生" ] } } @@ -33230,7 +38705,7 @@ { "结论": { "data": { - "uuid": "云原生-6-265", + "uuid": "云原生-6-266", "seg": [ [ [ @@ -33238,23 +38713,30 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08255602240896358, + "max": 0.08256302521008402 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-778", + "uuid": "云原生-5-779", "seg": [ [ [ "记录", - "日志" + "日志", + "记录日志" ] ] ], - "level": "2", + "level": { + "min": 0.08254201680672268, + "max": 0.08256302521008402 + }, "related_data": {} } } @@ -33265,7 +38747,7 @@ { "解码JSON": { "data": { - "uuid": "云原生-6-266", + "uuid": "云原生-6-267", "seg": [ [ [ @@ -33274,7 +38756,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08256302521008402, + "max": 0.08257352941176468 + }, "related_data": {} } } @@ -33282,7 +38767,7 @@ { "编码JSON": { "data": { - "uuid": "云原生-6-267", + "uuid": "云原生-6-268", "seg": [ [ [ @@ -33291,12 +38776,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08257352941176468, + "max": 0.08258403361344537 + }, "related_data": { "blog": { "data_id": [ - "88710552", - "109053413" + "88710552@阿里云@云原生", + "109053413@spring@云原生" ] } } @@ -33305,16 +38793,20 @@ } ], "data": { - "uuid": "云原生-5-779", + "uuid": "云原生-5-780", "seg": [ [ [ "编码", - "解码" + "解码", + "编码解码" ] ] ], - "level": "2", + "level": { + "min": 0.08256302521008402, + "max": 0.08258403361344537 + }, "related_data": {} } } @@ -33325,7 +38817,7 @@ { "Writer和Reader接口": { "data": { - "uuid": "云原生-6-268", + "uuid": "云原生-6-269", "seg": [ [ [ @@ -33337,7 +38829,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08258403361344537, + "max": 0.08259103641456582 + }, "related_data": {} } } @@ -33345,7 +38840,7 @@ { "整合并完成工作": { "data": { - "uuid": "云原生-6-269", + "uuid": "云原生-6-270", "seg": [ [ [ @@ -33354,12 +38849,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08259103641456582, + "max": 0.08259803921568626 + }, "related_data": { "blog": { "data_id": [ - "88417152", - "80010967" + "88417152@cloud@云原生", + "80010967@spring@云原生" ] } } @@ -33369,7 +38867,7 @@ { "简单的curl": { "data": { - "uuid": "云原生-6-270", + "uuid": "云原生-6-271", "seg": [ [ [ @@ -33377,14 +38875,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08259803921568626, + "max": 0.08260504201680671 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-780", + "uuid": "云原生-5-781", "seg": [ [ [ @@ -33395,7 +38896,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08258403361344537, + "max": 0.08260504201680671 + }, "related_data": {} } } @@ -33407,11 +38911,15 @@ [ [ "标准", - "库" + "库", + "标准库" ] ] ], - "level": "2", + "level": { + "min": 0.08252100840336134, + "max": 0.08260504201680671 + }, "related_data": {} } } @@ -33425,7 +38933,10 @@ [] ] ], - "level": "2", + "level": { + "min": 0.08260504201680671, + "max": 0.0826890756302521 + }, "related_data": {} } } @@ -33438,11 +38949,15 @@ [ [ "方法", - "集" + "集", + "方法集" ] ] ], - "level": "2", + "level": { + "min": 0.0826890756302521, + "max": 0.08277310924369748 + }, "related_data": {} } } @@ -33458,7 +38973,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08277310924369748, + "max": 0.08285714285714285 + }, "related_data": {} } } @@ -33473,7 +38991,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08142857142857142, + "max": 0.08285714285714285 + }, "related_data": {} } } @@ -33492,11 +39013,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08285714285714285, + "max": 0.08314285714285714 + }, "related_data": { "blog": { "data_id": [ - "81159481" + "81159481@go@云原生" ] } } @@ -33509,7 +39033,7 @@ { "无缓冲通道": { "data": { - "uuid": "云原生-5-781", + "uuid": "云原生-5-782", "seg": [ [ [ @@ -33518,7 +39042,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08314285714285714, + "max": 0.08321428571428571 + }, "related_data": {} } } @@ -33526,7 +39053,7 @@ { "管道": { "data": { - "uuid": "云原生-5-782", + "uuid": "云原生-5-783", "seg": [ [ [ @@ -33534,7 +39061,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08321428571428571, + "max": 0.08328571428571428 + }, "related_data": {} } } @@ -33542,7 +39072,7 @@ { "单向通道类型": { "data": { - "uuid": "云原生-5-783", + "uuid": "云原生-5-784", "seg": [ [ [ @@ -33552,7 +39082,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08328571428571428, + "max": 0.08335714285714285 + }, "related_data": {} } } @@ -33560,7 +39093,7 @@ { "缓冲通道": { "data": { - "uuid": "云原生-5-784", + "uuid": "云原生-5-785", "seg": [ [ [ @@ -33569,7 +39102,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08335714285714285, + "max": 0.08342857142857142 + }, "related_data": {} } } @@ -33584,7 +39120,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08314285714285714, + "max": 0.08342857142857142 + }, "related_data": {} } } @@ -33601,7 +39140,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08342857142857142, + "max": 0.08371428571428571 + }, "related_data": {} } } @@ -33618,7 +39160,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08371428571428571, + "max": 0.08399999999999999 + }, "related_data": {} } } @@ -33634,7 +39179,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08399999999999999, + "max": 0.08428571428571428 + }, "related_data": {} } } @@ -33652,7 +39200,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08285714285714285, + "max": 0.08428571428571428 + }, "related_data": {} } } @@ -33671,7 +39222,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.08428571428571428, + "max": 0.08452380952380953 + }, "related_data": {} } } @@ -33694,7 +39248,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.08452380952380953, + "max": 0.08476190476190476 + }, "related_data": {} } } @@ -33718,7 +39275,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.08476190476190476, + "max": 0.08499999999999999 + }, "related_data": {} } } @@ -33735,7 +39295,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.08499999999999999, + "max": 0.08523809523809524 + }, "related_data": {} } } @@ -33758,7 +39321,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.08523809523809524, + "max": 0.08547619047619048 + }, "related_data": {} } } @@ -33771,11 +39337,15 @@ [ [ "竞态", - "检测器" + "检测器", + "竞态检测器" ] ] ], - "level": "1", + "level": { + "min": 0.08547619047619048, + "max": 0.08571428571428572 + }, "related_data": {} } } @@ -33792,7 +39362,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.08428571428571428, + "max": 0.08571428571428572 + }, "related_data": {} } } @@ -33811,7 +39384,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08571428571428572, + "max": 0.08591836734693878 + }, "related_data": {} } } @@ -33828,7 +39404,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08591836734693878, + "max": 0.08612244897959183 + }, "related_data": {} } } @@ -33845,7 +39424,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08612244897959183, + "max": 0.08632653061224489 + }, "related_data": {} } } @@ -33862,7 +39444,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08632653061224489, + "max": 0.08653061224489796 + }, "related_data": {} } } @@ -33879,7 +39464,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08653061224489796, + "max": 0.08673469387755102 + }, "related_data": {} } } @@ -33896,7 +39484,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08673469387755102, + "max": 0.08693877551020407 + }, "related_data": {} } } @@ -33907,7 +39498,7 @@ { "工作空间的组织": { "data": { - "uuid": "云原生-5-785", + "uuid": "云原生-5-786", "seg": [ [ [ @@ -33917,7 +39508,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08693877551020407, + "max": 0.08697278911564625 + }, "related_data": {} } } @@ -33925,7 +39519,7 @@ { "包的下载": { "data": { - "uuid": "云原生-5-786", + "uuid": "云原生-5-787", "seg": [ [ [ @@ -33934,7 +39528,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08697278911564625, + "max": 0.08700680272108842 + }, "related_data": {} } } @@ -33942,7 +39539,7 @@ { "包的构建": { "data": { - "uuid": "云原生-5-787", + "uuid": "云原生-5-788", "seg": [ [ [ @@ -33951,7 +39548,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08700680272108842, + "max": 0.0870408163265306 + }, "related_data": {} } } @@ -33959,17 +39559,21 @@ { "包的文档化": { "data": { - "uuid": "云原生-5-788", + "uuid": "云原生-5-789", "seg": [ [ [ "包", "文档", - "化" + "化", + "文档化" ] ] ], - "level": "2", + "level": { + "min": 0.0870408163265306, + "max": 0.08707482993197278 + }, "related_data": {} } } @@ -33977,7 +39581,7 @@ { "内部包": { "data": { - "uuid": "云原生-5-789", + "uuid": "云原生-5-790", "seg": [ [ [ @@ -33986,7 +39590,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08707482993197278, + "max": 0.08710884353741495 + }, "related_data": {} } } @@ -33994,7 +39601,7 @@ { "包的查询": { "data": { - "uuid": "云原生-5-790", + "uuid": "云原生-5-791", "seg": [ [ [ @@ -34003,7 +39610,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08710884353741495, + "max": 0.08714285714285713 + }, "related_data": {} } } @@ -34019,7 +39629,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08693877551020407, + "max": 0.08714285714285713 + }, "related_data": {} } } @@ -34036,7 +39649,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08571428571428572, + "max": 0.08714285714285713 + }, "related_data": {} } } @@ -34057,7 +39673,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08714285714285713, + "max": 0.08738095238095236 + }, "related_data": {} } } @@ -34068,15 +39687,19 @@ { "随机测试": { "data": { - "uuid": "云原生-5-791", + "uuid": "云原生-5-792", "seg": [ [ [ - "随机" + "随机", + "随机测试" ] ] ], - "level": "2", + "level": { + "min": 0.08738095238095236, + "max": 0.0874206349206349 + }, "related_data": {} } } @@ -34084,7 +39707,7 @@ { "测试命令": { "data": { - "uuid": "云原生-5-792", + "uuid": "云原生-5-793", "seg": [ [ [ @@ -34092,7 +39715,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0874206349206349, + "max": 0.08746031746031745 + }, "related_data": {} } } @@ -34100,7 +39726,7 @@ { "白盒测试": { "data": { - "uuid": "云原生-5-793", + "uuid": "云原生-5-794", "seg": [ [ [ @@ -34108,7 +39734,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08746031746031745, + "max": 0.0875 + }, "related_data": {} } } @@ -34116,7 +39745,7 @@ { "外部测试包": { "data": { - "uuid": "云原生-5-794", + "uuid": "云原生-5-795", "seg": [ [ [ @@ -34125,7 +39754,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0875, + "max": 0.08753968253968253 + }, "related_data": {} } } @@ -34133,7 +39765,7 @@ { "编写有效测试": { "data": { - "uuid": "云原生-5-795", + "uuid": "云原生-5-796", "seg": [ [ [ @@ -34141,7 +39773,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08753968253968253, + "max": 0.08757936507936506 + }, "related_data": {} } } @@ -34149,7 +39784,7 @@ { "避免脆弱的测试": { "data": { - "uuid": "云原生-5-796", + "uuid": "云原生-5-797", "seg": [ [ [ @@ -34157,7 +39792,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08757936507936506, + "max": 0.08761904761904761 + }, "related_data": {} } } @@ -34173,7 +39811,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08738095238095236, + "max": 0.08761904761904761 + }, "related_data": {} } } @@ -34189,7 +39830,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08761904761904761, + "max": 0.08785714285714286 + }, "related_data": {} } } @@ -34206,7 +39850,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08785714285714286, + "max": 0.08809523809523809 + }, "related_data": {} } } @@ -34223,7 +39870,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08809523809523809, + "max": 0.08833333333333332 + }, "related_data": {} } } @@ -34240,7 +39890,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08833333333333332, + "max": 0.08857142857142856 + }, "related_data": {} } } @@ -34253,7 +39906,10 @@ [] ] ], - "level": "2", + "level": { + "min": 0.08714285714285713, + "max": 0.08857142857142856 + }, "related_data": {} } } @@ -34277,7 +39933,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08857142857142856, + "max": 0.08880952380952381 + }, "related_data": {} } } @@ -34296,11 +39955,15 @@ [ "递归", "值", - "显示器" + "显示器", + "值显示器" ] ] ], - "level": "2", + "level": { + "min": 0.08880952380952381, + "max": 0.08904761904761904 + }, "related_data": {} } } @@ -34319,11 +39982,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08904761904761904, + "max": 0.08928571428571427 + }, "related_data": { "blog": { "data_id": [ - "100094826" + "100094826@控制器@云原生" ] } } @@ -34339,12 +40005,19 @@ [ "访问", "结构", + "体", + "字段", + "标签", + "结构体", "体字段", - "标签" + "字段标签" ] ] ], - "level": "2", + "level": { + "min": 0.08928571428571427, + "max": 0.08952380952380952 + }, "related_data": {} } } @@ -34362,7 +40035,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08952380952380952, + "max": 0.08976190476190476 + }, "related_data": {} } } @@ -34378,7 +40054,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08976190476190476, + "max": 0.09 + }, "related_data": {} } } @@ -34393,11 +40072,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.08857142857142856, + "max": 0.09 + }, "related_data": { "blog": { "data_id": [ - "81193806" + "81193806@go@云原生" ] } } @@ -34425,7 +40107,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09, + "max": 0.09047619047619047 + }, "related_data": {} } } @@ -34442,7 +40127,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09047619047619047, + "max": 0.09095238095238095 + }, "related_data": {} } } @@ -34460,7 +40148,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09095238095238095, + "max": 0.09142857142857143 + }, "related_data": {} } } @@ -34476,7 +40167,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09, + "max": 0.09142857142857143 + }, "related_data": {} } } @@ -34490,7 +40184,7 @@ { "开发速度": { "data": { - "uuid": "云原生-5-797", + "uuid": "云原生-5-798", "seg": [ [ [ @@ -34499,7 +40193,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09142857142857143, + "max": 0.09160714285714286 + }, "related_data": {} } } @@ -34510,7 +40207,7 @@ { "竞争状态": { "data": { - "uuid": "云原生-6-271", + "uuid": "云原生-6-272", "seg": [ [ [ @@ -34519,7 +40216,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09160714285714286, + "max": 0.09169642857142857 + }, "related_data": {} } } @@ -34535,18 +40235,22 @@ [ [ "原子", - "函数" + "函数", + "原子函数" ] ] ], - "level": "1", + "level": { + "min": 0.09169642857142857, + "max": 0.09178571428571428 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-6-272", + "uuid": "云原生-6-273", "seg": [ [ [ @@ -34555,14 +40259,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09169642857142857, + "max": 0.09178571428571428 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-798", + "uuid": "云原生-5-799", "seg": [ [ [ @@ -34570,7 +40277,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09160714285714286, + "max": 0.09178571428571428 + }, "related_data": {} } } @@ -34581,17 +40291,21 @@ { "用户定义的类型": { "data": { - "uuid": "云原生-6-273", + "uuid": "云原生-6-274", "seg": [ [ [ "用户", "定义", - "类型" + "类型", + "用户定义" ] ] ], - "level": "2", + "level": { + "min": 0.09178571428571428, + "max": 0.09183035714285713 + }, "related_data": {} } } @@ -34607,11 +40321,15 @@ [ [ "内置", - "类型" + "类型", + "内置类型" ] ] ], - "level": "2", + "level": { + "min": 0.09183035714285713, + "max": 0.09184523809523808 + }, "related_data": {} } } @@ -34628,11 +40346,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09184523809523808, + "max": 0.09186011904761904 + }, "related_data": { "blog": { "data_id": [ - "51661276" + "51661276@控制器@云原生" ] } } @@ -34647,18 +40368,22 @@ [ [ "结构", - "类型" + "类型", + "结构类型" ] ] ], - "level": "2", + "level": { + "min": 0.09186011904761904, + "max": 0.09187499999999998 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-6-274", + "uuid": "云原生-6-275", "seg": [ [ [ @@ -34667,7 +40392,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09183035714285713, + "max": 0.09187499999999998 + }, "related_data": {} } } @@ -34675,7 +40403,7 @@ { "嵌入类型": { "data": { - "uuid": "云原生-6-275", + "uuid": "云原生-6-276", "seg": [ [ [ @@ -34684,7 +40412,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09187499999999998, + "max": 0.09191964285714285 + }, "related_data": {} } } @@ -34692,7 +40423,7 @@ { "公开或未公开的标识符": { "data": { - "uuid": "云原生-6-276", + "uuid": "云原生-6-277", "seg": [ [ [ @@ -34702,25 +40433,32 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09191964285714285, + "max": 0.0919642857142857 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-799", + "uuid": "云原生-5-800", "seg": [ [ [ "go", "语言", "类型", - "系统" + "系统", + "类型系统" ] ] ], - "level": "2", + "level": { + "min": 0.09178571428571428, + "max": 0.0919642857142857 + }, "related_data": {} } } @@ -34728,7 +40466,7 @@ { "内存管理": { "data": { - "uuid": "云原生-5-800", + "uuid": "云原生-5-801", "seg": [ [ [ @@ -34737,7 +40475,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0919642857142857, + "max": 0.09214285714285714 + }, "related_data": {} } } @@ -34750,11 +40491,15 @@ [ "go", "编程", - "难题" + "难题", + "编程难题" ] ] ], - "level": "2", + "level": { + "min": 0.09142857142857143, + "max": 0.09214285714285714 + }, "related_data": {} } } @@ -34771,7 +40516,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09214285714285714, + "max": 0.09285714285714286 + }, "related_data": {} } } @@ -34788,7 +40536,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09142857142857143, + "max": 0.09285714285714286 + }, "related_data": {} } } @@ -34804,11 +40555,15 @@ [ [ "程序", - "架构" + "架构", + "程序架构" ] ] ], - "level": "2", + "level": { + "min": 0.09285714285714286, + "max": 0.09321428571428572 + }, "related_data": {} } } @@ -34825,7 +40580,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09321428571428572, + "max": 0.09357142857142857 + }, "related_data": {} } } @@ -34836,7 +40594,7 @@ { "search.go": { "data": { - "uuid": "云原生-5-801", + "uuid": "云原生-5-802", "seg": [ [ [ @@ -34845,16 +40603,19 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09357142857142857, + "max": 0.09369047619047619 + }, "related_data": { "blog": { "data_id": [ - "6746718", - "50714555", - "50925347", - "7242498", - "7526689", - "103396664" + "6746718@go@云原生", + "50714555@控制器@云原生", + "50925347@go@云原生", + "7242498@go@云原生", + "7526689@go@云原生", + "103396664@aws@云原生" ] } } @@ -34864,7 +40625,7 @@ { "feed.go": { "data": { - "uuid": "云原生-5-802", + "uuid": "云原生-5-803", "seg": [ [ [ @@ -34873,7 +40634,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09369047619047619, + "max": 0.0938095238095238 + }, "related_data": {} } } @@ -34881,7 +40645,7 @@ { "match.go default.go": { "data": { - "uuid": "云原生-5-803", + "uuid": "云原生-5-804", "seg": [ [ [ @@ -34891,7 +40655,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0938095238095238, + "max": 0.09392857142857142 + }, "related_data": {} } } @@ -34907,7 +40674,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09357142857142857, + "max": 0.09392857142857142 + }, "related_data": {} } } @@ -34925,7 +40695,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09392857142857142, + "max": 0.09428571428571428 + }, "related_data": {} } } @@ -34938,11 +40711,15 @@ [ "快速", "go", - "程序" + "程序", + "快速开始" ] ] ], - "level": "2", + "level": { + "min": 0.09285714285714286, + "max": 0.09428571428571428 + }, "related_data": {} } } @@ -34956,7 +40733,7 @@ { "包名惯例": { "data": { - "uuid": "云原生-5-804", + "uuid": "云原生-5-805", "seg": [ [ [ @@ -34965,7 +40742,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09428571428571428, + "max": 0.09457142857142857 + }, "related_data": {} } } @@ -34980,7 +40760,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09428571428571428, + "max": 0.09457142857142857 + }, "related_data": {} } } @@ -34997,7 +40780,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09457142857142857, + "max": 0.09485714285714285 + }, "related_data": {} } } @@ -35008,7 +40794,7 @@ { "go vet": { "data": { - "uuid": "云原生-5-805", + "uuid": "云原生-5-806", "seg": [ [ [ @@ -35017,7 +40803,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09485714285714285, + "max": 0.09495238095238094 + }, "related_data": {} } } @@ -35025,16 +40814,20 @@ { "Go代码格式化": { "data": { - "uuid": "云原生-5-806", + "uuid": "云原生-5-807", "seg": [ [ [ "go", - "格式化" + "格式化", + "代码格式化" ] ] ], - "level": "2", + "level": { + "min": 0.09495238095238094, + "max": 0.09504761904761905 + }, "related_data": {} } } @@ -35042,7 +40835,7 @@ { "Go语言的文档": { "data": { - "uuid": "云原生-5-807", + "uuid": "云原生-5-808", "seg": [ [ [ @@ -35052,11 +40845,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09504761904761905, + "max": 0.09514285714285714 + }, "related_data": { "blog": { "data_id": [ - "2899" + "2899@分布式@云原生" ] } } @@ -35072,11 +40868,15 @@ "进一步", "介绍", "go", - "开发工具" + "开发工具", + "进一步介绍" ] ] ], - "level": "2", + "level": { + "min": 0.09485714285714285, + "max": 0.09514285714285714 + }, "related_data": {} } } @@ -35095,7 +40895,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09514285714285714, + "max": 0.09542857142857142 + }, "related_data": {} } } @@ -35106,7 +40909,7 @@ { "第三方依赖": { "data": { - "uuid": "云原生-5-808", + "uuid": "云原生-5-809", "seg": [ [ [ @@ -35114,7 +40917,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09542857142857142, + "max": 0.09557142857142856 + }, "related_data": {} } } @@ -35122,7 +40928,7 @@ { "对gb的介绍": { "data": { - "uuid": "云原生-5-809", + "uuid": "云原生-5-810", "seg": [ [ [ @@ -35131,7 +40937,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09557142857142856, + "max": 0.09571428571428571 + }, "related_data": {} } } @@ -35147,7 +40956,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09542857142857142, + "max": 0.09571428571428571 + }, "related_data": {} } } @@ -35162,11 +40974,15 @@ ], [ "工具", - "链" + "链", + "工具链" ] ] ], - "level": "2", + "level": { + "min": 0.09428571428571428, + "max": 0.09571428571428571 + }, "related_data": {} } } @@ -35185,7 +41001,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09571428571428571, + "max": 0.09619047619047619 + }, "related_data": {} } } @@ -35201,7 +41020,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09619047619047619, + "max": 0.09666666666666666 + }, "related_data": {} } } @@ -35217,7 +41039,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09666666666666666, + "max": 0.09714285714285714 + }, "related_data": {} } } @@ -35233,7 +41058,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09571428571428571, + "max": 0.09714285714285714 + }, "related_data": {} } } @@ -35247,16 +41075,20 @@ { "基础单元测试": { "data": { - "uuid": "云原生-5-810", + "uuid": "云原生-5-811", "seg": [ [ [ "基础", - "单元测试" + "单元测试", + "基础单元测试" ] ] ], - "level": "2", + "level": { + "min": 0.09714285714285714, + "max": 0.09732142857142857 + }, "related_data": {} } } @@ -35264,7 +41096,7 @@ { "表组测试": { "data": { - "uuid": "云原生-5-811", + "uuid": "云原生-5-812", "seg": [ [ [ @@ -35272,7 +41104,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09732142857142857, + "max": 0.0975 + }, "related_data": {} } } @@ -35280,7 +41115,7 @@ { "模仿调用": { "data": { - "uuid": "云原生-5-812", + "uuid": "云原生-5-813", "seg": [ [ [ @@ -35289,7 +41124,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0975, + "max": 0.09767857142857142 + }, "related_data": {} } } @@ -35297,7 +41135,7 @@ { "测试服务端点": { "data": { - "uuid": "云原生-5-813", + "uuid": "云原生-5-814", "seg": [ [ [ @@ -35305,7 +41143,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09767857142857142, + "max": 0.09785714285714285 + }, "related_data": {} } } @@ -35320,7 +41161,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09714285714285714, + "max": 0.09785714285714285 + }, "related_data": {} } } @@ -35336,7 +41180,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09785714285714285, + "max": 0.09857142857142856 + }, "related_data": {} } } @@ -35352,7 +41199,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09714285714285714, + "max": 0.09857142857142856 + }, "related_data": {} } } @@ -35369,7 +41219,7 @@ { "Go与可扩展Web应用": { "data": { - "uuid": "云原生-6-277", + "uuid": "云原生-6-278", "seg": [ [ [ @@ -35381,20 +41231,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09857142857142856, + "max": 0.09857539682539682 + }, "related_data": { "blog": { "data_id": [ - "78740990", - "80021331", - "52433206", - "77931566", - "55048064", - "55102275", - "74529333", - "74199762", - "74330458", - "49888437" + "78740990@go@云原生", + "80021331@jwt@云原生", + "52433206@oauth@云原生", + "77931566@etcd@云原生", + "55048064@gateway@云原生", + "55102275@go@云原生", + "74529333@jwt@云原生", + "74199762@jwt@云原生", + "74330458@jwt@云原生", + "49888437@mesh@云原生" ] } } @@ -35404,7 +41257,7 @@ { "Go与模块化Web应用": { "data": { - "uuid": "云原生-6-278", + "uuid": "云原生-6-279", "seg": [ [ [ @@ -35416,7 +41269,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09857539682539682, + "max": 0.09857936507936507 + }, "related_data": {} } } @@ -35424,7 +41280,7 @@ { "Go与可维护的Web应用": { "data": { - "uuid": "云原生-6-279", + "uuid": "云原生-6-280", "seg": [ [ [ @@ -35436,7 +41292,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09857936507936507, + "max": 0.09858333333333331 + }, "related_data": {} } } @@ -35444,7 +41303,7 @@ { "Go与高性能Web应用": { "data": { - "uuid": "云原生-6-280", + "uuid": "云原生-6-281", "seg": [ [ [ @@ -35456,11 +41315,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09858333333333331, + "max": 0.09858730158730157 + }, "related_data": { "blog": { "data_id": [ - "41379851" + "41379851@spring@云原生" ] } } @@ -35469,7 +41331,7 @@ } ], "data": { - "uuid": "云原生-5-814", + "uuid": "云原生-5-815", "seg": [ [ [ @@ -35480,7 +41342,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09857142857142856, + "max": 0.09858730158730157 + }, "related_data": {} } } @@ -35488,7 +41353,7 @@ { "Web应用的工作原理": { "data": { - "uuid": "云原生-5-815", + "uuid": "云原生-5-816", "seg": [ [ [ @@ -35498,7 +41363,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09858730158730157, + "max": 0.0986031746031746 + }, "related_data": {} } } @@ -35506,7 +41374,7 @@ { "HTTP简介": { "data": { - "uuid": "云原生-5-816", + "uuid": "云原生-5-817", "seg": [ [ [ @@ -35515,7 +41383,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0986031746031746, + "max": 0.0986190476190476 + }, "related_data": {} } } @@ -35523,7 +41394,7 @@ { "Web应用的诞生": { "data": { - "uuid": "云原生-5-817", + "uuid": "云原生-5-818", "seg": [ [ [ @@ -35532,7 +41403,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0986190476190476, + "max": 0.09863492063492063 + }, "related_data": {} } } @@ -35543,7 +41417,7 @@ { "幂等的请求方法": { "data": { - "uuid": "云原生-6-281", + "uuid": "云原生-6-282", "seg": [ [ [ @@ -35552,7 +41426,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09863492063492063, + "max": 0.09864021164021164 + }, "related_data": {} } } @@ -35560,7 +41437,7 @@ { "浏览器对请求方法的支持": { "data": { - "uuid": "云原生-6-282", + "uuid": "云原生-6-283", "seg": [ [ [ @@ -35570,7 +41447,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09864021164021164, + "max": 0.09864550264550263 + }, "related_data": {} } } @@ -35578,20 +41458,23 @@ { "请求首部": { "data": { - "uuid": "云原生-6-283", + "uuid": "云原生-6-284", "seg": [ [ [] ] ], - "level": "1", + "level": { + "min": 0.09864550264550263, + "max": 0.09865079365079364 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-818", + "uuid": "云原生-5-819", "seg": [ [ [ @@ -35599,7 +41482,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09863492063492063, + "max": 0.09865079365079364 + }, "related_data": {} } } @@ -35610,17 +41496,21 @@ { "响应状态码": { "data": { - "uuid": "云原生-6-284", + "uuid": "云原生-6-285", "seg": [ [ [ "响应", "状态", - "码" + "码", + "状态码" ] ] ], - "level": "1", + "level": { + "min": 0.09865079365079364, + "max": 0.09865873015873014 + }, "related_data": {} } } @@ -35628,7 +41518,7 @@ { "响应首部": { "data": { - "uuid": "云原生-6-285", + "uuid": "云原生-6-286", "seg": [ [ [ @@ -35636,14 +41526,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09865873015873014, + "max": 0.09866666666666665 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-819", + "uuid": "云原生-5-820", "seg": [ [ [ @@ -35652,7 +41545,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09865079365079364, + "max": 0.09866666666666665 + }, "related_data": {} } } @@ -35660,7 +41556,7 @@ { "URI": { "data": { - "uuid": "云原生-5-820", + "uuid": "云原生-5-821", "seg": [ [ [ @@ -35668,12 +41564,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09866666666666665, + "max": 0.09868253968253968 + }, "related_data": { "blog": { "data_id": [ - "52084220", - "51112004" + "52084220@oauth@云原生", + "51112004@oauth@云原生" ] } } @@ -35683,7 +41582,7 @@ { "HTTP/2简介": { "data": { - "uuid": "云原生-5-821", + "uuid": "云原生-5-822", "seg": [ [ [ @@ -35692,7 +41591,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09868253968253968, + "max": 0.09869841269841269 + }, "related_data": {} } } @@ -35703,7 +41605,7 @@ { "处理器": { "data": { - "uuid": "云原生-6-286", + "uuid": "云原生-6-287", "seg": [ [ [ @@ -35711,7 +41613,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09869841269841269, + "max": 0.09870158730158729 + }, "related_data": {} } } @@ -35719,16 +41624,20 @@ { "模板引擎": { "data": { - "uuid": "云原生-6-287", + "uuid": "云原生-6-288", "seg": [ [ [ "模板", - "引擎" + "引擎", + "模板引擎" ] ] ], - "level": "1", + "level": { + "min": 0.09870158730158729, + "max": 0.09870476190476189 + }, "related_data": {} } } @@ -35747,7 +41656,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09870476190476189, + "max": 0.0987063492063492 + }, "related_data": {} } } @@ -35768,7 +41680,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0987063492063492, + "max": 0.0987068783068783 + }, "related_data": {} } } @@ -35786,16 +41701,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0987068783068783, + "max": 0.09870740740740741 + }, "related_data": { "blog": { "data_id": [ - "25145551", - "52821272", - "84036875", - "53204959", - "10163173", - "114063823" + "25145551@oauth@云原生", + "52821272@dashboard@云原生", + "84036875@分布式@云原生", + "53204959@oauth@云原生", + "10163173@aws@云原生", + "114063823@oauth@云原生" ] } } @@ -35815,7 +41733,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09870740740740741, + "max": 0.09870793650793651 + }, "related_data": {} } } @@ -35830,20 +41751,26 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0987063492063492, + "max": 0.09870793650793651 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-6-288", + "uuid": "云原生-6-289", "seg": [ [ [] ] ], - "level": "1", + "level": { + "min": 0.09870476190476189, + "max": 0.09870793650793651 + }, "related_data": {} } } @@ -35866,11 +41793,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09870793650793651, + "max": 0.09870825396825397 + }, "related_data": { "blog": { "data_id": [ - "105624642" + "105624642@spring@云原生" ] } } @@ -35889,7 +41819,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09870825396825397, + "max": 0.09870857142857142 + }, "related_data": {} } } @@ -35902,11 +41835,15 @@ [ "go", "模板", - "引擎" + "引擎", + "模板引擎" ] ] ], - "level": "1", + "level": { + "min": 0.09870793650793651, + "max": 0.09870857142857142 + }, "related_data": {} } } @@ -35922,11 +41859,15 @@ [ [ "条件", - "动作" + "动作", + "条件动作" ] ] ], - "level": "1", + "level": { + "min": 0.09870857142857142, + "max": 0.09870873015873016 + }, "related_data": {} } } @@ -35943,7 +41884,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09870873015873016, + "max": 0.09870888888888889 + }, "related_data": {} } } @@ -35960,7 +41904,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09870888888888889, + "max": 0.09870904761904761 + }, "related_data": {} } } @@ -35977,7 +41924,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09870904761904761, + "max": 0.09870920634920635 + }, "related_data": {} } } @@ -35992,7 +41942,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09870857142857142, + "max": 0.09870920634920635 + }, "related_data": {} } } @@ -36013,11 +41966,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09870920634920635, + "max": 0.0987095238095238 + }, "related_data": { "blog": { "data_id": [ - "103780900" + "103780900@运维@云原生" ] } } @@ -36036,15 +41992,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.0987095238095238, + "max": 0.09870984126984127 + }, "related_data": { "blog": { "data_id": [ - "6611640", - "87970951", - "115816586", - "111351274", - "115364480" + "6611640@go@云原生", + "87970951@go@云原生", + "115816586@中间件@云原生", + "111351274@consul@云原生", + "115364480@cloud@云原生" ] } } @@ -36062,7 +42021,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09870920634920635, + "max": 0.09870984126984127 + }, "related_data": {} } } @@ -36075,11 +42037,15 @@ [ [ "嵌套", - "模板" + "模板", + "嵌套模板" ] ] ], - "level": "1", + "level": { + "min": 0.09870984126984127, + "max": 0.0987104761904762 + }, "related_data": {} } } @@ -36094,18 +42060,22 @@ "动作", "定义", "默认", - "模板" + "模板", + "动作定义" ] ] ], - "level": "1", + "level": { + "min": 0.0987104761904762, + "max": 0.09871111111111111 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-6-289", + "uuid": "云原生-6-290", "seg": [ [ [ @@ -36114,7 +42084,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09870793650793651, + "max": 0.09871111111111111 + }, "related_data": {} } } @@ -36134,7 +42107,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09871111111111111, + "max": 0.09871269841269842 + }, "related_data": {} } } @@ -36158,15 +42134,19 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09871269841269842, + "max": 0.09871349206349206 + }, "related_data": { "blog": { "data_id": [ - "7395213", - "113733017", - "117325240", - "95869795", - "53869429" + "7395213@go@云原生", + "113733017@oauth@云原生", + "117325240@阿里云@云原生", + "95869795@运维@云原生", + "117457629@运维@云原生", + "53869429@mesh@云原生" ] } } @@ -36185,7 +42165,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09871349206349206, + "max": 0.09871428571428571 + }, "related_data": {} } } @@ -36201,14 +42184,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09871269841269842, + "max": 0.09871428571428571 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-6-290", + "uuid": "云原生-6-291", "seg": [ [ [ @@ -36217,14 +42203,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09871111111111111, + "max": 0.09871428571428571 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-822", + "uuid": "云原生-5-823", "seg": [ [ [ @@ -36233,7 +42222,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09869841269841269, + "max": 0.09871428571428571 + }, "related_data": {} } } @@ -36241,7 +42233,7 @@ { "Hello Go": { "data": { - "uuid": "云原生-5-823", + "uuid": "云原生-5-824", "seg": [ [ [ @@ -36250,7 +42242,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09871428571428571, + "max": 0.09873015873015872 + }, "related_data": {} } } @@ -36268,7 +42263,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09857142857142856, + "max": 0.09873015873015872 + }, "related_data": {} } } @@ -36279,7 +42277,7 @@ { "ChitChat简介": { "data": { - "uuid": "云原生-5-824", + "uuid": "云原生-5-825", "seg": [ [ [ @@ -36288,7 +42286,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09873015873015872, + "max": 0.09874779541446208 + }, "related_data": {} } } @@ -36296,7 +42297,7 @@ { "应用设计": { "data": { - "uuid": "云原生-5-825", + "uuid": "云原生-5-826", "seg": [ [ [ @@ -36304,7 +42305,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09874779541446208, + "max": 0.09876543209876543 + }, "related_data": {} } } @@ -36312,7 +42316,7 @@ { "数据模型": { "data": { - "uuid": "云原生-5-826", + "uuid": "云原生-5-827", "seg": [ [ [ @@ -36320,7 +42324,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09876543209876543, + "max": 0.09878306878306878 + }, "related_data": {} } } @@ -36331,7 +42338,7 @@ { "多路复用器": { "data": { - "uuid": "云原生-6-291", + "uuid": "云原生-6-292", "seg": [ [ [ @@ -36340,7 +42347,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09878306878306878, + "max": 0.09878600823045267 + }, "related_data": {} } } @@ -36348,17 +42358,21 @@ { "服务静态文件": { "data": { - "uuid": "云原生-6-292", + "uuid": "云原生-6-293", "seg": [ [ [ "服务", "静态", - "文件" + "文件", + "静态文件" ] ] ], - "level": "1", + "level": { + "min": 0.09878600823045267, + "max": 0.09878894767783657 + }, "related_data": {} } } @@ -36366,17 +42380,21 @@ { "创建处理器函数": { "data": { - "uuid": "云原生-6-293", + "uuid": "云原生-6-294", "seg": [ [ [ "创建", "处理器", - "函数" + "函数", + "处理器函数" ] ] ], - "level": "1", + "level": { + "min": 0.09878894767783657, + "max": 0.09879188712522045 + }, "related_data": {} } } @@ -36384,7 +42402,7 @@ { "使用cookie进行访问控制": { "data": { - "uuid": "云原生-6-294", + "uuid": "云原生-6-295", "seg": [ [ [ @@ -36393,7 +42411,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09879188712522045, + "max": 0.09879482657260434 + }, "related_data": {} } } @@ -36401,7 +42422,7 @@ { "Go的net/http标准库": { "data": { - "uuid": "云原生-6-295", + "uuid": "云原生-6-296", "seg": [ [ [ @@ -36409,15 +42430,19 @@ "net", "http", "标准", - "库" + "库", + "标准库" ] ] ], - "level": "2", + "level": { + "min": 0.09879482657260434, + "max": 0.09879776601998824 + }, "related_data": { "blog": { "data_id": [ - "96999724" + "96999724@控制器@云原生" ] } } @@ -36440,7 +42465,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09879776601998824, + "max": 0.09879923574368019 + }, "related_data": {} } } @@ -36458,15 +42486,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09879923574368019, + "max": 0.09880070546737213 + }, "related_data": { "blog": { "data_id": [ - "75151846", - "69336273", - "89220092", - "108498434", - "52443274" + "75151846@阿里云@云原生", + "69336273@docker@云原生", + "89220092@阿里云@云原生", + "108498434@阿里云@云原生", + "52443274@阿里云@云原生" ] } } @@ -36475,7 +42506,7 @@ } ], "data": { - "uuid": "云原生-6-296", + "uuid": "云原生-6-297", "seg": [ [ [ @@ -36485,14 +42516,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09879776601998824, + "max": 0.09880070546737213 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-827", + "uuid": "云原生-5-828", "seg": [ [ [ @@ -36501,7 +42535,10 @@ [] ] ], - "level": "1", + "level": { + "min": 0.09878306878306878, + "max": 0.09880070546737213 + }, "related_data": {} } } @@ -36509,7 +42546,7 @@ { "使用模板生成HTML响应": { "data": { - "uuid": "云原生-5-828", + "uuid": "云原生-5-829", "seg": [ [ [ @@ -36520,11 +42557,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09880070546737213, + "max": 0.09881834215167547 + }, "related_data": { "blog": { "data_id": [ - "83043409" + "83043409@oauth@云原生" ] } } @@ -36537,7 +42577,7 @@ { "在Linux或FreeBSD系统上安装": { "data": { - "uuid": "云原生-6-297", + "uuid": "云原生-6-298", "seg": [ [ [ @@ -36548,7 +42588,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09881834215167547, + "max": 0.09882422104644326 + }, "related_data": {} } } @@ -36556,7 +42599,7 @@ { "在Mac OS X系统上安装": { "data": { - "uuid": "云原生-6-298", + "uuid": "云原生-6-299", "seg": [ [ [ @@ -36568,18 +42611,21 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09882422104644326, + "max": 0.09883009994121103 + }, "related_data": { "blog": { "data_id": [ - "108906018", - "109014330", - "78161154", - "99056323", - "109014004", - "113778036", - "103214878", - "100788959" + "108906018@分布式@云原生", + "109014330@分布式@云原生", + "78161154@docker@云原生", + "99056323@分布式@云原生", + "109014004@分布式@云原生", + "113778036@docker@云原生", + "103214878@阿里云@云原生", + "100788959@容器@云原生" ] } } @@ -36589,7 +42635,7 @@ { "在Windows系统上安装": { "data": { - "uuid": "云原生-6-299", + "uuid": "云原生-6-300", "seg": [ [ [ @@ -36599,20 +42645,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09883009994121103, + "max": 0.09883597883597882 + }, "related_data": { "blog": { "data_id": [ - "80712214", - "108723202", - "86490198", - "78659049", - "108402612", - "103756607", - "78482846", - "102853064", - "6962548", - "104190220" + "80712214@etcd@云原生", + "108723202@docker@云原生", + "86490198@consul@云原生", + "78659049@consul@云原生", + "108402612@docker@云原生", + "103756607@运维@云原生", + "78482846@控制器@云原生", + "102853064@mesh@云原生", + "6962548@go@云原生", + "104190220@中间件@云原生" ] } } @@ -36621,7 +42670,7 @@ } ], "data": { - "uuid": "云原生-5-829", + "uuid": "云原生-5-830", "seg": [ [ [ @@ -36630,11 +42679,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09881834215167547, + "max": 0.09883597883597882 + }, "related_data": { "blog": { "data_id": [ - "117730158" + "117730158@运维@云原生" ] } } @@ -36644,7 +42696,7 @@ { "连接数据库": { "data": { - "uuid": "云原生-5-830", + "uuid": "云原生-5-831", "seg": [ [ [ @@ -36653,7 +42705,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09883597883597882, + "max": 0.09885361552028217 + }, "related_data": {} } } @@ -36661,7 +42716,7 @@ { "启动服务器": { "data": { - "uuid": "云原生-5-831", + "uuid": "云原生-5-832", "seg": [ [ [ @@ -36670,7 +42725,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09885361552028217, + "max": 0.09887125220458552 + }, "related_data": {} } } @@ -36678,7 +42736,7 @@ { "Web应用运作流程回顾": { "data": { - "uuid": "云原生-5-832", + "uuid": "云原生-5-833", "seg": [ [ [ @@ -36689,7 +42747,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09887125220458552, + "max": 0.09888888888888887 + }, "related_data": {} } } @@ -36705,7 +42766,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09873015873015872, + "max": 0.09888888888888887 + }, "related_data": {} } } @@ -36723,7 +42787,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09888888888888887, + "max": 0.09904761904761904 + }, "related_data": {} } } @@ -36734,7 +42801,7 @@ { "httprouter": { "data": { - "uuid": "云原生-5-833", + "uuid": "云原生-5-834", "seg": [ [ [ @@ -36742,7 +42809,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09904761904761904, + "max": 0.09910052910052909 + }, "related_data": {} } } @@ -36750,7 +42820,7 @@ { "原理": { "data": { - "uuid": "云原生-5-834", + "uuid": "云原生-5-835", "seg": [ [ [ @@ -36758,7 +42828,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09910052910052909, + "max": 0.09915343915343915 + }, "related_data": {} } } @@ -36766,7 +42839,7 @@ { "压缩检索树创建过程": { "data": { - "uuid": "云原生-5-835", + "uuid": "云原生-5-836", "seg": [ [ [ @@ -36778,7 +42851,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09915343915343915, + "max": 0.0992063492063492 + }, "related_data": {} } } @@ -36793,7 +42869,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09904761904761904, + "max": 0.0992063492063492 + }, "related_data": {} } } @@ -36804,15 +42883,19 @@ { "代码泥潭": { "data": { - "uuid": "云原生-5-836", + "uuid": "云原生-5-837", "seg": [ [ [ - "泥潭" + "泥潭", + "代码泥潭" ] ] ], - "level": "2", + "level": { + "min": 0.0992063492063492, + "max": 0.09924603174603173 + }, "related_data": {} } } @@ -36820,18 +42903,23 @@ { "使用中间件剥离非业务逻辑": { "data": { - "uuid": "云原生-5-837", + "uuid": "云原生-5-838", "seg": [ [ [ "中间件", "剥离", "业务", - "逻辑" + "逻辑", + "非业务", + "业务逻辑" ] ] ], - "level": "2", + "level": { + "min": 0.09924603174603173, + "max": 0.09928571428571428 + }, "related_data": {} } } @@ -36839,7 +42927,7 @@ { "更优雅的中间件写法": { "data": { - "uuid": "云原生-5-838", + "uuid": "云原生-5-839", "seg": [ [ [ @@ -36849,20 +42937,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09928571428571428, + "max": 0.09932539682539682 + }, "related_data": { "blog": { "data_id": [ - "50518069", - "50445051", - "80035462", - "78535963", - "53787008", - "84530965", - "50617816", - "78293022", - "17718243", - "6816815" + "50445051@中间件@云原生", + "80035462@中间件@云原生", + "78535963@中间件@云原生", + "53787008@中间件@云原生", + "84530965@中间件@云原生", + "50617816@中间件@云原生", + "78293022@中间件@云原生", + "17718243@中间件@云原生", + "6816815@中间件@云原生", + "7170072@中间件@云原生" ] } } @@ -36872,7 +42963,7 @@ { "哪些事情适合在中间件中做": { "data": { - "uuid": "云原生-5-839", + "uuid": "云原生-5-840", "seg": [ [ [ @@ -36883,7 +42974,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09932539682539682, + "max": 0.09936507936507935 + }, "related_data": {} } } @@ -36898,7 +42992,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.0992063492063492, + "max": 0.09936507936507935 + }, "related_data": {} } } @@ -36909,17 +43006,21 @@ { "重构请求校验函数": { "data": { - "uuid": "云原生-5-840", + "uuid": "云原生-5-841", "seg": [ [ [ "重构", "校验", - "函数" + "函数", + "校验函数" ] ] ], - "level": "1", + "level": { + "min": 0.09936507936507935, + "max": 0.09944444444444443 + }, "related_data": {} } } @@ -36927,18 +43028,22 @@ { "用请求校验器解放体力劳动": { "data": { - "uuid": "云原生-5-841", + "uuid": "云原生-5-842", "seg": [ [ [ "校验", "器", "解放", - "体力劳动" + "体力劳动", + "校验器" ] ] ], - "level": "1", + "level": { + "min": 0.09944444444444443, + "max": 0.09952380952380951 + }, "related_data": {} } } @@ -36953,7 +43058,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09936507936507935, + "max": 0.09952380952380951 + }, "related_data": {} } } @@ -36964,7 +43072,7 @@ { "从database/sql讲起": { "data": { - "uuid": "云原生-5-842", + "uuid": "云原生-5-843", "seg": [ [ [ @@ -36974,14 +43082,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09952380952380951, + "max": 0.09957671957671957 + }, "related_data": { "blog": { "data_id": [ - "6539297", - "103571751", - "7796844", - "116750573" + "6539297@中间件@云原生", + "103571751@运维@云原生", + "7796844@go@云原生", + "116750573@运维@云原生" ] } } @@ -36991,7 +43102,7 @@ { "提高生产效率的ORM和": { "data": { - "uuid": "云原生-5-843", + "uuid": "云原生-5-844", "seg": [ [ [ @@ -37003,7 +43114,10 @@ [] ] ], - "level": "1", + "level": { + "min": 0.09957671957671957, + "max": 0.09962962962962962 + }, "related_data": {} } } @@ -37011,7 +43125,7 @@ { "脆弱的数据库": { "data": { - "uuid": "云原生-5-844", + "uuid": "云原生-5-845", "seg": [ [ [ @@ -37020,14 +43134,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09962962962962962, + "max": 0.09968253968253968 + }, "related_data": { "blog": { "data_id": [ - "95288016", - "78745041", - "80102347", - "107587807" + "95288016@运维@云原生", + "78745041@运维@云原生", + "80102347@运维@云原生", + "107587807@cloud@云原生" ] } } @@ -37048,7 +43165,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09952380952380951, + "max": 0.09968253968253968 + }, "related_data": {} } } @@ -37059,7 +43179,7 @@ { "常见的流量限制手段": { "data": { - "uuid": "云原生-5-845", + "uuid": "云原生-5-846", "seg": [ [ [ @@ -37069,7 +43189,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09968253968253968, + "max": 0.09976190476190475 + }, "related_data": {} } } @@ -37077,7 +43200,7 @@ { "服务瓶颈和QoS": { "data": { - "uuid": "云原生-5-846", + "uuid": "云原生-5-847", "seg": [ [ [ @@ -37089,7 +43212,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09976190476190475, + "max": 0.09984126984126983 + }, "related_data": {} } } @@ -37105,7 +43231,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09968253968253968, + "max": 0.09984126984126983 + }, "related_data": {} } } @@ -37116,7 +43245,7 @@ { "通过分批次部署实现灰度发布": { "data": { - "uuid": "云原生-5-847", + "uuid": "云原生-5-848", "seg": [ [ [ @@ -37124,11 +43253,15 @@ "批次", "部署", "灰度", - "发布" + "发布", + "批次部署" ] ] ], - "level": "2", + "level": { + "min": 0.09984126984126983, + "max": 0.09989417989417988 + }, "related_data": {} } } @@ -37136,18 +43269,22 @@ { "通过业务规则进行灰度发布": { "data": { - "uuid": "云原生-5-848", + "uuid": "云原生-5-849", "seg": [ [ [ "业务", "规则", "灰度", - "发布" + "发布", + "业务规则" ] ] ], - "level": "2", + "level": { + "min": 0.09989417989417988, + "max": 0.09994708994708994 + }, "related_data": {} } } @@ -37155,7 +43292,7 @@ { "如何实现一套灰度发布系统": { "data": { - "uuid": "云原生-5-849", + "uuid": "云原生-5-850", "seg": [ [ [ @@ -37165,7 +43302,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.09994708994708994, + "max": 0.09999999999999999 + }, "related_data": {} } } @@ -37185,7 +43325,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09984126984126983, + "max": 0.09999999999999999 + }, "related_data": {} } } @@ -37203,7 +43346,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09857142857142856, + "max": 0.09999999999999999 + }, "related_data": {} } } @@ -37217,7 +43363,7 @@ { "来自贝尔实验室特有基因": { "data": { - "uuid": "云原生-5-850", + "uuid": "云原生-5-851", "seg": [ [ [ @@ -37227,7 +43373,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.09999999999999999, + "max": 0.10011904761904761 + }, "related_data": {} } } @@ -37235,7 +43384,7 @@ { "你好,世界": { "data": { - "uuid": "云原生-5-851", + "uuid": "云原生-5-852", "seg": [ [ [ @@ -37244,7 +43393,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10011904761904761, + "max": 0.10023809523809524 + }, "related_data": {} } } @@ -37257,11 +43409,15 @@ [ "go", "语言", - "创世纪" + "创世纪", + "语言创世纪" ] ] ], - "level": "2", + "level": { + "min": 0.09999999999999999, + "max": 0.10023809523809524 + }, "related_data": {} } } @@ -37272,7 +43428,7 @@ { "B语言——Ken Thompson,": { "data": { - "uuid": "云原生-5-852", + "uuid": "云原生-5-853", "seg": [ [ [ @@ -37283,7 +43439,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10023809523809524, + "max": 0.10027210884353742 + }, "related_data": {} } } @@ -37291,7 +43450,7 @@ { "C语言——Dennis Ritchie,1972—": { "data": { - "uuid": "云原生-5-853", + "uuid": "云原生-5-854", "seg": [ [ [ @@ -37301,26 +43460,18 @@ ] ] ], - "level": "2", - "related_data": { - "blog": { - "data_id": [ - "117330527", - "117457629", - "93144389", - "101789118", - "114797075", - "115248849" - ] - } - } + "level": { + "min": 0.10027210884353742, + "max": 0.10030612244897959 + }, + "related_data": {} } } }, { "Newsqueak——Rob Pike,": { "data": { - "uuid": "云原生-5-854", + "uuid": "云原生-5-855", "seg": [ [ [ @@ -37330,7 +43481,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10030612244897959, + "max": 0.10034013605442177 + }, "related_data": {} } } @@ -37338,7 +43492,7 @@ { "Alef——Phil Winterbottom,": { "data": { - "uuid": "云原生-5-855", + "uuid": "云原生-5-856", "seg": [ [ [ @@ -37348,7 +43502,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10034013605442177, + "max": 0.10037414965986394 + }, "related_data": {} } } @@ -37356,7 +43513,7 @@ { "Limbo——Sean Dorward, Phil Winterbottom, Rob Pike,": { "data": { - "uuid": "云原生-5-856", + "uuid": "云原生-5-857", "seg": [ [ [ @@ -37370,7 +43527,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10037414965986394, + "max": 0.10040816326530612 + }, "related_data": {} } } @@ -37378,7 +43538,7 @@ { "Go语言——2007—": { "data": { - "uuid": "云原生-5-857", + "uuid": "云原生-5-858", "seg": [ [ [ @@ -37387,15 +43547,24 @@ ] ] ], - "level": "2", - "related_data": {} + "level": { + "min": 0.10040816326530612, + "max": 0.10044217687074829 + }, + "related_data": { + "blog": { + "data_id": [ + "117330527@运维@云原生" + ] + } + } } } }, { "你好,世界!——V2.": { "data": { - "uuid": "云原生-5-858", + "uuid": "云原生-5-859", "seg": [ [ [ @@ -37406,7 +43575,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10044217687074829, + "max": 0.10047619047619047 + }, "related_data": {} } } @@ -37423,7 +43595,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10023809523809524, + "max": 0.10047619047619047 + }, "related_data": {} } } @@ -37434,7 +43609,7 @@ { "原子操作": { "data": { - "uuid": "云原生-5-859", + "uuid": "云原生-5-860", "seg": [ [ [ @@ -37443,7 +43618,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.10047619047619047, + "max": 0.100515873015873 + }, "related_data": {} } } @@ -37451,18 +43629,24 @@ { "顺序一致性内存模型": { "data": { - "uuid": "云原生-5-860", + "uuid": "云原生-5-861", "seg": [ [ [ "顺序", "一致性", "内存", - "模型" + "模型", + "顺序一致性", + "一致性内存", + "内存模型" ] ] ], - "level": "1", + "level": { + "min": 0.100515873015873, + "max": 0.10055555555555555 + }, "related_data": {} } } @@ -37470,7 +43654,7 @@ { "初始化顺序": { "data": { - "uuid": "云原生-5-861", + "uuid": "云原生-5-862", "seg": [ [ [ @@ -37479,7 +43663,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.10055555555555555, + "max": 0.10059523809523808 + }, "related_data": {} } } @@ -37487,7 +43674,7 @@ { "Goroutine的创建": { "data": { - "uuid": "云原生-5-862", + "uuid": "云原生-5-863", "seg": [ [ [ @@ -37496,7 +43683,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.10059523809523808, + "max": 0.10063492063492062 + }, "related_data": {} } } @@ -37504,7 +43694,7 @@ { "基于通道的通信": { "data": { - "uuid": "云原生-5-863", + "uuid": "云原生-5-864", "seg": [ [ [ @@ -37513,7 +43703,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.10063492063492062, + "max": 0.10067460317460317 + }, "related_data": {} } } @@ -37521,7 +43714,7 @@ { "不靠谱的同步": { "data": { - "uuid": "云原生-5-864", + "uuid": "云原生-5-865", "seg": [ [ [ @@ -37531,7 +43724,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.10067460317460317, + "max": 0.1007142857142857 + }, "related_data": {} } } @@ -37545,11 +43741,15 @@ "面向", "并发", "内存", - "模型" + "模型", + "内存模型" ] ] ], - "level": "1", + "level": { + "min": 0.10047619047619047, + "max": 0.1007142857142857 + }, "related_data": {} } } @@ -37560,7 +43760,7 @@ { "并发版本的“Hello, World”": { "data": { - "uuid": "云原生-5-865", + "uuid": "云原生-5-866", "seg": [ [ [ @@ -37571,7 +43771,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1007142857142857, + "max": 0.10074404761904761 + }, "related_data": {} } } @@ -37579,17 +43782,21 @@ { "生产者/消费者模型": { "data": { - "uuid": "云原生-5-866", + "uuid": "云原生-5-867", "seg": [ [ [ "生产者", "消费者", - "模型" + "模型", + "消费者模型" ] ] ], - "level": "1", + "level": { + "min": 0.10074404761904761, + "max": 0.10077380952380952 + }, "related_data": {} } } @@ -37597,7 +43804,7 @@ { "发布/订阅模型": { "data": { - "uuid": "云原生-5-867", + "uuid": "云原生-5-868", "seg": [ [ [ @@ -37607,7 +43814,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.10077380952380952, + "max": 0.10080357142857142 + }, "related_data": {} } } @@ -37615,7 +43825,7 @@ { "控制并发数": { "data": { - "uuid": "云原生-5-868", + "uuid": "云原生-5-869", "seg": [ [ [ @@ -37625,7 +43835,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.10080357142857142, + "max": 0.10083333333333333 + }, "related_data": {} } } @@ -37633,7 +43846,7 @@ { "赢者为王": { "data": { - "uuid": "云原生-5-869", + "uuid": "云原生-5-870", "seg": [ [ [ @@ -37642,7 +43855,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.10083333333333333, + "max": 0.10086309523809522 + }, "related_data": {} } } @@ -37650,7 +43866,7 @@ { "素数筛": { "data": { - "uuid": "云原生-5-870", + "uuid": "云原生-5-871", "seg": [ [ [ @@ -37659,7 +43875,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.10086309523809522, + "max": 0.10089285714285713 + }, "related_data": {} } } @@ -37667,7 +43886,7 @@ { "并发的安全退出": { "data": { - "uuid": "云原生-5-871", + "uuid": "云原生-5-872", "seg": [ [ [ @@ -37676,7 +43895,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.10089285714285713, + "max": 0.10092261904761904 + }, "related_data": {} } } @@ -37684,7 +43906,7 @@ { "context包": { "data": { - "uuid": "云原生-5-872", + "uuid": "云原生-5-873", "seg": [ [ [ @@ -37693,7 +43915,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.10092261904761904, + "max": 0.10095238095238095 + }, "related_data": {} } } @@ -37710,7 +43935,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1007142857142857, + "max": 0.10095238095238095 + }, "related_data": {} } } @@ -37721,7 +43949,7 @@ { "获取错误的上下文": { "data": { - "uuid": "云原生-5-873", + "uuid": "云原生-5-874", "seg": [ [ [ @@ -37730,7 +43958,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10095238095238095, + "max": 0.10103174603174603 + }, "related_data": {} } } @@ -37738,7 +43969,7 @@ { "错误的错误返回": { "data": { - "uuid": "云原生-5-874", + "uuid": "云原生-5-875", "seg": [ [ [ @@ -37746,7 +43977,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10103174603174603, + "max": 0.10111111111111111 + }, "related_data": {} } } @@ -37754,7 +43988,7 @@ { "剖析异常": { "data": { - "uuid": "云原生-5-875", + "uuid": "云原生-5-876", "seg": [ [ [ @@ -37763,11 +43997,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10111111111111111, + "max": 0.10119047619047619 + }, "related_data": { "blog": { "data_id": [ - "80702449" + "80702449@中间件@云原生" ] } } @@ -37785,7 +44022,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10095238095238095, + "max": 0.10119047619047619 + }, "related_data": {} } } @@ -37801,7 +44041,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10119047619047619, + "max": 0.10142857142857142 + }, "related_data": {} } } @@ -37813,11 +44056,15 @@ [ [ "语言", - "基础" + "基础", + "语言基础" ] ] ], - "level": "2", + "level": { + "min": 0.09999999999999999, + "max": 0.10142857142857142 + }, "related_data": {} } } @@ -37831,7 +44078,7 @@ { "最简CGO程序": { "data": { - "uuid": "云原生-5-876", + "uuid": "云原生-5-877", "seg": [ [ [ @@ -37841,7 +44088,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10142857142857142, + "max": 0.10144300144300143 + }, "related_data": {} } } @@ -37849,7 +44099,7 @@ { "基于C标准库函数输出字符串": { "data": { - "uuid": "云原生-5-877", + "uuid": "云原生-5-878", "seg": [ [ [ @@ -37857,11 +44107,15 @@ "标准", "库函数", "输出", - "字符串" + "字符串", + "标准库函数" ] ] ], - "level": "2", + "level": { + "min": 0.10144300144300143, + "max": 0.10145743145743145 + }, "related_data": {} } } @@ -37869,7 +44123,7 @@ { "使用自己的C函数": { "data": { - "uuid": "云原生-5-878", + "uuid": "云原生-5-879", "seg": [ [ [ @@ -37878,7 +44132,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10145743145743145, + "max": 0.10147186147186146 + }, "related_data": {} } } @@ -37886,7 +44143,7 @@ { "C代码的模块化": { "data": { - "uuid": "云原生-5-879", + "uuid": "云原生-5-880", "seg": [ [ [ @@ -37895,7 +44152,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10147186147186146, + "max": 0.10148629148629149 + }, "related_data": {} } } @@ -37903,7 +44163,7 @@ { "用Go重新实现C函数": { "data": { - "uuid": "云原生-5-880", + "uuid": "云原生-5-881", "seg": [ [ [ @@ -37913,7 +44173,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10148629148629149, + "max": 0.1015007215007215 + }, "related_data": {} } } @@ -37921,7 +44184,7 @@ { "面向C接口的Go编程": { "data": { - "uuid": "云原生-5-881", + "uuid": "云原生-5-882", "seg": [ [ [ @@ -37933,7 +44196,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1015007215007215, + "max": 0.10151515151515152 + }, "related_data": {} } } @@ -37941,17 +44207,21 @@ { "定义整数变量": { "data": { - "uuid": "云原生-5-882", + "uuid": "云原生-5-883", "seg": [ [ [ "定义", "整数", - "变量" + "变量", + "定义整数" ] ] ], - "level": "2", + "level": { + "min": 0.10151515151515152, + "max": 0.10152958152958153 + }, "related_data": {} } } @@ -37959,17 +44229,21 @@ { "定义字符串变量": { "data": { - "uuid": "云原生-5-883", + "uuid": "云原生-5-884", "seg": [ [ [ "定义", "字符串", - "变量" + "变量", + "定义字符串" ] ] ], - "level": "2", + "level": { + "min": 0.10152958152958153, + "max": 0.10154401154401155 + }, "related_data": {} } } @@ -37977,7 +44251,7 @@ { "定义main函数": { "data": { - "uuid": "云原生-5-884", + "uuid": "云原生-5-885", "seg": [ [ [ @@ -37987,7 +44261,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10154401154401155, + "max": 0.10155844155844156 + }, "related_data": {} } } @@ -37995,7 +44272,7 @@ { "特殊字符": { "data": { - "uuid": "云原生-5-885", + "uuid": "云原生-5-886", "seg": [ [ [ @@ -38003,7 +44280,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10155844155844156, + "max": 0.10157287157287158 + }, "related_data": {} } } @@ -38011,15 +44291,18 @@ { "没有分号": { "data": { - "uuid": "云原生-5-886", + "uuid": "云原生-5-887", "seg": [ [ [ - "分" + "分号" ] ] ], - "level": "2", + "level": { + "min": 0.10157287157287158, + "max": 0.10158730158730159 + }, "related_data": {} } } @@ -38031,15 +44314,19 @@ [ [ "快速", - "入门" + "入门", + "快速入门" ] ] ], - "level": "2", + "level": { + "min": 0.10142857142857142, + "max": 0.10158730158730159 + }, "related_data": { "blog": { "data_id": [ - "89136370" + "89136370@docker@云原生" ] } } @@ -38052,7 +44339,7 @@ { "import \"C\"语句": { "data": { - "uuid": "云原生-5-887", + "uuid": "云原生-5-888", "seg": [ [ [ @@ -38062,7 +44349,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10158730158730159, + "max": 0.10164021164021164 + }, "related_data": {} } } @@ -38070,7 +44360,7 @@ { "#cgo语句": { "data": { - "uuid": "云原生-5-888", + "uuid": "云原生-5-889", "seg": [ [ [ @@ -38079,7 +44369,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10164021164021164, + "max": 0.10169312169312168 + }, "related_data": {} } } @@ -38087,22 +44380,26 @@ { "build标志条件编译": { "data": { - "uuid": "云原生-5-889", + "uuid": "云原生-5-890", "seg": [ [ [ "build", "标志", "条件", - "编译" + "编译", + "标志条件" ] ] ], - "level": "2", + "level": { + "min": 0.10169312169312168, + "max": 0.10174603174603174 + }, "related_data": { "blog": { "data_id": [ - "6566662" + "6566662@go@云原生" ] } } @@ -38120,7 +44417,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10158730158730159, + "max": 0.10174603174603174 + }, "related_data": {} } } @@ -38131,16 +44431,20 @@ { "数值类型": { "data": { - "uuid": "云原生-5-890", + "uuid": "云原生-5-891", "seg": [ [ [ "数值", - "类型" + "类型", + "数值类型" ] ] ], - "level": "2", + "level": { + "min": 0.10174603174603174, + "max": 0.10177777777777777 + }, "related_data": {} } } @@ -38148,7 +44452,7 @@ { "Go字符串和切片": { "data": { - "uuid": "云原生-5-891", + "uuid": "云原生-5-892", "seg": [ [ [ @@ -38160,7 +44464,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10177777777777777, + "max": 0.10180952380952381 + }, "related_data": {} } } @@ -38168,7 +44475,7 @@ { "指针间的转换": { "data": { - "uuid": "云原生-5-892", + "uuid": "云原生-5-893", "seg": [ [ [ @@ -38177,7 +44484,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10180952380952381, + "max": 0.10184126984126983 + }, "related_data": {} } } @@ -38185,7 +44495,7 @@ { "数值和指针的转换": { "data": { - "uuid": "云原生-5-893", + "uuid": "云原生-5-894", "seg": [ [ [ @@ -38197,7 +44507,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10184126984126983, + "max": 0.10187301587301587 + }, "related_data": {} } } @@ -38205,7 +44518,7 @@ { "切片间的转换": { "data": { - "uuid": "云原生-5-894", + "uuid": "云原生-5-895", "seg": [ [ [ @@ -38214,7 +44527,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10187301587301587, + "max": 0.1019047619047619 + }, "related_data": {} } } @@ -38229,7 +44545,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10174603174603174, + "max": 0.1019047619047619 + }, "related_data": {} } } @@ -38240,7 +44559,7 @@ { "Go调用C函数": { "data": { - "uuid": "云原生-5-895", + "uuid": "云原生-5-896", "seg": [ [ [ @@ -38251,7 +44570,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1019047619047619, + "max": 0.10194444444444445 + }, "related_data": {} } } @@ -38259,7 +44581,7 @@ { "C函数的返回值": { "data": { - "uuid": "云原生-5-896", + "uuid": "云原生-5-897", "seg": [ [ [ @@ -38269,7 +44591,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10194444444444445, + "max": 0.10198412698412698 + }, "related_data": {} } } @@ -38277,7 +44602,7 @@ { "void函数的返回值": { "data": { - "uuid": "云原生-5-897", + "uuid": "云原生-5-898", "seg": [ [ [ @@ -38287,7 +44612,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10198412698412698, + "max": 0.10202380952380952 + }, "related_data": {} } } @@ -38295,7 +44623,7 @@ { "C调用Go导出函数": { "data": { - "uuid": "云原生-5-898", + "uuid": "云原生-5-899", "seg": [ [ [ @@ -38307,7 +44635,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10202380952380952, + "max": 0.10206349206349206 + }, "related_data": {} } } @@ -38322,7 +44653,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1019047619047619, + "max": 0.10206349206349206 + }, "related_data": {} } } @@ -38333,7 +44667,7 @@ { "CGO生成的中间文件": { "data": { - "uuid": "云原生-5-899", + "uuid": "云原生-5-900", "seg": [ [ [ @@ -38343,7 +44677,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10206349206349206, + "max": 0.10211640211640212 + }, "related_data": {} } } @@ -38351,7 +44688,7 @@ { "Go调用C函数": { "data": { - "uuid": "云原生-5-900", + "uuid": "云原生-5-901", "seg": [ [ [ @@ -38362,7 +44699,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10211640211640212, + "max": 0.10216931216931216 + }, "related_data": {} } } @@ -38370,7 +44710,7 @@ { "C调用Go函数": { "data": { - "uuid": "云原生-5-901", + "uuid": "云原生-5-902", "seg": [ [ [ @@ -38381,7 +44721,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10216931216931216, + "max": 0.10222222222222221 + }, "related_data": {} } } @@ -38397,7 +44740,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10206349206349206, + "max": 0.10222222222222221 + }, "related_data": {} } } @@ -38408,7 +44754,7 @@ { "Go访问C内存": { "data": { - "uuid": "云原生-5-902", + "uuid": "云原生-5-903", "seg": [ [ [ @@ -38419,7 +44765,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10222222222222221, + "max": 0.10226190476190475 + }, "related_data": {} } } @@ -38427,7 +44776,7 @@ { "C临时访问传入的Go内存": { "data": { - "uuid": "云原生-5-903", + "uuid": "云原生-5-904", "seg": [ [ [ @@ -38440,7 +44789,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10226190476190475, + "max": 0.1023015873015873 + }, "related_data": {} } } @@ -38448,7 +44800,7 @@ { "C长期持有Go指针对象": { "data": { - "uuid": "云原生-5-904", + "uuid": "云原生-5-905", "seg": [ [ [ @@ -38457,11 +44809,16 @@ "持有", "go", "指针", - "对象" + "对象", + "长期持有", + "指针对象" ] ] ], - "level": "2", + "level": { + "min": 0.1023015873015873, + "max": 0.10234126984126984 + }, "related_data": {} } } @@ -38469,7 +44826,7 @@ { "导出C函数不能返回Go内存": { "data": { - "uuid": "云原生-5-905", + "uuid": "云原生-5-906", "seg": [ [ [ @@ -38482,7 +44839,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10234126984126984, + "max": 0.10238095238095238 + }, "related_data": {} } } @@ -38495,11 +44855,15 @@ [ "cgo", "内存", - "模型" + "模型", + "内存模型" ] ] ], - "level": "2", + "level": { + "min": 0.10222222222222221, + "max": 0.10238095238095238 + }, "related_data": {} } } @@ -38510,7 +44874,7 @@ { "C++类到Go语言对象": { "data": { - "uuid": "云原生-5-906", + "uuid": "云原生-5-907", "seg": [ [ [ @@ -38518,19 +44882,30 @@ "类到", "go", "语言", - "对象" + "对象", + "语言对象" ] ] ], - "level": "2", - "related_data": {} + "level": { + "min": 0.10238095238095238, + "max": 0.10243386243386243 + }, + "related_data": { + "blog": { + "data_id": [ + "93144389@运维@云原生", + "101789118@运维@云原生" + ] + } + } } } }, { "Go语言对象到C++类": { "data": { - "uuid": "云原生-5-907", + "uuid": "云原生-5-908", "seg": [ [ [ @@ -38538,17 +44913,22 @@ "语言", "对象", "c++", - "类" + "类", + "语言对象", + "C++类" ] ] ], - "level": "2", + "level": { + "min": 0.10243386243386243, + "max": 0.10248677248677249 + }, "related_data": { "blog": { "data_id": [ - "49913945", - "117598639", - "88340341" + "117598639@容器@云原生", + "49913945@容器@云原生", + "88340341@容器@云原生" ] } } @@ -38558,7 +44938,7 @@ { "彻底解放C++的this指针": { "data": { - "uuid": "云原生-5-908", + "uuid": "云原生-5-909", "seg": [ [ [ @@ -38569,12 +44949,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10248677248677249, + "max": 0.10253968253968254 + }, "related_data": { "blog": { "data_id": [ - "51603033", - "111939649" + "51603033@mesh@云原生", + "111939649@cloud@云原生" ] } } @@ -38589,11 +44972,15 @@ [ "c++", "类", - "包装" + "包装", + "C++类" ] ] ], - "level": "2", + "level": { + "min": 0.10238095238095238, + "max": 0.10253968253968254 + }, "related_data": {} } } @@ -38604,17 +44991,21 @@ { "使用C静态库": { "data": { - "uuid": "云原生-5-909", + "uuid": "云原生-5-910", "seg": [ [ [ "c", "静态", - "库" + "库", + "静态库" ] ] ], - "level": "2", + "level": { + "min": 0.10253968253968254, + "max": 0.10257142857142858 + }, "related_data": {} } } @@ -38622,23 +45013,27 @@ { "使用C动态库": { "data": { - "uuid": "云原生-5-910", + "uuid": "云原生-5-911", "seg": [ [ [ "c", "动态", - "库" + "库", + "动态库" ] ] ], - "level": "2", + "level": { + "min": 0.10257142857142858, + "max": 0.1026031746031746 + }, "related_data": { "blog": { "data_id": [ - "83375552", - "79483414", - "80261233" + "83375552@mesh@云原生", + "79483414@mesh@云原生", + "80261233@cloud@云原生" ] } } @@ -38648,18 +45043,22 @@ { "导出C静态库": { "data": { - "uuid": "云原生-5-911", + "uuid": "云原生-5-912", "seg": [ [ [ "导出", "c", "静态", - "库" + "库", + "静态库" ] ] ], - "level": "2", + "level": { + "min": 0.1026031746031746, + "max": 0.10263492063492063 + }, "related_data": {} } } @@ -38667,18 +45066,22 @@ { "导出C动态库": { "data": { - "uuid": "云原生-5-912", + "uuid": "云原生-5-913", "seg": [ [ [ "导出", "c", "动态", - "库" + "库", + "动态库" ] ] ], - "level": "2", + "level": { + "min": 0.10263492063492063, + "max": 0.10266666666666666 + }, "related_data": {} } } @@ -38686,7 +45089,7 @@ { "导出非main包的函数": { "data": { - "uuid": "云原生-5-913", + "uuid": "云原生-5-914", "seg": [ [ [ @@ -38698,7 +45101,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10266666666666666, + "max": 0.10269841269841269 + }, "related_data": {} } } @@ -38710,15 +45116,20 @@ [ [ "静态", - "库" + "库", + "静态库" ], [ "动态", - "库" + "库", + "动态库" ] ] ], - "level": "2", + "level": { + "min": 0.10253968253968254, + "max": 0.10269841269841269 + }, "related_data": {} } } @@ -38729,7 +45140,7 @@ { "编译参数:CFLAGS/CPPFLAGS/CXXFLAGS": { "data": { - "uuid": "云原生-5-914", + "uuid": "云原生-5-915", "seg": [ [ [ @@ -38745,7 +45156,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10269841269841269, + "max": 0.10273015873015873 + }, "related_data": {} } } @@ -38753,12 +45167,13 @@ { "链接参数:LDFLAGS": { "data": { - "uuid": "云原生-5-915", + "uuid": "云原生-5-916", "seg": [ [ [ "链接", - "参数" + "参数", + "链接参数" ] ], [ @@ -38767,11 +45182,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10273015873015873, + "max": 0.10276190476190476 + }, "related_data": { "blog": { "data_id": [ - "79008053" + "79008053@go@云原生" ] } } @@ -38781,7 +45199,7 @@ { "pkg-config": { "data": { - "uuid": "云原生-5-916", + "uuid": "云原生-5-917", "seg": [ [ [ @@ -38790,7 +45208,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10276190476190476, + "max": 0.10279365079365078 + }, "related_data": {} } } @@ -38798,7 +45219,7 @@ { "go get链": { "data": { - "uuid": "云原生-5-917", + "uuid": "云原生-5-918", "seg": [ [ [ @@ -38808,7 +45229,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10279365079365078, + "max": 0.10282539682539682 + }, "related_data": {} } } @@ -38816,7 +45240,7 @@ { "多个非main包中导出C函数": { "data": { - "uuid": "云原生-5-918", + "uuid": "云原生-5-919", "seg": [ [ [ @@ -38829,7 +45253,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10282539682539682, + "max": 0.10285714285714286 + }, "related_data": {} } } @@ -38844,11 +45271,15 @@ ], [ "链接", - "参数" + "参数", + "链接参数" ] ] ], - "level": "2", + "level": { + "min": 0.10269841269841269, + "max": 0.10285714285714286 + }, "related_data": {} } } @@ -38864,7 +45295,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10142857142857142, + "max": 0.10285714285714286 + }, "related_data": {} } } @@ -38878,7 +45312,7 @@ { "图灵机和BrainFuck语言": { "data": { - "uuid": "云原生-5-919", + "uuid": "云原生-5-920", "seg": [ [ [ @@ -38890,7 +45324,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10285714285714286, + "max": 0.10291428571428571 + }, "related_data": {} } } @@ -38898,17 +45335,21 @@ { "《人力资源机器》游戏": { "data": { - "uuid": "云原生-5-920", + "uuid": "云原生-5-921", "seg": [ [ [ "人力资源", "机器", - "游戏" + "游戏", + "人力资源机器" ] ] ], - "level": "3", + "level": { + "min": 0.10291428571428571, + "max": 0.10297142857142857 + }, "related_data": {} } } @@ -38916,7 +45357,7 @@ { "X86-64体系结构": { "data": { - "uuid": "云原生-5-921", + "uuid": "云原生-5-922", "seg": [ [ [ @@ -38925,7 +45366,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10297142857142857, + "max": 0.10302857142857143 + }, "related_data": {} } } @@ -38933,18 +45377,22 @@ { "Go汇编中的伪寄存器": { "data": { - "uuid": "云原生-5-922", + "uuid": "云原生-5-923", "seg": [ [ [ "go", "汇编", "伪", - "寄存器" + "寄存器", + "伪寄存器" ] ] ], - "level": "2", + "level": { + "min": 0.10302857142857143, + "max": 0.1030857142857143 + }, "related_data": {} } } @@ -38952,7 +45400,7 @@ { "X86-64指令集": { "data": { - "uuid": "云原生-5-923", + "uuid": "云原生-5-924", "seg": [ [ [ @@ -38961,7 +45409,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1030857142857143, + "max": 0.10314285714285715 + }, "related_data": {} } } @@ -38973,11 +45424,15 @@ [ [ "计算机", - "结构" + "结构", + "计算机结构" ] ] ], - "level": "2", + "level": { + "min": 0.10285714285714286, + "max": 0.10314285714285715 + }, "related_data": {} } } @@ -38988,7 +45443,7 @@ { "顺序执行": { "data": { - "uuid": "云原生-5-924", + "uuid": "云原生-5-925", "seg": [ [ [ @@ -38997,11 +45452,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10314285714285715, + "max": 0.10323809523809524 + }, "related_data": { "blog": { "data_id": [ - "48316919" + "48316919@中间件@云原生" ] } } @@ -39011,7 +45469,7 @@ { "if/goto跳转": { "data": { - "uuid": "云原生-5-925", + "uuid": "云原生-5-926", "seg": [ [ [ @@ -39021,19 +45479,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10323809523809524, + "max": 0.10333333333333333 + }, "related_data": { "blog": { "data_id": [ - "78263379", - "45246865", - "83545442", - "79924884", - "91879280", - "82696369", - "113810573", - "116768440", - "98472748" + "78263379@go@云原生", + "100061217@go@云原生", + "45246865@go@云原生", + "83545442@控制器@云原生", + "79924884@控制器@云原生", + "91879280@控制器@云原生", + "80538510@docker@云原生", + "82696369@无服务器@云原生", + "113810573@mesh@云原生", + "116768440@运维@云原生" ] } } @@ -39043,7 +45505,7 @@ { "for循环": { "data": { - "uuid": "云原生-5-926", + "uuid": "云原生-5-927", "seg": [ [ [ @@ -39051,7 +45513,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10333333333333333, + "max": 0.10342857142857143 + }, "related_data": {} } } @@ -39066,7 +45531,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10314285714285715, + "max": 0.10342857142857143 + }, "related_data": {} } } @@ -39077,7 +45545,7 @@ { "系统调用": { "data": { - "uuid": "云原生-5-927", + "uuid": "云原生-5-928", "seg": [ [ [ @@ -39086,7 +45554,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10342857142857143, + "max": 0.10352380952380952 + }, "related_data": {} } } @@ -39094,7 +45565,7 @@ { "直接调用C函数": { "data": { - "uuid": "云原生-5-928", + "uuid": "云原生-5-929", "seg": [ [ [ @@ -39104,7 +45575,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10352380952380952, + "max": 0.10361904761904762 + }, "related_data": {} } } @@ -39112,7 +45586,7 @@ { "AVX指令": { "data": { - "uuid": "云原生-5-929", + "uuid": "云原生-5-930", "seg": [ [ [ @@ -39121,7 +45595,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10361904761904762, + "max": 0.10371428571428572 + }, "related_data": {} } } @@ -39137,7 +45614,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10342857142857143, + "max": 0.10371428571428572 + }, "related_data": {} } } @@ -39148,16 +45628,20 @@ { "故意设计没有goid": { "data": { - "uuid": "云原生-5-930", + "uuid": "云原生-5-931", "seg": [ [ [ "设计", - "goid" + "goid", + "故意设计" ] ] ], - "level": "2", + "level": { + "min": 0.10371428571428572, + "max": 0.10377142857142857 + }, "related_data": {} } } @@ -39165,7 +45649,7 @@ { "纯Go方式获取goid": { "data": { - "uuid": "云原生-5-931", + "uuid": "云原生-5-932", "seg": [ [ [ @@ -39177,7 +45661,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10377142857142857, + "max": 0.10382857142857142 + }, "related_data": {} } } @@ -39185,7 +45672,7 @@ { "从g结构体获取goid": { "data": { - "uuid": "云原生-5-932", + "uuid": "云原生-5-933", "seg": [ [ [ @@ -39193,11 +45680,15 @@ "结构", "体", "获取", - "goid" + "goid", + "结构体" ] ] ], - "level": "2", + "level": { + "min": 0.10382857142857142, + "max": 0.10388571428571429 + }, "related_data": {} } } @@ -39205,7 +45696,7 @@ { "获取g结构体对应的接口对象": { "data": { - "uuid": "云原生-5-933", + "uuid": "云原生-5-934", "seg": [ [ [ @@ -39214,11 +45705,15 @@ "结构", "体", "接口", - "对象" + "对象", + "结构体" ] ] ], - "level": "2", + "level": { + "min": 0.10388571428571429, + "max": 0.10394285714285714 + }, "related_data": {} } } @@ -39226,7 +45721,7 @@ { "goid的应用:局部存储": { "data": { - "uuid": "云原生-5-934", + "uuid": "云原生-5-935", "seg": [ [ [ @@ -39240,7 +45735,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10394285714285714, + "max": 0.104 + }, "related_data": {} } } @@ -39261,7 +45759,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10371428571428572, + "max": 0.104 + }, "related_data": {} } } @@ -39272,7 +45773,7 @@ { "Delve入门": { "data": { - "uuid": "云原生-5-935", + "uuid": "云原生-5-936", "seg": [ [ [ @@ -39281,7 +45782,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.104, + "max": 0.10414285714285715 + }, "related_data": {} } } @@ -39289,7 +45793,7 @@ { "调试汇编程序": { "data": { - "uuid": "云原生-5-936", + "uuid": "云原生-5-937", "seg": [ [ [ @@ -39298,7 +45802,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10414285714285715, + "max": 0.10428571428571429 + }, "related_data": {} } } @@ -39314,7 +45821,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.104, + "max": 0.10428571428571429 + }, "related_data": {} } } @@ -39330,7 +45840,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10285714285714286, + "max": 0.10428571428571429 + }, "related_data": {} } } @@ -39344,7 +45857,7 @@ { "RPC版“Hello, World”": { "data": { - "uuid": "云原生-5-937", + "uuid": "云原生-5-938", "seg": [ [ [ @@ -39355,7 +45868,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10428571428571429, + "max": 0.10433035714285714 + }, "related_data": {} } } @@ -39363,7 +45879,7 @@ { "更安全的RPC接口": { "data": { - "uuid": "云原生-5-938", + "uuid": "云原生-5-939", "seg": [ [ [ @@ -39372,7 +45888,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10433035714285714, + "max": 0.104375 + }, "related_data": {} } } @@ -39380,7 +45899,7 @@ { "跨语言的RPC": { "data": { - "uuid": "云原生-5-939", + "uuid": "云原生-5-940", "seg": [ [ [ @@ -39390,11 +45909,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.104375, + "max": 0.10441964285714286 + }, "related_data": { "blog": { "data_id": [ - "82814489" + "82814489@中间件@云原生" ] } } @@ -39404,7 +45926,7 @@ { "HTTP上的RPC": { "data": { - "uuid": "云原生-5-940", + "uuid": "云原生-5-941", "seg": [ [ [ @@ -39413,20 +45935,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10441964285714286, + "max": 0.10446428571428572 + }, "related_data": { "blog": { "data_id": [ - "39474123", - "86555445", - "81906027", - "82528469", - "39473807", - "78420091", - "103761024", - "84983770", - "100016003", - "107856098" + "39474123@分布式@云原生", + "86555445@consul@云原生", + "81906027@zookeeper@云原生", + "82528469@gateway@云原生", + "39473807@分布式@云原生", + "48742529@中间件@云原生", + "78420091@consul@云原生", + "78420091@服务发现@云原生", + "103761024@服务发现@云原生", + "84983770@分布式@云原生" ] } } @@ -39444,7 +45969,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10428571428571429, + "max": 0.10446428571428572 + }, "related_data": {} } } @@ -39455,7 +45983,7 @@ { "Protobuf入门": { "data": { - "uuid": "云原生-5-941", + "uuid": "云原生-5-942", "seg": [ [ [ @@ -39464,12 +45992,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10446428571428572, + "max": 0.10452380952380953 + }, "related_data": { "blog": { "data_id": [ - "103214294", - "54604615" + "103214294@go@云原生", + "54604615@go@云原生" ] } } @@ -39479,17 +46010,21 @@ { "定制代码生成插件": { "data": { - "uuid": "云原生-5-942", + "uuid": "云原生-5-943", "seg": [ [ [ "定制", "代码生成", - "插件" + "插件", + "代码生成插件" ] ] ], - "level": "2", + "level": { + "min": 0.10452380952380953, + "max": 0.10458333333333333 + }, "related_data": {} } } @@ -39497,7 +46032,7 @@ { "自动生成完整的RPC代码": { "data": { - "uuid": "云原生-5-943", + "uuid": "云原生-5-944", "seg": [ [ [ @@ -39507,7 +46042,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10458333333333333, + "max": 0.10464285714285715 + }, "related_data": {} } } @@ -39522,7 +46060,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10446428571428572, + "max": 0.10464285714285715 + }, "related_data": {} } } @@ -39533,7 +46074,7 @@ { "客户端RPC的实现原理": { "data": { - "uuid": "云原生-5-944", + "uuid": "云原生-5-945", "seg": [ [ [ @@ -39543,11 +46084,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10464285714285715, + "max": 0.1046875 + }, "related_data": { "blog": { "data_id": [ - "99436237" + "99436237@服务发现@云原生" ] } } @@ -39557,7 +46101,7 @@ { "基于RPC实现监视功能": { "data": { - "uuid": "云原生-5-945", + "uuid": "云原生-5-946", "seg": [ [ [ @@ -39567,7 +46111,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1046875, + "max": 0.10473214285714286 + }, "related_data": {} } } @@ -39575,7 +46122,7 @@ { "反向RPC": { "data": { - "uuid": "云原生-5-946", + "uuid": "云原生-5-947", "seg": [ [ [ @@ -39584,7 +46131,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10473214285714286, + "max": 0.10477678571428571 + }, "related_data": {} } } @@ -39592,7 +46142,7 @@ { "上下文信息": { "data": { - "uuid": "云原生-5-947", + "uuid": "云原生-5-948", "seg": [ [ [ @@ -39601,7 +46151,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10477678571428571, + "max": 0.10482142857142857 + }, "related_data": {} } } @@ -39617,7 +46170,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10464285714285715, + "max": 0.10482142857142857 + }, "related_data": {} } } @@ -39628,17 +46184,21 @@ { "gRPC技术栈": { "data": { - "uuid": "云原生-5-948", + "uuid": "云原生-5-949", "seg": [ [ [ "grpc", "技术", - "栈" + "栈", + "技术栈" ] ] ], - "level": "2", + "level": { + "min": 0.10482142857142857, + "max": 0.10486607142857142 + }, "related_data": {} } } @@ -39646,7 +46206,7 @@ { "gRPC入门": { "data": { - "uuid": "云原生-5-949", + "uuid": "云原生-5-950", "seg": [ [ [ @@ -39655,20 +46215,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10486607142857142, + "max": 0.10491071428571427 + }, "related_data": { "blog": { "data_id": [ - "84381256", - "109194612", - "88931090", - "80216208", - "117964926", - "103280989", - "111934889", - "75332638", - "86493330", - "97118124" + "84381256@服务发现@云原生", + "109194612@服务发现@云原生", + "88931090@etcd@云原生", + "88931090@服务发现@云原生", + "80216208@etcd@云原生", + "117964926@etcd@云原生", + "103280989@etcd@云原生", + "103280989@服务发现@云原生", + "111934889@云原生@云原生", + "75332638@go@云原生" ] } } @@ -39678,7 +46241,7 @@ { "gRPC流": { "data": { - "uuid": "云原生-5-950", + "uuid": "云原生-5-951", "seg": [ [ [ @@ -39687,7 +46250,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.10491071428571427, + "max": 0.10495535714285714 + }, "related_data": {} } } @@ -39695,7 +46261,7 @@ { "发布和订阅模式": { "data": { - "uuid": "云原生-5-951", + "uuid": "云原生-5-952", "seg": [ [ [ @@ -39707,7 +46273,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10495535714285714, + "max": 0.105 + }, "related_data": {} } } @@ -39723,7 +46292,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10482142857142857, + "max": 0.105 + }, "related_data": {} } } @@ -39734,7 +46306,7 @@ { "证书认证": { "data": { - "uuid": "云原生-5-952", + "uuid": "云原生-5-953", "seg": [ [ [ @@ -39743,7 +46315,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.105, + "max": 0.10504464285714285 + }, "related_data": {} } } @@ -39751,7 +46326,7 @@ { "Token认证": { "data": { - "uuid": "云原生-5-953", + "uuid": "云原生-5-954", "seg": [ [ [ @@ -39760,14 +46335,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10504464285714285, + "max": 0.10508928571428572 + }, "related_data": { "blog": { "data_id": [ - "50997465", - "50963985", - "73322057", - "79914216" + "50997465@oauth@云原生", + "50963985@oauth@云原生", + "73322057@oauth@云原生", + "79914216@oauth@云原生" ] } } @@ -39777,7 +46355,7 @@ { "截取器": { "data": { - "uuid": "云原生-5-954", + "uuid": "云原生-5-955", "seg": [ [ [ @@ -39786,7 +46364,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10508928571428572, + "max": 0.10513392857142857 + }, "related_data": {} } } @@ -39794,7 +46375,7 @@ { "和Web服务共存": { "data": { - "uuid": "云原生-5-955", + "uuid": "云原生-5-956", "seg": [ [ [], @@ -39805,7 +46386,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10513392857142857, + "max": 0.10517857142857143 + }, "related_data": {} } } @@ -39821,7 +46405,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.105, + "max": 0.10517857142857143 + }, "related_data": {} } } @@ -39832,7 +46419,7 @@ { "验证器": { "data": { - "uuid": "云原生-5-956", + "uuid": "云原生-5-957", "seg": [ [ [ @@ -39841,11 +46428,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10517857142857143, + "max": 0.10523809523809523 + }, "related_data": { "blog": { "data_id": [ - "81459979" + "81459979@控制器@云原生" ] } } @@ -39855,7 +46445,7 @@ { "REST接口": { "data": { - "uuid": "云原生-5-957", + "uuid": "云原生-5-958", "seg": [ [ [ @@ -39864,7 +46454,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10523809523809523, + "max": 0.10529761904761904 + }, "related_data": {} } } @@ -39872,7 +46465,7 @@ { "Nginx": { "data": { - "uuid": "云原生-5-958", + "uuid": "云原生-5-959", "seg": [ [ [ @@ -39880,20 +46473,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10529761904761904, + "max": 0.10535714285714284 + }, "related_data": { "blog": { "data_id": [ - "81060535", - "96671612", - "85238011", - "78348619", - "105787160", - "84306953", - "108384369", - "53242126", - "82733803", - "92657302" + "81060535@阿里云@云原生", + "96671612@docker@云原生", + "85238011@docker@云原生", + "78348619@分布式@云原生", + "105787160@运维@云原生", + "84306953@go@云原生", + "108384369@运维@云原生", + "82733803@阿里云@云原生", + "92657302@容器@云原生", + "82789666@阿里云@云原生" ] } } @@ -39914,7 +46510,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10517857142857143, + "max": 0.10535714285714284 + }, "related_data": {} } } @@ -39925,7 +46524,7 @@ { "Protobuf扩展语法": { "data": { - "uuid": "云原生-5-959", + "uuid": "云原生-5-960", "seg": [ [ [ @@ -39935,7 +46534,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10535714285714284, + "max": 0.1054017857142857 + }, "related_data": {} } } @@ -39943,7 +46545,7 @@ { "插件中读取扩展信息": { "data": { - "uuid": "云原生-5-960", + "uuid": "云原生-5-961", "seg": [ [ [ @@ -39954,7 +46556,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1054017857142857, + "max": 0.10544642857142855 + }, "related_data": {} } } @@ -39962,7 +46567,7 @@ { "生成REST代码": { "data": { - "uuid": "云原生-5-961", + "uuid": "云原生-5-962", "seg": [ [ [ @@ -39971,7 +46576,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10544642857142855, + "max": 0.10549107142857142 + }, "related_data": {} } } @@ -39979,7 +46587,7 @@ { "启动REST服务": { "data": { - "uuid": "云原生-5-962", + "uuid": "云原生-5-963", "seg": [ [ [ @@ -39989,7 +46597,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10549107142857142, + "max": 0.10553571428571427 + }, "related_data": {} } } @@ -40010,7 +46621,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10535714285714284, + "max": 0.10553571428571427 + }, "related_data": {} } } @@ -40021,7 +46635,7 @@ { "启动反射服务": { "data": { - "uuid": "云原生-5-963", + "uuid": "云原生-5-964", "seg": [ [ [ @@ -40031,7 +46645,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10553571428571427, + "max": 0.10557142857142857 + }, "related_data": {} } } @@ -40039,7 +46656,7 @@ { "查看服务列表": { "data": { - "uuid": "云原生-5-964", + "uuid": "云原生-5-965", "seg": [ [ [ @@ -40049,7 +46666,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10557142857142857, + "max": 0.10560714285714284 + }, "related_data": {} } } @@ -40057,17 +46677,21 @@ { "服务的方法列表": { "data": { - "uuid": "云原生-5-965", + "uuid": "云原生-5-966", "seg": [ [ [ "服务", "方法", - "列表" + "列表", + "方法列表" ] ] ], - "level": "2", + "level": { + "min": 0.10560714285714284, + "max": 0.10564285714285714 + }, "related_data": {} } } @@ -40075,7 +46699,7 @@ { "获取类型信息": { "data": { - "uuid": "云原生-5-966", + "uuid": "云原生-5-967", "seg": [ [ [ @@ -40084,7 +46708,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10564285714285714, + "max": 0.10567857142857141 + }, "related_data": {} } } @@ -40092,7 +46719,7 @@ { "调用方法": { "data": { - "uuid": "云原生-5-967", + "uuid": "云原生-5-968", "seg": [ [ [ @@ -40101,7 +46728,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10567857142857141, + "max": 0.1057142857142857 + }, "related_data": {} } } @@ -40117,7 +46747,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10553571428571427, + "max": 0.1057142857142857 + }, "related_data": {} } } @@ -40135,7 +46768,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10428571428571429, + "max": 0.1057142857142857 + }, "related_data": {} } } @@ -40149,7 +46785,7 @@ { "worker_id分配": { "data": { - "uuid": "云原生-5-968", + "uuid": "云原生-5-969", "seg": [ [ [ @@ -40159,18 +46795,21 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1057142857142857, + "max": 0.10591836734693877 + }, "related_data": { "blog": { "data_id": [ - "103639052", - "109861677", - "85070660", - "94012682", - "48103727", - "8207473", - "110730309", - "80369469" + "103639052@服务发现@云原生", + "109861677@分布式@云原生", + "85070660@docker@云原生", + "94012682@容器@云原生", + "48103727@控制器@云原生", + "8207473@ribbon@云原生", + "110730309@微服务@云原生", + "80369469@kafka@云原生" ] } } @@ -40189,7 +46828,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1057142857142857, + "max": 0.10591836734693877 + }, "related_data": {} } } @@ -40200,16 +46842,20 @@ { "进程内加锁": { "data": { - "uuid": "云原生-5-969", + "uuid": "云原生-5-970", "seg": [ [ [ "进程", - "加锁" + "加锁", + "进程内" ] ] ], - "level": "2", + "level": { + "min": 0.10591836734693877, + "max": 0.10595238095238095 + }, "related_data": {} } } @@ -40217,7 +46863,7 @@ { "尝试锁": { "data": { - "uuid": "云原生-5-970", + "uuid": "云原生-5-971", "seg": [ [ [ @@ -40226,7 +46872,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10595238095238095, + "max": 0.10598639455782312 + }, "related_data": {} } } @@ -40234,7 +46883,7 @@ { "基于Redis的setnx": { "data": { - "uuid": "云原生-5-971", + "uuid": "云原生-5-972", "seg": [ [ [ @@ -40243,7 +46892,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10598639455782312, + "max": 0.1060204081632653 + }, "related_data": {} } } @@ -40251,7 +46903,7 @@ { "基于ZooKeeper": { "data": { - "uuid": "云原生-5-972", + "uuid": "云原生-5-973", "seg": [ [ [ @@ -40259,7 +46911,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1060204081632653, + "max": 0.10605442176870748 + }, "related_data": {} } } @@ -40267,7 +46922,7 @@ { "基于etcd": { "data": { - "uuid": "云原生-5-973", + "uuid": "云原生-5-974", "seg": [ [ [ @@ -40275,15 +46930,24 @@ ] ] ], - "level": "2", - "related_data": {} + "level": { + "min": 0.10605442176870748, + "max": 0.10608843537414965 + }, + "related_data": { + "blog": { + "data_id": [ + "103438548@etcd@云原生" + ] + } + } } } }, { "如何选择合适的锁": { "data": { - "uuid": "云原生-5-974", + "uuid": "云原生-5-975", "seg": [ [ [ @@ -40292,7 +46956,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10608843537414965, + "max": 0.10612244897959183 + }, "related_data": {} } } @@ -40308,7 +46975,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10591836734693877, + "max": 0.10612244897959183 + }, "related_data": {} } } @@ -40319,7 +46989,7 @@ { "定时器的实现": { "data": { - "uuid": "云原生-5-975", + "uuid": "云原生-5-976", "seg": [ [ [ @@ -40327,7 +46997,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10612244897959183, + "max": 0.10619047619047618 + }, "related_data": {} } } @@ -40335,7 +47008,7 @@ { "任务分发": { "data": { - "uuid": "云原生-5-976", + "uuid": "云原生-5-977", "seg": [ [ [ @@ -40343,7 +47016,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10619047619047618, + "max": 0.10625850340136055 + }, "related_data": {} } } @@ -40351,7 +47027,7 @@ { "数据再平衡和幂等考量": { "data": { - "uuid": "云原生-5-977", + "uuid": "云原生-5-978", "seg": [ [ [ @@ -40364,7 +47040,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10625850340136055, + "max": 0.1063265306122449 + }, "related_data": {} } } @@ -40376,11 +47055,16 @@ [ [ "延时", - "系统" + "系统", + "延时任务", + "任务系统" ] ] ], - "level": "2", + "level": { + "min": 0.10612244897959183, + "max": 0.1063265306122449 + }, "related_data": {} } } @@ -40391,7 +47075,7 @@ { "搜索引擎": { "data": { - "uuid": "云原生-5-978", + "uuid": "云原生-5-979", "seg": [ [ [ @@ -40399,11 +47083,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1063265306122449, + "max": 0.10642857142857143 + }, "related_data": { "blog": { "data_id": [ - "118111210" + "118111210@运维@云原生" ] } } @@ -40413,17 +47100,21 @@ { "异构数据同步": { "data": { - "uuid": "云原生-5-979", + "uuid": "云原生-5-980", "seg": [ [ [ "异构", "数据", - "同步" + "同步", + "异构数据" ] ] ], - "level": "2", + "level": { + "min": 0.10642857142857143, + "max": 0.10653061224489795 + }, "related_data": {} } } @@ -40435,11 +47126,15 @@ [ [ "分布式", - "搜索引擎" + "搜索引擎", + "分布式搜索引擎" ] ] ], - "level": "2", + "level": { + "min": 0.1063265306122449, + "max": 0.10653061224489795 + }, "related_data": {} } } @@ -40450,7 +47145,7 @@ { "常见的负载均衡思路": { "data": { - "uuid": "云原生-5-980", + "uuid": "云原生-5-981", "seg": [ [ [ @@ -40461,7 +47156,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10653061224489795, + "max": 0.1065986394557823 + }, "related_data": {} } } @@ -40469,7 +47167,7 @@ { "基于洗牌算法的负载均衡": { "data": { - "uuid": "云原生-5-981", + "uuid": "云原生-5-982", "seg": [ [ [ @@ -40480,20 +47178,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1065986394557823, + "max": 0.10666666666666666 + }, "related_data": { "blog": { "data_id": [ - "118442118", - "83058819", - "79953788", - "79184125", - "117355310", - "51707270", - "80137282", - "36688043", - "39379965", - "41621083" + "118442118@无服务器@云原生", + "83058819@consul@云原生", + "79953788@分布式@云原生", + "79184125@控制器@云原生", + "117355310@运维@云原生", + "117355310@docker@云原生", + "51707270@分布式@云原生", + "80137282@cloud@云原生", + "39379965@中间件@云原生", + "41621083@中间件@云原生" ] } } @@ -40503,7 +47204,7 @@ { "负载均衡算法效果验证": { "data": { - "uuid": "云原生-5-982", + "uuid": "云原生-5-983", "seg": [ [ [ @@ -40511,11 +47212,15 @@ "均衡", "算法", "效果", - "验证" + "验证", + "算法效果" ] ] ], - "level": "2", + "level": { + "min": 0.10666666666666666, + "max": 0.10673469387755101 + }, "related_data": {} } } @@ -40531,7 +47236,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10653061224489795, + "max": 0.10673469387755101 + }, "related_data": {} } } @@ -40542,16 +47250,20 @@ { "场景举例": { "data": { - "uuid": "云原生-5-983", + "uuid": "云原生-5-984", "seg": [ [ [ "场景", - "举例" + "举例", + "场景举例" ] ] ], - "level": "2", + "level": { + "min": 0.10673469387755101, + "max": 0.10677551020408162 + }, "related_data": {} } } @@ -40559,7 +47271,7 @@ { "使用etcd实现配置更新": { "data": { - "uuid": "云原生-5-984", + "uuid": "云原生-5-985", "seg": [ [ [ @@ -40569,7 +47281,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10677551020408162, + "max": 0.10681632653061224 + }, "related_data": {} } } @@ -40577,7 +47292,7 @@ { "配置膨胀": { "data": { - "uuid": "云原生-5-985", + "uuid": "云原生-5-986", "seg": [ [ [ @@ -40586,7 +47301,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10681632653061224, + "max": 0.10685714285714284 + }, "related_data": {} } } @@ -40594,7 +47312,7 @@ { "配置版本管理": { "data": { - "uuid": "云原生-5-986", + "uuid": "云原生-5-987", "seg": [ [ [ @@ -40604,7 +47322,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10685714285714284, + "max": 0.10689795918367347 + }, "related_data": {} } } @@ -40612,7 +47333,7 @@ { "客户端容错": { "data": { - "uuid": "云原生-5-987", + "uuid": "云原生-5-988", "seg": [ [ [ @@ -40621,7 +47342,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.10689795918367347, + "max": 0.10693877551020407 + }, "related_data": {} } } @@ -40633,11 +47357,15 @@ [ [ "分布式", - "配置管理" + "配置管理", + "分布式配置管理" ] ] ], - "level": "2", + "level": { + "min": 0.10673469387755101, + "max": 0.10693877551020407 + }, "related_data": {} } } @@ -40648,17 +47376,21 @@ { "基于colly的单机爬虫": { "data": { - "uuid": "云原生-5-988", + "uuid": "云原生-5-989", "seg": [ [ [ "colly", "单机", - "爬虫" + "爬虫", + "单机爬虫" ] ] ], - "level": "1", + "level": { + "min": 0.10693877551020407, + "max": 0.10698979591836734 + }, "related_data": {} } } @@ -40666,22 +47398,26 @@ { "分布式爬虫": { "data": { - "uuid": "云原生-5-989", + "uuid": "云原生-5-990", "seg": [ [ [ "分布式", - "爬虫" + "爬虫", + "分布式爬虫" ] ] ], - "level": "1", + "level": { + "min": 0.10698979591836734, + "max": 0.1070408163265306 + }, "related_data": { "blog": { "data_id": [ - "72802961", - "93749143", - "109376379" + "72802961@分布式@云原生", + "93749143@分布式@云原生", + "109376379@分布式@云原生" ] } } @@ -40691,7 +47427,7 @@ { "结合nats和colly的消息生产": { "data": { - "uuid": "云原生-5-990", + "uuid": "云原生-5-991", "seg": [ [ [ @@ -40704,7 +47440,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1070408163265306, + "max": 0.10709183673469387 + }, "related_data": {} } } @@ -40712,7 +47451,7 @@ { "结合colly的消息消费": { "data": { - "uuid": "云原生-5-991", + "uuid": "云原生-5-992", "seg": [ [ [ @@ -40722,7 +47461,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.10709183673469387, + "max": 0.10714285714285714 + }, "related_data": {} } } @@ -40734,11 +47476,15 @@ [ [ "分布式", - "爬虫" + "爬虫", + "分布式爬虫" ] ] ], - "level": "1", + "level": { + "min": 0.10693877551020407, + "max": 0.10714285714285714 + }, "related_data": {} } } @@ -40753,7 +47499,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1057142857142857, + "max": 0.10714285714285714 + }, "related_data": {} } } @@ -40768,7 +47517,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.07142857142857142, + "max": 0.10714285714285714 + }, "related_data": {} } } @@ -40782,7 +47534,10 @@ [] ] ], - "level": "2", + "level": { + "min": 0.10714285714285714, + "max": 0.14285714285714285 + }, "related_data": {} } } @@ -40796,10 +47551,16 @@ "云", "原生", "初阶", - "开发" + "开发", + "云原生", + "原生初阶" ] ] ], + "level": { + "min": 0.0, + "max": 0.14285714285714285 + }, "related_data": {} } } @@ -40821,7 +47582,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.14285714285714285, + "max": 0.15238095238095237 + }, "related_data": {} } } @@ -40844,7 +47608,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.15238095238095237, + "max": 0.15357142857142855 + }, "related_data": {} } } @@ -40855,21 +47622,25 @@ { "核心概念": { "data": { - "uuid": "云原生-5-992", + "uuid": "云原生-5-993", "seg": [ [ [ "核心", - "概念" + "概念", + "核心概念" ] ] ], - "level": "2", + "level": { + "min": 0.15357142857142855, + "max": 0.1538690476190476 + }, "related_data": { "blog": { "data_id": [ - "109298445", - "102132544" + "109298445@docker@云原生", + "102132544@容器@云原生" ] } } @@ -40882,7 +47653,7 @@ { "Ubuntu环境下安装Docker": { "data": { - "uuid": "云原生-6-300", + "uuid": "云原生-6-301", "seg": [ [ [ @@ -40893,20 +47664,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1538690476190476, + "max": 0.15392857142857141 + }, "related_data": { "blog": { "data_id": [ - "79411479", - "80641922", - "51570149", - "96081183", - "95149299", - "109487664", - "78765175", - "103196001", - "52506321", - "79253416" + "79411479@docker@云原生", + "80641922@kafka@云原生", + "51570149@aws@云原生", + "96081183@运维@云原生", + "95149299@运维@云原生", + "109487664@docker@云原生", + "78765175@分布式@云原生", + "103196001@mesh@云原生", + "52506321@阿里云@云原生", + "79253416@docker@云原生" ] } } @@ -40916,7 +47690,7 @@ { "CentOS环境下安装Docker": { "data": { - "uuid": "云原生-6-301", + "uuid": "云原生-6-302", "seg": [ [ [ @@ -40927,20 +47701,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.15392857142857141, + "max": 0.15398809523809523 + }, "related_data": { "blog": { "data_id": [ - "79553227", - "107588353", - "111039468", - "74942036", - "51352966", - "87341635", - "84953155", - "109541336", - "78030056", - "73477730" + "79553227@docker@云原生", + "107588353@分布式@云原生", + "111039468@分布式@云原生", + "74942036@阿里云@云原生", + "51352966@kafka@云原生", + "87341635@cloud@云原生", + "84953155@阿里云@云原生", + "109541336@运维@云原生", + "78030056@阿里云@云原生", + "73477730@阿里云@云原生" ] } } @@ -40950,7 +47727,7 @@ { "通过脚本安装": { "data": { - "uuid": "云原生-6-302", + "uuid": "云原生-6-303", "seg": [ [ [ @@ -40959,20 +47736,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.15398809523809523, + "max": 0.15404761904761904 + }, "related_data": { "blog": { "data_id": [ - "78722752", - "109956865", - "82729076", - "88809791", - "113063671", - "83659254", - "79253740", - "88728253", - "103792638", - "51605625" + "78722752@docker@云原生", + "109956865@docker@云原生", + "82729076@docker@云原生", + "88809791@docker@云原生", + "113063671@docker@云原生", + "83659254@oauth@云原生", + "79253740@cloud@云原生", + "88728253@paas@云原生", + "103792638@cloud@云原生", + "51605625@控制器@云原生" ] } } @@ -40982,7 +47762,7 @@ { "macOS环境下安装Docker": { "data": { - "uuid": "云原生-6-303", + "uuid": "云原生-6-304", "seg": [ [ [ @@ -40993,11 +47773,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.15404761904761904, + "max": 0.15410714285714286 + }, "related_data": { "blog": { "data_id": [ - "109634503" + "109634503@cloud@云原生" ] } } @@ -41007,7 +47790,7 @@ { "Windows环境下安装Docker": { "data": { - "uuid": "云原生-6-304", + "uuid": "云原生-6-305", "seg": [ [ [ @@ -41018,20 +47801,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.15410714285714286, + "max": 0.15416666666666667 + }, "related_data": { "blog": { "data_id": [ - "40426133", - "52028945", - "77106159", - "51372604", - "51387161", - "55211390", - "71809233", - "116602041", - "81737716", - "85166294" + "40426133@zookeeper@云原生", + "52028945@分布式@云原生", + "52028945@zookeeper@云原生", + "77106159@kafka@云原生", + "51372604@docker@云原生", + "51387161@docker@云原生", + "51387161@go@云原生", + "55211390@kafka@云原生", + "71809233@容器@云原生", + "116602041@运维@云原生" ] } } @@ -41040,7 +47826,7 @@ } ], "data": { - "uuid": "云原生-5-993", + "uuid": "云原生-5-994", "seg": [ [ [ @@ -41050,7 +47836,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1538690476190476, + "max": 0.15416666666666667 + }, "related_data": {} } } @@ -41058,7 +47847,7 @@ { "配置Docker服务": { "data": { - "uuid": "云原生-5-994", + "uuid": "云原生-5-995", "seg": [ [ [ @@ -41068,7 +47857,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.15416666666666667, + "max": 0.15446428571428572 + }, "related_data": {} } } @@ -41076,7 +47868,7 @@ { "推荐实践环境": { "data": { - "uuid": "云原生-5-995", + "uuid": "云原生-5-996", "seg": [ [ [ @@ -41086,7 +47878,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.15446428571428572, + "max": 0.15476190476190477 + }, "related_data": {} } } @@ -41098,7 +47893,8 @@ [ [ "核心", - "概念" + "概念", + "核心概念" ], [ "安装", @@ -41106,7 +47902,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.15357142857142855, + "max": 0.15476190476190477 + }, "related_data": {} } } @@ -41117,7 +47916,7 @@ { "获取镜像": { "data": { - "uuid": "云原生-5-996", + "uuid": "云原生-5-997", "seg": [ [ [ @@ -41126,7 +47925,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.15476190476190477, + "max": 0.15493197278911566 + }, "related_data": {} } } @@ -41134,17 +47936,21 @@ { "查看镜像信息": { "data": { - "uuid": "云原生-5-997", + "uuid": "云原生-5-998", "seg": [ [ [ "查看", "镜像", - "信息" + "信息", + "镜像信息" ] ] ], - "level": "2", + "level": { + "min": 0.15493197278911566, + "max": 0.15510204081632653 + }, "related_data": {} } } @@ -41152,7 +47958,7 @@ { "搜寻镜像": { "data": { - "uuid": "云原生-5-998", + "uuid": "云原生-5-999", "seg": [ [ [ @@ -41161,7 +47967,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.15510204081632653, + "max": 0.15527210884353743 + }, "related_data": {} } } @@ -41169,7 +47978,7 @@ { "删除和清理镜像": { "data": { - "uuid": "云原生-5-999", + "uuid": "云原生-5-1000", "seg": [ [ [ @@ -41181,7 +47990,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.15527210884353743, + "max": 0.1554421768707483 + }, "related_data": {} } } @@ -41189,7 +48001,7 @@ { "创建镜像": { "data": { - "uuid": "云原生-5-1000", + "uuid": "云原生-5-1001", "seg": [ [ [ @@ -41198,7 +48010,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1554421768707483, + "max": 0.1556122448979592 + }, "related_data": {} } } @@ -41206,7 +48021,7 @@ { "存出和载入镜像": { "data": { - "uuid": "云原生-5-1001", + "uuid": "云原生-5-1002", "seg": [ [ [ @@ -41218,7 +48033,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1556122448979592, + "max": 0.15578231292517006 + }, "related_data": {} } } @@ -41226,7 +48044,7 @@ { "上传镜像": { "data": { - "uuid": "云原生-5-1002", + "uuid": "云原生-5-1003", "seg": [ [ [ @@ -41235,7 +48053,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.15578231292517006, + "max": 0.15595238095238095 + }, "related_data": {} } } @@ -41251,7 +48072,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.15476190476190477, + "max": 0.15595238095238095 + }, "related_data": {} } } @@ -41262,7 +48086,7 @@ { "创建容器": { "data": { - "uuid": "云原生-5-1003", + "uuid": "云原生-5-1004", "seg": [ [ [ @@ -41271,7 +48095,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.15595238095238095, + "max": 0.15612244897959185 + }, "related_data": {} } } @@ -41279,7 +48106,7 @@ { "停止容器": { "data": { - "uuid": "云原生-5-1004", + "uuid": "云原生-5-1005", "seg": [ [ [ @@ -41288,12 +48115,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.15612244897959185, + "max": 0.15629251700680272 + }, "related_data": { "blog": { "data_id": [ - "78587103", - "80889977" + "78587103@容器@云原生", + "80889977@docker@云原生" ] } } @@ -41303,7 +48133,7 @@ { "进入容器": { "data": { - "uuid": "云原生-5-1005", + "uuid": "云原生-5-1006", "seg": [ [ [ @@ -41311,16 +48141,20 @@ ] ] ], - "level": "2", + "level": { + "min": 0.15629251700680272, + "max": 0.1564625850340136 + }, "related_data": { "blog": { "data_id": [ - "109394433", - "88955533", - "81023274", - "52213735", - "42713127", - "57079665" + "109394433@docker@云原生", + "109394433@容器@云原生", + "88955533@容器@云原生", + "81023274@容器@云原生", + "52213735@容器@云原生", + "42713127@容器@云原生", + "57079665@容器@云原生" ] } } @@ -41330,7 +48164,7 @@ { "删除容器": { "data": { - "uuid": "云原生-5-1006", + "uuid": "云原生-5-1007", "seg": [ [ [ @@ -41339,12 +48173,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1564625850340136, + "max": 0.15663265306122448 + }, "related_data": { "blog": { "data_id": [ - "54891142", - "79987852" + "54891142@容器@云原生", + "79987852@docker@云原生", + "79987852@容器@云原生" ] } } @@ -41354,7 +48192,7 @@ { "导入和导出容器": { "data": { - "uuid": "云原生-5-1007", + "uuid": "云原生-5-1008", "seg": [ [ [ @@ -41366,7 +48204,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.15663265306122448, + "max": 0.15680272108843538 + }, "related_data": {} } } @@ -41374,7 +48215,7 @@ { "查看容器": { "data": { - "uuid": "云原生-5-1008", + "uuid": "云原生-5-1009", "seg": [ [ [ @@ -41383,7 +48224,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.15680272108843538, + "max": 0.15697278911564624 + }, "related_data": {} } } @@ -41391,16 +48235,20 @@ { "其他容器命令": { "data": { - "uuid": "云原生-5-1009", + "uuid": "云原生-5-1010", "seg": [ [ [ "容器", - "命令" + "命令", + "容器命令" ] ] ], - "level": "2", + "level": { + "min": 0.15697278911564624, + "max": 0.15714285714285714 + }, "related_data": {} } } @@ -41417,7 +48265,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.15595238095238095, + "max": 0.15714285714285714 + }, "related_data": {} } } @@ -41428,7 +48279,7 @@ { "Docker Hub公共镜像市场": { "data": { - "uuid": "云原生-5-1010", + "uuid": "云原生-5-1011", "seg": [ [ [ @@ -41436,15 +48287,19 @@ "hub", "公共", "镜像", - "市场" + "市场", + "镜像市场" ] ] ], - "level": "2", + "level": { + "min": 0.15714285714285714, + "max": 0.15753968253968254 + }, "related_data": { "blog": { "data_id": [ - "109442830" + "109442830@docker@云原生" ] } } @@ -41454,16 +48309,20 @@ { "第三方镜像市场": { "data": { - "uuid": "云原生-5-1011", + "uuid": "云原生-5-1012", "seg": [ [ [ "镜像", - "市场" + "市场", + "镜像市场" ] ] ], - "level": "2", + "level": { + "min": 0.15753968253968254, + "max": 0.15793650793650793 + }, "related_data": {} } } @@ -41471,7 +48330,7 @@ { "搭建本地私有仓库": { "data": { - "uuid": "云原生-5-1012", + "uuid": "云原生-5-1013", "seg": [ [ [ @@ -41481,11 +48340,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.15793650793650793, + "max": 0.15833333333333333 + }, "related_data": { "blog": { "data_id": [ - "78818462" + "78818462@docker@云原生" ] } } @@ -41504,7 +48366,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.15714285714285714, + "max": 0.15833333333333333 + }, "related_data": {} } } @@ -41515,7 +48380,7 @@ { "数据卷": { "data": { - "uuid": "云原生-5-1013", + "uuid": "云原生-5-1014", "seg": [ [ [ @@ -41523,7 +48388,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.15833333333333333, + "max": 0.15873015873015872 + }, "related_data": {} } } @@ -41531,7 +48399,7 @@ { "数据卷容器": { "data": { - "uuid": "云原生-5-1014", + "uuid": "云原生-5-1015", "seg": [ [ [ @@ -41540,11 +48408,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.15873015873015872, + "max": 0.15912698412698412 + }, "related_data": { "blog": { "data_id": [ - "109473024" + "109473024@docker@云原生" ] } } @@ -41554,18 +48425,22 @@ { "利用数据卷容器来迁移数据": { "data": { - "uuid": "云原生-5-1015", + "uuid": "云原生-5-1016", "seg": [ [ [ "利用", "数据", "容器", - "迁移" + "迁移", + "利用数据" ] ] ], - "level": "2", + "level": { + "min": 0.15912698412698412, + "max": 0.1595238095238095 + }, "related_data": {} } } @@ -41581,7 +48456,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.15833333333333333, + "max": 0.1595238095238095 + }, "related_data": {} } } @@ -41592,7 +48470,7 @@ { "端口映射实现容器访问": { "data": { - "uuid": "云原生-5-1016", + "uuid": "云原生-5-1017", "seg": [ [ [ @@ -41602,12 +48480,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1595238095238095, + "max": 0.1601190476190476 + }, "related_data": { "blog": { "data_id": [ - "109590013", - "94188902" + "109590013@docker@云原生", + "109590013@容器@云原生", + "94188902@容器@云原生" ] } } @@ -41617,7 +48499,7 @@ { "互联机制实现便捷互访": { "data": { - "uuid": "云原生-5-1017", + "uuid": "云原生-5-1018", "seg": [ [ [ @@ -41628,7 +48510,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1601190476190476, + "max": 0.16071428571428573 + }, "related_data": {} } } @@ -41647,7 +48532,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1595238095238095, + "max": 0.16071428571428573 + }, "related_data": {} } } @@ -41658,15 +48546,19 @@ { "基本结构": { "data": { - "uuid": "云原生-5-1018", + "uuid": "云原生-5-1019", "seg": [ [ [ - "结构" + "结构", + "基本结构" ] ] ], - "level": "2", + "level": { + "min": 0.16071428571428573, + "max": 0.16101190476190477 + }, "related_data": {} } } @@ -41677,7 +48569,7 @@ { "配置指令": { "data": { - "uuid": "云原生-6-305", + "uuid": "云原生-6-306", "seg": [ [ [ @@ -41686,7 +48578,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.16101190476190477, + "max": 0.1611607142857143 + }, "related_data": {} } } @@ -41694,7 +48589,7 @@ { "操作指令": { "data": { - "uuid": "云原生-6-306", + "uuid": "云原生-6-307", "seg": [ [ [ @@ -41703,11 +48598,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1611607142857143, + "max": 0.16130952380952382 + }, "related_data": { "blog": { "data_id": [ - "51674042" + "51674042@控制器@云原生" ] } } @@ -41716,7 +48614,7 @@ } ], "data": { - "uuid": "云原生-5-1019", + "uuid": "云原生-5-1020", "seg": [ [ [ @@ -41724,7 +48622,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.16101190476190477, + "max": 0.16130952380952382 + }, "related_data": {} } } @@ -41735,16 +48636,20 @@ { "命令选项": { "data": { - "uuid": "云原生-6-307", + "uuid": "云原生-6-308", "seg": [ [ [ "命令", - "选项" + "选项", + "命令选项" ] ] ], - "level": "2", + "level": { + "min": 0.16130952380952382, + "max": 0.16138392857142858 + }, "related_data": {} } } @@ -41752,17 +48657,21 @@ { "选择父镜像": { "data": { - "uuid": "云原生-6-308", + "uuid": "云原生-6-309", "seg": [ [ [ "选择", "父", - "镜像" + "镜像", + "父镜像" ] ] ], - "level": "2", + "level": { + "min": 0.16138392857142858, + "max": 0.16145833333333334 + }, "related_data": {} } } @@ -41770,7 +48679,7 @@ { "使用.dockerignore文件": { "data": { - "uuid": "云原生-6-309", + "uuid": "云原生-6-310", "seg": [ [ [ @@ -41779,7 +48688,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.16145833333333334, + "max": 0.1615327380952381 + }, "related_data": {} } } @@ -41787,7 +48699,7 @@ { "多步骤创建": { "data": { - "uuid": "云原生-6-310", + "uuid": "云原生-6-311", "seg": [ [ [ @@ -41796,14 +48708,18 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1615327380952381, + "max": 0.16160714285714287 + }, "related_data": { "blog": { "data_id": [ - "79448402", - "72810209", - "79585590", - "79340980" + "79448402@docker@云原生", + "72810209@控制器@云原生", + "79585590@go@云原生", + "79340980@阿里云@云原生", + "113577082@cloud@云原生" ] } } @@ -41812,7 +48728,7 @@ } ], "data": { - "uuid": "云原生-5-1020", + "uuid": "云原生-5-1021", "seg": [ [ [ @@ -41821,7 +48737,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.16130952380952382, + "max": 0.16160714285714287 + }, "related_data": {} } } @@ -41829,7 +48748,7 @@ { "最佳实践": { "data": { - "uuid": "云原生-5-1021", + "uuid": "云原生-5-1022", "seg": [ [ [ @@ -41837,7 +48756,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.16160714285714287, + "max": 0.1619047619047619 + }, "related_data": {} } } @@ -41854,7 +48776,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.16071428571428573, + "max": 0.1619047619047619 + }, "related_data": {} } } @@ -41866,11 +48791,15 @@ [ [ "基础", - "入门" + "入门", + "基础入门" ] ] ], - "level": "2", + "level": { + "min": 0.15238095238095237, + "max": 0.1619047619047619 + }, "related_data": {} } } @@ -41884,15 +48813,19 @@ { "基本架构": { "data": { - "uuid": "云原生-5-1022", + "uuid": "云原生-5-1023", "seg": [ [ [ - "架构" + "架构", + "基本架构" ] ] ], - "level": "2", + "level": { + "min": 0.1619047619047619, + "max": 0.16228571428571428 + }, "related_data": {} } } @@ -41900,16 +48833,20 @@ { "命名空间": { "data": { - "uuid": "云原生-5-1023", + "uuid": "云原生-5-1024", "seg": [ [ [ "命名", - "空间" + "空间", + "命名空间" ] ] ], - "level": "2", + "level": { + "min": 0.16228571428571428, + "max": 0.16266666666666668 + }, "related_data": {} } } @@ -41917,7 +48854,7 @@ { "控制组": { "data": { - "uuid": "云原生-5-1024", + "uuid": "云原生-5-1025", "seg": [ [ [ @@ -41925,7 +48862,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.16266666666666668, + "max": 0.16304761904761905 + }, "related_data": {} } } @@ -41933,7 +48873,7 @@ { "联合文件系统": { "data": { - "uuid": "云原生-5-1025", + "uuid": "云原生-5-1026", "seg": [ [ [ @@ -41942,7 +48882,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.16304761904761905, + "max": 0.16342857142857145 + }, "related_data": {} } } @@ -41950,17 +48893,21 @@ { "Linux网络虚拟化": { "data": { - "uuid": "云原生-5-1026", + "uuid": "云原生-5-1027", "seg": [ [ [ "linux", "网络", - "虚拟化" + "虚拟化", + "网络虚拟化" ] ] ], - "level": "2", + "level": { + "min": 0.16342857142857145, + "max": 0.16380952380952382 + }, "related_data": {} } } @@ -41976,7 +48923,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1619047619047619, + "max": 0.16380952380952382 + }, "related_data": {} } } @@ -41987,7 +48937,7 @@ { "安装Docker Registry": { "data": { - "uuid": "云原生-5-1027", + "uuid": "云原生-5-1028", "seg": [ [ [ @@ -41997,7 +48947,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.16380952380952382, + "max": 0.16412698412698415 + }, "related_data": {} } } @@ -42005,7 +48958,7 @@ { "配置TLS证书": { "data": { - "uuid": "云原生-5-1028", + "uuid": "云原生-5-1029", "seg": [ [ [ @@ -42015,7 +48968,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.16412698412698415, + "max": 0.16444444444444445 + }, "related_data": {} } } @@ -42023,7 +48979,7 @@ { "管理访问权限": { "data": { - "uuid": "云原生-5-1029", + "uuid": "云原生-5-1030", "seg": [ [ [ @@ -42033,7 +48989,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.16444444444444445, + "max": 0.16476190476190478 + }, "related_data": {} } } @@ -42041,7 +49000,7 @@ { "配置Registry": { "data": { - "uuid": "云原生-5-1030", + "uuid": "云原生-5-1031", "seg": [ [ [ @@ -42050,7 +49009,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.16476190476190478, + "max": 0.1650793650793651 + }, "related_data": {} } } @@ -42058,7 +49020,7 @@ { "批量管理镜像": { "data": { - "uuid": "云原生-5-1031", + "uuid": "云原生-5-1032", "seg": [ [ [ @@ -42068,7 +49030,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1650793650793651, + "max": 0.1653968253968254 + }, "related_data": {} } } @@ -42076,7 +49041,7 @@ { "使用通知系统": { "data": { - "uuid": "云原生-5-1032", + "uuid": "云原生-5-1033", "seg": [ [ [ @@ -42085,7 +49050,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1653968253968254, + "max": 0.16571428571428573 + }, "related_data": {} } } @@ -42102,7 +49070,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.16380952380952382, + "max": 0.16571428571428573 + }, "related_data": {} } } @@ -42113,7 +49084,7 @@ { "命名空间隔离的安全": { "data": { - "uuid": "云原生-5-1033", + "uuid": "云原生-5-1034", "seg": [ [ [ @@ -42122,7 +49093,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.16571428571428573, + "max": 0.16603174603174603 + }, "related_data": {} } } @@ -42130,7 +49104,7 @@ { "控制组资源控制的安全": { "data": { - "uuid": "云原生-5-1034", + "uuid": "云原生-5-1035", "seg": [ [ [ @@ -42140,7 +49114,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.16603174603174603, + "max": 0.16634920634920636 + }, "related_data": {} } } @@ -42148,17 +49125,22 @@ { "内核能力机制": { "data": { - "uuid": "云原生-5-1035", + "uuid": "云原生-5-1036", "seg": [ [ [ "内核", "能力", - "机制" + "机制", + "内核能力", + "能力机制" ] ] ], - "level": "2", + "level": { + "min": 0.16634920634920636, + "max": 0.16666666666666669 + }, "related_data": {} } } @@ -42166,7 +49148,7 @@ { "Docker服务端的防护": { "data": { - "uuid": "云原生-5-1036", + "uuid": "云原生-5-1037", "seg": [ [ [ @@ -42176,7 +49158,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.16666666666666669, + "max": 0.16698412698412698 + }, "related_data": {} } } @@ -42184,7 +49169,7 @@ { "更多安全特性的使用": { "data": { - "uuid": "云原生-5-1037", + "uuid": "云原生-5-1038", "seg": [ [ [ @@ -42192,7 +49177,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.16698412698412698, + "max": 0.16730158730158728 + }, "related_data": {} } } @@ -42203,7 +49191,7 @@ { "Docker Bench": { "data": { - "uuid": "云原生-6-311", + "uuid": "云原生-6-312", "seg": [ [ [ @@ -42212,22 +49200,18 @@ ] ] ], - "level": "2", - "related_data": { - "blog": { - "data_id": [ - "103722694", - "80469529" - ] - } - } + "level": { + "min": 0.16730158730158728, + "max": 0.16746031746031745 + }, + "related_data": {} } } }, { "clair": { "data": { - "uuid": "云原生-6-312", + "uuid": "云原生-6-313", "seg": [ [ [ @@ -42235,14 +49219,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.16746031746031745, + "max": 0.1676190476190476 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-1038", + "uuid": "云原生-5-1039", "seg": [ [ [ @@ -42250,7 +49237,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.16730158730158728, + "max": 0.1676190476190476 + }, "related_data": {} } } @@ -42268,7 +49258,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.16571428571428573, + "max": 0.1676190476190476 + }, "related_data": {} } } @@ -42279,7 +49272,7 @@ { "启动与配置参数": { "data": { - "uuid": "云原生-5-1039", + "uuid": "云原生-5-1040", "seg": [ [ [ @@ -42291,7 +49284,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1676190476190476, + "max": 0.16785714285714284 + }, "related_data": {} } } @@ -42299,7 +49295,7 @@ { "配置容器DNS和主机名": { "data": { - "uuid": "云原生-5-1040", + "uuid": "云原生-5-1041", "seg": [ [ [ @@ -42312,7 +49308,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.16785714285714284, + "max": 0.16809523809523808 + }, "related_data": {} } } @@ -42320,16 +49319,20 @@ { "容器访问控制": { "data": { - "uuid": "云原生-5-1041", + "uuid": "云原生-5-1042", "seg": [ [ [ "容器", - "访问控制" + "访问控制", + "容器访问控制" ] ] ], - "level": "2", + "level": { + "min": 0.16809523809523808, + "max": 0.16833333333333333 + }, "related_data": {} } } @@ -42337,7 +49340,7 @@ { "映射容器端口到宿主主机的实现": { "data": { - "uuid": "云原生-5-1042", + "uuid": "云原生-5-1043", "seg": [ [ [ @@ -42345,11 +49348,15 @@ "容器", "端口", "宿主", - "主机" + "主机", + "容器端口" ] ] ], - "level": "2", + "level": { + "min": 0.16833333333333333, + "max": 0.16857142857142857 + }, "related_data": {} } } @@ -42357,17 +49364,21 @@ { "配置容器网桥": { "data": { - "uuid": "云原生-5-1043", + "uuid": "云原生-5-1044", "seg": [ [ [ "配置", "容器", - "网桥" + "网桥", + "容器网桥" ] ] ], - "level": "2", + "level": { + "min": 0.16857142857142857, + "max": 0.1688095238095238 + }, "related_data": {} } } @@ -42375,7 +49386,7 @@ { "自定义网桥": { "data": { - "uuid": "云原生-5-1044", + "uuid": "云原生-5-1045", "seg": [ [ [ @@ -42384,7 +49395,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1688095238095238, + "max": 0.16904761904761906 + }, "related_data": {} } } @@ -42392,7 +49406,7 @@ { "使用OpenvSwitch网桥": { "data": { - "uuid": "云原生-5-1045", + "uuid": "云原生-5-1046", "seg": [ [ [ @@ -42401,7 +49415,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.16904761904761906, + "max": 0.1692857142857143 + }, "related_data": {} } } @@ -42409,7 +49426,7 @@ { "创建一个点到点连接": { "data": { - "uuid": "云原生-5-1046", + "uuid": "云原生-5-1047", "seg": [ [ [ @@ -42419,7 +49436,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1692857142857143, + "max": 0.16952380952380952 + }, "related_data": {} } } @@ -42432,11 +49452,15 @@ [ "高级", "网络", - "功能" + "功能", + "网络功能" ] ] ], - "level": "2", + "level": { + "min": 0.1676190476190476, + "max": 0.16952380952380952 + }, "related_data": {} } } @@ -42447,17 +49471,22 @@ { "容器网络模型": { "data": { - "uuid": "云原生-5-1047", + "uuid": "云原生-5-1048", "seg": [ [ [ "容器", "网络", - "模型" + "模型", + "容器网络", + "网络模型" ] ] ], - "level": "1", + "level": { + "min": 0.16952380952380952, + "max": 0.17015873015873015 + }, "related_data": {} } } @@ -42465,17 +49494,21 @@ { "Docker网络命令": { "data": { - "uuid": "云原生-5-1048", + "uuid": "云原生-5-1049", "seg": [ [ [ "docker", "网络", - "命令" + "命令", + "网络命令" ] ] ], - "level": "1", + "level": { + "min": 0.17015873015873015, + "max": 0.1707936507936508 + }, "related_data": {} } } @@ -42483,7 +49516,7 @@ { "构建跨主机容器网络": { "data": { - "uuid": "云原生-5-1049", + "uuid": "云原生-5-1050", "seg": [ [ [ @@ -42491,11 +49524,15 @@ "跨", "主机", "容器", - "网络" + "网络", + "容器网络" ] ] ], - "level": "1", + "level": { + "min": 0.1707936507936508, + "max": 0.17142857142857143 + }, "related_data": {} } } @@ -42510,11 +49547,17 @@ "插件", "化", "网络", - "功能" + "功能", + "插件化", + "化网络", + "网络功能" ] ] ], - "level": "2", + "level": { + "min": 0.16952380952380952, + "max": 0.17142857142857143 + }, "related_data": {} } } @@ -42526,11 +49569,15 @@ [ [ "进阶", - "技能" + "技能", + "进阶技能" ] ] ], - "level": "2", + "level": { + "min": 0.1619047619047619, + "max": 0.17142857142857143 + }, "related_data": {} } } @@ -42545,7 +49592,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.14285714285714285, + "max": 0.17142857142857143 + }, "related_data": {} } } @@ -42567,7 +49617,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17142857142857143, + "max": 0.17156023699802503 + }, "related_data": {} } } @@ -42583,7 +49636,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17156023699802503, + "max": 0.1716919025674786 + }, "related_data": {} } } @@ -42599,7 +49655,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1716919025674786, + "max": 0.1718235681369322 + }, "related_data": {} } } @@ -42615,7 +49674,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1718235681369322, + "max": 0.17195523370638577 + }, "related_data": {} } } @@ -42631,7 +49693,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17195523370638577, + "max": 0.17208689927583937 + }, "related_data": {} } } @@ -42647,7 +49712,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17208689927583937, + "max": 0.17221856484529294 + }, "related_data": {} } } @@ -42663,7 +49731,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17221856484529294, + "max": 0.17235023041474654 + }, "related_data": {} } } @@ -42678,7 +49749,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17142857142857143, + "max": 0.17235023041474654 + }, "related_data": {} } } @@ -42692,7 +49766,7 @@ { "Kubernetes的历史": { "data": { - "uuid": "云原生-5-1050", + "uuid": "云原生-5-1051", "seg": [ [ [ @@ -42701,20 +49775,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17235023041474654, + "max": 0.1726574500768049 + }, "related_data": { "blog": { "data_id": [ - "97227038", - "51282254", - "87365021", - "105908526", - "102523957", - "103667509", - "114137286", - "81870193", - "54565638", - "79492374" + "97227038@kubeless@云原生", + "51282254@kubernetes@云原生", + "87365021@kubernetes@云原生", + "102523957@dashboard@云原生", + "114137286@kubernetes@云原生", + "81870193@kubernetes@云原生", + "54565638@kubernetes@云原生", + "79492374@kubernetes@云原生", + "116761740@kubernetes@云原生", + "111311234@kubernetes@云原生" ] } } @@ -42731,7 +49808,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17235023041474654, + "max": 0.1726574500768049 + }, "related_data": {} } } @@ -42742,7 +49822,7 @@ { "环境准备": { "data": { - "uuid": "云原生-5-1051", + "uuid": "云原生-5-1052", "seg": [ [ [ @@ -42750,7 +49830,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1726574500768049, + "max": 0.1727342549923195 + }, "related_data": {} } } @@ -42758,7 +49841,7 @@ { "启动MySQL服务": { "data": { - "uuid": "云原生-5-1052", + "uuid": "云原生-5-1053", "seg": [ [ [ @@ -42768,7 +49851,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1727342549923195, + "max": 0.1728110599078341 + }, "related_data": {} } } @@ -42776,7 +49862,7 @@ { "启动Tomcat应用": { "data": { - "uuid": "云原生-5-1053", + "uuid": "云原生-5-1054", "seg": [ [ [ @@ -42785,16 +49871,19 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1728110599078341, + "max": 0.1728878648233487 + }, "related_data": { "blog": { "data_id": [ - "24717735", - "111336934", - "83218335", - "42739693", - "71910308", - "7884469" + "24717735@容器@云原生", + "111336934@容器@云原生", + "83218335@容器@云原生", + "42739693@中间件@云原生", + "71910308@阿里云@云原生", + "7884469@中间件@云原生" ] } } @@ -42804,7 +49893,7 @@ { "通过浏览器访问网页": { "data": { - "uuid": "云原生-5-1054", + "uuid": "云原生-5-1055", "seg": [ [ [ @@ -42814,7 +49903,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1728878648233487, + "max": 0.1729646697388633 + }, "related_data": {} } } @@ -42829,7 +49921,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1726574500768049, + "max": 0.1729646697388633 + }, "related_data": {} } } @@ -42840,7 +49935,7 @@ { "Master": { "data": { - "uuid": "云原生-5-1055", + "uuid": "云原生-5-1056", "seg": [ [ [ @@ -42848,7 +49943,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1729646697388633, + "max": 0.1729883020205601 + }, "related_data": {} } } @@ -42856,7 +49954,7 @@ { "Node": { "data": { - "uuid": "云原生-5-1056", + "uuid": "云原生-5-1057", "seg": [ [ [ @@ -42864,15 +49962,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1729883020205601, + "max": 0.1730119343022569 + }, "related_data": { "blog": { "data_id": [ - "23650917", - "103607944", - "84928232", - "107739956", - "86486513" + "23650917@oauth@云原生", + "103607944@中间件@云原生", + "107739956@中间件@云原生", + "86486513@阿里云@云原生" ] } } @@ -42885,7 +49985,7 @@ { "Pod定义详解": { "data": { - "uuid": "云原生-6-313", + "uuid": "云原生-6-314", "seg": [ [ [ @@ -42895,12 +49995,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1730119343022569, + "max": 0.17301332443647435 + }, "related_data": { "blog": { "data_id": [ - "78125093", - "111415831" + "78125093@paas@云原生", + "78125093@kubernetes@云原生", + "111415831@kubernetes@云原生" ] } } @@ -42910,20 +50014,24 @@ { "Pod的基本用法": { "data": { - "uuid": "云原生-6-314", + "uuid": "云原生-6-315", "seg": [ [ [ "pod", - "用法" + "用法", + "基本用法" ] ] ], - "level": "2", + "level": { + "min": 0.17301332443647435, + "max": 0.1730147145706918 + }, "related_data": { "blog": { "data_id": [ - "80886567" + "80886567@go@云原生" ] } } @@ -42933,7 +50041,7 @@ { "静态Pod": { "data": { - "uuid": "云原生-6-315", + "uuid": "云原生-6-316", "seg": [ [ [ @@ -42942,7 +50050,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1730147145706918, + "max": 0.17301610470490927 + }, "related_data": {} } } @@ -42950,7 +50061,7 @@ { "Pod容器共享Volume": { "data": { - "uuid": "云原生-6-316", + "uuid": "云原生-6-317", "seg": [ [ [ @@ -42961,14 +50072,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17301610470490927, + "max": 0.17301749483912673 + }, "related_data": { "blog": { "data_id": [ - "52324830", - "103179128", - "109335262", - "111663376" + "52324830@kubernetes@云原生", + "103179128@kubernetes@云原生", + "109335262@CNCF@云原生", + "111663376@devops@云原生" ] } } @@ -42978,7 +50092,7 @@ { "Pod的配置管理": { "data": { - "uuid": "云原生-6-317", + "uuid": "云原生-6-318", "seg": [ [ [ @@ -42987,7 +50101,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17301749483912673, + "max": 0.1730188849733442 + }, "related_data": {} } } @@ -42995,7 +50112,7 @@ { "在容器内获取Pod信息(Downward API)": { "data": { - "uuid": "云原生-6-318", + "uuid": "云原生-6-319", "seg": [ [ [ @@ -43004,15 +50121,19 @@ "pod", "信息", "downward", - "api" + "api", + "容器内" ] ] ], - "level": "2", + "level": { + "min": 0.1730188849733442, + "max": 0.17302027510756166 + }, "related_data": { "blog": { "data_id": [ - "79463688" + "79463688@kubernetes@云原生" ] } } @@ -43022,7 +50143,7 @@ { "Pod生命周期和重启策略": { "data": { - "uuid": "云原生-6-319", + "uuid": "云原生-6-320", "seg": [ [ [ @@ -43035,7 +50156,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17302027510756166, + "max": 0.17302166524177912 + }, "related_data": {} } } @@ -43043,7 +50167,7 @@ { "Pod健康检查": { "data": { - "uuid": "云原生-6-320", + "uuid": "云原生-6-321", "seg": [ [ [ @@ -43052,17 +50176,21 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17302166524177912, + "max": 0.17302305537599658 + }, "related_data": { "blog": { "data_id": [ - "109451037", - "103232471", - "80761157", - "118277853", - "82706973", - "103758149", - "117330223" + "109451037@kubernetes@云原生", + "103232471@kubernetes@云原生", + "80761157@kubernetes@云原生", + "118277853@云原生@云原生", + "82706973@etcd@云原生", + "82706973@kubernetes@云原生", + "103758149@kubernetes@云原生", + "117330223@kubernetes@云原生" ] } } @@ -43072,7 +50200,7 @@ { "玩转Pod调度": { "data": { - "uuid": "云原生-6-321", + "uuid": "云原生-6-322", "seg": [ [ [ @@ -43082,7 +50210,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17302305537599658, + "max": 0.173024445510214 + }, "related_data": {} } } @@ -43090,7 +50221,7 @@ { "Init Container(初始化容器)": { "data": { - "uuid": "云原生-6-322", + "uuid": "云原生-6-323", "seg": [ [ [ @@ -43101,13 +50232,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.173024445510214, + "max": 0.17302583564443147 + }, "related_data": { "blog": { "data_id": [ - "103138549", - "52105966", - "109780505" + "103138549@kubernetes@云原生", + "71425077@docker@云原生" ] } } @@ -43117,7 +50250,7 @@ { "Pod的升级和回滚": { "data": { - "uuid": "云原生-6-323", + "uuid": "云原生-6-324", "seg": [ [ [ @@ -43129,7 +50262,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17302583564443147, + "max": 0.17302722577864893 + }, "related_data": {} } } @@ -43137,7 +50273,7 @@ { "Pod的扩容和缩容": { "data": { - "uuid": "云原生-6-324", + "uuid": "云原生-6-325", "seg": [ [ [ @@ -43149,7 +50285,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17302722577864893, + "max": 0.1730286159128664 + }, "related_data": {} } } @@ -43157,7 +50296,7 @@ { "使用StatefulSet搭建MongoDB集群": { "data": { - "uuid": "云原生-6-325", + "uuid": "云原生-6-326", "seg": [ [ [ @@ -43168,12 +50307,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1730286159128664, + "max": 0.17303000604708385 + }, "related_data": { "blog": { "data_id": [ - "94722657", - "118631248" + "94722657@无服务器@云原生", + "118631248@中间件@云原生" ] } } @@ -43183,18 +50325,22 @@ { "Pod定义文件详解": { "data": { - "uuid": "云原生-6-326", + "uuid": "云原生-6-327", "seg": [ [ [ "pod", "定义", "文件", - "详解" + "详解", + "定义文件" ] ] ], - "level": "2", + "level": { + "min": 0.17303000604708385, + "max": 0.1730313961813013 + }, "related_data": {} } } @@ -43202,7 +50348,7 @@ { "基本操作": { "data": { - "uuid": "云原生-6-327", + "uuid": "云原生-6-328", "seg": [ [ [ @@ -43210,7 +50356,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1730313961813013, + "max": 0.17303278631551877 + }, "related_data": {} } } @@ -43218,7 +50367,7 @@ { "其他设置": { "data": { - "uuid": "云原生-6-328", + "uuid": "云原生-6-329", "seg": [ [ [ @@ -43226,7 +50375,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17303278631551877, + "max": 0.17303417644973623 + }, "related_data": {} } } @@ -43234,7 +50386,7 @@ { "Pod调度": { "data": { - "uuid": "云原生-6-329", + "uuid": "云原生-6-330", "seg": [ [ [ @@ -43243,14 +50395,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17303417644973623, + "max": 0.1730355665839537 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-1057", + "uuid": "云原生-5-1058", "seg": [ [ [ @@ -43258,7 +50413,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1730119343022569, + "max": 0.1730355665839537 + }, "related_data": {} } } @@ -43266,7 +50424,7 @@ { "Label(标签)": { "data": { - "uuid": "云原生-5-1058", + "uuid": "云原生-5-1059", "seg": [ [ [ @@ -43275,7 +50433,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1730355665839537, + "max": 0.1730591988656505 + }, "related_data": {} } } @@ -43283,7 +50444,7 @@ { "Replication Controller": { "data": { - "uuid": "云原生-5-1059", + "uuid": "云原生-5-1060", "seg": [ [ [ @@ -43292,7 +50453,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1730591988656505, + "max": 0.1730828311473473 + }, "related_data": {} } } @@ -43303,7 +50467,7 @@ { "运行Deployment": { "data": { - "uuid": "云原生-6-330", + "uuid": "云原生-6-331", "seg": [ [ [ @@ -43312,14 +50476,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1730828311473473, + "max": 0.17308676986096344 + }, "related_data": { "blog": { "data_id": [ - "98779719", - "81781509", - "6415366", - "53112069" + "98779719@kubernetes@云原生", + "81781509@kubernetes@云原生", + "6415366@devops@云原生", + "53112069@dashboard@云原生" ] } } @@ -43329,7 +50496,7 @@ { "命令vs配置文件": { "data": { - "uuid": "云原生-6-331", + "uuid": "云原生-6-332", "seg": [ [ [ @@ -43339,11 +50506,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17308676986096344, + "max": 0.17309070857457956 + }, "related_data": { "blog": { "data_id": [ - "40983143" + "40983143@mesh@云原生" ] } } @@ -43353,7 +50523,7 @@ { "Deployment配置文件简介": { "data": { - "uuid": "云原生-6-332", + "uuid": "云原生-6-333", "seg": [ [ [ @@ -43363,7 +50533,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17309070857457956, + "max": 0.17309464728819568 + }, "related_data": {} } } @@ -43371,7 +50544,7 @@ { "伸缩": { "data": { - "uuid": "云原生-6-333", + "uuid": "云原生-6-334", "seg": [ [ [ @@ -43379,7 +50552,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17309464728819568, + "max": 0.17309858600181183 + }, "related_data": {} } } @@ -43387,7 +50563,7 @@ { "Failover": { "data": { - "uuid": "云原生-6-334", + "uuid": "云原生-6-335", "seg": [ [ [ @@ -43395,7 +50571,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17309858600181183, + "max": 0.17310252471542797 + }, "related_data": {} } } @@ -43403,7 +50582,7 @@ { "用label控制Pod的位置": { "data": { - "uuid": "云原生-6-335", + "uuid": "云原生-6-336", "seg": [ [ [ @@ -43414,14 +50593,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17310252471542797, + "max": 0.1731064634290441 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-1060", + "uuid": "云原生-5-1061", "seg": [ [ [ @@ -43429,7 +50611,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1730828311473473, + "max": 0.1731064634290441 + }, "related_data": {} } } @@ -43437,7 +50622,7 @@ { "Horizontal Pod Autoscaler": { "data": { - "uuid": "云原生-5-1061", + "uuid": "云原生-5-1062", "seg": [ [ [ @@ -43447,7 +50632,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1731064634290441, + "max": 0.17313009571074087 + }, "related_data": {} } } @@ -43458,7 +50646,7 @@ { "扩容/缩容StatefulSet": { "data": { - "uuid": "云原生-6-336", + "uuid": "云原生-6-337", "seg": [ [ [ @@ -43468,11 +50656,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17313009571074087, + "max": 0.17315372799243767 + }, "related_data": { "blog": { "data_id": [ - "109335312" + "109335312@CNCF@云原生" ] } } @@ -43481,7 +50672,7 @@ } ], "data": { - "uuid": "云原生-5-1062", + "uuid": "云原生-5-1063", "seg": [ [ [ @@ -43489,7 +50680,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17313009571074087, + "max": 0.17315372799243767 + }, "related_data": {} } } @@ -43497,7 +50691,7 @@ { "Service(服务)": { "data": { - "uuid": "云原生-5-1063", + "uuid": "云原生-5-1064", "seg": [ [ [ @@ -43506,7 +50700,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17315372799243767, + "max": 0.17317736027413447 + }, "related_data": {} } } @@ -43514,7 +50711,7 @@ { "Volume(存储卷)": { "data": { - "uuid": "云原生-5-1064", + "uuid": "云原生-5-1065", "seg": [ [ [ @@ -43523,15 +50720,24 @@ ] ] ], - "level": "2", - "related_data": {} + "level": { + "min": 0.17317736027413447, + "max": 0.17320099255583127 + }, + "related_data": { + "blog": { + "data_id": [ + "84108424@kubernetes@云原生" + ] + } + } } } }, { "Persistent Volume": { "data": { - "uuid": "云原生-5-1065", + "uuid": "云原生-5-1066", "seg": [ [ [ @@ -43540,7 +50746,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17320099255583127, + "max": 0.17322462483752807 + }, "related_data": {} } } @@ -43548,25 +50757,35 @@ { "Namespace(命名空间)": { "data": { - "uuid": "云原生-5-1066", + "uuid": "云原生-5-1067", "seg": [ [ [ "namespace", "命名", - "空间" + "空间", + "命名空间" ] ] ], - "level": "2", - "related_data": {} + "level": { + "min": 0.17322462483752807, + "max": 0.17324825711922487 + }, + "related_data": { + "blog": { + "data_id": [ + "80712245@服务发现@云原生" + ] + } + } } } }, { "Annotation(注解)": { "data": { - "uuid": "云原生-5-1067", + "uuid": "云原生-5-1068", "seg": [ [ [ @@ -43575,7 +50794,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17324825711922487, + "max": 0.17327188940092167 + }, "related_data": {} } } @@ -43594,7 +50816,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1729646697388633, + "max": 0.17327188940092167 + }, "related_data": {} } } @@ -43610,7 +50835,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17235023041474654, + "max": 0.17327188940092167 + }, "related_data": {} } } @@ -43624,7 +50852,7 @@ { "系统要求": { "data": { - "uuid": "云原生-5-1068", + "uuid": "云原生-5-1069", "seg": [ [ [ @@ -43632,7 +50860,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17327188940092167, + "max": 0.17331029185867897 + }, "related_data": {} } } @@ -43640,7 +50871,7 @@ { "使用kubeadm工具快速安装Kubernetes集群": { "data": { - "uuid": "云原生-5-1069", + "uuid": "云原生-5-1070", "seg": [ [ [ @@ -43649,24 +50880,28 @@ "快速", "安装", "kubernetes", - "集群" + "集群", + "快速安装" ] ] ], - "level": "2", + "level": { + "min": 0.17331029185867897, + "max": 0.17334869431643626 + }, "related_data": { "blog": { "data_id": [ - "83116271", - "84839609", - "82753840", - "100075236", - "111060199", - "78703364", - "80150988", - "79624655", - "108874283", - "117264814" + "83116271@kubernetes@云原生", + "84839609@kubernetes@云原生", + "82753840@etcd@云原生", + "100075236@kubernetes@云原生", + "111060199@kubernetes@云原生", + "78703364@kubernetes@云原生", + "80150988@kubernetes@云原生", + "79624655@kubernetes@云原生", + "108874283@云原生@云原生", + "117264814@etcd@云原生" ] } } @@ -43676,7 +50911,7 @@ { "以二进制文件方式安装Kubernetes集群": { "data": { - "uuid": "云原生-5-1070", + "uuid": "云原生-5-1071", "seg": [ [ [ @@ -43685,15 +50920,20 @@ "方式", "安装", "kubernetes", - "集群" + "集群", + "二进制文件", + "文件方式" ] ] ], - "level": "2", + "level": { + "min": 0.17334869431643626, + "max": 0.17338709677419356 + }, "related_data": { "blog": { "data_id": [ - "88961823" + "88961823@dashboard@云原生" ] } } @@ -43703,7 +50943,7 @@ { "Kubernetes集群的安全设置": { "data": { - "uuid": "云原生-5-1071", + "uuid": "云原生-5-1072", "seg": [ [ [ @@ -43713,20 +50953,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17338709677419356, + "max": 0.17342549923195086 + }, "related_data": { "blog": { "data_id": [ - "78952987", - "108972354", - "100015071", - "88350745", - "103874977", - "111144990", - "78427434", - "87970338", - "90408315", - "107179715" + "78952987@kubernetes@云原生", + "108972354@kubernetes@云原生", + "100015071@dashboard@云原生", + "88350745@etcd@云原生", + "103874977@kubernetes@云原生", + "111144990@kubernetes@云原生", + "78427434@etcd@云原生", + "87970338@kubernetes@云原生", + "107179715@kubernetes@云原生", + "115208544@云原生@云原生" ] } } @@ -43736,7 +50979,7 @@ { "Kubernetes集群的网络配置": { "data": { - "uuid": "云原生-5-1072", + "uuid": "云原生-5-1073", "seg": [ [ [ @@ -43747,17 +50990,20 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17342549923195086, + "max": 0.17346390168970816 + }, "related_data": { "blog": { "data_id": [ - "86726904", - "78840971", - "107085155", - "115706317", - "103062021", - "108550317", - "83988253" + "86726904@dashboard@云原生", + "78840971@dashboard@云原生", + "107085155@kubernetes@云原生", + "115706317@etcd@云原生", + "103062021@dashboard@云原生", + "108550317@kubernetes@云原生", + "83988253@kubernetes@云原生" ] } } @@ -43767,18 +51013,21 @@ { "内网中的Kubernetes相关配置": { "data": { - "uuid": "云原生-5-1073", + "uuid": "云原生-5-1074", "seg": [ [ [ - "网中", + "内网", "kubernetes", "相关", "配置" ] ] ], - "level": "2", + "level": { + "min": 0.17346390168970816, + "max": 0.17350230414746545 + }, "related_data": {} } } @@ -43786,7 +51035,7 @@ { "Kubernetes的版本升级": { "data": { - "uuid": "云原生-5-1074", + "uuid": "云原生-5-1075", "seg": [ [ [ @@ -43795,20 +51044,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17350230414746545, + "max": 0.17354070660522275 + }, "related_data": { "blog": { "data_id": [ - "88784346", - "90108200", - "111469531", - "113279403", - "86550554", - "109379340", - "91304127", - "109011354", - "75303774", - "78533936" + "88784346@dashboard@云原生", + "90108200@dashboard@云原生", + "111469531@dashboard@云原生", + "113279403@dashboard@云原生", + "86550554@etcd@云原生", + "109379340@kubernetes@云原生", + "91304127@kubernetes@云原生", + "109011354@dashboard@云原生", + "75303774@dashboard@云原生", + "78533936@dashboard@云原生" ] } } @@ -43818,7 +51070,7 @@ { "Kubernetes核心服务配置详解": { "data": { - "uuid": "云原生-5-1075", + "uuid": "云原生-5-1076", "seg": [ [ [ @@ -43830,14 +51082,19 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17354070660522275, + "max": 0.17357910906298005 + }, "related_data": { "blog": { "data_id": [ - "68061976", - "108385558", - "115573675", - "78732470" + "68061976@etcd@云原生", + "108385558@aws@云原生", + "115573675@kubernetes@云原生", + "78732470@容器@云原生", + "78732470@微服务@云原生", + "78732470@kubernetes@云原生" ] } } @@ -43858,7 +51115,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17327188940092167, + "max": 0.17357910906298005 + }, "related_data": {} } } @@ -43869,7 +51129,7 @@ { "kubectl用法概述": { "data": { - "uuid": "云原生-5-1076", + "uuid": "云原生-5-1077", "seg": [ [ [ @@ -43879,7 +51139,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17357910906298005, + "max": 0.17364055299539172 + }, "related_data": {} } } @@ -43887,18 +51150,22 @@ { "kubectl子命令详解": { "data": { - "uuid": "云原生-5-1077", + "uuid": "云原生-5-1078", "seg": [ [ [ "kubectl", "子", "命令", - "详解" + "详解", + "子命令" ] ] ], - "level": "2", + "level": { + "min": 0.17364055299539172, + "max": 0.1737019969278034 + }, "related_data": {} } } @@ -43906,17 +51173,21 @@ { "kubectl参数列表": { "data": { - "uuid": "云原生-5-1078", + "uuid": "云原生-5-1079", "seg": [ [ [ "kubectl", "参数", - "列表" + "列表", + "参数列表" ] ] ], - "level": "2", + "level": { + "min": 0.1737019969278034, + "max": 0.17376344086021506 + }, "related_data": {} } } @@ -43924,7 +51195,7 @@ { "kubectl输出格式": { "data": { - "uuid": "云原生-5-1079", + "uuid": "云原生-5-1080", "seg": [ [ [ @@ -43934,7 +51205,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17376344086021506, + "max": 0.17382488479262673 + }, "related_data": {} } } @@ -43942,7 +51216,7 @@ { "kubectl操作示例": { "data": { - "uuid": "云原生-5-1080", + "uuid": "云原生-5-1081", "seg": [ [ [ @@ -43952,7 +51226,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17382488479262673, + "max": 0.1738863287250384 + }, "related_data": {} } } @@ -43967,11 +51244,16 @@ "命令行", "工具", "用法", - "详解" + "详解", + "命令行工具", + "工具用法" ] ] ], - "level": "2", + "level": { + "min": 0.17357910906298005, + "max": 0.1738863287250384 + }, "related_data": {} } } @@ -43982,7 +51264,7 @@ { "Service定义详解": { "data": { - "uuid": "云原生-5-1081", + "uuid": "云原生-5-1082", "seg": [ [ [ @@ -43992,11 +51274,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1738863287250384, + "max": 0.1739302172481896 + }, "related_data": { "blog": { "data_id": [ - "82585732" + "82585732@kubernetes@云原生" ] } } @@ -44006,16 +51291,20 @@ { "Service基本用法": { "data": { - "uuid": "云原生-5-1082", + "uuid": "云原生-5-1083", "seg": [ [ [ "service", - "用法" + "用法", + "基本用法" ] ] ], - "level": "2", + "level": { + "min": 0.1739302172481896, + "max": 0.1739741057713408 + }, "related_data": {} } } @@ -44023,7 +51312,7 @@ { "Headless Service": { "data": { - "uuid": "云原生-5-1083", + "uuid": "云原生-5-1084", "seg": [ [ [ @@ -44032,7 +51321,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1739741057713408, + "max": 0.174017994294492 + }, "related_data": {} } } @@ -44040,7 +51332,7 @@ { "集群外部访问Pod或Service": { "data": { - "uuid": "云原生-5-1084", + "uuid": "云原生-5-1085", "seg": [ [ [ @@ -44052,11 +51344,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.174017994294492, + "max": 0.17406188281764318 + }, "related_data": { "blog": { "data_id": [ - "108568423" + "108568423@devops@云原生" ] } } @@ -44066,7 +51361,7 @@ { "DNS服务搭建指南": { "data": { - "uuid": "云原生-5-1085", + "uuid": "云原生-5-1086", "seg": [ [ [ @@ -44077,7 +51372,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17406188281764318, + "max": 0.17410577134079439 + }, "related_data": {} } } @@ -44085,7 +51383,7 @@ { "自定义DNS和上游DNS服务器": { "data": { - "uuid": "云原生-5-1086", + "uuid": "云原生-5-1087", "seg": [ [ [ @@ -44099,7 +51397,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17410577134079439, + "max": 0.17414965986394557 + }, "related_data": {} } } @@ -44107,7 +51408,7 @@ { "Ingress:HTTP 7层路由机制": { "data": { - "uuid": "云原生-5-1087", + "uuid": "云原生-5-1088", "seg": [ [ [ @@ -44119,11 +51420,15 @@ "http", "层", "路由", - "机制" + "机制", + "路由机制" ] ] ], - "level": "2", + "level": { + "min": 0.17414965986394557, + "max": 0.17419354838709677 + }, "related_data": {} } } @@ -44138,7 +51443,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1738863287250384, + "max": 0.17419354838709677 + }, "related_data": {} } } @@ -44155,7 +51463,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17327188940092167, + "max": 0.17419354838709677 + }, "related_data": {} } } @@ -44169,7 +51480,7 @@ { "Kubernetes API Server概述": { "data": { - "uuid": "云原生-5-1088", + "uuid": "云原生-5-1089", "seg": [ [ [ @@ -44180,17 +51491,20 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17419354838709677, + "max": 0.17423195084485407 + }, "related_data": { "blog": { "data_id": [ - "75675706", - "111295825", - "102932107", - "104688418", - "93250137", - "109335267", - "49509187" + "75675706@kubernetes@云原生", + "111295825@etcd@云原生", + "102932107@kubernetes@云原生", + "104688418@dashboard@云原生", + "93250137@docker@云原生", + "109335267@CNCF@云原生", + "49509187@aws@云原生" ] } } @@ -44200,7 +51514,7 @@ { "独特的Kubernetes Proxy API接口": { "data": { - "uuid": "云原生-5-1089", + "uuid": "云原生-5-1090", "seg": [ [ [ @@ -44212,12 +51526,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17423195084485407, + "max": 0.17427035330261137 + }, "related_data": { "blog": { "data_id": [ - "55236300", - "90734847" + "55236300@kubernetes@云原生", + "90734847@iptables@云原生" ] } } @@ -44227,17 +51544,21 @@ { "集群功能模块之间的通信": { "data": { - "uuid": "云原生-5-1090", + "uuid": "云原生-5-1091", "seg": [ [ [ "集群", "功能模块", - "通信" + "通信", + "集群功能模块" ] ] ], - "level": "2", + "level": { + "min": 0.17427035330261137, + "max": 0.17430875576036867 + }, "related_data": {} } } @@ -44256,7 +51577,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17419354838709677, + "max": 0.17430875576036867 + }, "related_data": {} } } @@ -44267,7 +51591,7 @@ { "Node Controller": { "data": { - "uuid": "云原生-5-1091", + "uuid": "云原生-5-1092", "seg": [ [ [ @@ -44276,11 +51600,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17430875576036867, + "max": 0.17433755760368663 + }, "related_data": { "blog": { "data_id": [ - "117720264" + "117720264@运维@云原生" ] } } @@ -44290,7 +51617,7 @@ { "ResourceQuota Controller": { "data": { - "uuid": "云原生-5-1092", + "uuid": "云原生-5-1093", "seg": [ [ [ @@ -44299,7 +51626,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17433755760368663, + "max": 0.17436635944700463 + }, "related_data": {} } } @@ -44307,7 +51637,7 @@ { "Namespace Controller": { "data": { - "uuid": "云原生-5-1093", + "uuid": "云原生-5-1094", "seg": [ [ [ @@ -44316,20 +51646,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17436635944700463, + "max": 0.1743951612903226 + }, "related_data": { "blog": { "data_id": [ - "75675761", - "44698845", - "27679153", - "70917104", - "44889219", - "108101445", - "86514115", - "79107380", - "49950813", - "85235220" + "75675761@kubernetes@云原生", + "44698845@控制器@云原生", + "27679153@控制器@云原生", + "70917104@控制器@云原生", + "44889219@控制器@云原生", + "108101445@控制器@云原生", + "86514115@控制器@云原生", + "79107380@控制器@云原生", + "49950813@控制器@云原生", + "85235220@控制器@云原生" ] } } @@ -44339,7 +51672,7 @@ { "Service Controller与Endpoint Controller": { "data": { - "uuid": "云原生-5-1094", + "uuid": "云原生-5-1095", "seg": [ [ [ @@ -44352,13 +51685,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1743951612903226, + "max": 0.17442396313364056 + }, "related_data": { "blog": { "data_id": [ - "6053006", - "6785574", - "102679560" + "6053006@spring@云原生", + "6785574@spring@云原生", + "102679560@docker@云原生" ] } } @@ -44378,7 +51714,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17430875576036867, + "max": 0.17442396313364056 + }, "related_data": {} } } @@ -44396,7 +51735,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17442396313364056, + "max": 0.17453917050691245 + }, "related_data": {} } } @@ -44407,7 +51749,7 @@ { "节点管理": { "data": { - "uuid": "云原生-5-1095", + "uuid": "云原生-5-1096", "seg": [ [ [ @@ -44416,7 +51758,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17453917050691245, + "max": 0.17456797235023042 + }, "related_data": {} } } @@ -44424,7 +51769,7 @@ { "Pod管理": { "data": { - "uuid": "云原生-5-1096", + "uuid": "云原生-5-1097", "seg": [ [ [ @@ -44433,7 +51778,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17456797235023042, + "max": 0.1745967741935484 + }, "related_data": {} } } @@ -44441,16 +51789,20 @@ { "容器健康检查": { "data": { - "uuid": "云原生-5-1097", + "uuid": "云原生-5-1098", "seg": [ [ [ "容器", - "健康检查" + "健康检查", + "容器健康检查" ] ] ], - "level": "2", + "level": { + "min": 0.1745967741935484, + "max": 0.17462557603686638 + }, "related_data": {} } } @@ -44458,7 +51810,7 @@ { "cAdvisor资源监控": { "data": { - "uuid": "云原生-5-1098", + "uuid": "云原生-5-1099", "seg": [ [ [ @@ -44468,7 +51820,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17462557603686638, + "max": 0.17465437788018434 + }, "related_data": {} } } @@ -44485,7 +51840,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17453917050691245, + "max": 0.17465437788018434 + }, "related_data": {} } } @@ -44504,7 +51862,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17465437788018434, + "max": 0.1747695852534562 + }, "related_data": {} } } @@ -44515,7 +51876,7 @@ { "API Server认证管理(Authentication)": { "data": { - "uuid": "云原生-5-1099", + "uuid": "云原生-5-1100", "seg": [ [ [ @@ -44527,7 +51888,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1747695852534562, + "max": 0.17479262672811058 + }, "related_data": {} } } @@ -44535,7 +51899,7 @@ { "API Server授木又管理(Authorization)": { "data": { - "uuid": "云原生-5-1100", + "uuid": "云原生-5-1101", "seg": [ [ [ @@ -44544,11 +51908,15 @@ "授", "木", "管理", - "authorization" + "authorization", + "又管理" ] ] ], - "level": "2", + "level": { + "min": 0.17479262672811058, + "max": 0.17481566820276495 + }, "related_data": {} } } @@ -44556,7 +51924,7 @@ { "Admission Control(准入控制)": { "data": { - "uuid": "云原生-5-1101", + "uuid": "云原生-5-1102", "seg": [ [ [ @@ -44567,12 +51935,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17481566820276495, + "max": 0.17483870967741935 + }, "related_data": { "blog": { "data_id": [ - "50818615", - "80329769" + "80329769@控制器@云原生", + "50818615@控制器@云原生" ] } } @@ -44582,7 +51953,7 @@ { "Service Account": { "data": { - "uuid": "云原生-5-1102", + "uuid": "云原生-5-1103", "seg": [ [ [ @@ -44591,7 +51962,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17483870967741935, + "max": 0.17486175115207372 + }, "related_data": {} } } @@ -44599,7 +51973,7 @@ { "Secret私密凭据": { "data": { - "uuid": "云原生-5-1103", + "uuid": "云原生-5-1104", "seg": [ [ [ @@ -44608,7 +51982,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17486175115207372, + "max": 0.1748847926267281 + }, "related_data": {} } } @@ -44625,7 +52002,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1747695852534562, + "max": 0.1748847926267281 + }, "related_data": {} } } @@ -44636,17 +52016,21 @@ { "Kubernetes网络模型": { "data": { - "uuid": "云原生-5-1104", + "uuid": "云原生-5-1105", "seg": [ [ [ "kubernetes", "网络", - "模型" + "模型", + "网络模型" ] ] ], - "level": "1", + "level": { + "min": 0.1748847926267281, + "max": 0.1749012508229098 + }, "related_data": {} } } @@ -44654,17 +52038,21 @@ { "Docker的网络基础": { "data": { - "uuid": "云原生-5-1105", + "uuid": "云原生-5-1106", "seg": [ [ [ "docker", "网络", - "基础" + "基础", + "网络基础" ] ] ], - "level": "1", + "level": { + "min": 0.1749012508229098, + "max": 0.17491770901909148 + }, "related_data": {} } } @@ -44672,7 +52060,7 @@ { "Docker的网络实现": { "data": { - "uuid": "云原生-5-1106", + "uuid": "云原生-5-1107", "seg": [ [ [ @@ -44681,7 +52069,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.17491770901909148, + "max": 0.1749341672152732 + }, "related_data": {} } } @@ -44704,7 +52095,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1749341672152732, + "max": 0.17493581303489136 + }, "related_data": {} } } @@ -44721,14 +52115,11 @@ ] ] ], - "level": "1", - "related_data": { - "blog": { - "data_id": [ - "71425077" - ] - } - } + "level": { + "min": 0.17493581303489136, + "max": 0.17493745885450954 + }, + "related_data": {} } } }, @@ -44744,7 +52135,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.17493745885450954, + "max": 0.1749391046741277 + }, "related_data": {} } } @@ -44761,7 +52155,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1749391046741277, + "max": 0.17494075049374588 + }, "related_data": {} } } @@ -44777,18 +52174,23 @@ "网络", "模型", "优缺点", - "分析" + "分析", + "基础网络", + "网络模型" ] ] ], - "level": "1", + "level": { + "min": 0.17494075049374588, + "max": 0.17494239631336406 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-6-337", + "uuid": "云原生-6-338", "seg": [ [ [ @@ -44799,7 +52201,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1749341672152732, + "max": 0.17494239631336406 + }, "related_data": {} } } @@ -44816,15 +52221,19 @@ [ "flannel", "网络", - "方案" + "方案", + "网络方案" ] ] ], - "level": "1", + "level": { + "min": 0.17494239631336406, + "max": 0.174945139346061 + }, "related_data": { "blog": { "data_id": [ - "77899108" + "77899108@kubernetes@云原生" ] } } @@ -44840,23 +52249,27 @@ [ "calico", "网络", - "方案" + "方案", + "网络方案" ] ] ], - "level": "1", + "level": { + "min": 0.174945139346061, + "max": 0.17494788237875794 + }, "related_data": { "blog": { "data_id": [ - "85870560", - "94511717", - "112727418", - "112760489", - "82725185", - "109484824", - "118117605", - "7999792", - "110189214" + "85870560@kubernetes@云原生", + "94511717@运维@云原生", + "112727418@运维@云原生", + "112760489@运维@云原生", + "82725185@mesh@云原生", + "109484824@运维@云原生", + "118117605@docker@云原生", + "7999792@中间件@云原生", + "110189214@中间件@云原生" ] } } @@ -44872,18 +52285,22 @@ [ "网络", "方案", - "分析" + "分析", + "网络方案" ] ] ], - "level": "1", + "level": { + "min": 0.17494788237875794, + "max": 0.1749506254114549 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-6-338", + "uuid": "云原生-6-339", "seg": [ [ [ @@ -44894,14 +52311,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.17494239631336406, + "max": 0.1749506254114549 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-1107", + "uuid": "云原生-5-1108", "seg": [ [ [ @@ -44910,7 +52330,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1749341672152732, + "max": 0.1749506254114549 + }, "related_data": {} } } @@ -44918,17 +52341,21 @@ { "CNI网络模型": { "data": { - "uuid": "云原生-5-1108", + "uuid": "云原生-5-1109", "seg": [ [ [ "cni", "网络", - "模型" + "模型", + "网络模型" ] ] ], - "level": "1", + "level": { + "min": 0.1749506254114549, + "max": 0.1749670836076366 + }, "related_data": {} } } @@ -44936,17 +52363,21 @@ { "Kubernetes网络策略": { "data": { - "uuid": "云原生-5-1109", + "uuid": "云原生-5-1110", "seg": [ [ [ "kubernetes", "网络", - "策略" + "策略", + "网络策略" ] ] ], - "level": "1", + "level": { + "min": 0.1749670836076366, + "max": 0.17498354180381828 + }, "related_data": {} } } @@ -44954,17 +52385,21 @@ { "开源的网络组件": { "data": { - "uuid": "云原生-5-1110", + "uuid": "云原生-5-1111", "seg": [ [ [ "开源", "网络", - "组件" + "组件", + "网络组件" ] ] ], - "level": "1", + "level": { + "min": 0.17498354180381828, + "max": 0.175 + }, "related_data": {} } } @@ -44976,11 +52411,15 @@ [ [ "网络", - "原理" + "原理", + "网络原理" ] ] ], - "level": "2", + "level": { + "min": 0.1748847926267281, + "max": 0.175 + }, "related_data": {} } } @@ -44991,7 +52430,7 @@ { "共享存储机制概述": { "data": { - "uuid": "云原生-5-1111", + "uuid": "云原生-5-1112", "seg": [ [ [ @@ -45002,7 +52441,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.175, + "max": 0.17502304147465436 + }, "related_data": {} } } @@ -45010,7 +52452,7 @@ { "PV详解": { "data": { - "uuid": "云原生-5-1112", + "uuid": "云原生-5-1113", "seg": [ [ [ @@ -45019,7 +52461,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17502304147465436, + "max": 0.17504608294930873 + }, "related_data": {} } } @@ -45027,7 +52472,7 @@ { "PVC详解": { "data": { - "uuid": "云原生-5-1113", + "uuid": "云原生-5-1114", "seg": [ [ [ @@ -45036,7 +52481,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17504608294930873, + "max": 0.17506912442396314 + }, "related_data": {} } } @@ -45044,7 +52492,7 @@ { "PV和PVC的生命周期": { "data": { - "uuid": "云原生-5-1114", + "uuid": "云原生-5-1115", "seg": [ [ [ @@ -45056,7 +52504,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17506912442396314, + "max": 0.1750921658986175 + }, "related_data": {} } } @@ -45064,7 +52515,7 @@ { "StorageClass详解": { "data": { - "uuid": "云原生-5-1115", + "uuid": "云原生-5-1116", "seg": [ [ [ @@ -45073,7 +52524,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1750921658986175, + "max": 0.17511520737327188 + }, "related_data": {} } } @@ -45090,7 +52544,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.175, + "max": 0.17511520737327188 + }, "related_data": {} } } @@ -45103,11 +52560,15 @@ [ "kubernetes", "核心", - "原理" + "原理", + "核心原理" ] ] ], - "level": "2", + "level": { + "min": 0.17419354838709677, + "max": 0.17511520737327188 + }, "related_data": {} } } @@ -45127,7 +52588,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17511520737327188, + "max": 0.17542242703533026 + }, "related_data": {} } } @@ -45138,7 +52602,7 @@ { "Kubernetes API概述": { "data": { - "uuid": "云原生-5-1116", + "uuid": "云原生-5-1117", "seg": [ [ [ @@ -45148,16 +52612,19 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17542242703533026, + "max": 0.17548387096774193 + }, "related_data": { "blog": { "data_id": [ - "101345091", - "115153067", - "102874791", - "113271514", - "109335313", - "103026131" + "101345091@kubernetes@云原生", + "115153067@etcd@云原生", + "102874791@kubernetes@云原生", + "113271514@云原生@云原生", + "109335313@CNCF@云原生", + "103026131@kubernetes@云原生" ] } } @@ -45167,7 +52634,7 @@ { "API版本": { "data": { - "uuid": "云原生-5-1117", + "uuid": "云原生-5-1118", "seg": [ [ [ @@ -45176,7 +52643,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17548387096774193, + "max": 0.1755453149001536 + }, "related_data": {} } } @@ -45184,7 +52654,7 @@ { "API Groups(API组)": { "data": { - "uuid": "云原生-5-1118", + "uuid": "云原生-5-1119", "seg": [ [ [ @@ -45194,21 +52664,18 @@ ] ] ], - "level": "2", - "related_data": { - "blog": { - "data_id": [ - "82986606" - ] - } - } + "level": { + "min": 0.1755453149001536, + "max": 0.1756067588325653 + }, + "related_data": {} } } }, { "API方法说明": { "data": { - "uuid": "云原生-5-1119", + "uuid": "云原生-5-1120", "seg": [ [ [ @@ -45217,11 +52684,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1756067588325653, + "max": 0.17566820276497697 + }, "related_data": { "blog": { "data_id": [ - "56012027" + "56012027@zookeeper@云原生", + "112822138@控制器@云原生" ] } } @@ -45231,7 +52702,7 @@ { "API响应说明": { "data": { - "uuid": "云原生-5-1120", + "uuid": "云原生-5-1121", "seg": [ [ [ @@ -45240,8 +52711,17 @@ ] ] ], - "level": "2", - "related_data": {} + "level": { + "min": 0.17566820276497697, + "max": 0.17572964669738864 + }, + "related_data": { + "blog": { + "data_id": [ + "82986606@kafka@云原生" + ] + } + } } } } @@ -45257,7 +52737,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17542242703533026, + "max": 0.17572964669738864 + }, "related_data": {} } } @@ -45268,7 +52751,7 @@ { "Jersey": { "data": { - "uuid": "云原生-5-1121", + "uuid": "云原生-5-1122", "seg": [ [ [ @@ -45276,12 +52759,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17572964669738864, + "max": 0.1758320532514081 + }, "related_data": { "blog": { "data_id": [ - "89307378", - "99829100" + "89307378@cloud@云原生", + "99829100@eureka@云原生" ] } } @@ -45291,7 +52777,7 @@ { "Fabric8": { "data": { - "uuid": "云原生-5-1122", + "uuid": "云原生-5-1123", "seg": [ [ [ @@ -45299,7 +52785,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1758320532514081, + "max": 0.17593445980542755 + }, "related_data": {} } } @@ -45307,13 +52796,16 @@ { "使用说明": { "data": { - "uuid": "云原生-5-1123", + "uuid": "云原生-5-1124", "seg": [ [ [] ] ], - "level": "2", + "level": { + "min": 0.17593445980542755, + "max": 0.17603686635944701 + }, "related_data": {} } } @@ -45332,20 +52824,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17572964669738864, + "max": 0.17603686635944701 + }, "related_data": { "blog": { "data_id": [ - "48978891", - "112975700", - "115372006", - "81148498", - "109895953", - "40958303", - "105236153", - "116569199", - "110004716", - "109103682" + "48978891@中间件@云原生", + "112975700@分布式@云原生", + "115372006@中间件@云原生", + "81148498@spring@云原生", + "109895953@中间件@云原生", + "40958303@中间件@云原生", + "105236153@go@云原生", + "116569199@docker@云原生", + "110004716@中间件@云原生", + "109103682@中间件@云原生" ] } } @@ -45364,7 +52859,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17511520737327188, + "max": 0.17603686635944701 + }, "related_data": {} } } @@ -45378,7 +52876,7 @@ { "Node的管理": { "data": { - "uuid": "云原生-5-1124", + "uuid": "云原生-5-1125", "seg": [ [ [ @@ -45387,7 +52885,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17603686635944701, + "max": 0.1760624679979519 + }, "related_data": {} } } @@ -45395,18 +52896,23 @@ { "更新资源对象的Label": { "data": { - "uuid": "云原生-5-1125", + "uuid": "云原生-5-1126", "seg": [ [ [ "更新", "资源", "对象", - "label" + "label", + "更新资源", + "资源对象" ] ] ], - "level": "2", + "level": { + "min": 0.1760624679979519, + "max": 0.17608806963645673 + }, "related_data": {} } } @@ -45414,7 +52920,7 @@ { "Namespace:集群环境共享与隔离": { "data": { - "uuid": "云原生-5-1126", + "uuid": "云原生-5-1127", "seg": [ [ [ @@ -45425,14 +52931,18 @@ [ "集群", "环境", - "共享" + "共享", + "集群环境" ], [ "隔离" ] ] ], - "level": "2", + "level": { + "min": 0.17608806963645673, + "max": 0.1761136712749616 + }, "related_data": {} } } @@ -45440,7 +52950,7 @@ { "Kubernetes资源管理": { "data": { - "uuid": "云原生-5-1127", + "uuid": "云原生-5-1128", "seg": [ [ [ @@ -45449,13 +52959,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1761136712749616, + "max": 0.17613927291346648 + }, "related_data": { "blog": { "data_id": [ - "51593535", - "109335301", - "109335306" + "51593535@kubernetes@云原生", + "109335301@CNCF@云原生", + "109335306@CNCF@云原生" ] } } @@ -45465,7 +52978,7 @@ { "资源紧缺时的Pod驱逐机制": { "data": { - "uuid": "云原生-5-1128", + "uuid": "云原生-5-1129", "seg": [ [ [ @@ -45477,7 +52990,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17613927291346648, + "max": 0.17616487455197133 + }, "related_data": {} } } @@ -45485,7 +53001,7 @@ { "Pod Disruption Budget(主动驱逐保护)": { "data": { - "uuid": "云原生-5-1129", + "uuid": "云原生-5-1130", "seg": [ [ [ @@ -45498,7 +53014,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17616487455197133, + "max": 0.1761904761904762 + }, "related_data": {} } } @@ -45506,7 +53025,7 @@ { "Kubernetes集群的高可用部署方案": { "data": { - "uuid": "云原生-5-1130", + "uuid": "云原生-5-1131", "seg": [ [ [ @@ -45515,17 +53034,22 @@ "高", "可用", "部署", - "方案" + "方案", + "部署方案" ] ] ], - "level": "2", + "level": { + "min": 0.1761904761904762, + "max": 0.17621607782898108 + }, "related_data": { "blog": { "data_id": [ - "85002337", - "112797031", - "108343839" + "85002337@paas@云原生", + "85002337@kubernetes@云原生", + "112797031@devops@云原生", + "108343839@中间件@云原生" ] } } @@ -45550,7 +53074,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17621607782898108, + "max": 0.17622034476873188 + }, "related_data": {} } } @@ -45566,14 +53093,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17622034476873188, + "max": 0.1762246117084827 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-6-339", + "uuid": "云原生-6-340", "seg": [ [ [ @@ -45582,7 +53112,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17621607782898108, + "max": 0.1762246117084827 + }, "related_data": {} } } @@ -45599,14 +53132,17 @@ [] ] ], - "level": "2", + "level": { + "min": 0.1762246117084827, + "max": 0.1762331455879843 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-6-340", + "uuid": "云原生-6-341", "seg": [ [ [ @@ -45614,16 +53150,19 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1762246117084827, + "max": 0.1762331455879843 + }, "related_data": { "blog": { "data_id": [ - "78853416", - "78618190", - "78704395", - "88979793", - "86490826", - "72547951" + "78853416@dashboard@云原生", + "78618190@dashboard@云原生", + "78704395@kubernetes@云原生", + "88979793@dashboard@云原生", + "86490826@dashboard@云原生", + "72547951@dashboard@云原生" ] } } @@ -45645,20 +53184,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1762331455879843, + "max": 0.17623599021448486 + }, "related_data": { "blog": { "data_id": [ - "115333604", - "109792398", - "78881008", - "81564037", - "110008195", - "102844167", - "110097152", - "114876026", - "88392833", - "80764883" + "115333604@devops@云原生", + "109792398@dashboard@云原生", + "78881008@kubernetes@云原生", + "81564037@CNCF@云原生", + "110008195@devops@云原生", + "102844167@etcd@云原生", + "110097152@devops@云原生", + "114876026@服务发现@云原生", + "88392833@dashboard@云原生", + "80764883@dashboard@云原生" ] } } @@ -45678,13 +53220,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17623599021448486, + "max": 0.17623883484098538 + }, "related_data": { "blog": { "data_id": [ - "108656220", - "113815479", - "109335316" + "108656220@etcd@云原生", + "113815479@kubernetes@云原生", + "108340558@云原生@云原生", + "109335316@CNCF@云原生" ] } } @@ -45704,11 +53250,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17623883484098538, + "max": 0.17624167946748592 + }, "related_data": { "blog": { "data_id": [ - "88943136" + "88943136@kubernetes@云原生" ] } } @@ -45717,7 +53266,7 @@ } ], "data": { - "uuid": "云原生-6-341", + "uuid": "云原生-6-342", "seg": [ [ [ @@ -45726,14 +53275,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1762331455879843, + "max": 0.17624167946748592 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-1131", + "uuid": "云原生-5-1132", "seg": [ [ [ @@ -45743,20 +53295,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17621607782898108, + "max": 0.17624167946748592 + }, "related_data": { "blog": { "data_id": [ - "113615968", - "92658111", - "113384082", - "113665756", - "115839943", - "110914215", - "73925301", - "84785214", - "78331847", - "103714455" + "113615968@运维@云原生", + "113615968@docker@云原生", + "113615968@kubernetes@云原生", + "92658111@kubernetes@云原生", + "113384082@kubernetes@云原生", + "113665756@kubernetes@云原生", + "90116334@容器@云原生", + "115839943@dashboard@云原生", + "110914215@etcd@云原生", + "73925301@kubernetes@云原生" ] } } @@ -45766,7 +53321,7 @@ { "集群统一日志管理": { "data": { - "uuid": "云原生-5-1132", + "uuid": "云原生-5-1133", "seg": [ [ [ @@ -45777,7 +53332,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17624167946748592, + "max": 0.1762672811059908 + }, "related_data": {} } } @@ -45785,7 +53343,7 @@ { "Kubernetes审计日志(Audit Log)": { "data": { - "uuid": "云原生-5-1133", + "uuid": "云原生-5-1134", "seg": [ [ [ @@ -45797,23 +53355,18 @@ ] ] ], - "level": "2", - "related_data": { - "blog": { - "data_id": [ - "87937800", - "103553866", - "109335285" - ] - } - } + "level": { + "min": 0.1762672811059908, + "max": 0.17629288274449567 + }, + "related_data": {} } } }, { "使用Web UI(Dashboard)管理集群": { "data": { - "uuid": "云原生-5-1134", + "uuid": "云原生-5-1135", "seg": [ [ [ @@ -45825,16 +53378,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17629288274449567, + "max": 0.17631848438300052 + }, "related_data": { "blog": { "data_id": [ - "70161982", - "79086221", - "79454319", - "62898741", - "79087929", - "45128689" + "70161982@dashboard@云原生", + "78738732@dashboard@云原生", + "79086221@dashboard@云原生", + "79251498@dashboard@云原生", + "77776843@dashboard@云原生", + "62898741@dashboard@云原生", + "62898741@etcd@云原生", + "90408315@dashboard@云原生", + "79087929@dashboard@云原生", + "79454319@kubernetes@云原生" ] } } @@ -45844,7 +53404,7 @@ { "Helm:Kubernetes应用包管理工具": { "data": { - "uuid": "云原生-5-1135", + "uuid": "云原生-5-1136", "seg": [ [ [ @@ -45859,18 +53419,21 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17631848438300052, + "max": 0.1763440860215054 + }, "related_data": { "blog": { "data_id": [ - "89189751", - "103362783", - "103356942", - "103381947", - "81351492", - "83992120", - "103515050", - "91046663" + "89189751@consul@云原生", + "103362783@CNCF@云原生", + "103356942@CNCF@云原生", + "103381947@CNCF@云原生", + "81351492@dashboard@云原生", + "83992120@kubernetes@云原生", + "103515050@云原生@云原生", + "91046663@dashboard@云原生" ] } } @@ -45890,7 +53453,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17603686635944701, + "max": 0.1763440860215054 + }, "related_data": {} } } @@ -45901,7 +53467,7 @@ { "查看系统Event事件": { "data": { - "uuid": "云原生-5-1136", + "uuid": "云原生-5-1137", "seg": [ [ [ @@ -45912,7 +53478,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1763440860215054, + "max": 0.17642089093702 + }, "related_data": {} } } @@ -45920,17 +53489,21 @@ { "查看容器日志": { "data": { - "uuid": "云原生-5-1137", + "uuid": "云原生-5-1138", "seg": [ [ [ "查看", "容器", - "日志" + "日志", + "容器日志" ] ] ], - "level": "2", + "level": { + "min": 0.17642089093702, + "max": 0.17649769585253455 + }, "related_data": {} } } @@ -45938,7 +53511,7 @@ { "查看Kubernetes服务日志": { "data": { - "uuid": "云原生-5-1138", + "uuid": "云原生-5-1139", "seg": [ [ [ @@ -45949,7 +53522,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17649769585253455, + "max": 0.17657450076804915 + }, "related_data": {} } } @@ -45957,7 +53533,7 @@ { "寻求帮助": { "data": { - "uuid": "云原生-5-1139", + "uuid": "云原生-5-1140", "seg": [ [ [ @@ -45965,7 +53541,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17657450076804915, + "max": 0.17665130568356374 + }, "related_data": {} } } @@ -45981,7 +53560,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1763440860215054, + "max": 0.17665130568356374 + }, "related_data": {} } } @@ -45992,7 +53574,7 @@ { "Pod Preset(运行时参数注入策略)": { "data": { - "uuid": "云原生-5-1140", + "uuid": "云原生-5-1141", "seg": [ [ [ @@ -46001,11 +53583,15 @@ "运行", "参数", "注入", - "策略" + "策略", + "时参数" ] ] ], - "level": "2", + "level": { + "min": 0.17665130568356374, + "max": 0.1767127496159754 + }, "related_data": {} } } @@ -46013,18 +53599,22 @@ { "Cluster Federation(集群联邦)": { "data": { - "uuid": "云原生-5-1141", + "uuid": "云原生-5-1142", "seg": [ [ [ "cluster", "federation", "集群", - "联邦" + "联邦", + "集群联邦" ] ] ], - "level": "2", + "level": { + "min": 0.1767127496159754, + "max": 0.17677419354838708 + }, "related_data": {} } } @@ -46032,7 +53622,7 @@ { "容器运行时接口(Container Runtime Interface-CRI)": { "data": { - "uuid": "云原生-5-1142", + "uuid": "云原生-5-1143", "seg": [ [ [ @@ -46046,15 +53636,26 @@ ] ] ], - "level": "2", - "related_data": {} + "level": { + "min": 0.17677419354838708, + "max": 0.17683563748079878 + }, + "related_data": { + "blog": { + "data_id": [ + "89548424@serverless@云原生", + "90743853@kubernetes@云原生", + "109335324@CNCF@云原生" + ] + } + } } } }, { "对GPU的支持": { "data": { - "uuid": "云原生-5-1143", + "uuid": "云原生-5-1144", "seg": [ [ [ @@ -46063,7 +53664,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17683563748079878, + "max": 0.17689708141321045 + }, "related_data": {} } } @@ -46071,7 +53675,7 @@ { "Kubernetes的演进路线(Roadmap)和开发模式": { "data": { - "uuid": "云原生-5-1144", + "uuid": "云原生-5-1145", "seg": [ [ [ @@ -46086,12 +53690,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17689708141321045, + "max": 0.17695852534562212 + }, "related_data": { "blog": { "data_id": [ - "80024886", - "111704388" + "111704388@kubernetes@云原生" ] } } @@ -46106,11 +53712,15 @@ [ "kubernetes", "开发", - "功能" + "功能", + "新功能" ] ] ], - "level": "2", + "level": { + "min": 0.17665130568356374, + "max": 0.17695852534562212 + }, "related_data": {} } } @@ -46123,11 +53733,15 @@ [ "kubernetes", "运维", - "指南" + "指南", + "运维指南" ] ] ], - "level": "2", + "level": { + "min": 0.17603686635944701, + "max": 0.17695852534562212 + }, "related_data": {} } } @@ -46143,7 +53757,8 @@ [ [ "kubernetes", - "结构" + "结构", + "源码结构" ], [ "编译", @@ -46151,7 +53766,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17695852534562212, + "max": 0.17709019091507572 + }, "related_data": {} } } @@ -46162,7 +53780,7 @@ { "进程启动过程": { "data": { - "uuid": "云原生-5-1145", + "uuid": "云原生-5-1146", "seg": [ [ [ @@ -46172,7 +53790,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.17709019091507572, + "max": 0.1771560236998025 + }, "related_data": {} } } @@ -46180,16 +53801,20 @@ { "关键代码分析": { "data": { - "uuid": "云原生-5-1146", + "uuid": "云原生-5-1147", "seg": [ [ [ "关键", - "分析" + "分析", + "关键代码" ] ] ], - "level": "2", + "level": { + "min": 0.1771560236998025, + "max": 0.1772218564845293 + }, "related_data": {} } } @@ -46203,11 +53828,15 @@ "kube", "apiserver", "进程", - "分析" + "分析", + "进程源码" ] ] ], - "level": "2", + "level": { + "min": 0.17709019091507572, + "max": 0.1772218564845293 + }, "related_data": {} } } @@ -46218,7 +53847,7 @@ { "进程启动过程": { "data": { - "uuid": "云原生-5-1147", + "uuid": "云原生-5-1148", "seg": [ [ [ @@ -46228,7 +53857,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1772218564845293, + "max": 0.1772876892692561 + }, "related_data": {} } } @@ -46236,16 +53868,20 @@ { "关键代码分析": { "data": { - "uuid": "云原生-5-1148", + "uuid": "云原生-5-1149", "seg": [ [ [ "关键", - "分析" + "分析", + "关键代码" ] ] ], - "level": "2", + "level": { + "min": 0.1772876892692561, + "max": 0.1773535220539829 + }, "related_data": {} } } @@ -46260,11 +53896,15 @@ "controller", "manager", "进程", - "分析" + "分析", + "进程源码" ] ] ], - "level": "2", + "level": { + "min": 0.1772218564845293, + "max": 0.1773535220539829 + }, "related_data": {} } } @@ -46275,7 +53915,7 @@ { "进程启动过程": { "data": { - "uuid": "云原生-5-1149", + "uuid": "云原生-5-1150", "seg": [ [ [ @@ -46285,7 +53925,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1773535220539829, + "max": 0.1774193548387097 + }, "related_data": {} } } @@ -46293,16 +53936,20 @@ { "关键代码分析": { "data": { - "uuid": "云原生-5-1150", + "uuid": "云原生-5-1151", "seg": [ [ [ "关键", - "分析" + "分析", + "关键代码" ] ] ], - "level": "2", + "level": { + "min": 0.1774193548387097, + "max": 0.17748518762343646 + }, "related_data": {} } } @@ -46316,11 +53963,15 @@ "kube", "scheduler", "进程", - "分析" + "分析", + "进程源码" ] ] ], - "level": "2", + "level": { + "min": 0.1773535220539829, + "max": 0.17748518762343646 + }, "related_data": {} } } @@ -46331,7 +53982,7 @@ { "进程启动过程": { "data": { - "uuid": "云原生-5-1151", + "uuid": "云原生-5-1152", "seg": [ [ [ @@ -46341,7 +53992,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.17748518762343646, + "max": 0.17755102040816326 + }, "related_data": {} } } @@ -46349,16 +54003,20 @@ { "关键代码分析": { "data": { - "uuid": "云原生-5-1152", + "uuid": "云原生-5-1153", "seg": [ [ [ "关键", - "分析" + "分析", + "关键代码" ] ] ], - "level": "2", + "level": { + "min": 0.17755102040816326, + "max": 0.17761685319289006 + }, "related_data": {} } } @@ -46371,11 +54029,15 @@ [ "kubelet", "进程", - "分析" + "分析", + "进程源码" ] ] ], - "level": "2", + "level": { + "min": 0.17748518762343646, + "max": 0.17761685319289006 + }, "related_data": {} } } @@ -46386,7 +54048,7 @@ { "进程启动过程": { "data": { - "uuid": "云原生-5-1153", + "uuid": "云原生-5-1154", "seg": [ [ [ @@ -46396,7 +54058,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.17761685319289006, + "max": 0.17768268597761683 + }, "related_data": {} } } @@ -46404,16 +54069,20 @@ { "关键代码分析": { "data": { - "uuid": "云原生-5-1154", + "uuid": "云原生-5-1155", "seg": [ [ [ "关键", - "分析" + "分析", + "关键代码" ] ] ], - "level": "2", + "level": { + "min": 0.17768268597761683, + "max": 0.17774851876234363 + }, "related_data": {} } } @@ -46427,11 +54096,15 @@ "kube", "proxy", "进程", - "分析" + "分析", + "进程源码" ] ] ], - "level": "2", + "level": { + "min": 0.17761685319289006, + "max": 0.17774851876234363 + }, "related_data": {} } } @@ -46442,7 +54115,7 @@ { "kubectl create命令": { "data": { - "uuid": "云原生-5-1155", + "uuid": "云原生-5-1156", "seg": [ [ [ @@ -46452,13 +54125,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17774851876234363, + "max": 0.17781435154707043 + }, "related_data": { "blog": { "data_id": [ - "97232498", - "73913597", - "78759318" + "97232498@kubernetes@云原生", + "73913597@kubernetes@云原生", + "78759318@etcd@云原生" ] } } @@ -46468,7 +54144,7 @@ { "rolling-update命令": { "data": { - "uuid": "云原生-5-1156", + "uuid": "云原生-5-1157", "seg": [ [ [ @@ -46478,7 +54154,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17781435154707043, + "max": 0.17788018433179723 + }, "related_data": {} } } @@ -46491,11 +54170,15 @@ [ "kubectl", "进程", - "分析" + "分析", + "进程源码" ] ] ], - "level": "2", + "level": { + "min": 0.17774851876234363, + "max": 0.17788018433179723 + }, "related_data": {} } } @@ -46511,7 +54194,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17695852534562212, + "max": 0.17788018433179723 + }, "related_data": {} } } @@ -46526,11 +54212,15 @@ "seg": [ [ [ - "跑" + "跑", + "先跑" ] ] ], - "level": "2", + "level": { + "min": 0.17788018433179723, + "max": 0.17803379416282641 + }, "related_data": {} } } @@ -46548,7 +54238,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17803379416282641, + "max": 0.1781874039938556 + }, "related_data": {} } } @@ -46564,7 +54257,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1781874039938556, + "max": 0.1783410138248848 + }, "related_data": {} } } @@ -46580,7 +54276,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1783410138248848, + "max": 0.17849462365591398 + }, "related_data": {} } } @@ -46596,7 +54295,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17849462365591398, + "max": 0.17864823348694317 + }, "related_data": {} } } @@ -46613,7 +54315,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17864823348694317, + "max": 0.17880184331797236 + }, "related_data": {} } } @@ -46629,7 +54334,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17788018433179723, + "max": 0.17880184331797236 + }, "related_data": {} } } @@ -46645,7 +54353,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17880184331797236, + "max": 0.17972350230414746 + }, "related_data": {} } } @@ -46659,7 +54370,7 @@ { "手动安装模式": { "data": { - "uuid": "云原生-5-1157", + "uuid": "云原生-5-1158", "seg": [ [ [ @@ -46669,7 +54380,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17972350230414746, + "max": 0.17982590885816693 + }, "related_data": {} } } @@ -46677,7 +54391,7 @@ { "Ubuntu中自动化安装Docker": { "data": { - "uuid": "云原生-5-1158", + "uuid": "云原生-5-1159", "seg": [ [ [ @@ -46688,7 +54402,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17982590885816693, + "max": 0.17992831541218637 + }, "related_data": {} } } @@ -46696,7 +54413,7 @@ { "CentOS中自动化安装Docker": { "data": { - "uuid": "云原生-5-1159", + "uuid": "云原生-5-1160", "seg": [ [ [ @@ -46707,12 +54424,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17992831541218637, + "max": 0.18003072196620584 + }, "related_data": { "blog": { "data_id": [ - "114379449", - "99631249" + "114379449@阿里云@云原生", + "99631249@阿里云@云原生" ] } } @@ -46730,7 +54450,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17972350230414746, + "max": 0.18003072196620584 + }, "related_data": {} } } @@ -46753,7 +54476,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18003072196620584, + "max": 0.1803379416282642 + }, "related_data": {} } } @@ -46764,7 +54490,7 @@ { "初始化Master": { "data": { - "uuid": "云原生-5-1160", + "uuid": "云原生-5-1161", "seg": [ [ [ @@ -46773,7 +54499,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1803379416282642, + "max": 0.1804147465437788 + }, "related_data": {} } } @@ -46781,7 +54510,7 @@ { "配置kubectl": { "data": { - "uuid": "云原生-5-1161", + "uuid": "云原生-5-1162", "seg": [ [ [ @@ -46790,7 +54519,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1804147465437788, + "max": 0.18049155145929338 + }, "related_data": {} } } @@ -46798,7 +54530,7 @@ { "安装Pod网络": { "data": { - "uuid": "云原生-5-1162", + "uuid": "云原生-5-1163", "seg": [ [ [ @@ -46808,7 +54540,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18049155145929338, + "max": 0.18056835637480798 + }, "related_data": {} } } @@ -46816,7 +54551,7 @@ { "添加k8s-node1 和k8s-node2": { "data": { - "uuid": "云原生-5-1163", + "uuid": "云原生-5-1164", "seg": [ [ [ @@ -46830,7 +54565,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18056835637480798, + "max": 0.18064516129032257 + }, "related_data": {} } } @@ -46847,11 +54585,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1803379416282642, + "max": 0.18064516129032257 + }, "related_data": { "blog": { "data_id": [ - "90728468" + "90728468@服务发现@云原生" ] } } @@ -46870,7 +54611,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17972350230414746, + "max": 0.18064516129032257 + }, "related_data": {} } } @@ -46890,7 +54634,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18064516129032257, + "max": 0.18087557603686635 + }, "related_data": {} } } @@ -46907,11 +54654,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18087557603686635, + "max": 0.18110599078341014 + }, "related_data": { "blog": { "data_id": [ - "115269200" + "115269200@consul@云原生" ] } } @@ -46929,7 +54679,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18110599078341014, + "max": 0.18133640552995392 + }, "related_data": {} } } @@ -46946,7 +54699,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18133640552995392, + "max": 0.1815668202764977 + }, "related_data": {} } } @@ -46962,7 +54718,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18064516129032257, + "max": 0.1815668202764977 + }, "related_data": {} } } @@ -46976,7 +54735,7 @@ { "kube-flannel-ds": { "data": { - "uuid": "云原生-5-1164", + "uuid": "云原生-5-1165", "seg": [ [ [ @@ -46986,7 +54745,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1815668202764977, + "max": 0.1817204301075269 + }, "related_data": {} } } @@ -46994,7 +54756,7 @@ { "kube-proxy": { "data": { - "uuid": "云原生-5-1165", + "uuid": "云原生-5-1166", "seg": [ [ [ @@ -47003,7 +54765,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1817204301075269, + "max": 0.18187403993855605 + }, "related_data": {} } } @@ -47011,7 +54776,7 @@ { "运行自己的DaemonSet": { "data": { - "uuid": "云原生-5-1166", + "uuid": "云原生-5-1167", "seg": [ [ [ @@ -47020,7 +54785,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18187403993855605, + "max": 0.18202764976958524 + }, "related_data": {} } } @@ -47035,7 +54803,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1815668202764977, + "max": 0.18202764976958524 + }, "related_data": {} } } @@ -47046,7 +54817,7 @@ { "Pod失败的情况": { "data": { - "uuid": "云原生-5-1167", + "uuid": "云原生-5-1168", "seg": [ [ [ @@ -47056,7 +54827,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18202764976958524, + "max": 0.18218125960061443 + }, "related_data": {} } } @@ -47064,7 +54838,7 @@ { "Job的并行性": { "data": { - "uuid": "云原生-5-1168", + "uuid": "云原生-5-1169", "seg": [ [ [ @@ -47073,12 +54847,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18218125960061443, + "max": 0.18233486943164362 + }, "related_data": { "blog": { "data_id": [ - "109707730", - "83384264" + "109707730@中间件@云原生", + "83384264@go@云原生" ] } } @@ -47088,7 +54865,7 @@ { "定时Job": { "data": { - "uuid": "云原生-5-1169", + "uuid": "云原生-5-1170", "seg": [ [ [ @@ -47097,7 +54874,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18233486943164362, + "max": 0.1824884792626728 + }, "related_data": {} } } @@ -47112,7 +54892,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18202764976958524, + "max": 0.1824884792626728 + }, "related_data": {} } } @@ -47127,7 +54910,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1815668202764977, + "max": 0.1824884792626728 + }, "related_data": {} } } @@ -47147,7 +54933,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1824884792626728, + "max": 0.1827188940092166 + }, "related_data": {} } } @@ -47165,8 +54954,18 @@ ] ] ], - "level": "2", - "related_data": {} + "level": { + "min": 0.1827188940092166, + "max": 0.18294930875576038 + }, + "related_data": { + "blog": { + "data_id": [ + "80700423@阿里云@云原生", + "72798423@阿里云@云原生" + ] + } + } } } }, @@ -47183,7 +54982,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18294930875576038, + "max": 0.18317972350230413 + }, "related_data": {} } } @@ -47195,13 +54997,16 @@ "seg": [ [ [ - "网", + "外网", "访问", "service" ] ] ], - "level": "2", + "level": { + "min": 0.18317972350230413, + "max": 0.18341013824884791 + }, "related_data": {} } } @@ -47218,7 +55023,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1824884792626728, + "max": 0.18341013824884791 + }, "related_data": {} } } @@ -47237,7 +55045,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18341013824884791, + "max": 0.18433179723502305 + }, "related_data": {} } } @@ -47253,7 +55064,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18341013824884791, + "max": 0.18433179723502305 + }, "related_data": {} } } @@ -47273,7 +55087,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18433179723502305, + "max": 0.18451612903225806 + }, "related_data": {} } } @@ -47290,7 +55107,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18451612903225806, + "max": 0.1847004608294931 + }, "related_data": {} } } @@ -47307,7 +55127,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1847004608294931, + "max": 0.1848847926267281 + }, "related_data": {} } } @@ -47326,12 +55149,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1848847926267281, + "max": 0.18506912442396314 + }, "related_data": { "blog": { "data_id": [ - "88017028", - "52801043" + "88017028@aws@云原生", + "52801043@consul@云原生" ] } } @@ -47352,7 +55178,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18506912442396314, + "max": 0.18525345622119815 + }, "related_data": {} } } @@ -47368,7 +55197,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18433179723502305, + "max": 0.18525345622119815 + }, "related_data": {} } } @@ -47382,7 +55214,7 @@ { "emptyDir": { "data": { - "uuid": "云原生-5-1170", + "uuid": "云原生-5-1171", "seg": [ [ [ @@ -47390,7 +55222,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18525345622119815, + "max": 0.18535586277521762 + }, "related_data": {} } } @@ -47398,7 +55233,7 @@ { "hostPath": { "data": { - "uuid": "云原生-5-1171", + "uuid": "云原生-5-1172", "seg": [ [ [ @@ -47406,7 +55241,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18535586277521762, + "max": 0.18545826932923706 + }, "related_data": {} } } @@ -47414,7 +55252,7 @@ { "外部Storage Provider": { "data": { - "uuid": "云原生-5-1172", + "uuid": "云原生-5-1173", "seg": [ [ [ @@ -47424,7 +55262,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18545826932923706, + "max": 0.18556067588325653 + }, "related_data": {} } } @@ -47439,7 +55280,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18525345622119815, + "max": 0.18556067588325653 + }, "related_data": {} } } @@ -47450,7 +55294,7 @@ { "NFS PersistentVolume": { "data": { - "uuid": "云原生-5-1173", + "uuid": "云原生-5-1174", "seg": [ [ [ @@ -47459,7 +55303,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18556067588325653, + "max": 0.18566308243727597 + }, "related_data": {} } } @@ -47467,7 +55314,7 @@ { "回收PV": { "data": { - "uuid": "云原生-5-1174", + "uuid": "云原生-5-1175", "seg": [ [ [ @@ -47476,7 +55323,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18566308243727597, + "max": 0.18576548899129544 + }, "related_data": {} } } @@ -47484,7 +55334,7 @@ { "PV动态供给": { "data": { - "uuid": "云原生-5-1175", + "uuid": "云原生-5-1176", "seg": [ [ [ @@ -47494,7 +55344,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18576548899129544, + "max": 0.18586789554531488 + }, "related_data": {} } } @@ -47510,7 +55363,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18556067588325653, + "max": 0.18586789554531488 + }, "related_data": {} } } @@ -47523,11 +55379,15 @@ [ [ "数据库", - "例子" + "例子", + "数据库例子" ] ] ], - "level": "2", + "level": { + "min": 0.18586789554531488, + "max": 0.18617511520737326 + }, "related_data": {} } } @@ -47542,7 +55402,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18525345622119815, + "max": 0.18617511520737326 + }, "related_data": {} } } @@ -47562,7 +55425,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18617511520737326, + "max": 0.18640552995391704 + }, "related_data": {} } } @@ -47579,7 +55445,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18640552995391704, + "max": 0.1866359447004608 + }, "related_data": {} } } @@ -47590,7 +55459,7 @@ { "Volume方式": { "data": { - "uuid": "云原生-5-1176", + "uuid": "云原生-5-1177", "seg": [ [ [ @@ -47599,7 +55468,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1866359447004608, + "max": 0.1867511520737327 + }, "related_data": {} } } @@ -47607,16 +55479,20 @@ { "环境变量方式": { "data": { - "uuid": "云原生-5-1177", + "uuid": "云原生-5-1178", "seg": [ [ [ "环境变量", - "方式" + "方式", + "环境变量方式" ] ] ], - "level": "2", + "level": { + "min": 0.1867511520737327, + "max": 0.18686635944700458 + }, "related_data": {} } } @@ -47632,7 +55508,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1866359447004608, + "max": 0.18686635944700458 + }, "related_data": {} } } @@ -47648,7 +55527,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18686635944700458, + "max": 0.18709677419354837 + }, "related_data": {} } } @@ -47664,7 +55546,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18617511520737326, + "max": 0.18709677419354837 + }, "related_data": {} } } @@ -47684,7 +55569,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18709677419354837, + "max": 0.18732718894009215 + }, "related_data": {} } } @@ -47701,7 +55589,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18732718894009215, + "max": 0.18755760368663593 + }, "related_data": {} } } @@ -47712,7 +55603,7 @@ { "Helm客户端": { "data": { - "uuid": "云原生-5-1178", + "uuid": "云原生-5-1179", "seg": [ [ [ @@ -47721,13 +55612,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18755760368663593, + "max": 0.18767281105990782 + }, "related_data": { "blog": { "data_id": [ - "84346573", - "103380446", - "103360312" + "84346573@kubernetes@云原生", + "103380446@CNCF@云原生", + "103360312@CNCF@云原生" ] } } @@ -47737,7 +55631,7 @@ { "Tiller服务器": { "data": { - "uuid": "云原生-5-1179", + "uuid": "云原生-5-1180", "seg": [ [ [ @@ -47746,7 +55640,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18767281105990782, + "max": 0.18778801843317972 + }, "related_data": {} } } @@ -47762,7 +55659,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18755760368663593, + "max": 0.18778801843317972 + }, "related_data": {} } } @@ -47773,21 +55673,25 @@ { "chart目录结构": { "data": { - "uuid": "云原生-5-1180", + "uuid": "云原生-5-1181", "seg": [ [ [ "chart", "目录", - "结构" + "结构", + "目录结构" ] ] ], - "level": "2", + "level": { + "min": 0.18778801843317972, + "max": 0.18783410138248846 + }, "related_data": { "blog": { "data_id": [ - "21190793" + "21190793@控制器@云原生" ] } } @@ -47797,7 +55701,7 @@ { "chart模板": { "data": { - "uuid": "云原生-5-1181", + "uuid": "云原生-5-1182", "seg": [ [ [ @@ -47806,7 +55710,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18783410138248846, + "max": 0.18788018433179723 + }, "related_data": {} } } @@ -47814,21 +55721,25 @@ { "再次实践MySQL chart": { "data": { - "uuid": "云原生-5-1182", + "uuid": "云原生-5-1183", "seg": [ [ [ "实践", "mysql", - "chart" + "chart", + "再次实践" ] ] ], - "level": "1", + "level": { + "min": 0.18788018433179723, + "max": 0.18792626728110598 + }, "related_data": { "blog": { "data_id": [ - "103389964" + "103389964@CNCF@云原生" ] } } @@ -47838,7 +55749,7 @@ { "升级和回滚release": { "data": { - "uuid": "云原生-5-1183", + "uuid": "云原生-5-1184", "seg": [ [ [ @@ -47850,7 +55761,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18792626728110598, + "max": 0.18797235023041475 + }, "related_data": {} } } @@ -47858,7 +55772,7 @@ { "开发自己的chart": { "data": { - "uuid": "云原生-5-1184", + "uuid": "云原生-5-1185", "seg": [ [ [ @@ -47867,7 +55781,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18797235023041475, + "max": 0.1880184331797235 + }, "related_data": {} } } @@ -47883,7 +55800,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18778801843317972, + "max": 0.1880184331797235 + }, "related_data": {} } } @@ -47901,7 +55821,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18709677419354837, + "max": 0.1880184331797235 + }, "related_data": {} } } @@ -47917,11 +55840,15 @@ [ [ "网络", - "方案" + "方案", + "网络方案" ] ] ], - "level": "1", + "level": { + "min": 0.1880184331797235, + "max": 0.18847926267281107 + }, "related_data": {} } } @@ -47932,7 +55859,7 @@ { "部署Canal": { "data": { - "uuid": "云原生-5-1185", + "uuid": "云原生-5-1186", "seg": [ [ [ @@ -47941,7 +55868,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18847926267281107, + "max": 0.18870967741935485 + }, "related_data": {} } } @@ -47949,7 +55879,7 @@ { "实践Network Policy": { "data": { - "uuid": "云原生-5-1186", + "uuid": "云原生-5-1187", "seg": [ [ [ @@ -47959,13 +55889,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18870967741935485, + "max": 0.1889400921658986 + }, "related_data": { "blog": { "data_id": [ - "42112141", - "42129479", - "89307828" + "42112141@docker@云原生", + "42129479@gateway@云原生", + "89307828@CNCF@云原生" ] } } @@ -47983,7 +55916,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18847926267281107, + "max": 0.1889400921658986 + }, "related_data": {} } } @@ -47998,7 +55934,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1880184331797235, + "max": 0.1889400921658986 + }, "related_data": {} } } @@ -48017,7 +55956,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1889400921658986, + "max": 0.1891705069124424 + }, "related_data": {} } } @@ -48035,7 +55977,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1891705069124424, + "max": 0.18940092165898614 + }, "related_data": {} } } @@ -48049,21 +55994,25 @@ [ "dashboard", "界面", - "结构" + "结构", + "界面结构" ] ] ], - "level": "2", + "level": { + "min": 0.18940092165898614, + "max": 0.18963133640552993 + }, "related_data": { "blog": { "data_id": [ - "54091997", - "115404287", - "41283227", - "53838355", - "87177917", - "85318736", - "41283147" + "54091997@dashboard@云原生", + "115404287@dashboard@云原生", + "41283227@dashboard@云原生", + "53838355@dashboard@云原生", + "87177917@dashboard@云原生", + "85318736@dashboard@云原生", + "41283147@dashboard@云原生" ] } } @@ -48076,7 +56025,7 @@ { "部署Deployment": { "data": { - "uuid": "云原生-5-1187", + "uuid": "云原生-5-1188", "seg": [ [ [ @@ -48085,7 +56034,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18963133640552993, + "max": 0.18968894009216586 + }, "related_data": {} } } @@ -48093,7 +56045,7 @@ { "在线操作": { "data": { - "uuid": "云原生-5-1188", + "uuid": "云原生-5-1189", "seg": [ [ [ @@ -48101,11 +56053,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18968894009216586, + "max": 0.18974654377880182 + }, "related_data": { "blog": { "data_id": [ - "89450200" + "89450200@mesh@云原生" ] } } @@ -48115,17 +56070,21 @@ { "查看资源详细信息": { "data": { - "uuid": "云原生-5-1189", + "uuid": "云原生-5-1190", "seg": [ [ [ "查看", "资源", - "详细信息" + "详细信息", + "资源详细信息" ] ] ], - "level": "2", + "level": { + "min": 0.18974654377880182, + "max": 0.18980414746543778 + }, "related_data": {} } } @@ -48133,7 +56092,7 @@ { "查看Pod日志": { "data": { - "uuid": "云原生-5-1190", + "uuid": "云原生-5-1191", "seg": [ [ [ @@ -48143,7 +56102,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18980414746543778, + "max": 0.1898617511520737 + }, "related_data": {} } } @@ -48159,7 +56121,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.18963133640552993, + "max": 0.1898617511520737 + }, "related_data": {} } } @@ -48175,7 +56140,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1889400921658986, + "max": 0.1898617511520737 + }, "related_data": {} } } @@ -48190,11 +56158,15 @@ "kubernetes", "集群", "日志", - "管理" + "管理", + "集群日志" ] ] ], - "level": "2", + "level": { + "min": 0.1898617511520737, + "max": 0.19078341013824884 + }, "related_data": {} } } @@ -48213,7 +56185,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19078341013824884, + "max": 0.19109062980030722 + }, "related_data": {} } } @@ -48224,7 +56199,7 @@ { "镜像": { "data": { - "uuid": "云原生-5-1191", + "uuid": "云原生-5-1192", "seg": [ [ [ @@ -48232,7 +56207,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19109062980030722, + "max": 0.19119303635432666 + }, "related_data": {} } } @@ -48240,7 +56218,7 @@ { "容器": { "data": { - "uuid": "云原生-5-1192", + "uuid": "云原生-5-1193", "seg": [ [ [ @@ -48248,7 +56226,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19119303635432666, + "max": 0.19129544290834613 + }, "related_data": {} } } @@ -48256,16 +56237,20 @@ { "镜像仓库": { "data": { - "uuid": "云原生-5-1193", + "uuid": "云原生-5-1194", "seg": [ [ [ "镜像", - "仓库" + "仓库", + "镜像仓库" ] ] ], - "level": "2", + "level": { + "min": 0.19129544290834613, + "max": 0.19139784946236557 + }, "related_data": {} } } @@ -48281,7 +56266,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19109062980030722, + "max": 0.19139784946236557 + }, "related_data": {} } } @@ -48292,7 +56280,7 @@ { "Docker架构": { "data": { - "uuid": "云原生-5-1194", + "uuid": "云原生-5-1195", "seg": [ [ [ @@ -48301,7 +56289,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19139784946236557, + "max": 0.19147465437788017 + }, "related_data": {} } } @@ -48309,7 +56300,7 @@ { "Docker原理": { "data": { - "uuid": "云原生-5-1195", + "uuid": "云原生-5-1196", "seg": [ [ [ @@ -48318,7 +56309,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19147465437788017, + "max": 0.19155145929339476 + }, "related_data": {} } } @@ -48326,16 +56320,20 @@ { "容器网络": { "data": { - "uuid": "云原生-5-1196", + "uuid": "云原生-5-1197", "seg": [ [ [ "容器", - "网络" + "网络", + "容器网络" ] ] ], - "level": "2", + "level": { + "min": 0.19155145929339476, + "max": 0.19162826420890935 + }, "related_data": {} } } @@ -48343,7 +56341,7 @@ { "容器存储": { "data": { - "uuid": "云原生-5-1197", + "uuid": "云原生-5-1198", "seg": [ [ [ @@ -48352,7 +56350,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19162826420890935, + "max": 0.19170506912442395 + }, "related_data": {} } } @@ -48371,7 +56372,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19139784946236557, + "max": 0.19170506912442395 + }, "related_data": {} } } @@ -48387,7 +56391,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19078341013824884, + "max": 0.19170506912442395 + }, "related_data": {} } } @@ -48404,11 +56411,15 @@ [ "容器", "引擎", - "原理" + "原理", + "容器引擎" ] ] ], - "level": "2", + "level": { + "min": 0.19170506912442395, + "max": 0.19188940092165896 + }, "related_data": {} } } @@ -48422,11 +56433,15 @@ [ "容器", "生命周期", - "管理" + "管理", + "容器生命周期" ] ] ], - "level": "2", + "level": { + "min": 0.19188940092165896, + "max": 0.192073732718894 + }, "related_data": {} } } @@ -48440,11 +56455,15 @@ [ "容器", "状态", - "管理" + "管理", + "容器状态" ] ] ], - "level": "2", + "level": { + "min": 0.192073732718894, + "max": 0.192258064516129 + }, "related_data": {} } } @@ -48459,11 +56478,15 @@ "访问", "运行", "状态", - "容器" + "容器", + "状态容器" ] ] ], - "level": "2", + "level": { + "min": 0.192258064516129, + "max": 0.19244239631336404 + }, "related_data": {} } } @@ -48477,11 +56500,15 @@ [ "访问", "容器", - "内容" + "内容", + "容器内容" ] ] ], - "level": "2", + "level": { + "min": 0.19244239631336404, + "max": 0.19262672811059905 + }, "related_data": {} } } @@ -48493,11 +56520,15 @@ [ [ "容器", - "引擎" + "引擎", + "容器引擎" ] ] ], - "level": "2", + "level": { + "min": 0.19170506912442395, + "max": 0.19262672811059905 + }, "related_data": {} } } @@ -48511,7 +56542,7 @@ { "Dockerfile的作用": { "data": { - "uuid": "云原生-5-1198", + "uuid": "云原生-5-1199", "seg": [ [ [ @@ -48520,7 +56551,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19262672811059905, + "max": 0.1926728110599078 + }, "related_data": {} } } @@ -48528,7 +56562,7 @@ { "Dockerfile文件构成": { "data": { - "uuid": "云原生-5-1199", + "uuid": "云原生-5-1200", "seg": [ [ [ @@ -48537,20 +56571,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1926728110599078, + "max": 0.19271889400921657 + }, "related_data": { "blog": { "data_id": [ - "80921390", - "109788299", - "80464065", - "78318397", - "72366982", - "82879246", - "87886139", - "103915632", - "117431623", - "69668815" + "80921390@docker@云原生", + "109788299@docker@云原生", + "80464065@容器@云原生", + "78318397@docker@云原生", + "72366982@docker@云原生", + "82879246@docker@云原生", + "87886139@docker@云原生", + "103915632@容器@云原生", + "117431623@docker@云原生", + "69668815@docker@云原生" ] } } @@ -48560,16 +56597,20 @@ { "常用命令集": { "data": { - "uuid": "云原生-5-1200", + "uuid": "云原生-5-1201", "seg": [ [ [ "常用命令", - "集" + "集", + "常用命令集" ] ] ], - "level": "2", + "level": { + "min": 0.19271889400921657, + "max": 0.19276497695852535 + }, "related_data": {} } } @@ -48577,7 +56618,7 @@ { "构建镜像": { "data": { - "uuid": "云原生-5-1201", + "uuid": "云原生-5-1202", "seg": [ [ [ @@ -48586,11 +56627,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19276497695852535, + "max": 0.1928110599078341 + }, "related_data": { "blog": { "data_id": [ - "109323268" + "109323268@docker@云原生" ] } } @@ -48611,7 +56655,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19262672811059905, + "max": 0.1928110599078341 + }, "related_data": {} } } @@ -48622,21 +56669,25 @@ { "从镜像仓库下载镜像": { "data": { - "uuid": "云原生-5-1202", + "uuid": "云原生-5-1203", "seg": [ [ [ "镜像", "仓库", - "下载" + "下载", + "镜像仓库" ] ] ], - "level": "2", + "level": { + "min": 0.1928110599078341, + "max": 0.1928373930217248 + }, "related_data": { "blog": { "data_id": [ - "53117496" + "53117496@容器@云原生" ] } } @@ -48646,21 +56697,25 @@ { "将本地镜像上传到镜像仓库": { "data": { - "uuid": "云原生-5-1203", + "uuid": "云原生-5-1204", "seg": [ [ [ "镜像", "传到", - "仓库" + "仓库", + "镜像仓库" ] ] ], - "level": "2", + "level": { + "min": 0.1928373930217248, + "max": 0.19286372613561553 + }, "related_data": { "blog": { "data_id": [ - "82220093" + "82220093@容器@云原生" ] } } @@ -48670,7 +56725,7 @@ { "查看本地镜像": { "data": { - "uuid": "云原生-5-1204", + "uuid": "云原生-5-1205", "seg": [ [ [ @@ -48679,7 +56734,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19286372613561553, + "max": 0.19289005924950625 + }, "related_data": {} } } @@ -48687,7 +56745,7 @@ { "导出和导入本地镜像": { "data": { - "uuid": "云原生-5-1205", + "uuid": "云原生-5-1206", "seg": [ [ [ @@ -48699,7 +56757,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19289005924950625, + "max": 0.19291639236339694 + }, "related_data": {} } } @@ -48707,7 +56768,7 @@ { "构建镜像": { "data": { - "uuid": "云原生-5-1206", + "uuid": "云原生-5-1207", "seg": [ [ [ @@ -48716,7 +56777,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19291639236339694, + "max": 0.19294272547728766 + }, "related_data": {} } } @@ -48724,17 +56788,21 @@ { "修改本地镜像标识": { "data": { - "uuid": "云原生-5-1207", + "uuid": "云原生-5-1208", "seg": [ [ [ "修改", "镜像", - "标识" + "标识", + "镜像标识" ] ] ], - "level": "2", + "level": { + "min": 0.19294272547728766, + "max": 0.19296905859117838 + }, "related_data": {} } } @@ -48742,7 +56810,7 @@ { "删除本地镜像": { "data": { - "uuid": "云原生-5-1208", + "uuid": "云原生-5-1209", "seg": [ [ [ @@ -48751,12 +56819,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19296905859117838, + "max": 0.1929953917050691 + }, "related_data": { "blog": { "data_id": [ - "80785761", - "79387649" + "80785761@docker@云原生", + "80785761@容器@云原生", + "79387649@容器@云原生" ] } } @@ -48770,11 +56842,15 @@ [ [ "镜像", - "基本操作" + "基本操作", + "镜像基本操作" ] ] ], - "level": "2", + "level": { + "min": 0.1928110599078341, + "max": 0.1929953917050691 + }, "related_data": {} } } @@ -48785,7 +56861,7 @@ { "Dockerfile检查项": { "data": { - "uuid": "云原生-5-1209", + "uuid": "云原生-5-1210", "seg": [ [ [ @@ -48795,7 +56871,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1929953917050691, + "max": 0.19308755760368662 + }, "related_data": {} } } @@ -48803,7 +56882,7 @@ { "检查及优化工具": { "data": { - "uuid": "云原生-5-1210", + "uuid": "云原生-5-1211", "seg": [ [ [ @@ -48815,7 +56894,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19308755760368662, + "max": 0.19317972350230414 + }, "related_data": {} } } @@ -48831,7 +56913,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1929953917050691, + "max": 0.19317972350230414 + }, "related_data": {} } } @@ -48842,7 +56927,7 @@ { "操作系统版本选择": { "data": { - "uuid": "云原生-5-1211", + "uuid": "云原生-5-1212", "seg": [ [ [ @@ -48852,7 +56937,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19317972350230414, + "max": 0.19321044546850996 + }, "related_data": {} } } @@ -48860,7 +56948,7 @@ { "操作系统参数调整": { "data": { - "uuid": "云原生-5-1212", + "uuid": "云原生-5-1213", "seg": [ [ [ @@ -48870,7 +56958,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19321044546850996, + "max": 0.1932411674347158 + }, "related_data": {} } } @@ -48878,7 +56969,7 @@ { "确定基础rpm包范围": { "data": { - "uuid": "云原生-5-1213", + "uuid": "云原生-5-1214", "seg": [ [ [ @@ -48888,7 +56979,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1932411674347158, + "max": 0.19327188940092166 + }, "related_data": {} } } @@ -48896,19 +56990,23 @@ { "确定常用命令范围": { "data": { - "uuid": "云原生-5-1214", + "uuid": "云原生-5-1215", "seg": [ [ [ - "常用命令" + "常用命令", + "常用命令范围" ] ] ], - "level": "2", + "level": { + "min": 0.19327188940092166, + "max": 0.19330261136712748 + }, "related_data": { "blog": { "data_id": [ - "109992343" + "109992343@docker@云原生" ] } } @@ -48918,7 +57016,7 @@ { "操作系统镜像制作过程": { "data": { - "uuid": "云原生-5-1215", + "uuid": "云原生-5-1216", "seg": [ [ [ @@ -48929,13 +57027,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19330261136712748, + "max": 0.1933333333333333 + }, "related_data": { "blog": { "data_id": [ - "78961612", - "118102267", - "117961715" + "78961612@阿里云@云原生", + "118102267@docker@云原生", + "118102267@阿里云@云原生", + "117961715@go@云原生" ] } } @@ -48945,7 +57047,7 @@ { "系统资源限制配置说明": { "data": { - "uuid": "云原生-5-1216", + "uuid": "云原生-5-1217", "seg": [ [ [ @@ -48954,7 +57056,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1933333333333333, + "max": 0.19336405529953915 + }, "related_data": {} } } @@ -48968,11 +57073,15 @@ "操作系统", "基础", "镜像", - "制作" + "制作", + "基础镜像" ] ] ], - "level": "2", + "level": { + "min": 0.19317972350230414, + "max": 0.19336405529953915 + }, "related_data": {} } } @@ -48983,7 +57092,7 @@ { "容器安全加固规范": { "data": { - "uuid": "云原生-5-1217", + "uuid": "云原生-5-1218", "seg": [ [ [ @@ -48993,7 +57102,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19336405529953915, + "max": 0.19345622119815667 + }, "related_data": {} } } @@ -49001,16 +57113,20 @@ { "安全检查工具": { "data": { - "uuid": "云原生-5-1218", + "uuid": "云原生-5-1219", "seg": [ [ [ "安全检查", - "工具" + "工具", + "安全检查工具" ] ] ], - "level": "2", + "level": { + "min": 0.19345622119815667, + "max": 0.1935483870967742 + }, "related_data": {} } } @@ -49023,11 +57139,15 @@ [ "容器", "镜像", - "加固" + "加固", + "容器镜像" ] ] ], - "level": "2", + "level": { + "min": 0.19336405529953915, + "max": 0.1935483870967742 + }, "related_data": {} } } @@ -49043,7 +57163,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19262672811059905, + "max": 0.1935483870967742 + }, "related_data": {} } } @@ -49057,7 +57180,7 @@ { "Docker Hub": { "data": { - "uuid": "云原生-5-1219", + "uuid": "云原生-5-1220", "seg": [ [ [ @@ -49066,11 +57189,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1935483870967742, + "max": 0.19370199692780338 + }, "related_data": { "blog": { "data_id": [ - "90046179" + "90046179@无服务器@云原生" ] } } @@ -49080,7 +57206,7 @@ { "第三方公共仓库": { "data": { - "uuid": "云原生-5-1220", + "uuid": "云原生-5-1221", "seg": [ [ [ @@ -49089,7 +57215,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19370199692780338, + "max": 0.19385560675883257 + }, "related_data": {} } } @@ -49097,18 +57226,22 @@ { "建立私有镜像仓库": { "data": { - "uuid": "云原生-5-1221", + "uuid": "云原生-5-1222", "seg": [ [ [ "建立", "私有", "镜像", - "仓库" + "仓库", + "镜像仓库" ] ] ], - "level": "2", + "level": { + "min": 0.19385560675883257, + "max": 0.19400921658986175 + }, "related_data": {} } } @@ -49124,7 +57257,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1935483870967742, + "max": 0.19400921658986175 + }, "related_data": {} } } @@ -49135,7 +57271,7 @@ { "Harbor架构": { "data": { - "uuid": "云原生-5-1222", + "uuid": "云原生-5-1223", "seg": [ [ [ @@ -49144,14 +57280,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19400921658986175, + "max": 0.19412442396313365 + }, "related_data": { "blog": { "data_id": [ - "86063684", - "77941995", - "90606235", - "97130543" + "86063684@docker@云原生", + "77941995@docker@云原生", + "90606235@docker@云原生", + "97130543@devops@云原生" ] } } @@ -49161,18 +57300,22 @@ { "Harbor的镜像同步机制": { "data": { - "uuid": "云原生-5-1223", + "uuid": "云原生-5-1224", "seg": [ [ [ "harbor", "镜像", "同步", - "机制" + "机制", + "同步机制" ] ] ], - "level": "2", + "level": { + "min": 0.19412442396313365, + "max": 0.19423963133640554 + }, "related_data": {} } } @@ -49180,7 +57323,7 @@ { "Harbor用户认证": { "data": { - "uuid": "云原生-5-1224", + "uuid": "云原生-5-1225", "seg": [ [ [ @@ -49190,7 +57333,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19423963133640554, + "max": 0.1943548387096774 + }, "related_data": {} } } @@ -49198,22 +57344,26 @@ { "Harbor容器镜像安全扫描": { "data": { - "uuid": "云原生-5-1225", + "uuid": "云原生-5-1226", "seg": [ [ [ "harbor", "容器", "镜像", - "扫描" + "扫描", + "容器镜像" ] ] ], - "level": "2", + "level": { + "min": 0.1943548387096774, + "max": 0.1944700460829493 + }, "related_data": { "blog": { "data_id": [ - "118070832" + "118070832@云原生@云原生" ] } } @@ -49230,7 +57380,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19400921658986175, + "max": 0.1944700460829493 + }, "related_data": {} } } @@ -49243,11 +57396,15 @@ [ "镜像", "仓库", - "管理" + "管理", + "镜像仓库" ] ] ], - "level": "2", + "level": { + "min": 0.1935483870967742, + "max": 0.1944700460829493 + }, "related_data": {} } } @@ -49261,7 +57418,7 @@ { "MySQL简介": { "data": { - "uuid": "云原生-5-1226", + "uuid": "云原生-5-1227", "seg": [ [ [ @@ -49270,20 +57427,23 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1944700460829493, + "max": 0.19470046082949305 + }, "related_data": { "blog": { "data_id": [ - "81197821", - "96478395", - "56277430", - "70224185", - "103764829", - "52230727", - "50344085", - "115753224", - "54426502", - "112875131" + "81197821@kafka@云原生", + "96478395@docker@云原生", + "56277430@分布式@云原生", + "70224185@中间件@云原生", + "103764829@docker@云原生", + "52230727@阿里云@云原生", + "50344085@阿里云@云原生", + "115753224@中间件@云原生", + "54426502@aws@云原生", + "112875131@aws@云原生" ] } } @@ -49293,7 +57453,7 @@ { "MySQL容器化操作实践": { "data": { - "uuid": "云原生-5-1227", + "uuid": "云原生-5-1228", "seg": [ [ [ @@ -49301,16 +57461,20 @@ "容器", "化", "操作", - "实践" + "实践", + "容器化" ] ] ], - "level": "1", + "level": { + "min": 0.19470046082949305, + "max": 0.19493087557603683 + }, "related_data": { "blog": { "data_id": [ - "108799267", - "113788092" + "108799267@kafka@云原生", + "113788092@容器@云原生" ] } } @@ -49330,7 +57494,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.1944700460829493, + "max": 0.19493087557603683 + }, "related_data": {} } } @@ -49341,7 +57508,7 @@ { "GPU简介": { "data": { - "uuid": "云原生-5-1228", + "uuid": "云原生-5-1229", "seg": [ [ [ @@ -49350,7 +57517,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19493087557603683, + "max": 0.19508448540706602 + }, "related_data": {} } } @@ -49358,7 +57528,7 @@ { "CPU与GPU的对比": { "data": { - "uuid": "云原生-5-1229", + "uuid": "云原生-5-1230", "seg": [ [ [ @@ -49369,20 +57539,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19508448540706602, + "max": 0.1952380952380952 + }, "related_data": { "blog": { "data_id": [ - "52238470", - "79184540", - "89502404", - "110430622", - "112519369", - "89600703", - "88264682", - "117901084", - "106382148", - "108032120" + "52238470@mesh@云原生", + "79184540@go@云原生" ] } } @@ -49392,7 +57557,7 @@ { "通过nvidia-docker使用GPU": { "data": { - "uuid": "云原生-5-1230", + "uuid": "云原生-5-1231", "seg": [ [ [ @@ -49402,11 +57567,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1952380952380952, + "max": 0.1953917050691244 + }, "related_data": { "blog": { "data_id": [ - "84558687" + "84558687@容器@云原生" ] } } @@ -49426,7 +57594,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19493087557603683, + "max": 0.1953917050691244 + }, "related_data": {} } } @@ -49444,7 +57615,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1944700460829493, + "max": 0.1953917050691244 + }, "related_data": {} } } @@ -49458,7 +57632,7 @@ { "传统PaaS系统": { "data": { - "uuid": "云原生-5-1231", + "uuid": "云原生-5-1232", "seg": [ [ [ @@ -49468,20 +57642,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1953917050691244, + "max": 0.19562211981566818 + }, "related_data": { "blog": { "data_id": [ - "96015315", - "53466814", - "51669508", - "79096494", - "8480076", - "109205122", - "51145217", - "89849887", - "103784137", - "72811516" + "96015315@paas@云原生", + "53466814@paas@云原生", + "51669508@paas@云原生", + "79096494@paas@云原生", + "8480076@paas@云原生", + "109205122@paas@云原生", + "51145217@paas@云原生", + "89849887@paas@云原生", + "103784137@paas@云原生", + "72811516@paas@云原生" ] } } @@ -49491,7 +57668,7 @@ { "基于Docker的新型PaaS平台": { "data": { - "uuid": "云原生-5-1232", + "uuid": "云原生-5-1233", "seg": [ [ [ @@ -49502,20 +57679,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19562211981566818, + "max": 0.19585253456221197 + }, "related_data": { "blog": { "data_id": [ - "41266133", - "75215231", - "80864890", - "71104957", - "50721255", - "81291632", - "73163091", - "7657612", - "34440435", - "102833671" + "41266133@paas@云原生", + "41266133@kubernetes@云原生", + "75215231@paas@云原生", + "80864890@paas@云原生", + "71104957@paas@云原生", + "50721255@paas@云原生", + "81291632@paas@云原生", + "73163091@paas@云原生", + "7657612@paas@云原生", + "34440435@paas@云原生" ] } } @@ -49533,7 +57713,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1953917050691244, + "max": 0.19585253456221197 + }, "related_data": {} } } @@ -49547,11 +57730,15 @@ [ "kubernetes", "核心", - "概念" + "概念", + "核心概念" ] ] ], - "level": "2", + "level": { + "min": 0.19585253456221197, + "max": 0.19631336405529953 + }, "related_data": {} } } @@ -49567,7 +57754,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1953917050691244, + "max": 0.19631336405529953 + }, "related_data": {} } } @@ -49586,7 +57776,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19631336405529953, + "max": 0.1967741935483871 + }, "related_data": {} } } @@ -49597,16 +57790,20 @@ { "流程健康检查": { "data": { - "uuid": "云原生-5-1233", + "uuid": "云原生-5-1234", "seg": [ [ [ "流程", - "健康检查" + "健康检查", + "流程健康检查" ] ] ], - "level": "2", + "level": { + "min": 0.1967741935483871, + "max": 0.19700460829493088 + }, "related_data": {} } } @@ -49614,7 +57811,7 @@ { "应用健康检查": { "data": { - "uuid": "云原生-5-1234", + "uuid": "云原生-5-1235", "seg": [ [ [ @@ -49622,7 +57819,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19700460829493088, + "max": 0.19723502304147464 + }, "related_data": {} } } @@ -49637,7 +57837,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1967741935483871, + "max": 0.19723502304147464 + }, "related_data": {} } } @@ -49654,7 +57857,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19631336405529953, + "max": 0.19723502304147464 + }, "related_data": {} } } @@ -49675,7 +57881,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19723502304147464, + "max": 0.19741935483870965 + }, "related_data": {} } } @@ -49692,7 +57901,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19741935483870965, + "max": 0.1976036866359447 + }, "related_data": {} } } @@ -49703,7 +57915,7 @@ { "ClusterIP": { "data": { - "uuid": "云原生-5-1235", + "uuid": "云原生-5-1236", "seg": [ [ [ @@ -49711,11 +57923,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1976036866359447, + "max": 0.19766513056835636 + }, "related_data": { "blog": { "data_id": [ - "76022267" + "76022267@kubernetes@云原生" ] } } @@ -49725,7 +57940,7 @@ { "NodePort": { "data": { - "uuid": "云原生-5-1236", + "uuid": "云原生-5-1237", "seg": [ [ [ @@ -49733,11 +57948,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19766513056835636, + "max": 0.19772657450076803 + }, "related_data": { "blog": { "data_id": [ - "103232694" + "103232694@kubernetes@云原生" ] } } @@ -49747,7 +57965,7 @@ { "LoadBalancer": { "data": { - "uuid": "云原生-5-1237", + "uuid": "云原生-5-1238", "seg": [ [ [ @@ -49755,7 +57973,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19772657450076803, + "max": 0.1977880184331797 + }, "related_data": {} } } @@ -49771,7 +57992,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1976036866359447, + "max": 0.1977880184331797 + }, "related_data": {} } } @@ -49784,11 +58008,15 @@ [ [ "网络", - "策略" + "策略", + "网络策略" ] ] ], - "level": "2", + "level": { + "min": 0.1977880184331797, + "max": 0.19797235023041473 + }, "related_data": {} } } @@ -49799,7 +58027,7 @@ { "各Kubernetes集群": { "data": { - "uuid": "云原生-5-1238", + "uuid": "云原生-5-1239", "seg": [ [ [ @@ -49808,20 +58036,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19797235023041473, + "max": 0.1980337941628264 + }, "related_data": { "blog": { "data_id": [ - "101267444", - "95460276", - "51680693", - "106440068", - "109143396", - "108184160", - "42538549", - "115600456", - "99214276", - "76576657" + "101267444@服务发现@云原生", + "95460276@etcd@云原生", + "51680693@kubernetes@云原生", + "106440068@kubernetes@云原生", + "109143396@服务发现@云原生", + "108184160@etcd@云原生", + "42538549@etcd@云原生", + "115600456@kubernetes@云原生", + "99214276@kubernetes@云原生", + "76576657@服务发现@云原生" ] } } @@ -49831,7 +58062,7 @@ { "Ingress服务发布": { "data": { - "uuid": "云原生-5-1239", + "uuid": "云原生-5-1240", "seg": [ [ [ @@ -49841,11 +58072,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1980337941628264, + "max": 0.19809523809523807 + }, "related_data": { "blog": { "data_id": [ - "77066814" + "77066814@服务发现@云原生" ] } } @@ -49855,7 +58089,7 @@ { "服务发现": { "data": { - "uuid": "云原生-5-1240", + "uuid": "云原生-5-1241", "seg": [ [ [ @@ -49863,7 +58097,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19809523809523807, + "max": 0.19815668202764974 + }, "related_data": {} } } @@ -49881,7 +58118,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19797235023041473, + "max": 0.19815668202764974 + }, "related_data": {} } } @@ -49897,7 +58137,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19723502304147464, + "max": 0.19815668202764974 + }, "related_data": {} } } @@ -49917,7 +58160,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19815668202764974, + "max": 0.19838709677419353 + }, "related_data": {} } } @@ -49935,7 +58181,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19838709677419353, + "max": 0.1986175115207373 + }, "related_data": {} } } @@ -49946,7 +58195,7 @@ { "如何实现灵活存储组件": { "data": { - "uuid": "云原生-5-1241", + "uuid": "云原生-5-1242", "seg": [ [ [ @@ -49956,7 +58205,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1986175115207373, + "max": 0.1988479262672811 + }, "related_data": {} } } @@ -49970,11 +58222,15 @@ "flex", "volume", "存储管理", - "方案" + "方案", + "存储管理方案" ] ] ], - "level": "2", + "level": { + "min": 0.1986175115207373, + "max": 0.1988479262672811 + }, "related_data": {} } } @@ -49994,7 +58250,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.1988479262672811, + "max": 0.19907834101382488 + }, "related_data": {} } } @@ -50010,7 +58269,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19815668202764974, + "max": 0.19907834101382488 + }, "related_data": {} } } @@ -50031,7 +58293,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19907834101382488, + "max": 0.19999999999999998 + }, "related_data": {} } } @@ -50045,11 +58310,15 @@ [ "租户", "配额", - "管理" + "管理", + "租户配额" ] ] ], - "level": "2", + "level": { + "min": 0.19907834101382488, + "max": 0.19999999999999998 + }, "related_data": {} } } @@ -50064,7 +58333,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.17142857142857143, + "max": 0.19999999999999998 + }, "related_data": {} } } @@ -50087,7 +58359,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19999999999999998, + "max": 0.20033613445378148 + }, "related_data": {} } } @@ -50104,7 +58379,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.20033613445378148, + "max": 0.200672268907563 + }, "related_data": {} } } @@ -50122,16 +58400,20 @@ ] ] ], - "level": "2", + "level": { + "min": 0.200672268907563, + "max": 0.2010084033613445 + }, "related_data": { "blog": { "data_id": [ - "51992771", - "51516090", - "109049687", - "81084661", - "105855714", - "111991150" + "51992771@中间件@云原生", + "47861631@cloud@云原生", + "51516090@阿里云@云原生", + "109049687@容器@云原生", + "81084661@阿里云@云原生", + "105855714@阿里云@云原生", + "111991150@阿里云@云原生" ] } } @@ -50151,7 +58433,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2010084033613445, + "max": 0.20134453781512604 + }, "related_data": {} } } @@ -50169,7 +58454,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.20134453781512604, + "max": 0.20168067226890754 + }, "related_data": {} } } @@ -50184,7 +58472,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19999999999999998, + "max": 0.20168067226890754 + }, "related_data": {} } } @@ -50198,7 +58489,7 @@ { "YAML": { "data": { - "uuid": "云原生-5-1242", + "uuid": "云原生-5-1243", "seg": [ [ [ @@ -50206,7 +58497,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.20168067226890754, + "max": 0.20196078431372547 + }, "related_data": {} } } @@ -50214,7 +58508,7 @@ { "Helm": { "data": { - "uuid": "云原生-5-1243", + "uuid": "云原生-5-1244", "seg": [ [ [ @@ -50222,7 +58516,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.20196078431372547, + "max": 0.2022408963585434 + }, "related_data": {} } } @@ -50230,7 +58527,7 @@ { "KUDO(Kubernetes Universal Declarative Operator)": { "data": { - "uuid": "云原生-5-1244", + "uuid": "云原生-5-1245", "seg": [ [ [ @@ -50242,7 +58539,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2022408963585434, + "max": 0.20252100840336132 + }, "related_data": {} } } @@ -50250,7 +58550,7 @@ { "OAM(Open Application Model)": { "data": { - "uuid": "云原生-5-1245", + "uuid": "云原生-5-1246", "seg": [ [ [ @@ -50261,21 +58561,18 @@ ] ] ], - "level": "2", - "related_data": { - "blog": { - "data_id": [ - "109852659" - ] - } - } + "level": { + "min": 0.20252100840336132, + "max": 0.20280112044817925 + }, + "related_data": {} } } }, { "OpenKruise": { "data": { - "uuid": "云原生-5-1246", + "uuid": "云原生-5-1247", "seg": [ [ [ @@ -50283,7 +58580,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.20280112044817925, + "max": 0.20308123249299717 + }, "related_data": {} } } @@ -50291,7 +58591,7 @@ { "MetaController": { "data": { - "uuid": "云原生-5-1247", + "uuid": "云原生-5-1248", "seg": [ [ [ @@ -50299,7 +58599,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.20308123249299717, + "max": 0.2033613445378151 + }, "related_data": {} } } @@ -50314,7 +58617,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.20168067226890754, + "max": 0.2033613445378151 + }, "related_data": {} } } @@ -50329,7 +58635,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.20168067226890754, + "max": 0.2033613445378151 + }, "related_data": {} } } @@ -50348,7 +58657,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2033613445378151, + "max": 0.20392156862745095 + }, "related_data": {} } } @@ -50364,7 +58676,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.20392156862745095, + "max": 0.20448179271708683 + }, "related_data": {} } } @@ -50380,7 +58695,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.20448179271708683, + "max": 0.20504201680672268 + }, "related_data": {} } } @@ -50395,7 +58713,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2033613445378151, + "max": 0.20504201680672268 + }, "related_data": {} } } @@ -50414,12 +58735,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.20504201680672268, + "max": 0.20546218487394957 + }, "related_data": { "blog": { "data_id": [ - "78901240", - "109014732" + "78901240@devops@云原生", + "109014732@devops@云原生" ] } } @@ -50437,7 +58761,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.20546218487394957, + "max": 0.20588235294117646 + }, "related_data": {} } } @@ -50453,7 +58780,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.20588235294117646, + "max": 0.20630252100840335 + }, "related_data": {} } } @@ -50469,11 +58799,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.20630252100840335, + "max": 0.20672268907563024 + }, "related_data": { "blog": { "data_id": [ - "80481460" + "80481460@oauth@云原生" ] } } @@ -50491,12 +58824,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.20504201680672268, + "max": 0.20672268907563024 + }, "related_data": { "blog": { "data_id": [ - "116094858", - "85219948" + "116094858@devops@云原生", + "85219948@devops@云原生" ] } } @@ -50512,7 +58848,7 @@ { "ElasticSearch": { "data": { - "uuid": "云原生-5-1248", + "uuid": "云原生-5-1249", "seg": [ [ [ @@ -50520,16 +58856,19 @@ ] ] ], - "level": "2", + "level": { + "min": 0.20672268907563024, + "max": 0.2069094304388422 + }, "related_data": { "blog": { "data_id": [ - "52602766", - "114533789", - "80309138", - "79815304", - "114585863", - "53577115" + "52602766@kafka@云原生", + "114533789@devops@云原生", + "80309138@aws@云原生", + "79815304@dashboard@云原生", + "114585863@devops@云原生", + "53577115@微服务@云原生" ] } } @@ -50539,7 +58878,7 @@ { "Logstash": { "data": { - "uuid": "云原生-5-1249", + "uuid": "云原生-5-1250", "seg": [ [ [ @@ -50547,21 +58886,18 @@ ] ] ], - "level": "2", - "related_data": { - "blog": { - "data_id": [ - "52454951" - ] - } - } + "level": { + "min": 0.2069094304388422, + "max": 0.20709617180205414 + }, + "related_data": {} } } }, { "Kibana": { "data": { - "uuid": "云原生-5-1250", + "uuid": "云原生-5-1251", "seg": [ [ [ @@ -50569,11 +58905,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.20709617180205414, + "max": 0.2072829131652661 + }, "related_data": { "blog": { "data_id": [ - "99432271" + "99432271@dashboard@云原生" ] } } @@ -50590,12 +58929,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.20672268907563024, + "max": 0.2072829131652661 + }, "related_data": { "blog": { "data_id": [ - "84700835", - "99681107" + "84700835@kafka@云原生", + "99681107@容器@云原生" ] } } @@ -50608,7 +58950,7 @@ { "ElasticSearch": { "data": { - "uuid": "云原生-5-1251", + "uuid": "云原生-5-1252", "seg": [ [ [ @@ -50616,25 +58958,18 @@ ] ] ], - "level": "2", - "related_data": { - "blog": { - "data_id": [ - "111594267", - "116431436", - "114696262", - "102728604", - "117374349" - ] - } - } + "level": { + "min": 0.2072829131652661, + "max": 0.20746965452847804 + }, + "related_data": {} } } }, { "Fluentd": { "data": { - "uuid": "云原生-5-1252", + "uuid": "云原生-5-1253", "seg": [ [ [ @@ -50642,7 +58977,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.20746965452847804, + "max": 0.20765639589169 + }, "related_data": {} } } @@ -50650,7 +58988,7 @@ { "Kibana": { "data": { - "uuid": "云原生-5-1253", + "uuid": "云原生-5-1254", "seg": [ [ [ @@ -50658,7 +58996,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.20765639589169, + "max": 0.20784313725490194 + }, "related_data": {} } } @@ -50673,7 +59014,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2072829131652661, + "max": 0.20784313725490194 + }, "related_data": {} } } @@ -50684,7 +59028,7 @@ { "Loki": { "data": { - "uuid": "云原生-5-1254", + "uuid": "云原生-5-1255", "seg": [ [ [ @@ -50692,7 +59036,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.20784313725490194, + "max": 0.2080298786181139 + }, "related_data": {} } } @@ -50700,7 +59047,7 @@ { "Promtail": { "data": { - "uuid": "云原生-5-1255", + "uuid": "云原生-5-1256", "seg": [ [ [ @@ -50708,7 +59055,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2080298786181139, + "max": 0.20821661998132585 + }, "related_data": {} } } @@ -50716,7 +59066,7 @@ { "Grafana": { "data": { - "uuid": "云原生-5-1256", + "uuid": "云原生-5-1257", "seg": [ [ [ @@ -50724,7 +59074,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.20821661998132585, + "max": 0.2084033613445378 + }, "related_data": {} } } @@ -50739,7 +59092,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.20784313725490194, + "max": 0.2084033613445378 + }, "related_data": {} } } @@ -50754,7 +59110,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.20672268907563024, + "max": 0.2084033613445378 + }, "related_data": {} } } @@ -50773,7 +59132,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2084033613445378, + "max": 0.20896358543417365 + }, "related_data": {} } } @@ -50789,7 +59151,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.20896358543417365, + "max": 0.2095238095238095 + }, "related_data": {} } } @@ -50805,7 +59170,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2095238095238095, + "max": 0.21008403361344535 + }, "related_data": {} } } @@ -50820,7 +59188,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2084033613445378, + "max": 0.21008403361344535 + }, "related_data": {} } } @@ -50834,17 +59205,22 @@ { "制造业价值流": { "data": { - "uuid": "云原生-5-1257", + "uuid": "云原生-5-1258", "seg": [ [ [ "制造业", "价值", - "流" + "流", + "制造业价值", + "价值流" ] ] ], - "level": "1", + "level": { + "min": 0.21008403361344535, + "max": 0.21022408963585432 + }, "related_data": {} } } @@ -50855,18 +59231,23 @@ { "聚焦于部署前置时间": { "data": { - "uuid": "云原生-6-342", + "uuid": "云原生-6-343", "seg": [ [ [ "聚焦", "部署", "前置", - "时间" + "时间", + "部署前置", + "前置时间" ] ] ], - "level": "1", + "level": { + "min": 0.21022408963585432, + "max": 0.2102941176470588 + }, "related_data": {} } } @@ -50874,7 +59255,7 @@ { "关注返工指标——%C/A": { "data": { - "uuid": "云原生-6-343", + "uuid": "云原生-6-344", "seg": [ [ [ @@ -50887,24 +59268,32 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2102941176470588, + "max": 0.21036414565826328 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-1258", + "uuid": "云原生-5-1259", "seg": [ [ [ "技术", "价值", - "流" + "流", + "技术价值", + "价值流" ] ] ], - "level": "1", + "level": { + "min": 0.21022408963585432, + "max": 0.21036414565826328 + }, "related_data": {} } } @@ -50912,7 +59301,7 @@ { "三步工作法:DevOps的基础原则": { "data": { - "uuid": "云原生-5-1259", + "uuid": "云原生-5-1260", "seg": [ [ [ @@ -50924,24 +59313,28 @@ [ "devops", "基础", - "原则" + "原则", + "基础原则" ] ] ], - "level": "2", + "level": { + "min": 0.21036414565826328, + "max": 0.21050420168067224 + }, "related_data": { "blog": { "data_id": [ - "7590678", - "113920500", - "76488044", - "108427237", - "111469691", - "114488730", - "80892734", - "7071894", - "101402737", - "117064173" + "7590678@devops@云原生", + "113920500@devops@云原生", + "76488044@devops@云原生", + "108427237@devops@云原生", + "111469691@devops@云原生", + "114488730@devops@云原生", + "80892734@devops@云原生", + "114488730@云原生@云原生", + "7071894@devops@云原生", + "101402737@devops@云原生" ] } } @@ -50965,7 +59358,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21008403361344535, + "max": 0.21050420168067224 + }, "related_data": {} } } @@ -50976,7 +59372,7 @@ { "使工作可见": { "data": { - "uuid": "云原生-5-1260", + "uuid": "云原生-5-1261", "seg": [ [ [ @@ -50984,7 +59380,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21050420168067224, + "max": 0.21057422969187672 + }, "related_data": {} } } @@ -50992,16 +59391,20 @@ { "限制在制品数": { "data": { - "uuid": "云原生-5-1261", + "uuid": "云原生-5-1262", "seg": [ [ [ "制品", - "数" + "数", + "制品数" ] ] ], - "level": "2", + "level": { + "min": 0.21057422969187672, + "max": 0.2106442577030812 + }, "related_data": {} } } @@ -51009,7 +59412,7 @@ { "减小批量大小": { "data": { - "uuid": "云原生-5-1262", + "uuid": "云原生-5-1263", "seg": [ [ [ @@ -51019,7 +59422,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2106442577030812, + "max": 0.2107142857142857 + }, "related_data": {} } } @@ -51027,7 +59433,7 @@ { "减少交接次数": { "data": { - "uuid": "云原生-5-1263", + "uuid": "云原生-5-1264", "seg": [ [ [ @@ -51037,7 +59443,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2107142857142857, + "max": 0.21078431372549017 + }, "related_data": {} } } @@ -51045,7 +59454,7 @@ { "持续识别和改善约束点": { "data": { - "uuid": "云原生-5-1264", + "uuid": "云原生-5-1265", "seg": [ [ [ @@ -51058,7 +59467,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21078431372549017, + "max": 0.21085434173669465 + }, "related_data": {} } } @@ -51066,7 +59478,7 @@ { "消除价值流中的困境和浪费": { "data": { - "uuid": "云原生-5-1265", + "uuid": "云原生-5-1266", "seg": [ [ [ @@ -51078,7 +59490,10 @@ [] ] ], - "level": "1", + "level": { + "min": 0.21085434173669465, + "max": 0.21092436974789913 + }, "related_data": {} } } @@ -51097,7 +59512,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21050420168067224, + "max": 0.21092436974789913 + }, "related_data": {} } } @@ -51108,7 +59526,7 @@ { "在复杂系统中安全地工作": { "data": { - "uuid": "云原生-5-1266", + "uuid": "云原生-5-1267", "seg": [ [ [ @@ -51117,7 +59535,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21092436974789913, + "max": 0.2110644257703081 + }, "related_data": {} } } @@ -51125,7 +59546,7 @@ { "在源头保障质量": { "data": { - "uuid": "云原生-5-1267", + "uuid": "云原生-5-1268", "seg": [ [ [ @@ -51135,7 +59556,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2110644257703081, + "max": 0.21120448179271709 + }, "related_data": {} } } @@ -51143,7 +59567,7 @@ { "为下游工作中心而优化": { "data": { - "uuid": "云原生-5-1268", + "uuid": "云原生-5-1269", "seg": [ [ [ @@ -51154,7 +59578,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21120448179271709, + "max": 0.21134453781512605 + }, "related_data": {} } } @@ -51173,7 +59600,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21092436974789913, + "max": 0.21134453781512605 + }, "related_data": {} } } @@ -51184,7 +59614,7 @@ { "建立学习型组织和安全文化": { "data": { - "uuid": "云原生-5-1269", + "uuid": "云原生-5-1270", "seg": [ [ [ @@ -51197,7 +59627,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.21134453781512605, + "max": 0.21142857142857144 + }, "related_data": {} } } @@ -51205,18 +59638,22 @@ { "将日常工作的改进制度化": { "data": { - "uuid": "云原生-5-1270", + "uuid": "云原生-5-1271", "seg": [ [ [ "日常", "工作", "改进", - "制度化" + "制度化", + "日常工作" ] ] ], - "level": "3", + "level": { + "min": 0.21142857142857144, + "max": 0.2115126050420168 + }, "related_data": {} } } @@ -51224,7 +59661,7 @@ { "把局部发现转化为全局优化": { "data": { - "uuid": "云原生-5-1271", + "uuid": "云原生-5-1272", "seg": [ [ [ @@ -51235,7 +59672,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.2115126050420168, + "max": 0.2115966386554622 + }, "related_data": {} } } @@ -51243,7 +59683,7 @@ { "在日常工作中注入弹性模式": { "data": { - "uuid": "云原生-5-1272", + "uuid": "云原生-5-1273", "seg": [ [ [ @@ -51251,11 +59691,16 @@ "工作", "注入", "弹性", - "模式" + "模式", + "日常工作", + "弹性模式" ] ] ], - "level": "3", + "level": { + "min": 0.2115966386554622, + "max": 0.21168067226890755 + }, "related_data": {} } } @@ -51263,7 +59708,7 @@ { "领导层强化学习文化": { "data": { - "uuid": "云原生-5-1273", + "uuid": "云原生-5-1274", "seg": [ [ [ @@ -51274,11 +59719,14 @@ ] ] ], - "level": "3", + "level": { + "min": 0.21168067226890755, + "max": 0.21176470588235294 + }, "related_data": { "blog": { "data_id": [ - "38368137" + "38368137@docker@云原生" ] } } @@ -51303,7 +59751,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.21134453781512605, + "max": 0.21176470588235294 + }, "related_data": {} } } @@ -51319,7 +59770,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21008403361344535, + "max": 0.21176470588235294 + }, "related_data": {} } } @@ -51333,13 +59787,14 @@ { "兼顾记录型系统和交互型系统": { "data": { - "uuid": "云原生-5-1274", + "uuid": "云原生-5-1275", "seg": [ [ [ "兼顾", "记录", - "系统" + "系统", + "记录型" ], [ "交互", @@ -51347,7 +59802,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21176470588235294, + "max": 0.2119047619047619 + }, "related_data": {} } } @@ -51355,7 +59813,7 @@ { "从最乐于创新的团队开始": { "data": { - "uuid": "云原生-5-1275", + "uuid": "云原生-5-1276", "seg": [ [ [ @@ -51365,7 +59823,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2119047619047619, + "max": 0.21204481792717086 + }, "related_data": {} } } @@ -51373,7 +59834,7 @@ { "扩大DevOps的范围": { "data": { - "uuid": "云原生-5-1276", + "uuid": "云原生-5-1277", "seg": [ [ [ @@ -51381,7 +59842,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21204481792717086, + "max": 0.21218487394957983 + }, "related_data": {} } } @@ -51395,11 +59859,15 @@ "选择", "价值", "流", - "切入点" + "切入点", + "价值流" ] ] ], - "level": "1", + "level": { + "min": 0.21176470588235294, + "max": 0.21218487394957983 + }, "related_data": {} } } @@ -51410,7 +59878,7 @@ { "确定创造客户价值所需的团队": { "data": { - "uuid": "云原生-5-1277", + "uuid": "云原生-5-1278", "seg": [ [ [ @@ -51418,11 +59886,16 @@ "客户", "价值", "所需", - "团队" + "团队", + "客户价值", + "价值所需" ] ] ], - "level": "1", + "level": { + "min": 0.21218487394957983, + "max": 0.21228991596638655 + }, "related_data": {} } } @@ -51430,7 +59903,7 @@ { "针对团队工作绘制价值流图": { "data": { - "uuid": "云原生-5-1278", + "uuid": "云原生-5-1279", "seg": [ [ [ @@ -51438,15 +59911,20 @@ "工作", "绘制", "价值", - "流图" + "流图", + "绘制价值", + "价值流图" ] ] ], - "level": "1", + "level": { + "min": 0.21228991596638655, + "max": 0.21239495798319327 + }, "related_data": { "blog": { "data_id": [ - "101229467" + "101229467@mesh@云原生" ] } } @@ -51459,7 +59937,7 @@ { "拥有共同的目标": { "data": { - "uuid": "云原生-6-344", + "uuid": "云原生-6-345", "seg": [ [ [ @@ -51468,7 +59946,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21239495798319327, + "max": 0.21242121848739495 + }, "related_data": {} } } @@ -51476,7 +59957,7 @@ { "保持小跨度的改进计划": { "data": { - "uuid": "云原生-6-345", + "uuid": "云原生-6-346", "seg": [ [ [ @@ -51486,7 +59967,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.21242121848739495, + "max": 0.21244747899159663 + }, "related_data": {} } } @@ -51494,7 +59978,7 @@ { "为非功能性需求预留20%的开发时间,减少技术债务": { "data": { - "uuid": "云原生-6-346", + "uuid": "云原生-6-347", "seg": [ [ [ @@ -51506,11 +59990,16 @@ "时间", "减少", "技术", - "债务" + "债务", + "非功能性", + "技术债务" ] ] ], - "level": "1", + "level": { + "min": 0.21244747899159663, + "max": 0.2124737394957983 + }, "related_data": {} } } @@ -51518,35 +60007,43 @@ { "提高工作的可视化程度": { "data": { - "uuid": "云原生-6-347", + "uuid": "云原生-6-348", "seg": [ [ [ "提高", "工作", "可视化", - "程度" + "程度", + "可视化程度" ] ] ], - "level": "1", + "level": { + "min": 0.2124737394957983, + "max": 0.2125 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-1279", + "uuid": "云原生-5-1280", "seg": [ [ [ "组建", "转型", - "团队" + "团队", + "转型团队" ] ] ], - "level": "1", + "level": { + "min": 0.21239495798319327, + "max": 0.2125 + }, "related_data": {} } } @@ -51554,7 +60051,7 @@ { "用工具强化预期行为": { "data": { - "uuid": "云原生-5-1280", + "uuid": "云原生-5-1281", "seg": [ [ [ @@ -51564,7 +60061,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2125, + "max": 0.21260504201680672 + }, "related_data": {} } } @@ -51582,11 +60082,15 @@ ], [ "价值", - "流" + "流", + "价值流" ] ] ], - "level": "1", + "level": { + "min": 0.21218487394957983, + "max": 0.21260504201680672 + }, "related_data": {} } } @@ -51597,7 +60101,7 @@ { "组织原型": { "data": { - "uuid": "云原生-5-1281", + "uuid": "云原生-5-1282", "seg": [ [ [ @@ -51606,7 +60110,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21260504201680672, + "max": 0.21265756302521008 + }, "related_data": {} } } @@ -51614,7 +60121,7 @@ { "过度职能导向的危害(“成本优化”)": { "data": { - "uuid": "云原生-5-1282", + "uuid": "云原生-5-1283", "seg": [ [ [ @@ -51623,11 +60130,16 @@ "导向", "危害", "成本", - "优化" + "优化", + "过度职能", + "职能导向" ] ] ], - "level": "2", + "level": { + "min": 0.21265756302521008, + "max": 0.21271008403361344 + }, "related_data": {} } } @@ -51635,7 +60147,7 @@ { "组建以市场为导向的团队(“速度优化”)": { "data": { - "uuid": "云原生-5-1283", + "uuid": "云原生-5-1284", "seg": [ [ [ @@ -51648,7 +60160,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21271008403361344, + "max": 0.2127626050420168 + }, "related_data": {} } } @@ -51656,16 +60171,20 @@ { "使职能导向有效": { "data": { - "uuid": "云原生-5-1284", + "uuid": "云原生-5-1285", "seg": [ [ [ "职能", - "导向" + "导向", + "职能导向" ] ] ], - "level": "2", + "level": { + "min": 0.2127626050420168, + "max": 0.21281512605042016 + }, "related_data": {} } } @@ -51673,21 +60192,29 @@ { "将测试、运维和信息安全融入日常工作": { "data": { - "uuid": "云原生-5-1285", + "uuid": "云原生-5-1286", "seg": [ [ - [], + [ + "将测试" + ], [ "运", "维和", "信息安全", "融入", "日常", - "工作" + "工作", + "运维和", + "维和信息安全", + "日常工作" ] ] ], - "level": "2", + "level": { + "min": 0.21281512605042016, + "max": 0.21286764705882352 + }, "related_data": {} } } @@ -51695,17 +60222,22 @@ { "使团队成员都成为通才": { "data": { - "uuid": "云原生-5-1286", + "uuid": "云原生-5-1287", "seg": [ [ [ "团队", "成员", - "通才" + "通才", + "团队成员", + "都成为" ] ] ], - "level": "2", + "level": { + "min": 0.21286764705882352, + "max": 0.21292016806722688 + }, "related_data": {} } } @@ -51713,7 +60245,7 @@ { "根据康威定律设定团队边界": { "data": { - "uuid": "云原生-5-1287", + "uuid": "云原生-5-1288", "seg": [ [ [ @@ -51721,11 +60253,16 @@ "定律", "设定", "团队", - "边界" + "边界", + "康威定律", + "团队边界" ] ] ], - "level": "2", + "level": { + "min": 0.21292016806722688, + "max": 0.21297268907563024 + }, "related_data": {} } } @@ -51733,7 +60270,7 @@ { "创建松耦合架构,提高生产力和安全性": { "data": { - "uuid": "云原生-5-1288", + "uuid": "云原生-5-1289", "seg": [ [ [ @@ -51749,7 +60286,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21297268907563024, + "max": 0.2130252100840336 + }, "related_data": {} } } @@ -51765,11 +60305,15 @@ "定律", "设计", "组织", - "结构" + "结构", + "康威定律" ] ] ], - "level": "2", + "level": { + "min": 0.21260504201680672, + "max": 0.2130252100840336 + }, "related_data": {} } } @@ -51780,7 +60324,7 @@ { "创建共享服务,提高开发生产力": { "data": { - "uuid": "云原生-5-1289", + "uuid": "云原生-5-1290", "seg": [ [ [ @@ -51793,7 +60337,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2130252100840336, + "max": 0.21313025210084033 + }, "related_data": {} } } @@ -51801,7 +60348,7 @@ { "将运维工程师融入服务团队": { "data": { - "uuid": "云原生-5-1290", + "uuid": "云原生-5-1291", "seg": [ [ [ @@ -51810,11 +60357,15 @@ "工程师", "融入", "服务", - "团队" + "团队", + "将运" ] ] ], - "level": "2", + "level": { + "min": 0.21313025210084033, + "max": 0.21323529411764705 + }, "related_data": {} } } @@ -51822,7 +60373,7 @@ { "为每个服务团队分派运维联络人": { "data": { - "uuid": "云原生-5-1291", + "uuid": "云原生-5-1292", "seg": [ [ [ @@ -51830,11 +60381,17 @@ "团队", "分派", "运维", - "联络人" + "联络人", + "团队分派", + "分派运维", + "运维联络人" ] ] ], - "level": "2", + "level": { + "min": 0.21323529411764705, + "max": 0.21334033613445377 + }, "related_data": {} } } @@ -51845,7 +60402,7 @@ { "邀请运维工程师参加每日站会": { "data": { - "uuid": "云原生-6-348", + "uuid": "云原生-6-349", "seg": [ [ [ @@ -51853,24 +60410,28 @@ "运维", "工程师", "参加", - "站" + "站", + "运维工程师" ] ] ], - "level": "2", + "level": { + "min": 0.21334033613445377, + "max": 0.213375350140056 + }, "related_data": { "blog": { "data_id": [ - "51611322", - "78657541", - "102936138", - "56291871", - "113953862", - "92978356", - "79348254", - "86622821", - "82252722", - "82700539" + "51611322@运维@云原生", + "78657541@运维@云原生", + "102936138@运维@云原生", + "56291871@运维@云原生", + "113953862@运维@云原生", + "92978356@运维@云原生", + "79348254@运维@云原生", + "86622821@运维@云原生", + "82252722@运维@云原生", + "82700539@运维@云原生" ] } } @@ -51880,7 +60441,7 @@ { "邀请运维工程师参加回顾会议": { "data": { - "uuid": "云原生-6-349", + "uuid": "云原生-6-350", "seg": [ [ [ @@ -51889,11 +60450,15 @@ "工程师", "参加", "回顾", - "会议" + "会议", + "运维工程师" ] ] ], - "level": "2", + "level": { + "min": 0.213375350140056, + "max": 0.21341036414565825 + }, "related_data": {} } } @@ -51901,7 +60466,7 @@ { "使用看板图展示运维工作": { "data": { - "uuid": "云原生-6-350", + "uuid": "云原生-6-351", "seg": [ [ [ @@ -51912,12 +60477,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21341036414565825, + "max": 0.2134453781512605 + }, "related_data": { "blog": { "data_id": [ - "115940524", - "115278998" + "115940524@运维@云原生", + "115278998@运维@云原生" ] } } @@ -51926,7 +60494,7 @@ } ], "data": { - "uuid": "云原生-5-1292", + "uuid": "云原生-5-1293", "seg": [ [ [ @@ -51936,11 +60504,15 @@ "参加", "开发", "团队", - "会议" + "会议", + "运维工程师" ] ] ], - "level": "2", + "level": { + "min": 0.21334033613445377, + "max": 0.2134453781512605 + }, "related_data": {} } } @@ -51956,11 +60528,16 @@ "融入", "日常", "开发", - "工作" + "工作", + "将运", + "日常开发" ] ] ], - "level": "2", + "level": { + "min": 0.2130252100840336, + "max": 0.2134453781512605 + }, "related_data": {} } } @@ -51973,7 +60550,10 @@ [] ] ], - "level": "2", + "level": { + "min": 0.21176470588235294, + "max": 0.2134453781512605 + }, "related_data": {} } } @@ -51987,7 +60567,7 @@ { "按需搭建开发环境、测试环境和生产环境": { "data": { - "uuid": "云原生-5-1293", + "uuid": "云原生-5-1294", "seg": [ [ [ @@ -52005,7 +60585,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2134453781512605, + "max": 0.21352941176470586 + }, "related_data": {} } } @@ -52013,16 +60596,20 @@ { "应用统一的代码仓库": { "data": { - "uuid": "云原生-5-1294", + "uuid": "云原生-5-1295", "seg": [ [ [ "统一", - "仓库" + "仓库", + "代码仓库" ] ] ], - "level": "2", + "level": { + "min": 0.21352941176470586, + "max": 0.21361344537815125 + }, "related_data": {} } } @@ -52030,7 +60617,7 @@ { "使基础设施的重建更容易": { "data": { - "uuid": "云原生-5-1295", + "uuid": "云原生-5-1296", "seg": [ [ [ @@ -52039,7 +60626,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21361344537815125, + "max": 0.21369747899159663 + }, "related_data": {} } } @@ -52047,7 +60637,7 @@ { "运行在类生产环境里才算“完成”": { "data": { - "uuid": "云原生-5-1296", + "uuid": "云原生-5-1297", "seg": [ [ [ @@ -52055,11 +60645,15 @@ "类", "生产", "环境", - "算" + "算", + "才算" ] ] ], - "level": "2", + "level": { + "min": 0.21369747899159663, + "max": 0.213781512605042 + }, "related_data": {} } } @@ -52073,11 +60667,15 @@ "部署", "流水线", "奠定", - "基础" + "基础", + "部署流水线" ] ] ], - "level": "2", + "level": { + "min": 0.2134453781512605, + "max": 0.213781512605042 + }, "related_data": {} } } @@ -52088,7 +60686,7 @@ { "对代码和环境做持续构建、测试和集成": { "data": { - "uuid": "云原生-5-1297", + "uuid": "云原生-5-1298", "seg": [ [ [], @@ -52104,7 +60702,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.213781512605042, + "max": 0.21389355742296917 + }, "related_data": {} } } @@ -52115,7 +60716,7 @@ { "在自动化测试中尽早发现错误": { "data": { - "uuid": "云原生-6-351", + "uuid": "云原生-6-352", "seg": [ [ [ @@ -52124,7 +60725,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21389355742296917, + "max": 0.21391223155929037 + }, "related_data": {} } } @@ -52132,17 +60736,22 @@ { "尽可能并行地快速执行测试": { "data": { - "uuid": "云原生-6-352", + "uuid": "云原生-6-353", "seg": [ [ [ "并行", "快速", - "执行" + "执行", + "尽可能并行", + "快速执行" ] ] ], - "level": "2", + "level": { + "min": 0.21391223155929037, + "max": 0.21393090569561157 + }, "related_data": {} } } @@ -52150,16 +60759,20 @@ { "先编写自动化测试": { "data": { - "uuid": "云原生-6-353", + "uuid": "云原生-6-354", "seg": [ [ [ "编写", - "自动化" + "自动化", + "先编写" ] ] ], - "level": "2", + "level": { + "min": 0.21393090569561157, + "max": 0.21394957983193275 + }, "related_data": {} } } @@ -52167,16 +60780,20 @@ { "尽量将手动测试自动化": { "data": { - "uuid": "云原生-6-354", + "uuid": "云原生-6-355", "seg": [ [ [ "手动", - "自动化" + "自动化", + "将手动" ] ] ], - "level": "2", + "level": { + "min": 0.21394957983193275, + "max": 0.21396825396825395 + }, "related_data": {} } } @@ -52184,7 +60801,7 @@ { "在测试套件中集成性能测试": { "data": { - "uuid": "云原生-6-355", + "uuid": "云原生-6-356", "seg": [ [ [ @@ -52194,7 +60811,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21396825396825395, + "max": 0.21398692810457515 + }, "related_data": {} } } @@ -52202,25 +60822,29 @@ { "在测试套件中集成非功能性需求测试": { "data": { - "uuid": "云原生-6-356", + "uuid": "云原生-6-357", "seg": [ [ [ "套件", "集成", "功能性", - "需求" + "需求", + "非功能性" ] ] ], - "level": "2", + "level": { + "min": 0.21398692810457515, + "max": 0.21400560224089635 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-1298", + "uuid": "云原生-5-1299", "seg": [ [ [ @@ -52228,11 +60852,15 @@ "快速", "可靠", "自动化", - "套件" + "套件", + "快速可靠" ] ] ], - "level": "2", + "level": { + "min": 0.21389355742296917, + "max": 0.21400560224089635 + }, "related_data": {} } } @@ -52240,7 +60868,7 @@ { "在部署流水线失败时拉下安灯绳": { "data": { - "uuid": "云原生-5-1299", + "uuid": "云原生-5-1300", "seg": [ [ [ @@ -52249,11 +60877,15 @@ "失败", "时拉下", "安", - "灯绳" + "灯绳", + "部署流水线" ] ] ], - "level": "2", + "level": { + "min": 0.21400560224089635, + "max": 0.21411764705882352 + }, "related_data": {} } } @@ -52266,11 +60898,15 @@ [ "快速", "可靠", - "自动化" + "自动化", + "快速可靠" ] ] ], - "level": "2", + "level": { + "min": 0.213781512605042, + "max": 0.21411764705882352 + }, "related_data": {} } } @@ -52281,7 +60917,7 @@ { "小批量开发与大批量合并": { "data": { - "uuid": "云原生-5-1300", + "uuid": "云原生-5-1301", "seg": [ [ [ @@ -52293,7 +60929,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21411764705882352, + "max": 0.21428571428571427 + }, "related_data": {} } } @@ -52301,7 +60940,7 @@ { "应用基于主干的开发实践": { "data": { - "uuid": "云原生-5-1301", + "uuid": "云原生-5-1302", "seg": [ [ [ @@ -52311,13 +60950,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21428571428571427, + "max": 0.21445378151260502 + }, "related_data": { "blog": { "data_id": [ - "98944291", - "86685757", - "107853015" + "98944291@mesh@云原生", + "86685757@CNCF@云原生", + "107853015@分布式@云原生" ] } } @@ -52337,7 +60979,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21411764705882352, + "max": 0.21445378151260502 + }, "related_data": {} } } @@ -52351,7 +60996,7 @@ { "应用自动化的自助式部署": { "data": { - "uuid": "云原生-6-357", + "uuid": "云原生-6-358", "seg": [ [ [ @@ -52361,7 +61006,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21445378151260502, + "max": 0.2145378151260504 + }, "related_data": {} } } @@ -52369,34 +61017,43 @@ { "在部署流水线中集成代码部署": { "data": { - "uuid": "云原生-6-358", + "uuid": "云原生-6-359", "seg": [ [ [ "部署", "流水线", - "集成" + "集成", + "部署流水线", + "代码部署" ] ] ], - "level": "2", + "level": { + "min": 0.2145378151260504, + "max": 0.2146218487394958 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-1302", + "uuid": "云原生-5-1303", "seg": [ [ [ "自动化", "部署", - "流程" + "流程", + "部署流程" ] ] ], - "level": "2", + "level": { + "min": 0.21445378151260502, + "max": 0.2146218487394958 + }, "related_data": {} } } @@ -52407,7 +61064,7 @@ { "基于环境的发布模式": { "data": { - "uuid": "云原生-6-359", + "uuid": "云原生-6-360", "seg": [ [ [ @@ -52417,7 +61074,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2146218487394958, + "max": 0.2147058823529412 + }, "related_data": {} } } @@ -52425,7 +61085,7 @@ { "基于应用的发布模式更安全": { "data": { - "uuid": "云原生-6-360", + "uuid": "云原生-6-361", "seg": [ [ [ @@ -52434,18 +61094,22 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2147058823529412, + "max": 0.21478991596638655 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-1303", + "uuid": "云原生-5-1304", "seg": [ [ [ - "部署" + "部署", + "将部署" ], [ "发布", @@ -52454,7 +61118,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2146218487394958, + "max": 0.21478991596638655 + }, "related_data": {} } } @@ -52474,7 +61141,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21445378151260502, + "max": 0.21478991596638655 + }, "related_data": {} } } @@ -52485,7 +61155,7 @@ { "能提高生产力、可测试性和安全性的架构": { "data": { - "uuid": "云原生-5-1304", + "uuid": "云原生-5-1305", "seg": [ [ [ @@ -52501,7 +61171,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21478991596638655, + "max": 0.21490196078431373 + }, "related_data": {} } } @@ -52509,18 +61182,20 @@ { "架构原型:单体架构与微服务": { "data": { - "uuid": "云原生-5-1305", + "uuid": "云原生-5-1306", "seg": [ [ [ "架构", - "原型" + "原型", + "架构原型" ] ], [ [ "单体", - "架构" + "架构", + "单体架构" ], [ "微", @@ -52528,7 +61203,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21490196078431373, + "max": 0.21501400560224088 + }, "related_data": {} } } @@ -52536,21 +61214,25 @@ { "安全地演进企业架构": { "data": { - "uuid": "云原生-5-1306", + "uuid": "云原生-5-1307", "seg": [ [ [ "演进", "企业", - "架构" + "架构", + "企业架构" ] ] ], - "level": "2", + "level": { + "min": 0.21501400560224088, + "max": 0.21512605042016805 + }, "related_data": { "blog": { "data_id": [ - "117490068" + "117490068@中间件@云原生" ] } } @@ -52570,7 +61252,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21478991596638655, + "max": 0.21512605042016805 + }, "related_data": {} } } @@ -52590,7 +61275,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2134453781512605, + "max": 0.21512605042016805 + }, "related_data": {} } } @@ -52604,19 +61292,23 @@ { "异常状态的处理和告警": { "data": { - "uuid": "云原生-5-1307", + "uuid": "云原生-5-1308", "seg": [ [ [ "异常", - "状态" + "状态", + "异常状态" ], [ "告警" ] ] ], - "level": "2", + "level": { + "min": 0.21512605042016805, + "max": 0.2153361344537815 + }, "related_data": {} } } @@ -52624,17 +61316,21 @@ { "应用异常检测技术": { "data": { - "uuid": "云原生-5-1308", + "uuid": "云原生-5-1309", "seg": [ [ [ "异常", "检测", - "技术" + "技术", + "异常检测" ] ] ], - "level": "2", + "level": { + "min": 0.2153361344537815, + "max": 0.21554621848739494 + }, "related_data": {} } } @@ -52657,7 +61353,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21512605042016805, + "max": 0.21554621848739494 + }, "related_data": {} } } @@ -52668,7 +61367,7 @@ { "通过遥测使部署更安全": { "data": { - "uuid": "云原生-5-1309", + "uuid": "云原生-5-1310", "seg": [ [ [ @@ -52677,7 +61376,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21554621848739494, + "max": 0.21565126050420166 + }, "related_data": {} } } @@ -52685,7 +61387,7 @@ { "开发和运维共同承担值班工作": { "data": { - "uuid": "云原生-5-1310", + "uuid": "云原生-5-1311", "seg": [ [ [ @@ -52693,11 +61395,15 @@ "和运维", "承担", "值班", - "工作" + "工作", + "共同承担" ] ] ], - "level": "2", + "level": { + "min": 0.21565126050420166, + "max": 0.2157563025210084 + }, "related_data": {} } } @@ -52705,7 +61411,7 @@ { "让开发人员跟踪工作对下游的影响": { "data": { - "uuid": "云原生-5-1311", + "uuid": "云原生-5-1312", "seg": [ [ [ @@ -52717,7 +61423,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2157563025210084, + "max": 0.2158613445378151 + }, "related_data": {} } } @@ -52725,7 +61434,7 @@ { "让开发人员自行管理生产服务": { "data": { - "uuid": "云原生-5-1312", + "uuid": "云原生-5-1313", "seg": [ [ [ @@ -52736,7 +61445,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2158613445378151, + "max": 0.21596638655462183 + }, "related_data": {} } } @@ -52752,7 +61464,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21554621848739494, + "max": 0.21596638655462183 + }, "related_data": {} } } @@ -52763,7 +61478,7 @@ { "A/B测试简史": { "data": { - "uuid": "云原生-5-1313", + "uuid": "云原生-5-1314", "seg": [ [ [ @@ -52773,7 +61488,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21596638655462183, + "max": 0.21607142857142855 + }, "related_data": {} } } @@ -52781,7 +61499,7 @@ { "在功能测试中集成A/B测试": { "data": { - "uuid": "云原生-5-1314", + "uuid": "云原生-5-1315", "seg": [ [ [ @@ -52792,7 +61510,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21607142857142855, + "max": 0.21617647058823528 + }, "related_data": {} } } @@ -52800,7 +61521,7 @@ { "在发布中集成A/B测试": { "data": { - "uuid": "云原生-5-1315", + "uuid": "云原生-5-1316", "seg": [ [ [ @@ -52811,7 +61532,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21617647058823528, + "max": 0.216281512605042 + }, "related_data": {} } } @@ -52819,7 +61543,7 @@ { "在功能规划中集成A/B测试": { "data": { - "uuid": "云原生-5-1316", + "uuid": "云原生-5-1317", "seg": [ [ [ @@ -52827,11 +61551,15 @@ "规划", "集成", "a", - "b" + "b", + "功能规划" ] ] ], - "level": "2", + "level": { + "min": 0.216281512605042, + "max": 0.21638655462184872 + }, "related_data": {} } } @@ -52844,18 +61572,23 @@ [ "假设", "驱动", - "开发" + "开发", + "将假设" ], [ "a", "b", "融入", "日常", - "工作" + "工作", + "日常工作" ] ] ], - "level": "2", + "level": { + "min": 0.21596638655462183, + "max": 0.21638655462184872 + }, "related_data": {} } } @@ -52866,7 +61599,7 @@ { "变更审批流程的危险": { "data": { - "uuid": "云原生-5-1317", + "uuid": "云原生-5-1318", "seg": [ [ [ @@ -52877,7 +61610,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21638655462184872, + "max": 0.21644657863145256 + }, "related_data": {} } } @@ -52885,7 +61621,7 @@ { "“过度控制变更”的潜在危险": { "data": { - "uuid": "云原生-5-1318", + "uuid": "云原生-5-1319", "seg": [ [ [ @@ -52897,7 +61633,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21644657863145256, + "max": 0.2165066026410564 + }, "related_data": {} } } @@ -52905,7 +61644,7 @@ { "变更的协调和排程": { "data": { - "uuid": "云原生-5-1319", + "uuid": "云原生-5-1320", "seg": [ [ [ @@ -52917,7 +61656,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2165066026410564, + "max": 0.21656662665066023 + }, "related_data": {} } } @@ -52925,7 +61667,7 @@ { "变更的同行评审": { "data": { - "uuid": "云原生-5-1320", + "uuid": "云原生-5-1321", "seg": [ [ [ @@ -52935,7 +61677,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21656662665066023, + "max": 0.2166266506602641 + }, "related_data": {} } } @@ -52943,7 +61688,7 @@ { "人工测试和变更冻结的潜在危害": { "data": { - "uuid": "云原生-5-1321", + "uuid": "云原生-5-1322", "seg": [ [ [ @@ -52957,7 +61702,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2166266506602641, + "max": 0.21668667466986793 + }, "related_data": {} } } @@ -52965,7 +61713,7 @@ { "利用结对编程改进代码变更": { "data": { - "uuid": "云原生-5-1322", + "uuid": "云原生-5-1323", "seg": [ [ [ @@ -52977,7 +61725,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21668667466986793, + "max": 0.21674669867947177 + }, "related_data": {} } } @@ -52985,17 +61736,21 @@ { "消除官僚流程": { "data": { - "uuid": "云原生-5-1323", + "uuid": "云原生-5-1324", "seg": [ [ [ "消除", "官僚", - "流程" + "流程", + "官僚流程" ] ] ], - "level": "2", + "level": { + "min": 0.21674669867947177, + "max": 0.2168067226890756 + }, "related_data": {} } } @@ -53018,7 +61773,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21638655462184872, + "max": 0.2168067226890756 + }, "related_data": {} } } @@ -53038,7 +61796,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21512605042016805, + "max": 0.2168067226890756 + }, "related_data": {} } } @@ -53052,7 +61813,7 @@ { "将安全集成到开发迭代的演示中": { "data": { - "uuid": "云原生-5-1324", + "uuid": "云原生-5-1325", "seg": [ [ [ @@ -53063,7 +61824,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2168067226890756, + "max": 0.21688311688311687 + }, "related_data": {} } } @@ -53071,7 +61835,7 @@ { "将安全集成到缺陷跟踪和事后分析会议中": { "data": { - "uuid": "云原生-5-1325", + "uuid": "云原生-5-1326", "seg": [ [ [ @@ -53086,7 +61850,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21688311688311687, + "max": 0.2169595110771581 + }, "related_data": {} } } @@ -53094,7 +61861,7 @@ { "将预防性安全控制集成到共享源代码库及共享服务中": { "data": { - "uuid": "云原生-5-1326", + "uuid": "云原生-5-1327", "seg": [ [ [ @@ -53103,11 +61870,39 @@ "集成", "共享", "库及", - "服务" + "服务", + "将预防性", + "预防性安全控制", + "源代码库及" + ] + ] + ], + "level": { + "min": 0.2169595110771581, + "max": 0.21703590527119937 + }, + "related_data": {} + } + } + }, + { + "将安全集成到部署流水线中": { + "data": { + "uuid": "云原生-5-1328", + "seg": [ + [ + [ + "集成", + "部署", + "流水线", + "部署流水线" ] ] ], - "level": "2", + "level": { + "min": 0.21703590527119937, + "max": 0.21711229946524063 + }, "related_data": {} } } @@ -53115,7 +61910,7 @@ { "保证应用程序的安全性": { "data": { - "uuid": "云原生-5-1327", + "uuid": "云原生-5-1329", "seg": [ [ [ @@ -53125,7 +61920,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21711229946524063, + "max": 0.2171886936592819 + }, "related_data": {} } } @@ -53133,21 +61931,25 @@ { "确保软件供应链的安全": { "data": { - "uuid": "云原生-5-1328", + "uuid": "云原生-5-1330", "seg": [ [ [ "确保", "软件", - "供应链" + "供应链", + "软件供应链" ] ] ], - "level": "2", + "level": { + "min": 0.2171886936592819, + "max": 0.21726508785332313 + }, "related_data": { "blog": { "data_id": [ - "78329845" + "78329845@mesh@云原生" ] } } @@ -53157,7 +61959,7 @@ { "确保环境的安全": { "data": { - "uuid": "云原生-5-1329", + "uuid": "云原生-5-1331", "seg": [ [ [ @@ -53166,7 +61968,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21726508785332313, + "max": 0.2173414820473644 + }, "related_data": {} } } @@ -53174,7 +61979,7 @@ { "将信息安全集成到生产环境遥测中": { "data": { - "uuid": "云原生-5-1330", + "uuid": "云原生-5-1332", "seg": [ [ [ @@ -53182,11 +61987,15 @@ "集成", "生产", "环境", - "遥测" + "遥测", + "将信息安全" ] ] ], - "level": "2", + "level": { + "min": 0.2173414820473644, + "max": 0.21741787624140566 + }, "related_data": {} } } @@ -53194,7 +62003,7 @@ { "在应用程序中建立安全遥测系统": { "data": { - "uuid": "云原生-5-1331", + "uuid": "云原生-5-1333", "seg": [ [ [ @@ -53205,7 +62014,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21741787624140566, + "max": 0.21749427043544692 + }, "related_data": {} } } @@ -53213,7 +62025,7 @@ { "在环境中建立安全遥测系统": { "data": { - "uuid": "云原生-5-1332", + "uuid": "云原生-5-1334", "seg": [ [ [ @@ -53224,7 +62036,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21749427043544692, + "max": 0.21757066462948815 + }, "related_data": {} } } @@ -53232,17 +62047,21 @@ { "保护部署流水线": { "data": { - "uuid": "云原生-5-1333", + "uuid": "云原生-5-1335", "seg": [ [ [ "保护", "部署", - "流水线" + "流水线", + "部署流水线" ] ] ], - "level": "2", + "level": { + "min": 0.21757066462948815, + "max": 0.21764705882352942 + }, "related_data": {} } } @@ -53256,11 +62075,16 @@ "信息安全", "融入", "日常", - "工作" + "工作", + "将信息安全", + "日常工作" ] ] ], - "level": "2", + "level": { + "min": 0.2168067226890756, + "max": 0.21764705882352942 + }, "related_data": {} } } @@ -53271,7 +62095,7 @@ { "将安全和合规性集成到变更批准流程中": { "data": { - "uuid": "云原生-5-1334", + "uuid": "云原生-5-1336", "seg": [ [ [], @@ -53284,7 +62108,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21764705882352942, + "max": 0.21781512605042017 + }, "related_data": {} } } @@ -53292,7 +62119,7 @@ { "将大量低风险变更重新归类为标准变更": { "data": { - "uuid": "云原生-5-1335", + "uuid": "云原生-5-1337", "seg": [ [ [ @@ -53300,11 +62127,15 @@ "风险", "变更", "归类", - "标准" + "标准", + "将大量" ] ] ], - "level": "2", + "level": { + "min": 0.21781512605042017, + "max": 0.21798319327731092 + }, "related_data": {} } } @@ -53312,7 +62143,7 @@ { "如何处理常规变更": { "data": { - "uuid": "云原生-5-1336", + "uuid": "云原生-5-1338", "seg": [ [ [ @@ -53321,7 +62152,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21798319327731092, + "max": 0.2181512605042017 + }, "related_data": {} } } @@ -53329,7 +62163,7 @@ { "减少对职责分离的依赖": { "data": { - "uuid": "云原生-5-1337", + "uuid": "云原生-5-1339", "seg": [ [ [ @@ -53340,7 +62174,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2181512605042017, + "max": 0.21831932773109244 + }, "related_data": {} } } @@ -53348,7 +62185,7 @@ { "确保为审计人员和合规人员留存文档和证据": { "data": { - "uuid": "云原生-5-1338", + "uuid": "云原生-5-1340", "seg": [ [ [ @@ -53367,7 +62204,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21831932773109244, + "max": 0.2184873949579832 + }, "related_data": {} } } @@ -53380,11 +62220,15 @@ [ "保护", "部署", - "流水线" + "流水线", + "部署流水线" ] ] ], - "level": "2", + "level": { + "min": 0.21764705882352942, + "max": 0.2184873949579832 + }, "related_data": {} } } @@ -53409,7 +62253,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2168067226890756, + "max": 0.2184873949579832 + }, "related_data": {} } } @@ -53423,26 +62270,31 @@ { "Shell脚本的基本元素": { "data": { - "uuid": "云原生-5-1339", + "uuid": "云原生-5-1341", "seg": [ [ [ "shell", "脚本", - "元素" + "元素", + "基本元素" ] ] ], - "level": "2", + "level": { + "min": 0.2184873949579832, + "max": 0.21855742296918768 + }, "related_data": { "blog": { "data_id": [ - "111447870", - "103766987", - "117526745", - "86499561", - "87641476", - "115500098" + "111447870@运维@云原生", + "103766987@docker@云原生", + "117526745@devops@云原生", + "86499561@kafka@云原生", + "87641476@微服务@云原生", + "87641476@zookeeper@云原生", + "115500098@分布式@云原生" ] } } @@ -53452,7 +62304,7 @@ { "Shell基础正则表达式": { "data": { - "uuid": "云原生-5-1340", + "uuid": "云原生-5-1342", "seg": [ [ [ @@ -53462,12 +62314,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21855742296918768, + "max": 0.21862745098039216 + }, "related_data": { "blog": { "data_id": [ - "115553613", - "52818204" + "115553613@运维@云原生" ] } } @@ -53477,7 +62331,7 @@ { "Shell特殊字符": { "data": { - "uuid": "云原生-5-1341", + "uuid": "云原生-5-1343", "seg": [ [ [ @@ -53486,20 +62340,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21862745098039216, + "max": 0.21869747899159664 + }, "related_data": { "blog": { "data_id": [ - "88684567", - "44945799", - "88826822", - "90901875", - "86718580", - "95560439", - "104645072", - "107080993", - "115274189", - "108752592" + "88684567@devops@云原生", + "44945799@devops@云原生", + "88826822@运维@云原生", + "90901875@运维@云原生", + "86718580@devops@云原生", + "95560439@运维@云原生", + "104645072@运维@云原生", + "107080993@运维@云原生", + "115274189@运维@云原生", + "108752592@运维@云原生" ] } } @@ -53509,7 +62366,7 @@ { "变量和运算符": { "data": { - "uuid": "云原生-5-1342", + "uuid": "云原生-5-1344", "seg": [ [ [ @@ -53520,7 +62377,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21869747899159664, + "max": 0.21876750700280112 + }, "related_data": {} } } @@ -53533,11 +62393,15 @@ [ "shell", "编程", - "基础" + "基础", + "编程基础" ] ] ], - "level": "2", + "level": { + "min": 0.2184873949579832, + "max": 0.21876750700280112 + }, "related_data": {} } } @@ -53551,11 +62415,15 @@ [ "shell", "控制流", - "结构" + "结构", + "控制流结构" ] ] ], - "level": "2", + "level": { + "min": 0.21876750700280112, + "max": 0.21904761904761905 + }, "related_data": {} } } @@ -53566,18 +62434,23 @@ { "sed的基础语法格式": { "data": { - "uuid": "云原生-5-1343", + "uuid": "云原生-5-1345", "seg": [ [ [ "sed", "基础", "语法", - "格式" + "格式", + "基础语法", + "语法格式" ] ] ], - "level": "2", + "level": { + "min": 0.21904761904761905, + "max": 0.219187675070028 + }, "related_data": {} } } @@ -53585,7 +62458,7 @@ { "sed的用法举例说明": { "data": { - "uuid": "云原生-5-1344", + "uuid": "云原生-5-1346", "seg": [ [ [ @@ -53595,12 +62468,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.219187675070028, + "max": 0.21932773109243697 + }, "related_data": { "blog": { "data_id": [ - "71196410", - "76209094" + "71196410@mesh@云原生", + "76209094@mesh@云原生" ] } } @@ -53615,7 +62491,8 @@ [ "sed", "基础", - "用法" + "用法", + "基础用法" ], [ "实用", @@ -53623,7 +62500,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21904761904761905, + "max": 0.21932773109243697 + }, "related_data": {} } } @@ -53637,7 +62517,8 @@ [ "awk", "基础", - "用法" + "用法", + "基础用法" ], [ "实用", @@ -53645,7 +62526,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21932773109243697, + "max": 0.2196078431372549 + }, "related_data": {} } } @@ -53662,18 +62546,23 @@ "开发", "应", "系统", - "知识点" + "知识点", + "系统知识点" ] ] ], - "level": "2", + "level": { + "min": 0.2196078431372549, + "max": 0.21988795518207283 + }, "related_data": { "blog": { "data_id": [ - "88700896", - "108654602", - "115388168", - "115118538" + "88700896@devops@云原生", + "108654602@devops@云原生", + "115388168@devops@云原生", + "115388168@consul@云原生", + "115118538@devops@云原生" ] } } @@ -53686,7 +62575,7 @@ { "生产环境下的备份类脚本": { "data": { - "uuid": "云原生-5-1345", + "uuid": "云原生-5-1347", "seg": [ [ [ @@ -53694,11 +62583,15 @@ "环境", "备份", "类", - "脚本" + "脚本", + "备份类" ] ] ], - "level": "2", + "level": { + "min": 0.21988795518207283, + "max": 0.2199579831932773 + }, "related_data": {} } } @@ -53706,7 +62599,7 @@ { "生产环境下的统计类脚本": { "data": { - "uuid": "云原生-5-1346", + "uuid": "云原生-5-1348", "seg": [ [ [ @@ -53718,7 +62611,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2199579831932773, + "max": 0.2200280112044818 + }, "related_data": {} } } @@ -53726,7 +62622,7 @@ { "生产环境下的监控类脚本": { "data": { - "uuid": "云原生-5-1347", + "uuid": "云原生-5-1349", "seg": [ [ [ @@ -53738,7 +62634,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2200280112044818, + "max": 0.22009803921568627 + }, "related_data": {} } } @@ -53746,7 +62645,7 @@ { "生产环境下的运维开发类脚本": { "data": { - "uuid": "云原生-5-1348", + "uuid": "云原生-5-1350", "seg": [ [ [ @@ -53759,11 +62658,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22009803921568627, + "max": 0.22016806722689075 + }, "related_data": { "blog": { "data_id": [ - "42526755" + "42526755@运维@云原生" ] } } @@ -53783,7 +62685,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.21988795518207283, + "max": 0.22016806722689075 + }, "related_data": {} } } @@ -53800,7 +62705,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2184873949579832, + "max": 0.22016806722689075 + }, "related_data": {} } } @@ -53821,7 +62729,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22016806722689075, + "max": 0.2203781512605042 + }, "related_data": {} } } @@ -53839,7 +62750,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2203781512605042, + "max": 0.22058823529411764 + }, "related_data": {} } } @@ -53856,7 +62770,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22058823529411764, + "max": 0.22079831932773109 + }, "related_data": {} } } @@ -53867,7 +62784,7 @@ { "Python(x,y)简单介绍": { "data": { - "uuid": "云原生-5-1349", + "uuid": "云原生-5-1351", "seg": [ [ [ @@ -53878,20 +62795,23 @@ ] ] ], - "level": "3", + "level": { + "min": 0.22079831932773109, + "max": 0.22086834733893557 + }, "related_data": { "blog": { "data_id": [ - "52020691", - "87927202", - "91533728", - "100958888", - "95570963", - "109145903", - "94362181", - "115431200", - "80242460", - "84863545" + "90594945@devops@云原生", + "116062595@运维@云原生", + "84257476@运维@云原生", + "90447565@go@云原生", + "111227462@cloud@云原生", + "113501457@devops@云原生", + "114916885@运维@云原生", + "24264807@go@云原生", + "117441795@go@云原生", + "107244802@go@云原生" ] } } @@ -53901,7 +62821,7 @@ { "IPython详细介绍": { "data": { - "uuid": "云原生-5-1350", + "uuid": "云原生-5-1352", "seg": [ [ [ @@ -53911,12 +62831,16 @@ ] ] ], - "level": "3", + "level": { + "min": 0.22086834733893557, + "max": 0.22093837535014005 + }, "related_data": { "blog": { "data_id": [ - "84144453", - "83692496" + "84144453@cloud@云原生", + "83692496@spring@云原生", + "84144453@spring@云原生" ] } } @@ -53926,7 +62850,7 @@ { "Sublime Text3简单介绍": { "data": { - "uuid": "云原生-5-1351", + "uuid": "云原生-5-1353", "seg": [ [ [ @@ -53936,7 +62860,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.22093837535014005, + "max": 0.22100840336134453 + }, "related_data": {} } } @@ -53954,7 +62881,10 @@ ] ] ], - "level": "3", + "level": { + "min": 0.22079831932773109, + "max": 0.22100840336134453 + }, "related_data": {} } } @@ -53965,7 +62895,7 @@ { "正则表达式应用": { "data": { - "uuid": "云原生-5-1352", + "uuid": "云原生-5-1354", "seg": [ [ [ @@ -53973,7 +62903,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22100840336134453, + "max": 0.2210346638655462 + }, "related_data": {} } } @@ -53981,7 +62914,7 @@ { "Python程序构成": { "data": { - "uuid": "云原生-5-1353", + "uuid": "云原生-5-1355", "seg": [ [ [ @@ -53990,16 +62923,19 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2210346638655462, + "max": 0.2210609243697479 + }, "related_data": { "blog": { "data_id": [ - "110499434", - "110516671", - "83187698", - "53152326", - "113333596", - "113186352" + "110499434@devops@云原生", + "110516671@go@云原生", + "83187698@go@云原生", + "53152326@aws@云原生", + "113333596@运维@云原生", + "113186352@jwt@云原生" ] } } @@ -54009,7 +62945,7 @@ { "使用Python解析JSON": { "data": { - "uuid": "云原生-5-1354", + "uuid": "云原生-5-1356", "seg": [ [ [ @@ -54019,12 +62955,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2210609243697479, + "max": 0.22108718487394957 + }, "related_data": { "blog": { "data_id": [ - "107066454", - "85211951" + "107066454@分布式@云原生", + "85211951@kafka@云原生" ] } } @@ -54034,23 +62973,28 @@ { "Python异常处理与程序调试": { "data": { - "uuid": "云原生-5-1355", + "uuid": "云原生-5-1357", "seg": [ [ [ "python", - "异常" + "异常", + "异常处理" ], [ "程序调试" ] ] ], - "level": "2", + "level": { + "min": 0.22108718487394957, + "max": 0.22111344537815125 + }, "related_data": { "blog": { "data_id": [ - "89386078" + "89386078@中间件@云原生", + "89386078@控制器@云原生" ] } } @@ -54060,7 +63004,7 @@ { "Python函数": { "data": { - "uuid": "云原生-5-1356", + "uuid": "云原生-5-1358", "seg": [ [ [ @@ -54069,17 +63013,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22111344537815125, + "max": 0.22113970588235293 + }, "related_data": { "blog": { "data_id": [ - "78691195", - "109033156", - "20961959", - "72775865", - "72590620", - "109697047", - "112165992" + "52020691@etcd@云原生", + "87927202@devops@云原生", + "91533728@运维@云原生", + "100958888@devops@云原生", + "95570963@devops@云原生", + "78691195@mesh@云原生", + "109145903@go@云原生", + "94362181@容器@云原生", + "115431200@dashboard@云原生", + "80242460@cloud@云原生" ] } } @@ -54089,7 +63039,7 @@ { "Python面向对象": { "data": { - "uuid": "云原生-5-1357", + "uuid": "云原生-5-1359", "seg": [ [ [ @@ -54098,7 +63048,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22113970588235293, + "max": 0.2211659663865546 + }, "related_data": {} } } @@ -54106,7 +63059,7 @@ { "Python多进程": { "data": { - "uuid": "云原生-5-1358", + "uuid": "云原生-5-1360", "seg": [ [ [ @@ -54115,7 +63068,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2211659663865546, + "max": 0.2211922268907563 + }, "related_data": {} } } @@ -54123,7 +63079,7 @@ { "Python多线程": { "data": { - "uuid": "云原生-5-1359", + "uuid": "云原生-5-1361", "seg": [ [ [ @@ -54132,13 +63088,16 @@ ] ] ], - "level": "1", + "level": { + "min": 0.2211922268907563, + "max": 0.22121848739495797 + }, "related_data": { "blog": { "data_id": [ - "7218611", - "114024849", - "115425682" + "7218611@go@云原生", + "114024849@分布式@云原生", + "115425682@mesh@云原生" ] } } @@ -54153,11 +63112,15 @@ [ "python", "基础知识", - "进阶" + "进阶", + "基础知识进阶" ] ] ], - "level": "2", + "level": { + "min": 0.22100840336134453, + "max": 0.22121848739495797 + }, "related_data": {} } } @@ -54171,11 +63134,15 @@ [ "python", "用到", - "类库" + "类库", + "经常用到" ] ] ], - "level": "2", + "level": { + "min": 0.22121848739495797, + "max": 0.22142857142857142 + }, "related_data": {} } } @@ -54196,11 +63163,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22142857142857142, + "max": 0.22163865546218486 + }, "related_data": { "blog": { "data_id": [ - "78313120" + "78313120@devops@云原生" ] } } @@ -54221,7 +63191,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22163865546218486, + "max": 0.2218487394957983 + }, "related_data": {} } } @@ -54241,7 +63214,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22016806722689075, + "max": 0.2218487394957983 + }, "related_data": {} } } @@ -54261,7 +63237,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2218487394957983, + "max": 0.2221848739495798 + }, "related_data": {} } } @@ -54278,7 +63257,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2221848739495798, + "max": 0.22252100840336134 + }, "related_data": {} } } @@ -54289,7 +63271,7 @@ { "Vagrant的具体安装步骤": { "data": { - "uuid": "云原生-5-1360", + "uuid": "云原生-5-1362", "seg": [ [ [ @@ -54299,20 +63281,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22252100840336134, + "max": 0.2226330532212885 + }, "related_data": { "blog": { "data_id": [ - "103292789", - "94393359", - "91049520", - "50013867", - "50898750", - "83897608", - "112882208", - "52866009", - "52963529", - "102571865" + "103292789@vagrant@云原生", + "94393359@vagrant@云原生", + "91049520@vagrant@云原生", + "50013867@vagrant@云原生", + "50898750@vagrant@云原生", + "83897608@vagrant@云原生", + "112882208@vagrant@云原生", + "52866009@vagrant@云原生", + "52963529@vagrant@云原生", + "102571865@vagrant@云原生" ] } } @@ -54322,7 +63307,7 @@ { "Vagrant配置文件详解": { "data": { - "uuid": "云原生-5-1361", + "uuid": "云原生-5-1363", "seg": [ [ [ @@ -54332,12 +63317,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2226330532212885, + "max": 0.22274509803921566 + }, "related_data": { "blog": { "data_id": [ - "51089774", - "75098195" + "51089774@vagrant@云原生", + "75098195@vagrant@云原生" ] } } @@ -54347,7 +63335,7 @@ { "Vagrant常用命令详解": { "data": { - "uuid": "云原生-5-1362", + "uuid": "云原生-5-1364", "seg": [ [ [ @@ -54357,20 +63345,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22274509803921566, + "max": 0.22285714285714284 + }, "related_data": { "blog": { "data_id": [ - "50673756", - "49385635", - "50503855", - "51591593", - "114478386", - "50849954", - "48772461", - "78470271", - "81517216", - "51911401" + "50673756@vagrant@云原生", + "49385635@vagrant@云原生", + "50503855@vagrant@云原生", + "51591593@vagrant@云原生", + "114478386@vagrant@云原生", + "50849954@vagrant@云原生", + "48772461@vagrant@云原生", + "78470271@vagrant@云原生", + "81517216@vagrant@云原生", + "51911401@vagrant@云原生" ] } } @@ -54390,7 +63381,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22252100840336134, + "max": 0.22285714285714284 + }, "related_data": {} } } @@ -54410,20 +63404,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22285714285714284, + "max": 0.22319327731092437 + }, "related_data": { "blog": { "data_id": [ - "84906818", - "111569286", - "104237274", - "66475686", - "102810532", - "104235143", - "109963559", - "117021632", - "110212844", - "102810541" + "84906818@devops@云原生", + "111569286@devops@云原生", + "104237274@devops@云原生", + "66475686@devops@云原生", + "102810532@devops@云原生", + "104235143@devops@云原生", + "102810532@docker@云原生", + "102810532@容器@云原生", + "109963559@devops@云原生", + "117021632@devops@云原生" ] } } @@ -54440,11 +63437,15 @@ "vagrant", "搭建", "分布式", - "环境" + "环境", + "分布式环境" ] ] ], - "level": "2", + "level": { + "min": 0.22319327731092437, + "max": 0.22352941176470587 + }, "related_data": {} } } @@ -54461,7 +63462,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2218487394957983, + "max": 0.22352941176470587 + }, "related_data": {} } } @@ -54481,7 +63485,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22352941176470587, + "max": 0.22368220015278836 + }, "related_data": {} } } @@ -54501,7 +63508,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22368220015278836, + "max": 0.2238349885408709 + }, "related_data": {} } } @@ -54523,7 +63533,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2238349885408709, + "max": 0.22398777692895339 + }, "related_data": {} } } @@ -54541,15 +63554,18 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22398777692895339, + "max": 0.22414056531703588 + }, "related_data": { "blog": { "data_id": [ - "45507567", - "45013389", - "46316295", - "44925401", - "45080415" + "45507567@devops@云原生", + "45013389@devops@云原生", + "46316295@devops@云原生", + "44925401@devops@云原生", + "45080415@devops@云原生" ] } } @@ -54568,7 +63584,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22414056531703588, + "max": 0.22429335370511838 + }, "related_data": {} } } @@ -54583,17 +63602,21 @@ "ansible", "aws", "云", - "平台" + "平台", + "云平台" ] ] ], - "level": "2", + "level": { + "min": 0.22429335370511838, + "max": 0.2244461420932009 + }, "related_data": { "blog": { "data_id": [ - "108921449", - "108920551", - "88944460" + "108921449@阿里云@云原生", + "108920551@阿里云@云原生", + "88944460@docker@云原生" ] } } @@ -54611,7 +63634,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2244461420932009, + "max": 0.2245989304812834 + }, "related_data": {} } } @@ -54628,7 +63654,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2245989304812834, + "max": 0.2247517188693659 + }, "related_data": {} } } @@ -54646,7 +63675,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2247517188693659, + "max": 0.2249045072574484 + }, "related_data": {} } } @@ -54657,7 +63689,7 @@ { "runner API": { "data": { - "uuid": "云原生-5-1363", + "uuid": "云原生-5-1365", "seg": [ [ [ @@ -54666,7 +63698,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2249045072574484, + "max": 0.22495543672014257 + }, "related_data": {} } } @@ -54674,7 +63709,7 @@ { "playbook API": { "data": { - "uuid": "云原生-5-1364", + "uuid": "云原生-5-1366", "seg": [ [ [ @@ -54683,7 +63718,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22495543672014257, + "max": 0.22500636618283676 + }, "related_data": {} } } @@ -54691,7 +63729,7 @@ { "用Flask封装Ansible提供自动化运维后端": { "data": { - "uuid": "云原生-5-1365", + "uuid": "云原生-5-1367", "seg": [ [ [ @@ -54705,20 +63743,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22500636618283676, + "max": 0.22505729564553092 + }, "related_data": { "blog": { "data_id": [ - "114928957", - "104826245", - "44901509", - "79400801", - "112646599", - "83791130", - "53558598", - "115466721", - "95320106", - "102156911" + "114928957@devops@云原生", + "104826245@devops@云原生", + "44901509@devops@云原生", + "79400801@devops@云原生", + "112646599@devops@云原生", + "83791130@devops@云原生", + "53558598@微服务@云原生", + "115466721@运维@云原生", + "95320106@运维@云原生", + "102156911@运维@云原生" ] } } @@ -54741,7 +63782,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2249045072574484, + "max": 0.22505729564553092 + }, "related_data": {} } } @@ -54759,7 +63803,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22505729564553092, + "max": 0.22521008403361342 + }, "related_data": {} } } @@ -54773,11 +63820,15 @@ "自动化", "部署", "管理工具", - "ansible" + "ansible", + "部署管理工具" ] ] ], - "level": "2", + "level": { + "min": 0.22352941176470587, + "max": 0.22521008403361342 + }, "related_data": {} } } @@ -54791,7 +63842,7 @@ { "Salt的优势": { "data": { - "uuid": "云原生-5-1366", + "uuid": "云原生-5-1368", "seg": [ [ [ @@ -54800,7 +63851,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22521008403361342, + "max": 0.22527731092436973 + }, "related_data": {} } } @@ -54808,7 +63862,7 @@ { "Salt的安装": { "data": { - "uuid": "云原生-5-1367", + "uuid": "云原生-5-1369", "seg": [ [ [ @@ -54817,7 +63871,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22527731092436973, + "max": 0.22534453781512603 + }, "related_data": {} } } @@ -54825,7 +63882,7 @@ { "Salt的工作流程": { "data": { - "uuid": "云原生-5-1368", + "uuid": "云原生-5-1370", "seg": [ [ [ @@ -54835,11 +63892,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22534453781512603, + "max": 0.22541176470588234 + }, "related_data": { "blog": { "data_id": [ - "114527428" + "114527428@分布式@云原生" ] } } @@ -54849,7 +63909,7 @@ { "Salt配置文件详解": { "data": { - "uuid": "云原生-5-1369", + "uuid": "云原生-5-1371", "seg": [ [ [ @@ -54859,7 +63919,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22541176470588234, + "max": 0.22547899159663864 + }, "related_data": {} } } @@ -54867,21 +63930,25 @@ { "Salt的命令格式": { "data": { - "uuid": "云原生-5-1370", + "uuid": "云原生-5-1372", "seg": [ [ [ "salt", "命令", - "格式" + "格式", + "命令格式" ] ] ], - "level": "2", + "level": { + "min": 0.22547899159663864, + "max": 0.22554621848739495 + }, "related_data": { "blog": { "data_id": [ - "113825539" + "113825539@devops@云原生" ] } } @@ -54901,7 +63968,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22521008403361342, + "max": 0.22554621848739495 + }, "related_data": {} } } @@ -54912,7 +63982,7 @@ { "Salt常用的操作目标": { "data": { - "uuid": "云原生-5-1371", + "uuid": "云原生-5-1373", "seg": [ [ [ @@ -54922,7 +63992,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22554621848739495, + "max": 0.22560224089635852 + }, "related_data": {} } } @@ -54930,7 +64003,7 @@ { "Salt常用模块": { "data": { - "uuid": "云原生-5-1372", + "uuid": "云原生-5-1374", "seg": [ [ [ @@ -54939,11 +64012,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22560224089635852, + "max": 0.22565826330532213 + }, "related_data": { "blog": { "data_id": [ - "68953784" + "68953784@mesh@云原生" ] } } @@ -54953,7 +64029,7 @@ { "Granis组件": { "data": { - "uuid": "云原生-5-1373", + "uuid": "云原生-5-1375", "seg": [ [ [ @@ -54962,7 +64038,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22565826330532213, + "max": 0.2257142857142857 + }, "related_data": {} } } @@ -54970,7 +64049,7 @@ { "pillar组件": { "data": { - "uuid": "云原生-5-1374", + "uuid": "云原生-5-1376", "seg": [ [ [ @@ -54979,7 +64058,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2257142857142857, + "max": 0.22577030812324927 + }, "related_data": {} } } @@ -54987,7 +64069,7 @@ { "job管理": { "data": { - "uuid": "云原生-5-1375", + "uuid": "云原生-5-1377", "seg": [ [ [ @@ -54996,7 +64078,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22577030812324927, + "max": 0.22582633053221288 + }, "related_data": {} } } @@ -55004,7 +64089,7 @@ { "State介绍": { "data": { - "uuid": "云原生-5-1376", + "uuid": "云原生-5-1378", "seg": [ [ [ @@ -55013,7 +64098,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22582633053221288, + "max": 0.22588235294117645 + }, "related_data": {} } } @@ -55029,7 +64117,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22554621848739495, + "max": 0.22588235294117645 + }, "related_data": {} } } @@ -55040,7 +64131,7 @@ { "base环境配置": { "data": { - "uuid": "云原生-5-1377", + "uuid": "云原生-5-1379", "seg": [ [ [ @@ -55050,7 +64141,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22588235294117645, + "max": 0.2260504201680672 + }, "related_data": {} } } @@ -55058,7 +64152,7 @@ { "prod环境配置": { "data": { - "uuid": "云原生-5-1378", + "uuid": "云原生-5-1380", "seg": [ [ [ @@ -55068,7 +64162,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2260504201680672, + "max": 0.22621848739495798 + }, "related_data": {} } } @@ -55082,11 +64179,15 @@ "salt", "真实", "案例", - "分享" + "分享", + "真实案例" ] ] ], - "level": "2", + "level": { + "min": 0.22588235294117645, + "max": 0.22621848739495798 + }, "related_data": {} } } @@ -55104,7 +64205,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22621848739495798, + "max": 0.22655462184873948 + }, "related_data": {} } } @@ -55115,7 +64219,7 @@ { "Python API介绍": { "data": { - "uuid": "云原生-5-1379", + "uuid": "云原生-5-1381", "seg": [ [ [ @@ -55125,15 +64229,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22655462184873948, + "max": 0.22672268907563026 + }, "related_data": { "blog": { "data_id": [ - "81115996", - "82285909", - "83035157", - "51560312", - "95090702" + "81115996@kafka@云原生", + "82285909@consul@云原生", + "83035157@分布式@云原生", + "95090702@cloud@云原生" ] } } @@ -55143,7 +64249,7 @@ { "Restful API介绍": { "data": { - "uuid": "云原生-5-1380", + "uuid": "云原生-5-1382", "seg": [ [ [ @@ -55153,11 +64259,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22672268907563026, + "max": 0.226890756302521 + }, "related_data": { "blog": { "data_id": [ - "103480842" + "103480842@etcd@云原生" ] } } @@ -55176,7 +64285,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22655462184873948, + "max": 0.226890756302521 + }, "related_data": {} } } @@ -55190,11 +64302,15 @@ "自动化", "配置管理", "工具", - "saltstack" + "saltstack", + "配置管理工具" ] ] ], - "level": "2", + "level": { + "min": 0.22521008403361342, + "max": 0.226890756302521 + }, "related_data": {} } } @@ -55215,7 +64331,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.226890756302521, + "max": 0.22713085234093638 + }, "related_data": {} } } @@ -55229,11 +64348,15 @@ [ "docker", "核心", - "概念" + "概念", + "核心概念" ] ] ], - "level": "2", + "level": { + "min": 0.22713085234093638, + "max": 0.22737094837935173 + }, "related_data": {} } } @@ -55246,11 +64369,15 @@ [ [ "docker", - "架构" + "架构", + "基本架构" ] ] ], - "level": "2", + "level": { + "min": 0.22737094837935173, + "max": 0.2276110444177671 + }, "related_data": {} } } @@ -55268,7 +64395,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2276110444177671, + "max": 0.22785114045618246 + }, "related_data": {} } } @@ -55286,11 +64416,15 @@ "技巧", "打包", "docker", - "镜像" + "镜像", + "文件技巧" ] ] ], - "level": "2", + "level": { + "min": 0.22785114045618246, + "max": 0.22809123649459784 + }, "related_data": {} } } @@ -55301,17 +64435,21 @@ { "Docker-Compose的基本语法": { "data": { - "uuid": "云原生-5-1381", + "uuid": "云原生-5-1383", "seg": [ [ [ "docker", "compose", - "语法" + "语法", + "基本语法" ] ] ], - "level": "2", + "level": { + "min": 0.22809123649459784, + "max": 0.2282112845138055 + }, "related_data": {} } } @@ -55319,7 +64457,7 @@ { "Docker-Compose常用命令": { "data": { - "uuid": "云原生-5-1382", + "uuid": "云原生-5-1384", "seg": [ [ [ @@ -55329,20 +64467,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2282112845138055, + "max": 0.2283313325330132 + }, "related_data": { "blog": { "data_id": [ - "80877643", - "88362801", - "79098302", - "86480522", - "79492866", - "110563169", - "79427878", - "118257013", - "117388594", - "118342907" + "80877643@docker@云原生", + "88362801@docker@云原生", + "79098302@docker@云原生", + "86480522@consul@云原生", + "79492866@容器@云原生", + "110563169@consul@云原生", + "79427878@docker@云原生", + "118257013@devops@云原生", + "117388594@docker@云原生", + "117388594@容器@云原生" ] } } @@ -55366,7 +64507,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22809123649459784, + "max": 0.2283313325330132 + }, "related_data": {} } } @@ -55377,7 +64521,7 @@ { "Jenkins Master/Slave的详细部署过程": { "data": { - "uuid": "云原生-5-1383", + "uuid": "云原生-5-1385", "seg": [ [ [ @@ -55386,24 +64530,28 @@ "slave", "详细", "部署", - "过程" + "过程", + "部署过程" ] ] ], - "level": "2", + "level": { + "min": 0.2283313325330132, + "max": 0.22857142857142856 + }, "related_data": { "blog": { "data_id": [ - "101289835", - "103629487", - "75160435", - "77768892", - "88717234", - "107877150", - "111975740", - "117692609", - "97692330", - "117288410" + "101289835@devops@云原生", + "103629487@devops@云原生", + "75160435@devops@云原生", + "77768892@devops@云原生", + "88717234@devops@云原生", + "107877150@devops@云原生", + "111975740@devops@云原生", + "117692609@docker@云原生", + "97692330@devops@云原生", + "117288410@devops@云原生" ] } } @@ -55423,11 +64571,15 @@ "master", "slave", "分布式", - "环境" + "环境", + "分布式环境" ] ] ], - "level": "2", + "level": { + "min": 0.2283313325330132, + "max": 0.22857142857142856 + }, "related_data": {} } } @@ -55446,7 +64598,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.226890756302521, + "max": 0.22857142857142856 + }, "related_data": {} } } @@ -55461,7 +64616,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.19999999999999998, + "max": 0.22857142857142856 + }, "related_data": {} } } @@ -55483,14 +64641,11 @@ ] ] ], - "level": "2", - "related_data": { - "blog": { - "data_id": [ - "103438548" - ] - } - } + "level": { + "min": 0.22857142857142856, + "max": 0.23333333333333334 + }, + "related_data": {} } } }, @@ -55505,7 +64660,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23333333333333334, + "max": 0.23809523809523808 + }, "related_data": {} } } @@ -55520,7 +64678,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22857142857142856, + "max": 0.23809523809523808 + }, "related_data": {} } } @@ -55539,20 +64700,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23809523809523808, + "max": 0.2476190476190476 + }, "related_data": { "blog": { "data_id": [ - "97240935", - "94732523", - "96429383", - "103593878", - "86702961", - "102564603", - "111308891", - "96706593", - "88146854", - "108819253" + "97240935@服务发现@云原生", + "94732523@服务发现@云原生", + "96429383@服务发现@云原生", + "103593878@服务发现@云原生", + "88895230@服务发现@云原生", + "86702961@服务发现@云原生", + "102564603@eureka@云原生", + "111308891@服务发现@云原生", + "96706593@eureka@云原生", + "88146854@服务发现@云原生" ] } } @@ -55574,7 +64738,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.23809523809523808, + "max": 0.2476190476190476 + }, "related_data": {} } } @@ -55594,7 +64761,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2476190476190476, + "max": 0.2507936507936508 + }, "related_data": {} } } @@ -55610,15 +64780,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2507936507936508, + "max": 0.25396825396825395 + }, "related_data": { "blog": { "data_id": [ - "109451878", - "109450407", - "109461091", - "109455360", - "109457558" + "109451878@CNCF@云原生", + "109450407@CNCF@云原生", + "109455360@CNCF@云原生", + "109457558@CNCF@云原生" ] } } @@ -55636,7 +64808,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.25396825396825395, + "max": 0.2571428571428571 + }, "related_data": {} } } @@ -55651,7 +64826,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2476190476190476, + "max": 0.2571428571428571 + }, "related_data": {} } } @@ -55666,7 +64844,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.22857142857142856, + "max": 0.2571428571428571 + }, "related_data": {} } } @@ -55680,7 +64861,10 @@ [] ] ], - "level": "2", + "level": { + "min": 0.2571428571428571, + "max": 0.2857142857142857 + }, "related_data": {} } } @@ -55695,10 +64879,16 @@ "原生", "初阶", "平台", - "开发" + "开发", + "云原生", + "原生初阶" ] ] ], + "level": { + "min": 0.14285714285714285, + "max": 0.2857142857142857 + }, "related_data": {} } } @@ -55723,7 +64913,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2857142857142857, + "max": 0.3333333333333333 + }, "related_data": {} } } @@ -55739,7 +64932,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2857142857142857, + "max": 0.3333333333333333 + }, "related_data": {} } } @@ -55754,7 +64950,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.2857142857142857, + "max": 0.3333333333333333 + }, "related_data": {} } } @@ -55773,7 +64972,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3333333333333333, + "max": 0.38095238095238093 + }, "related_data": {} } } @@ -55790,7 +64992,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.3333333333333333, + "max": 0.38095238095238093 + }, "related_data": {} } } @@ -55804,7 +65009,10 @@ [] ] ], - "level": "2", + "level": { + "min": 0.38095238095238093, + "max": 0.42857142857142855 + }, "related_data": {} } } @@ -55818,10 +65026,16 @@ "云", "原生", "中阶", - "开发" + "开发", + "云原生", + "原生中阶" ] ] ], + "level": { + "min": 0.2857142857142857, + "max": 0.42857142857142855 + }, "related_data": {} } } @@ -55846,7 +65060,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.42857142857142855, + "max": 0.4289554531490015 + }, "related_data": {} } } @@ -55862,11 +65079,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4289554531490015, + "max": 0.4293394777265745 + }, "related_data": { "blog": { "data_id": [ - "113369747" + "113369747@CNCF@云原生" ] } } @@ -55884,7 +65104,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4293394777265745, + "max": 0.42972350230414746 + }, "related_data": {} } } @@ -55900,7 +65123,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.42857142857142855, + "max": 0.42972350230414746 + }, "related_data": {} } } @@ -55919,7 +65145,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.42972350230414746, + "max": 0.4308755760368663 + }, "related_data": {} } } @@ -55931,11 +65160,15 @@ [ [ "集群", - "联邦" + "联邦", + "集群联邦" ] ] ], - "level": "2", + "level": { + "min": 0.42972350230414746, + "max": 0.4308755760368663 + }, "related_data": {} } } @@ -55955,7 +65188,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4308755760368663, + "max": 0.4311059907834101 + }, "related_data": {} } } @@ -55971,7 +65207,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4311059907834101, + "max": 0.4313364055299539 + }, "related_data": {} } } @@ -55989,14 +65228,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4313364055299539, + "max": 0.4315668202764977 + }, "related_data": { "blog": { "data_id": [ - "116036307", - "50198791", - "114005834", - "7016185" + "116036307@consul@云原生", + "50198791@控制器@云原生", + "114005834@cloud@云原生", + "7016185@go@云原生" ] } } @@ -56014,7 +65256,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4315668202764977, + "max": 0.43179723502304146 + }, "related_data": {} } } @@ -56030,7 +65275,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43179723502304146, + "max": 0.43202764976958524 + }, "related_data": {} } } @@ -56045,7 +65293,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4308755760368663, + "max": 0.43202764976958524 + }, "related_data": {} } } @@ -56059,30 +65310,34 @@ { "容器技术的功用": { "data": { - "uuid": "云原生-5-1384", + "uuid": "云原生-5-1386", "seg": [ [ [ "容器", "技术", - "功用" + "功用", + "容器技术" ] ] ], - "level": "2", + "level": { + "min": 0.43202764976958524, + "max": 0.4321236559139785 + }, "related_data": { "blog": { "data_id": [ - "70054393", - "80940692", - "109115256", - "78772657", - "53839237", - "81130153", - "89191023", - "89226780", - "112272814", - "109471076" + "70054393@容器@云原生", + "80940692@容器@云原生", + "109115256@云原生@云原生", + "78772657@mesh@云原生", + "53839237@容器@云原生", + "81130153@容器@云原生", + "89191023@docker@云原生", + "89191023@容器@云原生", + "89226780@容器@云原生", + "112272814@云原生@云原生" ] } } @@ -56092,16 +65347,20 @@ { "容器简史": { "data": { - "uuid": "云原生-5-1385", + "uuid": "云原生-5-1387", "seg": [ [ [ "容器", - "简史" + "简史", + "容器简史" ] ] ], - "level": "2", + "level": { + "min": 0.4321236559139785, + "max": 0.4322196620583717 + }, "related_data": {} } } @@ -56109,7 +65368,7 @@ { "Docker的功能限制": { "data": { - "uuid": "云原生-5-1386", + "uuid": "云原生-5-1388", "seg": [ [ [ @@ -56118,7 +65377,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4322196620583717, + "max": 0.43231566820276496 + }, "related_data": {} } } @@ -56131,11 +65393,15 @@ [ "容器", "技术", - "概述" + "概述", + "容器技术" ] ] ], - "level": "2", + "level": { + "min": 0.43202764976958524, + "max": 0.43231566820276496 + }, "related_data": {} } } @@ -56146,7 +65412,7 @@ { "Kubernetes简史": { "data": { - "uuid": "云原生-5-1387", + "uuid": "云原生-5-1389", "seg": [ [ [ @@ -56155,7 +65421,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43231566820276496, + "max": 0.4324116743471582 + }, "related_data": {} } } @@ -56163,7 +65432,7 @@ { "Kubernetes特性": { "data": { - "uuid": "云原生-5-1388", + "uuid": "云原生-5-1390", "seg": [ [ [ @@ -56172,11 +65441,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4324116743471582, + "max": 0.4325076804915514 + }, "related_data": { "blog": { "data_id": [ - "75935700" + "75935700@docker@云原生", + "75935700@容器@云原生", + "75935700@kubernetes@云原生" ] } } @@ -56186,7 +65460,7 @@ { "Kubernetes概念和术语": { "data": { - "uuid": "云原生-5-1389", + "uuid": "云原生-5-1391", "seg": [ [ [ @@ -56198,15 +65472,18 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4325076804915514, + "max": 0.4326036866359447 + }, "related_data": { "blog": { "data_id": [ - "109015382", - "101290820", - "108192915", - "109335261", - "108643556" + "109015382@kubernetes@云原生", + "101290820@kubernetes@云原生", + "108192915@kubernetes@云原生", + "109335261@CNCF@云原生", + "108643556@serverless@云原生" ] } } @@ -56224,7 +65501,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43231566820276496, + "max": 0.4326036866359447 + }, "related_data": {} } } @@ -56235,7 +65515,7 @@ { "Master组件": { "data": { - "uuid": "云原生-5-1390", + "uuid": "云原生-5-1392", "seg": [ [ [ @@ -56244,11 +65524,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4326036866359447, + "max": 0.43269969278033793 + }, "related_data": { "blog": { "data_id": [ - "54233781" + "54233781@docker@云原生", + "54233781@etcd@云原生", + "54233781@kubernetes@云原生" ] } } @@ -56258,7 +65543,7 @@ { "Node组件": { "data": { - "uuid": "云原生-5-1391", + "uuid": "云原生-5-1393", "seg": [ [ [ @@ -56267,12 +65552,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43269969278033793, + "max": 0.43279569892473113 + }, "related_data": { "blog": { "data_id": [ - "78891733", - "99764230" + "78891733@kubernetes@云原生", + "99764230@中间件@云原生" ] } } @@ -56282,16 +65570,20 @@ { "核心附件": { "data": { - "uuid": "云原生-5-1392", + "uuid": "云原生-5-1394", "seg": [ [ [ "核心", - "附件" + "附件", + "核心附件" ] ] ], - "level": "2", + "level": { + "min": 0.43279569892473113, + "max": 0.4328917050691244 + }, "related_data": {} } } @@ -56304,11 +65596,15 @@ [ "kubernetes", "集群", - "组件" + "组件", + "集群组件" ] ] ], - "level": "2", + "level": { + "min": 0.4326036866359447, + "max": 0.4328917050691244 + }, "related_data": {} } } @@ -56319,17 +65615,21 @@ { "网络模型概述": { "data": { - "uuid": "云原生-5-1393", + "uuid": "云原生-5-1395", "seg": [ [ [ "网络", "模型", - "概述" + "概述", + "网络模型" ] ] ], - "level": "1", + "level": { + "min": 0.4328917050691244, + "max": 0.43303571428571425 + }, "related_data": {} } } @@ -56337,7 +65637,7 @@ { "集群上的网络通信": { "data": { - "uuid": "云原生-5-1394", + "uuid": "云原生-5-1396", "seg": [ [ [ @@ -56346,7 +65646,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.43303571428571425, + "max": 0.4331797235023041 + }, "related_data": {} } } @@ -56360,11 +65663,16 @@ "kubernetes", "网络", "模型", - "基础" + "基础", + "网络模型", + "模型基础" ] ] ], - "level": "1", + "level": { + "min": 0.4328917050691244, + "max": 0.4331797235023041 + }, "related_data": {} } } @@ -56377,11 +65685,15 @@ [ "kubernetes", "系统", - "基础" + "基础", + "系统基础" ] ] ], - "level": "2", + "level": { + "min": 0.43202764976958524, + "max": 0.4331797235023041 + }, "related_data": {} } } @@ -56395,17 +65707,21 @@ { "Pod资源对象": { "data": { - "uuid": "云原生-5-1395", + "uuid": "云原生-5-1397", "seg": [ [ [ "pod", "资源", - "对象" + "对象", + "资源对象" ] ] ], - "level": "2", + "level": { + "min": 0.4331797235023041, + "max": 0.43325172811059903 + }, "related_data": {} } } @@ -56413,7 +65729,7 @@ { "Controller": { "data": { - "uuid": "云原生-5-1396", + "uuid": "云原生-5-1398", "seg": [ [ [ @@ -56421,7 +65737,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43325172811059903, + "max": 0.43332373271889396 + }, "related_data": {} } } @@ -56429,7 +65748,7 @@ { "Service": { "data": { - "uuid": "云原生-5-1397", + "uuid": "云原生-5-1399", "seg": [ [ [ @@ -56437,7 +65756,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43332373271889396, + "max": 0.4333957373271889 + }, "related_data": {} } } @@ -56445,18 +65767,23 @@ { "部署应用程序的主体过程": { "data": { - "uuid": "云原生-5-1398", + "uuid": "云原生-5-1400", "seg": [ [ [ "部署", "应用程序", "主体", - "过程" + "过程", + "部署应用程序", + "主体过程" ] ] ], - "level": "2", + "level": { + "min": 0.4333957373271889, + "max": 0.4334677419354838 + }, "related_data": {} } } @@ -56469,11 +65796,15 @@ [ "kubernetes", "核心", - "对象" + "对象", + "核心对象" ] ] ], - "level": "2", + "level": { + "min": 0.4331797235023041, + "max": 0.4334677419354838 + }, "related_data": {} } } @@ -56484,26 +65815,30 @@ { "kubeadm部署工具": { "data": { - "uuid": "云原生-5-1399", + "uuid": "云原生-5-1401", "seg": [ [ [ "kubeadm", "部署", - "工具" + "工具", + "部署工具" ] ] ], - "level": "2", + "level": { + "min": 0.4334677419354838, + "max": 0.43353974654377875 + }, "related_data": { "blog": { "data_id": [ - "83150473", - "79399359", - "112093540", - "84990318", - "80602724", - "103888459" + "83150473@kubernetes@云原生", + "79399359@kubernetes@云原生", + "112093540@etcd@云原生", + "84990318@kubernetes@云原生", + "80602724@kubernetes@云原生", + "103888459@容器@云原生" ] } } @@ -56513,7 +65848,7 @@ { "集群运行模式": { "data": { - "uuid": "云原生-5-1400", + "uuid": "云原生-5-1402", "seg": [ [ [ @@ -56523,11 +65858,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43353974654377875, + "max": 0.43361175115207373 + }, "related_data": { "blog": { "data_id": [ - "80035470" + "80035470@中间件@云原生" ] } } @@ -56537,7 +65875,7 @@ { "准备用于实践操作的集群环境": { "data": { - "uuid": "云原生-5-1401", + "uuid": "云原生-5-1403", "seg": [ [ [ @@ -56545,11 +65883,15 @@ "实践", "操作", "集群", - "环境" + "环境", + "集群环境" ] ] ], - "level": "2", + "level": { + "min": 0.43361175115207373, + "max": 0.43368375576036866 + }, "related_data": {} } } @@ -56557,7 +65899,7 @@ { "获取集群环境相关的信息": { "data": { - "uuid": "云原生-5-1402", + "uuid": "云原生-5-1404", "seg": [ [ [ @@ -56565,11 +65907,15 @@ "集群", "环境", "相关", - "信息" + "信息", + "集群环境" ] ] ], - "level": "2", + "level": { + "min": 0.43368375576036866, + "max": 0.4337557603686636 + }, "related_data": {} } } @@ -56586,7 +65932,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4334677419354838, + "max": 0.4337557603686636 + }, "related_data": {} } } @@ -56606,7 +65955,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4337557603686636, + "max": 0.4340437788018433 + }, "related_data": {} } } @@ -56617,7 +65969,7 @@ { "部署应用(Pod)": { "data": { - "uuid": "云原生-5-1403", + "uuid": "云原生-5-1405", "seg": [ [ [ @@ -56626,7 +65978,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4340437788018433, + "max": 0.43410138248847924 + }, "related_data": {} } } @@ -56634,7 +65989,7 @@ { "探查Pod及应用详情": { "data": { - "uuid": "云原生-5-1404", + "uuid": "云原生-5-1406", "seg": [ [ [ @@ -56646,7 +66001,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43410138248847924, + "max": 0.43415898617511517 + }, "related_data": {} } } @@ -56654,7 +66012,7 @@ { "部署Service对象": { "data": { - "uuid": "云原生-5-1405", + "uuid": "云原生-5-1407", "seg": [ [ [ @@ -56664,7 +66022,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43415898617511517, + "max": 0.43421658986175116 + }, "related_data": {} } } @@ -56672,7 +66033,7 @@ { "扩容和缩容": { "data": { - "uuid": "云原生-5-1406", + "uuid": "云原生-5-1408", "seg": [ [ [ @@ -56683,7 +66044,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43421658986175116, + "max": 0.4342741935483871 + }, "related_data": {} } } @@ -56691,7 +66055,7 @@ { "修改及删除对象": { "data": { - "uuid": "云原生-5-1407", + "uuid": "云原生-5-1409", "seg": [ [ [ @@ -56703,7 +66067,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4342741935483871, + "max": 0.434331797235023 + }, "related_data": {} } } @@ -56716,11 +66083,15 @@ [ "命令式", "容器", - "编排" + "编排", + "命令式容器" ] ] ], - "level": "2", + "level": { + "min": 0.4340437788018433, + "max": 0.434331797235023 + }, "related_data": {} } } @@ -56733,11 +66104,15 @@ [ "kubernetes", "快速", - "入门" + "入门", + "快速入门" ] ] ], - "level": "2", + "level": { + "min": 0.4331797235023041, + "max": 0.434331797235023 + }, "related_data": {} } } @@ -56751,17 +66126,21 @@ { "Kubernetes的资源对象": { "data": { - "uuid": "云原生-5-1408", + "uuid": "云原生-5-1410", "seg": [ [ [ "kubernetes", "资源", - "对象" + "对象", + "资源对象" ] ] ], - "level": "2", + "level": { + "min": 0.434331797235023, + "max": 0.4344086021505376 + }, "related_data": {} } } @@ -56769,7 +66148,7 @@ { "资源及其在API中的组织形式": { "data": { - "uuid": "云原生-5-1409", + "uuid": "云原生-5-1411", "seg": [ [ [ @@ -56780,7 +66159,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4344086021505376, + "max": 0.4344854070660522 + }, "related_data": {} } } @@ -56788,7 +66170,7 @@ { "访问Kubernetes REST API": { "data": { - "uuid": "云原生-5-1410", + "uuid": "云原生-5-1412", "seg": [ [ [ @@ -56799,7 +66181,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4344854070660522, + "max": 0.4345622119815668 + }, "related_data": {} } } @@ -56811,7 +66196,8 @@ [ [ "资源", - "对象" + "对象", + "资源对象" ], [ "api", @@ -56819,7 +66205,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.434331797235023, + "max": 0.4345622119815668 + }, "related_data": {} } } @@ -56830,7 +66219,7 @@ { "资源配置清单": { "data": { - "uuid": "云原生-5-1411", + "uuid": "云原生-5-1413", "seg": [ [ [ @@ -56839,7 +66228,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4345622119815668, + "max": 0.43460829493087555 + }, "related_data": {} } } @@ -56847,18 +66239,21 @@ { "metadata嵌套字段": { "data": { - "uuid": "云原生-5-1412", + "uuid": "云原生-5-1414", "seg": [ [ [ "metadata", "嵌套", - "字", - "段" + "字段", + "嵌套字段" ] ] ], - "level": "2", + "level": { + "min": 0.43460829493087555, + "max": 0.4346543778801843 + }, "related_data": {} } } @@ -56866,7 +66261,7 @@ { "spec和status字段": { "data": { - "uuid": "云原生-5-1413", + "uuid": "云原生-5-1415", "seg": [ [ [ @@ -56878,36 +66273,37 @@ ] ] ], - "level": "2", - "related_data": { - "blog": { - "data_id": [ - "80538510" - ] - } - } + "level": { + "min": 0.4346543778801843, + "max": 0.4347004608294931 + }, + "related_data": {} } } }, { "资源配置清单格式文档": { "data": { - "uuid": "云原生-5-1414", + "uuid": "云原生-5-1416", "seg": [ [ [ "资源配置", "清单", "格式", - "文档" + "文档", + "格式文档" ] ] ], - "level": "2", + "level": { + "min": 0.4347004608294931, + "max": 0.43474654377880184 + }, "related_data": { "blog": { "data_id": [ - "77914997" + "77914997@mesh@云原生" ] } } @@ -56917,18 +66313,22 @@ { "资源对象管理方式": { "data": { - "uuid": "云原生-5-1415", + "uuid": "云原生-5-1417", "seg": [ [ [ "资源", "对象", "管理", - "方式" + "方式", + "资源对象" ] ] ], - "level": "2", + "level": { + "min": 0.43474654377880184, + "max": 0.4347926267281106 + }, "related_data": {} } } @@ -56942,11 +66342,16 @@ "对象", "类", "资源", - "格式" + "格式", + "对象类", + "资源格式" ] ] ], - "level": "2", + "level": { + "min": 0.4345622119815668, + "max": 0.4347926267281106 + }, "related_data": {} } } @@ -56957,7 +66362,7 @@ { "资源管理操作概述": { "data": { - "uuid": "云原生-5-1416", + "uuid": "云原生-5-1418", "seg": [ [ [ @@ -56967,7 +66372,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4347926267281106, + "max": 0.43490783410138245 + }, "related_data": {} } } @@ -56975,16 +66383,20 @@ { "kubectl的基本用法": { "data": { - "uuid": "云原生-5-1417", + "uuid": "云原生-5-1419", "seg": [ [ [ "kubectl", - "用法" + "用法", + "基本用法" ] ] ], - "level": "2", + "level": { + "min": 0.43490783410138245, + "max": 0.4350230414746543 + }, "related_data": {} } } @@ -57003,7 +66415,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4347926267281106, + "max": 0.4350230414746543 + }, "related_data": {} } } @@ -57014,7 +66429,7 @@ { "查看名称空间及其资源对象": { "data": { - "uuid": "云原生-5-1418", + "uuid": "云原生-5-1420", "seg": [ [ [ @@ -57022,11 +66437,16 @@ "名称", "空间", "资源", - "对象" + "对象", + "名称空间", + "资源对象" ] ] ], - "level": "2", + "level": { + "min": 0.4350230414746543, + "max": 0.4351382488479262 + }, "related_data": {} } } @@ -57034,7 +66454,7 @@ { "管理Namespace资源": { "data": { - "uuid": "云原生-5-1419", + "uuid": "云原生-5-1421", "seg": [ [ [ @@ -57044,7 +66464,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4351382488479262, + "max": 0.4352534562211981 + }, "related_data": {} } } @@ -57058,11 +66481,16 @@ "管理", "名称", "空间", - "资源" + "资源", + "名称空间", + "空间资源" ] ] ], - "level": "2", + "level": { + "min": 0.4350230414746543, + "max": 0.4352534562211981 + }, "related_data": {} } } @@ -57073,18 +66501,24 @@ { "陈述式对象配置管理方式": { "data": { - "uuid": "云原生-5-1420", + "uuid": "云原生-5-1422", "seg": [ [ [ "陈述", "对象", "配置管理", - "方式" + "方式", + "陈述式", + "对象配置管理", + "配置管理方式" ] ] ], - "level": "2", + "level": { + "min": 0.4352534562211981, + "max": 0.43536866359447 + }, "related_data": {} } } @@ -57092,18 +66526,24 @@ { "声明式对象配置管理方式": { "data": { - "uuid": "云原生-5-1421", + "uuid": "云原生-5-1423", "seg": [ [ [ "声明", "对象", "配置管理", - "方式" + "方式", + "声明式", + "对象配置管理", + "配置管理方式" ] ] ], - "level": "2", + "level": { + "min": 0.43536866359447, + "max": 0.4354838709677419 + }, "related_data": {} } } @@ -57122,7 +66562,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4352534562211981, + "max": 0.4354838709677419 + }, "related_data": {} } } @@ -57134,11 +66577,15 @@ [ [ "资源管理", - "基础" + "基础", + "资源管理基础" ] ] ], - "level": "2", + "level": { + "min": 0.434331797235023, + "max": 0.4354838709677419 + }, "related_data": {} } } @@ -57152,7 +66599,7 @@ { "镜像及其获取策略": { "data": { - "uuid": "云原生-5-1422", + "uuid": "云原生-5-1424", "seg": [ [ [ @@ -57162,7 +66609,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4354838709677419, + "max": 0.4355113012947114 + }, "related_data": {} } } @@ -57170,7 +66620,7 @@ { "暴露端口": { "data": { - "uuid": "云原生-5-1423", + "uuid": "云原生-5-1425", "seg": [ [ [ @@ -57179,7 +66629,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4355113012947114, + "max": 0.4355387316216809 + }, "related_data": {} } } @@ -57187,22 +66640,26 @@ { "自定义运行的容器化应用": { "data": { - "uuid": "云原生-5-1424", + "uuid": "云原生-5-1426", "seg": [ [ [ "自定义", "运行", "容器", - "化" + "化", + "容器化" ] ] ], - "level": "2", + "level": { + "min": 0.4355387316216809, + "max": 0.4355661619486504 + }, "related_data": { "blog": { "data_id": [ - "82024352" + "82024352@容器@云原生" ] } } @@ -57212,7 +66669,7 @@ { "环境变量": { "data": { - "uuid": "云原生-5-1425", + "uuid": "云原生-5-1427", "seg": [ [ [ @@ -57220,7 +66677,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4355661619486504, + "max": 0.4355935922756199 + }, "related_data": {} } } @@ -57228,7 +66688,7 @@ { "共享节点的网络名称空间": { "data": { - "uuid": "云原生-5-1426", + "uuid": "云原生-5-1428", "seg": [ [ [ @@ -57236,11 +66696,16 @@ "节点", "网络", "名称", - "空间" + "空间", + "网络名称", + "名称空间" ] ] ], - "level": "1", + "level": { + "min": 0.4355935922756199, + "max": 0.4356210226025894 + }, "related_data": {} } } @@ -57248,7 +66713,7 @@ { "设置Pod对象的安全上下文": { "data": { - "uuid": "云原生-5-1427", + "uuid": "云原生-5-1429", "seg": [ [ [ @@ -57259,12 +66724,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4356210226025894, + "max": 0.4356484529295589 + }, "related_data": { "blog": { "data_id": [ - "51052029", - "9500219" + "51052029@容器@云原生", + "9500219@容器@云原生" ] } } @@ -57284,7 +66752,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4354838709677419, + "max": 0.4356484529295589 + }, "related_data": {} } } @@ -57295,7 +66766,7 @@ { "标签概述": { "data": { - "uuid": "云原生-5-1428", + "uuid": "云原生-5-1430", "seg": [ [ [ @@ -57304,11 +66775,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4356484529295589, + "max": 0.43568959842001315 + }, "related_data": { "blog": { "data_id": [ - "42213085" + "42213085@mesh@云原生" ] } } @@ -57318,17 +66792,21 @@ { "管理资源标签": { "data": { - "uuid": "云原生-5-1429", + "uuid": "云原生-5-1431", "seg": [ [ [ "管理", "资源", - "标签" + "标签", + "资源标签" ] ] ], - "level": "2", + "level": { + "min": 0.43568959842001315, + "max": 0.4357307439104674 + }, "related_data": {} } } @@ -57336,16 +66814,20 @@ { "标签选择器": { "data": { - "uuid": "云原生-5-1430", + "uuid": "云原生-5-1432", "seg": [ [ [ "标签", - "选择器" + "选择器", + "标签选择器" ] ] ], - "level": "2", + "level": { + "min": 0.4357307439104674, + "max": 0.4357718894009216 + }, "related_data": {} } } @@ -57353,18 +66835,22 @@ { "Pod节点选择器nodeSelector": { "data": { - "uuid": "云原生-5-1431", + "uuid": "云原生-5-1433", "seg": [ [ [ "pod", "节点", "选择器", - "nodeselector" + "nodeselector", + "节点选择器" ] ] ], - "level": "2", + "level": { + "min": 0.4357718894009216, + "max": 0.43581303489137585 + }, "related_data": {} } } @@ -57379,11 +66865,15 @@ ], [ "标签", - "选择器" + "选择器", + "标签选择器" ] ] ], - "level": "2", + "level": { + "min": 0.4356484529295589, + "max": 0.43581303489137585 + }, "related_data": {} } } @@ -57394,7 +66884,7 @@ { "查看资源注解": { "data": { - "uuid": "云原生-5-1432", + "uuid": "云原生-5-1434", "seg": [ [ [ @@ -57404,11 +66894,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43581303489137585, + "max": 0.43589532587228436 + }, "related_data": { "blog": { "data_id": [ - "90728637" + "90728637@spring@云原生" ] } } @@ -57418,7 +66911,7 @@ { "管理资源注解": { "data": { - "uuid": "云原生-5-1433", + "uuid": "云原生-5-1435", "seg": [ [ [ @@ -57428,7 +66921,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43589532587228436, + "max": 0.43597761685319286 + }, "related_data": {} } } @@ -57444,7 +66940,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43581303489137585, + "max": 0.43597761685319286 + }, "related_data": {} } } @@ -57455,7 +66954,7 @@ { "Pod的相位": { "data": { - "uuid": "云原生-5-1434", + "uuid": "云原生-5-1436", "seg": [ [ [ @@ -57464,7 +66963,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43597761685319286, + "max": 0.4360105332455563 + }, "related_data": {} } } @@ -57472,7 +66974,7 @@ { "Pod的创建过程": { "data": { - "uuid": "云原生-5-1435", + "uuid": "云原生-5-1437", "seg": [ [ [ @@ -57482,7 +66984,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4360105332455563, + "max": 0.43604344963791963 + }, "related_data": {} } } @@ -57490,7 +66995,7 @@ { "Pod生命周期中的重要行为": { "data": { - "uuid": "云原生-5-1436", + "uuid": "云原生-5-1438", "seg": [ [ [ @@ -57499,7 +67004,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43604344963791963, + "max": 0.43607636603028305 + }, "related_data": {} } } @@ -57507,7 +67015,7 @@ { "容器的重启策略": { "data": { - "uuid": "云原生-5-1437", + "uuid": "云原生-5-1439", "seg": [ [ [ @@ -57517,7 +67025,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43607636603028305, + "max": 0.4361092824226464 + }, "related_data": {} } } @@ -57525,7 +67036,7 @@ { "Pod的终止过程": { "data": { - "uuid": "云原生-5-1438", + "uuid": "云原生-5-1440", "seg": [ [ [ @@ -57535,7 +67046,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4361092824226464, + "max": 0.4361421988150098 + }, "related_data": {} } } @@ -57552,7 +67066,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43597761685319286, + "max": 0.4361421988150098 + }, "related_data": {} } } @@ -57563,7 +67080,7 @@ { "设置exec探针": { "data": { - "uuid": "云原生-5-1439", + "uuid": "云原生-5-1441", "seg": [ [ [ @@ -57573,11 +67090,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4361421988150098, + "max": 0.43618334430546407 + }, "related_data": { "blog": { "data_id": [ - "46884605" + "46884605@docker@云原生" ] } } @@ -57587,7 +67107,7 @@ { "设置HTTP探针": { "data": { - "uuid": "云原生-5-1440", + "uuid": "云原生-5-1442", "seg": [ [ [ @@ -57597,7 +67117,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43618334430546407, + "max": 0.4362244897959183 + }, "related_data": {} } } @@ -57605,7 +67128,7 @@ { "设置TCP探针": { "data": { - "uuid": "云原生-5-1441", + "uuid": "云原生-5-1443", "seg": [ [ [ @@ -57615,7 +67138,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4362244897959183, + "max": 0.4362656352863726 + }, "related_data": {} } } @@ -57623,7 +67149,7 @@ { "存活性探测行为属性": { "data": { - "uuid": "云原生-5-1442", + "uuid": "云原生-5-1444", "seg": [ [ [ @@ -57634,7 +67160,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4362656352863726, + "max": 0.43630678077682683 + }, "related_data": {} } } @@ -57652,7 +67181,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4361421988150098, + "max": 0.43630678077682683 + }, "related_data": {} } } @@ -57671,7 +67203,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43630678077682683, + "max": 0.4364713627386438 + }, "related_data": {} } } @@ -57682,7 +67217,7 @@ { "资源需求": { "data": { - "uuid": "云原生-5-1443", + "uuid": "云原生-5-1445", "seg": [ [ [ @@ -57691,7 +67226,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4364713627386438, + "max": 0.43651250822909804 + }, "related_data": {} } } @@ -57699,7 +67237,7 @@ { "资源限制": { "data": { - "uuid": "云原生-5-1444", + "uuid": "云原生-5-1446", "seg": [ [ [ @@ -57707,11 +67245,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43651250822909804, + "max": 0.4365536537195523 + }, "related_data": { "blog": { "data_id": [ - "115181682" + "115181682@cloud@云原生" ] } } @@ -57721,7 +67262,7 @@ { "容器的可见资源": { "data": { - "uuid": "云原生-5-1445", + "uuid": "云原生-5-1447", "seg": [ [ [ @@ -57730,12 +67271,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4365536537195523, + "max": 0.43659479921000655 + }, "related_data": { "blog": { "data_id": [ - "53728507", - "51731543" + "53728507@容器@云原生", + "51731543@容器@云原生" ] } } @@ -57745,17 +67289,21 @@ { "Pod的服务质量类别": { "data": { - "uuid": "云原生-5-1446", + "uuid": "云原生-5-1448", "seg": [ [ [ "pod", "服务质量", - "类别" + "类别", + "服务质量类别" ] ] ], - "level": "2", + "level": { + "min": 0.43659479921000655, + "max": 0.4366359447004608 + }, "related_data": {} } } @@ -57774,7 +67322,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4364713627386438, + "max": 0.4366359447004608 + }, "related_data": {} } } @@ -57788,11 +67339,15 @@ "管理", "pod", "资源", - "对象" + "对象", + "资源对象" ] ] ], - "level": "2", + "level": { + "min": 0.4354838709677419, + "max": 0.4366359447004608 + }, "related_data": {} } } @@ -57806,7 +67361,7 @@ { "Pod控制器概述": { "data": { - "uuid": "云原生-5-1447", + "uuid": "云原生-5-1449", "seg": [ [ [ @@ -57816,11 +67371,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4366359447004608, + "max": 0.4366839477726574 + }, "related_data": { "blog": { "data_id": [ - "107767717" + "107767717@控制器@云原生" ] } } @@ -57830,7 +67388,7 @@ { "控制器与Pod对象": { "data": { - "uuid": "云原生-5-1448", + "uuid": "云原生-5-1450", "seg": [ [ [ @@ -57842,7 +67400,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4366839477726574, + "max": 0.43673195084485406 + }, "related_data": {} } } @@ -57850,17 +67411,21 @@ { "Pod模板资源": { "data": { - "uuid": "云原生-5-1449", + "uuid": "云原生-5-1451", "seg": [ [ [ "pod", "模板", - "资源" + "资源", + "模板资源" ] ] ], - "level": "2", + "level": { + "min": 0.43673195084485406, + "max": 0.43677995391705066 + }, "related_data": {} } } @@ -57876,7 +67441,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4366359447004608, + "max": 0.43677995391705066 + }, "related_data": {} } } @@ -57887,7 +67455,7 @@ { "ReplicaSet概述": { "data": { - "uuid": "云原生-5-1450", + "uuid": "云原生-5-1452", "seg": [ [ [ @@ -57896,7 +67464,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43677995391705066, + "max": 0.43680875576036865 + }, "related_data": {} } } @@ -57904,7 +67475,7 @@ { "创建ReplicaSet": { "data": { - "uuid": "云原生-5-1451", + "uuid": "云原生-5-1453", "seg": [ [ [ @@ -57913,7 +67484,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43680875576036865, + "max": 0.4368375576036866 + }, "related_data": {} } } @@ -57921,7 +67495,7 @@ { "ReplicaSet管控下的Pod对象": { "data": { - "uuid": "云原生-5-1452", + "uuid": "云原生-5-1454", "seg": [ [ [ @@ -57932,7 +67506,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4368375576036866, + "max": 0.4368663594470046 + }, "related_data": {} } } @@ -57940,7 +67517,7 @@ { "更新ReplicaSet控制器": { "data": { - "uuid": "云原生-5-1453", + "uuid": "云原生-5-1455", "seg": [ [ [ @@ -57950,20 +67527,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4368663594470046, + "max": 0.4368951612903225 + }, "related_data": { "blog": { "data_id": [ - "75244515", - "103748114", - "80156124", - "80287094", - "88313976", - "88781223", - "72354057", - "113697341", - "108701423", - "111596650" + "75244515@控制器@云原生", + "103748114@控制器@云原生", + "80156124@控制器@云原生", + "80287094@控制器@云原生", + "88313976@控制器@云原生", + "88781223@控制器@云原生", + "72354057@控制器@云原生", + "113697341@控制器@云原生", + "108701423@控制器@云原生", + "111596650@控制器@云原生" ] } } @@ -57973,22 +67553,26 @@ { "删除ReplicaSet控制器资源": { "data": { - "uuid": "云原生-5-1454", + "uuid": "云原生-5-1456", "seg": [ [ [ "删除", "replicaset", "控制器", - "资源" + "资源", + "控制器资源" ] ] ], - "level": "2", + "level": { + "min": 0.4368951612903225, + "max": 0.4369239631336405 + }, "related_data": { "blog": { "data_id": [ - "78501613" + "78501613@控制器@云原生" ] } } @@ -58006,7 +67590,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43677995391705066, + "max": 0.4369239631336405 + }, "related_data": {} } } @@ -58017,7 +67604,7 @@ { "创建Deployment": { "data": { - "uuid": "云原生-5-1455", + "uuid": "云原生-5-1457", "seg": [ [ [ @@ -58026,7 +67613,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4369239631336405, + "max": 0.4369527649769585 + }, "related_data": {} } } @@ -58034,16 +67624,20 @@ { "更新策略": { "data": { - "uuid": "云原生-5-1456", + "uuid": "云原生-5-1458", "seg": [ [ [ "更新", - "策略" + "策略", + "更新策略" ] ] ], - "level": "2", + "level": { + "min": 0.4369527649769585, + "max": 0.43698156682027645 + }, "related_data": {} } } @@ -58051,7 +67645,7 @@ { "升级Deployment": { "data": { - "uuid": "云原生-5-1457", + "uuid": "云原生-5-1459", "seg": [ [ [ @@ -58060,7 +67654,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43698156682027645, + "max": 0.43701036866359444 + }, "related_data": {} } } @@ -58068,7 +67665,7 @@ { "金丝雀发布": { "data": { - "uuid": "云原生-5-1458", + "uuid": "云原生-5-1460", "seg": [ [ [ @@ -58077,7 +67674,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43701036866359444, + "max": 0.4370391705069124 + }, "related_data": {} } } @@ -58085,7 +67685,7 @@ { "回滚Deployment控制器下的应用发布": { "data": { - "uuid": "云原生-5-1459", + "uuid": "云原生-5-1461", "seg": [ [ [ @@ -58096,7 +67696,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4370391705069124, + "max": 0.43706797235023037 + }, "related_data": {} } } @@ -58112,7 +67715,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4369239631336405, + "max": 0.43706797235023037 + }, "related_data": {} } } @@ -58123,18 +67729,22 @@ { "创建DaemonSet资源对象": { "data": { - "uuid": "云原生-5-1460", + "uuid": "云原生-5-1462", "seg": [ [ [ "创建", "daemonset", "资源", - "对象" + "对象", + "资源对象" ] ] ], - "level": "2", + "level": { + "min": 0.43706797235023037, + "max": 0.43713997695852536 + }, "related_data": {} } } @@ -58142,7 +67752,7 @@ { "更新DaemonSet对象": { "data": { - "uuid": "云原生-5-1461", + "uuid": "云原生-5-1463", "seg": [ [ [ @@ -58152,7 +67762,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43713997695852536, + "max": 0.4372119815668203 + }, "related_data": {} } } @@ -58168,7 +67781,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43706797235023037, + "max": 0.4372119815668203 + }, "related_data": {} } } @@ -58179,7 +67795,7 @@ { "创建Job对象": { "data": { - "uuid": "云原生-5-1462", + "uuid": "云原生-5-1464", "seg": [ [ [ @@ -58189,7 +67805,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4372119815668203, + "max": 0.43724798387096775 + }, "related_data": {} } } @@ -58197,7 +67816,7 @@ { "并行式Job": { "data": { - "uuid": "云原生-5-1463", + "uuid": "云原生-5-1465", "seg": [ [ [ @@ -58206,7 +67825,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43724798387096775, + "max": 0.4372839861751152 + }, "related_data": {} } } @@ -58214,7 +67836,7 @@ { "Job扩容": { "data": { - "uuid": "云原生-5-1464", + "uuid": "云原生-5-1466", "seg": [ [ [ @@ -58223,7 +67845,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4372839861751152, + "max": 0.4373199884792627 + }, "related_data": {} } } @@ -58231,7 +67856,7 @@ { "删除Job": { "data": { - "uuid": "云原生-5-1465", + "uuid": "云原生-5-1467", "seg": [ [ [ @@ -58240,7 +67865,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4373199884792627, + "max": 0.43735599078341014 + }, "related_data": {} } } @@ -58256,7 +67884,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4372119815668203, + "max": 0.43735599078341014 + }, "related_data": {} } } @@ -58267,7 +67898,7 @@ { "创建CronJob对象": { "data": { - "uuid": "云原生-5-1466", + "uuid": "云原生-5-1468", "seg": [ [ [ @@ -58277,7 +67908,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43735599078341014, + "max": 0.43742799539170507 + }, "related_data": {} } } @@ -58285,7 +67919,7 @@ { "CronJob的控制机制": { "data": { - "uuid": "云原生-5-1467", + "uuid": "云原生-5-1469", "seg": [ [ [ @@ -58295,20 +67929,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43742799539170507, + "max": 0.4375 + }, "related_data": { "blog": { "data_id": [ - "112158689", - "105325800", - "105827410", - "108186810", - "103340649", - "51451944", - "79645056", - "72235985", - "78798039", - "50619990" + "112158689@控制器@云原生", + "105325800@控制器@云原生", + "105827410@控制器@云原生", + "108186810@控制器@云原生", + "103340649@控制器@云原生", + "51451944@控制器@云原生", + "79645056@控制器@云原生", + "72235985@控制器@云原生", + "78798039@控制器@云原生", + "50619990@控制器@云原生" ] } } @@ -58326,7 +67963,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43735599078341014, + "max": 0.4375 + }, "related_data": {} } } @@ -58342,7 +67982,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4375, + "max": 0.43764400921658986 + }, "related_data": {} } } @@ -58360,7 +68003,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43764400921658986, + "max": 0.4377880184331797 + }, "related_data": {} } } @@ -58376,7 +68022,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4366359447004608, + "max": 0.4377880184331797 + }, "related_data": {} } } @@ -58390,7 +68039,7 @@ { "Kubernetes支持的存储卷类型": { "data": { - "uuid": "云原生-5-1468", + "uuid": "云原生-5-1470", "seg": [ [ [ @@ -58401,7 +68050,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4377880184331797, + "max": 0.4378840245775729 + }, "related_data": {} } } @@ -58409,7 +68061,7 @@ { "存储卷的使用方式": { "data": { - "uuid": "云原生-5-1469", + "uuid": "云原生-5-1471", "seg": [ [ [ @@ -58418,7 +68070,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4378840245775729, + "max": 0.4379800307219662 + }, "related_data": {} } } @@ -58434,7 +68089,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4377880184331797, + "max": 0.4379800307219662 + }, "related_data": {} } } @@ -58445,7 +68103,7 @@ { "emptyDir存储卷": { "data": { - "uuid": "云原生-5-1470", + "uuid": "云原生-5-1472", "seg": [ [ [ @@ -58454,7 +68112,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4379800307219662, + "max": 0.43807603686635943 + }, "related_data": {} } } @@ -58462,7 +68123,7 @@ { "gitRepo存储卷": { "data": { - "uuid": "云原生-5-1471", + "uuid": "云原生-5-1473", "seg": [ [ [ @@ -58471,7 +68132,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43807603686635943, + "max": 0.4381720430107527 + }, "related_data": {} } } @@ -58487,7 +68151,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4379800307219662, + "max": 0.4381720430107527 + }, "related_data": {} } } @@ -58505,7 +68172,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4381720430107527, + "max": 0.43836405529953915 + }, "related_data": {} } } @@ -58516,7 +68186,7 @@ { "NFS存储卷": { "data": { - "uuid": "云原生-5-1472", + "uuid": "云原生-5-1474", "seg": [ [ [ @@ -58525,11 +68195,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43836405529953915, + "max": 0.43841205837173575 + }, "related_data": { "blog": { "data_id": [ - "117113453" + "117113453@云原生@云原生" ] } } @@ -58539,7 +68212,7 @@ { "RBD存储卷": { "data": { - "uuid": "云原生-5-1473", + "uuid": "云原生-5-1475", "seg": [ [ [ @@ -58548,7 +68221,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43841205837173575, + "max": 0.43846006144393235 + }, "related_data": {} } } @@ -58556,7 +68232,7 @@ { "GlusterFS存储卷": { "data": { - "uuid": "云原生-5-1474", + "uuid": "云原生-5-1476", "seg": [ [ [ @@ -58565,7 +68241,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43846006144393235, + "max": 0.438508064516129 + }, "related_data": {} } } @@ -58573,7 +68252,7 @@ { "Cinder存储卷": { "data": { - "uuid": "云原生-5-1475", + "uuid": "云原生-5-1477", "seg": [ [ [ @@ -58582,11 +68261,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.438508064516129, + "max": 0.4385560675883256 + }, "related_data": { "blog": { "data_id": [ - "109252061" + "109252061@分布式@云原生" ] } } @@ -58604,7 +68286,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43836405529953915, + "max": 0.4385560675883256 + }, "related_data": {} } } @@ -58615,7 +68300,7 @@ { "创建PV": { "data": { - "uuid": "云原生-5-1476", + "uuid": "云原生-5-1478", "seg": [ [ [ @@ -58624,7 +68309,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4385560675883256, + "max": 0.43859447004608293 + }, "related_data": {} } } @@ -58632,7 +68320,7 @@ { "创建PVC": { "data": { - "uuid": "云原生-5-1477", + "uuid": "云原生-5-1479", "seg": [ [ [ @@ -58641,7 +68329,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43859447004608293, + "max": 0.4386328725038402 + }, "related_data": {} } } @@ -58649,7 +68340,7 @@ { "在Pod中使用PVC": { "data": { - "uuid": "云原生-5-1478", + "uuid": "云原生-5-1480", "seg": [ [ [ @@ -58658,7 +68349,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4386328725038402, + "max": 0.4386712749615975 + }, "related_data": {} } } @@ -58666,7 +68360,7 @@ { "存储类": { "data": { - "uuid": "云原生-5-1479", + "uuid": "云原生-5-1481", "seg": [ [ [ @@ -58675,7 +68369,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4386712749615975, + "max": 0.4387096774193548 + }, "related_data": {} } } @@ -58683,7 +68380,7 @@ { "PV和PVC的生命周期": { "data": { - "uuid": "云原生-5-1480", + "uuid": "云原生-5-1482", "seg": [ [ [ @@ -58695,7 +68392,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4387096774193548, + "max": 0.4387480798771121 + }, "related_data": {} } } @@ -58711,7 +68411,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4385560675883256, + "max": 0.4387480798771121 + }, "related_data": {} } } @@ -58722,17 +68425,21 @@ { "环境变量式元数据注入": { "data": { - "uuid": "云原生-5-1481", + "uuid": "云原生-5-1483", "seg": [ [ [ "环境变量", "数据", - "注入" + "注入", + "环境变量式" ] ] ], - "level": "2", + "level": { + "min": 0.4387480798771121, + "max": 0.4388440860215054 + }, "related_data": {} } } @@ -58740,7 +68447,7 @@ { "存储卷式元数据注入": { "data": { - "uuid": "云原生-5-1482", + "uuid": "云原生-5-1484", "seg": [ [ [ @@ -58751,12 +68458,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4388440860215054, + "max": 0.4389400921658986 + }, "related_data": { "blog": { "data_id": [ - "78770466", - "83784268" + "78770466@分布式@云原生", + "83784268@分布式@云原生" ] } } @@ -58774,7 +68484,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4387480798771121, + "max": 0.4389400921658986 + }, "related_data": {} } } @@ -58794,7 +68507,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4377880184331797, + "max": 0.4389400921658986 + }, "related_data": {} } } @@ -58812,11 +68528,15 @@ "容器", "化", "配置", - "方式" + "方式", + "容器化" ] ] ], - "level": "2", + "level": { + "min": 0.4389400921658986, + "max": 0.43917050691244236 + }, "related_data": {} } } @@ -58831,11 +68551,15 @@ "命令行", "参数", "配置", - "容器" + "容器", + "命令行参数" ] ] ], - "level": "2", + "level": { + "min": 0.43917050691244236, + "max": 0.43940092165898614 + }, "related_data": {} } } @@ -58850,11 +68574,15 @@ "利用", "环境变量", "配置", - "容器" + "容器", + "利用环境变量" ] ] ], - "level": "2", + "level": { + "min": 0.43940092165898614, + "max": 0.4396313364055299 + }, "related_data": {} } } @@ -58865,7 +68593,7 @@ { "创建ConfigMap对象": { "data": { - "uuid": "云原生-5-1483", + "uuid": "云原生-5-1485", "seg": [ [ [ @@ -58875,7 +68603,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4396313364055299, + "max": 0.43967741935483867 + }, "related_data": {} } } @@ -58883,7 +68614,7 @@ { "向Pod环境变量传递ConfigMap对象键值数据": { "data": { - "uuid": "云原生-5-1484", + "uuid": "云原生-5-1486", "seg": [ [ [ @@ -58893,11 +68624,16 @@ "configmap", "对象", "键值", - "数据" + "数据", + "对象键值", + "键值数据" ] ] ], - "level": "2", + "level": { + "min": 0.43967741935483867, + "max": 0.4397235023041474 + }, "related_data": {} } } @@ -58905,7 +68641,7 @@ { "ConfigMap存储卷": { "data": { - "uuid": "云原生-5-1485", + "uuid": "云原生-5-1487", "seg": [ [ [ @@ -58914,7 +68650,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4397235023041474, + "max": 0.4397695852534562 + }, "related_data": {} } } @@ -58922,7 +68661,7 @@ { "容器应用重载新配置": { "data": { - "uuid": "云原生-5-1486", + "uuid": "云原生-5-1488", "seg": [ [ [ @@ -58932,7 +68671,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4397695852534562, + "max": 0.43981566820276496 + }, "related_data": {} } } @@ -58940,7 +68682,7 @@ { "使用ConfigMap资源的注意事项": { "data": { - "uuid": "云原生-5-1487", + "uuid": "云原生-5-1489", "seg": [ [ [ @@ -58950,7 +68692,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43981566820276496, + "max": 0.4398617511520737 + }, "related_data": {} } } @@ -58962,7 +68707,8 @@ [ [ "应用程序", - "配置管理" + "配置管理", + "应用程序配置管理" ], [ "configmap", @@ -58970,7 +68716,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4396313364055299, + "max": 0.4398617511520737 + }, "related_data": {} } } @@ -58981,7 +68730,7 @@ { "Secret概述": { "data": { - "uuid": "云原生-5-1488", + "uuid": "云原生-5-1490", "seg": [ [ [ @@ -58990,7 +68739,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4398617511520737, + "max": 0.43991935483870964 + }, "related_data": {} } } @@ -58998,7 +68750,7 @@ { "创建Secret资源": { "data": { - "uuid": "云原生-5-1489", + "uuid": "云原生-5-1491", "seg": [ [ [ @@ -59008,7 +68760,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.43991935483870964, + "max": 0.4399769585253456 + }, "related_data": {} } } @@ -59016,7 +68771,7 @@ { "Secret存储卷": { "data": { - "uuid": "云原生-5-1490", + "uuid": "云原生-5-1492", "seg": [ [ [ @@ -59025,11 +68780,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4399769585253456, + "max": 0.44003456221198156 + }, "related_data": { "blog": { "data_id": [ - "89166807" + "89166807@jwt@云原生" ] } } @@ -59039,17 +68797,21 @@ { "imagePullSecret资源对象": { "data": { - "uuid": "云原生-5-1491", + "uuid": "云原生-5-1493", "seg": [ [ [ "imagepullsecret", "资源", - "对象" + "对象", + "资源对象" ] ] ], - "level": "2", + "level": { + "min": 0.44003456221198156, + "max": 0.4400921658986175 + }, "related_data": {} } } @@ -59065,7 +68827,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4398617511520737, + "max": 0.4400921658986175 + }, "related_data": {} } } @@ -59089,7 +68854,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4389400921658986, + "max": 0.4400921658986175 + }, "related_data": {} } } @@ -59103,7 +68871,7 @@ { "Stateful应用和Stateless应用": { "data": { - "uuid": "云原生-5-1492", + "uuid": "云原生-5-1494", "seg": [ [ [ @@ -59114,7 +68882,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4400921658986175, + "max": 0.4401689708141321 + }, "related_data": {} } } @@ -59122,7 +68893,7 @@ { "StatefulSet控制器概述": { "data": { - "uuid": "云原生-5-1493", + "uuid": "云原生-5-1495", "seg": [ [ [ @@ -59132,7 +68903,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4401689708141321, + "max": 0.4402457757296467 + }, "related_data": {} } } @@ -59140,7 +68914,7 @@ { "StatefulSet的特性": { "data": { - "uuid": "云原生-5-1494", + "uuid": "云原生-5-1496", "seg": [ [ [ @@ -59149,7 +68923,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4402457757296467, + "max": 0.4403225806451613 + }, "related_data": {} } } @@ -59165,7 +68942,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4400921658986175, + "max": 0.4403225806451613 + }, "related_data": {} } } @@ -59176,7 +68956,7 @@ { "创建StatefulSet对象": { "data": { - "uuid": "云原生-5-1495", + "uuid": "云原生-5-1497", "seg": [ [ [ @@ -59186,7 +68966,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4403225806451613, + "max": 0.44055299539170506 + }, "related_data": {} } } @@ -59202,7 +68985,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4403225806451613, + "max": 0.44055299539170506 + }, "related_data": {} } } @@ -59221,7 +69007,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44055299539170506, + "max": 0.4407834101382488 + }, "related_data": {} } } @@ -59232,7 +69021,7 @@ { "滚动更新": { "data": { - "uuid": "云原生-5-1496", + "uuid": "云原生-5-1498", "seg": [ [ [ @@ -59241,7 +69030,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4407834101382488, + "max": 0.44082949308755753 + }, "related_data": {} } } @@ -59249,17 +69041,21 @@ { "暂存更新操作": { "data": { - "uuid": "云原生-5-1497", + "uuid": "云原生-5-1499", "seg": [ [ [ "暂存", "更新", - "操作" + "操作", + "更新操作" ] ] ], - "level": "2", + "level": { + "min": 0.44082949308755753, + "max": 0.4408755760368663 + }, "related_data": {} } } @@ -59267,16 +69063,20 @@ { "金丝雀部署": { "data": { - "uuid": "云原生-5-1498", + "uuid": "云原生-5-1500", "seg": [ [ [ "金丝雀", - "部署" + "部署", + "金丝雀部署" ] ] ], - "level": "2", + "level": { + "min": 0.4408755760368663, + "max": 0.4409216589861751 + }, "related_data": {} } } @@ -59284,7 +69084,7 @@ { "分段更新": { "data": { - "uuid": "云原生-5-1499", + "uuid": "云原生-5-1501", "seg": [ [ [ @@ -59293,7 +69093,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4409216589861751, + "max": 0.4409677419354838 + }, "related_data": {} } } @@ -59301,7 +69104,7 @@ { "其他话题": { "data": { - "uuid": "云原生-5-1500", + "uuid": "云原生-5-1502", "seg": [ [ [ @@ -59309,7 +69112,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4409677419354838, + "max": 0.44101382488479257 + }, "related_data": {} } } @@ -59326,7 +69132,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4407834101382488, + "max": 0.44101382488479257 + }, "related_data": {} } } @@ -59337,7 +69146,7 @@ { "创建Service资源": { "data": { - "uuid": "云原生-5-1501", + "uuid": "云原生-5-1503", "seg": [ [ [ @@ -59347,7 +69156,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44101382488479257, + "max": 0.44112903225806444 + }, "related_data": {} } } @@ -59355,7 +69167,7 @@ { "etcd StatefulSet": { "data": { - "uuid": "云原生-5-1502", + "uuid": "云原生-5-1504", "seg": [ [ [ @@ -59364,20 +69176,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44112903225806444, + "max": 0.44124423963133635 + }, "related_data": { "blog": { "data_id": [ - "86561476", - "52878639", - "78226061", - "115585041", - "75003868", - "78746768", - "112689123", - "91352029", - "78925694", - "113561889" + "86561476@etcd@云原生", + "52878639@etcd@云原生", + "78226061@etcd@云原生", + "115585041@etcd@云原生", + "75003868@etcd@云原生", + "78746768@etcd@云原生", + "112689123@etcd@云原生", + "91352029@etcd@云原生", + "78925694@etcd@云原生", + "113561889@etcd@云原生" ] } } @@ -59400,7 +69215,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44101382488479257, + "max": 0.44124423963133635 + }, "related_data": {} } } @@ -59416,7 +69234,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4400921658986175, + "max": 0.44124423963133635 + }, "related_data": {} } } @@ -59430,19 +69251,23 @@ { "用户账户与用户组": { "data": { - "uuid": "云原生-5-1503", + "uuid": "云原生-5-1505", "seg": [ [ [ "用户", - "账户" + "账户", + "用户账户" ], [ "用户组" ] ] ], - "level": "2", + "level": { + "min": 0.44124423963133635, + "max": 0.4413594470046083 + }, "related_data": {} } } @@ -59450,7 +69275,7 @@ { "认证、授权与准入控制基础": { "data": { - "uuid": "云原生-5-1504", + "uuid": "云原生-5-1506", "seg": [ [ [ @@ -59466,11 +69291,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4413594470046083, + "max": 0.44147465437788014 + }, "related_data": { "blog": { "data_id": [ - "80067349" + "80067349@控制器@云原生" ] } } @@ -59488,7 +69316,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44124423963133635, + "max": 0.44147465437788014 + }, "related_data": {} } } @@ -59499,7 +69330,7 @@ { "Service Account自动化": { "data": { - "uuid": "云原生-5-1505", + "uuid": "云原生-5-1507", "seg": [ [ [ @@ -59509,7 +69340,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44147465437788014, + "max": 0.44155145929339473 + }, "related_data": {} } } @@ -59517,7 +69351,7 @@ { "创建服务账户": { "data": { - "uuid": "云原生-5-1506", + "uuid": "云原生-5-1508", "seg": [ [ [ @@ -59527,7 +69361,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44155145929339473, + "max": 0.4416282642089093 + }, "related_data": {} } } @@ -59535,18 +69372,22 @@ { "调用imagePullSecret资源对象": { "data": { - "uuid": "云原生-5-1507", + "uuid": "云原生-5-1509", "seg": [ [ [ "调用", "imagepullsecret", "资源", - "对象" + "对象", + "资源对象" ] ] ], - "level": "2", + "level": { + "min": 0.4416282642089093, + "max": 0.4417050691244239 + }, "related_data": {} } } @@ -59564,7 +69405,10 @@ [] ] ], - "level": "2", + "level": { + "min": 0.44147465437788014, + "max": 0.4417050691244239 + }, "related_data": {} } } @@ -59575,7 +69419,7 @@ { "Kubernetes中的SSL/TLS认证": { "data": { - "uuid": "云原生-5-1508", + "uuid": "云原生-5-1510", "seg": [ [ [ @@ -59586,11 +69430,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4417050691244239, + "max": 0.4417818740399385 + }, "related_data": { "blog": { "data_id": [ - "80385263" + "80385263@阿里云@云原生" ] } } @@ -59600,17 +69447,21 @@ { "客户端配置文件kubeconfig": { "data": { - "uuid": "云原生-5-1509", + "uuid": "云原生-5-1511", "seg": [ [ [ "客户端", "配置文件", - "kubeconfig" + "kubeconfig", + "客户端配置文件" ] ] ], - "level": "2", + "level": { + "min": 0.4417818740399385, + "max": 0.4418586789554531 + }, "related_data": {} } } @@ -59618,7 +69469,7 @@ { "TLS bootstrapping机制": { "data": { - "uuid": "云原生-5-1510", + "uuid": "云原生-5-1512", "seg": [ [ [ @@ -59628,7 +69479,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4418586789554531, + "max": 0.4419354838709677 + }, "related_data": {} } } @@ -59645,7 +69499,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4417050691244239, + "max": 0.4419354838709677 + }, "related_data": {} } } @@ -59656,7 +69513,7 @@ { "RBAC授权插件": { "data": { - "uuid": "云原生-5-1511", + "uuid": "云原生-5-1513", "seg": [ [ [ @@ -59666,11 +69523,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4419354838709677, + "max": 0.44197388632872503 + }, "related_data": { "blog": { "data_id": [ - "100773968" + "100773968@微服务@云原生" ] } } @@ -59680,7 +69540,7 @@ { "Role和RoleBinding": { "data": { - "uuid": "云原生-5-1512", + "uuid": "云原生-5-1514", "seg": [ [ [ @@ -59691,7 +69551,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44197388632872503, + "max": 0.4420122887864823 + }, "related_data": {} } } @@ -59699,7 +69562,7 @@ { "ClusterRole和ClusterRoleBin-ding": { "data": { - "uuid": "云原生-5-1513", + "uuid": "云原生-5-1515", "seg": [ [ [ @@ -59711,7 +69574,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4420122887864823, + "max": 0.44205069124423957 + }, "related_data": {} } } @@ -59719,7 +69585,7 @@ { "聚合型ClusterRole": { "data": { - "uuid": "云原生-5-1514", + "uuid": "云原生-5-1516", "seg": [ [ [ @@ -59728,7 +69594,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44205069124423957, + "max": 0.4420890937019969 + }, "related_data": {} } } @@ -59736,7 +69605,7 @@ { "面向用户的内建ClusterRole": { "data": { - "uuid": "云原生-5-1515", + "uuid": "云原生-5-1517", "seg": [ [ [ @@ -59746,7 +69615,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4420890937019969, + "max": 0.4421274961597542 + }, "related_data": {} } } @@ -59754,7 +69626,7 @@ { "其他的内建ClusterRole和ClusterRoleBinding": { "data": { - "uuid": "云原生-5-1516", + "uuid": "云原生-5-1518", "seg": [ [ [ @@ -59766,7 +69638,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4421274961597542, + "max": 0.4421658986175115 + }, "related_data": {} } } @@ -59787,7 +69662,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4419354838709677, + "max": 0.4421658986175115 + }, "related_data": {} } } @@ -59798,7 +69676,7 @@ { "部署HTTPS通信的Dashboard": { "data": { - "uuid": "云原生-5-1517", + "uuid": "云原生-5-1519", "seg": [ [ [ @@ -59809,20 +69687,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4421658986175115, + "max": 0.4422427035330261 + }, "related_data": { "blog": { "data_id": [ - "80966671", - "89314670", - "115321923", - "79679853", - "80136449", - "113403133", - "77285530", - "103902932", - "46581783", - "86638089" + "80966671@dashboard@云原生", + "89314670@dashboard@云原生", + "115321923@dashboard@云原生", + "79679853@dashboard@云原生", + "80136449@dashboard@云原生", + "113403133@dashboard@云原生", + "77285530@dashboard@云原生", + "103902932@dashboard@云原生", + "46581783@dashboard@云原生", + "86638089@dashboard@云原生" ] } } @@ -59832,7 +69713,7 @@ { "配置token认证": { "data": { - "uuid": "云原生-5-1518", + "uuid": "云原生-5-1520", "seg": [ [ [ @@ -59842,11 +69723,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4422427035330261, + "max": 0.4423195084485407 + }, "related_data": { "blog": { "data_id": [ - "95176833" + "95176833@oauth@云原生" ] } } @@ -59856,7 +69740,7 @@ { "配置kubeconfig认证": { "data": { - "uuid": "云原生-5-1519", + "uuid": "云原生-5-1521", "seg": [ [ [ @@ -59866,7 +69750,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4423195084485407, + "max": 0.44239631336405527 + }, "related_data": {} } } @@ -59882,7 +69769,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4421658986175115, + "max": 0.44239631336405527 + }, "related_data": {} } } @@ -59904,7 +69794,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44124423963133635, + "max": 0.44239631336405527 + }, "related_data": {} } } @@ -59918,18 +69811,22 @@ { "Docker容器的网络模型": { "data": { - "uuid": "云原生-5-1520", + "uuid": "云原生-5-1522", "seg": [ [ [ "docker", "容器", "网络", - "模型" + "模型", + "网络模型" ] ] ], - "level": "1", + "level": { + "min": 0.44239631336405527, + "max": 0.4424683179723502 + }, "related_data": {} } } @@ -59937,21 +69834,25 @@ { "Kubernetes网络模型": { "data": { - "uuid": "云原生-5-1521", + "uuid": "云原生-5-1523", "seg": [ [ [ "kubernetes", "网络", - "模型" + "模型", + "网络模型" ] ] ], - "level": "1", + "level": { + "min": 0.4424683179723502, + "max": 0.44254032258064513 + }, "related_data": { "blog": { "data_id": [ - "109335318" + "109335318@CNCF@云原生" ] } } @@ -59961,7 +69862,7 @@ { "Pod网络的实现方式": { "data": { - "uuid": "云原生-5-1522", + "uuid": "云原生-5-1524", "seg": [ [ [ @@ -59971,7 +69872,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.44254032258064513, + "max": 0.44261232718894006 + }, "related_data": {} } } @@ -59979,7 +69883,7 @@ { "CNI插件及其常见的实现": { "data": { - "uuid": "云原生-5-1523", + "uuid": "云原生-5-1525", "seg": [ [ [ @@ -59989,7 +69893,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.44261232718894006, + "max": 0.442684331797235 + }, "related_data": {} } } @@ -60002,7 +69909,8 @@ [ "kubernetes", "网络", - "模型" + "模型", + "网络模型" ], [ "cni", @@ -60010,7 +69918,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.44239631336405527, + "max": 0.442684331797235 + }, "related_data": {} } } @@ -60021,7 +69932,7 @@ { "flannel的配置参数": { "data": { - "uuid": "云原生-5-1524", + "uuid": "云原生-5-1526", "seg": [ [ [ @@ -60031,11 +69942,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.442684331797235, + "max": 0.44278033794162824 + }, "related_data": { "blog": { "data_id": [ - "51161957" + "51161957@容器@云原生" ] } } @@ -60045,7 +69959,7 @@ { "VxLAN后端和direct routing": { "data": { - "uuid": "云原生-5-1525", + "uuid": "云原生-5-1527", "seg": [ [ [ @@ -60058,7 +69972,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.44278033794162824, + "max": 0.44287634408602145 + }, "related_data": {} } } @@ -60066,7 +69983,7 @@ { "host-gw后端": { "data": { - "uuid": "云原生-5-1526", + "uuid": "云原生-5-1528", "seg": [ [ [ @@ -60076,7 +69993,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.44287634408602145, + "max": 0.4429723502304147 + }, "related_data": {} } } @@ -60089,11 +70009,15 @@ [ "flannel", "网络", - "插件" + "插件", + "网络插件" ] ] ], - "level": "1", + "level": { + "min": 0.442684331797235, + "max": 0.4429723502304147 + }, "related_data": {} } } @@ -60104,17 +70028,21 @@ { "网络策略概述": { "data": { - "uuid": "云原生-5-1527", + "uuid": "云原生-5-1529", "seg": [ [ [ "网络", "策略", - "概述" + "概述", + "网络策略" ] ] ], - "level": "1", + "level": { + "min": 0.4429723502304147, + "max": 0.44301349572086896 + }, "related_data": {} } } @@ -60122,7 +70050,7 @@ { "部署Canal提供网络策略功能": { "data": { - "uuid": "云原生-5-1528", + "uuid": "云原生-5-1530", "seg": [ [ [ @@ -60131,11 +70059,16 @@ "提供", "网络", "策略", - "功能" + "功能", + "网络策略", + "策略功能" ] ] ], - "level": "1", + "level": { + "min": 0.44301349572086896, + "max": 0.4430546412113232 + }, "related_data": {} } } @@ -60143,17 +70076,21 @@ { "配置网络策略": { "data": { - "uuid": "云原生-5-1529", + "uuid": "云原生-5-1531", "seg": [ [ [ "配置", "网络", - "策略" + "策略", + "网络策略" ] ] ], - "level": "1", + "level": { + "min": 0.4430546412113232, + "max": 0.44309578670177746 + }, "related_data": {} } } @@ -60161,7 +70098,7 @@ { "管控入站流量": { "data": { - "uuid": "云原生-5-1530", + "uuid": "云原生-5-1532", "seg": [ [ [ @@ -60172,7 +70109,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.44309578670177746, + "max": 0.4431369321922317 + }, "related_data": {} } } @@ -60180,7 +70120,7 @@ { "管控出站流量": { "data": { - "uuid": "云原生-5-1531", + "uuid": "云原生-5-1533", "seg": [ [ [ @@ -60191,7 +70131,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4431369321922317, + "max": 0.44317807768268597 + }, "related_data": {} } } @@ -60199,17 +70142,21 @@ { "隔离名称空间": { "data": { - "uuid": "云原生-5-1532", + "uuid": "云原生-5-1534", "seg": [ [ [ "隔离", "名称", - "空间" + "空间", + "名称空间" ] ] ], - "level": "1", + "level": { + "min": 0.44317807768268597, + "max": 0.4432192231731402 + }, "related_data": {} } } @@ -60217,17 +70164,21 @@ { "网络策略应用案例": { "data": { - "uuid": "云原生-5-1533", + "uuid": "云原生-5-1535", "seg": [ [ [ "网络", "策略", - "案例" + "案例", + "网络策略" ] ] ], - "level": "1", + "level": { + "min": 0.4432192231731402, + "max": 0.4432603686635945 + }, "related_data": {} } } @@ -60239,11 +70190,15 @@ [ [ "网络", - "策略" + "策略", + "网络策略" ] ] ], - "level": "1", + "level": { + "min": 0.4429723502304147, + "max": 0.4432603686635945 + }, "related_data": {} } } @@ -60254,7 +70209,7 @@ { "Calico工作特性": { "data": { - "uuid": "云原生-5-1534", + "uuid": "云原生-5-1536", "seg": [ [ [ @@ -60264,7 +70219,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4432603686635945, + "max": 0.4433179723502304 + }, "related_data": {} } } @@ -60272,17 +70230,21 @@ { "Calico系统架构": { "data": { - "uuid": "云原生-5-1535", + "uuid": "云原生-5-1537", "seg": [ [ [ "calico", "系统", - "架构" + "架构", + "系统架构" ] ] ], - "level": "1", + "level": { + "min": 0.4433179723502304, + "max": 0.44337557603686634 + }, "related_data": {} } } @@ -60290,21 +70252,25 @@ { "Calico部署要点": { "data": { - "uuid": "云原生-5-1536", + "uuid": "云原生-5-1538", "seg": [ [ [ "calico", "部署", - "要点" + "要点", + "部署要点" ] ] ], - "level": "1", + "level": { + "min": 0.44337557603686634, + "max": 0.4434331797235023 + }, "related_data": { "blog": { "data_id": [ - "80220601" + "80220601@etcd@云原生" ] } } @@ -60314,7 +70280,7 @@ { "部署Calico提供网络服务和网络策略": { "data": { - "uuid": "云原生-5-1537", + "uuid": "云原生-5-1539", "seg": [ [ [ @@ -60325,11 +70291,15 @@ ], [ "网络", - "策略" + "策略", + "网络策略" ] ] ], - "level": "1", + "level": { + "min": 0.4434331797235023, + "max": 0.44349078341013826 + }, "related_data": {} } } @@ -60337,17 +70307,21 @@ { "客户端工具calicoctl": { "data": { - "uuid": "云原生-5-1538", + "uuid": "云原生-5-1540", "seg": [ [ [ "客户端", "工具", - "calicoctl" + "calicoctl", + "客户端工具" ] ] ], - "level": "1", + "level": { + "min": 0.44349078341013826, + "max": 0.4435483870967742 + }, "related_data": {} } } @@ -60360,11 +70334,15 @@ [ "calico", "网络", - "插件" + "插件", + "网络插件" ] ] ], - "level": "1", + "level": { + "min": 0.4432603686635945, + "max": 0.4435483870967742 + }, "related_data": {} } } @@ -60376,15 +70354,20 @@ [ [ "网络", - "模型" + "模型", + "网络模型" ], [ "网络", - "策略" + "策略", + "网络策略" ] ] ], - "level": "1", + "level": { + "min": 0.44239631336405527, + "max": 0.4435483870967742 + }, "related_data": {} } } @@ -60398,7 +70381,7 @@ { "常用的预选策略": { "data": { - "uuid": "云原生-5-1539", + "uuid": "云原生-5-1541", "seg": [ [ [ @@ -60407,7 +70390,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4435483870967742, + "max": 0.4436635944700461 + }, "related_data": {} } } @@ -60415,7 +70401,7 @@ { "常用的优选函数": { "data": { - "uuid": "云原生-5-1540", + "uuid": "云原生-5-1542", "seg": [ [ [ @@ -60424,7 +70410,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4436635944700461, + "max": 0.44377880184331797 + }, "related_data": {} } } @@ -60438,11 +70427,15 @@ "kubernetes", "调度", "器", - "概述" + "概述", + "调度器" ] ] ], - "level": "2", + "level": { + "min": 0.4435483870967742, + "max": 0.44377880184331797 + }, "related_data": {} } } @@ -60453,7 +70446,7 @@ { "节点硬亲和性": { "data": { - "uuid": "云原生-5-1541", + "uuid": "云原生-5-1543", "seg": [ [ [ @@ -60463,7 +70456,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44377880184331797, + "max": 0.44389400921658984 + }, "related_data": {} } } @@ -60471,7 +70467,7 @@ { "节点软亲和性": { "data": { - "uuid": "云原生-5-1542", + "uuid": "云原生-5-1544", "seg": [ [ [ @@ -60481,7 +70477,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44389400921658984, + "max": 0.44400921658986175 + }, "related_data": {} } } @@ -60500,7 +70499,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44377880184331797, + "max": 0.44400921658986175 + }, "related_data": {} } } @@ -60511,7 +70513,7 @@ { "位置拓扑": { "data": { - "uuid": "云原生-5-1543", + "uuid": "云原生-5-1545", "seg": [ [ [ @@ -60520,7 +70522,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44400921658986175, + "max": 0.4440668202764977 + }, "related_data": {} } } @@ -60528,7 +70533,7 @@ { "Pod硬亲和调度": { "data": { - "uuid": "云原生-5-1544", + "uuid": "云原生-5-1546", "seg": [ [ [ @@ -60540,7 +70545,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4440668202764977, + "max": 0.4441244239631336 + }, "related_data": {} } } @@ -60548,7 +70556,7 @@ { "Pod软亲和调度": { "data": { - "uuid": "云原生-5-1545", + "uuid": "云原生-5-1547", "seg": [ [ [ @@ -60560,7 +70568,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4441244239631336, + "max": 0.44418202764976955 + }, "related_data": {} } } @@ -60568,7 +70579,7 @@ { "Pod反亲和调度": { "data": { - "uuid": "云原生-5-1546", + "uuid": "云原生-5-1548", "seg": [ [ [ @@ -60580,11 +70591,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44418202764976955, + "max": 0.4442396313364055 + }, "related_data": { "blog": { "data_id": [ - "108868851" + "108868851@容器@云原生" ] } } @@ -60606,7 +70620,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44400921658986175, + "max": 0.4442396313364055 + }, "related_data": {} } } @@ -60617,19 +70634,23 @@ { "定义污点和容忍度": { "data": { - "uuid": "云原生-5-1547", + "uuid": "云原生-5-1549", "seg": [ [ [ "定义", - "污点" + "污点", + "定义污点" ], [ "容忍度" ] ] ], - "level": "2", + "level": { + "min": 0.4442396313364055, + "max": 0.4443164362519201 + }, "related_data": {} } } @@ -60637,7 +70658,7 @@ { "管理节点的污点": { "data": { - "uuid": "云原生-5-1548", + "uuid": "云原生-5-1550", "seg": [ [ [ @@ -60647,7 +70668,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4443164362519201, + "max": 0.44439324116743467 + }, "related_data": {} } } @@ -60655,7 +70679,7 @@ { "Pod对象的容忍度": { "data": { - "uuid": "云原生-5-1549", + "uuid": "云原生-5-1551", "seg": [ [ [ @@ -60665,7 +70689,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44439324116743467, + "max": 0.44447004608294927 + }, "related_data": {} } } @@ -60683,7 +70710,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4442396313364055, + "max": 0.44447004608294927 + }, "related_data": {} } } @@ -60705,7 +70735,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44447004608294927, + "max": 0.44470046082949305 + }, "related_data": {} } } @@ -60718,11 +70751,15 @@ [ "pod", "资源", - "调度" + "调度", + "资源调度" ] ] ], - "level": "2", + "level": { + "min": 0.4435483870967742, + "max": 0.44470046082949305 + }, "related_data": {} } } @@ -60736,7 +70773,7 @@ { "创建CRD对象": { "data": { - "uuid": "云原生-5-1550", + "uuid": "云原生-5-1552", "seg": [ [ [ @@ -60746,26 +70783,39 @@ ] ] ], - "level": "2", - "related_data": {} + "level": { + "min": 0.44470046082949305, + "max": 0.4447388632872503 + }, + "related_data": { + "blog": { + "data_id": [ + "88917818@kubernetes@云原生" + ] + } + } } } }, { "自定义资源格式验证": { "data": { - "uuid": "云原生-5-1551", + "uuid": "云原生-5-1553", "seg": [ [ [ "自定义", "资源", "格式", - "验证" + "验证", + "资源格式" ] ] ], - "level": "2", + "level": { + "min": 0.4447388632872503, + "max": 0.44477726574500764 + }, "related_data": {} } } @@ -60773,16 +70823,20 @@ { "子资源": { "data": { - "uuid": "云原生-5-1552", + "uuid": "云原生-5-1554", "seg": [ [ [ "子", - "资源" + "资源", + "子资源" ] ] ], - "level": "2", + "level": { + "min": 0.44477726574500764, + "max": 0.44481566820276497 + }, "related_data": {} } } @@ -60790,16 +70844,20 @@ { "使用资源类别": { "data": { - "uuid": "云原生-5-1553", + "uuid": "云原生-5-1555", "seg": [ [ [ "资源", - "类别" + "类别", + "资源类别" ] ] ], - "level": "2", + "level": { + "min": 0.44481566820276497, + "max": 0.44485407066052224 + }, "related_data": {} } } @@ -60807,7 +70865,7 @@ { "多版本支持": { "data": { - "uuid": "云原生-5-1554", + "uuid": "云原生-5-1556", "seg": [ [ [ @@ -60816,7 +70874,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44485407066052224, + "max": 0.4448924731182795 + }, "related_data": {} } } @@ -60824,24 +70885,28 @@ { "自定义控制器基础": { "data": { - "uuid": "云原生-5-1555", + "uuid": "云原生-5-1557", "seg": [ [ [ "自定义", "控制器", - "基础" + "基础", + "控制器基础" ] ] ], - "level": "2", + "level": { + "min": 0.4448924731182795, + "max": 0.44493087557603683 + }, "related_data": { "blog": { "data_id": [ - "79585197", - "47333035", - "111187381", - "46385269" + "79585197@控制器@云原生", + "47333035@控制器@云原生", + "111187381@控制器@云原生", + "46385269@控制器@云原生" ] } } @@ -60860,7 +70925,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44470046082949305, + "max": 0.44493087557603683 + }, "related_data": {} } } @@ -60871,7 +70939,7 @@ { "自定义API Server概述": { "data": { - "uuid": "云原生-5-1556", + "uuid": "云原生-5-1558", "seg": [ [ [ @@ -60882,11 +70950,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44493087557603683, + "max": 0.4450460829493087 + }, "related_data": { "blog": { "data_id": [ - "67652202" + "67652202@dashboard@云原生" ] } } @@ -60896,7 +70967,7 @@ { "APIService对象": { "data": { - "uuid": "云原生-5-1557", + "uuid": "云原生-5-1559", "seg": [ [ [ @@ -60905,7 +70976,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4450460829493087, + "max": 0.4451612903225806 + }, "related_data": {} } } @@ -60922,7 +70996,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44493087557603683, + "max": 0.4451612903225806 + }, "related_data": {} } } @@ -60933,7 +71010,7 @@ { "etcd高可用": { "data": { - "uuid": "云原生-5-1558", + "uuid": "云原生-5-1560", "seg": [ [ [ @@ -60943,20 +71020,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4451612903225806, + "max": 0.44527649769585254 + }, "related_data": { "blog": { "data_id": [ - "87812739", - "103967985", - "108452512", - "87108882", - "84320945", - "113979741", - "110298506", - "79851235", - "81002436", - "82887607" + "87812739@etcd@云原生", + "103967985@etcd@云原生", + "108452512@etcd@云原生", + "87108882@etcd@云原生", + "84320945@etcd@云原生", + "113979741@etcd@云原生", + "110298506@etcd@云原生", + "79851235@etcd@云原生", + "81002436@etcd@云原生", + "82887607@etcd@云原生" ] } } @@ -60966,7 +71046,7 @@ { "Controller Manager和Scheduler高可用": { "data": { - "uuid": "云原生-5-1559", + "uuid": "云原生-5-1561", "seg": [ [ [ @@ -60980,14 +71060,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44527649769585254, + "max": 0.4453917050691244 + }, "related_data": { "blog": { "data_id": [ - "89925938", - "80228625", - "79412726", - "102783298" + "89925938@etcd@云原生", + "80228625@cloud@云原生", + "79412726@cloud@云原生", + "102783298@分布式@云原生" ] } } @@ -61007,7 +71090,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4451612903225806, + "max": 0.4453917050691244 + }, "related_data": {} } } @@ -61018,16 +71104,20 @@ { "关键组件": { "data": { - "uuid": "云原生-5-1560", + "uuid": "云原生-5-1562", "seg": [ [ [ "关键", - "组件" + "组件", + "关键组件" ] ] ], - "level": "2", + "level": { + "min": 0.4453917050691244, + "max": 0.44550691244239626 + }, "related_data": {} } } @@ -61035,17 +71125,21 @@ { "常见的部署模式": { "data": { - "uuid": "云原生-5-1561", + "uuid": "云原生-5-1563", "seg": [ [ [ "常见", "部署", - "模式" + "模式", + "部署模式" ] ] ], - "level": "2", + "level": { + "min": 0.44550691244239626, + "max": 0.4456221198156682 + }, "related_data": {} } } @@ -61058,11 +71152,15 @@ [ "kubernetes", "部署", - "模式" + "模式", + "部署模式" ] ] ], - "level": "2", + "level": { + "min": 0.4453917050691244, + "max": 0.4456221198156682 + }, "related_data": {} } } @@ -61076,7 +71174,7 @@ { "容器隔离等级": { "data": { - "uuid": "云原生-6-361", + "uuid": "云原生-6-362", "seg": [ [ [ @@ -61086,7 +71184,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4456221198156682, + "max": 0.4456285202252944 + }, "related_data": {} } } @@ -61094,7 +71195,7 @@ { "容器编排": { "data": { - "uuid": "云原生-6-362", + "uuid": "云原生-6-363", "seg": [ [ [ @@ -61103,15 +71204,18 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4456285202252944, + "max": 0.4456349206349206 + }, "related_data": { "blog": { "data_id": [ - "117250024", - "114461596", - "108514019", - "37700085", - "109220565" + "117250024@devops@云原生", + "114461596@devops@云原生", + "108514019@容器@云原生", + "37700085@容器@云原生", + "109220565@容器@云原生" ] } } @@ -61121,7 +71225,7 @@ { "将镜像存储在可信的注册服务器中": { "data": { - "uuid": "云原生-6-363", + "uuid": "云原生-6-364", "seg": [ [ [ @@ -61129,11 +71233,15 @@ "存储", "可信", "注册", - "服务器" + "服务器", + "将镜像" ] ] ], - "level": "2", + "level": { + "min": 0.4456349206349206, + "max": 0.44564132104454685 + }, "related_data": {} } } @@ -61141,7 +71249,7 @@ { "充分利用Docker的构建缓存": { "data": { - "uuid": "云原生-6-364", + "uuid": "云原生-6-365", "seg": [ [ [ @@ -61152,7 +71260,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44564132104454685, + "max": 0.44564772145417303 + }, "related_data": {} } } @@ -61160,18 +71271,23 @@ { "不要使用特权模式运行容器": { "data": { - "uuid": "云原生-6-365", + "uuid": "云原生-6-366", "seg": [ [ [ "特权", "模式", "运行", - "容器" + "容器", + "不要使用", + "特权模式" ] ] ], - "level": "2", + "level": { + "min": 0.44564772145417303, + "max": 0.44565412186379927 + }, "related_data": {} } } @@ -61179,18 +71295,23 @@ { "使用显式的容器镜像标签": { "data": { - "uuid": "云原生-6-366", + "uuid": "云原生-6-367", "seg": [ [ [ "显式", "容器", "镜像", - "标签" + "标签", + "容器镜像", + "镜像标签" ] ] ], - "level": "2", + "level": { + "min": 0.44565412186379927, + "max": 0.44566052227342545 + }, "related_data": {} } } @@ -61198,16 +71319,20 @@ { "保持小的容器镜像": { "data": { - "uuid": "云原生-6-367", + "uuid": "云原生-6-368", "seg": [ [ [ "容器", - "镜像" + "镜像", + "容器镜像" ] ] ], - "level": "2", + "level": { + "min": 0.44566052227342545, + "max": 0.4456669226830517 + }, "related_data": {} } } @@ -61215,21 +71340,25 @@ { "单个容器只运行一个应用": { "data": { - "uuid": "云原生-6-368", + "uuid": "云原生-6-369", "seg": [ [ [ "单个", "容器", - "运行" + "运行", + "只运行" ] ] ], - "level": "2", + "level": { + "min": 0.4456669226830517, + "max": 0.44567332309267793 + }, "related_data": { "blog": { "data_id": [ - "82085888" + "82085888@容器@云原生" ] } } @@ -61239,18 +71368,22 @@ { "使用可信镜像仓库中经过验证的镜像": { "data": { - "uuid": "云原生-6-369", + "uuid": "云原生-6-370", "seg": [ [ [ "可信", "镜像", "仓库", - "验证" + "验证", + "镜像仓库" ] ] ], - "level": "2", + "level": { + "min": 0.44567332309267793, + "max": 0.4456797235023041 + }, "related_data": {} } } @@ -61258,7 +71391,7 @@ { "对镜像进行漏洞扫描": { "data": { - "uuid": "云原生-6-370", + "uuid": "云原生-6-371", "seg": [ [ [ @@ -61268,7 +71401,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4456797235023041, + "max": 0.44568612391193035 + }, "related_data": {} } } @@ -61276,22 +71412,26 @@ { "不要将数据保存在容器中": { "data": { - "uuid": "云原生-6-371", + "uuid": "云原生-6-372", "seg": [ [ [ "数据", "保存", - "容器" + "容器", + "将数据" ] ] ], - "level": "2", + "level": { + "min": 0.44568612391193035, + "max": 0.44569252432155654 + }, "related_data": { "blog": { "data_id": [ - "90545115", - "43667785" + "90545115@容器@云原生", + "43667785@docker@云原生" ] } } @@ -61301,7 +71441,7 @@ { "永远不要在容器中存放密钥和配置": { "data": { - "uuid": "云原生-6-372", + "uuid": "云原生-6-373", "seg": [ [ [ @@ -61315,14 +71455,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44569252432155654, + "max": 0.4456989247311828 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-1562", + "uuid": "云原生-5-1564", "seg": [ [ [ @@ -61337,12 +71480,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4456221198156682, + "max": 0.4456989247311828 + }, "related_data": { "blog": { "data_id": [ - "62426612", - "89355217" + "62426612@devops@云原生", + "89355217@云原生@云原生" ] } } @@ -61352,7 +71498,7 @@ { "泛型端到端容器应用程序生命周期工作流": { "data": { - "uuid": "云原生-5-1563", + "uuid": "云原生-5-1565", "seg": [ [ [ @@ -61362,11 +71508,16 @@ "应用程序", "生命周期", "工作", - "流" + "流", + "容器应用程序", + "应用程序生命周期" ] ] ], - "level": "1", + "level": { + "min": 0.4456989247311828, + "max": 0.44577572964669737 + }, "related_data": {} } } @@ -61374,7 +71525,7 @@ { "基于Kubernetes的DevOps": { "data": { - "uuid": "云原生-5-1564", + "uuid": "云原生-5-1566", "seg": [ [ [ @@ -61383,20 +71534,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44577572964669737, + "max": 0.44585253456221197 + }, "related_data": { "blog": { "data_id": [ - "111613191", - "102810548", - "105881669", - "82191516", - "83109530", - "99374896", - "100014437", - "108746718", - "111071825", - "93138036" + "102810548@devops@云原生", + "102810548@docker@云原生", + "105881669@devops@云原生", + "105881669@kubernetes@云原生", + "82191516@devops@云原生", + "83109530@devops@云原生", + "99374896@devops@云原生", + "100014437@devops@云原生", + "108746718@devops@云原生", + "111071825@devops@云原生" ] } } @@ -61412,11 +71566,15 @@ "容器", "时代", "devops", - "概述" + "概述", + "容器时代" ] ] ], - "level": "2", + "level": { + "min": 0.4456221198156682, + "max": 0.44585253456221197 + }, "related_data": {} } } @@ -61433,7 +71591,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44470046082949305, + "max": 0.44585253456221197 + }, "related_data": {} } } @@ -61447,7 +71608,7 @@ { "资源监控及Heapster": { "data": { - "uuid": "云原生-5-1565", + "uuid": "云原生-5-1567", "seg": [ [ [ @@ -61459,7 +71620,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44585253456221197, + "max": 0.4459965437788018 + }, "related_data": {} } } @@ -61467,7 +71631,7 @@ { "新一代监控架构": { "data": { - "uuid": "云原生-5-1566", + "uuid": "云原生-5-1568", "seg": [ [ [ @@ -61477,7 +71641,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4459965437788018, + "max": 0.4461405529953917 + }, "related_data": {} } } @@ -61493,11 +71660,15 @@ ], [ "资源", - "指标" + "指标", + "资源指标" ] ] ], - "level": "2", + "level": { + "min": 0.44585253456221197, + "max": 0.4461405529953917 + }, "related_data": {} } } @@ -61508,7 +71679,7 @@ { "部署metrics-server": { "data": { - "uuid": "云原生-5-1567", + "uuid": "云原生-5-1569", "seg": [ [ [ @@ -61518,7 +71689,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4461405529953917, + "max": 0.44628456221198154 + }, "related_data": {} } } @@ -61526,7 +71700,7 @@ { "kubectl top命令": { "data": { - "uuid": "云原生-5-1568", + "uuid": "云原生-5-1570", "seg": [ [ [ @@ -61536,7 +71710,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44628456221198154, + "max": 0.4464285714285714 + }, "related_data": {} } } @@ -61548,11 +71725,15 @@ [ [ "资源", - "指标" + "指标", + "资源指标" ] ] ], - "level": "2", + "level": { + "min": 0.4461405529953917, + "max": 0.4464285714285714 + }, "related_data": {} } } @@ -61563,7 +71744,7 @@ { "Prometheus概述": { "data": { - "uuid": "云原生-5-1569", + "uuid": "云原生-5-1571", "seg": [ [ [ @@ -61572,7 +71753,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4464285714285714, + "max": 0.44652457757296465 + }, "related_data": {} } } @@ -61580,7 +71764,7 @@ { "部署Prometheus监控系统": { "data": { - "uuid": "云原生-5-1570", + "uuid": "云原生-5-1572", "seg": [ [ [ @@ -61591,7 +71775,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44652457757296465, + "max": 0.44662058371735786 + }, "related_data": {} } } @@ -61599,7 +71786,7 @@ { "自定义指标适配器k8s-prometheus-adapter": { "data": { - "uuid": "云原生-5-1571", + "uuid": "云原生-5-1573", "seg": [ [ [ @@ -61608,11 +71795,15 @@ "适配器", "k8s", "prometheus", - "adapter" + "adapter", + "指标适配器" ] ] ], - "level": "2", + "level": { + "min": 0.44662058371735786, + "max": 0.4467165898617511 + }, "related_data": {} } } @@ -61631,7 +71822,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4464285714285714, + "max": 0.4467165898617511 + }, "related_data": {} } } @@ -61642,7 +71836,7 @@ { "HPA概述": { "data": { - "uuid": "云原生-5-1572", + "uuid": "云原生-5-1574", "seg": [ [ [ @@ -61651,7 +71845,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4467165898617511, + "max": 0.44681259600614437 + }, "related_data": {} } } @@ -61659,7 +71856,7 @@ { "HPA(v1)控制器": { "data": { - "uuid": "云原生-5-1573", + "uuid": "云原生-5-1575", "seg": [ [ [ @@ -61669,7 +71866,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44681259600614437, + "max": 0.44690860215053757 + }, "related_data": {} } } @@ -61677,7 +71877,7 @@ { "HPA(v2)控制器": { "data": { - "uuid": "云原生-5-1574", + "uuid": "云原生-5-1576", "seg": [ [ [ @@ -61687,7 +71887,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44690860215053757, + "max": 0.4470046082949308 + }, "related_data": {} } } @@ -61704,7 +71907,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4467165898617511, + "max": 0.4470046082949308 + }, "related_data": {} } } @@ -61716,7 +71922,8 @@ [ [ "资源", - "指标" + "指标", + "资源指标" ], [ "hpa", @@ -61724,7 +71931,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44585253456221197, + "max": 0.4470046082949308 + }, "related_data": {} } } @@ -61738,17 +71948,21 @@ { "Helm的核心术语": { "data": { - "uuid": "云原生-5-1575", + "uuid": "云原生-5-1577", "seg": [ [ [ "helm", "核心", - "术语" + "术语", + "核心术语" ] ] ], - "level": "2", + "level": { + "min": 0.4470046082949308, + "max": 0.4470814132104454 + }, "related_data": {} } } @@ -61756,7 +71970,7 @@ { "Helm架构": { "data": { - "uuid": "云原生-5-1576", + "uuid": "云原生-5-1578", "seg": [ [ [ @@ -61765,7 +71979,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4470814132104454, + "max": 0.44715821812596 + }, "related_data": {} } } @@ -61773,7 +71990,7 @@ { "安装Helm Client": { "data": { - "uuid": "云原生-5-1577", + "uuid": "云原生-5-1579", "seg": [ [ [ @@ -61783,7 +72000,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44715821812596, + "max": 0.4472350230414746 + }, "related_data": {} } } @@ -61791,7 +72011,7 @@ { "安装Tiller server": { "data": { - "uuid": "云原生-5-1578", + "uuid": "云原生-5-1580", "seg": [ [ [ @@ -61801,7 +72021,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4472350230414746, + "max": 0.4473118279569892 + }, "related_data": {} } } @@ -61809,18 +72032,28 @@ { "Helm快速入门": { "data": { - "uuid": "云原生-5-1579", + "uuid": "云原生-5-1581", "seg": [ [ [ "helm", "快速", - "入门" + "入门", + "快速入门" ] ] ], - "level": "2", - "related_data": {} + "level": { + "min": 0.4473118279569892, + "max": 0.4473886328725038 + }, + "related_data": { + "blog": { + "data_id": [ + "111190159@阿里云@云原生" + ] + } + } } } } @@ -61835,7 +72068,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4470046082949308, + "max": 0.4473886328725038 + }, "related_data": {} } } @@ -61846,7 +72082,7 @@ { "Charts文件组织结构": { "data": { - "uuid": "云原生-5-1580", + "uuid": "云原生-5-1582", "seg": [ [ [ @@ -61856,7 +72092,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4473886328725038, + "max": 0.4474654377880184 + }, "related_data": {} } } @@ -61864,7 +72103,7 @@ { "Chart.yaml文件组织格式": { "data": { - "uuid": "云原生-5-1581", + "uuid": "云原生-5-1583", "seg": [ [ [ @@ -61875,7 +72114,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4474654377880184, + "max": 0.447542242703533 + }, "related_data": {} } } @@ -61883,7 +72125,7 @@ { "Charts中的依赖关系": { "data": { - "uuid": "云原生-5-1582", + "uuid": "云原生-5-1584", "seg": [ [ [ @@ -61893,7 +72135,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.447542242703533, + "max": 0.4476190476190476 + }, "related_data": {} } } @@ -61901,7 +72146,7 @@ { "模板和值": { "data": { - "uuid": "云原生-5-1583", + "uuid": "云原生-5-1585", "seg": [ [ [ @@ -61912,7 +72157,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4476190476190476, + "max": 0.4476958525345622 + }, "related_data": {} } } @@ -61920,7 +72168,7 @@ { "自定义Charts": { "data": { - "uuid": "云原生-5-1584", + "uuid": "云原生-5-1586", "seg": [ [ [ @@ -61929,7 +72177,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4476958525345622, + "max": 0.44777265745007677 + }, "related_data": {} } } @@ -61945,7 +72196,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4473886328725038, + "max": 0.44777265745007677 + }, "related_data": {} } } @@ -61956,7 +72210,7 @@ { "ElasticSearch集群": { "data": { - "uuid": "云原生-5-1585", + "uuid": "云原生-5-1587", "seg": [ [ [ @@ -61965,7 +72219,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44777265745007677, + "max": 0.4479006656426011 + }, "related_data": {} } } @@ -61973,7 +72230,7 @@ { "日志采集代理fluentd": { "data": { - "uuid": "云原生-5-1586", + "uuid": "云原生-5-1588", "seg": [ [ [ @@ -61984,7 +72241,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4479006656426011, + "max": 0.4480286738351254 + }, "related_data": {} } } @@ -61992,17 +72252,21 @@ { "可视化组件Kibana": { "data": { - "uuid": "云原生-5-1587", + "uuid": "云原生-5-1589", "seg": [ [ [ "可视化", "组件", - "kibana" + "kibana", + "可视化组件" ] ] ], - "level": "2", + "level": { + "min": 0.4480286738351254, + "max": 0.44815668202764974 + }, "related_data": {} } } @@ -62022,11 +72286,15 @@ "部署", "efk", "日志", - "管理系统" + "管理系统", + "日志管理系统" ] ] ], - "level": "2", + "level": { + "min": 0.44777265745007677, + "max": 0.44815668202764974 + }, "related_data": {} } } @@ -62039,11 +72307,15 @@ [ "helm", "程序包", - "管理器" + "管理器", + "程序包管理器" ] ] ], - "level": "2", + "level": { + "min": 0.4470046082949308, + "max": 0.44815668202764974 + }, "related_data": {} } } @@ -62057,7 +72329,7 @@ { "初识network namespace": { "data": { - "uuid": "云原生-5-1588", + "uuid": "云原生-5-1590", "seg": [ [ [ @@ -62067,7 +72339,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.44815668202764974, + "max": 0.4481993514251579 + }, "related_data": {} } } @@ -62075,7 +72350,7 @@ { "配置network namespace": { "data": { - "uuid": "云原生-5-1589", + "uuid": "云原生-5-1591", "seg": [ [ [ @@ -62085,7 +72360,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4481993514251579, + "max": 0.44824202082266595 + }, "related_data": {} } } @@ -62093,7 +72371,7 @@ { "network namespace API的使用": { "data": { - "uuid": "云原生-5-1590", + "uuid": "云原生-5-1592", "seg": [ [ [ @@ -62103,14 +72381,17 @@ ] ] ], - "level": "1", + "level": { + "min": 0.44824202082266595, + "max": 0.4482846902201741 + }, "related_data": { "blog": { "data_id": [ - "6648526", - "50573675", - "55002006", - "79612973" + "6648526@go@云原生", + "50573675@容器@云原生", + "55002006@控制器@云原生", + "79612973@go@云原生" ] } } @@ -62125,7 +72406,9 @@ [ "网络", "虚拟化", - "基石" + "基石", + "网络虚拟化", + "虚拟化基石" ] ], [ @@ -62135,7 +72418,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.44815668202764974, + "max": 0.4482846902201741 + }, "related_data": {} } } @@ -62146,7 +72432,7 @@ { "veth pair内核实现": { "data": { - "uuid": "云原生-5-1591", + "uuid": "云原生-5-1593", "seg": [ [ [ @@ -62156,7 +72442,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4482846902201741, + "max": 0.4484126984126984 + }, "related_data": {} } } @@ -62168,7 +72457,8 @@ [ [ "千呼万唤", - "始" + "始", + "始出来" ] ], [ @@ -62178,7 +72468,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4482846902201741, + "max": 0.4484126984126984 + }, "related_data": {} } } @@ -62189,7 +72482,7 @@ { "Linux bridge初体验": { "data": { - "uuid": "云原生-5-1592", + "uuid": "云原生-5-1594", "seg": [ [ [ @@ -62199,20 +72492,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4484126984126984, + "max": 0.4484383000512032 + }, "related_data": { "blog": { "data_id": [ - "112621416", - "73918672", - "111151061", - "108305396", - "81432063", - "106267225", - "115734043", - "115296987", - "90710480", - "112968490" + "112621416@运维@云原生", + "73918672@docker@云原生", + "111151061@docker@云原生", + "108305396@docker@云原生", + "81432063@docker@云原生", + "106267225@docker@云原生", + "115734043@容器@云原生", + "115296987@consul@云原生", + "90710480@docker@云原生", + "112968490@运维@云原生" ] } } @@ -62222,7 +72518,7 @@ { "把IP让给Linux bridge": { "data": { - "uuid": "云原生-5-1593", + "uuid": "云原生-5-1595", "seg": [ [ [ @@ -62233,20 +72529,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4484383000512032, + "max": 0.4484639016897081 + }, "related_data": { "blog": { "data_id": [ - "36665861", - "27667455", - "51506508", - "88394262", - "113799786", - "117593636", - "82052650", - "81349541", - "83834599", - "111167736" + "36665861@iptables@云原生", + "27667455@gateway@云原生", + "51506508@iptables@云原生", + "88394262@iptables@云原生", + "113799786@docker@云原生", + "117593636@iptables@云原生", + "82052650@gateway@云原生", + "81349541@eureka@云原生", + "83834599@阿里云@云原生", + "111167736@iptables@云原生" ] } } @@ -62256,7 +72555,7 @@ { "将物理网卡添加到Linux bridge": { "data": { - "uuid": "云原生-5-1594", + "uuid": "云原生-5-1596", "seg": [ [ [ @@ -62264,16 +72563,21 @@ "网卡", "添加", "linux", - "bridge" + "bridge", + "将物理", + "物理网卡" ] ] ], - "level": "2", + "level": { + "min": 0.4484639016897081, + "max": 0.44848950332821297 + }, "related_data": { "blog": { "data_id": [ - "115678779", - "68067017" + "115678779@运维@云原生", + "68067017@gateway@云原生" ] } } @@ -62283,31 +72587,35 @@ { "Linux bridge在网络虚拟化中的应用": { "data": { - "uuid": "云原生-5-1595", + "uuid": "云原生-5-1597", "seg": [ [ [ "linux", "bridge", "网络", - "虚拟化" + "虚拟化", + "网络虚拟化" ] ] ], - "level": "1", + "level": { + "min": 0.44848950332821297, + "max": 0.44851510496671787 + }, "related_data": { "blog": { "data_id": [ - "109749050", - "90121994", - "85830041", - "68061954", - "110088715", - "51388087", - "89404607", - "108067509", - "105838205", - "109475447" + "109749050@运维@云原生", + "109749050@docker@云原生", + "109749050@容器@云原生", + "90121994@运维@云原生", + "85830041@运维@云原生", + "68061954@gateway@云原生", + "110088715@vagrant@云原生", + "51388087@gateway@云原生", + "89404607@运维@云原生", + "108067509@docker@云原生" ] } } @@ -62317,7 +72625,7 @@ { "网络接口的混杂模式": { "data": { - "uuid": "云原生-5-1596", + "uuid": "云原生-5-1598", "seg": [ [ [ @@ -62327,7 +72635,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.44851510496671787, + "max": 0.4485407066052227 + }, "related_data": {} } } @@ -62348,7 +72659,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4484126984126984, + "max": 0.4485407066052227 + }, "related_data": {} } } @@ -62359,7 +72673,7 @@ { "tun/tap设备的工作原理": { "data": { - "uuid": "云原生-5-1597", + "uuid": "云原生-5-1599", "seg": [ [ [ @@ -62371,7 +72685,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4485407066052227, + "max": 0.44858337600273085 + }, "related_data": {} } } @@ -62379,7 +72696,7 @@ { "利用tun设备部署一个VPN": { "data": { - "uuid": "云原生-5-1598", + "uuid": "云原生-5-1600", "seg": [ [ [ @@ -62391,7 +72708,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44858337600273085, + "max": 0.4486260454002389 + }, "related_data": {} } } @@ -62399,7 +72719,7 @@ { "tun设备编程": { "data": { - "uuid": "云原生-5-1599", + "uuid": "云原生-5-1601", "seg": [ [ [ @@ -62409,7 +72729,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4486260454002389, + "max": 0.44866871479774706 + }, "related_data": {} } } @@ -62422,7 +72745,8 @@ [ "用户", "态", - "机会" + "机会", + "用户态" ] ], [ @@ -62433,7 +72757,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4485407066052227, + "max": 0.44866871479774706 + }, "related_data": {} } } @@ -62444,7 +72771,7 @@ { "祖师爷netfilter": { "data": { - "uuid": "云原生-5-1600", + "uuid": "云原生-5-1602", "seg": [ [ [ @@ -62453,7 +72780,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44866871479774706, + "max": 0.4486847158218126 + }, "related_data": {} } } @@ -62461,7 +72791,7 @@ { "iptables的三板斧:table、chain和rule": { "data": { - "uuid": "云原生-5-1601", + "uuid": "云原生-5-1603", "seg": [ [ [ @@ -62481,14 +72811,18 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4486847158218126, + "max": 0.44870071684587814 + }, "related_data": { "blog": { "data_id": [ - "54924725", - "53899537", - "83115388", - "79986959" + "54924725@iptables@云原生", + "53899537@iptables@云原生", + "83115388@docker@云原生", + "83115388@iptables@云原生", + "79986959@iptables@云原生" ] } } @@ -62498,7 +72832,7 @@ { "iptables的常规武器": { "data": { - "uuid": "云原生-5-1602", + "uuid": "云原生-5-1604", "seg": [ [ [ @@ -62507,7 +72841,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44870071684587814, + "max": 0.44871671786994366 + }, "related_data": {} } } @@ -62515,7 +72852,7 @@ { "userspace模式": { "data": { - "uuid": "云原生-5-1603", + "uuid": "云原生-5-1605", "seg": [ [ [ @@ -62524,7 +72861,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44871671786994366, + "max": 0.44873271889400923 + }, "related_data": {} } } @@ -62532,7 +72872,7 @@ { "iptables模式": { "data": { - "uuid": "云原生-5-1604", + "uuid": "云原生-5-1606", "seg": [ [ [ @@ -62541,20 +72881,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44873271889400923, + "max": 0.44874871991807475 + }, "related_data": { "blog": { "data_id": [ - "80875993", - "95608635", - "108303299", - "109787031", - "109792505", - "117918124", - "117912324", - "103423668", - "73824555", - "43763073" + "80875993@iptables@云原生", + "95608635@iptables@云原生", + "108303299@iptables@云原生", + "109787031@iptables@云原生", + "109792505@iptables@云原生", + "117918124@iptables@云原生", + "117912324@iptables@云原生", + "103423668@iptables@云原生", + "73824555@iptables@云原生", + "43763073@iptables@云原生" ] } } @@ -62564,7 +72907,7 @@ { "IPVS模式": { "data": { - "uuid": "云原生-5-1605", + "uuid": "云原生-5-1607", "seg": [ [ [ @@ -62573,7 +72916,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44874871991807475, + "max": 0.44876472094214026 + }, "related_data": {} } } @@ -62581,7 +72927,7 @@ { "iptables VS. IPVS": { "data": { - "uuid": "云原生-5-1606", + "uuid": "云原生-5-1608", "seg": [ [ [ @@ -62591,7 +72937,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44876472094214026, + "max": 0.44878072196620583 + }, "related_data": {} } } @@ -62599,7 +72948,7 @@ { "conntrack": { "data": { - "uuid": "云原生-5-1607", + "uuid": "云原生-5-1609", "seg": [ [ [ @@ -62607,11 +72956,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44878072196620583, + "max": 0.44879672299027135 + }, "related_data": { "blog": { "data_id": [ - "77920696" + "77920696@iptables@云原生", + "78372576@iptables@云原生" ] } } @@ -62628,7 +72981,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44866871479774706, + "max": 0.44879672299027135 + }, "related_data": {} } } @@ -62639,7 +72995,7 @@ { "测试ipip隧道": { "data": { - "uuid": "云原生-5-1608", + "uuid": "云原生-5-1610", "seg": [ [ [ @@ -62648,7 +73004,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44879672299027135, + "max": 0.4488607270865335 + }, "related_data": {} } } @@ -62656,7 +73015,7 @@ { "ipip隧道测试结果复盘": { "data": { - "uuid": "云原生-5-1609", + "uuid": "云原生-5-1611", "seg": [ [ [ @@ -62666,7 +73025,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4488607270865335, + "max": 0.4489247311827957 + }, "related_data": {} } } @@ -62688,7 +73050,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44879672299027135, + "max": 0.4489247311827957 + }, "related_data": {} } } @@ -62699,18 +73064,22 @@ { "VXLAN协议原理简介": { "data": { - "uuid": "云原生-5-1610", + "uuid": "云原生-5-1612", "seg": [ [ [ "vxlan", "协议", "原理", - "简介" + "简介", + "协议原理" ] ] ], - "level": "1", + "level": { + "min": 0.4489247311827957, + "max": 0.4489460658815497 + }, "related_data": {} } } @@ -62718,17 +73087,21 @@ { "VXLAN组网必要信息": { "data": { - "uuid": "云原生-5-1611", + "uuid": "云原生-5-1613", "seg": [ [ [ "vxlan", "组网", - "信息" + "信息", + "必要信息" ] ] ], - "level": "1", + "level": { + "min": 0.4489460658815497, + "max": 0.4489674005803038 + }, "related_data": {} } } @@ -62736,7 +73109,7 @@ { "VXLAN基本配置命令": { "data": { - "uuid": "云原生-5-1612", + "uuid": "云原生-5-1614", "seg": [ [ [ @@ -62746,7 +73119,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4489674005803038, + "max": 0.44898873527905786 + }, "related_data": {} } } @@ -62754,7 +73130,7 @@ { "VXLAN网络实践": { "data": { - "uuid": "云原生-5-1613", + "uuid": "云原生-5-1615", "seg": [ [ [ @@ -62764,7 +73140,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.44898873527905786, + "max": 0.4490100699778119 + }, "related_data": {} } } @@ -62772,7 +73151,7 @@ { "分布式控制中心": { "data": { - "uuid": "云原生-5-1614", + "uuid": "云原生-5-1616", "seg": [ [ [ @@ -62781,7 +73160,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4490100699778119, + "max": 0.449031404676566 + }, "related_data": {} } } @@ -62789,7 +73171,7 @@ { "自维护VTEP组": { "data": { - "uuid": "云原生-5-1615", + "uuid": "云原生-5-1617", "seg": [ [ [ @@ -62799,7 +73181,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.449031404676566, + "max": 0.44905273937532003 + }, "related_data": {} } } @@ -62813,7 +73198,8 @@ "linux", "隧道", "网络", - "代表" + "代表", + "隧道网络" ] ], [ @@ -62822,7 +73208,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4489247311827957, + "max": 0.44905273937532003 + }, "related_data": {} } } @@ -62833,7 +73222,7 @@ { "Macvlan五大工作模式解析": { "data": { - "uuid": "云原生-5-1616", + "uuid": "云原生-5-1618", "seg": [ [ [ @@ -62845,7 +73234,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44905273937532003, + "max": 0.4490847414234511 + }, "related_data": {} } } @@ -62853,7 +73245,7 @@ { "测试使用Macvlan设备": { "data": { - "uuid": "云原生-5-1617", + "uuid": "云原生-5-1619", "seg": [ [ [ @@ -62862,7 +73254,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4490847414234511, + "max": 0.44911674347158215 + }, "related_data": {} } } @@ -62870,7 +73265,7 @@ { "Macvlan的跨机通信": { "data": { - "uuid": "云原生-5-1618", + "uuid": "云原生-5-1620", "seg": [ [ [ @@ -62880,7 +73275,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44911674347158215, + "max": 0.44914874551971323 + }, "related_data": {} } } @@ -62888,7 +73286,7 @@ { "Macvlan与overlay对比": { "data": { - "uuid": "云原生-5-1619", + "uuid": "云原生-5-1621", "seg": [ [ [ @@ -62899,11 +73297,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44914874551971323, + "max": 0.4491807475678443 + }, "related_data": { "blog": { "data_id": [ - "113833523" + "113833523@consul@云原生" ] } } @@ -62918,7 +73319,8 @@ [ "物理", "网卡", - "分身术" + "分身术", + "物理网卡" ] ], [ @@ -62927,7 +73329,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44905273937532003, + "max": 0.4491807475678443 + }, "related_data": {} } } @@ -62938,7 +73343,7 @@ { "IPvlan简介": { "data": { - "uuid": "云原生-5-1620", + "uuid": "云原生-5-1622", "seg": [ [ [ @@ -62947,7 +73352,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4491807475678443, + "max": 0.44922341696535245 + }, "related_data": {} } } @@ -62955,7 +73363,7 @@ { "测试IPvlan": { "data": { - "uuid": "云原生-5-1621", + "uuid": "云原生-5-1623", "seg": [ [ [ @@ -62963,7 +73371,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44922341696535245, + "max": 0.44926608636286053 + }, "related_data": {} } } @@ -62971,7 +73382,7 @@ { "Docker IPvlan网络": { "data": { - "uuid": "云原生-5-1622", + "uuid": "云原生-5-1624", "seg": [ [ [ @@ -62981,7 +73392,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.44926608636286053, + "max": 0.44930875576036866 + }, "related_data": {} } } @@ -63002,7 +73416,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4491807475678443, + "max": 0.44930875576036866 + }, "related_data": {} } } @@ -63021,11 +73438,15 @@ [ "linux", "网络", - "虚拟化" + "虚拟化", + "网络虚拟化" ] ] ], - "level": "2", + "level": { + "min": 0.44815668202764974, + "max": 0.44930875576036866 + }, "related_data": {} } } @@ -63041,7 +73462,8 @@ [ [ "主角", - "登场" + "登场", + "主角登场" ] ], [ @@ -63051,7 +73473,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.44930875576036866, + "max": 0.4495007680491551 + }, "related_data": {} } } @@ -63062,7 +73487,7 @@ { "bridge模式": { "data": { - "uuid": "云原生-5-1623", + "uuid": "云原生-5-1625", "seg": [ [ [ @@ -63071,11 +73496,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4495007680491551, + "max": 0.4495487711213517 + }, "related_data": { "blog": { "data_id": [ - "101758657" + "101758657@运维@云原生" ] } } @@ -63085,7 +73513,7 @@ { "host模式": { "data": { - "uuid": "云原生-5-1624", + "uuid": "云原生-5-1626", "seg": [ [ [ @@ -63094,7 +73522,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4495487711213517, + "max": 0.4495967741935484 + }, "related_data": {} } } @@ -63102,7 +73533,7 @@ { "container模式": { "data": { - "uuid": "云原生-5-1625", + "uuid": "云原生-5-1627", "seg": [ [ [ @@ -63111,7 +73542,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4495967741935484, + "max": 0.44964477726574503 + }, "related_data": {} } } @@ -63119,7 +73553,7 @@ { "none模式": { "data": { - "uuid": "云原生-5-1626", + "uuid": "云原生-5-1628", "seg": [ [ [ @@ -63128,7 +73562,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.44964477726574503, + "max": 0.44969278033794163 + }, "related_data": {} } } @@ -63148,11 +73585,15 @@ "docker", "四大", "网络", - "模式" + "模式", + "网络模式" ] ] ], - "level": "1", + "level": { + "min": 0.4495007680491551, + "max": 0.44969278033794163 + }, "related_data": {} } } @@ -63163,7 +73604,7 @@ { "查看容器IP": { "data": { - "uuid": "云原生-5-1627", + "uuid": "云原生-5-1629", "seg": [ [ [ @@ -63173,7 +73614,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.44969278033794163, + "max": 0.44972021066491114 + }, "related_data": {} } } @@ -63181,7 +73625,7 @@ { "端口映射": { "data": { - "uuid": "云原生-5-1628", + "uuid": "云原生-5-1630", "seg": [ [ [ @@ -63189,7 +73633,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.44972021066491114, + "max": 0.44974764099188064 + }, "related_data": {} } } @@ -63197,16 +73644,19 @@ { "访问外网": { "data": { - "uuid": "云原生-5-1629", + "uuid": "云原生-5-1631", "seg": [ [ [ "访问", - "网" + "外网" ] ] ], - "level": "1", + "level": { + "min": 0.44974764099188064, + "max": 0.44977507131885014 + }, "related_data": {} } } @@ -63214,7 +73664,7 @@ { "DNS和主机名": { "data": { - "uuid": "云原生-5-1630", + "uuid": "云原生-5-1632", "seg": [ [ [ @@ -63225,7 +73675,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.44977507131885014, + "max": 0.4498025016458196 + }, "related_data": {} } } @@ -63233,7 +73686,7 @@ { "自定义网络": { "data": { - "uuid": "云原生-5-1631", + "uuid": "云原生-5-1633", "seg": [ [ [ @@ -63242,11 +73695,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4498025016458196, + "max": 0.4498299319727891 + }, "related_data": { "blog": { "data_id": [ - "114702210" + "114702210@运维@云原生" ] } } @@ -63256,7 +73712,7 @@ { "发布服务": { "data": { - "uuid": "云原生-5-1632", + "uuid": "云原生-5-1634", "seg": [ [ [ @@ -63265,7 +73721,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4498299319727891, + "max": 0.4498573622997586 + }, "related_data": {} } } @@ -63273,7 +73732,7 @@ { "docker link:两两互联": { "data": { - "uuid": "云原生-5-1633", + "uuid": "云原生-5-1635", "seg": [ [ [ @@ -63287,11 +73746,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4498573622997586, + "max": 0.4498847926267281 + }, "related_data": { "blog": { "data_id": [ - "42112325" + "42112325@docker@云原生" ] } } @@ -63306,11 +73768,15 @@ [ "docker", "网络", - "技巧" + "技巧", + "网络技巧" ] ] ], - "level": "1", + "level": { + "min": 0.44969278033794163, + "max": 0.4498847926267281 + }, "related_data": {} } } @@ -63321,7 +73787,7 @@ { "CNM标准": { "data": { - "uuid": "云原生-5-1634", + "uuid": "云原生-5-1636", "seg": [ [ [ @@ -63330,21 +73796,18 @@ ] ] ], - "level": "1", - "related_data": { - "blog": { - "data_id": [ - "89964185" - ] - } - } + "level": { + "min": 0.4498847926267281, + "max": 0.4499327956989247 + }, + "related_data": {} } } }, { "体验CNM接口": { "data": { - "uuid": "云原生-5-1635", + "uuid": "云原生-5-1637", "seg": [ [ [ @@ -63354,7 +73817,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4499327956989247, + "max": 0.4499807987711213 + }, "related_data": {} } } @@ -63362,7 +73828,7 @@ { "Libnetwork": { "data": { - "uuid": "云原生-5-1636", + "uuid": "云原生-5-1638", "seg": [ [ [ @@ -63370,7 +73836,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4499807987711213, + "max": 0.45002880184331795 + }, "related_data": {} } } @@ -63378,7 +73847,7 @@ { "Libnetwork扩展": { "data": { - "uuid": "云原生-5-1637", + "uuid": "云原生-5-1639", "seg": [ [ [ @@ -63387,7 +73856,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45002880184331795, + "max": 0.45007680491551455 + }, "related_data": {} } } @@ -63400,7 +73872,8 @@ [ "容器", "网络", - "标准" + "标准", + "容器网络" ] ], [ @@ -63409,7 +73882,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4498847926267281, + "max": 0.45007680491551455 + }, "related_data": {} } } @@ -63420,22 +73896,27 @@ { "容器网络挑战综述": { "data": { - "uuid": "云原生-5-1638", + "uuid": "云原生-5-1640", "seg": [ [ [ "容器", "网络", "挑战", - "综述" + "综述", + "容器网络" ] ] ], - "level": "1", + "level": { + "min": 0.45007680491551455, + "max": 0.4501408090117767 + }, "related_data": { "blog": { "data_id": [ - "90680834" + "90680834@docker@云原生", + "90680834@容器@云原生" ] } } @@ -63445,7 +73926,7 @@ { "Docker的解决方案": { "data": { - "uuid": "云原生-5-1639", + "uuid": "云原生-5-1641", "seg": [ [ [ @@ -63454,11 +73935,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4501408090117767, + "max": 0.4502048131080389 + }, "related_data": { "blog": { "data_id": [ - "89787894" + "89787894@docker@云原生" ] } } @@ -63468,17 +73952,22 @@ { "第三方容器网络插件": { "data": { - "uuid": "云原生-5-1640", + "uuid": "云原生-5-1642", "seg": [ [ [ "容器", "网络", - "插件" + "插件", + "容器网络", + "网络插件" ] ] ], - "level": "1", + "level": { + "min": 0.4502048131080389, + "max": 0.45026881720430106 + }, "related_data": {} } } @@ -63501,7 +73990,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45007680491551455, + "max": 0.45026881720430106 + }, "related_data": {} } } @@ -63512,16 +74004,20 @@ { "隧道方案": { "data": { - "uuid": "云原生-5-1641", + "uuid": "云原生-5-1643", "seg": [ [ [ "隧道", - "方案" + "方案", + "隧道方案" ] ] ], - "level": "2", + "level": { + "min": 0.45026881720430106, + "max": 0.45031682027649766 + }, "related_data": {} } } @@ -63529,16 +74025,20 @@ { "路由方案": { "data": { - "uuid": "云原生-5-1642", + "uuid": "云原生-5-1644", "seg": [ [ [ "路由", - "方案" + "方案", + "路由方案" ] ] ], - "level": "2", + "level": { + "min": 0.45031682027649766, + "max": 0.4503648233486943 + }, "related_data": {} } } @@ -63546,18 +74046,22 @@ { "容器网络组网类型": { "data": { - "uuid": "云原生-5-1643", + "uuid": "云原生-5-1645", "seg": [ [ [ "容器", "网络", "组网", - "类型" + "类型", + "容器网络" ] ] ], - "level": "1", + "level": { + "min": 0.4503648233486943, + "max": 0.4504128264208909 + }, "related_data": {} } } @@ -63565,17 +74069,22 @@ { "关于容器网络标准接口": { "data": { - "uuid": "云原生-5-1644", + "uuid": "云原生-5-1646", "seg": [ [ [ "容器", "网络", - "标准接口" + "标准接口", + "容器网络", + "网络标准接口" ] ] ], - "level": "1", + "level": { + "min": 0.4504128264208909, + "max": 0.4504608294930875 + }, "related_data": {} } } @@ -63588,7 +74097,8 @@ [ "做好", "技术", - "选型" + "选型", + "技术选型" ] ], [ @@ -63597,11 +74107,15 @@ "组网", "方案", "沙场", - "兵" + "兵", + "方案沙场" ] ] ], - "level": "2", + "level": { + "min": 0.45026881720430106, + "max": 0.4504608294930875 + }, "related_data": {} } } @@ -63620,11 +74134,15 @@ "docker", "网络", "模型", - "简介" + "简介", + "网络模型" ] ] ], - "level": "2", + "level": { + "min": 0.44930875576036866, + "max": 0.4504608294930875 + }, "related_data": {} } } @@ -63638,7 +74156,7 @@ { "Kubernetes简介": { "data": { - "uuid": "云原生-5-1645", + "uuid": "云原生-5-1647", "seg": [ [ [ @@ -63647,7 +74165,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4504608294930875, + "max": 0.4504800307219662 + }, "related_data": {} } } @@ -63655,7 +74176,7 @@ { "Kubernetes能做什么": { "data": { - "uuid": "云原生-5-1646", + "uuid": "云原生-5-1648", "seg": [ [ [ @@ -63664,7 +74185,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4504800307219662, + "max": 0.45049923195084485 + }, "related_data": {} } } @@ -63672,7 +74196,7 @@ { "如何用Kubernetes": { "data": { - "uuid": "云原生-5-1647", + "uuid": "云原生-5-1649", "seg": [ [ [ @@ -63680,13 +74204,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45049923195084485, + "max": 0.45051843317972345 + }, "related_data": { "blog": { "data_id": [ - "109489360", - "102848860", - "108529981" + "109489360@云原生@云原生", + "109489360@serverless@云原生", + "102848860@云原生@云原生", + "108529981@kubernetes@云原生" ] } } @@ -63696,7 +74224,7 @@ { "Docker在Kubernetes中的角色": { "data": { - "uuid": "云原生-5-1648", + "uuid": "云原生-5-1650", "seg": [ [ [ @@ -63706,7 +74234,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45051843317972345, + "max": 0.4505376344086021 + }, "related_data": {} } } @@ -63719,7 +74250,8 @@ [ "容器", "基础设施", - "代言人" + "代言人", + "容器基础设施" ] ], [ @@ -63728,7 +74260,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4504608294930875, + "max": 0.4505376344086021 + }, "related_data": {} } } @@ -63739,23 +74274,29 @@ { "Kubernetes网络基础": { "data": { - "uuid": "云原生-5-1649", + "uuid": "云原生-5-1651", "seg": [ [ [ "kubernetes", "网络", - "基础" + "基础", + "网络基础" ] ] ], - "level": "1", + "level": { + "min": 0.4505376344086021, + "max": 0.45055043522785454 + }, "related_data": { "blog": { "data_id": [ - "79927444", - "109335287", - "109576309" + "77922093@容器@云原生", + "77922093@kubernetes@云原生", + "79927444@iptables@云原生", + "109335287@CNCF@云原生", + "109576309@云原生@云原生" ] } } @@ -63765,25 +74306,29 @@ { "Kubernetes网络架构综述": { "data": { - "uuid": "云原生-5-1650", + "uuid": "云原生-5-1652", "seg": [ [ [ "kubernetes", "网络", "架构", - "综述" + "综述", + "网络架构" ] ] ], - "level": "1", + "level": { + "min": 0.45055043522785454, + "max": 0.45056323604710696 + }, "related_data": { "blog": { "data_id": [ - "76804695", - "117557280", - "111655699", - "103859969" + "76804695@paas@云原生", + "117557280@中间件@云原生", + "111655699@kubernetes@云原生", + "103859969@运维@云原生" ] } } @@ -63793,7 +74338,7 @@ { "Kubernetes主机内组网模型": { "data": { - "uuid": "云原生-5-1651", + "uuid": "云原生-5-1653", "seg": [ [ [ @@ -63804,7 +74349,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45056323604710696, + "max": 0.4505760368663594 + }, "related_data": {} } } @@ -63812,7 +74360,7 @@ { "Kubernetes跨节点组网模型": { "data": { - "uuid": "云原生-5-1652", + "uuid": "云原生-5-1654", "seg": [ [ [ @@ -63824,7 +74372,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4505760368663594, + "max": 0.45058883768561186 + }, "related_data": {} } } @@ -63832,7 +74383,7 @@ { "Pod的hosts文件": { "data": { - "uuid": "云原生-5-1653", + "uuid": "云原生-5-1655", "seg": [ [ [ @@ -63842,11 +74393,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45058883768561186, + "max": 0.4506016385048643 + }, "related_data": { "blog": { "data_id": [ - "81255713" + "81255713@阿里云@云原生" ] } } @@ -63856,7 +74410,7 @@ { "Pod的hostname": { "data": { - "uuid": "云原生-5-1654", + "uuid": "云原生-5-1656", "seg": [ [ [ @@ -63865,7 +74419,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4506016385048643, + "max": 0.4506144393241167 + }, "related_data": {} } } @@ -63876,7 +74433,8 @@ "seg": [ [ [ - "终于" + "终于", + "终于等到" ] ], [ @@ -63886,7 +74444,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4505376344086021, + "max": 0.4506144393241167 + }, "related_data": {} } } @@ -63909,7 +74470,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4506144393241167, + "max": 0.4506912442396313 + }, "related_data": {} } } @@ -63920,45 +74484,38 @@ { "即将完成历史使命:Kubenet": { "data": { - "uuid": "云原生-5-1655", + "uuid": "云原生-5-1657", "seg": [ [ [ - "历史使命" + "历史使命", + "即将完成" ] ], [ [ - "ku", - "ben", - "et" + "kubenet" ] ] ], - "level": "1", - "related_data": { - "blog": { - "data_id": [ - "84372074", - "101028946", - "83692428", - "115208544", - "114674684" - ] - } - } + "level": { + "min": 0.4506912442396313, + "max": 0.4507296466973886 + }, + "related_data": {} } } }, { "网络生态第一步:CNI": { "data": { - "uuid": "云原生-5-1656", + "uuid": "云原生-5-1658", "seg": [ [ [ "网络", - "生态" + "生态", + "网络生态" ] ], [ @@ -63967,12 +74524,15 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4507296466973886, + "max": 0.4507680491551459 + }, "related_data": { "blog": { "data_id": [ - "109057691", - "80408099" + "109057691@CNCF@云原生", + "80408099@kubernetes@云原生" ] } } @@ -64000,7 +74560,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4506912442396313, + "max": 0.4507680491551459 + }, "related_data": {} } } @@ -64011,7 +74574,7 @@ { "Kubernetes Service详解": { "data": { - "uuid": "云原生-5-1657", + "uuid": "云原生-5-1659", "seg": [ [ [ @@ -64021,7 +74584,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4507680491551459, + "max": 0.4507808499743983 + }, "related_data": {} } } @@ -64029,7 +74595,7 @@ { "Service的三个port": { "data": { - "uuid": "云原生-5-1658", + "uuid": "云原生-5-1660", "seg": [ [ [ @@ -64038,7 +74604,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4507808499743983, + "max": 0.45079365079365075 + }, "related_data": {} } } @@ -64046,7 +74615,7 @@ { "你的服务适合哪种发布形式": { "data": { - "uuid": "云原生-5-1659", + "uuid": "云原生-5-1661", "seg": [ [ [ @@ -64057,7 +74626,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45079365079365075, + "max": 0.4508064516129032 + }, "related_data": {} } } @@ -64065,7 +74637,7 @@ { "Kubernetes Service发现": { "data": { - "uuid": "云原生-5-1660", + "uuid": "云原生-5-1662", "seg": [ [ [ @@ -64074,7 +74646,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4508064516129032, + "max": 0.45081925243215565 + }, "related_data": {} } } @@ -64082,7 +74657,7 @@ { "特殊的无头Service": { "data": { - "uuid": "云原生-5-1661", + "uuid": "云原生-5-1663", "seg": [ [ [ @@ -64091,7 +74666,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45081925243215565, + "max": 0.45083205325140807 + }, "related_data": {} } } @@ -64099,7 +74677,7 @@ { "怎么访问本地服务": { "data": { - "uuid": "云原生-5-1662", + "uuid": "云原生-5-1664", "seg": [ [ [ @@ -64108,7 +74686,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45083205325140807, + "max": 0.4508448540706605 + }, "related_data": {} } } @@ -64126,11 +74707,15 @@ [ "集群", "访问", - "服务" + "服务", + "集群内" ] ] ], - "level": "2", + "level": { + "min": 0.4507680491551459, + "max": 0.4508448540706605 + }, "related_data": {} } } @@ -64141,7 +74726,7 @@ { "Kubernetes Ingress": { "data": { - "uuid": "云原生-5-1663", + "uuid": "云原生-5-1665", "seg": [ [ [ @@ -64150,7 +74735,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4508448540706605, + "max": 0.4509216589861751 + }, "related_data": {} } } @@ -64172,7 +74760,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4508448540706605, + "max": 0.4509216589861751 + }, "related_data": {} } } @@ -64183,17 +74774,21 @@ { "DNS服务基本框架": { "data": { - "uuid": "云原生-5-1664", + "uuid": "云原生-5-1666", "seg": [ [ [ "dns", "服务", - "框架" + "框架", + "基本框架" ] ] ], - "level": "2", + "level": { + "min": 0.4509216589861751, + "max": 0.45094726062467994 + }, "related_data": {} } } @@ -64201,16 +74796,20 @@ { "域名解析基本原理": { "data": { - "uuid": "云原生-5-1665", + "uuid": "云原生-5-1667", "seg": [ [ [ "域名解析", - "基本原理" + "基本原理", + "域名解析基本原理" ] ] ], - "level": "2", + "level": { + "min": 0.45094726062467994, + "max": 0.45097286226318484 + }, "related_data": {} } } @@ -64218,7 +74817,7 @@ { "调试DNS": { "data": { - "uuid": "云原生-5-1666", + "uuid": "云原生-5-1668", "seg": [ [ [ @@ -64227,7 +74826,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45097286226318484, + "max": 0.4509984639016897 + }, "related_data": {} } } @@ -64249,7 +74851,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4509216589861751, + "max": 0.4509984639016897 + }, "related_data": {} } } @@ -64260,17 +74865,21 @@ { "网络策略应用举例": { "data": { - "uuid": "云原生-5-1667", + "uuid": "云原生-5-1669", "seg": [ [ [ "网络", "策略", - "举例" + "举例", + "网络策略" ] ] ], - "level": "1", + "level": { + "min": 0.4509984639016897, + "max": 0.4510752688172043 + }, "related_data": {} } } @@ -64283,7 +74892,8 @@ [ "kubernetes", "网络", - "策略" + "策略", + "网络策略" ] ], [ @@ -64292,7 +74902,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4509984639016897, + "max": 0.4510752688172043 + }, "related_data": {} } } @@ -64303,7 +74916,7 @@ { "IP转发和桥接": { "data": { - "uuid": "云原生-5-1668", + "uuid": "云原生-5-1670", "seg": [ [ [ @@ -64315,7 +74928,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4510752688172043, + "max": 0.4510906298003072 + }, "related_data": {} } } @@ -64323,7 +74939,7 @@ { "Pod CIDR冲突": { "data": { - "uuid": "云原生-5-1669", + "uuid": "云原生-5-1671", "seg": [ [ [ @@ -64333,7 +74949,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4510906298003072, + "max": 0.4511059907834101 + }, "related_data": {} } } @@ -64341,7 +74960,7 @@ { "hairpin": { "data": { - "uuid": "云原生-5-1670", + "uuid": "云原生-5-1672", "seg": [ [ [ @@ -64349,7 +74968,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4511059907834101, + "max": 0.451121351766513 + }, "related_data": {} } } @@ -64357,7 +74979,7 @@ { "查看Pod IP地址": { "data": { - "uuid": "云原生-5-1671", + "uuid": "云原生-5-1673", "seg": [ [ [ @@ -64367,7 +74989,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.451121351766513, + "max": 0.451136712749616 + }, "related_data": {} } } @@ -64375,7 +75000,7 @@ { "故障排查工具": { "data": { - "uuid": "云原生-5-1672", + "uuid": "云原生-5-1674", "seg": [ [ [ @@ -64385,7 +75010,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.451136712749616, + "max": 0.4511520737327189 + }, "related_data": {} } } @@ -64405,11 +75033,16 @@ "kubernetes", "网络故障", "定位", - "指南" + "指南", + "网络故障定位", + "定位指南" ] ] ], - "level": "2", + "level": { + "min": 0.4510752688172043, + "max": 0.4511520737327189 + }, "related_data": {} } } @@ -64420,7 +75053,7 @@ { "找个合理的理由打破巨石应用": { "data": { - "uuid": "云原生-5-1673", + "uuid": "云原生-5-1675", "seg": [ [ [ @@ -64430,7 +75063,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4511520737327189, + "max": 0.4511616743471582 + }, "related_data": {} } } @@ -64438,7 +75074,7 @@ { "先解耦简单的服务": { "data": { - "uuid": "云原生-5-1674", + "uuid": "云原生-5-1676", "seg": [ [ [ @@ -64448,7 +75084,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4511616743471582, + "max": 0.45117127496159753 + }, "related_data": {} } } @@ -64456,7 +75095,7 @@ { "学会小规模的运维": { "data": { - "uuid": "云原生-5-1675", + "uuid": "云原生-5-1677", "seg": [ [ [ @@ -64466,11 +75105,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45117127496159753, + "max": 0.45118087557603687 + }, "related_data": { "blog": { "data_id": [ - "104311893" + "104311893@docker@云原生" ] } } @@ -64480,17 +75122,21 @@ { "使用防损层模式": { "data": { - "uuid": "云原生-5-1676", + "uuid": "云原生-5-1678", "seg": [ [ [ "防损", "层", - "模式" + "模式", + "层模式" ] ] ], - "level": "2", + "level": { + "min": 0.45118087557603687, + "max": 0.45119047619047614 + }, "related_data": {} } } @@ -64498,7 +75144,7 @@ { "使用刀砍模式": { "data": { - "uuid": "云原生-5-1677", + "uuid": "云原生-5-1679", "seg": [ [ [ @@ -64508,7 +75154,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45119047619047614, + "max": 0.4512000768049155 + }, "related_data": {} } } @@ -64516,7 +75165,7 @@ { "准备一个数据迁移策略": { "data": { - "uuid": "云原生-5-1678", + "uuid": "云原生-5-1680", "seg": [ [ [ @@ -64526,7 +75175,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4512000768049155, + "max": 0.4512096774193548 + }, "related_data": {} } } @@ -64534,16 +75186,20 @@ { "重写所有模板代码": { "data": { - "uuid": "云原生-5-1679", + "uuid": "云原生-5-1681", "seg": [ [ [ "重写", - "模板" + "模板", + "模板代码" ] ] ], - "level": "1", + "level": { + "min": 0.4512096774193548, + "max": 0.45121927803379414 + }, "related_data": {} } } @@ -64551,7 +75207,7 @@ { "淘汰老代码": { "data": { - "uuid": "云原生-5-1680", + "uuid": "云原生-5-1682", "seg": [ [ [ @@ -64560,7 +75216,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45121927803379414, + "max": 0.45122887864823347 + }, "related_data": {} } } @@ -64573,11 +75232,15 @@ [ "迈向", "云", - "原生" + "原生", + "云原生" ] ] ], - "level": "2", + "level": { + "min": 0.4511520737327189, + "max": 0.45122887864823347 + }, "related_data": {} } } @@ -64588,7 +75251,7 @@ { "用重试来解决瞬时故障": { "data": { - "uuid": "云原生-5-1681", + "uuid": "云原生-5-1683", "seg": [ [ [ @@ -64598,7 +75261,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45122887864823347, + "max": 0.4512384792626728 + }, "related_data": {} } } @@ -64606,7 +75272,7 @@ { "使用有限次的重试": { "data": { - "uuid": "云原生-5-1682", + "uuid": "云原生-5-1684", "seg": [ [ [ @@ -64615,7 +75281,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4512384792626728, + "max": 0.45124807987711213 + }, "related_data": {} } } @@ -64623,7 +75292,7 @@ { "用断路器来处理非瞬时故障": { "data": { - "uuid": "云原生-5-1683", + "uuid": "云原生-5-1685", "seg": [ [ [ @@ -64633,7 +75302,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45124807987711213, + "max": 0.45125768049155146 + }, "related_data": {} } } @@ -64641,7 +75313,7 @@ { "优雅地降级": { "data": { - "uuid": "云原生-5-1684", + "uuid": "云原生-5-1686", "seg": [ [ [ @@ -64650,7 +75322,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45125768049155146, + "max": 0.4512672811059908 + }, "related_data": {} } } @@ -64658,7 +75333,7 @@ { "使用隔离模式": { "data": { - "uuid": "云原生-5-1685", + "uuid": "云原生-5-1687", "seg": [ [ [ @@ -64667,7 +75342,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4512672811059908, + "max": 0.45127688172043007 + }, "related_data": {} } } @@ -64675,7 +75353,7 @@ { "实现健康及就绪检查": { "data": { - "uuid": "云原生-5-1686", + "uuid": "云原生-5-1688", "seg": [ [ [ @@ -64687,7 +75365,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45127688172043007, + "max": 0.4512864823348694 + }, "related_data": {} } } @@ -64695,7 +75376,7 @@ { "为容器设定CPU和内存限制": { "data": { - "uuid": "云原生-5-1687", + "uuid": "云原生-5-1689", "seg": [ [ [ @@ -64708,7 +75389,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4512864823348694, + "max": 0.45129608294930873 + }, "related_data": {} } } @@ -64716,7 +75400,7 @@ { "实现限速和限流": { "data": { - "uuid": "云原生-5-1688", + "uuid": "云原生-5-1690", "seg": [ [ [ @@ -64727,7 +75411,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45129608294930873, + "max": 0.45130568356374806 + }, "related_data": {} } } @@ -64743,7 +75430,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45122887864823347, + "max": 0.45130568356374806 + }, "related_data": {} } } @@ -64754,7 +75444,7 @@ { "安全性需求同其他需求一样重要": { "data": { - "uuid": "云原生-5-1689", + "uuid": "云原生-5-1691", "seg": [ [ [ @@ -64763,7 +75453,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45130568356374806, + "max": 0.4513152841781874 + }, "related_data": {} } } @@ -64771,16 +75464,20 @@ { "在设计时就考虑安全性": { "data": { - "uuid": "云原生-5-1690", + "uuid": "云原生-5-1692", "seg": [ [ [ "设计", - "安全性" + "安全性", + "就考虑" ] ] ], - "level": "2", + "level": { + "min": 0.4513152841781874, + "max": 0.4513248847926267 + }, "related_data": {} } } @@ -64788,7 +75485,7 @@ { "授予最小访问权限": { "data": { - "uuid": "云原生-5-1691", + "uuid": "云原生-5-1693", "seg": [ [ [ @@ -64799,7 +75496,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4513248847926267, + "max": 0.45133448540706606 + }, "related_data": {} } } @@ -64807,7 +75507,7 @@ { "安全地存储所有密钥": { "data": { - "uuid": "云原生-5-1692", + "uuid": "云原生-5-1694", "seg": [ [ [ @@ -64816,7 +75516,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45133448540706606, + "max": 0.45134408602150533 + }, "related_data": {} } } @@ -64824,16 +75527,20 @@ { "模糊化数据": { "data": { - "uuid": "云原生-5-1693", + "uuid": "云原生-5-1695", "seg": [ [ [ "模糊化", - "数据" + "数据", + "模糊化数据" ] ] ], - "level": "2", + "level": { + "min": 0.45134408602150533, + "max": 0.45135368663594466 + }, "related_data": {} } } @@ -64841,16 +75548,20 @@ { "传输数据加密": { "data": { - "uuid": "云原生-5-1694", + "uuid": "云原生-5-1696", "seg": [ [ [ "传输数据", - "加密" + "加密", + "传输数据加密" ] ] ], - "level": "1", + "level": { + "min": 0.45135368663594466, + "max": 0.451363287250384 + }, "related_data": {} } } @@ -64858,7 +75569,7 @@ { "使用联合身份管理": { "data": { - "uuid": "云原生-5-1695", + "uuid": "云原生-5-1697", "seg": [ [ [ @@ -64868,7 +75579,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.451363287250384, + "max": 0.4513728878648233 + }, "related_data": {} } } @@ -64876,7 +75590,7 @@ { "Kubernetes pod的隔离": { "data": { - "uuid": "云原生-5-1696", + "uuid": "云原生-5-1698", "seg": [ [ [ @@ -64886,7 +75600,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4513728878648233, + "max": 0.45138248847926266 + }, "related_data": {} } } @@ -64902,7 +75619,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45130568356374806, + "max": 0.45138248847926266 + }, "related_data": {} } } @@ -64913,7 +75633,7 @@ { "使用托管数据库和数据分析服务": { "data": { - "uuid": "云原生-5-1697", + "uuid": "云原生-5-1699", "seg": [ [ [ @@ -64926,7 +75646,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45138248847926266, + "max": 0.451392089093702 + }, "related_data": {} } } @@ -64934,7 +75657,7 @@ { "使用符合数据需求的存储": { "data": { - "uuid": "云原生-5-1698", + "uuid": "云原生-5-1700", "seg": [ [ [ @@ -64945,7 +75668,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.451392089093702, + "max": 0.4514016897081413 + }, "related_data": {} } } @@ -64953,7 +75679,7 @@ { "将数据保存在多个地域或可用区中": { "data": { - "uuid": "云原生-5-1699", + "uuid": "云原生-5-1701", "seg": [ [ [ @@ -64961,11 +75687,15 @@ "保存", "地域", "可用", - "区" + "区", + "将数据" ] ] ], - "level": "2", + "level": { + "min": 0.4514016897081413, + "max": 0.45141129032258065 + }, "related_data": {} } } @@ -64973,12 +75703,13 @@ { "使用数据分区和复制以提高扩展性": { "data": { - "uuid": "云原生-5-1700", + "uuid": "云原生-5-1702", "seg": [ [ [ "数据", - "分区" + "分区", + "数据分区" ], [ "复制", @@ -64987,7 +75718,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45141129032258065, + "max": 0.45142089093702 + }, "related_data": {} } } @@ -64995,7 +75729,7 @@ { "避免过度获取及频繁的I/O操作": { "data": { - "uuid": "云原生-5-1701", + "uuid": "云原生-5-1703", "seg": [ [ [ @@ -65010,7 +75744,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45142089093702, + "max": 0.45143049155145926 + }, "related_data": {} } } @@ -65018,7 +75755,7 @@ { "不要把业务逻辑放在数据库中执行": { "data": { - "uuid": "云原生-5-1702", + "uuid": "云原生-5-1704", "seg": [ [ [ @@ -65026,11 +75763,15 @@ "逻辑", "放在", "数据库", - "执行" + "执行", + "业务逻辑" ] ] ], - "level": "1", + "level": { + "min": 0.45143049155145926, + "max": 0.4514400921658986 + }, "related_data": {} } } @@ -65038,18 +75779,22 @@ { "使用类生产环境数据来测试": { "data": { - "uuid": "云原生-5-1703", + "uuid": "云原生-5-1705", "seg": [ [ [ "类", "生产", "环境", - "数据" + "数据", + "环境数据" ] ] ], - "level": "2", + "level": { + "min": 0.4514400921658986, + "max": 0.4514496927803379 + }, "related_data": {} } } @@ -65057,7 +75802,7 @@ { "处理瞬时故障": { "data": { - "uuid": "云原生-5-1704", + "uuid": "云原生-5-1706", "seg": [ [ [ @@ -65066,7 +75811,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4514496927803379, + "max": 0.45145929339477725 + }, "related_data": {} } } @@ -65081,7 +75829,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45138248847926266, + "max": 0.45145929339477725 + }, "related_data": {} } } @@ -65092,7 +75843,7 @@ { "设计可扩展的无状态服务": { "data": { - "uuid": "云原生-5-1705", + "uuid": "云原生-5-1707", "seg": [ [ [ @@ -65103,7 +75854,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45145929339477725, + "max": 0.4514784946236559 + }, "related_data": {} } } @@ -65111,7 +75865,7 @@ { "使用平台的自动伸缩功能": { "data": { - "uuid": "云原生-5-1706", + "uuid": "云原生-5-1708", "seg": [ [ [ @@ -65122,7 +75876,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4514784946236559, + "max": 0.4514976958525345 + }, "related_data": {} } } @@ -65130,7 +75887,7 @@ { "使用缓存": { "data": { - "uuid": "云原生-5-1707", + "uuid": "云原生-5-1709", "seg": [ [ [ @@ -65138,7 +75895,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4514976958525345, + "max": 0.4515168970814132 + }, "related_data": {} } } @@ -65146,7 +75906,7 @@ { "用分区来实现超出服务限制的扩容": { "data": { - "uuid": "云原生-5-1708", + "uuid": "云原生-5-1710", "seg": [ [ [ @@ -65157,11 +75917,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4515168970814132, + "max": 0.45153609831029184 + }, "related_data": { "blog": { "data_id": [ - "114128565" + "114128565@运维@云原生" ] } } @@ -65181,7 +75944,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45145929339477725, + "max": 0.45153609831029184 + }, "related_data": {} } } @@ -65192,7 +75958,7 @@ { "部署和发布是两项独立的活动": { "data": { - "uuid": "云原生-5-1709", + "uuid": "云原生-5-1711", "seg": [ [ [ @@ -65205,7 +75971,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45153609831029184, + "max": 0.4515424987199181 + }, "related_data": {} } } @@ -65213,7 +75982,7 @@ { "部署的内容要尽量小": { "data": { - "uuid": "云原生-5-1710", + "uuid": "云原生-5-1712", "seg": [ [ [ @@ -65222,7 +75991,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4515424987199181, + "max": 0.45154889912954427 + }, "related_data": {} } } @@ -65230,7 +76002,7 @@ { "组件层级的CI/CD定义": { "data": { - "uuid": "云原生-5-1711", + "uuid": "云原生-5-1713", "seg": [ [ [ @@ -65238,11 +76010,15 @@ "层级", "ci", "cd", - "定义" + "定义", + "组件层级" ] ] ], - "level": "2", + "level": { + "min": 0.45154889912954427, + "max": 0.4515552995391705 + }, "related_data": {} } } @@ -65250,7 +76026,7 @@ { "应用部署的一致性": { "data": { - "uuid": "云原生-5-1712", + "uuid": "云原生-5-1714", "seg": [ [ [ @@ -65259,7 +76035,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4515552995391705, + "max": 0.4515616999487967 + }, "related_data": {} } } @@ -65267,7 +76046,7 @@ { "采用零宕机发布": { "data": { - "uuid": "云原生-5-1713", + "uuid": "云原生-5-1715", "seg": [ [ [ @@ -65277,7 +76056,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4515616999487967, + "max": 0.45156810035842293 + }, "related_data": {} } } @@ -65285,17 +76067,21 @@ { "不要变更部署后的架构": { "data": { - "uuid": "云原生-5-1714", + "uuid": "云原生-5-1716", "seg": [ [ [ "变更", "部署", - "架构" + "架构", + "不要变更" ] ] ], - "level": "2", + "level": { + "min": 0.45156810035842293, + "max": 0.45157450076804917 + }, "related_data": {} } } @@ -65303,17 +76089,21 @@ { "使用容器化构建": { "data": { - "uuid": "云原生-5-1715", + "uuid": "云原生-5-1717", "seg": [ [ [ "容器", "化", - "构建" + "构建", + "容器化" ] ] ], - "level": "2", + "level": { + "min": 0.45157450076804917, + "max": 0.45158090117767535 + }, "related_data": {} } } @@ -65321,7 +76111,7 @@ { "用代码来描述基础设施": { "data": { - "uuid": "云原生-5-1716", + "uuid": "云原生-5-1718", "seg": [ [ [ @@ -65330,7 +76120,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45158090117767535, + "max": 0.4515873015873016 + }, "related_data": {} } } @@ -65338,7 +76131,7 @@ { "使用命名空间来组织Kubernetes中的服务": { "data": { - "uuid": "云原生-5-1717", + "uuid": "云原生-5-1719", "seg": [ [ [ @@ -65346,11 +76139,15 @@ "空间", "组织", "kubernetes", - "服务" + "服务", + "命名空间" ] ] ], - "level": "2", + "level": { + "min": 0.4515873015873016, + "max": 0.4515937019969278 + }, "related_data": {} } } @@ -65358,7 +76155,7 @@ { "环境间的隔离": { "data": { - "uuid": "云原生-5-1718", + "uuid": "云原生-5-1720", "seg": [ [ [ @@ -65367,7 +76164,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4515937019969278, + "max": 0.451600102406554 + }, "related_data": {} } } @@ -65375,16 +76175,20 @@ { "分隔函数源代码": { "data": { - "uuid": "云原生-5-1719", + "uuid": "云原生-5-1721", "seg": [ [ [ "分隔", - "函数" + "函数", + "函数源代码" ] ] ], - "level": "2", + "level": { + "min": 0.451600102406554, + "max": 0.4516065028161802 + }, "related_data": {} } } @@ -65392,19 +76196,23 @@ { "关联代码提交和部署": { "data": { - "uuid": "云原生-5-1720", + "uuid": "云原生-5-1722", "seg": [ [ [ "关联", - "提交" + "提交", + "关联代码" ], [ "部署" ] ] ], - "level": "2", + "level": { + "min": 0.4516065028161802, + "max": 0.45161290322580644 + }, "related_data": {} } } @@ -65419,11 +76227,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45153609831029184, + "max": 0.45161290322580644 + }, "related_data": { "blog": { "data_id": [ - "79878834" + "79878834@docker@云原生" ] } } @@ -65444,14 +76255,18 @@ [ "kubernetes", "网络", - "原理" + "原理", + "网络原理" ], [ "实践" ] ] ], - "level": "2", + "level": { + "min": 0.4504608294930875, + "max": 0.45161290322580644 + }, "related_data": {} } } @@ -65465,7 +76280,7 @@ { "Ingress Controller的通用框架": { "data": { - "uuid": "云原生-5-1721", + "uuid": "云原生-5-1723", "seg": [ [ [ @@ -65476,11 +76291,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45161290322580644, + "max": 0.4518049155145929 + }, "related_data": { "blog": { "data_id": [ - "82940598" + "82940598@kubernetes@云原生" ] } } @@ -65490,7 +76308,7 @@ { "Nginx Ingress Controller详解": { "data": { - "uuid": "云原生-5-1722", + "uuid": "云原生-5-1724", "seg": [ [ [ @@ -65501,12 +76319,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4518049155145929, + "max": 0.4519969278033794 + }, "related_data": { "blog": { "data_id": [ - "82791101", - "111247322" + "82791101@dashboard@云原生", + "111247322@云原生@云原生" ] } } @@ -65521,7 +76342,8 @@ [ "kubernetes", "极客", - "日常" + "日常", + "极客们" ] ], [ @@ -65532,11 +76354,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45161290322580644, + "max": 0.4519969278033794 + }, "related_data": { "blog": { "data_id": [ - "117560597" + "117560597@阿里云@云原生" ] } } @@ -65549,7 +76374,7 @@ { "Kube-dns的工作原理": { "data": { - "uuid": "云原生-5-1723", + "uuid": "云原生-5-1725", "seg": [ [ [ @@ -65560,7 +76385,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4519969278033794, + "max": 0.4521249359959037 + }, "related_data": {} } } @@ -65568,7 +76396,7 @@ { "上位的CoreDNS": { "data": { - "uuid": "云原生-5-1724", + "uuid": "云原生-5-1726", "seg": [ [ [ @@ -65577,7 +76405,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4521249359959037, + "max": 0.45225294418842804 + }, "related_data": {} } } @@ -65585,7 +76416,7 @@ { "Kube-dns VS. CoreDNS": { "data": { - "uuid": "云原生-5-1725", + "uuid": "云原生-5-1727", "seg": [ [ [ @@ -65596,18 +76427,21 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45225294418842804, + "max": 0.45238095238095233 + }, "related_data": { "blog": { "data_id": [ - "78755162", - "81108939", - "76576558", - "38017027", - "114751137", - "83350000", - "107704114", - "88956043" + "78755162@服务发现@云原生", + "81108939@dashboard@云原生", + "76576558@服务发现@云原生", + "38017027@分布式@云原生", + "114751137@服务发现@云原生", + "83350000@服务发现@云原生", + "107704114@oauth@云原生", + "88956043@控制器@云原生" ] } } @@ -65633,7 +76467,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4519969278033794, + "max": 0.45238095238095233 + }, "related_data": {} } } @@ -65644,7 +76481,7 @@ { "部署一个带Calico的Kubernetes集群": { "data": { - "uuid": "云原生-5-1726", + "uuid": "云原生-5-1728", "seg": [ [ [ @@ -65656,15 +76493,18 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45238095238095233, + "max": 0.45257296466973884 + }, "related_data": { "blog": { "data_id": [ - "78883847", - "50620187", - "84981945", - "88885539", - "116955197" + "78883847@kubernetes@云原生", + "50620187@vagrant@云原生", + "84981945@kubernetes@云原生", + "88885539@kubernetes@云原生", + "116955197@etcd@云原生" ] } } @@ -65674,17 +76514,21 @@ { "测试Calico网络策略": { "data": { - "uuid": "云原生-5-1727", + "uuid": "云原生-5-1729", "seg": [ [ [ "calico", "网络", - "策略" + "策略", + "网络策略" ] ] ], - "level": "1", + "level": { + "min": 0.45257296466973884, + "max": 0.4527649769585253 + }, "related_data": {} } } @@ -65704,11 +76548,15 @@ "提供", "kubernetes", "网络", - "策略" + "策略", + "网络策略" ] ] ], - "level": "1", + "level": { + "min": 0.45238095238095233, + "max": 0.4527649769585253 + }, "related_data": {} } } @@ -65730,7 +76578,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45161290322580644, + "max": 0.4527649769585253 + }, "related_data": {} } } @@ -65753,11 +76604,15 @@ [ "docker", "原生", - "网络" + "网络", + "原生网络" ] ] ], - "level": "1", + "level": { + "min": 0.4527649769585253, + "max": 0.4529295589203423 + }, "related_data": {} } } @@ -65768,7 +76623,7 @@ { "CNI的工作原理": { "data": { - "uuid": "云原生-5-1728", + "uuid": "云原生-5-1730", "seg": [ [ [ @@ -65778,7 +76633,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4529295589203423, + "max": 0.45309414088215927 + }, "related_data": {} } } @@ -65801,7 +76659,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4529295589203423, + "max": 0.45309414088215927 + }, "related_data": {} } } @@ -65812,7 +76673,7 @@ { "flannel简介": { "data": { - "uuid": "云原生-5-1729", + "uuid": "云原生-5-1731", "seg": [ [ [ @@ -65821,7 +76682,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45309414088215927, + "max": 0.4531352863726135 + }, "related_data": {} } } @@ -65829,7 +76693,7 @@ { "flannel安装配置": { "data": { - "uuid": "云原生-5-1730", + "uuid": "云原生-5-1732", "seg": [ [ [ @@ -65839,11 +76703,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4531352863726135, + "max": 0.4531764318630678 + }, "related_data": { "blog": { "data_id": [ - "70174498" + "70174498@dashboard@云原生" ] } } @@ -65853,7 +76720,7 @@ { "flannel backend详解": { "data": { - "uuid": "云原生-5-1731", + "uuid": "云原生-5-1733", "seg": [ [ [ @@ -65863,11 +76730,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4531764318630678, + "max": 0.453217577353522 + }, "related_data": { "blog": { "data_id": [ - "115296317" + "115296317@分布式@云原生" ] } } @@ -65877,7 +76747,7 @@ { "flannel与etcd": { "data": { - "uuid": "云原生-5-1732", + "uuid": "云原生-5-1734", "seg": [ [ [ @@ -65888,17 +76758,20 @@ ] ] ], - "level": "1", + "level": { + "min": 0.453217577353522, + "max": 0.4532587228439763 + }, "related_data": { "blog": { "data_id": [ - "52440312", - "79121932", - "52059161", - "105298366", - "90235873", - "94564381", - "78783289" + "52440312@etcd@云原生", + "79121932@etcd@云原生", + "52059161@etcd@云原生", + "105298366@kubernetes@云原生", + "90235873@etcd@云原生", + "78783289@etcd@云原生", + "94564381@etcd@云原生" ] } } @@ -65915,11 +76788,16 @@ "网络", "插件", "鼻祖", - "flannel" + "flannel", + "网络插件", + "插件鼻祖" ] ] ], - "level": "1", + "level": { + "min": 0.45309414088215927, + "max": 0.4532587228439763 + }, "related_data": {} } } @@ -65930,7 +76808,7 @@ { "Calico简介": { "data": { - "uuid": "云原生-5-1733", + "uuid": "云原生-5-1735", "seg": [ [ [ @@ -65939,11 +76817,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4532587228439763, + "max": 0.4532916392363397 + }, "related_data": { "blog": { "data_id": [ - "79407483" + "79407483@etcd@云原生" ] } } @@ -65953,17 +76834,21 @@ { "Calico的隧道模式": { "data": { - "uuid": "云原生-5-1734", + "uuid": "云原生-5-1736", "seg": [ [ [ "calico", "隧道", - "模式" + "模式", + "隧道模式" ] ] ], - "level": "1", + "level": { + "min": 0.4532916392363397, + "max": 0.45332455562870305 + }, "related_data": {} } } @@ -65971,7 +76856,7 @@ { "安装Calico": { "data": { - "uuid": "云原生-5-1735", + "uuid": "云原生-5-1737", "seg": [ [ [ @@ -65980,7 +76865,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45332455562870305, + "max": 0.45335747202106647 + }, "related_data": {} } } @@ -65988,17 +76876,21 @@ { "Calico报文路径": { "data": { - "uuid": "云原生-5-1736", + "uuid": "云原生-5-1738", "seg": [ [ [ "calico", "报文", - "路径" + "路径", + "报文路径" ] ] ], - "level": "1", + "level": { + "min": 0.45335747202106647, + "max": 0.4533903884134298 + }, "related_data": {} } } @@ -66006,7 +76898,7 @@ { "Calico使用指南": { "data": { - "uuid": "云原生-5-1737", + "uuid": "云原生-5-1739", "seg": [ [ [ @@ -66015,7 +76907,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4533903884134298, + "max": 0.45342330480579324 + }, "related_data": {} } } @@ -66028,7 +76923,8 @@ [ "全能", "网络", - "插件" + "插件", + "网络插件" ] ], [ @@ -66037,7 +76933,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4532587228439763, + "max": 0.45342330480579324 + }, "related_data": {} } } @@ -66048,7 +76947,7 @@ { "Weave简介": { "data": { - "uuid": "云原生-5-1738", + "uuid": "云原生-5-1740", "seg": [ [ [ @@ -66057,7 +76956,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45342330480579324, + "max": 0.45345622119815665 + }, "related_data": {} } } @@ -66065,7 +76967,7 @@ { "Weave实现原理": { "data": { - "uuid": "云原生-5-1739", + "uuid": "云原生-5-1741", "seg": [ [ [ @@ -66074,7 +76976,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45345622119815665, + "max": 0.45348913759052006 + }, "related_data": {} } } @@ -66082,7 +76987,7 @@ { "Weave安装": { "data": { - "uuid": "云原生-5-1740", + "uuid": "云原生-5-1742", "seg": [ [ [ @@ -66091,7 +76996,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45348913759052006, + "max": 0.4535220539828834 + }, "related_data": {} } } @@ -66099,17 +77007,21 @@ { "Weave网络通信模型": { "data": { - "uuid": "云原生-5-1741", + "uuid": "云原生-5-1743", "seg": [ [ [ "weave", "网络通信", - "模型" + "模型", + "网络通信模型" ] ] ], - "level": "1", + "level": { + "min": 0.4535220539828834, + "max": 0.45355497037524684 + }, "related_data": {} } } @@ -66117,7 +77029,7 @@ { "Weave的应用示例": { "data": { - "uuid": "云原生-5-1742", + "uuid": "云原生-5-1744", "seg": [ [ [ @@ -66126,7 +77038,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45355497037524684, + "max": 0.45358788676761025 + }, "related_data": {} } } @@ -66146,11 +77061,16 @@ "数据", "加密", "网络", - "插件" + "插件", + "数据加密", + "网络插件" ] ] ], - "level": "1", + "level": { + "min": 0.45342330480579324, + "max": 0.45358788676761025 + }, "related_data": {} } } @@ -66161,7 +77081,7 @@ { "以API为中心的微服务安全": { "data": { - "uuid": "云原生-5-1743", + "uuid": "云原生-5-1745", "seg": [ [ [ @@ -66172,7 +77092,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45358788676761025, + "max": 0.4536701777485187 + }, "related_data": {} } } @@ -66180,7 +77103,7 @@ { "BPF优化的数据平面性能": { "data": { - "uuid": "云原生-5-1744", + "uuid": "云原生-5-1746", "seg": [ [ [ @@ -66188,11 +77111,16 @@ "优化", "数据", "平面", - "性能" + "性能", + "数据平面", + "平面性能" ] ] ], - "level": "2", + "level": { + "min": 0.4536701777485187, + "max": 0.4537524687294272 + }, "related_data": {} } } @@ -66215,7 +77143,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45358788676761025, + "max": 0.4537524687294272 + }, "related_data": {} } } @@ -66226,7 +77157,7 @@ { "CNI-Genie功能速递": { "data": { - "uuid": "云原生-5-1745", + "uuid": "云原生-5-1747", "seg": [ [ [ @@ -66237,11 +77168,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4537524687294272, + "max": 0.4538347597103357 + }, "related_data": { "blog": { "data_id": [ - "109335320" + "109335320@CNCF@云原生" ] } } @@ -66251,7 +77185,7 @@ { "容器多IP": { "data": { - "uuid": "云原生-5-1746", + "uuid": "云原生-5-1748", "seg": [ [ [ @@ -66260,8 +77194,19 @@ ] ] ], - "level": "1", - "related_data": {} + "level": { + "min": 0.4538347597103357, + "max": 0.4539170506912442 + }, + "related_data": { + "blog": { + "data_id": [ + "54142055@容器@云原生", + "112968120@运维@云原生", + "73438093@阿里云@云原生" + ] + } + } } } } @@ -66283,7 +77228,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4537524687294272, + "max": 0.4539170506912442 + }, "related_data": {} } } @@ -66302,11 +77250,16 @@ "kubernetes", "网络", "插件", - "生态" + "生态", + "网络插件", + "插件生态" ] ] ], - "level": "2", + "level": { + "min": 0.4527649769585253, + "max": 0.4539170506912442 + }, "related_data": {} } } @@ -66320,17 +77273,21 @@ { "你真的需要Service Mesh吗": { "data": { - "uuid": "云原生-5-1747", + "uuid": "云原生-5-1749", "seg": [ [ [ "真的", "service", - "mesh" + "mesh", + "真的需要" ] ] ], - "level": "2", + "level": { + "min": 0.4539170506912442, + "max": 0.45396313364055296 + }, "related_data": {} } } @@ -66338,7 +77295,7 @@ { "sidecar模式": { "data": { - "uuid": "云原生-5-1748", + "uuid": "云原生-5-1750", "seg": [ [ [ @@ -66347,7 +77304,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45396313364055296, + "max": 0.4540092165898617 + }, "related_data": {} } } @@ -66355,7 +77315,7 @@ { "Service Mesh与sidecar": { "data": { - "uuid": "云原生-5-1749", + "uuid": "云原生-5-1751", "seg": [ [ [ @@ -66367,7 +77327,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4540092165898617, + "max": 0.4540552995391705 + }, "related_data": {} } } @@ -66375,7 +77338,7 @@ { "Kubernetes Service VS. Service Mesh": { "data": { - "uuid": "云原生-5-1750", + "uuid": "云原生-5-1752", "seg": [ [ [ @@ -66386,7 +77349,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4540552995391705, + "max": 0.45410138248847925 + }, "related_data": {} } } @@ -66394,7 +77360,7 @@ { "Service Mesh典型实现之Linkerd": { "data": { - "uuid": "云原生-5-1751", + "uuid": "云原生-5-1753", "seg": [ [ [ @@ -66405,7 +77371,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45410138248847925, + "max": 0.454147465437788 + }, "related_data": {} } } @@ -66419,7 +77388,8 @@ "微", "服务", "架构", - "地震" + "地震", + "大地震" ] ], [ @@ -66429,7 +77399,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4539170506912442, + "max": 0.454147465437788 + }, "related_data": {} } } @@ -66440,7 +77413,7 @@ { "Istio简介": { "data": { - "uuid": "云原生-5-1752", + "uuid": "云原生-5-1754", "seg": [ [ [ @@ -66449,7 +77422,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.454147465437788, + "max": 0.4542242703533026 + }, "related_data": {} } } @@ -66457,7 +77433,7 @@ { "Istio安装": { "data": { - "uuid": "云原生-5-1753", + "uuid": "云原生-5-1755", "seg": [ [ [ @@ -66466,7 +77442,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4542242703533026, + "max": 0.4543010752688172 + }, "related_data": {} } } @@ -66474,17 +77453,21 @@ { "Istio路由规则的实现": { "data": { - "uuid": "云原生-5-1754", + "uuid": "云原生-5-1756", "seg": [ [ [ "istio", "路由", - "规则" + "规则", + "路由规则" ] ] ], - "level": "2", + "level": { + "min": 0.4543010752688172, + "max": 0.4543778801843318 + }, "related_data": {} } } @@ -66505,11 +77488,15 @@ "微", "服务", "架构", - "潮流" + "潮流", + "架构潮流" ] ] ], - "level": "2", + "level": { + "min": 0.454147465437788, + "max": 0.4543778801843318 + }, "related_data": {} } } @@ -66520,7 +77507,7 @@ { "Init容器": { "data": { - "uuid": "云原生-5-1755", + "uuid": "云原生-5-1757", "seg": [ [ [ @@ -66529,15 +77516,25 @@ ] ] ], - "level": "2", - "related_data": {} + "level": { + "min": 0.4543778801843318, + "max": 0.45442396313364053 + }, + "related_data": { + "blog": { + "data_id": [ + "52105966@mesh@云原生", + "109780505@阿里云@云原生" + ] + } + } } } }, { "sideca注入示例": { "data": { - "uuid": "云原生-5-1756", + "uuid": "云原生-5-1758", "seg": [ [ [ @@ -66547,7 +77544,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45442396313364053, + "max": 0.4544700460829493 + }, "related_data": {} } } @@ -66555,7 +77555,7 @@ { "手工注入sidecar": { "data": { - "uuid": "云原生-5-1757", + "uuid": "云原生-5-1759", "seg": [ [ [ @@ -66565,7 +77565,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4544700460829493, + "max": 0.454516129032258 + }, "related_data": {} } } @@ -66573,7 +77576,7 @@ { "自动注入sidecar": { "data": { - "uuid": "云原生-5-1758", + "uuid": "云原生-5-1760", "seg": [ [ [ @@ -66583,7 +77586,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.454516129032258, + "max": 0.45456221198156677 + }, "related_data": {} } } @@ -66591,7 +77597,7 @@ { "从应用容器到sidecar代理的通信": { "data": { - "uuid": "云原生-5-1759", + "uuid": "云原生-5-1761", "seg": [ [ [ @@ -66602,7 +77608,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45456221198156677, + "max": 0.4546082949308755 + }, "related_data": {} } } @@ -66625,7 +77634,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4543778801843318, + "max": 0.4546082949308755 + }, "related_data": {} } } @@ -66650,7 +77662,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4546082949308755, + "max": 0.4548387096774193 + }, "related_data": {} } } @@ -66665,11 +77680,15 @@ "微", "服务", "istio", - "做" + "做", + "还能" ] ] ], - "level": "2", + "level": { + "min": 0.4548387096774193, + "max": 0.4550691244239631 + }, "related_data": {} } } @@ -66682,7 +77701,8 @@ [ "kubernetes", "网络", - "下半场" + "下半场", + "网络下半场" ] ], [ @@ -66691,7 +77711,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4539170506912442, + "max": 0.4550691244239631 + }, "related_data": {} } } @@ -66705,7 +77728,7 @@ { "分布式系统的误区": { "data": { - "uuid": "云原生-5-1760", + "uuid": "云原生-5-1762", "seg": [ [ [ @@ -66714,11 +77737,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4550691244239631, + "max": 0.4552611367127496 + }, "related_data": { "blog": { "data_id": [ - "79081112" + "79081112@分布式@云原生" ] } } @@ -66728,7 +77754,7 @@ { "CAP定理": { "data": { - "uuid": "云原生-5-1761", + "uuid": "云原生-5-1763", "seg": [ [ [ @@ -66737,7 +77763,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4552611367127496, + "max": 0.45545314900153605 + }, "related_data": {} } } @@ -66752,7 +77781,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4550691244239631, + "max": 0.45545314900153605 + }, "related_data": {} } } @@ -66768,7 +77800,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45545314900153605, + "max": 0.455837173579109 + }, "related_data": {} } } @@ -66789,7 +77824,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.455837173579109, + "max": 0.456221198156682 + }, "related_data": {} } } @@ -66802,11 +77840,15 @@ [ "云", "原生", - "简介" + "简介", + "云原生" ] ] ], - "level": "2", + "level": { + "min": 0.4550691244239631, + "max": 0.456221198156682 + }, "related_data": {} } } @@ -66822,11 +77864,15 @@ [ [ "服务器", - "架构" + "架构", + "服务器架构" ] ] ], - "level": "2", + "level": { + "min": 0.456221198156682, + "max": 0.4565092165898617 + }, "related_data": {} } } @@ -66837,7 +77883,7 @@ { "编写单一用途的函数": { "data": { - "uuid": "云原生-5-1762", + "uuid": "云原生-5-1764", "seg": [ [ [ @@ -66848,7 +77894,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4565092165898617, + "max": 0.4565572196620583 + }, "related_data": {} } } @@ -66856,16 +77905,20 @@ { "避免串联函数": { "data": { - "uuid": "云原生-5-1763", + "uuid": "云原生-5-1765", "seg": [ [ [ "串联", - "函数" + "函数", + "串联函数" ] ] ], - "level": "2", + "level": { + "min": 0.4565572196620583, + "max": 0.45660522273425497 + }, "related_data": {} } } @@ -66873,7 +77926,7 @@ { "函数应保持轻量和简单": { "data": { - "uuid": "云原生-5-1764", + "uuid": "云原生-5-1766", "seg": [ [ [ @@ -66884,7 +77937,10 @@ [] ] ], - "level": "2", + "level": { + "min": 0.45660522273425497, + "max": 0.4566532258064516 + }, "related_data": {} } } @@ -66892,16 +77948,20 @@ { "实现无状态函数": { "data": { - "uuid": "云原生-5-1765", + "uuid": "云原生-5-1767", "seg": [ [ [ "状态", - "函数" + "函数", + "状态函数" ] ] ], - "level": "2", + "level": { + "min": 0.4566532258064516, + "max": 0.4567012288786482 + }, "related_data": {} } } @@ -66909,26 +77969,31 @@ { "分离函数入口和函数的业务逻辑": { "data": { - "uuid": "云原生-5-1766", + "uuid": "云原生-5-1768", "seg": [ [ [ "分离", "函数", - "入口" + "入口", + "函数入口" ], [ "函数", "业务", - "逻辑" + "逻辑", + "业务逻辑" ] ] ], - "level": "2", + "level": { + "min": 0.4567012288786482, + "max": 0.4567492319508448 + }, "related_data": { "blog": { "data_id": [ - "78429783" + "78429783@控制器@云原生" ] } } @@ -66938,7 +78003,7 @@ { "避免长时间运行的函数": { "data": { - "uuid": "云原生-5-1767", + "uuid": "云原生-5-1769", "seg": [ [ [ @@ -66948,7 +78013,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4567492319508448, + "max": 0.4567972350230415 + }, "related_data": {} } } @@ -66964,7 +78032,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4565092165898617, + "max": 0.4567972350230415 + }, "related_data": {} } } @@ -66975,7 +78046,7 @@ { "提升和转变": { "data": { - "uuid": "云原生-5-1768", + "uuid": "云原生-5-1770", "seg": [ [ [ @@ -66984,13 +78055,17 @@ [] ] ], - "level": "2", + "level": { + "min": 0.4567972350230415, + "max": 0.45689324116743474 + }, "related_data": { "blog": { "data_id": [ - "112781029", - "112308224", - "109647796" + "112781029@运维@云原生", + "112781029@云原生@云原生", + "112781029@中间件@云原生", + "112308224@云原生@云原生" ] } } @@ -67000,7 +78075,7 @@ { "应用的现代化改造": { "data": { - "uuid": "云原生-5-1769", + "uuid": "云原生-5-1771", "seg": [ [ [ @@ -67009,7 +78084,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45689324116743474, + "max": 0.45698924731182794 + }, "related_data": {} } } @@ -67017,7 +78095,7 @@ { "应用的优化": { "data": { - "uuid": "云原生-5-1770", + "uuid": "云原生-5-1772", "seg": [ [ [ @@ -67025,7 +78103,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45698924731182794, + "max": 0.4570852534562212 + }, "related_data": {} } } @@ -67038,24 +78119,19 @@ [ "虚拟机", "云", - "原生" + "原生", + "云原生" ] ] ], - "level": "2", + "level": { + "min": 0.4567972350230415, + "max": 0.4570852534562212 + }, "related_data": { "blog": { "data_id": [ - "109583180", - "113740191", - "102937305", - "114854336", - "86555373", - "109353661", - "109405593", - "103066779", - "110244087", - "102328579" + "108971004@云原生@云原生" ] } } @@ -67068,7 +78144,7 @@ { "微服务架构的优势": { "data": { - "uuid": "云原生-5-1771", + "uuid": "云原生-5-1773", "seg": [ [ [ @@ -67079,7 +78155,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4570852534562212, + "max": 0.45722926267281105 + }, "related_data": {} } } @@ -67087,7 +78166,7 @@ { "微服务架构带来的挑战": { "data": { - "uuid": "云原生-5-1772", + "uuid": "云原生-5-1774", "seg": [ [ [ @@ -67099,7 +78178,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45722926267281105, + "max": 0.4573732718894009 + }, "related_data": {} } } @@ -67115,59 +78197,10 @@ ] ] ], - "level": "2", - "related_data": {} - } - } - }, - { - "精益运营": { - "data": { - "uuid": "云原生-4-905", - "seg": [ - [ - [ - "精益", - "运营" - ] - ] - ], - "level": "2", - "related_data": {} - } - } - }, - { - "安全性": { - "data": { - "uuid": "云原生-4-906", - "seg": [ - [ - [ - "安全性" - ] - ] - ], - "level": "2", - "related_data": {} - } - } - }, - { - "可扩展性与成本": { - "data": { - "uuid": "云原生-4-907", - "seg": [ - [ - [ - "可扩展性" - ], - [ - "成本" - ] - ] - ], - "level": "2", + "level": { + "min": 0.4570852534562212, + "max": 0.4573732718894009 + }, "related_data": {} } } @@ -67180,11 +78213,16 @@ [ "云", "原生", - "基础" + "基础", + "云原生", + "原生基础" ] ] ], - "level": "2", + "level": { + "min": 0.456221198156682, + "max": 0.4573732718894009 + }, "related_data": {} } } @@ -67192,36 +78230,147 @@ { "云原生应用的设计": { "children": [ + { + "云原生应用的基础": { + "children": [ + { + "精益运营": { + "data": { + "uuid": "云原生-5-1775", + "seg": [ + [ + [ + "精益", + "运营" + ] + ] + ], + "level": { + "min": 0.4573732718894009, + "max": 0.4574212749615975 + }, + "related_data": {} + } + } + }, + { + "安全性": { + "data": { + "uuid": "云原生-5-1776", + "seg": [ + [ + [ + "安全性" + ] + ] + ], + "level": { + "min": 0.4574212749615975, + "max": 0.45746927803379417 + }, + "related_data": {} + } + } + }, + { + "可扩展性与成本": { + "data": { + "uuid": "云原生-5-1777", + "seg": [ + [ + [ + "可扩展性" + ], + [ + "成本" + ] + ] + ], + "level": { + "min": 0.45746927803379417, + "max": 0.45751728110599077 + }, + "related_data": { + "blog": { + "data_id": [ + "109647796@云原生@云原生" + ] + } + } + } + } + } + ], + "data": { + "uuid": "云原生-4-905", + "seg": [ + [ + [ + "云", + "原生", + "基础", + "云原生" + ] + ] + ], + "level": { + "min": 0.4573732718894009, + "max": 0.45751728110599077 + }, + "related_data": { + "blog": { + "data_id": [ + "109583180@云原生@云原生", + "114648338@云原生@云原生", + "113740191@云原生@云原生", + "102937305@云原生@云原生", + "114854336@云原生@云原生", + "86555373@CNCF@云原生", + "109353661@云原生@云原生", + "109405593@云原生@云原生", + "103066779@云原生@云原生", + "110244087@云原生@云原生" + ] + } + } + } + } + }, { "云原生与传统架构的对比": { "data": { - "uuid": "云原生-4-908", + "uuid": "云原生-4-906", "seg": [ [ [ "云", - "原生" + "原生", + "云原生" ], [ "传统", - "架构" + "架构", + "传统架构" ] ] ], - "level": "2", + "level": { + "min": 0.45751728110599077, + "max": 0.4576612903225806 + }, "related_data": { "blog": { "data_id": [ - "114648338", - "109383789", - "108850155", - "92808106", - "113753494", - "118071077", - "118184997", - "112801972", - "102601776", - "117250483" + "109383789@云原生@云原生", + "108850155@云原生@云原生", + "92808106@云原生@云原生", + "113753494@云原生@云原生", + "118184997@云原生@云原生", + "112801972@云原生@云原生", + "102601776@云原生@云原生", + "117250483@云原生@云原生", + "117324006@云原生@云原生", + "103005203@云原生@云原生" ] } } @@ -67234,7 +78383,7 @@ { "API的前后兼容": { "data": { - "uuid": "云原生-5-1773", + "uuid": "云原生-5-1778", "seg": [ [ [ @@ -67243,13 +78392,16 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4576612903225806, + "max": 0.45773329493087556 + }, "related_data": { "blog": { "data_id": [ - "114534304", - "110429539", - "115869908" + "114534304@云原生@云原生", + "110429539@云原生@云原生", + "115869908@云原生@云原生" ] } } @@ -67259,23 +78411,27 @@ { "语义版本号": { "data": { - "uuid": "云原生-5-1774", + "uuid": "云原生-5-1779", "seg": [ [ [ "语义", - "版本号" + "版本号", + "语义版本号" ] ] ], - "level": "2", + "level": { + "min": 0.45773329493087556, + "max": 0.4578052995391705 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-4-909", + "uuid": "云原生-4-907", "seg": [ [ [ @@ -67287,7 +78443,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4576612903225806, + "max": 0.4578052995391705 + }, "related_data": {} } } @@ -67298,7 +78457,7 @@ { "通信协议": { "data": { - "uuid": "云原生-5-1775", + "uuid": "云原生-5-1780", "seg": [ [ [ @@ -67306,7 +78465,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4578052995391705, + "max": 0.45781558591178406 + }, "related_data": {} } } @@ -67314,16 +78476,20 @@ { "消息协议": { "data": { - "uuid": "云原生-5-1776", + "uuid": "云原生-5-1781", "seg": [ [ [ "消息", - "协议" + "协议", + "消息协议" ] ] ], - "level": "2", + "level": { + "min": 0.45781558591178406, + "max": 0.4578258722843976 + }, "related_data": {} } } @@ -67331,7 +78497,7 @@ { "序列化的考虑因素": { "data": { - "uuid": "云原生-5-1777", + "uuid": "云原生-5-1782", "seg": [ [ [ @@ -67340,7 +78506,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4578258722843976, + "max": 0.45783615865701116 + }, "related_data": {} } } @@ -67348,7 +78517,7 @@ { "幂等性": { "data": { - "uuid": "云原生-5-1778", + "uuid": "云原生-5-1783", "seg": [ [ [ @@ -67357,7 +78526,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45783615865701116, + "max": 0.45784644502962474 + }, "related_data": {} } } @@ -67365,7 +78537,7 @@ { "请求与响应": { "data": { - "uuid": "云原生-5-1779", + "uuid": "云原生-5-1784", "seg": [ [ [], @@ -67374,7 +78546,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45784644502962474, + "max": 0.4578567314022383 + }, "related_data": {} } } @@ -67382,7 +78557,7 @@ { "发布者与订阅者": { "data": { - "uuid": "云原生-5-1780", + "uuid": "云原生-5-1785", "seg": [ [ [ @@ -67393,7 +78568,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4578567314022383, + "max": 0.45786701777485184 + }, "related_data": {} } } @@ -67401,7 +78579,7 @@ { "发布者/订阅者模式与请求/响应模式间的选择": { "data": { - "uuid": "云原生-5-1781", + "uuid": "云原生-5-1786", "seg": [ [ [ @@ -67416,7 +78594,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45786701777485184, + "max": 0.4578773041474654 + }, "related_data": {} } } @@ -67424,7 +78605,7 @@ { "同步与异步": { "data": { - "uuid": "云原生-5-1782", + "uuid": "云原生-5-1787", "seg": [ [ [ @@ -67435,7 +78616,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4578773041474654, + "max": 0.457887590520079 + }, "related_data": {} } } @@ -67443,7 +78627,7 @@ { "设计时考虑前后兼容性": { "data": { - "uuid": "云原生-5-1783", + "uuid": "云原生-5-1788", "seg": [ [ [ @@ -67452,7 +78636,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.457887590520079, + "max": 0.4578978768926925 + }, "related_data": {} } } @@ -67460,7 +78647,7 @@ { "封装好服务避免泄露内部细节": { "data": { - "uuid": "云原生-5-1784", + "uuid": "云原生-5-1789", "seg": [ [ [ @@ -67472,7 +78659,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4578978768926925, + "max": 0.4579081632653061 + }, "related_data": {} } } @@ -67480,7 +78670,7 @@ { "优先考虑异步通信": { "data": { - "uuid": "云原生-5-1785", + "uuid": "云原生-5-1790", "seg": [ [ [ @@ -67490,7 +78680,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4579081632653061, + "max": 0.45791844963791967 + }, "related_data": {} } } @@ -67498,17 +78691,21 @@ { "使用高效的序列化技术": { "data": { - "uuid": "云原生-5-1786", + "uuid": "云原生-5-1791", "seg": [ [ [ "高效", "序列化", - "技术" + "技术", + "序列化技术" ] ] ], - "level": "1", + "level": { + "min": 0.45791844963791967, + "max": 0.45792873601053324 + }, "related_data": {} } } @@ -67516,7 +78713,7 @@ { "用批处理来提高请求处理的效率": { "data": { - "uuid": "云原生-5-1787", + "uuid": "云原生-5-1792", "seg": [ [ [ @@ -67526,7 +78723,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45792873601053324, + "max": 0.45793902238314677 + }, "related_data": {} } } @@ -67534,7 +78734,7 @@ { "拆分大的消息": { "data": { - "uuid": "云原生-5-1788", + "uuid": "云原生-5-1793", "seg": [ [ [ @@ -67543,14 +78743,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45793902238314677, + "max": 0.45794930875576034 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-4-910", + "uuid": "云原生-4-908", "seg": [ [ [ @@ -67559,7 +78762,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4578052995391705, + "max": 0.45794930875576034 + }, "related_data": {} } } @@ -67570,7 +78776,7 @@ { "路由": { "data": { - "uuid": "云原生-5-1789", + "uuid": "云原生-5-1794", "seg": [ [ [ @@ -67578,7 +78784,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45794930875576034, + "max": 0.4579853110599078 + }, "related_data": {} } } @@ -67586,7 +78795,7 @@ { "聚合": { "data": { - "uuid": "云原生-5-1790", + "uuid": "云原生-5-1795", "seg": [ [ [ @@ -67594,7 +78803,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4579853110599078, + "max": 0.45802131336405527 + }, "related_data": {} } } @@ -67602,7 +78814,7 @@ { "卸载": { "data": { - "uuid": "云原生-5-1791", + "uuid": "云原生-5-1796", "seg": [ [ [ @@ -67610,7 +78822,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45802131336405527, + "max": 0.45805731566820274 + }, "related_data": {} } } @@ -67618,7 +78833,7 @@ { "网关的实现": { "data": { - "uuid": "云原生-5-1792", + "uuid": "云原生-5-1797", "seg": [ [ [ @@ -67626,14 +78841,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45805731566820274, + "max": 0.4580933179723502 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-4-911", + "uuid": "云原生-4-909", "seg": [ [ [ @@ -67641,7 +78859,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45794930875576034, + "max": 0.4580933179723502 + }, "related_data": {} } } @@ -67649,7 +78870,7 @@ { "出口网关": { "data": { - "uuid": "云原生-4-912", + "uuid": "云原生-4-910", "seg": [ [ [ @@ -67658,7 +78879,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4580933179723502, + "max": 0.45823732718894006 + }, "related_data": {} } } @@ -67666,7 +78890,7 @@ { "服务网格": { "data": { - "uuid": "云原生-4-913", + "uuid": "云原生-4-911", "seg": [ [ [ @@ -67675,7 +78899,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45823732718894006, + "max": 0.4583813364055299 + }, "related_data": {} } } @@ -67683,16 +78910,20 @@ { "架构示例": { "data": { - "uuid": "云原生-4-914", + "uuid": "云原生-4-912", "seg": [ [ [ "架构", - "示例" + "示例", + "架构示例" ] ] ], - "level": "2", + "level": { + "min": 0.4583813364055299, + "max": 0.4585253456221198 + }, "related_data": {} } } @@ -67705,11 +78936,15 @@ [ "云", "原生", - "设计" + "设计", + "云原生" ] ] ], - "level": "2", + "level": { + "min": 0.4573732718894009, + "max": 0.4585253456221198 + }, "related_data": {} } } @@ -67723,7 +78958,7 @@ { "对象、文件和磁盘": { "data": { - "uuid": "云原生-5-1793", + "uuid": "云原生-5-1798", "seg": [ [ [ @@ -67737,7 +78972,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4585253456221198, + "max": 0.4585637480798771 + }, "related_data": {} } } @@ -67745,7 +78983,7 @@ { "数据库": { "data": { - "uuid": "云原生-5-1794", + "uuid": "云原生-5-1799", "seg": [ [ [ @@ -67753,7 +78991,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4585637480798771, + "max": 0.45860215053763437 + }, "related_data": {} } } @@ -67761,7 +79002,7 @@ { "流和队列": { "data": { - "uuid": "云原生-5-1795", + "uuid": "云原生-5-1800", "seg": [ [ [ @@ -67772,7 +79013,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.45860215053763437, + "max": 0.4586405529953917 + }, "related_data": {} } } @@ -67780,22 +79024,26 @@ { "区块链": { "data": { - "uuid": "云原生-5-1796", + "uuid": "云原生-5-1801", "seg": [ [ [ "区块", - "链" + "链", + "区块链" ] ] ], - "level": "2", + "level": { + "min": 0.4586405529953917, + "max": 0.45867895545314896 + }, "related_data": { "blog": { "data_id": [ - "103081099", - "78175907", - "104299664" + "103081099@go@云原生", + "78175907@分布式@云原生", + "104299664@分布式@云原生" ] } } @@ -67805,7 +79053,7 @@ { "数据存储的选择": { "data": { - "uuid": "云原生-5-1797", + "uuid": "云原生-5-1802", "seg": [ [ [ @@ -67815,23 +79063,30 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45867895545314896, + "max": 0.4587173579109063 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-4-915", + "uuid": "云原生-4-913", "seg": [ [ [ "数据", - "存储系统" + "存储系统", + "数据存储系统" ] ] ], - "level": "2", + "level": { + "min": 0.4585253456221198, + "max": 0.4587173579109063 + }, "related_data": {} } } @@ -67842,7 +79097,7 @@ { "捕获数据更改": { "data": { - "uuid": "云原生-5-1798", + "uuid": "云原生-5-1803", "seg": [ [ [ @@ -67852,11 +79107,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4587173579109063, + "max": 0.45875576036866356 + }, "related_data": { "blog": { "data_id": [ - "50624952" + "50624952@控制器@云原生" ] } } @@ -67866,18 +79124,22 @@ { "将更改作为事件写入更改日志": { "data": { - "uuid": "云原生-5-1799", + "uuid": "云原生-5-1804", "seg": [ [ [ "更改", "事件", "写入", - "日志" + "日志", + "将更改" ] ] ], - "level": "2", + "level": { + "min": 0.45875576036866356, + "max": 0.4587941628264209 + }, "related_data": {} } } @@ -67885,7 +79147,7 @@ { "事务监管": { "data": { - "uuid": "云原生-5-1800", + "uuid": "云原生-5-1805", "seg": [ [ [ @@ -67894,7 +79156,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4587941628264209, + "max": 0.45883256528417815 + }, "related_data": {} } } @@ -67902,7 +79167,7 @@ { "事务回滚": { "data": { - "uuid": "云原生-5-1801", + "uuid": "云原生-5-1806", "seg": [ [ [ @@ -67911,7 +79176,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45883256528417815, + "max": 0.4588709677419355 + }, "related_data": {} } } @@ -67919,7 +79187,7 @@ { "提取、转换和加载": { "data": { - "uuid": "云原生-5-1802", + "uuid": "云原生-5-1807", "seg": [ [ [ @@ -67933,14 +79201,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4588709677419355, + "max": 0.45890937019969275 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-4-916", + "uuid": "云原生-4-914", "seg": [ [ [ @@ -67949,7 +79220,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4587173579109063, + "max": 0.45890937019969275 + }, "related_data": {} } } @@ -67960,7 +79234,7 @@ { "受限的客户令牌(代客密钥)": { "data": { - "uuid": "云原生-5-1803", + "uuid": "云原生-5-1808", "seg": [ [ [ @@ -67968,11 +79242,16 @@ "客户", "令牌", "代客", - "密钥" + "密钥", + "客户令牌", + "代客密钥" ] ] ], - "level": "2", + "level": { + "min": 0.45890937019969275, + "max": 0.4589733742959549 + }, "related_data": {} } } @@ -67980,18 +79259,22 @@ { "细粒度访问控制的数据库服务": { "data": { - "uuid": "云原生-5-1804", + "uuid": "云原生-5-1809", "seg": [ [ [ "细粒度", "访问控制", "数据库", - "服务" + "服务", + "细粒度访问控制" ] ] ], - "level": "2", + "level": { + "min": 0.4589733742959549, + "max": 0.45903737839221703 + }, "related_data": {} } } @@ -67999,7 +79282,7 @@ { "GraphQL数据服务": { "data": { - "uuid": "云原生-5-1805", + "uuid": "云原生-5-1810", "seg": [ [ [ @@ -68008,14 +79291,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45903737839221703, + "max": 0.4591013824884792 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-4-917", + "uuid": "云原生-4-915", "seg": [ [ [ @@ -68025,7 +79311,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45890937019969275, + "max": 0.4591013824884792 + }, "related_data": {} } } @@ -68036,16 +79325,20 @@ { "数据分片": { "data": { - "uuid": "云原生-5-1806", + "uuid": "云原生-5-1811", "seg": [ [ [ "数据", - "分片" + "分片", + "数据分片" ] ] ], - "level": "2", + "level": { + "min": 0.4591013824884792, + "max": 0.4591653865847414 + }, "related_data": {} } } @@ -68053,7 +79346,7 @@ { "数据缓存": { "data": { - "uuid": "云原生-5-1807", + "uuid": "云原生-5-1812", "seg": [ [ [ @@ -68062,7 +79355,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4591653865847414, + "max": 0.45922939068100355 + }, "related_data": {} } } @@ -68070,7 +79366,7 @@ { "内容分发网络": { "data": { - "uuid": "云原生-5-1808", + "uuid": "云原生-5-1813", "seg": [ [ [ @@ -68080,24 +79376,31 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45922939068100355, + "max": 0.4592933947772657 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-4-918", + "uuid": "云原生-4-916", "seg": [ [ [ "快速", "伸缩", - "数据" + "数据", + "快速伸缩" ] ] ], - "level": "2", + "level": { + "min": 0.4591013824884792, + "max": 0.4592933947772657 + }, "related_data": {} } } @@ -68108,7 +79411,7 @@ { "数据流": { "data": { - "uuid": "云原生-5-1809", + "uuid": "云原生-5-1814", "seg": [ [ [ @@ -68116,7 +79419,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4592933947772657, + "max": 0.45933179723502304 + }, "related_data": {} } } @@ -68124,7 +79430,7 @@ { "批处理": { "data": { - "uuid": "云原生-5-1810", + "uuid": "云原生-5-1815", "seg": [ [ [ @@ -68132,7 +79438,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45933179723502304, + "max": 0.4593701996927803 + }, "related_data": {} } } @@ -68140,18 +79449,22 @@ { "对象存储上的数据湖": { "data": { - "uuid": "云原生-5-1811", + "uuid": "云原生-5-1816", "seg": [ [ [ "对象", "存储", "数据", - "湖" + "湖", + "数据湖" ] ] ], - "level": "2", + "level": { + "min": 0.4593701996927803, + "max": 0.45940860215053764 + }, "related_data": {} } } @@ -68159,17 +79472,22 @@ { "数据湖和数据仓库": { "data": { - "uuid": "云原生-5-1812", + "uuid": "云原生-5-1817", "seg": [ [ [ "数据", "湖和", - "数据仓库" + "数据仓库", + "数据湖和", + "湖和数据仓库" ] ] ], - "level": "2", + "level": { + "min": 0.45940860215053764, + "max": 0.4594470046082949 + }, "related_data": {} } } @@ -68177,7 +79495,7 @@ { "分布式查询引擎": { "data": { - "uuid": "云原生-5-1813", + "uuid": "云原生-5-1818", "seg": [ [ [ @@ -68187,14 +79505,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4594470046082949, + "max": 0.45948540706605223 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-4-919", + "uuid": "云原生-4-917", "seg": [ [ [ @@ -68202,11 +79523,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4592933947772657, + "max": 0.45948540706605223 + }, "related_data": { "blog": { "data_id": [ - "111713608" + "111713608@cloud@云原生" ] } } @@ -68219,7 +79543,7 @@ { "StatefulSet": { "data": { - "uuid": "云原生-5-1814", + "uuid": "云原生-5-1819", "seg": [ [ [ @@ -68227,7 +79551,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45948540706605223, + "max": 0.45958141321044543 + }, "related_data": {} } } @@ -68235,7 +79562,7 @@ { "DaemonSet": { "data": { - "uuid": "云原生-5-1815", + "uuid": "云原生-5-1820", "seg": [ [ [ @@ -68243,14 +79570,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45958141321044543, + "max": 0.4596774193548387 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-4-920", + "uuid": "云原生-4-918", "seg": [ [ [ @@ -68259,7 +79589,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45948540706605223, + "max": 0.4596774193548387 + }, "related_data": {} } } @@ -68274,7 +79607,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4585253456221198, + "max": 0.4596774193548387 + }, "related_data": {} } } @@ -68288,7 +79624,7 @@ { "协作": { "data": { - "uuid": "云原生-5-1816", + "uuid": "云原生-5-1821", "seg": [ [ [ @@ -68296,7 +79632,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4596774193548387, + "max": 0.4597103357472021 + }, "related_data": {} } } @@ -68304,7 +79643,7 @@ { "自动化": { "data": { - "uuid": "云原生-5-1817", + "uuid": "云原生-5-1822", "seg": [ [ [ @@ -68312,11 +79651,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4597103357472021, + "max": 0.45974325213956546 + }, "related_data": { "blog": { "data_id": [ - "114548898" + "114548898@devops@云原生" ] } } @@ -68326,19 +79668,23 @@ { "精益原则和流程": { "data": { - "uuid": "云原生-5-1818", + "uuid": "云原生-5-1823", "seg": [ [ [ "精益", - "原则" + "原则", + "精益原则" ], [ "流程" ] ] ], - "level": "2", + "level": { + "min": 0.45974325213956546, + "max": 0.4597761685319289 + }, "related_data": {} } } @@ -68346,7 +79692,7 @@ { "度量": { "data": { - "uuid": "云原生-5-1819", + "uuid": "云原生-5-1824", "seg": [ [ [ @@ -68354,7 +79700,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4597761685319289, + "max": 0.45980908492429223 + }, "related_data": {} } } @@ -68362,7 +79711,7 @@ { "分享": { "data": { - "uuid": "云原生-5-1820", + "uuid": "云原生-5-1825", "seg": [ [ [ @@ -68370,14 +79719,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45980908492429223, + "max": 0.45984200131665565 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-4-921", + "uuid": "云原生-4-919", "seg": [ [ [ @@ -68385,20 +79737,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4596774193548387, + "max": 0.45984200131665565 + }, "related_data": { "blog": { "data_id": [ - "45155183", - "117106967", - "105049952", - "97409497", - "79920382", - "78935486", - "112761254", - "77646024", - "78553177", - "77448607" + "45155183@devops@云原生", + "117106967@devops@云原生", + "105049952@paas@云原生", + "97409497@devops@云原生", + "79920382@devops@云原生", + "78935486@devops@云原生", + "112761254@devops@云原生", + "77646024@devops@云原生", + "78553177@devops@云原生", + "77448607@devops@云原生" ] } } @@ -68411,7 +79766,7 @@ { "测试替身": { "data": { - "uuid": "云原生-5-1821", + "uuid": "云原生-5-1826", "seg": [ [ [ @@ -68419,7 +79774,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45984200131665565, + "max": 0.45987491770901906 + }, "related_data": {} } } @@ -68427,7 +79785,7 @@ { "自动化测试金字塔": { "data": { - "uuid": "云原生-5-1822", + "uuid": "云原生-5-1827", "seg": [ [ [ @@ -68436,7 +79794,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45987491770901906, + "max": 0.4599078341013825 + }, "related_data": {} } } @@ -68444,7 +79805,7 @@ { "不同测试类型的适用时机": { "data": { - "uuid": "云原生-5-1823", + "uuid": "云原生-5-1828", "seg": [ [ [ @@ -68453,7 +79814,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4599078341013825, + "max": 0.45994075049374583 + }, "related_data": {} } } @@ -68461,7 +79825,7 @@ { "测试节奏": { "data": { - "uuid": "云原生-5-1824", + "uuid": "云原生-5-1829", "seg": [ [ [ @@ -68469,7 +79833,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45994075049374583, + "max": 0.45997366688610924 + }, "related_data": {} } } @@ -68477,7 +79844,7 @@ { "在生产环境中测试": { "data": { - "uuid": "云原生-5-1825", + "uuid": "云原生-5-1830", "seg": [ [ [ @@ -68486,20 +79853,26 @@ ] ] ], - "level": "2", + "level": { + "min": 0.45997366688610924, + "max": 0.46000658327847266 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-4-922", + "uuid": "云原生-4-920", "seg": [ [ [] ] ], - "level": "2", + "level": { + "min": 0.45984200131665565, + "max": 0.46000658327847266 + }, "related_data": {} } } @@ -68510,7 +79883,7 @@ { "开发工具": { "data": { - "uuid": "云原生-5-1826", + "uuid": "云原生-5-1831", "seg": [ [ [ @@ -68518,7 +79891,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46000658327847266, + "max": 0.46003009498730363 + }, "related_data": {} } } @@ -68526,7 +79902,7 @@ { "开发环境": { "data": { - "uuid": "云原生-5-1827", + "uuid": "云原生-5-1832", "seg": [ [ [ @@ -68535,15 +79911,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46003009498730363, + "max": 0.46005360669613465 + }, "related_data": { "blog": { "data_id": [ - "107836914", - "79241369", - "80451318", - "84643497", - "108909396" + "107836914@go@云原生", + "79241369@控制器@云原生", + "80451318@go@云原生", + "84643497@控制器@云原生" ] } } @@ -68553,7 +79931,7 @@ { "本地开发环境": { "data": { - "uuid": "云原生-5-1828", + "uuid": "云原生-5-1833", "seg": [ [ [ @@ -68562,7 +79940,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46005360669613465, + "max": 0.4600771184049656 + }, "related_data": {} } } @@ -68570,18 +79951,22 @@ { "本地开发环境结合远端集群": { "data": { - "uuid": "云原生-5-1829", + "uuid": "云原生-5-1834", "seg": [ [ [ "开发", "环境", "远端", - "集群" + "集群", + "远端集群" ] ] ], - "level": "2", + "level": { + "min": 0.4600771184049656, + "max": 0.46010063011379665 + }, "related_data": {} } } @@ -68589,7 +79974,7 @@ { "Skaffold开发工作流": { "data": { - "uuid": "云原生-5-1830", + "uuid": "云原生-5-1835", "seg": [ [ [ @@ -68600,11 +79985,14 @@ ] ] ], - "level": "1", + "level": { + "min": 0.46010063011379665, + "max": 0.4601241418226276 + }, "related_data": { "blog": { "data_id": [ - "79845248" + "79845248@spring@云原生" ] } } @@ -68614,7 +80002,7 @@ { "将远端集群路由到本地开发环境": { "data": { - "uuid": "云原生-5-1831", + "uuid": "云原生-5-1836", "seg": [ [ [ @@ -68622,11 +80010,17 @@ "集群", "路由", "开发", - "环境" + "环境", + "将远端", + "远端集群", + "集群路由" ] ] ], - "level": "2", + "level": { + "min": 0.4601241418226276, + "max": 0.46014765353145864 + }, "related_data": {} } } @@ -68634,7 +80028,7 @@ { "云端开发环境": { "data": { - "uuid": "云原生-5-1832", + "uuid": "云原生-5-1837", "seg": [ [ [ @@ -68644,14 +80038,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46014765353145864, + "max": 0.4601711652402896 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-4-923", + "uuid": "云原生-4-921", "seg": [ [ [ @@ -68663,7 +80060,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46000658327847266, + "max": 0.4601711652402896 + }, "related_data": {} } } @@ -68674,7 +80074,7 @@ { "源代码管理": { "data": { - "uuid": "云原生-5-1833", + "uuid": "云原生-5-1838", "seg": [ [ [ @@ -68682,7 +80082,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4601711652402896, + "max": 0.4601985955672591 + }, "related_data": {} } } @@ -68690,7 +80093,7 @@ { "构建阶段": { "data": { - "uuid": "云原生-5-1834", + "uuid": "云原生-5-1839", "seg": [ [ [ @@ -68699,7 +80102,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4601985955672591, + "max": 0.4602260258942286 + }, "related_data": {} } } @@ -68707,7 +80113,7 @@ { "测试阶段": { "data": { - "uuid": "云原生-5-1835", + "uuid": "云原生-5-1840", "seg": [ [ [ @@ -68715,7 +80121,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4602260258942286, + "max": 0.4602534562211981 + }, "related_data": {} } } @@ -68723,16 +80132,20 @@ { "部署阶段": { "data": { - "uuid": "云原生-5-1836", + "uuid": "云原生-5-1841", "seg": [ [ [ "部署", - "阶段" + "阶段", + "部署阶段" ] ] ], - "level": "2", + "level": { + "min": 0.4602534562211981, + "max": 0.4602808865481676 + }, "related_data": {} } } @@ -68740,7 +80153,7 @@ { "发布阶段": { "data": { - "uuid": "云原生-5-1837", + "uuid": "云原生-5-1842", "seg": [ [ [ @@ -68749,7 +80162,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4602808865481676, + "max": 0.4603083168751371 + }, "related_data": {} } } @@ -68757,7 +80173,7 @@ { "发布后阶段": { "data": { - "uuid": "云原生-5-1838", + "uuid": "云原生-5-1843", "seg": [ [ [ @@ -68766,14 +80182,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4603083168751371, + "max": 0.4603357472021066 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-4-924", + "uuid": "云原生-4-922", "seg": [ [ [ @@ -68783,7 +80202,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4601711652402896, + "max": 0.4603357472021066 + }, "related_data": {} } } @@ -68794,7 +80216,7 @@ { "收集指标": { "data": { - "uuid": "云原生-5-1839", + "uuid": "云原生-5-1844", "seg": [ [ [ @@ -68803,7 +80225,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4603357472021066, + "max": 0.4604180381830151 + }, "related_data": {} } } @@ -68811,7 +80236,7 @@ { "服务的可观测性": { "data": { - "uuid": "云原生-5-1840", + "uuid": "云原生-5-1845", "seg": [ [ [ @@ -68821,14 +80246,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4604180381830151, + "max": 0.4605003291639236 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-4-925", + "uuid": "云原生-4-923", "seg": [ [ [ @@ -68836,7 +80264,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4603357472021066, + "max": 0.4605003291639236 + }, "related_data": {} } } @@ -68847,7 +80278,7 @@ { "单一环境变量": { "data": { - "uuid": "云原生-5-1841", + "uuid": "云原生-5-1846", "seg": [ [ [ @@ -68856,7 +80287,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4605003291639236, + "max": 0.46054147465437784 + }, "related_data": {} } } @@ -68864,18 +80298,22 @@ { "将配置数据放入存储卷中": { "data": { - "uuid": "云原生-5-1842", + "uuid": "云原生-5-1847", "seg": [ [ [ "配置", "数据", "放入", - "存储" + "存储", + "将配置" ] ] ], - "level": "2", + "level": { + "min": 0.46054147465437784, + "max": 0.4605826201448321 + }, "related_data": {} } } @@ -68883,7 +80321,7 @@ { "密钥保存": { "data": { - "uuid": "云原生-5-1843", + "uuid": "云原生-5-1848", "seg": [ [ [ @@ -68892,7 +80330,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4605826201448321, + "max": 0.46062376563528634 + }, "related_data": {} } } @@ -68900,7 +80341,7 @@ { "部署配置": { "data": { - "uuid": "云原生-5-1844", + "uuid": "云原生-5-1849", "seg": [ [ [ @@ -68909,14 +80350,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46062376563528634, + "max": 0.4606649111257406 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-4-926", + "uuid": "云原生-4-924", "seg": [ [ [ @@ -68924,7 +80368,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4605003291639236, + "max": 0.4606649111257406 + }, "related_data": {} } } @@ -68932,7 +80379,7 @@ { "持续集成/持续交付流程示例": { "data": { - "uuid": "云原生-4-927", + "uuid": "云原生-4-925", "seg": [ [ [ @@ -68940,11 +80387,15 @@ "集成", "交付", "流程", - "示例" + "示例", + "流程示例" ] ] ], - "level": "2", + "level": { + "min": 0.4606649111257406, + "max": 0.46082949308755755 + }, "related_data": {} } } @@ -68959,7 +80410,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4596774193548387, + "max": 0.46082949308755755 + }, "related_data": {} } } @@ -68970,7 +80424,7 @@ { "可移植性的代价": { "data": { - "uuid": "云原生-4-928", + "uuid": "云原生-4-926", "seg": [ [ [ @@ -68979,7 +80433,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46082949308755755, + "max": 0.46140552995391704 + }, "related_data": {} } } @@ -68990,7 +80447,7 @@ { "标准化的接口": { "data": { - "uuid": "云原生-5-1845", + "uuid": "云原生-5-1850", "seg": [ [ [ @@ -68999,7 +80456,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46140552995391704, + "max": 0.4615015360983103 + }, "related_data": {} } } @@ -69007,7 +80467,7 @@ { "共用的服务和功能": { "data": { - "uuid": "云原生-5-1846", + "uuid": "云原生-5-1851", "seg": [ [ [ @@ -69019,7 +80479,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4615015360983103, + "max": 0.4615975422427035 + }, "related_data": {} } } @@ -69027,7 +80490,7 @@ { "抽象和分层": { "data": { - "uuid": "云原生-5-1847", + "uuid": "云原生-5-1852", "seg": [ [ [ @@ -69038,7 +80501,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4615975422427035, + "max": 0.46169354838709675 + }, "related_data": {} } } @@ -69046,7 +80512,7 @@ { "第三方服务商的托管服务": { "data": { - "uuid": "云原生-5-1848", + "uuid": "云原生-5-1853", "seg": [ [ [ @@ -69056,7 +80522,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46169354838709675, + "max": 0.46178955453149 + }, "related_data": {} } } @@ -69064,7 +80533,7 @@ { "可移植性工具": { "data": { - "uuid": "云原生-5-1849", + "uuid": "云原生-5-1854", "seg": [ [ [ @@ -69073,7 +80542,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46178955453149, + "max": 0.4618855606758832 + }, "related_data": {} } } @@ -69081,7 +80553,7 @@ { "把Kubernetes作为可移植性层": { "data": { - "uuid": "云原生-5-1850", + "uuid": "云原生-5-1855", "seg": [ [ [ @@ -69091,14 +80563,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4618855606758832, + "max": 0.46198156682027647 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-4-929", + "uuid": "云原生-4-927", "seg": [ [ [], @@ -69107,7 +80582,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46140552995391704, + "max": 0.46198156682027647 + }, "related_data": {} } } @@ -69122,7 +80600,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46082949308755755, + "max": 0.46198156682027647 + }, "related_data": {} } } @@ -69136,7 +80617,7 @@ { "内容概要": { "data": { - "uuid": "云原生-5-1851", + "uuid": "云原生-5-1856", "seg": [ [ [ @@ -69145,7 +80626,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46198156682027647, + "max": 0.46200460829493084 + }, "related_data": {} } } @@ -69156,7 +80640,7 @@ { "专有版": { "data": { - "uuid": "云原生-6-373", + "uuid": "云原生-6-374", "seg": [ [ [ @@ -69165,7 +80649,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46200460829493084, + "max": 0.4620122887864823 + }, "related_data": {} } } @@ -69173,7 +80660,7 @@ { "托管版": { "data": { - "uuid": "云原生-6-374", + "uuid": "云原生-6-375", "seg": [ [ [ @@ -69182,7 +80669,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4620122887864823, + "max": 0.46201996927803374 + }, "related_data": {} } } @@ -69190,7 +80680,7 @@ { "Serverless版": { "data": { - "uuid": "云原生-6-375", + "uuid": "云原生-6-376", "seg": [ [ [ @@ -69199,29 +80689,37 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46201996927803374, + "max": 0.4620276497695852 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-1852", + "uuid": "云原生-5-1857", "seg": [ [ [ "云", "资源", - "层" + "层", + "云资源", + "资源层" ] ] ], - "level": "2", + "level": { + "min": 0.46200460829493084, + "max": 0.4620276497695852 + }, "related_data": { "blog": { "data_id": [ - "108563257", - "48156861" + "108563257@cloud@云原生", + "48156861@docker@云原生" ] } } @@ -69231,17 +80729,22 @@ { "单机系统层": { "data": { - "uuid": "云原生-5-1853", + "uuid": "云原生-5-1858", "seg": [ [ [ "单机", "系统", - "层" + "层", + "单机系统", + "系统层" ] ] ], - "level": "2", + "level": { + "min": 0.4620276497695852, + "max": 0.4620506912442396 + }, "related_data": {} } } @@ -69252,7 +80755,7 @@ { "专有版": { "data": { - "uuid": "云原生-6-376", + "uuid": "云原生-6-377", "seg": [ [ [ @@ -69261,7 +80764,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4620506912442396, + "max": 0.46205837173579106 + }, "related_data": {} } } @@ -69269,7 +80775,7 @@ { "托管版": { "data": { - "uuid": "云原生-6-377", + "uuid": "云原生-6-378", "seg": [ [ [ @@ -69278,7 +80784,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46205837173579106, + "max": 0.4620660522273425 + }, "related_data": {} } } @@ -69286,7 +80795,7 @@ { "Serverless版": { "data": { - "uuid": "云原生-6-378", + "uuid": "云原生-6-379", "seg": [ [ [ @@ -69295,24 +80804,32 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4620660522273425, + "max": 0.46207373271889396 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-1854", + "uuid": "云原生-5-1859", "seg": [ [ [ "集群", "系统", - "层" + "层", + "集群系统", + "系统层" ] ] ], - "level": "2", + "level": { + "min": 0.4620506912442396, + "max": 0.46207373271889396 + }, "related_data": {} } } @@ -69323,7 +80840,7 @@ { "日志": { "data": { - "uuid": "云原生-6-379", + "uuid": "云原生-6-380", "seg": [ [ [ @@ -69331,14 +80848,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46207373271889396, + "max": 0.46209677419354833 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-1855", + "uuid": "云原生-5-1860", "seg": [ [ [ @@ -69348,14 +80868,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46207373271889396, + "max": 0.46209677419354833 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-4-930", + "uuid": "云原生-4-928", "seg": [ [ [ @@ -69365,7 +80888,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46198156682027647, + "max": 0.46209677419354833 + }, "related_data": {} } } @@ -69376,17 +80902,21 @@ { "从控制器视角看集群": { "data": { - "uuid": "云原生-5-1856", + "uuid": "云原生-5-1861", "seg": [ [ [ "控制器", "视角", - "集群" + "集群", + "控制器视角" ] ] ], - "level": "2", + "level": { + "min": 0.46209677419354833, + "max": 0.4621543778801843 + }, "related_data": {} } } @@ -69397,7 +80927,7 @@ { "服务控制器": { "data": { - "uuid": "云原生-6-380", + "uuid": "云原生-6-381", "seg": [ [ [ @@ -69406,13 +80936,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4621543778801843, + "max": 0.4621831797235023 + }, "related_data": { "blog": { "data_id": [ - "78293700", - "105859540", - "90512543" + "78293700@控制器@云原生" ] } } @@ -69422,39 +80953,47 @@ { "路由控制器": { "data": { - "uuid": "云原生-6-381", + "uuid": "云原生-6-382", "seg": [ [ [ "路由", - "控制器" + "控制器", + "路由控制器" ] ] ], - "level": "2", + "level": { + "min": 0.4621831797235023, + "max": 0.46221198156682025 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-1857", + "uuid": "云原生-5-1862", "seg": [ [ [ "控制器", - "示例" + "示例", + "控制器示例" ] ] ], - "level": "2", + "level": { + "min": 0.4621543778801843, + "max": 0.46221198156682025 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-4-931", + "uuid": "云原生-4-929", "seg": [ [ [ @@ -69463,7 +81002,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46209677419354833, + "max": 0.46221198156682025 + }, "related_data": {} } } @@ -69474,7 +81016,7 @@ { "背景": { "data": { - "uuid": "云原生-5-1858", + "uuid": "云原生-5-1863", "seg": [ [ [ @@ -69482,7 +81024,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46221198156682025, + "max": 0.4622407834101382 + }, "related_data": {} } } @@ -69490,7 +81035,7 @@ { "阿里云Kubernetes集群网络大图": { "data": { - "uuid": "云原生-5-1859", + "uuid": "云原生-5-1864", "seg": [ [ [ @@ -69499,15 +81044,21 @@ "kubernetes", "集群", "网络", - "大图" + "大图", + "阿里云", + "集群网络", + "网络大图" ] ] ], - "level": "1", + "level": { + "min": 0.4622407834101382, + "max": 0.4622695852534562 + }, "related_data": { "blog": { "data_id": [ - "78867173" + "78867173@阿里云@云原生" ] } } @@ -69520,7 +81071,7 @@ { "初始阶段": { "data": { - "uuid": "云原生-6-382", + "uuid": "云原生-6-383", "seg": [ [ [ @@ -69529,7 +81080,10 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4622695852534562, + "max": 0.46227678571428565 + }, "related_data": {} } } @@ -69537,21 +81091,25 @@ { "集群阶段": { "data": { - "uuid": "云原生-6-383", + "uuid": "云原生-6-384", "seg": [ [ [ "集群", - "阶段" + "阶段", + "集群阶段" ] ] ], - "level": "1", + "level": { + "min": 0.46227678571428565, + "max": 0.4622839861751152 + }, "related_data": { "blog": { "data_id": [ - "78041811", - "51283216" + "78041811@docker@云原生", + "51283216@分布式@云原生" ] } } @@ -69561,16 +81119,20 @@ { "节点阶段": { "data": { - "uuid": "云原生-6-384", + "uuid": "云原生-6-385", "seg": [ [ [ "节点", - "阶段" + "阶段", + "节点阶段" ] ] ], - "level": "1", + "level": { + "min": 0.4622839861751152, + "max": 0.4622911866359447 + }, "related_data": {} } } @@ -69578,7 +81140,7 @@ { "Pod阶段": { "data": { - "uuid": "云原生-6-385", + "uuid": "云原生-6-386", "seg": [ [ [ @@ -69587,24 +81149,31 @@ ] ] ], - "level": "1", + "level": { + "min": 0.4622911866359447, + "max": 0.4622983870967742 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-1860", + "uuid": "云原生-5-1865", "seg": [ [ [ "集群", "网络", - "搭建" + "搭建", + "集群网络" ] ] ], - "level": "1", + "level": { + "min": 0.4622695852534562, + "max": 0.4622983870967742 + }, "related_data": {} } } @@ -69612,7 +81181,7 @@ { "通信原理": { "data": { - "uuid": "云原生-5-1861", + "uuid": "云原生-5-1866", "seg": [ [ [ @@ -69621,14 +81190,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4622983870967742, + "max": 0.4623271889400921 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-4-932", + "uuid": "云原生-4-930", "seg": [ [ [ @@ -69640,7 +81212,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46221198156682025, + "max": 0.4623271889400921 + }, "related_data": {} } } @@ -69654,7 +81229,7 @@ { "手动添加已有节点": { "data": { - "uuid": "云原生-6-386", + "uuid": "云原生-6-387", "seg": [ [ [ @@ -69665,7 +81240,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4623271889400921, + "max": 0.46233678955453145 + }, "related_data": {} } } @@ -69673,7 +81251,7 @@ { "自动添加已有节点": { "data": { - "uuid": "云原生-6-387", + "uuid": "云原生-6-388", "seg": [ [ [ @@ -69684,7 +81262,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46233678955453145, + "max": 0.4623463901689708 + }, "related_data": {} } } @@ -69692,7 +81273,7 @@ { "集群扩容": { "data": { - "uuid": "云原生-6-388", + "uuid": "云原生-6-389", "seg": [ [ [ @@ -69701,7 +81282,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4623463901689708, + "max": 0.4623559907834101 + }, "related_data": {} } } @@ -69709,7 +81293,7 @@ { "自动伸缩": { "data": { - "uuid": "云原生-6-389", + "uuid": "云原生-6-390", "seg": [ [ [ @@ -69718,20 +81302,17 @@ ] ] ], - "level": "2", - "related_data": { - "blog": { - "data_id": [ - "73457256" - ] - } - } + "level": { + "min": 0.4623559907834101, + "max": 0.46236559139784944 + }, + "related_data": {} } } } ], "data": { - "uuid": "云原生-5-1862", + "uuid": "云原生-5-1867", "seg": [ [ [ @@ -69741,7 +81322,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4623271889400921, + "max": 0.46236559139784944 + }, "related_data": {} } } @@ -69749,7 +81333,7 @@ { "节点减少原理": { "data": { - "uuid": "云原生-5-1863", + "uuid": "云原生-5-1868", "seg": [ [ [ @@ -69759,7 +81343,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46236559139784944, + "max": 0.4624039938556067 + }, "related_data": {} } } @@ -69767,24 +81354,29 @@ { "节点池原理": { "data": { - "uuid": "云原生-5-1864", + "uuid": "云原生-5-1869", "seg": [ [ [ "节点", "池", - "原理" + "原理", + "节点池", + "池原理" ] ] ], - "level": "2", + "level": { + "min": 0.4624039938556067, + "max": 0.46244239631336403 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-4-933", + "uuid": "云原生-4-931", "seg": [ [ [ @@ -69793,7 +81385,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4623271889400921, + "max": 0.46244239631336403 + }, "related_data": {} } } @@ -69804,7 +81399,7 @@ { "服务的本质是什么": { "data": { - "uuid": "云原生-5-1865", + "uuid": "云原生-5-1870", "seg": [ [ [ @@ -69813,7 +81408,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46244239631336403, + "max": 0.46247119815668203 + }, "related_data": {} } } @@ -69821,16 +81419,20 @@ { "自带通信员": { "data": { - "uuid": "云原生-5-1866", + "uuid": "云原生-5-1871", "seg": [ [ [ "自带", - "通信员" + "通信员", + "自带通信员" ] ] ], - "level": "2", + "level": { + "min": 0.46247119815668203, + "max": 0.46249999999999997 + }, "related_data": {} } } @@ -69838,7 +81440,7 @@ { "让服务照进现实": { "data": { - "uuid": "云原生-5-1867", + "uuid": "云原生-5-1872", "seg": [ [ [ @@ -69848,7 +81450,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46249999999999997, + "max": 0.4625288018433179 + }, "related_data": {} } } @@ -69859,16 +81464,20 @@ { "过滤器框架": { "data": { - "uuid": "云原生-6-390", + "uuid": "云原生-6-391", "seg": [ [ [ "过滤器", - "框架" + "框架", + "过滤器框架" ] ] ], - "level": "2", + "level": { + "min": 0.4625288018433179, + "max": 0.4625360023041474 + }, "related_data": {} } } @@ -69876,17 +81485,22 @@ { "节点网络大图": { "data": { - "uuid": "云原生-6-391", + "uuid": "云原生-6-392", "seg": [ [ [ "节点", "网络", - "大图" + "大图", + "节点网络", + "网络大图" ] ] ], - "level": "2", + "level": { + "min": 0.4625360023041474, + "max": 0.4625432027649769 + }, "related_data": {} } } @@ -69894,17 +81508,21 @@ { "升级过滤器框架": { "data": { - "uuid": "云原生-6-392", + "uuid": "云原生-6-393", "seg": [ [ [ "升级", "过滤器", - "框架" + "框架", + "过滤器框架" ] ] ], - "level": "2", + "level": { + "min": 0.4625432027649769, + "max": 0.46255040322580643 + }, "related_data": {} } } @@ -69912,7 +81530,7 @@ { "用自定义链实现服务的反向代理": { "data": { - "uuid": "云原生-6-393", + "uuid": "云原生-6-394", "seg": [ [ [ @@ -69924,14 +81542,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46255040322580643, + "max": 0.4625576036866359 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-1868", + "uuid": "云原生-5-1873", "seg": [ [ [ @@ -69939,14 +81560,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4625288018433179, + "max": 0.4625576036866359 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-4-934", + "uuid": "云原生-4-932", "seg": [ [ [ @@ -69956,7 +81580,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46244239631336403, + "max": 0.4625576036866359 + }, "related_data": {} } } @@ -69967,7 +81594,7 @@ { "镜像下载这件小事": { "data": { - "uuid": "云原生-5-1869", + "uuid": "云原生-5-1874", "seg": [ [ [ @@ -69977,7 +81604,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4625576036866359, + "max": 0.46258064516129027 + }, "related_data": {} } } @@ -69985,7 +81615,7 @@ { "理解OAuth 2.0协议": { "data": { - "uuid": "云原生-5-1870", + "uuid": "云原生-5-1875", "seg": [ [ [ @@ -69995,20 +81625,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46258064516129027, + "max": 0.46260368663594464 + }, "related_data": { "blog": { "data_id": [ - "71242834", - "51785649", - "76863105", - "54318128", - "89491551", - "78475297", - "80412500", - "78147306", - "78860080", - "108878391" + "71242834@oauth@云原生", + "51785649@oauth@云原生", + "76863105@oauth@云原生", + "54318128@oauth@云原生", + "89491551@oauth@云原生", + "78475297@oauth@云原生", + "80412500@oauth@云原生", + "78147306@oauth@云原生", + "78860080@oauth@云原生", + "108878391@oauth@云原生" ] } } @@ -70021,16 +81654,20 @@ { "整体结构": { "data": { - "uuid": "云原生-6-394", + "uuid": "云原生-6-395", "seg": [ [ [ "整体", - "结构" + "结构", + "整体结构" ] ] ], - "level": "2", + "level": { + "min": 0.46260368663594464, + "max": 0.4626113671274961 + }, "related_data": {} } } @@ -70038,7 +81675,7 @@ { "理解docker login": { "data": { - "uuid": "云原生-6-395", + "uuid": "云原生-6-396", "seg": [ [ [ @@ -70048,11 +81685,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4626113671274961, + "max": 0.46261904761904754 + }, "related_data": { "blog": { "data_id": [ - "50578009" + "50578009@oauth@云原生" ] } } @@ -70062,7 +81702,7 @@ { "拉取镜像是怎么回事": { "data": { - "uuid": "云原生-6-396", + "uuid": "云原生-6-397", "seg": [ [ [ @@ -70072,12 +81712,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46261904761904754, + "max": 0.462626728110599 + }, "related_data": { "blog": { "data_id": [ - "80647620", - "82878576" + "82878576@docker@云原生" ] } } @@ -70086,7 +81728,7 @@ } ], "data": { - "uuid": "云原生-5-1871", + "uuid": "云原生-5-1876", "seg": [ [ [ @@ -70096,7 +81738,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46260368663594464, + "max": 0.462626728110599 + }, "related_data": {} } } @@ -70107,7 +81752,7 @@ { "基本功能": { "data": { - "uuid": "云原生-6-397", + "uuid": "云原生-6-398", "seg": [ [ [ @@ -70115,7 +81760,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.462626728110599, + "max": 0.4626382488479262 + }, "related_data": {} } } @@ -70123,23 +81771,27 @@ { "进阶方式": { "data": { - "uuid": "云原生-6-398", + "uuid": "云原生-6-399", "seg": [ [ [ "进阶", - "方式" + "方式", + "进阶方式" ] ] ], - "level": "2", + "level": { + "min": 0.4626382488479262, + "max": 0.4626497695852534 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-1872", + "uuid": "云原生-5-1877", "seg": [ [ [ @@ -70151,7 +81803,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.462626728110599, + "max": 0.4626497695852534 + }, "related_data": {} } } @@ -70159,7 +81814,7 @@ { "阿里云实现的ACR credential helper": { "data": { - "uuid": "云原生-5-1873", + "uuid": "云原生-5-1878", "seg": [ [ [ @@ -70167,16 +81822,28 @@ "云", "acr", "credential", - "helper" + "helper", + "阿里云" ] ] ], - "level": "2", + "level": { + "min": 0.4626497695852534, + "max": 0.46267281105990776 + }, "related_data": { "blog": { "data_id": [ - "80323149", - "82106977" + "108931831@阿里云@云原生", + "108922599@阿里云@云原生", + "108931112@阿里云@云原生", + "108932943@阿里云@云原生", + "80323149@阿里云@云原生", + "8577784@阿里云@云原生", + "73506035@阿里云@云原生", + "70808637@阿里云@云原生", + "88196269@阿里云@云原生", + "112283742@阿里云@云原生" ] } } @@ -70185,7 +81852,7 @@ } ], "data": { - "uuid": "云原生-4-935", + "uuid": "云原生-4-933", "seg": [ [ [ @@ -70195,7 +81862,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4625576036866359, + "max": 0.46267281105990776 + }, "related_data": {} } } @@ -70206,7 +81876,7 @@ { "日志服务介绍": { "data": { - "uuid": "云原生-5-1874", + "uuid": "云原生-5-1879", "seg": [ [ [ @@ -70216,11 +81886,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46267281105990776, + "max": 0.4627112135176651 + }, "related_data": { "blog": { "data_id": [ - "97546884" + "97546884@服务发现@云原生" ] } } @@ -70233,7 +81906,7 @@ { "方案简介": { "data": { - "uuid": "云原生-6-399", + "uuid": "云原生-6-400", "seg": [ [ [ @@ -70242,21 +81915,18 @@ ] ] ], - "level": "2", - "related_data": { - "blog": { - "data_id": [ - "87101059" - ] - } - } + "level": { + "min": 0.4627112135176651, + "max": 0.4627240143369175 + }, + "related_data": {} } } }, { "运行流程": { "data": { - "uuid": "云原生-6-400", + "uuid": "云原生-6-401", "seg": [ [ [ @@ -70265,7 +81935,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4627240143369175, + "max": 0.46273681515616993 + }, "related_data": {} } } @@ -70273,7 +81946,7 @@ { "配置方式": { "data": { - "uuid": "云原生-6-401", + "uuid": "云原生-6-402", "seg": [ [ [ @@ -70282,14 +81955,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46273681515616993, + "max": 0.46274961597542236 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-1875", + "uuid": "云原生-5-1880", "seg": [ [ [ @@ -70299,7 +81975,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4627112135176651, + "max": 0.46274961597542236 + }, "related_data": {} } } @@ -70310,7 +81989,7 @@ { "背景": { "data": { - "uuid": "云原生-6-402", + "uuid": "云原生-6-403", "seg": [ [ [ @@ -70318,7 +81997,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46274961597542236, + "max": 0.4627624167946748 + }, "related_data": {} } } @@ -70326,7 +82008,7 @@ { "实现方式": { "data": { - "uuid": "云原生-6-403", + "uuid": "云原生-6-404", "seg": [ [ [ @@ -70334,43 +82016,36 @@ ] ] ], - "level": "2", - "related_data": { - "blog": { - "data_id": [ - "77843519" - ] - } - } + "level": { + "min": 0.4627624167946748, + "max": 0.46277521761392726 + }, + "related_data": {} } } }, { "alibaba-log-controller内部实现": { "data": { - "uuid": "云原生-6-404", + "uuid": "云原生-6-405", "seg": [ [ [ - "ali", - "baba", + "alibaba", "log", "controller", "内部" ] ] ], - "level": "2", + "level": { + "min": 0.46277521761392726, + "max": 0.4627880184331797 + }, "related_data": { "blog": { "data_id": [ - "82043611", - "88895230", - "117406039", - "109616805", - "110433327", - "109160454", - "116990920" + "110433327@微服务@云原生" ] } } @@ -70379,7 +82054,7 @@ } ], "data": { - "uuid": "云原生-5-1876", + "uuid": "云原生-5-1881", "seg": [ [ [ @@ -70388,14 +82063,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46274961597542236, + "max": 0.4627880184331797 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-4-936", + "uuid": "云原生-4-934", "seg": [ [ [ @@ -70405,7 +82083,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46267281105990776, + "max": 0.4627880184331797 + }, "related_data": {} } } @@ -70419,7 +82100,7 @@ { "无状态的应用": { "data": { - "uuid": "云原生-6-405", + "uuid": "云原生-6-406", "seg": [ [ [ @@ -70427,7 +82108,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4627880184331797, + "max": 0.462797619047619 + }, "related_data": {} } } @@ -70435,7 +82119,7 @@ { "有状态的应用": { "data": { - "uuid": "云原生-6-406", + "uuid": "云原生-6-407", "seg": [ [ [ @@ -70443,14 +82127,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.462797619047619, + "max": 0.46280721966205834 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-1877", + "uuid": "云原生-5-1882", "seg": [ [ [ @@ -70459,7 +82146,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4627880184331797, + "max": 0.46280721966205834 + }, "related_data": {} } } @@ -70467,11 +82157,12 @@ { "基本单元:Pod Volume": { "data": { - "uuid": "云原生-5-1878", + "uuid": "云原生-5-1883", "seg": [ [ [ - "单元" + "单元", + "基本单元" ] ], [ @@ -70481,7 +82172,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46280721966205834, + "max": 0.46282642089093695 + }, "related_data": {} } } @@ -70489,7 +82183,7 @@ { "核心设计:PVC与PV体系": { "data": { - "uuid": "云原生-5-1879", + "uuid": "云原生-5-1884", "seg": [ [ [ @@ -70507,7 +82201,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46282642089093695, + "max": 0.4628456221198156 + }, "related_data": {} } } @@ -70518,7 +82215,7 @@ { "Volume Plugin": { "data": { - "uuid": "云原生-6-407", + "uuid": "云原生-6-408", "seg": [ [ [ @@ -70527,7 +82224,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4628456221198156, + "max": 0.46285202252944185 + }, "related_data": {} } } @@ -70535,7 +82235,7 @@ { "in-tree(内置) Volume Plugin": { "data": { - "uuid": "云原生-6-408", + "uuid": "云原生-6-409", "seg": [ [ [ @@ -70547,11 +82247,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46285202252944185, + "max": 0.46285842293906804 + }, "related_data": { "blog": { "data_id": [ - "80314707" + "80314707@控制器@云原生" ] } } @@ -70561,7 +82264,7 @@ { "out-of-tree(外置) Volume Plugin": { "data": { - "uuid": "云原生-6-409", + "uuid": "云原生-6-410", "seg": [ [ [ @@ -70574,14 +82277,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46285842293906804, + "max": 0.4628648233486943 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-1880", + "uuid": "云原生-5-1885", "seg": [ [ [], @@ -70589,11 +82295,15 @@ "特定", "存储系统", "解", - "耦" + "耦", + "特定存储系统" ] ] ], - "level": "2", + "level": { + "min": 0.4628456221198156, + "max": 0.4628648233486943 + }, "related_data": {} } } @@ -70601,7 +82311,7 @@ { "Kubernetes CSI管控组件容器化部署": { "data": { - "uuid": "云原生-5-1881", + "uuid": "云原生-5-1886", "seg": [ [ [ @@ -70611,11 +82321,17 @@ "组件", "容器", "化", - "部署" + "部署", + "组件容器", + "容器化", + "化部署" ] ] ], - "level": "2", + "level": { + "min": 0.4628648233486943, + "max": 0.4628840245775729 + }, "related_data": {} } } @@ -70623,7 +82339,7 @@ { "基于Kubernetes的存储": { "data": { - "uuid": "云原生-5-1882", + "uuid": "云原生-5-1887", "seg": [ [ [ @@ -70632,14 +82348,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4628840245775729, + "max": 0.46290322580645155 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-4-937", + "uuid": "云原生-4-935", "seg": [ [ [ @@ -70650,7 +82369,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4627880184331797, + "max": 0.46290322580645155 + }, "related_data": {} } } @@ -70664,20 +82386,24 @@ { "基础用法": { "data": { - "uuid": "云原生-6-410", + "uuid": "云原生-6-411", "seg": [ [ [ "基础", - "用法" + "用法", + "基础用法" ] ] ], - "level": "2", + "level": { + "min": 0.46290322580645155, + "max": 0.46291042626728107 + }, "related_data": { "blog": { "data_id": [ - "88219891" + "88219891@容器@云原生" ] } } @@ -70687,7 +82413,7 @@ { "配置安全路由": { "data": { - "uuid": "云原生-6-411", + "uuid": "云原生-6-412", "seg": [ [ [ @@ -70696,11 +82422,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46291042626728107, + "max": 0.46291762672811054 + }, "related_data": { "blog": { "data_id": [ - "50610287" + "50610287@中间件@云原生" ] } } @@ -70710,7 +82439,7 @@ { "全局配置和局部配置": { "data": { - "uuid": "云原生-6-412", + "uuid": "云原生-6-413", "seg": [ [ [ @@ -70723,7 +82452,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46291762672811054, + "max": 0.46292482718894 + }, "related_data": {} } } @@ -70731,7 +82463,7 @@ { "实现原理": { "data": { - "uuid": "云原生-6-413", + "uuid": "云原生-6-414", "seg": [ [ [ @@ -70739,14 +82471,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46292482718894, + "max": 0.46293202764976954 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-1883", + "uuid": "云原生-5-1888", "seg": [ [ [ @@ -70754,7 +82489,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46290322580645155, + "max": 0.46293202764976954 + }, "related_data": {} } } @@ -70765,7 +82503,7 @@ { "多入口访问Ingress": { "data": { - "uuid": "云原生-6-414", + "uuid": "云原生-6-415", "seg": [ [ [ @@ -70775,7 +82513,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46293202764976954, + "max": 0.46294642857142854 + }, "related_data": {} } } @@ -70783,7 +82524,7 @@ { "部署多套Ingress Controller": { "data": { - "uuid": "云原生-6-415", + "uuid": "云原生-6-416", "seg": [ [ [ @@ -70793,28 +82534,35 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46294642857142854, + "max": 0.4629608294930875 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-1884", + "uuid": "云原生-5-1889", "seg": [ [ [ "场景", "化", - "需求" + "需求", + "场景化" ] ] ], - "level": "2", + "level": { + "min": 0.46293202764976954, + "max": 0.4629608294930875 + }, "related_data": { "blog": { "data_id": [ - "49490339" + "49490339@docker@云原生" ] } } @@ -70827,7 +82575,7 @@ { "理解客户端真实IP地址的传递过程": { "data": { - "uuid": "云原生-6-416", + "uuid": "云原生-6-417", "seg": [ [ [ @@ -70836,11 +82584,15 @@ "真实", "ip地址", "传递", - "过程" + "过程", + "真实IP地址" ] ] ], - "level": "2", + "level": { + "min": 0.4629608294930875, + "max": 0.4629704301075268 + }, "related_data": {} } } @@ -70848,7 +82600,7 @@ { "ExternalTrafficPolicy的影响": { "data": { - "uuid": "云原生-6-417", + "uuid": "云原生-6-418", "seg": [ [ [ @@ -70857,7 +82609,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4629704301075268, + "max": 0.46298003072196614 + }, "related_data": {} } } @@ -70865,51 +82620,44 @@ { "如何获取客户端真实IP地址": { "data": { - "uuid": "云原生-6-418", + "uuid": "云原生-6-419", "seg": [ [ [ "获取", "客户端", "真实", - "ip地址" + "ip地址", + "真实IP地址" ] ] ], - "level": "2", - "related_data": { - "blog": { - "data_id": [ - "115397061", - "87974209", - "54142055", - "93385585", - "112968120", - "71082328", - "73438093", - "80700423", - "72798423", - "101262685" - ] - } - } + "level": { + "min": 0.46298003072196614, + "max": 0.46298963133640547 + }, + "related_data": {} } } } ], "data": { - "uuid": "云原生-5-1885", + "uuid": "云原生-5-1890", "seg": [ [ [ "获取", "客户端", "真实", - "ip地址" + "ip地址", + "真实IP地址" ] ] ], - "level": "2", + "level": { + "min": 0.4629608294930875, + "max": 0.46298963133640547 + }, "related_data": {} } } @@ -70917,33 +82665,41 @@ { "白名单功能": { "data": { - "uuid": "云原生-5-1886", + "uuid": "云原生-5-1891", "seg": [ [ [ "白名单", - "功能" + "功能", + "白名单功能" ] ] ], - "level": "2", + "level": { + "min": 0.46298963133640547, + "max": 0.46301843317972347 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-4-938", + "uuid": "云原生-4-936", "seg": [ [ [ "流量", "路由", - "ingress" + "ingress", + "流量路由" ] ] ], - "level": "2", + "level": { + "min": 0.46290322580645155, + "max": 0.46301843317972347 + }, "related_data": {} } } @@ -70957,18 +82713,22 @@ { "核心组件检查项": { "data": { - "uuid": "云原生-6-419", + "uuid": "云原生-6-420", "seg": [ [ [ "核心", "组件", "检查", - "项" + "项", + "核心组件" ] ] ], - "level": "2", + "level": { + "min": 0.46301843317972347, + "max": 0.46303763440860213 + }, "related_data": {} } } @@ -70976,7 +82736,7 @@ { "前置检查增项": { "data": { - "uuid": "云原生-6-420", + "uuid": "云原生-6-421", "seg": [ [ [ @@ -70986,14 +82746,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46303763440860213, + "max": 0.46305683563748073 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-1887", + "uuid": "云原生-5-1892", "seg": [ [ [ @@ -71002,7 +82765,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46301843317972347, + "max": 0.46305683563748073 + }, "related_data": {} } } @@ -71013,7 +82779,7 @@ { "原地升级": { "data": { - "uuid": "云原生-6-421", + "uuid": "云原生-6-422", "seg": [ [ [ @@ -71022,7 +82788,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46305683563748073, + "max": 0.4630760368663594 + }, "related_data": {} } } @@ -71030,7 +82799,7 @@ { "替代升级": { "data": { - "uuid": "云原生-6-422", + "uuid": "云原生-6-423", "seg": [ [ [ @@ -71038,14 +82807,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4630760368663594, + "max": 0.46309523809523806 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-1888", + "uuid": "云原生-5-1893", "seg": [ [ [ @@ -71057,7 +82829,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46305683563748073, + "max": 0.46309523809523806 + }, "related_data": {} } } @@ -71068,7 +82843,7 @@ { "升级Master节点": { "data": { - "uuid": "云原生-6-423", + "uuid": "云原生-6-424", "seg": [ [ [ @@ -71078,7 +82853,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46309523809523806, + "max": 0.4631080389144905 + }, "related_data": {} } } @@ -71086,7 +82864,7 @@ { "升级Worker节点": { "data": { - "uuid": "云原生-6-424", + "uuid": "云原生-6-425", "seg": [ [ [ @@ -71096,7 +82874,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4631080389144905, + "max": 0.4631208397337429 + }, "related_data": {} } } @@ -71104,24 +82885,28 @@ { "核心组件升级": { "data": { - "uuid": "云原生-6-425", + "uuid": "云原生-6-426", "seg": [ [ [ "核心", "组件", - "升级" + "升级", + "核心组件" ] ] ], - "level": "2", + "level": { + "min": 0.4631208397337429, + "max": 0.46313364055299533 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-1889", + "uuid": "云原生-5-1894", "seg": [ [ [ @@ -71129,14 +82914,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46309523809523806, + "max": 0.46313364055299533 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-4-939", + "uuid": "云原生-4-937", "seg": [ [ [ @@ -71146,7 +82934,10 @@ [] ] ], - "level": "2", + "level": { + "min": 0.46301843317972347, + "max": 0.46313364055299533 + }, "related_data": {} } } @@ -71160,11 +82951,16 @@ "理论", "篇", "技术", - "进阶" + "进阶", + "理论篇", + "技术进阶" ] ] ], - "level": "2", + "level": { + "min": 0.46198156682027647, + "max": 0.46313364055299533 + }, "related_data": {} } } @@ -71181,7 +82977,7 @@ { "docker daemon调用栈分析": { "data": { - "uuid": "云原生-6-426", + "uuid": "云原生-6-427", "seg": [ [ [ @@ -71193,7 +82989,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46313364055299533, + "max": 0.4631656426011264 + }, "related_data": {} } } @@ -71201,7 +83000,7 @@ { "Containerd调用栈分析": { "data": { - "uuid": "云原生-6-427", + "uuid": "云原生-6-428", "seg": [ [ [ @@ -71212,14 +83011,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4631656426011264, + "max": 0.4631976446492575 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-1890", + "uuid": "云原生-5-1895", "seg": [ [ [ @@ -71228,7 +83030,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46313364055299533, + "max": 0.4631976446492575 + }, "related_data": {} } } @@ -71239,7 +83044,7 @@ { "runC请求D-Bus": { "data": { - "uuid": "云原生-6-428", + "uuid": "云原生-6-429", "seg": [ [ [ @@ -71249,11 +83054,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4631976446492575, + "max": 0.4632296466973886 + }, "related_data": { "blog": { "data_id": [ - "82698744" + "82698744@cloud@云原生" ] } } @@ -71263,24 +83071,28 @@ { "原因并不在D-Bus": { "data": { - "uuid": "云原生-6-429", + "uuid": "云原生-6-430", "seg": [ [ [ "原因", + "不在", "d", "bus" ] ] ], - "level": "2", + "level": { + "min": 0.4632296466973886, + "max": 0.46326164874551967 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-1891", + "uuid": "云原生-5-1896", "seg": [ [ [ @@ -71289,7 +83101,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4631976446492575, + "max": 0.46326164874551967 + }, "related_data": {} } } @@ -71300,7 +83115,7 @@ { "“没用”的core dump": { "data": { - "uuid": "云原生-6-430", + "uuid": "云原生-6-431", "seg": [ [ [ @@ -71310,11 +83125,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46326164874551967, + "max": 0.4632776497695852 + }, "related_data": { "blog": { "data_id": [ - "80363060" + "80363060@eureka@云原生" ] } } @@ -71324,7 +83142,7 @@ { "零散的信息": { "data": { - "uuid": "云原生-6-431", + "uuid": "云原生-6-432", "seg": [ [ [ @@ -71333,7 +83151,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4632776497695852, + "max": 0.46329365079365076 + }, "related_data": {} } } @@ -71341,7 +83162,7 @@ { "代码分析": { "data": { - "uuid": "云原生-6-432", + "uuid": "云原生-6-433", "seg": [ [ [ @@ -71349,7 +83170,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46329365079365076, + "max": 0.46330965181771633 + }, "related_data": {} } } @@ -71357,7 +83181,7 @@ { "Live Debugging": { "data": { - "uuid": "云原生-6-433", + "uuid": "云原生-6-434", "seg": [ [ [ @@ -71366,14 +83190,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46330965181771633, + "max": 0.46332565284178184 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-1892", + "uuid": "云原生-5-1897", "seg": [ [ [ @@ -71382,12 +83209,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46326164874551967, + "max": 0.46332565284178184 + }, "related_data": { "blog": { "data_id": [ - "80493760", - "113577081" + "80493760@docker@云原生", + "113577081@cloud@云原生" ] } } @@ -71396,7 +83226,7 @@ } ], "data": { - "uuid": "云原生-4-940", + "uuid": "云原生-4-938", "seg": [ [ [ @@ -71407,7 +83237,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46313364055299533, + "max": 0.46332565284178184 + }, "related_data": {} } } @@ -71418,16 +83251,20 @@ { "节点状态机": { "data": { - "uuid": "云原生-5-1893", + "uuid": "云原生-5-1898", "seg": [ [ [ "节点", - "状态机" + "状态机", + "节点状态机" ] ] ], - "level": "2", + "level": { + "min": 0.46332565284178184, + "max": 0.46335765488991293 + }, "related_data": {} } } @@ -71435,7 +83272,7 @@ { "就绪三分钟": { "data": { - "uuid": "云原生-5-1894", + "uuid": "云原生-5-1899", "seg": [ [ [ @@ -71443,7 +83280,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46335765488991293, + "max": 0.463389656938044 + }, "related_data": {} } } @@ -71451,7 +83291,7 @@ { "止步不前的PLEG": { "data": { - "uuid": "云原生-5-1895", + "uuid": "云原生-5-1900", "seg": [ [ [ @@ -71460,7 +83300,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.463389656938044, + "max": 0.46342165898617504 + }, "related_data": {} } } @@ -71468,7 +83311,7 @@ { "无响应的Terwayd": { "data": { - "uuid": "云原生-5-1896", + "uuid": "云原生-5-1901", "seg": [ [ [ @@ -71477,7 +83320,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46342165898617504, + "max": 0.46345366103430613 + }, "related_data": {} } } @@ -71485,7 +83331,7 @@ { "原因": { "data": { - "uuid": "云原生-5-1897", + "uuid": "云原生-5-1902", "seg": [ [ [ @@ -71493,7 +83339,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46345366103430613, + "max": 0.4634856630824372 + }, "related_data": {} } } @@ -71501,7 +83350,7 @@ { "修复": { "data": { - "uuid": "云原生-5-1898", + "uuid": "云原生-5-1903", "seg": [ [ [ @@ -71509,14 +83358,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4634856630824372, + "max": 0.4635176651305683 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-4-941", + "uuid": "云原生-4-939", "seg": [ [ [ @@ -71527,7 +83379,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46332565284178184, + "max": 0.4635176651305683 + }, "related_data": {} } } @@ -71538,7 +83393,7 @@ { "集群管控入口": { "data": { - "uuid": "云原生-5-1899", + "uuid": "云原生-5-1904", "seg": [ [ [ @@ -71548,7 +83403,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4635176651305683, + "max": 0.46355606758832557 + }, "related_data": {} } } @@ -71559,7 +83417,7 @@ { "删除收纳盒里的资源": { "data": { - "uuid": "云原生-6-434", + "uuid": "云原生-6-435", "seg": [ [ [ @@ -71569,7 +83427,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46355606758832557, + "max": 0.463568868407578 + }, "related_data": {} } } @@ -71577,7 +83438,7 @@ { "API、Group、Version": { "data": { - "uuid": "云原生-6-435", + "uuid": "云原生-6-436", "seg": [ [ [ @@ -71591,7 +83452,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.463568868407578, + "max": 0.4635816692268305 + }, "related_data": {} } } @@ -71599,7 +83463,7 @@ { "控制器不能删除命名空间里的资源": { "data": { - "uuid": "云原生-6-436", + "uuid": "云原生-6-437", "seg": [ [ [ @@ -71607,34 +83471,37 @@ "删除", "命名", "空间", - "资源" + "资源", + "命名空间" ] ] ], - "level": "2", - "related_data": { - "blog": { - "data_id": [ - "80712245" - ] - } - } + "level": { + "min": 0.4635816692268305, + "max": 0.4635944700460829 + }, + "related_data": {} } } } ], "data": { - "uuid": "云原生-5-1900", + "uuid": "云原生-5-1905", "seg": [ [ [ "命名", "空间", - "控制器" + "控制器", + "命名空间", + "空间控制器" ] ] ], - "level": "2", + "level": { + "min": 0.46355606758832557, + "max": 0.4635944700460829 + }, "related_data": {} } } @@ -71642,7 +83509,7 @@ { "回到集群管控入口": { "data": { - "uuid": "云原生-5-1901", + "uuid": "云原生-5-1906", "seg": [ [ [ @@ -71653,7 +83520,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4635944700460829, + "max": 0.46363287250384017 + }, "related_data": {} } } @@ -71661,7 +83531,7 @@ { "节点与Pod的通信": { "data": { - "uuid": "云原生-5-1902", + "uuid": "云原生-5-1907", "seg": [ [ [ @@ -71673,7 +83543,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46363287250384017, + "max": 0.4636712749615975 + }, "related_data": {} } } @@ -71681,7 +83554,7 @@ { "集群节点访问云资源": { "data": { - "uuid": "云原生-5-1903", + "uuid": "云原生-5-1908", "seg": [ [ [ @@ -71689,18 +83562,23 @@ "节点", "访问", "云", - "资源" + "资源", + "集群节点", + "云资源" ] ] ], - "level": "2", + "level": { + "min": 0.4636712749615975, + "max": 0.46370967741935476 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-4-942", + "uuid": "云原生-4-940", "seg": [ [ [ @@ -71708,11 +83586,15 @@ "空间", "回收", "机制", - "失效" + "失效", + "命名空间" ] ] ], - "level": "2", + "level": { + "min": 0.4635176651305683, + "max": 0.46370967741935476 + }, "related_data": {} } } @@ -71723,7 +83605,7 @@ { "安全组扮演的角色": { "data": { - "uuid": "云原生-5-1904", + "uuid": "云原生-5-1909", "seg": [ [ [ @@ -71732,7 +83614,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46370967741935476, + "max": 0.46377368151561693 + }, "related_data": {} } } @@ -71740,17 +83625,21 @@ { "安全组与集群网络": { "data": { - "uuid": "云原生-5-1905", + "uuid": "云原生-5-1910", "seg": [ [ [ "组与", "集群", - "网络" + "网络", + "集群网络" ] ] ], - "level": "2", + "level": { + "min": 0.46377368151561693, + "max": 0.4638376856118791 + }, "related_data": {} } } @@ -71761,17 +83650,20 @@ { "限制集群访问外网": { "data": { - "uuid": "云原生-6-437", + "uuid": "云原生-6-438", "seg": [ [ [ "集群", "访问", - "网" + "外网" ] ] ], - "level": "2", + "level": { + "min": 0.4638376856118791, + "max": 0.46385902031063314 + }, "related_data": {} } } @@ -71779,7 +83671,7 @@ { "IDC与集群互访": { "data": { - "uuid": "云原生-6-438", + "uuid": "云原生-6-439", "seg": [ [ [ @@ -71791,11 +83683,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46385902031063314, + "max": 0.46388035500938724 + }, "related_data": { "blog": { "data_id": [ - "115398339" + "115398339@无服务器@云原生" ] } } @@ -71805,7 +83700,7 @@ { "使用新的安全组管理节点": { "data": { - "uuid": "云原生-6-439", + "uuid": "云原生-6-440", "seg": [ [ [ @@ -71814,14 +83709,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46388035500938724, + "max": 0.4639016897081413 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-5-1906", + "uuid": "云原生-5-1911", "seg": [ [ [ @@ -71830,14 +83728,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4638376856118791, + "max": 0.4639016897081413 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-4-943", + "uuid": "云原生-4-941", "seg": [ [ [ @@ -71849,7 +83750,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46370967741935476, + "max": 0.4639016897081413 + }, "related_data": {} } } @@ -71860,7 +83764,7 @@ { "代理与代理的生命周期管理": { "data": { - "uuid": "云原生-5-1907", + "uuid": "云原生-5-1912", "seg": [ [ [ @@ -71873,7 +83777,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4639016897081413, + "max": 0.46394969278033793 + }, "related_data": {} } } @@ -71881,7 +83788,7 @@ { "控制面和数据面": { "data": { - "uuid": "云原生-5-1908", + "uuid": "云原生-5-1913", "seg": [ [ [ @@ -71890,11 +83797,15 @@ ], [ "数据", - "面" + "面", + "数据面" ] ] ], - "level": "2", + "level": { + "min": 0.46394969278033793, + "max": 0.46399769585253453 + }, "related_data": {} } } @@ -71902,7 +83813,7 @@ { "简单的原因": { "data": { - "uuid": "云原生-5-1909", + "uuid": "云原生-5-1914", "seg": [ [ [ @@ -71910,7 +83821,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46399769585253453, + "max": 0.46404569892473113 + }, "related_data": {} } } @@ -71918,7 +83832,7 @@ { "阿里云服务网格(ASM)介绍": { "data": { - "uuid": "云原生-5-1910", + "uuid": "云原生-5-1915", "seg": [ [ [ @@ -71927,24 +83841,28 @@ "服务", "网格", "asm", - "介绍" + "介绍", + "阿里云" ] ] ], - "level": "2", + "level": { + "min": 0.46404569892473113, + "max": 0.4640937019969278 + }, "related_data": { "blog": { "data_id": [ - "108931831", - "108922599", - "108931112", - "54411392", - "84954935", - "77283193", - "108932943", - "10944819", - "8577784", - "73506035" + "54411392@阿里云@云原生", + "77283193@阿里云@云原生", + "108505637@阿里云@云原生", + "79115010@阿里云@云原生", + "110383930@阿里云@云原生", + "106167009@阿里云@云原生", + "81915785@mesh@云原生", + "81807071@mesh@云原生", + "81749786@mesh@云原生", + "51637223@mesh@云原生" ] } } @@ -71953,7 +83871,7 @@ } ], "data": { - "uuid": "云原生-4-944", + "uuid": "云原生-4-942", "seg": [ [ [ @@ -71964,7 +83882,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4639016897081413, + "max": 0.4640937019969278 + }, "related_data": {} } } @@ -71975,7 +83896,7 @@ { "连续重启的Citadel": { "data": { - "uuid": "云原生-5-1911", + "uuid": "云原生-5-1916", "seg": [ [ [ @@ -71985,7 +83906,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4640937019969278, + "max": 0.4641257040450589 + }, "related_data": {} } } @@ -71993,7 +83917,7 @@ { "一般意义上的证书验证": { "data": { - "uuid": "云原生-5-1912", + "uuid": "云原生-5-1917", "seg": [ [ [ @@ -72003,7 +83927,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4641257040450589, + "max": 0.46415770609318996 + }, "related_data": {} } } @@ -72011,7 +83938,7 @@ { "自签名证书验证失败": { "data": { - "uuid": "云原生-5-1913", + "uuid": "云原生-5-1918", "seg": [ [ [ @@ -72022,7 +83949,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46415770609318996, + "max": 0.464189708141321 + }, "related_data": {} } } @@ -72030,7 +83960,7 @@ { "大神定理": { "data": { - "uuid": "云原生-5-1914", + "uuid": "云原生-5-1919", "seg": [ [ [ @@ -72038,7 +83968,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.464189708141321, + "max": 0.4642217101894521 + }, "related_data": {} } } @@ -72046,17 +83979,21 @@ { "Citadel证书体系": { "data": { - "uuid": "云原生-5-1915", + "uuid": "云原生-5-1920", "seg": [ [ [ "citadel", "证书", - "体系" + "体系", + "证书体系" ] ] ], - "level": "2", + "level": { + "min": 0.4642217101894521, + "max": 0.46425371223758316 + }, "related_data": {} } } @@ -72064,7 +84001,7 @@ { "经验": { "data": { - "uuid": "云原生-5-1916", + "uuid": "云原生-5-1921", "seg": [ [ [ @@ -72072,14 +84009,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46425371223758316, + "max": 0.46428571428571425 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-4-945", + "uuid": "云原生-4-943", "seg": [ [ [ @@ -72089,7 +84029,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4640937019969278, + "max": 0.46428571428571425 + }, "related_data": {} } } @@ -72107,7 +84050,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46313364055299533, + "max": 0.46428571428571425 + }, "related_data": {} } } @@ -72122,7 +84068,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.42857142857142855, + "max": 0.46428571428571425 + }, "related_data": {} } } @@ -72139,7 +84088,7 @@ { "CUE(Cisco Unity Express)": { "data": { - "uuid": "云原生-5-1917", + "uuid": "云原生-5-1922", "seg": [ [ [ @@ -72150,15 +84099,31 @@ ] ] ], - "level": "2", - "related_data": {} + "level": { + "min": 0.46428571428571425, + "max": 0.4657738095238095 + }, + "related_data": { + "blog": { + "data_id": [ + "50518069@中间件@云原生", + "52818204@mesh@云原生", + "50442478@中间件@云原生", + "88695474@mesh@云原生", + "77843519@mesh@云原生", + "43668349@mesh@云原生", + "108909396@mesh@云原生", + "53708758@mesh@云原生" + ] + } + } } } }, { "Jsonnet": { "data": { - "uuid": "云原生-5-1918", + "uuid": "云原生-5-1923", "seg": [ [ [ @@ -72166,7 +84131,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4657738095238095, + "max": 0.4672619047619047 + }, "related_data": {} } } @@ -72174,7 +84142,7 @@ { "HCL": { "data": { - "uuid": "云原生-5-1919", + "uuid": "云原生-5-1924", "seg": [ [ [ @@ -72182,7 +84150,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4672619047619047, + "max": 0.46875 + }, "related_data": {} } } @@ -72190,7 +84161,7 @@ { "BCL": { "data": { - "uuid": "云原生-5-1920", + "uuid": "云原生-5-1925", "seg": [ [ [ @@ -72198,7 +84169,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46875, + "max": 0.47023809523809523 + }, "related_data": {} } } @@ -72206,7 +84180,7 @@ { "KubeVela": { "data": { - "uuid": "云原生-5-1921", + "uuid": "云原生-5-1926", "seg": [ [ [ @@ -72214,7 +84188,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.47023809523809523, + "max": 0.47172619047619047 + }, "related_data": {} } } @@ -72222,7 +84199,7 @@ { "Terraform": { "data": { - "uuid": "云原生-5-1922", + "uuid": "云原生-5-1927", "seg": [ [ [ @@ -72232,11 +84209,20 @@ ] ] ], - "level": "2", + "level": { + "min": 0.47172619047619047, + "max": 0.4732142857142857 + }, "related_data": { "blog": { "data_id": [ - "115628929" + "115628929@devops@云原生", + "53893672@oauth@云原生", + "96889697@无服务器@云原生", + "112598022@控制器@云原生", + "109192472@cloud@云原生", + "90112241@cloud@云原生", + "108806597@分布式@云原生" ] } } @@ -72245,7 +84231,7 @@ } ], "data": { - "uuid": "云原生-4-946", + "uuid": "云原生-4-944", "seg": [ [ [ @@ -72253,7 +84239,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46428571428571425, + "max": 0.4732142857142857 + }, "related_data": {} } } @@ -72268,7 +84257,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46428571428571425, + "max": 0.4732142857142857 + }, "related_data": {} } } @@ -72279,7 +84271,7 @@ { "GraphQL": { "data": { - "uuid": "云原生-4-947", + "uuid": "云原生-4-945", "seg": [ [ [ @@ -72287,7 +84279,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4732142857142857, + "max": 0.47619047619047616 + }, "related_data": {} } } @@ -72295,7 +84290,7 @@ { "Swagger UI": { "data": { - "uuid": "云原生-4-948", + "uuid": "云原生-4-946", "seg": [ [ [ @@ -72304,7 +84299,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.47619047619047616, + "max": 0.47916666666666663 + }, "related_data": {} } } @@ -72312,7 +84310,7 @@ { "gRPC": { "data": { - "uuid": "云原生-4-949", + "uuid": "云原生-4-947", "seg": [ [ [ @@ -72320,7 +84318,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.47916666666666663, + "max": 0.4821428571428571 + }, "related_data": {} } } @@ -72335,7 +84336,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4732142857142857, + "max": 0.4821428571428571 + }, "related_data": {} } } @@ -72346,7 +84350,7 @@ { "OpenTracing标准": { "data": { - "uuid": "云原生-4-950", + "uuid": "云原生-4-948", "seg": [ [ [ @@ -72355,7 +84359,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4821428571428571, + "max": 0.4839285714285714 + }, "related_data": {} } } @@ -72363,7 +84370,7 @@ { "SkyWalking": { "data": { - "uuid": "云原生-4-951", + "uuid": "云原生-4-949", "seg": [ [ [ @@ -72371,7 +84378,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4839285714285714, + "max": 0.48571428571428565 + }, "related_data": {} } } @@ -72379,7 +84389,7 @@ { "Zipkin": { "data": { - "uuid": "云原生-4-952", + "uuid": "云原生-4-950", "seg": [ [ [ @@ -72387,7 +84397,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.48571428571428565, + "max": 0.4875 + }, "related_data": {} } } @@ -72395,7 +84408,7 @@ { "Jaeger": { "data": { - "uuid": "云原生-4-953", + "uuid": "云原生-4-951", "seg": [ [ [ @@ -72403,7 +84416,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4875, + "max": 0.48928571428571427 + }, "related_data": {} } } @@ -72411,7 +84427,7 @@ { "Sonobuoy": { "data": { - "uuid": "云原生-4-954", + "uuid": "云原生-4-952", "seg": [ [ [ @@ -72419,7 +84435,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.48928571428571427, + "max": 0.49107142857142855 + }, "related_data": {} } } @@ -72434,7 +84453,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.4821428571428571, + "max": 0.49107142857142855 + }, "related_data": {} } } @@ -72445,7 +84467,7 @@ { "Litmus": { "data": { - "uuid": "云原生-4-955", + "uuid": "云原生-4-953", "seg": [ [ [ @@ -72453,7 +84475,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49107142857142855, + "max": 0.4955357142857143 + }, "related_data": {} } } @@ -72461,24 +84486,19 @@ { "Sysbench": { "data": { - "uuid": "云原生-4-956", + "uuid": "云原生-4-954", "seg": [ [ [ - "sys", - "ben", - "ch" + "sysbench" ] ] ], - "level": "2", - "related_data": { - "blog": { - "data_id": [ - "113796788" - ] - } - } + "level": { + "min": 0.4955357142857143, + "max": 0.5 + }, + "related_data": {} } } } @@ -72492,7 +84512,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.49107142857142855, + "max": 0.5 + }, "related_data": {} } } @@ -72507,7 +84530,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.46428571428571425, + "max": 0.5 + }, "related_data": {} } } @@ -72526,11 +84552,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.5, + "max": 0.5119047619047619 + }, "related_data": { "blog": { "data_id": [ - "50427312" + "50427312@etcd@云原生" ] } } @@ -72544,13 +84573,15 @@ "seg": [ [ [ - "ali", - "baba", + "alibaba", "linux" ] ] ], - "level": "2", + "level": { + "min": 0.5119047619047619, + "max": 0.5238095238095238 + }, "related_data": {} } } @@ -72567,7 +84598,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.5238095238095238, + "max": 0.5357142857142857 + }, "related_data": {} } } @@ -72582,7 +84616,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.5, + "max": 0.5357142857142857 + }, "related_data": {} } } @@ -72596,7 +84633,10 @@ [] ] ], - "level": "2", + "level": { + "min": 0.5357142857142857, + "max": 0.5714285714285714 + }, "related_data": {} } } @@ -72611,10 +84651,16 @@ "原生", "中阶", "平台", - "开发" + "开发", + "云原生", + "原生中阶" ] ] ], + "level": { + "min": 0.42857142857142855, + "max": 0.5714285714285714 + }, "related_data": {} } } @@ -72631,7 +84677,7 @@ { "Spring Cloud Connector": { "data": { - "uuid": "云原生-4-957", + "uuid": "云原生-4-955", "seg": [ [ [ @@ -72641,7 +84687,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.5714285714285714, + "max": 0.5952380952380951 + }, "related_data": {} } } @@ -72649,7 +84698,7 @@ { "Open Service Broker": { "data": { - "uuid": "云原生-4-958", + "uuid": "云原生-4-956", "seg": [ [ [ @@ -72659,7 +84708,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.5952380952380951, + "max": 0.619047619047619 + }, "related_data": {} } } @@ -72675,7 +84727,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.5714285714285714, + "max": 0.619047619047619 + }, "related_data": {} } } @@ -72690,7 +84745,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.5714285714285714, + "max": 0.619047619047619 + }, "related_data": {} } } @@ -72707,7 +84765,7 @@ { "Alpine Portola": { "data": { - "uuid": "云原生-5-1923", + "uuid": "云原生-5-1928", "seg": [ [ [ @@ -72716,7 +84774,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.619047619047619, + "max": 0.6243386243386243 + }, "related_data": {} } } @@ -72724,7 +84785,7 @@ { "JDK (version >= 9)": { "data": { - "uuid": "云原生-5-1924", + "uuid": "云原生-5-1929", "seg": [ [ [ @@ -72733,7 +84794,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.6243386243386243, + "max": 0.6296296296296295 + }, "related_data": {} } } @@ -72741,7 +84805,7 @@ { "Spring Boot (version > 2.3)": { "data": { - "uuid": "云原生-5-1925", + "uuid": "云原生-5-1930", "seg": [ [ [ @@ -72751,14 +84815,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.6296296296296295, + "max": 0.6349206349206349 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-4-959", + "uuid": "云原生-4-957", "seg": [ [ [ @@ -72767,7 +84834,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.619047619047619, + "max": 0.6349206349206349 + }, "related_data": {} } } @@ -72778,7 +84848,7 @@ { "Project Panama": { "data": { - "uuid": "云原生-5-1926", + "uuid": "云原生-5-1931", "seg": [ [ [ @@ -72787,7 +84857,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.6349206349206349, + "max": 0.6428571428571428 + }, "related_data": {} } } @@ -72795,7 +84868,7 @@ { "Project Valhalla": { "data": { - "uuid": "云原生-5-1927", + "uuid": "云原生-5-1932", "seg": [ [ [ @@ -72804,24 +84877,31 @@ ] ] ], - "level": "2", + "level": { + "min": 0.6428571428571428, + "max": 0.6507936507936507 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-4-960", + "uuid": "云原生-4-958", "seg": [ [ [ "降低", "资源", - "占用率" + "占用率", + "资源占用率" ] ] ], - "level": "2", + "level": { + "min": 0.6349206349206349, + "max": 0.6507936507936507 + }, "related_data": {} } } @@ -72832,7 +84912,7 @@ { "GraalVM": { "data": { - "uuid": "云原生-5-1928", + "uuid": "云原生-5-1933", "seg": [ [ [ @@ -72840,12 +84920,15 @@ ] ] ], - "level": "2", + "level": { + "min": 0.6507936507936507, + "max": 0.6547619047619047 + }, "related_data": { "blog": { "data_id": [ - "111290040", - "103324194" + "111290040@云原生@云原生", + "103324194@无服务器@云原生" ] } } @@ -72855,7 +84938,7 @@ { "Quarkus": { "data": { - "uuid": "云原生-5-1929", + "uuid": "云原生-5-1934", "seg": [ [ [ @@ -72863,11 +84946,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.6547619047619047, + "max": 0.6587301587301586 + }, "related_data": { "blog": { "data_id": [ - "114027903" + "114027903@云原生@云原生" ] } } @@ -72877,7 +84963,7 @@ { "Micronaut": { "data": { - "uuid": "云原生-5-1930", + "uuid": "云原生-5-1935", "seg": [ [ [ @@ -72885,7 +84971,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.6587301587301586, + "max": 0.6626984126984127 + }, "related_data": {} } } @@ -72893,7 +84982,7 @@ { "Helidon": { "data": { - "uuid": "云原生-5-1931", + "uuid": "云原生-5-1936", "seg": [ [ [ @@ -72901,24 +84990,31 @@ ] ] ], - "level": "2", + "level": { + "min": 0.6626984126984127, + "max": 0.6666666666666666 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-4-961", + "uuid": "云原生-4-959", "seg": [ [ [ "缩短", "冷启动", - "时间" + "时间", + "冷启动时间" ] ] ], - "level": "2", + "level": { + "min": 0.6507936507936507, + "max": 0.6666666666666666 + }, "related_data": {} } } @@ -72933,20 +85029,23 @@ ] ] ], - "level": "2", + "level": { + "min": 0.619047619047619, + "max": 0.6666666666666666 + }, "related_data": { "blog": { "data_id": [ - "116266501", - "89219985", - "109063041", - "51130030", - "83619274", - "109040570", - "97156939", - "71698167", - "51594039", - "102694262" + "116266501@docker@云原生", + "89219985@oauth@云原生", + "109063041@docker@云原生", + "51130030@oauth@云原生", + "83619274@cloud@云原生", + "109040570@docker@云原生", + "97156939@容器@云原生", + "71698167@中间件@云原生", + "51594039@中间件@云原生", + "102694262@服务发现@云原生" ] } } @@ -72963,7 +85062,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.619047619047619, + "max": 0.6666666666666666 + }, "related_data": {} } } @@ -72977,7 +85079,10 @@ [] ] ], - "level": "2", + "level": { + "min": 0.6666666666666666, + "max": 0.7142857142857142 + }, "related_data": {} } } @@ -72991,10 +85096,16 @@ "云", "原生", "高阶", - "开发" + "开发", + "云原生", + "原生高阶" ] ] ], + "level": { + "min": 0.5714285714285714, + "max": 0.7142857142857142 + }, "related_data": {} } } @@ -73014,7 +85125,7 @@ { "Flannel": { "data": { - "uuid": "云原生-5-1932", + "uuid": "云原生-5-1937", "seg": [ [ [ @@ -73022,7 +85133,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7142857142857142, + "max": 0.7150297619047619 + }, "related_data": {} } } @@ -73030,7 +85144,7 @@ { "Calico": { "data": { - "uuid": "云原生-5-1933", + "uuid": "云原生-5-1938", "seg": [ [ [ @@ -73038,7 +85152,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7150297619047619, + "max": 0.7157738095238094 + }, "related_data": {} } } @@ -73046,7 +85163,7 @@ { "Weave": { "data": { - "uuid": "云原生-5-1934", + "uuid": "云原生-5-1939", "seg": [ [ [ @@ -73054,7 +85171,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7157738095238094, + "max": 0.716517857142857 + }, "related_data": {} } } @@ -73062,7 +85182,7 @@ { "OVN(Open Virtual Network)": { "data": { - "uuid": "云原生-5-1935", + "uuid": "云原生-5-1940", "seg": [ [ [ @@ -73073,7 +85193,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.716517857142857, + "max": 0.7172619047619047 + }, "related_data": {} } } @@ -73081,7 +85204,7 @@ { "SR-IOV(Single-root Input/Output Virtualization)": { "data": { - "uuid": "云原生-5-1936", + "uuid": "云原生-5-1941", "seg": [ [ [ @@ -73095,11 +85218,14 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7172619047619047, + "max": 0.7180059523809523 + }, "related_data": { "blog": { "data_id": [ - "89524957" + "89524957@控制器@云原生" ] } } @@ -73109,7 +85235,7 @@ { "Romana": { "data": { - "uuid": "云原生-5-1937", + "uuid": "云原生-5-1942", "seg": [ [ [ @@ -73117,7 +85243,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7180059523809523, + "max": 0.7187499999999999 + }, "related_data": {} } } @@ -73125,7 +85254,7 @@ { "OpenContrail": { "data": { - "uuid": "云原生-5-1938", + "uuid": "云原生-5-1943", "seg": [ [ [ @@ -73133,7 +85262,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7187499999999999, + "max": 0.7194940476190474 + }, "related_data": {} } } @@ -73141,7 +85273,7 @@ { "Kuryr": { "data": { - "uuid": "云原生-5-1939", + "uuid": "云原生-5-1944", "seg": [ [ [ @@ -73149,14 +85281,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7194940476190474, + "max": 0.7202380952380951 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-4-962", + "uuid": "云原生-4-960", "seg": [ [ [ @@ -73167,7 +85302,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7142857142857142, + "max": 0.7202380952380951 + }, "related_data": {} } } @@ -73178,7 +85316,7 @@ { "Frakti": { "data": { - "uuid": "云原生-5-1940", + "uuid": "云原生-5-1945", "seg": [ [ [ @@ -73186,14 +85324,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7202380952380951, + "max": 0.726190476190476 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-4-963", + "uuid": "云原生-4-961", "seg": [ [ [ @@ -73204,7 +85345,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7202380952380951, + "max": 0.726190476190476 + }, "related_data": {} } } @@ -73215,7 +85359,7 @@ { "FlexVolume": { "data": { - "uuid": "云原生-5-1941", + "uuid": "云原生-5-1946", "seg": [ [ [ @@ -73223,7 +85367,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.726190476190476, + "max": 0.7291666666666665 + }, "related_data": {} } } @@ -73231,7 +85378,7 @@ { "GlusterFS": { "data": { - "uuid": "云原生-5-1942", + "uuid": "云原生-5-1947", "seg": [ [ [ @@ -73239,14 +85386,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7291666666666665, + "max": 0.732142857142857 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-4-964", + "uuid": "云原生-4-962", "seg": [ [ [ @@ -73257,7 +85407,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.726190476190476, + "max": 0.732142857142857 + }, "related_data": {} } } @@ -73272,7 +85425,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7142857142857142, + "max": 0.732142857142857 + }, "related_data": {} } } @@ -73283,7 +85439,7 @@ { "Cloud Foundry": { "data": { - "uuid": "云原生-4-965", + "uuid": "云原生-4-963", "seg": [ [ [ @@ -73292,16 +85448,19 @@ ] ] ], - "level": "2", + "level": { + "min": 0.732142857142857, + "max": 0.7366071428571427 + }, "related_data": { "blog": { "data_id": [ - "49861897", - "7192000", - "44591591", - "45041319", - "45054165", - "8047329" + "49861897@paas@云原生", + "7192000@paas@云原生", + "44591591@paas@云原生", + "45041319@paas@云原生", + "45054165@paas@云原生", + "8047329@paas@云原生" ] } } @@ -73311,7 +85470,7 @@ { "Crossplane": { "data": { - "uuid": "云原生-4-966", + "uuid": "云原生-4-964", "seg": [ [ [ @@ -73319,7 +85478,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7366071428571427, + "max": 0.7410714285714284 + }, "related_data": {} } } @@ -73327,7 +85489,7 @@ { "Anthos": { "data": { - "uuid": "云原生-4-967", + "uuid": "云原生-4-965", "seg": [ [ [ @@ -73335,7 +85497,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7410714285714284, + "max": 0.7455357142857142 + }, "related_data": {} } } @@ -73343,7 +85508,7 @@ { "KubeSphere": { "data": { - "uuid": "云原生-4-968", + "uuid": "云原生-4-966", "seg": [ [ [ @@ -73351,7 +85516,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7455357142857142, + "max": 0.7499999999999999 + }, "related_data": {} } } @@ -73366,7 +85534,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.732142857142857, + "max": 0.7499999999999999 + }, "related_data": {} } } @@ -73381,7 +85552,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7142857142857142, + "max": 0.7499999999999999 + }, "related_data": {} } } @@ -73398,7 +85572,7 @@ { "Operator": { "data": { - "uuid": "云原生-5-1943", + "uuid": "云原生-5-1948", "seg": [ [ [ @@ -73406,7 +85580,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7499999999999999, + "max": 0.7589285714285713 + }, "related_data": {} } } @@ -73414,7 +85591,7 @@ { "Pulumi": { "data": { - "uuid": "云原生-5-1944", + "uuid": "云原生-5-1949", "seg": [ [ [ @@ -73422,7 +85599,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7589285714285713, + "max": 0.7678571428571428 + }, "related_data": {} } } @@ -73430,7 +85610,7 @@ { "Ballerina": { "data": { - "uuid": "云原生-5-1945", + "uuid": "云原生-5-1950", "seg": [ [ [ @@ -73438,7 +85618,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7678571428571428, + "max": 0.7767857142857142 + }, "related_data": {} } } @@ -73446,7 +85629,7 @@ { "cdk8s": { "data": { - "uuid": "云原生-5-1946", + "uuid": "云原生-5-1951", "seg": [ [ [ @@ -73454,14 +85637,17 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7767857142857142, + "max": 0.7857142857142856 + }, "related_data": {} } } } ], "data": { - "uuid": "云原生-4-969", + "uuid": "云原生-4-967", "seg": [ [ [ @@ -73469,7 +85655,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7499999999999999, + "max": 0.7857142857142856 + }, "related_data": {} } } @@ -73484,7 +85673,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7499999999999999, + "max": 0.7857142857142856 + }, "related_data": {} } } @@ -73499,7 +85691,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7499999999999999, + "max": 0.7857142857142856 + }, "related_data": {} } } @@ -73513,7 +85708,7 @@ { "Database Mesh": { "data": { - "uuid": "云原生-4-970", + "uuid": "云原生-4-968", "seg": [ [ [ @@ -73522,7 +85717,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7857142857142856, + "max": 0.8035714285714285 + }, "related_data": {} } } @@ -73537,7 +85735,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7857142857142856, + "max": 0.8035714285714285 + }, "related_data": {} } } @@ -73548,7 +85749,7 @@ { "Kubeflow": { "data": { - "uuid": "云原生-4-971", + "uuid": "云原生-4-969", "seg": [ [ [ @@ -73556,7 +85757,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.8035714285714285, + "max": 0.8095238095238094 + }, "related_data": {} } } @@ -73564,7 +85768,7 @@ { "Fluid": { "data": { - "uuid": "云原生-4-972", + "uuid": "云原生-4-970", "seg": [ [ [ @@ -73572,7 +85776,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.8095238095238094, + "max": 0.8154761904761905 + }, "related_data": {} } } @@ -73580,7 +85787,7 @@ { "KubeTEE": { "data": { - "uuid": "云原生-4-973", + "uuid": "云原生-4-971", "seg": [ [ [ @@ -73588,7 +85795,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.8154761904761905, + "max": 0.8214285714285714 + }, "related_data": {} } } @@ -73603,7 +85813,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.8035714285714285, + "max": 0.8214285714285714 + }, "related_data": {} } } @@ -73618,7 +85831,10 @@ ] ] ], - "level": "2", + "level": { + "min": 0.7857142857142856, + "max": 0.8214285714285714 + }, "related_data": {} } } @@ -73632,7 +85848,10 @@ [] ] ], - "level": "2", + "level": { + "min": 0.8214285714285714, + "max": 0.8571428571428571 + }, "related_data": {} } } @@ -73647,10 +85866,16 @@ "原生", "高阶", "平台", - "开发" + "开发", + "云原生", + "原生高阶" ] ] ], + "level": { + "min": 0.7142857142857142, + "max": 0.8571428571428571 + }, "related_data": {} } } @@ -73666,10 +85891,16 @@ [ [ "类别", - "标签" + "标签", + "类别标签", + "标签问题" ] ] ], + "level": { + "min": 0.8571428571428571, + "max": 0.9047619047619048 + }, "related_data": {} } } @@ -73685,6 +85916,10 @@ ] ] ], + "level": { + "min": 0.9047619047619048, + "max": 0.9523809523809523 + }, "related_data": {} } } @@ -73700,6 +85935,10 @@ ] ] ], + "level": { + "min": 0.9523809523809523, + "max": 1.0 + }, "related_data": {} } } @@ -73712,6 +85951,10 @@ [] ] ], + "level": { + "min": 0.8571428571428571, + "max": 1.0 + }, "related_data": {} } } @@ -73726,10 +85969,15 @@ "roadmap", "云", "原生", - "revised" + "revised", + "云原生" ] ] ], + "level": { + "min": 0, + "max": 1 + }, "related_data": {} } } diff --git "a/data/\344\272\221\345\216\237\347\224\237_tree.txt" "b/data/\344\272\221\345\216\237\347\224\237_tree.txt" index ad28fa9..705d533 100644 --- "a/data/\344\272\221\345\216\237\347\224\237_tree.txt" +++ "b/data/\344\272\221\345\216\237\347\224\237_tree.txt" @@ -1,3712 +1,3716 @@ -云原生 --> ( 难度等级: 无 || 挂载数据: 无 ) -├── 云原生初阶-应用开发 --> ( 难度等级: 无 || 挂载数据: 无 ) -│ ├── Serverless --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Cloud Events --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Serverless Framework --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Serverless Devs --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── FaaS Serverless --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Nuclio --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Kubeless --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Kubeless概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 部署Kubeless --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 配置客户端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 部署函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── Kubeless UI --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ └── Function --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ ├── 函数调用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 自动扩展 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Fission --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 部署Fission --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 部署Fission Chart --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 命令行工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── Hello Fission --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 深入探讨Fission --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── Environment --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 执行模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Poolbased模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── New Deploy模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Workflows --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Workflows定义 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 配置Workflows --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Fortune Whale --> ( 难度等级: 中阶 || 挂载数据: blog: 7 ) -│ │ │ ├── OpenFaas --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 初识OpenFaaS --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 图形界面 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── OpenFaaS函数 --> ( 难度等级: 中阶 || 挂载数据: blog: 4 ) -│ │ │ │ │ ├── 抽象方式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 函数模板 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 构建函数 --> ( 难度等级: 中阶 || 挂载数据: blog: 4 ) -│ │ │ │ │ └── 推送镜像 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Watchdog --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 工作原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 配置Watchdog --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ │ └── ofwatchdog --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 监控 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 监控指标 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 监控面板 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 监控预警 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 弹性扩展 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 基于Alertmanager扩展 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 基于HPA扩展 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 函数应用市场 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── OpenWhisk --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Hello Whisk --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 逻辑架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Namespace --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Package --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Action --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ │ ├── Feed --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── Rule --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 系统架构 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ ├── Kubernetes部署 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 准备Kubernetes集群 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 集群基础设置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 创建访问入口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 部署组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 加载系统配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 测试集群 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 删除集群 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Helm部署 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 安装Helm --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ │ ├── 环境配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 部署Chart --> ( 难度等级: 中阶 || 挂载数据: blog: 4 ) -│ │ │ │ │ └── 管理应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 蛋糕管理服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 开发环境 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 定义Action --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建Package --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 部署Action --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 发布API --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Fn Project --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 踏上征途 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 无服务器初探 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 来龙去脉 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 面向服务的架构与微服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 从SOA到微服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 微服务的价值与挑战 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 软件设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 无服务器架构原则 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 根据需要使用计算服务执行代码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 编写单一用途的无状态函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 设计基于推送的、事件驱动的管道 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建更厚、更强大的前端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 拥抱第三方服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 从服务器过渡到服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 无服务器的利与弊 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 决策驱动因素 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 什么时候使用无服务器 --> ( 难度等级: 初阶 || 挂载数据: blog: 10 ) -│ │ ├── .架构与模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用场景 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 应用程序后端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 数据处理与操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 实时分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 遗留API代理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 计划服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 机器人(Bot)和技能(Skill) . --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 计算即后端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 遗留API代理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 混合 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── GraphQL . --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 计算即胶水 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 实时处理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 命令模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 消息传输模式 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── 优先级队列模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 扇出模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 管道和过滤器模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 建立无服务器应用程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 小时视频 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 总体需求 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Amazon Web Services(AWS) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建第一个Lambda函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 命名你的Lambda --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 本地测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 部署到AWS --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 连接S3 和Lambda --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 在AWS中测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 观察日志 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 配置Simple Notification Service --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ ├── 连接SNS和S --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 从SNS接收电子邮件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 测试SNS --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 设置视频权限 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建第二个函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 配置与安全 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 测试第二个函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 生成元数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 收尾 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 设置你的云服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 安全模型和身份管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 创建和管理IAM用户 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 深入核心 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 身份认证和授权 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 无服务器环境中的身份认证 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 无服务器方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Amazon Cognito --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ └── Auth0 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 为 24 小时视频增加身份认证 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 计划 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 直接调用Lambda --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 小时视频网站 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Auth0 配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 在网站中加入Auth0 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 测试Auth0 的集成 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 与AWS集成 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 用户信息Lambda --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── API Gateway --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 作为接口的API Gateway --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ │ │ ├── 和AWS服务集成 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ │ │ └── 脚本 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 创建资源和方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 配置方法执行 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 更新网站 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 优化网关 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 限制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 缓存 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 映射 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 通过API Gateway调用Lambda --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 自定义授权方 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 委托令牌 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 真实案例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 开通委托令牌 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 编排者Lambda --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Lambda内幕 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 事件模型和源 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 推送和拉取事件模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 并发执行 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 容器重用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 冷Lambda和暖Lambda --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ ├── 编程模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 函数处理程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 事件对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 上下文对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 回调函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 日志 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 代码开发 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Handler --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ ├── 执行上下文 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 日志输出 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 异常处理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 无状态 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 版本管理、别名和环境变量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 版本管理 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 别名 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 环境变量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用命令行界面(CLI) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 调用命令 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Lambda模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 异步瀑布 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 序列与并行 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 把逻辑移到另一个文件中 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 测试Lambda函数 . --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 在本地测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 编写测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 拓展架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 存储 . --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 更智能的存储 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 版本控制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 托管静态网站 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 存储类别 --> ( 难度等级: 中阶 || 挂载数据: blog: 6 ) -│ │ │ │ ├── 对象生命周期管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 转移加速 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 事件通知 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 安全上传 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 上传策略Lambda --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── S3 CORS配置 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ └── 在网站中上传 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ └── 限制对文件的访问 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 禁止公开访问 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 生成预签名URL --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── 签名URL Lambda --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── API Gateway设置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 提升性能 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 提升Firebase安全性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 数据库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Firebase简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 数据结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 安全规则 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 为 24 小时视频添加Firebase --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 设置Firebase --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 修改转码视频Lambda --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Transcode Video Firebase Update函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 连接Lambda --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 网站 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ └── 端到端测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 最后一英里 . --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 部署与框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 迈向更好的微服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Step Functions --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── AWS Marketplace --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 未来之路 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Serverless基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 什么是Serverless --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Serverless技术的发展 --> ( 难度等级: 中阶 || 挂载数据: blog: 9 ) -│ │ │ │ ├── Serverless框架和工具 --> ( 难度等级: 中阶 || 挂载数据: blog: 5 ) -│ │ │ │ │ ├── Chalice --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Claudia.js --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ │ ├── Apex --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Spring Cloud Function --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ │ └── AWS SAM --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ ├── Serverless后台服务 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ ├── 获取AWS账号 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── AWS Lambda控制面板 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 编辑函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 测试函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 外部访问 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 运维监控 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 回顾 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── Serverless带来的价值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Serverless的技术实现 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 理念与实现 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── FaaS与BaaS --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── FaaS的架构 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ ├── 函数的生命周期 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 函数工作流 --> ( 难度等级: 初阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── BaaS的价值 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ └── 广义的Serverless --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Serverless应用架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 传统应用架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Serverless应用架构 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ ├── Serverless的技术特点 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Serverless的应用场景 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Serverless的局限 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── AWS Lambda --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── AWS Serverless --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ ├── AWS Lambda概述 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ ├── 权限控制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── IAM --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 策略 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 角色 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 事件驱动 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 事件源 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 触发模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 日志监控 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 开发辅助 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 标签 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 运行限制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 资源限制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 并发控制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Azure Functions --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Microsoft Azure --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ ├── Azure Functions概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 创建Azure Serverless应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 注册Azure账号 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Azure控制台 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ └── 调用函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Azure Functions命令行 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 安装命令行 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ └── 发布至公有云 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 深入了解Azure Functions --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 函数应用设置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Trigger与Bindings --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── HTTP Trigger --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Cronjob Trigger --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Kafka Trigger --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── NATS Trigger --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 函数代理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Slot --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 私有云部署 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 容器技术基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 什么是容器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 容器 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ ├── 容器镜像 --> ( 难度等级: 中阶 || 挂载数据: blog: 4 ) -│ │ │ │ ├── 镜像仓库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 容器编排 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Docker --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Vagrant --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── VirtualBox --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 安装Docker --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 运行容器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 构建容器镜像 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 分享镜像 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Kubernetes基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 命名空间 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Pod --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Service --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Deployment --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── ReplicaSet --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 网络 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Ingress --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 交互工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 构建Kubernetes环境 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 启动Vagrant Box --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 修改默认域 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Serverless的落地与展望 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Serverless的落地 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Serverless平台建设 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 公有云 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 私有云 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ └── 混合云 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Serverless应用架构转型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 开发模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 设计原则 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 迁移与重构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Serverless的未来 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 建立行业规范 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 完善工具链 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 初识Serverless --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 优势与劣势 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 影响力和价值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 典型应用场景 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 视频转码服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 数据ETL处理服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 网站(服务)后端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 人工智能推理预测 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 物联网相关应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Serverless入门 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Serverless架构规范 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 函数相关规范 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 工作流程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 事件与规范 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 相关术语 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 上下文属性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 工业化产品 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Google Cloud Function --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ └── 腾讯云SCF --> ( 难度等级: 中阶 || 挂载数据: blog: 3 ) -│ │ │ └── 开发运维工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── CLI命令行工具 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ └── 插件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Web与监控告警场景实践 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Web后端与应用服务端 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 上传图片加水印 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 用IP地址查天气并在小程序中应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 简易用户反馈功能与快应用实践 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 大数据与人工智能场景实践 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 大数据技术之MapReduce的简单实现 --> ( 难度等级: 中阶 || 挂载数据: blog: 5 ) -│ │ │ └── 人工智能领域的实践 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── 自然语言处理为你的网站赋能 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 智能客服与微信小程序 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── 简单的车牌识别系统 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 视觉:对象检测系统 --> ( 难度等级: 高阶 || 挂载数据: blog: 1 ) -│ │ ├── 物联网和其他场景实践 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 物联网相关—定制智能音箱小工具 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ └── 其他场景实践 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── OJ判题机/小程序在线编程系统实现 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ └── 微信公众号机器人 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Serverless范式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Serverless架构不仅仅是实时的 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Serverless的优缺点 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 在AWS中构建Serverless应用程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── AWS Lambda的触发器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 函数即容器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 配置函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Lambda函数的版本控制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 创建部署包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 设置Serverless架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── S3触发器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── SNS触发器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── SQS触发器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── CloudWatch触发器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 部署Serverless API --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 设置集成 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 为API部署Lambda函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 处理身份验证与用户控制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 扩展Serverless架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 第三方编排工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 服务器的创建和终止 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 扩展的难点及解决方案 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── AWS Lambda的安全性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 了解AWS VPC --> ( 难度等级: 中阶 || 挂载数据: blog: 6 ) -│ │ │ ├── 了解VPC中的子网 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 在私有子网内保护Lambda --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Lambda函数的访问控制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 在Lambda中使用STS执行安全会话 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用SAM部署Lambda函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── SAM简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 将CloudFormation用于Serverless服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用SAM进行部署 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 了解SAM中的安全性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 微软Azure Functions简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 微软Azure Functions简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 创建你的第一个Azure Function --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 了解触发器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 编写微软Azure Functions的最佳实践 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 微服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Service Mesh --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Istio --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Linkerd --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Conduit --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Service Mesh的现状 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Istio架构分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Framework --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ ├── Dubbo --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Spring Cloud --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 常用组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Tars --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 微服务简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 单体架构及其存在的不足 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 单体架构简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 单体架构存在的不足 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 单体架构使用服务器集群及存在的不足 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ ├── 微服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 什么是微服务 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ └── 微服务的优势 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 微服务的不足 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 微服务的复杂度 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 分布式事务 --> ( 难度等级: 中阶 || 挂载数据: blog: 4 ) -│ │ │ │ ├── 服务的划分 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 服务的部署 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 微服务和SOA的关系 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ └── 微服务的设计原则 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Spring Cloud简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 微服务应该具备的功能 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 服务的注册与发现 --> ( 难度等级: 中阶 || 挂载数据: blog: 7 ) -│ │ │ │ ├── 服务的负载均衡 --> ( 难度等级: 中阶 || 挂载数据: blog: 3 ) -│ │ │ │ ├── 服务的容错 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 服务网关 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 服务网关的实现原理 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ │ ├── 断言工厂 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── After路由断言工厂 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── Header断言工厂 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── Cookie路由断言工厂 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── Host路由断言工厂 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ │ │ ├── Method路由断言工厂 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── Path路由断言工厂 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ └── Query路由断言工厂 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 过滤器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 过滤器的作用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 过滤器的生命周期 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 网关过滤器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ └── 全局过滤器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 限流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 常见的限流算法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 服务网关的限流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 普通方式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ └── 条件方式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 服务化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 工程介绍 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── service-gateway工程详细介绍 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 服务配置的统一管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 服务链路追踪 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Dubbo简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Kubernetes简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Spring Could与Kubernetes比较 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 构建微服务的准备 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── JDK的安装 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── JDK的下载和安装 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ └── 环境变量的配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── IDEA的安装 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── IDEA的下载 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ └── 用IDEA创建一个Spring Boot工程 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ └── 构建工具Maven的使用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Maven简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Maven的安装 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ ├── Maven的核心概念 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 编写Pom文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 常用的Maven命令 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 开发框架Spring Boot --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Spring Boot简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Spring Boot的特点 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ └── Spring Boot的优点 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── 用IDEA构建Spring Boot工程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 在Spring Boot工程中构建Web程序 --> ( 难度等级: 初阶 || 挂载数据: blog: 8 ) -│ │ │ │ └── Spring Boot的测试 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ ├── Spring Boot配置文件详解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 自定义属性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 将配置文件的属性赋给实体类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 自定义配置文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 多个环境的配置文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 运行状态监控Actuator --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 查看运行程序的健康状态 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 查看运行程序的Bean --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用Actuator关闭应用程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 使用shell连接Actuator --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Spring Boot整合JPA --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── Spring Boot整合Redis --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Redis简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Redis的安装 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ └── 在Spring Boot中使用Redis --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ └── Spring Boot整合Swagger2,搭建Restful API在线文档 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 负载均衡Ribbon --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── RestTemplate简介 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── Ribbon简介 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── 使用RestTemplate和Ribbon来消费服务 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ ├── LoadBalancerClient简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 源码解析Ribbon --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 声明式调用Feign --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 写一个Feign客户端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── FeignClient详解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── FeignClient的配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 从源码的角度讲解Feign的工作原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 在Feign中使用HttpClient和OkHttp --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Feign是如何实现负载均衡的 --> ( 难度等级: 中阶 || 挂载数据: blog: 8 ) -│ │ ├── 熔断器Hystrix --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Hystrix简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Hystrix的设计原则 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Hystrix的工作机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 在Feign上使用熔断器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Hystrix Dashboard监控熔断器的状态 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 在RestTemplate中使用Hystrix Dashboard --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 在Feign中使用Hystrix Dashboard --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ └── 使用Turbine聚合监控 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 路由网关Spring Cloud Zuul --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Zuul的工作原理 --> ( 难度等级: 中阶 || 挂载数据: blog: 3 ) -│ │ ├── 配置中心Spring Cloud Config --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Config Server从本地读取配置文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 构建Config Server --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ └── 构建Config Client --> ( 难度等级: 中阶 || 挂载数据: blog: 8 ) -│ │ │ ├── Config Server从远程Git仓库读取配置文件 --> ( 难度等级: 中阶 || 挂载数据: blog: 4 ) -│ │ │ ├── 构建高可用的Config Server --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 构建Eureka Server --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ ├── 改造Config Server --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 改造Config Client --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Spring Cloud Bus刷新配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 将配置存储在MySQL数据库中 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 改造config-server工程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 初始化数据库 --> ( 难度等级: 初阶 || 挂载数据: blog: 1 ) -│ │ ├── 服务链路追踪Spring Cloud Sleuth --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 基本术语 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 案例讲解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 启动Zipkin Server --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 构建服务提供者 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 构建服务消费者 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 在链路数据中添加自定义数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用RabbitMQ传输链路数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 在MySQL数据库中存储链路数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 在ElasticSearch中存储链路数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 用Kibana展示链路数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 微服务监控Spring Boot Admin --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Spring Boot Admin监控Spring Boot应用程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建Spring Boot Admin Server --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ └── 创建Spring Boot Admin Client --> ( 难度等级: 高阶 || 挂载数据: blog: 10 ) -│ │ │ ├── 使用Spring Boot Admin监控Spring Cloud微服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 构建Admin Server --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 构建Admin Client --> ( 难度等级: 中阶 || 挂载数据: blog: 4 ) -│ │ │ └── 在Spring Boot Admin中添加Security和Mail组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Spring Boot Admin集成Security组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Spring Boot Admin集成Mail组件 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ ├── Spring Boot Security详解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Spring Security简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 什么是Spring Security --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ └── Spring Security提供的安全模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Spring Boot Security与Spring Security的关系 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Spring Boot Security案例详解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 构建Spring Boot Security工程 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ ├── 配置Spring Security --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ ├── 编写相关界面 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Spring Security方法级别上的保护 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 从数据库中读取用户的认证信息 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用Spring Cloud OAuth2保护微服务系统 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 什么是OAuth2 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 如何使用Spring OAuth2 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── OAuth2 Provider --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── OAuth2 Client --> ( 难度等级: 中阶 || 挂载数据: blog: 6 ) -│ │ │ └── 案例分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 编写Eureka Server --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ ├── 编写Uaa授权服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 编写service-hi资源服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 案例架构设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 编写主Maven工程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 编写user-service资源服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用Spring Security OAuth2和JWT保护微服务系统 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── JWT简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 什么是JWT --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ ├── JWT的结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── JWT的应用场景 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ └── 如何使用JWT --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用Spring Cloud构建微服务综合案例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 案例介绍 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 工程结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用的技术栈 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ ├── 工程架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 功能展示 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 案例详解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 准备工作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 构建主Maven工程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 构建eureka-server工程 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ ├── 构建config-server工程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 构建Zipkin工程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 构建monitoring-service工程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 构建uaa-service工程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 构建gateway-service工程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 构建admin-service工程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 构建user-service工程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 构建blog-service工程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 构建log-service工程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 启动源码工程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Spring Cloud生态 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Spring Cloud基础:Spring Boot概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Spring Boot核心特性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Web服务器:WebServer --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 条件注解:@ConditionalOnXX --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 工厂加载机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 配置加载机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Spring Boot Actuator --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ └── Spring Cloud概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Spring Cloud诞生背景 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Netflix OSS --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ ├── Spring Cloud版本 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ └── Spring Cloud最新动态 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ ├── 负载均衡与服务调用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 负载均衡原理 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ ├── Spring Cloud LoadBalancer负载均衡组件 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── Netflix Ribbon负载均衡 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── RibbonLoadBalancerClient --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── RibbonServer和Server --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── ServerIntrospector --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── ILoadBalancer --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── ServerList --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── ServerListUpdater --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── ServerStats --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Ribbon缓存时间 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ ├── Dubbo LoadBalance负载均衡 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── OpenFeign:声明式Rest客户端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── OpenFeign概述 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ ├── OpenFeign对JAX-RS的支持 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── OpenFeign底层执行原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Dubbo Spring Cloud :服务调用的新选择 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 再谈路由和负载均衡 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 案例:应用流量控制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 流量控制应用的业务场景 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ └── 使用Netflix Ribbon完成应用灰度发布 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 配置管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 配置中心背景概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Spring Cloud Config Server/Client --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Spring Cloud Config Server --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ ├── Spring Cloud Config Client --> ( 难度等级: 中阶 || 挂载数据: blog: 7 ) -│ │ │ │ ├── Spring Cloud Config Client与Service Discovery整合 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ └── Spring Cloud Config配置动态刷新 --> ( 难度等级: 中阶 || 挂载数据: blog: 3 ) -│ │ │ └── 再谈配置动态刷新 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 熔断器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 熔断器模式概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 手动实现一个断路器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 定义State枚举和Counter计数器类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 定义CircuitBreaker类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 使用CircuitBreaker进行场景测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Spring Cloud Circuit Breaker的技术演进 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Alib*ba Sentinel --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Sentinel核心概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Spring Cloud Alib*ba Sentinel --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Sentinel限流与Dashboard --> ( 难度等级: 中阶 || 挂载数据: blog: 4 ) -│ │ │ │ └── Sentinel的高级特性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Netflix Hystrix --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Hystrix核心概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Spring Cloud Netflix Hystrix --> ( 难度等级: 中阶 || 挂载数据: blog: 6 ) -│ │ │ │ ├── Hystrix限流与Dashboard --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Hystrix的高级特性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Resilience4j --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Resilience4j体验 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Spring Cloud Resilience4j --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Resilience4j的高级特性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Spring生态消息驱动 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 消息中间件概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Spring与消息 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 消息编程模型的统一 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 消息的发送和订阅 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ └── WebSocket --> ( 难度等级: 中阶 || 挂载数据: blog: 4 ) -│ │ │ ├── Spring Integration --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Spring Integration核心组件概述 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ └── Spring Integration核心组件的使用 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ └── Spring Cloud Stream --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Spring Cloud Stream发送和接收消息 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ ├── 理解Binder和Binding --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 深入理解Spring Cloud Stream --> ( 难度等级: 中阶 || 挂载数据: blog: 4 ) -│ │ │ └── Spring Cloud Stream的高级特性 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ ├── 消息总线 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 消息总线概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 深入理解Spring Cloud Bus --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Spring Cloud Bus的使用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Spring Cloud Bus的原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Spring Cloud Bus事件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Spring Cloud Bus源码分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Spring Cloud Data Flow --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 批处理/流处理概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 流处理案例:信用卡反欺诈系统 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 批处理案例:统计GitHub仓库的各项指标数据 --> ( 难度等级: 中阶 || 挂载数据: blog: 4 ) -│ │ │ ├── Spring Cloud Data Flow批处理任务组合 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Spring Cloud Data Flow Shell --> ( 难度等级: 中阶 || 挂载数据: blog: 4 ) -│ │ │ ├── Spring Cloud Skipper --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Spring Cloud Deployer --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── TaskLauncher接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── AppDeployer接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── LocalAppDeployer --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Spring Cloud Task --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 体验Spring Cloud Task --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 深入理解Spring Cloud Task --> ( 难度等级: 中阶 || 挂载数据: blog: 9 ) -│ │ │ │ └── Spring Cloud Task Batch --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Spring Batch --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Spring Batch核心组件 --> ( 难度等级: 中阶 || 挂载数据: blog: 4 ) -│ │ ├── 网关 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── API网关概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── API网关的定义、职能与关注点 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── API网关的分类与技术分析 --> ( 难度等级: 中阶 || 挂载数据: blog: 7 ) -│ │ │ ├── Netflix Zuul --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 非阻塞式的Spring Cloud Gateway --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Route路由信息 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Predicate机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── PredicateDefinition和AsyncPredicate --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── RoutePredicateFactory --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 内置RoutePredicateFactory --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Filter机制 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ ├── FilterDefinition和GatewayFilter --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── GlobalFilter --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 内置GatewayFilterFactory --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 网关内置的GlobalFilter --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── 整合注册中心和配置中心 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── GatewayControllerEndpoint --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 综述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Cloud Native的起源 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Cloud Native的组成 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── Cloud Native背后的诉求 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 如何衡量Cloud Native的能力 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Cloud Native的原则 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 可用性和可靠性的关系 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 可用性的衡量标准 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 什么降低了可用性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 微服务架构 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── 微服务架构的起源 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 微服务架构实施的先决条件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 研发环境和流程上的转变 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 拆分前先做好解耦 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 微服务划分模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 基于业务复杂度选择服务划分方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 基于数据驱动划分服务 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ ├── 基于领域驱动划分服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 从已有单体架构中逐步划分服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 微服务拆分策略 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ └── 如何衡量服务划分的合理性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 微服务划分反模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 微服务API设计 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── YXAPI的设计原则 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 服务间通信——RPC --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 序列化——Protobuf --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 服务间通信——RESTful --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 通过Swagger实现RESTful --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── HTTP协议的进化——HTTP/2 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── HTTP/2和Protobuf的组合——gRPC --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 微服务框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 基于Dubbo框架实现微服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 基于Spring Cloud框架实现微服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 服务发现场景下的ZooKeeper与Etcd --> ( 难度等级: 中阶 || 挂载数据: blog: 3 ) -│ │ │ ├── 微服务部署策略 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 服务D享数据库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 服务D享虚拟机/容器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 几种常见的微服务架构方案 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── ZeroC IceGrid微服务架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Spring Cloud微服务架构 --> ( 难度等级: 中阶 || 挂载数据: blog: 5 ) -│ │ │ │ ├── 基于消息队列的微服务架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Docker Swarm微服务架构 --> ( 难度等级: 中阶 || 挂载数据: blog: 8 ) -│ │ │ ├── 深入Kubernetes微服务平台 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 基于Kubernetes的PaaS平台 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ └── 从微服务到Service Mesh --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── Service Mesh之再见架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Envoy核心实践入门 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Istio背后的技术 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ └── Istio的架构演变 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 敏捷基础设施及公共基础服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 传统基础设施面临的挑战 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 什么是敏捷基础设施 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 基于容器的敏捷基础设施 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 容器VS虚拟机 --> ( 难度等级: 中阶 || 挂载数据: blog: 5 ) -│ │ │ │ ├── 安装Docker --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 部署私有Docker Registry --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 基于docker-compose管理容器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 基于公共基础服务的平台化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 监控告警fu务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 监控数据采集 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 监控数据接收模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 通过时间序列数据库存储监控数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 开源监控系统实现Prometheus --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ └── 通过Prometheus和Grafana监控服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 分布式消息中间件服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 分布式消息中间件的作用 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 业界常用的分布式消息中间件 --> ( 难度等级: 中阶 || 挂载数据: blog: 3 ) -│ │ │ │ ├── Kafka的设计原理 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ ├── Kafka的数据存储结构 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ ├── 如何保证Kafka不丢消息 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ └── Kafka跨数据中心场景集群部署模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 分布式缓存服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 分布式缓存的应用场景 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 业界常用的分布式缓存Memcached --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 业界常用的分布式缓存——Redis --> ( 难度等级: 中阶 || 挂载数据: blog: 3 ) -│ │ │ │ ├── Redis常用的分布式缓存集群模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 基于Codis实现Redis分布式缓存集群 --> ( 难度等级: 中阶 || 挂载数据: blog: 3 ) -│ │ │ ├── 分布式任务调度服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 通过Tbschedule实现分布式任务调度 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 通过Elastic-Job实现分布式任务调度 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ └── 如何生成分布式ID --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── UUID --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── SDwFlake --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Ticket Server --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 可用性设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 逐步切换 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 影子测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 蓝绿部署 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 灰度发布/金丝雀发布 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 容错设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 消除单点 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 特性开关 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 服务分级 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 降级设计 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ ├── 超时重试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 隔离策略 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 流控设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 限流算法 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 流控策略 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 基于Guava限流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 基于Nginx限流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 容量预估 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 故障演练 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 数据迁移 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 逻辑分离,物理不分离 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 物理分离 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 可扩展性设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 横向扩展 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── AKF扩展立方体 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 如何扩展长连接 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 如何扩展数据库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── X轴扩展——主从复制集群 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Y轴扩展——分库、垂直分表 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ ├── Z轴扩展——分片(sharding) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 分片扩容(re-sharding) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 精选案例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 如何扩展数据中心 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 两地三中心和同城多活 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 同城多活 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 异地多活 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 性能设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 性能指标 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 如何树立目标 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 如何寻找平衡点 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 如何定位瓶颈点 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 服务通信优化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 同步转异步 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 阻塞转非阻塞 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 序列化 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 通过消息中间件提升写性能 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── 通过缓存提升读性能 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 基于ConcurrentHashMap实现本地缓存 --> ( 难度等级: 中阶 || 挂载数据: blog: 3 ) -│ │ │ │ ├── 基于Guava Cache实现本地缓存 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ └── 缓存的常用模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 数据库优化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 通过执行计划分析瓶颈点 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 为搜索字段创建索引 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 通过慢查询日志分析瓶颈点 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 通过提升硬件能力优化数据库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 简化设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 转移复杂度 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 从业务角度优化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 一致性设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 基础理论 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── CAP定理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── BASE理论 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── Quorum机制(NWR模型) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 租约机制(Lease) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 状态机(Replicated State Machine) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 分布式系统的一致性分类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 以数据为中心的一致性模型 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 以用户为中心的一致性模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 业界常用的一致性模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 如何实现强一致性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 两阶段提交 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 三阶段提交(3PC) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 如何实现Z终一致性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 重试机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 本地记录日志 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 可靠事件模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Saga事务模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── TCC事务模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 分布式锁 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 基于数据库实现悲观锁和乐观锁 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 基于ZooKeeper的分布式锁 --> ( 难度等级: 中阶 || 挂载数据: blog: 7 ) -│ │ │ │ └── 基于Redis实现分布式锁 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ └── 如何保证幂等性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 幂等令牌(Idempotency Key) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 在数据库中实现幂等性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 未来值得关注的方向 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ └── Serverless --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 什么是Serverless --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Serverless的现状 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Serverless的应用场景 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 研发流程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 十二因子 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 自动化测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 单元测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── TDD --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 提交即意味着可测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Code Review --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Code Review的意义 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Code Review的原则 --> ( 难度等级: 中阶 || 挂载数据: blog: 4 ) -│ │ │ │ └── Code Review的过程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 流水线 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 持续交付 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 持续部署流水线 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 基于开源打造流水线 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── YMX的流水线 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 开发人员自服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 基于数据和反馈持续改进 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 拥抱变化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 代码即设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 团队文化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 组织结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 康威定律 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 扁平化的组织 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── D裁的管理方式还是民主的管理方式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 民主的团队如何做决策 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 环境氛围 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 公开透明的工作环境 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 学习型组织 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 减少正式的汇报 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 高效的会议 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 量化指标致死 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 管理风格 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 下属请假你会拒绝吗 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 得到了所有人的认可,说明你并不是一个好的管理者 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 尽量避免用自己的权力去做决策 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 一屋不扫也可助你“荡平天下” --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 如何留下你想要的人 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 经典案例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Instagram的团队文化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Netflix的团队文化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 基础篇 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── Service Mesh简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 微服务架构面临的一些挑战 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 技术架构演进 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── Service Mesh的功能 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 业界Service Mesh产品 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Envoy --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ └── Linkerd入门 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Linkerd架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Linkerd主要功能 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 安装Linkerd --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 环境准备 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 虚拟机及Docker引擎 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 服务发现:Consul --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ │ ├── 部署Linkerd --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 部署示例服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 在本地搭建Istio环境 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ │ │ ├── 安装Kubernetes集群 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ │ │ ├── 安装Helm --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ │ │ └── 安装Istio --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 在公有云上使用Istio --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 尝鲜Istio命令行 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 传统安装方式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 基于Docker的安装方式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 示例演示 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 示例准备 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── Weather Forecast简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Weather Forecast部署 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 基于文件的服务发现 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 示例演示 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 中级篇 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 深入浅出Linkerd配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Linkerd术语 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Linkerd配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 配置构成 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ ├── admin --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── namer --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── router --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── telemetry --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── usage --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 深入Linkerd数据访问流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── dtab详解 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── dtab定义 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ └── dtab路由原理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 数据访问流详解 --> ( 难度等级: 初阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 鉴别 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 绑定 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 解析 --> ( 难度等级: 初阶 || 挂载数据: blog: 1 ) -│ │ │ │ └── 转换 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Linkerd部署模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Linkerd部署模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Per-host模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Sidecar模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── Per-host模式和Sidecar模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 配置模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── service-to-linker模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── linker-to-service模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── linker-to-linker模型 --> ( 难度等级: 中阶 || 挂载数据: blog: 6 ) -│ │ │ ├── Linkerd控制层:Namerd --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Namerd简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Namerd配置详解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── admin配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── interface配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── storage配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── namer配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 连接Linkerd和Namerd --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 准备Namerd配置文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 启动Namerd --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 准备Linkerd配置文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 启动Linkerd --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 管理dtab路由 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Namerd API简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 通过Namerd API管理dtab --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 通过namerctl CLI管理dtab --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 东西向流量控制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Istio东西向流量管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Istio路由控制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 实现东西向流量转移路由 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 实现流量镜像及对比分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 南北向流量控制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Istio南北向流量管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Istio网关与K8s Ingress --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 保护Istio网关流量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 实现入口流量路由的统一管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 实现出口流量路由的统一管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 安全 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Citadel架构设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 认证机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 授权机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用认证策略 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用双向认证 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 消除Privileged容器提升安全性 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ └── 通过NetworkPolicy增强安全性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Mixer控制与观测 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Mixer架构设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 适配器机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用速率限制策略 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用黑白名单策略 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用基于Zipkin与Jaeger的分布式跟踪 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 集成度量数据收集 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 集成日志数据收集 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 原理篇 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 你好,Istio --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 通过示例看看Istio能做什么 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Istio架构概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Istio的工作机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Istio的服务模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Istio的服务 --> ( 难度等级: 中阶 || 挂载数据: blog: 5 ) -│ │ │ │ │ └── Istio的服务版本 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Istio的主要组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── istio-pilot --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ ├── istio-telemetry --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── istio-policy --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── istio-citadel --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── istio-galley --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── istio-sidecar-injector --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── istio-proxy --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ └── istio-ingressgateway --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── 非侵入的流量治理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Istio流量治理的原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 服务熔断 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 故障注入 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 延迟注入 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ └── 中断注入 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 灰度发布 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 预先准备:将所有流量都路由到各个服务的v1版本 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 基于流量比例的路由 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ │ │ ├── 基于请求内容的路由 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 组合条件路由 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 多服务灰度发布 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── TCP服务灰度发布 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ └── 自动化灰度发布 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 正常发布 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ │ │ └── 异常发布 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 服务访问入口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 外部接入服务治理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Istio路由规则配置:VirtualService --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 路由规则配置示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 路由规则定义 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── HTTP路由(HTTPRoute) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── TLS路由(TLSRoute) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── TCP路由(TCPRoute) --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ │ ├── 三种协议路由规则的对比 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── VirtualService的典型应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Istio目标规则配置:DestinationRule --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── DestinationRule配置示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── DestinationRule规则定义 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── DestinationRule的典型应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Istio服务网关配置:Gateway --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Gateway配置示例 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ │ ├── Gateway规则定义 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ │ └── Gateway的典型应用 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ ├── Istio外部服务配置:ServiceEntry --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── ServiceEntry配置示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── ServiceEntry规则的定义和用法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── ServiceEntry的典型应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Istio代理规则配置:Sidecar --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Sidecar配置示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Sidecar规则定义 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 可扩展的策略和遥测 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Istio策略和遥测的原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 应用场景 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 工作原理 --> ( 难度等级: 中阶 || 挂载数据: blog: 3 ) -│ │ │ │ │ ├── 属性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── Mixer的配置模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Istio遥测适配器配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Prometheus适配器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Fluentd适配器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── StatsD适配器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Stdio适配器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Zipkin适配器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 厂商适配器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Istio策略适配器配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── List适配器 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ │ ├── Denier适配器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Memory Quota适配器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── Redis Quota适配器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Kubernetes Env适配器配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 可插拔的服务安全 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Istio服务安全的原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 认证 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 授权 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 命名空间级别的访问控制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ └── 服务级别的访问控制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 密钥证书管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Istio服务认证配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 认证策略配置示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 认证策略的定义 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── TLS访问配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 认证策略的典型应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Istio服务授权配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 授权启用配置 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 授权策略配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 授权策略的典型应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 透明的Sidecar机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Sidecar注入 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Sidecar Injector自动注入的原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── Sidecar注入的实现 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ └── Sidecar流量拦截 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── iptables的基本原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── iptables的规则设置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 流量拦截原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 多集群服务治理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Istio多集群服务治理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Istio多集群的相关概念 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ └── Istio多集群服务治理现状 --> ( 难度等级: 中阶 || 挂载数据: blog: 8 ) -│ │ │ ├── 多集群模式1:多控制面 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 服务DNS解析的原理 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ └── Gateway连接的原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 多集群模式2:VPN直连单控制面 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 多集群模式3:集群感知服务路由单控制面 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 实践篇 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 流量监控 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 调用链跟踪 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 指标监控 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── Grafana --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 服务网格监控 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 流量治理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 流量负载均衡 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── ROUND_ROBIN模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── RANDOM模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 会话保持 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 超时 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 重试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── HTTP重定向 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── HTTP重写 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 熔断 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 服务隔离 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用流量策略 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 设置负载均衡 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 管理连接池 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 增强路由规则 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 混沌工程之熔断 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 混沌工程之故障注入 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 服务保护 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 网关加密 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 单向TLS网关 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 双向TLS网关 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 用SDS加密网关 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 访问控制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 黑名单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 白名单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 多集群管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 架构篇 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 司令官Pilot --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Pilot的架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── xDS协议 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── Pilot的工作流程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Pilot的启动与初始化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 配置规则发现 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── Envoy的配置分发 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Pilot的插件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 安全插件 --> ( 难度等级: 中阶 || 挂载数据: blog: 3 ) -│ │ │ │ │ ├── 健康检查插件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── Mixer插件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Pilot的设计亮点 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 三级缓存优化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 去抖动分发 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 增量EDS --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 资源隔离 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 守护神Mixer --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Mixer的整体架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Mixer的服务模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Template --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ │ └── Adapter --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Mixer的工作流程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 启动初始化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 用户配置信息规则处理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 访问策略的执行 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 无侵入遥测 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Mixer的设计亮点 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 如何开发Mixer Adapter --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Adapter实现概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 内置式Adapter的开发步骤 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 独立进程式Adapter的开发步骤 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ └── 独立仓库式Adapter的开发步骤 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 安全碉堡Citadel --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Citadel的架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Citadel的工作流程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 启动初始化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 证书控制器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── gRPC服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 证书轮换器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── SDS服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 高性能代理Envoy --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Envoy的架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Envoy的特性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Envoy的模块结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Envoy的线程模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Envoy的内存管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 变量管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── Buffer管理 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ └── Envoy的流量控制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 代理守护进程Pilot-agent --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Pilot-agent的工作流程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Envoy的启动 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Envoy的热重启 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 守护Envoy --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 优雅退出 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 配置中心Galley --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Galley的架构 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── MCP --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── MCP API --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Galley的工作流程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 启动初始化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 配置校验 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 配置聚合与分发 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 源码篇 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Pilot源码解析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 进程启动流程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 关键代码分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── ConfigController --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── ServiceController --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── xDS异步分发 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 配置更新预处理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Mixer源码解析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 进程启动流程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── runServer通过newServer新建Server对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 启动Mixer gRPC Server --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 关键代码分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 监听用户的配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 构建数据模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Check接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Report接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 协程池 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Citadel源码解析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 进程启动流程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 关键代码分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 证书签发实体IstioCA --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── SecretController的创建和核心原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── CA Server的创建和核心原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Envoy源码解析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Envoy的初始化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 启动参数bootstrap的初始化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Admin API的初始化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Worker的初始化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── CDS的初始化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── LDS的初始化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── GuardDog的初始化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Envoy的运行和建立新连接 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 启动worker --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Listener的加载 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 接收连接 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── Envoy对数据的读取、接收及处理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 读取数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 接收数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Envoy发送数据到服务端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 匹配路由 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 获取连接池 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 选择上游主机 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Galley源码解析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 进程启动流程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── RunServer的启动流程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── RunValidation Server的启动流程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 关键代码分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 配置监听 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 配置分发 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 初级篇 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 快速上手Istio --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 在MiniKube上搭建Istio环境 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 在Docker Desktop上搭建Istio环境 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 使用公有云Istio服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 在Istio中部署第一个应用程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Istio架构剖析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Istio架构总体结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 剖析Istio控制平面 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Istio Mixer --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ └── 剖析Istio数据平面 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Envoy代理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Envoy静态与动态配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 代理部署 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 高级篇 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Istio的性能分析与运维 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Istio功能稳定性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Istio性能分析 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── Istio组件升级与回滚 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Pilot运维指南 --> ( 难度等级: 中阶 || 挂载数据: blog: 9 ) -│ │ │ ├── Istio的定制与扩展 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Mixer模板设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 适配器生命周期管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 开发实现适配器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 编译与打包适配器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 扩展EnvoyFilter --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Knative:基于Istio的无服务器计算 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Knative架构解析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 基于Istio实现Serving组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Knative Build运行机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Knative Eventing运行机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 在Istio上部署Knative --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 开发部署Knative应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 云原生计算的未来展望 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ ├── 什么是架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 几个相关概念 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 从软件的生命周期看架构设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 架构的形式与特点 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 架构的目标与方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 架构的不同风格 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 微服务领域驱动设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 领域驱动设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 领域驱动设计概览 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ ├── 限界上下文 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 上下文映射 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 领域架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 微服务的设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 限界上下文的边界 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 限界上下文即微服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 识别限界上下文 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 微服务之间的协作 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ ├── Apache Dubbo框架的原理与实现 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── Dubbo框架的选型与使用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Dubbo框架的选型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Dubbo框架的使用 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ ├── Dubbo框架的原理分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 总体架构分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Dubbo Bean的加载 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ ├── Dubbo Extension机制 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ ├── Dubbo消费端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Dubbo服务端 --> ( 难度等级: 中阶 || 挂载数据: blog: 3 ) -│ │ │ │ └── Dubbo的通信机制 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ └── 基于Dubbo的自动化Mock系统 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Mock模拟系统的产生 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Dubbo Mock的使用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Dubbo Mock的原理解析 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ └── 自动化Mock系统的实现 --> ( 难度等级: 初阶 || 挂载数据: blog: 1 ) -│ │ ├── Spring Boot/Spring Cloud实践 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Spring Boot原理剖析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Spring Boot Quick Start --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ ├── Spring Boot之SpringApplication --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ ├── spring-boot-loaded模块分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── spring-boot-autoconfigure模块分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Spring Boot Conditional注解分析 --> ( 难度等级: 中阶 || 挂载数据: blog: 4 ) -│ │ │ ├── Dubbo Spring Boot Starter --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Dubbo Spring Boot Starter简介 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ ├── Dubbo Initializr及sample --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── dubbo-spring-boot-autoconfigure模块 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── dubbo-spring-boot-actuator模块 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── Spring Cloud栈 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Spring Cloud技术栈总览 --> ( 难度等级: 中阶 || 挂载数据: blog: 4 ) -│ │ │ │ └── spring-cloud-scaffold基础库集合 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ └── 基于Maven Archetype的脚手架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Maven Archetype --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ ├── 脚手架的搭建 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 生成脚手架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 微服务稳定性保证的常用手段 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 微服务的稳定性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 高可用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 限流原理与实现 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 断路器原理与实现 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 高并发 --> ( 难度等级: 初阶 || 挂载数据: blog: 1 ) -│ │ │ ├── 异步 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 缓存 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 微服务下如何保证事务的一致性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 从本地事务到分布式事务的演变 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 强一致性解决方案 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 二阶段提交协议 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 三阶段提交协议 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 最终一致性解决方案 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── TCC模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 补偿模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 百亿流量微服务网关的设计与实现 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 开源网关的分析与调研 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 常见的开源网关介绍 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 四大开源网关的对比分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 百亿流量交易系统API网关设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 业务网关的设计与最佳实践 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 微服务编排 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Netflix Conductor --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Netflix Conductor的架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Conductor的使用案例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Netflix Conductor源码分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Client层源码分析 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── Server端源码分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── core端源码分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 微服务数据抽取与统计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 案例小故事 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 数据仓库概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 什么是数据仓库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 数据仓库架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 数据仓库建模方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 数据统计 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── 数据仓库工具Hive --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 安装Hive --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ ├── Hive数据库 --> ( 难度等级: 中阶 || 挂载数据: blog: 8 ) -│ │ │ │ └── Hive表 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Sqoop抽取数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 安装Sqoop --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 将MySQL表数据导入Hive表 --> ( 难度等级: 初阶 || 挂载数据: blog: 5 ) -│ │ │ └── ETL作业调度 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ ├── 微服务双活体系建设 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 系统高可用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 双活数据中心 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 单机房部署 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 双机房部署 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 基于支付场景的双活体系建设 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 基于支付场景下的微服务改造与性能优化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 支付场景的介绍 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 从代码层面提升微服务架构的性能 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 从代码和设计的角度看 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 从整体架构的角度看 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 微服务架构中常见的一些故障分析技巧 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 遗留系统的微服务架构改造 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 代码分层结构的转变 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 遗留系统的债券与思考 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 从单体系统拆分服务的方法论 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 遗留系统的微服务架构改造 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 从代码重构开始 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 拆分服务需要面向服务进行架构设计 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 改造是一个渐进的过程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 单元测试是基石 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 面向失败的设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 前后端分离 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── 共享现有数据库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 灰度发布的必要性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 日志聚合与全链路监控 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Service Mesh详解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Service Mesh的背景 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Service Mesh介绍 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Service Mesh架构 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ └── Service Mesh能做什么 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ ├── Service Mesh的价值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Istio详解 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── Istio架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 数据平面 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 控制平面 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Isito案例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Service Mesh展望 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 深入理解网络 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 从国际互联网开始 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── NIO,一本难念的经 --> ( 难度等级: 初阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 难懂的ByteBuffer --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 晦涩的“非阻塞” --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 复杂的Reactor模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── AIO,大道至简的设计与苦涩的现实 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── HTTP的前世今生 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── HTTP的设计思路 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── HTTP如何保持状态 --> ( 难度等级: 初阶 || 挂载数据: blog: 10 ) -│ │ │ │ ├── Session的秘密 --> ( 难度等级: 初阶 || 挂载数据: blog: 2 ) -│ │ │ │ ├── 再谈Token --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 分布式Session --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 分布式系统的基石:TCP/IP --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 从CDN到SD-WAN --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 互联互不通的运营商网络 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 双线机房的出现 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── CDN的作用 --> ( 难度等级: 中阶 || 挂载数据: blog: 3 ) -│ │ │ └── SD-WAN技术的诞生 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 分布式系统的经典理论 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 从分布式系统的设计理念说起 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 分布式系统的一致性原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 分布式系统的基石之ZooKeeper --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── ZooKeeper的原理与功能 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ └── ZooKeeper的应用场景案例分析 --> ( 难度等级: 中阶 || 挂载数据: blog: 8 ) -│ │ │ ├── 经典的CAP理论 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ ├── BASE准则,一个影响深远的指导思想 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 重新认识分布式事务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 数据库单机事务的实现原理 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── 经典的X/OpenDTP事务模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 互联网中的分布式事务解决方案 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ ├── 聊聊RPC --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 从IPC通信说起 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 古老又有生命力的RPC --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 从RPC到服务治理框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 基于ZeroC Ice的微服务架构指南 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── ZeroC Ice的前世今生 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ ├── ZeroC Ice微服务架构指南 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 微服务架构概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 微服务架构兴起的原因 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 不得不提的容器技术 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 如何全面理解微服务架构 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ ├── 深入浅析内存 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 你所不知道的内存知识 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 复杂的CPU与单纯的内存 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ └── 深入理解不一致性内存 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 内存计算技术的前世今生 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 内存缓存技术分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 缓存概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 缓存实现的几种方式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Memcache的内存管理技术 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ └── Redis的独特之处 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 内存计算产品分析 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── SAP HANA --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── Hazelcast --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── VoltDB --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 深入解析分布式文件存储 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 数据存储进化史 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 经典的网络文件系统NFS --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 高性能计算领域的分布式文件系统 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 企业级分布式文件系统GlusterFS --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 创新的Linux分布式存储系统——Ceph --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── 星际文件系统IPFS --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 软件定义存储 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ ├── 聊聊分布式计算 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 不得不说的Actor模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 初识Akka --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 适用面很广的Storm --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ └── MapReduce及其引发的新世界 --> ( 难度等级: 中阶 || 挂载数据: blog: 4 ) -│ │ ├── 全文检索与消息队列中间件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 全文检索 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Lucene --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── Solr --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── ElasticSearch --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 消息队列 --> ( 难度等级: 中阶 || 挂载数据: blog: 5 ) -│ │ │ ├── JEE专属的JMS --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ ├── 生生不息的ActiveMQ --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ ├── RabbitMQ --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ └── Kafka --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ └── 架构实践 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 身边购平台实践 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ └── DIY一个有难度的分布式集群 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ ├── 编程语言 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Golang --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 入门 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── hello,world --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── 命令行参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 找出重复行 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── GIF动画 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 获取一个URL --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 并发获取多个URL --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 一个Web服务器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 其他内容 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 程序结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 名称 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 声明 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 变量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 短变量声明 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 指针 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── new函数 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ └── 变量的生命周期 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 赋值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 多重赋值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 可赋值性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 类型声明 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 包和文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 导入 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 远程导入 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ │ └── 命名导入 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 包初始化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 作用域 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 基本数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 整数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 浮点数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 复数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 布尔值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 字符串 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 字符串字面量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Unicode --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── UTF-8 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 字符串和字节slice --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ └── 字符串和数字的相互转换 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 常量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 常量生成器iota --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 无类型常量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 复合数据类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 数组 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── slice --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── append函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── slice就地修改 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── map --> ( 难度等级: 中阶 || 挂载数据: blog: 8 ) -│ │ │ ├── 结构体 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 结构体字面量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 结构体比较 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ └── 结构体嵌套和匿名成员 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── JSON --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 文本和HTML模板 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 函数声明 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 递归 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 多返回值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 错误 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 错误处理策略 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 文件结束标识 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 函数变量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 匿名函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 变长函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 延迟函数调用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 宕机 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 恢复 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 基本语法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 参数和返回值的内存布局 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 函数中的局部变量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 调用其他函数 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── 宏函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 函数调用规范 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 高级汇编语言 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── PCDATA和FUNCDATA --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 方法函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 递归函数: 1到n求和 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 闭包函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 方法声明 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 指针接收者的方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 通过结构体内嵌组成类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 方法变量与表达式 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ ├── 示例:位向量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 封装 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 接口即约定 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 接口类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 实现接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用flag.Value来解析参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 接口值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用sort.Interface来排序 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ ├── http.Handler接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── error接口 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ ├── 类型断言 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用类型断言来识别错误 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 通过接口类型断言来查询特性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 类型分支 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 一些建议 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 标准库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 文档与源代码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 记录日志 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── log包 --> ( 难度等级: 中阶 || 挂载数据: blog: 3 ) -│ │ │ │ │ ├── 定制的日志记录器 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ │ └── 结论 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 编码解码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 解码JSON --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 编码JSON --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ └── 输入和输出 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Writer和Reader接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 整合并完成工作 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ └── 简单的curl --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 实现 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 方法集 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 多态 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── goroutine和通道 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── goroutine --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── 通道 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 无缓冲通道 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 管道 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 单向通道类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 缓冲通道 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 并行循环 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用select多路复用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 取消 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 使用共享变量实现并发 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 竞态 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 互斥锁:sync.Mutex --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 读写互斥锁:sync.RWMutex --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 内存同步 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 延迟初始化:sync.Once --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 竞态检测器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 包和go工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 引言 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 导入路径 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 包的声明 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 导入声明 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 空导入 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 包及其命名 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── go工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 工作空间的组织 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 包的下载 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 包的构建 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 包的文档化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 内部包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 包的查询 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── go test工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Test函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 随机测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 测试命令 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 白盒测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 外部测试包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 编写有效测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 避免脆弱的测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 覆盖率 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Benchmark函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 性能剖析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Example函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 反射 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── reflect.Type和reflect.Value --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Display:一个递归的值显示器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用reflect.Value来设置值 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── 访问结构体字段标签 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 显示类型的方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 注意事项 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 低级编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── unsafe.Sizeof、Alignof和Offsetof --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── unsafe.Pointer --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 使用cgo调用C代码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 关于Go语言的介绍 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 用Go解决现代编程难题 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 开发速度 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 并发 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 竞争状态 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 锁住共享资源 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 原子函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Go语言的类型系统 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 用户定义的类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 类型的本质 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 内置类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 引用类型 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ │ │ └── 结构类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 嵌入类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 公开或未公开的标识符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 内存管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 你好,Go --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 快速开始一个Go程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 程序架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── main包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── search包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── search.go --> ( 难度等级: 中阶 || 挂载数据: blog: 6 ) -│ │ │ │ ├── feed.go --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── match.go default.go --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── RSS匹配器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 打包和工具链 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 包 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 包名惯例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 函数init --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 进一步介绍Go开发工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── go vet --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Go代码格式化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Go语言的文档 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── 与其他Go开发者合作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 依赖管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 第三方依赖 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 对gb的介绍 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 并发模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── runner --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── pool --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── work --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 测试和性能 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 单元测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 基础单元测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 表组测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 模仿调用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 测试服务端点 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 基准测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Go与Web应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Go与Web应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用Go语言构建Web应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Go与可扩展Web应用 --> ( 难度等级: 初阶 || 挂载数据: blog: 10 ) -│ │ │ │ │ ├── Go与模块化Web应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Go与可维护的Web应用 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ └── Go与高性能Web应用 --> ( 难度等级: 初阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── Web应用的工作原理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── HTTP简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Web应用的诞生 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── HTTP请求 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 幂等的请求方法 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 浏览器对请求方法的支持 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 请求首部 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── HTTP响应 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 响应状态码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 响应首部 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── URI --> ( 难度等级: 初阶 || 挂载数据: blog: 2 ) -│ │ │ │ ├── HTTP/2简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Web应用的各个组成部分 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 处理器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 模板引擎 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 处理请求 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── ResponseWriter --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ └── cookie --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 将cookie发送至浏览器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 从浏览器里面获取cookie --> ( 难度等级: 初阶 || 挂载数据: blog: 6 ) -│ │ │ │ │ │ └── 使用cookie实现闪现消息 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 内容展示 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── Go的模板引擎 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ │ ├── 对模板进行语法分析 --> ( 难度等级: 初阶 || 挂载数据: blog: 1 ) -│ │ │ │ │ │ │ └── 执行模板 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 动作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ │ ├── 条件动作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ │ ├── 迭代动作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ │ ├── 设置动作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ │ └── 包含动作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 上下文感知 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ │ ├── 防御XSS攻击 --> ( 难度等级: 初阶 || 挂载数据: blog: 1 ) -│ │ │ │ │ │ │ └── 不对HTML进行转义 --> ( 难度等级: 初阶 || 挂载数据: blog: 5 ) -│ │ │ │ │ │ ├── 嵌套模板 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ └── 通过块动作定义默认模板 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 存储数据 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 内存存储 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 文件存储 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 读取和写入CSV文件 --> ( 难度等级: 初阶 || 挂载数据: blog: 5 ) -│ │ │ │ │ └── gob包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── Hello Go --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── ChitChat论坛 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── ChitChat简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 应用设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 数据模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 请求的接收与处理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 多路复用器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 服务静态文件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 创建处理器函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 使用cookie进行访问控制 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Go的net/http标准库 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ │ └── 使用Go构建服务器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Go Web服务器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 通过HTTPS提供服务 --> ( 难度等级: 初阶 || 挂载数据: blog: 5 ) -│ │ │ │ ├── 使用模板生成HTML响应 --> ( 难度等级: 初阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 安装PostgreSQL --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ │ ├── 在Linux或FreeBSD系统上安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 在Mac OS X系统上安装 --> ( 难度等级: 初阶 || 挂载数据: blog: 8 ) -│ │ │ │ │ └── 在Windows系统上安装 --> ( 难度等级: 初阶 || 挂载数据: blog: 10 ) -│ │ │ │ ├── 连接数据库 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 启动服务器 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── Web应用运作流程回顾 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Web开发简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 请求路由 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── httprouter --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 原理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 压缩检索树创建过程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 中间件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 代码泥潭 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用中间件剥离非业务逻辑 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 更优雅的中间件写法 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ └── 哪些事情适合在中间件中做 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 请求校验 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 重构请求校验函数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 用请求校验器解放体力劳动 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Database和数据库打交道 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 从database/sql讲起 --> ( 难度等级: 初阶 || 挂载数据: blog: 4 ) -│ │ │ │ ├── 提高生产效率的ORM和 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 脆弱的数据库 --> ( 难度等级: 初阶 || 挂载数据: blog: 4 ) -│ │ │ ├── 服务流量限制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 常见的流量限制手段 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 服务瓶颈和QoS --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 灰度发布和A/B测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 通过分批次部署实现灰度发布 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 通过业务规则进行灰度发布 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 如何实现一套灰度发布系统 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 语言基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Go语言创世纪 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 来自贝尔实验室特有基因 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 你好,世界 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── “Hello, World”的革命 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── B语言——Ken Thompson, --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── C语言——Dennis Ritchie,1972— --> ( 难度等级: 中阶 || 挂载数据: blog: 6 ) -│ │ │ │ ├── Newsqueak——Rob Pike, --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Alef——Phil Winterbottom, --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Limbo——Sean Dorward, Phil Winterbottom, Rob Pike, --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Go语言——2007— --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 你好,世界!——V2. --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 面向并发的内存模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 原子操作 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 顺序一致性内存模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 初始化顺序 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Goroutine的创建 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 基于通道的通信 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 不靠谱的同步 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 常见的并发模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 并发版本的“Hello, World” --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 生产者/消费者模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 发布/订阅模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 控制并发数 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 赢者为王 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 素数筛 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 并发的安全退出 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── context包 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 错误和异常 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 获取错误的上下文 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 错误的错误返回 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 剖析异常 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ └── 补充说明 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── CGO编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 快速入门 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 最简CGO程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 基于C标准库函数输出字符串 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用自己的C函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── C代码的模块化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 用Go重新实现C函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 面向C接口的Go编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 定义整数变量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 定义字符串变量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 定义main函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 特殊字符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 没有分号 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── CGO基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── import "C"语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── #cgo语句 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── build标志条件编译 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── 类型转换 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 数值类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Go字符串和切片 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 指针间的转换 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 数值和指针的转换 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 切片间的转换 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 函数调用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Go调用C函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── C函数的返回值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── void函数的返回值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── C调用Go导出函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 内部机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── CGO生成的中间文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Go调用C函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── C调用Go函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── CGO内存模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Go访问C内存 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── C临时访问传入的Go内存 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── C长期持有Go指针对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 导出C函数不能返回Go内存 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── C++类包装 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── C++类到Go语言对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Go语言对象到C++类 --> ( 难度等级: 中阶 || 挂载数据: blog: 3 ) -│ │ │ │ └── 彻底解放C++的this指针 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ ├── 静态库和动态库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用C静态库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用C动态库 --> ( 难度等级: 中阶 || 挂载数据: blog: 3 ) -│ │ │ │ ├── 导出C静态库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 导出C动态库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 导出非main包的函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 编译和链接参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 编译参数:CFLAGS/CPPFLAGS/CXXFLAGS --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 链接参数:LDFLAGS --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── pkg-config --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── go get链 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 多个非main包中导出C函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Go汇编语言 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 计算机结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 图灵机和BrainFuck语言 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 《人力资源机器》游戏 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── X86-64体系结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Go汇编中的伪寄存器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── X86-64指令集 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 控制流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 顺序执行 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── if/goto跳转 --> ( 难度等级: 中阶 || 挂载数据: blog: 9 ) -│ │ │ │ └── for循环 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 汇编语言的威力 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 系统调用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 直接调用C函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── AVX指令 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 例子:Goroutine ID --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 故意设计没有goid --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 纯Go方式获取goid --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 从g结构体获取goid --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 获取g结构体对应的接口对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── goid的应用:局部存储 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Delve调试器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Delve入门 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 调试汇编程序 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── RPC和Protobuf --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── RPC入门 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── RPC版“Hello, World” --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 更安全的RPC接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 跨语言的RPC --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ └── HTTP上的RPC --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ ├── Protobuf --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Protobuf入门 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ ├── 定制代码生成插件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 自动生成完整的RPC代码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 玩转RPC --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 客户端RPC的实现原理 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 基于RPC实现监视功能 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 反向RPC --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 上下文信息 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── gRPC入门 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── gRPC技术栈 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── gRPC入门 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ ├── gRPC流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 发布和订阅模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── gRPC进阶 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 证书认证 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Token认证 --> ( 难度等级: 中阶 || 挂载数据: blog: 4 ) -│ │ │ │ ├── 截取器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 和Web服务共存 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── gRPC和Protobuf扩展 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 验证器 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── REST接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Nginx --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ ├── pbgo:基于Protobuf的框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Protobuf扩展语法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 插件中读取扩展信息 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 生成REST代码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 启动REST服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── grpcurl工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 启动反射服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 查看服务列表 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 服务的方法列表 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 获取类型信息 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 调用方法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 分布式系统 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 分布式ID生成器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── worker_id分配 --> ( 难度等级: 中阶 || 挂载数据: blog: 8 ) -│ │ ├── 分布式锁 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 进程内加锁 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 尝试锁 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 基于Redis的setnx --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 基于ZooKeeper --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 基于etcd --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 如何选择合适的锁 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 延时任务系统 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 定时器的实现 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 任务分发 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 数据再平衡和幂等考量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 分布式搜索引擎 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 搜索引擎 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ └── 异构数据同步 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 负载均衡 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 常见的负载均衡思路 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 基于洗牌算法的负载均衡 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ └── 负载均衡算法效果验证 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 分布式配置管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 场景举例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用etcd实现配置更新 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 配置膨胀 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 配置版本管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 客户端容错 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 分布式爬虫 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 基于colly的单机爬虫 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 分布式爬虫 --> ( 难度等级: 初阶 || 挂载数据: blog: 3 ) -│ │ ├── 结合nats和colly的消息生产 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 结合colly的消息消费 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ └── 其他 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -├── 云原生初阶-平台开发 --> ( 难度等级: 无 || 挂载数据: 无 ) -│ ├── 容器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Docker --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 基础入门 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 初识Docker与容器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 核心概念与安装配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 核心概念 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ ├── 安装Docker引擎 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Ubuntu环境下安装Docker --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ │ ├── CentOS环境下安装Docker --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ │ ├── 通过脚本安装 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ │ ├── macOS环境下安装Docker --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ │ └── Windows环境下安装Docker --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ ├── 配置Docker服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 推荐实践环境 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Docker镜像 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 获取镜像 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 查看镜像信息 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 搜寻镜像 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 删除和清理镜像 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建镜像 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 存出和载入镜像 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 上传镜像 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 操作Docker容器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建容器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 停止容器 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ ├── 进入容器 --> ( 难度等级: 中阶 || 挂载数据: blog: 6 ) -│ │ │ │ ├── 删除容器 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ ├── 导入和导出容器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 查看容器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 其他容器命令 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 访问Docker仓库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Docker Hub公共镜像市场 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 第三方镜像市场 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 搭建本地私有仓库 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── Docker数据管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 数据卷 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 数据卷容器 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ └── 利用数据卷容器来迁移数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 端口映射与容器互联 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 端口映射实现容器访问 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ └── 互联机制实现便捷互访 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 使用Dockerfile创建镜像 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 基本结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 指令说明 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 配置指令 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 操作指令 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── 创建镜像 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 命令选项 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 选择父镜像 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用.dockerignore文件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 多步骤创建 --> ( 难度等级: 中阶 || 挂载数据: blog: 4 ) -│ │ │ └── 最佳实践 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 进阶技能 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 核心实现技术 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 基本架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 命名空间 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 控制组 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 联合文件系统 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Linux网络虚拟化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 配置私有仓库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 安装Docker Registry --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 配置TLS证书 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 管理访问权限 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 配置Registry --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 批量管理镜像 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 使用通知系统 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 安全防护与配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 命名空间隔离的安全 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 控制组资源控制的安全 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 内核能力机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Docker服务端的防护 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 更多安全特性的使用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 使用第三方检测工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Docker Bench --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ └── clair --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 高级网络功能 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 启动与配置参数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 配置容器DNS和主机名 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 容器访问控制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 映射容器端口到宿主主机的实现 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 配置容器网桥 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 自定义网桥 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用OpenvSwitch网桥 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 创建一个点到点连接 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── libnetwork插件化网络功能 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 容器网络模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Docker网络命令 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ └── 构建跨主机容器网络 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ ├── Kubernetes --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 管理工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Kubelens --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Kuboard --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── K3S --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── K9S --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Minikube --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── kubeasz --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Draft --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Kubernetes入门 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Kubernetes是什么 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Kubernetes的历史 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ ├── 从一个简单的例子开始 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 环境准备 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 启动MySQL服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 启动Tomcat应用 --> ( 难度等级: 中阶 || 挂载数据: blog: 6 ) -│ │ │ │ └── 通过浏览器访问网页 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Kubernetes基本概念和术语 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Master --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Node --> ( 难度等级: 中阶 || 挂载数据: blog: 5 ) -│ │ │ ├── Pod --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Pod定义详解 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ ├── Pod的基本用法 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 静态Pod --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Pod容器共享Volume --> ( 难度等级: 中阶 || 挂载数据: blog: 4 ) -│ │ │ │ ├── Pod的配置管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 在容器内获取Pod信息(Downward API) --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── Pod生命周期和重启策略 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Pod健康检查 --> ( 难度等级: 中阶 || 挂载数据: blog: 7 ) -│ │ │ │ ├── 玩转Pod调度 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Init Container(初始化容器) --> ( 难度等级: 中阶 || 挂载数据: blog: 3 ) -│ │ │ │ ├── Pod的升级和回滚 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Pod的扩容和缩容 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用StatefulSet搭建MongoDB集群 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ ├── Pod定义文件详解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 基本操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 其他设置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Pod调度 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Label(标签) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Replication Controller --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Deployment --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 运行Deployment --> ( 难度等级: 中阶 || 挂载数据: blog: 4 ) -│ │ │ │ ├── 命令vs配置文件 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── Deployment配置文件简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 伸缩 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Failover --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 用label控制Pod的位置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Horizontal Pod Autoscaler --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── StatefulSet --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 扩容/缩容StatefulSet --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── Service(服务) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Volume(存储卷) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Persistent Volume --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Namespace(命名空间) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Annotation(注解) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Kubernetes实践指南 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Kubernetes安装与配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 系统要求 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用kubeadm工具快速安装Kubernetes集群 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ ├── 以二进制文件方式安装Kubernetes集群 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── Kubernetes集群的安全设置 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ ├── Kubernetes集群的网络配置 --> ( 难度等级: 中阶 || 挂载数据: blog: 7 ) -│ │ │ │ ├── 内网中的Kubernetes相关配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Kubernetes的版本升级 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ └── Kubernetes核心服务配置详解 --> ( 难度等级: 中阶 || 挂载数据: blog: 4 ) -│ │ │ ├── kubectl命令行工具用法详解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── kubectl用法概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── kubectl子命令详解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── kubectl参数列表 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── kubectl输出格式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── kubectl操作示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 深入掌握Service --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Service定义详解 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── Service基本用法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Headless Service --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 集群外部访问Pod或Service --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── DNS服务搭建指南 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 自定义DNS和上游DNS服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Ingress:HTTP 7层路由机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Kubernetes核心原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Kubernetes API Server原理分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Kubernetes API Server概述 --> ( 难度等级: 中阶 || 挂载数据: blog: 7 ) -│ │ │ │ ├── 独特的Kubernetes Proxy API接口 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ └── 集群功能模块之间的通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Controller Manager原理分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Node Controller --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── ResourceQuota Controller --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Namespace Controller --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ └── Service Controller与Endpoint Controller --> ( 难度等级: 中阶 || 挂载数据: blog: 3 ) -│ │ │ ├── Scheduler原理分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── kubelet运行机制分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 节点管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Pod管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 容器健康检查 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── cAdvisor资源监控 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── kube-proxy运行机制分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 深入分析集群安全机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── API Server认证管理(Authentication) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── API Server授木又管理(Authorization) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Admission Control(准入控制) --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ ├── Service Account --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Secret私密凭据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 网络原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Kubernetes网络模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Docker的网络基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Docker的网络实现 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Kubernetes的网络实现 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 单主机Docker网络通信 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── Host模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── Container模式 --> ( 难度等级: 初阶 || 挂载数据: blog: 1 ) -│ │ │ │ │ │ ├── None模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── Bridge模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ │ └── 基础网络模型的优缺点分析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 跨主机Docker网络通信 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Flannel网络方案 --> ( 难度等级: 初阶 || 挂载数据: blog: 1 ) -│ │ │ │ │ ├── Calico网络方案 --> ( 难度等级: 初阶 || 挂载数据: blog: 9 ) -│ │ │ │ │ └── 网络方案对比分析 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── CNI网络模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Kubernetes网络策略 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 开源的网络组件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 共享存储原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 共享存储机制概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── PV详解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── PVC详解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── PV和PVC的生命周期 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── StorageClass详解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Kubernetes开发指南 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── REST简述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Kubernetes API详解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Kubernetes API概述 --> ( 难度等级: 中阶 || 挂载数据: blog: 6 ) -│ │ │ │ ├── API版本 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── API Groups(API组) --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── API方法说明 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ └── API响应说明 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 使用Java程序访问Kubernetes API --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ ├── Jersey --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ ├── Fabric8 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 使用说明 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Kubernetes运维指南 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Kubernetes集群管理指南 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Node的管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 更新资源对象的Label --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Namespace:集群环境共享与隔离 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Kubernetes资源管理 --> ( 难度等级: 中阶 || 挂载数据: blog: 3 ) -│ │ │ │ ├── 资源紧缺时的Pod驱逐机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Pod Disruption Budget(主动驱逐保护) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Kubernetes集群的高可用部署方案 --> ( 难度等级: 中阶 || 挂载数据: blog: 3 ) -│ │ │ │ ├── Kubernetes集群监控 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ │ ├── Weave Scope --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ ├── 安装Scope --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ │ └── 使用Scope --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Heapster --> ( 难度等级: 中阶 || 挂载数据: blog: 6 ) -│ │ │ │ │ │ └── 使用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── Prometheus Operator --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Prometheus架构 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ │ ├── Prometheus Operator架构 --> ( 难度等级: 中阶 || 挂载数据: blog: 3 ) -│ │ │ │ │ └── 部署Prometheus Operator --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 集群统一日志管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Kubernetes审计日志(Audit Log) --> ( 难度等级: 中阶 || 挂载数据: blog: 3 ) -│ │ │ │ ├── 使用Web UI(Dashboard)管理集群 --> ( 难度等级: 中阶 || 挂载数据: blog: 6 ) -│ │ │ │ └── Helm:Kubernetes应用包管理工具 --> ( 难度等级: 中阶 || 挂载数据: blog: 8 ) -│ │ │ ├── Trouble Shooting指导 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 查看系统Event事件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 查看容器日志 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 查看Kubernetes服务日志 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 寻求帮助 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Kubernetes开发中的新功能 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Pod Preset(运行时参数注入策略) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Cluster Federation(集群联邦) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 容器运行时接口(Container Runtime Interface-CRI) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 对GPU的支持 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Kubernetes的演进路线(Roadmap)和开发模式 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ ├── Kubernetes源码导读 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Kubernetes源码结构和编译步骤 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── kube-apiserver进程源码分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 进程启动过程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 关键代码分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── kube-controller-manager进程源码分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 进程启动过程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 关键代码分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── kube-scheduler进程源码分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 进程启动过程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 关键代码分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── kubelet进程源码分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 进程启动过程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 关键代码分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── kube-proxy进程源码分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 进程启动过程 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 关键代码分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── kubectl进程源码分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── kubectl create命令 --> ( 难度等级: 中阶 || 挂载数据: blog: 3 ) -│ │ │ └── rolling-update命令 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 先把Kubernetes跑起来 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 先跑起来 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 创建Kubernetes集群 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 部署应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 访问应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Scale应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 滚动更新 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 重要概念 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 部署Kubernetes Cluster --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 安装Docker --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 手动安装模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Ubuntu中自动化安装Docker --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── CentOS中自动化安装Docker --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ ├── 安装kubelet、kubeadm和kubectl --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 用kubeadm创建Cluster --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── 初始化Master --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 配置kubectl --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 安装Pod网络 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 添加k8s-node1 和k8s-node2 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Kubernetes架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Master节点 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Node节点 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── 完整的架构图 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 用例子把它们串起来 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 运行应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── DaemonSet --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── kube-flannel-ds --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── kube-proxy --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 运行自己的DaemonSet --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Job --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Pod失败的情况 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Job的并行性 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ └── 定时Job --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 通过Service访问Pod --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 创建Service --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Cluster IP底层实现 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── DNS访问Service --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 外网如何访问Service --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Rolling Update --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 实践 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Health Check --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 默认的健康检查 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Liveness探测 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Readiness探测 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Health Check在Scale Up中的应用 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ └── Health Check在滚动更新中的应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 数据管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Volume --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── emptyDir --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── hostPath --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 外部Storage Provider --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── PersistentVolume & PersistentVolumeClaim --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── NFS PersistentVolume --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 回收PV --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── PV动态供给 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 一个数据库例子 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Secret & Configmap --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 创建Secret --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 查看Secret --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 在Pod中使用Secret --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Volume方式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 环境变量方式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── ConfigMap --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Helm—Kubernetes的包管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Why Helm --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Helm架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 安装Helm --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Helm客户端 --> ( 难度等级: 中阶 || 挂载数据: blog: 3 ) -│ │ │ │ └── Tiller服务器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── chart详解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── chart目录结构 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── chart模板 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 再次实践MySQL chart --> ( 难度等级: 初阶 || 挂载数据: blog: 1 ) -│ │ │ ├── 升级和回滚release --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 开发自己的chart --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 网络 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 各种网络方案 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Network Policy --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 部署Canal --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 实践Network Policy --> ( 难度等级: 中阶 || 挂载数据: blog: 3 ) -│ │ ├── Kubernetes Dashboard --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 安装 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 配置登录权限 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Dashboard界面结构 --> ( 难度等级: 中阶 || 挂载数据: blog: 7 ) -│ │ │ └── 典型使用场景 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 部署Deployment --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 在线操作 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── 查看资源详细信息 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 查看Pod日志 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Kubernetes集群日志管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Docker简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 什么是Docker --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Docker基本概念 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 镜像 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 容器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 镜像仓库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Docker架构及原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Docker架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Docker原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 容器网络 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 容器存储 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 容器引擎 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 容器引擎实现原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 容器生命周期管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 容器状态管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 访问运行状态容器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 访问容器内容 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 镜像管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Dockerfile及镜像制作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Dockerfile的作用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Dockerfile文件构成 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ ├── 常用命令集 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 构建镜像 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── 镜像基本操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 从镜像仓库下载镜像 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 将本地镜像上传到镜像仓库 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 查看本地镜像 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 导出和导入本地镜像 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 构建镜像 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 修改本地镜像标识 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 删除本地镜像 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ ├── Dockerfile优化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Dockerfile检查项 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 检查及优化工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 操作系统基础镜像制作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 操作系统版本选择 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 操作系统参数调整 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 确定基础rpm包范围 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 确定常用命令范围 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 操作系统镜像制作过程 --> ( 难度等级: 中阶 || 挂载数据: blog: 3 ) -│ │ │ │ └── 系统资源限制配置说明 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 容器镜像安全加固 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 容器安全加固规范 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 安全检查工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 镜像仓库管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Docker Registry --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Docker Hub --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 第三方公共仓库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 建立私有镜像仓库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Harbor --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Harbor架构 --> ( 难度等级: 中阶 || 挂载数据: blog: 4 ) -│ │ │ ├── Harbor的镜像同步机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Harbor用户认证 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Harbor容器镜像安全扫描 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ ├── Docker相关部署实践 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── MySQL Docker部署实践 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── MySQL简介 --> ( 难度等级: 初阶 || 挂载数据: blog: 10 ) -│ │ │ │ └── MySQL容器化操作实践 --> ( 难度等级: 初阶 || 挂载数据: blog: 2 ) -│ │ │ └── Docker支持GPU实践 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── GPU简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── CPU与GPU的对比 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ └── 通过nvidia-docker使用GPU --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ ├── Kubernetes简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── PaaS简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 传统PaaS系统 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ └── 基于Docker的新型PaaS平台 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ └── Kubernetes核心概念 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Pod相关核心技术 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Label --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 健康检查 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 流程健康检查 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 应用健康检查 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Kubernetes Service --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── DNS服务发现机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Headless服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Kubernetes服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── ClusterIP --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── NodePort --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ └── LoadBalancer --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 网络策略 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 完整的Kubernetes服务发布实践 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 各Kubernetes集群 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ ├── Ingress服务发布 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ └── 服务发现 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Kubernetes存储 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 存储使用场景 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 文件存储的几种形式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Flex Volume存储管理方案 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 如何实现灵活存储组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 标准化容器存储接口CSI --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 安全及多租户配额管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── API服务器认证 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── DevOps --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 应用中心 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Helm Hub --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Operator Hub --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Aliyun App Hub --> ( 难度等级: 中阶 || 挂载数据: blog: 6 ) -│ │ │ ├── Kubernetes App Hub --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Prometheus Exporter Hub --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 运维 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 模板 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── YAML --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Helm --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── KUDO(Kubernetes Universal Declarative Operator) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── OAM(Open Application Model) --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── OpenKruise --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── MetaController --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 监控 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Prometheus --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Grafana --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Alertmanager --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── CI/CD --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ ├── Jenkins --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ ├── Argo --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Tekton --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Drone --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ ├── 日志 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── ELK --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ ├── ElasticSearch --> ( 难度等级: 中阶 || 挂载数据: blog: 6 ) -│ │ │ │ ├── Logstash --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ └── Kibana --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── EFK --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── ElasticSearch --> ( 难度等级: 中阶 || 挂载数据: blog: 5 ) -│ │ │ │ ├── Fluentd --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Kibana --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Loki --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Loki --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Promtail --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Grafana --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 采集 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Logpilot --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Fluentbit --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Fluentd --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── DevOps介绍 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 敏捷、持续交付和三步法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 制造业价值流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 技术价值流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 聚焦于部署前置时间 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 关注返工指标——%C/A --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 三步工作法:DevOps的基础原则 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ ├── 第一步:流动原则 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使工作可见 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 限制在制品数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 减小批量大小 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 减少交接次数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 持续识别和改善约束点 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 消除价值流中的困境和浪费 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 第二步:反馈原则 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 在复杂系统中安全地工作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 在源头保障质量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 为下游工作中心而优化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 第三步:持续学习与实验原则 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 建立学习型组织和安全文化 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 将日常工作的改进制度化 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 把局部发现转化为全局优化 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── 在日常工作中注入弹性模式 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ └── 领导层强化学习文化 --> ( 难度等级: 高阶 || 挂载数据: blog: 1 ) -│ │ ├── 从何处开始 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 选择合适的价值流作为切入点 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 兼顾记录型系统和交互型系统 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 从最乐于创新的团队开始 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 扩大DevOps的范围 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 理解、可视化和运用价值流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 确定创造客户价值所需的团队 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 针对团队工作绘制价值流图 --> ( 难度等级: 初阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 组建专门的转型团队 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 拥有共同的目标 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 保持小跨度的改进计划 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 为非功能性需求预留20%的开发时间,减少技术债务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 提高工作的可视化程度 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 用工具强化预期行为 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 参考康威定律设计组织结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 组织原型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 过度职能导向的危害(“成本优化”) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 组建以市场为导向的团队(“速度优化”) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使职能导向有效 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 将测试、运维和信息安全融入日常工作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使团队成员都成为通才 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 根据康威定律设定团队边界 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 创建松耦合架构,提高生产力和安全性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 将运维融入日常开发工作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 创建共享服务,提高开发生产力 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 将运维工程师融入服务团队 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 为每个服务团队分派运维联络人 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 邀请运维工程师参加开发团队的会议 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 邀请运维工程师参加每日站会 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ ├── 邀请运维工程师参加回顾会议 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 使用看板图展示运维工作 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ ├── 第一步:流动的技术实践 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 为部署流水线奠定基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 按需搭建开发环境、测试环境和生产环境 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 应用统一的代码仓库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使基础设施的重建更容易 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 运行在类生产环境里才算“完成” --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 实现快速可靠的自动化测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 对代码和环境做持续构建、测试和集成 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 构建快速可靠的自动化测试套件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 在自动化测试中尽早发现错误 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 尽可能并行地快速执行测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 先编写自动化测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 尽量将手动测试自动化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 在测试套件中集成性能测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 在测试套件中集成非功能性需求测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 在部署流水线失败时拉下安灯绳 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 应用和实践持续集成 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 小批量开发与大批量合并 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 应用基于主干的开发实践 --> ( 难度等级: 中阶 || 挂载数据: blog: 3 ) -│ │ │ ├── 自动化和低风险发布 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 自动化部署流程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 应用自动化的自助式部署 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 在部署流水线中集成代码部署 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 将部署与发布解耦 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 基于环境的发布模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 基于应用的发布模式更安全 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 降低发布风险的架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 能提高生产力、可测试性和安全性的架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 架构原型:单体架构与微服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 安全地演进企业架构 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ ├── 第二步:反馈的技术实践 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 分析遥测数据以更好地预测故障和实现目标 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 异常状态的处理和告警 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 应用异常检测技术 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 应用反馈实现安全部署 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 通过遥测使部署更安全 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 开发和运维共同承担值班工作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 让开发人员跟踪工作对下游的影响 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 让开发人员自行管理生产服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 将假设驱动的开发和A/B测试融入日常工作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── A/B测试简史 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 在功能测试中集成A/B测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 在发布中集成A/B测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 在功能规划中集成A/B测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 建立评审和协作流程以提升当前工作的质量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 变更审批流程的危险 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── “过度控制变更”的潜在危险 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 变更的协调和排程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 变更的同行评审 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 人工测试和变更冻结的潜在危害 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 利用结对编程改进代码变更 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 消除官僚流程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 集成信息安全、变更管理和合规性的技术实践 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 将信息安全融入每个人的日常工作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 将安全集成到开发迭代的演示中 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 将安全集成到缺陷跟踪和事后分析会议中 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 将预防性安全控制集成到共享源代码库及共享服务中 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 保证应用程序的安全性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 确保软件供应链的安全 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 确保环境的安全 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 将信息安全集成到生产环境遥测中 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 在应用程序中建立安全遥测系统 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 在环境中建立安全遥测系统 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 保护部署流水线 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 保护部署流水线 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 将安全和合规性集成到变更批准流程中 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 将大量低风险变更重新归类为标准变更 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 如何处理常规变更 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 减少对职责分离的依赖 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 确保为审计人员和合规人员留存文档和证据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Shell脚本在DevOps下的应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Shell编程基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Shell脚本的基本元素 --> ( 难度等级: 中阶 || 挂载数据: blog: 6 ) -│ │ │ │ ├── Shell基础正则表达式 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ ├── Shell特殊字符 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ └── 变量和运算符 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Shell中的控制流结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── sed的基础用法及实用举例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── sed的基础语法格式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── sed的用法举例说明 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ ├── awk的基础用法及实用案例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Shell应用于DevOps开发中应掌握的系统知识点 --> ( 难度等级: 中阶 || 挂载数据: blog: 4 ) -│ │ │ └── 生产环境下的Shell脚本 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 生产环境下的备份类脚本 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 生产环境下的统计类脚本 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 生产环境下的监控类脚本 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 生产环境下的运维开发类脚本 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ ├── Python在DevOps与自动化运维中的应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Python语言的应用领域 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 选择Python的原因 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Python的版本说明 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Python基础学习工具 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ │ ├── Python(x,y)简单介绍 --> ( 难度等级: 高阶 || 挂载数据: blog: 10 ) -│ │ │ │ ├── IPython详细介绍 --> ( 难度等级: 高阶 || 挂载数据: blog: 2 ) -│ │ │ │ └── Sublime Text3简单介绍 --> ( 难度等级: 高阶 || 挂载数据: 无 ) -│ │ │ ├── Python基础知识进阶 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 正则表达式应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Python程序构成 --> ( 难度等级: 中阶 || 挂载数据: blog: 6 ) -│ │ │ │ ├── 使用Python解析JSON --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ ├── Python异常处理与程序调试 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── Python函数 --> ( 难度等级: 中阶 || 挂载数据: blog: 7 ) -│ │ │ │ ├── Python面向对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Python多进程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Python多线程 --> ( 难度等级: 初阶 || 挂载数据: blog: 3 ) -│ │ │ ├── Python经常用到的第三方类库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 利用Flask设计后端Restful API --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ └── 工作中的Python脚本分享 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Vagrant在DevOps环境中的应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Vagrant简单介绍 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Vagrant安装 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用Vagrant配置本地开发环境 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Vagrant的具体安装步骤 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ ├── Vagrant配置文件详解 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ └── Vagrant常用命令详解 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ ├── 使用Vagrant搭建DevOps开发环境 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ └── 使用Vagrant搭建分布式环境 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 自动化部署管理工具Ansible --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── YAML介绍 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Ansible的安装和配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 定义主机与组规则(Inventory) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Ansible常用模块介绍 --> ( 难度等级: 中阶 || 挂载数据: blog: 5 ) -│ │ │ ├── playbook介绍 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Ansible在AWS云平台中的应用 --> ( 难度等级: 中阶 || 挂载数据: blog: 3 ) -│ │ │ ├── 角色 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Jinja2过滤器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Ansible速度优化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 利用Ansible API提供自动化运维后端 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── runner API --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── playbook API --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 用Flask封装Ansible提供自动化运维后端 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ └── Ansible 2.2新增功能 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 自动化配置管理工具SaltStack --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Salt的相关知识点介绍 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Salt的优势 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Salt的安装 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Salt的工作流程 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── Salt配置文件详解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Salt的命令格式 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── Salt的常用组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Salt常用的操作目标 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Salt常用模块 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── Granis组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── pillar组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── job管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── State介绍 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Salt真实案例分享 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── base环境配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── prod环境配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Salt多Master搭建 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Salt API介绍 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Python API介绍 --> ( 难度等级: 中阶 || 挂载数据: blog: 5 ) -│ │ │ └── Restful API介绍 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ └── Docker和Jenkins在DevOps中的应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Docker的基础安装 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Docker的三大核心概念 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Docker的基本架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Docker网络实现原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 利用Dockerfile文件技巧打包Docker镜像 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 利用Docker-Compose编排和管理多容器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Docker-Compose的基本语法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Docker-Compose常用命令 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ └── 利用Docker搭建Jenkins Master/Slave分布式环境 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Jenkins Master/Slave的详细部署过程 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ ├── 中间件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 缓存 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── etcd --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ └── Redis --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 微服务与配置中心 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Nacos --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ └── 存储 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── S3标准 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── MinIO --> ( 难度等级: 中阶 || 挂载数据: blog: 5 ) -│ │ └── Harbor --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ └── 其他 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -├── 云原生中阶-应用开发 --> ( 难度等级: 无 || 挂载数据: 无 ) -│ ├── Serverless --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── App Serverless --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Knative --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── Microservices微服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Dapr --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ └── 其他 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -├── 云原生中阶-平台开发 --> ( 难度等级: 无 || 挂载数据: 无 ) -│ ├── Kubernetes --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 边缘计算 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── OpenYurt --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── KubeEdge --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ └── Akri --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 集群联邦 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Federation --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 发行版 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── EKS-D --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Harvester --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── OpenShift --> ( 难度等级: 中阶 || 挂载数据: blog: 4 ) -│ │ │ ├── k0s --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Wayne --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Kubernetes系统基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 容器技术概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 容器技术的功用 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ ├── 容器简史 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Docker的功能限制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Kubernetes概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Kubernetes简史 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Kubernetes特性 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ └── Kubernetes概念和术语 --> ( 难度等级: 中阶 || 挂载数据: blog: 5 ) -│ │ │ ├── Kubernetes集群组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Master组件 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── Node组件 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ └── 核心附件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Kubernetes网络模型基础 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 网络模型概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 集群上的网络通信 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Kubernetes快速入门 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Kubernetes的核心对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Pod资源对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Controller --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Service --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 部署应用程序的主体过程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 部署Kubernetes集群 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── kubeadm部署工具 --> ( 难度等级: 中阶 || 挂载数据: blog: 6 ) -│ │ │ │ ├── 集群运行模式 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 准备用于实践操作的集群环境 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 获取集群环境相关的信息 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── kubectl使用基础与示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 命令式容器应用编排 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 部署应用(Pod) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 探查Pod及应用详情 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 部署Service对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 扩容和缩容 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 修改及删除对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 资源管理基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 资源对象及API群组 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Kubernetes的资源对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 资源及其在API中的组织形式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 访问Kubernetes REST API --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 对象类资源格式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 资源配置清单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── metadata嵌套字段 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── spec和status字段 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 资源配置清单格式文档 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ └── 资源对象管理方式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── kubectl命令与资源管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 资源管理操作概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── kubectl的基本用法 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 管理名称空间资源 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 查看名称空间及其资源对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 管理Namespace资源 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Pod资源的基础管理操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 陈述式对象配置管理方式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 声明式对象配置管理方式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 管理Pod资源对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 管理Pod对象的容器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 镜像及其获取策略 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 暴露端口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 自定义运行的容器化应用 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 环境变量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 共享节点的网络名称空间 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 设置Pod对象的安全上下文 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ ├── 标签与标签选择器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 标签概述 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 管理资源标签 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 标签选择器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Pod节点选择器nodeSelector --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 资源注解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 查看资源注解 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ └── 管理资源注解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Pod对象的生命周期 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Pod的相位 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Pod的创建过程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Pod生命周期中的重要行为 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 容器的重启策略 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Pod的终止过程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Pod存活性探测 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 设置exec探针 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 设置HTTP探针 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 设置TCP探针 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 存活性探测行为属性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Pod就绪性探测 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 资源需求及资源限制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 资源需求 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 资源限制 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── 容器的可见资源 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ └── Pod的服务质量类别 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Pod控制器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 关于Pod控制器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Pod控制器概述 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 控制器与Pod对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Pod模板资源 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── ReplicaSet控制器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── ReplicaSet概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建ReplicaSet --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── ReplicaSet管控下的Pod对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 更新ReplicaSet控制器 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ └── 删除ReplicaSet控制器资源 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── Deployment控制器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建Deployment --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 更新策略 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 升级Deployment --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 金丝雀发布 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 回滚Deployment控制器下的应用发布 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── DaemonSet控制器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建DaemonSet资源对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 更新DaemonSet对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Job控制器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建Job对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 并行式Job --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Job扩容 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 删除Job --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── CronJob控制器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建CronJob对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── CronJob的控制机制 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ ├── ReplicationController --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Pod中断预算 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 存储卷与数据持久化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 存储卷概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Kubernetes支持的存储卷类型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 存储卷的使用方式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 临时存储卷 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── emptyDir存储卷 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── gitRepo存储卷 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 节点存储卷hostPath --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 网络存储卷 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── NFS存储卷 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── RBD存储卷 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── GlusterFS存储卷 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Cinder存储卷 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── 持久存储卷 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建PV --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建PVC --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 在Pod中使用PVC --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 存储类 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── PV和PVC的生命周期 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── downwardAPI存储卷 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 环境变量式元数据注入 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 存储卷式元数据注入 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ ├── 配置容器应用:ConfigMap和Secret --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 容器化应用配置方式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 通过命令行参数配置容器应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 利用环境变量配置容器应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 应用程序配置管理及ConfigMap资源 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建ConfigMap对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 向Pod环境变量传递ConfigMap对象键值数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── ConfigMap存储卷 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 容器应用重载新配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 使用ConfigMap资源的注意事项 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Secret资源 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Secret概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 创建Secret资源 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Secret存储卷 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ └── imagePullSecret资源对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── StatefulSet控制器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── StatefulSet概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Stateful应用和Stateless应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── StatefulSet控制器概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── StatefulSet的特性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── StatefulSet基础应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 创建StatefulSet对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── StatefulSet资源扩缩容 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── StatefulSet资源升级 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 滚动更新 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 暂存更新操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 金丝雀部署 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 分段更新 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 其他话题 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 案例:etcd集群 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 创建Service资源 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── etcd StatefulSet --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ ├── 认证、授权与准入控制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 访问控制概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 用户账户与用户组 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 认证、授权与准入控制基础 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── 服务账户管理与应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Service Account自动化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建服务账户 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 调用imagePullSecret资源对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── X.509数字证书认证 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Kubernetes中的SSL/TLS认证 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 客户端配置文件kubeconfig --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── TLS bootstrapping机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 基于角色的访问控制:RBAC --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── RBAC授权插件 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── Role和RoleBinding --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── ClusterRole和ClusterRoleBin-ding --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 聚合型ClusterRole --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 面向用户的内建ClusterRole --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 其他的内建ClusterRole和ClusterRoleBinding --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Kubernetes Dashboard --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 部署HTTPS通信的Dashboard --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ ├── 配置token认证 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ └── 配置kubeconfig认证 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 网络模型与网络策略 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Kubernetes网络模型及CNI插件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Docker容器的网络模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Kubernetes网络模型 --> ( 难度等级: 初阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── Pod网络的实现方式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── CNI插件及其常见的实现 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── flannel网络插件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── flannel的配置参数 --> ( 难度等级: 初阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── VxLAN后端和direct routing --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── host-gw后端 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 网络策略 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 网络策略概述 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 部署Canal提供网络策略功能 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 配置网络策略 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 管控入站流量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 管控出站流量 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 隔离名称空间 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 网络策略应用案例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── Calico网络插件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Calico工作特性 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Calico系统架构 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Calico部署要点 --> ( 难度等级: 初阶 || 挂载数据: blog: 1 ) -│ │ │ ├── 部署Calico提供网络服务和网络策略 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 客户端工具calicoctl --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Pod资源调度 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Kubernetes调度器概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 常用的预选策略 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 常用的优选函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 节点亲和调度 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 节点硬亲和性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 节点软亲和性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Pod资源亲和调度 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 位置拓扑 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Pod硬亲和调度 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Pod软亲和调度 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Pod反亲和调度 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── 污点和容忍度 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 定义污点和容忍度 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 管理节点的污点 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Pod对象的容忍度 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Pod优选级和抢占式调度 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Kubernetes系统扩展 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 自定义资源类型(CRD) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 创建CRD对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 自定义资源格式验证 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 子资源 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用资源类别 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 多版本支持 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 自定义控制器基础 --> ( 难度等级: 中阶 || 挂载数据: blog: 4 ) -│ │ │ ├── 自定义API Server --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 自定义API Server概述 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ └── APIService对象 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Kubernetes集群高可用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── etcd高可用 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ └── Controller Manager和Scheduler高可用 --> ( 难度等级: 中阶 || 挂载数据: blog: 4 ) -│ │ │ ├── Kubernetes的部署模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 关键组件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 常见的部署模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 容器时代的DevOps概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 容器:DevOps协作的基础 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ ├── 容器隔离等级 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 容器编排 --> ( 难度等级: 中阶 || 挂载数据: blog: 5 ) -│ │ │ │ ├── 将镜像存储在可信的注册服务器中 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 充分利用Docker的构建缓存 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 不要使用特权模式运行容器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用显式的容器镜像标签 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 保持小的容器镜像 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 单个容器只运行一个应用 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 使用可信镜像仓库中经过验证的镜像 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 对镜像进行漏洞扫描 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 不要将数据保存在容器中 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ └── 永远不要在容器中存放密钥和配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 泛型端到端容器应用程序生命周期工作流 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 基于Kubernetes的DevOps --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ ├── 资源指标及HPA控制器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 资源监控及资源指标 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 资源监控及Heapster --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 新一代监控架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 资源指标及其应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 部署metrics-server --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── kubectl top命令 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 自定义指标与Prometheus --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Prometheus概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 部署Prometheus监控系统 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 自定义指标适配器k8s-prometheus-adapter --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 自动弹性缩放 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── HPA概述 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── HPA(v1)控制器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── HPA(v2)控制器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Helm程序包管理器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Helm基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Helm的核心术语 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Helm架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 安装Helm Client --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 安装Tiller server --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Helm快速入门 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Helm Charts --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Charts文件组织结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Chart.yaml文件组织格式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Charts中的依赖关系 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 模板和值 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 自定义Charts --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Helm实践:部署EFK日志管理系统 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── ElasticSearch集群 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 日志采集代理fluentd --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 可视化组件Kibana --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 夯实基础:Linux网络虚拟化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 网络虚拟化基石:network namespace --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 初识network namespace --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 配置network namespace --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── network namespace API的使用 --> ( 难度等级: 初阶 || 挂载数据: blog: 4 ) -│ │ │ ├── 千呼万唤始出来:veth pair --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── veth pair内核实现 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 连接你我他:Linux bridge --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Linux bridge初体验 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ ├── 把IP让给Linux bridge --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ ├── 将物理网卡添加到Linux bridge --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ ├── Linux bridge在网络虚拟化中的应用 --> ( 难度等级: 初阶 || 挂载数据: blog: 10 ) -│ │ │ │ └── 网络接口的混杂模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 给用户态一个机会:tun/tap设备 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── tun/tap设备的工作原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 利用tun设备部署一个VPN --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── tun设备编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── iptables --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 祖师爷netfilter --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── iptables的三板斧:table、chain和rule --> ( 难度等级: 中阶 || 挂载数据: blog: 4 ) -│ │ │ │ ├── iptables的常规武器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── userspace模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── iptables模式 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ ├── IPVS模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── iptables VS. IPVS --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── conntrack --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── 初识Linux隧道:ipip --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 测试ipip隧道 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── ipip隧道测试结果复盘 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Linux隧道网络的代表:VXLAN --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── VXLAN协议原理简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── VXLAN组网必要信息 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── VXLAN基本配置命令 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── VXLAN网络实践 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 分布式控制中心 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 自维护VTEP组 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 物理网卡的分身术:Macvlan --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Macvlan五大工作模式解析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 测试使用Macvlan设备 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Macvlan的跨机通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Macvlan与overlay对比 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ └── Macvlan的救护员:IPvlan --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── IPvlan简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 测试IPvlan --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Docker IPvlan网络 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 饮水思源:Docker网络模型简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 主角登场:Linux容器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 打开万花筒:Docker的四大网络模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── bridge模式 --> ( 难度等级: 初阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── host模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── container模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── none模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 最常用的Docker网络技巧 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 查看容器IP --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 端口映射 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 访问外网 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── DNS和主机名 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 自定义网络 --> ( 难度等级: 初阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 发布服务 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── docker link:两两互联 --> ( 难度等级: 初阶 || 挂载数据: blog: 1 ) -│ │ │ ├── 容器网络的第一个标准:CNM --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── CNM标准 --> ( 难度等级: 初阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 体验CNM接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Libnetwork --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── Libnetwork扩展 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 天生不易:容器组网的挑战 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 容器网络挑战综述 --> ( 难度等级: 初阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── Docker的解决方案 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ └── 第三方容器网络插件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 如何做好技术选型:容器组网方案沙场点兵 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 隧道方案 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 路由方案 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 容器网络组网类型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ └── 关于容器网络标准接口 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 标准的胜利:Kubernetes网络原理与实践 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 容器基础设施的代言人:Kubernetes --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Kubernetes简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Kubernetes能做什么 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 如何用Kubernetes --> ( 难度等级: 中阶 || 挂载数据: blog: 3 ) -│ │ │ │ └── Docker在Kubernetes中的角色 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 终于等到你:Kubernetes网络 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Kubernetes网络基础 --> ( 难度等级: 初阶 || 挂载数据: blog: 3 ) -│ │ │ │ ├── Kubernetes网络架构综述 --> ( 难度等级: 初阶 || 挂载数据: blog: 4 ) -│ │ │ │ ├── Kubernetes主机内组网模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Kubernetes跨节点组网模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Pod的hosts文件 --> ( 难度等级: 初阶 || 挂载数据: blog: 1 ) -│ │ │ │ └── Pod的hostname --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Pod的核心:pause容器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 打通CNI与Kubernetes:Kubernetes网络驱动 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 即将完成历史使命:Kubenet --> ( 难度等级: 初阶 || 挂载数据: blog: 5 ) -│ │ │ │ └── 网络生态第一步:CNI --> ( 难度等级: 初阶 || 挂载数据: blog: 2 ) -│ │ │ ├── 找到你并不容易:从集群内访问服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Kubernetes Service详解 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Service的三个port --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 你的服务适合哪种发布形式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Kubernetes Service发现 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 特殊的无头Service --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 怎么访问本地服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 找到你并不容易:从集群外访问服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Kubernetes Ingress --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 你的名字:通过域名访问服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── DNS服务基本框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 域名解析基本原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 调试DNS --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Kubernetes网络策略:为你的应用保驾护航 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 网络策略应用举例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 前方高能:Kubernetes网络故障定位指南 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── IP转发和桥接 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Pod CIDR冲突 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── hairpin --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 查看Pod IP地址 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 故障排查工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 迈向云原生 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 找个合理的理由打破巨石应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 先解耦简单的服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 学会小规模的运维 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 使用防损层模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用刀砍模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 准备一个数据迁移策略 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 重写所有模板代码 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 淘汰老代码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 确保弹性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 用重试来解决瞬时故障 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用有限次的重试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 用断路器来处理非瞬时故障 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 优雅地降级 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用隔离模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 实现健康及就绪检查 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 为容器设定CPU和内存限制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 实现限速和限流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 确保安全性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 安全性需求同其他需求一样重要 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 在设计时就考虑安全性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 授予最小访问权限 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 安全地存储所有密钥 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 模糊化数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 传输数据加密 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用联合身份管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Kubernetes pod的隔离 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 处理数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用托管数据库和数据分析服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用符合数据需求的存储 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 将数据保存在多个地域或可用区中 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用数据分区和复制以提高扩展性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 避免过度获取及频繁的I/O操作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 不要把业务逻辑放在数据库中执行 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用类生产环境数据来测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 处理瞬时故障 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 性能和伸缩性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 设计可扩展的无状态服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用平台的自动伸缩功能 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用缓存 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 用分区来实现超出服务限制的扩容 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ └── 运维 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── 部署和发布是两项独立的活动 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 部署的内容要尽量小 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 组件层级的CI/CD定义 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 应用部署的一致性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 采用零宕机发布 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 不要变更部署后的架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用容器化构建 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 用代码来描述基础设施 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 使用命名空间来组织Kubernetes中的服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 环境间的隔离 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 分隔函数源代码 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 关联代码提交和部署 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 刨根问底:Kubernetes网络实现机制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Kubernetes极客们的日常:DIY一个Ingress Controller --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── Ingress Controller的通用框架 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ └── Nginx Ingress Controller详解 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ ├── 沧海桑田:Kubernetes DNS架构演进之路 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Kube-dns的工作原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 上位的CoreDNS --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Kube-dns VS. CoreDNS --> ( 难度等级: 中阶 || 挂载数据: blog: 8 ) -│ │ │ └── 你的安全我负责:使用Calico提供Kubernetes网络策略 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── 部署一个带Calico的Kubernetes集群 --> ( 难度等级: 初阶 || 挂载数据: blog: 5 ) -│ │ │ └── 测试Calico网络策略 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── 百花齐放:Kubernetes网络插件生态 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 从入门到放弃:Docker原生网络的不足 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── CNI标准的胜出:从此江湖没有CNM --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── CNI的工作原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Kubernetes网络插件鼻祖flannel --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── flannel简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── flannel安装配置 --> ( 难度等级: 初阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── flannel backend详解 --> ( 难度等级: 初阶 || 挂载数据: blog: 1 ) -│ │ │ │ └── flannel与etcd --> ( 难度等级: 初阶 || 挂载数据: blog: 7 ) -│ │ │ ├── 全能大三层网络插件:Calico --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Calico简介 --> ( 难度等级: 初阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── Calico的隧道模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 安装Calico --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Calico报文路径 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── Calico使用指南 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Weave:支持数据加密的网络插件 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Weave简介 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Weave实现原理 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Weave安装 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Weave网络通信模型 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── Weave的应用示例 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Cilium:为微服务网络连接安全而生 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 以API为中心的微服务安全 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── BPF优化的数据平面性能 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Kubernetes多网络的先行者:CNI-Genie --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── CNI-Genie功能速递 --> ( 难度等级: 初阶 || 挂载数据: blog: 1 ) -│ │ │ └── 容器多IP --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ ├── Kubernetes网络下半场:Istio --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 微服务架构的大地震:sidecar模式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 你真的需要Service Mesh吗 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── sidecar模式 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── Service Mesh与sidecar --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Kubernetes Service VS. Service Mesh --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Service Mesh典型实现之Linkerd --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ ├── Istio:引领新一代微服务架构潮流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Istio简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Istio安装 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Istio路由规则的实现 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 一切尽在不言中:Istio sidecar透明注入 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Init容器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── sideca注入示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 手工注入sidecar --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 自动注入sidecar --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 从应用容器到sidecar代理的通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 不再为iptables脚本所困:Istio CNI插件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 除了微服务,Istio还能做更多 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 云原生简介 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 分布式系统 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 分布式系统的误区 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ └── CAP定理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 十二要素应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 可用性和服务等级协议 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 云原生基础 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 无服务器架构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 函数计算 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 编写单一用途的函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 避免串联函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 函数应保持轻量和简单 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 实现无状态函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 分离函数入口和函数的业务逻辑 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ └── 避免长时间运行的函数 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 从虚拟机到云原生 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ ├── 提升和转变 --> ( 难度等级: 中阶 || 挂载数据: blog: 3 ) -│ │ │ │ ├── 应用的现代化改造 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 应用的优化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 微服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 微服务架构的优势 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 微服务架构带来的挑战 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 精益运营 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 安全性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 可扩展性与成本 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 云原生应用的设计 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 云原生与传统架构的对比 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ ├── API设计与版本控制 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── API的前后兼容 --> ( 难度等级: 中阶 || 挂载数据: blog: 3 ) -│ │ │ │ └── 语义版本号 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 服务间的通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 通信协议 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 消息协议 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 序列化的考虑因素 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 幂等性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 请求与响应 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 发布者与订阅者 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 发布者/订阅者模式与请求/响应模式间的选择 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 同步与异步 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 设计时考虑前后兼容性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 封装好服务避免泄露内部细节 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 优先考虑异步通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 使用高效的序列化技术 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 用批处理来提高请求处理的效率 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 拆分大的消息 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 网关 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 路由 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 聚合 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 卸载 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 网关的实现 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 出口网关 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 服务网格 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 架构示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 数据处理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 数据存储系统 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 对象、文件和磁盘 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 数据库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 流和队列 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ ├── 区块链 --> ( 难度等级: 中阶 || 挂载数据: blog: 3 ) -│ │ │ │ └── 数据存储的选择 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 多数据存储下的数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 捕获数据更改 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 将更改作为事件写入更改日志 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 事务监管 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 事务回滚 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 提取、转换和加载 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 客户端访问数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 受限的客户令牌(代客密钥) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 细粒度访问控制的数据库服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── GraphQL数据服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 可快速伸缩的数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 数据分片 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 数据缓存 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 内容分发网络 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 数据分析 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 数据流 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 批处理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 对象存储上的数据湖 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 数据湖和数据仓库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 分布式查询引擎 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Kubernetes中的数据库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── StatefulSet --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── DaemonSet --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── DevOps --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 什么是DevOps --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ ├── 协作 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 自动化 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 精益原则和流程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 度量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 分享 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 测试替身 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 自动化测试金字塔 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 不同测试类型的适用时机 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 测试节奏 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 在生产环境中测试 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 开发环境和工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 开发工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 开发环境 --> ( 难度等级: 中阶 || 挂载数据: blog: 5 ) -│ │ │ │ ├── 本地开发环境 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 本地开发环境结合远端集群 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Skaffold开发工作流 --> ( 难度等级: 初阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 将远端集群路由到本地开发环境 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 云端开发环境 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 持续集成/持续交付 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 源代码管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 构建阶段 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 测试阶段 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 部署阶段 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 发布阶段 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 发布后阶段 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 监控 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 收集指标 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 服务的可观测性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 配置管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 单一环境变量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 将配置数据放入存储卷中 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 密钥保存 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 部署配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 持续集成/持续交付流程示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 可移植性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 可移植性的代价 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 何时及如何实现可移植性 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 标准化的接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 共用的服务和功能 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 抽象和分层 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 第三方服务商的托管服务 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 可移植性工具 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 把Kubernetes作为可移植性层 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 理论篇(技术进阶) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 鸟瞰云上Kubernetes --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 内容概要 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 云资源层 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ │ ├── 专有版 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 托管版 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── Serverless版 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 单机系统层 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 集群系统层 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 专有版 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 托管版 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── Serverless版 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 功能扩展层 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 日志 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 认识集群的大脑 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 从控制器视角看集群 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 控制器示例 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 服务控制器 --> ( 难度等级: 中阶 || 挂载数据: blog: 3 ) -│ │ │ │ └── 路由控制器 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 网络与通信原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 背景 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 阿里云Kubernetes集群网络大图 --> ( 难度等级: 初阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 集群网络搭建 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 初始阶段 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 集群阶段 --> ( 难度等级: 初阶 || 挂载数据: blog: 2 ) -│ │ │ │ │ ├── 节点阶段 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ │ └── Pod阶段 --> ( 难度等级: 初阶 || 挂载数据: 无 ) -│ │ │ │ └── 通信原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 节点伸缩的实现 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 节点增加原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 手动添加已有节点 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 自动添加已有节点 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 集群扩容 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 自动伸缩 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 节点减少原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 节点池原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 简洁的服务模型 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 服务的本质是什么 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 自带通信员 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 让服务照进现实 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 基于Netfilter的实现 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 过滤器框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 节点网络大图 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 升级过滤器框架 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 用自定义链实现服务的反向代理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 镜像下载自动化 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 镜像下载这件小事 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 理解OAuth 2.0协议 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ ├── Docker扮演的角色 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 整体结构 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 理解docker login --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ │ └── 拉取镜像是怎么回事 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ │ ├── Kubernetes实现的私有镜像自动拉取 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 基本功能 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 进阶方式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 阿里云实现的ACR credential helper --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ ├── 日志服务的集成 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 日志服务介绍 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── 采集方案介绍 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 方案简介 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ │ ├── 运行流程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 配置方式 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 核心技术介绍 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 背景 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 实现方式 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ └── alibaba-log-controller内部实现 --> ( 难度等级: 中阶 || 挂载数据: blog: 7 ) -│ │ │ ├── 集群与存储系统 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 从应用的状态谈起 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 无状态的应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 有状态的应用 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 基本单元:Pod Volume --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 核心设计:PVC与PV体系 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 与特定存储系统解耦 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── Volume Plugin --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── in-tree(内置) Volume Plugin --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ │ └── out-of-tree(外置) Volume Plugin --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Kubernetes CSI管控组件容器化部署 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 基于Kubernetes的存储 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 流量路由Ingress --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 基本原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 基础用法 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ │ ├── 配置安全路由 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ │ ├── 全局配置和局部配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 实现原理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 场景化需求 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ │ ├── 多入口访问Ingress --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 部署多套Ingress Controller --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 获取客户端真实IP地址 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── 理解客户端真实IP地址的传递过程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ ├── ExternalTrafficPolicy的影响 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ │ └── 如何获取客户端真实IP地址 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ │ │ └── 白名单功能 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 升级设计与实现 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 升级预检 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 核心组件检查项 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 前置检查增项 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 原地升级与替代升级 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 原地升级 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 替代升级 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 升级三部曲 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 升级Master节点 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 升级Worker节点 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 核心组件升级 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 实践篇(诊断之美) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 节点就绪状态异常(一) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Docker栈 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── docker daemon调用栈分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Containerd调用栈分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 什么是D-Bus --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── runC请求D-Bus --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ └── 原因并不在D-Bus --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Systemd是硬骨头 --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ │ ├── “没用”的core dump --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── 零散的信息 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 代码分析 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Live Debugging --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 节点就绪状态异常(二) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 节点状态机 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 就绪三分钟 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 止步不前的PLEG --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 无响应的Terwayd --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 原因 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 修复 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 命名空间回收机制失效 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 集群管控入口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 命名空间控制器的行为 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── 删除收纳盒里的资源 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── API、Group、Version --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── 控制器不能删除命名空间里的资源 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ ├── 回到集群管控入口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 节点与Pod的通信 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 集群节点访问云资源 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 网络安全组加固对与错 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 安全组扮演的角色 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 安全组与集群网络 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 怎么管理安全组规则 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 限制集群访问外网 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── IDC与集群互访 --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ └── 使用新的安全组管理节点 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 网格应用存活状态异常 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 代理与代理的生命周期管理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 控制面和数据面 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── 简单的原因 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 阿里云服务网格(ASM)介绍 --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ └── 网格自签名根证书过期 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 连续重启的Citadel --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 一般意义上的证书验证 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 自签名证书验证失败 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 大神定理 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Citadel证书体系 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 经验 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── DevOps --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 运维 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── 配置 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── CUE(Cisco Unity Express) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Jsonnet --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── HCL --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── BCL --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── KubeVela --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Terraform --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ ├── API --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── GraphQL --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Swagger UI --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── gRPC --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 诊断 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── OpenTracing标准 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── SkyWalking --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Zipkin --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Jaeger --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Sonobuoy --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 质量 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Litmus --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Sysbench --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ ├── 操作系统 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── CoreOS --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ ├── Alibaba Linux --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Tencent Linux --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ └── 其他 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -├── 云原生高阶-应用开发 --> ( 难度等级: 无 || 挂载数据: 无 ) -│ ├── Serverless --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── BaaS Serverless --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Spring Cloud Connector --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Open Service Broker --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 编程语言 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Java --> ( 难度等级: 中阶 || 挂载数据: blog: 10 ) -│ │ ├── 减小镜像 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Alpine Portola --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── JDK (version >= 9) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Spring Boot (version > 2.3) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 降低资源占用率 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── Project Panama --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Project Valhalla --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 缩短冷启动时间 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── GraalVM --> ( 难度等级: 中阶 || 挂载数据: blog: 2 ) -│ │ ├── Quarkus --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ ├── Micronaut --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── Helidon --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ └── 其他 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -├── 云原生高阶-平台开发 --> ( 难度等级: 无 || 挂载数据: 无 ) -│ ├── Kubernetes --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 接口 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── CNI(Container Network Interface) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Flannel --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Calico --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── Weave --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── OVN(Open Virtual Network) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── SR-IOV(Single-root Input/Output Virtualization) --> ( 难度等级: 中阶 || 挂载数据: blog: 1 ) -│ │ │ │ ├── Romana --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ ├── OpenContrail --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Kuryr --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── CRI(Container Runtime Interface) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ │ └── Frakti --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── CSI(Container Storage Interface) --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ ├── FlexVolume --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── GlusterFS --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── PaaS --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Cloud Foundry --> ( 难度等级: 中阶 || 挂载数据: blog: 6 ) -│ │ ├── Crossplane --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Anthos --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── KubeSphere --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── DevOps --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 运维 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 编程 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Operator --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Pulumi --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Ballerina --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── cdk8s --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ ├── 中间件 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── 数据库 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ │ └── Database Mesh --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── 大数据 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Kubeflow --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ ├── Fluid --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ │ └── KubeTEE --> ( 难度等级: 中阶 || 挂载数据: 无 ) -│ └── 其他 --> ( 难度等级: 中阶 || 挂载数据: 无 ) -└── 其他 --> ( 难度等级: 无 || 挂载数据: 无 ) - ├── 其他类别标签问题 --> ( 难度等级: 无 || 挂载数据: 无 ) - ├── 应用类问题 --> ( 难度等级: 无 || 挂载数据: 无 ) - └── 第三方包问题 --> ( 难度等级: 无 || 挂载数据: 无 ) +云原生 --> ( 难度等级: [0, 1) || 挂载数据: 无 ) +├── 云原生初阶-应用开发 --> ( 难度等级: [0.0, 0.1429) || 挂载数据: 无 ) +│ ├── Serverless --> ( 难度等级: [0.0, 0.0357) || 挂载数据: 无 ) +│ │ ├── Cloud Events --> ( 难度等级: [0.0, 0.0011) || 挂载数据: 无 ) +│ │ ├── Serverless Framework --> ( 难度等级: [0.0011, 0.0021) || 挂载数据: 无 ) +│ │ ├── Serverless Devs --> ( 难度等级: [0.0021, 0.0032) || 挂载数据: 无 ) +│ │ ├── FaaS Serverless --> ( 难度等级: [0.0032, 0.0042) || 挂载数据: 无 ) +│ │ │ ├── Nuclio --> ( 难度等级: [0.0032, 0.0033) || 挂载数据: 无 ) +│ │ │ ├── Kubeless --> ( 难度等级: [0.0033, 0.0035) || 挂载数据: 无 ) +│ │ │ │ ├── Kubeless概述 --> ( 难度等级: [0.0033, 0.0034) || 挂载数据: 无 ) +│ │ │ │ │ ├── 部署Kubeless --> ( 难度等级: [0.0033, 0.0033) || 挂载数据: 无 ) +│ │ │ │ │ ├── 配置客户端 --> ( 难度等级: [0.0033, 0.0034) || 挂载数据: 无 ) +│ │ │ │ │ ├── 部署函数 --> ( 难度等级: [0.0034, 0.0034) || 挂载数据: 无 ) +│ │ │ │ │ └── Kubeless UI --> ( 难度等级: [0.0034, 0.0034) || 挂载数据: blog: 1 ) +│ │ │ │ └── Function --> ( 难度等级: [0.0034, 0.0035) || 挂载数据: blog: 2 ) +│ │ │ │ ├── 函数部署 --> ( 难度等级: [0.0034, 0.0034) || 挂载数据: 无 ) +│ │ │ │ ├── 函数调用 --> ( 难度等级: [0.0034, 0.0035) || 挂载数据: 无 ) +│ │ │ │ └── 自动扩展 --> ( 难度等级: [0.0035, 0.0035) || 挂载数据: blog: 1 ) +│ │ │ ├── Fission --> ( 难度等级: [0.0035, 0.0037) || 挂载数据: 无 ) +│ │ │ │ ├── 部署Fission --> ( 难度等级: [0.0035, 0.0035) || 挂载数据: 无 ) +│ │ │ │ │ ├── 部署Fission Chart --> ( 难度等级: [0.0035, 0.0035) || 挂载数据: 无 ) +│ │ │ │ │ ├── 命令行工具 --> ( 难度等级: [0.0035, 0.0035) || 挂载数据: 无 ) +│ │ │ │ │ └── Hello Fission --> ( 难度等级: [0.0035, 0.0035) || 挂载数据: blog: 2 ) +│ │ │ │ ├── 深入探讨Fission --> ( 难度等级: [0.0035, 0.0036) || 挂载数据: 无 ) +│ │ │ │ │ └── Environment --> ( 难度等级: [0.0035, 0.0036) || 挂载数据: 无 ) +│ │ │ │ ├── 执行模式 --> ( 难度等级: [0.0036, 0.0036) || 挂载数据: 无 ) +│ │ │ │ │ ├── Poolbased模式 --> ( 难度等级: [0.0036, 0.0036) || 挂载数据: 无 ) +│ │ │ │ │ └── New Deploy模式 --> ( 难度等级: [0.0036, 0.0036) || 挂载数据: 无 ) +│ │ │ │ └── Workflows --> ( 难度等级: [0.0036, 0.0037) || 挂载数据: 无 ) +│ │ │ │ ├── Workflows定义 --> ( 难度等级: [0.0036, 0.0036) || 挂载数据: 无 ) +│ │ │ │ ├── 配置Workflows --> ( 难度等级: [0.0036, 0.0037) || 挂载数据: 无 ) +│ │ │ │ └── Fortune Whale --> ( 难度等级: [0.0037, 0.0037) || 挂载数据: 无 ) +│ │ │ ├── OpenFaas --> ( 难度等级: [0.0037, 0.0039) || 挂载数据: 无 ) +│ │ │ │ ├── 初识OpenFaaS --> ( 难度等级: [0.0037, 0.0037) || 挂载数据: 无 ) +│ │ │ │ │ └── 图形界面 --> ( 难度等级: [0.0037, 0.0037) || 挂载数据: 无 ) +│ │ │ │ ├── OpenFaaS函数 --> ( 难度等级: [0.0037, 0.0037) || 挂载数据: blog: 7 ) +│ │ │ │ │ ├── 抽象方式 --> ( 难度等级: [0.0037, 0.0037) || 挂载数据: 无 ) +│ │ │ │ │ ├── 函数模板 --> ( 难度等级: [0.0037, 0.0037) || 挂载数据: 无 ) +│ │ │ │ │ ├── 构建函数 --> ( 难度等级: [0.0037, 0.0037) || 挂载数据: blog: 4 ) +│ │ │ │ │ └── 推送镜像 --> ( 难度等级: [0.0037, 0.0037) || 挂载数据: 无 ) +│ │ │ │ ├── Watchdog --> ( 难度等级: [0.0037, 0.0038) || 挂载数据: 无 ) +│ │ │ │ │ ├── 工作原理 --> ( 难度等级: [0.0037, 0.0037) || 挂载数据: 无 ) +│ │ │ │ │ ├── 配置Watchdog --> ( 难度等级: [0.0037, 0.0038) || 挂载数据: blog: 2 ) +│ │ │ │ │ └── ofwatchdog --> ( 难度等级: [0.0038, 0.0038) || 挂载数据: 无 ) +│ │ │ │ ├── 监控 --> ( 难度等级: [0.0038, 0.0038) || 挂载数据: 无 ) +│ │ │ │ │ ├── 监控指标 --> ( 难度等级: [0.0038, 0.0038) || 挂载数据: 无 ) +│ │ │ │ │ ├── 监控面板 --> ( 难度等级: [0.0038, 0.0038) || 挂载数据: 无 ) +│ │ │ │ │ └── 监控预警 --> ( 难度等级: [0.0038, 0.0038) || 挂载数据: 无 ) +│ │ │ │ ├── 弹性扩展 --> ( 难度等级: [0.0038, 0.0038) || 挂载数据: 无 ) +│ │ │ │ │ ├── 基于Alertmanager扩展 --> ( 难度等级: [0.0038, 0.0038) || 挂载数据: 无 ) +│ │ │ │ │ └── 基于HPA扩展 --> ( 难度等级: [0.0038, 0.0038) || 挂载数据: 无 ) +│ │ │ │ └── 函数应用市场 --> ( 难度等级: [0.0038, 0.0039) || 挂载数据: 无 ) +│ │ │ ├── OpenWhisk --> ( 难度等级: [0.0039, 0.004) || 挂载数据: 无 ) +│ │ │ │ ├── Hello Whisk --> ( 难度等级: [0.0039, 0.0039) || 挂载数据: 无 ) +│ │ │ │ ├── 逻辑架构 --> ( 难度等级: [0.0039, 0.0039) || 挂载数据: 无 ) +│ │ │ │ │ ├── Namespace --> ( 难度等级: [0.0039, 0.0039) || 挂载数据: 无 ) +│ │ │ │ │ ├── Package --> ( 难度等级: [0.0039, 0.0039) || 挂载数据: 无 ) +│ │ │ │ │ ├── Action --> ( 难度等级: [0.0039, 0.0039) || 挂载数据: blog: 1 ) +│ │ │ │ │ ├── Feed --> ( 难度等级: [0.0039, 0.0039) || 挂载数据: 无 ) +│ │ │ │ │ └── Rule --> ( 难度等级: [0.0039, 0.0039) || 挂载数据: 无 ) +│ │ │ │ ├── 系统架构 --> ( 难度等级: [0.0039, 0.0039) || 挂载数据: blog: 2 ) +│ │ │ │ ├── Kubernetes部署 --> ( 难度等级: [0.0039, 0.004) || 挂载数据: 无 ) +│ │ │ │ │ ├── 准备Kubernetes集群 --> ( 难度等级: [0.0039, 0.0039) || 挂载数据: 无 ) +│ │ │ │ │ ├── 集群基础设置 --> ( 难度等级: [0.0039, 0.0039) || 挂载数据: 无 ) +│ │ │ │ │ ├── 创建访问入口 --> ( 难度等级: [0.0039, 0.004) || 挂载数据: 无 ) +│ │ │ │ │ ├── 部署组件 --> ( 难度等级: [0.004, 0.004) || 挂载数据: 无 ) +│ │ │ │ │ ├── 加载系统配置 --> ( 难度等级: [0.004, 0.004) || 挂载数据: 无 ) +│ │ │ │ │ ├── 测试集群 --> ( 难度等级: [0.004, 0.004) || 挂载数据: 无 ) +│ │ │ │ │ └── 删除集群 --> ( 难度等级: [0.004, 0.004) || 挂载数据: 无 ) +│ │ │ │ ├── Helm部署 --> ( 难度等级: [0.004, 0.004) || 挂载数据: 无 ) +│ │ │ │ │ ├── 安装Helm --> ( 难度等级: [0.004, 0.004) || 挂载数据: blog: 1 ) +│ │ │ │ │ ├── 环境配置 --> ( 难度等级: [0.004, 0.004) || 挂载数据: 无 ) +│ │ │ │ │ ├── 部署Chart --> ( 难度等级: [0.004, 0.004) || 挂载数据: blog: 4 ) +│ │ │ │ │ └── 管理应用 --> ( 难度等级: [0.004, 0.004) || 挂载数据: 无 ) +│ │ │ │ └── 蛋糕管理服务 --> ( 难度等级: [0.004, 0.004) || 挂载数据: 无 ) +│ │ │ │ ├── 开发环境 --> ( 难度等级: [0.004, 0.004) || 挂载数据: 无 ) +│ │ │ │ ├── 定义Action --> ( 难度等级: [0.004, 0.004) || 挂载数据: 无 ) +│ │ │ │ ├── 创建Package --> ( 难度等级: [0.004, 0.004) || 挂载数据: 无 ) +│ │ │ │ ├── 部署Action --> ( 难度等级: [0.004, 0.004) || 挂载数据: 无 ) +│ │ │ │ └── 发布API --> ( 难度等级: [0.004, 0.004) || 挂载数据: 无 ) +│ │ │ └── Fn Project --> ( 难度等级: [0.004, 0.0042) || 挂载数据: 无 ) +│ │ ├── 踏上征途 --> ( 难度等级: [0.0042, 0.0053) || 挂载数据: 无 ) +│ │ ├── 无服务器初探 --> ( 难度等级: [0.0053, 0.0063) || 挂载数据: 无 ) +│ │ │ ├── 来龙去脉 --> ( 难度等级: [0.0053, 0.0055) || 挂载数据: 无 ) +│ │ │ │ ├── 面向服务的架构与微服务 --> ( 难度等级: [0.0053, 0.0054) || 挂载数据: 无 ) +│ │ │ │ │ ├── 从SOA到微服务 --> ( 难度等级: [0.0053, 0.0053) || 挂载数据: 无 ) +│ │ │ │ │ └── 微服务的价值与挑战 --> ( 难度等级: [0.0053, 0.0054) || 挂载数据: 无 ) +│ │ │ │ └── 软件设计 --> ( 难度等级: [0.0054, 0.0055) || 挂载数据: 无 ) +│ │ │ ├── 无服务器架构原则 --> ( 难度等级: [0.0055, 0.0058) || 挂载数据: 无 ) +│ │ │ │ ├── 根据需要使用计算服务执行代码 --> ( 难度等级: [0.0055, 0.0056) || 挂载数据: 无 ) +│ │ │ │ ├── 编写单一用途的无状态函数 --> ( 难度等级: [0.0056, 0.0056) || 挂载数据: 无 ) +│ │ │ │ ├── 设计基于推送的、事件驱动的管道 --> ( 难度等级: [0.0056, 0.0057) || 挂载数据: 无 ) +│ │ │ │ ├── 创建更厚、更强大的前端 --> ( 难度等级: [0.0057, 0.0057) || 挂载数据: 无 ) +│ │ │ │ └── 拥抱第三方服务 --> ( 难度等级: [0.0057, 0.0058) || 挂载数据: 无 ) +│ │ │ ├── 从服务器过渡到服务 --> ( 难度等级: [0.0058, 0.006) || 挂载数据: 无 ) +│ │ │ └── 无服务器的利与弊 --> ( 难度等级: [0.006, 0.0063) || 挂载数据: 无 ) +│ │ │ ├── 决策驱动因素 --> ( 难度等级: [0.006, 0.0062) || 挂载数据: 无 ) +│ │ │ └── 什么时候使用无服务器 --> ( 难度等级: [0.0062, 0.0063) || 挂载数据: blog: 10 ) +│ │ ├── .架构与模式 --> ( 难度等级: [0.0063, 0.0074) || 挂载数据: 无 ) +│ │ │ ├── 使用场景 --> ( 难度等级: [0.0063, 0.0067) || 挂载数据: 无 ) +│ │ │ │ ├── 应用程序后端 --> ( 难度等级: [0.0063, 0.0064) || 挂载数据: 无 ) +│ │ │ │ ├── 数据处理与操作 --> ( 难度等级: [0.0064, 0.0064) || 挂载数据: 无 ) +│ │ │ │ ├── 实时分析 --> ( 难度等级: [0.0064, 0.0065) || 挂载数据: 无 ) +│ │ │ │ ├── 遗留API代理 --> ( 难度等级: [0.0065, 0.0065) || 挂载数据: 无 ) +│ │ │ │ ├── 计划服务 --> ( 难度等级: [0.0065, 0.0066) || 挂载数据: 无 ) +│ │ │ │ └── 机器人(Bot)和技能(Skill) . --> ( 难度等级: [0.0066, 0.0067) || 挂载数据: 无 ) +│ │ │ ├── 架构 --> ( 难度等级: [0.0067, 0.007) || 挂载数据: 无 ) +│ │ │ │ ├── 计算即后端 --> ( 难度等级: [0.0067, 0.0067) || 挂载数据: 无 ) +│ │ │ │ ├── 遗留API代理 --> ( 难度等级: [0.0067, 0.0068) || 挂载数据: 无 ) +│ │ │ │ ├── 混合 --> ( 难度等级: [0.0068, 0.0068) || 挂载数据: 无 ) +│ │ │ │ ├── GraphQL . --> ( 难度等级: [0.0068, 0.0069) || 挂载数据: 无 ) +│ │ │ │ ├── 计算即胶水 --> ( 难度等级: [0.0069, 0.0069) || 挂载数据: 无 ) +│ │ │ │ └── 实时处理 --> ( 难度等级: [0.0069, 0.007) || 挂载数据: 无 ) +│ │ │ └── 模式 --> ( 难度等级: [0.007, 0.0074) || 挂载数据: 无 ) +│ │ │ ├── 命令模式 --> ( 难度等级: [0.007, 0.0071) || 挂载数据: 无 ) +│ │ │ ├── 消息传输模式 --> ( 难度等级: [0.0071, 0.0071) || 挂载数据: blog: 1 ) +│ │ │ ├── 优先级队列模式 --> ( 难度等级: [0.0071, 0.0072) || 挂载数据: 无 ) +│ │ │ ├── 扇出模式 --> ( 难度等级: [0.0072, 0.0073) || 挂载数据: 无 ) +│ │ │ └── 管道和过滤器模式 --> ( 难度等级: [0.0073, 0.0074) || 挂载数据: 无 ) +│ │ ├── 建立无服务器应用程序 --> ( 难度等级: [0.0074, 0.0084) || 挂载数据: 无 ) +│ │ │ ├── 小时视频 --> ( 难度等级: [0.0074, 0.0076) || 挂载数据: 无 ) +│ │ │ │ ├── 总体需求 --> ( 难度等级: [0.0074, 0.0074) || 挂载数据: 无 ) +│ │ │ │ ├── Amazon Web Services(AWS) --> ( 难度等级: [0.0074, 0.0074) || 挂载数据: 无 ) +│ │ │ │ ├── 创建第一个Lambda函数 --> ( 难度等级: [0.0074, 0.0074) || 挂载数据: 无 ) +│ │ │ │ ├── 命名你的Lambda --> ( 难度等级: [0.0074, 0.0074) || 挂载数据: 无 ) +│ │ │ │ ├── 本地测试 --> ( 难度等级: [0.0074, 0.0075) || 挂载数据: 无 ) +│ │ │ │ ├── 部署到AWS --> ( 难度等级: [0.0075, 0.0075) || 挂载数据: 无 ) +│ │ │ │ ├── 连接S3 和Lambda --> ( 难度等级: [0.0075, 0.0075) || 挂载数据: 无 ) +│ │ │ │ ├── 在AWS中测试 --> ( 难度等级: [0.0075, 0.0075) || 挂载数据: 无 ) +│ │ │ │ └── 观察日志 --> ( 难度等级: [0.0075, 0.0076) || 挂载数据: 无 ) +│ │ │ ├── 配置Simple Notification Service --> ( 难度等级: [0.0076, 0.0078) || 挂载数据: blog: 3 ) +│ │ │ │ ├── 连接SNS和S --> ( 难度等级: [0.0076, 0.0076) || 挂载数据: 无 ) +│ │ │ │ ├── 从SNS接收电子邮件 --> ( 难度等级: [0.0076, 0.0077) || 挂载数据: 无 ) +│ │ │ │ └── 测试SNS --> ( 难度等级: [0.0077, 0.0078) || 挂载数据: 无 ) +│ │ │ ├── 设置视频权限 --> ( 难度等级: [0.0078, 0.008) || 挂载数据: 无 ) +│ │ │ │ ├── 创建第二个函数 --> ( 难度等级: [0.0078, 0.0078) || 挂载数据: 无 ) +│ │ │ │ ├── 配置与安全 --> ( 难度等级: [0.0078, 0.0079) || 挂载数据: 无 ) +│ │ │ │ └── 测试第二个函数 --> ( 难度等级: [0.0079, 0.008) || 挂载数据: 无 ) +│ │ │ ├── 生成元数据 --> ( 难度等级: [0.008, 0.0082) || 挂载数据: 无 ) +│ │ │ └── 收尾 --> ( 难度等级: [0.0082, 0.0084) || 挂载数据: 无 ) +│ │ ├── 设置你的云服务 --> ( 难度等级: [0.0084, 0.0095) || 挂载数据: 无 ) +│ │ │ └── 安全模型和身份管理 --> ( 难度等级: [0.0084, 0.0095) || 挂载数据: 无 ) +│ │ │ └── 创建和管理IAM用户 --> ( 难度等级: [0.0084, 0.0095) || 挂载数据: 无 ) +│ │ ├── 深入核心 --> ( 难度等级: [0.0095, 0.0105) || 挂载数据: 无 ) +│ │ ├── 身份认证和授权 --> ( 难度等级: [0.0105, 0.0116) || 挂载数据: 无 ) +│ │ │ ├── 无服务器环境中的身份认证 --> ( 难度等级: [0.0105, 0.0108) || 挂载数据: 无 ) +│ │ │ │ ├── 无服务器方法 --> ( 难度等级: [0.0105, 0.0106) || 挂载数据: 无 ) +│ │ │ │ ├── Amazon Cognito --> ( 难度等级: [0.0106, 0.0107) || 挂载数据: blog: 1 ) +│ │ │ │ └── Auth0 --> ( 难度等级: [0.0107, 0.0108) || 挂载数据: 无 ) +│ │ │ ├── 为 24 小时视频增加身份认证 --> ( 难度等级: [0.0108, 0.011) || 挂载数据: 无 ) +│ │ │ │ ├── 计划 --> ( 难度等级: [0.0108, 0.0108) || 挂载数据: 无 ) +│ │ │ │ ├── 直接调用Lambda --> ( 难度等级: [0.0108, 0.0109) || 挂载数据: 无 ) +│ │ │ │ ├── 小时视频网站 --> ( 难度等级: [0.0109, 0.0109) || 挂载数据: 无 ) +│ │ │ │ ├── Auth0 配置 --> ( 难度等级: [0.0109, 0.0109) || 挂载数据: 无 ) +│ │ │ │ ├── 在网站中加入Auth0 --> ( 难度等级: [0.0109, 0.011) || 挂载数据: 无 ) +│ │ │ │ └── 测试Auth0 的集成 --> ( 难度等级: [0.011, 0.011) || 挂载数据: 无 ) +│ │ │ ├── 与AWS集成 --> ( 难度等级: [0.011, 0.0113) || 挂载数据: 无 ) +│ │ │ │ ├── 用户信息Lambda --> ( 难度等级: [0.011, 0.0111) || 挂载数据: 无 ) +│ │ │ │ ├── API Gateway --> ( 难度等级: [0.0111, 0.0111) || 挂载数据: 无 ) +│ │ │ │ │ ├── 作为接口的API Gateway --> ( 难度等级: [0.0111, 0.0111) || 挂载数据: blog: 10 ) +│ │ │ │ │ │ ├── 和AWS服务集成 --> ( 难度等级: [0.0111, 0.0111) || 挂载数据: blog: 10 ) +│ │ │ │ │ │ └── 脚本 --> ( 难度等级: [0.0111, 0.0111) || 挂载数据: 无 ) +│ │ │ │ │ ├── 创建资源和方法 --> ( 难度等级: [0.0111, 0.0111) || 挂载数据: 无 ) +│ │ │ │ │ ├── 配置方法执行 --> ( 难度等级: [0.0111, 0.0111) || 挂载数据: 无 ) +│ │ │ │ │ ├── 更新网站 --> ( 难度等级: [0.0111, 0.0111) || 挂载数据: 无 ) +│ │ │ │ │ └── 优化网关 --> ( 难度等级: [0.0111, 0.0111) || 挂载数据: 无 ) +│ │ │ │ │ ├── 限制 --> ( 难度等级: [0.0111, 0.0111) || 挂载数据: 无 ) +│ │ │ │ │ └── 缓存 --> ( 难度等级: [0.0111, 0.0111) || 挂载数据: 无 ) +│ │ │ │ ├── 映射 --> ( 难度等级: [0.0111, 0.0112) || 挂载数据: 无 ) +│ │ │ │ ├── 通过API Gateway调用Lambda --> ( 难度等级: [0.0112, 0.0112) || 挂载数据: 无 ) +│ │ │ │ └── 自定义授权方 --> ( 难度等级: [0.0112, 0.0113) || 挂载数据: 无 ) +│ │ │ └── 委托令牌 --> ( 难度等级: [0.0113, 0.0116) || 挂载数据: 无 ) +│ │ │ ├── 真实案例 --> ( 难度等级: [0.0113, 0.0114) || 挂载数据: 无 ) +│ │ │ └── 开通委托令牌 --> ( 难度等级: [0.0114, 0.0116) || 挂载数据: 无 ) +│ │ ├── 编排者Lambda --> ( 难度等级: [0.0116, 0.0126) || 挂载数据: 无 ) +│ │ │ ├── Lambda内幕 --> ( 难度等级: [0.0116, 0.0117) || 挂载数据: 无 ) +│ │ │ │ ├── 事件模型和源 --> ( 难度等级: [0.0116, 0.0116) || 挂载数据: 无 ) +│ │ │ │ ├── 推送和拉取事件模型 --> ( 难度等级: [0.0116, 0.0116) || 挂载数据: 无 ) +│ │ │ │ ├── 并发执行 --> ( 难度等级: [0.0116, 0.0117) || 挂载数据: 无 ) +│ │ │ │ ├── 容器重用 --> ( 难度等级: [0.0117, 0.0117) || 挂载数据: 无 ) +│ │ │ │ └── 冷Lambda和暖Lambda --> ( 难度等级: [0.0117, 0.0117) || 挂载数据: blog: 2 ) +│ │ │ ├── 编程模型 --> ( 难度等级: [0.0117, 0.0119) || 挂载数据: 无 ) +│ │ │ │ ├── 函数处理程序 --> ( 难度等级: [0.0117, 0.0117) || 挂载数据: 无 ) +│ │ │ │ ├── 事件对象 --> ( 难度等级: [0.0117, 0.0118) || 挂载数据: 无 ) +│ │ │ │ ├── 上下文对象 --> ( 难度等级: [0.0118, 0.0118) || 挂载数据: 无 ) +│ │ │ │ ├── 回调函数 --> ( 难度等级: [0.0118, 0.0118) || 挂载数据: 无 ) +│ │ │ │ ├── 日志 --> ( 难度等级: [0.0118, 0.0118) || 挂载数据: 无 ) +│ │ │ │ ├── 代码开发 --> ( 难度等级: [0.0118, 0.0118) || 挂载数据: 无 ) +│ │ │ │ ├── Handler --> ( 难度等级: [0.0118, 0.0118) || 挂载数据: blog: 2 ) +│ │ │ │ ├── 执行上下文 --> ( 难度等级: [0.0118, 0.0119) || 挂载数据: 无 ) +│ │ │ │ ├── 日志输出 --> ( 难度等级: [0.0119, 0.0119) || 挂载数据: 无 ) +│ │ │ │ ├── 异常处理 --> ( 难度等级: [0.0119, 0.0119) || 挂载数据: 无 ) +│ │ │ │ └── 无状态 --> ( 难度等级: [0.0119, 0.0119) || 挂载数据: 无 ) +│ │ │ ├── 版本管理、别名和环境变量 --> ( 难度等级: [0.0119, 0.0121) || 挂载数据: 无 ) +│ │ │ │ ├── 版本管理 --> ( 难度等级: [0.0119, 0.012) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 别名 --> ( 难度等级: [0.012, 0.012) || 挂载数据: 无 ) +│ │ │ │ └── 环境变量 --> ( 难度等级: [0.012, 0.0121) || 挂载数据: 无 ) +│ │ │ ├── 使用命令行界面(CLI) --> ( 难度等级: [0.0121, 0.0123) || 挂载数据: 无 ) +│ │ │ │ └── 调用命令 --> ( 难度等级: [0.0121, 0.0123) || 挂载数据: 无 ) +│ │ │ ├── Lambda模式 --> ( 难度等级: [0.0123, 0.0124) || 挂载数据: 无 ) +│ │ │ │ ├── 异步瀑布 --> ( 难度等级: [0.0123, 0.0123) || 挂载数据: 无 ) +│ │ │ │ ├── 序列与并行 --> ( 难度等级: [0.0123, 0.0123) || 挂载数据: 无 ) +│ │ │ │ ├── 使用库 --> ( 难度等级: [0.0123, 0.0124) || 挂载数据: 无 ) +│ │ │ │ └── 把逻辑移到另一个文件中 --> ( 难度等级: [0.0124, 0.0124) || 挂载数据: 无 ) +│ │ │ └── 测试Lambda函数 . --> ( 难度等级: [0.0124, 0.0126) || 挂载数据: 无 ) +│ │ │ ├── 在本地测试 --> ( 难度等级: [0.0124, 0.0125) || 挂载数据: 无 ) +│ │ │ └── 编写测试 --> ( 难度等级: [0.0125, 0.0126) || 挂载数据: 无 ) +│ │ ├── 拓展架构 --> ( 难度等级: [0.0126, 0.0137) || 挂载数据: 无 ) +│ │ ├── 存储 . --> ( 难度等级: [0.0137, 0.0147) || 挂载数据: 无 ) +│ │ │ ├── 更智能的存储 --> ( 难度等级: [0.0137, 0.014) || 挂载数据: 无 ) +│ │ │ │ ├── 版本控制 --> ( 难度等级: [0.0137, 0.0137) || 挂载数据: 无 ) +│ │ │ │ ├── 托管静态网站 --> ( 难度等级: [0.0137, 0.0138) || 挂载数据: 无 ) +│ │ │ │ ├── 存储类别 --> ( 难度等级: [0.0138, 0.0138) || 挂载数据: blog: 6 ) +│ │ │ │ ├── 对象生命周期管理 --> ( 难度等级: [0.0138, 0.0139) || 挂载数据: 无 ) +│ │ │ │ ├── 转移加速 --> ( 难度等级: [0.0139, 0.0139) || 挂载数据: 无 ) +│ │ │ │ └── 事件通知 --> ( 难度等级: [0.0139, 0.014) || 挂载数据: 无 ) +│ │ │ ├── 安全上传 --> ( 难度等级: [0.014, 0.0144) || 挂载数据: 无 ) +│ │ │ │ ├── 上传策略Lambda --> ( 难度等级: [0.014, 0.0141) || 挂载数据: 无 ) +│ │ │ │ ├── S3 CORS配置 --> ( 难度等级: [0.0141, 0.0142) || 挂载数据: blog: 1 ) +│ │ │ │ └── 在网站中上传 --> ( 难度等级: [0.0142, 0.0144) || 挂载数据: blog: 1 ) +│ │ │ └── 限制对文件的访问 --> ( 难度等级: [0.0144, 0.0147) || 挂载数据: 无 ) +│ │ │ ├── 禁止公开访问 --> ( 难度等级: [0.0144, 0.0144) || 挂载数据: 无 ) +│ │ │ ├── 生成预签名URL --> ( 难度等级: [0.0144, 0.0145) || 挂载数据: blog: 1 ) +│ │ │ ├── 签名URL Lambda --> ( 难度等级: [0.0145, 0.0145) || 挂载数据: blog: 1 ) +│ │ │ ├── API Gateway设置 --> ( 难度等级: [0.0145, 0.0146) || 挂载数据: 无 ) +│ │ │ ├── 提升性能 --> ( 难度等级: [0.0146, 0.0146) || 挂载数据: 无 ) +│ │ │ └── 提升Firebase安全性 --> ( 难度等级: [0.0146, 0.0147) || 挂载数据: 无 ) +│ │ ├── 数据库 --> ( 难度等级: [0.0147, 0.0158) || 挂载数据: 无 ) +│ │ │ ├── Firebase简介 --> ( 难度等级: [0.0147, 0.0152) || 挂载数据: 无 ) +│ │ │ │ ├── 数据结构 --> ( 难度等级: [0.0147, 0.015) || 挂载数据: 无 ) +│ │ │ │ └── 安全规则 --> ( 难度等级: [0.015, 0.0152) || 挂载数据: 无 ) +│ │ │ └── 为 24 小时视频添加Firebase --> ( 难度等级: [0.0152, 0.0158) || 挂载数据: 无 ) +│ │ │ ├── 设置Firebase --> ( 难度等级: [0.0152, 0.0153) || 挂载数据: 无 ) +│ │ │ ├── 修改转码视频Lambda --> ( 难度等级: [0.0153, 0.0154) || 挂载数据: 无 ) +│ │ │ ├── Transcode Video Firebase Update函数 --> ( 难度等级: [0.0154, 0.0155) || 挂载数据: 无 ) +│ │ │ ├── 连接Lambda --> ( 难度等级: [0.0155, 0.0156) || 挂载数据: 无 ) +│ │ │ ├── 网站 --> ( 难度等级: [0.0156, 0.0157) || 挂载数据: blog: 1 ) +│ │ │ └── 端到端测试 --> ( 难度等级: [0.0157, 0.0158) || 挂载数据: 无 ) +│ │ ├── 最后一英里 . --> ( 难度等级: [0.0158, 0.0168) || 挂载数据: 无 ) +│ │ │ ├── 部署与框架 --> ( 难度等级: [0.0158, 0.016) || 挂载数据: 无 ) +│ │ │ ├── 迈向更好的微服务 --> ( 难度等级: [0.016, 0.0162) || 挂载数据: 无 ) +│ │ │ ├── Step Functions --> ( 难度等级: [0.0162, 0.0164) || 挂载数据: 无 ) +│ │ │ ├── AWS Marketplace --> ( 难度等级: [0.0164, 0.0166) || 挂载数据: 无 ) +│ │ │ └── 未来之路 --> ( 难度等级: [0.0166, 0.0168) || 挂载数据: 无 ) +│ │ ├── Serverless基础 --> ( 难度等级: [0.0168, 0.0179) || 挂载数据: 无 ) +│ │ │ ├── 什么是Serverless --> ( 难度等级: [0.0168, 0.017) || 挂载数据: 无 ) +│ │ │ │ ├── Serverless技术的发展 --> ( 难度等级: [0.0168, 0.0168) || 挂载数据: blog: 9 ) +│ │ │ │ ├── Serverless框架和工具 --> ( 难度等级: [0.0168, 0.0168) || 挂载数据: blog: 6 ) +│ │ │ │ │ ├── Chalice --> ( 难度等级: [0.0168, 0.0168) || 挂载数据: 无 ) +│ │ │ │ │ ├── Claudia.js --> ( 难度等级: [0.0168, 0.0168) || 挂载数据: blog: 10 ) +│ │ │ │ │ ├── Apex --> ( 难度等级: [0.0168, 0.0168) || 挂载数据: 无 ) +│ │ │ │ │ ├── Spring Cloud Function --> ( 难度等级: [0.0168, 0.0168) || 挂载数据: blog: 10 ) +│ │ │ │ │ └── AWS SAM --> ( 难度等级: [0.0168, 0.0168) || 挂载数据: blog: 10 ) +│ │ │ │ ├── Serverless后台服务 --> ( 难度等级: [0.0168, 0.0169) || 挂载数据: blog: 10 ) +│ │ │ │ ├── 获取AWS账号 --> ( 难度等级: [0.0169, 0.0169) || 挂载数据: 无 ) +│ │ │ │ ├── AWS Lambda控制面板 --> ( 难度等级: [0.0169, 0.0169) || 挂载数据: blog: 2 ) +│ │ │ │ ├── 编辑函数 --> ( 难度等级: [0.0169, 0.0169) || 挂载数据: 无 ) +│ │ │ │ ├── 测试函数 --> ( 难度等级: [0.0169, 0.0169) || 挂载数据: 无 ) +│ │ │ │ ├── 外部访问 --> ( 难度等级: [0.0169, 0.0169) || 挂载数据: 无 ) +│ │ │ │ ├── 运维监控 --> ( 难度等级: [0.0169, 0.0169) || 挂载数据: 无 ) +│ │ │ │ └── 回顾 --> ( 难度等级: [0.0169, 0.017) || 挂载数据: blog: 1 ) +│ │ │ ├── Serverless带来的价值 --> ( 难度等级: [0.017, 0.0171) || 挂载数据: 无 ) +│ │ │ ├── Serverless的技术实现 --> ( 难度等级: [0.0171, 0.0173) || 挂载数据: 无 ) +│ │ │ │ ├── 理念与实现 --> ( 难度等级: [0.0171, 0.0172) || 挂载数据: 无 ) +│ │ │ │ └── FaaS与BaaS --> ( 难度等级: [0.0172, 0.0173) || 挂载数据: 无 ) +│ │ │ │ ├── FaaS的架构 --> ( 难度等级: [0.0172, 0.0172) || 挂载数据: blog: 10 ) +│ │ │ │ ├── 函数的生命周期 --> ( 难度等级: [0.0172, 0.0172) || 挂载数据: 无 ) +│ │ │ │ ├── 函数工作流 --> ( 难度等级: [0.0172, 0.0172) || 挂载数据: blog: 1 ) +│ │ │ │ ├── BaaS的价值 --> ( 难度等级: [0.0172, 0.0172) || 挂载数据: blog: 2 ) +│ │ │ │ └── 广义的Serverless --> ( 难度等级: [0.0172, 0.0173) || 挂载数据: 无 ) +│ │ │ ├── Serverless应用架构 --> ( 难度等级: [0.0173, 0.0174) || 挂载数据: 无 ) +│ │ │ │ ├── 传统应用架构 --> ( 难度等级: [0.0173, 0.0173) || 挂载数据: 无 ) +│ │ │ │ └── Serverless应用架构 --> ( 难度等级: [0.0173, 0.0174) || 挂载数据: blog: 10 ) +│ │ │ ├── Serverless的技术特点 --> ( 难度等级: [0.0174, 0.0176) || 挂载数据: 无 ) +│ │ │ ├── Serverless的应用场景 --> ( 难度等级: [0.0176, 0.0177) || 挂载数据: 无 ) +│ │ │ └── Serverless的局限 --> ( 难度等级: [0.0177, 0.0179) || 挂载数据: 无 ) +│ │ ├── AWS Lambda --> ( 难度等级: [0.0179, 0.0189) || 挂载数据: 无 ) +│ │ │ ├── AWS Serverless --> ( 难度等级: [0.0179, 0.018) || 挂载数据: blog: 10 ) +│ │ │ ├── AWS Lambda概述 --> ( 难度等级: [0.018, 0.0182) || 挂载数据: blog: 10 ) +│ │ │ ├── 权限控制 --> ( 难度等级: [0.0182, 0.0183) || 挂载数据: 无 ) +│ │ │ │ ├── IAM --> ( 难度等级: [0.0182, 0.0182) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 策略 --> ( 难度等级: [0.0182, 0.0183) || 挂载数据: 无 ) +│ │ │ │ └── 角色 --> ( 难度等级: [0.0183, 0.0183) || 挂载数据: 无 ) +│ │ │ ├── 事件驱动 --> ( 难度等级: [0.0183, 0.0185) || 挂载数据: 无 ) +│ │ │ │ ├── 事件源 --> ( 难度等级: [0.0183, 0.0184) || 挂载数据: 无 ) +│ │ │ │ └── 触发模式 --> ( 难度等级: [0.0184, 0.0185) || 挂载数据: 无 ) +│ │ │ ├── 日志监控 --> ( 难度等级: [0.0185, 0.0186) || 挂载数据: 无 ) +│ │ │ ├── 开发辅助 --> ( 难度等级: [0.0186, 0.0188) || 挂载数据: 无 ) +│ │ │ │ └── 标签 --> ( 难度等级: [0.0186, 0.0188) || 挂载数据: 无 ) +│ │ │ └── 运行限制 --> ( 难度等级: [0.0188, 0.0189) || 挂载数据: 无 ) +│ │ │ ├── 资源限制 --> ( 难度等级: [0.0188, 0.0188) || 挂载数据: 无 ) +│ │ │ └── 并发控制 --> ( 难度等级: [0.0188, 0.0189) || 挂载数据: 无 ) +│ │ ├── Azure Functions --> ( 难度等级: [0.0189, 0.02) || 挂载数据: 无 ) +│ │ │ ├── Microsoft Azure --> ( 难度等级: [0.0189, 0.0191) || 挂载数据: blog: 1 ) +│ │ │ ├── Azure Functions概述 --> ( 难度等级: [0.0191, 0.0193) || 挂载数据: 无 ) +│ │ │ ├── 创建Azure Serverless应用 --> ( 难度等级: [0.0193, 0.0194) || 挂载数据: 无 ) +│ │ │ │ ├── 注册Azure账号 --> ( 难度等级: [0.0193, 0.0193) || 挂载数据: 无 ) +│ │ │ │ ├── Azure控制台 --> ( 难度等级: [0.0193, 0.0194) || 挂载数据: blog: 10 ) +│ │ │ │ └── 调用函数 --> ( 难度等级: [0.0194, 0.0194) || 挂载数据: 无 ) +│ │ │ ├── Azure Functions命令行 --> ( 难度等级: [0.0194, 0.0196) || 挂载数据: 无 ) +│ │ │ │ ├── 安装命令行 --> ( 难度等级: [0.0194, 0.0195) || 挂载数据: blog: 1 ) +│ │ │ │ └── 发布至公有云 --> ( 难度等级: [0.0195, 0.0196) || 挂载数据: 无 ) +│ │ │ ├── 深入了解Azure Functions --> ( 难度等级: [0.0196, 0.0198) || 挂载数据: 无 ) +│ │ │ │ ├── 函数应用设置 --> ( 难度等级: [0.0196, 0.0197) || 挂载数据: 无 ) +│ │ │ │ ├── Trigger与Bindings --> ( 难度等级: [0.0197, 0.0197) || 挂载数据: 无 ) +│ │ │ │ │ ├── HTTP Trigger --> ( 难度等级: [0.0197, 0.0197) || 挂载数据: 无 ) +│ │ │ │ │ ├── Cronjob Trigger --> ( 难度等级: [0.0197, 0.0197) || 挂载数据: 无 ) +│ │ │ │ │ ├── Kafka Trigger --> ( 难度等级: [0.0197, 0.0197) || 挂载数据: 无 ) +│ │ │ │ │ └── NATS Trigger --> ( 难度等级: [0.0197, 0.0197) || 挂载数据: 无 ) +│ │ │ │ ├── 函数代理 --> ( 难度等级: [0.0197, 0.0197) || 挂载数据: 无 ) +│ │ │ │ └── Slot --> ( 难度等级: [0.0197, 0.0198) || 挂载数据: 无 ) +│ │ │ └── 私有云部署 --> ( 难度等级: [0.0198, 0.02) || 挂载数据: 无 ) +│ │ ├── 容器技术基础 --> ( 难度等级: [0.02, 0.021) || 挂载数据: 无 ) +│ │ │ ├── 什么是容器 --> ( 难度等级: [0.02, 0.0202) || 挂载数据: 无 ) +│ │ │ │ ├── 容器 --> ( 难度等级: [0.02, 0.02) || 挂载数据: blog: 10 ) +│ │ │ │ ├── 容器镜像 --> ( 难度等级: [0.02, 0.0201) || 挂载数据: blog: 5 ) +│ │ │ │ ├── 镜像仓库 --> ( 难度等级: [0.0201, 0.0202) || 挂载数据: 无 ) +│ │ │ │ └── 容器编排 --> ( 难度等级: [0.0202, 0.0202) || 挂载数据: 无 ) +│ │ │ ├── Docker --> ( 难度等级: [0.0202, 0.0205) || 挂载数据: 无 ) +│ │ │ │ ├── Vagrant --> ( 难度等级: [0.0202, 0.0203) || 挂载数据: blog: 1 ) +│ │ │ │ ├── VirtualBox --> ( 难度等级: [0.0203, 0.0203) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 安装Docker --> ( 难度等级: [0.0203, 0.0204) || 挂载数据: 无 ) +│ │ │ │ ├── 运行容器 --> ( 难度等级: [0.0204, 0.0204) || 挂载数据: 无 ) +│ │ │ │ ├── 构建容器镜像 --> ( 难度等级: [0.0204, 0.0204) || 挂载数据: 无 ) +│ │ │ │ └── 分享镜像 --> ( 难度等级: [0.0204, 0.0205) || 挂载数据: 无 ) +│ │ │ ├── Kubernetes基础 --> ( 难度等级: [0.0205, 0.0207) || 挂载数据: 无 ) +│ │ │ │ ├── 命名空间 --> ( 难度等级: [0.0205, 0.0205) || 挂载数据: 无 ) +│ │ │ │ ├── Pod --> ( 难度等级: [0.0205, 0.0205) || 挂载数据: 无 ) +│ │ │ │ ├── Service --> ( 难度等级: [0.0205, 0.0206) || 挂载数据: 无 ) +│ │ │ │ ├── Deployment --> ( 难度等级: [0.0206, 0.0206) || 挂载数据: 无 ) +│ │ │ │ ├── ReplicaSet --> ( 难度等级: [0.0206, 0.0206) || 挂载数据: 无 ) +│ │ │ │ ├── 网络 --> ( 难度等级: [0.0206, 0.0207) || 挂载数据: 无 ) +│ │ │ │ ├── Ingress --> ( 难度等级: [0.0207, 0.0207) || 挂载数据: 无 ) +│ │ │ │ └── 交互工具 --> ( 难度等级: [0.0207, 0.0207) || 挂载数据: 无 ) +│ │ │ └── 构建Kubernetes环境 --> ( 难度等级: [0.0207, 0.021) || 挂载数据: 无 ) +│ │ │ ├── 启动Vagrant Box --> ( 难度等级: [0.0207, 0.0209) || 挂载数据: 无 ) +│ │ │ └── 修改默认域 --> ( 难度等级: [0.0209, 0.021) || 挂载数据: 无 ) +│ │ ├── Serverless的落地与展望 --> ( 难度等级: [0.021, 0.0221) || 挂载数据: 无 ) +│ │ │ ├── Serverless的落地 --> ( 难度等级: [0.021, 0.0213) || 挂载数据: 无 ) +│ │ │ ├── Serverless平台建设 --> ( 难度等级: [0.0213, 0.0215) || 挂载数据: 无 ) +│ │ │ │ ├── 公有云 --> ( 难度等级: [0.0213, 0.0214) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 私有云 --> ( 难度等级: [0.0214, 0.0214) || 挂载数据: blog: 1 ) +│ │ │ │ └── 混合云 --> ( 难度等级: [0.0214, 0.0215) || 挂载数据: 无 ) +│ │ │ ├── Serverless应用架构转型 --> ( 难度等级: [0.0215, 0.0218) || 挂载数据: 无 ) +│ │ │ │ ├── 开发模式 --> ( 难度等级: [0.0215, 0.0216) || 挂载数据: 无 ) +│ │ │ │ ├── 设计原则 --> ( 难度等级: [0.0216, 0.0217) || 挂载数据: 无 ) +│ │ │ │ └── 迁移与重构 --> ( 难度等级: [0.0217, 0.0218) || 挂载数据: 无 ) +│ │ │ └── Serverless的未来 --> ( 难度等级: [0.0218, 0.0221) || 挂载数据: 无 ) +│ │ │ ├── 建立行业规范 --> ( 难度等级: [0.0218, 0.0219) || 挂载数据: 无 ) +│ │ │ └── 完善工具链 --> ( 难度等级: [0.0219, 0.0221) || 挂载数据: 无 ) +│ │ ├── 初识Serverless --> ( 难度等级: [0.0221, 0.0231) || 挂载数据: 无 ) +│ │ │ ├── 优势与劣势 --> ( 难度等级: [0.0221, 0.0224) || 挂载数据: 无 ) +│ │ │ ├── 影响力和价值 --> ( 难度等级: [0.0224, 0.0228) || 挂载数据: 无 ) +│ │ │ └── 典型应用场景 --> ( 难度等级: [0.0228, 0.0231) || 挂载数据: 无 ) +│ │ │ ├── 视频转码服务 --> ( 难度等级: [0.0228, 0.0228) || 挂载数据: 无 ) +│ │ │ ├── 数据ETL处理服务 --> ( 难度等级: [0.0228, 0.0229) || 挂载数据: 无 ) +│ │ │ ├── 网站(服务)后端 --> ( 难度等级: [0.0229, 0.023) || 挂载数据: 无 ) +│ │ │ ├── 人工智能推理预测 --> ( 难度等级: [0.023, 0.023) || 挂载数据: 无 ) +│ │ │ └── 物联网相关应用 --> ( 难度等级: [0.023, 0.0231) || 挂载数据: 无 ) +│ │ ├── Serverless入门 --> ( 难度等级: [0.0231, 0.0242) || 挂载数据: 无 ) +│ │ │ ├── Serverless架构规范 --> ( 难度等级: [0.0231, 0.0234) || 挂载数据: 无 ) +│ │ │ │ ├── 函数相关规范 --> ( 难度等级: [0.0231, 0.0232) || 挂载数据: 无 ) +│ │ │ │ ├── 函数生命周期 --> ( 难度等级: [0.0232, 0.0233) || 挂载数据: 无 ) +│ │ │ │ └── 工作流程 --> ( 难度等级: [0.0233, 0.0234) || 挂载数据: 无 ) +│ │ │ ├── 事件与规范 --> ( 难度等级: [0.0234, 0.0236) || 挂载数据: 无 ) +│ │ │ │ ├── 相关术语 --> ( 难度等级: [0.0234, 0.0235) || 挂载数据: 无 ) +│ │ │ │ └── 上下文属性 --> ( 难度等级: [0.0235, 0.0236) || 挂载数据: 无 ) +│ │ │ ├── 工业化产品 --> ( 难度等级: [0.0236, 0.0239) || 挂载数据: 无 ) +│ │ │ │ ├── Google Cloud Function --> ( 难度等级: [0.0236, 0.0238) || 挂载数据: blog: 10 ) +│ │ │ │ └── 腾讯云SCF --> ( 难度等级: [0.0238, 0.0239) || 挂载数据: blog: 3 ) +│ │ │ └── 开发运维工具 --> ( 难度等级: [0.0239, 0.0242) || 挂载数据: 无 ) +│ │ │ ├── CLI命令行工具 --> ( 难度等级: [0.0239, 0.024) || 挂载数据: blog: 1 ) +│ │ │ └── 插件 --> ( 难度等级: [0.024, 0.0242) || 挂载数据: 无 ) +│ │ ├── Web与监控告警场景实践 --> ( 难度等级: [0.0242, 0.0252) || 挂载数据: 无 ) +│ │ │ └── Web后端与应用服务端 --> ( 难度等级: [0.0242, 0.0252) || 挂载数据: 无 ) +│ │ │ ├── 上传图片加水印 --> ( 难度等级: [0.0242, 0.0245) || 挂载数据: 无 ) +│ │ │ ├── 用IP地址查天气并在小程序中应用 --> ( 难度等级: [0.0245, 0.0249) || 挂载数据: 无 ) +│ │ │ └── 简易用户反馈功能与快应用实践 --> ( 难度等级: [0.0249, 0.0252) || 挂载数据: 无 ) +│ │ ├── 大数据与人工智能场景实践 --> ( 难度等级: [0.0252, 0.0263) || 挂载数据: 无 ) +│ │ │ ├── 大数据技术之MapReduce的简单实现 --> ( 难度等级: [0.0252, 0.0257) || 挂载数据: blog: 5 ) +│ │ │ └── 人工智能领域的实践 --> ( 难度等级: [0.0257, 0.0263) || 挂载数据: blog: 1 ) +│ │ │ ├── 自然语言处理为你的网站赋能 --> ( 难度等级: [0.0257, 0.0259) || 挂载数据: 无 ) +│ │ │ ├── 智能客服与微信小程序 --> ( 难度等级: [0.0259, 0.026) || 挂载数据: blog: 2 ) +│ │ │ ├── 简单的车牌识别系统 --> ( 难度等级: [0.026, 0.0261) || 挂载数据: 无 ) +│ │ │ └── 视觉:对象检测系统 --> ( 难度等级: [0.0261, 0.0263) || 挂载数据: blog: 1 ) +│ │ ├── 物联网和其他场景实践 --> ( 难度等级: [0.0263, 0.0273) || 挂载数据: 无 ) +│ │ │ ├── 物联网相关—定制智能音箱小工具 --> ( 难度等级: [0.0263, 0.0268) || 挂载数据: blog: 1 ) +│ │ │ └── 其他场景实践 --> ( 难度等级: [0.0268, 0.0273) || 挂载数据: 无 ) +│ │ │ ├── OJ判题机/小程序在线编程系统实现 --> ( 难度等级: [0.0268, 0.027) || 挂载数据: blog: 1 ) +│ │ │ └── 微信公众号机器人 --> ( 难度等级: [0.027, 0.0273) || 挂载数据: 无 ) +│ │ ├── Serverless范式 --> ( 难度等级: [0.0273, 0.0284) || 挂载数据: 无 ) +│ │ │ ├── Serverless架构不仅仅是实时的 --> ( 难度等级: [0.0273, 0.0278) || 挂载数据: 无 ) +│ │ │ └── Serverless的优缺点 --> ( 难度等级: [0.0278, 0.0284) || 挂载数据: 无 ) +│ │ ├── 在AWS中构建Serverless应用程序 --> ( 难度等级: [0.0284, 0.0294) || 挂载数据: 无 ) +│ │ │ ├── AWS Lambda的触发器 --> ( 难度等级: [0.0284, 0.0286) || 挂载数据: 无 ) +│ │ │ ├── 函数即容器 --> ( 难度等级: [0.0286, 0.0288) || 挂载数据: 无 ) +│ │ │ ├── 配置函数 --> ( 难度等级: [0.0288, 0.029) || 挂载数据: 无 ) +│ │ │ ├── Lambda函数的版本控制 --> ( 难度等级: [0.029, 0.0292) || 挂载数据: 无 ) +│ │ │ └── 创建部署包 --> ( 难度等级: [0.0292, 0.0294) || 挂载数据: 无 ) +│ │ ├── 设置Serverless架构 --> ( 难度等级: [0.0294, 0.0305) || 挂载数据: 无 ) +│ │ │ ├── S3触发器 --> ( 难度等级: [0.0294, 0.0297) || 挂载数据: 无 ) +│ │ │ ├── SNS触发器 --> ( 难度等级: [0.0297, 0.0299) || 挂载数据: 无 ) +│ │ │ ├── SQS触发器 --> ( 难度等级: [0.0299, 0.0302) || 挂载数据: 无 ) +│ │ │ └── CloudWatch触发器 --> ( 难度等级: [0.0302, 0.0305) || 挂载数据: 无 ) +│ │ ├── 部署Serverless API --> ( 难度等级: [0.0305, 0.0315) || 挂载数据: 无 ) +│ │ │ ├── 设置集成 --> ( 难度等级: [0.0305, 0.0308) || 挂载数据: 无 ) +│ │ │ ├── 为API部署Lambda函数 --> ( 难度等级: [0.0308, 0.0312) || 挂载数据: 无 ) +│ │ │ └── 处理身份验证与用户控制 --> ( 难度等级: [0.0312, 0.0315) || 挂载数据: 无 ) +│ │ ├── 扩展Serverless架构 --> ( 难度等级: [0.0315, 0.0326) || 挂载数据: 无 ) +│ │ │ ├── 第三方编排工具 --> ( 难度等级: [0.0315, 0.0319) || 挂载数据: 无 ) +│ │ │ ├── 服务器的创建和终止 --> ( 难度等级: [0.0319, 0.0322) || 挂载数据: 无 ) +│ │ │ └── 扩展的难点及解决方案 --> ( 难度等级: [0.0322, 0.0326) || 挂载数据: 无 ) +│ │ ├── AWS Lambda的安全性 --> ( 难度等级: [0.0326, 0.0336) || 挂载数据: 无 ) +│ │ │ ├── 了解AWS VPC --> ( 难度等级: [0.0326, 0.0328) || 挂载数据: blog: 6 ) +│ │ │ ├── 了解VPC中的子网 --> ( 难度等级: [0.0328, 0.033) || 挂载数据: 无 ) +│ │ │ ├── 在私有子网内保护Lambda --> ( 难度等级: [0.033, 0.0332) || 挂载数据: 无 ) +│ │ │ ├── Lambda函数的访问控制 --> ( 难度等级: [0.0332, 0.0334) || 挂载数据: 无 ) +│ │ │ └── 在Lambda中使用STS执行安全会话 --> ( 难度等级: [0.0334, 0.0336) || 挂载数据: 无 ) +│ │ ├── 使用SAM部署Lambda函数 --> ( 难度等级: [0.0336, 0.0347) || 挂载数据: 无 ) +│ │ │ ├── SAM简介 --> ( 难度等级: [0.0336, 0.0339) || 挂载数据: 无 ) +│ │ │ ├── 将CloudFormation用于Serverless服务 --> ( 难度等级: [0.0339, 0.0341) || 挂载数据: 无 ) +│ │ │ ├── 使用SAM进行部署 --> ( 难度等级: [0.0341, 0.0344) || 挂载数据: 无 ) +│ │ │ └── 了解SAM中的安全性 --> ( 难度等级: [0.0344, 0.0347) || 挂载数据: 无 ) +│ │ └── 微软Azure Functions简介 --> ( 难度等级: [0.0347, 0.0357) || 挂载数据: 无 ) +│ │ ├── 微软Azure Functions简介 --> ( 难度等级: [0.0347, 0.0349) || 挂载数据: 无 ) +│ │ ├── 创建你的第一个Azure Function --> ( 难度等级: [0.0349, 0.0352) || 挂载数据: 无 ) +│ │ ├── 了解触发器 --> ( 难度等级: [0.0352, 0.0355) || 挂载数据: 无 ) +│ │ └── 编写微软Azure Functions的最佳实践 --> ( 难度等级: [0.0355, 0.0357) || 挂载数据: 无 ) +│ ├── 微服务 --> ( 难度等级: [0.0357, 0.0714) || 挂载数据: 无 ) +│ │ ├── Service Mesh --> ( 难度等级: [0.0357, 0.0362) || 挂载数据: 无 ) +│ │ │ ├── Istio --> ( 难度等级: [0.0357, 0.0358) || 挂载数据: 无 ) +│ │ │ ├── Linkerd --> ( 难度等级: [0.0358, 0.0359) || 挂载数据: 无 ) +│ │ │ ├── Conduit --> ( 难度等级: [0.0359, 0.036) || 挂载数据: 无 ) +│ │ │ ├── Service Mesh的现状 --> ( 难度等级: [0.036, 0.0361) || 挂载数据: 无 ) +│ │ │ └── Istio架构分析 --> ( 难度等级: [0.0361, 0.0362) || 挂载数据: 无 ) +│ │ ├── Framework --> ( 难度等级: [0.0362, 0.0367) || 挂载数据: blog: 2 ) +│ │ │ ├── Dubbo --> ( 难度等级: [0.0362, 0.0364) || 挂载数据: 无 ) +│ │ │ ├── Spring Cloud --> ( 难度等级: [0.0364, 0.0366) || 挂载数据: 无 ) +│ │ │ │ ├── 简介 --> ( 难度等级: [0.0364, 0.0365) || 挂载数据: 无 ) +│ │ │ │ └── 常用组件 --> ( 难度等级: [0.0365, 0.0366) || 挂载数据: 无 ) +│ │ │ └── Tars --> ( 难度等级: [0.0366, 0.0367) || 挂载数据: 无 ) +│ │ ├── 微服务简介 --> ( 难度等级: [0.0367, 0.0373) || 挂载数据: 无 ) +│ │ │ ├── 单体架构及其存在的不足 --> ( 难度等级: [0.0367, 0.0369) || 挂载数据: 无 ) +│ │ │ │ ├── 单体架构简介 --> ( 难度等级: [0.0367, 0.0368) || 挂载数据: 无 ) +│ │ │ │ ├── 单体架构存在的不足 --> ( 难度等级: [0.0368, 0.0368) || 挂载数据: 无 ) +│ │ │ │ └── 单体架构使用服务器集群及存在的不足 --> ( 难度等级: [0.0368, 0.0369) || 挂载数据: blog: 2 ) +│ │ │ ├── 微服务 --> ( 难度等级: [0.0369, 0.037) || 挂载数据: 无 ) +│ │ │ │ ├── 什么是微服务 --> ( 难度等级: [0.0369, 0.0369) || 挂载数据: blog: 10 ) +│ │ │ │ └── 微服务的优势 --> ( 难度等级: [0.0369, 0.037) || 挂载数据: 无 ) +│ │ │ ├── 微服务的不足 --> ( 难度等级: [0.037, 0.0371) || 挂载数据: 无 ) +│ │ │ │ ├── 微服务的复杂度 --> ( 难度等级: [0.037, 0.037) || 挂载数据: 无 ) +│ │ │ │ ├── 分布式事务 --> ( 难度等级: [0.037, 0.037) || 挂载数据: blog: 6 ) +│ │ │ │ ├── 服务的划分 --> ( 难度等级: [0.037, 0.037) || 挂载数据: 无 ) +│ │ │ │ └── 服务的部署 --> ( 难度等级: [0.037, 0.0371) || 挂载数据: 无 ) +│ │ │ ├── 微服务和SOA的关系 --> ( 难度等级: [0.0371, 0.0372) || 挂载数据: blog: 1 ) +│ │ │ └── 微服务的设计原则 --> ( 难度等级: [0.0372, 0.0373) || 挂载数据: 无 ) +│ │ ├── Spring Cloud简介 --> ( 难度等级: [0.0373, 0.0378) || 挂载数据: 无 ) +│ │ │ ├── 微服务应该具备的功能 --> ( 难度等级: [0.0373, 0.0374) || 挂载数据: 无 ) +│ │ │ │ ├── 服务的注册与发现 --> ( 难度等级: [0.0373, 0.0373) || 挂载数据: blog: 7 ) +│ │ │ │ ├── 服务的负载均衡 --> ( 难度等级: [0.0373, 0.0373) || 挂载数据: blog: 3 ) +│ │ │ │ ├── 服务的容错 --> ( 难度等级: [0.0373, 0.0373) || 挂载数据: 无 ) +│ │ │ │ ├── 服务网关 --> ( 难度等级: [0.0373, 0.0374) || 挂载数据: 无 ) +│ │ │ │ │ ├── 服务网关的实现原理 --> ( 难度等级: [0.0373, 0.0373) || 挂载数据: blog: 1 ) +│ │ │ │ │ ├── 断言工厂 --> ( 难度等级: [0.0373, 0.0373) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── After路由断言工厂 --> ( 难度等级: [0.0373, 0.0373) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── Header断言工厂 --> ( 难度等级: [0.0373, 0.0373) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── Cookie路由断言工厂 --> ( 难度等级: [0.0373, 0.0373) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── Host路由断言工厂 --> ( 难度等级: [0.0373, 0.0373) || 挂载数据: blog: 1 ) +│ │ │ │ │ │ ├── Method路由断言工厂 --> ( 难度等级: [0.0373, 0.0373) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── Path路由断言工厂 --> ( 难度等级: [0.0373, 0.0373) || 挂载数据: 无 ) +│ │ │ │ │ │ └── Query路由断言工厂 --> ( 难度等级: [0.0373, 0.0373) || 挂载数据: 无 ) +│ │ │ │ │ ├── 过滤器 --> ( 难度等级: [0.0373, 0.0373) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 过滤器的作用 --> ( 难度等级: [0.0373, 0.0373) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 过滤器的生命周期 --> ( 难度等级: [0.0373, 0.0373) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 网关过滤器 --> ( 难度等级: [0.0373, 0.0373) || 挂载数据: 无 ) +│ │ │ │ │ │ └── 全局过滤器 --> ( 难度等级: [0.0373, 0.0373) || 挂载数据: 无 ) +│ │ │ │ │ ├── 限流 --> ( 难度等级: [0.0373, 0.0373) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 常见的限流算法 --> ( 难度等级: [0.0373, 0.0373) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 服务网关的限流 --> ( 难度等级: [0.0373, 0.0373) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 普通方式 --> ( 难度等级: [0.0373, 0.0373) || 挂载数据: 无 ) +│ │ │ │ │ │ └── 条件方式 --> ( 难度等级: [0.0373, 0.0373) || 挂载数据: 无 ) +│ │ │ │ │ └── 服务化 --> ( 难度等级: [0.0373, 0.0374) || 挂载数据: 无 ) +│ │ │ │ │ ├── 工程介绍 --> ( 难度等级: [0.0373, 0.0374) || 挂载数据: 无 ) +│ │ │ │ │ └── service-gateway工程详细介绍 --> ( 难度等级: [0.0374, 0.0374) || 挂载数据: 无 ) +│ │ │ │ ├── 服务配置的统一管理 --> ( 难度等级: [0.0374, 0.0374) || 挂载数据: 无 ) +│ │ │ │ └── 服务链路追踪 --> ( 难度等级: [0.0374, 0.0374) || 挂载数据: 无 ) +│ │ │ ├── Dubbo简介 --> ( 难度等级: [0.0374, 0.0375) || 挂载数据: 无 ) +│ │ │ ├── Kubernetes简介 --> ( 难度等级: [0.0375, 0.0377) || 挂载数据: 无 ) +│ │ │ └── Spring Could与Kubernetes比较 --> ( 难度等级: [0.0377, 0.0378) || 挂载数据: 无 ) +│ │ ├── 构建微服务的准备 --> ( 难度等级: [0.0378, 0.0383) || 挂载数据: 无 ) +│ │ │ ├── JDK的安装 --> ( 难度等级: [0.0378, 0.038) || 挂载数据: 无 ) +│ │ │ │ ├── JDK的下载和安装 --> ( 难度等级: [0.0378, 0.0379) || 挂载数据: blog: 10 ) +│ │ │ │ └── 环境变量的配置 --> ( 难度等级: [0.0379, 0.038) || 挂载数据: 无 ) +│ │ │ ├── IDEA的安装 --> ( 难度等级: [0.038, 0.0381) || 挂载数据: 无 ) +│ │ │ │ ├── IDEA的下载 --> ( 难度等级: [0.038, 0.038) || 挂载数据: blog: 10 ) +│ │ │ │ └── 用IDEA创建一个Spring Boot工程 --> ( 难度等级: [0.038, 0.0381) || 挂载数据: blog: 2 ) +│ │ │ └── 构建工具Maven的使用 --> ( 难度等级: [0.0381, 0.0383) || 挂载数据: 无 ) +│ │ │ ├── Maven简介 --> ( 难度等级: [0.0381, 0.0382) || 挂载数据: 无 ) +│ │ │ ├── Maven的安装 --> ( 难度等级: [0.0382, 0.0382) || 挂载数据: blog: 2 ) +│ │ │ ├── Maven的核心概念 --> ( 难度等级: [0.0382, 0.0382) || 挂载数据: 无 ) +│ │ │ ├── 编写Pom文件 --> ( 难度等级: [0.0382, 0.0383) || 挂载数据: 无 ) +│ │ │ └── 常用的Maven命令 --> ( 难度等级: [0.0383, 0.0383) || 挂载数据: 无 ) +│ │ ├── 开发框架Spring Boot --> ( 难度等级: [0.0383, 0.0388) || 挂载数据: 无 ) +│ │ │ ├── Spring Boot简介 --> ( 难度等级: [0.0383, 0.0384) || 挂载数据: 无 ) +│ │ │ │ ├── Spring Boot的特点 --> ( 难度等级: [0.0383, 0.0383) || 挂载数据: blog: 10 ) +│ │ │ │ └── Spring Boot的优点 --> ( 难度等级: [0.0383, 0.0384) || 挂载数据: blog: 1 ) +│ │ │ ├── 用IDEA构建Spring Boot工程 --> ( 难度等级: [0.0384, 0.0385) || 挂载数据: 无 ) +│ │ │ │ ├── 在Spring Boot工程中构建Web程序 --> ( 难度等级: [0.0384, 0.0384) || 挂载数据: blog: 9 ) +│ │ │ │ └── Spring Boot的测试 --> ( 难度等级: [0.0384, 0.0385) || 挂载数据: blog: 10 ) +│ │ │ ├── Spring Boot配置文件详解 --> ( 难度等级: [0.0385, 0.0385) || 挂载数据: 无 ) +│ │ │ │ ├── 自定义属性 --> ( 难度等级: [0.0385, 0.0385) || 挂载数据: 无 ) +│ │ │ │ ├── 将配置文件的属性赋给实体类 --> ( 难度等级: [0.0385, 0.0385) || 挂载数据: 无 ) +│ │ │ │ ├── 自定义配置文件 --> ( 难度等级: [0.0385, 0.0385) || 挂载数据: 无 ) +│ │ │ │ └── 多个环境的配置文件 --> ( 难度等级: [0.0385, 0.0385) || 挂载数据: 无 ) +│ │ │ ├── 运行状态监控Actuator --> ( 难度等级: [0.0385, 0.0386) || 挂载数据: 无 ) +│ │ │ │ ├── 查看运行程序的健康状态 --> ( 难度等级: [0.0385, 0.0385) || 挂载数据: 无 ) +│ │ │ │ ├── 查看运行程序的Bean --> ( 难度等级: [0.0385, 0.0386) || 挂载数据: 无 ) +│ │ │ │ ├── 使用Actuator关闭应用程序 --> ( 难度等级: [0.0386, 0.0386) || 挂载数据: 无 ) +│ │ │ │ └── 使用shell连接Actuator --> ( 难度等级: [0.0386, 0.0386) || 挂载数据: 无 ) +│ │ │ ├── Spring Boot整合JPA --> ( 难度等级: [0.0386, 0.0387) || 挂载数据: blog: 1 ) +│ │ │ ├── Spring Boot整合Redis --> ( 难度等级: [0.0387, 0.0387) || 挂载数据: 无 ) +│ │ │ │ ├── Redis简介 --> ( 难度等级: [0.0387, 0.0387) || 挂载数据: 无 ) +│ │ │ │ ├── Redis的安装 --> ( 难度等级: [0.0387, 0.0387) || 挂载数据: blog: 10 ) +│ │ │ │ └── 在Spring Boot中使用Redis --> ( 难度等级: [0.0387, 0.0387) || 挂载数据: blog: 10 ) +│ │ │ └── Spring Boot整合Swagger2,搭建Restful API在线文档 --> ( 难度等级: [0.0387, 0.0388) || 挂载数据: 无 ) +│ │ ├── 负载均衡Ribbon --> ( 难度等级: [0.0388, 0.0393) || 挂载数据: 无 ) +│ │ │ ├── RestTemplate简介 --> ( 难度等级: [0.0388, 0.0389) || 挂载数据: blog: 1 ) +│ │ │ ├── Ribbon简介 --> ( 难度等级: [0.0389, 0.039) || 挂载数据: blog: 1 ) +│ │ │ ├── 使用RestTemplate和Ribbon来消费服务 --> ( 难度等级: [0.039, 0.0391) || 挂载数据: blog: 10 ) +│ │ │ ├── LoadBalancerClient简介 --> ( 难度等级: [0.0391, 0.0392) || 挂载数据: 无 ) +│ │ │ └── 源码解析Ribbon --> ( 难度等级: [0.0392, 0.0393) || 挂载数据: 无 ) +│ │ ├── 声明式调用Feign --> ( 难度等级: [0.0393, 0.0399) || 挂载数据: 无 ) +│ │ │ ├── 写一个Feign客户端 --> ( 难度等级: [0.0393, 0.0394) || 挂载数据: 无 ) +│ │ │ ├── FeignClient详解 --> ( 难度等级: [0.0394, 0.0395) || 挂载数据: 无 ) +│ │ │ ├── FeignClient的配置 --> ( 难度等级: [0.0395, 0.0396) || 挂载数据: 无 ) +│ │ │ ├── 从源码的角度讲解Feign的工作原理 --> ( 难度等级: [0.0396, 0.0397) || 挂载数据: 无 ) +│ │ │ ├── 在Feign中使用HttpClient和OkHttp --> ( 难度等级: [0.0397, 0.0398) || 挂载数据: 无 ) +│ │ │ └── Feign是如何实现负载均衡的 --> ( 难度等级: [0.0398, 0.0399) || 挂载数据: blog: 8 ) +│ │ ├── 熔断器Hystrix --> ( 难度等级: [0.0399, 0.0404) || 挂载数据: 无 ) +│ │ │ ├── Hystrix简介 --> ( 难度等级: [0.0399, 0.0399) || 挂载数据: 无 ) +│ │ │ ├── Hystrix的设计原则 --> ( 难度等级: [0.0399, 0.04) || 挂载数据: 无 ) +│ │ │ ├── Hystrix的工作机制 --> ( 难度等级: [0.04, 0.0401) || 挂载数据: 无 ) +│ │ │ ├── 在Feign上使用熔断器 --> ( 难度等级: [0.0401, 0.0402) || 挂载数据: 无 ) +│ │ │ ├── 使用Hystrix Dashboard监控熔断器的状态 --> ( 难度等级: [0.0402, 0.0403) || 挂载数据: 无 ) +│ │ │ │ ├── 在RestTemplate中使用Hystrix Dashboard --> ( 难度等级: [0.0402, 0.0402) || 挂载数据: 无 ) +│ │ │ │ └── 在Feign中使用Hystrix Dashboard --> ( 难度等级: [0.0402, 0.0403) || 挂载数据: blog: 10 ) +│ │ │ └── 使用Turbine聚合监控 --> ( 难度等级: [0.0403, 0.0404) || 挂载数据: 无 ) +│ │ ├── 路由网关Spring Cloud Zuul --> ( 难度等级: [0.0404, 0.0409) || 挂载数据: 无 ) +│ │ │ └── Zuul的工作原理 --> ( 难度等级: [0.0404, 0.0409) || 挂载数据: blog: 3 ) +│ │ ├── 配置中心Spring Cloud Config --> ( 难度等级: [0.0409, 0.0414) || 挂载数据: 无 ) +│ │ │ ├── Config Server从本地读取配置文件 --> ( 难度等级: [0.0409, 0.041) || 挂载数据: 无 ) +│ │ │ │ ├── 构建Config Server --> ( 难度等级: [0.0409, 0.0409) || 挂载数据: blog: 10 ) +│ │ │ │ └── 构建Config Client --> ( 难度等级: [0.0409, 0.041) || 挂载数据: blog: 8 ) +│ │ │ ├── Config Server从远程Git仓库读取配置文件 --> ( 难度等级: [0.041, 0.0411) || 挂载数据: blog: 4 ) +│ │ │ ├── 构建高可用的Config Server --> ( 难度等级: [0.0411, 0.0412) || 挂载数据: 无 ) +│ │ │ │ ├── 构建Eureka Server --> ( 难度等级: [0.0411, 0.0411) || 挂载数据: blog: 10 ) +│ │ │ │ ├── 改造Config Server --> ( 难度等级: [0.0411, 0.0412) || 挂载数据: 无 ) +│ │ │ │ └── 改造Config Client --> ( 难度等级: [0.0412, 0.0412) || 挂载数据: 无 ) +│ │ │ ├── 使用Spring Cloud Bus刷新配置 --> ( 难度等级: [0.0412, 0.0413) || 挂载数据: 无 ) +│ │ │ └── 将配置存储在MySQL数据库中 --> ( 难度等级: [0.0413, 0.0414) || 挂载数据: 无 ) +│ │ │ ├── 改造config-server工程 --> ( 难度等级: [0.0413, 0.0414) || 挂载数据: 无 ) +│ │ │ └── 初始化数据库 --> ( 难度等级: [0.0414, 0.0414) || 挂载数据: blog: 1 ) +│ │ ├── 服务链路追踪Spring Cloud Sleuth --> ( 难度等级: [0.0414, 0.0419) || 挂载数据: 无 ) +│ │ │ ├── 基本术语 --> ( 难度等级: [0.0414, 0.0415) || 挂载数据: 无 ) +│ │ │ ├── 案例讲解 --> ( 难度等级: [0.0415, 0.0416) || 挂载数据: 无 ) +│ │ │ │ ├── 启动Zipkin Server --> ( 难度等级: [0.0415, 0.0415) || 挂载数据: 无 ) +│ │ │ │ ├── 构建服务提供者 --> ( 难度等级: [0.0415, 0.0415) || 挂载数据: 无 ) +│ │ │ │ └── 构建服务消费者 --> ( 难度等级: [0.0415, 0.0416) || 挂载数据: 无 ) +│ │ │ ├── 在链路数据中添加自定义数据 --> ( 难度等级: [0.0416, 0.0416) || 挂载数据: 无 ) +│ │ │ ├── 使用RabbitMQ传输链路数据 --> ( 难度等级: [0.0416, 0.0417) || 挂载数据: 无 ) +│ │ │ ├── 在MySQL数据库中存储链路数据 --> ( 难度等级: [0.0417, 0.0418) || 挂载数据: 无 ) +│ │ │ ├── 在ElasticSearch中存储链路数据 --> ( 难度等级: [0.0418, 0.0419) || 挂载数据: 无 ) +│ │ │ └── 用Kibana展示链路数据 --> ( 难度等级: [0.0419, 0.0419) || 挂载数据: 无 ) +│ │ ├── 微服务监控Spring Boot Admin --> ( 难度等级: [0.0419, 0.0424) || 挂载数据: 无 ) +│ │ │ ├── 使用Spring Boot Admin监控Spring Boot应用程序 --> ( 难度等级: [0.0419, 0.0421) || 挂载数据: 无 ) +│ │ │ │ ├── 创建Spring Boot Admin Server --> ( 难度等级: [0.0419, 0.042) || 挂载数据: 无 ) +│ │ │ │ └── 创建Spring Boot Admin Client --> ( 难度等级: [0.042, 0.0421) || 挂载数据: blog: 10 ) +│ │ │ ├── 使用Spring Boot Admin监控Spring Cloud微服务 --> ( 难度等级: [0.0421, 0.0423) || 挂载数据: 无 ) +│ │ │ │ ├── 构建Admin Server --> ( 难度等级: [0.0421, 0.0422) || 挂载数据: 无 ) +│ │ │ │ └── 构建Admin Client --> ( 难度等级: [0.0422, 0.0423) || 挂载数据: blog: 3 ) +│ │ │ └── 在Spring Boot Admin中添加Security和Mail组件 --> ( 难度等级: [0.0423, 0.0424) || 挂载数据: 无 ) +│ │ │ ├── Spring Boot Admin集成Security组件 --> ( 难度等级: [0.0423, 0.0424) || 挂载数据: 无 ) +│ │ │ └── Spring Boot Admin集成Mail组件 --> ( 难度等级: [0.0424, 0.0424) || 挂载数据: blog: 1 ) +│ │ ├── Spring Boot Security详解 --> ( 难度等级: [0.0424, 0.043) || 挂载数据: 无 ) +│ │ │ ├── Spring Security简介 --> ( 难度等级: [0.0424, 0.0426) || 挂载数据: 无 ) +│ │ │ │ ├── 什么是Spring Security --> ( 难度等级: [0.0424, 0.0425) || 挂载数据: blog: 10 ) +│ │ │ │ └── Spring Security提供的安全模块 --> ( 难度等级: [0.0425, 0.0426) || 挂载数据: 无 ) +│ │ │ ├── Spring Boot Security与Spring Security的关系 --> ( 难度等级: [0.0426, 0.0428) || 挂载数据: 无 ) +│ │ │ └── Spring Boot Security案例详解 --> ( 难度等级: [0.0428, 0.043) || 挂载数据: 无 ) +│ │ │ ├── 构建Spring Boot Security工程 --> ( 难度等级: [0.0428, 0.0428) || 挂载数据: blog: 10 ) +│ │ │ ├── 配置Spring Security --> ( 难度等级: [0.0428, 0.0429) || 挂载数据: blog: 10 ) +│ │ │ ├── 编写相关界面 --> ( 难度等级: [0.0429, 0.0429) || 挂载数据: 无 ) +│ │ │ ├── Spring Security方法级别上的保护 --> ( 难度等级: [0.0429, 0.0429) || 挂载数据: 无 ) +│ │ │ └── 从数据库中读取用户的认证信息 --> ( 难度等级: [0.0429, 0.043) || 挂载数据: 无 ) +│ │ ├── 使用Spring Cloud OAuth2保护微服务系统 --> ( 难度等级: [0.043, 0.0435) || 挂载数据: 无 ) +│ │ │ ├── 什么是OAuth2 --> ( 难度等级: [0.043, 0.0431) || 挂载数据: 无 ) +│ │ │ ├── 如何使用Spring OAuth2 --> ( 难度等级: [0.0431, 0.0433) || 挂载数据: 无 ) +│ │ │ │ ├── OAuth2 Provider --> ( 难度等级: [0.0431, 0.0432) || 挂载数据: 无 ) +│ │ │ │ └── OAuth2 Client --> ( 难度等级: [0.0432, 0.0433) || 挂载数据: blog: 6 ) +│ │ │ └── 案例分析 --> ( 难度等级: [0.0433, 0.0435) || 挂载数据: 无 ) +│ │ │ ├── 编写Eureka Server --> ( 难度等级: [0.0433, 0.0433) || 挂载数据: blog: 10 ) +│ │ │ ├── 编写Uaa授权服务 --> ( 难度等级: [0.0433, 0.0434) || 挂载数据: 无 ) +│ │ │ ├── 编写service-hi资源服务 --> ( 难度等级: [0.0434, 0.0434) || 挂载数据: 无 ) +│ │ │ ├── 案例架构设计 --> ( 难度等级: [0.0434, 0.0434) || 挂载数据: 无 ) +│ │ │ ├── 编写主Maven工程 --> ( 难度等级: [0.0434, 0.0434) || 挂载数据: 无 ) +│ │ │ └── 编写user-service资源服务 --> ( 难度等级: [0.0434, 0.0435) || 挂载数据: 无 ) +│ │ ├── 使用Spring Security OAuth2和JWT保护微服务系统 --> ( 难度等级: [0.0435, 0.044) || 挂载数据: 无 ) +│ │ │ └── JWT简介 --> ( 难度等级: [0.0435, 0.044) || 挂载数据: 无 ) +│ │ │ ├── 什么是JWT --> ( 难度等级: [0.0435, 0.0436) || 挂载数据: blog: 10 ) +│ │ │ ├── JWT的结构 --> ( 难度等级: [0.0436, 0.0437) || 挂载数据: 无 ) +│ │ │ ├── JWT的应用场景 --> ( 难度等级: [0.0437, 0.0439) || 挂载数据: blog: 2 ) +│ │ │ └── 如何使用JWT --> ( 难度等级: [0.0439, 0.044) || 挂载数据: 无 ) +│ │ ├── 使用Spring Cloud构建微服务综合案例 --> ( 难度等级: [0.044, 0.0445) || 挂载数据: 无 ) +│ │ │ ├── 案例介绍 --> ( 难度等级: [0.044, 0.0442) || 挂载数据: 无 ) +│ │ │ │ ├── 工程结构 --> ( 难度等级: [0.044, 0.044) || 挂载数据: 无 ) +│ │ │ │ ├── 使用的技术栈 --> ( 难度等级: [0.044, 0.0441) || 挂载数据: blog: 2 ) +│ │ │ │ ├── 工程架构 --> ( 难度等级: [0.0441, 0.0441) || 挂载数据: 无 ) +│ │ │ │ └── 功能展示 --> ( 难度等级: [0.0441, 0.0442) || 挂载数据: 无 ) +│ │ │ ├── 案例详解 --> ( 难度等级: [0.0442, 0.0443) || 挂载数据: 无 ) +│ │ │ │ ├── 准备工作 --> ( 难度等级: [0.0442, 0.0442) || 挂载数据: 无 ) +│ │ │ │ ├── 构建主Maven工程 --> ( 难度等级: [0.0442, 0.0442) || 挂载数据: 无 ) +│ │ │ │ ├── 构建eureka-server工程 --> ( 难度等级: [0.0442, 0.0442) || 挂载数据: blog: 2 ) +│ │ │ │ ├── 构建config-server工程 --> ( 难度等级: [0.0442, 0.0442) || 挂载数据: 无 ) +│ │ │ │ ├── 构建Zipkin工程 --> ( 难度等级: [0.0442, 0.0442) || 挂载数据: 无 ) +│ │ │ │ ├── 构建monitoring-service工程 --> ( 难度等级: [0.0442, 0.0443) || 挂载数据: 无 ) +│ │ │ │ ├── 构建uaa-service工程 --> ( 难度等级: [0.0443, 0.0443) || 挂载数据: 无 ) +│ │ │ │ ├── 构建gateway-service工程 --> ( 难度等级: [0.0443, 0.0443) || 挂载数据: 无 ) +│ │ │ │ ├── 构建admin-service工程 --> ( 难度等级: [0.0443, 0.0443) || 挂载数据: 无 ) +│ │ │ │ ├── 构建user-service工程 --> ( 难度等级: [0.0443, 0.0443) || 挂载数据: 无 ) +│ │ │ │ ├── 构建blog-service工程 --> ( 难度等级: [0.0443, 0.0443) || 挂载数据: 无 ) +│ │ │ │ └── 构建log-service工程 --> ( 难度等级: [0.0443, 0.0443) || 挂载数据: 无 ) +│ │ │ └── 启动源码工程 --> ( 难度等级: [0.0443, 0.0445) || 挂载数据: 无 ) +│ │ ├── Spring Cloud生态 --> ( 难度等级: [0.0445, 0.045) || 挂载数据: 无 ) +│ │ │ ├── Spring Cloud基础:Spring Boot概述 --> ( 难度等级: [0.0445, 0.0447) || 挂载数据: 无 ) +│ │ │ ├── Spring Boot核心特性 --> ( 难度等级: [0.0447, 0.0449) || 挂载数据: 无 ) +│ │ │ │ ├── Web服务器:WebServer --> ( 难度等级: [0.0447, 0.0447) || 挂载数据: 无 ) +│ │ │ │ ├── 条件注解:@ConditionalOnXX --> ( 难度等级: [0.0447, 0.0448) || 挂载数据: 无 ) +│ │ │ │ ├── 工厂加载机制 --> ( 难度等级: [0.0448, 0.0448) || 挂载数据: 无 ) +│ │ │ │ ├── 配置加载机制 --> ( 难度等级: [0.0448, 0.0448) || 挂载数据: 无 ) +│ │ │ │ └── Spring Boot Actuator --> ( 难度等级: [0.0448, 0.0449) || 挂载数据: blog: 1 ) +│ │ │ └── Spring Cloud概述 --> ( 难度等级: [0.0449, 0.045) || 挂载数据: 无 ) +│ │ │ ├── Spring Cloud诞生背景 --> ( 难度等级: [0.0449, 0.0449) || 挂载数据: 无 ) +│ │ │ ├── Netflix OSS --> ( 难度等级: [0.0449, 0.0449) || 挂载数据: blog: 10 ) +│ │ │ ├── Spring Cloud版本 --> ( 难度等级: [0.0449, 0.045) || 挂载数据: blog: 10 ) +│ │ │ └── Spring Cloud最新动态 --> ( 难度等级: [0.045, 0.045) || 挂载数据: blog: 10 ) +│ │ ├── 负载均衡与服务调用 --> ( 难度等级: [0.045, 0.0455) || 挂载数据: 无 ) +│ │ │ ├── 负载均衡原理 --> ( 难度等级: [0.045, 0.0451) || 挂载数据: blog: 2 ) +│ │ │ ├── Spring Cloud LoadBalancer负载均衡组件 --> ( 难度等级: [0.0451, 0.0452) || 挂载数据: blog: 1 ) +│ │ │ ├── Netflix Ribbon负载均衡 --> ( 难度等级: [0.0452, 0.0452) || 挂载数据: 无 ) +│ │ │ │ ├── RibbonLoadBalancerClient --> ( 难度等级: [0.0452, 0.0452) || 挂载数据: 无 ) +│ │ │ │ ├── RibbonServer和Server --> ( 难度等级: [0.0452, 0.0452) || 挂载数据: blog: 1 ) +│ │ │ │ ├── ServerIntrospector --> ( 难度等级: [0.0452, 0.0452) || 挂载数据: 无 ) +│ │ │ │ ├── ILoadBalancer --> ( 难度等级: [0.0452, 0.0452) || 挂载数据: 无 ) +│ │ │ │ ├── ServerList --> ( 难度等级: [0.0452, 0.0452) || 挂载数据: blog: 1 ) +│ │ │ │ ├── ServerListUpdater --> ( 难度等级: [0.0452, 0.0452) || 挂载数据: 无 ) +│ │ │ │ ├── ServerStats --> ( 难度等级: [0.0452, 0.0452) || 挂载数据: 无 ) +│ │ │ │ └── Ribbon缓存时间 --> ( 难度等级: [0.0452, 0.0452) || 挂载数据: blog: 10 ) +│ │ │ ├── Dubbo LoadBalance负载均衡 --> ( 难度等级: [0.0452, 0.0453) || 挂载数据: 无 ) +│ │ │ ├── OpenFeign:声明式Rest客户端 --> ( 难度等级: [0.0453, 0.0454) || 挂载数据: 无 ) +│ │ │ │ ├── OpenFeign概述 --> ( 难度等级: [0.0453, 0.0453) || 挂载数据: blog: 1 ) +│ │ │ │ ├── OpenFeign对JAX-RS的支持 --> ( 难度等级: [0.0453, 0.0453) || 挂载数据: 无 ) +│ │ │ │ └── OpenFeign底层执行原理 --> ( 难度等级: [0.0453, 0.0454) || 挂载数据: 无 ) +│ │ │ ├── Dubbo Spring Cloud :服务调用的新选择 --> ( 难度等级: [0.0454, 0.0454) || 挂载数据: 无 ) +│ │ │ ├── 再谈路由和负载均衡 --> ( 难度等级: [0.0454, 0.0455) || 挂载数据: 无 ) +│ │ │ └── 案例:应用流量控制 --> ( 难度等级: [0.0455, 0.0455) || 挂载数据: 无 ) +│ │ │ ├── 流量控制应用的业务场景 --> ( 难度等级: [0.0455, 0.0455) || 挂载数据: blog: 1 ) +│ │ │ └── 使用Netflix Ribbon完成应用灰度发布 --> ( 难度等级: [0.0455, 0.0455) || 挂载数据: 无 ) +│ │ ├── 配置管理 --> ( 难度等级: [0.0455, 0.0461) || 挂载数据: 无 ) +│ │ │ ├── 配置中心背景概述 --> ( 难度等级: [0.0455, 0.0457) || 挂载数据: 无 ) +│ │ │ ├── Spring Cloud Config Server/Client --> ( 难度等级: [0.0457, 0.0459) || 挂载数据: 无 ) +│ │ │ │ ├── Spring Cloud Config Server --> ( 难度等级: [0.0457, 0.0458) || 挂载数据: blog: 2 ) +│ │ │ │ ├── Spring Cloud Config Client --> ( 难度等级: [0.0458, 0.0458) || 挂载数据: blog: 7 ) +│ │ │ │ ├── Spring Cloud Config Client与Service Discovery整合 --> ( 难度等级: [0.0458, 0.0459) || 挂载数据: blog: 1 ) +│ │ │ │ └── Spring Cloud Config配置动态刷新 --> ( 难度等级: [0.0459, 0.0459) || 挂载数据: blog: 2 ) +│ │ │ └── 再谈配置动态刷新 --> ( 难度等级: [0.0459, 0.0461) || 挂载数据: 无 ) +│ │ ├── 熔断器 --> ( 难度等级: [0.0461, 0.0466) || 挂载数据: 无 ) +│ │ │ ├── 熔断器模式概述 --> ( 难度等级: [0.0461, 0.0462) || 挂载数据: 无 ) +│ │ │ ├── 手动实现一个断路器 --> ( 难度等级: [0.0462, 0.0462) || 挂载数据: 无 ) +│ │ │ │ ├── 定义State枚举和Counter计数器类 --> ( 难度等级: [0.0462, 0.0462) || 挂载数据: 无 ) +│ │ │ │ ├── 定义CircuitBreaker类 --> ( 难度等级: [0.0462, 0.0462) || 挂载数据: 无 ) +│ │ │ │ └── 使用CircuitBreaker进行场景测试 --> ( 难度等级: [0.0462, 0.0462) || 挂载数据: 无 ) +│ │ │ ├── Spring Cloud Circuit Breaker的技术演进 --> ( 难度等级: [0.0462, 0.0463) || 挂载数据: 无 ) +│ │ │ ├── Alib*ba Sentinel --> ( 难度等级: [0.0463, 0.0464) || 挂载数据: 无 ) +│ │ │ │ ├── Sentinel核心概述 --> ( 难度等级: [0.0463, 0.0463) || 挂载数据: 无 ) +│ │ │ │ ├── Spring Cloud Alib*ba Sentinel --> ( 难度等级: [0.0463, 0.0464) || 挂载数据: 无 ) +│ │ │ │ ├── Sentinel限流与Dashboard --> ( 难度等级: [0.0464, 0.0464) || 挂载数据: blog: 4 ) +│ │ │ │ └── Sentinel的高级特性 --> ( 难度等级: [0.0464, 0.0464) || 挂载数据: 无 ) +│ │ │ ├── Netflix Hystrix --> ( 难度等级: [0.0464, 0.0465) || 挂载数据: 无 ) +│ │ │ │ ├── Hystrix核心概述 --> ( 难度等级: [0.0464, 0.0464) || 挂载数据: 无 ) +│ │ │ │ ├── Spring Cloud Netflix Hystrix --> ( 难度等级: [0.0464, 0.0465) || 挂载数据: blog: 6 ) +│ │ │ │ ├── Hystrix限流与Dashboard --> ( 难度等级: [0.0465, 0.0465) || 挂载数据: 无 ) +│ │ │ │ └── Hystrix的高级特性 --> ( 难度等级: [0.0465, 0.0465) || 挂载数据: 无 ) +│ │ │ └── Resilience4j --> ( 难度等级: [0.0465, 0.0466) || 挂载数据: 无 ) +│ │ │ ├── Resilience4j体验 --> ( 难度等级: [0.0465, 0.0465) || 挂载数据: 无 ) +│ │ │ ├── Spring Cloud Resilience4j --> ( 难度等级: [0.0465, 0.0466) || 挂载数据: 无 ) +│ │ │ └── Resilience4j的高级特性 --> ( 难度等级: [0.0466, 0.0466) || 挂载数据: 无 ) +│ │ ├── Spring生态消息驱动 --> ( 难度等级: [0.0466, 0.0471) || 挂载数据: 无 ) +│ │ │ ├── 消息中间件概述 --> ( 难度等级: [0.0466, 0.0467) || 挂载数据: 无 ) +│ │ │ ├── Spring与消息 --> ( 难度等级: [0.0467, 0.0468) || 挂载数据: 无 ) +│ │ │ │ ├── 消息编程模型的统一 --> ( 难度等级: [0.0467, 0.0468) || 挂载数据: 无 ) +│ │ │ │ ├── 消息的发送和订阅 --> ( 难度等级: [0.0468, 0.0468) || 挂载数据: blog: 1 ) +│ │ │ │ └── WebSocket --> ( 难度等级: [0.0468, 0.0468) || 挂载数据: blog: 4 ) +│ │ │ ├── Spring Integration --> ( 难度等级: [0.0468, 0.047) || 挂载数据: 无 ) +│ │ │ │ ├── Spring Integration核心组件概述 --> ( 难度等级: [0.0468, 0.0469) || 挂载数据: blog: 1 ) +│ │ │ │ └── Spring Integration核心组件的使用 --> ( 难度等级: [0.0469, 0.047) || 挂载数据: blog: 2 ) +│ │ │ └── Spring Cloud Stream --> ( 难度等级: [0.047, 0.0471) || 挂载数据: 无 ) +│ │ │ ├── 使用Spring Cloud Stream发送和接收消息 --> ( 难度等级: [0.047, 0.047) || 挂载数据: blog: 2 ) +│ │ │ ├── 理解Binder和Binding --> ( 难度等级: [0.047, 0.047) || 挂载数据: 无 ) +│ │ │ ├── 深入理解Spring Cloud Stream --> ( 难度等级: [0.047, 0.0471) || 挂载数据: blog: 4 ) +│ │ │ └── Spring Cloud Stream的高级特性 --> ( 难度等级: [0.0471, 0.0471) || 挂载数据: blog: 1 ) +│ │ ├── 消息总线 --> ( 难度等级: [0.0471, 0.0476) || 挂载数据: 无 ) +│ │ │ ├── 消息总线概述 --> ( 难度等级: [0.0471, 0.0474) || 挂载数据: 无 ) +│ │ │ └── 深入理解Spring Cloud Bus --> ( 难度等级: [0.0474, 0.0476) || 挂载数据: 无 ) +│ │ │ ├── Spring Cloud Bus的使用 --> ( 难度等级: [0.0474, 0.0474) || 挂载数据: 无 ) +│ │ │ ├── Spring Cloud Bus的原理 --> ( 难度等级: [0.0474, 0.0475) || 挂载数据: 无 ) +│ │ │ ├── Spring Cloud Bus事件 --> ( 难度等级: [0.0475, 0.0476) || 挂载数据: 无 ) +│ │ │ └── Spring Cloud Bus源码分析 --> ( 难度等级: [0.0476, 0.0476) || 挂载数据: 无 ) +│ │ ├── Spring Cloud Data Flow --> ( 难度等级: [0.0476, 0.0481) || 挂载数据: 无 ) +│ │ │ ├── 批处理/流处理概述 --> ( 难度等级: [0.0476, 0.0477) || 挂载数据: 无 ) +│ │ │ ├── 流处理案例:信用卡反欺诈系统 --> ( 难度等级: [0.0477, 0.0477) || 挂载数据: 无 ) +│ │ │ ├── 批处理案例:统计GitHub仓库的各项指标数据 --> ( 难度等级: [0.0477, 0.0478) || 挂载数据: blog: 4 ) +│ │ │ ├── Spring Cloud Data Flow批处理任务组合 --> ( 难度等级: [0.0478, 0.0478) || 挂载数据: 无 ) +│ │ │ ├── Spring Cloud Data Flow Shell --> ( 难度等级: [0.0478, 0.0479) || 挂载数据: blog: 4 ) +│ │ │ ├── Spring Cloud Skipper --> ( 难度等级: [0.0479, 0.048) || 挂载数据: 无 ) +│ │ │ ├── Spring Cloud Deployer --> ( 难度等级: [0.048, 0.048) || 挂载数据: 无 ) +│ │ │ │ ├── TaskLauncher接口 --> ( 难度等级: [0.048, 0.048) || 挂载数据: 无 ) +│ │ │ │ ├── AppDeployer接口 --> ( 难度等级: [0.048, 0.048) || 挂载数据: 无 ) +│ │ │ │ └── LocalAppDeployer --> ( 难度等级: [0.048, 0.048) || 挂载数据: 无 ) +│ │ │ ├── Spring Cloud Task --> ( 难度等级: [0.048, 0.0481) || 挂载数据: 无 ) +│ │ │ │ ├── 体验Spring Cloud Task --> ( 难度等级: [0.048, 0.048) || 挂载数据: 无 ) +│ │ │ │ ├── 深入理解Spring Cloud Task --> ( 难度等级: [0.048, 0.0481) || 挂载数据: blog: 9 ) +│ │ │ │ └── Spring Cloud Task Batch --> ( 难度等级: [0.0481, 0.0481) || 挂载数据: 无 ) +│ │ │ └── Spring Batch --> ( 难度等级: [0.0481, 0.0481) || 挂载数据: 无 ) +│ │ │ └── Spring Batch核心组件 --> ( 难度等级: [0.0481, 0.0481) || 挂载数据: blog: 4 ) +│ │ ├── 网关 --> ( 难度等级: [0.0481, 0.0487) || 挂载数据: 无 ) +│ │ │ ├── API网关概述 --> ( 难度等级: [0.0481, 0.0482) || 挂载数据: 无 ) +│ │ │ │ ├── API网关的定义、职能与关注点 --> ( 难度等级: [0.0481, 0.0482) || 挂载数据: 无 ) +│ │ │ │ └── API网关的分类与技术分析 --> ( 难度等级: [0.0482, 0.0482) || 挂载数据: blog: 6 ) +│ │ │ ├── Netflix Zuul --> ( 难度等级: [0.0482, 0.0483) || 挂载数据: 无 ) +│ │ │ ├── 非阻塞式的Spring Cloud Gateway --> ( 难度等级: [0.0483, 0.0483) || 挂载数据: 无 ) +│ │ │ ├── Route路由信息 --> ( 难度等级: [0.0483, 0.0484) || 挂载数据: 无 ) +│ │ │ ├── Predicate机制 --> ( 难度等级: [0.0484, 0.0485) || 挂载数据: 无 ) +│ │ │ │ ├── PredicateDefinition和AsyncPredicate --> ( 难度等级: [0.0484, 0.0484) || 挂载数据: 无 ) +│ │ │ │ ├── RoutePredicateFactory --> ( 难度等级: [0.0484, 0.0484) || 挂载数据: 无 ) +│ │ │ │ └── 内置RoutePredicateFactory --> ( 难度等级: [0.0484, 0.0485) || 挂载数据: 无 ) +│ │ │ ├── Filter机制 --> ( 难度等级: [0.0485, 0.0485) || 挂载数据: blog: 2 ) +│ │ │ │ ├── FilterDefinition和GatewayFilter --> ( 难度等级: [0.0485, 0.0485) || 挂载数据: 无 ) +│ │ │ │ ├── GlobalFilter --> ( 难度等级: [0.0485, 0.0485) || 挂载数据: 无 ) +│ │ │ │ ├── 内置GatewayFilterFactory --> ( 难度等级: [0.0485, 0.0485) || 挂载数据: 无 ) +│ │ │ │ └── 网关内置的GlobalFilter --> ( 难度等级: [0.0485, 0.0485) || 挂载数据: blog: 1 ) +│ │ │ ├── 整合注册中心和配置中心 --> ( 难度等级: [0.0485, 0.0486) || 挂载数据: 无 ) +│ │ │ └── GatewayControllerEndpoint --> ( 难度等级: [0.0486, 0.0487) || 挂载数据: 无 ) +│ │ ├── 综述 --> ( 难度等级: [0.0487, 0.0492) || 挂载数据: 无 ) +│ │ │ ├── Cloud Native的起源 --> ( 难度等级: [0.0487, 0.0487) || 挂载数据: 无 ) +│ │ │ ├── Cloud Native的组成 --> ( 难度等级: [0.0487, 0.0488) || 挂载数据: blog: 1 ) +│ │ │ ├── Cloud Native背后的诉求 --> ( 难度等级: [0.0488, 0.0488) || 挂载数据: 无 ) +│ │ │ ├── 如何衡量Cloud Native的能力 --> ( 难度等级: [0.0488, 0.0489) || 挂载数据: 无 ) +│ │ │ ├── Cloud Native的原则 --> ( 难度等级: [0.0489, 0.049) || 挂载数据: 无 ) +│ │ │ ├── 可用性和可靠性的关系 --> ( 难度等级: [0.049, 0.049) || 挂载数据: 无 ) +│ │ │ ├── 可用性的衡量标准 --> ( 难度等级: [0.049, 0.0491) || 挂载数据: 无 ) +│ │ │ └── 什么降低了可用性 --> ( 难度等级: [0.0491, 0.0492) || 挂载数据: 无 ) +│ │ ├── 微服务架构 --> ( 难度等级: [0.0492, 0.0497) || 挂载数据: blog: 1 ) +│ │ │ ├── 微服务架构的起源 --> ( 难度等级: [0.0492, 0.0492) || 挂载数据: 无 ) +│ │ │ ├── 微服务架构实施的先决条件 --> ( 难度等级: [0.0492, 0.0493) || 挂载数据: 无 ) +│ │ │ │ ├── 研发环境和流程上的转变 --> ( 难度等级: [0.0492, 0.0492) || 挂载数据: 无 ) +│ │ │ │ └── 拆分前先做好解耦 --> ( 难度等级: [0.0492, 0.0493) || 挂载数据: 无 ) +│ │ │ ├── 微服务划分模式 --> ( 难度等级: [0.0493, 0.0493) || 挂载数据: 无 ) +│ │ │ │ ├── 基于业务复杂度选择服务划分方法 --> ( 难度等级: [0.0493, 0.0493) || 挂载数据: 无 ) +│ │ │ │ ├── 基于数据驱动划分服务 --> ( 难度等级: [0.0493, 0.0493) || 挂载数据: blog: 2 ) +│ │ │ │ ├── 基于领域驱动划分服务 --> ( 难度等级: [0.0493, 0.0493) || 挂载数据: 无 ) +│ │ │ │ ├── 从已有单体架构中逐步划分服务 --> ( 难度等级: [0.0493, 0.0493) || 挂载数据: 无 ) +│ │ │ │ ├── 微服务拆分策略 --> ( 难度等级: [0.0493, 0.0493) || 挂载数据: blog: 1 ) +│ │ │ │ └── 如何衡量服务划分的合理性 --> ( 难度等级: [0.0493, 0.0493) || 挂载数据: 无 ) +│ │ │ ├── 微服务划分反模式 --> ( 难度等级: [0.0493, 0.0493) || 挂载数据: 无 ) +│ │ │ ├── 微服务API设计 --> ( 难度等级: [0.0493, 0.0494) || 挂载数据: blog: 1 ) +│ │ │ │ ├── YXAPI的设计原则 --> ( 难度等级: [0.0493, 0.0493) || 挂载数据: 无 ) +│ │ │ │ ├── 服务间通信——RPC --> ( 难度等级: [0.0493, 0.0493) || 挂载数据: 无 ) +│ │ │ │ ├── 序列化——Protobuf --> ( 难度等级: [0.0493, 0.0493) || 挂载数据: 无 ) +│ │ │ │ ├── 服务间通信——RESTful --> ( 难度等级: [0.0493, 0.0494) || 挂载数据: 无 ) +│ │ │ │ ├── 通过Swagger实现RESTful --> ( 难度等级: [0.0494, 0.0494) || 挂载数据: blog: 1 ) +│ │ │ │ ├── HTTP协议的进化——HTTP/2 --> ( 难度等级: [0.0494, 0.0494) || 挂载数据: 无 ) +│ │ │ │ └── HTTP/2和Protobuf的组合——gRPC --> ( 难度等级: [0.0494, 0.0494) || 挂载数据: 无 ) +│ │ │ ├── 微服务框架 --> ( 难度等级: [0.0494, 0.0494) || 挂载数据: 无 ) +│ │ │ ├── 基于Dubbo框架实现微服务 --> ( 难度等级: [0.0494, 0.0495) || 挂载数据: 无 ) +│ │ │ ├── 基于Spring Cloud框架实现微服务 --> ( 难度等级: [0.0495, 0.0495) || 挂载数据: 无 ) +│ │ │ ├── 服务发现场景下的ZooKeeper与Etcd --> ( 难度等级: [0.0495, 0.0495) || 挂载数据: blog: 4 ) +│ │ │ ├── 微服务部署策略 --> ( 难度等级: [0.0495, 0.0496) || 挂载数据: 无 ) +│ │ │ │ ├── 服务D享数据库 --> ( 难度等级: [0.0495, 0.0496) || 挂载数据: 无 ) +│ │ │ │ └── 服务D享虚拟机/容器 --> ( 难度等级: [0.0496, 0.0496) || 挂载数据: 无 ) +│ │ │ ├── 几种常见的微服务架构方案 --> ( 难度等级: [0.0496, 0.0496) || 挂载数据: 无 ) +│ │ │ │ ├── ZeroC IceGrid微服务架构 --> ( 难度等级: [0.0496, 0.0496) || 挂载数据: 无 ) +│ │ │ │ ├── Spring Cloud微服务架构 --> ( 难度等级: [0.0496, 0.0496) || 挂载数据: blog: 6 ) +│ │ │ │ ├── 基于消息队列的微服务架构 --> ( 难度等级: [0.0496, 0.0496) || 挂载数据: 无 ) +│ │ │ │ └── Docker Swarm微服务架构 --> ( 难度等级: [0.0496, 0.0496) || 挂载数据: blog: 9 ) +│ │ │ ├── 深入Kubernetes微服务平台 --> ( 难度等级: [0.0496, 0.0496) || 挂载数据: 无 ) +│ │ │ │ └── 基于Kubernetes的PaaS平台 --> ( 难度等级: [0.0496, 0.0496) || 挂载数据: blog: 1 ) +│ │ │ └── 从微服务到Service Mesh --> ( 难度等级: [0.0496, 0.0497) || 挂载数据: blog: 1 ) +│ │ │ ├── Service Mesh之再见架构 --> ( 难度等级: [0.0496, 0.0497) || 挂载数据: 无 ) +│ │ │ ├── Envoy核心实践入门 --> ( 难度等级: [0.0497, 0.0497) || 挂载数据: 无 ) +│ │ │ ├── Istio背后的技术 --> ( 难度等级: [0.0497, 0.0497) || 挂载数据: blog: 1 ) +│ │ │ └── Istio的架构演变 --> ( 难度等级: [0.0497, 0.0497) || 挂载数据: 无 ) +│ │ ├── 敏捷基础设施及公共基础服务 --> ( 难度等级: [0.0497, 0.0502) || 挂载数据: 无 ) +│ │ │ ├── 传统基础设施面临的挑战 --> ( 难度等级: [0.0497, 0.0497) || 挂载数据: 无 ) +│ │ │ ├── 什么是敏捷基础设施 --> ( 难度等级: [0.0497, 0.0498) || 挂载数据: 无 ) +│ │ │ ├── 基于容器的敏捷基础设施 --> ( 难度等级: [0.0498, 0.0499) || 挂载数据: 无 ) +│ │ │ │ ├── 容器VS虚拟机 --> ( 难度等级: [0.0498, 0.0498) || 挂载数据: blog: 5 ) +│ │ │ │ ├── 安装Docker --> ( 难度等级: [0.0498, 0.0498) || 挂载数据: 无 ) +│ │ │ │ ├── 部署私有Docker Registry --> ( 难度等级: [0.0498, 0.0498) || 挂载数据: 无 ) +│ │ │ │ └── 基于docker-compose管理容器 --> ( 难度等级: [0.0498, 0.0499) || 挂载数据: 无 ) +│ │ │ ├── 基于公共基础服务的平台化 --> ( 难度等级: [0.0499, 0.0499) || 挂载数据: 无 ) +│ │ │ ├── 监控告警fu务 --> ( 难度等级: [0.0499, 0.05) || 挂载数据: 无 ) +│ │ │ │ ├── 监控数据采集 --> ( 难度等级: [0.0499, 0.0499) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 监控数据接收模式 --> ( 难度等级: [0.0499, 0.0499) || 挂载数据: 无 ) +│ │ │ │ ├── 通过时间序列数据库存储监控数据 --> ( 难度等级: [0.0499, 0.05) || 挂载数据: 无 ) +│ │ │ │ ├── 开源监控系统实现Prometheus --> ( 难度等级: [0.05, 0.05) || 挂载数据: blog: 1 ) +│ │ │ │ └── 通过Prometheus和Grafana监控服务 --> ( 难度等级: [0.05, 0.05) || 挂载数据: 无 ) +│ │ │ ├── 分布式消息中间件服务 --> ( 难度等级: [0.05, 0.05) || 挂载数据: 无 ) +│ │ │ │ ├── 分布式消息中间件的作用 --> ( 难度等级: [0.05, 0.05) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 业界常用的分布式消息中间件 --> ( 难度等级: [0.05, 0.05) || 挂载数据: blog: 3 ) +│ │ │ │ ├── Kafka的设计原理 --> ( 难度等级: [0.05, 0.05) || 挂载数据: blog: 10 ) +│ │ │ │ ├── Kafka的数据存储结构 --> ( 难度等级: [0.05, 0.05) || 挂载数据: blog: 10 ) +│ │ │ │ ├── 如何保证Kafka不丢消息 --> ( 难度等级: [0.05, 0.05) || 挂载数据: blog: 1 ) +│ │ │ │ └── Kafka跨数据中心场景集群部署模式 --> ( 难度等级: [0.05, 0.05) || 挂载数据: 无 ) +│ │ │ ├── 分布式缓存服务 --> ( 难度等级: [0.05, 0.0501) || 挂载数据: 无 ) +│ │ │ │ ├── 分布式缓存的应用场景 --> ( 难度等级: [0.05, 0.05) || 挂载数据: 无 ) +│ │ │ │ ├── 业界常用的分布式缓存Memcached --> ( 难度等级: [0.05, 0.0501) || 挂载数据: 无 ) +│ │ │ │ ├── 业界常用的分布式缓存——Redis --> ( 难度等级: [0.0501, 0.0501) || 挂载数据: blog: 3 ) +│ │ │ │ ├── Redis常用的分布式缓存集群模式 --> ( 难度等级: [0.0501, 0.0501) || 挂载数据: 无 ) +│ │ │ │ └── 基于Codis实现Redis分布式缓存集群 --> ( 难度等级: [0.0501, 0.0501) || 挂载数据: blog: 3 ) +│ │ │ ├── 分布式任务调度服务 --> ( 难度等级: [0.0501, 0.0501) || 挂载数据: 无 ) +│ │ │ │ ├── 通过Tbschedule实现分布式任务调度 --> ( 难度等级: [0.0501, 0.0501) || 挂载数据: 无 ) +│ │ │ │ └── 通过Elastic-Job实现分布式任务调度 --> ( 难度等级: [0.0501, 0.0501) || 挂载数据: blog: 1 ) +│ │ │ └── 如何生成分布式ID --> ( 难度等级: [0.0501, 0.0502) || 挂载数据: 无 ) +│ │ │ ├── UUID --> ( 难度等级: [0.0501, 0.0502) || 挂载数据: 无 ) +│ │ │ ├── SDwFlake --> ( 难度等级: [0.0502, 0.0502) || 挂载数据: 无 ) +│ │ │ └── Ticket Server --> ( 难度等级: [0.0502, 0.0502) || 挂载数据: 无 ) +│ │ ├── 可用性设计 --> ( 难度等级: [0.0502, 0.0507) || 挂载数据: 无 ) +│ │ │ ├── 逐步切换 --> ( 难度等级: [0.0502, 0.0503) || 挂载数据: 无 ) +│ │ │ │ ├── 影子测试 --> ( 难度等级: [0.0502, 0.0502) || 挂载数据: 无 ) +│ │ │ │ ├── 蓝绿部署 --> ( 难度等级: [0.0502, 0.0503) || 挂载数据: 无 ) +│ │ │ │ └── 灰度发布/金丝雀发布 --> ( 难度等级: [0.0503, 0.0503) || 挂载数据: 无 ) +│ │ │ ├── 容错设计 --> ( 难度等级: [0.0503, 0.0504) || 挂载数据: 无 ) +│ │ │ │ ├── 消除单点 --> ( 难度等级: [0.0503, 0.0503) || 挂载数据: 无 ) +│ │ │ │ ├── 特性开关 --> ( 难度等级: [0.0503, 0.0503) || 挂载数据: 无 ) +│ │ │ │ ├── 服务分级 --> ( 难度等级: [0.0503, 0.0503) || 挂载数据: 无 ) +│ │ │ │ ├── 降级设计 --> ( 难度等级: [0.0503, 0.0504) || 挂载数据: blog: 10 ) +│ │ │ │ ├── 超时重试 --> ( 难度等级: [0.0504, 0.0504) || 挂载数据: 无 ) +│ │ │ │ └── 隔离策略 --> ( 难度等级: [0.0504, 0.0504) || 挂载数据: 无 ) +│ │ │ ├── 流控设计 --> ( 难度等级: [0.0504, 0.0505) || 挂载数据: 无 ) +│ │ │ │ ├── 限流算法 --> ( 难度等级: [0.0504, 0.0504) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 流控策略 --> ( 难度等级: [0.0504, 0.0504) || 挂载数据: 无 ) +│ │ │ │ ├── 基于Guava限流 --> ( 难度等级: [0.0504, 0.0504) || 挂载数据: 无 ) +│ │ │ │ └── 基于Nginx限流 --> ( 难度等级: [0.0504, 0.0505) || 挂载数据: 无 ) +│ │ │ ├── 容量预估 --> ( 难度等级: [0.0505, 0.0506) || 挂载数据: 无 ) +│ │ │ ├── 故障演练 --> ( 难度等级: [0.0506, 0.0506) || 挂载数据: 无 ) +│ │ │ └── 数据迁移 --> ( 难度等级: [0.0506, 0.0507) || 挂载数据: 无 ) +│ │ │ ├── 逻辑分离,物理不分离 --> ( 难度等级: [0.0506, 0.0507) || 挂载数据: 无 ) +│ │ │ └── 物理分离 --> ( 难度等级: [0.0507, 0.0507) || 挂载数据: 无 ) +│ │ ├── 可扩展性设计 --> ( 难度等级: [0.0507, 0.0512) || 挂载数据: 无 ) +│ │ │ ├── 横向扩展 --> ( 难度等级: [0.0507, 0.0508) || 挂载数据: 无 ) +│ │ │ ├── AKF扩展立方体 --> ( 难度等级: [0.0508, 0.0509) || 挂载数据: 无 ) +│ │ │ ├── 如何扩展长连接 --> ( 难度等级: [0.0509, 0.051) || 挂载数据: 无 ) +│ │ │ ├── 如何扩展数据库 --> ( 难度等级: [0.051, 0.0511) || 挂载数据: 无 ) +│ │ │ │ ├── X轴扩展——主从复制集群 --> ( 难度等级: [0.051, 0.0511) || 挂载数据: 无 ) +│ │ │ │ ├── Y轴扩展——分库、垂直分表 --> ( 难度等级: [0.0511, 0.0511) || 挂载数据: blog: 2 ) +│ │ │ │ ├── Z轴扩展——分片(sharding) --> ( 难度等级: [0.0511, 0.0511) || 挂载数据: 无 ) +│ │ │ │ ├── 分片扩容(re-sharding) --> ( 难度等级: [0.0511, 0.0511) || 挂载数据: blog: 1 ) +│ │ │ │ └── 精选案例 --> ( 难度等级: [0.0511, 0.0511) || 挂载数据: 无 ) +│ │ │ └── 如何扩展数据中心 --> ( 难度等级: [0.0511, 0.0512) || 挂载数据: 无 ) +│ │ │ ├── 两地三中心和同城多活 --> ( 难度等级: [0.0511, 0.0512) || 挂载数据: 无 ) +│ │ │ ├── 同城多活 --> ( 难度等级: [0.0512, 0.0512) || 挂载数据: 无 ) +│ │ │ └── 异地多活 --> ( 难度等级: [0.0512, 0.0512) || 挂载数据: 无 ) +│ │ ├── 性能设计 --> ( 难度等级: [0.0512, 0.0518) || 挂载数据: 无 ) +│ │ │ ├── 性能指标 --> ( 难度等级: [0.0512, 0.0513) || 挂载数据: 无 ) +│ │ │ ├── 如何树立目标 --> ( 难度等级: [0.0513, 0.0514) || 挂载数据: 无 ) +│ │ │ ├── 如何寻找平衡点 --> ( 难度等级: [0.0514, 0.0514) || 挂载数据: 无 ) +│ │ │ ├── 如何定位瓶颈点 --> ( 难度等级: [0.0514, 0.0515) || 挂载数据: 无 ) +│ │ │ ├── 服务通信优化 --> ( 难度等级: [0.0515, 0.0515) || 挂载数据: 无 ) +│ │ │ │ ├── 同步转异步 --> ( 难度等级: [0.0515, 0.0515) || 挂载数据: 无 ) +│ │ │ │ ├── 阻塞转非阻塞 --> ( 难度等级: [0.0515, 0.0515) || 挂载数据: 无 ) +│ │ │ │ └── 序列化 --> ( 难度等级: [0.0515, 0.0515) || 挂载数据: 无 ) +│ │ │ ├── 通过消息中间件提升写性能 --> ( 难度等级: [0.0515, 0.0516) || 挂载数据: blog: 1 ) +│ │ │ ├── 通过缓存提升读性能 --> ( 难度等级: [0.0516, 0.0516) || 挂载数据: 无 ) +│ │ │ │ ├── 基于ConcurrentHashMap实现本地缓存 --> ( 难度等级: [0.0516, 0.0516) || 挂载数据: blog: 3 ) +│ │ │ │ ├── 基于Guava Cache实现本地缓存 --> ( 难度等级: [0.0516, 0.0516) || 挂载数据: blog: 1 ) +│ │ │ │ └── 缓存的常用模式 --> ( 难度等级: [0.0516, 0.0516) || 挂载数据: 无 ) +│ │ │ ├── 数据库优化 --> ( 难度等级: [0.0516, 0.0517) || 挂载数据: 无 ) +│ │ │ │ ├── 通过执行计划分析瓶颈点 --> ( 难度等级: [0.0516, 0.0517) || 挂载数据: 无 ) +│ │ │ │ ├── 为搜索字段创建索引 --> ( 难度等级: [0.0517, 0.0517) || 挂载数据: 无 ) +│ │ │ │ ├── 通过慢查询日志分析瓶颈点 --> ( 难度等级: [0.0517, 0.0517) || 挂载数据: 无 ) +│ │ │ │ └── 通过提升硬件能力优化数据库 --> ( 难度等级: [0.0517, 0.0517) || 挂载数据: 无 ) +│ │ │ └── 简化设计 --> ( 难度等级: [0.0517, 0.0518) || 挂载数据: 无 ) +│ │ │ ├── 转移复杂度 --> ( 难度等级: [0.0517, 0.0517) || 挂载数据: 无 ) +│ │ │ └── 从业务角度优化 --> ( 难度等级: [0.0517, 0.0518) || 挂载数据: 无 ) +│ │ ├── 一致性设计 --> ( 难度等级: [0.0518, 0.0523) || 挂载数据: 无 ) +│ │ │ ├── 基础理论 --> ( 难度等级: [0.0518, 0.0518) || 挂载数据: 无 ) +│ │ │ │ ├── CAP定理 --> ( 难度等级: [0.0518, 0.0518) || 挂载数据: 无 ) +│ │ │ │ ├── BASE理论 --> ( 难度等级: [0.0518, 0.0518) || 挂载数据: blog: 1 ) +│ │ │ │ ├── Quorum机制(NWR模型) --> ( 难度等级: [0.0518, 0.0518) || 挂载数据: 无 ) +│ │ │ │ ├── 租约机制(Lease) --> ( 难度等级: [0.0518, 0.0518) || 挂载数据: 无 ) +│ │ │ │ └── 状态机(Replicated State Machine) --> ( 难度等级: [0.0518, 0.0518) || 挂载数据: blog: 1 ) +│ │ │ ├── 分布式系统的一致性分类 --> ( 难度等级: [0.0518, 0.0519) || 挂载数据: 无 ) +│ │ │ │ ├── 以数据为中心的一致性模型 --> ( 难度等级: [0.0518, 0.0519) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 以用户为中心的一致性模型 --> ( 难度等级: [0.0519, 0.0519) || 挂载数据: 无 ) +│ │ │ │ └── 业界常用的一致性模型 --> ( 难度等级: [0.0519, 0.0519) || 挂载数据: 无 ) +│ │ │ ├── 如何实现强一致性 --> ( 难度等级: [0.0519, 0.052) || 挂载数据: 无 ) +│ │ │ │ ├── 两阶段提交 --> ( 难度等级: [0.0519, 0.052) || 挂载数据: 无 ) +│ │ │ │ └── 三阶段提交(3PC) --> ( 难度等级: [0.052, 0.052) || 挂载数据: blog: 1 ) +│ │ │ ├── 如何实现Z终一致性 --> ( 难度等级: [0.052, 0.0521) || 挂载数据: 无 ) +│ │ │ │ ├── 重试机制 --> ( 难度等级: [0.052, 0.052) || 挂载数据: 无 ) +│ │ │ │ ├── 本地记录日志 --> ( 难度等级: [0.052, 0.0521) || 挂载数据: 无 ) +│ │ │ │ ├── 可靠事件模式 --> ( 难度等级: [0.0521, 0.0521) || 挂载数据: 无 ) +│ │ │ │ ├── Saga事务模型 --> ( 难度等级: [0.0521, 0.0521) || 挂载数据: 无 ) +│ │ │ │ └── TCC事务模型 --> ( 难度等级: [0.0521, 0.0521) || 挂载数据: 无 ) +│ │ │ ├── 分布式锁 --> ( 难度等级: [0.0521, 0.0522) || 挂载数据: 无 ) +│ │ │ │ ├── 基于数据库实现悲观锁和乐观锁 --> ( 难度等级: [0.0521, 0.0521) || 挂载数据: 无 ) +│ │ │ │ ├── 基于ZooKeeper的分布式锁 --> ( 难度等级: [0.0521, 0.0522) || 挂载数据: blog: 7 ) +│ │ │ │ └── 基于Redis实现分布式锁 --> ( 难度等级: [0.0522, 0.0522) || 挂载数据: blog: 10 ) +│ │ │ └── 如何保证幂等性 --> ( 难度等级: [0.0522, 0.0523) || 挂载数据: 无 ) +│ │ │ ├── 幂等令牌(Idempotency Key) --> ( 难度等级: [0.0522, 0.0522) || 挂载数据: 无 ) +│ │ │ └── 在数据库中实现幂等性 --> ( 难度等级: [0.0522, 0.0523) || 挂载数据: 无 ) +│ │ ├── 未来值得关注的方向 --> ( 难度等级: [0.0523, 0.0528) || 挂载数据: blog: 1 ) +│ │ │ └── Serverless --> ( 难度等级: [0.0523, 0.0528) || 挂载数据: 无 ) +│ │ │ ├── 什么是Serverless --> ( 难度等级: [0.0523, 0.0524) || 挂载数据: 无 ) +│ │ │ ├── Serverless的现状 --> ( 难度等级: [0.0524, 0.0526) || 挂载数据: 无 ) +│ │ │ └── Serverless的应用场景 --> ( 难度等级: [0.0526, 0.0528) || 挂载数据: 无 ) +│ │ ├── 研发流程 --> ( 难度等级: [0.0528, 0.0533) || 挂载数据: 无 ) +│ │ │ ├── 十二因子 --> ( 难度等级: [0.0528, 0.0529) || 挂载数据: 无 ) +│ │ │ ├── 自动化测试 --> ( 难度等级: [0.0529, 0.0529) || 挂载数据: 无 ) +│ │ │ │ ├── 单元测试 --> ( 难度等级: [0.0529, 0.0529) || 挂载数据: 无 ) +│ │ │ │ ├── TDD --> ( 难度等级: [0.0529, 0.0529) || 挂载数据: 无 ) +│ │ │ │ └── 提交即意味着可测试 --> ( 难度等级: [0.0529, 0.0529) || 挂载数据: 无 ) +│ │ │ ├── Code Review --> ( 难度等级: [0.0529, 0.053) || 挂载数据: 无 ) +│ │ │ │ ├── Code Review的意义 --> ( 难度等级: [0.0529, 0.053) || 挂载数据: 无 ) +│ │ │ │ ├── Code Review的原则 --> ( 难度等级: [0.053, 0.053) || 挂载数据: blog: 4 ) +│ │ │ │ └── Code Review的过程 --> ( 难度等级: [0.053, 0.053) || 挂载数据: 无 ) +│ │ │ ├── 流水线 --> ( 难度等级: [0.053, 0.0531) || 挂载数据: 无 ) +│ │ │ │ ├── 持续交付 --> ( 难度等级: [0.053, 0.053) || 挂载数据: 无 ) +│ │ │ │ ├── 持续部署流水线 --> ( 难度等级: [0.053, 0.053) || 挂载数据: 无 ) +│ │ │ │ ├── 基于开源打造流水线 --> ( 难度等级: [0.053, 0.0531) || 挂载数据: 无 ) +│ │ │ │ ├── YMX的流水线 --> ( 难度等级: [0.0531, 0.0531) || 挂载数据: 无 ) +│ │ │ │ └── 开发人员自服务 --> ( 难度等级: [0.0531, 0.0531) || 挂载数据: 无 ) +│ │ │ ├── 基于数据和反馈持续改进 --> ( 难度等级: [0.0531, 0.0532) || 挂载数据: 无 ) +│ │ │ ├── 拥抱变化 --> ( 难度等级: [0.0532, 0.0532) || 挂载数据: 无 ) +│ │ │ └── 代码即设计 --> ( 难度等级: [0.0532, 0.0533) || 挂载数据: 无 ) +│ │ ├── 团队文化 --> ( 难度等级: [0.0533, 0.0538) || 挂载数据: 无 ) +│ │ │ ├── 组织结构 --> ( 难度等级: [0.0533, 0.0534) || 挂载数据: 无 ) +│ │ │ │ ├── 康威定律 --> ( 难度等级: [0.0533, 0.0533) || 挂载数据: 无 ) +│ │ │ │ ├── 扁平化的组织 --> ( 难度等级: [0.0533, 0.0534) || 挂载数据: 无 ) +│ │ │ │ ├── D裁的管理方式还是民主的管理方式 --> ( 难度等级: [0.0534, 0.0534) || 挂载数据: 无 ) +│ │ │ │ └── 民主的团队如何做决策 --> ( 难度等级: [0.0534, 0.0534) || 挂载数据: 无 ) +│ │ │ ├── 环境氛围 --> ( 难度等级: [0.0534, 0.0536) || 挂载数据: 无 ) +│ │ │ │ ├── 公开透明的工作环境 --> ( 难度等级: [0.0534, 0.0535) || 挂载数据: 无 ) +│ │ │ │ ├── 学习型组织 --> ( 难度等级: [0.0535, 0.0535) || 挂载数据: 无 ) +│ │ │ │ ├── 减少正式的汇报 --> ( 难度等级: [0.0535, 0.0535) || 挂载数据: 无 ) +│ │ │ │ ├── 高效的会议 --> ( 难度等级: [0.0535, 0.0535) || 挂载数据: 无 ) +│ │ │ │ └── 量化指标致死 --> ( 难度等级: [0.0535, 0.0536) || 挂载数据: 无 ) +│ │ │ ├── 管理风格 --> ( 难度等级: [0.0536, 0.0537) || 挂载数据: 无 ) +│ │ │ │ ├── 下属请假你会拒绝吗 --> ( 难度等级: [0.0536, 0.0536) || 挂载数据: 无 ) +│ │ │ │ ├── 得到了所有人的认可,说明你并不是一个好的管理者 --> ( 难度等级: [0.0536, 0.0536) || 挂载数据: 无 ) +│ │ │ │ ├── 尽量避免用自己的权力去做决策 --> ( 难度等级: [0.0536, 0.0536) || 挂载数据: 无 ) +│ │ │ │ ├── 一屋不扫也可助你“荡平天下” --> ( 难度等级: [0.0536, 0.0537) || 挂载数据: 无 ) +│ │ │ │ └── 如何留下你想要的人 --> ( 难度等级: [0.0537, 0.0537) || 挂载数据: 无 ) +│ │ │ └── 经典案例 --> ( 难度等级: [0.0537, 0.0538) || 挂载数据: 无 ) +│ │ │ ├── Instagram的团队文化 --> ( 难度等级: [0.0537, 0.0538) || 挂载数据: 无 ) +│ │ │ └── Netflix的团队文化 --> ( 难度等级: [0.0538, 0.0538) || 挂载数据: 无 ) +│ │ ├── 基础篇 --> ( 难度等级: [0.0538, 0.0543) || 挂载数据: blog: 1 ) +│ │ │ ├── Service Mesh简介 --> ( 难度等级: [0.0538, 0.0541) || 挂载数据: 无 ) +│ │ │ │ ├── 微服务架构面临的一些挑战 --> ( 难度等级: [0.0538, 0.0539) || 挂载数据: 无 ) +│ │ │ │ ├── 技术架构演进 --> ( 难度等级: [0.0539, 0.054) || 挂载数据: blog: 1 ) +│ │ │ │ ├── Service Mesh的功能 --> ( 难度等级: [0.054, 0.054) || 挂载数据: 无 ) +│ │ │ │ └── 业界Service Mesh产品 --> ( 难度等级: [0.054, 0.0541) || 挂载数据: 无 ) +│ │ │ │ └── Envoy --> ( 难度等级: [0.054, 0.0541) || 挂载数据: blog: 1 ) +│ │ │ └── Linkerd入门 --> ( 难度等级: [0.0541, 0.0543) || 挂载数据: 无 ) +│ │ │ ├── Linkerd架构 --> ( 难度等级: [0.0541, 0.0542) || 挂载数据: 无 ) +│ │ │ ├── Linkerd主要功能 --> ( 难度等级: [0.0542, 0.0542) || 挂载数据: 无 ) +│ │ │ ├── 安装Linkerd --> ( 难度等级: [0.0542, 0.0543) || 挂载数据: 无 ) +│ │ │ │ ├── 环境准备 --> ( 难度等级: [0.0542, 0.0542) || 挂载数据: 无 ) +│ │ │ │ │ ├── 虚拟机及Docker引擎 --> ( 难度等级: [0.0542, 0.0542) || 挂载数据: 无 ) +│ │ │ │ │ ├── 服务发现:Consul --> ( 难度等级: [0.0542, 0.0542) || 挂载数据: blog: 10 ) +│ │ │ │ │ ├── 部署Linkerd --> ( 难度等级: [0.0542, 0.0542) || 挂载数据: 无 ) +│ │ │ │ │ ├── 部署示例服务 --> ( 难度等级: [0.0542, 0.0542) || 挂载数据: 无 ) +│ │ │ │ │ ├── 在本地搭建Istio环境 --> ( 难度等级: [0.0542, 0.0542) || 挂载数据: blog: 2 ) +│ │ │ │ │ │ ├── 安装Kubernetes集群 --> ( 难度等级: [0.0542, 0.0542) || 挂载数据: blog: 1 ) +│ │ │ │ │ │ ├── 安装Helm --> ( 难度等级: [0.0542, 0.0542) || 挂载数据: blog: 1 ) +│ │ │ │ │ │ └── 安装Istio --> ( 难度等级: [0.0542, 0.0542) || 挂载数据: 无 ) +│ │ │ │ │ ├── 在公有云上使用Istio --> ( 难度等级: [0.0542, 0.0542) || 挂载数据: 无 ) +│ │ │ │ │ └── 尝鲜Istio命令行 --> ( 难度等级: [0.0542, 0.0542) || 挂载数据: 无 ) +│ │ │ │ ├── 传统安装方式 --> ( 难度等级: [0.0542, 0.0543) || 挂载数据: 无 ) +│ │ │ │ └── 基于Docker的安装方式 --> ( 难度等级: [0.0543, 0.0543) || 挂载数据: 无 ) +│ │ │ └── 示例演示 --> ( 难度等级: [0.0543, 0.0543) || 挂载数据: 无 ) +│ │ │ ├── 示例准备 --> ( 难度等级: [0.0543, 0.0543) || 挂载数据: blog: 1 ) +│ │ │ │ ├── Weather Forecast简介 --> ( 难度等级: [0.0543, 0.0543) || 挂载数据: 无 ) +│ │ │ │ └── Weather Forecast部署 --> ( 难度等级: [0.0543, 0.0543) || 挂载数据: 无 ) +│ │ │ ├── 基于文件的服务发现 --> ( 难度等级: [0.0543, 0.0543) || 挂载数据: 无 ) +│ │ │ └── 示例演示 --> ( 难度等级: [0.0543, 0.0543) || 挂载数据: 无 ) +│ │ ├── 中级篇 --> ( 难度等级: [0.0543, 0.0549) || 挂载数据: 无 ) +│ │ │ ├── 深入浅出Linkerd配置 --> ( 难度等级: [0.0543, 0.0544) || 挂载数据: 无 ) +│ │ │ │ ├── Linkerd术语 --> ( 难度等级: [0.0543, 0.0544) || 挂载数据: 无 ) +│ │ │ │ └── Linkerd配置 --> ( 难度等级: [0.0544, 0.0544) || 挂载数据: 无 ) +│ │ │ │ ├── 配置构成 --> ( 难度等级: [0.0544, 0.0544) || 挂载数据: blog: 10 ) +│ │ │ │ ├── admin --> ( 难度等级: [0.0544, 0.0544) || 挂载数据: 无 ) +│ │ │ │ ├── namer --> ( 难度等级: [0.0544, 0.0544) || 挂载数据: 无 ) +│ │ │ │ ├── router --> ( 难度等级: [0.0544, 0.0544) || 挂载数据: 无 ) +│ │ │ │ ├── telemetry --> ( 难度等级: [0.0544, 0.0544) || 挂载数据: 无 ) +│ │ │ │ └── usage --> ( 难度等级: [0.0544, 0.0544) || 挂载数据: 无 ) +│ │ │ ├── 深入Linkerd数据访问流 --> ( 难度等级: [0.0544, 0.0545) || 挂载数据: 无 ) +│ │ │ │ ├── dtab详解 --> ( 难度等级: [0.0544, 0.0544) || 挂载数据: 无 ) +│ │ │ │ │ ├── dtab定义 --> ( 难度等级: [0.0544, 0.0544) || 挂载数据: 无 ) +│ │ │ │ │ └── dtab路由原理 --> ( 难度等级: [0.0544, 0.0544) || 挂载数据: 无 ) +│ │ │ │ └── 数据访问流详解 --> ( 难度等级: [0.0544, 0.0545) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 鉴别 --> ( 难度等级: [0.0544, 0.0545) || 挂载数据: 无 ) +│ │ │ │ ├── 绑定 --> ( 难度等级: [0.0545, 0.0545) || 挂载数据: 无 ) +│ │ │ │ ├── 解析 --> ( 难度等级: [0.0545, 0.0545) || 挂载数据: blog: 1 ) +│ │ │ │ └── 转换 --> ( 难度等级: [0.0545, 0.0545) || 挂载数据: 无 ) +│ │ │ ├── Linkerd部署模式 --> ( 难度等级: [0.0545, 0.0545) || 挂载数据: 无 ) +│ │ │ │ ├── Linkerd部署模式 --> ( 难度等级: [0.0545, 0.0545) || 挂载数据: 无 ) +│ │ │ │ │ ├── Per-host模式 --> ( 难度等级: [0.0545, 0.0545) || 挂载数据: 无 ) +│ │ │ │ │ ├── Sidecar模式 --> ( 难度等级: [0.0545, 0.0545) || 挂载数据: 无 ) +│ │ │ │ │ └── Per-host模式和Sidecar模式 --> ( 难度等级: [0.0545, 0.0545) || 挂载数据: 无 ) +│ │ │ │ └── 配置模型 --> ( 难度等级: [0.0545, 0.0545) || 挂载数据: 无 ) +│ │ │ │ ├── service-to-linker模型 --> ( 难度等级: [0.0545, 0.0545) || 挂载数据: 无 ) +│ │ │ │ ├── linker-to-service模型 --> ( 难度等级: [0.0545, 0.0545) || 挂载数据: 无 ) +│ │ │ │ └── linker-to-linker模型 --> ( 难度等级: [0.0545, 0.0545) || 挂载数据: blog: 6 ) +│ │ │ ├── Linkerd控制层:Namerd --> ( 难度等级: [0.0545, 0.0546) || 挂载数据: 无 ) +│ │ │ │ ├── Namerd简介 --> ( 难度等级: [0.0545, 0.0546) || 挂载数据: 无 ) +│ │ │ │ ├── Namerd配置详解 --> ( 难度等级: [0.0546, 0.0546) || 挂载数据: 无 ) +│ │ │ │ │ ├── admin配置 --> ( 难度等级: [0.0546, 0.0546) || 挂载数据: 无 ) +│ │ │ │ │ ├── interface配置 --> ( 难度等级: [0.0546, 0.0546) || 挂载数据: 无 ) +│ │ │ │ │ ├── storage配置 --> ( 难度等级: [0.0546, 0.0546) || 挂载数据: 无 ) +│ │ │ │ │ └── namer配置 --> ( 难度等级: [0.0546, 0.0546) || 挂载数据: 无 ) +│ │ │ │ ├── 连接Linkerd和Namerd --> ( 难度等级: [0.0546, 0.0546) || 挂载数据: 无 ) +│ │ │ │ │ ├── 准备Namerd配置文件 --> ( 难度等级: [0.0546, 0.0546) || 挂载数据: 无 ) +│ │ │ │ │ ├── 启动Namerd --> ( 难度等级: [0.0546, 0.0546) || 挂载数据: 无 ) +│ │ │ │ │ ├── 准备Linkerd配置文件 --> ( 难度等级: [0.0546, 0.0546) || 挂载数据: 无 ) +│ │ │ │ │ └── 启动Linkerd --> ( 难度等级: [0.0546, 0.0546) || 挂载数据: 无 ) +│ │ │ │ └── 管理dtab路由 --> ( 难度等级: [0.0546, 0.0546) || 挂载数据: 无 ) +│ │ │ │ ├── Namerd API简介 --> ( 难度等级: [0.0546, 0.0546) || 挂载数据: 无 ) +│ │ │ │ ├── 通过Namerd API管理dtab --> ( 难度等级: [0.0546, 0.0546) || 挂载数据: 无 ) +│ │ │ │ └── 通过namerctl CLI管理dtab --> ( 难度等级: [0.0546, 0.0546) || 挂载数据: 无 ) +│ │ │ ├── 东西向流量控制 --> ( 难度等级: [0.0546, 0.0547) || 挂载数据: 无 ) +│ │ │ │ ├── Istio东西向流量管理 --> ( 难度等级: [0.0546, 0.0546) || 挂载数据: 无 ) +│ │ │ │ ├── Istio路由控制 --> ( 难度等级: [0.0546, 0.0546) || 挂载数据: 无 ) +│ │ │ │ ├── 实现东西向流量转移路由 --> ( 难度等级: [0.0546, 0.0547) || 挂载数据: 无 ) +│ │ │ │ └── 实现流量镜像及对比分析 --> ( 难度等级: [0.0547, 0.0547) || 挂载数据: 无 ) +│ │ │ ├── 南北向流量控制 --> ( 难度等级: [0.0547, 0.0547) || 挂载数据: 无 ) +│ │ │ │ ├── Istio南北向流量管理 --> ( 难度等级: [0.0547, 0.0547) || 挂载数据: 无 ) +│ │ │ │ ├── Istio网关与K8s Ingress --> ( 难度等级: [0.0547, 0.0547) || 挂载数据: 无 ) +│ │ │ │ ├── 保护Istio网关流量 --> ( 难度等级: [0.0547, 0.0547) || 挂载数据: 无 ) +│ │ │ │ ├── 实现入口流量路由的统一管理 --> ( 难度等级: [0.0547, 0.0547) || 挂载数据: 无 ) +│ │ │ │ └── 实现出口流量路由的统一管理 --> ( 难度等级: [0.0547, 0.0547) || 挂载数据: 无 ) +│ │ │ ├── 安全 --> ( 难度等级: [0.0547, 0.0548) || 挂载数据: 无 ) +│ │ │ │ ├── Citadel架构设计 --> ( 难度等级: [0.0547, 0.0547) || 挂载数据: 无 ) +│ │ │ │ ├── 认证机制 --> ( 难度等级: [0.0547, 0.0548) || 挂载数据: 无 ) +│ │ │ │ ├── 授权机制 --> ( 难度等级: [0.0548, 0.0548) || 挂载数据: 无 ) +│ │ │ │ ├── 使用认证策略 --> ( 难度等级: [0.0548, 0.0548) || 挂载数据: 无 ) +│ │ │ │ ├── 使用双向认证 --> ( 难度等级: [0.0548, 0.0548) || 挂载数据: 无 ) +│ │ │ │ ├── 消除Privileged容器提升安全性 --> ( 难度等级: [0.0548, 0.0548) || 挂载数据: blog: 1 ) +│ │ │ │ └── 通过NetworkPolicy增强安全性 --> ( 难度等级: [0.0548, 0.0548) || 挂载数据: 无 ) +│ │ │ └── Mixer控制与观测 --> ( 难度等级: [0.0548, 0.0549) || 挂载数据: 无 ) +│ │ │ ├── Mixer架构设计 --> ( 难度等级: [0.0548, 0.0548) || 挂载数据: 无 ) +│ │ │ ├── 适配器机制 --> ( 难度等级: [0.0548, 0.0548) || 挂载数据: 无 ) +│ │ │ ├── 使用速率限制策略 --> ( 难度等级: [0.0548, 0.0548) || 挂载数据: 无 ) +│ │ │ ├── 使用黑白名单策略 --> ( 难度等级: [0.0548, 0.0548) || 挂载数据: 无 ) +│ │ │ ├── 使用基于Zipkin与Jaeger的分布式跟踪 --> ( 难度等级: [0.0548, 0.0548) || 挂载数据: 无 ) +│ │ │ ├── 集成度量数据收集 --> ( 难度等级: [0.0548, 0.0549) || 挂载数据: 无 ) +│ │ │ └── 集成日志数据收集 --> ( 难度等级: [0.0549, 0.0549) || 挂载数据: 无 ) +│ │ ├── 原理篇 --> ( 难度等级: [0.0549, 0.0554) || 挂载数据: 无 ) +│ │ │ ├── 你好,Istio --> ( 难度等级: [0.0549, 0.0549) || 挂载数据: 无 ) +│ │ │ │ └── 通过示例看看Istio能做什么 --> ( 难度等级: [0.0549, 0.0549) || 挂载数据: 无 ) +│ │ │ ├── Istio架构概述 --> ( 难度等级: [0.0549, 0.055) || 挂载数据: 无 ) +│ │ │ │ ├── Istio的工作机制 --> ( 难度等级: [0.0549, 0.055) || 挂载数据: 无 ) +│ │ │ │ ├── Istio的服务模型 --> ( 难度等级: [0.055, 0.055) || 挂载数据: 无 ) +│ │ │ │ │ ├── Istio的服务 --> ( 难度等级: [0.055, 0.055) || 挂载数据: blog: 5 ) +│ │ │ │ │ └── Istio的服务版本 --> ( 难度等级: [0.055, 0.055) || 挂载数据: 无 ) +│ │ │ │ └── Istio的主要组件 --> ( 难度等级: [0.055, 0.055) || 挂载数据: 无 ) +│ │ │ │ ├── istio-pilot --> ( 难度等级: [0.055, 0.055) || 挂载数据: blog: 2 ) +│ │ │ │ ├── istio-telemetry --> ( 难度等级: [0.055, 0.055) || 挂载数据: 无 ) +│ │ │ │ ├── istio-policy --> ( 难度等级: [0.055, 0.055) || 挂载数据: 无 ) +│ │ │ │ ├── istio-citadel --> ( 难度等级: [0.055, 0.055) || 挂载数据: 无 ) +│ │ │ │ ├── istio-galley --> ( 难度等级: [0.055, 0.055) || 挂载数据: 无 ) +│ │ │ │ ├── istio-sidecar-injector --> ( 难度等级: [0.055, 0.055) || 挂载数据: 无 ) +│ │ │ │ ├── istio-proxy --> ( 难度等级: [0.055, 0.055) || 挂载数据: blog: 1 ) +│ │ │ │ └── istio-ingressgateway --> ( 难度等级: [0.055, 0.055) || 挂载数据: blog: 1 ) +│ │ │ ├── 非侵入的流量治理 --> ( 难度等级: [0.055, 0.0551) || 挂载数据: 无 ) +│ │ │ │ ├── Istio流量治理的原理 --> ( 难度等级: [0.055, 0.055) || 挂载数据: 无 ) +│ │ │ │ │ ├── 服务熔断 --> ( 难度等级: [0.055, 0.055) || 挂载数据: 无 ) +│ │ │ │ │ ├── 故障注入 --> ( 难度等级: [0.055, 0.055) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 延迟注入 --> ( 难度等级: [0.055, 0.055) || 挂载数据: 无 ) +│ │ │ │ │ │ └── 中断注入 --> ( 难度等级: [0.055, 0.055) || 挂载数据: 无 ) +│ │ │ │ │ ├── 灰度发布 --> ( 难度等级: [0.055, 0.055) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 预先准备:将所有流量都路由到各个服务的v1版本 --> ( 难度等级: [0.055, 0.055) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 基于流量比例的路由 --> ( 难度等级: [0.055, 0.055) || 挂载数据: blog: 1 ) +│ │ │ │ │ │ ├── 基于请求内容的路由 --> ( 难度等级: [0.055, 0.055) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 组合条件路由 --> ( 难度等级: [0.055, 0.055) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 多服务灰度发布 --> ( 难度等级: [0.055, 0.055) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── TCP服务灰度发布 --> ( 难度等级: [0.055, 0.055) || 挂载数据: 无 ) +│ │ │ │ │ │ └── 自动化灰度发布 --> ( 难度等级: [0.055, 0.055) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 正常发布 --> ( 难度等级: [0.055, 0.055) || 挂载数据: blog: 1 ) +│ │ │ │ │ │ └── 异常发布 --> ( 难度等级: [0.055, 0.055) || 挂载数据: 无 ) +│ │ │ │ │ ├── 服务访问入口 --> ( 难度等级: [0.055, 0.055) || 挂载数据: 无 ) +│ │ │ │ │ └── 外部接入服务治理 --> ( 难度等级: [0.055, 0.055) || 挂载数据: 无 ) +│ │ │ │ ├── Istio路由规则配置:VirtualService --> ( 难度等级: [0.055, 0.055) || 挂载数据: 无 ) +│ │ │ │ │ ├── 路由规则配置示例 --> ( 难度等级: [0.055, 0.055) || 挂载数据: 无 ) +│ │ │ │ │ ├── 路由规则定义 --> ( 难度等级: [0.055, 0.055) || 挂载数据: 无 ) +│ │ │ │ │ ├── HTTP路由(HTTPRoute) --> ( 难度等级: [0.055, 0.055) || 挂载数据: 无 ) +│ │ │ │ │ ├── TLS路由(TLSRoute) --> ( 难度等级: [0.055, 0.055) || 挂载数据: 无 ) +│ │ │ │ │ ├── TCP路由(TCPRoute) --> ( 难度等级: [0.055, 0.055) || 挂载数据: blog: 2 ) +│ │ │ │ │ ├── 三种协议路由规则的对比 --> ( 难度等级: [0.055, 0.055) || 挂载数据: 无 ) +│ │ │ │ │ └── VirtualService的典型应用 --> ( 难度等级: [0.055, 0.055) || 挂载数据: 无 ) +│ │ │ │ ├── Istio目标规则配置:DestinationRule --> ( 难度等级: [0.055, 0.0551) || 挂载数据: 无 ) +│ │ │ │ │ ├── DestinationRule配置示例 --> ( 难度等级: [0.055, 0.055) || 挂载数据: 无 ) +│ │ │ │ │ ├── DestinationRule规则定义 --> ( 难度等级: [0.055, 0.055) || 挂载数据: 无 ) +│ │ │ │ │ └── DestinationRule的典型应用 --> ( 难度等级: [0.055, 0.0551) || 挂载数据: 无 ) +│ │ │ │ ├── Istio服务网关配置:Gateway --> ( 难度等级: [0.0551, 0.0551) || 挂载数据: 无 ) +│ │ │ │ │ ├── Gateway配置示例 --> ( 难度等级: [0.0551, 0.0551) || 挂载数据: blog: 10 ) +│ │ │ │ │ ├── Gateway规则定义 --> ( 难度等级: [0.0551, 0.0551) || 挂载数据: blog: 1 ) +│ │ │ │ │ └── Gateway的典型应用 --> ( 难度等级: [0.0551, 0.0551) || 挂载数据: blog: 10 ) +│ │ │ │ ├── Istio外部服务配置:ServiceEntry --> ( 难度等级: [0.0551, 0.0551) || 挂载数据: 无 ) +│ │ │ │ │ ├── ServiceEntry配置示例 --> ( 难度等级: [0.0551, 0.0551) || 挂载数据: 无 ) +│ │ │ │ │ ├── ServiceEntry规则的定义和用法 --> ( 难度等级: [0.0551, 0.0551) || 挂载数据: 无 ) +│ │ │ │ │ └── ServiceEntry的典型应用 --> ( 难度等级: [0.0551, 0.0551) || 挂载数据: 无 ) +│ │ │ │ └── Istio代理规则配置:Sidecar --> ( 难度等级: [0.0551, 0.0551) || 挂载数据: 无 ) +│ │ │ │ ├── Sidecar配置示例 --> ( 难度等级: [0.0551, 0.0551) || 挂载数据: 无 ) +│ │ │ │ └── Sidecar规则定义 --> ( 难度等级: [0.0551, 0.0551) || 挂载数据: 无 ) +│ │ │ ├── 可扩展的策略和遥测 --> ( 难度等级: [0.0551, 0.0552) || 挂载数据: 无 ) +│ │ │ │ ├── Istio策略和遥测的原理 --> ( 难度等级: [0.0551, 0.0551) || 挂载数据: 无 ) +│ │ │ │ │ ├── 应用场景 --> ( 难度等级: [0.0551, 0.0551) || 挂载数据: 无 ) +│ │ │ │ │ ├── 工作原理 --> ( 难度等级: [0.0551, 0.0551) || 挂载数据: blog: 3 ) +│ │ │ │ │ ├── 属性 --> ( 难度等级: [0.0551, 0.0551) || 挂载数据: 无 ) +│ │ │ │ │ └── Mixer的配置模型 --> ( 难度等级: [0.0551, 0.0551) || 挂载数据: 无 ) +│ │ │ │ ├── Istio遥测适配器配置 --> ( 难度等级: [0.0551, 0.0551) || 挂载数据: 无 ) +│ │ │ │ │ ├── Prometheus适配器 --> ( 难度等级: [0.0551, 0.0551) || 挂载数据: 无 ) +│ │ │ │ │ ├── Fluentd适配器 --> ( 难度等级: [0.0551, 0.0551) || 挂载数据: 无 ) +│ │ │ │ │ ├── StatsD适配器 --> ( 难度等级: [0.0551, 0.0551) || 挂载数据: 无 ) +│ │ │ │ │ ├── Stdio适配器 --> ( 难度等级: [0.0551, 0.0551) || 挂载数据: 无 ) +│ │ │ │ │ ├── Zipkin适配器 --> ( 难度等级: [0.0551, 0.0551) || 挂载数据: 无 ) +│ │ │ │ │ └── 厂商适配器 --> ( 难度等级: [0.0551, 0.0551) || 挂载数据: 无 ) +│ │ │ │ ├── Istio策略适配器配置 --> ( 难度等级: [0.0551, 0.0551) || 挂载数据: 无 ) +│ │ │ │ │ ├── List适配器 --> ( 难度等级: [0.0551, 0.0551) || 挂载数据: blog: 10 ) +│ │ │ │ │ ├── Denier适配器 --> ( 难度等级: [0.0551, 0.0551) || 挂载数据: 无 ) +│ │ │ │ │ ├── Memory Quota适配器 --> ( 难度等级: [0.0551, 0.0551) || 挂载数据: 无 ) +│ │ │ │ │ └── Redis Quota适配器 --> ( 难度等级: [0.0551, 0.0551) || 挂载数据: 无 ) +│ │ │ │ └── Kubernetes Env适配器配置 --> ( 难度等级: [0.0551, 0.0552) || 挂载数据: 无 ) +│ │ │ ├── 可插拔的服务安全 --> ( 难度等级: [0.0552, 0.0552) || 挂载数据: 无 ) +│ │ │ │ ├── Istio服务安全的原理 --> ( 难度等级: [0.0552, 0.0552) || 挂载数据: 无 ) +│ │ │ │ │ ├── 认证 --> ( 难度等级: [0.0552, 0.0552) || 挂载数据: 无 ) +│ │ │ │ │ ├── 授权 --> ( 难度等级: [0.0552, 0.0552) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 命名空间级别的访问控制 --> ( 难度等级: [0.0552, 0.0552) || 挂载数据: 无 ) +│ │ │ │ │ │ └── 服务级别的访问控制 --> ( 难度等级: [0.0552, 0.0552) || 挂载数据: 无 ) +│ │ │ │ │ └── 密钥证书管理 --> ( 难度等级: [0.0552, 0.0552) || 挂载数据: 无 ) +│ │ │ │ ├── Istio服务认证配置 --> ( 难度等级: [0.0552, 0.0552) || 挂载数据: 无 ) +│ │ │ │ │ ├── 认证策略配置示例 --> ( 难度等级: [0.0552, 0.0552) || 挂载数据: 无 ) +│ │ │ │ │ ├── 认证策略的定义 --> ( 难度等级: [0.0552, 0.0552) || 挂载数据: 无 ) +│ │ │ │ │ ├── TLS访问配置 --> ( 难度等级: [0.0552, 0.0552) || 挂载数据: 无 ) +│ │ │ │ │ └── 认证策略的典型应用 --> ( 难度等级: [0.0552, 0.0552) || 挂载数据: 无 ) +│ │ │ │ └── Istio服务授权配置 --> ( 难度等级: [0.0552, 0.0552) || 挂载数据: 无 ) +│ │ │ │ ├── 授权启用配置 --> ( 难度等级: [0.0552, 0.0552) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 授权策略配置 --> ( 难度等级: [0.0552, 0.0552) || 挂载数据: 无 ) +│ │ │ │ └── 授权策略的典型应用 --> ( 难度等级: [0.0552, 0.0552) || 挂载数据: 无 ) +│ │ │ ├── 透明的Sidecar机制 --> ( 难度等级: [0.0552, 0.0553) || 挂载数据: 无 ) +│ │ │ │ ├── Sidecar注入 --> ( 难度等级: [0.0552, 0.0553) || 挂载数据: 无 ) +│ │ │ │ │ ├── Sidecar Injector自动注入的原理 --> ( 难度等级: [0.0552, 0.0553) || 挂载数据: 无 ) +│ │ │ │ │ └── Sidecar注入的实现 --> ( 难度等级: [0.0553, 0.0553) || 挂载数据: blog: 2 ) +│ │ │ │ └── Sidecar流量拦截 --> ( 难度等级: [0.0553, 0.0553) || 挂载数据: 无 ) +│ │ │ │ ├── iptables的基本原理 --> ( 难度等级: [0.0553, 0.0553) || 挂载数据: 无 ) +│ │ │ │ ├── iptables的规则设置 --> ( 难度等级: [0.0553, 0.0553) || 挂载数据: 无 ) +│ │ │ │ └── 流量拦截原理 --> ( 难度等级: [0.0553, 0.0553) || 挂载数据: 无 ) +│ │ │ └── 多集群服务治理 --> ( 难度等级: [0.0553, 0.0554) || 挂载数据: 无 ) +│ │ │ ├── Istio多集群服务治理 --> ( 难度等级: [0.0553, 0.0553) || 挂载数据: 无 ) +│ │ │ │ ├── Istio多集群的相关概念 --> ( 难度等级: [0.0553, 0.0553) || 挂载数据: blog: 1 ) +│ │ │ │ └── Istio多集群服务治理现状 --> ( 难度等级: [0.0553, 0.0553) || 挂载数据: blog: 9 ) +│ │ │ ├── 多集群模式1:多控制面 --> ( 难度等级: [0.0553, 0.0553) || 挂载数据: 无 ) +│ │ │ │ ├── 服务DNS解析的原理 --> ( 难度等级: [0.0553, 0.0553) || 挂载数据: blog: 1 ) +│ │ │ │ └── Gateway连接的原理 --> ( 难度等级: [0.0553, 0.0553) || 挂载数据: 无 ) +│ │ │ ├── 多集群模式2:VPN直连单控制面 --> ( 难度等级: [0.0553, 0.0554) || 挂载数据: 无 ) +│ │ │ └── 多集群模式3:集群感知服务路由单控制面 --> ( 难度等级: [0.0554, 0.0554) || 挂载数据: 无 ) +│ │ ├── 实践篇 --> ( 难度等级: [0.0554, 0.0559) || 挂载数据: 无 ) +│ │ │ ├── 流量监控 --> ( 难度等级: [0.0554, 0.0555) || 挂载数据: 无 ) +│ │ │ │ ├── 调用链跟踪 --> ( 难度等级: [0.0554, 0.0554) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 指标监控 --> ( 难度等级: [0.0554, 0.0555) || 挂载数据: 无 ) +│ │ │ │ │ └── Grafana --> ( 难度等级: [0.0554, 0.0555) || 挂载数据: 无 ) +│ │ │ │ └── 服务网格监控 --> ( 难度等级: [0.0555, 0.0555) || 挂载数据: 无 ) +│ │ │ ├── 流量治理 --> ( 难度等级: [0.0555, 0.0556) || 挂载数据: 无 ) +│ │ │ │ ├── 流量负载均衡 --> ( 难度等级: [0.0555, 0.0555) || 挂载数据: 无 ) +│ │ │ │ │ ├── ROUND_ROBIN模式 --> ( 难度等级: [0.0555, 0.0555) || 挂载数据: 无 ) +│ │ │ │ │ └── RANDOM模式 --> ( 难度等级: [0.0555, 0.0555) || 挂载数据: 无 ) +│ │ │ │ ├── 会话保持 --> ( 难度等级: [0.0555, 0.0555) || 挂载数据: 无 ) +│ │ │ │ ├── 超时 --> ( 难度等级: [0.0555, 0.0555) || 挂载数据: 无 ) +│ │ │ │ ├── 重试 --> ( 难度等级: [0.0555, 0.0555) || 挂载数据: 无 ) +│ │ │ │ ├── HTTP重定向 --> ( 难度等级: [0.0555, 0.0556) || 挂载数据: 无 ) +│ │ │ │ ├── HTTP重写 --> ( 难度等级: [0.0556, 0.0556) || 挂载数据: 无 ) +│ │ │ │ ├── 熔断 --> ( 难度等级: [0.0556, 0.0556) || 挂载数据: 无 ) +│ │ │ │ ├── 服务隔离 --> ( 难度等级: [0.0556, 0.0556) || 挂载数据: 无 ) +│ │ │ │ ├── 使用流量策略 --> ( 难度等级: [0.0556, 0.0556) || 挂载数据: 无 ) +│ │ │ │ ├── 设置负载均衡 --> ( 难度等级: [0.0556, 0.0556) || 挂载数据: 无 ) +│ │ │ │ ├── 管理连接池 --> ( 难度等级: [0.0556, 0.0556) || 挂载数据: 无 ) +│ │ │ │ ├── 增强路由规则 --> ( 难度等级: [0.0556, 0.0556) || 挂载数据: 无 ) +│ │ │ │ ├── 混沌工程之熔断 --> ( 难度等级: [0.0556, 0.0556) || 挂载数据: 无 ) +│ │ │ │ └── 混沌工程之故障注入 --> ( 难度等级: [0.0556, 0.0556) || 挂载数据: 无 ) +│ │ │ ├── 服务保护 --> ( 难度等级: [0.0556, 0.0558) || 挂载数据: 无 ) +│ │ │ │ ├── 网关加密 --> ( 难度等级: [0.0556, 0.0557) || 挂载数据: 无 ) +│ │ │ │ │ ├── 单向TLS网关 --> ( 难度等级: [0.0556, 0.0557) || 挂载数据: 无 ) +│ │ │ │ │ ├── 双向TLS网关 --> ( 难度等级: [0.0557, 0.0557) || 挂载数据: 无 ) +│ │ │ │ │ └── 用SDS加密网关 --> ( 难度等级: [0.0557, 0.0557) || 挂载数据: 无 ) +│ │ │ │ └── 访问控制 --> ( 难度等级: [0.0557, 0.0558) || 挂载数据: 无 ) +│ │ │ │ ├── 黑名单 --> ( 难度等级: [0.0557, 0.0557) || 挂载数据: 无 ) +│ │ │ │ └── 白名单 --> ( 难度等级: [0.0557, 0.0558) || 挂载数据: 无 ) +│ │ │ └── 多集群管理 --> ( 难度等级: [0.0558, 0.0559) || 挂载数据: 无 ) +│ │ ├── 架构篇 --> ( 难度等级: [0.0559, 0.0564) || 挂载数据: 无 ) +│ │ │ ├── 司令官Pilot --> ( 难度等级: [0.0559, 0.056) || 挂载数据: 无 ) +│ │ │ │ ├── Pilot的架构 --> ( 难度等级: [0.0559, 0.0559) || 挂载数据: 无 ) +│ │ │ │ │ └── xDS协议 --> ( 难度等级: [0.0559, 0.0559) || 挂载数据: blog: 1 ) +│ │ │ │ ├── Pilot的工作流程 --> ( 难度等级: [0.0559, 0.0559) || 挂载数据: 无 ) +│ │ │ │ │ ├── Pilot的启动与初始化 --> ( 难度等级: [0.0559, 0.0559) || 挂载数据: 无 ) +│ │ │ │ │ ├── 配置规则发现 --> ( 难度等级: [0.0559, 0.0559) || 挂载数据: 无 ) +│ │ │ │ │ └── Envoy的配置分发 --> ( 难度等级: [0.0559, 0.0559) || 挂载数据: 无 ) +│ │ │ │ ├── Pilot的插件 --> ( 难度等级: [0.0559, 0.056) || 挂载数据: 无 ) +│ │ │ │ │ ├── 安全插件 --> ( 难度等级: [0.0559, 0.056) || 挂载数据: blog: 2 ) +│ │ │ │ │ ├── 健康检查插件 --> ( 难度等级: [0.056, 0.056) || 挂载数据: 无 ) +│ │ │ │ │ └── Mixer插件 --> ( 难度等级: [0.056, 0.056) || 挂载数据: 无 ) +│ │ │ │ └── Pilot的设计亮点 --> ( 难度等级: [0.056, 0.056) || 挂载数据: 无 ) +│ │ │ │ ├── 三级缓存优化 --> ( 难度等级: [0.056, 0.056) || 挂载数据: 无 ) +│ │ │ │ ├── 去抖动分发 --> ( 难度等级: [0.056, 0.056) || 挂载数据: 无 ) +│ │ │ │ ├── 增量EDS --> ( 难度等级: [0.056, 0.056) || 挂载数据: 无 ) +│ │ │ │ └── 资源隔离 --> ( 难度等级: [0.056, 0.056) || 挂载数据: 无 ) +│ │ │ ├── 守护神Mixer --> ( 难度等级: [0.056, 0.0561) || 挂载数据: 无 ) +│ │ │ │ ├── Mixer的整体架构 --> ( 难度等级: [0.056, 0.056) || 挂载数据: 无 ) +│ │ │ │ ├── Mixer的服务模型 --> ( 难度等级: [0.056, 0.056) || 挂载数据: 无 ) +│ │ │ │ │ ├── Template --> ( 难度等级: [0.056, 0.056) || 挂载数据: blog: 1 ) +│ │ │ │ │ └── Adapter --> ( 难度等级: [0.056, 0.056) || 挂载数据: 无 ) +│ │ │ │ ├── Mixer的工作流程 --> ( 难度等级: [0.056, 0.056) || 挂载数据: 无 ) +│ │ │ │ │ ├── 启动初始化 --> ( 难度等级: [0.056, 0.056) || 挂载数据: 无 ) +│ │ │ │ │ ├── 用户配置信息规则处理 --> ( 难度等级: [0.056, 0.056) || 挂载数据: 无 ) +│ │ │ │ │ ├── 访问策略的执行 --> ( 难度等级: [0.056, 0.056) || 挂载数据: 无 ) +│ │ │ │ │ └── 无侵入遥测 --> ( 难度等级: [0.056, 0.056) || 挂载数据: 无 ) +│ │ │ │ ├── Mixer的设计亮点 --> ( 难度等级: [0.056, 0.0561) || 挂载数据: 无 ) +│ │ │ │ └── 如何开发Mixer Adapter --> ( 难度等级: [0.0561, 0.0561) || 挂载数据: 无 ) +│ │ │ │ ├── Adapter实现概述 --> ( 难度等级: [0.0561, 0.0561) || 挂载数据: 无 ) +│ │ │ │ ├── 内置式Adapter的开发步骤 --> ( 难度等级: [0.0561, 0.0561) || 挂载数据: 无 ) +│ │ │ │ ├── 独立进程式Adapter的开发步骤 --> ( 难度等级: [0.0561, 0.0561) || 挂载数据: blog: 1 ) +│ │ │ │ └── 独立仓库式Adapter的开发步骤 --> ( 难度等级: [0.0561, 0.0561) || 挂载数据: 无 ) +│ │ │ ├── 安全碉堡Citadel --> ( 难度等级: [0.0561, 0.0562) || 挂载数据: 无 ) +│ │ │ │ ├── Citadel的架构 --> ( 难度等级: [0.0561, 0.0561) || 挂载数据: 无 ) +│ │ │ │ └── Citadel的工作流程 --> ( 难度等级: [0.0561, 0.0562) || 挂载数据: 无 ) +│ │ │ │ ├── 启动初始化 --> ( 难度等级: [0.0561, 0.0561) || 挂载数据: 无 ) +│ │ │ │ ├── 证书控制器 --> ( 难度等级: [0.0561, 0.0561) || 挂载数据: 无 ) +│ │ │ │ ├── gRPC服务器 --> ( 难度等级: [0.0561, 0.0561) || 挂载数据: 无 ) +│ │ │ │ ├── 证书轮换器 --> ( 难度等级: [0.0561, 0.0562) || 挂载数据: 无 ) +│ │ │ │ └── SDS服务器 --> ( 难度等级: [0.0562, 0.0562) || 挂载数据: 无 ) +│ │ │ ├── 高性能代理Envoy --> ( 难度等级: [0.0562, 0.0562) || 挂载数据: 无 ) +│ │ │ │ ├── Envoy的架构 --> ( 难度等级: [0.0562, 0.0562) || 挂载数据: 无 ) +│ │ │ │ ├── Envoy的特性 --> ( 难度等级: [0.0562, 0.0562) || 挂载数据: 无 ) +│ │ │ │ ├── Envoy的模块结构 --> ( 难度等级: [0.0562, 0.0562) || 挂载数据: 无 ) +│ │ │ │ ├── Envoy的线程模型 --> ( 难度等级: [0.0562, 0.0562) || 挂载数据: 无 ) +│ │ │ │ ├── Envoy的内存管理 --> ( 难度等级: [0.0562, 0.0562) || 挂载数据: 无 ) +│ │ │ │ │ ├── 变量管理 --> ( 难度等级: [0.0562, 0.0562) || 挂载数据: 无 ) +│ │ │ │ │ └── Buffer管理 --> ( 难度等级: [0.0562, 0.0562) || 挂载数据: blog: 1 ) +│ │ │ │ └── Envoy的流量控制 --> ( 难度等级: [0.0562, 0.0562) || 挂载数据: 无 ) +│ │ │ ├── 代理守护进程Pilot-agent --> ( 难度等级: [0.0562, 0.0563) || 挂载数据: 无 ) +│ │ │ │ └── Pilot-agent的工作流程 --> ( 难度等级: [0.0562, 0.0563) || 挂载数据: 无 ) +│ │ │ │ ├── Envoy的启动 --> ( 难度等级: [0.0562, 0.0563) || 挂载数据: 无 ) +│ │ │ │ ├── Envoy的热重启 --> ( 难度等级: [0.0563, 0.0563) || 挂载数据: 无 ) +│ │ │ │ ├── 守护Envoy --> ( 难度等级: [0.0563, 0.0563) || 挂载数据: 无 ) +│ │ │ │ └── 优雅退出 --> ( 难度等级: [0.0563, 0.0563) || 挂载数据: 无 ) +│ │ │ └── 配置中心Galley --> ( 难度等级: [0.0563, 0.0564) || 挂载数据: 无 ) +│ │ │ ├── Galley的架构 --> ( 难度等级: [0.0563, 0.0564) || 挂载数据: blog: 1 ) +│ │ │ │ ├── MCP --> ( 难度等级: [0.0563, 0.0564) || 挂载数据: 无 ) +│ │ │ │ └── MCP API --> ( 难度等级: [0.0564, 0.0564) || 挂载数据: 无 ) +│ │ │ └── Galley的工作流程 --> ( 难度等级: [0.0564, 0.0564) || 挂载数据: 无 ) +│ │ │ ├── 启动初始化 --> ( 难度等级: [0.0564, 0.0564) || 挂载数据: 无 ) +│ │ │ ├── 配置校验 --> ( 难度等级: [0.0564, 0.0564) || 挂载数据: 无 ) +│ │ │ └── 配置聚合与分发 --> ( 难度等级: [0.0564, 0.0564) || 挂载数据: 无 ) +│ │ ├── 源码篇 --> ( 难度等级: [0.0564, 0.0569) || 挂载数据: 无 ) +│ │ │ ├── Pilot源码解析 --> ( 难度等级: [0.0564, 0.0565) || 挂载数据: 无 ) +│ │ │ │ ├── 进程启动流程 --> ( 难度等级: [0.0564, 0.0565) || 挂载数据: 无 ) +│ │ │ │ └── 关键代码分析 --> ( 难度等级: [0.0565, 0.0565) || 挂载数据: 无 ) +│ │ │ │ ├── ConfigController --> ( 难度等级: [0.0565, 0.0565) || 挂载数据: 无 ) +│ │ │ │ ├── ServiceController --> ( 难度等级: [0.0565, 0.0565) || 挂载数据: 无 ) +│ │ │ │ ├── xDS异步分发 --> ( 难度等级: [0.0565, 0.0565) || 挂载数据: 无 ) +│ │ │ │ └── 配置更新预处理 --> ( 难度等级: [0.0565, 0.0565) || 挂载数据: 无 ) +│ │ │ ├── Mixer源码解析 --> ( 难度等级: [0.0565, 0.0566) || 挂载数据: 无 ) +│ │ │ │ ├── 进程启动流程 --> ( 难度等级: [0.0565, 0.0566) || 挂载数据: 无 ) +│ │ │ │ │ ├── runServer通过newServer新建Server对象 --> ( 难度等级: [0.0565, 0.0565) || 挂载数据: 无 ) +│ │ │ │ │ └── 启动Mixer gRPC Server --> ( 难度等级: [0.0565, 0.0566) || 挂载数据: 无 ) +│ │ │ │ └── 关键代码分析 --> ( 难度等级: [0.0566, 0.0566) || 挂载数据: 无 ) +│ │ │ │ ├── 监听用户的配置 --> ( 难度等级: [0.0566, 0.0566) || 挂载数据: 无 ) +│ │ │ │ ├── 构建数据模型 --> ( 难度等级: [0.0566, 0.0566) || 挂载数据: 无 ) +│ │ │ │ ├── Check接口 --> ( 难度等级: [0.0566, 0.0566) || 挂载数据: 无 ) +│ │ │ │ ├── Report接口 --> ( 难度等级: [0.0566, 0.0566) || 挂载数据: 无 ) +│ │ │ │ └── 协程池 --> ( 难度等级: [0.0566, 0.0566) || 挂载数据: 无 ) +│ │ │ ├── Citadel源码解析 --> ( 难度等级: [0.0566, 0.0567) || 挂载数据: 无 ) +│ │ │ │ ├── 进程启动流程 --> ( 难度等级: [0.0566, 0.0567) || 挂载数据: 无 ) +│ │ │ │ └── 关键代码分析 --> ( 难度等级: [0.0567, 0.0567) || 挂载数据: 无 ) +│ │ │ │ ├── 证书签发实体IstioCA --> ( 难度等级: [0.0567, 0.0567) || 挂载数据: 无 ) +│ │ │ │ ├── SecretController的创建和核心原理 --> ( 难度等级: [0.0567, 0.0567) || 挂载数据: 无 ) +│ │ │ │ └── CA Server的创建和核心原理 --> ( 难度等级: [0.0567, 0.0567) || 挂载数据: 无 ) +│ │ │ ├── Envoy源码解析 --> ( 难度等级: [0.0567, 0.0568) || 挂载数据: 无 ) +│ │ │ │ ├── Envoy的初始化 --> ( 难度等级: [0.0567, 0.0568) || 挂载数据: 无 ) +│ │ │ │ │ ├── 启动参数bootstrap的初始化 --> ( 难度等级: [0.0567, 0.0567) || 挂载数据: 无 ) +│ │ │ │ │ ├── Admin API的初始化 --> ( 难度等级: [0.0567, 0.0567) || 挂载数据: 无 ) +│ │ │ │ │ ├── Worker的初始化 --> ( 难度等级: [0.0567, 0.0567) || 挂载数据: 无 ) +│ │ │ │ │ ├── CDS的初始化 --> ( 难度等级: [0.0567, 0.0567) || 挂载数据: 无 ) +│ │ │ │ │ ├── LDS的初始化 --> ( 难度等级: [0.0567, 0.0568) || 挂载数据: 无 ) +│ │ │ │ │ └── GuardDog的初始化 --> ( 难度等级: [0.0568, 0.0568) || 挂载数据: 无 ) +│ │ │ │ ├── Envoy的运行和建立新连接 --> ( 难度等级: [0.0568, 0.0568) || 挂载数据: 无 ) +│ │ │ │ │ ├── 启动worker --> ( 难度等级: [0.0568, 0.0568) || 挂载数据: 无 ) +│ │ │ │ │ ├── Listener的加载 --> ( 难度等级: [0.0568, 0.0568) || 挂载数据: 无 ) +│ │ │ │ │ └── 接收连接 --> ( 难度等级: [0.0568, 0.0568) || 挂载数据: blog: 1 ) +│ │ │ │ ├── Envoy对数据的读取、接收及处理 --> ( 难度等级: [0.0568, 0.0568) || 挂载数据: 无 ) +│ │ │ │ │ ├── 读取数据 --> ( 难度等级: [0.0568, 0.0568) || 挂载数据: 无 ) +│ │ │ │ │ └── 接收数据 --> ( 难度等级: [0.0568, 0.0568) || 挂载数据: 无 ) +│ │ │ │ └── Envoy发送数据到服务端 --> ( 难度等级: [0.0568, 0.0568) || 挂载数据: 无 ) +│ │ │ │ ├── 匹配路由 --> ( 难度等级: [0.0568, 0.0568) || 挂载数据: 无 ) +│ │ │ │ ├── 获取连接池 --> ( 难度等级: [0.0568, 0.0568) || 挂载数据: 无 ) +│ │ │ │ └── 选择上游主机 --> ( 难度等级: [0.0568, 0.0568) || 挂载数据: 无 ) +│ │ │ └── Galley源码解析 --> ( 难度等级: [0.0568, 0.0569) || 挂载数据: 无 ) +│ │ │ ├── 进程启动流程 --> ( 难度等级: [0.0568, 0.0569) || 挂载数据: 无 ) +│ │ │ │ ├── RunServer的启动流程 --> ( 难度等级: [0.0568, 0.0569) || 挂载数据: 无 ) +│ │ │ │ └── RunValidation Server的启动流程 --> ( 难度等级: [0.0569, 0.0569) || 挂载数据: 无 ) +│ │ │ └── 关键代码分析 --> ( 难度等级: [0.0569, 0.0569) || 挂载数据: 无 ) +│ │ │ ├── 配置监听 --> ( 难度等级: [0.0569, 0.0569) || 挂载数据: 无 ) +│ │ │ └── 配置分发 --> ( 难度等级: [0.0569, 0.0569) || 挂载数据: 无 ) +│ │ ├── 初级篇 --> ( 难度等级: [0.0569, 0.0575) || 挂载数据: 无 ) +│ │ │ ├── 快速上手Istio --> ( 难度等级: [0.0569, 0.0572) || 挂载数据: 无 ) +│ │ │ │ ├── 在MiniKube上搭建Istio环境 --> ( 难度等级: [0.0569, 0.057) || 挂载数据: 无 ) +│ │ │ │ ├── 在Docker Desktop上搭建Istio环境 --> ( 难度等级: [0.057, 0.0571) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 使用公有云Istio服务 --> ( 难度等级: [0.0571, 0.0571) || 挂载数据: 无 ) +│ │ │ │ └── 在Istio中部署第一个应用程序 --> ( 难度等级: [0.0571, 0.0572) || 挂载数据: 无 ) +│ │ │ └── Istio架构剖析 --> ( 难度等级: [0.0572, 0.0575) || 挂载数据: 无 ) +│ │ │ ├── Istio架构总体结构 --> ( 难度等级: [0.0572, 0.0573) || 挂载数据: 无 ) +│ │ │ ├── 剖析Istio控制平面 --> ( 难度等级: [0.0573, 0.0574) || 挂载数据: 无 ) +│ │ │ │ └── Istio Mixer --> ( 难度等级: [0.0573, 0.0574) || 挂载数据: blog: 1 ) +│ │ │ └── 剖析Istio数据平面 --> ( 难度等级: [0.0574, 0.0575) || 挂载数据: 无 ) +│ │ │ ├── Envoy代理 --> ( 难度等级: [0.0574, 0.0574) || 挂载数据: 无 ) +│ │ │ ├── Envoy静态与动态配置 --> ( 难度等级: [0.0574, 0.0574) || 挂载数据: 无 ) +│ │ │ └── 代理部署 --> ( 难度等级: [0.0574, 0.0575) || 挂载数据: 无 ) +│ │ ├── 高级篇 --> ( 难度等级: [0.0575, 0.058) || 挂载数据: 无 ) +│ │ │ ├── Istio的性能分析与运维 --> ( 难度等级: [0.0575, 0.0576) || 挂载数据: 无 ) +│ │ │ │ ├── Istio功能稳定性 --> ( 难度等级: [0.0575, 0.0575) || 挂载数据: 无 ) +│ │ │ │ ├── Istio性能分析 --> ( 难度等级: [0.0575, 0.0575) || 挂载数据: blog: 1 ) +│ │ │ │ ├── Istio组件升级与回滚 --> ( 难度等级: [0.0575, 0.0576) || 挂载数据: 无 ) +│ │ │ │ └── Pilot运维指南 --> ( 难度等级: [0.0576, 0.0576) || 挂载数据: blog: 9 ) +│ │ │ ├── Istio的定制与扩展 --> ( 难度等级: [0.0576, 0.0577) || 挂载数据: 无 ) +│ │ │ │ ├── Mixer模板设计 --> ( 难度等级: [0.0576, 0.0576) || 挂载数据: 无 ) +│ │ │ │ ├── 适配器生命周期管理 --> ( 难度等级: [0.0576, 0.0576) || 挂载数据: 无 ) +│ │ │ │ ├── 开发实现适配器 --> ( 难度等级: [0.0576, 0.0577) || 挂载数据: 无 ) +│ │ │ │ ├── 编译与打包适配器 --> ( 难度等级: [0.0577, 0.0577) || 挂载数据: 无 ) +│ │ │ │ └── 扩展EnvoyFilter --> ( 难度等级: [0.0577, 0.0577) || 挂载数据: 无 ) +│ │ │ ├── Knative:基于Istio的无服务器计算 --> ( 难度等级: [0.0577, 0.0578) || 挂载数据: 无 ) +│ │ │ │ ├── Knative架构解析 --> ( 难度等级: [0.0577, 0.0577) || 挂载数据: 无 ) +│ │ │ │ ├── 基于Istio实现Serving组件 --> ( 难度等级: [0.0577, 0.0578) || 挂载数据: 无 ) +│ │ │ │ ├── Knative Build运行机制 --> ( 难度等级: [0.0578, 0.0578) || 挂载数据: 无 ) +│ │ │ │ ├── Knative Eventing运行机制 --> ( 难度等级: [0.0578, 0.0578) || 挂载数据: 无 ) +│ │ │ │ ├── 在Istio上部署Knative --> ( 难度等级: [0.0578, 0.0578) || 挂载数据: 无 ) +│ │ │ │ └── 开发部署Knative应用 --> ( 难度等级: [0.0578, 0.0578) || 挂载数据: 无 ) +│ │ │ └── 云原生计算的未来展望 --> ( 难度等级: [0.0578, 0.058) || 挂载数据: blog: 1 ) +│ │ ├── 什么是架构 --> ( 难度等级: [0.058, 0.0585) || 挂载数据: 无 ) +│ │ ├── 几个相关概念 --> ( 难度等级: [0.0585, 0.059) || 挂载数据: 无 ) +│ │ ├── 从软件的生命周期看架构设计 --> ( 难度等级: [0.059, 0.0595) || 挂载数据: 无 ) +│ │ ├── 架构的形式与特点 --> ( 难度等级: [0.0595, 0.06) || 挂载数据: 无 ) +│ │ ├── 架构的目标与方法 --> ( 难度等级: [0.06, 0.0606) || 挂载数据: 无 ) +│ │ ├── 架构的不同风格 --> ( 难度等级: [0.0606, 0.0611) || 挂载数据: 无 ) +│ │ ├── 微服务领域驱动设计 --> ( 难度等级: [0.0611, 0.0616) || 挂载数据: 无 ) +│ │ │ ├── 领域驱动设计 --> ( 难度等级: [0.0611, 0.0613) || 挂载数据: 无 ) +│ │ │ │ ├── 领域驱动设计概览 --> ( 难度等级: [0.0611, 0.0611) || 挂载数据: blog: 2 ) +│ │ │ │ ├── 限界上下文 --> ( 难度等级: [0.0611, 0.0612) || 挂载数据: 无 ) +│ │ │ │ ├── 上下文映射 --> ( 难度等级: [0.0612, 0.0613) || 挂载数据: 无 ) +│ │ │ │ └── 领域架构 --> ( 难度等级: [0.0613, 0.0613) || 挂载数据: 无 ) +│ │ │ └── 微服务的设计 --> ( 难度等级: [0.0613, 0.0616) || 挂载数据: 无 ) +│ │ │ ├── 限界上下文的边界 --> ( 难度等级: [0.0613, 0.0614) || 挂载数据: 无 ) +│ │ │ ├── 限界上下文即微服务 --> ( 难度等级: [0.0614, 0.0615) || 挂载数据: 无 ) +│ │ │ ├── 识别限界上下文 --> ( 难度等级: [0.0615, 0.0615) || 挂载数据: 无 ) +│ │ │ └── 微服务之间的协作 --> ( 难度等级: [0.0615, 0.0616) || 挂载数据: blog: 10 ) +│ │ ├── Apache Dubbo框架的原理与实现 --> ( 难度等级: [0.0616, 0.0621) || 挂载数据: blog: 1 ) +│ │ │ ├── Dubbo框架的选型与使用 --> ( 难度等级: [0.0616, 0.0618) || 挂载数据: 无 ) +│ │ │ │ ├── Dubbo框架的选型 --> ( 难度等级: [0.0616, 0.0617) || 挂载数据: 无 ) +│ │ │ │ └── Dubbo框架的使用 --> ( 难度等级: [0.0617, 0.0618) || 挂载数据: blog: 10 ) +│ │ │ ├── Dubbo框架的原理分析 --> ( 难度等级: [0.0618, 0.0619) || 挂载数据: 无 ) +│ │ │ │ ├── 总体架构分析 --> ( 难度等级: [0.0618, 0.0618) || 挂载数据: 无 ) +│ │ │ │ ├── Dubbo Bean的加载 --> ( 难度等级: [0.0618, 0.0618) || 挂载数据: blog: 2 ) +│ │ │ │ ├── Dubbo Extension机制 --> ( 难度等级: [0.0618, 0.0619) || 挂载数据: blog: 2 ) +│ │ │ │ ├── Dubbo消费端 --> ( 难度等级: [0.0619, 0.0619) || 挂载数据: 无 ) +│ │ │ │ ├── Dubbo服务端 --> ( 难度等级: [0.0619, 0.0619) || 挂载数据: blog: 3 ) +│ │ │ │ └── Dubbo的通信机制 --> ( 难度等级: [0.0619, 0.0619) || 挂载数据: blog: 1 ) +│ │ │ └── 基于Dubbo的自动化Mock系统 --> ( 难度等级: [0.0619, 0.0621) || 挂载数据: 无 ) +│ │ │ ├── Mock模拟系统的产生 --> ( 难度等级: [0.0619, 0.062) || 挂载数据: 无 ) +│ │ │ ├── Dubbo Mock的使用 --> ( 难度等级: [0.062, 0.062) || 挂载数据: 无 ) +│ │ │ ├── Dubbo Mock的原理解析 --> ( 难度等级: [0.062, 0.0621) || 挂载数据: blog: 1 ) +│ │ │ └── 自动化Mock系统的实现 --> ( 难度等级: [0.0621, 0.0621) || 挂载数据: blog: 1 ) +│ │ ├── Spring Boot/Spring Cloud实践 --> ( 难度等级: [0.0621, 0.0626) || 挂载数据: 无 ) +│ │ │ ├── Spring Boot原理剖析 --> ( 难度等级: [0.0621, 0.0622) || 挂载数据: 无 ) +│ │ │ │ ├── Spring Boot Quick Start --> ( 难度等级: [0.0621, 0.0621) || 挂载数据: blog: 3 ) +│ │ │ │ ├── Spring Boot之SpringApplication --> ( 难度等级: [0.0621, 0.0622) || 挂载数据: blog: 10 ) +│ │ │ │ ├── spring-boot-loaded模块分析 --> ( 难度等级: [0.0622, 0.0622) || 挂载数据: 无 ) +│ │ │ │ ├── spring-boot-autoconfigure模块分析 --> ( 难度等级: [0.0622, 0.0622) || 挂载数据: 无 ) +│ │ │ │ └── Spring Boot Conditional注解分析 --> ( 难度等级: [0.0622, 0.0622) || 挂载数据: blog: 4 ) +│ │ │ ├── Dubbo Spring Boot Starter --> ( 难度等级: [0.0622, 0.0624) || 挂载数据: 无 ) +│ │ │ │ ├── Dubbo Spring Boot Starter简介 --> ( 难度等级: [0.0622, 0.0623) || 挂载数据: blog: 10 ) +│ │ │ │ ├── Dubbo Initializr及sample --> ( 难度等级: [0.0623, 0.0623) || 挂载数据: 无 ) +│ │ │ │ ├── dubbo-spring-boot-autoconfigure模块 --> ( 难度等级: [0.0623, 0.0623) || 挂载数据: 无 ) +│ │ │ │ └── dubbo-spring-boot-actuator模块 --> ( 难度等级: [0.0623, 0.0624) || 挂载数据: blog: 1 ) +│ │ │ ├── Spring Cloud栈 --> ( 难度等级: [0.0624, 0.0625) || 挂载数据: 无 ) +│ │ │ │ ├── Spring Cloud技术栈总览 --> ( 难度等级: [0.0624, 0.0624) || 挂载数据: blog: 5 ) +│ │ │ │ └── spring-cloud-scaffold基础库集合 --> ( 难度等级: [0.0624, 0.0625) || 挂载数据: blog: 1 ) +│ │ │ └── 基于Maven Archetype的脚手架 --> ( 难度等级: [0.0625, 0.0626) || 挂载数据: 无 ) +│ │ │ ├── Maven Archetype --> ( 难度等级: [0.0625, 0.0625) || 挂载数据: blog: 10 ) +│ │ │ ├── 脚手架的搭建 --> ( 难度等级: [0.0625, 0.0626) || 挂载数据: 无 ) +│ │ │ └── 生成脚手架 --> ( 难度等级: [0.0626, 0.0626) || 挂载数据: 无 ) +│ │ ├── 微服务稳定性保证的常用手段 --> ( 难度等级: [0.0626, 0.0631) || 挂载数据: 无 ) +│ │ │ ├── 微服务的稳定性 --> ( 难度等级: [0.0626, 0.0628) || 挂载数据: 无 ) +│ │ │ ├── 高可用 --> ( 难度等级: [0.0628, 0.063) || 挂载数据: 无 ) +│ │ │ │ ├── 限流原理与实现 --> ( 难度等级: [0.0628, 0.0629) || 挂载数据: 无 ) +│ │ │ │ └── 断路器原理与实现 --> ( 难度等级: [0.0629, 0.063) || 挂载数据: 无 ) +│ │ │ └── 高并发 --> ( 难度等级: [0.063, 0.0631) || 挂载数据: blog: 1 ) +│ │ │ ├── 异步 --> ( 难度等级: [0.063, 0.0631) || 挂载数据: 无 ) +│ │ │ └── 缓存 --> ( 难度等级: [0.0631, 0.0631) || 挂载数据: 无 ) +│ │ ├── 微服务下如何保证事务的一致性 --> ( 难度等级: [0.0631, 0.0637) || 挂载数据: 无 ) +│ │ │ ├── 从本地事务到分布式事务的演变 --> ( 难度等级: [0.0631, 0.0633) || 挂载数据: 无 ) +│ │ │ ├── 强一致性解决方案 --> ( 难度等级: [0.0633, 0.0635) || 挂载数据: 无 ) +│ │ │ │ ├── 二阶段提交协议 --> ( 难度等级: [0.0633, 0.0634) || 挂载数据: 无 ) +│ │ │ │ └── 三阶段提交协议 --> ( 难度等级: [0.0634, 0.0635) || 挂载数据: 无 ) +│ │ │ └── 最终一致性解决方案 --> ( 难度等级: [0.0635, 0.0637) || 挂载数据: 无 ) +│ │ │ ├── TCC模式 --> ( 难度等级: [0.0635, 0.0636) || 挂载数据: 无 ) +│ │ │ └── 补偿模式 --> ( 难度等级: [0.0636, 0.0637) || 挂载数据: 无 ) +│ │ ├── 百亿流量微服务网关的设计与实现 --> ( 难度等级: [0.0637, 0.0642) || 挂载数据: 无 ) +│ │ │ ├── 开源网关的分析与调研 --> ( 难度等级: [0.0637, 0.0639) || 挂载数据: 无 ) +│ │ │ │ ├── 常见的开源网关介绍 --> ( 难度等级: [0.0637, 0.0638) || 挂载数据: 无 ) +│ │ │ │ └── 四大开源网关的对比分析 --> ( 难度等级: [0.0638, 0.0639) || 挂载数据: 无 ) +│ │ │ └── 百亿流量交易系统API网关设计 --> ( 难度等级: [0.0639, 0.0642) || 挂载数据: 无 ) +│ │ │ └── 业务网关的设计与最佳实践 --> ( 难度等级: [0.0639, 0.0642) || 挂载数据: 无 ) +│ │ ├── 微服务编排 --> ( 难度等级: [0.0642, 0.0647) || 挂载数据: 无 ) +│ │ │ ├── Netflix Conductor --> ( 难度等级: [0.0642, 0.0643) || 挂载数据: 无 ) +│ │ │ ├── Netflix Conductor的架构 --> ( 难度等级: [0.0643, 0.0644) || 挂载数据: 无 ) +│ │ │ ├── Conductor的使用案例 --> ( 难度等级: [0.0644, 0.0646) || 挂载数据: 无 ) +│ │ │ └── Netflix Conductor源码分析 --> ( 难度等级: [0.0646, 0.0647) || 挂载数据: 无 ) +│ │ │ ├── Client层源码分析 --> ( 难度等级: [0.0646, 0.0646) || 挂载数据: blog: 1 ) +│ │ │ ├── Server端源码分析 --> ( 难度等级: [0.0646, 0.0647) || 挂载数据: 无 ) +│ │ │ └── core端源码分析 --> ( 难度等级: [0.0647, 0.0647) || 挂载数据: 无 ) +│ │ ├── 微服务数据抽取与统计 --> ( 难度等级: [0.0647, 0.0652) || 挂载数据: 无 ) +│ │ │ ├── 案例小故事 --> ( 难度等级: [0.0647, 0.0648) || 挂载数据: 无 ) +│ │ │ ├── 数据仓库概述 --> ( 难度等级: [0.0648, 0.0649) || 挂载数据: 无 ) +│ │ │ │ ├── 什么是数据仓库 --> ( 难度等级: [0.0648, 0.0648) || 挂载数据: 无 ) +│ │ │ │ ├── 数据仓库架构 --> ( 难度等级: [0.0648, 0.0649) || 挂载数据: 无 ) +│ │ │ │ ├── 数据仓库建模方法 --> ( 难度等级: [0.0649, 0.0649) || 挂载数据: 无 ) +│ │ │ │ └── 数据统计 --> ( 难度等级: [0.0649, 0.0649) || 挂载数据: blog: 1 ) +│ │ │ ├── 数据仓库工具Hive --> ( 难度等级: [0.0649, 0.065) || 挂载数据: 无 ) +│ │ │ │ ├── 安装Hive --> ( 难度等级: [0.0649, 0.0649) || 挂载数据: blog: 2 ) +│ │ │ │ ├── Hive数据库 --> ( 难度等级: [0.0649, 0.065) || 挂载数据: blog: 9 ) +│ │ │ │ └── Hive表 --> ( 难度等级: [0.065, 0.065) || 挂载数据: 无 ) +│ │ │ ├── 使用Sqoop抽取数据 --> ( 难度等级: [0.065, 0.0651) || 挂载数据: 无 ) +│ │ │ │ ├── 安装Sqoop --> ( 难度等级: [0.065, 0.0651) || 挂载数据: 无 ) +│ │ │ │ └── 将MySQL表数据导入Hive表 --> ( 难度等级: [0.0651, 0.0651) || 挂载数据: blog: 4 ) +│ │ │ └── ETL作业调度 --> ( 难度等级: [0.0651, 0.0652) || 挂载数据: blog: 1 ) +│ │ ├── 微服务双活体系建设 --> ( 难度等级: [0.0652, 0.0657) || 挂载数据: 无 ) +│ │ │ ├── 系统高可用 --> ( 难度等级: [0.0652, 0.0655) || 挂载数据: 无 ) +│ │ │ └── 双活数据中心 --> ( 难度等级: [0.0655, 0.0657) || 挂载数据: 无 ) +│ │ │ ├── 单机房部署 --> ( 难度等级: [0.0655, 0.0656) || 挂载数据: 无 ) +│ │ │ ├── 双机房部署 --> ( 难度等级: [0.0656, 0.0656) || 挂载数据: 无 ) +│ │ │ └── 基于支付场景的双活体系建设 --> ( 难度等级: [0.0656, 0.0657) || 挂载数据: 无 ) +│ │ ├── 基于支付场景下的微服务改造与性能优化 --> ( 难度等级: [0.0657, 0.0663) || 挂载数据: 无 ) +│ │ │ ├── 支付场景的介绍 --> ( 难度等级: [0.0657, 0.0659) || 挂载数据: 无 ) +│ │ │ ├── 从代码层面提升微服务架构的性能 --> ( 难度等级: [0.0659, 0.0661) || 挂载数据: 无 ) +│ │ │ │ ├── 从代码和设计的角度看 --> ( 难度等级: [0.0659, 0.066) || 挂载数据: 无 ) +│ │ │ │ └── 从整体架构的角度看 --> ( 难度等级: [0.066, 0.0661) || 挂载数据: 无 ) +│ │ │ └── 微服务架构中常见的一些故障分析技巧 --> ( 难度等级: [0.0661, 0.0663) || 挂载数据: 无 ) +│ │ ├── 遗留系统的微服务架构改造 --> ( 难度等级: [0.0663, 0.0668) || 挂载数据: 无 ) +│ │ │ ├── 代码分层结构的转变 --> ( 难度等级: [0.0663, 0.0664) || 挂载数据: 无 ) +│ │ │ ├── 遗留系统的债券与思考 --> ( 难度等级: [0.0664, 0.0665) || 挂载数据: 无 ) +│ │ │ ├── 从单体系统拆分服务的方法论 --> ( 难度等级: [0.0665, 0.0666) || 挂载数据: 无 ) +│ │ │ └── 遗留系统的微服务架构改造 --> ( 难度等级: [0.0666, 0.0668) || 挂载数据: 无 ) +│ │ │ ├── 从代码重构开始 --> ( 难度等级: [0.0666, 0.0667) || 挂载数据: 无 ) +│ │ │ ├── 拆分服务需要面向服务进行架构设计 --> ( 难度等级: [0.0667, 0.0667) || 挂载数据: 无 ) +│ │ │ ├── 改造是一个渐进的过程 --> ( 难度等级: [0.0667, 0.0667) || 挂载数据: 无 ) +│ │ │ ├── 单元测试是基石 --> ( 难度等级: [0.0667, 0.0667) || 挂载数据: 无 ) +│ │ │ ├── 面向失败的设计 --> ( 难度等级: [0.0667, 0.0667) || 挂载数据: 无 ) +│ │ │ ├── 前后端分离 --> ( 难度等级: [0.0667, 0.0667) || 挂载数据: blog: 1 ) +│ │ │ ├── 共享现有数据库 --> ( 难度等级: [0.0667, 0.0667) || 挂载数据: 无 ) +│ │ │ ├── 灰度发布的必要性 --> ( 难度等级: [0.0667, 0.0668) || 挂载数据: 无 ) +│ │ │ └── 日志聚合与全链路监控 --> ( 难度等级: [0.0668, 0.0668) || 挂载数据: 无 ) +│ │ ├── Service Mesh详解 --> ( 难度等级: [0.0668, 0.0673) || 挂载数据: 无 ) +│ │ │ ├── Service Mesh的背景 --> ( 难度等级: [0.0668, 0.0669) || 挂载数据: 无 ) +│ │ │ ├── Service Mesh介绍 --> ( 难度等级: [0.0669, 0.067) || 挂载数据: 无 ) +│ │ │ │ ├── Service Mesh架构 --> ( 难度等级: [0.0669, 0.0669) || 挂载数据: blog: 10 ) +│ │ │ │ └── Service Mesh能做什么 --> ( 难度等级: [0.0669, 0.067) || 挂载数据: blog: 2 ) +│ │ │ ├── Service Mesh的价值 --> ( 难度等级: [0.067, 0.0671) || 挂载数据: 无 ) +│ │ │ ├── Istio详解 --> ( 难度等级: [0.0671, 0.0672) || 挂载数据: blog: 1 ) +│ │ │ │ ├── Istio架构 --> ( 难度等级: [0.0671, 0.0671) || 挂载数据: 无 ) +│ │ │ │ ├── 数据平面 --> ( 难度等级: [0.0671, 0.0671) || 挂载数据: 无 ) +│ │ │ │ ├── 控制平面 --> ( 难度等级: [0.0671, 0.0672) || 挂载数据: 无 ) +│ │ │ │ └── Isito案例 --> ( 难度等级: [0.0672, 0.0672) || 挂载数据: 无 ) +│ │ │ └── Service Mesh展望 --> ( 难度等级: [0.0672, 0.0673) || 挂载数据: 无 ) +│ │ ├── 深入理解网络 --> ( 难度等级: [0.0673, 0.0678) || 挂载数据: 无 ) +│ │ │ ├── 从国际互联网开始 --> ( 难度等级: [0.0673, 0.0674) || 挂载数据: 无 ) +│ │ │ ├── NIO,一本难念的经 --> ( 难度等级: [0.0674, 0.0675) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 难懂的ByteBuffer --> ( 难度等级: [0.0674, 0.0674) || 挂载数据: 无 ) +│ │ │ │ ├── 晦涩的“非阻塞” --> ( 难度等级: [0.0674, 0.0674) || 挂载数据: 无 ) +│ │ │ │ └── 复杂的Reactor模型 --> ( 难度等级: [0.0674, 0.0675) || 挂载数据: 无 ) +│ │ │ ├── AIO,大道至简的设计与苦涩的现实 --> ( 难度等级: [0.0675, 0.0675) || 挂载数据: 无 ) +│ │ │ ├── HTTP的前世今生 --> ( 难度等级: [0.0675, 0.0676) || 挂载数据: 无 ) +│ │ │ │ ├── HTTP的设计思路 --> ( 难度等级: [0.0675, 0.0676) || 挂载数据: 无 ) +│ │ │ │ ├── HTTP如何保持状态 --> ( 难度等级: [0.0676, 0.0676) || 挂载数据: blog: 10 ) +│ │ │ │ ├── Session的秘密 --> ( 难度等级: [0.0676, 0.0676) || 挂载数据: blog: 2 ) +│ │ │ │ ├── 再谈Token --> ( 难度等级: [0.0676, 0.0676) || 挂载数据: 无 ) +│ │ │ │ └── 分布式Session --> ( 难度等级: [0.0676, 0.0676) || 挂载数据: 无 ) +│ │ │ ├── 分布式系统的基石:TCP/IP --> ( 难度等级: [0.0676, 0.0677) || 挂载数据: blog: 1 ) +│ │ │ └── 从CDN到SD-WAN --> ( 难度等级: [0.0677, 0.0678) || 挂载数据: 无 ) +│ │ │ ├── 互联互不通的运营商网络 --> ( 难度等级: [0.0677, 0.0677) || 挂载数据: 无 ) +│ │ │ ├── 双线机房的出现 --> ( 难度等级: [0.0677, 0.0678) || 挂载数据: 无 ) +│ │ │ ├── CDN的作用 --> ( 难度等级: [0.0678, 0.0678) || 挂载数据: blog: 2 ) +│ │ │ └── SD-WAN技术的诞生 --> ( 难度等级: [0.0678, 0.0678) || 挂载数据: 无 ) +│ │ ├── 分布式系统的经典理论 --> ( 难度等级: [0.0678, 0.0683) || 挂载数据: 无 ) +│ │ │ ├── 从分布式系统的设计理念说起 --> ( 难度等级: [0.0678, 0.0679) || 挂载数据: 无 ) +│ │ │ ├── 分布式系统的一致性原理 --> ( 难度等级: [0.0679, 0.068) || 挂载数据: 无 ) +│ │ │ ├── 分布式系统的基石之ZooKeeper --> ( 难度等级: [0.068, 0.0681) || 挂载数据: 无 ) +│ │ │ │ ├── ZooKeeper的原理与功能 --> ( 难度等级: [0.068, 0.068) || 挂载数据: blog: 10 ) +│ │ │ │ └── ZooKeeper的应用场景案例分析 --> ( 难度等级: [0.068, 0.0681) || 挂载数据: blog: 10 ) +│ │ │ ├── 经典的CAP理论 --> ( 难度等级: [0.0681, 0.0682) || 挂载数据: blog: 2 ) +│ │ │ ├── BASE准则,一个影响深远的指导思想 --> ( 难度等级: [0.0682, 0.0682) || 挂载数据: 无 ) +│ │ │ └── 重新认识分布式事务 --> ( 难度等级: [0.0682, 0.0683) || 挂载数据: 无 ) +│ │ │ ├── 数据库单机事务的实现原理 --> ( 难度等级: [0.0682, 0.0683) || 挂载数据: blog: 1 ) +│ │ │ ├── 经典的X/OpenDTP事务模型 --> ( 难度等级: [0.0683, 0.0683) || 挂载数据: 无 ) +│ │ │ └── 互联网中的分布式事务解决方案 --> ( 难度等级: [0.0683, 0.0683) || 挂载数据: blog: 10 ) +│ │ ├── 聊聊RPC --> ( 难度等级: [0.0683, 0.0688) || 挂载数据: 无 ) +│ │ │ ├── 从IPC通信说起 --> ( 难度等级: [0.0683, 0.0685) || 挂载数据: 无 ) +│ │ │ ├── 古老又有生命力的RPC --> ( 难度等级: [0.0685, 0.0686) || 挂载数据: 无 ) +│ │ │ ├── 从RPC到服务治理框架 --> ( 难度等级: [0.0686, 0.0687) || 挂载数据: 无 ) +│ │ │ └── 基于ZeroC Ice的微服务架构指南 --> ( 难度等级: [0.0687, 0.0688) || 挂载数据: 无 ) +│ │ │ ├── ZeroC Ice的前世今生 --> ( 难度等级: [0.0687, 0.0688) || 挂载数据: blog: 2 ) +│ │ │ ├── ZeroC Ice微服务架构指南 --> ( 难度等级: [0.0688, 0.0688) || 挂载数据: 无 ) +│ │ │ └── 微服务架构概述 --> ( 难度等级: [0.0688, 0.0688) || 挂载数据: 无 ) +│ │ │ ├── 微服务架构兴起的原因 --> ( 难度等级: [0.0688, 0.0688) || 挂载数据: 无 ) +│ │ │ ├── 不得不提的容器技术 --> ( 难度等级: [0.0688, 0.0688) || 挂载数据: 无 ) +│ │ │ └── 如何全面理解微服务架构 --> ( 难度等级: [0.0688, 0.0688) || 挂载数据: blog: 10 ) +│ │ ├── 深入浅析内存 --> ( 难度等级: [0.0688, 0.0694) || 挂载数据: 无 ) +│ │ │ ├── 你所不知道的内存知识 --> ( 难度等级: [0.0688, 0.069) || 挂载数据: 无 ) +│ │ │ │ ├── 复杂的CPU与单纯的内存 --> ( 难度等级: [0.0688, 0.0689) || 挂载数据: blog: 10 ) +│ │ │ │ └── 深入理解不一致性内存 --> ( 难度等级: [0.0689, 0.069) || 挂载数据: 无 ) +│ │ │ ├── 内存计算技术的前世今生 --> ( 难度等级: [0.069, 0.0691) || 挂载数据: 无 ) +│ │ │ ├── 内存缓存技术分析 --> ( 难度等级: [0.0691, 0.0692) || 挂载数据: 无 ) +│ │ │ │ ├── 缓存概述 --> ( 难度等级: [0.0691, 0.0691) || 挂载数据: 无 ) +│ │ │ │ ├── 缓存实现的几种方式 --> ( 难度等级: [0.0691, 0.0692) || 挂载数据: blog: 1 ) +│ │ │ │ ├── Memcache的内存管理技术 --> ( 难度等级: [0.0692, 0.0692) || 挂载数据: blog: 4 ) +│ │ │ │ └── Redis的独特之处 --> ( 难度等级: [0.0692, 0.0692) || 挂载数据: 无 ) +│ │ │ └── 内存计算产品分析 --> ( 难度等级: [0.0692, 0.0694) || 挂载数据: blog: 1 ) +│ │ │ ├── SAP HANA --> ( 难度等级: [0.0692, 0.0693) || 挂载数据: blog: 1 ) +│ │ │ ├── Hazelcast --> ( 难度等级: [0.0693, 0.0693) || 挂载数据: 无 ) +│ │ │ └── VoltDB --> ( 难度等级: [0.0693, 0.0694) || 挂载数据: 无 ) +│ │ ├── 深入解析分布式文件存储 --> ( 难度等级: [0.0694, 0.0699) || 挂载数据: 无 ) +│ │ │ ├── 数据存储进化史 --> ( 难度等级: [0.0694, 0.0694) || 挂载数据: 无 ) +│ │ │ ├── 经典的网络文件系统NFS --> ( 难度等级: [0.0694, 0.0695) || 挂载数据: 无 ) +│ │ │ ├── 高性能计算领域的分布式文件系统 --> ( 难度等级: [0.0695, 0.0696) || 挂载数据: 无 ) +│ │ │ ├── 企业级分布式文件系统GlusterFS --> ( 难度等级: [0.0696, 0.0697) || 挂载数据: 无 ) +│ │ │ ├── 创新的Linux分布式存储系统——Ceph --> ( 难度等级: [0.0697, 0.0697) || 挂载数据: blog: 1 ) +│ │ │ ├── 星际文件系统IPFS --> ( 难度等级: [0.0697, 0.0698) || 挂载数据: 无 ) +│ │ │ └── 软件定义存储 --> ( 难度等级: [0.0698, 0.0699) || 挂载数据: blog: 1 ) +│ │ ├── 聊聊分布式计算 --> ( 难度等级: [0.0699, 0.0704) || 挂载数据: 无 ) +│ │ │ ├── 不得不说的Actor模型 --> ( 难度等级: [0.0699, 0.07) || 挂载数据: 无 ) +│ │ │ ├── 初识Akka --> ( 难度等级: [0.07, 0.0701) || 挂载数据: 无 ) +│ │ │ ├── 适用面很广的Storm --> ( 难度等级: [0.0701, 0.0703) || 挂载数据: blog: 2 ) +│ │ │ └── MapReduce及其引发的新世界 --> ( 难度等级: [0.0703, 0.0704) || 挂载数据: blog: 4 ) +│ │ ├── 全文检索与消息队列中间件 --> ( 难度等级: [0.0704, 0.0709) || 挂载数据: 无 ) +│ │ │ ├── 全文检索 --> ( 难度等级: [0.0704, 0.0707) || 挂载数据: 无 ) +│ │ │ │ ├── Lucene --> ( 难度等级: [0.0704, 0.0705) || 挂载数据: blog: 1 ) +│ │ │ │ ├── Solr --> ( 难度等级: [0.0705, 0.0706) || 挂载数据: 无 ) +│ │ │ │ └── ElasticSearch --> ( 难度等级: [0.0706, 0.0707) || 挂载数据: blog: 5 ) +│ │ │ └── 消息队列 --> ( 难度等级: [0.0707, 0.0709) || 挂载数据: blog: 6 ) +│ │ │ ├── JEE专属的JMS --> ( 难度等级: [0.0707, 0.0707) || 挂载数据: blog: 2 ) +│ │ │ ├── 生生不息的ActiveMQ --> ( 难度等级: [0.0707, 0.0708) || 挂载数据: blog: 10 ) +│ │ │ ├── RabbitMQ --> ( 难度等级: [0.0708, 0.0708) || 挂载数据: blog: 10 ) +│ │ │ └── Kafka --> ( 难度等级: [0.0708, 0.0709) || 挂载数据: blog: 10 ) +│ │ └── 架构实践 --> ( 难度等级: [0.0709, 0.0714) || 挂载数据: 无 ) +│ │ ├── 身边购平台实践 --> ( 难度等级: [0.0709, 0.0712) || 挂载数据: blog: 1 ) +│ │ └── DIY一个有难度的分布式集群 --> ( 难度等级: [0.0712, 0.0714) || 挂载数据: blog: 2 ) +│ ├── 编程语言 --> ( 难度等级: [0.0714, 0.1071) || 挂载数据: 无 ) +│ │ ├── Golang --> ( 难度等级: [0.0714, 0.0729) || 挂载数据: 无 ) +│ │ ├── 入门 --> ( 难度等级: [0.0729, 0.0743) || 挂载数据: 无 ) +│ │ │ ├── hello,world --> ( 难度等级: [0.0729, 0.073) || 挂载数据: blog: 1 ) +│ │ │ ├── 命令行参数 --> ( 难度等级: [0.073, 0.0732) || 挂载数据: 无 ) +│ │ │ ├── 找出重复行 --> ( 难度等级: [0.0732, 0.0734) || 挂载数据: 无 ) +│ │ │ ├── GIF动画 --> ( 难度等级: [0.0734, 0.0736) || 挂载数据: 无 ) +│ │ │ ├── 获取一个URL --> ( 难度等级: [0.0736, 0.0737) || 挂载数据: 无 ) +│ │ │ ├── 并发获取多个URL --> ( 难度等级: [0.0737, 0.0739) || 挂载数据: 无 ) +│ │ │ ├── 一个Web服务器 --> ( 难度等级: [0.0739, 0.0741) || 挂载数据: 无 ) +│ │ │ └── 其他内容 --> ( 难度等级: [0.0741, 0.0743) || 挂载数据: 无 ) +│ │ ├── 程序结构 --> ( 难度等级: [0.0743, 0.0757) || 挂载数据: 无 ) +│ │ │ ├── 名称 --> ( 难度等级: [0.0743, 0.0745) || 挂载数据: 无 ) +│ │ │ ├── 声明 --> ( 难度等级: [0.0745, 0.0747) || 挂载数据: 无 ) +│ │ │ ├── 变量 --> ( 难度等级: [0.0747, 0.0749) || 挂载数据: 无 ) +│ │ │ │ ├── 短变量声明 --> ( 难度等级: [0.0747, 0.0747) || 挂载数据: 无 ) +│ │ │ │ ├── 指针 --> ( 难度等级: [0.0747, 0.0748) || 挂载数据: 无 ) +│ │ │ │ ├── new函数 --> ( 难度等级: [0.0748, 0.0748) || 挂载数据: blog: 1 ) +│ │ │ │ └── 变量的生命周期 --> ( 难度等级: [0.0748, 0.0749) || 挂载数据: 无 ) +│ │ │ ├── 赋值 --> ( 难度等级: [0.0749, 0.0751) || 挂载数据: 无 ) +│ │ │ │ ├── 多重赋值 --> ( 难度等级: [0.0749, 0.075) || 挂载数据: 无 ) +│ │ │ │ └── 可赋值性 --> ( 难度等级: [0.075, 0.0751) || 挂载数据: 无 ) +│ │ │ ├── 类型声明 --> ( 难度等级: [0.0751, 0.0753) || 挂载数据: 无 ) +│ │ │ ├── 包和文件 --> ( 难度等级: [0.0753, 0.0755) || 挂载数据: 无 ) +│ │ │ │ ├── 导入 --> ( 难度等级: [0.0753, 0.0754) || 挂载数据: 无 ) +│ │ │ │ │ ├── 远程导入 --> ( 难度等级: [0.0753, 0.0754) || 挂载数据: blog: 1 ) +│ │ │ │ │ └── 命名导入 --> ( 难度等级: [0.0754, 0.0754) || 挂载数据: 无 ) +│ │ │ │ └── 包初始化 --> ( 难度等级: [0.0754, 0.0755) || 挂载数据: 无 ) +│ │ │ └── 作用域 --> ( 难度等级: [0.0755, 0.0757) || 挂载数据: 无 ) +│ │ ├── 基本数据 --> ( 难度等级: [0.0757, 0.0771) || 挂载数据: 无 ) +│ │ │ ├── 整数 --> ( 难度等级: [0.0757, 0.076) || 挂载数据: 无 ) +│ │ │ ├── 浮点数 --> ( 难度等级: [0.076, 0.0762) || 挂载数据: 无 ) +│ │ │ ├── 复数 --> ( 难度等级: [0.0762, 0.0764) || 挂载数据: 无 ) +│ │ │ ├── 布尔值 --> ( 难度等级: [0.0764, 0.0767) || 挂载数据: 无 ) +│ │ │ ├── 字符串 --> ( 难度等级: [0.0767, 0.0769) || 挂载数据: 无 ) +│ │ │ │ ├── 字符串字面量 --> ( 难度等级: [0.0767, 0.0767) || 挂载数据: 无 ) +│ │ │ │ ├── Unicode --> ( 难度等级: [0.0767, 0.0768) || 挂载数据: 无 ) +│ │ │ │ ├── UTF-8 --> ( 难度等级: [0.0768, 0.0768) || 挂载数据: 无 ) +│ │ │ │ ├── 字符串和字节slice --> ( 难度等级: [0.0768, 0.0769) || 挂载数据: blog: 1 ) +│ │ │ │ └── 字符串和数字的相互转换 --> ( 难度等级: [0.0769, 0.0769) || 挂载数据: 无 ) +│ │ │ └── 常量 --> ( 难度等级: [0.0769, 0.0771) || 挂载数据: 无 ) +│ │ │ ├── 常量生成器iota --> ( 难度等级: [0.0769, 0.077) || 挂载数据: 无 ) +│ │ │ └── 无类型常量 --> ( 难度等级: [0.077, 0.0771) || 挂载数据: 无 ) +│ │ ├── 复合数据类型 --> ( 难度等级: [0.0771, 0.0786) || 挂载数据: 无 ) +│ │ │ ├── 数组 --> ( 难度等级: [0.0771, 0.0774) || 挂载数据: 无 ) +│ │ │ ├── slice --> ( 难度等级: [0.0774, 0.0776) || 挂载数据: 无 ) +│ │ │ │ ├── append函数 --> ( 难度等级: [0.0774, 0.0775) || 挂载数据: 无 ) +│ │ │ │ └── slice就地修改 --> ( 难度等级: [0.0775, 0.0776) || 挂载数据: 无 ) +│ │ │ ├── map --> ( 难度等级: [0.0776, 0.0779) || 挂载数据: blog: 7 ) +│ │ │ ├── 结构体 --> ( 难度等级: [0.0779, 0.0781) || 挂载数据: 无 ) +│ │ │ │ ├── 结构体字面量 --> ( 难度等级: [0.0779, 0.0779) || 挂载数据: 无 ) +│ │ │ │ ├── 结构体比较 --> ( 难度等级: [0.0779, 0.078) || 挂载数据: blog: 1 ) +│ │ │ │ └── 结构体嵌套和匿名成员 --> ( 难度等级: [0.078, 0.0781) || 挂载数据: 无 ) +│ │ │ ├── JSON --> ( 难度等级: [0.0781, 0.0783) || 挂载数据: 无 ) +│ │ │ └── 文本和HTML模板 --> ( 难度等级: [0.0783, 0.0786) || 挂载数据: 无 ) +│ │ ├── 函数 --> ( 难度等级: [0.0786, 0.08) || 挂载数据: 无 ) +│ │ │ ├── 函数声明 --> ( 难度等级: [0.0786, 0.0786) || 挂载数据: 无 ) +│ │ │ ├── 递归 --> ( 难度等级: [0.0786, 0.0787) || 挂载数据: 无 ) +│ │ │ ├── 多返回值 --> ( 难度等级: [0.0787, 0.0788) || 挂载数据: 无 ) +│ │ │ ├── 错误 --> ( 难度等级: [0.0788, 0.0788) || 挂载数据: 无 ) +│ │ │ │ ├── 错误处理策略 --> ( 难度等级: [0.0788, 0.0788) || 挂载数据: 无 ) +│ │ │ │ └── 文件结束标识 --> ( 难度等级: [0.0788, 0.0788) || 挂载数据: 无 ) +│ │ │ ├── 函数变量 --> ( 难度等级: [0.0788, 0.0789) || 挂载数据: 无 ) +│ │ │ ├── 匿名函数 --> ( 难度等级: [0.0789, 0.079) || 挂载数据: 无 ) +│ │ │ ├── 变长函数 --> ( 难度等级: [0.079, 0.079) || 挂载数据: 无 ) +│ │ │ ├── 延迟函数调用 --> ( 难度等级: [0.079, 0.0791) || 挂载数据: 无 ) +│ │ │ ├── 宕机 --> ( 难度等级: [0.0791, 0.0792) || 挂载数据: 无 ) +│ │ │ ├── 恢复 --> ( 难度等级: [0.0792, 0.0793) || 挂载数据: 无 ) +│ │ │ ├── 基本语法 --> ( 难度等级: [0.0793, 0.0793) || 挂载数据: 无 ) +│ │ │ ├── 参数和返回值的内存布局 --> ( 难度等级: [0.0793, 0.0794) || 挂载数据: 无 ) +│ │ │ ├── 函数中的局部变量 --> ( 难度等级: [0.0794, 0.0795) || 挂载数据: 无 ) +│ │ │ ├── 调用其他函数 --> ( 难度等级: [0.0795, 0.0795) || 挂载数据: blog: 1 ) +│ │ │ ├── 宏函数 --> ( 难度等级: [0.0795, 0.0796) || 挂载数据: 无 ) +│ │ │ ├── 函数调用规范 --> ( 难度等级: [0.0796, 0.0797) || 挂载数据: 无 ) +│ │ │ ├── 高级汇编语言 --> ( 难度等级: [0.0797, 0.0797) || 挂载数据: 无 ) +│ │ │ ├── PCDATA和FUNCDATA --> ( 难度等级: [0.0797, 0.0798) || 挂载数据: 无 ) +│ │ │ ├── 方法函数 --> ( 难度等级: [0.0798, 0.0799) || 挂载数据: 无 ) +│ │ │ ├── 递归函数: 1到n求和 --> ( 难度等级: [0.0799, 0.0799) || 挂载数据: 无 ) +│ │ │ └── 闭包函数 --> ( 难度等级: [0.0799, 0.08) || 挂载数据: 无 ) +│ │ ├── 方法 --> ( 难度等级: [0.08, 0.0814) || 挂载数据: 无 ) +│ │ │ ├── 方法声明 --> ( 难度等级: [0.08, 0.0802) || 挂载数据: 无 ) +│ │ │ ├── 指针接收者的方法 --> ( 难度等级: [0.0802, 0.0805) || 挂载数据: 无 ) +│ │ │ ├── 通过结构体内嵌组成类型 --> ( 难度等级: [0.0805, 0.0807) || 挂载数据: 无 ) +│ │ │ ├── 方法变量与表达式 --> ( 难度等级: [0.0807, 0.081) || 挂载数据: blog: 1 ) +│ │ │ ├── 示例:位向量 --> ( 难度等级: [0.081, 0.0812) || 挂载数据: 无 ) +│ │ │ └── 封装 --> ( 难度等级: [0.0812, 0.0814) || 挂载数据: 无 ) +│ │ ├── 接口 --> ( 难度等级: [0.0814, 0.0829) || 挂载数据: 无 ) +│ │ │ ├── 接口即约定 --> ( 难度等级: [0.0814, 0.0815) || 挂载数据: 无 ) +│ │ │ ├── 接口类型 --> ( 难度等级: [0.0815, 0.0816) || 挂载数据: 无 ) +│ │ │ ├── 实现接口 --> ( 难度等级: [0.0816, 0.0817) || 挂载数据: 无 ) +│ │ │ ├── 使用flag.Value来解析参数 --> ( 难度等级: [0.0817, 0.0818) || 挂载数据: 无 ) +│ │ │ ├── 接口值 --> ( 难度等级: [0.0818, 0.0818) || 挂载数据: 无 ) +│ │ │ ├── 使用sort.Interface来排序 --> ( 难度等级: [0.0818, 0.0819) || 挂载数据: blog: 2 ) +│ │ │ ├── http.Handler接口 --> ( 难度等级: [0.0819, 0.082) || 挂载数据: 无 ) +│ │ │ ├── error接口 --> ( 难度等级: [0.082, 0.0821) || 挂载数据: blog: 2 ) +│ │ │ ├── 类型断言 --> ( 难度等级: [0.0821, 0.0822) || 挂载数据: 无 ) +│ │ │ ├── 使用类型断言来识别错误 --> ( 难度等级: [0.0822, 0.0823) || 挂载数据: 无 ) +│ │ │ ├── 通过接口类型断言来查询特性 --> ( 难度等级: [0.0823, 0.0824) || 挂载数据: 无 ) +│ │ │ ├── 类型分支 --> ( 难度等级: [0.0824, 0.0824) || 挂载数据: 无 ) +│ │ │ ├── 一些建议 --> ( 难度等级: [0.0824, 0.0825) || 挂载数据: 无 ) +│ │ │ ├── 标准库 --> ( 难度等级: [0.0825, 0.0826) || 挂载数据: 无 ) +│ │ │ │ ├── 文档与源代码 --> ( 难度等级: [0.0825, 0.0825) || 挂载数据: 无 ) +│ │ │ │ ├── 记录日志 --> ( 难度等级: [0.0825, 0.0826) || 挂载数据: 无 ) +│ │ │ │ │ ├── log包 --> ( 难度等级: [0.0825, 0.0825) || 挂载数据: blog: 3 ) +│ │ │ │ │ ├── 定制的日志记录器 --> ( 难度等级: [0.0825, 0.0826) || 挂载数据: blog: 2 ) +│ │ │ │ │ └── 结论 --> ( 难度等级: [0.0826, 0.0826) || 挂载数据: 无 ) +│ │ │ │ ├── 编码解码 --> ( 难度等级: [0.0826, 0.0826) || 挂载数据: 无 ) +│ │ │ │ │ ├── 解码JSON --> ( 难度等级: [0.0826, 0.0826) || 挂载数据: 无 ) +│ │ │ │ │ └── 编码JSON --> ( 难度等级: [0.0826, 0.0826) || 挂载数据: blog: 2 ) +│ │ │ │ └── 输入和输出 --> ( 难度等级: [0.0826, 0.0826) || 挂载数据: 无 ) +│ │ │ │ ├── Writer和Reader接口 --> ( 难度等级: [0.0826, 0.0826) || 挂载数据: 无 ) +│ │ │ │ ├── 整合并完成工作 --> ( 难度等级: [0.0826, 0.0826) || 挂载数据: blog: 2 ) +│ │ │ │ └── 简单的curl --> ( 难度等级: [0.0826, 0.0826) || 挂载数据: 无 ) +│ │ │ ├── 实现 --> ( 难度等级: [0.0826, 0.0827) || 挂载数据: 无 ) +│ │ │ ├── 方法集 --> ( 难度等级: [0.0827, 0.0828) || 挂载数据: 无 ) +│ │ │ └── 多态 --> ( 难度等级: [0.0828, 0.0829) || 挂载数据: 无 ) +│ │ ├── goroutine和通道 --> ( 难度等级: [0.0829, 0.0843) || 挂载数据: 无 ) +│ │ │ ├── goroutine --> ( 难度等级: [0.0829, 0.0831) || 挂载数据: blog: 1 ) +│ │ │ ├── 通道 --> ( 难度等级: [0.0831, 0.0834) || 挂载数据: 无 ) +│ │ │ │ ├── 无缓冲通道 --> ( 难度等级: [0.0831, 0.0832) || 挂载数据: 无 ) +│ │ │ │ ├── 管道 --> ( 难度等级: [0.0832, 0.0833) || 挂载数据: 无 ) +│ │ │ │ ├── 单向通道类型 --> ( 难度等级: [0.0833, 0.0834) || 挂载数据: 无 ) +│ │ │ │ └── 缓冲通道 --> ( 难度等级: [0.0834, 0.0834) || 挂载数据: 无 ) +│ │ │ ├── 并行循环 --> ( 难度等级: [0.0834, 0.0837) || 挂载数据: 无 ) +│ │ │ ├── 使用select多路复用 --> ( 难度等级: [0.0837, 0.084) || 挂载数据: 无 ) +│ │ │ └── 取消 --> ( 难度等级: [0.084, 0.0843) || 挂载数据: 无 ) +│ │ ├── 使用共享变量实现并发 --> ( 难度等级: [0.0843, 0.0857) || 挂载数据: 无 ) +│ │ │ ├── 竞态 --> ( 难度等级: [0.0843, 0.0845) || 挂载数据: 无 ) +│ │ │ ├── 互斥锁:sync.Mutex --> ( 难度等级: [0.0845, 0.0848) || 挂载数据: 无 ) +│ │ │ ├── 读写互斥锁:sync.RWMutex --> ( 难度等级: [0.0848, 0.085) || 挂载数据: 无 ) +│ │ │ ├── 内存同步 --> ( 难度等级: [0.085, 0.0852) || 挂载数据: 无 ) +│ │ │ ├── 延迟初始化:sync.Once --> ( 难度等级: [0.0852, 0.0855) || 挂载数据: 无 ) +│ │ │ └── 竞态检测器 --> ( 难度等级: [0.0855, 0.0857) || 挂载数据: 无 ) +│ │ ├── 包和go工具 --> ( 难度等级: [0.0857, 0.0871) || 挂载数据: 无 ) +│ │ │ ├── 引言 --> ( 难度等级: [0.0857, 0.0859) || 挂载数据: 无 ) +│ │ │ ├── 导入路径 --> ( 难度等级: [0.0859, 0.0861) || 挂载数据: 无 ) +│ │ │ ├── 包的声明 --> ( 难度等级: [0.0861, 0.0863) || 挂载数据: 无 ) +│ │ │ ├── 导入声明 --> ( 难度等级: [0.0863, 0.0865) || 挂载数据: 无 ) +│ │ │ ├── 空导入 --> ( 难度等级: [0.0865, 0.0867) || 挂载数据: 无 ) +│ │ │ ├── 包及其命名 --> ( 难度等级: [0.0867, 0.0869) || 挂载数据: 无 ) +│ │ │ └── go工具 --> ( 难度等级: [0.0869, 0.0871) || 挂载数据: 无 ) +│ │ │ ├── 工作空间的组织 --> ( 难度等级: [0.0869, 0.087) || 挂载数据: 无 ) +│ │ │ ├── 包的下载 --> ( 难度等级: [0.087, 0.087) || 挂载数据: 无 ) +│ │ │ ├── 包的构建 --> ( 难度等级: [0.087, 0.087) || 挂载数据: 无 ) +│ │ │ ├── 包的文档化 --> ( 难度等级: [0.087, 0.0871) || 挂载数据: 无 ) +│ │ │ ├── 内部包 --> ( 难度等级: [0.0871, 0.0871) || 挂载数据: 无 ) +│ │ │ └── 包的查询 --> ( 难度等级: [0.0871, 0.0871) || 挂载数据: 无 ) +│ │ ├── 测试 --> ( 难度等级: [0.0871, 0.0886) || 挂载数据: 无 ) +│ │ │ ├── go test工具 --> ( 难度等级: [0.0871, 0.0874) || 挂载数据: 无 ) +│ │ │ ├── Test函数 --> ( 难度等级: [0.0874, 0.0876) || 挂载数据: 无 ) +│ │ │ │ ├── 随机测试 --> ( 难度等级: [0.0874, 0.0874) || 挂载数据: 无 ) +│ │ │ │ ├── 测试命令 --> ( 难度等级: [0.0874, 0.0875) || 挂载数据: 无 ) +│ │ │ │ ├── 白盒测试 --> ( 难度等级: [0.0875, 0.0875) || 挂载数据: 无 ) +│ │ │ │ ├── 外部测试包 --> ( 难度等级: [0.0875, 0.0875) || 挂载数据: 无 ) +│ │ │ │ ├── 编写有效测试 --> ( 难度等级: [0.0875, 0.0876) || 挂载数据: 无 ) +│ │ │ │ └── 避免脆弱的测试 --> ( 难度等级: [0.0876, 0.0876) || 挂载数据: 无 ) +│ │ │ ├── 覆盖率 --> ( 难度等级: [0.0876, 0.0879) || 挂载数据: 无 ) +│ │ │ ├── Benchmark函数 --> ( 难度等级: [0.0879, 0.0881) || 挂载数据: 无 ) +│ │ │ ├── 性能剖析 --> ( 难度等级: [0.0881, 0.0883) || 挂载数据: 无 ) +│ │ │ └── Example函数 --> ( 难度等级: [0.0883, 0.0886) || 挂载数据: 无 ) +│ │ ├── 反射 --> ( 难度等级: [0.0886, 0.09) || 挂载数据: blog: 1 ) +│ │ │ ├── reflect.Type和reflect.Value --> ( 难度等级: [0.0886, 0.0888) || 挂载数据: 无 ) +│ │ │ ├── Display:一个递归的值显示器 --> ( 难度等级: [0.0888, 0.089) || 挂载数据: 无 ) +│ │ │ ├── 使用reflect.Value来设置值 --> ( 难度等级: [0.089, 0.0893) || 挂载数据: blog: 1 ) +│ │ │ ├── 访问结构体字段标签 --> ( 难度等级: [0.0893, 0.0895) || 挂载数据: 无 ) +│ │ │ ├── 显示类型的方法 --> ( 难度等级: [0.0895, 0.0898) || 挂载数据: 无 ) +│ │ │ └── 注意事项 --> ( 难度等级: [0.0898, 0.09) || 挂载数据: 无 ) +│ │ ├── 低级编程 --> ( 难度等级: [0.09, 0.0914) || 挂载数据: 无 ) +│ │ │ ├── unsafe.Sizeof、Alignof和Offsetof --> ( 难度等级: [0.09, 0.0905) || 挂载数据: 无 ) +│ │ │ ├── unsafe.Pointer --> ( 难度等级: [0.0905, 0.091) || 挂载数据: 无 ) +│ │ │ └── 使用cgo调用C代码 --> ( 难度等级: [0.091, 0.0914) || 挂载数据: 无 ) +│ │ ├── 关于Go语言的介绍 --> ( 难度等级: [0.0914, 0.0929) || 挂载数据: 无 ) +│ │ │ ├── 用Go解决现代编程难题 --> ( 难度等级: [0.0914, 0.0921) || 挂载数据: 无 ) +│ │ │ │ ├── 开发速度 --> ( 难度等级: [0.0914, 0.0916) || 挂载数据: 无 ) +│ │ │ │ ├── 并发 --> ( 难度等级: [0.0916, 0.0918) || 挂载数据: 无 ) +│ │ │ │ │ ├── 竞争状态 --> ( 难度等级: [0.0916, 0.0917) || 挂载数据: 无 ) +│ │ │ │ │ └── 锁住共享资源 --> ( 难度等级: [0.0917, 0.0918) || 挂载数据: 无 ) +│ │ │ │ │ └── 原子函数 --> ( 难度等级: [0.0917, 0.0918) || 挂载数据: 无 ) +│ │ │ │ ├── Go语言的类型系统 --> ( 难度等级: [0.0918, 0.092) || 挂载数据: 无 ) +│ │ │ │ │ ├── 用户定义的类型 --> ( 难度等级: [0.0918, 0.0918) || 挂载数据: 无 ) +│ │ │ │ │ ├── 类型的本质 --> ( 难度等级: [0.0918, 0.0919) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 内置类型 --> ( 难度等级: [0.0918, 0.0918) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 引用类型 --> ( 难度等级: [0.0918, 0.0919) || 挂载数据: blog: 1 ) +│ │ │ │ │ │ └── 结构类型 --> ( 难度等级: [0.0919, 0.0919) || 挂载数据: 无 ) +│ │ │ │ │ ├── 嵌入类型 --> ( 难度等级: [0.0919, 0.0919) || 挂载数据: 无 ) +│ │ │ │ │ └── 公开或未公开的标识符 --> ( 难度等级: [0.0919, 0.092) || 挂载数据: 无 ) +│ │ │ │ └── 内存管理 --> ( 难度等级: [0.092, 0.0921) || 挂载数据: 无 ) +│ │ │ └── 你好,Go --> ( 难度等级: [0.0921, 0.0929) || 挂载数据: 无 ) +│ │ ├── 快速开始一个Go程序 --> ( 难度等级: [0.0929, 0.0943) || 挂载数据: 无 ) +│ │ │ ├── 程序架构 --> ( 难度等级: [0.0929, 0.0932) || 挂载数据: 无 ) +│ │ │ ├── main包 --> ( 难度等级: [0.0932, 0.0936) || 挂载数据: 无 ) +│ │ │ ├── search包 --> ( 难度等级: [0.0936, 0.0939) || 挂载数据: 无 ) +│ │ │ │ ├── search.go --> ( 难度等级: [0.0936, 0.0937) || 挂载数据: blog: 6 ) +│ │ │ │ ├── feed.go --> ( 难度等级: [0.0937, 0.0938) || 挂载数据: 无 ) +│ │ │ │ └── match.go default.go --> ( 难度等级: [0.0938, 0.0939) || 挂载数据: 无 ) +│ │ │ └── RSS匹配器 --> ( 难度等级: [0.0939, 0.0943) || 挂载数据: 无 ) +│ │ ├── 打包和工具链 --> ( 难度等级: [0.0943, 0.0957) || 挂载数据: 无 ) +│ │ │ ├── 包 --> ( 难度等级: [0.0943, 0.0946) || 挂载数据: 无 ) +│ │ │ │ └── 包名惯例 --> ( 难度等级: [0.0943, 0.0946) || 挂载数据: 无 ) +│ │ │ ├── 函数init --> ( 难度等级: [0.0946, 0.0949) || 挂载数据: 无 ) +│ │ │ ├── 进一步介绍Go开发工具 --> ( 难度等级: [0.0949, 0.0951) || 挂载数据: 无 ) +│ │ │ │ ├── go vet --> ( 难度等级: [0.0949, 0.095) || 挂载数据: 无 ) +│ │ │ │ ├── Go代码格式化 --> ( 难度等级: [0.095, 0.095) || 挂载数据: 无 ) +│ │ │ │ └── Go语言的文档 --> ( 难度等级: [0.095, 0.0951) || 挂载数据: blog: 1 ) +│ │ │ ├── 与其他Go开发者合作 --> ( 难度等级: [0.0951, 0.0954) || 挂载数据: 无 ) +│ │ │ └── 依赖管理 --> ( 难度等级: [0.0954, 0.0957) || 挂载数据: 无 ) +│ │ │ ├── 第三方依赖 --> ( 难度等级: [0.0954, 0.0956) || 挂载数据: 无 ) +│ │ │ └── 对gb的介绍 --> ( 难度等级: [0.0956, 0.0957) || 挂载数据: 无 ) +│ │ ├── 并发模式 --> ( 难度等级: [0.0957, 0.0971) || 挂载数据: 无 ) +│ │ │ ├── runner --> ( 难度等级: [0.0957, 0.0962) || 挂载数据: 无 ) +│ │ │ ├── pool --> ( 难度等级: [0.0962, 0.0967) || 挂载数据: 无 ) +│ │ │ └── work --> ( 难度等级: [0.0967, 0.0971) || 挂载数据: 无 ) +│ │ ├── 测试和性能 --> ( 难度等级: [0.0971, 0.0986) || 挂载数据: 无 ) +│ │ │ ├── 单元测试 --> ( 难度等级: [0.0971, 0.0979) || 挂载数据: 无 ) +│ │ │ │ ├── 基础单元测试 --> ( 难度等级: [0.0971, 0.0973) || 挂载数据: 无 ) +│ │ │ │ ├── 表组测试 --> ( 难度等级: [0.0973, 0.0975) || 挂载数据: 无 ) +│ │ │ │ ├── 模仿调用 --> ( 难度等级: [0.0975, 0.0977) || 挂载数据: 无 ) +│ │ │ │ └── 测试服务端点 --> ( 难度等级: [0.0977, 0.0979) || 挂载数据: 无 ) +│ │ │ └── 基准测试 --> ( 难度等级: [0.0979, 0.0986) || 挂载数据: 无 ) +│ │ ├── Go与Web应用 --> ( 难度等级: [0.0986, 0.1) || 挂载数据: 无 ) +│ │ │ ├── Go与Web应用 --> ( 难度等级: [0.0986, 0.0987) || 挂载数据: 无 ) +│ │ │ │ ├── 使用Go语言构建Web应用 --> ( 难度等级: [0.0986, 0.0986) || 挂载数据: 无 ) +│ │ │ │ │ ├── Go与可扩展Web应用 --> ( 难度等级: [0.0986, 0.0986) || 挂载数据: blog: 10 ) +│ │ │ │ │ ├── Go与模块化Web应用 --> ( 难度等级: [0.0986, 0.0986) || 挂载数据: 无 ) +│ │ │ │ │ ├── Go与可维护的Web应用 --> ( 难度等级: [0.0986, 0.0986) || 挂载数据: 无 ) +│ │ │ │ │ └── Go与高性能Web应用 --> ( 难度等级: [0.0986, 0.0986) || 挂载数据: blog: 1 ) +│ │ │ │ ├── Web应用的工作原理 --> ( 难度等级: [0.0986, 0.0986) || 挂载数据: 无 ) +│ │ │ │ ├── HTTP简介 --> ( 难度等级: [0.0986, 0.0986) || 挂载数据: 无 ) +│ │ │ │ ├── Web应用的诞生 --> ( 难度等级: [0.0986, 0.0986) || 挂载数据: 无 ) +│ │ │ │ ├── HTTP请求 --> ( 难度等级: [0.0986, 0.0987) || 挂载数据: 无 ) +│ │ │ │ │ ├── 幂等的请求方法 --> ( 难度等级: [0.0986, 0.0986) || 挂载数据: 无 ) +│ │ │ │ │ ├── 浏览器对请求方法的支持 --> ( 难度等级: [0.0986, 0.0986) || 挂载数据: 无 ) +│ │ │ │ │ └── 请求首部 --> ( 难度等级: [0.0986, 0.0987) || 挂载数据: 无 ) +│ │ │ │ ├── HTTP响应 --> ( 难度等级: [0.0987, 0.0987) || 挂载数据: 无 ) +│ │ │ │ │ ├── 响应状态码 --> ( 难度等级: [0.0987, 0.0987) || 挂载数据: 无 ) +│ │ │ │ │ └── 响应首部 --> ( 难度等级: [0.0987, 0.0987) || 挂载数据: 无 ) +│ │ │ │ ├── URI --> ( 难度等级: [0.0987, 0.0987) || 挂载数据: blog: 2 ) +│ │ │ │ ├── HTTP/2简介 --> ( 难度等级: [0.0987, 0.0987) || 挂载数据: 无 ) +│ │ │ │ ├── Web应用的各个组成部分 --> ( 难度等级: [0.0987, 0.0987) || 挂载数据: 无 ) +│ │ │ │ │ ├── 处理器 --> ( 难度等级: [0.0987, 0.0987) || 挂载数据: 无 ) +│ │ │ │ │ ├── 模板引擎 --> ( 难度等级: [0.0987, 0.0987) || 挂载数据: 无 ) +│ │ │ │ │ ├── 处理请求 --> ( 难度等级: [0.0987, 0.0987) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── ResponseWriter --> ( 难度等级: [0.0987, 0.0987) || 挂载数据: 无 ) +│ │ │ │ │ │ └── cookie --> ( 难度等级: [0.0987, 0.0987) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 将cookie发送至浏览器 --> ( 难度等级: [0.0987, 0.0987) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 从浏览器里面获取cookie --> ( 难度等级: [0.0987, 0.0987) || 挂载数据: blog: 6 ) +│ │ │ │ │ │ └── 使用cookie实现闪现消息 --> ( 难度等级: [0.0987, 0.0987) || 挂载数据: 无 ) +│ │ │ │ │ ├── 内容展示 --> ( 难度等级: [0.0987, 0.0987) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── Go的模板引擎 --> ( 难度等级: [0.0987, 0.0987) || 挂载数据: 无 ) +│ │ │ │ │ │ │ ├── 对模板进行语法分析 --> ( 难度等级: [0.0987, 0.0987) || 挂载数据: blog: 1 ) +│ │ │ │ │ │ │ └── 执行模板 --> ( 难度等级: [0.0987, 0.0987) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 动作 --> ( 难度等级: [0.0987, 0.0987) || 挂载数据: 无 ) +│ │ │ │ │ │ │ ├── 条件动作 --> ( 难度等级: [0.0987, 0.0987) || 挂载数据: 无 ) +│ │ │ │ │ │ │ ├── 迭代动作 --> ( 难度等级: [0.0987, 0.0987) || 挂载数据: 无 ) +│ │ │ │ │ │ │ ├── 设置动作 --> ( 难度等级: [0.0987, 0.0987) || 挂载数据: 无 ) +│ │ │ │ │ │ │ └── 包含动作 --> ( 难度等级: [0.0987, 0.0987) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 上下文感知 --> ( 难度等级: [0.0987, 0.0987) || 挂载数据: 无 ) +│ │ │ │ │ │ │ ├── 防御XSS攻击 --> ( 难度等级: [0.0987, 0.0987) || 挂载数据: blog: 1 ) +│ │ │ │ │ │ │ └── 不对HTML进行转义 --> ( 难度等级: [0.0987, 0.0987) || 挂载数据: blog: 5 ) +│ │ │ │ │ │ ├── 嵌套模板 --> ( 难度等级: [0.0987, 0.0987) || 挂载数据: 无 ) +│ │ │ │ │ │ └── 通过块动作定义默认模板 --> ( 难度等级: [0.0987, 0.0987) || 挂载数据: 无 ) +│ │ │ │ │ └── 存储数据 --> ( 难度等级: [0.0987, 0.0987) || 挂载数据: 无 ) +│ │ │ │ │ ├── 内存存储 --> ( 难度等级: [0.0987, 0.0987) || 挂载数据: 无 ) +│ │ │ │ │ └── 文件存储 --> ( 难度等级: [0.0987, 0.0987) || 挂载数据: 无 ) +│ │ │ │ │ ├── 读取和写入CSV文件 --> ( 难度等级: [0.0987, 0.0987) || 挂载数据: blog: 6 ) +│ │ │ │ │ └── gob包 --> ( 难度等级: [0.0987, 0.0987) || 挂载数据: 无 ) +│ │ │ │ └── Hello Go --> ( 难度等级: [0.0987, 0.0987) || 挂载数据: 无 ) +│ │ │ ├── ChitChat论坛 --> ( 难度等级: [0.0987, 0.0989) || 挂载数据: 无 ) +│ │ │ │ ├── ChitChat简介 --> ( 难度等级: [0.0987, 0.0987) || 挂载数据: 无 ) +│ │ │ │ ├── 应用设计 --> ( 难度等级: [0.0987, 0.0988) || 挂载数据: 无 ) +│ │ │ │ ├── 数据模型 --> ( 难度等级: [0.0988, 0.0988) || 挂载数据: 无 ) +│ │ │ │ ├── 请求的接收与处理 --> ( 难度等级: [0.0988, 0.0988) || 挂载数据: 无 ) +│ │ │ │ │ ├── 多路复用器 --> ( 难度等级: [0.0988, 0.0988) || 挂载数据: 无 ) +│ │ │ │ │ ├── 服务静态文件 --> ( 难度等级: [0.0988, 0.0988) || 挂载数据: 无 ) +│ │ │ │ │ ├── 创建处理器函数 --> ( 难度等级: [0.0988, 0.0988) || 挂载数据: 无 ) +│ │ │ │ │ ├── 使用cookie进行访问控制 --> ( 难度等级: [0.0988, 0.0988) || 挂载数据: 无 ) +│ │ │ │ │ ├── Go的net/http标准库 --> ( 难度等级: [0.0988, 0.0988) || 挂载数据: blog: 1 ) +│ │ │ │ │ └── 使用Go构建服务器 --> ( 难度等级: [0.0988, 0.0988) || 挂载数据: 无 ) +│ │ │ │ │ ├── Go Web服务器 --> ( 难度等级: [0.0988, 0.0988) || 挂载数据: 无 ) +│ │ │ │ │ └── 通过HTTPS提供服务 --> ( 难度等级: [0.0988, 0.0988) || 挂载数据: blog: 5 ) +│ │ │ │ ├── 使用模板生成HTML响应 --> ( 难度等级: [0.0988, 0.0988) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 安装PostgreSQL --> ( 难度等级: [0.0988, 0.0988) || 挂载数据: blog: 1 ) +│ │ │ │ │ ├── 在Linux或FreeBSD系统上安装 --> ( 难度等级: [0.0988, 0.0988) || 挂载数据: 无 ) +│ │ │ │ │ ├── 在Mac OS X系统上安装 --> ( 难度等级: [0.0988, 0.0988) || 挂载数据: blog: 8 ) +│ │ │ │ │ └── 在Windows系统上安装 --> ( 难度等级: [0.0988, 0.0988) || 挂载数据: blog: 10 ) +│ │ │ │ ├── 连接数据库 --> ( 难度等级: [0.0988, 0.0989) || 挂载数据: 无 ) +│ │ │ │ ├── 启动服务器 --> ( 难度等级: [0.0989, 0.0989) || 挂载数据: 无 ) +│ │ │ │ └── Web应用运作流程回顾 --> ( 难度等级: [0.0989, 0.0989) || 挂载数据: 无 ) +│ │ │ ├── Web开发简介 --> ( 难度等级: [0.0989, 0.099) || 挂载数据: 无 ) +│ │ │ ├── 请求路由 --> ( 难度等级: [0.099, 0.0992) || 挂载数据: 无 ) +│ │ │ │ ├── httprouter --> ( 难度等级: [0.099, 0.0991) || 挂载数据: 无 ) +│ │ │ │ ├── 原理 --> ( 难度等级: [0.0991, 0.0992) || 挂载数据: 无 ) +│ │ │ │ └── 压缩检索树创建过程 --> ( 难度等级: [0.0992, 0.0992) || 挂载数据: 无 ) +│ │ │ ├── 中间件 --> ( 难度等级: [0.0992, 0.0994) || 挂载数据: 无 ) +│ │ │ │ ├── 代码泥潭 --> ( 难度等级: [0.0992, 0.0992) || 挂载数据: 无 ) +│ │ │ │ ├── 使用中间件剥离非业务逻辑 --> ( 难度等级: [0.0992, 0.0993) || 挂载数据: 无 ) +│ │ │ │ ├── 更优雅的中间件写法 --> ( 难度等级: [0.0993, 0.0993) || 挂载数据: blog: 10 ) +│ │ │ │ └── 哪些事情适合在中间件中做 --> ( 难度等级: [0.0993, 0.0994) || 挂载数据: 无 ) +│ │ │ ├── 请求校验 --> ( 难度等级: [0.0994, 0.0995) || 挂载数据: 无 ) +│ │ │ │ ├── 重构请求校验函数 --> ( 难度等级: [0.0994, 0.0994) || 挂载数据: 无 ) +│ │ │ │ └── 用请求校验器解放体力劳动 --> ( 难度等级: [0.0994, 0.0995) || 挂载数据: 无 ) +│ │ │ ├── Database和数据库打交道 --> ( 难度等级: [0.0995, 0.0997) || 挂载数据: 无 ) +│ │ │ │ ├── 从database/sql讲起 --> ( 难度等级: [0.0995, 0.0996) || 挂载数据: blog: 4 ) +│ │ │ │ ├── 提高生产效率的ORM和 --> ( 难度等级: [0.0996, 0.0996) || 挂载数据: 无 ) +│ │ │ │ └── 脆弱的数据库 --> ( 难度等级: [0.0996, 0.0997) || 挂载数据: blog: 4 ) +│ │ │ ├── 服务流量限制 --> ( 难度等级: [0.0997, 0.0998) || 挂载数据: 无 ) +│ │ │ │ ├── 常见的流量限制手段 --> ( 难度等级: [0.0997, 0.0998) || 挂载数据: 无 ) +│ │ │ │ └── 服务瓶颈和QoS --> ( 难度等级: [0.0998, 0.0998) || 挂载数据: 无 ) +│ │ │ └── 灰度发布和A/B测试 --> ( 难度等级: [0.0998, 0.1) || 挂载数据: 无 ) +│ │ │ ├── 通过分批次部署实现灰度发布 --> ( 难度等级: [0.0998, 0.0999) || 挂载数据: 无 ) +│ │ │ ├── 通过业务规则进行灰度发布 --> ( 难度等级: [0.0999, 0.0999) || 挂载数据: 无 ) +│ │ │ └── 如何实现一套灰度发布系统 --> ( 难度等级: [0.0999, 0.1) || 挂载数据: 无 ) +│ │ ├── 语言基础 --> ( 难度等级: [0.1, 0.1014) || 挂载数据: 无 ) +│ │ │ ├── Go语言创世纪 --> ( 难度等级: [0.1, 0.1002) || 挂载数据: 无 ) +│ │ │ │ ├── 来自贝尔实验室特有基因 --> ( 难度等级: [0.1, 0.1001) || 挂载数据: 无 ) +│ │ │ │ └── 你好,世界 --> ( 难度等级: [0.1001, 0.1002) || 挂载数据: 无 ) +│ │ │ ├── “Hello, World”的革命 --> ( 难度等级: [0.1002, 0.1005) || 挂载数据: 无 ) +│ │ │ │ ├── B语言——Ken Thompson, --> ( 难度等级: [0.1002, 0.1003) || 挂载数据: 无 ) +│ │ │ │ ├── C语言——Dennis Ritchie,1972— --> ( 难度等级: [0.1003, 0.1003) || 挂载数据: 无 ) +│ │ │ │ ├── Newsqueak——Rob Pike, --> ( 难度等级: [0.1003, 0.1003) || 挂载数据: 无 ) +│ │ │ │ ├── Alef——Phil Winterbottom, --> ( 难度等级: [0.1003, 0.1004) || 挂载数据: 无 ) +│ │ │ │ ├── Limbo——Sean Dorward, Phil Winterbottom, Rob Pike, --> ( 难度等级: [0.1004, 0.1004) || 挂载数据: 无 ) +│ │ │ │ ├── Go语言——2007— --> ( 难度等级: [0.1004, 0.1004) || 挂载数据: blog: 1 ) +│ │ │ │ └── 你好,世界!——V2. --> ( 难度等级: [0.1004, 0.1005) || 挂载数据: 无 ) +│ │ │ ├── 面向并发的内存模型 --> ( 难度等级: [0.1005, 0.1007) || 挂载数据: 无 ) +│ │ │ │ ├── 原子操作 --> ( 难度等级: [0.1005, 0.1005) || 挂载数据: 无 ) +│ │ │ │ ├── 顺序一致性内存模型 --> ( 难度等级: [0.1005, 0.1006) || 挂载数据: 无 ) +│ │ │ │ ├── 初始化顺序 --> ( 难度等级: [0.1006, 0.1006) || 挂载数据: 无 ) +│ │ │ │ ├── Goroutine的创建 --> ( 难度等级: [0.1006, 0.1006) || 挂载数据: 无 ) +│ │ │ │ ├── 基于通道的通信 --> ( 难度等级: [0.1006, 0.1007) || 挂载数据: 无 ) +│ │ │ │ └── 不靠谱的同步 --> ( 难度等级: [0.1007, 0.1007) || 挂载数据: 无 ) +│ │ │ ├── 常见的并发模式 --> ( 难度等级: [0.1007, 0.101) || 挂载数据: 无 ) +│ │ │ │ ├── 并发版本的“Hello, World” --> ( 难度等级: [0.1007, 0.1007) || 挂载数据: 无 ) +│ │ │ │ ├── 生产者/消费者模型 --> ( 难度等级: [0.1007, 0.1008) || 挂载数据: 无 ) +│ │ │ │ ├── 发布/订阅模型 --> ( 难度等级: [0.1008, 0.1008) || 挂载数据: 无 ) +│ │ │ │ ├── 控制并发数 --> ( 难度等级: [0.1008, 0.1008) || 挂载数据: 无 ) +│ │ │ │ ├── 赢者为王 --> ( 难度等级: [0.1008, 0.1009) || 挂载数据: 无 ) +│ │ │ │ ├── 素数筛 --> ( 难度等级: [0.1009, 0.1009) || 挂载数据: 无 ) +│ │ │ │ ├── 并发的安全退出 --> ( 难度等级: [0.1009, 0.1009) || 挂载数据: 无 ) +│ │ │ │ └── context包 --> ( 难度等级: [0.1009, 0.101) || 挂载数据: 无 ) +│ │ │ ├── 错误和异常 --> ( 难度等级: [0.101, 0.1012) || 挂载数据: 无 ) +│ │ │ │ ├── 获取错误的上下文 --> ( 难度等级: [0.101, 0.101) || 挂载数据: 无 ) +│ │ │ │ ├── 错误的错误返回 --> ( 难度等级: [0.101, 0.1011) || 挂载数据: 无 ) +│ │ │ │ └── 剖析异常 --> ( 难度等级: [0.1011, 0.1012) || 挂载数据: blog: 1 ) +│ │ │ └── 补充说明 --> ( 难度等级: [0.1012, 0.1014) || 挂载数据: 无 ) +│ │ ├── CGO编程 --> ( 难度等级: [0.1014, 0.1029) || 挂载数据: 无 ) +│ │ │ ├── 快速入门 --> ( 难度等级: [0.1014, 0.1016) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 最简CGO程序 --> ( 难度等级: [0.1014, 0.1014) || 挂载数据: 无 ) +│ │ │ │ ├── 基于C标准库函数输出字符串 --> ( 难度等级: [0.1014, 0.1015) || 挂载数据: 无 ) +│ │ │ │ ├── 使用自己的C函数 --> ( 难度等级: [0.1015, 0.1015) || 挂载数据: 无 ) +│ │ │ │ ├── C代码的模块化 --> ( 难度等级: [0.1015, 0.1015) || 挂载数据: 无 ) +│ │ │ │ ├── 用Go重新实现C函数 --> ( 难度等级: [0.1015, 0.1015) || 挂载数据: 无 ) +│ │ │ │ ├── 面向C接口的Go编程 --> ( 难度等级: [0.1015, 0.1015) || 挂载数据: 无 ) +│ │ │ │ ├── 定义整数变量 --> ( 难度等级: [0.1015, 0.1015) || 挂载数据: 无 ) +│ │ │ │ ├── 定义字符串变量 --> ( 难度等级: [0.1015, 0.1015) || 挂载数据: 无 ) +│ │ │ │ ├── 定义main函数 --> ( 难度等级: [0.1015, 0.1016) || 挂载数据: 无 ) +│ │ │ │ ├── 特殊字符 --> ( 难度等级: [0.1016, 0.1016) || 挂载数据: 无 ) +│ │ │ │ └── 没有分号 --> ( 难度等级: [0.1016, 0.1016) || 挂载数据: 无 ) +│ │ │ ├── CGO基础 --> ( 难度等级: [0.1016, 0.1017) || 挂载数据: 无 ) +│ │ │ │ ├── import "C"语句 --> ( 难度等级: [0.1016, 0.1016) || 挂载数据: 无 ) +│ │ │ │ ├── #cgo语句 --> ( 难度等级: [0.1016, 0.1017) || 挂载数据: 无 ) +│ │ │ │ └── build标志条件编译 --> ( 难度等级: [0.1017, 0.1017) || 挂载数据: blog: 1 ) +│ │ │ ├── 类型转换 --> ( 难度等级: [0.1017, 0.1019) || 挂载数据: 无 ) +│ │ │ │ ├── 数值类型 --> ( 难度等级: [0.1017, 0.1018) || 挂载数据: 无 ) +│ │ │ │ ├── Go字符串和切片 --> ( 难度等级: [0.1018, 0.1018) || 挂载数据: 无 ) +│ │ │ │ ├── 指针间的转换 --> ( 难度等级: [0.1018, 0.1018) || 挂载数据: 无 ) +│ │ │ │ ├── 数值和指针的转换 --> ( 难度等级: [0.1018, 0.1019) || 挂载数据: 无 ) +│ │ │ │ └── 切片间的转换 --> ( 难度等级: [0.1019, 0.1019) || 挂载数据: 无 ) +│ │ │ ├── 函数调用 --> ( 难度等级: [0.1019, 0.1021) || 挂载数据: 无 ) +│ │ │ │ ├── Go调用C函数 --> ( 难度等级: [0.1019, 0.1019) || 挂载数据: 无 ) +│ │ │ │ ├── C函数的返回值 --> ( 难度等级: [0.1019, 0.102) || 挂载数据: 无 ) +│ │ │ │ ├── void函数的返回值 --> ( 难度等级: [0.102, 0.102) || 挂载数据: 无 ) +│ │ │ │ └── C调用Go导出函数 --> ( 难度等级: [0.102, 0.1021) || 挂载数据: 无 ) +│ │ │ ├── 内部机制 --> ( 难度等级: [0.1021, 0.1022) || 挂载数据: 无 ) +│ │ │ │ ├── CGO生成的中间文件 --> ( 难度等级: [0.1021, 0.1021) || 挂载数据: 无 ) +│ │ │ │ ├── Go调用C函数 --> ( 难度等级: [0.1021, 0.1022) || 挂载数据: 无 ) +│ │ │ │ └── C调用Go函数 --> ( 难度等级: [0.1022, 0.1022) || 挂载数据: 无 ) +│ │ │ ├── CGO内存模型 --> ( 难度等级: [0.1022, 0.1024) || 挂载数据: 无 ) +│ │ │ │ ├── Go访问C内存 --> ( 难度等级: [0.1022, 0.1023) || 挂载数据: 无 ) +│ │ │ │ ├── C临时访问传入的Go内存 --> ( 难度等级: [0.1023, 0.1023) || 挂载数据: 无 ) +│ │ │ │ ├── C长期持有Go指针对象 --> ( 难度等级: [0.1023, 0.1023) || 挂载数据: 无 ) +│ │ │ │ └── 导出C函数不能返回Go内存 --> ( 难度等级: [0.1023, 0.1024) || 挂载数据: 无 ) +│ │ │ ├── C++类包装 --> ( 难度等级: [0.1024, 0.1025) || 挂载数据: 无 ) +│ │ │ │ ├── C++类到Go语言对象 --> ( 难度等级: [0.1024, 0.1024) || 挂载数据: blog: 2 ) +│ │ │ │ ├── Go语言对象到C++类 --> ( 难度等级: [0.1024, 0.1025) || 挂载数据: blog: 3 ) +│ │ │ │ └── 彻底解放C++的this指针 --> ( 难度等级: [0.1025, 0.1025) || 挂载数据: blog: 2 ) +│ │ │ ├── 静态库和动态库 --> ( 难度等级: [0.1025, 0.1027) || 挂载数据: 无 ) +│ │ │ │ ├── 使用C静态库 --> ( 难度等级: [0.1025, 0.1026) || 挂载数据: 无 ) +│ │ │ │ ├── 使用C动态库 --> ( 难度等级: [0.1026, 0.1026) || 挂载数据: blog: 3 ) +│ │ │ │ ├── 导出C静态库 --> ( 难度等级: [0.1026, 0.1026) || 挂载数据: 无 ) +│ │ │ │ ├── 导出C动态库 --> ( 难度等级: [0.1026, 0.1027) || 挂载数据: 无 ) +│ │ │ │ └── 导出非main包的函数 --> ( 难度等级: [0.1027, 0.1027) || 挂载数据: 无 ) +│ │ │ └── 编译和链接参数 --> ( 难度等级: [0.1027, 0.1029) || 挂载数据: 无 ) +│ │ │ ├── 编译参数:CFLAGS/CPPFLAGS/CXXFLAGS --> ( 难度等级: [0.1027, 0.1027) || 挂载数据: 无 ) +│ │ │ ├── 链接参数:LDFLAGS --> ( 难度等级: [0.1027, 0.1028) || 挂载数据: blog: 1 ) +│ │ │ ├── pkg-config --> ( 难度等级: [0.1028, 0.1028) || 挂载数据: 无 ) +│ │ │ ├── go get链 --> ( 难度等级: [0.1028, 0.1028) || 挂载数据: 无 ) +│ │ │ └── 多个非main包中导出C函数 --> ( 难度等级: [0.1028, 0.1029) || 挂载数据: 无 ) +│ │ ├── Go汇编语言 --> ( 难度等级: [0.1029, 0.1043) || 挂载数据: 无 ) +│ │ │ ├── 计算机结构 --> ( 难度等级: [0.1029, 0.1031) || 挂载数据: 无 ) +│ │ │ │ ├── 图灵机和BrainFuck语言 --> ( 难度等级: [0.1029, 0.1029) || 挂载数据: 无 ) +│ │ │ │ ├── 《人力资源机器》游戏 --> ( 难度等级: [0.1029, 0.103) || 挂载数据: 无 ) +│ │ │ │ ├── X86-64体系结构 --> ( 难度等级: [0.103, 0.103) || 挂载数据: 无 ) +│ │ │ │ ├── Go汇编中的伪寄存器 --> ( 难度等级: [0.103, 0.1031) || 挂载数据: 无 ) +│ │ │ │ └── X86-64指令集 --> ( 难度等级: [0.1031, 0.1031) || 挂载数据: 无 ) +│ │ │ ├── 控制流 --> ( 难度等级: [0.1031, 0.1034) || 挂载数据: 无 ) +│ │ │ │ ├── 顺序执行 --> ( 难度等级: [0.1031, 0.1032) || 挂载数据: blog: 1 ) +│ │ │ │ ├── if/goto跳转 --> ( 难度等级: [0.1032, 0.1033) || 挂载数据: blog: 10 ) +│ │ │ │ └── for循环 --> ( 难度等级: [0.1033, 0.1034) || 挂载数据: 无 ) +│ │ │ ├── 汇编语言的威力 --> ( 难度等级: [0.1034, 0.1037) || 挂载数据: 无 ) +│ │ │ │ ├── 系统调用 --> ( 难度等级: [0.1034, 0.1035) || 挂载数据: 无 ) +│ │ │ │ ├── 直接调用C函数 --> ( 难度等级: [0.1035, 0.1036) || 挂载数据: 无 ) +│ │ │ │ └── AVX指令 --> ( 难度等级: [0.1036, 0.1037) || 挂载数据: 无 ) +│ │ │ ├── 例子:Goroutine ID --> ( 难度等级: [0.1037, 0.104) || 挂载数据: 无 ) +│ │ │ │ ├── 故意设计没有goid --> ( 难度等级: [0.1037, 0.1038) || 挂载数据: 无 ) +│ │ │ │ ├── 纯Go方式获取goid --> ( 难度等级: [0.1038, 0.1038) || 挂载数据: 无 ) +│ │ │ │ ├── 从g结构体获取goid --> ( 难度等级: [0.1038, 0.1039) || 挂载数据: 无 ) +│ │ │ │ ├── 获取g结构体对应的接口对象 --> ( 难度等级: [0.1039, 0.1039) || 挂载数据: 无 ) +│ │ │ │ └── goid的应用:局部存储 --> ( 难度等级: [0.1039, 0.104) || 挂载数据: 无 ) +│ │ │ └── Delve调试器 --> ( 难度等级: [0.104, 0.1043) || 挂载数据: 无 ) +│ │ │ ├── Delve入门 --> ( 难度等级: [0.104, 0.1041) || 挂载数据: 无 ) +│ │ │ └── 调试汇编程序 --> ( 难度等级: [0.1041, 0.1043) || 挂载数据: 无 ) +│ │ ├── RPC和Protobuf --> ( 难度等级: [0.1043, 0.1057) || 挂载数据: 无 ) +│ │ │ ├── RPC入门 --> ( 难度等级: [0.1043, 0.1045) || 挂载数据: 无 ) +│ │ │ │ ├── RPC版“Hello, World” --> ( 难度等级: [0.1043, 0.1043) || 挂载数据: 无 ) +│ │ │ │ ├── 更安全的RPC接口 --> ( 难度等级: [0.1043, 0.1044) || 挂载数据: 无 ) +│ │ │ │ ├── 跨语言的RPC --> ( 难度等级: [0.1044, 0.1044) || 挂载数据: blog: 1 ) +│ │ │ │ └── HTTP上的RPC --> ( 难度等级: [0.1044, 0.1045) || 挂载数据: blog: 10 ) +│ │ │ ├── Protobuf --> ( 难度等级: [0.1045, 0.1046) || 挂载数据: 无 ) +│ │ │ │ ├── Protobuf入门 --> ( 难度等级: [0.1045, 0.1045) || 挂载数据: blog: 2 ) +│ │ │ │ ├── 定制代码生成插件 --> ( 难度等级: [0.1045, 0.1046) || 挂载数据: 无 ) +│ │ │ │ └── 自动生成完整的RPC代码 --> ( 难度等级: [0.1046, 0.1046) || 挂载数据: 无 ) +│ │ │ ├── 玩转RPC --> ( 难度等级: [0.1046, 0.1048) || 挂载数据: 无 ) +│ │ │ │ ├── 客户端RPC的实现原理 --> ( 难度等级: [0.1046, 0.1047) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 基于RPC实现监视功能 --> ( 难度等级: [0.1047, 0.1047) || 挂载数据: 无 ) +│ │ │ │ ├── 反向RPC --> ( 难度等级: [0.1047, 0.1048) || 挂载数据: 无 ) +│ │ │ │ └── 上下文信息 --> ( 难度等级: [0.1048, 0.1048) || 挂载数据: 无 ) +│ │ │ ├── gRPC入门 --> ( 难度等级: [0.1048, 0.105) || 挂载数据: 无 ) +│ │ │ │ ├── gRPC技术栈 --> ( 难度等级: [0.1048, 0.1049) || 挂载数据: 无 ) +│ │ │ │ ├── gRPC入门 --> ( 难度等级: [0.1049, 0.1049) || 挂载数据: blog: 10 ) +│ │ │ │ ├── gRPC流 --> ( 难度等级: [0.1049, 0.105) || 挂载数据: 无 ) +│ │ │ │ └── 发布和订阅模式 --> ( 难度等级: [0.105, 0.105) || 挂载数据: 无 ) +│ │ │ ├── gRPC进阶 --> ( 难度等级: [0.105, 0.1052) || 挂载数据: 无 ) +│ │ │ │ ├── 证书认证 --> ( 难度等级: [0.105, 0.105) || 挂载数据: 无 ) +│ │ │ │ ├── Token认证 --> ( 难度等级: [0.105, 0.1051) || 挂载数据: blog: 4 ) +│ │ │ │ ├── 截取器 --> ( 难度等级: [0.1051, 0.1051) || 挂载数据: 无 ) +│ │ │ │ └── 和Web服务共存 --> ( 难度等级: [0.1051, 0.1052) || 挂载数据: 无 ) +│ │ │ ├── gRPC和Protobuf扩展 --> ( 难度等级: [0.1052, 0.1054) || 挂载数据: 无 ) +│ │ │ │ ├── 验证器 --> ( 难度等级: [0.1052, 0.1052) || 挂载数据: blog: 1 ) +│ │ │ │ ├── REST接口 --> ( 难度等级: [0.1052, 0.1053) || 挂载数据: 无 ) +│ │ │ │ └── Nginx --> ( 难度等级: [0.1053, 0.1054) || 挂载数据: blog: 10 ) +│ │ │ ├── pbgo:基于Protobuf的框架 --> ( 难度等级: [0.1054, 0.1055) || 挂载数据: 无 ) +│ │ │ │ ├── Protobuf扩展语法 --> ( 难度等级: [0.1054, 0.1054) || 挂载数据: 无 ) +│ │ │ │ ├── 插件中读取扩展信息 --> ( 难度等级: [0.1054, 0.1054) || 挂载数据: 无 ) +│ │ │ │ ├── 生成REST代码 --> ( 难度等级: [0.1054, 0.1055) || 挂载数据: 无 ) +│ │ │ │ └── 启动REST服务 --> ( 难度等级: [0.1055, 0.1055) || 挂载数据: 无 ) +│ │ │ └── grpcurl工具 --> ( 难度等级: [0.1055, 0.1057) || 挂载数据: 无 ) +│ │ │ ├── 启动反射服务 --> ( 难度等级: [0.1055, 0.1056) || 挂载数据: 无 ) +│ │ │ ├── 查看服务列表 --> ( 难度等级: [0.1056, 0.1056) || 挂载数据: 无 ) +│ │ │ ├── 服务的方法列表 --> ( 难度等级: [0.1056, 0.1056) || 挂载数据: 无 ) +│ │ │ ├── 获取类型信息 --> ( 难度等级: [0.1056, 0.1057) || 挂载数据: 无 ) +│ │ │ └── 调用方法 --> ( 难度等级: [0.1057, 0.1057) || 挂载数据: 无 ) +│ │ └── 分布式系统 --> ( 难度等级: [0.1057, 0.1071) || 挂载数据: 无 ) +│ │ ├── 分布式ID生成器 --> ( 难度等级: [0.1057, 0.1059) || 挂载数据: 无 ) +│ │ │ └── worker_id分配 --> ( 难度等级: [0.1057, 0.1059) || 挂载数据: blog: 8 ) +│ │ ├── 分布式锁 --> ( 难度等级: [0.1059, 0.1061) || 挂载数据: 无 ) +│ │ │ ├── 进程内加锁 --> ( 难度等级: [0.1059, 0.106) || 挂载数据: 无 ) +│ │ │ ├── 尝试锁 --> ( 难度等级: [0.106, 0.106) || 挂载数据: 无 ) +│ │ │ ├── 基于Redis的setnx --> ( 难度等级: [0.106, 0.106) || 挂载数据: 无 ) +│ │ │ ├── 基于ZooKeeper --> ( 难度等级: [0.106, 0.1061) || 挂载数据: 无 ) +│ │ │ ├── 基于etcd --> ( 难度等级: [0.1061, 0.1061) || 挂载数据: blog: 1 ) +│ │ │ └── 如何选择合适的锁 --> ( 难度等级: [0.1061, 0.1061) || 挂载数据: 无 ) +│ │ ├── 延时任务系统 --> ( 难度等级: [0.1061, 0.1063) || 挂载数据: 无 ) +│ │ │ ├── 定时器的实现 --> ( 难度等级: [0.1061, 0.1062) || 挂载数据: 无 ) +│ │ │ ├── 任务分发 --> ( 难度等级: [0.1062, 0.1063) || 挂载数据: 无 ) +│ │ │ └── 数据再平衡和幂等考量 --> ( 难度等级: [0.1063, 0.1063) || 挂载数据: 无 ) +│ │ ├── 分布式搜索引擎 --> ( 难度等级: [0.1063, 0.1065) || 挂载数据: 无 ) +│ │ │ ├── 搜索引擎 --> ( 难度等级: [0.1063, 0.1064) || 挂载数据: blog: 1 ) +│ │ │ └── 异构数据同步 --> ( 难度等级: [0.1064, 0.1065) || 挂载数据: 无 ) +│ │ ├── 负载均衡 --> ( 难度等级: [0.1065, 0.1067) || 挂载数据: 无 ) +│ │ │ ├── 常见的负载均衡思路 --> ( 难度等级: [0.1065, 0.1066) || 挂载数据: 无 ) +│ │ │ ├── 基于洗牌算法的负载均衡 --> ( 难度等级: [0.1066, 0.1067) || 挂载数据: blog: 10 ) +│ │ │ └── 负载均衡算法效果验证 --> ( 难度等级: [0.1067, 0.1067) || 挂载数据: 无 ) +│ │ ├── 分布式配置管理 --> ( 难度等级: [0.1067, 0.1069) || 挂载数据: 无 ) +│ │ │ ├── 场景举例 --> ( 难度等级: [0.1067, 0.1068) || 挂载数据: 无 ) +│ │ │ ├── 使用etcd实现配置更新 --> ( 难度等级: [0.1068, 0.1068) || 挂载数据: 无 ) +│ │ │ ├── 配置膨胀 --> ( 难度等级: [0.1068, 0.1069) || 挂载数据: 无 ) +│ │ │ ├── 配置版本管理 --> ( 难度等级: [0.1069, 0.1069) || 挂载数据: 无 ) +│ │ │ └── 客户端容错 --> ( 难度等级: [0.1069, 0.1069) || 挂载数据: 无 ) +│ │ └── 分布式爬虫 --> ( 难度等级: [0.1069, 0.1071) || 挂载数据: 无 ) +│ │ ├── 基于colly的单机爬虫 --> ( 难度等级: [0.1069, 0.107) || 挂载数据: 无 ) +│ │ ├── 分布式爬虫 --> ( 难度等级: [0.107, 0.107) || 挂载数据: blog: 3 ) +│ │ ├── 结合nats和colly的消息生产 --> ( 难度等级: [0.107, 0.1071) || 挂载数据: 无 ) +│ │ └── 结合colly的消息消费 --> ( 难度等级: [0.1071, 0.1071) || 挂载数据: 无 ) +│ └── 其他 --> ( 难度等级: [0.1071, 0.1429) || 挂载数据: 无 ) +├── 云原生初阶-平台开发 --> ( 难度等级: [0.1429, 0.2857) || 挂载数据: 无 ) +│ ├── 容器 --> ( 难度等级: [0.1429, 0.1714) || 挂载数据: 无 ) +│ │ ├── Docker --> ( 难度等级: [0.1429, 0.1524) || 挂载数据: 无 ) +│ │ ├── 基础入门 --> ( 难度等级: [0.1524, 0.1619) || 挂载数据: 无 ) +│ │ │ ├── 初识Docker与容器 --> ( 难度等级: [0.1524, 0.1536) || 挂载数据: 无 ) +│ │ │ ├── 核心概念与安装配置 --> ( 难度等级: [0.1536, 0.1548) || 挂载数据: 无 ) +│ │ │ │ ├── 核心概念 --> ( 难度等级: [0.1536, 0.1539) || 挂载数据: blog: 2 ) +│ │ │ │ ├── 安装Docker引擎 --> ( 难度等级: [0.1539, 0.1542) || 挂载数据: 无 ) +│ │ │ │ │ ├── Ubuntu环境下安装Docker --> ( 难度等级: [0.1539, 0.1539) || 挂载数据: blog: 10 ) +│ │ │ │ │ ├── CentOS环境下安装Docker --> ( 难度等级: [0.1539, 0.154) || 挂载数据: blog: 10 ) +│ │ │ │ │ ├── 通过脚本安装 --> ( 难度等级: [0.154, 0.154) || 挂载数据: blog: 10 ) +│ │ │ │ │ ├── macOS环境下安装Docker --> ( 难度等级: [0.154, 0.1541) || 挂载数据: blog: 1 ) +│ │ │ │ │ └── Windows环境下安装Docker --> ( 难度等级: [0.1541, 0.1542) || 挂载数据: blog: 10 ) +│ │ │ │ ├── 配置Docker服务 --> ( 难度等级: [0.1542, 0.1545) || 挂载数据: 无 ) +│ │ │ │ └── 推荐实践环境 --> ( 难度等级: [0.1545, 0.1548) || 挂载数据: 无 ) +│ │ │ ├── 使用Docker镜像 --> ( 难度等级: [0.1548, 0.156) || 挂载数据: 无 ) +│ │ │ │ ├── 获取镜像 --> ( 难度等级: [0.1548, 0.1549) || 挂载数据: 无 ) +│ │ │ │ ├── 查看镜像信息 --> ( 难度等级: [0.1549, 0.1551) || 挂载数据: 无 ) +│ │ │ │ ├── 搜寻镜像 --> ( 难度等级: [0.1551, 0.1553) || 挂载数据: 无 ) +│ │ │ │ ├── 删除和清理镜像 --> ( 难度等级: [0.1553, 0.1554) || 挂载数据: 无 ) +│ │ │ │ ├── 创建镜像 --> ( 难度等级: [0.1554, 0.1556) || 挂载数据: 无 ) +│ │ │ │ ├── 存出和载入镜像 --> ( 难度等级: [0.1556, 0.1558) || 挂载数据: 无 ) +│ │ │ │ └── 上传镜像 --> ( 难度等级: [0.1558, 0.156) || 挂载数据: 无 ) +│ │ │ ├── 操作Docker容器 --> ( 难度等级: [0.156, 0.1571) || 挂载数据: 无 ) +│ │ │ │ ├── 创建容器 --> ( 难度等级: [0.156, 0.1561) || 挂载数据: 无 ) +│ │ │ │ ├── 停止容器 --> ( 难度等级: [0.1561, 0.1563) || 挂载数据: blog: 2 ) +│ │ │ │ ├── 进入容器 --> ( 难度等级: [0.1563, 0.1565) || 挂载数据: blog: 7 ) +│ │ │ │ ├── 删除容器 --> ( 难度等级: [0.1565, 0.1566) || 挂载数据: blog: 3 ) +│ │ │ │ ├── 导入和导出容器 --> ( 难度等级: [0.1566, 0.1568) || 挂载数据: 无 ) +│ │ │ │ ├── 查看容器 --> ( 难度等级: [0.1568, 0.157) || 挂载数据: 无 ) +│ │ │ │ └── 其他容器命令 --> ( 难度等级: [0.157, 0.1571) || 挂载数据: 无 ) +│ │ │ ├── 访问Docker仓库 --> ( 难度等级: [0.1571, 0.1583) || 挂载数据: 无 ) +│ │ │ │ ├── Docker Hub公共镜像市场 --> ( 难度等级: [0.1571, 0.1575) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 第三方镜像市场 --> ( 难度等级: [0.1575, 0.1579) || 挂载数据: 无 ) +│ │ │ │ └── 搭建本地私有仓库 --> ( 难度等级: [0.1579, 0.1583) || 挂载数据: blog: 1 ) +│ │ │ ├── Docker数据管理 --> ( 难度等级: [0.1583, 0.1595) || 挂载数据: 无 ) +│ │ │ │ ├── 数据卷 --> ( 难度等级: [0.1583, 0.1587) || 挂载数据: 无 ) +│ │ │ │ ├── 数据卷容器 --> ( 难度等级: [0.1587, 0.1591) || 挂载数据: blog: 1 ) +│ │ │ │ └── 利用数据卷容器来迁移数据 --> ( 难度等级: [0.1591, 0.1595) || 挂载数据: 无 ) +│ │ │ ├── 端口映射与容器互联 --> ( 难度等级: [0.1595, 0.1607) || 挂载数据: 无 ) +│ │ │ │ ├── 端口映射实现容器访问 --> ( 难度等级: [0.1595, 0.1601) || 挂载数据: blog: 3 ) +│ │ │ │ └── 互联机制实现便捷互访 --> ( 难度等级: [0.1601, 0.1607) || 挂载数据: 无 ) +│ │ │ └── 使用Dockerfile创建镜像 --> ( 难度等级: [0.1607, 0.1619) || 挂载数据: 无 ) +│ │ │ ├── 基本结构 --> ( 难度等级: [0.1607, 0.161) || 挂载数据: 无 ) +│ │ │ ├── 指令说明 --> ( 难度等级: [0.161, 0.1613) || 挂载数据: 无 ) +│ │ │ │ ├── 配置指令 --> ( 难度等级: [0.161, 0.1612) || 挂载数据: 无 ) +│ │ │ │ └── 操作指令 --> ( 难度等级: [0.1612, 0.1613) || 挂载数据: blog: 1 ) +│ │ │ ├── 创建镜像 --> ( 难度等级: [0.1613, 0.1616) || 挂载数据: 无 ) +│ │ │ │ ├── 命令选项 --> ( 难度等级: [0.1613, 0.1614) || 挂载数据: 无 ) +│ │ │ │ ├── 选择父镜像 --> ( 难度等级: [0.1614, 0.1615) || 挂载数据: 无 ) +│ │ │ │ ├── 使用.dockerignore文件 --> ( 难度等级: [0.1615, 0.1615) || 挂载数据: 无 ) +│ │ │ │ └── 多步骤创建 --> ( 难度等级: [0.1615, 0.1616) || 挂载数据: blog: 5 ) +│ │ │ └── 最佳实践 --> ( 难度等级: [0.1616, 0.1619) || 挂载数据: 无 ) +│ │ └── 进阶技能 --> ( 难度等级: [0.1619, 0.1714) || 挂载数据: 无 ) +│ │ ├── 核心实现技术 --> ( 难度等级: [0.1619, 0.1638) || 挂载数据: 无 ) +│ │ │ ├── 基本架构 --> ( 难度等级: [0.1619, 0.1623) || 挂载数据: 无 ) +│ │ │ ├── 命名空间 --> ( 难度等级: [0.1623, 0.1627) || 挂载数据: 无 ) +│ │ │ ├── 控制组 --> ( 难度等级: [0.1627, 0.163) || 挂载数据: 无 ) +│ │ │ ├── 联合文件系统 --> ( 难度等级: [0.163, 0.1634) || 挂载数据: 无 ) +│ │ │ └── Linux网络虚拟化 --> ( 难度等级: [0.1634, 0.1638) || 挂载数据: 无 ) +│ │ ├── 配置私有仓库 --> ( 难度等级: [0.1638, 0.1657) || 挂载数据: 无 ) +│ │ │ ├── 安装Docker Registry --> ( 难度等级: [0.1638, 0.1641) || 挂载数据: 无 ) +│ │ │ ├── 配置TLS证书 --> ( 难度等级: [0.1641, 0.1644) || 挂载数据: 无 ) +│ │ │ ├── 管理访问权限 --> ( 难度等级: [0.1644, 0.1648) || 挂载数据: 无 ) +│ │ │ ├── 配置Registry --> ( 难度等级: [0.1648, 0.1651) || 挂载数据: 无 ) +│ │ │ ├── 批量管理镜像 --> ( 难度等级: [0.1651, 0.1654) || 挂载数据: 无 ) +│ │ │ └── 使用通知系统 --> ( 难度等级: [0.1654, 0.1657) || 挂载数据: 无 ) +│ │ ├── 安全防护与配置 --> ( 难度等级: [0.1657, 0.1676) || 挂载数据: 无 ) +│ │ │ ├── 命名空间隔离的安全 --> ( 难度等级: [0.1657, 0.166) || 挂载数据: 无 ) +│ │ │ ├── 控制组资源控制的安全 --> ( 难度等级: [0.166, 0.1663) || 挂载数据: 无 ) +│ │ │ ├── 内核能力机制 --> ( 难度等级: [0.1663, 0.1667) || 挂载数据: 无 ) +│ │ │ ├── Docker服务端的防护 --> ( 难度等级: [0.1667, 0.167) || 挂载数据: 无 ) +│ │ │ ├── 更多安全特性的使用 --> ( 难度等级: [0.167, 0.1673) || 挂载数据: 无 ) +│ │ │ └── 使用第三方检测工具 --> ( 难度等级: [0.1673, 0.1676) || 挂载数据: 无 ) +│ │ │ ├── Docker Bench --> ( 难度等级: [0.1673, 0.1675) || 挂载数据: 无 ) +│ │ │ └── clair --> ( 难度等级: [0.1675, 0.1676) || 挂载数据: 无 ) +│ │ ├── 高级网络功能 --> ( 难度等级: [0.1676, 0.1695) || 挂载数据: 无 ) +│ │ │ ├── 启动与配置参数 --> ( 难度等级: [0.1676, 0.1679) || 挂载数据: 无 ) +│ │ │ ├── 配置容器DNS和主机名 --> ( 难度等级: [0.1679, 0.1681) || 挂载数据: 无 ) +│ │ │ ├── 容器访问控制 --> ( 难度等级: [0.1681, 0.1683) || 挂载数据: 无 ) +│ │ │ ├── 映射容器端口到宿主主机的实现 --> ( 难度等级: [0.1683, 0.1686) || 挂载数据: 无 ) +│ │ │ ├── 配置容器网桥 --> ( 难度等级: [0.1686, 0.1688) || 挂载数据: 无 ) +│ │ │ ├── 自定义网桥 --> ( 难度等级: [0.1688, 0.169) || 挂载数据: 无 ) +│ │ │ ├── 使用OpenvSwitch网桥 --> ( 难度等级: [0.169, 0.1693) || 挂载数据: 无 ) +│ │ │ └── 创建一个点到点连接 --> ( 难度等级: [0.1693, 0.1695) || 挂载数据: 无 ) +│ │ └── libnetwork插件化网络功能 --> ( 难度等级: [0.1695, 0.1714) || 挂载数据: 无 ) +│ │ ├── 容器网络模型 --> ( 难度等级: [0.1695, 0.1702) || 挂载数据: 无 ) +│ │ ├── Docker网络命令 --> ( 难度等级: [0.1702, 0.1708) || 挂载数据: 无 ) +│ │ └── 构建跨主机容器网络 --> ( 难度等级: [0.1708, 0.1714) || 挂载数据: 无 ) +│ ├── Kubernetes --> ( 难度等级: [0.1714, 0.2) || 挂载数据: 无 ) +│ │ ├── 管理工具 --> ( 难度等级: [0.1714, 0.1724) || 挂载数据: 无 ) +│ │ │ ├── Kubelens --> ( 难度等级: [0.1714, 0.1716) || 挂载数据: 无 ) +│ │ │ ├── Kuboard --> ( 难度等级: [0.1716, 0.1717) || 挂载数据: 无 ) +│ │ │ ├── K3S --> ( 难度等级: [0.1717, 0.1718) || 挂载数据: 无 ) +│ │ │ ├── K9S --> ( 难度等级: [0.1718, 0.172) || 挂载数据: 无 ) +│ │ │ ├── Minikube --> ( 难度等级: [0.172, 0.1721) || 挂载数据: 无 ) +│ │ │ ├── kubeasz --> ( 难度等级: [0.1721, 0.1722) || 挂载数据: 无 ) +│ │ │ └── Draft --> ( 难度等级: [0.1722, 0.1724) || 挂载数据: 无 ) +│ │ ├── Kubernetes入门 --> ( 难度等级: [0.1724, 0.1733) || 挂载数据: 无 ) +│ │ │ ├── Kubernetes是什么 --> ( 难度等级: [0.1724, 0.1727) || 挂载数据: 无 ) +│ │ │ │ └── Kubernetes的历史 --> ( 难度等级: [0.1724, 0.1727) || 挂载数据: blog: 10 ) +│ │ │ ├── 从一个简单的例子开始 --> ( 难度等级: [0.1727, 0.173) || 挂载数据: 无 ) +│ │ │ │ ├── 环境准备 --> ( 难度等级: [0.1727, 0.1727) || 挂载数据: 无 ) +│ │ │ │ ├── 启动MySQL服务 --> ( 难度等级: [0.1727, 0.1728) || 挂载数据: 无 ) +│ │ │ │ ├── 启动Tomcat应用 --> ( 难度等级: [0.1728, 0.1729) || 挂载数据: blog: 6 ) +│ │ │ │ └── 通过浏览器访问网页 --> ( 难度等级: [0.1729, 0.173) || 挂载数据: 无 ) +│ │ │ └── Kubernetes基本概念和术语 --> ( 难度等级: [0.173, 0.1733) || 挂载数据: 无 ) +│ │ │ ├── Master --> ( 难度等级: [0.173, 0.173) || 挂载数据: 无 ) +│ │ │ ├── Node --> ( 难度等级: [0.173, 0.173) || 挂载数据: blog: 4 ) +│ │ │ ├── Pod --> ( 难度等级: [0.173, 0.173) || 挂载数据: 无 ) +│ │ │ │ ├── Pod定义详解 --> ( 难度等级: [0.173, 0.173) || 挂载数据: blog: 3 ) +│ │ │ │ ├── Pod的基本用法 --> ( 难度等级: [0.173, 0.173) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 静态Pod --> ( 难度等级: [0.173, 0.173) || 挂载数据: 无 ) +│ │ │ │ ├── Pod容器共享Volume --> ( 难度等级: [0.173, 0.173) || 挂载数据: blog: 4 ) +│ │ │ │ ├── Pod的配置管理 --> ( 难度等级: [0.173, 0.173) || 挂载数据: 无 ) +│ │ │ │ ├── 在容器内获取Pod信息(Downward API) --> ( 难度等级: [0.173, 0.173) || 挂载数据: blog: 1 ) +│ │ │ │ ├── Pod生命周期和重启策略 --> ( 难度等级: [0.173, 0.173) || 挂载数据: 无 ) +│ │ │ │ ├── Pod健康检查 --> ( 难度等级: [0.173, 0.173) || 挂载数据: blog: 8 ) +│ │ │ │ ├── 玩转Pod调度 --> ( 难度等级: [0.173, 0.173) || 挂载数据: 无 ) +│ │ │ │ ├── Init Container(初始化容器) --> ( 难度等级: [0.173, 0.173) || 挂载数据: blog: 2 ) +│ │ │ │ ├── Pod的升级和回滚 --> ( 难度等级: [0.173, 0.173) || 挂载数据: 无 ) +│ │ │ │ ├── Pod的扩容和缩容 --> ( 难度等级: [0.173, 0.173) || 挂载数据: 无 ) +│ │ │ │ ├── 使用StatefulSet搭建MongoDB集群 --> ( 难度等级: [0.173, 0.173) || 挂载数据: blog: 2 ) +│ │ │ │ ├── Pod定义文件详解 --> ( 难度等级: [0.173, 0.173) || 挂载数据: 无 ) +│ │ │ │ ├── 基本操作 --> ( 难度等级: [0.173, 0.173) || 挂载数据: 无 ) +│ │ │ │ ├── 其他设置 --> ( 难度等级: [0.173, 0.173) || 挂载数据: 无 ) +│ │ │ │ └── Pod调度 --> ( 难度等级: [0.173, 0.173) || 挂载数据: 无 ) +│ │ │ ├── Label(标签) --> ( 难度等级: [0.173, 0.1731) || 挂载数据: 无 ) +│ │ │ ├── Replication Controller --> ( 难度等级: [0.1731, 0.1731) || 挂载数据: 无 ) +│ │ │ ├── Deployment --> ( 难度等级: [0.1731, 0.1731) || 挂载数据: 无 ) +│ │ │ │ ├── 运行Deployment --> ( 难度等级: [0.1731, 0.1731) || 挂载数据: blog: 4 ) +│ │ │ │ ├── 命令vs配置文件 --> ( 难度等级: [0.1731, 0.1731) || 挂载数据: blog: 1 ) +│ │ │ │ ├── Deployment配置文件简介 --> ( 难度等级: [0.1731, 0.1731) || 挂载数据: 无 ) +│ │ │ │ ├── 伸缩 --> ( 难度等级: [0.1731, 0.1731) || 挂载数据: 无 ) +│ │ │ │ ├── Failover --> ( 难度等级: [0.1731, 0.1731) || 挂载数据: 无 ) +│ │ │ │ └── 用label控制Pod的位置 --> ( 难度等级: [0.1731, 0.1731) || 挂载数据: 无 ) +│ │ │ ├── Horizontal Pod Autoscaler --> ( 难度等级: [0.1731, 0.1731) || 挂载数据: 无 ) +│ │ │ ├── StatefulSet --> ( 难度等级: [0.1731, 0.1732) || 挂载数据: 无 ) +│ │ │ │ └── 扩容/缩容StatefulSet --> ( 难度等级: [0.1731, 0.1732) || 挂载数据: blog: 1 ) +│ │ │ ├── Service(服务) --> ( 难度等级: [0.1732, 0.1732) || 挂载数据: 无 ) +│ │ │ ├── Volume(存储卷) --> ( 难度等级: [0.1732, 0.1732) || 挂载数据: blog: 1 ) +│ │ │ ├── Persistent Volume --> ( 难度等级: [0.1732, 0.1732) || 挂载数据: 无 ) +│ │ │ ├── Namespace(命名空间) --> ( 难度等级: [0.1732, 0.1732) || 挂载数据: blog: 1 ) +│ │ │ └── Annotation(注解) --> ( 难度等级: [0.1732, 0.1733) || 挂载数据: 无 ) +│ │ ├── Kubernetes实践指南 --> ( 难度等级: [0.1733, 0.1742) || 挂载数据: 无 ) +│ │ │ ├── Kubernetes安装与配置 --> ( 难度等级: [0.1733, 0.1736) || 挂载数据: 无 ) +│ │ │ │ ├── 系统要求 --> ( 难度等级: [0.1733, 0.1733) || 挂载数据: 无 ) +│ │ │ │ ├── 使用kubeadm工具快速安装Kubernetes集群 --> ( 难度等级: [0.1733, 0.1733) || 挂载数据: blog: 10 ) +│ │ │ │ ├── 以二进制文件方式安装Kubernetes集群 --> ( 难度等级: [0.1733, 0.1734) || 挂载数据: blog: 1 ) +│ │ │ │ ├── Kubernetes集群的安全设置 --> ( 难度等级: [0.1734, 0.1734) || 挂载数据: blog: 10 ) +│ │ │ │ ├── Kubernetes集群的网络配置 --> ( 难度等级: [0.1734, 0.1735) || 挂载数据: blog: 7 ) +│ │ │ │ ├── 内网中的Kubernetes相关配置 --> ( 难度等级: [0.1735, 0.1735) || 挂载数据: 无 ) +│ │ │ │ ├── Kubernetes的版本升级 --> ( 难度等级: [0.1735, 0.1735) || 挂载数据: blog: 10 ) +│ │ │ │ └── Kubernetes核心服务配置详解 --> ( 难度等级: [0.1735, 0.1736) || 挂载数据: blog: 6 ) +│ │ │ ├── kubectl命令行工具用法详解 --> ( 难度等级: [0.1736, 0.1739) || 挂载数据: 无 ) +│ │ │ │ ├── kubectl用法概述 --> ( 难度等级: [0.1736, 0.1736) || 挂载数据: 无 ) +│ │ │ │ ├── kubectl子命令详解 --> ( 难度等级: [0.1736, 0.1737) || 挂载数据: 无 ) +│ │ │ │ ├── kubectl参数列表 --> ( 难度等级: [0.1737, 0.1738) || 挂载数据: 无 ) +│ │ │ │ ├── kubectl输出格式 --> ( 难度等级: [0.1738, 0.1738) || 挂载数据: 无 ) +│ │ │ │ └── kubectl操作示例 --> ( 难度等级: [0.1738, 0.1739) || 挂载数据: 无 ) +│ │ │ └── 深入掌握Service --> ( 难度等级: [0.1739, 0.1742) || 挂载数据: 无 ) +│ │ │ ├── Service定义详解 --> ( 难度等级: [0.1739, 0.1739) || 挂载数据: blog: 1 ) +│ │ │ ├── Service基本用法 --> ( 难度等级: [0.1739, 0.174) || 挂载数据: 无 ) +│ │ │ ├── Headless Service --> ( 难度等级: [0.174, 0.174) || 挂载数据: 无 ) +│ │ │ ├── 集群外部访问Pod或Service --> ( 难度等级: [0.174, 0.1741) || 挂载数据: blog: 1 ) +│ │ │ ├── DNS服务搭建指南 --> ( 难度等级: [0.1741, 0.1741) || 挂载数据: 无 ) +│ │ │ ├── 自定义DNS和上游DNS服务器 --> ( 难度等级: [0.1741, 0.1741) || 挂载数据: 无 ) +│ │ │ └── Ingress:HTTP 7层路由机制 --> ( 难度等级: [0.1741, 0.1742) || 挂载数据: 无 ) +│ │ ├── Kubernetes核心原理 --> ( 难度等级: [0.1742, 0.1751) || 挂载数据: 无 ) +│ │ │ ├── Kubernetes API Server原理分析 --> ( 难度等级: [0.1742, 0.1743) || 挂载数据: 无 ) +│ │ │ │ ├── Kubernetes API Server概述 --> ( 难度等级: [0.1742, 0.1742) || 挂载数据: blog: 7 ) +│ │ │ │ ├── 独特的Kubernetes Proxy API接口 --> ( 难度等级: [0.1742, 0.1743) || 挂载数据: blog: 2 ) +│ │ │ │ └── 集群功能模块之间的通信 --> ( 难度等级: [0.1743, 0.1743) || 挂载数据: 无 ) +│ │ │ ├── Controller Manager原理分析 --> ( 难度等级: [0.1743, 0.1744) || 挂载数据: 无 ) +│ │ │ │ ├── Node Controller --> ( 难度等级: [0.1743, 0.1743) || 挂载数据: blog: 1 ) +│ │ │ │ ├── ResourceQuota Controller --> ( 难度等级: [0.1743, 0.1744) || 挂载数据: 无 ) +│ │ │ │ ├── Namespace Controller --> ( 难度等级: [0.1744, 0.1744) || 挂载数据: blog: 10 ) +│ │ │ │ └── Service Controller与Endpoint Controller --> ( 难度等级: [0.1744, 0.1744) || 挂载数据: blog: 3 ) +│ │ │ ├── Scheduler原理分析 --> ( 难度等级: [0.1744, 0.1745) || 挂载数据: 无 ) +│ │ │ ├── kubelet运行机制分析 --> ( 难度等级: [0.1745, 0.1747) || 挂载数据: 无 ) +│ │ │ │ ├── 节点管理 --> ( 难度等级: [0.1745, 0.1746) || 挂载数据: 无 ) +│ │ │ │ ├── Pod管理 --> ( 难度等级: [0.1746, 0.1746) || 挂载数据: 无 ) +│ │ │ │ ├── 容器健康检查 --> ( 难度等级: [0.1746, 0.1746) || 挂载数据: 无 ) +│ │ │ │ └── cAdvisor资源监控 --> ( 难度等级: [0.1746, 0.1747) || 挂载数据: 无 ) +│ │ │ ├── kube-proxy运行机制分析 --> ( 难度等级: [0.1747, 0.1748) || 挂载数据: 无 ) +│ │ │ ├── 深入分析集群安全机制 --> ( 难度等级: [0.1748, 0.1749) || 挂载数据: 无 ) +│ │ │ │ ├── API Server认证管理(Authentication) --> ( 难度等级: [0.1748, 0.1748) || 挂载数据: 无 ) +│ │ │ │ ├── API Server授木又管理(Authorization) --> ( 难度等级: [0.1748, 0.1748) || 挂载数据: 无 ) +│ │ │ │ ├── Admission Control(准入控制) --> ( 难度等级: [0.1748, 0.1748) || 挂载数据: blog: 2 ) +│ │ │ │ ├── Service Account --> ( 难度等级: [0.1748, 0.1749) || 挂载数据: 无 ) +│ │ │ │ └── Secret私密凭据 --> ( 难度等级: [0.1749, 0.1749) || 挂载数据: 无 ) +│ │ │ ├── 网络原理 --> ( 难度等级: [0.1749, 0.175) || 挂载数据: 无 ) +│ │ │ │ ├── Kubernetes网络模型 --> ( 难度等级: [0.1749, 0.1749) || 挂载数据: 无 ) +│ │ │ │ ├── Docker的网络基础 --> ( 难度等级: [0.1749, 0.1749) || 挂载数据: 无 ) +│ │ │ │ ├── Docker的网络实现 --> ( 难度等级: [0.1749, 0.1749) || 挂载数据: 无 ) +│ │ │ │ ├── Kubernetes的网络实现 --> ( 难度等级: [0.1749, 0.175) || 挂载数据: 无 ) +│ │ │ │ │ ├── 单主机Docker网络通信 --> ( 难度等级: [0.1749, 0.1749) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── Host模式 --> ( 难度等级: [0.1749, 0.1749) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── Container模式 --> ( 难度等级: [0.1749, 0.1749) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── None模式 --> ( 难度等级: [0.1749, 0.1749) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── Bridge模式 --> ( 难度等级: [0.1749, 0.1749) || 挂载数据: 无 ) +│ │ │ │ │ │ └── 基础网络模型的优缺点分析 --> ( 难度等级: [0.1749, 0.1749) || 挂载数据: 无 ) +│ │ │ │ │ └── 跨主机Docker网络通信 --> ( 难度等级: [0.1749, 0.175) || 挂载数据: 无 ) +│ │ │ │ │ ├── Flannel网络方案 --> ( 难度等级: [0.1749, 0.1749) || 挂载数据: blog: 1 ) +│ │ │ │ │ ├── Calico网络方案 --> ( 难度等级: [0.1749, 0.1749) || 挂载数据: blog: 9 ) +│ │ │ │ │ └── 网络方案对比分析 --> ( 难度等级: [0.1749, 0.175) || 挂载数据: 无 ) +│ │ │ │ ├── CNI网络模型 --> ( 难度等级: [0.175, 0.175) || 挂载数据: 无 ) +│ │ │ │ ├── Kubernetes网络策略 --> ( 难度等级: [0.175, 0.175) || 挂载数据: 无 ) +│ │ │ │ └── 开源的网络组件 --> ( 难度等级: [0.175, 0.175) || 挂载数据: 无 ) +│ │ │ └── 共享存储原理 --> ( 难度等级: [0.175, 0.1751) || 挂载数据: 无 ) +│ │ │ ├── 共享存储机制概述 --> ( 难度等级: [0.175, 0.175) || 挂载数据: 无 ) +│ │ │ ├── PV详解 --> ( 难度等级: [0.175, 0.175) || 挂载数据: 无 ) +│ │ │ ├── PVC详解 --> ( 难度等级: [0.175, 0.1751) || 挂载数据: 无 ) +│ │ │ ├── PV和PVC的生命周期 --> ( 难度等级: [0.1751, 0.1751) || 挂载数据: 无 ) +│ │ │ └── StorageClass详解 --> ( 难度等级: [0.1751, 0.1751) || 挂载数据: 无 ) +│ │ ├── Kubernetes开发指南 --> ( 难度等级: [0.1751, 0.176) || 挂载数据: 无 ) +│ │ │ ├── REST简述 --> ( 难度等级: [0.1751, 0.1754) || 挂载数据: 无 ) +│ │ │ ├── Kubernetes API详解 --> ( 难度等级: [0.1754, 0.1757) || 挂载数据: 无 ) +│ │ │ │ ├── Kubernetes API概述 --> ( 难度等级: [0.1754, 0.1755) || 挂载数据: blog: 6 ) +│ │ │ │ ├── API版本 --> ( 难度等级: [0.1755, 0.1755) || 挂载数据: 无 ) +│ │ │ │ ├── API Groups(API组) --> ( 难度等级: [0.1755, 0.1756) || 挂载数据: 无 ) +│ │ │ │ ├── API方法说明 --> ( 难度等级: [0.1756, 0.1757) || 挂载数据: blog: 2 ) +│ │ │ │ └── API响应说明 --> ( 难度等级: [0.1757, 0.1757) || 挂载数据: blog: 1 ) +│ │ │ └── 使用Java程序访问Kubernetes API --> ( 难度等级: [0.1757, 0.176) || 挂载数据: blog: 10 ) +│ │ │ ├── Jersey --> ( 难度等级: [0.1757, 0.1758) || 挂载数据: blog: 2 ) +│ │ │ ├── Fabric8 --> ( 难度等级: [0.1758, 0.1759) || 挂载数据: 无 ) +│ │ │ └── 使用说明 --> ( 难度等级: [0.1759, 0.176) || 挂载数据: 无 ) +│ │ ├── Kubernetes运维指南 --> ( 难度等级: [0.176, 0.177) || 挂载数据: 无 ) +│ │ │ ├── Kubernetes集群管理指南 --> ( 难度等级: [0.176, 0.1763) || 挂载数据: 无 ) +│ │ │ │ ├── Node的管理 --> ( 难度等级: [0.176, 0.1761) || 挂载数据: 无 ) +│ │ │ │ ├── 更新资源对象的Label --> ( 难度等级: [0.1761, 0.1761) || 挂载数据: 无 ) +│ │ │ │ ├── Namespace:集群环境共享与隔离 --> ( 难度等级: [0.1761, 0.1761) || 挂载数据: 无 ) +│ │ │ │ ├── Kubernetes资源管理 --> ( 难度等级: [0.1761, 0.1761) || 挂载数据: blog: 3 ) +│ │ │ │ ├── 资源紧缺时的Pod驱逐机制 --> ( 难度等级: [0.1761, 0.1762) || 挂载数据: 无 ) +│ │ │ │ ├── Pod Disruption Budget(主动驱逐保护) --> ( 难度等级: [0.1762, 0.1762) || 挂载数据: 无 ) +│ │ │ │ ├── Kubernetes集群的高可用部署方案 --> ( 难度等级: [0.1762, 0.1762) || 挂载数据: blog: 4 ) +│ │ │ │ ├── Kubernetes集群监控 --> ( 难度等级: [0.1762, 0.1762) || 挂载数据: blog: 10 ) +│ │ │ │ │ ├── Weave Scope --> ( 难度等级: [0.1762, 0.1762) || 挂载数据: 无 ) +│ │ │ │ │ │ ├── 安装Scope --> ( 难度等级: [0.1762, 0.1762) || 挂载数据: 无 ) +│ │ │ │ │ │ └── 使用Scope --> ( 难度等级: [0.1762, 0.1762) || 挂载数据: 无 ) +│ │ │ │ │ ├── Heapster --> ( 难度等级: [0.1762, 0.1762) || 挂载数据: blog: 6 ) +│ │ │ │ │ │ └── 使用 --> ( 难度等级: [0.1762, 0.1762) || 挂载数据: 无 ) +│ │ │ │ │ └── Prometheus Operator --> ( 难度等级: [0.1762, 0.1762) || 挂载数据: 无 ) +│ │ │ │ │ ├── Prometheus架构 --> ( 难度等级: [0.1762, 0.1762) || 挂载数据: blog: 10 ) +│ │ │ │ │ ├── Prometheus Operator架构 --> ( 难度等级: [0.1762, 0.1762) || 挂载数据: blog: 4 ) +│ │ │ │ │ └── 部署Prometheus Operator --> ( 难度等级: [0.1762, 0.1762) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 集群统一日志管理 --> ( 难度等级: [0.1762, 0.1763) || 挂载数据: 无 ) +│ │ │ │ ├── Kubernetes审计日志(Audit Log) --> ( 难度等级: [0.1763, 0.1763) || 挂载数据: 无 ) +│ │ │ │ ├── 使用Web UI(Dashboard)管理集群 --> ( 难度等级: [0.1763, 0.1763) || 挂载数据: blog: 10 ) +│ │ │ │ └── Helm:Kubernetes应用包管理工具 --> ( 难度等级: [0.1763, 0.1763) || 挂载数据: blog: 8 ) +│ │ │ ├── Trouble Shooting指导 --> ( 难度等级: [0.1763, 0.1767) || 挂载数据: 无 ) +│ │ │ │ ├── 查看系统Event事件 --> ( 难度等级: [0.1763, 0.1764) || 挂载数据: 无 ) +│ │ │ │ ├── 查看容器日志 --> ( 难度等级: [0.1764, 0.1765) || 挂载数据: 无 ) +│ │ │ │ ├── 查看Kubernetes服务日志 --> ( 难度等级: [0.1765, 0.1766) || 挂载数据: 无 ) +│ │ │ │ └── 寻求帮助 --> ( 难度等级: [0.1766, 0.1767) || 挂载数据: 无 ) +│ │ │ └── Kubernetes开发中的新功能 --> ( 难度等级: [0.1767, 0.177) || 挂载数据: 无 ) +│ │ │ ├── Pod Preset(运行时参数注入策略) --> ( 难度等级: [0.1767, 0.1767) || 挂载数据: 无 ) +│ │ │ ├── Cluster Federation(集群联邦) --> ( 难度等级: [0.1767, 0.1768) || 挂载数据: 无 ) +│ │ │ ├── 容器运行时接口(Container Runtime Interface-CRI) --> ( 难度等级: [0.1768, 0.1768) || 挂载数据: blog: 3 ) +│ │ │ ├── 对GPU的支持 --> ( 难度等级: [0.1768, 0.1769) || 挂载数据: 无 ) +│ │ │ └── Kubernetes的演进路线(Roadmap)和开发模式 --> ( 难度等级: [0.1769, 0.177) || 挂载数据: blog: 1 ) +│ │ ├── Kubernetes源码导读 --> ( 难度等级: [0.177, 0.1779) || 挂载数据: 无 ) +│ │ │ ├── Kubernetes源码结构和编译步骤 --> ( 难度等级: [0.177, 0.1771) || 挂载数据: 无 ) +│ │ │ ├── kube-apiserver进程源码分析 --> ( 难度等级: [0.1771, 0.1772) || 挂载数据: 无 ) +│ │ │ │ ├── 进程启动过程 --> ( 难度等级: [0.1771, 0.1772) || 挂载数据: 无 ) +│ │ │ │ └── 关键代码分析 --> ( 难度等级: [0.1772, 0.1772) || 挂载数据: 无 ) +│ │ │ ├── kube-controller-manager进程源码分析 --> ( 难度等级: [0.1772, 0.1774) || 挂载数据: 无 ) +│ │ │ │ ├── 进程启动过程 --> ( 难度等级: [0.1772, 0.1773) || 挂载数据: 无 ) +│ │ │ │ └── 关键代码分析 --> ( 难度等级: [0.1773, 0.1774) || 挂载数据: 无 ) +│ │ │ ├── kube-scheduler进程源码分析 --> ( 难度等级: [0.1774, 0.1775) || 挂载数据: 无 ) +│ │ │ │ ├── 进程启动过程 --> ( 难度等级: [0.1774, 0.1774) || 挂载数据: 无 ) +│ │ │ │ └── 关键代码分析 --> ( 难度等级: [0.1774, 0.1775) || 挂载数据: 无 ) +│ │ │ ├── kubelet进程源码分析 --> ( 难度等级: [0.1775, 0.1776) || 挂载数据: 无 ) +│ │ │ │ ├── 进程启动过程 --> ( 难度等级: [0.1775, 0.1776) || 挂载数据: 无 ) +│ │ │ │ └── 关键代码分析 --> ( 难度等级: [0.1776, 0.1776) || 挂载数据: 无 ) +│ │ │ ├── kube-proxy进程源码分析 --> ( 难度等级: [0.1776, 0.1777) || 挂载数据: 无 ) +│ │ │ │ ├── 进程启动过程 --> ( 难度等级: [0.1776, 0.1777) || 挂载数据: 无 ) +│ │ │ │ └── 关键代码分析 --> ( 难度等级: [0.1777, 0.1777) || 挂载数据: 无 ) +│ │ │ └── kubectl进程源码分析 --> ( 难度等级: [0.1777, 0.1779) || 挂载数据: 无 ) +│ │ │ ├── kubectl create命令 --> ( 难度等级: [0.1777, 0.1778) || 挂载数据: blog: 3 ) +│ │ │ └── rolling-update命令 --> ( 难度等级: [0.1778, 0.1779) || 挂载数据: 无 ) +│ │ ├── 先把Kubernetes跑起来 --> ( 难度等级: [0.1779, 0.1788) || 挂载数据: 无 ) +│ │ │ ├── 先跑起来 --> ( 难度等级: [0.1779, 0.178) || 挂载数据: 无 ) +│ │ │ ├── 创建Kubernetes集群 --> ( 难度等级: [0.178, 0.1782) || 挂载数据: 无 ) +│ │ │ ├── 部署应用 --> ( 难度等级: [0.1782, 0.1783) || 挂载数据: 无 ) +│ │ │ ├── 访问应用 --> ( 难度等级: [0.1783, 0.1785) || 挂载数据: 无 ) +│ │ │ ├── Scale应用 --> ( 难度等级: [0.1785, 0.1786) || 挂载数据: 无 ) +│ │ │ └── 滚动更新 --> ( 难度等级: [0.1786, 0.1788) || 挂载数据: 无 ) +│ │ ├── 重要概念 --> ( 难度等级: [0.1788, 0.1797) || 挂载数据: 无 ) +│ │ ├── 部署Kubernetes Cluster --> ( 难度等级: [0.1797, 0.1806) || 挂载数据: 无 ) +│ │ │ ├── 安装Docker --> ( 难度等级: [0.1797, 0.18) || 挂载数据: 无 ) +│ │ │ │ ├── 手动安装模式 --> ( 难度等级: [0.1797, 0.1798) || 挂载数据: 无 ) +│ │ │ │ ├── Ubuntu中自动化安装Docker --> ( 难度等级: [0.1798, 0.1799) || 挂载数据: 无 ) +│ │ │ │ └── CentOS中自动化安装Docker --> ( 难度等级: [0.1799, 0.18) || 挂载数据: blog: 2 ) +│ │ │ ├── 安装kubelet、kubeadm和kubectl --> ( 难度等级: [0.18, 0.1803) || 挂载数据: 无 ) +│ │ │ └── 用kubeadm创建Cluster --> ( 难度等级: [0.1803, 0.1806) || 挂载数据: blog: 1 ) +│ │ │ ├── 初始化Master --> ( 难度等级: [0.1803, 0.1804) || 挂载数据: 无 ) +│ │ │ ├── 配置kubectl --> ( 难度等级: [0.1804, 0.1805) || 挂载数据: 无 ) +│ │ │ ├── 安装Pod网络 --> ( 难度等级: [0.1805, 0.1806) || 挂载数据: 无 ) +│ │ │ └── 添加k8s-node1 和k8s-node2 --> ( 难度等级: [0.1806, 0.1806) || 挂载数据: 无 ) +│ │ ├── Kubernetes架构 --> ( 难度等级: [0.1806, 0.1816) || 挂载数据: 无 ) +│ │ │ ├── Master节点 --> ( 难度等级: [0.1806, 0.1809) || 挂载数据: 无 ) +│ │ │ ├── Node节点 --> ( 难度等级: [0.1809, 0.1811) || 挂载数据: blog: 1 ) +│ │ │ ├── 完整的架构图 --> ( 难度等级: [0.1811, 0.1813) || 挂载数据: 无 ) +│ │ │ └── 用例子把它们串起来 --> ( 难度等级: [0.1813, 0.1816) || 挂载数据: 无 ) +│ │ ├── 运行应用 --> ( 难度等级: [0.1816, 0.1825) || 挂载数据: 无 ) +│ │ │ ├── DaemonSet --> ( 难度等级: [0.1816, 0.182) || 挂载数据: 无 ) +│ │ │ │ ├── kube-flannel-ds --> ( 难度等级: [0.1816, 0.1817) || 挂载数据: 无 ) +│ │ │ │ ├── kube-proxy --> ( 难度等级: [0.1817, 0.1819) || 挂载数据: 无 ) +│ │ │ │ └── 运行自己的DaemonSet --> ( 难度等级: [0.1819, 0.182) || 挂载数据: 无 ) +│ │ │ └── Job --> ( 难度等级: [0.182, 0.1825) || 挂载数据: 无 ) +│ │ │ ├── Pod失败的情况 --> ( 难度等级: [0.182, 0.1822) || 挂载数据: 无 ) +│ │ │ ├── Job的并行性 --> ( 难度等级: [0.1822, 0.1823) || 挂载数据: blog: 2 ) +│ │ │ └── 定时Job --> ( 难度等级: [0.1823, 0.1825) || 挂载数据: 无 ) +│ │ ├── 通过Service访问Pod --> ( 难度等级: [0.1825, 0.1834) || 挂载数据: 无 ) +│ │ │ ├── 创建Service --> ( 难度等级: [0.1825, 0.1827) || 挂载数据: 无 ) +│ │ │ ├── Cluster IP底层实现 --> ( 难度等级: [0.1827, 0.1829) || 挂载数据: blog: 2 ) +│ │ │ ├── DNS访问Service --> ( 难度等级: [0.1829, 0.1832) || 挂载数据: 无 ) +│ │ │ └── 外网如何访问Service --> ( 难度等级: [0.1832, 0.1834) || 挂载数据: 无 ) +│ │ ├── Rolling Update --> ( 难度等级: [0.1834, 0.1843) || 挂载数据: 无 ) +│ │ │ └── 实践 --> ( 难度等级: [0.1834, 0.1843) || 挂载数据: 无 ) +│ │ ├── Health Check --> ( 难度等级: [0.1843, 0.1853) || 挂载数据: 无 ) +│ │ │ ├── 默认的健康检查 --> ( 难度等级: [0.1843, 0.1845) || 挂载数据: 无 ) +│ │ │ ├── Liveness探测 --> ( 难度等级: [0.1845, 0.1847) || 挂载数据: 无 ) +│ │ │ ├── Readiness探测 --> ( 难度等级: [0.1847, 0.1849) || 挂载数据: 无 ) +│ │ │ ├── Health Check在Scale Up中的应用 --> ( 难度等级: [0.1849, 0.1851) || 挂载数据: blog: 2 ) +│ │ │ └── Health Check在滚动更新中的应用 --> ( 难度等级: [0.1851, 0.1853) || 挂载数据: 无 ) +│ │ ├── 数据管理 --> ( 难度等级: [0.1853, 0.1862) || 挂载数据: 无 ) +│ │ │ ├── Volume --> ( 难度等级: [0.1853, 0.1856) || 挂载数据: 无 ) +│ │ │ │ ├── emptyDir --> ( 难度等级: [0.1853, 0.1854) || 挂载数据: 无 ) +│ │ │ │ ├── hostPath --> ( 难度等级: [0.1854, 0.1855) || 挂载数据: 无 ) +│ │ │ │ └── 外部Storage Provider --> ( 难度等级: [0.1855, 0.1856) || 挂载数据: 无 ) +│ │ │ ├── PersistentVolume & PersistentVolumeClaim --> ( 难度等级: [0.1856, 0.1859) || 挂载数据: 无 ) +│ │ │ │ ├── NFS PersistentVolume --> ( 难度等级: [0.1856, 0.1857) || 挂载数据: 无 ) +│ │ │ │ ├── 回收PV --> ( 难度等级: [0.1857, 0.1858) || 挂载数据: 无 ) +│ │ │ │ └── PV动态供给 --> ( 难度等级: [0.1858, 0.1859) || 挂载数据: 无 ) +│ │ │ └── 一个数据库例子 --> ( 难度等级: [0.1859, 0.1862) || 挂载数据: 无 ) +│ │ ├── Secret & Configmap --> ( 难度等级: [0.1862, 0.1871) || 挂载数据: 无 ) +│ │ │ ├── 创建Secret --> ( 难度等级: [0.1862, 0.1864) || 挂载数据: 无 ) +│ │ │ ├── 查看Secret --> ( 难度等级: [0.1864, 0.1866) || 挂载数据: 无 ) +│ │ │ ├── 在Pod中使用Secret --> ( 难度等级: [0.1866, 0.1869) || 挂载数据: 无 ) +│ │ │ │ ├── Volume方式 --> ( 难度等级: [0.1866, 0.1868) || 挂载数据: 无 ) +│ │ │ │ └── 环境变量方式 --> ( 难度等级: [0.1868, 0.1869) || 挂载数据: 无 ) +│ │ │ └── ConfigMap --> ( 难度等级: [0.1869, 0.1871) || 挂载数据: 无 ) +│ │ ├── Helm—Kubernetes的包管理器 --> ( 难度等级: [0.1871, 0.188) || 挂载数据: 无 ) +│ │ │ ├── Why Helm --> ( 难度等级: [0.1871, 0.1873) || 挂载数据: 无 ) +│ │ │ ├── Helm架构 --> ( 难度等级: [0.1873, 0.1876) || 挂载数据: 无 ) +│ │ │ ├── 安装Helm --> ( 难度等级: [0.1876, 0.1878) || 挂载数据: 无 ) +│ │ │ │ ├── Helm客户端 --> ( 难度等级: [0.1876, 0.1877) || 挂载数据: blog: 3 ) +│ │ │ │ └── Tiller服务器 --> ( 难度等级: [0.1877, 0.1878) || 挂载数据: 无 ) +│ │ │ └── chart详解 --> ( 难度等级: [0.1878, 0.188) || 挂载数据: 无 ) +│ │ │ ├── chart目录结构 --> ( 难度等级: [0.1878, 0.1878) || 挂载数据: blog: 1 ) +│ │ │ ├── chart模板 --> ( 难度等级: [0.1878, 0.1879) || 挂载数据: 无 ) +│ │ │ ├── 再次实践MySQL chart --> ( 难度等级: [0.1879, 0.1879) || 挂载数据: blog: 1 ) +│ │ │ ├── 升级和回滚release --> ( 难度等级: [0.1879, 0.188) || 挂载数据: 无 ) +│ │ │ └── 开发自己的chart --> ( 难度等级: [0.188, 0.188) || 挂载数据: 无 ) +│ │ ├── 网络 --> ( 难度等级: [0.188, 0.1889) || 挂载数据: 无 ) +│ │ │ ├── 各种网络方案 --> ( 难度等级: [0.188, 0.1885) || 挂载数据: 无 ) +│ │ │ └── Network Policy --> ( 难度等级: [0.1885, 0.1889) || 挂载数据: 无 ) +│ │ │ ├── 部署Canal --> ( 难度等级: [0.1885, 0.1887) || 挂载数据: 无 ) +│ │ │ └── 实践Network Policy --> ( 难度等级: [0.1887, 0.1889) || 挂载数据: blog: 3 ) +│ │ ├── Kubernetes Dashboard --> ( 难度等级: [0.1889, 0.1899) || 挂载数据: 无 ) +│ │ │ ├── 安装 --> ( 难度等级: [0.1889, 0.1892) || 挂载数据: 无 ) +│ │ │ ├── 配置登录权限 --> ( 难度等级: [0.1892, 0.1894) || 挂载数据: 无 ) +│ │ │ ├── Dashboard界面结构 --> ( 难度等级: [0.1894, 0.1896) || 挂载数据: blog: 7 ) +│ │ │ └── 典型使用场景 --> ( 难度等级: [0.1896, 0.1899) || 挂载数据: 无 ) +│ │ │ ├── 部署Deployment --> ( 难度等级: [0.1896, 0.1897) || 挂载数据: 无 ) +│ │ │ ├── 在线操作 --> ( 难度等级: [0.1897, 0.1897) || 挂载数据: blog: 1 ) +│ │ │ ├── 查看资源详细信息 --> ( 难度等级: [0.1897, 0.1898) || 挂载数据: 无 ) +│ │ │ └── 查看Pod日志 --> ( 难度等级: [0.1898, 0.1899) || 挂载数据: 无 ) +│ │ ├── Kubernetes集群日志管理 --> ( 难度等级: [0.1899, 0.1908) || 挂载数据: 无 ) +│ │ ├── Docker简介 --> ( 难度等级: [0.1908, 0.1917) || 挂载数据: 无 ) +│ │ │ ├── 什么是Docker --> ( 难度等级: [0.1908, 0.1911) || 挂载数据: 无 ) +│ │ │ ├── Docker基本概念 --> ( 难度等级: [0.1911, 0.1914) || 挂载数据: 无 ) +│ │ │ │ ├── 镜像 --> ( 难度等级: [0.1911, 0.1912) || 挂载数据: 无 ) +│ │ │ │ ├── 容器 --> ( 难度等级: [0.1912, 0.1913) || 挂载数据: 无 ) +│ │ │ │ └── 镜像仓库 --> ( 难度等级: [0.1913, 0.1914) || 挂载数据: 无 ) +│ │ │ └── Docker架构及原理 --> ( 难度等级: [0.1914, 0.1917) || 挂载数据: 无 ) +│ │ │ ├── Docker架构 --> ( 难度等级: [0.1914, 0.1915) || 挂载数据: 无 ) +│ │ │ ├── Docker原理 --> ( 难度等级: [0.1915, 0.1916) || 挂载数据: 无 ) +│ │ │ ├── 容器网络 --> ( 难度等级: [0.1916, 0.1916) || 挂载数据: 无 ) +│ │ │ └── 容器存储 --> ( 难度等级: [0.1916, 0.1917) || 挂载数据: 无 ) +│ │ ├── 容器引擎 --> ( 难度等级: [0.1917, 0.1926) || 挂载数据: 无 ) +│ │ │ ├── 容器引擎实现原理 --> ( 难度等级: [0.1917, 0.1919) || 挂载数据: 无 ) +│ │ │ ├── 容器生命周期管理 --> ( 难度等级: [0.1919, 0.1921) || 挂载数据: 无 ) +│ │ │ ├── 容器状态管理 --> ( 难度等级: [0.1921, 0.1923) || 挂载数据: 无 ) +│ │ │ ├── 访问运行状态容器 --> ( 难度等级: [0.1923, 0.1924) || 挂载数据: 无 ) +│ │ │ └── 访问容器内容 --> ( 难度等级: [0.1924, 0.1926) || 挂载数据: 无 ) +│ │ ├── 镜像管理 --> ( 难度等级: [0.1926, 0.1935) || 挂载数据: 无 ) +│ │ │ ├── Dockerfile及镜像制作 --> ( 难度等级: [0.1926, 0.1928) || 挂载数据: 无 ) +│ │ │ │ ├── Dockerfile的作用 --> ( 难度等级: [0.1926, 0.1927) || 挂载数据: 无 ) +│ │ │ │ ├── Dockerfile文件构成 --> ( 难度等级: [0.1927, 0.1927) || 挂载数据: blog: 10 ) +│ │ │ │ ├── 常用命令集 --> ( 难度等级: [0.1927, 0.1928) || 挂载数据: 无 ) +│ │ │ │ └── 构建镜像 --> ( 难度等级: [0.1928, 0.1928) || 挂载数据: blog: 1 ) +│ │ │ ├── 镜像基本操作 --> ( 难度等级: [0.1928, 0.193) || 挂载数据: 无 ) +│ │ │ │ ├── 从镜像仓库下载镜像 --> ( 难度等级: [0.1928, 0.1928) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 将本地镜像上传到镜像仓库 --> ( 难度等级: [0.1928, 0.1929) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 查看本地镜像 --> ( 难度等级: [0.1929, 0.1929) || 挂载数据: 无 ) +│ │ │ │ ├── 导出和导入本地镜像 --> ( 难度等级: [0.1929, 0.1929) || 挂载数据: 无 ) +│ │ │ │ ├── 构建镜像 --> ( 难度等级: [0.1929, 0.1929) || 挂载数据: 无 ) +│ │ │ │ ├── 修改本地镜像标识 --> ( 难度等级: [0.1929, 0.193) || 挂载数据: 无 ) +│ │ │ │ └── 删除本地镜像 --> ( 难度等级: [0.193, 0.193) || 挂载数据: blog: 3 ) +│ │ │ ├── Dockerfile优化 --> ( 难度等级: [0.193, 0.1932) || 挂载数据: 无 ) +│ │ │ │ ├── Dockerfile检查项 --> ( 难度等级: [0.193, 0.1931) || 挂载数据: 无 ) +│ │ │ │ └── 检查及优化工具 --> ( 难度等级: [0.1931, 0.1932) || 挂载数据: 无 ) +│ │ │ ├── 操作系统基础镜像制作 --> ( 难度等级: [0.1932, 0.1934) || 挂载数据: 无 ) +│ │ │ │ ├── 操作系统版本选择 --> ( 难度等级: [0.1932, 0.1932) || 挂载数据: 无 ) +│ │ │ │ ├── 操作系统参数调整 --> ( 难度等级: [0.1932, 0.1932) || 挂载数据: 无 ) +│ │ │ │ ├── 确定基础rpm包范围 --> ( 难度等级: [0.1932, 0.1933) || 挂载数据: 无 ) +│ │ │ │ ├── 确定常用命令范围 --> ( 难度等级: [0.1933, 0.1933) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 操作系统镜像制作过程 --> ( 难度等级: [0.1933, 0.1933) || 挂载数据: blog: 4 ) +│ │ │ │ └── 系统资源限制配置说明 --> ( 难度等级: [0.1933, 0.1934) || 挂载数据: 无 ) +│ │ │ └── 容器镜像安全加固 --> ( 难度等级: [0.1934, 0.1935) || 挂载数据: 无 ) +│ │ │ ├── 容器安全加固规范 --> ( 难度等级: [0.1934, 0.1935) || 挂载数据: 无 ) +│ │ │ └── 安全检查工具 --> ( 难度等级: [0.1935, 0.1935) || 挂载数据: 无 ) +│ │ ├── 镜像仓库管理 --> ( 难度等级: [0.1935, 0.1945) || 挂载数据: 无 ) +│ │ │ ├── Docker Registry --> ( 难度等级: [0.1935, 0.194) || 挂载数据: 无 ) +│ │ │ │ ├── Docker Hub --> ( 难度等级: [0.1935, 0.1937) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 第三方公共仓库 --> ( 难度等级: [0.1937, 0.1939) || 挂载数据: 无 ) +│ │ │ │ └── 建立私有镜像仓库 --> ( 难度等级: [0.1939, 0.194) || 挂载数据: 无 ) +│ │ │ └── Harbor --> ( 难度等级: [0.194, 0.1945) || 挂载数据: 无 ) +│ │ │ ├── Harbor架构 --> ( 难度等级: [0.194, 0.1941) || 挂载数据: blog: 4 ) +│ │ │ ├── Harbor的镜像同步机制 --> ( 难度等级: [0.1941, 0.1942) || 挂载数据: 无 ) +│ │ │ ├── Harbor用户认证 --> ( 难度等级: [0.1942, 0.1944) || 挂载数据: 无 ) +│ │ │ └── Harbor容器镜像安全扫描 --> ( 难度等级: [0.1944, 0.1945) || 挂载数据: blog: 1 ) +│ │ ├── Docker相关部署实践 --> ( 难度等级: [0.1945, 0.1954) || 挂载数据: 无 ) +│ │ │ ├── MySQL Docker部署实践 --> ( 难度等级: [0.1945, 0.1949) || 挂载数据: 无 ) +│ │ │ │ ├── MySQL简介 --> ( 难度等级: [0.1945, 0.1947) || 挂载数据: blog: 10 ) +│ │ │ │ └── MySQL容器化操作实践 --> ( 难度等级: [0.1947, 0.1949) || 挂载数据: blog: 2 ) +│ │ │ └── Docker支持GPU实践 --> ( 难度等级: [0.1949, 0.1954) || 挂载数据: 无 ) +│ │ │ ├── GPU简介 --> ( 难度等级: [0.1949, 0.1951) || 挂载数据: 无 ) +│ │ │ ├── CPU与GPU的对比 --> ( 难度等级: [0.1951, 0.1952) || 挂载数据: blog: 2 ) +│ │ │ └── 通过nvidia-docker使用GPU --> ( 难度等级: [0.1952, 0.1954) || 挂载数据: blog: 1 ) +│ │ ├── Kubernetes简介 --> ( 难度等级: [0.1954, 0.1963) || 挂载数据: 无 ) +│ │ │ ├── PaaS简介 --> ( 难度等级: [0.1954, 0.1959) || 挂载数据: 无 ) +│ │ │ │ ├── 传统PaaS系统 --> ( 难度等级: [0.1954, 0.1956) || 挂载数据: blog: 10 ) +│ │ │ │ └── 基于Docker的新型PaaS平台 --> ( 难度等级: [0.1956, 0.1959) || 挂载数据: blog: 10 ) +│ │ │ └── Kubernetes核心概念 --> ( 难度等级: [0.1959, 0.1963) || 挂载数据: 无 ) +│ │ ├── Pod相关核心技术 --> ( 难度等级: [0.1963, 0.1972) || 挂载数据: 无 ) +│ │ │ ├── Label --> ( 难度等级: [0.1963, 0.1968) || 挂载数据: 无 ) +│ │ │ └── 健康检查 --> ( 难度等级: [0.1968, 0.1972) || 挂载数据: 无 ) +│ │ │ ├── 流程健康检查 --> ( 难度等级: [0.1968, 0.197) || 挂载数据: 无 ) +│ │ │ └── 应用健康检查 --> ( 难度等级: [0.197, 0.1972) || 挂载数据: 无 ) +│ │ ├── Kubernetes Service --> ( 难度等级: [0.1972, 0.1982) || 挂载数据: 无 ) +│ │ │ ├── DNS服务发现机制 --> ( 难度等级: [0.1972, 0.1974) || 挂载数据: 无 ) +│ │ │ ├── Headless服务 --> ( 难度等级: [0.1974, 0.1976) || 挂载数据: 无 ) +│ │ │ ├── Kubernetes服务 --> ( 难度等级: [0.1976, 0.1978) || 挂载数据: 无 ) +│ │ │ │ ├── ClusterIP --> ( 难度等级: [0.1976, 0.1977) || 挂载数据: blog: 1 ) +│ │ │ │ ├── NodePort --> ( 难度等级: [0.1977, 0.1977) || 挂载数据: blog: 1 ) +│ │ │ │ └── LoadBalancer --> ( 难度等级: [0.1977, 0.1978) || 挂载数据: 无 ) +│ │ │ ├── 网络策略 --> ( 难度等级: [0.1978, 0.198) || 挂载数据: 无 ) +│ │ │ └── 完整的Kubernetes服务发布实践 --> ( 难度等级: [0.198, 0.1982) || 挂载数据: 无 ) +│ │ │ ├── 各Kubernetes集群 --> ( 难度等级: [0.198, 0.198) || 挂载数据: blog: 10 ) +│ │ │ ├── Ingress服务发布 --> ( 难度等级: [0.198, 0.1981) || 挂载数据: blog: 1 ) +│ │ │ └── 服务发现 --> ( 难度等级: [0.1981, 0.1982) || 挂载数据: 无 ) +│ │ ├── Kubernetes存储 --> ( 难度等级: [0.1982, 0.1991) || 挂载数据: 无 ) +│ │ │ ├── 存储使用场景 --> ( 难度等级: [0.1982, 0.1984) || 挂载数据: 无 ) +│ │ │ ├── 文件存储的几种形式 --> ( 难度等级: [0.1984, 0.1986) || 挂载数据: 无 ) +│ │ │ ├── Flex Volume存储管理方案 --> ( 难度等级: [0.1986, 0.1988) || 挂载数据: 无 ) +│ │ │ │ └── 如何实现灵活存储组件 --> ( 难度等级: [0.1986, 0.1988) || 挂载数据: 无 ) +│ │ │ └── 标准化容器存储接口CSI --> ( 难度等级: [0.1988, 0.1991) || 挂载数据: 无 ) +│ │ └── 安全及多租户配额管理 --> ( 难度等级: [0.1991, 0.2) || 挂载数据: 无 ) +│ │ └── API服务器认证 --> ( 难度等级: [0.1991, 0.2) || 挂载数据: 无 ) +│ ├── DevOps --> ( 难度等级: [0.2, 0.2286) || 挂载数据: 无 ) +│ │ ├── 应用中心 --> ( 难度等级: [0.2, 0.2017) || 挂载数据: 无 ) +│ │ │ ├── Helm Hub --> ( 难度等级: [0.2, 0.2003) || 挂载数据: 无 ) +│ │ │ ├── Operator Hub --> ( 难度等级: [0.2003, 0.2007) || 挂载数据: 无 ) +│ │ │ ├── Aliyun App Hub --> ( 难度等级: [0.2007, 0.201) || 挂载数据: blog: 7 ) +│ │ │ ├── Kubernetes App Hub --> ( 难度等级: [0.201, 0.2013) || 挂载数据: 无 ) +│ │ │ └── Prometheus Exporter Hub --> ( 难度等级: [0.2013, 0.2017) || 挂载数据: 无 ) +│ │ ├── 运维 --> ( 难度等级: [0.2017, 0.2034) || 挂载数据: 无 ) +│ │ │ └── 模板 --> ( 难度等级: [0.2017, 0.2034) || 挂载数据: 无 ) +│ │ │ ├── YAML --> ( 难度等级: [0.2017, 0.202) || 挂载数据: 无 ) +│ │ │ ├── Helm --> ( 难度等级: [0.202, 0.2022) || 挂载数据: 无 ) +│ │ │ ├── KUDO(Kubernetes Universal Declarative Operator) --> ( 难度等级: [0.2022, 0.2025) || 挂载数据: 无 ) +│ │ │ ├── OAM(Open Application Model) --> ( 难度等级: [0.2025, 0.2028) || 挂载数据: 无 ) +│ │ │ ├── OpenKruise --> ( 难度等级: [0.2028, 0.2031) || 挂载数据: 无 ) +│ │ │ └── MetaController --> ( 难度等级: [0.2031, 0.2034) || 挂载数据: 无 ) +│ │ ├── 监控 --> ( 难度等级: [0.2034, 0.205) || 挂载数据: 无 ) +│ │ │ ├── Prometheus --> ( 难度等级: [0.2034, 0.2039) || 挂载数据: 无 ) +│ │ │ ├── Grafana --> ( 难度等级: [0.2039, 0.2045) || 挂载数据: 无 ) +│ │ │ └── Alertmanager --> ( 难度等级: [0.2045, 0.205) || 挂载数据: 无 ) +│ │ ├── CI/CD --> ( 难度等级: [0.205, 0.2067) || 挂载数据: blog: 2 ) +│ │ │ ├── Jenkins --> ( 难度等级: [0.205, 0.2055) || 挂载数据: blog: 2 ) +│ │ │ ├── Argo --> ( 难度等级: [0.2055, 0.2059) || 挂载数据: 无 ) +│ │ │ ├── Tekton --> ( 难度等级: [0.2059, 0.2063) || 挂载数据: 无 ) +│ │ │ └── Drone --> ( 难度等级: [0.2063, 0.2067) || 挂载数据: blog: 1 ) +│ │ ├── 日志 --> ( 难度等级: [0.2067, 0.2084) || 挂载数据: 无 ) +│ │ │ ├── ELK --> ( 难度等级: [0.2067, 0.2073) || 挂载数据: blog: 2 ) +│ │ │ │ ├── ElasticSearch --> ( 难度等级: [0.2067, 0.2069) || 挂载数据: blog: 6 ) +│ │ │ │ ├── Logstash --> ( 难度等级: [0.2069, 0.2071) || 挂载数据: 无 ) +│ │ │ │ └── Kibana --> ( 难度等级: [0.2071, 0.2073) || 挂载数据: blog: 1 ) +│ │ │ ├── EFK --> ( 难度等级: [0.2073, 0.2078) || 挂载数据: 无 ) +│ │ │ │ ├── ElasticSearch --> ( 难度等级: [0.2073, 0.2075) || 挂载数据: 无 ) +│ │ │ │ ├── Fluentd --> ( 难度等级: [0.2075, 0.2077) || 挂载数据: 无 ) +│ │ │ │ └── Kibana --> ( 难度等级: [0.2077, 0.2078) || 挂载数据: 无 ) +│ │ │ └── Loki --> ( 难度等级: [0.2078, 0.2084) || 挂载数据: 无 ) +│ │ │ ├── Loki --> ( 难度等级: [0.2078, 0.208) || 挂载数据: 无 ) +│ │ │ ├── Promtail --> ( 难度等级: [0.208, 0.2082) || 挂载数据: 无 ) +│ │ │ └── Grafana --> ( 难度等级: [0.2082, 0.2084) || 挂载数据: 无 ) +│ │ ├── 采集 --> ( 难度等级: [0.2084, 0.2101) || 挂载数据: 无 ) +│ │ │ ├── Logpilot --> ( 难度等级: [0.2084, 0.209) || 挂载数据: 无 ) +│ │ │ ├── Fluentbit --> ( 难度等级: [0.209, 0.2095) || 挂载数据: 无 ) +│ │ │ └── Fluentd --> ( 难度等级: [0.2095, 0.2101) || 挂载数据: 无 ) +│ │ ├── DevOps介绍 --> ( 难度等级: [0.2101, 0.2118) || 挂载数据: 无 ) +│ │ │ ├── 敏捷、持续交付和三步法 --> ( 难度等级: [0.2101, 0.2105) || 挂载数据: 无 ) +│ │ │ │ ├── 制造业价值流 --> ( 难度等级: [0.2101, 0.2102) || 挂载数据: 无 ) +│ │ │ │ ├── 技术价值流 --> ( 难度等级: [0.2102, 0.2104) || 挂载数据: 无 ) +│ │ │ │ │ ├── 聚焦于部署前置时间 --> ( 难度等级: [0.2102, 0.2103) || 挂载数据: 无 ) +│ │ │ │ │ └── 关注返工指标——%C/A --> ( 难度等级: [0.2103, 0.2104) || 挂载数据: 无 ) +│ │ │ │ └── 三步工作法:DevOps的基础原则 --> ( 难度等级: [0.2104, 0.2105) || 挂载数据: blog: 10 ) +│ │ │ ├── 第一步:流动原则 --> ( 难度等级: [0.2105, 0.2109) || 挂载数据: 无 ) +│ │ │ │ ├── 使工作可见 --> ( 难度等级: [0.2105, 0.2106) || 挂载数据: 无 ) +│ │ │ │ ├── 限制在制品数 --> ( 难度等级: [0.2106, 0.2106) || 挂载数据: 无 ) +│ │ │ │ ├── 减小批量大小 --> ( 难度等级: [0.2106, 0.2107) || 挂载数据: 无 ) +│ │ │ │ ├── 减少交接次数 --> ( 难度等级: [0.2107, 0.2108) || 挂载数据: 无 ) +│ │ │ │ ├── 持续识别和改善约束点 --> ( 难度等级: [0.2108, 0.2109) || 挂载数据: 无 ) +│ │ │ │ └── 消除价值流中的困境和浪费 --> ( 难度等级: [0.2109, 0.2109) || 挂载数据: 无 ) +│ │ │ ├── 第二步:反馈原则 --> ( 难度等级: [0.2109, 0.2113) || 挂载数据: 无 ) +│ │ │ │ ├── 在复杂系统中安全地工作 --> ( 难度等级: [0.2109, 0.2111) || 挂载数据: 无 ) +│ │ │ │ ├── 在源头保障质量 --> ( 难度等级: [0.2111, 0.2112) || 挂载数据: 无 ) +│ │ │ │ └── 为下游工作中心而优化 --> ( 难度等级: [0.2112, 0.2113) || 挂载数据: 无 ) +│ │ │ └── 第三步:持续学习与实验原则 --> ( 难度等级: [0.2113, 0.2118) || 挂载数据: 无 ) +│ │ │ ├── 建立学习型组织和安全文化 --> ( 难度等级: [0.2113, 0.2114) || 挂载数据: 无 ) +│ │ │ ├── 将日常工作的改进制度化 --> ( 难度等级: [0.2114, 0.2115) || 挂载数据: 无 ) +│ │ │ ├── 把局部发现转化为全局优化 --> ( 难度等级: [0.2115, 0.2116) || 挂载数据: 无 ) +│ │ │ ├── 在日常工作中注入弹性模式 --> ( 难度等级: [0.2116, 0.2117) || 挂载数据: 无 ) +│ │ │ └── 领导层强化学习文化 --> ( 难度等级: [0.2117, 0.2118) || 挂载数据: blog: 1 ) +│ │ ├── 从何处开始 --> ( 难度等级: [0.2118, 0.2134) || 挂载数据: 无 ) +│ │ │ ├── 选择合适的价值流作为切入点 --> ( 难度等级: [0.2118, 0.2122) || 挂载数据: 无 ) +│ │ │ │ ├── 兼顾记录型系统和交互型系统 --> ( 难度等级: [0.2118, 0.2119) || 挂载数据: 无 ) +│ │ │ │ ├── 从最乐于创新的团队开始 --> ( 难度等级: [0.2119, 0.212) || 挂载数据: 无 ) +│ │ │ │ └── 扩大DevOps的范围 --> ( 难度等级: [0.212, 0.2122) || 挂载数据: 无 ) +│ │ │ ├── 理解、可视化和运用价值流 --> ( 难度等级: [0.2122, 0.2126) || 挂载数据: 无 ) +│ │ │ │ ├── 确定创造客户价值所需的团队 --> ( 难度等级: [0.2122, 0.2123) || 挂载数据: 无 ) +│ │ │ │ ├── 针对团队工作绘制价值流图 --> ( 难度等级: [0.2123, 0.2124) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 组建专门的转型团队 --> ( 难度等级: [0.2124, 0.2125) || 挂载数据: 无 ) +│ │ │ │ │ ├── 拥有共同的目标 --> ( 难度等级: [0.2124, 0.2124) || 挂载数据: 无 ) +│ │ │ │ │ ├── 保持小跨度的改进计划 --> ( 难度等级: [0.2124, 0.2124) || 挂载数据: 无 ) +│ │ │ │ │ ├── 为非功能性需求预留20%的开发时间,减少技术债务 --> ( 难度等级: [0.2124, 0.2125) || 挂载数据: 无 ) +│ │ │ │ │ └── 提高工作的可视化程度 --> ( 难度等级: [0.2125, 0.2125) || 挂载数据: 无 ) +│ │ │ │ └── 用工具强化预期行为 --> ( 难度等级: [0.2125, 0.2126) || 挂载数据: 无 ) +│ │ │ ├── 参考康威定律设计组织结构 --> ( 难度等级: [0.2126, 0.213) || 挂载数据: 无 ) +│ │ │ │ ├── 组织原型 --> ( 难度等级: [0.2126, 0.2127) || 挂载数据: 无 ) +│ │ │ │ ├── 过度职能导向的危害(“成本优化”) --> ( 难度等级: [0.2127, 0.2127) || 挂载数据: 无 ) +│ │ │ │ ├── 组建以市场为导向的团队(“速度优化”) --> ( 难度等级: [0.2127, 0.2128) || 挂载数据: 无 ) +│ │ │ │ ├── 使职能导向有效 --> ( 难度等级: [0.2128, 0.2128) || 挂载数据: 无 ) +│ │ │ │ ├── 将测试、运维和信息安全融入日常工作 --> ( 难度等级: [0.2128, 0.2129) || 挂载数据: 无 ) +│ │ │ │ ├── 使团队成员都成为通才 --> ( 难度等级: [0.2129, 0.2129) || 挂载数据: 无 ) +│ │ │ │ ├── 根据康威定律设定团队边界 --> ( 难度等级: [0.2129, 0.213) || 挂载数据: 无 ) +│ │ │ │ └── 创建松耦合架构,提高生产力和安全性 --> ( 难度等级: [0.213, 0.213) || 挂载数据: 无 ) +│ │ │ └── 将运维融入日常开发工作 --> ( 难度等级: [0.213, 0.2134) || 挂载数据: 无 ) +│ │ │ ├── 创建共享服务,提高开发生产力 --> ( 难度等级: [0.213, 0.2131) || 挂载数据: 无 ) +│ │ │ ├── 将运维工程师融入服务团队 --> ( 难度等级: [0.2131, 0.2132) || 挂载数据: 无 ) +│ │ │ ├── 为每个服务团队分派运维联络人 --> ( 难度等级: [0.2132, 0.2133) || 挂载数据: 无 ) +│ │ │ └── 邀请运维工程师参加开发团队的会议 --> ( 难度等级: [0.2133, 0.2134) || 挂载数据: 无 ) +│ │ │ ├── 邀请运维工程师参加每日站会 --> ( 难度等级: [0.2133, 0.2134) || 挂载数据: blog: 10 ) +│ │ │ ├── 邀请运维工程师参加回顾会议 --> ( 难度等级: [0.2134, 0.2134) || 挂载数据: 无 ) +│ │ │ └── 使用看板图展示运维工作 --> ( 难度等级: [0.2134, 0.2134) || 挂载数据: blog: 2 ) +│ │ ├── 第一步:流动的技术实践 --> ( 难度等级: [0.2134, 0.2151) || 挂载数据: 无 ) +│ │ │ ├── 为部署流水线奠定基础 --> ( 难度等级: [0.2134, 0.2138) || 挂载数据: 无 ) +│ │ │ │ ├── 按需搭建开发环境、测试环境和生产环境 --> ( 难度等级: [0.2134, 0.2135) || 挂载数据: 无 ) +│ │ │ │ ├── 应用统一的代码仓库 --> ( 难度等级: [0.2135, 0.2136) || 挂载数据: 无 ) +│ │ │ │ ├── 使基础设施的重建更容易 --> ( 难度等级: [0.2136, 0.2137) || 挂载数据: 无 ) +│ │ │ │ └── 运行在类生产环境里才算“完成” --> ( 难度等级: [0.2137, 0.2138) || 挂载数据: 无 ) +│ │ │ ├── 实现快速可靠的自动化测试 --> ( 难度等级: [0.2138, 0.2141) || 挂载数据: 无 ) +│ │ │ │ ├── 对代码和环境做持续构建、测试和集成 --> ( 难度等级: [0.2138, 0.2139) || 挂载数据: 无 ) +│ │ │ │ ├── 构建快速可靠的自动化测试套件 --> ( 难度等级: [0.2139, 0.214) || 挂载数据: 无 ) +│ │ │ │ │ ├── 在自动化测试中尽早发现错误 --> ( 难度等级: [0.2139, 0.2139) || 挂载数据: 无 ) +│ │ │ │ │ ├── 尽可能并行地快速执行测试 --> ( 难度等级: [0.2139, 0.2139) || 挂载数据: 无 ) +│ │ │ │ │ ├── 先编写自动化测试 --> ( 难度等级: [0.2139, 0.2139) || 挂载数据: 无 ) +│ │ │ │ │ ├── 尽量将手动测试自动化 --> ( 难度等级: [0.2139, 0.214) || 挂载数据: 无 ) +│ │ │ │ │ ├── 在测试套件中集成性能测试 --> ( 难度等级: [0.214, 0.214) || 挂载数据: 无 ) +│ │ │ │ │ └── 在测试套件中集成非功能性需求测试 --> ( 难度等级: [0.214, 0.214) || 挂载数据: 无 ) +│ │ │ │ └── 在部署流水线失败时拉下安灯绳 --> ( 难度等级: [0.214, 0.2141) || 挂载数据: 无 ) +│ │ │ ├── 应用和实践持续集成 --> ( 难度等级: [0.2141, 0.2145) || 挂载数据: 无 ) +│ │ │ │ ├── 小批量开发与大批量合并 --> ( 难度等级: [0.2141, 0.2143) || 挂载数据: 无 ) +│ │ │ │ └── 应用基于主干的开发实践 --> ( 难度等级: [0.2143, 0.2145) || 挂载数据: blog: 3 ) +│ │ │ ├── 自动化和低风险发布 --> ( 难度等级: [0.2145, 0.2148) || 挂载数据: 无 ) +│ │ │ │ ├── 自动化部署流程 --> ( 难度等级: [0.2145, 0.2146) || 挂载数据: 无 ) +│ │ │ │ │ ├── 应用自动化的自助式部署 --> ( 难度等级: [0.2145, 0.2145) || 挂载数据: 无 ) +│ │ │ │ │ └── 在部署流水线中集成代码部署 --> ( 难度等级: [0.2145, 0.2146) || 挂载数据: 无 ) +│ │ │ │ └── 将部署与发布解耦 --> ( 难度等级: [0.2146, 0.2148) || 挂载数据: 无 ) +│ │ │ │ ├── 基于环境的发布模式 --> ( 难度等级: [0.2146, 0.2147) || 挂载数据: 无 ) +│ │ │ │ └── 基于应用的发布模式更安全 --> ( 难度等级: [0.2147, 0.2148) || 挂载数据: 无 ) +│ │ │ └── 降低发布风险的架构 --> ( 难度等级: [0.2148, 0.2151) || 挂载数据: 无 ) +│ │ │ ├── 能提高生产力、可测试性和安全性的架构 --> ( 难度等级: [0.2148, 0.2149) || 挂载数据: 无 ) +│ │ │ ├── 架构原型:单体架构与微服务 --> ( 难度等级: [0.2149, 0.215) || 挂载数据: 无 ) +│ │ │ └── 安全地演进企业架构 --> ( 难度等级: [0.215, 0.2151) || 挂载数据: blog: 1 ) +│ │ ├── 第二步:反馈的技术实践 --> ( 难度等级: [0.2151, 0.2168) || 挂载数据: 无 ) +│ │ │ ├── 分析遥测数据以更好地预测故障和实现目标 --> ( 难度等级: [0.2151, 0.2155) || 挂载数据: 无 ) +│ │ │ │ ├── 异常状态的处理和告警 --> ( 难度等级: [0.2151, 0.2153) || 挂载数据: 无 ) +│ │ │ │ └── 应用异常检测技术 --> ( 难度等级: [0.2153, 0.2155) || 挂载数据: 无 ) +│ │ │ ├── 应用反馈实现安全部署 --> ( 难度等级: [0.2155, 0.216) || 挂载数据: 无 ) +│ │ │ │ ├── 通过遥测使部署更安全 --> ( 难度等级: [0.2155, 0.2157) || 挂载数据: 无 ) +│ │ │ │ ├── 开发和运维共同承担值班工作 --> ( 难度等级: [0.2157, 0.2158) || 挂载数据: 无 ) +│ │ │ │ ├── 让开发人员跟踪工作对下游的影响 --> ( 难度等级: [0.2158, 0.2159) || 挂载数据: 无 ) +│ │ │ │ └── 让开发人员自行管理生产服务 --> ( 难度等级: [0.2159, 0.216) || 挂载数据: 无 ) +│ │ │ ├── 将假设驱动的开发和A/B测试融入日常工作 --> ( 难度等级: [0.216, 0.2164) || 挂载数据: 无 ) +│ │ │ │ ├── A/B测试简史 --> ( 难度等级: [0.216, 0.2161) || 挂载数据: 无 ) +│ │ │ │ ├── 在功能测试中集成A/B测试 --> ( 难度等级: [0.2161, 0.2162) || 挂载数据: 无 ) +│ │ │ │ ├── 在发布中集成A/B测试 --> ( 难度等级: [0.2162, 0.2163) || 挂载数据: 无 ) +│ │ │ │ └── 在功能规划中集成A/B测试 --> ( 难度等级: [0.2163, 0.2164) || 挂载数据: 无 ) +│ │ │ └── 建立评审和协作流程以提升当前工作的质量 --> ( 难度等级: [0.2164, 0.2168) || 挂载数据: 无 ) +│ │ │ ├── 变更审批流程的危险 --> ( 难度等级: [0.2164, 0.2164) || 挂载数据: 无 ) +│ │ │ ├── “过度控制变更”的潜在危险 --> ( 难度等级: [0.2164, 0.2165) || 挂载数据: 无 ) +│ │ │ ├── 变更的协调和排程 --> ( 难度等级: [0.2165, 0.2166) || 挂载数据: 无 ) +│ │ │ ├── 变更的同行评审 --> ( 难度等级: [0.2166, 0.2166) || 挂载数据: 无 ) +│ │ │ ├── 人工测试和变更冻结的潜在危害 --> ( 难度等级: [0.2166, 0.2167) || 挂载数据: 无 ) +│ │ │ ├── 利用结对编程改进代码变更 --> ( 难度等级: [0.2167, 0.2167) || 挂载数据: 无 ) +│ │ │ └── 消除官僚流程 --> ( 难度等级: [0.2167, 0.2168) || 挂载数据: 无 ) +│ │ ├── 集成信息安全、变更管理和合规性的技术实践 --> ( 难度等级: [0.2168, 0.2185) || 挂载数据: 无 ) +│ │ │ ├── 将信息安全融入每个人的日常工作 --> ( 难度等级: [0.2168, 0.2176) || 挂载数据: 无 ) +│ │ │ │ ├── 将安全集成到开发迭代的演示中 --> ( 难度等级: [0.2168, 0.2169) || 挂载数据: 无 ) +│ │ │ │ ├── 将安全集成到缺陷跟踪和事后分析会议中 --> ( 难度等级: [0.2169, 0.217) || 挂载数据: 无 ) +│ │ │ │ ├── 将预防性安全控制集成到共享源代码库及共享服务中 --> ( 难度等级: [0.217, 0.217) || 挂载数据: 无 ) +│ │ │ │ ├── 将安全集成到部署流水线中 --> ( 难度等级: [0.217, 0.2171) || 挂载数据: 无 ) +│ │ │ │ ├── 保证应用程序的安全性 --> ( 难度等级: [0.2171, 0.2172) || 挂载数据: 无 ) +│ │ │ │ ├── 确保软件供应链的安全 --> ( 难度等级: [0.2172, 0.2173) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 确保环境的安全 --> ( 难度等级: [0.2173, 0.2173) || 挂载数据: 无 ) +│ │ │ │ ├── 将信息安全集成到生产环境遥测中 --> ( 难度等级: [0.2173, 0.2174) || 挂载数据: 无 ) +│ │ │ │ ├── 在应用程序中建立安全遥测系统 --> ( 难度等级: [0.2174, 0.2175) || 挂载数据: 无 ) +│ │ │ │ ├── 在环境中建立安全遥测系统 --> ( 难度等级: [0.2175, 0.2176) || 挂载数据: 无 ) +│ │ │ │ └── 保护部署流水线 --> ( 难度等级: [0.2176, 0.2176) || 挂载数据: 无 ) +│ │ │ └── 保护部署流水线 --> ( 难度等级: [0.2176, 0.2185) || 挂载数据: 无 ) +│ │ │ ├── 将安全和合规性集成到变更批准流程中 --> ( 难度等级: [0.2176, 0.2178) || 挂载数据: 无 ) +│ │ │ ├── 将大量低风险变更重新归类为标准变更 --> ( 难度等级: [0.2178, 0.218) || 挂载数据: 无 ) +│ │ │ ├── 如何处理常规变更 --> ( 难度等级: [0.218, 0.2182) || 挂载数据: 无 ) +│ │ │ ├── 减少对职责分离的依赖 --> ( 难度等级: [0.2182, 0.2183) || 挂载数据: 无 ) +│ │ │ └── 确保为审计人员和合规人员留存文档和证据 --> ( 难度等级: [0.2183, 0.2185) || 挂载数据: 无 ) +│ │ ├── Shell脚本在DevOps下的应用 --> ( 难度等级: [0.2185, 0.2202) || 挂载数据: 无 ) +│ │ │ ├── Shell编程基础 --> ( 难度等级: [0.2185, 0.2188) || 挂载数据: 无 ) +│ │ │ │ ├── Shell脚本的基本元素 --> ( 难度等级: [0.2185, 0.2186) || 挂载数据: blog: 7 ) +│ │ │ │ ├── Shell基础正则表达式 --> ( 难度等级: [0.2186, 0.2186) || 挂载数据: blog: 1 ) +│ │ │ │ ├── Shell特殊字符 --> ( 难度等级: [0.2186, 0.2187) || 挂载数据: blog: 10 ) +│ │ │ │ └── 变量和运算符 --> ( 难度等级: [0.2187, 0.2188) || 挂载数据: 无 ) +│ │ │ ├── Shell中的控制流结构 --> ( 难度等级: [0.2188, 0.219) || 挂载数据: 无 ) +│ │ │ ├── sed的基础用法及实用举例 --> ( 难度等级: [0.219, 0.2193) || 挂载数据: 无 ) +│ │ │ │ ├── sed的基础语法格式 --> ( 难度等级: [0.219, 0.2192) || 挂载数据: 无 ) +│ │ │ │ └── sed的用法举例说明 --> ( 难度等级: [0.2192, 0.2193) || 挂载数据: blog: 2 ) +│ │ │ ├── awk的基础用法及实用案例 --> ( 难度等级: [0.2193, 0.2196) || 挂载数据: 无 ) +│ │ │ ├── Shell应用于DevOps开发中应掌握的系统知识点 --> ( 难度等级: [0.2196, 0.2199) || 挂载数据: blog: 5 ) +│ │ │ └── 生产环境下的Shell脚本 --> ( 难度等级: [0.2199, 0.2202) || 挂载数据: 无 ) +│ │ │ ├── 生产环境下的备份类脚本 --> ( 难度等级: [0.2199, 0.22) || 挂载数据: 无 ) +│ │ │ ├── 生产环境下的统计类脚本 --> ( 难度等级: [0.22, 0.22) || 挂载数据: 无 ) +│ │ │ ├── 生产环境下的监控类脚本 --> ( 难度等级: [0.22, 0.2201) || 挂载数据: 无 ) +│ │ │ └── 生产环境下的运维开发类脚本 --> ( 难度等级: [0.2201, 0.2202) || 挂载数据: blog: 1 ) +│ │ ├── Python在DevOps与自动化运维中的应用 --> ( 难度等级: [0.2202, 0.2218) || 挂载数据: 无 ) +│ │ │ ├── Python语言的应用领域 --> ( 难度等级: [0.2202, 0.2204) || 挂载数据: 无 ) +│ │ │ ├── 选择Python的原因 --> ( 难度等级: [0.2204, 0.2206) || 挂载数据: 无 ) +│ │ │ ├── Python的版本说明 --> ( 难度等级: [0.2206, 0.2208) || 挂载数据: 无 ) +│ │ │ ├── Python基础学习工具 --> ( 难度等级: [0.2208, 0.221) || 挂载数据: 无 ) +│ │ │ │ ├── Python(x,y)简单介绍 --> ( 难度等级: [0.2208, 0.2209) || 挂载数据: blog: 10 ) +│ │ │ │ ├── IPython详细介绍 --> ( 难度等级: [0.2209, 0.2209) || 挂载数据: blog: 3 ) +│ │ │ │ └── Sublime Text3简单介绍 --> ( 难度等级: [0.2209, 0.221) || 挂载数据: 无 ) +│ │ │ ├── Python基础知识进阶 --> ( 难度等级: [0.221, 0.2212) || 挂载数据: 无 ) +│ │ │ │ ├── 正则表达式应用 --> ( 难度等级: [0.221, 0.221) || 挂载数据: 无 ) +│ │ │ │ ├── Python程序构成 --> ( 难度等级: [0.221, 0.2211) || 挂载数据: blog: 6 ) +│ │ │ │ ├── 使用Python解析JSON --> ( 难度等级: [0.2211, 0.2211) || 挂载数据: blog: 2 ) +│ │ │ │ ├── Python异常处理与程序调试 --> ( 难度等级: [0.2211, 0.2211) || 挂载数据: blog: 2 ) +│ │ │ │ ├── Python函数 --> ( 难度等级: [0.2211, 0.2211) || 挂载数据: blog: 10 ) +│ │ │ │ ├── Python面向对象 --> ( 难度等级: [0.2211, 0.2212) || 挂载数据: 无 ) +│ │ │ │ ├── Python多进程 --> ( 难度等级: [0.2212, 0.2212) || 挂载数据: 无 ) +│ │ │ │ └── Python多线程 --> ( 难度等级: [0.2212, 0.2212) || 挂载数据: blog: 3 ) +│ │ │ ├── Python经常用到的第三方类库 --> ( 难度等级: [0.2212, 0.2214) || 挂载数据: 无 ) +│ │ │ ├── 利用Flask设计后端Restful API --> ( 难度等级: [0.2214, 0.2216) || 挂载数据: blog: 1 ) +│ │ │ └── 工作中的Python脚本分享 --> ( 难度等级: [0.2216, 0.2218) || 挂载数据: 无 ) +│ │ ├── Vagrant在DevOps环境中的应用 --> ( 难度等级: [0.2218, 0.2235) || 挂载数据: 无 ) +│ │ │ ├── Vagrant简单介绍 --> ( 难度等级: [0.2218, 0.2222) || 挂载数据: 无 ) +│ │ │ ├── Vagrant安装 --> ( 难度等级: [0.2222, 0.2225) || 挂载数据: 无 ) +│ │ │ ├── 使用Vagrant配置本地开发环境 --> ( 难度等级: [0.2225, 0.2229) || 挂载数据: 无 ) +│ │ │ │ ├── Vagrant的具体安装步骤 --> ( 难度等级: [0.2225, 0.2226) || 挂载数据: blog: 10 ) +│ │ │ │ ├── Vagrant配置文件详解 --> ( 难度等级: [0.2226, 0.2227) || 挂载数据: blog: 2 ) +│ │ │ │ └── Vagrant常用命令详解 --> ( 难度等级: [0.2227, 0.2229) || 挂载数据: blog: 10 ) +│ │ │ ├── 使用Vagrant搭建DevOps开发环境 --> ( 难度等级: [0.2229, 0.2232) || 挂载数据: blog: 10 ) +│ │ │ └── 使用Vagrant搭建分布式环境 --> ( 难度等级: [0.2232, 0.2235) || 挂载数据: 无 ) +│ │ ├── 自动化部署管理工具Ansible --> ( 难度等级: [0.2235, 0.2252) || 挂载数据: 无 ) +│ │ │ ├── YAML介绍 --> ( 难度等级: [0.2235, 0.2237) || 挂载数据: 无 ) +│ │ │ ├── Ansible的安装和配置 --> ( 难度等级: [0.2237, 0.2238) || 挂载数据: 无 ) +│ │ │ ├── 定义主机与组规则(Inventory) --> ( 难度等级: [0.2238, 0.224) || 挂载数据: 无 ) +│ │ │ ├── Ansible常用模块介绍 --> ( 难度等级: [0.224, 0.2241) || 挂载数据: blog: 5 ) +│ │ │ ├── playbook介绍 --> ( 难度等级: [0.2241, 0.2243) || 挂载数据: 无 ) +│ │ │ ├── Ansible在AWS云平台中的应用 --> ( 难度等级: [0.2243, 0.2244) || 挂载数据: blog: 3 ) +│ │ │ ├── 角色 --> ( 难度等级: [0.2244, 0.2246) || 挂载数据: 无 ) +│ │ │ ├── Jinja2过滤器 --> ( 难度等级: [0.2246, 0.2248) || 挂载数据: 无 ) +│ │ │ ├── Ansible速度优化 --> ( 难度等级: [0.2248, 0.2249) || 挂载数据: 无 ) +│ │ │ ├── 利用Ansible API提供自动化运维后端 --> ( 难度等级: [0.2249, 0.2251) || 挂载数据: 无 ) +│ │ │ │ ├── runner API --> ( 难度等级: [0.2249, 0.225) || 挂载数据: 无 ) +│ │ │ │ ├── playbook API --> ( 难度等级: [0.225, 0.225) || 挂载数据: 无 ) +│ │ │ │ └── 用Flask封装Ansible提供自动化运维后端 --> ( 难度等级: [0.225, 0.2251) || 挂载数据: blog: 10 ) +│ │ │ └── Ansible 2.2新增功能 --> ( 难度等级: [0.2251, 0.2252) || 挂载数据: 无 ) +│ │ ├── 自动化配置管理工具SaltStack --> ( 难度等级: [0.2252, 0.2269) || 挂载数据: 无 ) +│ │ │ ├── Salt的相关知识点介绍 --> ( 难度等级: [0.2252, 0.2255) || 挂载数据: 无 ) +│ │ │ │ ├── Salt的优势 --> ( 难度等级: [0.2252, 0.2253) || 挂载数据: 无 ) +│ │ │ │ ├── Salt的安装 --> ( 难度等级: [0.2253, 0.2253) || 挂载数据: 无 ) +│ │ │ │ ├── Salt的工作流程 --> ( 难度等级: [0.2253, 0.2254) || 挂载数据: blog: 1 ) +│ │ │ │ ├── Salt配置文件详解 --> ( 难度等级: [0.2254, 0.2255) || 挂载数据: 无 ) +│ │ │ │ └── Salt的命令格式 --> ( 难度等级: [0.2255, 0.2255) || 挂载数据: blog: 1 ) +│ │ │ ├── Salt的常用组件 --> ( 难度等级: [0.2255, 0.2259) || 挂载数据: 无 ) +│ │ │ │ ├── Salt常用的操作目标 --> ( 难度等级: [0.2255, 0.2256) || 挂载数据: 无 ) +│ │ │ │ ├── Salt常用模块 --> ( 难度等级: [0.2256, 0.2257) || 挂载数据: blog: 1 ) +│ │ │ │ ├── Granis组件 --> ( 难度等级: [0.2257, 0.2257) || 挂载数据: 无 ) +│ │ │ │ ├── pillar组件 --> ( 难度等级: [0.2257, 0.2258) || 挂载数据: 无 ) +│ │ │ │ ├── job管理 --> ( 难度等级: [0.2258, 0.2258) || 挂载数据: 无 ) +│ │ │ │ └── State介绍 --> ( 难度等级: [0.2258, 0.2259) || 挂载数据: 无 ) +│ │ │ ├── Salt真实案例分享 --> ( 难度等级: [0.2259, 0.2262) || 挂载数据: 无 ) +│ │ │ │ ├── base环境配置 --> ( 难度等级: [0.2259, 0.2261) || 挂载数据: 无 ) +│ │ │ │ └── prod环境配置 --> ( 难度等级: [0.2261, 0.2262) || 挂载数据: 无 ) +│ │ │ ├── Salt多Master搭建 --> ( 难度等级: [0.2262, 0.2266) || 挂载数据: 无 ) +│ │ │ └── Salt API介绍 --> ( 难度等级: [0.2266, 0.2269) || 挂载数据: 无 ) +│ │ │ ├── Python API介绍 --> ( 难度等级: [0.2266, 0.2267) || 挂载数据: blog: 4 ) +│ │ │ └── Restful API介绍 --> ( 难度等级: [0.2267, 0.2269) || 挂载数据: blog: 1 ) +│ │ └── Docker和Jenkins在DevOps中的应用 --> ( 难度等级: [0.2269, 0.2286) || 挂载数据: 无 ) +│ │ ├── Docker的基础安装 --> ( 难度等级: [0.2269, 0.2271) || 挂载数据: 无 ) +│ │ ├── Docker的三大核心概念 --> ( 难度等级: [0.2271, 0.2274) || 挂载数据: 无 ) +│ │ ├── Docker的基本架构 --> ( 难度等级: [0.2274, 0.2276) || 挂载数据: 无 ) +│ │ ├── Docker网络实现原理 --> ( 难度等级: [0.2276, 0.2279) || 挂载数据: 无 ) +│ │ ├── 利用Dockerfile文件技巧打包Docker镜像 --> ( 难度等级: [0.2279, 0.2281) || 挂载数据: 无 ) +│ │ ├── 利用Docker-Compose编排和管理多容器 --> ( 难度等级: [0.2281, 0.2283) || 挂载数据: 无 ) +│ │ │ ├── Docker-Compose的基本语法 --> ( 难度等级: [0.2281, 0.2282) || 挂载数据: 无 ) +│ │ │ └── Docker-Compose常用命令 --> ( 难度等级: [0.2282, 0.2283) || 挂载数据: blog: 10 ) +│ │ └── 利用Docker搭建Jenkins Master/Slave分布式环境 --> ( 难度等级: [0.2283, 0.2286) || 挂载数据: 无 ) +│ │ └── Jenkins Master/Slave的详细部署过程 --> ( 难度等级: [0.2283, 0.2286) || 挂载数据: blog: 10 ) +│ ├── 中间件 --> ( 难度等级: [0.2286, 0.2571) || 挂载数据: 无 ) +│ │ ├── 缓存 --> ( 难度等级: [0.2286, 0.2381) || 挂载数据: 无 ) +│ │ │ ├── etcd --> ( 难度等级: [0.2286, 0.2333) || 挂载数据: 无 ) +│ │ │ └── Redis --> ( 难度等级: [0.2333, 0.2381) || 挂载数据: 无 ) +│ │ ├── 微服务与配置中心 --> ( 难度等级: [0.2381, 0.2476) || 挂载数据: 无 ) +│ │ │ └── Nacos --> ( 难度等级: [0.2381, 0.2476) || 挂载数据: blog: 10 ) +│ │ └── 存储 --> ( 难度等级: [0.2476, 0.2571) || 挂载数据: 无 ) +│ │ ├── S3标准 --> ( 难度等级: [0.2476, 0.2508) || 挂载数据: 无 ) +│ │ ├── MinIO --> ( 难度等级: [0.2508, 0.254) || 挂载数据: blog: 4 ) +│ │ └── Harbor --> ( 难度等级: [0.254, 0.2571) || 挂载数据: 无 ) +│ └── 其他 --> ( 难度等级: [0.2571, 0.2857) || 挂载数据: 无 ) +├── 云原生中阶-应用开发 --> ( 难度等级: [0.2857, 0.4286) || 挂载数据: 无 ) +│ ├── Serverless --> ( 难度等级: [0.2857, 0.3333) || 挂载数据: 无 ) +│ │ └── App Serverless --> ( 难度等级: [0.2857, 0.3333) || 挂载数据: 无 ) +│ │ └── Knative --> ( 难度等级: [0.2857, 0.3333) || 挂载数据: 无 ) +│ ├── Microservices微服务 --> ( 难度等级: [0.3333, 0.381) || 挂载数据: 无 ) +│ │ └── Dapr --> ( 难度等级: [0.3333, 0.381) || 挂载数据: 无 ) +│ └── 其他 --> ( 难度等级: [0.381, 0.4286) || 挂载数据: 无 ) +├── 云原生中阶-平台开发 --> ( 难度等级: [0.4286, 0.5714) || 挂载数据: 无 ) +│ ├── Kubernetes --> ( 难度等级: [0.4286, 0.4643) || 挂载数据: 无 ) +│ │ ├── 边缘计算 --> ( 难度等级: [0.4286, 0.4297) || 挂载数据: 无 ) +│ │ │ ├── OpenYurt --> ( 难度等级: [0.4286, 0.429) || 挂载数据: 无 ) +│ │ │ ├── KubeEdge --> ( 难度等级: [0.429, 0.4293) || 挂载数据: blog: 1 ) +│ │ │ └── Akri --> ( 难度等级: [0.4293, 0.4297) || 挂载数据: 无 ) +│ │ ├── 集群联邦 --> ( 难度等级: [0.4297, 0.4309) || 挂载数据: 无 ) +│ │ │ └── Federation --> ( 难度等级: [0.4297, 0.4309) || 挂载数据: 无 ) +│ │ ├── 发行版 --> ( 难度等级: [0.4309, 0.432) || 挂载数据: 无 ) +│ │ │ ├── EKS-D --> ( 难度等级: [0.4309, 0.4311) || 挂载数据: 无 ) +│ │ │ ├── Harvester --> ( 难度等级: [0.4311, 0.4313) || 挂载数据: 无 ) +│ │ │ ├── OpenShift --> ( 难度等级: [0.4313, 0.4316) || 挂载数据: blog: 4 ) +│ │ │ ├── k0s --> ( 难度等级: [0.4316, 0.4318) || 挂载数据: 无 ) +│ │ │ └── Wayne --> ( 难度等级: [0.4318, 0.432) || 挂载数据: 无 ) +│ │ ├── Kubernetes系统基础 --> ( 难度等级: [0.432, 0.4332) || 挂载数据: 无 ) +│ │ │ ├── 容器技术概述 --> ( 难度等级: [0.432, 0.4323) || 挂载数据: 无 ) +│ │ │ │ ├── 容器技术的功用 --> ( 难度等级: [0.432, 0.4321) || 挂载数据: blog: 10 ) +│ │ │ │ ├── 容器简史 --> ( 难度等级: [0.4321, 0.4322) || 挂载数据: 无 ) +│ │ │ │ └── Docker的功能限制 --> ( 难度等级: [0.4322, 0.4323) || 挂载数据: 无 ) +│ │ │ ├── Kubernetes概述 --> ( 难度等级: [0.4323, 0.4326) || 挂载数据: 无 ) +│ │ │ │ ├── Kubernetes简史 --> ( 难度等级: [0.4323, 0.4324) || 挂载数据: 无 ) +│ │ │ │ ├── Kubernetes特性 --> ( 难度等级: [0.4324, 0.4325) || 挂载数据: blog: 3 ) +│ │ │ │ └── Kubernetes概念和术语 --> ( 难度等级: [0.4325, 0.4326) || 挂载数据: blog: 5 ) +│ │ │ ├── Kubernetes集群组件 --> ( 难度等级: [0.4326, 0.4329) || 挂载数据: 无 ) +│ │ │ │ ├── Master组件 --> ( 难度等级: [0.4326, 0.4327) || 挂载数据: blog: 3 ) +│ │ │ │ ├── Node组件 --> ( 难度等级: [0.4327, 0.4328) || 挂载数据: blog: 2 ) +│ │ │ │ └── 核心附件 --> ( 难度等级: [0.4328, 0.4329) || 挂载数据: 无 ) +│ │ │ └── Kubernetes网络模型基础 --> ( 难度等级: [0.4329, 0.4332) || 挂载数据: 无 ) +│ │ │ ├── 网络模型概述 --> ( 难度等级: [0.4329, 0.433) || 挂载数据: 无 ) +│ │ │ └── 集群上的网络通信 --> ( 难度等级: [0.433, 0.4332) || 挂载数据: 无 ) +│ │ ├── Kubernetes快速入门 --> ( 难度等级: [0.4332, 0.4343) || 挂载数据: 无 ) +│ │ │ ├── Kubernetes的核心对象 --> ( 难度等级: [0.4332, 0.4335) || 挂载数据: 无 ) +│ │ │ │ ├── Pod资源对象 --> ( 难度等级: [0.4332, 0.4333) || 挂载数据: 无 ) +│ │ │ │ ├── Controller --> ( 难度等级: [0.4333, 0.4333) || 挂载数据: 无 ) +│ │ │ │ ├── Service --> ( 难度等级: [0.4333, 0.4334) || 挂载数据: 无 ) +│ │ │ │ └── 部署应用程序的主体过程 --> ( 难度等级: [0.4334, 0.4335) || 挂载数据: 无 ) +│ │ │ ├── 部署Kubernetes集群 --> ( 难度等级: [0.4335, 0.4338) || 挂载数据: 无 ) +│ │ │ │ ├── kubeadm部署工具 --> ( 难度等级: [0.4335, 0.4335) || 挂载数据: blog: 6 ) +│ │ │ │ ├── 集群运行模式 --> ( 难度等级: [0.4335, 0.4336) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 准备用于实践操作的集群环境 --> ( 难度等级: [0.4336, 0.4337) || 挂载数据: 无 ) +│ │ │ │ └── 获取集群环境相关的信息 --> ( 难度等级: [0.4337, 0.4338) || 挂载数据: 无 ) +│ │ │ ├── kubectl使用基础与示例 --> ( 难度等级: [0.4338, 0.434) || 挂载数据: 无 ) +│ │ │ └── 命令式容器应用编排 --> ( 难度等级: [0.434, 0.4343) || 挂载数据: 无 ) +│ │ │ ├── 部署应用(Pod) --> ( 难度等级: [0.434, 0.4341) || 挂载数据: 无 ) +│ │ │ ├── 探查Pod及应用详情 --> ( 难度等级: [0.4341, 0.4342) || 挂载数据: 无 ) +│ │ │ ├── 部署Service对象 --> ( 难度等级: [0.4342, 0.4342) || 挂载数据: 无 ) +│ │ │ ├── 扩容和缩容 --> ( 难度等级: [0.4342, 0.4343) || 挂载数据: 无 ) +│ │ │ └── 修改及删除对象 --> ( 难度等级: [0.4343, 0.4343) || 挂载数据: 无 ) +│ │ ├── 资源管理基础 --> ( 难度等级: [0.4343, 0.4355) || 挂载数据: 无 ) +│ │ │ ├── 资源对象及API群组 --> ( 难度等级: [0.4343, 0.4346) || 挂载数据: 无 ) +│ │ │ │ ├── Kubernetes的资源对象 --> ( 难度等级: [0.4343, 0.4344) || 挂载数据: 无 ) +│ │ │ │ ├── 资源及其在API中的组织形式 --> ( 难度等级: [0.4344, 0.4345) || 挂载数据: 无 ) +│ │ │ │ └── 访问Kubernetes REST API --> ( 难度等级: [0.4345, 0.4346) || 挂载数据: 无 ) +│ │ │ ├── 对象类资源格式 --> ( 难度等级: [0.4346, 0.4348) || 挂载数据: 无 ) +│ │ │ │ ├── 资源配置清单 --> ( 难度等级: [0.4346, 0.4346) || 挂载数据: 无 ) +│ │ │ │ ├── metadata嵌套字段 --> ( 难度等级: [0.4346, 0.4347) || 挂载数据: 无 ) +│ │ │ │ ├── spec和status字段 --> ( 难度等级: [0.4347, 0.4347) || 挂载数据: 无 ) +│ │ │ │ ├── 资源配置清单格式文档 --> ( 难度等级: [0.4347, 0.4347) || 挂载数据: blog: 1 ) +│ │ │ │ └── 资源对象管理方式 --> ( 难度等级: [0.4347, 0.4348) || 挂载数据: 无 ) +│ │ │ ├── kubectl命令与资源管理 --> ( 难度等级: [0.4348, 0.435) || 挂载数据: 无 ) +│ │ │ │ ├── 资源管理操作概述 --> ( 难度等级: [0.4348, 0.4349) || 挂载数据: 无 ) +│ │ │ │ └── kubectl的基本用法 --> ( 难度等级: [0.4349, 0.435) || 挂载数据: 无 ) +│ │ │ ├── 管理名称空间资源 --> ( 难度等级: [0.435, 0.4353) || 挂载数据: 无 ) +│ │ │ │ ├── 查看名称空间及其资源对象 --> ( 难度等级: [0.435, 0.4351) || 挂载数据: 无 ) +│ │ │ │ └── 管理Namespace资源 --> ( 难度等级: [0.4351, 0.4353) || 挂载数据: 无 ) +│ │ │ └── Pod资源的基础管理操作 --> ( 难度等级: [0.4353, 0.4355) || 挂载数据: 无 ) +│ │ │ ├── 陈述式对象配置管理方式 --> ( 难度等级: [0.4353, 0.4354) || 挂载数据: 无 ) +│ │ │ └── 声明式对象配置管理方式 --> ( 难度等级: [0.4354, 0.4355) || 挂载数据: 无 ) +│ │ ├── 管理Pod资源对象 --> ( 难度等级: [0.4355, 0.4366) || 挂载数据: 无 ) +│ │ │ ├── 管理Pod对象的容器 --> ( 难度等级: [0.4355, 0.4356) || 挂载数据: 无 ) +│ │ │ │ ├── 镜像及其获取策略 --> ( 难度等级: [0.4355, 0.4355) || 挂载数据: 无 ) +│ │ │ │ ├── 暴露端口 --> ( 难度等级: [0.4355, 0.4355) || 挂载数据: 无 ) +│ │ │ │ ├── 自定义运行的容器化应用 --> ( 难度等级: [0.4355, 0.4356) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 环境变量 --> ( 难度等级: [0.4356, 0.4356) || 挂载数据: 无 ) +│ │ │ │ ├── 共享节点的网络名称空间 --> ( 难度等级: [0.4356, 0.4356) || 挂载数据: 无 ) +│ │ │ │ └── 设置Pod对象的安全上下文 --> ( 难度等级: [0.4356, 0.4356) || 挂载数据: blog: 2 ) +│ │ │ ├── 标签与标签选择器 --> ( 难度等级: [0.4356, 0.4358) || 挂载数据: 无 ) +│ │ │ │ ├── 标签概述 --> ( 难度等级: [0.4356, 0.4357) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 管理资源标签 --> ( 难度等级: [0.4357, 0.4357) || 挂载数据: 无 ) +│ │ │ │ ├── 标签选择器 --> ( 难度等级: [0.4357, 0.4358) || 挂载数据: 无 ) +│ │ │ │ └── Pod节点选择器nodeSelector --> ( 难度等级: [0.4358, 0.4358) || 挂载数据: 无 ) +│ │ │ ├── 资源注解 --> ( 难度等级: [0.4358, 0.436) || 挂载数据: 无 ) +│ │ │ │ ├── 查看资源注解 --> ( 难度等级: [0.4358, 0.4359) || 挂载数据: blog: 1 ) +│ │ │ │ └── 管理资源注解 --> ( 难度等级: [0.4359, 0.436) || 挂载数据: 无 ) +│ │ │ ├── Pod对象的生命周期 --> ( 难度等级: [0.436, 0.4361) || 挂载数据: 无 ) +│ │ │ │ ├── Pod的相位 --> ( 难度等级: [0.436, 0.436) || 挂载数据: 无 ) +│ │ │ │ ├── Pod的创建过程 --> ( 难度等级: [0.436, 0.436) || 挂载数据: 无 ) +│ │ │ │ ├── Pod生命周期中的重要行为 --> ( 难度等级: [0.436, 0.4361) || 挂载数据: 无 ) +│ │ │ │ ├── 容器的重启策略 --> ( 难度等级: [0.4361, 0.4361) || 挂载数据: 无 ) +│ │ │ │ └── Pod的终止过程 --> ( 难度等级: [0.4361, 0.4361) || 挂载数据: 无 ) +│ │ │ ├── Pod存活性探测 --> ( 难度等级: [0.4361, 0.4363) || 挂载数据: 无 ) +│ │ │ │ ├── 设置exec探针 --> ( 难度等级: [0.4361, 0.4362) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 设置HTTP探针 --> ( 难度等级: [0.4362, 0.4362) || 挂载数据: 无 ) +│ │ │ │ ├── 设置TCP探针 --> ( 难度等级: [0.4362, 0.4363) || 挂载数据: 无 ) +│ │ │ │ └── 存活性探测行为属性 --> ( 难度等级: [0.4363, 0.4363) || 挂载数据: 无 ) +│ │ │ ├── Pod就绪性探测 --> ( 难度等级: [0.4363, 0.4365) || 挂载数据: 无 ) +│ │ │ └── 资源需求及资源限制 --> ( 难度等级: [0.4365, 0.4366) || 挂载数据: 无 ) +│ │ │ ├── 资源需求 --> ( 难度等级: [0.4365, 0.4365) || 挂载数据: 无 ) +│ │ │ ├── 资源限制 --> ( 难度等级: [0.4365, 0.4366) || 挂载数据: blog: 1 ) +│ │ │ ├── 容器的可见资源 --> ( 难度等级: [0.4366, 0.4366) || 挂载数据: blog: 2 ) +│ │ │ └── Pod的服务质量类别 --> ( 难度等级: [0.4366, 0.4366) || 挂载数据: 无 ) +│ │ ├── Pod控制器 --> ( 难度等级: [0.4366, 0.4378) || 挂载数据: 无 ) +│ │ │ ├── 关于Pod控制器 --> ( 难度等级: [0.4366, 0.4368) || 挂载数据: 无 ) +│ │ │ │ ├── Pod控制器概述 --> ( 难度等级: [0.4366, 0.4367) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 控制器与Pod对象 --> ( 难度等级: [0.4367, 0.4367) || 挂载数据: 无 ) +│ │ │ │ └── Pod模板资源 --> ( 难度等级: [0.4367, 0.4368) || 挂载数据: 无 ) +│ │ │ ├── ReplicaSet控制器 --> ( 难度等级: [0.4368, 0.4369) || 挂载数据: 无 ) +│ │ │ │ ├── ReplicaSet概述 --> ( 难度等级: [0.4368, 0.4368) || 挂载数据: 无 ) +│ │ │ │ ├── 创建ReplicaSet --> ( 难度等级: [0.4368, 0.4368) || 挂载数据: 无 ) +│ │ │ │ ├── ReplicaSet管控下的Pod对象 --> ( 难度等级: [0.4368, 0.4369) || 挂载数据: 无 ) +│ │ │ │ ├── 更新ReplicaSet控制器 --> ( 难度等级: [0.4369, 0.4369) || 挂载数据: blog: 10 ) +│ │ │ │ └── 删除ReplicaSet控制器资源 --> ( 难度等级: [0.4369, 0.4369) || 挂载数据: blog: 1 ) +│ │ │ ├── Deployment控制器 --> ( 难度等级: [0.4369, 0.4371) || 挂载数据: 无 ) +│ │ │ │ ├── 创建Deployment --> ( 难度等级: [0.4369, 0.437) || 挂载数据: 无 ) +│ │ │ │ ├── 更新策略 --> ( 难度等级: [0.437, 0.437) || 挂载数据: 无 ) +│ │ │ │ ├── 升级Deployment --> ( 难度等级: [0.437, 0.437) || 挂载数据: 无 ) +│ │ │ │ ├── 金丝雀发布 --> ( 难度等级: [0.437, 0.437) || 挂载数据: 无 ) +│ │ │ │ └── 回滚Deployment控制器下的应用发布 --> ( 难度等级: [0.437, 0.4371) || 挂载数据: 无 ) +│ │ │ ├── DaemonSet控制器 --> ( 难度等级: [0.4371, 0.4372) || 挂载数据: 无 ) +│ │ │ │ ├── 创建DaemonSet资源对象 --> ( 难度等级: [0.4371, 0.4371) || 挂载数据: 无 ) +│ │ │ │ └── 更新DaemonSet对象 --> ( 难度等级: [0.4371, 0.4372) || 挂载数据: 无 ) +│ │ │ ├── Job控制器 --> ( 难度等级: [0.4372, 0.4374) || 挂载数据: 无 ) +│ │ │ │ ├── 创建Job对象 --> ( 难度等级: [0.4372, 0.4372) || 挂载数据: 无 ) +│ │ │ │ ├── 并行式Job --> ( 难度等级: [0.4372, 0.4373) || 挂载数据: 无 ) +│ │ │ │ ├── Job扩容 --> ( 难度等级: [0.4373, 0.4373) || 挂载数据: 无 ) +│ │ │ │ └── 删除Job --> ( 难度等级: [0.4373, 0.4374) || 挂载数据: 无 ) +│ │ │ ├── CronJob控制器 --> ( 难度等级: [0.4374, 0.4375) || 挂载数据: 无 ) +│ │ │ │ ├── 创建CronJob对象 --> ( 难度等级: [0.4374, 0.4374) || 挂载数据: 无 ) +│ │ │ │ └── CronJob的控制机制 --> ( 难度等级: [0.4374, 0.4375) || 挂载数据: blog: 10 ) +│ │ │ ├── ReplicationController --> ( 难度等级: [0.4375, 0.4376) || 挂载数据: 无 ) +│ │ │ └── Pod中断预算 --> ( 难度等级: [0.4376, 0.4378) || 挂载数据: 无 ) +│ │ ├── 存储卷与数据持久化 --> ( 难度等级: [0.4378, 0.4389) || 挂载数据: 无 ) +│ │ │ ├── 存储卷概述 --> ( 难度等级: [0.4378, 0.438) || 挂载数据: 无 ) +│ │ │ │ ├── Kubernetes支持的存储卷类型 --> ( 难度等级: [0.4378, 0.4379) || 挂载数据: 无 ) +│ │ │ │ └── 存储卷的使用方式 --> ( 难度等级: [0.4379, 0.438) || 挂载数据: 无 ) +│ │ │ ├── 临时存储卷 --> ( 难度等级: [0.438, 0.4382) || 挂载数据: 无 ) +│ │ │ │ ├── emptyDir存储卷 --> ( 难度等级: [0.438, 0.4381) || 挂载数据: 无 ) +│ │ │ │ └── gitRepo存储卷 --> ( 难度等级: [0.4381, 0.4382) || 挂载数据: 无 ) +│ │ │ ├── 节点存储卷hostPath --> ( 难度等级: [0.4382, 0.4384) || 挂载数据: 无 ) +│ │ │ ├── 网络存储卷 --> ( 难度等级: [0.4384, 0.4386) || 挂载数据: 无 ) +│ │ │ │ ├── NFS存储卷 --> ( 难度等级: [0.4384, 0.4384) || 挂载数据: blog: 1 ) +│ │ │ │ ├── RBD存储卷 --> ( 难度等级: [0.4384, 0.4385) || 挂载数据: 无 ) +│ │ │ │ ├── GlusterFS存储卷 --> ( 难度等级: [0.4385, 0.4385) || 挂载数据: 无 ) +│ │ │ │ └── Cinder存储卷 --> ( 难度等级: [0.4385, 0.4386) || 挂载数据: blog: 1 ) +│ │ │ ├── 持久存储卷 --> ( 难度等级: [0.4386, 0.4387) || 挂载数据: 无 ) +│ │ │ │ ├── 创建PV --> ( 难度等级: [0.4386, 0.4386) || 挂载数据: 无 ) +│ │ │ │ ├── 创建PVC --> ( 难度等级: [0.4386, 0.4386) || 挂载数据: 无 ) +│ │ │ │ ├── 在Pod中使用PVC --> ( 难度等级: [0.4386, 0.4387) || 挂载数据: 无 ) +│ │ │ │ ├── 存储类 --> ( 难度等级: [0.4387, 0.4387) || 挂载数据: 无 ) +│ │ │ │ └── PV和PVC的生命周期 --> ( 难度等级: [0.4387, 0.4387) || 挂载数据: 无 ) +│ │ │ └── downwardAPI存储卷 --> ( 难度等级: [0.4387, 0.4389) || 挂载数据: 无 ) +│ │ │ ├── 环境变量式元数据注入 --> ( 难度等级: [0.4387, 0.4388) || 挂载数据: 无 ) +│ │ │ └── 存储卷式元数据注入 --> ( 难度等级: [0.4388, 0.4389) || 挂载数据: blog: 2 ) +│ │ ├── 配置容器应用:ConfigMap和Secret --> ( 难度等级: [0.4389, 0.4401) || 挂载数据: 无 ) +│ │ │ ├── 容器化应用配置方式 --> ( 难度等级: [0.4389, 0.4392) || 挂载数据: 无 ) +│ │ │ ├── 通过命令行参数配置容器应用 --> ( 难度等级: [0.4392, 0.4394) || 挂载数据: 无 ) +│ │ │ ├── 利用环境变量配置容器应用 --> ( 难度等级: [0.4394, 0.4396) || 挂载数据: 无 ) +│ │ │ ├── 应用程序配置管理及ConfigMap资源 --> ( 难度等级: [0.4396, 0.4399) || 挂载数据: 无 ) +│ │ │ │ ├── 创建ConfigMap对象 --> ( 难度等级: [0.4396, 0.4397) || 挂载数据: 无 ) +│ │ │ │ ├── 向Pod环境变量传递ConfigMap对象键值数据 --> ( 难度等级: [0.4397, 0.4397) || 挂载数据: 无 ) +│ │ │ │ ├── ConfigMap存储卷 --> ( 难度等级: [0.4397, 0.4398) || 挂载数据: 无 ) +│ │ │ │ ├── 容器应用重载新配置 --> ( 难度等级: [0.4398, 0.4398) || 挂载数据: 无 ) +│ │ │ │ └── 使用ConfigMap资源的注意事项 --> ( 难度等级: [0.4398, 0.4399) || 挂载数据: 无 ) +│ │ │ └── Secret资源 --> ( 难度等级: [0.4399, 0.4401) || 挂载数据: 无 ) +│ │ │ ├── Secret概述 --> ( 难度等级: [0.4399, 0.4399) || 挂载数据: 无 ) +│ │ │ ├── 创建Secret资源 --> ( 难度等级: [0.4399, 0.44) || 挂载数据: 无 ) +│ │ │ ├── Secret存储卷 --> ( 难度等级: [0.44, 0.44) || 挂载数据: blog: 1 ) +│ │ │ └── imagePullSecret资源对象 --> ( 难度等级: [0.44, 0.4401) || 挂载数据: 无 ) +│ │ ├── StatefulSet控制器 --> ( 难度等级: [0.4401, 0.4412) || 挂载数据: 无 ) +│ │ │ ├── StatefulSet概述 --> ( 难度等级: [0.4401, 0.4403) || 挂载数据: 无 ) +│ │ │ │ ├── Stateful应用和Stateless应用 --> ( 难度等级: [0.4401, 0.4402) || 挂载数据: 无 ) +│ │ │ │ ├── StatefulSet控制器概述 --> ( 难度等级: [0.4402, 0.4402) || 挂载数据: 无 ) +│ │ │ │ └── StatefulSet的特性 --> ( 难度等级: [0.4402, 0.4403) || 挂载数据: 无 ) +│ │ │ ├── StatefulSet基础应用 --> ( 难度等级: [0.4403, 0.4406) || 挂载数据: 无 ) +│ │ │ │ └── 创建StatefulSet对象 --> ( 难度等级: [0.4403, 0.4406) || 挂载数据: 无 ) +│ │ │ ├── StatefulSet资源扩缩容 --> ( 难度等级: [0.4406, 0.4408) || 挂载数据: 无 ) +│ │ │ ├── StatefulSet资源升级 --> ( 难度等级: [0.4408, 0.441) || 挂载数据: 无 ) +│ │ │ │ ├── 滚动更新 --> ( 难度等级: [0.4408, 0.4408) || 挂载数据: 无 ) +│ │ │ │ ├── 暂存更新操作 --> ( 难度等级: [0.4408, 0.4409) || 挂载数据: 无 ) +│ │ │ │ ├── 金丝雀部署 --> ( 难度等级: [0.4409, 0.4409) || 挂载数据: 无 ) +│ │ │ │ ├── 分段更新 --> ( 难度等级: [0.4409, 0.441) || 挂载数据: 无 ) +│ │ │ │ └── 其他话题 --> ( 难度等级: [0.441, 0.441) || 挂载数据: 无 ) +│ │ │ └── 案例:etcd集群 --> ( 难度等级: [0.441, 0.4412) || 挂载数据: 无 ) +│ │ │ ├── 创建Service资源 --> ( 难度等级: [0.441, 0.4411) || 挂载数据: 无 ) +│ │ │ └── etcd StatefulSet --> ( 难度等级: [0.4411, 0.4412) || 挂载数据: blog: 10 ) +│ │ ├── 认证、授权与准入控制 --> ( 难度等级: [0.4412, 0.4424) || 挂载数据: 无 ) +│ │ │ ├── 访问控制概述 --> ( 难度等级: [0.4412, 0.4415) || 挂载数据: 无 ) +│ │ │ │ ├── 用户账户与用户组 --> ( 难度等级: [0.4412, 0.4414) || 挂载数据: 无 ) +│ │ │ │ └── 认证、授权与准入控制基础 --> ( 难度等级: [0.4414, 0.4415) || 挂载数据: blog: 1 ) +│ │ │ ├── 服务账户管理与应用 --> ( 难度等级: [0.4415, 0.4417) || 挂载数据: 无 ) +│ │ │ │ ├── Service Account自动化 --> ( 难度等级: [0.4415, 0.4416) || 挂载数据: 无 ) +│ │ │ │ ├── 创建服务账户 --> ( 难度等级: [0.4416, 0.4416) || 挂载数据: 无 ) +│ │ │ │ └── 调用imagePullSecret资源对象 --> ( 难度等级: [0.4416, 0.4417) || 挂载数据: 无 ) +│ │ │ ├── X.509数字证书认证 --> ( 难度等级: [0.4417, 0.4419) || 挂载数据: 无 ) +│ │ │ │ ├── Kubernetes中的SSL/TLS认证 --> ( 难度等级: [0.4417, 0.4418) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 客户端配置文件kubeconfig --> ( 难度等级: [0.4418, 0.4419) || 挂载数据: 无 ) +│ │ │ │ └── TLS bootstrapping机制 --> ( 难度等级: [0.4419, 0.4419) || 挂载数据: 无 ) +│ │ │ ├── 基于角色的访问控制:RBAC --> ( 难度等级: [0.4419, 0.4422) || 挂载数据: 无 ) +│ │ │ │ ├── RBAC授权插件 --> ( 难度等级: [0.4419, 0.442) || 挂载数据: blog: 1 ) +│ │ │ │ ├── Role和RoleBinding --> ( 难度等级: [0.442, 0.442) || 挂载数据: 无 ) +│ │ │ │ ├── ClusterRole和ClusterRoleBin-ding --> ( 难度等级: [0.442, 0.4421) || 挂载数据: 无 ) +│ │ │ │ ├── 聚合型ClusterRole --> ( 难度等级: [0.4421, 0.4421) || 挂载数据: 无 ) +│ │ │ │ ├── 面向用户的内建ClusterRole --> ( 难度等级: [0.4421, 0.4421) || 挂载数据: 无 ) +│ │ │ │ └── 其他的内建ClusterRole和ClusterRoleBinding --> ( 难度等级: [0.4421, 0.4422) || 挂载数据: 无 ) +│ │ │ └── Kubernetes Dashboard --> ( 难度等级: [0.4422, 0.4424) || 挂载数据: 无 ) +│ │ │ ├── 部署HTTPS通信的Dashboard --> ( 难度等级: [0.4422, 0.4422) || 挂载数据: blog: 10 ) +│ │ │ ├── 配置token认证 --> ( 难度等级: [0.4422, 0.4423) || 挂载数据: blog: 1 ) +│ │ │ └── 配置kubeconfig认证 --> ( 难度等级: [0.4423, 0.4424) || 挂载数据: 无 ) +│ │ ├── 网络模型与网络策略 --> ( 难度等级: [0.4424, 0.4435) || 挂载数据: 无 ) +│ │ │ ├── Kubernetes网络模型及CNI插件 --> ( 难度等级: [0.4424, 0.4427) || 挂载数据: 无 ) +│ │ │ │ ├── Docker容器的网络模型 --> ( 难度等级: [0.4424, 0.4425) || 挂载数据: 无 ) +│ │ │ │ ├── Kubernetes网络模型 --> ( 难度等级: [0.4425, 0.4425) || 挂载数据: blog: 1 ) +│ │ │ │ ├── Pod网络的实现方式 --> ( 难度等级: [0.4425, 0.4426) || 挂载数据: 无 ) +│ │ │ │ └── CNI插件及其常见的实现 --> ( 难度等级: [0.4426, 0.4427) || 挂载数据: 无 ) +│ │ │ ├── flannel网络插件 --> ( 难度等级: [0.4427, 0.443) || 挂载数据: 无 ) +│ │ │ │ ├── flannel的配置参数 --> ( 难度等级: [0.4427, 0.4428) || 挂载数据: blog: 1 ) +│ │ │ │ ├── VxLAN后端和direct routing --> ( 难度等级: [0.4428, 0.4429) || 挂载数据: 无 ) +│ │ │ │ └── host-gw后端 --> ( 难度等级: [0.4429, 0.443) || 挂载数据: 无 ) +│ │ │ ├── 网络策略 --> ( 难度等级: [0.443, 0.4433) || 挂载数据: 无 ) +│ │ │ │ ├── 网络策略概述 --> ( 难度等级: [0.443, 0.443) || 挂载数据: 无 ) +│ │ │ │ ├── 部署Canal提供网络策略功能 --> ( 难度等级: [0.443, 0.4431) || 挂载数据: 无 ) +│ │ │ │ ├── 配置网络策略 --> ( 难度等级: [0.4431, 0.4431) || 挂载数据: 无 ) +│ │ │ │ ├── 管控入站流量 --> ( 难度等级: [0.4431, 0.4431) || 挂载数据: 无 ) +│ │ │ │ ├── 管控出站流量 --> ( 难度等级: [0.4431, 0.4432) || 挂载数据: 无 ) +│ │ │ │ ├── 隔离名称空间 --> ( 难度等级: [0.4432, 0.4432) || 挂载数据: 无 ) +│ │ │ │ └── 网络策略应用案例 --> ( 难度等级: [0.4432, 0.4433) || 挂载数据: 无 ) +│ │ │ └── Calico网络插件 --> ( 难度等级: [0.4433, 0.4435) || 挂载数据: 无 ) +│ │ │ ├── Calico工作特性 --> ( 难度等级: [0.4433, 0.4433) || 挂载数据: 无 ) +│ │ │ ├── Calico系统架构 --> ( 难度等级: [0.4433, 0.4434) || 挂载数据: 无 ) +│ │ │ ├── Calico部署要点 --> ( 难度等级: [0.4434, 0.4434) || 挂载数据: blog: 1 ) +│ │ │ ├── 部署Calico提供网络服务和网络策略 --> ( 难度等级: [0.4434, 0.4435) || 挂载数据: 无 ) +│ │ │ └── 客户端工具calicoctl --> ( 难度等级: [0.4435, 0.4435) || 挂载数据: 无 ) +│ │ ├── Pod资源调度 --> ( 难度等级: [0.4435, 0.4447) || 挂载数据: 无 ) +│ │ │ ├── Kubernetes调度器概述 --> ( 难度等级: [0.4435, 0.4438) || 挂载数据: 无 ) +│ │ │ │ ├── 常用的预选策略 --> ( 难度等级: [0.4435, 0.4437) || 挂载数据: 无 ) +│ │ │ │ └── 常用的优选函数 --> ( 难度等级: [0.4437, 0.4438) || 挂载数据: 无 ) +│ │ │ ├── 节点亲和调度 --> ( 难度等级: [0.4438, 0.444) || 挂载数据: 无 ) +│ │ │ │ ├── 节点硬亲和性 --> ( 难度等级: [0.4438, 0.4439) || 挂载数据: 无 ) +│ │ │ │ └── 节点软亲和性 --> ( 难度等级: [0.4439, 0.444) || 挂载数据: 无 ) +│ │ │ ├── Pod资源亲和调度 --> ( 难度等级: [0.444, 0.4442) || 挂载数据: 无 ) +│ │ │ │ ├── 位置拓扑 --> ( 难度等级: [0.444, 0.4441) || 挂载数据: 无 ) +│ │ │ │ ├── Pod硬亲和调度 --> ( 难度等级: [0.4441, 0.4441) || 挂载数据: 无 ) +│ │ │ │ ├── Pod软亲和调度 --> ( 难度等级: [0.4441, 0.4442) || 挂载数据: 无 ) +│ │ │ │ └── Pod反亲和调度 --> ( 难度等级: [0.4442, 0.4442) || 挂载数据: blog: 1 ) +│ │ │ ├── 污点和容忍度 --> ( 难度等级: [0.4442, 0.4445) || 挂载数据: 无 ) +│ │ │ │ ├── 定义污点和容忍度 --> ( 难度等级: [0.4442, 0.4443) || 挂载数据: 无 ) +│ │ │ │ ├── 管理节点的污点 --> ( 难度等级: [0.4443, 0.4444) || 挂载数据: 无 ) +│ │ │ │ └── Pod对象的容忍度 --> ( 难度等级: [0.4444, 0.4445) || 挂载数据: 无 ) +│ │ │ └── Pod优选级和抢占式调度 --> ( 难度等级: [0.4445, 0.4447) || 挂载数据: 无 ) +│ │ ├── Kubernetes系统扩展 --> ( 难度等级: [0.4447, 0.4459) || 挂载数据: 无 ) +│ │ │ ├── 自定义资源类型(CRD) --> ( 难度等级: [0.4447, 0.4449) || 挂载数据: 无 ) +│ │ │ │ ├── 创建CRD对象 --> ( 难度等级: [0.4447, 0.4447) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 自定义资源格式验证 --> ( 难度等级: [0.4447, 0.4448) || 挂载数据: 无 ) +│ │ │ │ ├── 子资源 --> ( 难度等级: [0.4448, 0.4448) || 挂载数据: 无 ) +│ │ │ │ ├── 使用资源类别 --> ( 难度等级: [0.4448, 0.4449) || 挂载数据: 无 ) +│ │ │ │ ├── 多版本支持 --> ( 难度等级: [0.4449, 0.4449) || 挂载数据: 无 ) +│ │ │ │ └── 自定义控制器基础 --> ( 难度等级: [0.4449, 0.4449) || 挂载数据: blog: 4 ) +│ │ │ ├── 自定义API Server --> ( 难度等级: [0.4449, 0.4452) || 挂载数据: 无 ) +│ │ │ │ ├── 自定义API Server概述 --> ( 难度等级: [0.4449, 0.445) || 挂载数据: blog: 1 ) +│ │ │ │ └── APIService对象 --> ( 难度等级: [0.445, 0.4452) || 挂载数据: 无 ) +│ │ │ ├── Kubernetes集群高可用 --> ( 难度等级: [0.4452, 0.4454) || 挂载数据: 无 ) +│ │ │ │ ├── etcd高可用 --> ( 难度等级: [0.4452, 0.4453) || 挂载数据: blog: 10 ) +│ │ │ │ └── Controller Manager和Scheduler高可用 --> ( 难度等级: [0.4453, 0.4454) || 挂载数据: blog: 4 ) +│ │ │ ├── Kubernetes的部署模式 --> ( 难度等级: [0.4454, 0.4456) || 挂载数据: 无 ) +│ │ │ │ ├── 关键组件 --> ( 难度等级: [0.4454, 0.4455) || 挂载数据: 无 ) +│ │ │ │ └── 常见的部署模式 --> ( 难度等级: [0.4455, 0.4456) || 挂载数据: 无 ) +│ │ │ └── 容器时代的DevOps概述 --> ( 难度等级: [0.4456, 0.4459) || 挂载数据: 无 ) +│ │ │ ├── 容器:DevOps协作的基础 --> ( 难度等级: [0.4456, 0.4457) || 挂载数据: blog: 2 ) +│ │ │ │ ├── 容器隔离等级 --> ( 难度等级: [0.4456, 0.4456) || 挂载数据: 无 ) +│ │ │ │ ├── 容器编排 --> ( 难度等级: [0.4456, 0.4456) || 挂载数据: blog: 5 ) +│ │ │ │ ├── 将镜像存储在可信的注册服务器中 --> ( 难度等级: [0.4456, 0.4456) || 挂载数据: 无 ) +│ │ │ │ ├── 充分利用Docker的构建缓存 --> ( 难度等级: [0.4456, 0.4456) || 挂载数据: 无 ) +│ │ │ │ ├── 不要使用特权模式运行容器 --> ( 难度等级: [0.4456, 0.4457) || 挂载数据: 无 ) +│ │ │ │ ├── 使用显式的容器镜像标签 --> ( 难度等级: [0.4457, 0.4457) || 挂载数据: 无 ) +│ │ │ │ ├── 保持小的容器镜像 --> ( 难度等级: [0.4457, 0.4457) || 挂载数据: 无 ) +│ │ │ │ ├── 单个容器只运行一个应用 --> ( 难度等级: [0.4457, 0.4457) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 使用可信镜像仓库中经过验证的镜像 --> ( 难度等级: [0.4457, 0.4457) || 挂载数据: 无 ) +│ │ │ │ ├── 对镜像进行漏洞扫描 --> ( 难度等级: [0.4457, 0.4457) || 挂载数据: 无 ) +│ │ │ │ ├── 不要将数据保存在容器中 --> ( 难度等级: [0.4457, 0.4457) || 挂载数据: blog: 2 ) +│ │ │ │ └── 永远不要在容器中存放密钥和配置 --> ( 难度等级: [0.4457, 0.4457) || 挂载数据: 无 ) +│ │ │ ├── 泛型端到端容器应用程序生命周期工作流 --> ( 难度等级: [0.4457, 0.4458) || 挂载数据: 无 ) +│ │ │ └── 基于Kubernetes的DevOps --> ( 难度等级: [0.4458, 0.4459) || 挂载数据: blog: 10 ) +│ │ ├── 资源指标及HPA控制器 --> ( 难度等级: [0.4459, 0.447) || 挂载数据: 无 ) +│ │ │ ├── 资源监控及资源指标 --> ( 难度等级: [0.4459, 0.4461) || 挂载数据: 无 ) +│ │ │ │ ├── 资源监控及Heapster --> ( 难度等级: [0.4459, 0.446) || 挂载数据: 无 ) +│ │ │ │ └── 新一代监控架构 --> ( 难度等级: [0.446, 0.4461) || 挂载数据: 无 ) +│ │ │ ├── 资源指标及其应用 --> ( 难度等级: [0.4461, 0.4464) || 挂载数据: 无 ) +│ │ │ │ ├── 部署metrics-server --> ( 难度等级: [0.4461, 0.4463) || 挂载数据: 无 ) +│ │ │ │ └── kubectl top命令 --> ( 难度等级: [0.4463, 0.4464) || 挂载数据: 无 ) +│ │ │ ├── 自定义指标与Prometheus --> ( 难度等级: [0.4464, 0.4467) || 挂载数据: 无 ) +│ │ │ │ ├── Prometheus概述 --> ( 难度等级: [0.4464, 0.4465) || 挂载数据: 无 ) +│ │ │ │ ├── 部署Prometheus监控系统 --> ( 难度等级: [0.4465, 0.4466) || 挂载数据: 无 ) +│ │ │ │ └── 自定义指标适配器k8s-prometheus-adapter --> ( 难度等级: [0.4466, 0.4467) || 挂载数据: 无 ) +│ │ │ └── 自动弹性缩放 --> ( 难度等级: [0.4467, 0.447) || 挂载数据: 无 ) +│ │ │ ├── HPA概述 --> ( 难度等级: [0.4467, 0.4468) || 挂载数据: 无 ) +│ │ │ ├── HPA(v1)控制器 --> ( 难度等级: [0.4468, 0.4469) || 挂载数据: 无 ) +│ │ │ └── HPA(v2)控制器 --> ( 难度等级: [0.4469, 0.447) || 挂载数据: 无 ) +│ │ ├── Helm程序包管理器 --> ( 难度等级: [0.447, 0.4482) || 挂载数据: 无 ) +│ │ │ ├── Helm基础 --> ( 难度等级: [0.447, 0.4474) || 挂载数据: 无 ) +│ │ │ │ ├── Helm的核心术语 --> ( 难度等级: [0.447, 0.4471) || 挂载数据: 无 ) +│ │ │ │ ├── Helm架构 --> ( 难度等级: [0.4471, 0.4472) || 挂载数据: 无 ) +│ │ │ │ ├── 安装Helm Client --> ( 难度等级: [0.4472, 0.4472) || 挂载数据: 无 ) +│ │ │ │ ├── 安装Tiller server --> ( 难度等级: [0.4472, 0.4473) || 挂载数据: 无 ) +│ │ │ │ └── Helm快速入门 --> ( 难度等级: [0.4473, 0.4474) || 挂载数据: blog: 1 ) +│ │ │ ├── Helm Charts --> ( 难度等级: [0.4474, 0.4478) || 挂载数据: 无 ) +│ │ │ │ ├── Charts文件组织结构 --> ( 难度等级: [0.4474, 0.4475) || 挂载数据: 无 ) +│ │ │ │ ├── Chart.yaml文件组织格式 --> ( 难度等级: [0.4475, 0.4475) || 挂载数据: 无 ) +│ │ │ │ ├── Charts中的依赖关系 --> ( 难度等级: [0.4475, 0.4476) || 挂载数据: 无 ) +│ │ │ │ ├── 模板和值 --> ( 难度等级: [0.4476, 0.4477) || 挂载数据: 无 ) +│ │ │ │ └── 自定义Charts --> ( 难度等级: [0.4477, 0.4478) || 挂载数据: 无 ) +│ │ │ └── Helm实践:部署EFK日志管理系统 --> ( 难度等级: [0.4478, 0.4482) || 挂载数据: 无 ) +│ │ │ ├── ElasticSearch集群 --> ( 难度等级: [0.4478, 0.4479) || 挂载数据: 无 ) +│ │ │ ├── 日志采集代理fluentd --> ( 难度等级: [0.4479, 0.448) || 挂载数据: 无 ) +│ │ │ └── 可视化组件Kibana --> ( 难度等级: [0.448, 0.4482) || 挂载数据: 无 ) +│ │ ├── 夯实基础:Linux网络虚拟化 --> ( 难度等级: [0.4482, 0.4493) || 挂载数据: 无 ) +│ │ │ ├── 网络虚拟化基石:network namespace --> ( 难度等级: [0.4482, 0.4483) || 挂载数据: 无 ) +│ │ │ │ ├── 初识network namespace --> ( 难度等级: [0.4482, 0.4482) || 挂载数据: 无 ) +│ │ │ │ ├── 配置network namespace --> ( 难度等级: [0.4482, 0.4482) || 挂载数据: 无 ) +│ │ │ │ └── network namespace API的使用 --> ( 难度等级: [0.4482, 0.4483) || 挂载数据: blog: 4 ) +│ │ │ ├── 千呼万唤始出来:veth pair --> ( 难度等级: [0.4483, 0.4484) || 挂载数据: 无 ) +│ │ │ │ └── veth pair内核实现 --> ( 难度等级: [0.4483, 0.4484) || 挂载数据: 无 ) +│ │ │ ├── 连接你我他:Linux bridge --> ( 难度等级: [0.4484, 0.4485) || 挂载数据: 无 ) +│ │ │ │ ├── Linux bridge初体验 --> ( 难度等级: [0.4484, 0.4484) || 挂载数据: blog: 10 ) +│ │ │ │ ├── 把IP让给Linux bridge --> ( 难度等级: [0.4484, 0.4485) || 挂载数据: blog: 10 ) +│ │ │ │ ├── 将物理网卡添加到Linux bridge --> ( 难度等级: [0.4485, 0.4485) || 挂载数据: blog: 2 ) +│ │ │ │ ├── Linux bridge在网络虚拟化中的应用 --> ( 难度等级: [0.4485, 0.4485) || 挂载数据: blog: 10 ) +│ │ │ │ └── 网络接口的混杂模式 --> ( 难度等级: [0.4485, 0.4485) || 挂载数据: 无 ) +│ │ │ ├── 给用户态一个机会:tun/tap设备 --> ( 难度等级: [0.4485, 0.4487) || 挂载数据: 无 ) +│ │ │ │ ├── tun/tap设备的工作原理 --> ( 难度等级: [0.4485, 0.4486) || 挂载数据: 无 ) +│ │ │ │ ├── 利用tun设备部署一个VPN --> ( 难度等级: [0.4486, 0.4486) || 挂载数据: 无 ) +│ │ │ │ └── tun设备编程 --> ( 难度等级: [0.4486, 0.4487) || 挂载数据: 无 ) +│ │ │ ├── iptables --> ( 难度等级: [0.4487, 0.4488) || 挂载数据: 无 ) +│ │ │ │ ├── 祖师爷netfilter --> ( 难度等级: [0.4487, 0.4487) || 挂载数据: 无 ) +│ │ │ │ ├── iptables的三板斧:table、chain和rule --> ( 难度等级: [0.4487, 0.4487) || 挂载数据: blog: 5 ) +│ │ │ │ ├── iptables的常规武器 --> ( 难度等级: [0.4487, 0.4487) || 挂载数据: 无 ) +│ │ │ │ ├── userspace模式 --> ( 难度等级: [0.4487, 0.4487) || 挂载数据: 无 ) +│ │ │ │ ├── iptables模式 --> ( 难度等级: [0.4487, 0.4487) || 挂载数据: blog: 10 ) +│ │ │ │ ├── IPVS模式 --> ( 难度等级: [0.4487, 0.4488) || 挂载数据: 无 ) +│ │ │ │ ├── iptables VS. IPVS --> ( 难度等级: [0.4488, 0.4488) || 挂载数据: 无 ) +│ │ │ │ └── conntrack --> ( 难度等级: [0.4488, 0.4488) || 挂载数据: blog: 2 ) +│ │ │ ├── 初识Linux隧道:ipip --> ( 难度等级: [0.4488, 0.4489) || 挂载数据: 无 ) +│ │ │ │ ├── 测试ipip隧道 --> ( 难度等级: [0.4488, 0.4489) || 挂载数据: 无 ) +│ │ │ │ └── ipip隧道测试结果复盘 --> ( 难度等级: [0.4489, 0.4489) || 挂载数据: 无 ) +│ │ │ ├── Linux隧道网络的代表:VXLAN --> ( 难度等级: [0.4489, 0.4491) || 挂载数据: 无 ) +│ │ │ │ ├── VXLAN协议原理简介 --> ( 难度等级: [0.4489, 0.4489) || 挂载数据: 无 ) +│ │ │ │ ├── VXLAN组网必要信息 --> ( 难度等级: [0.4489, 0.449) || 挂载数据: 无 ) +│ │ │ │ ├── VXLAN基本配置命令 --> ( 难度等级: [0.449, 0.449) || 挂载数据: 无 ) +│ │ │ │ ├── VXLAN网络实践 --> ( 难度等级: [0.449, 0.449) || 挂载数据: 无 ) +│ │ │ │ ├── 分布式控制中心 --> ( 难度等级: [0.449, 0.449) || 挂载数据: 无 ) +│ │ │ │ └── 自维护VTEP组 --> ( 难度等级: [0.449, 0.4491) || 挂载数据: 无 ) +│ │ │ ├── 物理网卡的分身术:Macvlan --> ( 难度等级: [0.4491, 0.4492) || 挂载数据: 无 ) +│ │ │ │ ├── Macvlan五大工作模式解析 --> ( 难度等级: [0.4491, 0.4491) || 挂载数据: 无 ) +│ │ │ │ ├── 测试使用Macvlan设备 --> ( 难度等级: [0.4491, 0.4491) || 挂载数据: 无 ) +│ │ │ │ ├── Macvlan的跨机通信 --> ( 难度等级: [0.4491, 0.4491) || 挂载数据: 无 ) +│ │ │ │ └── Macvlan与overlay对比 --> ( 难度等级: [0.4491, 0.4492) || 挂载数据: blog: 1 ) +│ │ │ └── Macvlan的救护员:IPvlan --> ( 难度等级: [0.4492, 0.4493) || 挂载数据: 无 ) +│ │ │ ├── IPvlan简介 --> ( 难度等级: [0.4492, 0.4492) || 挂载数据: 无 ) +│ │ │ ├── 测试IPvlan --> ( 难度等级: [0.4492, 0.4493) || 挂载数据: 无 ) +│ │ │ └── Docker IPvlan网络 --> ( 难度等级: [0.4493, 0.4493) || 挂载数据: 无 ) +│ │ ├── 饮水思源:Docker网络模型简介 --> ( 难度等级: [0.4493, 0.4505) || 挂载数据: 无 ) +│ │ │ ├── 主角登场:Linux容器 --> ( 难度等级: [0.4493, 0.4495) || 挂载数据: 无 ) +│ │ │ ├── 打开万花筒:Docker的四大网络模式 --> ( 难度等级: [0.4495, 0.4497) || 挂载数据: 无 ) +│ │ │ │ ├── bridge模式 --> ( 难度等级: [0.4495, 0.4495) || 挂载数据: blog: 1 ) +│ │ │ │ ├── host模式 --> ( 难度等级: [0.4495, 0.4496) || 挂载数据: 无 ) +│ │ │ │ ├── container模式 --> ( 难度等级: [0.4496, 0.4496) || 挂载数据: 无 ) +│ │ │ │ └── none模式 --> ( 难度等级: [0.4496, 0.4497) || 挂载数据: 无 ) +│ │ │ ├── 最常用的Docker网络技巧 --> ( 难度等级: [0.4497, 0.4499) || 挂载数据: 无 ) +│ │ │ │ ├── 查看容器IP --> ( 难度等级: [0.4497, 0.4497) || 挂载数据: 无 ) +│ │ │ │ ├── 端口映射 --> ( 难度等级: [0.4497, 0.4497) || 挂载数据: 无 ) +│ │ │ │ ├── 访问外网 --> ( 难度等级: [0.4497, 0.4498) || 挂载数据: 无 ) +│ │ │ │ ├── DNS和主机名 --> ( 难度等级: [0.4498, 0.4498) || 挂载数据: 无 ) +│ │ │ │ ├── 自定义网络 --> ( 难度等级: [0.4498, 0.4498) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 发布服务 --> ( 难度等级: [0.4498, 0.4499) || 挂载数据: 无 ) +│ │ │ │ └── docker link:两两互联 --> ( 难度等级: [0.4499, 0.4499) || 挂载数据: blog: 1 ) +│ │ │ ├── 容器网络的第一个标准:CNM --> ( 难度等级: [0.4499, 0.4501) || 挂载数据: 无 ) +│ │ │ │ ├── CNM标准 --> ( 难度等级: [0.4499, 0.4499) || 挂载数据: 无 ) +│ │ │ │ ├── 体验CNM接口 --> ( 难度等级: [0.4499, 0.45) || 挂载数据: 无 ) +│ │ │ │ ├── Libnetwork --> ( 难度等级: [0.45, 0.45) || 挂载数据: 无 ) +│ │ │ │ └── Libnetwork扩展 --> ( 难度等级: [0.45, 0.4501) || 挂载数据: 无 ) +│ │ │ ├── 天生不易:容器组网的挑战 --> ( 难度等级: [0.4501, 0.4503) || 挂载数据: 无 ) +│ │ │ │ ├── 容器网络挑战综述 --> ( 难度等级: [0.4501, 0.4501) || 挂载数据: blog: 2 ) +│ │ │ │ ├── Docker的解决方案 --> ( 难度等级: [0.4501, 0.4502) || 挂载数据: blog: 1 ) +│ │ │ │ └── 第三方容器网络插件 --> ( 难度等级: [0.4502, 0.4503) || 挂载数据: 无 ) +│ │ │ └── 如何做好技术选型:容器组网方案沙场点兵 --> ( 难度等级: [0.4503, 0.4505) || 挂载数据: 无 ) +│ │ │ ├── 隧道方案 --> ( 难度等级: [0.4503, 0.4503) || 挂载数据: 无 ) +│ │ │ ├── 路由方案 --> ( 难度等级: [0.4503, 0.4504) || 挂载数据: 无 ) +│ │ │ ├── 容器网络组网类型 --> ( 难度等级: [0.4504, 0.4504) || 挂载数据: 无 ) +│ │ │ └── 关于容器网络标准接口 --> ( 难度等级: [0.4504, 0.4505) || 挂载数据: 无 ) +│ │ ├── 标准的胜利:Kubernetes网络原理与实践 --> ( 难度等级: [0.4505, 0.4516) || 挂载数据: 无 ) +│ │ │ ├── 容器基础设施的代言人:Kubernetes --> ( 难度等级: [0.4505, 0.4505) || 挂载数据: 无 ) +│ │ │ │ ├── Kubernetes简介 --> ( 难度等级: [0.4505, 0.4505) || 挂载数据: 无 ) +│ │ │ │ ├── Kubernetes能做什么 --> ( 难度等级: [0.4505, 0.4505) || 挂载数据: 无 ) +│ │ │ │ ├── 如何用Kubernetes --> ( 难度等级: [0.4505, 0.4505) || 挂载数据: blog: 4 ) +│ │ │ │ └── Docker在Kubernetes中的角色 --> ( 难度等级: [0.4505, 0.4505) || 挂载数据: 无 ) +│ │ │ ├── 终于等到你:Kubernetes网络 --> ( 难度等级: [0.4505, 0.4506) || 挂载数据: 无 ) +│ │ │ │ ├── Kubernetes网络基础 --> ( 难度等级: [0.4505, 0.4506) || 挂载数据: blog: 5 ) +│ │ │ │ ├── Kubernetes网络架构综述 --> ( 难度等级: [0.4506, 0.4506) || 挂载数据: blog: 4 ) +│ │ │ │ ├── Kubernetes主机内组网模型 --> ( 难度等级: [0.4506, 0.4506) || 挂载数据: 无 ) +│ │ │ │ ├── Kubernetes跨节点组网模型 --> ( 难度等级: [0.4506, 0.4506) || 挂载数据: 无 ) +│ │ │ │ ├── Pod的hosts文件 --> ( 难度等级: [0.4506, 0.4506) || 挂载数据: blog: 1 ) +│ │ │ │ └── Pod的hostname --> ( 难度等级: [0.4506, 0.4506) || 挂载数据: 无 ) +│ │ │ ├── Pod的核心:pause容器 --> ( 难度等级: [0.4506, 0.4507) || 挂载数据: 无 ) +│ │ │ ├── 打通CNI与Kubernetes:Kubernetes网络驱动 --> ( 难度等级: [0.4507, 0.4508) || 挂载数据: 无 ) +│ │ │ │ ├── 即将完成历史使命:Kubenet --> ( 难度等级: [0.4507, 0.4507) || 挂载数据: 无 ) +│ │ │ │ └── 网络生态第一步:CNI --> ( 难度等级: [0.4507, 0.4508) || 挂载数据: blog: 2 ) +│ │ │ ├── 找到你并不容易:从集群内访问服务 --> ( 难度等级: [0.4508, 0.4508) || 挂载数据: 无 ) +│ │ │ │ ├── Kubernetes Service详解 --> ( 难度等级: [0.4508, 0.4508) || 挂载数据: 无 ) +│ │ │ │ ├── Service的三个port --> ( 难度等级: [0.4508, 0.4508) || 挂载数据: 无 ) +│ │ │ │ ├── 你的服务适合哪种发布形式 --> ( 难度等级: [0.4508, 0.4508) || 挂载数据: 无 ) +│ │ │ │ ├── Kubernetes Service发现 --> ( 难度等级: [0.4508, 0.4508) || 挂载数据: 无 ) +│ │ │ │ ├── 特殊的无头Service --> ( 难度等级: [0.4508, 0.4508) || 挂载数据: 无 ) +│ │ │ │ └── 怎么访问本地服务 --> ( 难度等级: [0.4508, 0.4508) || 挂载数据: 无 ) +│ │ │ ├── 找到你并不容易:从集群外访问服务 --> ( 难度等级: [0.4508, 0.4509) || 挂载数据: 无 ) +│ │ │ │ └── Kubernetes Ingress --> ( 难度等级: [0.4508, 0.4509) || 挂载数据: 无 ) +│ │ │ ├── 你的名字:通过域名访问服务 --> ( 难度等级: [0.4509, 0.451) || 挂载数据: 无 ) +│ │ │ │ ├── DNS服务基本框架 --> ( 难度等级: [0.4509, 0.4509) || 挂载数据: 无 ) +│ │ │ │ ├── 域名解析基本原理 --> ( 难度等级: [0.4509, 0.451) || 挂载数据: 无 ) +│ │ │ │ └── 调试DNS --> ( 难度等级: [0.451, 0.451) || 挂载数据: 无 ) +│ │ │ ├── Kubernetes网络策略:为你的应用保驾护航 --> ( 难度等级: [0.451, 0.4511) || 挂载数据: 无 ) +│ │ │ │ └── 网络策略应用举例 --> ( 难度等级: [0.451, 0.4511) || 挂载数据: 无 ) +│ │ │ ├── 前方高能:Kubernetes网络故障定位指南 --> ( 难度等级: [0.4511, 0.4512) || 挂载数据: 无 ) +│ │ │ │ ├── IP转发和桥接 --> ( 难度等级: [0.4511, 0.4511) || 挂载数据: 无 ) +│ │ │ │ ├── Pod CIDR冲突 --> ( 难度等级: [0.4511, 0.4511) || 挂载数据: 无 ) +│ │ │ │ ├── hairpin --> ( 难度等级: [0.4511, 0.4511) || 挂载数据: 无 ) +│ │ │ │ ├── 查看Pod IP地址 --> ( 难度等级: [0.4511, 0.4511) || 挂载数据: 无 ) +│ │ │ │ └── 故障排查工具 --> ( 难度等级: [0.4511, 0.4512) || 挂载数据: 无 ) +│ │ │ ├── 迈向云原生 --> ( 难度等级: [0.4512, 0.4512) || 挂载数据: 无 ) +│ │ │ │ ├── 找个合理的理由打破巨石应用 --> ( 难度等级: [0.4512, 0.4512) || 挂载数据: 无 ) +│ │ │ │ ├── 先解耦简单的服务 --> ( 难度等级: [0.4512, 0.4512) || 挂载数据: 无 ) +│ │ │ │ ├── 学会小规模的运维 --> ( 难度等级: [0.4512, 0.4512) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 使用防损层模式 --> ( 难度等级: [0.4512, 0.4512) || 挂载数据: 无 ) +│ │ │ │ ├── 使用刀砍模式 --> ( 难度等级: [0.4512, 0.4512) || 挂载数据: 无 ) +│ │ │ │ ├── 准备一个数据迁移策略 --> ( 难度等级: [0.4512, 0.4512) || 挂载数据: 无 ) +│ │ │ │ ├── 重写所有模板代码 --> ( 难度等级: [0.4512, 0.4512) || 挂载数据: 无 ) +│ │ │ │ └── 淘汰老代码 --> ( 难度等级: [0.4512, 0.4512) || 挂载数据: 无 ) +│ │ │ ├── 确保弹性 --> ( 难度等级: [0.4512, 0.4513) || 挂载数据: 无 ) +│ │ │ │ ├── 用重试来解决瞬时故障 --> ( 难度等级: [0.4512, 0.4512) || 挂载数据: 无 ) +│ │ │ │ ├── 使用有限次的重试 --> ( 难度等级: [0.4512, 0.4512) || 挂载数据: 无 ) +│ │ │ │ ├── 用断路器来处理非瞬时故障 --> ( 难度等级: [0.4512, 0.4513) || 挂载数据: 无 ) +│ │ │ │ ├── 优雅地降级 --> ( 难度等级: [0.4513, 0.4513) || 挂载数据: 无 ) +│ │ │ │ ├── 使用隔离模式 --> ( 难度等级: [0.4513, 0.4513) || 挂载数据: 无 ) +│ │ │ │ ├── 实现健康及就绪检查 --> ( 难度等级: [0.4513, 0.4513) || 挂载数据: 无 ) +│ │ │ │ ├── 为容器设定CPU和内存限制 --> ( 难度等级: [0.4513, 0.4513) || 挂载数据: 无 ) +│ │ │ │ └── 实现限速和限流 --> ( 难度等级: [0.4513, 0.4513) || 挂载数据: 无 ) +│ │ │ ├── 确保安全性 --> ( 难度等级: [0.4513, 0.4514) || 挂载数据: 无 ) +│ │ │ │ ├── 安全性需求同其他需求一样重要 --> ( 难度等级: [0.4513, 0.4513) || 挂载数据: 无 ) +│ │ │ │ ├── 在设计时就考虑安全性 --> ( 难度等级: [0.4513, 0.4513) || 挂载数据: 无 ) +│ │ │ │ ├── 授予最小访问权限 --> ( 难度等级: [0.4513, 0.4513) || 挂载数据: 无 ) +│ │ │ │ ├── 安全地存储所有密钥 --> ( 难度等级: [0.4513, 0.4513) || 挂载数据: 无 ) +│ │ │ │ ├── 模糊化数据 --> ( 难度等级: [0.4513, 0.4514) || 挂载数据: 无 ) +│ │ │ │ ├── 传输数据加密 --> ( 难度等级: [0.4514, 0.4514) || 挂载数据: 无 ) +│ │ │ │ ├── 使用联合身份管理 --> ( 难度等级: [0.4514, 0.4514) || 挂载数据: 无 ) +│ │ │ │ └── Kubernetes pod的隔离 --> ( 难度等级: [0.4514, 0.4514) || 挂载数据: 无 ) +│ │ │ ├── 处理数据 --> ( 难度等级: [0.4514, 0.4515) || 挂载数据: 无 ) +│ │ │ │ ├── 使用托管数据库和数据分析服务 --> ( 难度等级: [0.4514, 0.4514) || 挂载数据: 无 ) +│ │ │ │ ├── 使用符合数据需求的存储 --> ( 难度等级: [0.4514, 0.4514) || 挂载数据: 无 ) +│ │ │ │ ├── 将数据保存在多个地域或可用区中 --> ( 难度等级: [0.4514, 0.4514) || 挂载数据: 无 ) +│ │ │ │ ├── 使用数据分区和复制以提高扩展性 --> ( 难度等级: [0.4514, 0.4514) || 挂载数据: 无 ) +│ │ │ │ ├── 避免过度获取及频繁的I/O操作 --> ( 难度等级: [0.4514, 0.4514) || 挂载数据: 无 ) +│ │ │ │ ├── 不要把业务逻辑放在数据库中执行 --> ( 难度等级: [0.4514, 0.4514) || 挂载数据: 无 ) +│ │ │ │ ├── 使用类生产环境数据来测试 --> ( 难度等级: [0.4514, 0.4514) || 挂载数据: 无 ) +│ │ │ │ └── 处理瞬时故障 --> ( 难度等级: [0.4514, 0.4515) || 挂载数据: 无 ) +│ │ │ ├── 性能和伸缩性 --> ( 难度等级: [0.4515, 0.4515) || 挂载数据: 无 ) +│ │ │ │ ├── 设计可扩展的无状态服务 --> ( 难度等级: [0.4515, 0.4515) || 挂载数据: 无 ) +│ │ │ │ ├── 使用平台的自动伸缩功能 --> ( 难度等级: [0.4515, 0.4515) || 挂载数据: 无 ) +│ │ │ │ ├── 使用缓存 --> ( 难度等级: [0.4515, 0.4515) || 挂载数据: 无 ) +│ │ │ │ └── 用分区来实现超出服务限制的扩容 --> ( 难度等级: [0.4515, 0.4515) || 挂载数据: blog: 1 ) +│ │ │ └── 运维 --> ( 难度等级: [0.4515, 0.4516) || 挂载数据: blog: 1 ) +│ │ │ ├── 部署和发布是两项独立的活动 --> ( 难度等级: [0.4515, 0.4515) || 挂载数据: 无 ) +│ │ │ ├── 部署的内容要尽量小 --> ( 难度等级: [0.4515, 0.4515) || 挂载数据: 无 ) +│ │ │ ├── 组件层级的CI/CD定义 --> ( 难度等级: [0.4515, 0.4516) || 挂载数据: 无 ) +│ │ │ ├── 应用部署的一致性 --> ( 难度等级: [0.4516, 0.4516) || 挂载数据: 无 ) +│ │ │ ├── 采用零宕机发布 --> ( 难度等级: [0.4516, 0.4516) || 挂载数据: 无 ) +│ │ │ ├── 不要变更部署后的架构 --> ( 难度等级: [0.4516, 0.4516) || 挂载数据: 无 ) +│ │ │ ├── 使用容器化构建 --> ( 难度等级: [0.4516, 0.4516) || 挂载数据: 无 ) +│ │ │ ├── 用代码来描述基础设施 --> ( 难度等级: [0.4516, 0.4516) || 挂载数据: 无 ) +│ │ │ ├── 使用命名空间来组织Kubernetes中的服务 --> ( 难度等级: [0.4516, 0.4516) || 挂载数据: 无 ) +│ │ │ ├── 环境间的隔离 --> ( 难度等级: [0.4516, 0.4516) || 挂载数据: 无 ) +│ │ │ ├── 分隔函数源代码 --> ( 难度等级: [0.4516, 0.4516) || 挂载数据: 无 ) +│ │ │ └── 关联代码提交和部署 --> ( 难度等级: [0.4516, 0.4516) || 挂载数据: 无 ) +│ │ ├── 刨根问底:Kubernetes网络实现机制 --> ( 难度等级: [0.4516, 0.4528) || 挂载数据: 无 ) +│ │ │ ├── Kubernetes极客们的日常:DIY一个Ingress Controller --> ( 难度等级: [0.4516, 0.452) || 挂载数据: blog: 1 ) +│ │ │ │ ├── Ingress Controller的通用框架 --> ( 难度等级: [0.4516, 0.4518) || 挂载数据: blog: 1 ) +│ │ │ │ └── Nginx Ingress Controller详解 --> ( 难度等级: [0.4518, 0.452) || 挂载数据: blog: 2 ) +│ │ │ ├── 沧海桑田:Kubernetes DNS架构演进之路 --> ( 难度等级: [0.452, 0.4524) || 挂载数据: 无 ) +│ │ │ │ ├── Kube-dns的工作原理 --> ( 难度等级: [0.452, 0.4521) || 挂载数据: 无 ) +│ │ │ │ ├── 上位的CoreDNS --> ( 难度等级: [0.4521, 0.4523) || 挂载数据: 无 ) +│ │ │ │ └── Kube-dns VS. CoreDNS --> ( 难度等级: [0.4523, 0.4524) || 挂载数据: blog: 8 ) +│ │ │ └── 你的安全我负责:使用Calico提供Kubernetes网络策略 --> ( 难度等级: [0.4524, 0.4528) || 挂载数据: 无 ) +│ │ │ ├── 部署一个带Calico的Kubernetes集群 --> ( 难度等级: [0.4524, 0.4526) || 挂载数据: blog: 5 ) +│ │ │ └── 测试Calico网络策略 --> ( 难度等级: [0.4526, 0.4528) || 挂载数据: 无 ) +│ │ ├── 百花齐放:Kubernetes网络插件生态 --> ( 难度等级: [0.4528, 0.4539) || 挂载数据: 无 ) +│ │ │ ├── 从入门到放弃:Docker原生网络的不足 --> ( 难度等级: [0.4528, 0.4529) || 挂载数据: 无 ) +│ │ │ ├── CNI标准的胜出:从此江湖没有CNM --> ( 难度等级: [0.4529, 0.4531) || 挂载数据: 无 ) +│ │ │ │ └── CNI的工作原理 --> ( 难度等级: [0.4529, 0.4531) || 挂载数据: 无 ) +│ │ │ ├── Kubernetes网络插件鼻祖flannel --> ( 难度等级: [0.4531, 0.4533) || 挂载数据: 无 ) +│ │ │ │ ├── flannel简介 --> ( 难度等级: [0.4531, 0.4531) || 挂载数据: 无 ) +│ │ │ │ ├── flannel安装配置 --> ( 难度等级: [0.4531, 0.4532) || 挂载数据: blog: 1 ) +│ │ │ │ ├── flannel backend详解 --> ( 难度等级: [0.4532, 0.4532) || 挂载数据: blog: 1 ) +│ │ │ │ └── flannel与etcd --> ( 难度等级: [0.4532, 0.4533) || 挂载数据: blog: 7 ) +│ │ │ ├── 全能大三层网络插件:Calico --> ( 难度等级: [0.4533, 0.4534) || 挂载数据: 无 ) +│ │ │ │ ├── Calico简介 --> ( 难度等级: [0.4533, 0.4533) || 挂载数据: blog: 1 ) +│ │ │ │ ├── Calico的隧道模式 --> ( 难度等级: [0.4533, 0.4533) || 挂载数据: 无 ) +│ │ │ │ ├── 安装Calico --> ( 难度等级: [0.4533, 0.4534) || 挂载数据: 无 ) +│ │ │ │ ├── Calico报文路径 --> ( 难度等级: [0.4534, 0.4534) || 挂载数据: 无 ) +│ │ │ │ └── Calico使用指南 --> ( 难度等级: [0.4534, 0.4534) || 挂载数据: 无 ) +│ │ │ ├── Weave:支持数据加密的网络插件 --> ( 难度等级: [0.4534, 0.4536) || 挂载数据: 无 ) +│ │ │ │ ├── Weave简介 --> ( 难度等级: [0.4534, 0.4535) || 挂载数据: 无 ) +│ │ │ │ ├── Weave实现原理 --> ( 难度等级: [0.4535, 0.4535) || 挂载数据: 无 ) +│ │ │ │ ├── Weave安装 --> ( 难度等级: [0.4535, 0.4535) || 挂载数据: 无 ) +│ │ │ │ ├── Weave网络通信模型 --> ( 难度等级: [0.4535, 0.4536) || 挂载数据: 无 ) +│ │ │ │ └── Weave的应用示例 --> ( 难度等级: [0.4536, 0.4536) || 挂载数据: 无 ) +│ │ │ ├── Cilium:为微服务网络连接安全而生 --> ( 难度等级: [0.4536, 0.4538) || 挂载数据: 无 ) +│ │ │ │ ├── 以API为中心的微服务安全 --> ( 难度等级: [0.4536, 0.4537) || 挂载数据: 无 ) +│ │ │ │ └── BPF优化的数据平面性能 --> ( 难度等级: [0.4537, 0.4538) || 挂载数据: 无 ) +│ │ │ └── Kubernetes多网络的先行者:CNI-Genie --> ( 难度等级: [0.4538, 0.4539) || 挂载数据: 无 ) +│ │ │ ├── CNI-Genie功能速递 --> ( 难度等级: [0.4538, 0.4538) || 挂载数据: blog: 1 ) +│ │ │ └── 容器多IP --> ( 难度等级: [0.4538, 0.4539) || 挂载数据: blog: 3 ) +│ │ ├── Kubernetes网络下半场:Istio --> ( 难度等级: [0.4539, 0.4551) || 挂载数据: 无 ) +│ │ │ ├── 微服务架构的大地震:sidecar模式 --> ( 难度等级: [0.4539, 0.4541) || 挂载数据: 无 ) +│ │ │ │ ├── 你真的需要Service Mesh吗 --> ( 难度等级: [0.4539, 0.454) || 挂载数据: 无 ) +│ │ │ │ ├── sidecar模式 --> ( 难度等级: [0.454, 0.454) || 挂载数据: 无 ) +│ │ │ │ ├── Service Mesh与sidecar --> ( 难度等级: [0.454, 0.4541) || 挂载数据: 无 ) +│ │ │ │ ├── Kubernetes Service VS. Service Mesh --> ( 难度等级: [0.4541, 0.4541) || 挂载数据: 无 ) +│ │ │ │ └── Service Mesh典型实现之Linkerd --> ( 难度等级: [0.4541, 0.4541) || 挂载数据: 无 ) +│ │ │ ├── Istio:引领新一代微服务架构潮流 --> ( 难度等级: [0.4541, 0.4544) || 挂载数据: 无 ) +│ │ │ │ ├── Istio简介 --> ( 难度等级: [0.4541, 0.4542) || 挂载数据: 无 ) +│ │ │ │ ├── Istio安装 --> ( 难度等级: [0.4542, 0.4543) || 挂载数据: 无 ) +│ │ │ │ └── Istio路由规则的实现 --> ( 难度等级: [0.4543, 0.4544) || 挂载数据: 无 ) +│ │ │ ├── 一切尽在不言中:Istio sidecar透明注入 --> ( 难度等级: [0.4544, 0.4546) || 挂载数据: 无 ) +│ │ │ │ ├── Init容器 --> ( 难度等级: [0.4544, 0.4544) || 挂载数据: blog: 2 ) +│ │ │ │ ├── sideca注入示例 --> ( 难度等级: [0.4544, 0.4545) || 挂载数据: 无 ) +│ │ │ │ ├── 手工注入sidecar --> ( 难度等级: [0.4545, 0.4545) || 挂载数据: 无 ) +│ │ │ │ ├── 自动注入sidecar --> ( 难度等级: [0.4545, 0.4546) || 挂载数据: 无 ) +│ │ │ │ └── 从应用容器到sidecar代理的通信 --> ( 难度等级: [0.4546, 0.4546) || 挂载数据: 无 ) +│ │ │ ├── 不再为iptables脚本所困:Istio CNI插件 --> ( 难度等级: [0.4546, 0.4548) || 挂载数据: 无 ) +│ │ │ └── 除了微服务,Istio还能做更多 --> ( 难度等级: [0.4548, 0.4551) || 挂载数据: 无 ) +│ │ ├── 云原生简介 --> ( 难度等级: [0.4551, 0.4562) || 挂载数据: 无 ) +│ │ │ ├── 分布式系统 --> ( 难度等级: [0.4551, 0.4555) || 挂载数据: 无 ) +│ │ │ │ ├── 分布式系统的误区 --> ( 难度等级: [0.4551, 0.4553) || 挂载数据: blog: 1 ) +│ │ │ │ └── CAP定理 --> ( 难度等级: [0.4553, 0.4555) || 挂载数据: 无 ) +│ │ │ ├── 十二要素应用 --> ( 难度等级: [0.4555, 0.4558) || 挂载数据: 无 ) +│ │ │ └── 可用性和服务等级协议 --> ( 难度等级: [0.4558, 0.4562) || 挂载数据: 无 ) +│ │ ├── 云原生基础 --> ( 难度等级: [0.4562, 0.4574) || 挂载数据: 无 ) +│ │ │ ├── 无服务器架构 --> ( 难度等级: [0.4562, 0.4565) || 挂载数据: 无 ) +│ │ │ ├── 函数计算 --> ( 难度等级: [0.4565, 0.4568) || 挂载数据: 无 ) +│ │ │ │ ├── 编写单一用途的函数 --> ( 难度等级: [0.4565, 0.4566) || 挂载数据: 无 ) +│ │ │ │ ├── 避免串联函数 --> ( 难度等级: [0.4566, 0.4566) || 挂载数据: 无 ) +│ │ │ │ ├── 函数应保持轻量和简单 --> ( 难度等级: [0.4566, 0.4567) || 挂载数据: 无 ) +│ │ │ │ ├── 实现无状态函数 --> ( 难度等级: [0.4567, 0.4567) || 挂载数据: 无 ) +│ │ │ │ ├── 分离函数入口和函数的业务逻辑 --> ( 难度等级: [0.4567, 0.4567) || 挂载数据: blog: 1 ) +│ │ │ │ └── 避免长时间运行的函数 --> ( 难度等级: [0.4567, 0.4568) || 挂载数据: 无 ) +│ │ │ ├── 从虚拟机到云原生 --> ( 难度等级: [0.4568, 0.4571) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 提升和转变 --> ( 难度等级: [0.4568, 0.4569) || 挂载数据: blog: 4 ) +│ │ │ │ ├── 应用的现代化改造 --> ( 难度等级: [0.4569, 0.457) || 挂载数据: 无 ) +│ │ │ │ └── 应用的优化 --> ( 难度等级: [0.457, 0.4571) || 挂载数据: 无 ) +│ │ │ └── 微服务 --> ( 难度等级: [0.4571, 0.4574) || 挂载数据: 无 ) +│ │ │ ├── 微服务架构的优势 --> ( 难度等级: [0.4571, 0.4572) || 挂载数据: 无 ) +│ │ │ └── 微服务架构带来的挑战 --> ( 难度等级: [0.4572, 0.4574) || 挂载数据: 无 ) +│ │ ├── 云原生应用的设计 --> ( 难度等级: [0.4574, 0.4585) || 挂载数据: 无 ) +│ │ │ ├── 云原生应用的基础 --> ( 难度等级: [0.4574, 0.4575) || 挂载数据: blog: 10 ) +│ │ │ │ ├── 精益运营 --> ( 难度等级: [0.4574, 0.4574) || 挂载数据: 无 ) +│ │ │ │ ├── 安全性 --> ( 难度等级: [0.4574, 0.4575) || 挂载数据: 无 ) +│ │ │ │ └── 可扩展性与成本 --> ( 难度等级: [0.4575, 0.4575) || 挂载数据: blog: 1 ) +│ │ │ ├── 云原生与传统架构的对比 --> ( 难度等级: [0.4575, 0.4577) || 挂载数据: blog: 10 ) +│ │ │ ├── API设计与版本控制 --> ( 难度等级: [0.4577, 0.4578) || 挂载数据: 无 ) +│ │ │ │ ├── API的前后兼容 --> ( 难度等级: [0.4577, 0.4577) || 挂载数据: blog: 3 ) +│ │ │ │ └── 语义版本号 --> ( 难度等级: [0.4577, 0.4578) || 挂载数据: 无 ) +│ │ │ ├── 服务间的通信 --> ( 难度等级: [0.4578, 0.4579) || 挂载数据: 无 ) +│ │ │ │ ├── 通信协议 --> ( 难度等级: [0.4578, 0.4578) || 挂载数据: 无 ) +│ │ │ │ ├── 消息协议 --> ( 难度等级: [0.4578, 0.4578) || 挂载数据: 无 ) +│ │ │ │ ├── 序列化的考虑因素 --> ( 难度等级: [0.4578, 0.4578) || 挂载数据: 无 ) +│ │ │ │ ├── 幂等性 --> ( 难度等级: [0.4578, 0.4578) || 挂载数据: 无 ) +│ │ │ │ ├── 请求与响应 --> ( 难度等级: [0.4578, 0.4579) || 挂载数据: 无 ) +│ │ │ │ ├── 发布者与订阅者 --> ( 难度等级: [0.4579, 0.4579) || 挂载数据: 无 ) +│ │ │ │ ├── 发布者/订阅者模式与请求/响应模式间的选择 --> ( 难度等级: [0.4579, 0.4579) || 挂载数据: 无 ) +│ │ │ │ ├── 同步与异步 --> ( 难度等级: [0.4579, 0.4579) || 挂载数据: 无 ) +│ │ │ │ ├── 设计时考虑前后兼容性 --> ( 难度等级: [0.4579, 0.4579) || 挂载数据: 无 ) +│ │ │ │ ├── 封装好服务避免泄露内部细节 --> ( 难度等级: [0.4579, 0.4579) || 挂载数据: 无 ) +│ │ │ │ ├── 优先考虑异步通信 --> ( 难度等级: [0.4579, 0.4579) || 挂载数据: 无 ) +│ │ │ │ ├── 使用高效的序列化技术 --> ( 难度等级: [0.4579, 0.4579) || 挂载数据: 无 ) +│ │ │ │ ├── 用批处理来提高请求处理的效率 --> ( 难度等级: [0.4579, 0.4579) || 挂载数据: 无 ) +│ │ │ │ └── 拆分大的消息 --> ( 难度等级: [0.4579, 0.4579) || 挂载数据: 无 ) +│ │ │ ├── 网关 --> ( 难度等级: [0.4579, 0.4581) || 挂载数据: 无 ) +│ │ │ │ ├── 路由 --> ( 难度等级: [0.4579, 0.458) || 挂载数据: 无 ) +│ │ │ │ ├── 聚合 --> ( 难度等级: [0.458, 0.458) || 挂载数据: 无 ) +│ │ │ │ ├── 卸载 --> ( 难度等级: [0.458, 0.4581) || 挂载数据: 无 ) +│ │ │ │ └── 网关的实现 --> ( 难度等级: [0.4581, 0.4581) || 挂载数据: 无 ) +│ │ │ ├── 出口网关 --> ( 难度等级: [0.4581, 0.4582) || 挂载数据: 无 ) +│ │ │ ├── 服务网格 --> ( 难度等级: [0.4582, 0.4584) || 挂载数据: 无 ) +│ │ │ └── 架构示例 --> ( 难度等级: [0.4584, 0.4585) || 挂载数据: 无 ) +│ │ ├── 数据处理 --> ( 难度等级: [0.4585, 0.4597) || 挂载数据: 无 ) +│ │ │ ├── 数据存储系统 --> ( 难度等级: [0.4585, 0.4587) || 挂载数据: 无 ) +│ │ │ │ ├── 对象、文件和磁盘 --> ( 难度等级: [0.4585, 0.4586) || 挂载数据: 无 ) +│ │ │ │ ├── 数据库 --> ( 难度等级: [0.4586, 0.4586) || 挂载数据: 无 ) +│ │ │ │ ├── 流和队列 --> ( 难度等级: [0.4586, 0.4586) || 挂载数据: 无 ) +│ │ │ │ ├── 区块链 --> ( 难度等级: [0.4586, 0.4587) || 挂载数据: blog: 3 ) +│ │ │ │ └── 数据存储的选择 --> ( 难度等级: [0.4587, 0.4587) || 挂载数据: 无 ) +│ │ │ ├── 多数据存储下的数据 --> ( 难度等级: [0.4587, 0.4589) || 挂载数据: 无 ) +│ │ │ │ ├── 捕获数据更改 --> ( 难度等级: [0.4587, 0.4588) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 将更改作为事件写入更改日志 --> ( 难度等级: [0.4588, 0.4588) || 挂载数据: 无 ) +│ │ │ │ ├── 事务监管 --> ( 难度等级: [0.4588, 0.4588) || 挂载数据: 无 ) +│ │ │ │ ├── 事务回滚 --> ( 难度等级: [0.4588, 0.4589) || 挂载数据: 无 ) +│ │ │ │ └── 提取、转换和加载 --> ( 难度等级: [0.4589, 0.4589) || 挂载数据: 无 ) +│ │ │ ├── 客户端访问数据 --> ( 难度等级: [0.4589, 0.4591) || 挂载数据: 无 ) +│ │ │ │ ├── 受限的客户令牌(代客密钥) --> ( 难度等级: [0.4589, 0.459) || 挂载数据: 无 ) +│ │ │ │ ├── 细粒度访问控制的数据库服务 --> ( 难度等级: [0.459, 0.459) || 挂载数据: 无 ) +│ │ │ │ └── GraphQL数据服务 --> ( 难度等级: [0.459, 0.4591) || 挂载数据: 无 ) +│ │ │ ├── 可快速伸缩的数据 --> ( 难度等级: [0.4591, 0.4593) || 挂载数据: 无 ) +│ │ │ │ ├── 数据分片 --> ( 难度等级: [0.4591, 0.4592) || 挂载数据: 无 ) +│ │ │ │ ├── 数据缓存 --> ( 难度等级: [0.4592, 0.4592) || 挂载数据: 无 ) +│ │ │ │ └── 内容分发网络 --> ( 难度等级: [0.4592, 0.4593) || 挂载数据: 无 ) +│ │ │ ├── 数据分析 --> ( 难度等级: [0.4593, 0.4595) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 数据流 --> ( 难度等级: [0.4593, 0.4593) || 挂载数据: 无 ) +│ │ │ │ ├── 批处理 --> ( 难度等级: [0.4593, 0.4594) || 挂载数据: 无 ) +│ │ │ │ ├── 对象存储上的数据湖 --> ( 难度等级: [0.4594, 0.4594) || 挂载数据: 无 ) +│ │ │ │ ├── 数据湖和数据仓库 --> ( 难度等级: [0.4594, 0.4594) || 挂载数据: 无 ) +│ │ │ │ └── 分布式查询引擎 --> ( 难度等级: [0.4594, 0.4595) || 挂载数据: 无 ) +│ │ │ └── Kubernetes中的数据库 --> ( 难度等级: [0.4595, 0.4597) || 挂载数据: 无 ) +│ │ │ ├── StatefulSet --> ( 难度等级: [0.4595, 0.4596) || 挂载数据: 无 ) +│ │ │ └── DaemonSet --> ( 难度等级: [0.4596, 0.4597) || 挂载数据: 无 ) +│ │ ├── DevOps --> ( 难度等级: [0.4597, 0.4608) || 挂载数据: 无 ) +│ │ │ ├── 什么是DevOps --> ( 难度等级: [0.4597, 0.4598) || 挂载数据: blog: 10 ) +│ │ │ │ ├── 协作 --> ( 难度等级: [0.4597, 0.4597) || 挂载数据: 无 ) +│ │ │ │ ├── 自动化 --> ( 难度等级: [0.4597, 0.4597) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 精益原则和流程 --> ( 难度等级: [0.4597, 0.4598) || 挂载数据: 无 ) +│ │ │ │ ├── 度量 --> ( 难度等级: [0.4598, 0.4598) || 挂载数据: 无 ) +│ │ │ │ └── 分享 --> ( 难度等级: [0.4598, 0.4598) || 挂载数据: 无 ) +│ │ │ ├── 测试 --> ( 难度等级: [0.4598, 0.46) || 挂载数据: 无 ) +│ │ │ │ ├── 测试替身 --> ( 难度等级: [0.4598, 0.4599) || 挂载数据: 无 ) +│ │ │ │ ├── 自动化测试金字塔 --> ( 难度等级: [0.4599, 0.4599) || 挂载数据: 无 ) +│ │ │ │ ├── 不同测试类型的适用时机 --> ( 难度等级: [0.4599, 0.4599) || 挂载数据: 无 ) +│ │ │ │ ├── 测试节奏 --> ( 难度等级: [0.4599, 0.46) || 挂载数据: 无 ) +│ │ │ │ └── 在生产环境中测试 --> ( 难度等级: [0.46, 0.46) || 挂载数据: 无 ) +│ │ │ ├── 开发环境和工具 --> ( 难度等级: [0.46, 0.4602) || 挂载数据: 无 ) +│ │ │ │ ├── 开发工具 --> ( 难度等级: [0.46, 0.46) || 挂载数据: 无 ) +│ │ │ │ ├── 开发环境 --> ( 难度等级: [0.46, 0.4601) || 挂载数据: blog: 4 ) +│ │ │ │ ├── 本地开发环境 --> ( 难度等级: [0.4601, 0.4601) || 挂载数据: 无 ) +│ │ │ │ ├── 本地开发环境结合远端集群 --> ( 难度等级: [0.4601, 0.4601) || 挂载数据: 无 ) +│ │ │ │ ├── Skaffold开发工作流 --> ( 难度等级: [0.4601, 0.4601) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 将远端集群路由到本地开发环境 --> ( 难度等级: [0.4601, 0.4601) || 挂载数据: 无 ) +│ │ │ │ └── 云端开发环境 --> ( 难度等级: [0.4601, 0.4602) || 挂载数据: 无 ) +│ │ │ ├── 持续集成/持续交付 --> ( 难度等级: [0.4602, 0.4603) || 挂载数据: 无 ) +│ │ │ │ ├── 源代码管理 --> ( 难度等级: [0.4602, 0.4602) || 挂载数据: 无 ) +│ │ │ │ ├── 构建阶段 --> ( 难度等级: [0.4602, 0.4602) || 挂载数据: 无 ) +│ │ │ │ ├── 测试阶段 --> ( 难度等级: [0.4602, 0.4603) || 挂载数据: 无 ) +│ │ │ │ ├── 部署阶段 --> ( 难度等级: [0.4603, 0.4603) || 挂载数据: 无 ) +│ │ │ │ ├── 发布阶段 --> ( 难度等级: [0.4603, 0.4603) || 挂载数据: 无 ) +│ │ │ │ └── 发布后阶段 --> ( 难度等级: [0.4603, 0.4603) || 挂载数据: 无 ) +│ │ │ ├── 监控 --> ( 难度等级: [0.4603, 0.4605) || 挂载数据: 无 ) +│ │ │ │ ├── 收集指标 --> ( 难度等级: [0.4603, 0.4604) || 挂载数据: 无 ) +│ │ │ │ └── 服务的可观测性 --> ( 难度等级: [0.4604, 0.4605) || 挂载数据: 无 ) +│ │ │ ├── 配置管理 --> ( 难度等级: [0.4605, 0.4607) || 挂载数据: 无 ) +│ │ │ │ ├── 单一环境变量 --> ( 难度等级: [0.4605, 0.4605) || 挂载数据: 无 ) +│ │ │ │ ├── 将配置数据放入存储卷中 --> ( 难度等级: [0.4605, 0.4606) || 挂载数据: 无 ) +│ │ │ │ ├── 密钥保存 --> ( 难度等级: [0.4606, 0.4606) || 挂载数据: 无 ) +│ │ │ │ └── 部署配置 --> ( 难度等级: [0.4606, 0.4607) || 挂载数据: 无 ) +│ │ │ └── 持续集成/持续交付流程示例 --> ( 难度等级: [0.4607, 0.4608) || 挂载数据: 无 ) +│ │ ├── 可移植性 --> ( 难度等级: [0.4608, 0.462) || 挂载数据: 无 ) +│ │ │ ├── 可移植性的代价 --> ( 难度等级: [0.4608, 0.4614) || 挂载数据: 无 ) +│ │ │ └── 何时及如何实现可移植性 --> ( 难度等级: [0.4614, 0.462) || 挂载数据: 无 ) +│ │ │ ├── 标准化的接口 --> ( 难度等级: [0.4614, 0.4615) || 挂载数据: 无 ) +│ │ │ ├── 共用的服务和功能 --> ( 难度等级: [0.4615, 0.4616) || 挂载数据: 无 ) +│ │ │ ├── 抽象和分层 --> ( 难度等级: [0.4616, 0.4617) || 挂载数据: 无 ) +│ │ │ ├── 第三方服务商的托管服务 --> ( 难度等级: [0.4617, 0.4618) || 挂载数据: 无 ) +│ │ │ ├── 可移植性工具 --> ( 难度等级: [0.4618, 0.4619) || 挂载数据: 无 ) +│ │ │ └── 把Kubernetes作为可移植性层 --> ( 难度等级: [0.4619, 0.462) || 挂载数据: 无 ) +│ │ ├── 理论篇(技术进阶) --> ( 难度等级: [0.462, 0.4631) || 挂载数据: 无 ) +│ │ │ ├── 鸟瞰云上Kubernetes --> ( 难度等级: [0.462, 0.4621) || 挂载数据: 无 ) +│ │ │ │ ├── 内容概要 --> ( 难度等级: [0.462, 0.462) || 挂载数据: 无 ) +│ │ │ │ ├── 云资源层 --> ( 难度等级: [0.462, 0.462) || 挂载数据: blog: 2 ) +│ │ │ │ │ ├── 专有版 --> ( 难度等级: [0.462, 0.462) || 挂载数据: 无 ) +│ │ │ │ │ ├── 托管版 --> ( 难度等级: [0.462, 0.462) || 挂载数据: 无 ) +│ │ │ │ │ └── Serverless版 --> ( 难度等级: [0.462, 0.462) || 挂载数据: 无 ) +│ │ │ │ ├── 单机系统层 --> ( 难度等级: [0.462, 0.4621) || 挂载数据: 无 ) +│ │ │ │ ├── 集群系统层 --> ( 难度等级: [0.4621, 0.4621) || 挂载数据: 无 ) +│ │ │ │ │ ├── 专有版 --> ( 难度等级: [0.4621, 0.4621) || 挂载数据: 无 ) +│ │ │ │ │ ├── 托管版 --> ( 难度等级: [0.4621, 0.4621) || 挂载数据: 无 ) +│ │ │ │ │ └── Serverless版 --> ( 难度等级: [0.4621, 0.4621) || 挂载数据: 无 ) +│ │ │ │ └── 功能扩展层 --> ( 难度等级: [0.4621, 0.4621) || 挂载数据: 无 ) +│ │ │ │ └── 日志 --> ( 难度等级: [0.4621, 0.4621) || 挂载数据: 无 ) +│ │ │ ├── 认识集群的大脑 --> ( 难度等级: [0.4621, 0.4622) || 挂载数据: 无 ) +│ │ │ │ ├── 从控制器视角看集群 --> ( 难度等级: [0.4621, 0.4622) || 挂载数据: 无 ) +│ │ │ │ └── 控制器示例 --> ( 难度等级: [0.4622, 0.4622) || 挂载数据: 无 ) +│ │ │ │ ├── 服务控制器 --> ( 难度等级: [0.4622, 0.4622) || 挂载数据: blog: 1 ) +│ │ │ │ └── 路由控制器 --> ( 难度等级: [0.4622, 0.4622) || 挂载数据: 无 ) +│ │ │ ├── 网络与通信原理 --> ( 难度等级: [0.4622, 0.4623) || 挂载数据: 无 ) +│ │ │ │ ├── 背景 --> ( 难度等级: [0.4622, 0.4622) || 挂载数据: 无 ) +│ │ │ │ ├── 阿里云Kubernetes集群网络大图 --> ( 难度等级: [0.4622, 0.4623) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 集群网络搭建 --> ( 难度等级: [0.4623, 0.4623) || 挂载数据: 无 ) +│ │ │ │ │ ├── 初始阶段 --> ( 难度等级: [0.4623, 0.4623) || 挂载数据: 无 ) +│ │ │ │ │ ├── 集群阶段 --> ( 难度等级: [0.4623, 0.4623) || 挂载数据: blog: 2 ) +│ │ │ │ │ ├── 节点阶段 --> ( 难度等级: [0.4623, 0.4623) || 挂载数据: 无 ) +│ │ │ │ │ └── Pod阶段 --> ( 难度等级: [0.4623, 0.4623) || 挂载数据: 无 ) +│ │ │ │ └── 通信原理 --> ( 难度等级: [0.4623, 0.4623) || 挂载数据: 无 ) +│ │ │ ├── 节点伸缩的实现 --> ( 难度等级: [0.4623, 0.4624) || 挂载数据: 无 ) +│ │ │ │ ├── 节点增加原理 --> ( 难度等级: [0.4623, 0.4624) || 挂载数据: 无 ) +│ │ │ │ │ ├── 手动添加已有节点 --> ( 难度等级: [0.4623, 0.4623) || 挂载数据: 无 ) +│ │ │ │ │ ├── 自动添加已有节点 --> ( 难度等级: [0.4623, 0.4623) || 挂载数据: 无 ) +│ │ │ │ │ ├── 集群扩容 --> ( 难度等级: [0.4623, 0.4624) || 挂载数据: 无 ) +│ │ │ │ │ └── 自动伸缩 --> ( 难度等级: [0.4624, 0.4624) || 挂载数据: 无 ) +│ │ │ │ ├── 节点减少原理 --> ( 难度等级: [0.4624, 0.4624) || 挂载数据: 无 ) +│ │ │ │ └── 节点池原理 --> ( 难度等级: [0.4624, 0.4624) || 挂载数据: 无 ) +│ │ │ ├── 简洁的服务模型 --> ( 难度等级: [0.4624, 0.4626) || 挂载数据: 无 ) +│ │ │ │ ├── 服务的本质是什么 --> ( 难度等级: [0.4624, 0.4625) || 挂载数据: 无 ) +│ │ │ │ ├── 自带通信员 --> ( 难度等级: [0.4625, 0.4625) || 挂载数据: 无 ) +│ │ │ │ ├── 让服务照进现实 --> ( 难度等级: [0.4625, 0.4625) || 挂载数据: 无 ) +│ │ │ │ └── 基于Netfilter的实现 --> ( 难度等级: [0.4625, 0.4626) || 挂载数据: 无 ) +│ │ │ │ ├── 过滤器框架 --> ( 难度等级: [0.4625, 0.4625) || 挂载数据: 无 ) +│ │ │ │ ├── 节点网络大图 --> ( 难度等级: [0.4625, 0.4625) || 挂载数据: 无 ) +│ │ │ │ ├── 升级过滤器框架 --> ( 难度等级: [0.4625, 0.4626) || 挂载数据: 无 ) +│ │ │ │ └── 用自定义链实现服务的反向代理 --> ( 难度等级: [0.4626, 0.4626) || 挂载数据: 无 ) +│ │ │ ├── 镜像下载自动化 --> ( 难度等级: [0.4626, 0.4627) || 挂载数据: 无 ) +│ │ │ │ ├── 镜像下载这件小事 --> ( 难度等级: [0.4626, 0.4626) || 挂载数据: 无 ) +│ │ │ │ ├── 理解OAuth 2.0协议 --> ( 难度等级: [0.4626, 0.4626) || 挂载数据: blog: 10 ) +│ │ │ │ ├── Docker扮演的角色 --> ( 难度等级: [0.4626, 0.4626) || 挂载数据: 无 ) +│ │ │ │ │ ├── 整体结构 --> ( 难度等级: [0.4626, 0.4626) || 挂载数据: 无 ) +│ │ │ │ │ ├── 理解docker login --> ( 难度等级: [0.4626, 0.4626) || 挂载数据: blog: 1 ) +│ │ │ │ │ └── 拉取镜像是怎么回事 --> ( 难度等级: [0.4626, 0.4626) || 挂载数据: blog: 1 ) +│ │ │ │ ├── Kubernetes实现的私有镜像自动拉取 --> ( 难度等级: [0.4626, 0.4626) || 挂载数据: 无 ) +│ │ │ │ │ ├── 基本功能 --> ( 难度等级: [0.4626, 0.4626) || 挂载数据: 无 ) +│ │ │ │ │ └── 进阶方式 --> ( 难度等级: [0.4626, 0.4626) || 挂载数据: 无 ) +│ │ │ │ └── 阿里云实现的ACR credential helper --> ( 难度等级: [0.4626, 0.4627) || 挂载数据: blog: 10 ) +│ │ │ ├── 日志服务的集成 --> ( 难度等级: [0.4627, 0.4628) || 挂载数据: 无 ) +│ │ │ │ ├── 日志服务介绍 --> ( 难度等级: [0.4627, 0.4627) || 挂载数据: blog: 1 ) +│ │ │ │ ├── 采集方案介绍 --> ( 难度等级: [0.4627, 0.4627) || 挂载数据: 无 ) +│ │ │ │ │ ├── 方案简介 --> ( 难度等级: [0.4627, 0.4627) || 挂载数据: 无 ) +│ │ │ │ │ ├── 运行流程 --> ( 难度等级: [0.4627, 0.4627) || 挂载数据: 无 ) +│ │ │ │ │ └── 配置方式 --> ( 难度等级: [0.4627, 0.4627) || 挂载数据: 无 ) +│ │ │ │ └── 核心技术介绍 --> ( 难度等级: [0.4627, 0.4628) || 挂载数据: 无 ) +│ │ │ │ ├── 背景 --> ( 难度等级: [0.4627, 0.4628) || 挂载数据: 无 ) +│ │ │ │ ├── 实现方式 --> ( 难度等级: [0.4628, 0.4628) || 挂载数据: 无 ) +│ │ │ │ └── alibaba-log-controller内部实现 --> ( 难度等级: [0.4628, 0.4628) || 挂载数据: blog: 1 ) +│ │ │ ├── 集群与存储系统 --> ( 难度等级: [0.4628, 0.4629) || 挂载数据: 无 ) +│ │ │ │ ├── 从应用的状态谈起 --> ( 难度等级: [0.4628, 0.4628) || 挂载数据: 无 ) +│ │ │ │ │ ├── 无状态的应用 --> ( 难度等级: [0.4628, 0.4628) || 挂载数据: 无 ) +│ │ │ │ │ └── 有状态的应用 --> ( 难度等级: [0.4628, 0.4628) || 挂载数据: 无 ) +│ │ │ │ ├── 基本单元:Pod Volume --> ( 难度等级: [0.4628, 0.4628) || 挂载数据: 无 ) +│ │ │ │ ├── 核心设计:PVC与PV体系 --> ( 难度等级: [0.4628, 0.4628) || 挂载数据: 无 ) +│ │ │ │ ├── 与特定存储系统解耦 --> ( 难度等级: [0.4628, 0.4629) || 挂载数据: 无 ) +│ │ │ │ │ ├── Volume Plugin --> ( 难度等级: [0.4628, 0.4629) || 挂载数据: 无 ) +│ │ │ │ │ ├── in-tree(内置) Volume Plugin --> ( 难度等级: [0.4629, 0.4629) || 挂载数据: blog: 1 ) +│ │ │ │ │ └── out-of-tree(外置) Volume Plugin --> ( 难度等级: [0.4629, 0.4629) || 挂载数据: 无 ) +│ │ │ │ ├── Kubernetes CSI管控组件容器化部署 --> ( 难度等级: [0.4629, 0.4629) || 挂载数据: 无 ) +│ │ │ │ └── 基于Kubernetes的存储 --> ( 难度等级: [0.4629, 0.4629) || 挂载数据: 无 ) +│ │ │ ├── 流量路由Ingress --> ( 难度等级: [0.4629, 0.463) || 挂载数据: 无 ) +│ │ │ │ ├── 基本原理 --> ( 难度等级: [0.4629, 0.4629) || 挂载数据: 无 ) +│ │ │ │ │ ├── 基础用法 --> ( 难度等级: [0.4629, 0.4629) || 挂载数据: blog: 1 ) +│ │ │ │ │ ├── 配置安全路由 --> ( 难度等级: [0.4629, 0.4629) || 挂载数据: blog: 1 ) +│ │ │ │ │ ├── 全局配置和局部配置 --> ( 难度等级: [0.4629, 0.4629) || 挂载数据: 无 ) +│ │ │ │ │ └── 实现原理 --> ( 难度等级: [0.4629, 0.4629) || 挂载数据: 无 ) +│ │ │ │ ├── 场景化需求 --> ( 难度等级: [0.4629, 0.463) || 挂载数据: blog: 1 ) +│ │ │ │ │ ├── 多入口访问Ingress --> ( 难度等级: [0.4629, 0.4629) || 挂载数据: 无 ) +│ │ │ │ │ └── 部署多套Ingress Controller --> ( 难度等级: [0.4629, 0.463) || 挂载数据: 无 ) +│ │ │ │ ├── 获取客户端真实IP地址 --> ( 难度等级: [0.463, 0.463) || 挂载数据: 无 ) +│ │ │ │ │ ├── 理解客户端真实IP地址的传递过程 --> ( 难度等级: [0.463, 0.463) || 挂载数据: 无 ) +│ │ │ │ │ ├── ExternalTrafficPolicy的影响 --> ( 难度等级: [0.463, 0.463) || 挂载数据: 无 ) +│ │ │ │ │ └── 如何获取客户端真实IP地址 --> ( 难度等级: [0.463, 0.463) || 挂载数据: 无 ) +│ │ │ │ └── 白名单功能 --> ( 难度等级: [0.463, 0.463) || 挂载数据: 无 ) +│ │ │ └── 升级设计与实现 --> ( 难度等级: [0.463, 0.4631) || 挂载数据: 无 ) +│ │ │ ├── 升级预检 --> ( 难度等级: [0.463, 0.4631) || 挂载数据: 无 ) +│ │ │ │ ├── 核心组件检查项 --> ( 难度等级: [0.463, 0.463) || 挂载数据: 无 ) +│ │ │ │ └── 前置检查增项 --> ( 难度等级: [0.463, 0.4631) || 挂载数据: 无 ) +│ │ │ ├── 原地升级与替代升级 --> ( 难度等级: [0.4631, 0.4631) || 挂载数据: 无 ) +│ │ │ │ ├── 原地升级 --> ( 难度等级: [0.4631, 0.4631) || 挂载数据: 无 ) +│ │ │ │ └── 替代升级 --> ( 难度等级: [0.4631, 0.4631) || 挂载数据: 无 ) +│ │ │ └── 升级三部曲 --> ( 难度等级: [0.4631, 0.4631) || 挂载数据: 无 ) +│ │ │ ├── 升级Master节点 --> ( 难度等级: [0.4631, 0.4631) || 挂载数据: 无 ) +│ │ │ ├── 升级Worker节点 --> ( 难度等级: [0.4631, 0.4631) || 挂载数据: 无 ) +│ │ │ └── 核心组件升级 --> ( 难度等级: [0.4631, 0.4631) || 挂载数据: 无 ) +│ │ └── 实践篇(诊断之美) --> ( 难度等级: [0.4631, 0.4643) || 挂载数据: 无 ) +│ │ ├── 节点就绪状态异常(一) --> ( 难度等级: [0.4631, 0.4633) || 挂载数据: 无 ) +│ │ │ ├── Docker栈 --> ( 难度等级: [0.4631, 0.4632) || 挂载数据: 无 ) +│ │ │ │ ├── docker daemon调用栈分析 --> ( 难度等级: [0.4631, 0.4632) || 挂载数据: 无 ) +│ │ │ │ └── Containerd调用栈分析 --> ( 难度等级: [0.4632, 0.4632) || 挂载数据: 无 ) +│ │ │ ├── 什么是D-Bus --> ( 难度等级: [0.4632, 0.4633) || 挂载数据: 无 ) +│ │ │ │ ├── runC请求D-Bus --> ( 难度等级: [0.4632, 0.4632) || 挂载数据: blog: 1 ) +│ │ │ │ └── 原因并不在D-Bus --> ( 难度等级: [0.4632, 0.4633) || 挂载数据: 无 ) +│ │ │ └── Systemd是硬骨头 --> ( 难度等级: [0.4633, 0.4633) || 挂载数据: blog: 2 ) +│ │ │ ├── “没用”的core dump --> ( 难度等级: [0.4633, 0.4633) || 挂载数据: blog: 1 ) +│ │ │ ├── 零散的信息 --> ( 难度等级: [0.4633, 0.4633) || 挂载数据: 无 ) +│ │ │ ├── 代码分析 --> ( 难度等级: [0.4633, 0.4633) || 挂载数据: 无 ) +│ │ │ └── Live Debugging --> ( 难度等级: [0.4633, 0.4633) || 挂载数据: 无 ) +│ │ ├── 节点就绪状态异常(二) --> ( 难度等级: [0.4633, 0.4635) || 挂载数据: 无 ) +│ │ │ ├── 节点状态机 --> ( 难度等级: [0.4633, 0.4634) || 挂载数据: 无 ) +│ │ │ ├── 就绪三分钟 --> ( 难度等级: [0.4634, 0.4634) || 挂载数据: 无 ) +│ │ │ ├── 止步不前的PLEG --> ( 难度等级: [0.4634, 0.4634) || 挂载数据: 无 ) +│ │ │ ├── 无响应的Terwayd --> ( 难度等级: [0.4634, 0.4635) || 挂载数据: 无 ) +│ │ │ ├── 原因 --> ( 难度等级: [0.4635, 0.4635) || 挂载数据: 无 ) +│ │ │ └── 修复 --> ( 难度等级: [0.4635, 0.4635) || 挂载数据: 无 ) +│ │ ├── 命名空间回收机制失效 --> ( 难度等级: [0.4635, 0.4637) || 挂载数据: 无 ) +│ │ │ ├── 集群管控入口 --> ( 难度等级: [0.4635, 0.4636) || 挂载数据: 无 ) +│ │ │ ├── 命名空间控制器的行为 --> ( 难度等级: [0.4636, 0.4636) || 挂载数据: 无 ) +│ │ │ │ ├── 删除收纳盒里的资源 --> ( 难度等级: [0.4636, 0.4636) || 挂载数据: 无 ) +│ │ │ │ ├── API、Group、Version --> ( 难度等级: [0.4636, 0.4636) || 挂载数据: 无 ) +│ │ │ │ └── 控制器不能删除命名空间里的资源 --> ( 难度等级: [0.4636, 0.4636) || 挂载数据: 无 ) +│ │ │ ├── 回到集群管控入口 --> ( 难度等级: [0.4636, 0.4636) || 挂载数据: 无 ) +│ │ │ ├── 节点与Pod的通信 --> ( 难度等级: [0.4636, 0.4637) || 挂载数据: 无 ) +│ │ │ └── 集群节点访问云资源 --> ( 难度等级: [0.4637, 0.4637) || 挂载数据: 无 ) +│ │ ├── 网络安全组加固对与错 --> ( 难度等级: [0.4637, 0.4639) || 挂载数据: 无 ) +│ │ │ ├── 安全组扮演的角色 --> ( 难度等级: [0.4637, 0.4638) || 挂载数据: 无 ) +│ │ │ ├── 安全组与集群网络 --> ( 难度等级: [0.4638, 0.4638) || 挂载数据: 无 ) +│ │ │ └── 怎么管理安全组规则 --> ( 难度等级: [0.4638, 0.4639) || 挂载数据: 无 ) +│ │ │ ├── 限制集群访问外网 --> ( 难度等级: [0.4638, 0.4639) || 挂载数据: 无 ) +│ │ │ ├── IDC与集群互访 --> ( 难度等级: [0.4639, 0.4639) || 挂载数据: blog: 1 ) +│ │ │ └── 使用新的安全组管理节点 --> ( 难度等级: [0.4639, 0.4639) || 挂载数据: 无 ) +│ │ ├── 网格应用存活状态异常 --> ( 难度等级: [0.4639, 0.4641) || 挂载数据: 无 ) +│ │ │ ├── 代理与代理的生命周期管理 --> ( 难度等级: [0.4639, 0.4639) || 挂载数据: 无 ) +│ │ │ ├── 控制面和数据面 --> ( 难度等级: [0.4639, 0.464) || 挂载数据: 无 ) +│ │ │ ├── 简单的原因 --> ( 难度等级: [0.464, 0.464) || 挂载数据: 无 ) +│ │ │ └── 阿里云服务网格(ASM)介绍 --> ( 难度等级: [0.464, 0.4641) || 挂载数据: blog: 10 ) +│ │ └── 网格自签名根证书过期 --> ( 难度等级: [0.4641, 0.4643) || 挂载数据: 无 ) +│ │ ├── 连续重启的Citadel --> ( 难度等级: [0.4641, 0.4641) || 挂载数据: 无 ) +│ │ ├── 一般意义上的证书验证 --> ( 难度等级: [0.4641, 0.4642) || 挂载数据: 无 ) +│ │ ├── 自签名证书验证失败 --> ( 难度等级: [0.4642, 0.4642) || 挂载数据: 无 ) +│ │ ├── 大神定理 --> ( 难度等级: [0.4642, 0.4642) || 挂载数据: 无 ) +│ │ ├── Citadel证书体系 --> ( 难度等级: [0.4642, 0.4643) || 挂载数据: 无 ) +│ │ └── 经验 --> ( 难度等级: [0.4643, 0.4643) || 挂载数据: 无 ) +│ ├── DevOps --> ( 难度等级: [0.4643, 0.5) || 挂载数据: 无 ) +│ │ ├── 运维 --> ( 难度等级: [0.4643, 0.4732) || 挂载数据: 无 ) +│ │ │ └── 配置 --> ( 难度等级: [0.4643, 0.4732) || 挂载数据: 无 ) +│ │ │ ├── CUE(Cisco Unity Express) --> ( 难度等级: [0.4643, 0.4658) || 挂载数据: blog: 8 ) +│ │ │ ├── Jsonnet --> ( 难度等级: [0.4658, 0.4673) || 挂载数据: 无 ) +│ │ │ ├── HCL --> ( 难度等级: [0.4673, 0.4688) || 挂载数据: 无 ) +│ │ │ ├── BCL --> ( 难度等级: [0.4688, 0.4702) || 挂载数据: 无 ) +│ │ │ ├── KubeVela --> ( 难度等级: [0.4702, 0.4717) || 挂载数据: 无 ) +│ │ │ └── Terraform --> ( 难度等级: [0.4717, 0.4732) || 挂载数据: blog: 7 ) +│ │ ├── API --> ( 难度等级: [0.4732, 0.4821) || 挂载数据: 无 ) +│ │ │ ├── GraphQL --> ( 难度等级: [0.4732, 0.4762) || 挂载数据: 无 ) +│ │ │ ├── Swagger UI --> ( 难度等级: [0.4762, 0.4792) || 挂载数据: 无 ) +│ │ │ └── gRPC --> ( 难度等级: [0.4792, 0.4821) || 挂载数据: 无 ) +│ │ ├── 诊断 --> ( 难度等级: [0.4821, 0.4911) || 挂载数据: 无 ) +│ │ │ ├── OpenTracing标准 --> ( 难度等级: [0.4821, 0.4839) || 挂载数据: 无 ) +│ │ │ ├── SkyWalking --> ( 难度等级: [0.4839, 0.4857) || 挂载数据: 无 ) +│ │ │ ├── Zipkin --> ( 难度等级: [0.4857, 0.4875) || 挂载数据: 无 ) +│ │ │ ├── Jaeger --> ( 难度等级: [0.4875, 0.4893) || 挂载数据: 无 ) +│ │ │ └── Sonobuoy --> ( 难度等级: [0.4893, 0.4911) || 挂载数据: 无 ) +│ │ └── 质量 --> ( 难度等级: [0.4911, 0.5) || 挂载数据: 无 ) +│ │ ├── Litmus --> ( 难度等级: [0.4911, 0.4955) || 挂载数据: 无 ) +│ │ └── Sysbench --> ( 难度等级: [0.4955, 0.5) || 挂载数据: 无 ) +│ ├── 操作系统 --> ( 难度等级: [0.5, 0.5357) || 挂载数据: 无 ) +│ │ ├── CoreOS --> ( 难度等级: [0.5, 0.5119) || 挂载数据: blog: 1 ) +│ │ ├── Alibaba Linux --> ( 难度等级: [0.5119, 0.5238) || 挂载数据: 无 ) +│ │ └── Tencent Linux --> ( 难度等级: [0.5238, 0.5357) || 挂载数据: 无 ) +│ └── 其他 --> ( 难度等级: [0.5357, 0.5714) || 挂载数据: 无 ) +├── 云原生高阶-应用开发 --> ( 难度等级: [0.5714, 0.7143) || 挂载数据: 无 ) +│ ├── Serverless --> ( 难度等级: [0.5714, 0.619) || 挂载数据: 无 ) +│ │ └── BaaS Serverless --> ( 难度等级: [0.5714, 0.619) || 挂载数据: 无 ) +│ │ ├── Spring Cloud Connector --> ( 难度等级: [0.5714, 0.5952) || 挂载数据: 无 ) +│ │ └── Open Service Broker --> ( 难度等级: [0.5952, 0.619) || 挂载数据: 无 ) +│ ├── 编程语言 --> ( 难度等级: [0.619, 0.6667) || 挂载数据: 无 ) +│ │ └── Java --> ( 难度等级: [0.619, 0.6667) || 挂载数据: blog: 10 ) +│ │ ├── 减小镜像 --> ( 难度等级: [0.619, 0.6349) || 挂载数据: 无 ) +│ │ │ ├── Alpine Portola --> ( 难度等级: [0.619, 0.6243) || 挂载数据: 无 ) +│ │ │ ├── JDK (version >= 9) --> ( 难度等级: [0.6243, 0.6296) || 挂载数据: 无 ) +│ │ │ └── Spring Boot (version > 2.3) --> ( 难度等级: [0.6296, 0.6349) || 挂载数据: 无 ) +│ │ ├── 降低资源占用率 --> ( 难度等级: [0.6349, 0.6508) || 挂载数据: 无 ) +│ │ │ ├── Project Panama --> ( 难度等级: [0.6349, 0.6429) || 挂载数据: 无 ) +│ │ │ └── Project Valhalla --> ( 难度等级: [0.6429, 0.6508) || 挂载数据: 无 ) +│ │ └── 缩短冷启动时间 --> ( 难度等级: [0.6508, 0.6667) || 挂载数据: 无 ) +│ │ ├── GraalVM --> ( 难度等级: [0.6508, 0.6548) || 挂载数据: blog: 2 ) +│ │ ├── Quarkus --> ( 难度等级: [0.6548, 0.6587) || 挂载数据: blog: 1 ) +│ │ ├── Micronaut --> ( 难度等级: [0.6587, 0.6627) || 挂载数据: 无 ) +│ │ └── Helidon --> ( 难度等级: [0.6627, 0.6667) || 挂载数据: 无 ) +│ └── 其他 --> ( 难度等级: [0.6667, 0.7143) || 挂载数据: 无 ) +├── 云原生高阶-平台开发 --> ( 难度等级: [0.7143, 0.8571) || 挂载数据: 无 ) +│ ├── Kubernetes --> ( 难度等级: [0.7143, 0.75) || 挂载数据: 无 ) +│ │ ├── 接口 --> ( 难度等级: [0.7143, 0.7321) || 挂载数据: 无 ) +│ │ │ ├── CNI(Container Network Interface) --> ( 难度等级: [0.7143, 0.7202) || 挂载数据: 无 ) +│ │ │ │ ├── Flannel --> ( 难度等级: [0.7143, 0.715) || 挂载数据: 无 ) +│ │ │ │ ├── Calico --> ( 难度等级: [0.715, 0.7158) || 挂载数据: 无 ) +│ │ │ │ ├── Weave --> ( 难度等级: [0.7158, 0.7165) || 挂载数据: 无 ) +│ │ │ │ ├── OVN(Open Virtual Network) --> ( 难度等级: [0.7165, 0.7173) || 挂载数据: 无 ) +│ │ │ │ ├── SR-IOV(Single-root Input/Output Virtualization) --> ( 难度等级: [0.7173, 0.718) || 挂载数据: blog: 1 ) +│ │ │ │ ├── Romana --> ( 难度等级: [0.718, 0.7187) || 挂载数据: 无 ) +│ │ │ │ ├── OpenContrail --> ( 难度等级: [0.7187, 0.7195) || 挂载数据: 无 ) +│ │ │ │ └── Kuryr --> ( 难度等级: [0.7195, 0.7202) || 挂载数据: 无 ) +│ │ │ ├── CRI(Container Runtime Interface) --> ( 难度等级: [0.7202, 0.7262) || 挂载数据: 无 ) +│ │ │ │ └── Frakti --> ( 难度等级: [0.7202, 0.7262) || 挂载数据: 无 ) +│ │ │ └── CSI(Container Storage Interface) --> ( 难度等级: [0.7262, 0.7321) || 挂载数据: 无 ) +│ │ │ ├── FlexVolume --> ( 难度等级: [0.7262, 0.7292) || 挂载数据: 无 ) +│ │ │ └── GlusterFS --> ( 难度等级: [0.7292, 0.7321) || 挂载数据: 无 ) +│ │ └── PaaS --> ( 难度等级: [0.7321, 0.75) || 挂载数据: 无 ) +│ │ ├── Cloud Foundry --> ( 难度等级: [0.7321, 0.7366) || 挂载数据: blog: 6 ) +│ │ ├── Crossplane --> ( 难度等级: [0.7366, 0.7411) || 挂载数据: 无 ) +│ │ ├── Anthos --> ( 难度等级: [0.7411, 0.7455) || 挂载数据: 无 ) +│ │ └── KubeSphere --> ( 难度等级: [0.7455, 0.75) || 挂载数据: 无 ) +│ ├── DevOps --> ( 难度等级: [0.75, 0.7857) || 挂载数据: 无 ) +│ │ └── 运维 --> ( 难度等级: [0.75, 0.7857) || 挂载数据: 无 ) +│ │ └── 编程 --> ( 难度等级: [0.75, 0.7857) || 挂载数据: 无 ) +│ │ ├── Operator --> ( 难度等级: [0.75, 0.7589) || 挂载数据: 无 ) +│ │ ├── Pulumi --> ( 难度等级: [0.7589, 0.7679) || 挂载数据: 无 ) +│ │ ├── Ballerina --> ( 难度等级: [0.7679, 0.7768) || 挂载数据: 无 ) +│ │ └── cdk8s --> ( 难度等级: [0.7768, 0.7857) || 挂载数据: 无 ) +│ ├── 中间件 --> ( 难度等级: [0.7857, 0.8214) || 挂载数据: 无 ) +│ │ ├── 数据库 --> ( 难度等级: [0.7857, 0.8036) || 挂载数据: 无 ) +│ │ │ └── Database Mesh --> ( 难度等级: [0.7857, 0.8036) || 挂载数据: 无 ) +│ │ └── 大数据 --> ( 难度等级: [0.8036, 0.8214) || 挂载数据: 无 ) +│ │ ├── Kubeflow --> ( 难度等级: [0.8036, 0.8095) || 挂载数据: 无 ) +│ │ ├── Fluid --> ( 难度等级: [0.8095, 0.8155) || 挂载数据: 无 ) +│ │ └── KubeTEE --> ( 难度等级: [0.8155, 0.8214) || 挂载数据: 无 ) +│ └── 其他 --> ( 难度等级: [0.8214, 0.8571) || 挂载数据: 无 ) +└── 其他 --> ( 难度等级: [0.8571, 1.0) || 挂载数据: 无 ) + ├── 其他类别标签问题 --> ( 难度等级: [0.8571, 0.9048) || 挂载数据: 无 ) + ├── 应用类问题 --> ( 难度等级: [0.9048, 0.9524) || 挂载数据: 无 ) + └── 第三方包问题 --> ( 难度等级: [0.9524, 1.0) || 挂载数据: 无 ) -- GitLab