元旦整理书架发现一本小册子——《C#精髓》中国出版社2001年出版的,粗略翻了下关于C#的知识点挺全的虽然内容谈得很浅也有很多过时的内容(话说这本书是我在旧书店花5块钱淘的)我保留原有章节并删减部分过时和不重要内容添加一些自己觉得重要的内容,具体目录如下:


第一章   简介

什么是.NET、CLI、CLR、CIL、IL、BCL?

什么是JIT和GC,JIT和GC是如何工作的?

第二章 C#语言参考

标识符、类型、变量、表达式与运算符、语句、类型组织、继承、访问修饰符、类和结构、接口、数组、枚举、委托、事件、异常、特性(Attribute)、不安全代码和指针(unsafe code)、预处理指令、XML文档

第三章 .NET 框架编程

公用类型、数学(System.Math)、字符串(String 和 StringBuilder)、集合(非泛型与泛型)、正则表达式、输入输出、网络(System.Net)、线程(System.Threading)、反射、GC、平台互操作

第四章 BCL 综述

核心类型、文本、集合、流(System.Stream)、网络、线程、安全、反射、序列化、WebService、诊断和调试

第五章 一些.NET 工具

csc.exe、ILDasm.exe、.NET Reflector、wsdl.exe(WebService 代理类生成工具)、


第一章  简介

Q: 什么是.NET

A: .NET即.NET Framework 是支持生成和运行下一代引用程序和XML Web Services 的内部 Windows 组件。(这是微软MSDN给的定义,是不是看得很绕,对我们程序员而言.NET 是微软开发的一个支持 CS、BS等的软件开发平台)。

在帖一张MSDN上解释.NET Framework 的图

那么用 .NET 能干嘛?主要有以下几个方面的应用:

1、控制台程序

2、Windows GUI 应用程序(俗称的 Windows Forms)

3、Windows Presentation Foundation应用程序(俗称的WPF)

4、ASP.NET 应用程序

5、Web 服务(也就是 ASP.NET Web  Service)

6、Windows 服务

7、Windows Communication Foundation 服务(俗称 WCF)

8、Windows Workflow Foundation (即WF,俗称工作流)

Q: 什么是 CLI、CLR、CIL、IL、BCL? 这几个问题放在一起回答

A:

我们知道.NET 是跨平台的和开源的(感谢微软选择开源),那.NET 是如何跨平台的呢?先看一幅图

看明白这幅图,上面的问题也应该有答案了。

CLI(Common Language Infrastructure)公共语言架构,CLI包含CTS(公共类型系统)和公共语言规范(CLS)和CIL(公共中间语言),各个支持.NET平台的操作系统都要实现CLI。

CLR(Common Language Runtime)公共语言运行时,它将CIL(或称IL)编译为本机代码(这个过程称为JIT)

CIL(Common Intermediate Language)公共中间语言(有时也简称IL)是各个.NET兼容语言(如C#、VB.NET、F#等)第一次编译的产物

BCL(Base Class Library)基础类库,可用于所有.NET兼容语言的基础库。对于C#而言它几乎灭有任何内置库,C#使用BCL就可以了。

未完

C#基础整理的更多相关文章

  1. 机器学习 —— 基础整理(六)线性判别函数:感知器、松弛算法、Ho-Kashyap算法

    这篇总结继续复习分类问题.本文简单整理了以下内容: (一)线性判别函数与广义线性判别函数 (二)感知器 (三)松弛算法 (四)Ho-Kashyap算法 闲话:本篇是本系列[机器学习基础整理]在time ...

  2. MySQL基础整理(一)之SQL基础(未完成)

    大家好,我是浅墨竹染,以下是MySQL基础整理(一)之SQL基础 1.SQL简介 SQL(Structure Query Language)是一种结构化查询语言,是使用关系模型的数据库应用语言. 2. ...

  3. nutch的一些基础整理

    nutch的一些基础整理 原创 2015年03月22日 18:18:01 标签: nutch / 240 编辑 删除 一.关于配置文件: nutch-default.xml:爬虫的默认配置.在${nu ...

  4. [转帖]nginx基础整理

    nginx基础整理 https://www.cnblogs.com/guigujun/p/6588545.html 目录结构如下: Nginx基础知识 Nginx HTTP服务器的特色及优点 Ngin ...

  5. JAVA基础整理-集合篇(一)

    集合作为JAVA的基础知识,本来感觉自己理解的很清楚了,但是在最近的一次面试中还是答得不尽如人意!再次做一下整理,以便加深理解以及随时查阅. 首先,java.util包中三个重要的接口及特点:List ...

  6. 关于JAVA面向对象基础整理以及个人的理解(适合初学者阅读)

    JAVA的基础语法等都跟C有很大的相似之处,所以这里就不多啰嗦了.直接从数组开始. 数组: 1.声明 int [] a; 在声明的过程中,并没有分配空间给数组.我们可以在声明的同时,用new来分配相应 ...

  7. HTML5游戏开发技术基础整理

    随着HTML5标准终于敲定.HTML5将有望成为游戏开发领域的的热门平台. HTML5游戏能够执行于包含iPhone系列和iPad系列在内的计算机.智能手机以及平板电脑上,是眼下跨平台应用开发的最佳实 ...

  8. js数组基础整理

    首页: 主要整理了一下数组中常用的一些基础知识,代码都是自己手敲,有不对的地方希望能指出,目前只有4篇,后续会不断的增加这一板块. 由于少于100字不能发所以把一些最基本的创建数组也写上. // 创建 ...

  9. 机器学习 —— 基础整理(四)特征提取之线性方法:主成分分析PCA、独立成分分析ICA、线性判别分析LDA

    本文简单整理了以下内容: (一)维数灾难 (二)特征提取--线性方法 1. 主成分分析PCA 2. 独立成分分析ICA 3. 线性判别分析LDA (一)维数灾难(Curse of dimensiona ...

随机推荐

  1. ARP局域网欺骗工具编写

    每台主机都设有一个ARP高速缓存(ARP cache),里面有本局域网上各主机和路由器的IP地址和硬件地址的映射表,这些都是该主机目前知道的一些地址. 当主机A要向本局域网上的某个主机B发送IP数据报 ...

  2. 如何使用Visual Studio 2013 创建Azure云应用

    创建 Azure 云服务 Azure 云服务包括执行应用程序所需操作的角色.当你将云服务发布到 Azure 时,每个角色将在云中的虚拟机上运行.有关如何开发 Azure 云服务的详细信息. 创建 Az ...

  3. HW2.22

    import java.util.Scanner; public class Solution { public static void main(String[] args) { Scanner i ...

  4. JVM 进行线程同步背后的原理

    前言 所有的 Java 程序都会被翻译为包含字节码的 class 文件,字节码是 JVM 的机器语言.这篇文章将阐述 JVM 是如何处理线程同步以及相关的字节码. 线程和共享数据 Java 的一个优点 ...

  5. Oracle数据库自我总结(转)

    Oracle数据库自我总结 1.Oracle连接远程服务器,需要安装客户端的同时需要覆盖D:\oracle\product\10.2.0\db_1\NETWORK\ADMIN\tnsnames.ora ...

  6. PC-改变电脑的CPU,内存,硬盘大小!

    如何修改CPU频率及内存容量和硬盘大小 改变电脑的CPU,内存,硬盘大小!--------------------------------------------------------------- ...

  7. GitHub初次使用记录(一)

    1.从GitHub上克隆或者复制别人的档案库:

  8. jQuery获取鼠标移动方向

      <!doctype html>   <html>       <head>   <meta http-equiv="Content-Type&q ...

  9. java_method_获取数据库中列表的第一行第一列的int值

    List<String[]> counts=DataBaseManage.getInstance().executeQuery(sql, 1, list); int count=0; if ...

  10. opencv基础知识-videowriter

    一.前言-简介 在试验中需要常常将实验结果进行保存,在opencv中提供很好用的录制视频的句柄,也可称之为类-videowriter. videowriter应用那是相当的简单,总之分为三步: //声 ...