.NET�C#和ASP.NET三者之间的区别如下:
一�什么是.NET?
.NET是微软公å�¸ä¸‹çš„一个开å�‘å¹³å�°ï¼Œ.NETæ ¸å¿ƒå°±æ˜¯.NET Framwork(.NET框架)是.NET程åº�å¼€å�‘å’Œè¿�行的环境,在这个平å�°ä¸‹å�¯ä»¥ç”¨ä¸�å�Œçš„è¯è¨€è¿›è¡Œå¼€å�‘ï¼Œå› ä¸º.NET是跨è¯è¨€çš„一个平å�°ã€‚è¯è¨€å�¯ä»¥æ˜¯C#,f#,j#,vb.netç‰ç‰ã€‚JAVAå’Œ.NETä¸�å�Œçš„一点是java是跨平å�°çš„,ä¸�è·¨è¯è¨€çš„。.NET跨平å�°ä»…é™�于安å�“系统和 iOS 苹果系统。
1�.net框架的组�分为两部分:
- CLR:公共è¯è¨€è¿�行时(Common Language Runtime),æ��供内在管ç�†ï¼Œä»£ç �安全性检测ç‰åŠŸèƒ½ã€‚
- FLC:.NET框架类库(.NET Framework Class Library),æ��供大é‡�åº”ç”¨ç±»åº“ï¼Œç±»åº“ä¸æœ‰å¾ˆå¤šçº¿ç¨‹çš„资æº�å�¯ä½¿ç”¨ï¼ˆæ¯”如:类,方法,属性),æ��高开效率。
2�CLR的结构:
- CLS:公共è¯è¨€è§„范,获å�–å�„ç§�è¯è¨€è½¬æ�¢æˆ�ç»Ÿä¸€çš„è¯æ³•规范。
- CTS:通用类型系统,将å�„ç§�è¯è¨€ä¸çš„æ•°æ�®ç±»åž‹è½¬æ�¢æˆ�统一的类型
- JIT:实时编译器(å�³æ—¶ç¼–译器)用于将转æ�¢ä¹‹å�Žçš„è¯è¨€ç¼–译为二进制è¯è¨€ï¼Œäº¤ç»™CPU执行。
3�.NET�行的机制�程
å�„ç§�è¯è¨€ï¼ˆc#,F#,j#ç‰å¯¹åº”çš„æº�程åº�)——>ç»�过CLS,CTS第一次编译——>统一规范è¯è¨€ï¼ˆä¸é—´è¯è¨€ï¼‰MSIL(.EXE,.DLL)——>JIT第二次编译——>二进制è¯è¨€â€”—>è¿�行在CPUä¸
java的�行机制:
java——>编译——>å—节ç �文件(.CLASS)——>jvm解释(jvm虚拟机)——>二进制è¯è¨€â€”—>è¿�行在CPUä¸
二�什么是C#?
C#是一个.NETå¹³å�°ä¸‹çš„一个程åº�设计è¯è¨€ï¼Œä»…仅是一个è¯è¨€ã€‚是è¿�行在.net CLR上的,用于创建应用程åº�的高级è¯è¨€ã€‚ 程åº�设计è¯è¨€æ˜¯ä¸ºäº†æ–¹ä¾¿å¼€å�‘人员和计算机沟通的工具。
三�什么是ASP.NET?
ASP.NET是一个网站开å�‘的技术,是.NET框架ä¸çš„一个应用模型,用于生æˆ�基于Web的应用程åº�的内容丰富的编程框架。使用ASP.NETå¼€å�‘Web应用程åº�å¹¶ç»´æŒ�å…¶è¿�行,比其他开å�‘è¯è¨€æ›´åŠ ç®€å�•。与Javaã€�PHPå’ŒPerlç‰é«˜çº§æŠ€æœ¯ç›¸æ¯”,ASP.NET具有方便性ã€�ç�µæ´»æ€§ã€�生产效率高ã€�安全性高å�Šé�¢å�‘对象ç‰ä¼˜ç‚¹ï¼Œæ˜¯ç›®å‰�主æµ�的网络编程技术之一。