船长工具箱文章

深入解析工具的工作原理与技术细节,共 38 篇

数据库主键用自增还是 UUID,我全试了一遍
深入解析 UUID 的 128 位结构布局,详细对比 v1、v4、v7 各版本在时间有序性、安全隐私和生成性能上的差异,分析碰撞概率并给出实际项目中的版本选型建议,同时讨论数据库主键索引优化和分布式标识符设计策略
2026-02-10生成工具
AES 加密看着复杂,拆开就这几步
深入解析 AES-256 加密算法的字节代换、行移位、列混合和轮密钥加四步运算,以及 ECB、CBC、GCM 等分组模式的选择
2026-01-15编码转换
密码不能明文存,哈希加盐是怎么回事
深入解析密码哈希存储的演进,从 MD5 到 bcrypt,盐值的作用和彩虹表防御,慢哈希函数的设计思路
2026-01-08开发工具
复利的力量,你的钱是怎么越滚越快的
从复利公式推导到实际年化收益率计算,深入解析复利效应背后的数学原理和应用陷阱,理解为什么爱因斯坦说复利是世界第八大奇迹
2026-01-05金融工具
广告
颜色编码和转换背后的原理,RGB, HSL, HEX
深入解析颜色编码的数学原理,RGB 和 HSL 互转公式,十六进制颜色码的结构,色域和颜色空间的差异
2025-12-22设计工具
两个不同文件算出一样的 MD5,这不是 Bug 是碰撞
深入解析 MD5 的压缩函数结构、64 轮迭代过程、碰撞攻击原理和为什么现代应用不应继续使用 MD5 做安全验证
2025-12-20编码转换
文本比较的 Levenshtein 距离到底在算什么
从动态规划矩阵到实际工程应用,深入解析 Levenshtein 编辑距离算法的原理、优化策略与边界情况处理。适合需要做文本差异分析的开发者
2025-12-15文本处理
Unix 时间戳的那些坑,时区和溢出
深入解析 Unix 时间戳的定义,2038 年溢出问题,时区转换的误解,毫秒精度带来的兼容性陷阱
2025-12-10计算换算
一行正则让 CPU 飙到 100%,引擎到底在干什么
从 NFA 状态机构建到回溯匹配策略,深入解析正则表达式引擎的完整执行流程、常见性能陷阱和优化技巧,通过真实线上故障案例讲解灾难性回溯的成因与预防方法,帮助开发者写出高效可靠的正则表达式
2025-12-05开发工具
UUID 的几种生成方式,不同版本怎么选
深入解析 UUID 各版本的区别,v4 随机生成的原理和碰撞概率,v7 的新时序设计,数据库主键选择的实践建议
2025-11-28生成工具
游戏抽卡的伪随机数到底有多随机
从线性同余生成器到 xorshift 再到游戏中的保底机制,深入拆解伪随机数生成器在游戏中的应用和那些让玩家抓狂的概率设计
2025-11-22小游戏
JSON.stringify 你不知道的隐藏细节
深入剖析 JSON 序列化规则,undefined 和 function 的处理差异,toJSON 自定义序列化,循环引用和大数据性能
2025-11-12开发工具
JSON.parse 不是魔法,拆给你看
从词法分析到语法树构建,深入拆解 JSON 解析器的完整工作流程,详细解释递归下降解析策略和多种容错处理机制,结合真实项目积累的踩坑案例与关键性能优化实践经验,帮助读者彻底理解解析器的内部原理
2025-11-10开发工具
图片压缩这件事,有损和无损的背后
深入解析图片压缩的有损和无损算法原理,JPEG 的 DCT 变换和量化过程,PNG 的 DEFLATE 压缩策略,以及 WebP 和 AVIF 等现代格式的演进对比
2025-10-25图片工具
广告
中文在内存里长什么样,从 Unicode 到 UTF-8
从 ASCII 到 Unicode,深入解析 UTF-8、UTF-16、UTF-32 三种编码方式的区别、字符空间平面划分规则、BOM 头的由来以及乱码产生的根本原因,理解为什么同一个汉字在不同编码方案下占用的字节数不一样以及 JavaScript 中 emoji 长度为什么是二
2025-10-20编码转换
JPEG 压缩原理,一张照片是怎么从 10MB 瘦到 1MB 的
从色彩空间转换到 DCT 变换再到量化编码,完整拆解 JPEG 有损压缩的每个环节,解释为什么压缩后的图片看起来差不多但体积小了那么多
2025-10-18图片工具
数据完整性校验,文件到底有没有被改过
从简单的校验和到 CRC 再到加密哈希函数,系统解析数据完整性校验的技术原理和实际应用场景,帮你理解下载文件时为什么需要比对哈希值
2025-09-20文化教育
URL 编码到底解决了什么问题
从 URI 规范到浏览器实现,深入解析 URL 编码规则、保留字符和 unsafe 字符分类,分析 encodeURI 与 encodeURIComponent 差异、常见解码陷阱和双重编码问题
2025-09-15编码转换