Silverlight vs. Flash - inne cele, inne możliwości

Microsoft Silverlight - czyli platforma dostarczania multimediów i tworzenia aplikacji webowych z bogatym interfejsem - wszedł niedawno w kolejne stadium rozwoju. Trzecia odsłona technologii przyniosła kilkadziesiąt usprawnień, w tym wsparcie transmisji strumieniowych wideo w rozdzielczości HD. "Nie należy kojarzyć Silverlight wyłącznie z odtwarzaczem do mediów czy tworzeniem animacji. To w szczególności bogata platforma do tworzenia zaawansowanych, bogatych aplikacji internetowych" - podkreśla jednak Bartłomiej Zass, ISV Developer Evangelist z Microsoftu. Przedstawiciel koncernu opowiada nam też o mocnych stronach i słabościach Silverlighta w stosunku do Flasha i różnicach między obiema technologiami; wyjaśnia również jak Silverlight radzi sobie z kwestiami bezpieczeństwa.

PC World: Jaki cel przyświecał programistom podczas prac na Silverlightem 3? Które komponenty technologii wymagały największej poprawy w porównaniu z wersją nr 2?

Bartłomiej Zass, Microsoft: Nadrzędnym celem, jaki przyświecał inżynierom pracującym nad kolejną wersją technologii Silverlight było przede wszystkim lepsze dostosowanie jej do potrzeb programistów tworzących nowoczesne, bogate aplikacje internetowe. Celem nie było poprawianie komponentów z wersji drugiej (chociaż oczywiście część z nich zostało udoskonalonych), ponieważ Silverlight 2 był już gotową platformą. Skupiono się raczej na dodaniu zupełnie nowych elementów, które pozwolą lepiej zaadresować rosnące potrzeby inżynierów aplikacji zarówno konsumenckich, jak i biznesowych. Zmiany idą w kilku kierunkach - lepszej obsługi audio i wideo oraz grafiki, polepszenia produktywności aplikacji RIA (Rich Internet Applications) oraz pracy poza przeglądarką. Znakomicie większe możliwości dają również nowe wersje narzędzi.

Bartłomiej Zass - ISV Developer Evangelist, Microsoft Sp. z o.o.

Zajmuje się współpracą z polskimi firmami wytwarzającymi oprogramowanie, pomagając w doborze technologii oraz efektywnym wykorzystaniu najnowszych rozwiązań. Jako programista uczestniczył w wielu projektach informatycznych. Kilka lat pełnił funkcję lidera Grupy .NET działającej przy Politechnice Warszawskiej. W firmie Microsoft w dziale Developer & Platform Group od 2 lat. Wcześniej był m.in. właścicielem firmy ISV. Prelegent polskich i zagranicznych konferencji technicznych. Do jego głównych obszarów zainteresowań należą technologie internetowe, programowanie urządzeń mobilnych oraz zagadnienia konstrukcji interfejsu użytkownika.

B. Zass wygłosi prelekcję dotyczącą nowości w Silverlight 3 w czasie konferencji Microsoft Technology Summit 2009.

Zobacz także:

Mówiąc o mediach, najważniejsze jest dodanie obsługi kodeków firm trzecich. Silverlight 3 "z pudełka" nie wspiera już tylko rodziny kodeków Windows Media. Obsługiwany jest standard H.264, ale także dowolne kodeki, które zainstalowane są na komputerze użytkownika. To wszystko działa wyjątkowo wydajnie dzięki wsparciu sprzętowemu GPU dla odtwarzania pełnoekranowego filmów w jakości Full HD. Jeśli ponadto zechcemy wyeliminować przykry dla użytkowników efekt zatrzymywania i buforowania filmów, z pomocą przyjdzie technologia Smooth Streaming. Kiedy zmieni się szybkość połączenia internetowego, film zamiast zatrzymać się płynnie (w czasie rzeczywistym) dostosuje jakość obrazu do możliwości połączenia. To wszystko bez konieczności wykorzystywania jakichkolwiek innych serwerów niż serwer internetowy. Bardzo ważną nowością jest także premiera platformy Playready DRM, która pozwoli zabezpieczyć dowolne treści (nie tylko utwory audiowizualne) - oczywiście w pełni wspierana od strony klienckiej przez Silverlight.

Wsparcie sprzętowe GPU zapewnia nie tylko poprawienie wydajności odtwarzania filmów. Zwiększono płynność animacji dzięki nowym mechanizmom cache’owania, możliwe jest również wykorzystanie tzw. "Pixel Shaderów" (pisanych w języku HLSL, znanym programistom tworzącym niskopoziomowy kod interpretowany przez GPU). Pixel Shadery pozwolą w wydajny sposób zrealizować na przykład efekty typu "blue box" dla filmów z których chcemy w czasie rzeczywistym usunąć część tła. Do dyspozycji mamy również przestrzeń 3D na której możemy rozmieszczać dowolne obiekty wizualne.

Tak jak wspomniałem na początku, Microsoft kładzie duży nacisk na dostosowanie technologii Silverlight do scenariuszy biznesowych, nie tylko konsumenckich. Aby szybko tworzyć takie aplikacje wprowadzono ponad 70 nowych kontrolek (między innymi doskonałe kontrolki do prezentacji wykresów) oraz wzorce architektoniczne upraszczające projektowanie takich rozwiązań. Kontrolki można tak jak kiedyś bindować do danych (ale i między sobą), stylować, itp.

Jedną z najciekawszych zmian jest dodanie trybu off-line. Po kliknięciu prawym przyciskiem na aplikację Silverlight, użytkownik może wybrać opcję zainstalowania jej na komputerze. Będzie ona mogła być od tej chwili uruchamiana poza kontekstem przeglądarki w dowolnym momencie, nawet bez aktywnego połączenia internetowego.

Równolegle z technologią, usprawniono także same narzędzia. Najciekawszym elementem jaki dodano do środowiska Expression Blend jest technologia SketchFlow do prototypowania. Umożliwia błyskawicznie wyklikać prototyp aplikacji ("szkic"), nanieść uwagi klienta a następnie przekształcić go w gotowy projekt.