Implementações do .NET

Um aplicativo .NET é desenvolvido para uma ou mais implementações do .NET. As implementações do .NET incluem .NET Framework, .NET 5+ (e .NET Core) e Mono.

Cada implementação do .NET inclui os seguintes componentes:

  • Um ou mais tempos de execução — por exemplo, CLR do .NET Framework e CLR do .NET 8.
  • Uma biblioteca de classes — por exemplo, a Biblioteca de Classes Base do .NET Framework e a Biblioteca de Classes Base do .NET 8.
  • Opcionalmente, uma ou mais estruturas de aplicativo — por exemplo, ASP.NET, Windows Forms e Windows Presentation Foundation (WPF) estão incluídas no .NET Framework e no .NET 5+.
  • Opcionalmente, ferramentas de desenvolvimento. Algumas ferramentas de desenvolvimento são compartilhadas entre várias implementações.

Há quatro implementações .NET que a Microsoft suporta:

  • .NET 6 e versões posteriores
  • .NET Framework
  • Mono
  • UWP

O .NET, anteriormente conhecido como .NET Core, é atualmente a implementação principal. O .NET (8) é criado em uma única base de código que oferece suporte a várias plataformas e muitas cargas de trabalho, como aplicativos de área de trabalho do Windows e aplicativos de console multiplataforma, serviços de nuvem e sites. Algumas cargas de trabalho, como ferramentas de compilação .NET WebAssembly, estão disponíveis como instalações opcionais.

.NET 5 e versões posteriores

O .NET, anteriormente conhecido como .NET Core, é uma implementação multiplataforma do .NET projetada para lidar com cargas de trabalho de servidor e nuvem em escala. Também suporta outras cargas de trabalho, incluindo aplicações de ambiente de trabalho. Ele roda em Windows, macOS e Linux. Ele implementa o .NET Standard, para que o código destinado ao .NET Standard possa ser executado no .NET. ASP.NET Core, Windows Forms e Windows Presentation Foundation (WPF) são executados no .NET.

O .NET 8 é a versão mais recente desta implementação do .NET.

Para obter mais informações, consulte os seguintes recursos:

.NET Framework

O .NET Framework é a implementação original do .NET que existe desde 2002. As versões 4.5 e posteriores implementam o .NET Standard, de modo que o código destinado ao .NET Standard pode ser executado nessas versões do .NET Framework. Ele contém APIs adicionais específicas do Windows, como APIs para desenvolvimento de área de trabalho do Windows com Windows Forms e WPF. O .NET Framework é otimizado para criar aplicativos de área de trabalho do Windows.

Para obter mais informações, consulte o guia do .NET Framework.

Mono

Mono é uma implementação .NET que é usada principalmente quando um pequeno tempo de execução é necessário. É o tempo de execução que alimenta os aplicativos Xamarin no Android, macOS, iOS, tvOS e watchOS e é focado principalmente em uma pequena pegada. Mono também alimenta jogos construídos usando o motor Unity.

Ele suporta todas as versões do .NET Standard publicadas atualmente.

Historicamente, Mono implementou a API maior do .NET Framework e emulou alguns dos recursos mais populares no Unix. Às vezes é usado para executar aplicativos .NET que dependem desses recursos no Unix.

O Mono é normalmente usado com um compilador just-in-time, mas também possui um compilador estático completo (compilação à frente do tempo) que é usado em plataformas como iOS.

Para obter mais informações, consulte a documentação do Mono.

Plataforma Universal do Windows (UWP)

UWP é uma implementação do .NET que é usada para criar aplicativos e software modernos e habilitados para toque do Windows para a Internet das Coisas (IoT). Ele foi projetado para unificar os diferentes tipos de dispositivos que você pode querer segmentar, incluindo PCs, tablets, telefones e até mesmo o Xbox. A UWP fornece muitos serviços, como uma loja de aplicativos centralizada, um ambiente de execução (AppContainer) e um conjunto de APIs do Windows para usar em vez do Win32 (WinRT). Os aplicativos podem ser escritos em C++, C#, Visual Basic e JavaScript.

Para obter mais informações, consulte Introdução à Plataforma Universal do Windows.