1.C#,.Net和ASP.Net的区别:
C#(Csharp): .net平台下的一种语言;注:(其他语言也可以开发.Net程序)
.net : 是一个平台,提供运行.net程序,所需要的一种虚拟机,内库等!
Asp.net : 在.net环境下开发网站的技术。
注:.Net可以通过mono跨平台进行开发
2.开发工具:
1.Visual Studio 是微软官方提供的一种开发工具
2.运行.Net程序 需要依靠 .Net Framework(安装.Net Framework即可)。
3..Net和Visual Studio高版本兼容低版本
3.用记事本编写程序:
1.编写好程序后后缀名改为(.cs)
2.
3.在cmd命令提示符中 打开(cd:)编写的的文件所在的地方C:WindowsMicrosoft.NETFrameworkv4.0.30319(注:版本号)csc.exe 文件名.cs(生成可执行文件exe)
4.注:.Net程序运行必须依赖于.Net Framework ,无法独立运行。生成的exe、dll不是普通的“原生”的,而是叫“程序集”,是“MSIL/IL”二进制字节码。.Net Framework中的CLR是运行.Net程序的核心 Linux、IOS等非Windows系统下也可以运行.net程序:通过Mono。Android、IOS上也可以借助于Xamarin使用C#开发手机程序。(Linux 稳定;c sharp 开发效率高)
4.Visual Studio的使用:
注:大小写敏感,用英文字符。
解决方案>项目>代码(类)
(.csproj)项目文件
(.sln)打开解决方案下的所有文件
Console.ReadKey()//等待用户输入一个字符
5.注释:
1.注释分为单行注释 //
2.多行注释 /* .......... */
3.文本注释 ///
6.反编译及反编译的优化:
1.反编译工具:Reflector(比较早的一款反编译工具)
ILSpy(以后尽量用这款编译工具)
反编译:
1.注释的内容不能被反编译出来;
2.通过C#写的程序才能被反编译出来;(用一些CC++等编程语言写的程序还原不会来)。
3.编译器优化:优化掉无用变量(没有被使用过的变量)及(例:int i=2+7,会自动优化成int i=9)。
7.扩展:
1.CLR(Common Language Runtime,公共语言运行时)
功能:主要负责安全、内存管理、程序运行以及异常处理
2.在.NET Framework中编写的应用程序的源代码
最初被编译为一种名为MSIL的中间语言。该初始编译由特定于语言的命令行编译器(Visual Studio或者其他生成工具)来执行。而当执行应用程序时通常会执行二次编译。二次编译将会获取中间语言并将其编译为可在操作系统中运行的可执行代码。二次编译被称为JIT(just-in-time,即时)编译。
注:3.CLI(Common Language Infrastructure,公共语言基础结构)、CTS(Common Type System,公共类型系统)、CLS(Common Language Specification,公共语言规范)和VES(Virtual Execution System,虚拟执行环境)
4.Mono
概念:Mono是一个在非Windows操作系统中提供C#编译器和CLR的开源项目
MonoDevelop:随同Mono一起的是名为MonoDevelop的开源IDE,该IDE作为SharpDevelop IDE的一个端口一起启动。MonoDevelop最初是一个允许在Linux上进行Mono开发的项目,但随着MonoDevelop2.2的发布,它也具备了在Mac、Windows以及其他非Linux UNIX平台上用Mono进行开发的能力。