.NET Core

Z Wikipedii, wolnej encyklopedii
Przejdź do nawigacji Przejdź do wyszukiwania

.NET (wcześniej nazywany jako .NET Core) – wolne i otwarte oprogramowanie pozwalające tworzyć i uruchamiać wysoce wydajne aplikacje na platformach Windows, Linux, macOS. Framework ten umożliwia programowanie aplikacji przeznaczonych dla chmury obliczeniowej oraz IoT, aplikacji internetowych z użyciem wzorca MVC, bibliotek, aplikacji klasycznych, a nawet rozwiązań opartych na uczeniu maszynowym, czy obliczeniach kwantowych. Programy w środowisku .NET mogą być tworzone m.in. przy użyciu języków C#, F#, czy Visual Basic.

Uczenie maszynowe albo uczenie się maszyn, systemy uczące się (ang. machine learning) – stosunkowo młoda i szybko rozwijająca się dziedzina wchodząca w skład nauk zajmujących się problematyką SI (patrz sztuczna inteligencja).Port szeregowy (ang. Serial Port) – port komputerowy, przez który dane są przekazywane w formie jednego ciągu bitów. Port ten jest zwykle zaopatrzony w specjalny układ o nazwie UART, który tłumaczy ciągi bitów na bajty i na odwrót.

Powstanie i rozwój[ | edytuj kod]

Rozwój frameworka został zapoczątkowany przez firmę Microsoft jako otwartoźródłowa implementacja platformy .NET Framework. Kod źródłowy jest dostępny w serwisie GitHub, a rozwój jest koordynowany przez .NET Foundation.

12 listopada 2014 Microsoft zapowiedział powstanie .NET Core jako osobną gałąź technologii .NET, wprowadzającą m.in. wsparcie dla systemów opartych o jądro Linux oraz macOS, będącą „przeprojektowaną wersją .NET-u z uproszczoną wersją standardowej biblioteki klas”. Jeden z pracowników firmy wyjaśnił także, że będzie ona „podstawą dla przyszłych platform technologii .NET w przyszłości”.

NuGet – otwartoźródłowy, oficjalny i domyślny system zarządzania pakietami dla aplikacji działających w środowisku .NET. C# (C Sharp, dosłownie "C-krzyżyk", "cis") – obiektowy język programowania zaprojektowany przez zespół pod kierunkiem Andersa Hejlsberga dla firmy Microsoft.

Pierwsza stabilna wersja frameworka, .NET Core 1.0, pojawiła się 27 czerwca 2016, którego wsparcie pojawiło się wraz z aktualizacją dla Microsoft Visual Studio 2015. Kolejne wersje, .NET Core 1.0.4 oraz .NET Core 1.1.1 pojawiły się 7 marca 2017 wraz z premierą Microsoft Visual Studio w wydaniu 2017.

.NET Framework, w skrócie .NET (wym. dot net) – platforma programistyczna opracowana przez Microsoft, obejmująca środowisko uruchomieniowe (Common Language Runtime – CLR) oraz biblioteki klas dostarczające standardowej funkcjonalności dla aplikacji. Technologia ta nie jest związana z żadnym konkretnym językiem programowania, a programy mogą być pisane w jednym z wielu języków – na przykład C++/CLI, C#, F#, J#, Delphi 8 dla .NET, Visual Basic .NET. Zadaniem platformy .NET Framework jest zarządzanie różnymi elementami systemu: kodem aplikacji, pamięcią i zabezpieczeniami. W środowisku tym można tworzyć oprogramowanie działające po stronie serwera internetowego (IIS) oraz pracujące na systemach, na które istnieje działająca implementacja tej platformy. Z racji jej pochodzenia najpełniej obsługiwane są systemy z rodziny Microsoft Windows, jednak ponieważ zasadnicza część platformy została zgłoszona jako standard ECMA, powstają także jego niezależne wdrożenia, np. Mono i dotGNU.Microsoft Windows (ang. windows „okna”, IPA: [maɪkɹoʊsɑːft ˈwɪndoʊz]) – rodzina systemów operacyjnych stworzonych przez firmę Microsoft. Systemy rodziny Windows działają na serwerach, systemach wbudowanych oraz na komputerach osobistych, z którymi są najczęściej kojarzone.

14 sierpnia 2017 pojawiła się druga wersja frameworka, .NET Core 2.0, natomiast kolejne jego wersje .NET Core 2.1 30 maja 2018, która wprowadza narzędzia platformy .NET, które można pobrać z użyciem menedżera NuGet oraz .NET Core 2.2 4 grudnia 2018.

Wersja .NET Core 3 pojawiła się 23 września 2019, wprowadzając częściowe wsparcie dla platform Windows Forms oraz Windows Presentation Foundation, obsługę GPIO dla platformy Raspberry Pi oraz wsparcie dla komunikacji za pośrednictwem portu szeregowego dla systemów opartych o jądro Linux.

Komputer kwantowy – układ fizyczny do opisu którego wymagana jest mechanika kwantowa, zaprojektowany tak, aby wynik ewolucji tego układu reprezentował rozwiązanie określonego problemu obliczeniowego.Visual Basic to język programowania wysokiego poziomu i narzędzie programowania firmy Microsoft. Składnia jest oparta na języku BASIC, ale unowocześniona. Zawiera kilkaset instrukcji, funkcji i słów kluczowych. Nie jest językiem w pełni obiektowym, gdyż nie udostępnia np. możliwości dziedziczenia, czy polimorfizmu. Wykorzystuje technologię ActiveX.

10 listopada 2020 pojawiła się wersja .NET 5, będąca oficjalnie multiplatformową kontynuacją platformy .NET Framework, która wprowadza pełne wsparcie dla platform Windows Forms oraz Windows Presentation Foundation, a także możliwość kompilacji aplikacji jako jeden oraz niezależny od statusu instalacji środowiska uruchomieniowego plik wykonywalny.

Universal Windows Platform (UWP) – interfejs API stworzony przez Microsoft i po raz pierwszy użyty w systemie Windows 10. Jego celem jest ułatwienie pisania aplikacji uniwersalnych, działających zarówno na komputerach, jak i telefonach, konsolach Xbox One oraz okularach HoloLens bez potrzeby ich przepisywania dla każdego rodzaju urządzeń. Obsługuje języki C++, C#, VB.NET, XAML oraz JavaScript. Jest następcą Windows Runtime zaprojektowanego dla systemów Windows 8 i Windows Server 2012. F# – język programowania łączący w sobie cechy "klasycznego" języka imperatywnego oraz języka funkcyjnego. Jest on częścią platformy .NET firmy Microsoft.

Począwszy od wersji .NET 5, firma Microsoft określiła plan wydawniczy kolejnych wersji, zapowiadając ich wydanie co roku w listopadzie, gdzie co druga wersja będzie posiadać przedłużony okres wsparcia.

Architektura[ | edytuj kod]

.NET wykorzystuje znaną ze swojego poprzednika technologię CLI, pozwalającą na tworzenie aplikacji i biliotek dla wielu różnych platform, bez potrzeby znacznego modyfikowania kodu.

Ponadto .NET posiada oficjalny menedżer pakietów NuGet, pozwalając na instalację własnych aktualizacji poprzez to narzędzie.

ASP.NET – zbiór technologii opartych na frameworku zaprojektowanym przez firmę Microsoft. Przeznaczony jest do budowy różnorodnych aplikacji internetowych, a także aplikacji typu XML Web Services.GPIO (General Purpose Input/Output) jest interfejsem służącym do komunikacji pomiędzy elementami systemu komputerowego, takimi jak mikroprocesor czy różne urządzenie peryferyjne. Wyprowadzenia takiego urządzenia (piny) mogą pełnić zarówno rolę wejść, jak i wyjść i jest to zazwyczaj właściwość konfigurowalna. Piny GPIO są często grupowane w porty.

.NET w różnych swoich wersjach wspiera m.in. technologie Windows Forms, WPF, UWP, ASP.NET, ML.NET.

Przypisy[ | edytuj kod]

  1. .NET 5.0.2.
  2. LICENSE.TXT
  3. What is .NET Framework? A software development framework., Microsoft [dostęp 2021-01-25] (ang.).
  4. Kamil J. Dudek, Microsoft wydaje .NET 5: milowy krok w rozwoju platformy, dobreprogramy.pl, 12 listopada 2020 [dostęp 2021-01-25] (pol.).
  5. Wprowadzenie do platformy ASP.NET Core | Microsoft Docs, docs.microsoft.com [dostęp 2018-11-25] (pol.).
  6. a (ilust.), Co to jest ML.NET i jak to działa? - ML.NET, docs.microsoft.com [dostęp 2021-06-29] (pol.).
  7. Bradben, Jaki jest język Q# programowania używany & QDK? - Azure Quantum, docs.microsoft.com [dostęp 2021-06-29] (pol.).
  8. GitHub - dotnet/core: Home repository for .NET Core, github.com [dostęp 2018-11-25] (ang.).
  9. .NET Foundation, dotnetfoundation.org [dostęp 2018-11-25].
  10. Microsoft Open Sources .NET and Mono - Miguel de Icaza (ang.). tirania.org, 2014-11-12. [dostęp 2021-08-06].
  11. .NET Core is Open Source | .NET Blog (ang.). devblogs.microsoft.com, 2014-11-12. [dostęp 2021-08-06].
  12. .NET Core 1.0 released, now officially supported by Red Hat | Ars Technica (ang.). arstechnica.com, 2016-06-27. [dostęp 2021-08-06].
  13. Microsoft showcases SQL Server, .NET Core on Red Hat Enterprise Linux deliverables | ZDNet (ang.). zdnet.com, 2016-07-27. [dostęp 2021-08-06].
  14. Announcing .NET Core Tools 1.0 | .NET Blog (ang.). devblogs.microsoft.com, 2017-03-07. [dostęp 2021-08-06].
  15. Announcing .NET Core 2.0 | .NET Blog (ang.). devblogs.microsoft.com, 2017-08-14. [dostęp 2021-08-06].
  16. Announcing .NET Core 2.1 | .NET Blog (ang.). devblogs.microsoft.com, 2018-05-30. [dostęp 2021-08-06].
  17. Announcing .NET Core 2.2 | .NET Blog (ang.). devblogs.microsoft.com, 2018-12-04. [dostęp 2021-08-06].
  18. .NET Core is the Future of .NET | .NET Blog (ang.). devblogs.microsoft.com, 2019-05-06. [dostęp 2021-08-06].
  19. What's new in .NET Core 3.0 | Microsoft Docs (ang.). docs.microsoft.com, 2020-01-27. [dostęp 2021-08-06].
  20. Announcing .NET 5.0 | .NET Blog (ang.). devblogs.microsoft.com, 2020-11-10. [dostęp 2021-08-06].
  21. What's new in .NET 5 | Microsoft Docs (ang.). docs.microsoft.com, 2020-11-30. [dostęp 2021-08-06].
  22. NET Core Releases and Support | .NET Blog (ang.). devblogs.microsoft.com, 2020-09-23. [dostęp 2021-08-06].
  23. Understanding .NET Framework, .NET Core, .NET Standard And Future .NET, www.c-sharpcorner.com [dostęp 2021-06-29] (ang.).
  24. JonDouglas, Co to jest NuGet i co robi?, docs.microsoft.com [dostęp 2021-06-29] (pol.).
Common Language Infrastructure (z ang. architektura wspólnego języka, w skrócie CLI) to część platformy Microsoft .NET Framework, wykorzystywana jako środowisko uruchomieniowe oprogramowania stworzonego w różnych językach. Przed opracowaniem CLI każdy język wymagał własnego środowiska: Visual Basic – VBVM, Visual C++ (aż do Visual C++ .NET) – MSVCRT.Microsoft Visual Studio – to zintegrowane środowisko programistyczne firmy Microsoft. Jest używane do tworzenia oprogramowania konsolowego oraz z graficznym interfejsem użytkownika, w tym aplikacje Windows Forms, WPF, Web Sites, Web Applications i inne. Aplikacje mogą być pisane na platformy: Microsoft Windows, Windows Phone, Windows CE, .NET Framework, Microsoft Silverlight oraz konsole XBOX.




Warto wiedzieć że... beta

Windows Forms – nazwa interfejsu programowania graficznych aplikacji (API) w ramach Microsoft .NET Framework, umożliwiającego natywny dostęp do elementów interfejsu graficznego Microsoft Windows.
Biblioteka (w informatyce) – zbiór klas, funkcji (i ew. innych konstrukcji programistycznych), z których korzystają różne programy.
Wolne i otwarte oprogramowanie (ang. free and open-source software, także FOSS, FLOSS, po polsku również WiOO) – nazwa obejmująca zarówno wolne oprogramowanie (ang. free software) jak i otwarte oprogramowanie (ang. open source), używana najczęściej w dokumentach urzędowych i oficjalnych analizach.
.NET Framework, w skrócie .NET (wym. dot net) – platforma programistyczna opracowana przez Microsoft, obejmująca środowisko uruchomieniowe (Common Language Runtime – CLR) oraz biblioteki klas dostarczające standardowej funkcjonalności dla aplikacji. Technologia ta nie jest związana z żadnym konkretnym językiem programowania, a programy mogą być pisane w jednym z wielu języków – na przykład C++/CLI, C#, F#, J#, Delphi 8 dla .NET, Visual Basic .NET. Zadaniem platformy .NET Framework jest zarządzanie różnymi elementami systemu: kodem aplikacji, pamięcią i zabezpieczeniami. W środowisku tym można tworzyć oprogramowanie działające po stronie serwera internetowego (IIS) oraz pracujące na systemach, na które istnieje działająca implementacja tej platformy. Z racji jej pochodzenia najpełniej obsługiwane są systemy z rodziny Microsoft Windows, jednak ponieważ zasadnicza część platformy została zgłoszona jako standard ECMA, powstają także jego niezależne wdrożenia, np. Mono i dotGNU.
Internet rzeczy (również Internet przedmiotów, ang. Internet of Things – IoT) – koncepcja, wedle której jednoznacznie identyfikowalne przedmioty mogą pośrednio albo bezpośrednio gromadzić, przetwarzać lub wymieniać dane za pośrednictwem sieci komputerowej. Do tego typu przedmiotów zaliczają się między innymi urządzenia gospodarstwa domowego, artykuły oświetleniowe i grzewcze, urządzenia noszalne (wearables).
Chmura obliczeniowa – model przetwarzania oparty na użytkowaniu usług dostarczonych przez usługodawcę (wewnętrzny dział lub zewnętrzna organizacja). Funkcjonalność jest tu rozumiana jako usługa (dająca wartość dodaną użytkownikowi) oferowana przez dane oprogramowanie (oraz konieczną infrastrukturę). Oznacza to eliminację konieczności zakupu licencji czy konieczności instalowania i administracji oprogramowaniem. Konsument płaci za użytkowanie określonej usługi, np. za możliwość korzystania z arkusza kalkulacyjnego. Nie musi dokonywać zakupu sprzętu ani oprogramowania. Termin „chmura obliczeniowa” jest związany z pojęciem wirtualizacji. Model „chmury obliczeniowej” historycznie wiąże się z przetwarzaniem w sieci grid, gdzie wiele systemów udostępnia usługi korzystając z podłączonych zasobów, z tą różnicą, że w chmurze obliczeniowej mamy do czynienia z podążaniem zasobów za potrzebami usługobiorcy.
Raspberry Pi – platforma komputerowa stworzona przez Raspberry Pi Foundation. Premiera urządzenia miała miejsce 29 lutego 2012 roku.

Reklama