Wprowadzenie do Czym jest .NET Core

Poniższy artykuł Czym jest .Net Core zawiera szczegółowy zarys architektury .Net Core. .Net Core to platforma programistyczna typu open source zaprojektowana i utrzymywana przez Microsoft i społeczność .Net. Program .Net Core został zaprojektowany z myślą o różnych potrzebach i celach, koncentrując się na programowaniu WWW, programowaniu Windows Phone i programowaniu aplikacji ze Sklepu Windows. .Net Core jest podzbiorem .NET Framework. Dokładniej mówiąc, rozbudowana wersja .Net Framework. Być może zastanawiasz się, jaka była potrzeba stworzenia .Net Core, gdy jest on tylko podzbiorem .NET Framework. Rdzeń .Net wprowadza kilka zasadniczych zmian w sposobie działania. Przede wszystkim jest bardziej modułowy. Pomaga to tworzyć aplikacje tylko z potrzebnymi bibliotekami i bez dodatkowego bagażu. Po drugie, jest naprawdę wieloplatformowy. To sprawia, że ​​jest to platforma rozwoju przyszłości.

Architektura .Net Core

  • W przypadku dowolnej platformy lub frameworka podstawową i najważniejszą rzeczą jest jego architektura. Architektura określa sposób interakcji programistów i bibliotek z platformą. Zanim dowiemy się więcej o .Net Core, ważne jest, aby zobaczyć, co stanowi rdzeń .Net Core.

  • To tutaj .Net Core znajduje się w stosie .Net. Różne frameworki i biblioteki .Net do tej pory używają wspólnych bibliotek środowiska uruchomieniowego, kompilatorów i pakietów NuGet. Budują własne biblioteki specyficzne dla platformy na podstawie tych wspólnych pakietów. Biblioteki wspólne zawierają definicje prymitywnych rzeczy, takich jak typy danych. Prawie się to nie zmienia i dlatego stanowi podstawę wszystkich frameworków stosu .Net.

Kluczowe terminologie w architekturze .Net Core

Pozwól nam zrozumieć kluczowe terminologie w architekturze .Net Core.

Rdzeń CLR

Core CLR to środowisko uruchomieniowe języka wspólnego zoptymalizowane pod kątem wdrożeń wieloplatformowych i chmurowych. To wraz z .Net Native Runtime stanowi podstawę wszystkich platform opartych na .Net.

.Net Native Runtime

Program .Net Native Runtime, zwany także środowiskiem zarządzanym, zawiera natywne biblioteki oparte na systemie Windows. Zawiera także kompilację Ahead Of Time (AOT) zamiast poprzedniej kompilacji Just In Time (JIT). Poprawia to wydajność aplikacji.

Natywny środowisko uruchomieniowe .Net i podstawowy CLR to warstwy, które zawierają implementacje typów pierwotnych, a także ogólne zbiory w .Net. Te warstwy prawie się nie zmieniają i są stałe w różnych stosach .Net. Różne interfejsy API stosu .Net współużytkują zatem te same implementacje.

Unified BCL

Biblioteka Unified Base Class Library, zwana także CoreFX, składa się z podstawowych i podstawowych klas, które stanowią rdzeń platformy .Net Core.

Modele aplikacji

Na szczycie BCL znajdują się różne modele aplikacji, które programiści wykorzystują do opracowywania aplikacji specyficznych dla platformy. Obecnie .Net Core ma model ASP .Net do tworzenia stron internetowych i model Windows Store do tworzenia aplikacji Windows.

Moc NuGet

  • Platforma .Net Core, w przeciwieństwie do poprzedniej platformy .Net Framework, jest dostarczana jako zestaw pakietów NuGet. Tak więc .Net Core zasadniczo przyczynia się do i tak dobrze prosperującego ekosystemu pakietów NuGet. Zauważ, że .Net Core nie występuje jako pojedynczy pakiet NuGet. Zamiast tego został podzielony na części, zmodularyzowany i dostarczony jako kilka pakietów NuGet.
  • Ponadto Microsoft wyeliminował zamieszanie wokół nazewnictwa pakietów NuGet i odpowiednich zestawów. W .Net Core pakiety NuGet mają taką samą nazwę jak zestaw. Na przykład niezmienne kolekcje są teraz wysyłane pod nazwą System.Collections.Immutable zamiast Microsoft.BCL.Immutable. To znacznie uprościło problem określania, który pakiet NuGet zawiera który zestaw. Hej, teraz nazywają się tak samo.

Dlaczego więc Microsoft zdecydował się dostarczyć .Net Core jako zestaw pakietów NuGet? Oto powody:

  • NuGet umożliwia dostarczanie .Net Core w zwinny sposób. Uaktualnienie dowolnej funkcji .Net Core można po prostu zużyć, aktualizując pakiet NuGet.
  • Uogólniło to zależności w twoich aplikacjach. Teraz nie ma żadnych odwołań do zestawu, bibliotek ani odnośników NuGet innych firm. Wszyscy są teraz NuGet. Jeśli więc jakiś pakiet NuGet innej firmy wymagał wyższej wersji biblioteki System.Collections, wyświetli monit o uaktualnienie odpowiedniego systemu. Kolekcje NuGet i gotowe. To naprawdę staje się bardzo proste.
  • Modułowe podejście .Net Core zapewnia, że ​​każda aplikacja wdraża tylko potrzebne pakiety. Bez dodatkowego bagażu.

W jaki sposób .Net Core ułatwia pracę?

.Net Core to platforma, na której znajdują się frameworki, takie jak ASP .Net Core i Universal Windows Platform, które wykorzystują i rozszerzają funkcje .Net Core. Przyjrzyjmy się funkcjom .Net Core, które ułatwiają życie programistom.

Międzyplatformowa i architektura

.Net Core działa zgodnie z zasadą budowania po uruchomieniu w dowolnym miejscu. Jest to więc platforma wieloplatformowa. Obsługuje platformy Windows, MacOS i Linux. Możesz zbudować aplikację na dowolnej platformie i uruchomić na innej. Ponadto aplikacja wbudowana w .Net Core zachowuje spójność w dowolnej architekturze, takiej jak x64, x86 lub ARM.

Narzędzia wiersza poleceń

.Net Core zawiera łatwe w użyciu narzędzia wiersza poleceń dla tych, którzy lubią kodować czarno-biały. Narzędzia te są przydatne do rozwoju lokalnego, a także do ciągłej integracji kodu w repozytoriach.

Elastyczny CI / CD

.Net Core obsługuje ciągłą integrację i ciągłe wdrażanie. Dlatego musisz się tylko martwić logiką kodu. Reszta jest obsługiwana przez platformę .Net Core.

Języki i IDE

Aplikacje i biblioteki .Net Core i mogą być kodowane w językach C #, F # i Visual Basic. Jest to dodatkowo wspierane przez integrację z twoimi ulubionymi IDE, takimi jak Visual Studio, VS Code, Sublime, Vim itp.

Kompatybilność i wsparcie

Kompatybilny z .Net Framework, .Net Standard, Mono API i Xamarin. Będąc oprogramowaniem typu open source, ma świetne wsparcie ze strony społeczności, a także firmy Microsoft.

Pszczoła

.Net Core udostępnia interfejsy API dla wielu scenariuszy ogólnego zastosowania, a także dla wysokowydajnych scenariuszy. Z jednej strony istnieją interfejsy API dla prymitywnych typów danych (bool, int itp.) I Kolekcje (listy, słowniki itp.). Z drugiej strony istnieją interfejsy API dla typów o wysokiej wydajności, takich jak Vector i rurociągi.

Wymagane umiejętności

.Net Core to platforma programistyczna. Istnieją struktury oparte na .Net Core, które programiści mogą wykorzystać do budowania na nich aplikacji. Aby nauczyć się programowania w .Net Core, potrzebujesz podstawowej wiedzy na temat programowania ASP .Net, architektury MVC oraz tego, jak działają pakiety NuGet i odwołania do zestawów w ASP .Net. To znacznie uprości twoją krzywą uczenia się. Ponadto znajomość języka C # jest niezbędna do opracowania aplikacji w .Net Core.

Dla tych, którzy są już programistami w .Net Framework i chcą migrować swoje aplikacje do .Net Core, zaleca się pamiętać o następujących kwestiach:

  • .Net Core obsługuje architekturę ASP .Net MVC. Jeśli jednak aplikacja jest oparta na formularzach internetowych, .Net Core nie obsługuje formularzy internetowych.
  • Jeśli twoja aplikacja jest oparta na architekturze ASP .Net MVC, jedynym zyskiem z przeniesienia jej na platformę .Net Core jest wzajemna kompatybilność. Jeśli kompatybilność krzyżowa nie jest przełomem dla Twojej aplikacji, ASP .Net MVC jest równie dobra.
  • .Net Core koncentruje się głównie na rozwoju Web i Windows Store. Dlatego obecnie nie ma wsparcia dla aplikacji Desktop.
  • Aplikacje konsolowe najbardziej korzystają z migracji .Net Core. Dzięki temu będą działać na wielu systemach operacyjnych.
  • Wbudowane aplikacje Weblight Silverlight wymagałyby migracji do HTML przed rozważeniem .Net Core. Wsparcie Silverlight zostało wycofane przez Microsoft.

W jaki sposób .Net Core pomaga w rozwoju kariery

.Net Core jest naprawdę wieloplatformowy. To przyszła platforma Microsoft dla zintegrowanych środowisk programistycznych dla urządzeń przyszłości. .Net Core koncentruje się na sieci, sklepie Windows i urządzeniach dotykowych.

Nauka .Net Core bardzo pomoże ci w tworzeniu aplikacji, które zaspokoją przyszłe potrzeby urządzeń i platform. Zasady projektowania .Net Core zapewniają przestrzeganie najlepszych praktyk programistycznych. Szybko rośnie zapotrzebowanie na bardziej niezawodne i interaktywne aplikacje, niezależnie od tego, czy są one oparte na Internecie, czy na urządzeniach mobilnych. To z kolei powoduje potrzebę ulepszonej, prostszej i przyjaznej dla programistów platformy. Dawno minęły czasy, gdy aplikacja opracowana na jednej platformie nie działała na innej platformie. Dzisiejszym zapotrzebowaniem jest tworzenie aplikacji, które są budowane raz i działają wszędzie. .Net Core opiera się na tej ideologii i nauczenie się, że pomoże ci tworzyć lepsze aplikacje dla nowoczesnych urządzeń.

Wniosek - Co to jest .NET Core

Platforma .NET Core nie przypomina swojego poprzednika .NET Framework. Jest to nowy stos .NET zoptymalizowany pod kątem programowania open source i sprawnego dostarczania za pośrednictwem NuGet. Chociaż .NET Framework został zaprojektowany jako platforma wieloplatformowa, w dużej mierze była to platforma tylko dla systemu Windows. .NET Core jest naprawdę wieloplatformowy. Microsoft chce być gotowy na przyszłość, a .Net Core jest bardzo owocnym krokiem w tym kierunku.

Zainteresowanym czytelnikom zaleca się głębsze zanurzenie się w .Net Core, czytając blogi Microsoft Developers. Dla tych, którzy chcą rozpocząć tworzenie aplikacji w .Net Core, najlepszym sposobem jest rozpoczęcie od projektu powłoki w .Net Core w Visual Studio.

Polecane artykuły

Jest to przewodnik po tym, czym jest .NET Core. Tutaj omawiamy .NET Core Architecture, działającą, wymaganą Umiejętności wraz z Carrer Growth. Możesz także przejrzeć nasze inne sugerowane artykuły -

  1. ASP.NET Framework
  2. Co to jest ASP.NET?
  3. Cykl życia strony ASP.NET
  4. Kariera w ASP.NET
  5. Pytania do wywiadu Xamarin | Top 18