初步认识.NET
.net基本简介
.NET是微软下一代的操作平台,它允许人们在其上构建各种应用方式,使人们尽可能通过简单的方式,多样化地、最大限度地从网站获取信息,解决网站之间的协同工作,并打破计算机、设备、网站、各大机构和工业界间的障碍--即所谓的“数字孤岛”,从而实现因特网的全部潜能,搭建起第三代互联网平台。
中文意思是:网,网状物。后缀为net是网络服务公司,为个人或商业提供服务。
.NET是微软的新一代技术平台,为敏捷商务构建互联互通的应用系统,这些系统是基于标准的,联通的,适应变化的,稳定的和高性能的。从技术的角度,一个.NET应用是一个运行于.NET Framework之上的应用程序。(更精确的说,一个.NET应用是一个使用.NET Framework类库来编写,并运行于公共语言运行时 Common Language Runtime之上的应用程序。)如果一个应用程序跟.NET Framework无关,它就不能叫做.NET程序。比如,仅仅使用了XML并不就是.NET应用,仅仅使用SOAP SDK调用一个Web Service也不是.NET应用。
什么是.net?
.net是一种平台和框架, .net 不是单纯的语言也不是单纯的工具,它是从底层平台开始构建起来的一个整体框架
请以图示方式解释.net framework?
|
.NET程序的编译与运行
在编译使用.NET框架创建的代码时,不是立即创建成操作系统特定的本机代码,而是把代码编译为微软中间语言(MSIL)代码。在执行应用程序时由JIT编译器把MSIL编译为专用于某种操作系统和目标机器结构的本机代码,然后操作系统才能执行应用程序。
程序集
在编译应用程序时,创建的MSIL代码存储在一个程序集中,程序集包括可执行的应用程序文件(.exe)和其他应用程序使用的库(.dll),还包括元数据和可选资源。
托管代码
托管是什么意思,说白了就是让CLR管理着应用程序,从源代码到MSIL,再到本机代码,再到程序执行,由.NET与操作系统进行交互。不在CLR控制之下运行的应用程序时非托管的。
托管代码最重要的一个功能是无用存储单元收集(garbage collection),也称垃圾回收,确保应用程序不再使用某些内存时,这些内存会被完全释放。
下面这张图是.NET程序的编译与运行时的情况:
下面是关于.NET的几个小问题:
- .NET框架可以运行于哪些平台?
目前可以运行在windows95/98/ME、windowsNT4.0、windows2000、windowsXP、windows2003、windowsvista上。
此外还有一个称为.NET精简框架的.NET框架版本,它运行在WindowsCE和其他嵌入式操作系统上。
- .NET框架支持哪些编程语言?
.NET框架与编程语言无关。事实上任何语言都可以支持.NET框架。目前可以用许多语言来创建.NET程序,包括:C++、VB.net、JScript、C#。以后也会有大量的第三方语言可以用来创建.NET框架应用程序,包括Cobol、Eiffel、Perl、Python、Smalltalk等。
- .NET框架可以创建哪些类型的应用程序?
并不限制应用程序的类型,可以创建控制台应用程序、windows应用程序、Web应用程序、Web服务和其他各种类型的应用程序。
- .NET框架和COM+服务之间是什么关系?
在.NET框架中,不仅可以完全访问COM+服务,而且也更容易创建服务组件。.NET框架组件还可以利用COM+中所提供的服务,如事务、对象池、排列组件、事件等。
ASP.NET中共有几种类型的控件?各有什么区别?
WEB控件分为:内部控件, 列表控件, 复杂控件, 验证控件
内部控件:内部控件的使用方法与 HTML 控件相同,它们映射到 HTML 元素并通过使用 runat = "server" 属性在服务器上执行
列表控件:用于在 Web 页中创建数据列表
复杂控件:当希望控件拥有复杂的功能或使用 HTML 元素无法创建的功能丰富的用户界面时,可以使用复杂控件
验证控件:输入控件的数据需要进行准确性和取值范围方面的检查
ASP.Net与ASP相比,主要有哪些进步?
asp解释型,aspx编译型,性能提高,有利于保护源码
ASP的缺点:
l VBScript和JavaScript是在ASP中仅可使用的两种脚本语言。它们是基本的非类型化语言。在ASP中不能使用强类型语言.
l ASP页面需要解释,使得它执行速度较慢。
l ASP页面非常凌乱。
l 在使用ASP创建WEB应用程序时,程序员和设计人员必须在同一文件上一起工作。
l 在ASP中,必须通过编写代码来提供所需的任何功能。
l 在ASP中没有对代码给予太多的关注。
l 在ASP中没有调试机制。
l 在ASP中。必须停止WEB服务器才能安装DLL的新版本,并且在应用程序中使用DLL的新版本之前,必须先在注册表中注册它,而且,DLL注册过程非常复杂。
ASP.NET的优点:
l ASP.Net中支持强类型语言.
l ASP.Net页将被编译而不是解释,这样它们的执行速度就比ASP页快。
l ASP.Net提供声明性服务器控件。
l ASP.Net通过继承机制来支持代码的重用。
l ASP.Net具有Trace的内置方法,可以帮助对页面进行调试。
l 在ASP.Net中,置于应用程序的BIN目录中的任何组件将自动对应用程序可用.
.Net中常用的几种页面间传递参数的方法,并说出他们的优缺点。
1、queryString url参数 简单,显示于地址栏,长度有限
优点:简单易用;资源占用比较少。
缺点:传递数据大小有限制,只能传递基本类型的数据,安全性差
2、session(viewstate)
优点:简单,灵活性强,能传递复杂的对象
缺点:但易丢失,资源消耗大
3、cookie
优点:简单,
缺点:但可能不支持,可能被伪造,大小有限制不能超过4KB 不恩能够存储复杂对象
4、this.Server.Transfer,
优点:URL地址不变,安全性高,灵活性强,能传递复杂的对象
缺点:资源消耗大
5、hidden control/viewstate 简单,可能被伪造
6、static member。
7、cache
8、application
优点:全局
缺点:资源消耗大
9、DataBase 数据库 稳定,安全,但性能相对弱
10、xml or other Files
11、XMLHTTP or Hidden iFrame/frame
12、Context.user.identity
通过查阅资料,初步了解了.net。