深入 C# 语言规范系列视频教程

  • 共 17 个视频教程

第17期-使用 Index 和 Range 结构体

  • 2022/11/9 21:28 | 21分钟
  • 免费

从 C# 8.0 开始,可以使用更加优雅的方式访问数组元素和裁切数组,使用 Index 结构体顺序或倒序访问数组元素,使用 Rang 结构体裁切数组范围,使用更优雅的方式截取字符串,反编译查看实现原理。

4410次播放

第16期-深入理解迭代器

  • 2022/6/22 23:02 | 63分钟
  • 免费

迭代器是一种设计模式,提供一种顺序访问一个聚合对象中各个元素的方法,而又无须暴露该对象的内部表示,反编译 foreach 语句的原理,理解 IEnumerable 和 IAsyncEnumerable 迭代器接口原理,使用迭代器方法的枚举源,同步迭代器和异步迭代器,深入理解迭代器。

8090次播放

第15期-弃元运算符

  • 2022/6/3 12:11 | 13分钟
  • 免费

弃元是一种占位符变量,弃元使代码意图更加明确,可以增强其可读性和可维护性,元组和对象析构中的弃元运算符,模式匹配中的弃元运算符,方法 OUT 参数占位符弃元,独立弃元占位符,下划线也是有效标识符。

4429次播放

第14期-可空的引用类型

  • 2022/5/31 23:09 | 76分钟
  • 免费

可空的引用类型可帮助开发者在编译期间发现潜在的异常,在项目和源码级别开启可空的引用类型支持,可空类型的判断,包容运算符,合并运算符,条件运算符,使用分析器检查可空性,使用特性注解的方式表达可空意图,改变分析器行为,可空的引用类型在 EF Core 中的应用。

8608次播放

第13期-可为空的值类型

  • 2022/5/29 11:54 | 27分钟
  • 免费

需要表示基础值类型的未定义值时,使用可空的值类型,声明和赋值,检查可为空值类型的实例,从可为空的值类型转换为基础类型,提升的运算符,如何确定可为空的值类型。

4130次播放

第12期-优雅的字符串内插法

  • 2022/5/11 23:02 | 76分钟
  • 免费

可格式化对象转换接口,字符串内插法格式,字符串对齐,格式化字符串,内插逐字字符串和转义序列,创建特定区域性字符串,使用多引号原始字符串文本,内插字符串编译原理,优雅的字符串拼接方案,数据库连接字符串拼接,路径拼接和路径合并,网址查询参数拼接技巧,编写自定义内插字符串处理程序。

9069次播放

第11期-使用模式匹配简化代码

  • 2022/4/29 20:57 | 47分钟
  • 免费

高效编写优雅的逻辑判断语句,不仅改善了代码的性能,更重要的是还提高了代码的可读性,通过最全面的示例展示模式匹配的各种语法规则,声明和类型模式,常量模式,关系模式,逻辑模式,属性模式,元组位置模式,关于 var 模式,弃元模式,带括号模式。

8106次播放

第10期-面向对象的类设计

  • 2022/4/21 22:44 | 62分钟
  • 免费

面向对象的基本原则,抽象是将实体的相关特征和交互建模为类,封装的目的是隐藏对象的内部状态和功能,并仅允许通过一组公共函数进行访问,继承可根据现有抽象创建新抽象的能力,多态性是指跨多个抽象以不同方式实现继承属性或方法的能力,通过银行卡开户示例理解面向对象设计的原则。

9103次播放

第09期-细说记录类型的用法

  • 2022/4/19 22:50 | 58分钟
  • 免费

理解记录类型,引用类型记录和值类型记录,限制记录类型属性的读写,简化位置记录类型,记录类型的序列化,不可变性,值相等性,非破坏性拷贝,内置显示格式设置,记录类型的继承,记录类型的元组析构器,通过反编译探索记录类型。

9144次播放

第08期-深入理解元组类型

  • 2022/4/14 7:58 | 60分钟
  • 免费

元组的概念,声明元组,探索元组的语法糖与反编译结果,理解 ValueTuple 与 Tuple 的不同和之间的相互转换,元组作为方法的返回值,元组的赋值与比较,析构元组和别名,自定义类型的元组析构器,其实很多系统类型本身都支持元组析构方法,记录类型默认提供析构方法。

2986次播放

第07期-细说枚举类型

  • 2022/4/6 22:35 | 53分钟
  • 免费

枚举类型是由基础整型数值类型的一组命名常量定义的值类型,定义枚举,实例化枚举,具有位标志的枚举类型,按位运算,枚举类型转换,枚举元素判断,枚举格式化字符串,访问枚举的成员,为枚举类型添加方法,枚举类型的界面显示与描述扩展,多语言显示实现,枚举设计准则。

9424次播放

第06期-布尔类型和字符类型

  • 2022/4/1 21:15 | 26分钟
  • 免费

布尔类型结构解析,布尔值转换为字符串,字符串转换为布尔值,值比较,自定义格式化提供程序,布尔常量字符串表示,其它类型转为布尔类型,将布尔值用作二进制值,字符类型与字符串的关系,学习字符结构所提供的方法。

9076次播放

第05期-基本数值类型系统

  • 2022/3/31 21:19 | 54分钟
  • 免费

合理使用数据类型可有效利用内存空间,整形数值类型,浮点型数值类型,数值类型的静态常量,类型转换系统,数值与字节,字节与字符串,运算符支持,相等性比较,标准数字格式字符串,复合格式字符串,进制表示和转换,隐式类型由后缀确定,显式启用溢出检查。

9126次播放

第04期-理解C#中的类型系统

  • 2022/3/23 23:23 | 33分钟
  • 免费

强类型语言,变量和常量都具有一个特定的类型,理解值类型和引用类型的继承图,值类型包含类型的实例,引用类型包含对类型实例的引用,在内存分配上,值类型存储在栈上,赋值即拷贝副本,引用类型存储在堆上,也称为托管堆,赋值即引用,在内存回收上,值类型堆栈返回即回收,引用类型需要 GC 垃圾回收器。

10153次播放

第03期-使用命名空间整理类型

  • 2022/3/8 21:16 | 53分钟
  • 免费

使用命名空间组织类型,使用嵌套关系定义命名空间,为文件中定义的所有类型声明一个命名空间,命名空间别名,使用静态修饰符导入指定的类型,基于项目全局引入命名空间,指定多个修饰符的命名空间,命名空间别名限定符,隐式引用命名空间,微软命名空间规范准则,使用 API 预览器查找指定类型所在的程序集和命名空间。

9607次播放

第02期-C#语言的反编译与代码保护

  • 2021/12/16 23:00 | 48分钟
  • 免费

类型和变量,值类型和引用类型,程序的执行结构,使用 ILDASM 查看 IL 中间语言,转储 IL 中间语言,直接修改 IL 代码程序逻辑,使用 ILASM 将 IL 中间语言生成为可移植可执行文件,关于 .NET 探秘 MSIL 权威指南,学习 ILSPY 反编译工具,使用 Dotfuscator 工具全方位保护应用程序,推荐命令行解析器开源库。

12398次播放

第01期-C#语言的体系与编译过程

  • 2021/12/16 23:00 | 49分钟
  • 免费

学习新式的,面向对象的,类型安全的编程语言,理解 C# 语言与 .NET 体系结构,从程序启动说起,新的 C# 模板生成顶级语句,深入代码编译过程,研究 MSBuild 构建,单文件编译,源代码生成器能够在编译用户代码时进行检查,并动态生成新的 C# 源文件,以添加到用户的编译结果中。

12399次播放