了解C#
了解C
C#能编写那些程序
Windows桌面应用程序
桌面应用有自己独立的进程与操作系统进行消息通讯,操作系统对事件进行检测,传递给桌面应用进程,桌面应用进程对这些消息进行解释,处理后,把处理结果ui变化告诉操作系统,操作系统再展示出来。
Web应用程序
web应用程序,是浏览器通过http协议,与web服务器进行通讯,用户申请服务器的资源,服务器接收到消息后,对申请资源进行解析,然后把web页面描述通过网络发送回浏览器,展示给用户。
Web服务
Web服务实现分布式应用程序的一种方式.
以上只是列出三种常用的应用程序
原文链接
什么是 .NET Framework
.NET Framework就是应用程序运行时的执行环境,为应用程序的执行提供一下几种服务.
- 全面的类库
- 内存管理
- 通用类型系统(CTS)
- CTS定义了可以在中间语言(在编译器将源代码编译为目的码的过程中,会先将源代码转换为一个或多个的中间表述,以方便编译器进行最佳化,并产生出目的机器的机器语言)中使用的预定义数据类型
- 开发结构和技术 (.NET Framework提供特定应用程序所需的库,如Web应用程序的ASP.NET技术)
语言互操作性 (面向 .NET Framework的语言编译器都提供了生成中间语言代码的机制,这种机制使得不同的语言之间进行互操作成为可能)
.NET Framework的组成
- 公共语言运行时(CLR包含CTS,CLS二个组成部分,我们将受CLR管理的代码称为
托管代码,反之为非托管代码)- 通用类型系统(CTS 用于解决不同语言之间数据类型不同的问题.例如C#整型是
int,vb.net中却是Integer)

- 公共语言规范(CLS是一种最低的语言标准,它制定了一 .NET 平台为目标的语言所必须支持的最小特征,以在及某一种语言与其他.NET语言之间实现互操作所需要的完备特征)

- 通用类型系统(CTS 用于解决不同语言之间数据类型不同的问题.例如C#整型是
.NET Framework(.net framework类库就是一组DLL程序集集合,其中包含了大量定义好的类型,这些类都公开了一些功能. 下图更好的理解公共语言运行时,类库与应用程序之间的以及整个操作系统之间的关系)

C#与 .NET Framework的关系

C#代码的执行过程
- C#代码编译为中间语言
- 中间语言代码编译为本机代码(即GPU指令,整个过程由JIT编译器来完成)
- 执行本机代码(编译好的本机代码会被放置到一个缓存区中缓存,下次调用时将直接运行现有代码)
随机推荐
- vue导航守卫和axios拦截器的区别
在Vue项目中,有两种用户登录状态判断并处理的情况,分别为:导航守卫和axios拦截器. 一.什么是导航守卫? vue-router 提供的导航守卫主要用来通过跳转或取消的方式守卫导航.(在路由跳转时 ...
- 吴裕雄 Bootstrap 前端框架开发——Bootstrap 表单:内联表单
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- markdown基本语法教程
标题 一级标题 二级标题 三级标题 以此类推,总共六级标题,建议在警号后面加一个空格,这是最标准的markdown语法 列表 在markdown下: 列表的显示只需要在文字前加上-.+或*即可变为无序 ...
- Js 获取当前日期时间及其它操作(转)
Js获取当前日期时间及其它操作 var myDate = new Date();myDate.getYear(); //获取当前年份(2位)myDate.getFullYear(); ...
- easyui学习索引页
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>复 ...
- java中将图片上传到配置好的ftp服务器上
测试用例: @Test public void testFtp() throws Exception { //1.连接ftp服务器 FTPClient ftpClient = new FTPClien ...
- wdcp升级php5.8到php7.1.12后安装gitlab
.安装依赖包 sudo yum install -y curl policycoreutils-python openssh-server cronie .使用清华大学开源软件镜像源安装 vim /e ...
- 【LOJ2127】「HAOI2015」按位或
题意 刚开始你有一个数字 \(0\),每一秒钟你会随机选择一个 \([0,2^n-1]\) 的数字,与你手上的数字进行或操作.选择数字 \(i\) 的概率是 \(p[i]\) . 问期望多少秒后,你手 ...
- STL中的全排列实现
permutation: 在遇到全排列问题时,在数据量较小的情况下可以使用dfs的做法求得全排列,同时我们也知道在STL中存在函数next_permutation和prev_permutation,这 ...
- 1_01_MSSQL课程_基础入门2
1.数据库的迁移方案 ->分离 附加 ->权限问题: ->启用Administrator账号 ->把数据库文件放到默认的数据库文件存放目录. ->数据库文件兼容级别,设置 ...