C#基础整理
元旦整理书架发现一本小册子——《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#基础整理的更多相关文章
- 机器学习 —— 基础整理(六)线性判别函数:感知器、松弛算法、Ho-Kashyap算法
这篇总结继续复习分类问题.本文简单整理了以下内容: (一)线性判别函数与广义线性判别函数 (二)感知器 (三)松弛算法 (四)Ho-Kashyap算法 闲话:本篇是本系列[机器学习基础整理]在time ...
- MySQL基础整理(一)之SQL基础(未完成)
大家好,我是浅墨竹染,以下是MySQL基础整理(一)之SQL基础 1.SQL简介 SQL(Structure Query Language)是一种结构化查询语言,是使用关系模型的数据库应用语言. 2. ...
- nutch的一些基础整理
nutch的一些基础整理 原创 2015年03月22日 18:18:01 标签: nutch / 240 编辑 删除 一.关于配置文件: nutch-default.xml:爬虫的默认配置.在${nu ...
- [转帖]nginx基础整理
nginx基础整理 https://www.cnblogs.com/guigujun/p/6588545.html 目录结构如下: Nginx基础知识 Nginx HTTP服务器的特色及优点 Ngin ...
- JAVA基础整理-集合篇(一)
集合作为JAVA的基础知识,本来感觉自己理解的很清楚了,但是在最近的一次面试中还是答得不尽如人意!再次做一下整理,以便加深理解以及随时查阅. 首先,java.util包中三个重要的接口及特点:List ...
- 关于JAVA面向对象基础整理以及个人的理解(适合初学者阅读)
JAVA的基础语法等都跟C有很大的相似之处,所以这里就不多啰嗦了.直接从数组开始. 数组: 1.声明 int [] a; 在声明的过程中,并没有分配空间给数组.我们可以在声明的同时,用new来分配相应 ...
- HTML5游戏开发技术基础整理
随着HTML5标准终于敲定.HTML5将有望成为游戏开发领域的的热门平台. HTML5游戏能够执行于包含iPhone系列和iPad系列在内的计算机.智能手机以及平板电脑上,是眼下跨平台应用开发的最佳实 ...
- js数组基础整理
首页: 主要整理了一下数组中常用的一些基础知识,代码都是自己手敲,有不对的地方希望能指出,目前只有4篇,后续会不断的增加这一板块. 由于少于100字不能发所以把一些最基本的创建数组也写上. // 创建 ...
- 机器学习 —— 基础整理(四)特征提取之线性方法:主成分分析PCA、独立成分分析ICA、线性判别分析LDA
本文简单整理了以下内容: (一)维数灾难 (二)特征提取--线性方法 1. 主成分分析PCA 2. 独立成分分析ICA 3. 线性判别分析LDA (一)维数灾难(Curse of dimensiona ...
随机推荐
- iOS开发——GCD多线程详解
GCD多线程详解 1. 什么是GCD Grand Central Dispatch 简称(GCD)是苹果公司开发的技术,简单来说,GCD就是iOS一套解决多线程的机制,使用GCD能够最大限度简化多线程 ...
- A题进行时--浙大PAT 1001-1010
pat链接:http://pat.zju.edu.cn 1 #include<stdio.h> 2 int main(){ 3 int a,b; 4 int c; 5 while(scan ...
- MYSQL存储过程中的IN、OUT和INOUT
MYSQL存储过程中的IN.OUT和INOUT,不能简单理解为一个方法的参数和返回值,而是面向整个过程上下文变量的. 一.MySQL 存储过程参数(in) 基本可以理解为传入function的参数,而 ...
- Linux下安装mysql5.6.11(找点有用的信息太费劲)(转)
Linux下安装mysql5.6.11(找点有用的信息太费劲) (2013-04-25 10:25:09) 1.申请阿里云Linux服务器 昨天在阿里云申请了一个免费试用5天的Linux云服务 ...
- HW3.24
public class Solution { public static void main(String[] args) { int number = (int)(Math.random() * ...
- Linux的五个查找命令:find,locate,whereis,which,type
使用电脑的时候,经常需要查找文件. 在Linux中,有很多方法可以做到这一点.国外网站LinuxHaxor总结了五条命令,你可以看看自己知道几条.大多数程序员,可能经常使用其中的2到3条,对这5条命令 ...
- 通过Mouse Without Borders在多台机器上共享键盘鼠标
博客搬到了fresky.github.io - Dawei XU,请各位看官挪步.最新的一篇是:通过Mouse Without Borders在多台机器上共享键盘鼠标.
- Windows, Eclipse下开发Heritrix 3.1 (一)环境搭建
国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html内部邀请码:C8E245J (不写邀请码,没有现金送)国内私 ...
- Java生成word文档
itext-rtf-2.1.7.jar,下载地址:http://download.csdn.net/detail/xuxu198899223/7717727 itext-2.1.7.jar 下载地址: ...
- css z-index详解
写css z-index的时候经常会出现很多莫名其妙的问题,下面对z-index属性做彻底的剖析,本文参考了<一个css中z-index的用法>,并做了很多demo,方便了解z-index ...