Вступ до того, що таке .NET Core

Наступна стаття Що таке .Net Core надає детальний план архітектури ядра .Net. .Net Core - це платформа розвитку з відкритим кодом, розроблена та підтримувана Microsoft та спільнотою .Net. .Net Core розроблений, враховуючи різні потреби та цілі, зосереджуючись на веб-розробці, розробці Windows Phone та розробці додатків Windows Store. .Net Core - це підмножина .Net Framework. Точніше кажучи, роздвоєна версія .Net Framework. Тепер вам може бути цікаво, у чому полягає потреба придумати .Net Core, коли це лише підмножина .Net Framework. .Net core має деякі принципові зміни в тому, як він працює. Перш за все, це більш модулюється. Це допомагає створювати програми лише з потрібними бібліотеками і без додаткового багажу. По-друге, це справді кросплатформна. Це робить його вибором платформи розвитку майбутнього.

.Net Core Architecture

  • З будь-якою платформою або рамкою розвитку, основним і найважливішим є її архітектура. Архітектура визначає спосіб взаємодії розробників та бібліотек з платформою. Перш ніж ми дізнаємося більше про .Net Core, важливо дізнатися, що лежить в основі .Net Core.

  • Тут знаходиться NET Core в стеку .Net. На сьогоднішній день різні .Net фреймворки та бібліотеки використовують загальні бібліотеки виконання, компілятори та пакети NuGet. Вони будують власні бібліотеки, орієнтовані на платформу, поверх цих загальних пакетів. Загальні бібліотеки містять визначення для примітивних матеріалів, таких як типи даних. Це навряд чи зміниться і, таким чином, є основою для всіх фреймворків NET.

Основні термінології в архітектурі .Net Core

Давайте розберемося з ключовими термінологіями в архітектурі .Net Core.

Основний CLR

Core CLR - це загальна мова виконання, оптимізована для багатоплатформних та хмарних розгортань. Це, поряд з .Net Native Runtime, є основою всіх платформ на базі .Net.

.Net Native Runtime

Також називається керованим режимом виконання .Net Native Runtime містить власні бібліотеки Windows. Це також містить компіляцію Ahead Of Time (AOT) замість колишньої компіляції Just In Time (JIT). Це покращує продуктивність програм.

.Net Native Runtime та Core CLR - це шари, що містять реалізацію примітивних типів, а також загальні колекції в .Net. Ці шари майже не змінюються і є постійними протягом різних стеків .Net. Таким чином, різні API стеків .Net, таким чином, мають однакові реалізації.

Єдиний БКЛ

Уніфікована бібліотека базових класів, яка також називається CoreFX, складається з базового та фундаментального класів, які складають ядро ​​платформи .Net Core.

Моделі додатків

Поверх BCL розмістіть різні моделі додатків, які розробники використовують для розробки додатків, орієнтованих на платформу. В даний час .Net Core має модель ASP .Net для веб-розробки та модель Windows Store для розробки програм Windows.

Сила NuGet

  • Платформа .Net Core, на відміну від попередньої .Net Framework, поставляється як набір пакетів NuGet. Таким чином, .Net Core суттєво сприяє вже процвітаючої екосистемі пакетів NuGet. Зауважте, що .Net Core не є єдиним пакетом NuGet. Натомість було розроблено, модульовано та поставлено декілька пакунків NuGet.
  • Крім того, Microsoft усунула плутанину навколо номенклатури пакетів NuGet та відповідних зборів. У .Net Core пакети NuGet мають те саме ім'я, що і збірка. Наприклад, незмінні колекції тепер надсилаються під назвою System.Collections.Immutable замість Microsoft.BCL.Immutable. Це значно спростило проблему визначення того, який пакет NuGet містить яку збірку. Гей, вони зараз такі ж названі.

Отже, чому Microsoft вирішила поставити .Net Core як набір пакетів NuGet? Ну ось причини:

  • NuGet дозволяє доставляти .Net Core по-спритному. Будь-яке оновлення будь-якої функції .Net Core можна просто споживати, оновивши пакет NuGet.
  • Це узагальнило залежності у ваших програмах. Тепер немає посилань на збірки, бібліотек та сторонніх посилань NuGet. Вони всі зараз NuGet. Отже, якщо будь-якому сторонній пакет NuGet потрібна більш висока версія бібліотеки System.Collections, він запропонує вам оновити відповідну систему. Колекції пакету NuGet і ви готові. Це дійсно стає дуже простим.
  • Модульний підхід .Net Core гарантує, що кожне додаток розгортає лише ті пакунки, які їм потрібні. Без додаткового багажу.

Як .Net Core спрощує роботу?

.Net Core - це платформа, поверх якої є такі структури, як ASP .Net Core та Universal Windows Platform, які використовують і розширюють можливості .Net Core. Давайте розглянемо особливості .Net Core, які полегшують життя розробникам.

Крос-платформа та архітектура

.Net Core дотримується принципу "побудувати один раз" у будь-якому місці. Таким чином, це кросплатформна платформа. Він підтримує платформи Windows, MacOS та Linux. Ви можете створити свою програму на будь-якій платформі та запустити на іншій. Також додаток, вбудований у .Net Core, є послідовним у своїй поведінці в будь-якій архітектурі, такі як x64, x86 або ARM.

Інструменти командного рядка

.Net Core оснащений простими у використанні інструментами командного рядка для тих, хто любить кодувати чорно-білий. Ці інструменти зручні для локального розвитку, а також для постійної інтеграції коду у сховищах.

Гнучка CI / CD

.Net Core підтримує постійну інтеграцію та постійне розгортання. Таким чином, вам потрібно потурбуватися лише про логіку коду. Відпочинок все обробляється платформою .Net Core.

Мови та IDE

.Net Core програми та бібліотеки, і їх можна кодувати в C #, F # і Visual Basic. Це також підтримується інтеграцією з улюбленими IDE, такими як Visual Studio, VS Code, Sublime, Vim тощо.

Сумісність та підтримка

Сумісний з .Net Framework, .Net Standard, Mono API та Xamarin. Будучи відкритим кодом, він має велику підтримку як від спільноти, так і від Microsoft.

API

.Net Core відкриває API для багатьох загальних цільових, а також високопродуктивних сценаріїв. З одного боку, є API для примітивних типів даних (bool, int тощо) та колекцій (списки, словники тощо). З іншого боку, існують API для високопродуктивних типів, таких як Vector та Pipelines.

Необхідні навички

.Net Core - платформа для розробки додатків. Існують основи, побудовані на .Net Core, які розробники можуть використовувати для створення додатків на них. Щоб навчитися розробці в .Net Core, вам потрібно трохи зрозуміти розробку ASP .Net, архітектуру MVC та те, як працюють пакети NuGet і посилання на збірку в ASP .Net. Це значно спростить вашу криву навчання. Крім того, знання C # є обов'язковим для розробки програми в .Net Core.

Тим, хто вже є розробниками в .Net Framework і хоче перенести свої програми на .Net Core, радимо пам’ятати про наступні моменти:

  • .Net Core підтримує архітектуру ASP .Net MVC. Однак якщо ваша програма базується на веб-формах, .Net Core не підтримує WebForms.
  • Якщо ваша програма побудована на архітектурі ASP .Net MVC, то єдиним виграшем для переміщення її до платформи .Net Core є крос-сумісність. Якщо перехресна сумісність не є значною мірою для змін ваших ігор для вашої програми, ASP .Net MVC так само добре.
  • .Net Core зосереджується в основному на розробці веб-магазинів і Windows Store. Таким чином, на даний момент немає підтримки для програм Desktop.
  • Найкращі переваги від міграції .Net Core отримують консольні програми. Це зробить їх працездатними на багатьох операційних системах
  • Веб-додатки, вбудовані Silverlight, потребують переходу до HTML, перш ніж розглянути .Net Core. Підтримка Silverlight припинила Microsoft.

Як .Net Core допомагає в кар’єрному зростанні

.Net Core - це справді кросплатформна платформа. Це майбутня платформа Microsoft для інтегрованого середовища розробки для пристроїв майбутнього. .Net Core зосереджується на веб-магазинах, магазині Windows та сенсорних пристроях.

Навчання .Net Core допоможе вам у створенні додатків, що задовольняють майбутні потреби пристроїв та платформ. Принципи дизайну .Net Core гарантують, що ви дотримуєтеся найкращих практик розробки. Швидко зростає потреба у більш надійному та інтерактивному досвіді застосування, будь то веб-або мобільні. Це, в свою чергу, зумовлює необхідність вдосконаленої, простішої та зручнішої для розробників платформи. Пройшли ті дні, коли додаток, розроблений на одній платформі, не працював би на іншій платформі. Сьогоднішній попит полягає у розробці додатків, які побудовані один раз та запущені всюди. .Net Core побудований на цій ідеології, і вивчення цього засобу допоможе вам створити кращі програми для сучасних пристроїв.

Висновок - Що таке .NET Core

Платформа .NET Core не схожа на попередника .Net Framework. Це новий стек .NET, який оптимізований для розробки з відкритим кодом та швидкої доставки через NuGet. Хоча .NET Framework був розроблений як крос-платформний, він в основному був платформою лише для Windows. .NET Core справді крос-платформний. Microsoft прагне бути готовою до майбутнього і. Net Core є дуже плідним кроком до цього.

Зацікавленим читачам рекомендується глибше зануритися в .Net Core, читаючи блоги Microsoft Developers. Для тих, хто прагне почати створення додатків у .Net Core, найкращий спосіб - це розпочати проект оболонки в .Net Core у Visual Studio.

Рекомендовані статті

Це посібник щодо Що таке .NET Core. Тут ми обговорюємо .NET Core Architecture, працюючи, вимагаючи навичок разом із Carrer Growth. Ви також можете ознайомитися з іншими запропонованими нами статтями -

  1. ASP.NET Framework
  2. Що таке ASP.NET?
  3. Життєвий цикл сторінки ASP.NET
  4. Кар'єра в ASP.NET
  5. Xamarin Інтерв'ю Питання | Топ 18