自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(91)
  • 收藏
  • 关注

原创 如何判断应该设计类、子类、抽象类或接口?

来源:《Head First Java》第二版:227 页。

2024-07-27 14:51:01 414

原创 指针基础 - golang版

Go 语言中,使用符号来定义指针类型;

2024-03-16 15:22:28 556 1

原创 GoLang - select

select 是 Go 中的一个控制结构,类似于 switch 语句;select 语句只能用于通道操作,每个 case 必须是一个通道操作,要么是发送要么是接收;select 语句会监听所有指定的通道上的操作:一旦其中一个通道准备好就会执行相应的代码块;如果多个通道都准备好,那么 select 语句会随机选择一个通道执行;如果所有通道都没有准备好,那么执行 default 块中的代码;

2023-12-25 19:47:41 1251 1

原创 十月听书笔记

十月听书笔记1、《宝贵的人生建议》2、《后工作时代》3、《我们何以不同》4、《恰到好处的帮助》5、《24个比利》6、《恰到好处的安慰》7、《为什么越无知的人越自信》8、《陌生人效应》9、《往里走,安顿自己》10、《为什么学生不喜欢上学》11、《自律力》12、《弹性》13、《说服的艺术》14、《每个人都了不起》15、《人生模式》16、《人的全景》17、《精进2》1、《宝贵的人生建议》2、《后工作时代》3、《我们何以不同》4、《恰到好处的帮助》5、《24个比利》6、《恰到好处的安慰》7

2023-10-31 08:42:47 219

原创 动手学深度学习 - 学习环境配置

下载完,打开安装包,按照默认提示,下一步下一步,到这里要牢记安装目录,之后配置环境变量会用到;windows 使用管理员方式打开 powershell;step1:进入运行环境。

2023-10-30 19:57:05 536

原创 VSCode 提示 1.16.15 版本的Go,不支持 gopls v.0.13.0

1、在 VSCode 的顶部菜单栏中,点击 “View” > “Command Palette”(或使用快捷键 Ctrl+Shift+P)打开命令面板。2、在命令面板中,输入 “Go: Install/Update Tools” 并选择它。这将打开一个列表,其中列出了可以安装或更新的 Go 工具。3、在列表中,找到并选择 “gopls”。在弹出的对话框中,选择 “Install/Update” 并等待安装完成。4、安装完成后,需要配置 gopls 以使用 Go 1.16.15。

2023-07-08 11:03:09 2352

原创 Docker -- 容器技术概述

docker基础概述:从什么是容器、为什么需要容器和容器如何工作开展,学习了解容器的基础知识

2022-06-08 08:27:13 340 1

原创 敏捷整洁之道 -- 第五章 技术实践

敏捷整洁之道 -- 第五章 技术实践1. 测试驱动开发2. 重构3. 简单设计4. 结对编程全文学习于 《敏捷整洁之道》作者:[美] 罗伯特·C.马丁译者:申健 何强 罗涛1. 测试驱动开发测试驱动开发类似于复式记账:复式记账:每笔交易会写入账本两次在一组账户中记一笔贷项,然后相应的在另一组账户中记为借项,这些账户最终汇总到收支平衡表文件中,如果差额不为 0,那么就出错了;测试驱动开发需要每个必要的行为都输入两次:一次作为测试,另一次作为使测试通过的生产代码;当测试代码

2021-12-04 18:18:11 427

原创 敏捷整洁之道 -- 第四章 团队实践

敏捷整洁之道 -- 第四章 团队实践1. 隐喻2. 可持续节奏3. 代码集体所有4. 持续集成5. 持续构建6. 站会全文学习于 《敏捷整洁之道》作者:[美] 罗伯特·C.马丁译者:申健 何强 罗涛1. 隐喻隐喻:为了有效地进行沟通,团队需要一个受限制的、有纪律的词汇表,其中包含项目中的术语及概念;领域驱动设计:数据字典:呈现了被应用程序处理的数据以及处理这些数据的过程;2. 可持续节奏快跑的未必能赢;唯有忍耐到底的,必然得救;3. 代码集体所有敏捷项目中没有人独

2021-12-04 18:16:30 232

原创 敏捷整洁之道 -- 第三章 业务实践

敏捷整洁之道 -- 第三章 业务实践0. 引子1. 计划游戏1.1 三元分析1.2 故事和点数1.3 故事1.4 故事估算1.5 对迭代进行管理1.6 速率2. 小步发布3. 验收测试3.1 行为驱动开发3.2 验收测试的实践4. 完整团队全文学习于 《敏捷整洁之道》作者:[美] 罗伯特·C.马丁译者:申健 何强 罗涛0. 引子为了成功,软件的开发必须遵循许多面向业务的实践;计划游戏;小步发布;验收测试;完整团队;业务实践简图:1. 计划游戏如何正确估算一个项目

2021-12-03 20:07:17 636

原创 敏捷整洁之道 -- 第一章 介绍敏捷

敏捷整洁之道 -- 第一章 介绍敏捷1. 敏捷的历史2. 敏捷中心思想3. 敏捷全貌3.1 铁十字3.2 墙上的图3.3 需要知道的第一件事3.4 分析、设计、实施阶段3.5 敏捷项目3.6 迭代 03.7 敏捷并不是一系列的小瀑布3.8 迭代 13.9 敏捷的实质3.10 管理铁十字3.11 业务价值排序4. 生命置换4.1 外圈 -- 面向业务的实践4.2 中级圈 -- 面向团队的实践4.3 内圈 -- 面向程序员全文学习于 《敏捷整洁之道》作者:[美] 罗伯特·C.马丁译者:申健 何强 罗涛

2021-12-02 16:29:37 760

原创 PostgreSQL -- 高级操作基础使用

PostgreSQL 进阶知识1. 约束1.1 NOT NULL 约束1.2 UNIQUE 约束1.3 PRIMARY KEY 约束1.4 FOREIGN KEY 约束1.5 CHECK 约束1.6 EXCLUSION 约束1.7 删除约束2. 连接(JOIN)2.1 创建表2.2 交叉连接(CROSS JOIN)2.3 内连接(INNER JOIN)2.4 左外连接( LEFT OUTER JOIN )2.5 右外连接( RIGHT OUTER JOIN )2.6 外连接(FULL OUTER JOIN)

2021-10-08 16:55:30 1501

原创 PostgreSQL - 数据库与表格操作

PostgreSQL 数据库与表格操作1. 创建数据库1.1 CREATE DATABASE 创建数据库1.2 createdb 命令创建数据库2. 选择数据库3. 删除数据库3.1 DROP DATABASE 删除数据库3.2 dropdb 命令删除数据库4. 创建表格5. 删除表格6. 模式(SCHEMA)6.1 语法6.2 实例6.3 删除模式7. INSERT INTO 语句8. SELECT9. 运算符9.1 算术运算符9.2 比较运算符9.3 逻辑运算符9.4 位运算符10. 表达式10.1 语

2021-10-08 09:40:16 886

原创 PostgreSQL -- 数据类型

PostgreSQL 数据类型1. 创建语法回顾2. 数值类型3. 货币类型4. 字符类型5. 日期/时间类型6. 布尔类型7. 枚举类型8. 几何类型9. 网络地址类型10. 位串类型11. 文本搜索类型12. UUID 类型13. XML 类型13.1 创建 XML 值14. JSON 类型15. 数组类型15.1 声明数组15.2 插入值15.3 访问数组15.4 修改数组15.5 数组中检索16. 复合类型16.1 声明复合类型16.2 访问复合类型17. 范围类型18. 对象标识符类型19. 伪

2021-09-29 17:18:48 2998

原创 PostgreSQL -- 108 个常用命令

来自 菜鸟教程1. SQL 语句一个 SQL 语句通常包含了关键字、标识符(字段)、常量和特殊符号等;SELECT id, name FROM runoob其中:SELECT:关键字(命令);id, name:标识符/字段(id 和 name 字段);FROM:关键字(语句,用于设置条件规则等);runoob:标识符(表名);2. PostgreSQL 命令2.1 ABORT 命令ABORT 用于退出当前事务;ABORT [WORK | TRANSACTION.

2021-09-29 14:01:01 405

原创 Kafka - 02 - Python 简单实现生产者和消费者

简单的生产者和消费者代码实现1. Kafka 的 5 个核心 API:2. Producer Demo3. Consumer Demo之前我们学习的时候,说是有四个核心的 API,现在是 5 个,可以一起探究探究。本文简单的实现了生产者和消费者的 Python 代码,对初学者了解以下这两个接口有所帮助,更多详细的信息:kafka中文教程:是基于 Java 的,但是部分知识点可以共享。kafka-python:基于 Python 的,但是是英文的,英文不好的阅读起来不太方便,google 直接翻译

2021-09-18 15:01:24 409

原创 Kafka - 01 - 入门及安装

文章目录1. 初识 kafka2. kafka 名词解释3. 入门介绍3.1 主要功能3.2 kafka 使用场景3.3 一些常识3.4 kafka 的 4 个核心 API:3.5 kafka 基本术语3.6 Toic 和 Log3.7 分布式(Distribution)3.8 Geo-Replication(异地数据同步技术)3.9 生产者(producers)3.10 消费者(Consumers)3.11 Kafka 的保证(Guarantees)3.12 Kafka 的流处理4. Kafka 的使用场

2021-09-18 10:58:16 173

原创 Docker 安装以及基础命令

文章目录1. Docker 安装2. Docker-machine 安装3. Docker 命令3.1 容器生命周期管理3.1.1 Docker run 命令3.1.2 Docker start/stop/restart 命令3.1.3 Docker kill 命令3.1.4 Docker rm 命令3.1.5 Docker pause/unpause 命令3.1.6 Docker create 命令3.1.7 Docker exec 命令3.2 容器操作3.2.1 Docker ps 命令3.2.2 Do

2021-09-17 08:33:30 146

原创 Docker 和 K8s 初识

文章目录1. Docker2. k8sLXC:Linux 容器虚拟技术(Linux container)在容器技术之前,业界的网红是虚拟机。虚拟机,就是在你的操作系统里面,装一个软件,然后通过这个软件,再模拟一台甚至多台“子电脑”出来。“子电脑”和“子电脑”之间,是相互隔离的,互不影响。虚拟机属于虚拟化技术。Docker 这样的容器技术,也是虚拟化技术,属于轻量级的虚拟化。虚拟机虽然可以隔离出很多“子电脑”,但占用空间更大,启动更慢。容器技术恰好没有这些缺点。它不需要虚拟出整个操

2021-09-17 08:30:39 585 1

原创 基于 HTTP 接口的自动化测试用例 - 01 接口知识

基于 HTTP 接口的自动化测试1. 接口测试扫盲1.1 接口的本质1.2 接口的类别1.3 接口测试1.4 接口交互示意图1.5 接口测试的关注点1.6 接口测试的介入时机1.7 接口测试的根本目标2. 开展接口测试的基本流程3. 接口测试用例设计3.1 三类对象抽象模型3.2 接口测试三层模型3.3 接口输入用例设计3.4 接口逻辑用例设计3.5 接口输出用例设计3.6 其他部分用例设计3.7 一个完整的栗子4. 环境依赖安装本文内容学习于《自动化测试实战宝典》 - 周金剑接口测试作为测试金字

2021-09-13 18:45:12 618

原创 Beautifulsoup 库 -- 05 -- 输出

文章目录1. 输出1.1 格式化输出1.2 压缩输出1.3 输出格式1.4 get_text()1. 输出1.1 格式化输出prettify() 方法将 Beautiful Soup 的文档树格式化后以 Unicode 编码输出;每个 XML/HTML 标签都独占一行;markup = '<a href="http://example.com/">I linked to <i>example.com</i></a>'soup = Beautif

2021-09-10 11:18:50 279

原创 Beautifulsoup 库 -- 04 -- 修改文档树

文章目录1. 修改文档树1.1 修改 tag 的名称和属性1.2 修改 string1.3 append()1.4 NavigableString() 和 .new_tag()1.5 insert()1.6 insert_before() 和 insert_after()1.7 clear()1.8 extract()1.9 decompose()1.10 replace_with()1.11 wrap()1.12 unwrap()1. 修改文档树Beautiful Soup 的强项是文档树的搜索,但

2021-09-10 11:17:08 443

原创 Beautifulsoup 库 -- 03 -- 搜索文档树

文章目录1. 搜索文档树1.1 过滤器1.1.1 string1.1.2 list1.1.3 regular expression1.1.4 True1.1.5 function1.2 find_all()1.2.1 name 参数1.2.2 keyword 参数1.2.3 string 参数1.2.4 limit 参数1.2.5 recursive 参数1.3 像调用 find_all() 一样调用 tag1.4 find()1.5 find_parents() 和 find_parent()1.6 fi

2021-09-10 11:15:28 213

原创 Beautifulsoup 库 -- 02 -- 遍历文档树

文章目录1. 遍历文档树1.1 子节点1.1.1 tag 的名字1.1.2 contents 和 children 属性1.1.3 descendants1.1.4 string1.1.5 strings 和 stripped_strings1.2 父节点1.2.1 parent1.2.2 parents1.3 兄弟节点1.3.1 next_sibling 和 previous_sibling1.3.2 next_siblings 和 previous_siblings1.4 回退和前进1.4.1 next

2021-09-09 14:46:45 545

原创 Beautifulsoup 库 -- 01 -- 安装及使用

文章目录1. 安装2. 快速使用3. 对象的种类3.1 Tag3.1.1 Name 属性3.1.2 Attributes3.1.3 多值属性3.2 可以遍历的字符串 NavigableString3.3 BeautifulSoup3.4 注释及特殊字符串 CommentBeautiful Soup 是一个可以从 HTML 或 XML 文件中提取数据的 Python 库.1. 安装安装 Beautiful Souppip 安装:pip install beautifulsoup4安装解析

2021-09-09 14:43:19 8280

原创 CLeanCode -- 第三章 -- 函数

文章目录part03 - 函数1. 短小2. 只做一件事3. 使用具有描述性的名称4. 函数参数4.1 标识参数4.2 参数对象5. 分隔指令与询问6. 使用异常替代返回错误码6.1 抽离 try/catch 代码块7. 别重复8. 如何写出这样的函数part03 - 函数函数是所有程序中的第一组代码;1. 短小函数的第一条规则就是短小;代码块和缩进:if 语句、else 语句、while语句,其中的代码块应该只占一行;该行应该是一个函数调用的语句;所以,函数的缩进层级不应该多于一

2021-09-07 19:55:39 210 1

原创 CLeanCode -- 第二章 -- 有意义的命名

这里写自定义目录标题part02 - 有意义的命名规则 - 01:名副其实规则 - 02:避免误导规则 - 03:做有意义的区分规则 - 04:使用读得出来的名字规则 - 05:使用可搜索的名称规则 - 06:类名规则 - 07:方法名part02 - 有意义的命名规则 - 01:名副其实变量、函数或类的命名,最好已经告诉你所有的大问题:它为什么存在;做什么事情;应该怎么用;反例:名称 d 什么也没有说明;int d; // elpased time in days

2021-09-07 16:42:37 137

原创 Git 入门

Git 入门1. 版本控制系统1.1 什么是版本控制1.2 版本控制器分类1.2.1 本地版本控制1.2.2 集中版本控制1.2.3 分布式版本控制2. Git 介绍2.1 Git 是什么2.2 为什么使用 Git2.3 安装2.4 配置2.5 用户信息2.6 版本库2.7 哈希值2.8 文件状态2.9 工作区域2.10 Git 命令1. 创建仓库2. 添加修改3. 储藏4. 撤销修改5. 更新与推送6. 查看信息7. 分支8. 标签9. 合并与重置2.11 clone 方式1. 生成 SSH 公钥2. G

2021-08-14 11:35:35 201

原创 Python 基础 -- 测试代码

Python 基础 -- 测试代码1. 测试函数1.1 单元测试和测试用例1.2 可通过的测试1.3 不能通过的测试1.4 测试未通过时怎么办1.5 添加新测试1.6 练习1. 城市和国家2. 人口数量2. 测试类2.1 断言方法2.2 一个要测试的类2.3 测试 AnonymousSurvey 类2.4 setUp() 方法2.5 练习 -- 雇员编写函数或者类时,还可以为其编写测试;通过测试,可以确定代码面对各种输入都能够按照要求的那样工作;在程序新添加新代码时,可以对其进行测试,确

2021-03-30 15:02:27 197

原创 Python 基础 -- 文件和异常

Python 基础 -- 文件和异常1. 从文件中读取数据1.1 读取整个文件1.2 文件路径1.3 逐行读取1.4 创建一个包含文件各行内容的列表1.5 使用文件的内容1.6 包含 100 万的大型文件1.7 圆周率是否包含生日1.8 练习1. Python 学习笔记2. C 语言学习笔记2. 写入文件2.1 写入空文件2.2 写入多行2.3 附加到文件2.4 练习1. 访客2. 访客名单3. 关于编程的调查3. 异常3.1 处理 ZeroDivisionError 异常3.2 使用 try-excep

2021-03-29 19:55:29 245

原创 Python 基础 -- 类

Python 基础 -- 类1. 创建类和使用1.1 方法 `__init__()`1.2 自定义的方法1.3 在 Python 2.7 中创建类1.4 根据类创建实例1. 访问属性2. 调用方法3. 创建多个实例1.5 练习2. 使用类和实例2.1 给属性指定默认值2.2 修改属性的值1. 直接修改属性的值2. 通过方法修改属性的值3. 通过方法堆属性的值进行递增2.3 练习3. 继承3.1 子类的方法 `__init__()`3.2 Python 2 中的继承3.3 给子类定义属性和方法3.4 重写父类

2021-03-28 14:40:02 474

原创 Python 基础 -- 函数

Python 基础 -- 函数1. 定义函数1.1 函数定义规则及语法1.2 向函数传递信息1.3 形参和实参1.4 练习2. 传递实参2.1 位置实参2.2 关键字实参2.3 默认值2.4 练习3. 返回值3.1 返回简单值3.2 将实参变成可选项3.3 返回字典3.4 结合使用函数和 while 循环3.5 练习4. 传递列表4.1 在函数中修改列表4.2 禁止函数修改列表4.3 练习5. 传递任意数量的实参5.1 使用任意数量的位置实参5.2 结合使用位置实参和任意数量实参5.3 使用任意数量的关键字

2021-03-25 20:23:11 173

原创 Python 基础 -- 用户输入和 While 循环

Python 基础 -- 用户输入和 While 循环1. 函数 input() 的工作原理1.1 int() 函数1.2 求模运算符 %1.3 Python 2 中的输入2. while 循环2.1 使用 while 循环2.2 使用标志2.3 使用 break 退出循环2.4 使用 continue 返回循环开始3. 使用 while 循环来处理列表和字典3.1 在列表中移动元素3.2 删除包含特定值的列表元素3.3 使用用户输入来填充字典之前所有的程序都没有用户自己输入的部分,但是在录入信息时,需

2021-03-22 12:37:59 161

原创 Python 基础 -- 字典

Python 基础 -- 字典1. 一个简单的字典2. 使用字典2.1 访问字典中的值2.2 添加键-值对2.3 修改字典中的值2.4 删除键-值对2.5 由相似的对现象组成的字典3. 遍历字典3.1 遍历所有的键-值对3.2 遍历所有的键3.3 遍历所有的值4. 嵌套4.1 列表中存储字典4.2 在字典中存储列表4.3 在字典中存储字典Python 中将相关信息关联起来的称为字典;如果你学过 Java,那就可以当作 map 集合;如果没有任何语言基础,可以将字典理解为一种对应关系;例如,姓名

2021-03-20 22:16:05 171

原创 Python 基础 -- if 语句

Python 基础 -- if 语句1. 一个简单的示例2. 条件测试2.1 检查相等2.2 检查不相等2.3 比较数字2.4 检查多个条件1. 多个条件同时成立 -- and2. 多个条件有至少有一个成立 -- or3. 特定值是否包含在列表中 -- in4. 特定值不包含在列表中 -- not in3. if 语句3.1 简单的 if 语句3.2 if-else 语句3.3 if-elif-else 语句3.4 省略 else 语句3.5 测试多个条件编程时经常需要检查一系列条件,并据此决定采取什么

2021-03-19 20:56:38 635

原创 Python 基础 -- 列表

Python 基础 -- 列表1. 列表定义1.1 访问列表的元素1.2 索引1.3 使用列表中的各个值2. 修改、添加和删除元素2.1 修改列表元素2.2 在列表中添加元素1. 在列表末尾添加元素2. 在列表总插入元素2.3 从列表中删除元素1. 使用 del 语句删除元素2. 使用函数 pop() 删除元素3. 弹出列表中任何位置的元素4. pop() 和 del 的选择5. 根据值删除元素3. 组织列表3.1 使用 sort() 方法对列表进行永久排序3.2 使用 sorted() 方法对列表进

2021-03-19 10:36:43 151

原创 Python 基础 -- 变量和简单的数据类型

Python 基础 -- 变量和简单的数据类型1. 运行 hello_world.py 时发生的情况2. 变量2.1 变量的命名和使用2.2 Python 内置函数和关键字3 字符串3.1 使用方法修改字符串大小写3.2 拼接字符串3.3 使用制表符或换行符来添加空白3.4 删除空白3.5 Python 2 中的 print 语句4. 数字4.1 整数4.2 浮点数4.3 使用函数 str() 避免类型错误4.4 Python 2 中的整数5. 注释6. Python 之禅1. 运行 hello_worl

2021-03-18 11:17:51 320 4

原创 Python基础 -- Linux 系统下 Python 的起步

文章目录1. Python 简介2. Python 特点3. Linux 系统中安装 Python3.1 确定已经安装的版本3.2 Python 2 和 Python 34. 安装文本编辑器5. Hello World 程序5.1 使用文本编辑器运行程序5.2 使用终端运行程序1. Python 简介Python 是一种解释型、面向对象、动态数据类型的高级程序设计语言;解释型语言:意味着开发过程中没有编译这个环节,类似于 PHP 和 Perl 语言;交互式语言:意味着可以在一个 Python 提

2021-03-17 22:25:20 132

原创 Linux 学习笔记3 -- 常用 Linux 命令的基本使用

文章目录1. 学习 Linux 终端命令的原因2. 常用 Linux 命令的基本使用3. 终端实用技巧3.1 自动补全3.2 曾经使用过的命令4. Linux 终端命令格式5. 查阅命令帮助信息5.1 --help5.2 man6. 文件和目录常用命令6.1 查看目录内容6.2 切换目录6.3 创建和删除操作6.4 拷贝和移动文件6.5 查看文件内容6.6 其他7. 远程管理命令7.1 关机 / 重启7.2 查看或配置网卡信息7.3 远程登陆和复制文件8. 用户权限相关命令8.1 用户和权限的基本概念8.1

2021-02-03 19:31:47 242

原创 Linux 学习笔记2 -- 文件和目录

文章目录1. 单用户操作系统和多用户操作系统2. Windows 和 Linux 文件系统区别2.1 Windows 下的文件系统2.2 Linux 下的文件系统2.3 Linux 主要目录速查表1. 单用户操作系统和多用户操作系统单用户操作系统:指一台计算机在同一时间只能由一个用户使用,一个用户独自享有系统的全部硬件和软件资源。Windows XP 之前得版本都是单用户操作系统。多用户操作系统:指一台计算机在同一时间可以由多个用户使用,多个用户共同享用系统的全部硬件和软件资源。Unix

2021-01-30 20:46:23 104

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除