[转帖]什么是.Net?

.NET是一个开发平台,或者叫开发者平台。使用.NET你可以创建不同类型的应用程序,使用多种开发语言、编辑器和工具库创建网页、手机、桌面以及游戏等应用。其核心特点是:免费、开源和跨平台。

1.语言和平台

我们先来理解一下什么是.NET开发平台。

简单说,开发平台就是为应用软件开发提供的一个工作平台。.NET开发平台主要包括公共语言运行时(CLR)和框架类库(FCL)。其中FCL包含基础类库(BCL)和ASP.NET(Core)、ADO.NET、WPF、WinForm等框架类库。

经常会听到有人拿.NET与Java对应。严格来说是不对的,与Java对应的是C#,与JVM对应的是CLR,与JDK对应的是.NETFramework/.NETCore/.NET5+SDK。JVM上有多种语言,CLR上也有多种语言。比如JVM上有Java、Scala、JPython等,CLR上有C#、F#、IronPython等。

当然,平时我们不必刻意去区分对应关系。当我们听到有人把.NET与Java对应时,也完全不必较真。因为C#语言在.NET平台的市场上占据了绝对主导的地位,所以人们默认就把.NET与C#绑在了一块儿。比如人们习惯了说.NET生态和Java生态,而很少听说C#生态。

还有人把.NET等同于.NETFramework或.NETCore。准确的来说也是不对的,.NET是开发平台,.NETFramework是在.NET平台上针对Windows系统实现的开发框架,.NETCore/.NET5+是在.NET平台上实现的支持多操作系统的跨平台开发框架。

2.主要特点

前面说到了.NET的核心特点是免费、开源和跨平台。即,它的开源协议是最开放的MIT协议,允许在任何商业环境中使用。它的跨平台特性使得它可以它可以运行于任何环境,如Windows、Linux、macOS、iOS、watchOS和Docker等。

.NET的另一个我最喜欢的特点是:大生态。来看一张来自官网的图:

3.多语言支持

你可以使用多种语言来编写.NET应用程序,主流的语言有:C#,F#和VisualBasic。

F#是一种跨平台的、开源的函数式编程语言。它还包括面向对象和命令式(Imperative)编程。它为那些熟悉函数式编程语言的人转换到.NET平台提供了便利。函数式编程在某些场景下比面向对象编程更方便高效,有其自身特点,是对.NET平台的一个有益补充。

VisualBasic,简称VB,是一种接近人类语言的语言。它的语法简单,易学,一般用于建立基于事件驱动的视窗应用程序。很多传统企业和小公司还在用。现在很多人学VB语言主要是为了VBA编程,使用Excel自动化办公。

当年也出现了像IronPython、IronRuby、IronScheme等,不过这些项目已经死掉了。

4.多开发工具支持

你可以使用多种工具来进行.NET编程,有强大的VisualStudio、轻小的VisualStudioCode和JetBrains出品的Rider等。

VisualStudio:Windows上功能齐全的集成开发环境(IDE),用于构建各种类型的.NET应用程序。还有专为MacOS打造的兄弟款:VisualStudioforMac。

VisualStudioCode:可在Linux、macOS或Windows上开发,建立跨平台网站和服务,需安装C#扩展。

JetBrainsRider:JetBrains出品,体验也不错,它使用的是IntelliJ和ReSharper技术构建的跨平台.NETIDE。

OmniSharp:它使Atom、SublimeText、Emacs和Vim等编辑器支持跨平台.NET开发。

5.人们的误解

还有人认为.NET的性能低,这也是老旧观念了。从.NETCore成熟后,其性能和Go旗鼓相当。在Web综合性能方面,其性能高出Node.js的7倍多(.NET5高出10倍多)。

还有很多人认为.NET是由微软自己开发和维护的,其实不完全是。自.NET开源以来,参与建设.NET平台的有微软自己的团队,也有来自世界各地的6万多名开发者和3700多家公司。另外,早在2014年,微软就成立了.NET基金会,有微软、Google、三星等大厂扶持,用来推进.NET平台的发展。

.NET热情拥抱了开源和跨平台,开发市场也在热情地拥抱.NET,越来越多的开发人员和公司参与到了.NET的大家庭中。

THE END
1.对比Java,.NET具备哪些特点?对比Java,.NET具备哪些特点? 在当今软件开发领域,Java和.NET都是广受欢迎的技术平台。虽然两者都能用于开发企业级Web和桌面应用程序,但它们各自具有独特的特点和优势。本文将对比Java,探讨.NET平台的几个显著特点。 1. 开发效率 .NET的一大优势在于其高效的开发环境。与Java相比,.NET提供的开发工具和框架通常更加https://blog.csdn.net/Yori_22/article/details/144127839
2..net平台包括简述net平台的特点.net平台包括 简述net平台的特点 一.什么是.Net?它主要包括什么? .Net是为简化在第三代因特网的高分布式环境下的应用程序开发,基于开放互联网标准和协议之上,实现异质语言和平台高度交互性,而构建的新一代计算和通信平台。 .Net主要包括普通语言运行时(Common Language Runtime)和.Net构架类库。https://blog.51cto.com/u_16213686/7487771
3..NET简介.NET 运行时通过垃圾回收器提供自动内存管理。 对于任何语言,其内存管理模型可能是其最具决定性的特征。 这适用于 .NET 语言。 .NET 具有一个自我调整的跟踪 GC。 它用于在一般情况下提供“不动手”操作,同时为更极端的工作负载提供配置选项。 当前的 GC 是多年投资和从大量工作负载中学习的结果。 https://docs.microsoft.com/zh-cn/dotnet/core/introduction/
4.net域名是什么,它有哪些特点和优势?在众多域名后缀中,net域名以其独特的魅力和广泛的应用场景,吸引了我的特别关注。今天,我们就来一起探讨net域名是什么,它有哪些特点和优势,以及如何在实战中更好地利用它。希望通过这篇文章,能帮助大家在这片数字海洋中找到属于自己的“灯塔”。 一、net域名初探https://www.batmanit.cn/blog/f/56746.html
5..net的特点和应用场合网摘JackYang.net的特点和应用场合-网摘 在.NET体系结构中,XML是各应用之间无缝接合的关键 对于.NET到底是什么这个问题,有着各种各样的说法。但当时作为首席执行官的鲍尔默应该最能代表微软公司的观点,他说:“Microsoft.NET代表了一个集合、一个环境、一个可以作为平台支持下一代Internet的可编程结构。”确实,这句话基本上简单https://www.cnblogs.com/BlogNetSpace/articles/1563616.html
6..net网站建设,.NET网站建设部署和运维:在完成开发和测试后,需要将网站部署到生产环境中。可以选择云平台如Azure、AWS或本地服务器。部署后,还需要进行日常运维和监控,保证网站的稳定运行。 常用工具和技术 Visual Studio:作为微软的旗舰IDE,它提供了丰富的功能来支持.NET开发,包括代码编辑、调试、性能分析等。 https://www.3000.cn/news/6/26886
7.net服务器是什么net服务器是什么 .NET服务器是微软开发的一个强大的开发平台,主要用于构建和运行多种类型的应用程序,下面详细介绍.NET服务器的主要特点和应用场景: 1、.NET服务器概述 跨平台特性:.NET是一个支持跨平台的框架,可以在Windows、Linux和macOS上运行。 开源性质:.NET是开源的,这意味着开发者可以访问其源代码,自定义https://www.kname.net/ask/95307.html
8..NET编程语言是什么意思?.NET的优势有哪些?.NET是微软的技术平台,主要用于快速开发和跨平台操作。我们可以用它来开发C/S结构的软件或B/S结构的网站。ASP.NET是.net框架的一部分。接下来在文章中为大家介绍一下ASP.net的具体知识,有一定的参考价值,希望对大家有所帮助。 一、ASP.NET的含义是什么? https://www.ihimall.cn/news/2980.html