Duże fragmenty oprogramowania Microsoftu właśnie stały się open source. Nie zdziwię się, jeśli ich rozwój teraz przyśpieszy

Duże fragmenty oprogramowania Microsoftu właśnie stały się open source. Nie zdziwię się, jeśli ich rozwój teraz przyśpieszy

Duże fragmenty oprogramowania Microsoftu właśnie stały się open source. Nie zdziwię się, jeśli ich rozwój teraz przyśpieszy

Microsoft otwiera kolejne fragmenty swojego ekosystemu. Tym razem są to istotne biblioteki związane z tworzeniem interfejsu użytkownika. Szczerze mówiąc, nie spodziewałem się tak szybkiego ich uwolnienia!

Microsoft w trakcie konferencji Microsoft Connect(); 2018 ogłosił uwolnienie i umieszczenie kodu źródłowego na GitHub trzech dużych elementów swojego ekosystemu: WPF, Windows Forms oraz WinUI.

Można z czystym sumieniem powiedzieć, że jeśli używasz Windows 10, to wszystkie aplikacje, jakie trafiają na twój ekran, używają co najmniej jednej z tych bibliotek. Są to podstawowe klocki budulcowe okienkowego interfejsu wraz z całym środowiskiem do zarządzania zasobami, stylami, oknami i ich elementami.

Co to właściwie za biblioteki?

Windows Forms

Windows Forms, zwana również WinForms, to biblioteka interfejsu użytkownika (ang. UI framework), która była (i wciąż jest) używana do budowania aplikacji desktopowych dla Windows od dobrych kilku wersji systemu. Jest to właściwie rodzaj wrappera, który umożliwia korzystanie z aplikacji .NET z podstawowych niskopoziomowych bibliotek interfejsu takich jak User32 czy GDI+, poszerzony o zaawansowane funkcje zarządzania.

To właśnie dzięki Windows Forms można w ciągu kilku minut zbudować w Visual Studio podstawową aplikację i rozszerzyć jej kontrolki o obsługę zdarzeń.

Na GitHub trafiła wersja kompatybilna z .NET Core, co oznacza że można budować aplikacje w multiplatformowym .NET uruchamiane w Windows z interfejsem Windows Forms.

WPF (Windows Presentation Foundation)

Windows Presentation Foundation jest nowocześniejszą od Windows Forms biblioteką UI. Wprowadziła ona własny język opisu interfejsu (XAML – Extensible Application Markup Language). Pozwolił on na wiele usprawnień takich jak dostosowanie widoku do możliwości urządzenia, responsywność, stylowanie, bądź zagnieżdżanie kontrolek. Dzięki modelowi szablonów łatwo było zaprojektować powtarzalne elementy interfejsu, który następnie skalował się do możliwości urządzenia i zależnie od ilości danych do wyświetlenia. Dzięki WPF można było również projektować aplikacje o interakcji opartej o interfejs dotykowy bądź np. gamepada lub pilota.

Podobnie jak w przypadku WinForms, wersja która trafiła na GitHub jest kompatybilna z .NET Core.

WinUI (Windows UI)

Biblioteka Windows UI to najmłodsza z uwolnionych bibliotek. Zawarte w niej kontrolki i funkcje są podstawą platformy uniwersalnej Windows (Universal Windows Platform). To właśnie na niej oparty jest Fluent Design, czyli nowy styl wizualny, który jest przyszłością systemu Windows.

WinUI może być również używana w projektach multiplatformowych dzięki Xamarin Forms. Na GitHub trafiła pod tym adresem.

Co oznacza uwolnienie bibliotek UI?

Uwolnienie tych ważnych elementów ekosystemu Windows nie oznacza jedynie dostępności do kodu źródłowego. Oznacza również:

  • Możliwość portowania, czyli przepisywania tych bibliotek na inne platformy i umieszczania ich w zupełnie niespotykanych kontekstach. Nie zdziwiłbym się, gdybyśmy wkrótce mogli za ich pomocą produkować aplikacje np. webowe, mobilne bądź np. desktopowe na Linuksa. Wszystko to pozostając całkowicie w środowisku .NET Core.
  • Możliwość ich poprawiania przez społeczność. Już w tej chwili w każdym założonym przez Microsoft repozytorium na GitHub znajdują się tzw. pull requesty, czyli poprawki bądź nowe funkcje przeznaczone do przejrzenia i ewentualnego włączenia do głównego repozytorium.

Praktyka rozwoju otwartego oprogramowania uczy, że po uwolnieniu zazwyczaj jego rozwój przyspieszał. Jestem pewien, że tak samo będzie z WinForms, WPF oraz WinUI.

Dołącz do dyskusji

Advertisement