`
yizhyi
  • 浏览: 61696 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

.net的优点

    博客分类:
  • .net
阅读更多
1.标准集成:XML、SOAP及其它
过去,微软的体系结构建立在COM/DCOM基础上,COM/DCOM是进程间通信的二进制标准。虽然这个标准本身没有什么失误,但是它与微软以外的领域格格不入。也就是说,这个标准成了实现与其它软件平台互操作的瓶颈。

除此之外,数据也是一个问题。虽然ADO简化了数据访问,但是把数据从一个地方传送到另外一个地方就成了问题。ADO Recordset(记录集)对象是一个存储了数据的二进制结构,而这种二进制格式对于非微软的平台没有任何意义。

.Net弥补了这些缺陷,因为它完全基于标准。比如,数据用XML的格式通过进程边界,而这个数据有一个到XSD的连接,所以任何客户端都可以正确地转化数据。

SOAP基于XML,用于与Web服务的通信。集成SOAP以后,不管客户端运行的是不是微软的操作系统,都可以实现简单的可编程访问。

2.简化应用
COM所面临的一个头痛的问题就是应用。COM利用Windows注册表来定位机器上的组件。这个想法是不错的:每个注册的组件只有一个实例,所有的应用程序都使用相同的版本。COM具有向后兼容性,也就是说新版本兼容老版本,但是开发人员可能会破坏这种兼容性。

.Net则采用了不同的方法:它根本就没有使用注册表。相反,微软的建议是每个应用程序使用自己局部的组件(在.Net称为“assembly”)。利用这种方法,用于应用程序Foo的Assembly X如果发生变化,Assembly X的Application Bar不会受到任何影响。这种方法听起来好象以前一台机器上同一个DLL的多个拷贝,的确是这样。不过你不会遇到应用程序查找Windows\System32目录的问题。

由于.Net不使用注册表,很多应用都可以用简单的拷贝命令来完成,通常没有必要开发安装程序。此外,应用程序不会琐定assembly,所以升级DLL的时候不必关闭应用程序。

3.Web服务支持
在流行的Web服务方面,微软发挥着重要的作用,而.Net为开发Web服务带来了前所未有的便利。用Notepad就可以建立简单的Web服务,甚至不必利用编译器,只要对它们进行简单的调用即可,因为.Net会对它们进行编译,甚至提供一个测试页供用户检验其功能。.Net 拥有所有必需的渠道,可以生成用户所需的所有文件,比如WSDL文件。

.Net也是一个聪明的Web服务使用者:只要设置了指向某个Web服务的索引,你就可以把它当作本地的assembly。你可以获得完整的Intel许可和功能实现帮助。

Web服务对于发送数据是非常重要的,感谢ADO.Net,Web服务可以利用简单或者复杂的数据,并以XML格式把它们发送到任何客户端,最后设置一个链接,指回到一个描述数据模式的XSD。

4.用于所有.Net语言的标准工具集
最终,你会拥有一个适用于所有语言的集成工具集。你会拥有一个统一的IDE、调试工具以及其它类似的工具。因此,其它公司可以把他们的语言嵌入IDE环境,并获得.Net工具所有的支持。比如富士通开发了netCOBOL .Net,它已经直接集成到IDE中,因此可以用 COBOL编写Web服务和Windows应用并获得微软提供的调试和profiling(监管)工具。

.Net是个开放的架构,所以其它厂商也可以提供自己的工具。比如Borland,该公司已经宣布其下一版Delphi将具有建立.Net应用的功能,同时它也保证,Delphi会拥有自己的IDE,不会嵌入Visual Studio .Net。

5.对移动设备的支持
Visual Studio .Net发布不久,微软就推出了移动Internet工具包(Microsoft Mobile Internet Toolkit ,MMIT),以便用.Net构建移动应用。该工具包提供了可视化功能,你可以直观地拖动和下拉面向移动设备的窗体和控件。该工具包有利于正确书写标记语言(比如WML、WAP等等)。

.Net简化架构(.Net Compact Framework)不久就会面市,它是.Net架构的缩略版,设计用于Pocket PC设备。有了这个架构,开发人员就可以开发出丰富的Pocket PC计算机应用。你可以编写一个运行于小型设备上的应用,比如用于Pocket PC设备或者具有Web功能的手机。事实上,MMIT包含了很多仿真程序,它们使用了真正为这类设备编写的ROM代码,所以在你的应用程序投入使用之前,可以首先测试其用于此类设备时的性能。

6.代码管理
.Net管理用户的代码,从很多方面看,这一点都是很重要的,比如减少bug以及构建更多可扩展的应用。.Net可以处理以下操作:内存分配和回收,进程及线程的创建和终止,以及运行代码的访问许可。

VB开发人员先前面临的问题——比如内存管理、线程和进程创建——现在都可以由.Net来处理。而C++程序员可以转向C#,.Net代替他们处理这些操作后,内存泄露和其它bug出现的可能性将大大减少。拥有了被管理的代码,你可以访问.Net所有跨语言的能力。

7.平台独立
虽然.Net是为微软的操作系统创建的,但是微软的确为ECMA标准委员会发布了一部分框架和C#。比如,Mono project实现了Linux的.Net,包括架构和C#编译器。这意味着很多应用(特别是基于Web的应用)一次编写完成后就可以运行于多种平台上。

8.充足的学习资源
.Net的学习曲线非常重要,可能.Net的方面的书要比其它所有编程技术的书都多。此外,微软和第三方团体开设了很多课程,可以让开发人员很快就上手。最后,很多网站为开发人员员学习.Net提供了技术和指导。

9.现代化语言
VB.Net和C#都是现代化的语言。它们完全是面向对象的,设计的时候消除了很多VB 和C++的矛盾。这两种语言使用了多层式架构 (n-tier),这是一种基于组件的方法。

比如,C#取消了指针和其它一些结构,它们曾经给C++程序员(特别是新手)带来很多严重的问题。代码由.Net架构管理后,VB.Net 和C#都从中受益。这个架构还包括一些基础的对象,它们是开发多线程、支持XML等应用所必须的。

10.跨语言标准基本类型
VB开发人员曾经面临一个致命的问题:VB中的字符串与C++中的字符串不同,所以调用Windows API函数的时候会出现一些问题。.Net确定了所有类型的标准定义,所以VB中的字符串和C#中的字符串相同,也和netCOBOL .Net中的字符串相同。这意味着你再也不必担心语言A中的整型数据是32位而语言B中只有16位。你可以确信不同语言的数据类型都相同,可以更好地进行跨语言集成。

优点多于缺点
.Net具有很多明显的优点,可以提高开发人员的效率,减少bug,加快应用开发并简化使用。IT人员对.Net保持了应有的警惕,因为它毕竟还是个新事物,需要有一个比较艰难的学习曲线。但是对于大多数组织而言,其优点远远多于缺点。有了.Net,你可以在未来的开发项目中赢得更高的生产力。

www.iyuanma.com还有很多详细的讲解和回答。。
参考资料:http://www.iyuanma.com/Book/CSDN/asppost12/web235198.htm 
分享到:
评论

相关推荐

    ASP.NET的优势

    ASP.NET 是微软公司推出的Web应用程序开发框架,以其高效、安全和可扩展的特性深受开发者喜爱。以下是ASP.NET的主要优势: 1. **与浏览器无关**:ASP.NET开发的应用程序与浏览器类型无关,支持多种浏览器,如...

    ASP+.NET+2.0数据库经典1

    ### ASP.NET 2.0与数据库操作详解 #### 一、概述 在现代Web开发领域,ASP.NET一直是备受开发者青睐的技术之一。特别是ASP.NET 2.0版本,它不仅提供了强大的功能,还大大简化了Web应用程序的开发过程。本文将重点...

    在Windows 2021中配置ASP.Net环境.docx

    * ASP.NET 的优点包括可管理性、可靠性、安全性和可伸缩性等。 四、ASP.NET 优点 * 可管理性:ASP.NET 使用基于文本的、分级的配置系统,提供了灵活的配置选项。 * 可靠性:ASP.NET 提供了一个基于 .NET Framework...

    毕业论文asp.net301电子产品销售网站.doc

    - ASP.NET优点:包括强大的服务器控件、内置的安全机制、高效的缓存管理等。 - 工作原理:ASP.NET将用户的请求转化为服务器端的代码执行,然后返回HTML响应。 - 数据库原理:主要介绍了SQL语言和Microsoft SQL ...

    ASP.NET经典实例教程PDF,讲解了Web的基本工作原理,在B/S结构下的基本运行方式,同时介绍了.net框架结构和Asp.net的优点.

    4. ASP.NET的优点: - 面向对象:ASP.NET支持面向对象编程,使得代码更易于组织和维护。 - 自动页面生命周期管理:ASP.NET自动管理页面从创建到销毁的整个生命周期,简化了开发者的工作。 - 基于事件:ASP.NET...

    Ibatis+Castle

    虽然已经非常熟悉这种架构模式,但是放在ASP.NET环境中,他不能充分利用ASP.NET的优势,我们更清晰与一种既有MVC架构,同时能充分发挥ASP.NET优点的架构,查阅大量资料之后,最终选择了Castle + iBastisNet + Castle...

    .NET 免费Office类库-Free Spire.Office for .NET_4.3.zip

    Free Spire.Office for .NET 涵盖Spire系列所有 .NET Office 免费组件的集合,包括Free Spire.Doc for .NET,Free Spire.DocViewer for .NET,Free Spire XLS for .NET...具有安全性、稳定性、可扩展性、高效率等优点。

    ASP.NET使用Quartz.NET实现定时任务调度

    它的优点在于: 1. **简单易用**:通过TopShelf,开发者可以将任何命令行应用转化为Windows服务,只需几行代码即可实现。 2. **调试友好**:在开发阶段,TopShelf允许应用以控制台方式运行,方便调试。 3. **服务...

    C#三天粗懂.ppt

    7. **Visual Studio .NET优点** - 作为IDE,Visual Studio .NET提供多语言支持、统一的开发界面、多项目管理、内置Web浏览器以及强大的调试工具。它还支持实时调试、本地和远程调试等功能,大大提升了开发效率。 8....

    php、asp、java、c#、delphi之间的语言对比借鉴.pdf

    .NET优点:良好的可扩展性、可移植性强、易于开发。缺点:只支持Windows平台、学习曲线较陡。Delphi优点:良好的可视化、面向对象、跨平台。缺点:学习曲线较陡、性能不高。 四、结论 每种语言都有其特点和应用...

    C# .NET进阶实例

    .NET Core是一个跨平台、高性能的开源框架,它继承了.NET Framework的优点,并且具有更小的体积和更快的启动速度。.NET 5是.NET Core的升级版,进一步统一了.NET平台,兼容更多的.NET Framework库。 总的来说,《C#...

    Tutorialspoint Bootstrap4 PHP Java NIO ASP.Net ADO.Net .NET Core 教程

    它具有高性能、模块化、跨平台等优点,支持.NET Framework的部分库以及新的.NET Standard。.NET Core支持C#、F#和VB.NET等多种语言,通过Visual Studio或VS Code等IDE进行开发。.NET Core还引入了依赖注入、ASP.NET ...

    VB.NET C# 互转 Convert

    而C#(C Sharp)则是微软为.NET平台设计的一种现代化的、类型安全的面向对象的编程语言,它吸收了C++和Java的优点,语法更为严谨,更适合大型项目和高性能开发。 VB.NET和C#之间的转换主要依赖于编译器的语法差异。...

    基于ASP.NET的ADO与ADO.NET分析与研究

    探讨基于ASP.NET框架ADO和ADO.NET的两种数据库访问技术,并给出一个在ASP.NET下...然后,对这两种技术在缓存中的数据集存储形式、脱机与连机关系、标准化程度、传输性能方面进行了比较分析,突出了ADO.NET的优点

    asp.net经典教程 asp.net夜话

    ASP.NET Core结合了Web Forms和MVC的优点,同时提供了更高的性能和可移植性。 6. **Web API**: ASP.NET Web API是一个用于构建RESTful服务的框架,它允许开发者创建HTTP服务,可以被各种客户端,包括浏览器和移动...

    rx.net in action

    - **响应式编程的优势**:详细探讨响应式编程相对于传统编程范式的优点,如更好的错误处理、更简洁的代码等。 ##### 2. **第二章:Hello, Rx** - **Rx.NET入门**:通过简单的例子介绍如何在.NET项目中引入Rx.NET并...

    .NET 入门篇基础PPT C#

    1. **第一章 .NET概述**:这一章将介绍.NET Framework的基本架构,包括CLR(Common Language Runtime)和FCL(Framework Class Library),以及.NET的优点,如跨语言互操作性、垃圾回收机制和异常处理等。...

    asp.net core 3.1中文教程.pdf

    ASP.NET Core 具有如下优点: 生成 Web UI 和 Web API 的统一场景。 针对可测试性进行构建。 Razor Pages 可以使基于页面的编码方式更简单高效。 Blazor 允许你在浏览器中使用 C# 和 JavaScript。 共享全部使用 .NET...

    基于.NET6的在线考试系统源码.zip

    作为微软的最新跨平台开发框架,.NET6集成了许多前代版本的优点,如高性能、模块化设计以及统一的API。其主要改进包括更快的启动时间、更小的部署体积和更好的性能优化。对于在线考试系统来说,这些特性意味着更快的...

Global site tag (gtag.js) - Google Analytics