.Net 基金会中包含有很多优秀的项目,今天就和笔者一起了解一下其中的一些优秀作品吧。
中文介绍
中文介绍内容翻译自英文介绍,主要采用意译、如与原文存在出入,请以原文为准。
.NET Core
.NET Core 拥有着卓越的性能表现、模块化的设计和支持多版本共存,因而其能够在不影响其他应用程序的前提下,方便地采用新版本。现在,它支持运行在 Linux、Mac 和 Windows 上。ASP.NET Core 正是构建于 .NET Core 之上。ASP.NET Core 是拥有着卓越的性能表现、模块化的设计和支持多版本共存,因而其能够在不影响其他应用程序的前提下,方便地采用新版本。以上产品当前都处于活跃的开发活动中,由微软的 .Net 团队和社区的开源贡献者们共同开发。我们一同为了改进和扩展 .Net 平台新特性和新应用场景而砥砺向前。
.NET Core 有两个主要的组件构成:
它包含有一个采用与 .NET Framework CLR 相同源码基础的小规模的运行时。和 .NET Framework CLR 一样,.NET Core 运行时包含有 GC 和 JIT (RyuJIT),但不包含其他的一些特性,例如:应用程序域和代码访问安全性。.NET Core 以 Microsoft.CoreCLR NuGet 包的形式公开在 NuGet 网站上。
它还包含有一些基础的类库。这些类库和 .NET Framework 的类库同样庞大的代码量,不过由于经过了重构(删除了一些依赖项)使其能够拥有成为一系列更小的类库。这些小类库通过一些名称为 System.* 的 NuGet 包公开在 NuGet.org 网站上。通过这么做,使得应用程序可以拥有更小的体积,并且在相同机器上的不同的应用程序之间可以使用不同版本的 .Net Core 。
项目详情
- 官网地址
- 项目源码: .NET Core Framework, .NET Core Common Language Runtime, .NET Core Tools
- 项目文档仓库: 概念解释 , 接口文档 , 样例代码
- 项目许可证: MIT
- 项目联系人: Immo Landwerth
相关链接
笔者简评
.Net Core 没有出现前,社区开发的 Mono 也是一套可以跨平台运行的 .Net 开发解决方案。不过可能是由于 Mono 的图标是猴子的原因。它不那么容易控制。现在微软采用了开放的姿态,协同社区一起提供了一套跨平台开发方案。并且在此之上进行了全面的重构,为开发生态注入了新的活力。不论结局会是如何,这种历史性的时刻,总是让人感觉现在的生态真的是越来越好了。落后封闭就会挨打,开放共赢才是王道。
.Net Core 的到来,意味的不仅仅只是跨平台这么一个小小的特性要求。其实质是伴随着 DevOps、微服务、容器化、无服务器化、云原生等等一些列新型的技术概念技术做法带来的技术变更。时代正在快速的发展。这可能不完全是好的开始,但是这肯定是一个新的开始。
英文介绍
.NET Core
.NET Core has a high-performance and modular design, and supports full side by side to make it easy to adopt new .NET Core versions without affecting other apps. It currently runs on Linux, Mac, and Windows. ASP.NET Core is built on top of .NET Core. ASP.NET Core is a high-performance and modular design, and supports full side by side to make it easy to adopt new versions without affecting other apps. These products are actively developed by the .NET team and in collaboration with a community of open source developers. Together we are dedicated to improving and extending the .NET platform with new features and for new scenarios.
.NET Core has two major components. It includes a small runtime that is built from the same codebase as the .NET Framework CLR. The .NET Core runtime includes the same GC and JIT (RyuJIT), but doesn’t include features like Application Domains or Code Access Security. The runtime is delivered on NuGet,via the Microsoft.CoreCLR package.
.NET Core also includes the base class libraries. These libraries are largely the same code as the .NET Framework class libraries, but have been factored (removal of dependencies) to enable us to ship a smaller set of libraries. These libraries are shipped as System.* NuGet packages on NuGet.org. This enables both smaller footprint applications, and allows different applications on the same machine to use different versions of .NET Core.
Project Details
- Project Info Site
- Project Code Repos: .NET Core Framework, .NET Core Common Language Runtime, .NET Core Tools
- Project Docs Repos: Concepts, APIs, Samples
- Project License Type: MIT
- Project Main Contact: Immo Landwerth
Quicklinks
- Contribute
- Discussions
- Samples
- Blog
- Twitter: @DotNet
- Documentation
以上《英文介绍》摘录自 .NET Foundation 的项目介绍 。原文受原项目许可证保护。
中文介绍
中文介绍内容翻译自英文介绍,主要采用意译、如与原文存在出入,请以原文为准。
Newtonsoft.Json
Newtonsoft.Json (Json.NET) 是一款高性能.NET 的 JSON 处理框架。
项目详情
- 官网地址
- 项目源码
- 项目许可证: MIT
- NuGet
- 项目联系人: James Newton-King
相关链接
笔者简评
越是简短的说明,就越凸显了框架本身的熟知程度。这几乎已经成为每个.Net 开发人员都知道的一个框架。
尽管在性能方便,后来产生的各种 JSON 处理框架都乐于使用本框架作为对比的对象,但是此框架卓越的兼容性,几乎成为了非性能场景下的首选。
早年的微软出品的 MVC 系列还使用自家的 JSON 处理框架,但是到了 WebApi 系列时就已经将内置的 JSON 处理框架改用了此框架。足见此框架的社区影响力。
当然,如果你正在追寻更加卓越的性能,那么以下这些框架可能会是你的选择:
英文介绍
Newtonsoft.Json
Newtonsoft.Json (Json.NET) is a popular high-performance JSON framework for .NET
Project Details
- Website
- Source
- License: MIT
- NuGet
- Project Leads: James Newton-King
Quicklinks
以上《英文介绍》摘录自 .NET Foundation 的项目介绍 。原文受原项目许可证保护。
中文介绍
中文介绍内容翻译自英文介绍,主要采用意译、如与原文存在出入,请以原文为准。
NuGet
NuGet 是一款用于包括.Net 在内的微软开发平台的包管理器。
NuGet 客户端工具提供了创建和使用 nuget 包的能力。
NuGet Gallery (nuget.org) 是一个中心化的报管理中心,可以为全世界的作者和用户提供包管理服务。
项目详情
- 官方网站
- 项目源码
- 许可证类型: Apache License 2.0 (Apache)
- 项目联系人: Anand Gaurav, Rob Relyea
相关链接
笔者简评
nuget 的出现彻底改变了 .Net 的程序包分发方式,终结了那个将 DLL 复制来复制去的时代。
现在,很多项目再 nuget 上进行在扩展,应用其包格式或者机制开发出了特有的平台:
- Octopus 以 nuget 包的形式发布应用站点和服务
- Chocolatey 应用类似的机制实现了在 Windows 下的软件包自动管理,类比 apt-get
英文介绍
NuGet
NuGet is the package manager for the Microsoft development platform
including .NET. The NuGet client tools provide the ability to produce
and consume packages. The NuGet Gallery (nuget.org) is the central
package repository used by all package authors and consumers.
Project Details
- Project Info Site
- Project Code Site
- Project License Type: Apache License 2.0 (Apache)
- Project Main Contact(s): Anand Gaurav, Rob Relyea
Quicklinks
- Documentation
- Discussions
- Blog
- Twitter: @nuget
- Contribute
以上《英文介绍》摘录自 .NET Foundation 的项目介绍 。原文受原项目许可证保护。
其他项目
- Akka.NET - 【Actor 开发框架】
- AngleSharp - 【浏览器引擎】
- ASP.NET SignalR - 【Web 实时通信框架】
- ASP.NET MVC, Web API and Web Pages Razor - 【Web 开发框架】
- ASP.NET Ajax Control Toolkit - 【Ajax 开发工具】
- ASP.NET Core - 【新时代 Web 开发框架】
- AutoMapper - 【对象映射管理】
- Microsoft Azure SDK for .NET - 【SDK】
- Microsoft Azure WebJobs SDK - 【SDK】
- BenchmarkDotNet - 【基准测试框架】
- Cake - 【本地自动化框架】
- Chemistry Add-in for Word - 【Word 插件】
- Couchbase Lite for .NET - 【NoSQL 引擎】
- DNN Platform - 【CMS 系统】
- .NET Compiler Platform Roslyn - 【编译器】
- .NET Micro Framework - 【嵌入式框架】
- .NET SDK For Hadoop - 【SDK】
- DotVVM: Component-based MVVM framework for ASP.NET - 【Web 服务端 MVVM 框架】
- Entity Framework - 【ORM】
- Humanizer - 【工具库】
- IdentityManager - 【身份认证数据管理工具】
- IdentityModel - 【身份认证对接库】
- IdentityServer - 【OAuth 服务端】
- SixLabors.ImageSharp - 【2D 绘图库】
- DLR/IronPython2/IronPython3 - 【.Net 上运行 Python】
- Json.NET - 【JSON 处理库】
- Kudu - 【自动化框架】
- LLILC - 【语言底层项目】
- MailKit - 【邮件处理工具库】
- Managed Extensibility Framework MEF, MEF2 - 【模块化工具库】
- Microsoft Web Protection Library - 【Web 防攻击工具库】
- MimeKit - 【MIME 处理工具库】
- ML.NET - 【机器学习框架】
- Cecil - 【语言底层项目】
- Mono - 【语言跨平台底层项目】
- MSBuild - 【本地自动化框架】
- MVVM Light Toolkit - 【客户端 MVVM 开发框架】
- MvvmCross - 【客户端 MVVM 开发框架】
- Nancy - 【Web 开发框架】