短松江月

软件开发与编程技术

涵盖智能化软件开发、程序分析、软件架构、DevOps、编程语言与安全等核心研究方向

Software Engineering, Programming, 软件开发, 编程, AI4SE, DevOps
55 篇文章

Hugo 主题创建方法及简单说明

一份详细的 Hugo 静态网站生成器主题创建教程,涵盖了从环境初始化、目录结构解析到主题配置与文章管理的完整流程,并提供主题使用方法。

· 2 分钟阅读

Julia 基础

糟糕,写文章的时候忘记添加描述了!!!

· 4 分钟阅读

Epoll

本文从计算机硬件接收网络数据开始,深入剖析了CPU中断、进程阻塞与调度原理,逐步讲解了从阻塞I/O到select/poll,最终演进到epoll的技术历程。详细图解了epoll的实现机制,包括就绪列表、红黑树索引等核心数据结构,揭示了epoll高效监视大量文件描述符的本质。

· 12 分钟阅读

您需要了解的 14 个最重要的元和 HTML 标签

本文详细介绍了14个对SEO至关重要的元标签和HTML元素,包括标题标签、元描述、规范链接、结构化数据等,通过实际代码示例和Google官方建议,提供全面的优化指南,帮助您提升网站在搜索引擎中的可见性和排名。

· 18 分钟阅读

群晖安装 Vaultwarden 并配置 https

本文详细介绍了在群晖NAS上安装并配置Vaultwarden(Bitwarden兼容服务器)的全过程,重点讲解如何通过OpenWrt路由器的DNS劫持功能,结合群晖反向代理实现内网HTTPS安全访问,无需公网IP或申请SSL证书即可搭建私有密码管理服务。

· 2 分钟阅读

用汇编中编写Python扩展

这篇文章介绍了如何使用会变语言写 python 拓展,可以作为学习汇编语言的资料

· 21 分钟阅读

即时设计插件开发

关于即使设计开发中的项目结构和代码组织介绍

· 6 分钟阅读

mac 汇编笔记

本文记录了在 Apple Silicon Mac 上学习 ARM64 汇编语言的入门笔记。从最简单的空程序开始,到编写并运行 Hello World,详细介绍了汇编、链接和调试的基本步骤与工具链使用,并提供了相关权威参考资料。

· 1 分钟阅读

简述 Rust 中的闭包

本文从需求出发,详细介绍了Rust闭包的概念、优势及与其他语言闭包的对比,通过大量代码示例展示了闭包的基本语法、三种特性(Fn/FnMut/FnOnce)、捕获机制及常见应用场景,并提供了最佳实践指南。

· 3 分钟阅读

Rust 中的引用

本文用快递地址的比喻生动讲解Rust中的引用和借用机制,涵盖不可变引用、可变引用、借用规则及其设计哲学,通过对比其他语言和实际代码示例,深入剖析Rust如何通过编译期检查实现内存安全与零成本抽象。

· 5 分钟阅读

Rust 函数式编程

本文通过电商订单处理的实例,对比命令式与函数式编程风格,系统讲解Rust中迭代器、闭包和高阶函数的使用,并提供函数式编程的最佳实践与性能优化建议,帮助你用管道式思维编写更清晰、可维护的Rust代码。

· 2 分钟阅读

Rust 生命周期

本文深入解析 Rust 语言的核心特性——生命周期机制,从悬垂引用等实际问题出发,详细讲解生命周期标注的语法、规则与最佳实践,并通过丰富代码示例展示其如何在不依赖垃圾回收的情况下,于编译期保证内存安全。

· 2 分钟阅读

深入理解 Rust 所有权机制

本文深入解析Rust语言最核心的所有权机制,通过大量代码示例详解所有权三原则、借用规则及其内存布局原理,对比不同语言的内存管理策略,并探讨其在并发安全和零成本抽象方面的独特优势,帮助读者彻底理解Rust的安全设计哲学。

· 6 分钟阅读

rust 闭包

本文深入剖析 Rust 闭包的核心机制,从概念、捕获规则、三种特质(Fn/FnMut/FnOnce)到内存实现,并结合文件处理、惰性求值、资源管理等实战案例,详解闭包在迭代器、自定义排序与错误处理中的高效应用。同时,探讨性能优化技巧与常见陷阱,帮助开发者深入理解并掌握这一强大工具。

· 5 分钟阅读

深入解释 Rust 中的 Result 和 Option 这两个核心类型

本文深入解析Rust核心类型Result和Option的用法与设计哲学,从实际问题出发,通过丰富代码示例讲解错误处理、模式匹配、问号运算符及自定义错误类型等实践技巧,帮助开发者编写更健壮的Rust程序。

· 5 分钟阅读

rust 中的属性宏

本文深入解析Rust中属性宏的工作原理,特别是derive宏如何自动为数据结构实现Clone、Debug、Serialize等常用trait。通过代码示例详细展示宏在编译期的展开过程、两种主要类型(派生宏和自定义属性宏)的区别,以及在实际开发中的应用技巧。

· 2 分钟阅读

Wasm 打印输出和浏览器特性等最佳实践

本文详细介绍了在 Rust WebAssembly 开发中实现控制台打印、DOM 操作、浏览器 API 调用等功能的完整方法,并提供了涵盖错误处理、性能优化、内存管理、异步操作等关键领域的最佳实践指南,帮助开发者构建高效、健壮的 Wasm 应用。

· 3 分钟阅读

更好的 vim 配置

一篇详尽的 Vim 配置文件 (.vimrc) 分享,包含了显示设置、代码高亮、文件头自动生成、快捷键映射、编译运行集成以及多种插件(如TagList、MiniBufExplorer)的配置,旨在提升文本编辑与代码开发的效率。

· 6 分钟阅读

更好的 zsh 配置

本文详细介绍了如何配置现代化的 zsh 开发环境,包括安装 oh-my-zsh、设置主题与插件、配置 GitHub SSH 密钥、远程服务器免密登录以及 MySQL 的安装与用户管理,旨在提升终端工作效率与开发体验。

· 3 分钟阅读

Wasm

本文深度解析WebAssembly核心技术原理,通过斐波那契数列、图像高斯模糊等实战案例,对比JavaScript与WASM性能差异,详细讲解内存模型、SIMD优化、工具链配置及性能优化技巧,帮助开发者在Web端实现接近原生的高性能计算。

· 5 分钟阅读

Aptos Wasm 开发笔记

记录了将 Aptos Move 编译器编译为 Wasm 的探索过程,包括项目结构分析、命令行工具使用、代码执行流程追踪以及相关技术细节。

· 6 分钟阅读

Go 最佳实践

本文全面总结了Go语言后端开发的最佳实践与架构设计原则,涵盖分层架构、依赖注入、错误处理、并发控制、性能优化、安全性保障等核心内容,并提供了详细的设计模式实例和完整的后端开发学习路线图,适用于从新手到专家的Go开发者参考。

· 20 分钟阅读

hugo 配置

一份全面的 Hugo 博客配置优化指南,涵盖站点配置、图片处理、安全策略、内容组织及性能与 SEO 优化的最佳实践。

· 2 分钟阅读

从 Hexo 迁移至 Hugo

本文详细记录了作者从Hexo迁移至Hugo静态博客系统的完整过程,包括迁移原因分析、快速上手指南、永久链接兼容、主题深度定制(even主题)以及RSS、评论系统(utterances)、访问统计(umami)等功能的适配经验,为有类似需求的用户提供了一份全面的实战参考。

· 14 分钟阅读

使用 Hexo+GitHub+Vercel 搭建个人免费博客的最佳实践

本文详细介绍了使用 Hexo + NexT 主题搭建博客,并通过 GitHub Actions 自动部署到 Vercel 的完整流程。涵盖环境配置、主题优化、评论系统选型、自动化部署等关键步骤,并提供了私有仓库保护敏感配置的最佳实践方案。

· 9 分钟阅读

shell mac 教程

一篇实用的 macOS Shell 脚本教程,通过 osascript 实现系统通知、自定义弹窗(支持多按钮与输入框)等交互功能,并提供封装好的函数,方便在自动化脚本中直接调用,提升操作效率与用户体验。

· 3 分钟阅读

谷歌账号注册的问题

本文详细解析了注册谷歌账号时常见的‘此电话号码已用过太多次’和‘此电话号码无法用于进行验证’等错误提示的成因,并提供了从网络环境、浏览器设置到使用香港虚拟号码(如SMS-Activate平台)等一整套实用解决方案与操作步骤。

· 6 分钟阅读

C 语言字符画

使用C语言打印空心正方形字符画,包含单组输入和多组输入两种实现方法,通过行列控制逻辑输出指定边长的图形。

· 1 分钟阅读

如何生成 dll 文件

本文详细介绍了在Visual Studio中创建C++动态链接库(DLL)的步骤,包括项目创建、代码编写、头文件配置以及生成优化设置。

· 1 分钟阅读

删除错误提交到GitHub仓库中的文件

本文提供了从GitHub仓库中删除错误提交文件的两种方法:一种是创建新提交以撤销更改(推荐协作场景),另一种是使用git filter-branch等工具重写历史(需谨慎)。文章详细说明了操作步骤,并强调了重写历史的风险与注意事项。

· 2 分钟阅读

TG 下载器

本文详细介绍了 Telegram Media Downloader 的下载、配置与使用方法,包括如何获取 API 密钥、Chat ID、编写配置文件以及通过代理运行,帮助用户实现自动化下载 Telegram 频道中的媒体文件。

· 4 分钟阅读

x86 教程

一篇通俗易懂的 x86 汇编语言入门教程。文章解释了汇编语言与二进制指令的关系,详细介绍了寄存器、内存模型(Heap 和 Stack)以及 CPU 指令(如 push, mov, add, call, ret)的工作原理,并通过一个简单的 C 语言函数调用示例,逐步拆解其对应的汇编代码执行过程,帮助读者理解计算机底层的运行机制。

· 9 分钟阅读

SQL 教程

这是一份适合初学者的SQL入门教程,内容涵盖了数据库与表的基本操作、DDL(数据定义语言)、DML(数据操作语言)、DQL(数据查询语言)的核心语法,以及数据类型、约束、聚合函数、分组、子查询和关联查询等关键概念,并包含大量实践示例,帮助读者快速掌握SQL基础。

· 21 分钟阅读

创建一个远程编译环境

详细教程:如何构建一个支持Move语言的远程编译环境,包含TypeScript/React前端、Rust后端服务以及Move语言编译执行的完整配置流程。

· 8 分钟阅读

设计资料:样机

精选设计师必备的高质量样机、插画与免费可商用图片素材网站合集。

· 17 分钟阅读

什么是 SimHash

本文深入解析SimHash算法原理,从分词、加权到生成局部敏感指纹,详细说明如何通过海明距离与抽屉原理实现海量文本的快速相似匹配与去重,并附有完整计算流程与优化方法。

· 10 分钟阅读

JWT 解析

本文详细解析JWT(JSON Web Token)的工作原理、结构(Header/Payload/Signature)与核心应用场景,对比其与传统Session、Token在认证授权、单点登录、可扩展性与安全性方面的差异,并探讨JWS与JWE的实现区别,为现代Web应用选择合适的身份认证方案提供清晰指南。

· 9 分钟阅读

搭建 NPS

详细介绍使用Docker在服务器上部署NPS内网穿透服务,并配置客户端的完整流程,包含配置文件详解和常见问题处理。

· 5 分钟阅读

小米 4a 路由器刷机

本文详细介绍了小米路由器4A千兆版的刷机全过程,包括通过OpenWRTInvasion获取SSH权限、降级固件、刷入Breed不死引导,以及最终刷入OpenWRT或Padavan第三方固件的具体步骤与命令,旨在帮助用户解放路由器功能并避免变砖风险。

· 4 分钟阅读

小米 4c 路由器刷机

本文是一篇详细的小米路由器4C刷机教程,涵盖从开启Telnet/FTP、连接路由器、备份原厂固件,到刷入Breed不死引导和OpenWrt固件的完整步骤。教程基于Windows操作环境,提供工具包下载,适合初学者跟随操作,旨在帮助用户解锁路由器功能、安装第三方固件。

· 3 分钟阅读

小米路由器

本文详细介绍了如何为小米路由器刷入OpenWrt系统并进行基础设置,包括管理后台登录、PPPoE宽带配置、Wi-Fi密码设定及其他核心功能说明,适合希望解锁更多路由器功能的用户参考。

· 3 分钟阅读

Quartz 教程

一份详细的Quartz静态网站生成器使用教程,涵盖从环境配置、布局定制、组件开发到插件制作的全流程,帮助用户基于Obsidian笔记快速构建个性化网站并部署到GitHub Pages。

· 20 分钟阅读

C 语言推荐书籍

一份涵盖了C语言、C++、Java、计算机系统、数据结构、内存管理及算法等核心主题的编程技术书籍推荐清单。

· 1 分钟阅读

左耳朵耗子:技术领导力

左耳朵耗子(陈皓)推荐的技术成长书单,涵盖从C语言、算法、设计模式到系统编程的经典著作,并附有提升代码质量与工程能力的文章推荐,旨在帮助程序员构建扎实的技术根基与领导力。

· 1 分钟阅读

OpenWRT 教程

本文提供了一份详细的OpenWRT刷机安装指南,涵盖从镜像下载、制作启动盘、进入BIOS、使用Rufus或IMG写盘工具写入镜像到完成启动的全过程,适用于希望在x86等硬件设备上部署OpenWRT软路由的用户。

· 1 分钟阅读

左耳朵耗子:程序员

本文总结了左耳朵耗子关于程序员成长与价值变现的核心观点,涵盖技术积累、趋势判断、动手能力、信息获取及个人影响力构建等关键路径,旨在为技术人员的职业发展提供启发。

· 4 分钟阅读

群晖开发

本文详细介绍了在群晖NAS不同CPU架构(x86_64与ARM)上安装Optware环境及GCC编译器的完整步骤,包括查看系统架构、下载执行引导脚本、更新软件源和安装开发工具,为在群晖上进行软件编译和开发提供基础环境配置指南。

· 1 分钟阅读

浮点数的存储

本文详细讲解了浮点数在计算机中的存储方式,包括IEEE 754标准的二进制科学计数法表示、符号位S、有效数字M和指数E的存储规则,并通过C语言代码示例演示了单精度浮点数在内存中的具体布局和读取过程,解释了精度丢失的原因和指数E的特殊情况处理。

· 3 分钟阅读

函数栈帧的创建和销毁

本文通过汇编代码和内存示意图,深入解析C/C++程序中函数栈帧的创建与销毁全过程。详细介绍了寄存器(ESP、EBP等)的作用、局部变量的内存分配、函数调用的参数传递机制(形参实参关系)、以及递归调用深度限制的根本原因,帮助读者从底层理解程序运行机制。

· 31 分钟阅读

C 语言计算最大公约数

本文介绍了在C语言中计算两个整数的最大公约数和最小公倍数的两种方法:暴力枚举法和高效的辗转相除法,并提供了相应的代码实现和算法原理说明。

· 1 分钟阅读

C 语言结构体

本文详细讲解了C语言结构体的内存对齐规则,包括对齐数的计算、嵌套结构体的处理方式,并通过具体代码示例和内存布局图示说明了不同结构体成员排列对内存占用的影响,最后探讨了内存对齐的原因和设置默认对齐数的方法。

· 4 分钟阅读

C++ 命名规范

本文详细介绍了C++编程中的命名规范,涵盖文件、类型、变量、常量、函数、枚举和宏的命名规则与示例,为编写清晰、一致的代码提供指导。

· 1 分钟阅读

mermaid 教程

本文是一份详尽的Mermaid图表语言教程,涵盖思维导图、流程图、顺序图、甘特图和饼图五大核心图表类型。通过丰富的代码示例和可视化效果展示,系统讲解语法规则、高级功能及实用技巧,帮助读者掌握在Markdown中绘制专业级图表的技能。

· 10 分钟阅读