了解C

C#能编写那些程序

  1. Windows桌面应用程序

    桌面应用有自己独立的进程与操作系统进行消息通讯,操作系统对事件进行检测,传递给桌面应用进程,桌面应用进程对这些消息进行解释,处理后,把处理结果ui变化告诉操作系统,操作系统再展示出来。

  2. Web应用程序

    web应用程序,是浏览器通过http协议,与web服务器进行通讯,用户申请服务器的资源,服务器接收到消息后,对申请资源进行解析,然后把web页面描述通过网络发送回浏览器,展示给用户。

  3. 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语言之间实现互操作所需要的完备特征)
  • .NET Framework(.net framework类库就是一组DLL程序集集合,其中包含了大量定义好的类型,这些类都公开了一些功能. 下图更好的理解公共语言运行时,类库与应用程序之间的以及整个操作系统之间的关系)

C#与 .NET Framework的关系

C#代码的执行过程

  1. C#代码编译为中间语言
  2. 中间语言代码编译为本机代码(即GPU指令,整个过程由JIT编译器来完成)
  3. 执行本机代码(编译好的本机代码会被放置到一个缓存区中缓存,下次调用时将直接运行现有代码)

随机推荐

  1. Kali aircrack-ng wifi密码破解(暴力)

    1.kali linux安全渗透 2.工具aircrack-ng 3.ifconfig查看你的网卡信息,wlan0即无线网卡,注意,如果没有发现网卡可能是芯片不能被识别,建议选择网卡芯片为3037或r ...

  2. scrapy(创建scrapy工程)报错:“ ImportError:DLL load failed:找不到指定的模块”

    先要确定什么模块找不到 解决方法 windowa环境下加 ( --user) pip install -I cryptography --user

  3. 本地虚拟机搭建ES集群

    一.环境说明 1.物理机信息(主要): 内存:8G 系统/主频:Win7(旗舰版)64位/3.70GHZ 2.虚拟机信息: VMware Workstation 14 Pro 下载地址: 链接:htt ...

  4. 移动互联网APP测试流程及测试点

    1.2测试周期 测试周期可按项目的开发周期来确定测试时间,一般测试时间为两三周(即15个工作日),根据项目情况以及版本质量可适当缩短或延长测试时间.正式测试前先向主管确认项目排期. 1.3测试资源 测 ...

  5. FTPClient下载文件,程序假死问题

    [所属类包] org.apache.commons.net.ftp.FTPClient [现象描述] 这两天java项目中用到了FTP下载,像之前的项目写好代码,但是点击下载后,程序调试到下面这一行, ...

  6. 题解:luogu P3909

    这个题拖了快三个月了,只因缺个快速乘(气愤.jpg). 题目链接:P3909 异或之积 你确定没人用前缀和,后缀和吗? 蒟蒻想法与众不同! 我们实验\(A[]={1,2,3,4}\). 这里计不乘6时 ...

  7. Day8 - C - Largest Rectangle in a Histogram HDU - 1506

    A histogram is a polygon composed of a sequence of rectangles aligned at a common base line. The rec ...

  8. CF-diary

    (做题方式:瞟题解然后码) 1238E. Keyboard Purchase \(\texttt{Difficulty:2200}\) 题意 给你一个长度为 \(n\) 的由前 \(m\) 个小写字母 ...

  9. 加拿大Assignment写作如何靠第一句话来吸睛?

    最近有留学加拿大的同学咨询我们如何写好assignment的首句,关于话题背景的引入,如何才能自然精妙,让老师对后文充满期待.小编用一句话总结今天的策略:陈述一个跟话题直接相关的事实.“直接相关”,保 ...

  10. 深度解析标点符号在Report写作中的应用

    准确的标点符号和大写字母可以帮助Tutor准确理解report的意思.标点符号的某些方面,例如使用逗号,可以是一种个人风格,在引号中正确的标点符号是至关重要的.在前面的一些文章当中我们也给大家说了re ...