回到首页

THE JOURNAL / 过往篇章

往前翻,还有故事。

第 2 页 · 沿着文字,走进更早的年轮。

过往篇章

共 38 篇
全部归档
8 分钟阅读1674 字

新时代的编程

大人,时代变了。 编程语言其主要作用就是连接人与机器沟通的桥梁。而随着 AI 极速发展,写代码的方式也在随着技术的发展更新。 ## 抽象的阶梯 回望历史,编程范式一直在攀登抽象的阶梯。从最初直接操作硬件开关,到穿孔卡片,到汇编语言,再到高级语言——每一次跃迁都让程序员离机器更远一步,离问题域更近一步。 AI 辅助编程不是终点,而是这漫长阶梯上的又一级台阶。 当我们用 Claude Code 这样的

Artificial Intelligence
8 分钟阅读1617 字

如何设计 React 组件

设计 React 组件不仅是编写 JSX,更是一门关于解耦、复用和可维护性的艺术。优秀的组件设计能让项目在规模扩大时依然易于管理。在考虑组件设计时,不仅要关注可复用性,还要警惕过度封装的风险。 ## 核心设计原则 在动手编码前,需要明确并遵循以下核心原则: 1. 单一职责原则 - 理想情况下,一个组件只负责一件事。如果一个组件既负责数据获取、复杂逻辑处理,又负责 UI 渲染,那它就过于“臃肿”了。

ReactTypeScriptJavaScript
2 分钟阅读490 字

Leptos 中的暗色模式适配

如今暗色模式已经是各个操作系统都实现的较为完善了,而浏览器也提供了一些方便适配的 API。 实现一个简单的适配暗色模式只是第一步,既然浏览器已经提供好了较为完善的 API 那么就可以实现一个所谓的能用的暗色模式适配方案。 1. 在第一次打开页面或从未进行过设置时,优先匹配系统的颜色模式; 2. 在手动调整过颜色主题时,利用 进行保存,以实现再次打开或刷新的持续生效; 第一步的实现在 CSS 的 m

RustLeptos
4 分钟阅读820 字

第 9 章 结构体

Rust 有 3 种结构体类型:具名字段型结构体、元组结构体和单元型结构体。 - 具名型结构体:为每个组件命名。 - 元组型结构体:按组件出现的顺序标识他们。 - 单元型结构体:没有组件。 ## 具名结构体 与其他所有语法项一样,结构体默认情况下是私有的,仅在声明它们的模块及其子模块种可见。可以通过在结构体的定义前加上 来是结构体在其模块外部可见。结构体中的每个字段也是默认私有的。 其他模块不能按

Rust
1 分钟阅读112 字

第 8 章 Create 与模块

有时,可能需要对函数的内联进行微观管理,但我们通常会把这种优化留给编译器。可以使用 属性进行微观管理: 只有在一种特定的情况下,如果没有 ,就不会发生内联。当一个 crate 中定义的函数或方法在另一个 crate 中被调用时,Rust 不会将其内联,除非它是泛型的或名曲的标记为 。

Rust
2 分钟阅读534 字

第 7 章 错误处理

Rust 中有两类常见的错误处理: 和 。 普通错误使用 类型来处理。 通常用以表示由程序外部的事物引发的错误,比如错误的输入、网络的中断或权限问题。 针对的是另一种错误,即那种永远不应该发生的错误。 > Rust 之所以会用一个新词(panic)而不是沿用“异常”来表达,是因为两者并不等价。 ## panic 当程序遇到下列问题时,就可以断定程序自身存在 Bug,故而引发 panic: - 数组

Rust
4 分钟阅读876 字

第 5 章 引用

Rust 中的指针分为拥有型指针和非拥有型指针。其中,拥有型指针意味着当拥有者被丢弃时,它的引用目标也会随之消失。引用(reference)的非拥有型指针,意味着对引用目标的生命周期毫无影响。 事实上,引用的生命周期绝不能超过其引用目标。为了强调这一点,Rust 把创建对某个值的引用的操作称为借用(borrow)那个值:凡是借用,终须归还。 为了在不影响其所有权的情况下访问值。引用分为一下两种。

Rust
10 分钟阅读2087 字

第 4 章 所有权与移动

谈及内存管理,我们希望编程语言具备两个特点: - 希望能在我们选定的时机及时释放,这使我们能控制程序的内存消耗; - 在对象被释放后,我们绝不希望继续使用指向它的指针,这是未定义行为,会导致崩溃和安全漏洞。 ## 所有权 在使用指向一个堆内存的指针时,人们普遍认为,虽然其他代码也可以创建指向拥有内存的临时指针,但是在拥有者决定销毁拥有对象之前,其他代码有责任确保其指针已消失。这便是所有权的示例,拥

RustLinux
20 分钟阅读4081 字

异步 Rust

是 Rust 选择的异步模型。 并发在现代社会非常重要,多数主流语言都有对自己并发模型的设计以及取舍。 - OS 线程, 它最简单,也无需改变任何编程模型(业务/代码逻辑),因此非常适合作为语言的原生并发模型,在 多线程章节也提到过,Rust 就选择了原生支持线程级的并发编程。但是,这种模型也有缺点,例如线程间的同步将变得更加困难,线程间的上下文切换损耗较大。使用线程池在一定程度上可以提升性能,但

RustAsynchronous
10 分钟阅读2109 字

Gentoo 指北

Binary! Gentoo gose Binary! 在一月的倒数前两天,Gentoo 整了个新活。不再像以前只有过于复杂的软件提供了二进制文件(例如 linux 内核和 firefox),现在整个包管理器 Portage 都提供了二进制的选择。 > You probably all know Gentoo Linux as your favourite source-based distrib

GentooLinux
© 2026 Yggdrasil