学习主题

C# 学习笔记

记录我从语法基础走到写小工具过程中的理解与复盘。内容全部为个人学习笔记,不含任何商业推广。

async/await 学习笔记

异步方法、返回值与常见误用,按自己的理解重新整理一遍。

异步Task

面向对象基础复盘

封装、继承、多态在实际小项目里怎么落到代码里。

OOP

LINQ 常用写法备忘

筛选、投影、分组与自己习惯保留的几段示例。

LINQ

值类型和引用类型:我怎么建立直觉

用「盒子里是值还是门牌号」帮助自己判断赋值行为。

基础

字符串处理:少制造垃圾的小习惯

拼接、比较、判空这些小事,堆多了也会拖慢阅读和性能感。

string

异常:捕获是为了处理,不是为了吞掉

能预防的先预防;捕获后要么恢复,要么记录并转成明确结果。

异常

List 和 Dictionary,选型靠场景

按访问方式选集合,而不是先创建 List 再到处 Find。

集合

接口和抽象类:我怎么避免过度设计

先有真实变化点,再抽象;不为了「看起来专业」提前分层。

OOP

用 record 表达「就是一份数据」

传输对象、快照数据用 record,行为复杂的领域对象仍用 class。

recordDTO

读写文件时我反复提醒自己的事

路径、编码、释放资源,这三件事比 API 名称更值得小心。

IO

可空引用:把「可能没有」写进类型里

打开可空后早期会吵,但能逼自己处理空值路径。

nullable

依赖注入:先理解「别在内部 new 死」

核心不是容器写法,而是把依赖从外部递进来,便于替换和测试。

DI

调试习惯比记快捷键更重要

先复现、再缩小范围,最后才猜。日志和断点要配合使用。

调试