Powinieneś użyć .NET Core zamiast .NET Framework lub Xamarin, w następujących 6 typowych scenariuszach zgodnie z dokumentacją tutaj .
1. Potrzeby różnych platform
Oczywiście, jeśli Twoim celem jest posiadanie aplikacji (sieci / usługi), która powinna być zdolna do uruchamiania na różnych platformach (Windows, Linux i MacOS), najlepszym wyborem w ekosystemie .NET jest użycie .NET Core jako środowiska wykonawczego (CoreCLR ) i biblioteki są wieloplatformowe. Innym wyborem jest skorzystanie z Mono Project.
Obie opcje są typu open source, ale .NET Core jest bezpośrednio i oficjalnie wspierany przez Microsoft i będzie wymagał dużych inwestycji.
Korzystając z platformy .NET Core na różnych platformach, najlepsze wrażenia programistyczne można uzyskać w systemie Windows dzięki oprogramowaniu Visual Studio IDE, które obsługuje wiele funkcji zwiększających wydajność, w tym zarządzanie projektami, debugowanie, kontrolę źródła, refaktoryzację, bogatą edycję, w tym Intellisense, testy i wiele innych. Ale bogate programowanie jest również obsługiwane przy użyciu Visual Studio Code na komputerach Mac, Linux i Windows, w tym Intellisense i debugowanie. Nawet redaktorzy zewnętrzni, tacy jak Sublime, Emacs, VI i więcej, działają dobrze i mogą uzyskać inteligencję edytora przy użyciu projektu Omnisharp typu open source.
2. Mikrousługi
Podczas budowania systemu zorientowanego na mikrousługi złożonego z wielu niezależnych, dynamicznie skalowalnych, stanowych lub bezpaństwowych mikrousług, wielką zaletą, którą tutaj masz, jest to, że możesz używać różnych technologii / frameworków / języków na poziomie mikrousług. Dzięki temu możesz zastosować najlepsze podejście i technologię dla poszczególnych obszarów w systemie, więc jeśli chcesz budować bardzo wydajne i skalowalne mikrousługi, powinieneś użyć .NET Core. Ostatecznie, jeśli musisz użyć dowolnej biblioteki .NET Framework, która nie jest kompatybilna z .NET Core, nie ma problemu, możesz zbudować tę mikrousługę z .NET Framework, aw przyszłości możesz być w stanie zastąpić ją .NET Rdzeń.
Platformy infrastruktury, z której można skorzystać, jest wiele. W przypadku dużych i złożonych systemów mikrousług najlepiej używać usługi Azure Service Fabric. Ale w przypadku bezstanowych mikrousług można również używać innych produktów, takich jak usługa Azure App Service lub Azure Functions.
Należy pamiętać, że od czerwca 2016 r. Nie każda technologia na platformie Azure obsługuje platformę .NET Core, ale obsługa platformy .NET Core na platformie Azure dramatycznie wzrośnie po wydaniu platformy .NET Core w wersji RTM.
3. Najlepsze i skalowalne systemy
Kiedy Twój system potrzebuje najlepszej możliwej wydajności i skalowalności, aby uzyskać najlepszą szybkość reakcji bez względu na liczbę użytkowników, to właśnie tam .NET Core i ASP.NET Core naprawdę świecą. Im więcej możesz zrobić przy tej samej ilości infrastruktury / sprzętu, tym bogatsze wrażenia będziesz mieć dla swoich użytkowników końcowych - przy niższych kosztach.
Dni poprawek wydajności prawa Moore'a dla pojedynczych procesorów już nie obowiązują; jednak musisz zrobić więcej, gdy Twój system się rozwija i potrzebujesz wyższej skalowalności i wydajności dla bardziej wymagających użytkowników, których liczba rośnie wykładniczo. Musisz w końcu uzyskać większą wydajność, optymalizować wszędzie i lepiej skalować między klastrami maszyn, maszyn wirtualnych i rdzeni procesorów. Nie chodzi tylko o zadowolenie użytkownika; może również mieć ogromny wpływ na koszt / całkowity koszt posiadania. Dlatego ważne jest, aby dążyć do wydajności i skalowalności.
Jak wspomniano, jeśli możesz wyizolować małe elementy systemu jako mikrousługi lub inne luźne powiązania, będzie lepiej, ponieważ będziesz mógł nie tylko ewoluować każdy mały kawałek / mikrousługę niezależnie i mieć lepszą długoterminową zwinność i konserwacja, ale będziesz także mógł korzystać z dowolnej innej technologii na poziomie mikrousług, jeśli to, co musisz zrobić, nie jest kompatybilne z .NET Core. I w końcu będziesz mógł go refaktoryzować i przenieść do .NET Core, jeśli to możliwe.
4. Opracowanie stylu wiersza poleceń dla komputerów Mac, Linux lub Windows.
To podejście jest opcjonalne w przypadku korzystania z .NET Core. Oczywiście możesz również korzystać z pełnego środowiska IDE programu Visual Studio. Ale jeśli jesteś programistą, który chce tworzyć przy użyciu lekkich edytorów i intensywnego korzystania z wiersza poleceń, .NET Core jest przeznaczony dla interfejsu CLI. Zapewnia proste narzędzia wiersza poleceń dostępne na wszystkich obsługiwanych platformach, umożliwiając programistom tworzenie i testowanie aplikacji przy minimalnej instalacji na programistach, laboratoriach lub maszynach produkcyjnych. Redaktorzy, tacy jak Visual Studio Code, używają tych samych narzędzi wiersza poleceń w swoich doświadczeniach programistycznych. IDE jak Visual Studio używają tych samych narzędzi CLI, ale ukrywają je za bogatym doświadczeniem IDE. Programiści mogą teraz wybrać poziom, w którym chcą wchodzić w interakcję z łańcuchem narzędzi, od interfejsu CLI do edytora i IDE.
5. Potrzebujesz obok siebie wersji .NET na poziomie aplikacji.
Jeśli chcesz móc instalować aplikacje w zależności od różnych wersji frameworku w .NET, musisz użyć .NET Core, który zapewnia 100% obok siebie, jak wyjaśniono wcześniej w tym dokumencie.
6. Aplikacje Windows. UWP .NET.