.NET战略

           所谓.Net战略,是将微软所开发的各种软件与互联网紧密结合起来,目的是简化各种计算设备之间的信息共享与交换,微软也将借此把业务重点转移到互联网上,期望实现从一个软件公司向一个服务公司的转变。微软当时宣布的基于.NET 平台的新产品计划中,包括了新一代的微软Windows操作系统、Windows DNA服务器、Office、MSN互联网网络服务以及Visual Studio开发系统平台。如此众多的内容,被一个符号化的.NET统一囊括,人们站在各自的角度看过去,.NET必然会呈现不同的面貌。
        .NET:它是微软平台的实现载体,应用这样的技术和软件能够去连接所有的信息、人员、系统和设备,其中不仅包括一些框架性的定义,而且还包括了一些软件和工具来支持应用的开发过程。

       在盖茨眼中的标准定义,.NET是Microsoft XML Web Services平台。微软对于.NET的理解,更多的是以XML为核心的Web Services平台,允许应用程序通过Internet来通讯和共享数据,而不管应用程序的运行环境采用的是哪种操作系统、硬件设备或编程语言,这也正是构建下一代Internet应用的基础。.NET的核心就是突破了"软件运行于计算机"的概念,可以说,.NET时代的软件是"软件运行于计算机网络"的。
.NET程序是如何实现跨平台的
    1.传统的W32可执行程序编译后的本机器代码叫做Native Code, 在.NET中可执行程序的代码是以类似于Java Byte Code 的IL (Intermediate Language)伪代码形式存在的, 在.NET可执行程序载入后, IL代码由CLR (Common Language Runtime)从可执行文件中取出, 交由JIT (Just-In-Time)编译器,根据相应的元数据(Metadata), 实时编译成本机代码后执行
    2.由第一点可以看出, .NET程序并不是直接被编译成本机CPU指令, 而是先编译成中间代码, 在运行的时候CLR会将中间代码转换为本机指令,这样的话,CLR就可以根据不同的平台生成不同的CPU指令,究其本质, 编译的过程只是生成中间代码而已, 执行的时候才会生成本机指令. 
        Java最吸引人之处,在于跨平台。而.NET可以看作Java的改良版,囊括Java大部分的优点,所以当然也具有跨平台的潜力。但是认真追究起来,Java和.NET的程序其实也不算真正跨平台,因为Java VM(虚拟机器)和.NET VM本身就是一个平台,而Java程序只能在Java VM上执行,.NET程序只能在.NET VM上执行,至于VM的底下是什么操作系统,则无关紧要。 
更清楚的说,Java和.NET的跨平台,指的是跨“操作系统”平台。所以,Java VM和.NET VM能移植到什么OS平台,Java程序和.NET程序就能跨到什么平台。 
         .NET以后是一定会流行的,至少会在Windows和Linux上成为主流。Linux和Mono得到Novell公司的大力支持,相信在不久的将来.NET将在Linux平台称为开发的平台。为了让Java能够跨进.NET的世界,有人设计了.NET VM上的Java VM,"IKVM.NET"正是这样的一套Java VM。仗着Java VM和.NET VM有许多相似之处,IKVM.NET在设计上就可以取巧,许多机制(例如垃圾收集)直接利用底下的.NET VM,不需要自己完成。有了像IKVM.NET这样的VM,Java就可以跨到.NET平台上,不失为一个扩展势力的好方法。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

皮特大熊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值