Go语言笔记之性能分析

Go语言笔记
Go语言笔记之性能分析

垃圾回收算法Go语言中的垃圾回收(GC)算法是其自动内存管理的核心机制,采用并发标记-清扫(Concurrent Mark-Sweep)技术,结合三色标记法和增量回收策略,旨在减少程序停顿时间并提高性能。 三色标记法将程序中的对象分成白色 黑色 和灰色三类: 白色:未被访问的对象, 潜在的垃...

Redis源码分析笔记之数据结构

Redis笔记
Redis源码分析笔记之数据结构

Redis是一个C语言实现的高性能内存数据库, 在日常的业务开发过程中, Redis占据重要的地位. 因此阅读和学习Redis源代码有助于理解Redis的具体实现原理, 从而更好的将其运用到业务开发过程之中. 同时Redis源码本身由C语言实现, 因此并不包含复杂的语言特性, 相对较为容易阅读...

数学之美阅读笔记

数学之美阅读笔记

由于这本书的写作年代已经稍微有些久远了(写于2012年), 因此最初并未对这本书抱有太多期待. 但实际阅读下来发现, 这本书实际上涉及了大量关于自然语言处理的内容, 较为详细地介绍了除神经网络以外的大量自然语言处理技术. 虽然现在的自然语言处理在ChatGPT出现后, 可以说是”开始的终结”...

Web开发笔记之TypeScript基础

Web开发笔记
Web开发笔记之TypeScript基础

TypeScript是JavaScript的超集, 可以视为一个具有类型的JS语言. 因此TS既可以在浏览器中运行(传统的前端开发), 也可以在Node.js环境中运行(写Vscode插件). 由于JS的语法特性TS均支持, 因此学习TS语言, 主要就是学习类型系统. 基本类型12345678...

VSCODE插件开发笔记

VSCODE插件开发笔记

VsCode由于其跨平台的特性, 已经成为JetBrains全家桶以外, 我使用最多的IDE. 由于VsCode相对轻量的特性, 在写博客, 写Python脚本的场景中, 实际上比JetBrains全家桶更好用. 近期在一些开发过程中, 一直苦于没有合适的IDE支持自定义的语言, 因此我决定...

Docker笔记之使用镜像

Docker笔记
Docker笔记之使用镜像

在之前的文章中, 已经介绍过Docker的基本使用, 以及如何自定义的构造需要的镜像. 本文将主要介绍一些在平常发现的好用镜像, 介绍这些镜像的基本功能和配置细节. watchtower相关配置watchtower是一个容器更新监控服务镜像, 部署该镜像后, 该镜像会自动检测在HOST机器中运...

Flink学习笔记

Flink学习笔记

Flink是一种流式计算框架. 流计算与传统的离线计算相比, 其主要特征是: 需要对随时进入系统的数据进行实时计算. 流计算处理的数据集是无界的, 数据来源可能是非持久化的. 基于以上特征, 流计算需要满足处理结果立即可用, 并随着数据的到来, 持续的进行更新. 由于数据非持久化, 因此对于容...

Web开发笔记之JavaScript基础

Web开发笔记
Web开发笔记之JavaScript基础

由于已经学习过Java和Python等编程语言, 因此本文不是一个面向初学者的笔记. 在笔记中往往只会记录JavaScript特有的语言特性, 而与大部分语言相同的共性内容会直接忽略. 由于并未将JavaScript作为开发语言, 因此本文将直接以ES6标准为基础介绍JavaScript的相关...

Web开发笔记之CSS基础

Web开发笔记
Web开发笔记之CSS基础

在对一个标签使用一个样式的时候, 此样式会自动的应用到其子标签, 此特征称为CSS的继承性. 例如对一个div设置文字颜色, 则其中的子元素会自动获得div标签设置的文字颜色. CSS的引入方式 内联式CSS: 即直接在标签内使用style参数来指定其样式, 例如<p style=&qu...

程序员修炼之道

程序员修炼之道

本文的主要内容来自经典书籍<<程序员修炼之道>>, <<代码整洁之道>>, <<重构–改善既有代码的设计>>和<<高效程序员的45个习惯>>, 整理了这些书中我觉得比较重要的, 应该努力达到的要求....

思考的力量

思考的力量

麦肯锡教我的思考武器 工作的价值 议题思考 金字塔原理 如何构建金字塔 学会提问 批判性思维的障碍 议题的分类 常见的论证谬误 决策与判断 第一部分 知觉, 记忆和情景 选择性知觉 认知不协调 记忆和事后聪明式偏差 第二部分 问题如何影响答案 可塑性 顺序效应 虚假意见 ...

VSCODE配置笔记

VSCODE配置笔记

VSCODE作为一个较为轻量级的编辑器, 总体上来说是开箱可用的. 不过对于各类具体的场景, 安装一些插件或者修改一些配置能够带来更好的使用体验. 本文将简单介绍一些好用的VSCODE插件, 以及一些常用的VSCODE配置 插件推荐Markdown All in One此插件提供了大量Mark...

Web开发笔记之Vue框架

Web开发笔记
Web开发笔记之Vue框架

Vue是一款用于构建用户界面的 JavaScript 框架, 相较于几十年前以HTML+CSS+JS的开发方式, Vue提供了一系列的新语法, 使得我们可以声明式地描述最终输出的 HTML 和 JavaScript 状态之间的关系, 并且Vue框架会自动跟踪 JavaScript 状态并在其发...

Go语言笔记之并发编程

Go语言笔记
Go语言笔记之并发编程

对于并发编程, Go语言既提供了传统的锁模型, 也提供了通道, 多路复用等Go语言特有的并发模型. 其中的核心思路是使用通信来共享内存,而不是通过共享内存来通信. 大部分问题都可以通过传统的锁或者GO的通道解决, 选择最好描述和最简单的那个方法. 临界区与竞争条件临界区: 程序中需要独占访问共...

Go语言笔记之Web开发

Go语言笔记
Go语言笔记之Web开发

Go语言的Web开发与Java的Web开发一样,虽然内置包提供了基础功能,但还是会使用一系列的开源框架和中间件来简化开发。在目前的Go语言Web开发中,通常会使用Gin作为Web框架,使用Gorm作为数据库映射框架,使用redigo作为redis客户端。 Gin提供了URL绑定和Web参数绑定...

PlantUML绘图笔记

PlantUML绘图笔记

PlantUML是一个开源项目, 提供了用代码绘制时序图, 类图, 对象图等功能. 由于代码编辑更加便利, 因此在博客和文档中都非常适合使用PlantUML来插入对应的图片. PlantUML的官方文档上对每种图的特性都进行了详细的描述. 在必要的时候, 也可以通过在线服务器1和在线服务器2直...

Java源码分析之集合数据结构

Java源码分析
Java源码分析之集合数据结构

HashMapHashMap是是经典的数据结构, 也是Java最常用的数据结构之一. 由于HashMap不涉及多线程问题, 且作者 因此代码理解难度比较低, 非常值得一读. HashMap的源码真的有一种作者希望我能看懂的感觉 如果多个Key具有同样的Hash值, 但Key本身是Comp...

Spring笔记之登录系统

Spring笔记
Spring笔记之登录系统

依赖可以在创建项目的时候, 直接使用Spring Initializr加入Spring Security依赖, 也可以手动加入如下的两个依赖. 12345678<dependency> <groupId>org.springframework.security&l...

×
  • {title}