c#简介:

C# 的发音为 “C Sharp” 是一门由微软开发并获得了 ECMA (欧洲计算机制造商协会)和 ISO (国际标
准组织)批准的现代的、通用的、面向对象的编程语言。
C# Anders Hejlsberg 及其团队在 .Net Framework 的开发过程中开发,属于 .Net Framework 的一部
分,可以用来编写 .Net 应用程序。 C# 是专为 CLI (公共语言基础结构)设计的, CLI 由可执行代码和
运行时环境组成,允许在不同的计算机平台和体系结构上使用各种高级语言。
C# 之所以能称为一门被广泛应用的编程语言,原因有以下几点:
C# 是一种现代的通用的编程语言
C# 是面向对象的;
C# 是面向组件的;
C# 简单易学;
C# 是一种结构化语言;
使用 C# 开发效率很高;
C# 可以在各种计算机平台上进行编译;
C# .Net Framework 的一部分
借助 C# 编程语言,我们可以开发不同类型且安全可靠的应用程序,例如:
桌面应用程序;
网络应用程序;
分布式应用程序;
Web 服务应用程序;
数据库应用程序等。

.NET Framework/.NET Corer

.NET Framework 是微软公司推出的完全面向对象的软件开发与运行平台。 .NET Framework 具有两个主
要组件 : 公共语言运行时 (Common Language Runtime, CLR) 和类库。
公共语言运行时 : 公共语言运行时 (CLR) 负责管理和执行由 .NET 编译器编译产生的中间语言代码。由于共
语言运行库的存在,解决了很多传统编译语言的一些致命缺点,如垃圾内存回收、安全性检查等。
类库 : 类库我们比较好理解,就好比一一个大仓库里装满了工具。类库里有很多现成的类,可以拿来直接
使用。例如,文件操作时,可以直接使用类库里的 IO 类。
.NETCore 是适用于 Windows Linux macOS 的免费、开源托管的计算机软件框架 , 两者最直接的不同
点便是他们的运行环境, .NET Framework 只能在 Windows 环境下运行,但 .NET Core 是跨平台的

编译

C# 语言是一种编译型语言,它的编译过程包括以下几个步骤:
1. 语法分析( Parsing ): C# 源代码在被编译之前,需要进行语法分析,将源代码转换成语法树。语
法分析器会检查源代码是否符合 C# 语言的语法规范,如果有语法错误,则会发出编译错误提示。
2. 语义分析( Semantic analysis ):在语法和词法分析完成后,编译器会进行语义分析,检查源代码
是否符合 C# 语言的语义规范。语义分析器会检查变量的类型、作用域、函数调用等等,如果存在语
义错误,则会发出编译错误提示。
3. 代码优化( Code optimization ):在语义分析完成后,编译器会进行代码优化,使生成的目标代
码更加高效和优化。代码优化包括删除死代码、常量折叠、函数内联等等。
4. 代码生成( Code generation ):最后一步是代码生成,编译器会将优化后的中间代码转换成目标
代码(通常是机器码),并将目标代码输出到磁盘上的可执行文件中。
这些步骤中的前三个是编译过程中最为重要的部分,它们保证了程序的正确性和可靠性,同时也为
后面的代码优化和生成提供了必要的信息。

创建C#工程

开始使用 -> 创建新的项目 -> 模板选择: C# 控制台应用 (.net framework) -> 创建
第二种方式 :

解决方案和项目的关系

1. 解决方案和项目都是 VS 提供的用于管理应用程序的容器
2. 一个解决方案可以包含一个或多个项目
3. 这些项目可以利用解决方案 连接在一起 统一编译统一更新
工程目录
1. bin
bin 目录用来保存项目生成后程序集,它有 Debug( 调试版本 ) Release( 发布版本 ) 两个版本,分别对应
的文件夹为 bin/Debug bin/Release ,这个文件夹是默认的输出路径,我们可以通过:项目属性 —>
置属性 —> 输出路径来修改。
在添加引用时, .NET 会记录添加的引用绝对路径,这些设置保存在 每用户 文件中,
Solution.csproj.user ),可以通过记事本打开查看。也可以在:项目属性 —> 通用属性 —> 引用路径里
面查看。如果设置复制到本地为 true ,在生成项目时会自动拷贝该 DLL 到项目生成文件夹中 (bin 目录 )
否则不会拷贝。在生成项目时,对所添加的引用的是绝对路径,而在运行时程序集默认只在当前所在的
路径下去找。要修改引用的路径,必须通过编程的方法去实现。使用 References 对象。
bin\debug\ 目录中有两个文件,除了要生成的 .exe .dll 文件外,还有个 .pdb 文件,这个 .pdb 文件中
就记录了代码中的断点等调试信息。一般移植或者打包程序只需要 Debug 文件即可,里面包含 .exe
件、 .dll 文件、 .ini 文件、 .xml 文件、 .pdb 文件、 .lib 文件、 .config .manifest 文件、 .png 文件、 .gif
件、 .cur 文件、自定义文件夹等。
\bin\release\ 目录下只有一个 .exe .dll 文件, Release 模式下不包含调试信息,并对代码进行了优
化。
2. obj
obj 目录是用来保存每个模块的编译结果,在 .NET 中,编译是分模块进行的,编译整个完成后会合并为
一个 .DLL .EXE 保存到 bin 目录下。因为每次编译时默认都是采用增量编译,即只重新编译改变了的模
块, obj 保存每个模块的编译结果,用来加快编译速度。是否采用增量编译,可以通过:项目属性 —>
置属性 —> 高级 —> 增量编译来设置。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值