Lua 入门第一课:基本语法、变量类型与字符串处理

这篇入门文章把 Lua 最先要掌握的几件事串了起来:如何进入交互模式、变量和 8 种基本类型、常见运算符、流程控制、函数以及字符串处理。重点保留了 Lua 与其他语言最容易混淆的规则,适合刚开始上手时快速建立判断框架。

Lua 入门第一课:基本语法、变量类型与字符串处理

UML 概述:先搞清它是什么,再学怎么用

UML 是一套用于说明、可视化和文档化系统的标准建模语言,核心价值不在“写代码”,而在把对象、关系和行为表达清楚。本文从定义、目标、概念模型到 OO 分析设计和基本元素,梳理 UML 的入门框架。

UML 概述:先搞清它是什么,再学怎么用

Ubuntu 上 JavaScript 如何实现数据持久化:从 LocalStorage 到 MongoDB 的选型梳理

在 Ubuntu 上用 JavaScript 做数据持久化,关键不是“能不能存”,而是先分清运行环境和数据规模。本文按浏览器端与 Node.js 端拆解 LocalStorage、IndexedDB、文件系统、SQLite、MongoDB 的适用边界,帮助你快速选型。 在 Ubuntu 里写 JavaScript 应用时,数据持久化最容易踩坑的地方,不是“怎么存”,而是没有先按运行环境和数据规模做判断。

Ubuntu 上 JavaScript 如何实现数据持久化:从 LocalStorage 到 MongoDB 的选型梳理

C# Dictionary 入门:用键值对告别低效遍历

这篇文章用库存示例梳理 C# `Dictionary ` 的核心用法,包括创建、增删改查、遍历方式,以及 `Add`、索引器、`TryGetValue`、`ContainsKey` 等常见方法的适用场景,帮助你判断什么时候该用它替代低效遍历。 C# 初学者很容易把很多“按条件找数据”的逻辑写成循环遍历,但只要数据天然带有唯一标识, Dictionary 往往就是更高效的选择。

C# Dictionary 入门:用键值对告别低效遍历

Swift Combine 入门:基本概念、网络请求与 SwiftUI 用法

本文用一个入门示例、一个网络请求示例和一个 SwiftUI 状态绑定示例,梳理 Combine 的核心模型与典型写法。读完你可以快速判断 Publisher、Subscriber、操作符各自负责什么,以及 Combine 适合放在应用中的哪些位置。

Swift Combine 入门:基本概念、网络请求与 SwiftUI 用法

UML 构建模块详解:事物、关系与图分别表示什么

本文围绕 UML 构建模块展开,梳理“事物、关系、图”三类核心内容,并进一步拆解结构事物、行为事物、包、注释以及四种常见关系。读完后,你可以快速判断 UML 模型由哪些元素组成,以及不同图分别适合表达什么。

UML 构建模块详解:事物、关系与图分别表示什么

Ubuntu 上如何优化 Node.js 项目性能:从系统参数到监控闭环

Ubuntu 上优化 Node.js 项目,不能只盯着代码层。系统参数、并发模型、缓存与数据库访问方式,都会直接决定应用在高并发下是否稳定、是否还能继续提速。 Node.js 项目部署到 Ubuntu 后,性能瓶颈往往不会只出在一层:系统参数、事件循环、数据库访问和多核利用方式,任何一个环节都可能把吞吐拖下来。

Ubuntu 上如何优化 Node.js 项目性能:从系统参数到监控闭环

Debian 如何禁用 Java 自动更新

在 Debian 上关闭 Java 自动更新,核心是确认当前 Java 版本,并修改 `unattended-upgrades` 与自动更新配置。本文按实际操作顺序整理命令、配置项和回退方式,便于你判断是只停用自动安装,还是直接关闭整套自动更新。

Debian 如何禁用 Java 自动更新