Wydanie OpenSilver 1.0, implementacji Silverlight o otwartym kodzie źródłowym

Ukazała się pierwsza stabilna wersja projektu OpenSilver oferująca otwartą implementację platformy Silverlight, która pozwala na tworzenie interaktywnych aplikacji internetowych z wykorzystaniem technologii C#, XAML i .NET. Kod projektu napisany jest w języku C# i rozpowszechniany jest na licencji MIT. Skompilowane aplikacje Silverlight można uruchamiać w dowolnych przeglądarkach stacjonarnych i mobilnych obsługujących WebAssembly, ale bezpośrednia kompilacja jest obecnie możliwa tylko w systemie Windows przy użyciu programu Visual Studio.

Przypomnijmy, że Microsoft zaprzestał rozwijania funkcjonalności Silverlight w 2011 roku i zaplanował całkowite zaprzestanie wsparcia platformy na 12 października 2021 roku. Podobnie jak w przypadku Adobe Flash, rozwój Silverlight został wycofany na rzecz standardowych technologii internetowych. Około 10 lat temu powstawała już otwarta implementacja Silverlight o nazwie Moonlight, oparta na Mono, jednak jej rozwój został wstrzymany ze względu na brak zapotrzebowania na tę technologię ze strony użytkowników.

Projekt OpenSilver podjął próbę ożywienia technologii Silverlight w celu przedłużenia życia istniejących aplikacji Silverlight w kontekście zakończenia wsparcia platformy przez Microsoft i zaprzestania obsługi wtyczek przez przeglądarki. Jednak zwolennicy .NET i C# mogą również używać OpenSilver do tworzenia nowych programów. Do opracowania aplikacji i migracji z API Silverlight do równoważnych wywołań OpenSilver proponuje się skorzystanie ze specjalnie przygotowanego dodatku do środowiska Visual Studio.

OpenSilver opiera się na kodzie z projektów open source Mono (mono-wasm) i Microsoft Blazor (część ASP.NET Core), a aplikacje są kompilowane do kodu pośredniego WebAssembly w celu wykonania w przeglądarce. OpenSilver jest rozwijany wraz z projektem CSHTML5, który umożliwia kompilowanie aplikacji C#/XAML/.NET do reprezentacji JavaScript odpowiedniej do działania w przeglądarce. OpenSilver rozszerza bazę kodu CSHTML5 o możliwość kompilacji C#/XAML/.NET do WebAssembly zamiast JavaScript.

W swojej obecnej formie OpenSilver 1.0 w pełni obsługuje wszystkie podstawowe funkcje silnika Silverlight, w tym pełną obsługę C# i XAML, a także implementację większości interfejsów API platformy, wystarczającą do korzystania z bibliotek C#, takich jak Telerik UI, WCF RIA Services , PRISM i MEF. Co więcej, OpenSilver zapewnia również pewne zaawansowane funkcje, których nie ma w oryginalnym Silverlight, takie jak obsługa C# 9.0, .NET 6 i nowych wersji środowiska programistycznego Visual Studio, a także zgodność ze wszystkimi bibliotekami JavaScript.

Plany na przyszłość obejmują zamiar wdrożenia w przyszłym roku obsługi języka Visual Basic (VB.NET) oprócz obecnie obsługiwanego języka C#, a także udostępnienia narzędzi do migracji aplikacji WPF (Windows Prezentacja Foundation). W ramach projektu planowane jest także wsparcie środowiska programistycznego Microsoft LightSwitch oraz zapewnienie kompatybilności z popularnymi bibliotekami .NET i JavaScript, które mają być dostarczane w postaci gotowych do użycia pakietów.

Źródło: opennet.ru

Dodaj komentarz