HTML5 - Jakie zalety?

0

Jakie są plusy i minusy? Co sądzicie o HTML5? Ktoś już robił coś w tym? Czy pokona FLASHA?
Eksperymentalne gry w HTML5
http://www.chromeexperiments.com/
Np. gra Flower Power
http://www.chromeexperiments.com/detail/flowerpower/
wygląda przecudnie.
Inne
http://www.chromeexperiments.com/detail/gravity/

0

Przecież nawet Adobe i Microsoft idą w stronę HTML5. Flash i Silverlight pójdą w odstawkę za kilka lat.

0

Nie jestem pewny, czy wiesz dokładnie czym jest HTML5, bo z Twojego postu to nie wynika...

Jeśli można jakkolwiek przewidywać przyszłość, to na pewno HTML5 ma świetlaną. To język znaczników, który będzie rozpowszechniony w Sieci -- tak jak dzisiaj starsze wersje (X)HTML-a. Na nim będzie bazowała Sieć.

A gierki... gierki to tylko wierzchołek góry lodowej. Tak naprawdę zarówno gierki, jak i buzzword "HTML5" używane są do promowania otwartych, ustandaryzowanych, zaimplementowanych bezpośrednio w przeglądarkach rozwiązań.

Do "HTML-a 5" zalicza się nie tylko język znaczników, ale np. również nowe API, widoczne w przeglądarkach z poziomu JavaScriptu. A więc np. web-workery, czyli coś zapewniającego swoistą (uproszczoną, na szczęście) wielowątkowość w JS-ie. Albo web-sockety, które dają zupełnie nowe możliwości wydajnego, dwustronnego łączenia się z serwerem.

Gry z kolei korzystają z elementu <canvas>, który jest bezpośrednio w języku znaczników HTML5 i który -- poprzez API JavaScriptowe -- umożliwia nam rysowanie rzeczy piksel po pikselu. To oraz lekka domieszka CSS3 (np. kolory rgba) to zwykłe ciegiełki, które dają możliwości tworzenia zaawansowanych witryn-dokumentów www. Jednocześnie, cegiełki (API) te stały się na tyle bogate, że dają nadają ludziom piszącym kod natywnie obsługiwany przez przeglądarki możliwości pozwalające tworzyć efektowne gry, które fajnie się PR-owo sprzedają.

W grach i zaawansowanych aplikacjach duże znaczenie ma skok wydajności silników javascriptowych. Bo te gry HTML5 tak naprawdę nie pisze się "w HTML-u 5". Nie! To zwykły JavaScript! Zobacz tylko na kod! Naprawdę: fakt, że korzystasz z canvasa i że masz wreszcie odpowiednik metody putpixel to fajna rzecz, ale z punktu widzenia kodu -- gdy przyjmie się ją za aksjomat -- to w zasadzie pierdoła! Piszesz stary, dobry kod JS-owy, tyle że tym razem możesz go użyć, by wydajnie(j) manipulować grafiką.

A jest wydajnie(j). Silniki nowoczesnych przeglądarek od kilku lat prześcigają się w wydajności JS-owej, uznając ją za priorytet. Kod JS jest kompilowany praktycznie do kodu maszynowego. JavaScript zyskał swój JIT. Dzisiejsze przeglądarki, mimo że są znacznie cięższe niż stare i że ich wymagania sprzętowe rosną, to jednak wykonują kod javascriptowy o rzędy wielkości (!) razy szybciej niż np. stare IE.

JavaScript ma się jako język bardzo dobrze. Standardy też. Są wspierane przez Microsoft, Google (mają Chrome'a i aplikacje webowe, to im zależy), Apple (nie cierpią Flasha), a teraz nawet samo Adobe zaczyna się powoli poddawać...

HTML5 na pewno ma przyszłość; już teraz jest powszechnie używany. Używam go w każdym nowym projekcie. Ale nie robię gierek. Zwykłe aplikacje www. Wrzuć krótki <!DOCTYPE html> i już używasz HTML-a 5 ;). To się po prostu musi przyjąć, bo ludziom nie chce się kopiować za każdym razem DOCTYPE-ów ;).

A czy wyprze toto Flasha... Na razie Flash ma lepsze środowisko. Może Adobe zrobi jedno dla HTML-a 5? Już powstał kompilator Flash -> "HTML5" (tak naprawdę: JavaScript). Toczy się batalia o video w Sieci. HTML5 ma swój element <video>. Mam nadzieję, że wyprze Flasha, który bywa żałośnie niestabilny. Zresztą, jeśli możesz wystarczająco wydajnie rysować piksel po pikselu, to nawet <video> nie jest konieczne -- niedawno ktoś zaimplementował jakiś kodek bezpośrednio w JavaScripcie... Oczywiście, wraz z <video> dodanie filmika do dokumentu HTML będzie łatwiutkie.

0

Masz rację co do stabilności flasha. Wiele osób na niego narzeka. Poruszyłem to w wątku
UWAGA. Nie instalujcie flash playera 11 bo zawiesza kompa
Jedną z ciekawszych rzeczy jakie przeczytałem o Piątce jest to, że precyzuje np. sposób obsługi błędów, co powoduje, że strony będą wyświetlane na każdej przeglądarce tak samo.

0
maszynaz napisał(a)

precyzuje np. sposób obsługi błędów, co powoduje, że strony będą wyświetlane na każdej przeglądarce tak samo.

Standaryzacja obsługi błędów to rzeczywiście dobra rzecz i pomoże zniwelować różnice w wyświetlaniu stron, ale na pewno nie wystarcza, by to osiągnąć.

Zauważ, że obsługa HTML-a 5 (języka znaczników) ma naprawdę nie aż tak wielki wpływ na wyświetlenie strony. Może inaczej: wpływ ma krytyczny, co pokazują IE <= 8, które domyślnie nie pozwalają na jakiekolwiek ostylowanie nowych tagów (!), ale tak naprawdę więcej problemów nastręczy poziom obsługi CSS (konkretnie: zapewne CSS3). To CSS odpowiada za sposób prezentacji dokumentu. Wystarczy, że przeglądarka nie obsługuje jakiejś własności lub wartości -- i już strona nie będzie wyświetlana tak, jak w przeglądarce z pełną obsługą CSS3.

A tak w ogóle niemożliwe jest, żeby strony wyglądały tak samo na każdej platformie. Niemożliwe i niepraktyczne. Ekrany mają różne rozdzielczości, różne odwzorowania kolorów. Ludzie używają różnych urządzeń i tak naprawdę dokument widziany na 24-calowym, panoramicznym ekranie oglądanym z odległości kilkudziesięciu centymetrów będzie wyglądał zupełnie inaczej niż oglądany na trzymanym w ręce telefonie komórkowym o znacznie mniejszej przekątnej ekranu, ale znacznie większej gęstości pikseli. Trzeba po prostu się z tym pogodzić.

0

A tak w ogóle niemożliwe jest, żeby strony wyglądały tak samo na każdej platformie. Niemożliwe i niepraktyczne

ZTCP to w dokumencie można podać kilka CSSów, np jeden do druku, inny do prezentacji, inny na monitory, w piątce może jest też profil na smartfony, itd Jak pokazuje CSS Zen Garden, za pomocą nawet starego CSSa można zrobić naprawdę duże zmiany. Z drugiej strony przeglądarka nie może np usunąć jakieś tam formularze, bo się niby strona na ekranie telefonu nie zmieści. Rozbieżności w implementacjach HTML5 (+ reszta kompletu) spowodują tylko mniejszą popularność tegoż rozwiązania.

0

IMO w 100% nie zostanie wyparty Silverlight ani flash a to z tego powodu, że jednak w JS i canvasie trudniej jest zrobić pewne animacje zwłaszcza problem braku wielowątkowości, do tego na razie brak jakichś frameworków a to co oferuje nam canvas to tylko bardzo ubogie funkcje IMO przydały by się gotowe, rozbudowane funkcje do rysowania np. paraboli, krzywych itp. do tego sockety - trudno jest zrobić gierke "prawie" realtime z requestami http (wiem, że powoli niektóre przeglądarki już implementują sockety - i całe szczęście). W dodatku pisanie animacji wygląda teraz bardziej jak grzebanie w aśmie niż fajne edytory "wysiwyg" znane z silverlighta czy flasha gdzie jakiś laik (w domyśle grafik nie koder) może sobie wszystko wyklikać na lini czasu.

aha a co z reklamami np. flashowymi vs canvas? zaciągniecie sobie JS'a od reklamodawcy na waszą stronę żeby mógł sobie manipulować zawartością waszej strony?

0
  1. HTML5 ma Web-Workery, a więc wielowątkowość jest.
  2. Kto komu każe pisać w czystym JS? Można skorzystać z GWT: http://code.google.com/intl/pl-PL/webtoolkit/ http://code.google.com/p/quake2-gwt-port/
  3. Manipulować? Tzn twierdzisz, że wszyscy (bez wyjątku) reklamodawcy będą wpuszczać syf na strony reklamobiorców? Teraz niby nie mogą? Tak czy siak wkleja się JSa na stronę przecież.
0

znacznik <video> jest fantastyczny. Umożliwia bezproblemowe i pełnoekranowe wyświetlanie filmów, a także można ku mojej uciesze w prosty sposób zapisywać pliki filmowe na dysku czego nie można było zrobić we flashu. Oby jak najszybciej YT przesiadł się na 5-ke a flash niech zdechnie.

0

Ostatnio mielismy dylemat w firmie: html5 czy silverlight.
Wybor padl na silverlight'a. Dlaczego? Srodowisko developerskie! Sprobojcie zarzadzac wiekszym projektem napisanym w javascripcie... powodzenia ;)

html5 jak najbardziej ma przyszlosc acz poki co nie nadaje sie do bardziej skomplikowanych rzeczy - bo niestety ale wiekszosc firm nie ma tylu pieniedzy i czasu co google na tworzenie czegos fajnego w js'ie.

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0