博客

2025.07.24

宽屏悖论:为何80列规则在今天依然重要

在4K超宽屏显示器已成为标配的2025年,我们为何还要讨论那个源自1970年代IBM打孔卡时代的“80列”代码行长限制?技术的进步似乎赋予了我们无限的横向空间,坚守这条陈旧的规则,看起来像是一种不合时宜的低效行为。


2025.07.23

[C语言] 安全的信号处理:Self-Pipe技巧

在使用C/C++为Linux/Unix环境开发服务器或守护进程时,有一个不可避免的难题,那就是“信号(signal)”。无论是通过 Ctrl + C (SIGINT) 终止程序,还是使用 kill 命令指示特定操作,信号都是从进程外部异步发生的强大事件。


2025.07.15

语言狂热解析:从群体心理到自恋主义

我们常常在在线论坛的某个角落,目睹一个由普通技术问题引发的帖子,其评论区最终演变为激烈战场的情景。一方主张特定编程语言的优越性,另一方则为其他语言辩护,双方的争论在技术讨论的边缘游走,很快便升级为嘲讽与蔑视。他们或赞美 C++ 的底层控制能力,将带垃圾回收器的语言贬为“玩具”;或宣扬 Rust 的内存安全,声称所有其他语言都是“潜在的 bug 集合体”。


2025.07.15

关于“C/C++”表示法的探讨:误解与真相

大家好。本文旨在客观梳理开发者社区中常见的“C/C++”这一表示法的背景和含义。该表述在招聘公告、技术文档和在线课程中被广泛使用,但有时也因对其含义的误解而成为争议的焦点。


2025.07.10

Markdown ID,为什么不能以数字开头?

副标题:深入探究 Markdown 解析器的自动生成与手动指定之谜


2025.07.09

乌山站私藏美食店:紫菜包饭天国,品尝兼具美味与美观的泡菜炒饭

有那么一家店,是几年来我一直光顾的“私藏老店”。对我来说,乌山站附近的“紫菜包饭天国”就是这样一个地方。味道好是基本,而且食物总是摆盘得很漂亮,让人每次都能愉快地用餐。今天突然想吃泡菜炒饭了,就点了一份。


2025.07.09

为独立开发者打造完美的隐私政策与Cookie同意横幅 (Jekyll, 应对GDPR)

在运营个人项目或小型玩具项目时,我们常常会忽略“隐私政策”。然而,当我们在网站上添加广告或访客分析工具的那一刻,我们便开始处理来自全球用户的数据。这不仅受韩国的个人信息保护法管辖,还适用于欧洲的GDPR、美国的CCPA等严苛的法律。


2025.06.27

精通FreeBSD上的LD_LIBRARY_PATH:动态库加载指南

当您在FreeBSD上开发或部署应用程序时,不可避免地会遇到共享库。这些.so文件包含多个程序可以使用的代码,从而节省了磁盘空间和内存。动态链接器负责在程序启动时查找和加载这些库。但是,当您的程序需要不在标准系统路径中的库时会发生什么呢?这就是LD_LIBRARY_PATH发挥作用的地方。


2025.06.26

Rust语言设计缺陷分析

Rust是一门现代系统编程语言,专注于内存安全、并发性和性能。尽管因其强大的功能和精密的编译器而备受赞誉,但与任何语言一样,Rust也存在其设计上的缺陷和批评。本分析将深入探讨在Rust社区及其批评者中经常讨论的主要设计问题。


2025.06.26

C与C++的主要区别:基于事实的指南

尽管C++起源于C,常被称为“带类的C”,但它已演变成一种独特的、功能强大的多范式语言。对于任何从事系统编程的开发人员来说,理解它们的区别至关重要。本指南将提供一个基于事实的比较。