- 博客(250)
- 收藏
- 关注
原创 【C++11】空值指针 nullptr 详解
本文详细介绍了 C++11中引入的空值指针,即nullptr;包括其定义、适用场景、使用示例、与NULL的区别以及注意事项等内容。
2025-07-21 16:08:46
607
原创 【C++】深入理解C++迭代器:概念、分类与自定义实现
本文详细介绍了C++中的迭代器,包括其基本概念、作用、分类、本质;以及如何为自定义的容器编写迭代器。
2025-07-21 15:58:22
852
原创 【C++11】哈希表与无序容器:从概念到应用
本文总体介绍了哈希表的 概念与具体内容;以及C++11的无序式哈希容器:包括unordered_set、unordered_map、unordered_multiset、unordered_multimap的概念与具体代码实现。
2025-07-21 14:32:26
837
原创 【软件测试】从软件测试到Bug评审:生命周期与管理技巧
本文详细介绍了软件测试中Bug的定义、管理、级别、生命周期;软件测试的生命周期各阶段的具体职责与工作;当测试人员与开发人员意见不一致时的做法等。
2025-07-20 18:10:04
718
原创 【软件测试】软件开发模型与需求分析
本文详细介绍了软件工程中的软件开发模型:瀑布模型、螺旋模型、增量模型、迭代模型、敏捷模型、测试模型,以及项目开发过程中的具体需求:用户需求、软件需求等具体概念。
2025-07-18 14:01:57
1062
原创 【软件测试】软件测试分类与方法解析:目标到工具
本文详细介绍了软件测试中的不同的测试分类,包括按照不同的维度进行分类,按照测试目标、执行方式、测试方法、执行阶段进行分类;如静态测试、动态测试、白盒黑盒灰盒测试、单元测试、集成测试、系统测试等。
2025-07-17 23:55:51
780
原创 【Python】多线程详解:从基础概念到实战应用
本文详细介绍了Python的多线程。包括:多线程的概念、Python的线程模块与使用方法、线程同步(锁、可重入锁、条件变量、信号量、事件);GIL以及线程池等概念。以及实战案例代码编写。
2025-07-12 19:12:30
667
原创 【Python】Python / PyCharm 虚拟环境详搭建与使用详解
本文主要介绍了Python中虚拟环境的概念,包括什么是虚拟环境,它的作用;以及虚拟环境的搭建(多方法搭建),以及如何使用虚拟环境,在pycharm中使用。与常见问题的解决,
2025-07-02 23:53:57
1178
1
原创 【RabbitMQ】多系统下的安装配置与编码使用(python)
本文介绍了RabbitMQ在多环境下的安装(Linux、MacOS、Windows),以及其核心概念与场景应用场景,最后由Python为示例编写相关的通信代码。
2025-06-26 20:58:17
886
1
原创 【Python】数据处理工具:Pandas详细指南
本文详细介绍了Python的数据处理工具Pandas。首先,介绍了Pandas的基本概念及安装方法。之后探讨了Pandas的核心数据结构,包括Series和DataFrame,并通过数据读取与写入、数据探索与清洗等操作,展示了如何高效处理数据。文章还详细讲解了数据操作技巧,如排序、分组、数据合并以及应用函数。
2025-06-22 22:54:52
1251
原创 【Redis】主从复制:配置、管理与优化
本文介绍了Redis中主从复制的概念、包括如何相关操作与概念:建立复制、配置从节点示例、验证复制状态以及复制流程的说明;以及如何断开复制关系、切换主节点、安全配置、可读模式配置、网络传输优化。
2025-06-21 16:10:33
674
原创 【C++第三方包安装】Windows与Linux安装配置redis-plus-plus指南
本文主要介绍了C++在windows和Linux系统下安装第三方库(redis-plus-plus)、包含使用工具进行一键安装、以及手动进行编译安装;包括卸载的方法与常见的问题。
2025-06-19 00:06:19
817
原创 【Redis】持久化机制:RDB / AOF 的应用与场景
本文详细介绍了Redis的数据持久化,包括AOF、RDB两种方式;涉及基本概念、触发方式、流程说明、文件处理、命令写入、文件同步/恢复、以及优缺点与适用场景;最后介绍了不使用AOF/RDB的应用场景与实现方案。
2025-06-18 20:27:55
1028
原创 【Kubernetes】架构与原理:核心概念、组件协同及容器化部署解析
本文介绍了kubernetes的架构与原理,首先是为什么需要k8s:从传统部署方法到虚拟化部署再到容器化部署,并着重介绍了容器化部署的基本概念、必要性、优势;之后介绍k8s的基本概念,包括其核心架构、核心概念与相关问题。
2025-06-11 22:22:23
1990
1
原创 【Redis/1-前置知识】分布式系统概论:架构、数据库与微服务
本文系统介绍分布式系统的核心概念及演进过程,从单机架构出发,逐步解析分布式系统的关键技术,包括数据库分离、负载均衡与缓存、分库分表及微服务架构,阐明其设计思想与应用场景。同时,深入探讨分布式系统的基本概念,如应用与系统的区别、模块与组件的划分、分布式与集群的异同,以及主从架构和中间件的作用,帮助读者构建完整的分布式知识体系。通过对比分析,揭示分布式系统在高并发、高可用及可扩展性方面的优势,为后续学习分布式技术奠定理论基础。
2025-06-10 21:31:43
888
原创 【Redis】核心特性、应用场景与安装配置
本文全面介绍了Redis的核心概念、特性、应用场景及实践操作,分为四个主要部分:初识Redis、安装与基础操作、重要文件与作用、命令行客户端使用
2025-06-08 18:19:13
793
原创 【C语言】深入理解C语言中的自定义数据类型:struct、union与enum
本文介绍了C语言的自定义数据类型:struct、union、enum类型,包括其存储方式、内存大小、使用场景、成员类型等。
2025-05-28 22:26:01
870
原创 【C++】深入理解C++中的函数与运算符重载
本文介绍了C++中的虫子啊,包括函数重载与运算符重载,以及具体的注意事项、比如重载的二义性,默认参数和重载、运算符重载的成员函数与非成员函数、重载与基础以及一些细节问题。
2025-05-24 19:38:44
788
原创 【C/C++】深入理解整型截断与提升:原理、应用与区别
整型截断是当较大类型转换为较小类型时,数据的高位部分被丢弃。它可能会导致数据丢失或溢出,开发者需要小心使用。整型提升是在算术运算中,较小的整数类型会被提升为int类型或更大的类型,避免了精度丧失或溢出,保证了计算结果的正确性。理解这些概念,尤其是在进行类型转换和数值计算时,可以帮助开发者更好地处理数据类型,避免错误和不必要的性能问题。
2025-04-14 19:08:11
1060
原创 【Docker基础】Compose 使用手册:场景、文件与命令详解
是 Docker 官方的开源项目,使用 Python 编写,调用 Docker 服务的 API 来管理和编排容器。官方定义为:定义和运行多个 Docker 容器的应用。服务(Service):一个应用的容器,通常包括多个运行相同镜像的容器实例。项目(Project):由一组相关的应用容器组成的完整业务单元,在文件中定义。整个文件定义了一个项目。Compose 的默认管理对象是项目,通过子命令对项目中的一组容器进行简化的生命周期管理。通过 compose 可以方便的管理多个服务。
2025-04-13 17:59:16
1650
1
原创 【Docker基础】深入解析 Docker 存储卷:管理、绑定与实战应用
存储卷是指将宿主机的本地文件系统中的某个目录与容器内部文件系统中的目录建立绑定关系。具体来说,当我们在容器中的某个目录下写入数据时,容器会将数据直接写入宿主机上与该容器绑定的目录。宿主机上与容器形成绑定关系的目录被称为存储卷。存储卷的本质是文件或目录,它绕过默认的联合文件系统,直接以文件或目录的形式存在于宿主机上。例如,宿主机的/data/web目录与容器的目录形成绑定关系。当容器中的进程向该目录写入数据时,数据会直接写入宿主机的/data/web目录。
2025-04-12 19:26:23
1026
1
原创 【Docker基础】容器技术详解:生命周期、命令与实战案例
首先,我们了解了镜像,容器可以被视为镜像的实际运行实例。镜像本身是一个静态且只读的文件,而容器则在此基础上附加了一个可写的文件层,这使得容器能够运行需要的进程。简单来说,容器是运行着实际应用进程的实体。创建、运行、停止、暂停和删除。容器本质上是主机上一个运行的进程,但它通过独立的命名空间隔离和资源限制与主机进程区分开来。在容器内部,无法直接访问主机上的进程、环境变量或网络等信息,这也是容器与直接在主机上运行的进程之间的关键区别。容器是基于镜像创建的可执行实例,且可以独立存在。
2025-04-10 22:23:18
991
1
原创 【Docker基础】全面解析 Docker 镜像:构建、使用与管理
Docker 镜像通常与容器、Dockerfile、Docker Hub、Docker Compose、网络、卷、CI/CD 工具和容器编排工具(如 Kubernetes 或 Docker Swarm)一同使用。它们共同构成了容器化应用的基础设施,帮助开发、测试、部署和管理容器化应用。
2025-04-09 20:22:42
1561
1
原创 【C/C++】编译与链接过程详解
如果程序中引用了一个未定义的符号(如函数或变量),链接器会报出“未定义符号”的错误。例如,调用了某个函数,但该函数的实现没有包含在目标文件或库文件中。检查是否忘记包含某个源文件或库文件。确保函数或变量已经正确定义。
2025-04-05 22:03:46
982
原创 【Python学习】列表/元组等容器的常用内置函数详解
本文主要探讨了 Python 中常用的内置函数,即它们在容器类型(如列表、元组)中的应用。下面将逐一介绍如 `map`、`filter`、`sorted`、`any`、`all`、`zip`、`enumerate`、`reverse`、`sum`、`max` 和 `min` 等函数,并通过示例分析它们的使用方法与实际效果。
2025-04-05 16:57:59
855
原创 【Go语言快速上手】第一部分:数据类型(数组、切片、映射)与控制语句
切片是基于数组的一个引用类型,它没有固定的长度,可以动态增长。切片包含三个要素:指向底层数组的指针、切片的长度、切片的容量。映射是由键值对组成的集合,Go 中的映射是引用类型。每个键都对应一个值,且每个键在映射中是唯一的。如果使用一个已经存在的键进行赋值,旧的值将被替换。结构体通过type关键字定义,通常每个字段都有一个名称和类型。Field2 type2 // 可以继续添加其他字段 }Age intp.Greet() // 输出: Hello, my name is John在上述例子中,Greet。
2025-03-02 18:14:19
1222
原创 【Go语言快速上手】第一部分:函数与错误处理
在Go语言中,通过funcfunc:关键字,用于定义函数add:函数名:参数列表,参数类型在参数名之后int:返回值类型。:函数体,返回两个整数的和。这行代码定义了一个方法,该方法与Rectangle类型关联。是方法的接收者,表示area方法是为Rectangle类型定义的。这里的r是一个Rectangle类型的值,它代表一个矩形对象。area()是方法的名称,表示该方法会计算矩形的面积。float64是方法的返回值类型,表示计算出的面积是一个float64类型的值。
2025-02-28 21:03:06
886
原创 【Docker基础】理解 Registry 镜像仓库:分类、工作机制、命令与实操
Docker Registry(镜像仓库)是一个负责存储、管理和分发 Docker 镜像的系统。它的作用类似于代码的版本控制系统,只不过它管理的是 Docker 镜像而非代码文件。Docker Registry 提供了镜像的存储、检索、版本管理等功能,并且具备用户认证和索引功能。功能该命令用于登录到 Docker 镜像仓库(如 Docker Hub 或私有镜像仓库)。登录后,可以进行镜像的推送和拉取等操作。语法关键参数:指定用户名。:指定密码(不推荐在命令行中直接使用密码)。
2025-02-26 22:17:22
1245
1
原创 【Docker基础】理解 Docker:本质、性质、架构与核心组件
LXC:早期的容器技术,现已被 Docker 替代。:Docker 自主开发的容器实现,后与runc合并。Moby:Docker 开源项目,包含 Docker 引擎的核心。docker-ce:Docker 开源社区版。docker-ee:Docker 企业收费版,提供额外的企业级功能。
2025-02-25 23:01:58
1626
1
原创 【Shell编程 / 9】脚本实战项目:从基础到进阶的自动化管理方案
通过参与一些实际的项目,我们可以更加熟练地运用 Shell 脚本来自动化任务,提升工作效率。通过 Shell 脚本,可以实现文件从本地到远程服务器,或者从一个服务器到另一个服务器的自动传输。是最常用的定时任务管理工具。通过 Shell 脚本,用户可以简化定时任务的添加、删除和查看操作,避免手动编辑 crontab 文件。通过编写自动化部署脚本,我们可以将繁琐的部署过程简化,确保部署的一致性和效率。下面是一个简单的系统监控脚本,用于检查系统资源使用情况,如 CPU、内存、磁盘等,并将结果输出到日志文件中。
2025-02-22 21:58:38
902
原创 【Go语言快速上手】第二部分:Go语言进阶之工具与框架
在 Go 语言开发过程中,掌握常用的工具和框架能够提高开发效率和代码质量。Go 提供了许多内置工具来帮助开发者进行代码格式化、静态检查、单元测试等操作。同时,Go 的 Web 框架和 ORM 框架也大大简化了 Web 应用和数据库交互的开发工作。本文将介绍 Go 中的常用工具、Web 框架和 ORM 框架。
2025-02-22 19:34:47
1163
1
原创 【Python 学习 / 7】模块与文件操作
在 Python 中,模块是一个包含一组函数、类、变量和可执行代码的文件。模块的主要作用是让我们能够将代码分成不同的文件,使得代码结构更加清晰、易于管理和复用。模块是 Python 代码的组织方式,可以提高代码的可复用性和模块化。可以通过import或来导入模块。常用的模块包括mathrandomossys等,涵盖了从数学计算到操作系统交互的各个方面。文件处理通过open()read()write()等函数来读取和写入文件,可以使用with语句自动管理文件资源。日期时间处理通过datetime。
2025-02-19 22:23:23
696
原创 【Go语言快速上手】第二部分:Go语言进阶之测试与性能优化
Go 语言提供了强大的测试框架来进行单元测试、基准测试,并通过pprof工具进行性能分析。在这部分内容中,我们将介绍如何编写单元测试和基准测试,使用pprof进行性能分析,以及一些常见的代码优化技巧。
2025-02-19 21:38:00
893
原创 【Python学习 / 6】面向对象编程(OOP)
面向对象编程 (OOP) 是一种编程范式,它使用“类”和“对象”来组织代码。在 Python 中,面向对象编程通过类(Class)和对象(Object)来实现。类是对象的模板,而对象是类的实例。OOP 允许我们模拟现实世界中的事物和行为,具有封装、继承和多态等特性。好的!我将对文章进行优化,并使内容更加详细、易于理解。Dog装饰器是 Python 中的一种非常强大的功能,允许你在不修改函数本身代码的前提下,动态地修改或增强函数的行为。
2025-02-18 22:22:35
636
原创 【Go语言快速上手】第二部分:Go语言进阶之数据库操作
Go 语言通过内置的包支持关系型数据库的操作,同时也支持通过第三方库与 NoSQL 数据库进行交互。你可以通过标准的 SQL 操作与关系型数据库(如 MySQL、PostgreSQL)进行交互,也可以使用专门的库来连接 NoSQL 数据库(如 MongoDB、Redis)。本篇博客将介绍如何在 Go 中操作关系型数据库与 NoSQL 数据库。
2025-02-18 20:40:44
1058
1
原创 【Python 学习 / 5】函数详解(定义、参数、作用域、lambda、内置函数)
在Python中,使用def关键字来定义一个函数。函数名后面跟一对小括号,括号中可以放参数。函数体需要缩进。")# 调用函数greet() # 输出: Hello, World!
2025-02-17 22:40:39
1178
原创 【Go语言快速上手】第二部分:Go语言进阶之网络编程
Go 语言提供了强大的网络编程能力,支持 TCP/UDP 协议的开发、HTTP 服务的构建,以及 WebSocket 协议的支持。通过内置的net和net/http包,Go 使得网络编程变得简洁高效。我们也可以使用第三方库,如来简化 WebSocket 的使用。
2025-02-17 22:21:43
1254
原创 【Go语言快速上手】第二部分:Go语言进阶之并发编程
可以在发送数据时不必立即等待接收方,直到缓冲区满或接收方取走数据。包,包含了多种同步原语,帮助开发者在并发程序中处理共享数据和同步问题。,可以安全地传递数据,避免了数据竞争问题。会在发送数据和接收数据时进行同步,确保发送和接收操作相互配合。是 Go 中最基本的并发单元,可以认为是轻量级的线程。包中的多种同步原语,用于处理并发程序中的共享资源访问问题。同时读取共享资源,但在写操作时会阻止其他的读写操作。的缓冲区大小为 2,可以在不立即接收的情况下向。,并发执行指定的函数或方法。时,可以指定缓冲区的大小。
2025-02-17 10:00:13
1038
原创 【Python 学习 / 4】基本数据结构之 字符串 与 集合
在Python中,集合是可变的数据类型,集合的元素必须是不可变类型(如数字、字符串、元组等)。Python中的字符串是Unicode编码,而在处理文件或者网络通信时,可能需要将字符串转化为字节流(bytes)。在Python中,字符串是不可变类型,即一旦创建就不能修改其中的字符。集合是非常适合用于去重和进行集合运算的工具,可以高效地进行元素的查找、插入、删除等操作。来创建字符串,也可以使用三引号(单引号或双引号)来创建多行字符串。字符串支持切片操作,可以截取字符串的一部分。方法删除集合中的元素。
2025-02-16 21:15:00
862
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人