第一章
CLR:.Net Framework的核心,公共语言运行库
托管代码:CLR控制下的运行的代码
JIT编译器:运行应用程序时,JIT并不是把整个应用程序一次编译完,而是只编译它调用的那部分代码.代码编译过一次后就会存储起来,直到退出应用程序为止,这样下次访问该代码,就不需要重新编译了.
MSIL(JAVA字节码)优点:平台无关性,语言的互操作性,提高性能
互操作性:编译好的代码可以与其他语言编译过来的代码进行相互操作,特别是:
1.不同语言间编写的类能相互继承
2.不同语言间编写的类能相互引用
3.对象或对象的引用能在方法间传递
4.能够同时调试不同语言编写的源代码
.net 3.5之前只能用于windows平台
COM的缺陷:
1.系统紧把COM最为中间件处理
2.不允许使用继承
C#中的指针:使用unsafe关键字标记,其代码会导致CLR提供的类型安全检查失败,因此是非托管的代码
CTS:CTS定义了中间语言中使用的预定义数据类型,所有.net平台下的程序代码都可以最终生成基于这些类型的编译代码. CTS还定义了一个内容层次结构
CLS:和CTS一起确保语言的互操作性,其是一个最低标准集,所有面向.net的编辑器都必须支持它
VB语言不区分大小写,C#区分
C++垃圾回收:让应用程序代码负责内存释放,优点:可以让资源在不需要时就释放,缺点:频繁出错,容易导致内存泄露
.NET垃圾回收原理:所有动态请求的内存都存放在堆上,当.net检测到托管堆上给定的进程已满,需要清理时,就调用垃圾回收器,清理不再需要的对象.
.NET垃圾回收器的特点:不确定性,不能确定什么时候会调用垃圾回收器
应用程序域:其是分离组件的一种方式,其不会导致因在进程之间传送数据而产生的性能问题.其方法是把任何一个进程分解到多个应用程序域中,给个应用程序域大致都对应一个应用程序,执行的每个线程都运行在一个具体的应用程序域中
程序集:其可以存储在多个文件中.如果一个程序集存储在多个文件中,其中就会有一个包含入口点的主文件,该文件描述了程序集中的其他文件.
可执行程序集(exe)与库程序集(dll)的区别:结构一样,但可执行程序集包含一个主程序入口点,而库程序集不包含
程序集的类型:
1.私有程序集.系统可以保证私有程序集不被其他软件使用,因为应用程序只能加载位于主程序文件所在文件夹或其子文件夹中的程序集
2.共享程序集.共享程序集放在文件系统的一个特定的子目录树中,称为全局程序集高速缓存(GAC). 为了避免名称冲突,共享程序集应根据私钥加密制定一个名称(私有程序集只需要指定与其主文件名相同的名称即可).该名称称为强名(strong name),并保证其唯一性.它必须由要引用共享程序集的应用程序来引用.
名称空间与类命名规则:公司名+技术名称或软件包名称+类名
ASP.NET的特性:
1.ASP.NET的页面是结构化的.每个页面都是一个继承了.NET类System.Web.UI.Page的类,可以重写在Page对象的生存期中调用的一系列方法.
2.性能提高.传统的ASP界面是和每个页面请求一起解释,而Web服务器是在编译后高速缓存ASP.NET的页面.这表示对ASP.NET页面的请求就比ASP页面第一次执行的速度快得多.
Web服务器控件:当请求一个页面时,Web浏览器会动态地把他们转换为HTML和客户端脚本.(所以不如直接用HTML控件)
分享到:
相关推荐
Jupyter Notebook for Beginners_ A Tutorial.pdf
The notebook extends the console-based approach to interactive computing in a qualitatively new direction, providing a web-based application suitable for capturing the whole computation process: ...
python notebook for Make Your Own Neural Network的数据集
做数据挖掘和可视化展示的情报分析软件。 一、主要能力 (一)数据管理: 实体(Entities): ...每个实体具有不同的表示方式和类型,用以决定其在图表上的显示方式和对其进行分类。实体包含存储有关该对象或事件的信息的...
Pendo crispy notebook for any ideas plans_v1.1.1(1).apk
IPython provides a web-based UI called Notebook, which creates a working environment for interactive computing that combines code execution with computational documents. IPython Notebook makes the ...
1. 从 http://dl.google.com/firefox/google-notebook.xpi 下载Google Notebook扩展到本地(在链接上点右键,选择目标另存为)(该链接可在chrome下下载成功) 2. 下载 7-zip 并安装。如果已经有就不用了。 3. 在 ...
QuickTime for Java: A Developer's Notebook <br>By Chris Adamson <br>
藏经阁-Secured (Kerberos-based) Spark Notebook for Data Science.pdf
神基科技 Notebook-For WinNT40_vga drivers安装文件zip,神基科技 Notebook-For WinNT40_vga drivers安装文件
神基科技 Notebook-For WIN98_touchscreen_A760安装文件zip,神基科技 Notebook-For WIN98_touchscreen_A760安装文件
神基科技 Notebook-For WIN98_lan driver_A760安装文件zip,神基科技 Notebook-For WIN98_lan driver_A760安装文件
神基科技 Notebook-For WIN98_modem driver_A760安装文件zip,神基科技 Notebook-For WIN98_modem driver_A760安装文件
神基科技 Notebook-For WIN98_vga drivers_A760安装文件zip,神基科技 Notebook-For WIN98_vga drivers_A760安装文件
VESA对LVDS显示面板的实施标准,包括输入LVDS数据格式、输入接口定义和电气属性等。
Notebook PC User ’s Manual for ASUS M6N
神基科技 Notebook-For WIN2K_vga drivers_A760安装文件zip,神基科技 Notebook-For WIN2K_vga drivers_A760安装文件
神基科技 Notebook-For WINNT40_lan driver_A760安装文件zip,神基科技 Notebook-For WINNT40_lan driver_A760安装文件
神基科技 Notebook-For WINNT40_audio driver_A760安装文件zip,神基科技 Notebook-For WINNT40_audio driver_A760安装文件
神基科技 Notebook-For WIN2K_audio driver_A760安装文件zip,神基科技 Notebook-For WIN2K_audio driver_A760安装文件