C# 学习笔记
记录我从语法基础走到写小工具过程中的理解与复盘。内容全部为个人学习笔记,不含任何商业推广。
async/await 学习笔记
异步方法、返回值与常见误用,按自己的理解重新整理一遍。
异步Task
面向对象基础复盘
封装、继承、多态在实际小项目里怎么落到代码里。
OOP
LINQ 常用写法备忘
筛选、投影、分组与自己习惯保留的几段示例。
LINQ
值类型和引用类型:我怎么建立直觉
用「盒子里是值还是门牌号」帮助自己判断赋值行为。
基础
字符串处理:少制造垃圾的小习惯
拼接、比较、判空这些小事,堆多了也会拖慢阅读和性能感。
string
异常:捕获是为了处理,不是为了吞掉
能预防的先预防;捕获后要么恢复,要么记录并转成明确结果。
异常
List 和 Dictionary,选型靠场景
按访问方式选集合,而不是先创建 List 再到处 Find。
集合
接口和抽象类:我怎么避免过度设计
先有真实变化点,再抽象;不为了「看起来专业」提前分层。
OOP
用 record 表达「就是一份数据」
传输对象、快照数据用 record,行为复杂的领域对象仍用 class。
recordDTO
读写文件时我反复提醒自己的事
路径、编码、释放资源,这三件事比 API 名称更值得小心。
IO
可空引用:把「可能没有」写进类型里
打开可空后早期会吵,但能逼自己处理空值路径。
nullable
依赖注入:先理解「别在内部 new 死」
核心不是容器写法,而是把依赖从外部递进来,便于替换和测试。
DI
调试习惯比记快捷键更重要
先复现、再缩小范围,最后才猜。日志和断点要配合使用。
调试