KAP1 KAP1
2045
BLOG

45. Programisto .NET, ucz się HTML5 i JavaScriptu!

KAP1 KAP1 Technologie Obserwuj notkę 35

"Windows 8 stawia na aplikacje webowe w JavaScripcie i HTML5. Platforma .NET i Windows Presentation Foundation odchodzą powoli w cień." - przeczytałem w artykule na webhosting.pl. W pierwszej chwili aż mnie zmroziło, bo jakże to, uczyłem się tak długo środowiska .NET aby znowu ją porzucić? Jakże to tak zarzucać tak doskonałą platformę?

Gdy czytałem artykuł dalej, zrozumiałem już, że autorowi pomieszała się platforma z dostępnymi w ramach tej platformy technologiami, dla przykładu ja bardzo rzadko używam Windows Presentation Foundation (WPF), ale już nie mogę się obejść bez pozostałych elementów platformy. Duża część aplikacji webowych wykorzystuje frameworki ASP.NET MVC (ja również), które również mają się nijak do WPF, ale to, że nie używam WPF nie znaczy zaraz, że nie używam innych elementów .NET Framework.



Czytam dalej w tym samym artykule:

  • Silverlight to technologia budowania aplikacji webowych, która miała stać się konkurencją dla Flasha. Windows Presentation Foundation to z kolei biblioteka, która powstała na bazie .NET Framework i pozwala tworzyć bogate wizualnie aplikacje pulpitowe.
  • Nie musi to być prawdą, ale załóżmy na chwilę, że .NET rzeczywiście umiera. Wraz z nim zapewne zakończyłby się rozwój WPF. Microsoft zostaje więc z webowym Silverlightem i zapowiedzią, że Windows 8 będzie miał aplikacje pisane w HTML i JS.
  • Co zrobią wtedy programiści .NET, którzy wydali tysiące złotych na szkolenia i poświęcili kilka lat życia na naukę tej platformy?

Gdyby nawet WPF umierał (co nie jest prawdą), to nie można zakładać że zaraz cały .NET umiera! To jakby uznać, że z założenia śmierci liścia w drzewie wynika zaraz śmierć całego drzewa. Gdzie tu logika? Na wszelki wypadek zajrzałem jednak na ranking języków programowania TIOBE.COM i co zobaczyłem? Tradycyjnie wspierające się w górę C# (główny, ale nie jedyny język platformy .NET), jeszcze w zeszłym roku był na szóstej pozycji za Visual Basic (również Microsoft) i PHP, by w tym roku przeskoczyć je o dwie pozycję i wylądować na czwartej. Język C++, który również może być używany na tej platformie, a nie jest to ujęte w zestawieniu.

Możemy zobaczyć rośnięcie popularności języka C# na poniższym wykresie na przestrzeni dziesięciu lat - ta czarna kreska.

Gdyby ktoś miał jeszcze wątpliwości, to można postęp podbijania rynku informatycznego przez język C# zobaczyć na poniższym pojedynczym wykresie.

Nie można też zapominać o dotychczasowych użytkownikach komputerów, którzy już mają zainstalowane frameworki .NET. Co więcej - Windows 8 też będzie miał. Możemy to zobaczyć na rankingu statowl.com.

A autor artykułu wbrew twardym faktom uparcie twierdzi, że Microsoft chce zabić swoją własną dojną krowę, która przywiązała do tej korporacji całą rzeszę programistów.

Co więcej, autor bierze się dalej za prorokowanie przyszłości MONO (open sourcowa wersja .NET Framework), której również wróży śmierć, bo po przejęciu Novella (właściciela MONO) przez Attachmate duża część pracowników została zwolniona. Krytykuje też fakt, że projekt będzie nadal żył swoim życiem, a w zasadzie drugim (bo to pierwsze też rozwijane dalej, tylko przez nową firmę). Autor pisze:

  • Miguel de Icaza, jeden z domniemanych współtwórców, skupił się teraz na tworzeniu nowego frameworka o nazwie Xamarin, ale jest on przeznaczony dla iOS i Androida.

Co jest oczywiście kolejną nieprawdą, bo sam De Icaza chce wręcz przeciwnie - nie zamykać, a rozszerzyć dotychczasową implementację MONO oraz Moonlight (odpowiednik Silverlight) o wersje komercyjne dla iOS (Apple) i Androida (Google). osnews.pl:

  • De Icaza, który jest też twórcą GNOME, widzi jednak przyszłość w stworzonej przez siebie platformie, będącej otwartym odpowiednikiem microsoftowego .NET. Do głównych zadań stojących przed nową firmą zalicza:
    • stworzenie komercyjnej implementacji .NET dla iOS
    • stworzenie komercyjnej implementacji .NET dla Androida
    • kontynuować rozwój otwartoźródłowego Mono oraz Moonlight
    • eksplorować możliwości dla Moonlight w świecie mobilnym oraz Mac store
  • Xamarin pozyskał już finansowanie od aniołów biznesu oraz zatrudnił pierwszych pracowników.

W oryginalnym, angielskim źródle tego powyższego tekstu, jest nawet napisane wprost:

  • We believe strongly insplitting the presentation layer from the business logic in your application and supporting both your backend needs with C# on the server, the client or mobile devices and giving you the tools to use .NET languages inevery desktop and mobile client.
  • W moim wolnym tłumaczeniu: My silnie wierzymy w bardzo mocne powiązanie warstwy prezentacji z logiką biznesową w Twojej aplikacji i wsparcie Twoich potrzeb z C# na serwerze, kliencie lub urządzeniach mobilnych i damy Ci narzędzie do używania języków .NET na każdym komputerze lub kliencie mobilnym.

Na poparcie tego ostatniego zdania, są w podlinkowanych przeze mnie źródłach są takie ładne obrazki, które pokazują, jak ważna jest platforma .NET/MONO dla technologii mobilnych.

Warto zwrócić uwagę na to, że nie pierwszy to raz w historii, gdy projekt open sourcowy jest rozwijany na bazie tego samego źródła, ale pod nowym szyldem. Pewnie mało kto pamięta, że królująca obecnie w CMS-ach Joomla, wyodrębniła się z projektu Mambo.

A baza danych Firebird wyodrębniła się z otwartego i zamykanego później Interbase (ale to już zbyt zamierzchłe czasy, aby to było widać w Google trends).

Wrzucę tutaj jeszcze kilka komentarzy pod artykułem, z którymi się w pełni utożsamiam:

  • Microsoft jedynie dodaje nowe API do Windowsa. Tak by łatwiej dało się pisać proste aplikacje pod Windows.
    • - C#, F# i cała reszta .NET
    • - Java
    • - Silverlight, Flash, ...
    • - JavaScript i HTML (z natywnym API dostępu do bibliotek systemowych)
  • HTML ma po prostu ułatwić pisanie aplikacji za 1-2 dolary które będą się pojawiać w sklepie obok drogich programów typu Adobe Photoshop czy AutoCAD. Nikt nie rezygnuje z gier typu Battlefield 3 na rzecz Angry Birds :)
  • grzesiek2 2011-06-07 13:30:16  
  • @Tomasz Smykowski: Drogi autorze większego steku bzdur nie czytałem. Masz w ogóle pojęcie o czym piszesz? Wiesz na czym polegają aplikacje internetowe? Słyszałeś kiedyś o czymś takim jak ASP .NET? Myślisz, że zrobisz aplikację w HTML5 i JS? Platforma .NET jest najnowszym i najlepszym jak dotąd rozwiązaniem wyprzedzającym JAVE. Nie ma najmniejszego zagrożenia na brak pracy programistów .NET
  • zieli 2011-06-07 14:15:58

Zastanawia mnie, czy tam w tym webhosting.pl nie mają redaktorów wyłapujących artykuły zawierające tak wiele błędów? Niech ta moja notka będzie przestrogą, że nie należy czytać bezkrytycznie tego, co piszą w gazetach, a już tym bardziej nie powinno się wyrabiać zdania na podstawie przeczytania samych nagłówków w sieci. W artykule zabrakło najważniejszej informacji, że Microsoft od długiego już czasu konsekwentnie rozwija różne nawet konkurencyjne do siebie technologie jednocześnie, nawet WPF ma swojego konkurenta w postaci Windows.Forms, który jest do dzisiaj z powodzeniem używany.

Microsoftowi na tyle skutecznie udaje się jak do tej pory godzić wodę z ogniem, że roztoczył swoją opiekę również nad projektami open sourcowymi, rozwijając choćby PHP (świetny connector do SQL Server czy API do Windows Azure) czy całą serią aplikacji open source bazujących na PHP - dostępnych automatycznie za pomocą Web Platform Installer. Jeżeli Microsoft wprowadza pod strzechy Windows 8 dużą część elementów HTML5 i JS - to trzeba się cieszyć, że będzie dostępna kolejna technologia, a nie biadolić, że poprzednie odejdą w zapomnienie, bo nie odejdą. Tak jak nie odchodziły dotychczas, wraz z rozwojem kolejnych platform .NET 2, 3, 3.5, 4.

Microsoft nie może zarzucić platformy, która z zdobyła tak wielką popularność i co ważne, zaufanie developerów. Nie może porzucić platformy, która jest częścią podbijającego rynek Windows Azure i którą właśnie Microsoft wprowadził pod strzechy konsoli do gier XBOX 360 pod postacią Microsoft XNA. Nie może zarzucić technologii, w której ma przygotowane większość bibliotek API wraz z dokumentacją. Na samej stronie microsoft.com jest 5 milionów stron internetowych poświęconych C#, na świecie około 171 milionów. Żadnej firmy nie stać na tak gigantyczne przedsięwzięcie, aby przenieść to w jakimś rozsądnym czasie na nową platformę, nawet Nokia za przejście swoich telefonów na technologię Windows Phone 7 (z .NET framework wraz z WPF, a jakże) zainkasowała pokaźną sumkę od Microsoft.

Technologie się rozwijają, to oczywiste. Pojawiają się nowe, to też oczywiste. Umierają stare, to też oczywiste. Aby o tym pisać i cokolwiek wyrokować, trzeba poznać szczegóły, a nie tylko nagłówki wiadomości. Więc oczywiście, że trzeba się uczyć nowych rzeczy, ale nie dlatego, że to co świetne i sprawdzone miałoby nagle przestać działać. Takich cudów to nie ma.

P.S.
Napisałem notkę pod wpływem chwili. Jeżeli ktoś czekał na patologiczny konkurs informatyczny - przepraszam, że jeszcze nie teraz. Na pewno sprawę opiszę. Póki co czekam na ostateczne wystawienie ocen.

KAP1
O mnie KAP1

Nowości od blogera

Komentarze

Inne tematy w dziale Technologie