☆:为重点
★:为科普
△:注
▲:术语

前言概述  

☆一门语言必须包括诸如异常处理,无用单元收集,可扩展数据类型以及代码安全性等特征
☆C#特性:简单性,面向对象,模块性,灵活性,简明性

☆C#面向对象的
封装:将功能放在单个组件中;
继承:是一种将已有的代码和功能扩展到新的程序和组件中的结构化方式
多态:适应所需完成工作的能力

☆C#是模块化的
▲术语:程序块—被称为类的方式编写,类包含被称为成员方法的例程,这些类和方法可以在其他应用程序被重用。

通过给类的方式传递信息,可以创建出很有用的,可以重用的代码。

☆C#创建程序时的步骤:
1.确定目标
2.确定编写程序的采用的方法
3.创建程序,已解决问题
4.运行程序,以查看结果
小解:3和4两步成为程序开发周期

☆创建源代码
▲术语:计算机执行要完成的任务的语句和命令

☆使用编译器
▲术语:编辑器是一个可用于输入和保存源代码的程序

★扩充 编辑器种类:
一@CodeWrite:一个为ASP,XML,HTML,C#,Ped,python等提供特殊支持的编辑器
二@EditPlus:一种Internet—就绪(ready)的文本编辑器,HTML编辑器和Windows环境下的程序员编辑器。可以代替NetePad,同时为Web页开发人员和程序员提供许多强大的特性,包括使用不同的颜色显示代码
三@JEdit:用于java的开发源代码(Open—Source)编辑器,也可用于C#,能够以不同颜色显示代码
四@Douncan Chen 开发Poorman IDE:提供了一个突显C#和VB,NET语法的编辑器,同时让你能够运行编辑器和捕获控制台输出,因此你无需离开Pooman IDE

☆执行C#程序
▲术语:C#程序将在通用语言运行阶段环境(clr)中运行着一位这你如果创建一个可执行的C#语言程序,并试图在一个没有安装CLR或兼容运行阶段环境的机器上运行它,则将无法执行。可执行意味着程序可以被计算机执行或运行。
△注:创建运行阶段环境程序的好处在于可移植性
▲术语:如果希望程序的执行速度尽可能快,则需要创建一个真正的可执行程序。计算机使用的是数字(二进制)指令,这杯成为机器语言。程序必须从源代码被翻译机器语言,这项工作是由一种叫做编译器的程序完成的。编译器利用源代码生成一个磁盘文件,该文件中包含与源代码语句对应的机器语言指令。
△注:对于C#,编译器并不生产机器语言文件,而是生成一个中间语言(il)文件,由于这种文件不能被计算机直接执行,因此需要进一步翻译或编译,以便计算机能直接执行它,这项工作是有CLR或其他兼容的C#运行阶段环境完成的
△注:CLR首先对IL文件做最终的编译,即将可移植的IL代码转换为计算机能够理解并运行的语言(机器语言)。CLR实际上只编译程序中将被使用的部分这样可以节省时间。另外,当IL文件中的某部分转换为汇编语言后,便无需再次进行编译,因为编译后的代码被保存,以后该部分被执行时,将直接使用编译后的代码。

☆编译C#源代码
▲术语:编译后,将得到一个IL文件。如果你查看对应目录中的文件清单,将发现一个扩展名。exe的新文件,其文件名和源代码文件相同。该文件是编译后的程序,称为组合体能在CLR上运行。组合体文件包含CLR为执行程序所需的所以信息。
△注:通常有两种可交付使用的C#程序:可执行程序和库。

 第一天

…………未完待续

看书记笔记 书名21天学C#的更多相关文章

  1. Effective STL 学习笔记 Item 21:Comparison Function 相关

    Effective STL 学习笔记 Item 21:Comparison Function 相关 */--> div.org-src-container { font-size: 85%; f ...

  2. 《大象UML》看书笔记2:

    <大象UML>看书笔记2 抽象角度:                                                        在为现实世界建模的时候,首先要搞清楚有多 ...

  3. JavaScript看书笔记01

    JavaScript看书笔记... ------------------- JavaScript允许var定义语句出现在函数内部的任意位置.JS中使用Var来显示的给变量声明 JavaScript是一 ...

  4. 21天学通C++_Day1

    被阿里实习生的第一轮电话面试刷掉以后,幡然醒悟,发现以前学习的C++基础一点都不扎实.为了把基础打扎实,重新学习一遍:为了让自己不放弃,也顺便可以把当天学到的东西记录下来,开始了写博客. 学习书籍:& ...

  5. Flutter学习笔记(21)--TextField文本框组件和Card卡片组件

    如需转载,请注明出处:Flutter学习笔记(21)--TextField文本框组件和Card卡片组件 今天来学习下TextField文本框组件和Card卡片组件. 只要是应用程序就少不了交互,基本上 ...

  6. 21天学通 C++(第8版) 内涵目录

    21天学通 C++(第8版) 第1章 绪论 1 1.1 C++简史 1 1.1.1 与C语言的关系 1 1.1.2 C++的优点 1 1.1.3 C++标准的发展历程 2 1.1.4 哪些人使用C++ ...

  7. 21天学通Python课后实验题4.6

    21天学通Python课后实验题4.6 1. 编程实现用户输入一门课程的两门子课程成绩,第一门子课程60分以上,则显示“通过”,第一门子课程不及格,则显示“未通过”,第一门子课程及格,而第二门子课程不 ...

  8. 21天学通PythonPDF高清完整版免费下载|百度云盘

    百度云盘:21天学通PythonPDF高清完整版免费下载 提取码:nqa9 豆瓣评分: 书籍封面: 内容简介  · · · · · · <21天学通Python>全面.系统.深入地讲解了P ...

  9. 21天学通Python PDF完整版

    有需要的点击这里自取 内容简介  · · · · · · <21天学通Python>全面.系统.深入地讲解了Python编程基础语法与高级应用.在讲解过程中,通过大量实际操作的实例将Pyt ...

随机推荐

  1. 网络传输数据序列化工具Protostuff

    一直在物色比较好用的网络传输数据序列化工具,看了诸如marshalling,protobuff等,但是均有一个共同特点,使用起来异常繁杂,有没有比较好用同时性能又不会太差的组件呢?答案当然是有的,那就 ...

  2. Fortran与C/C++混合编程示例

    以下例子均来自网络,只是稍作了编辑,方便今后查阅. 子目录 (一) Fortran调用C语言 (二) C语言调用Fortran (三) C++ 调用Fortran (四) Fortran 调用 C++ ...

  3. crontab 每分钟、每小时、每天、每周、每月、每年执行

    每分钟执行 * * * * * 每小时执行 0 * * * * 每天执行 0 0 * * * 每周执行 0 0 * * 0 每月执行 0 0 1 * * 每年执行 0 0 1 1 * 每小时的第3和第 ...

  4. Win10系列:C#应用控件进阶7

    PathGeometry 前面介绍了Path的使用方法,接下来介绍PathGeometry类.PathGeometry提供了描绘由弧线.曲线和直线组成的多个复杂图形的方法.PathGeometry的核 ...

  5. Kafka分布式消息队列

    基本架构 Kafka分布式消息队列的作用: 解耦:将消息生产阶段和处理阶段拆分开,两个阶段互相独立各自实现自己的处理逻辑,通过Kafka提供的消息写入和消费接口实现对消息的连接处理.降低开发复杂度,提 ...

  6. Tomcat并发优化和缓存优化

    Tomcat并发优化 1.调整连接器connector的并发处理能力 在Tomcat 配置文件 server.xml 中的 <Connector ... /> 配置中 1.参数说明 max ...

  7. linux网络编程基础--(转自网络)

    转自 http://www.cnblogs.com/MyLove-Summer/p/5215287.html Linux下的网络编程指的是socket套接字编程,入门比较简单. 1. socket套接 ...

  8. java求0~100的质数(素数)

    质数的概念: 简单的来说就是一个数从2开始取模到(求余数)自身的值,如果取模后余数一直不等于0那么这个数就是质数(素数). 如 7     7%2    7%3    7%4    7%5   7%6 ...

  9. 洛谷P1993 小K的农场

    思路是差分约束+dfs版SPFA. 首先来思考差分约束的过程,将题目给出的式子进行转化: 农场a比农场b至少多种植了c个单位的作物, SPFA我们考虑跑最短路,那么要让SPFA中满足的式子就是if(d ...

  10. leetcode python 033 旋转数组查找

    ## 假设升序,import random def find(y):    l,m=len(y),0    while l>1:        n=int(l/2)        if y[0] ...