Po miesiącach ziewania znużonych deweloperów, eksperymentujących z migracją z Silverlighta na WinRT, Microsoft wydał schyłkową, piątą wersję swojej webowej platformy programistycznej.
Chłopcy z Redmond nie próżnowali. Nowości podzielić można na kilka kategorii: poprawę obsługi multimediów, tekstu, tworzenia aplikacji biznesowych, poprawę wydajności, poprawę grafiki, ulepszenia narzędzi programistycznych i zwiększenie możliwości zaufanych aplikacji.
Ale zacznijmy od początku. SoundEffect API poprawnie odtworzy dźwięki z małymi opóźnieniami. Filmy przewijane szybko do tyłu i do przodu będą odtwarzały dźwięk z poprawionymi tonami. Kulejąca do tej pory wydajność odtwarzania H.264 ulegnie poprawie. Długo odtwarzane programy TV będą w tle wymieniać licencje bez przerywania odtwarzania, a nieautoryzowane aplikacje nie będą odtwarzały nieautoryzowanych treści.
Typografia również ulegnie poprawie. Designer będzie regulował dokładnie odległości między literami i liniami pięknego tekstu OpenType i Pixel Snapped Text, wspartego przez szybszy Block Layout Engine. Wydruk również przyspieszy dzięki optymalizacji liczby zadań potrzebnych do wykonania wydruku przez wektorowy Postscript.
Ciekawą nowością są obiekty RichTextBlocks. Normalnie tekst jest w stanie otaczać obiekty prostokątne. Deklarując prostokąty RichTextBlocks można sprawić, aby tekst podobnie jak w designerskich magazynach, otaczał ilustracje nie tylko prostokątne, ale o dowolnych kształtach.
W kategorii „budowanie aplikacji biznesowych nowej generacji” zebrano wiele różnych rozwiązań. Między innymi PivotViewer przedstawiony półtorej roku temu na konferencji TED. Jest to rewolucyjny sposób na przeglądanie danych i filtrowanie ich i analizowanie w bardzo wizualny i szybki sposób. Na przykład można w ten sposób zobaczyć całą historię przeglądanych stron w postaci ogromnej planszy DeepZoom, przeglądanej przez powiększanie i pomniejszanie. Dobrym przykładem może być wizualny katalog filmów NetFliksa.
Inne ciekawostki to ClickCounter, który wzbogaca aplikację o obsługę wielokliku, Listbox i ComboBox przeszukują i przewijają listę pozycji w trakcie pisania. Właściwości mogą być bindowane do kontrolki rodzica. W XAML można zadeklarować skórki danych uzależnione od typu wyświetlanego obiektu. Pojawiło się zdarzenie DataContextChanged, właściwość PropertyChanged w enumeratorze UpdateSourceTrigger. Save File Dialog ma właściwość deklarujacą domyślną nazwę pliku, a Open File Dialog folderu. W XAML można debugować powiązane dane i wywoływać bezpośrednio metody przez Custom Markup Extension oraz bindować kod do ustawiaczy styli (ang. binding on style setters).
Wydajność Silverlighta 5 również ulegnie drastycznej poprawie. Poprawiono parsowanie kodu XAML UserControls i ResourceDictionaries, ClientHttpWebRequest ma mniejsze opóźnienia, w trybie bez okna (ang. windowless) w IE9 Silverlight korzysta z akceleracji sprzętowej przez SurfacePresenter API. Kompilator Just-In-Time uruchamia się szybciej, dzięki użyciu wielu rdzeni procesora.
Stos obsługi grafiki został przebudowany tak, aby obsługiwać nowe funkcje, jak np. niezależne animacje uruchamiane oddzielnie od głównego wątku aplikacji, z wykorzystaniem procesora karty graficznej.
Przez API XNA twórcy gier trójwymiarowych uzyskają dostęp do niskopoziomowych funkcji procesora karty graficznej, tworzenia shaderów i niskopoziomowych obiektów 3D, włączając w to cele renderowania, wbudowane efekty XNA i ustawienia buforów głębi i szablonu (ang. stencil) oraz wielopróbkowego antyaliasowania.
Nie bez znaczenia jest też zwiększenie uprawnień aplikacji. Będą one mogły otwierać wiele okien, poparte regułami grupy i podpisem cyfrowym korzystać z wszystkich możliwości przewidzianych dla aplikacji pełnego zaufania, obsługiwać HTML w przeglądarce, odczytywać i zapisywać do każdego pliku na dysku użytkownika i wywoływać przez P/Invoke funkcje natywne systemu.
Od teraz Silverlight 5 jest obsługiwany przez Visual Studio Team Test.
Lista nowości jest imponująca. Gdyby Silverlight było przeglądarką, to dostęp do danych lokalnych, P/Ivoke, Pivot i oddzielenie animacji od wątku głównego wystarczyłyby na 10 wydań. Microsoft długo czekał z publikacją Silverlighta 5, ale było warto. To niemożliwe, żeby Microsoft zainwestował tyle pracy w projekt, który miałby teraz stracić na dynamice rozwoju. Wydanie Silverlighta 5 powinno uciąć spekulacje: projekt ma się bardzo dobrze i będzie dalej rozwijany. Microsoft nie musi już nic mówić. Wystarczyło, że opublikował listę nowości w zwykłym pliku tekstowym. Każdy programista wie, jaka jest ich wartość. Flash i HTML5 mogą się teraz schować.
Co szczególnie interesujące, nieprawdziwe okazały się pogłoski o wydaniu Silverlighta tylko wersji na Windows i Internet Explorera. Nowa platforma działa na Internet Explorzerze 7, 8 i 9, Firefoksie od wersji 3.6, Safari od wersji 4 na Mac OS-ie X i Chrome od wersji 12. Wspierany jest już też tryb 64-bitowy w IE 9 na Windows 7 SPI 1, Windows Server 2008 R2 SP1 oraz IE8 na Windows Server 2008 R2 SP1.