C#教程笔记【1】

1.1 微软平台的编程

1.编程语言使用visual Basic C C++

2.20世纪 90年代末 Win32API MFC COM(组件对象模型)

3.2002年发布.Net框架(多平台、行业标准、安全性)

1.2 C#发展史

image.png

C# 1.0 版:C# 1.0 版非常像 Java。

C# 版本 1.2

随 Visual Studio 2003 一起提供的 C# 版本 1.2。 它对语言做了一些小改进。

C# 2.0 版

从此以后事情变得有趣起来。 让我们看看 C# 2.0(2005 年发布)和 Visual Studio 2005 中的一些主要功能:

  • 泛型
  • 分部类型
  • 匿名方法
  • 可以为 null 的类型
  • 迭代器
  • 协变和逆变

除现有功能以外的其他 C# 2.0 功能:

  • getter/setter 单独可访问性
  • 方法组转换(委托)
  • 静态类
  • 委托推断

C# 3.0 版

  • 自动实现的属性
  • 匿名类型
  • 查询表达式
  • Lambda 表达式
  • 表达式树
  • 扩展方法
  • 隐式类型本地变量
  • 分部方法
  • 对象和集合初始值设定项

C#4.0

  • 动态绑定
  • 命名参数/可选参数
  • 泛型协变和逆变
  • 嵌入的互操作类型

C# 5.0 版

  • 异步成员
  • 调用方信息特性

C#6.0

  • 静态导入
  • 异常筛选器
  • 属性初始值设定项
  • Expression bodied 成员
  • Null 传播器
  • 字符串内插
  • nameof 运算符
  • 索引初始值设定项

其他新功能包括:

  • Catch/Finally 块中的 Await
  • 仅限 getter 属性的默认值

C#7.0

  • Out 变量
  • 元组和析构函数
  • 模式匹配
  • 本地函数
  • 已扩展 expression bodied 成员
  • Ref 局部变量和返回结果

其他功能包括:

  • 弃元
  • 二进制文本
  • 数字分隔符
  • ref 返回值和局部变量
  • 引发表达式

1.3 .Net框架

1.3.1

image.png

1.3.2 BCL基类库:Base Class Library,系统提供的类,也能自己编写:

通用基础类:文件操作、字符串操作……
集合类:列表、字典……
线程同步类:多线程程序。
XML类:创建,读取以及操作XML文档。


image.png

1.3.3 编译过程

  1. .Net源文件包括C#、VB 等……
  2. 编译产生程序集(dll文件或者exe):程序集CIL(公共中间语言)在CLR(公共语言运行库,就是.Net运行环境)中运行;类型信息;安全信息。
    *编程语言=编程指令

1.3.4 运行过程

image.png

使用JIT编译器将程序集编译成本机代码。

image.png

.Net兼容的编译器:


image.png

CLR:公共语言运行库,就是.Net运行环境

image.png

托管代码:就是我们编写的.Net的代码,编译之后产生程序集。
JIT:即时编译器。
非委托代码:如win32 C/C++
参考文章:
https://blog.csdn.net/love_hot_girl/article/details/82974810

你可能感兴趣的:(C#教程笔记【1】)