Microsoft sekarang memiliki .NET Core, .NET Framework dan Xamarin (Mono) dalam keluarga .NET-nya.
Tampaknya ada banyak tumpang tindih di sini. Apa perbedaan antara jenis .NET ini? Kapan saya harus memilih untuk menggunakan .NET Core di proyek saya, daripada .NET Framework atau Xamarin?
Jawaban:
Anda harus menggunakan .NET Core, sebagai ganti .NET Framework atau Xamarin, dalam 6 skenario khas berikut ini sesuai dengan dokumentasi di sini .
Selain itu, Anda mungkin juga ingin membaca:
sumber
Beginilah cara Microsoft menjelaskannya:
.NET Framework adalah rasa "penuh" atau "tradisional" dari .NET yang didistribusikan dengan Windows. Gunakan ini ketika Anda sedang membangun aplikasi desktop Windows atau UWP, atau bekerja dengan ASP.NET 4.6+ yang lebih lama.
.NET Core adalah .NET lintas platform yang berjalan di Windows, Mac, dan Linux. Gunakan ini ketika Anda ingin membangun aplikasi konsol atau web yang dapat berjalan di platform apa pun, termasuk di dalam wadah Docker. Ini tidak termasuk aplikasi UWP / desktop saat ini.
Xamarin digunakan untuk membangun aplikasi seluler yang dapat berjalan di perangkat iOS, Android, atau Windows Phone.
Xamarin biasanya berjalan di atas Mono , yang merupakan versi .NET yang dibangun untuk dukungan lintas platform sebelum Microsoft memutuskan untuk secara resmi pergi lintas platform dengan .NET Core. Seperti Xamarin, platform Unity juga berjalan di atas Mono.
Titik kebingungan yang umum adalah di mana ASP.NET Core cocok. ASP.NET Core dapat berjalan di atas .NET Framework (Windows) atau .NET Core (lintas-platform), sebagaimana dirinci dalam jawaban ini: Perbedaan antara ASP. NET Core (.NET Core) dan ASP.NET Core (.NET Framework)
sumber
Anda dapat merujuk pada baris ini - Perbedaan antara ASP.NET Core (.NET Core) dan ASP.NET Core (.NET Framework)
Xamarin sama sekali bukan debat. Saat Anda ingin membangun aplikasi seluler (iOS, Android, dan Windows Mobile) menggunakan C #, Xamarin adalah satu-satunya pilihan Anda.
.NET Framework mendukung aplikasi Windows dan Web. Hari ini, Anda dapat menggunakan Windows Forms, WPF, dan UWP untuk membangun aplikasi Windows di .NET Framework. ASP.NET MVC digunakan untuk membangun aplikasi Web dalam .NET Framework.
.NET Core adalah kerangka kerja open-source dan cross-platform baru untuk membangun aplikasi untuk semua sistem operasi termasuk Windows, Mac, dan Linux. .NET Core hanya mendukung UWP dan ASP.NET Core. UWP digunakan untuk membangun target Windows 10 Windows dan aplikasi mobile. ASP.NET Core digunakan untuk membangun aplikasi web berbasis browser.
Anda ingin lebih detail lihat tautan ini
https://blogs.msdn.microsoft.com/dotnet/2016/07/15/net-core-roadmap/ https://docs.microsoft.com/en-us/dotnet/articles / standard / memilih-inti-kerangka-server
sumber
sumber
.NET 5 akan menjadi versi terpadu dari semua varian .NET yang datang pada November 2020, sehingga tidak perlu lagi memilih di antara varian.
sumber
.NET Core adalah versi saat ini. NET yang harus Anda gunakan saat ini (lebih banyak fitur, bug yang diperbaiki, dll.)
Xamarin adalah platform yang menyediakan solusi untuk masalah lintas platform seluler yang dikodekan dalam C #, sehingga Anda tidak perlu menggunakan Swift secara terpisah untuk iOS dan hal yang sama berlaku untuk Android.
sumber
Xamarin digunakan untuk aplikasi telepon (baik iOS / Android). .NET Core digunakan untuk mendesain aplikasi Web yang dapat bekerja pada Apache dan IIS.
Itulah perbedaan dalam dua kalimat.
sumber
diperbarui pada Mei 2019
Anda harus menggunakan .Net Core 3.0 dan versi yang lebih baru pada versi berikutnya. Net 5, yang Anda butuhkan hanyalah satu platform terpadu. Net5
sumber