Comment HTML5 "remplacer" Flash? [fermé]
Un sujet de débat qui a vu une résurgence depuis le dévoilement de l'iPad est la question de Flash contre HTML5. Il y a ceux qui suggèrent que HTML5 supplantera un jour/remplacera Adobe Flash.
Je ne développe pas de logiciel qui s'exécute dans un navigateur, donc ma compréhension (limitée) est:
- HTML est un langage de balisage de texte pur qui est livré via HTTP à un navigateur client. Le navigateur client interprète le balisage et le rendu (avec plus ou moins de succès) la page selon une spécification standard.
- Adobe Flash est un framework de convenance pour travailler avec des graphiques audio, vidéo, sonores et raster/vectoriels. Cela nécessite des outils de création Spéciaux (un compilateur peut-être?) et un lecteur personnalisé qui est disponible en tant que plug-in pour les navigateurs les plus courants.
Quelqu'un pourrait-il expliquer (à ce développeur c / c++) comment il est possible d'un point de vue technique/codage qu'un langage de balisage basé sur du texte (HTML5) puisse être considéré comme un remplacement d'un framework multimédia (Flash)?
S "il vous plaît pas d" arguments opiniâtres - juste des faits techniques.
25 réponses
Ce que les gens se réfèrent vaguement à HTML5 dans le contexte de cette discussion est la combinaison du HTML en tant que langage de balisage, du CSS qui spécifie comment il est rendu, et du code javascript qui manipule dynamiquement le HTML et le CSS.
En outre, HTML5 a non seulement les éléments de texte standard, mais aussi <canvas>
sur lequel les graphiques 2d peuvent être dessinés, et <video>
éléments qui intègre la vidéo (comme son nom l'indique).
Ainsi, dans une implémentation complète de HTML5, vous pouvez implémentez des sites Web dynamiques sans utiliser Flash. Un exemple est la version HTML5 de Youtube, récemment introduite en version bêta pour les utilisateurs Safari/Chrome, voir ici . Un autre est un émulateur NES {[9] } en javascript + HTML. (Eh bien ce dernier ne concerne pas vraiment HTML5... il utilise <canvas>
.)
Lorsque Steve J. a fait les commentaires sur HTML5 étant l'avenir, il n'a pas pris la peine d'expliquer que cette déclaration fait vraiment référence à L'utilisation la plus répandue de Flash aujourd'hui, qui est la vidéo. Peut-être n'a-t-il pas expliqué cela à dessein, de sorte que de nombreux utilisateurs finaux mal informés qui veulent regarder Hulu sur leurs iPhones déchaîneraient leur rage contre Flash. Qui est exactement ce qui a été happening..It est ennuyeux et J'ai perdu le respect pour Steve.
La pile HTML5 (html, css et JS) ne sera pas remplacement direct pour Flash. Je développe du contenu Flash depuis plus de 10 ans, je suis également très compétent en JS. Je pense à l'utilisation de JS pour les tâches où ActionScript peut accomplir la même chose en 50% de code en moins. Il y a des tâches qui seront très difficiles, voire impossibles à réaliser avec JS et CSS. Pour les animations rudimentaires et les fonctionnalités de type JQuery, bien sûr, HTML5 peut être une option viable à la place de Flash. Mais pour les jeux complexes et les RIAs, Je ne le vois tout simplement pas. Actionscript a évolué dans un langage robuste et complet.
L'autre chose importante est que le lecteur Flash est mis à jour périodiquement par Adobe pour résoudre tous les problèmes qui peuvent survenir. Comment vont-ils mettre à jour/améliorer la spécification HTML5 si elle devient la norme et que Flash est allé au revoir?? Ils ne le feront pas. vous devez attendre HTML6 et tous les navigateurs pour le supporter. Ce qui signifie que vous finissez par attendre 5-10 ans. Excellente façon de nous ramener à 1998. Non merci, je vais rester avec Flash pour l'instant.
Autant que Ouvert les normes sont un objectif digne, Je ne vois pas cela comme ils le disent...
Mes deux cents.
Je pense que certaines personnes ici programment des snobs et n'écoutent pas. Moi aussi, je suis un développeur Flash débutant et je ne veux pas qu'il disparaisse. Savez-vous pourquoi? Parce que les gens créatifs peuvent utiliser Flash pour développer ce qui est dans notre cerveau très facilement. Une personne qui aime dessiner et créer des scènes n'aime pas nécessairement coder. Taper un tas de "phrases" n'est pas dessiner et animer! Ce que vous dites à propos de HTML5 est comme dire que Picasso et Dali auraient dû apprendre une programmation la langue afin de peinture. Ridicule, non?
C'est pourquoi les gens préfèrent Flash à HTML5. Ce n'est pas égoïste, c'est juste reconnaître que les gens capables de créer du contenu Web animé cool seraient plutôt capables de créer nos propres visions plutôt que d'apprendre une compétence sans rapport ou de compter sur quelqu'un d'autre pour interpréter pour nous.
Au lieu de ridiculiser, vous voudrez peut-être créer un environnement visuel HTML5 qui rivalise avec Flash.
Comment est-il possible d'un point de vue technique/codage qu'un langage de balisage basé sur du texte (HTML5) puisse être considéré comme un remplacement à un framework multimédia (Flash)?
HTML5 est le nouveau nom chaud pour "Web technologies stack", pas seulement un "langage de balisage".
Il a un langage de programmation (JavaScript), comme le fait Flash; un ensemble D'API, en expansion significative dans le cadre des efforts communément étiquetés comme "HTML5", des façons de dessiner des graphiques (SVG,
Contrairement à Flash, les "applications HTML5" sont traitées par le navigateur, pas par un plugin de navigateur propriétaire, ce qui est bon - au moins pour les fournisseurs de navigateurs (voir la pièce pertinente de ce blog - Merci Jotham). Par exemple, il permet à un fournisseur de navigateur de résoudre les problèmes (et de ne pas attendre Adobe) - IIRC Apple a cité Flash comme étant la raison #1 des plantages parmi tous les plantages sur le Mac.
[modifié pour supprimer "les standards ouverts sont mieux " revendications que je suis trop paresseux pour sauvegarder]
Ce N'est pas simplement HTML5, mais lorsque l'adoption du navigateur est terminée. Par exemple, la présence de la balise HTML5 <video>
ne signifie rien sans un lecteur vidéo fourni par le navigateur pour présenter réellement la vidéo (à quel point, espérons-le, La vidéo Flash ne sera plus nécessaire). Il en va de même pour la balise <audio>
.
De plus, l'élément canvas de HTML5 (combiné avec JS) permet des graphiques beaucoup plus avancés dans un navigateur que ce qui pouvait être réalisé auparavant.
Eh bien, pour avoir une impression des capacités de HTML5/canvas + JavaScript, vous pouvez jeter un oeil à CE qui est une implémentation de Wolfenstein 3D purement fait en HTML5, sans utiliser de Flash (notez que vous avez besoin d'un navigateur compatible canvas tel que Firefox pour voir cela fonctionner).
Ce n'est pas tellement que HTML5 peut remplacer Flash en le faisant correspondre caractéristique par caractéristique. C'est plus que la pile HTML5 (y compris JavaScript et CSS) peut être utilisée pour construire le même genre d'applications Web riches pour lesquelles Flash était la seule option viable auparavant. Parce que HTML tient la promesse de répondre également à certaines des lacunes de la plate-forme Flash, Il y a un potentiel qu'il peut remplacer Flash dans cet espace à l'avenir.
Cette discussion est très centrée sur technologie qui est utilisée pour rendre l'application à des utilisateurs finaux. Il ne traite pas de la facilité avec laquelle les auteurs sont réellement en mesure de créer le contenu qui sera livré à leurs utilisateurs. Vous avez déjà mentionné que Flash est associé à un ensemble d'outils commerciaux spécialement conçus et commercialisés par Adobe pour répondre aux besoins des auteurs de contenu riche. De telles solutions pour HTML5 ne sont pas encore très adoptées. Pour les développeurs qui considèrent la création principalement comme le codage ce n'est pas un grand préoccupation et ils n'auront pas du mal à obtenir de la traction avec HTML5 (et beaucoup le font déjà). Pour les auteurs qui n'ont pas d'arrière-plan développeur/codage, cela peut être une autre histoire et pour eux la viabilité de HTML5 dépendra grandement de la disponibilité des outils de création intégrés. Peut - être que les outils Adobe Flash sortiront en HTML5 au lieu de SWF dans quelques années...
Ce que ces gens stupides Non créatifs n'ont pas réalisé, c'est que HTML5/Javascript/CSS est très gonflé pour commencer. Tout cet actif est toujours un fichier texte entièrement brut. aucune compression n'bytecode optimisation et ce sera toujours comme ça. Donc, pour les développeurs de jeux qui n'est pas une option ayant toute votre source à portée de main du vol. Flash vous permet de compiler votre code source dans un moyen plus compact tout en étant capable de créer votre contenu dynamique d'une manière graphique vectorielle serrée. Ontop de ce flash prend déjà en charge les shaders, l'accélération matérielle, les filtres de pixels (Pixel bender) et les effets de couche. Jusqu'à ce jour, vous ne pouvez pas obtenir des éléments html pour laisser tomber une ombre avec facilité et simplicité. HTML5 va simplement essayer de remplacer flash en tant que lecteur multimédia, mais puisque la popularité de Flash est due à sa cohérence, il sera difficile de vendre. Ma haine de CSS et Javascript peut être supposée par le fait que 40% du code javascript est pour la compatibilité du navigateur et l'implementation CSS N'est jamais cohérente sur différents fournisseurs de navigateurs. Jusqu'à ce que vous nerds contourner ce problème, Flash ne sera jamais remplacé. Le fait est que pour tout ce que vous pouvez faire en HTML5, nous pouvons faire en flash plus rapidement et mieux.
J'ai déjà vu le Wolfenstein 3D dans Canvas. son inférieur . et en minuscule. Nous pouvons faire un meilleur moteur 3D avec une fenêtre plus grande. Battre?
Il y a beaucoup plus à Flash Qu'Audio / Vidéo. Récemment, Flex a été très populaire en raison de son modèle de programmation riche et de sa capacité à développer des interfaces utilisateur haute performance.
Si HTML 5 ou quoi que ce soit doit devenir populaire, tout d'abord le moteur JavaScript intégré doit être plus efficace. Flex / Flash ces jours-ci sont populaires en raison du moteur ActionScript robuste.
J'espère que nous parlons de la façon dont HTML5 peut remplacer swf et flv. Pas tout à fait Flash. Je suis un développeur Flash (amature). Pour moi, quelqu'un qui est plus artistique d'esprit plutôt que la programmation de script d'esprit, Flash est assez facile (la plupart du temps) à utiliser. Comment faire marcher un personnage de dessin animé sur L'écran en HTML5? Ou quelque chose de simple comme transformer (tweening) un cercle en un carré? Sûrement, je n'ai pas écrit cela comme code. Je ne suis tout simplement pas si intelligent dans la programmation à réaliser que. Flash est relativement simple. Dessinez tous vos graphiques dans ce que jamais l'application que vous êtes à l'aise avec (illustrator pour moi) puis les assembler avec le script d'action. Je vous aime à la fois Apple et Adobe. S'il te plaît, trouve une sorte de compromis.
Beaucoup de gens prétendent que HTML5 va tuer les plugins comme Flash et Silverlight, mais ce n'est tout simplement pas le cas.
Prenez par exemple ce scénario.
Charge un fichier binaire sur une url. Pour le plaisir de la démo, nous allons utiliser le format shapefile (.shp), qui contient des polygones géographiques dans un système de coordonnées.
Analyse le contenu des octets côté client.
Dessinez le contenu de manière efficace.
Démo: http://www.libertyvanguard.com/liberty-gis
Ceci est juste un exemple où la technologie de plugin ne sera pas remplacée par HTML5.
Je doute que ce soit destiné à remplacer tout ce que Flash est capable d'englober. Cependant, si vous regardez autour du web de nos jours, vous verrez que Flash est largement utilisé pour fournir du contenu vidéo ou audio dans le navigateur. Quelque chose qui est inclus dans HTML 5, bien que paralysé maintenant car ils ne pouvaient pas s'entendre sur des codecs standard.
Sûrement, tous ces beaux jeux Flash et annonces ne disparaîtront pas juste à cause de HTML 5 et HTML 5 ne sera pas en mesure de les remplacer. Mais il vise à être capable pour remplacer les utilisations qui en fait peuvent Fournir du contenu. Pour les graphiques vectoriels, il y a aussi SVG qui pourrait obtenir un traitement spécial.
Si ce sera vraiment la mort de Flash pour la vidéo reste à voir. Les problèmes de codec vidéo HTML 5 pourraient être réglés tôt ou tard. Cependant, Flash restera très probablement le support de choix où les fournisseurs de contenu voudront un plus grand contrôle sur ce qui sera livré, DRM et techniques similaires, & C.
Avec javascripts pour le suivi des événements GUI et le script des nouveaux éléments HTML 5, vous obtenez beaucoup de ce que Flash offre.
HTML 5 a un certain nombre de nouveaux éléments. L'un d'eux s'appelle Canvas. Avec elle, vous pouvez dessiner tout ce que vous voulez à l'écran, dans ses limites. Vous utilisez javascript pour dessiner dessus et vous pouvez attraper n'importe quel mouseclicks et similaire avec javascript aussi. Si vous êtes habitué aux boîtes à outils GUI sur le bureau comme Tk, GTK, vous pouvez comparer ces nouveaux éléments à certains des widgets de ces boîtes à outils GUI.
Jetez un oeil à thejit pour voir un exemple de graphiques en HTML 5
Le navigateur moderne qui prend en charge la norme HTML5 a la capacité de lire le fichier multimédia pris en charge dans le navigateur, sans avoir besoin de plugins tiers.
Vous pouvez essayer cela par vous-même. Dernière version de Safary et Google Chrome, (Firefox 3.6 aussi) peut jouer <video>
balise dans une page HTML5 directement. YouTube prend désormais en charge HTML5 .
Voilà pourquoi iPad sera en mesure de lire la vidéo si le site vidéo utilise HTML5, sans plugins Adobe Flash, en utilisant le navigateur Safari qui entièrement conforme à la norme HTML5.
Flash fonctionne avec une chronologie, une scène et des scènes et permet de charger des films les uns sur les autres. Il a également pelage d'oignon, tweening et autres outils d'art vectoriel qui rendent les animations de dessins animés faciles via l'animation image par image. Vous faites tout cela et contrôlez ensuite une très petite quantité de code/script d'action. HTML JAVA CSS n'est nulle part aussi proche d'une expérience artistique pour l'auteur et il y a beaucoup plus de codage impliqué pour obtenir des résultats similaires-flash est beaucoup plus rapide et plus facile et convivial. Je doute que Flash ira n'importe où rapidement.
J'espère que HTML5 peut livrer les marchandises et peut-être pas remplacer flash entièrement, mais au moins quand il s'agit de vidéo. Bien que la vidéo flash soit de petite taille, elle prend beaucoup trop de traitement. Accédez à youtube sans Flashblock activé, puis ouvrez le Gestionnaire des tâches. Maintenant, vous pouvez voir comment les processus pour firefox saute soudainement hors de la page chaque fois que vous visitez un site piloté par flash comme youtube. Mon conseil obtenir Flashblock.
Je pense que HTML5 remplacera la plupart du flash / flex, qui continuera probablement comme une autre branche parce que canvas est cool. De nouvelles bibliothèques viendront. Mais tant que JS est dans un fait singlethreaded Ce ne sera pas si rapide, surtout avec les jeux, en supposant qu'adobe n'abandonnera pas.
J'ai d'abord entendu le commentaire de "HTML replacing Flash" de Steve Jobs. (Il déteste Flash peut-être parce qu'il se bloque sur ses ordinateurs Mac, Je ne suis pas sûr. Je pense qu'il est hors de contact. La preuve en est son produit ridicule le "iPad".)
Le point est à quel point est-il bon pour les développeurs? Réponse: pas aussi bon que Flash. Encore. Pourquoi dois-je dire cela avec mon expérience limitée? C'est tout ce que "l'essayer... catch " code de compatibilité dont vous avez besoin en Javascript pour fonctionner dans tous les navigateurs. CE QU'UNE CHARGE DE DÉCHETS. ActionScript / Flash est un morceau de code / application pour tous les navigateurs.
L'autre chose que Flash A est des outils logiciels de développement graphiques (et non graphiques) pour rationaliser le processus.
Donc, la réponse courte est QU'ADOBE ne laissera pas HTML5" remplacer " flash, au moins pour le court terme. Mais il peut rivaliser avec Flash si les gens font assez d'outils de développement pour elle en particulier les outils graphiques WYSIWYG, comme si Google développer un éditeur WYSIWYG facile à utiliser pour faire des applications GWT. Et c'est un grand SI.
Il est possible que le langage de balisage basé sur du texte (HTML5) puisse remplacer un framework multimédia (Flash).
La solution est simple, il suffit de déplacer le framework dans le navigateur et de devenir un standard ouvert. Non seulement un cadre multimédia, le navigateur peut inclure beaucoup d'autres choses qui appartiennent au système d'exploitation maintenant.
Il est possible que le navigateur soit finalement le système D'exploitation (mode utilisateur). Le système d'exploitation actuel sera limité au mode noyau, principalement avec des hardwares.
Un point d'angle scathingly évident et plus large qui est rarement fait, est que le terme "flash" vaguement référencé englobe en fait l'ensemble de la plate-forme Flash, et cela inclut L'IDE Flash.
Les animateurs et autres types artistiques qui utilisent la technologie pour créer des dessins animés et des animations complexes dépendent presque entièrement de L'IDE pour leur travail. Il est tout simplement pas possible sans elle. Fin de l'histoire. Ce n'est pas seulement la technologie au niveau des spécifications linguistiques qui compte! C'est aussi sur les" technologies de support "dans ce cas IDE (je dis "support" mais L'IDE Flash est très bien une technologie intégrée avec le reste de la plate-forme Flash).
Si quelqu'un construit un IDE HTML5 qui a des fonctionnalités qui rivalisent avec L'IDE Flash, c'est génial, mais je suis surpris que le point soit si rarement fait. Les artistes font autant partie du débat que les programmeurs, et il est déraisonnable de dire que ce n'est pas leur affaire.
Donc, pour répondre directement à votre question: HTML5 serait considéré comme une alternative totalement raisonnable-ou même un remplacement-à un framework multimédia tel que Flash si et seulement si un IDE approprié est construit pour cela, l'élevant ainsi à un framework multimédia également.
Il n'est tout simplement pas réaliste de faire un argument sans prendre en compte les IDE. Si la question Est spécifiquement "HTML5 dans son état terminé, sans IDE, peut-il être une alternative à Flash pour les applications en dehors des animations complexes animées manuellement?"alors la réponse ce serait probablement oui et nous rentrerions tous à la maison.
Sujet intéressant. Je fais écho au sentiment de la plupart des affiches ici que si HTML 5 fait de grands sauts dans la présentation multimédia de base, il ne sera pas en mesure de remplacer Flash. Tous les sites de jeux en ligne sont un bon exemple. Flash peut fonctionner sur la plupart des navigateurs, sauf sur certains appareils mobiles.
Sur cette note, je crois que la vidange de la batterie était la raison originale pour laquelle Steve Jobs ne voulait pas prendre en charge Flash sur l'iPhone et l'iPad. Cela pourrait mordre la pomme (sans jeu de mots) sur la route. Android 2.2 sera avoir un support flash (mais il n'est pas clair si tous les fabricants de matériel le soutiendront-ils auront confiance en leurs batteries).
En outre, il semble que Flash 10+ sera une chose sûre sur les appareils Blackberry à l'avenir, y compris les téléphones BB La prochaine tablette Playbook BB (btw, ce jouet a des spécifications de tueur - ne peut pas attendre pour mettre la main dessus quand il sortira l'année prochaine).
Je suis prêt à parier que Flash continuera à être grand dans le développement Web même après que le support HTML 5 devienne universel.
HTML5 est en effet loin de remplacer les technologies D'interface utilisateur Flash ou Silverlight. Et le problème n'est pas seulement que HTML5 est limité en quantité requise dans les composants de l'interface utilisateur d'une application, mais aussi qu'il ne permet pas de créer des composants personnalisés de manière à ce qu'ils s'intègrent parfaitement dans l'exécution.
Jetez un oeil à Ample SDK - JavaScript UI Framework , son architecture hérite largement de ce que vous trouverez dans Flex, Silverlight ou Gecko. L'une des technologies D'interface utilisateur qu'il permet cross-browser est XUL, styleable en CSS et programmable en JavaScript avec les API XUL DOM ou jQuery. Vous pouvez également créer votre propre technologie D'interface utilisateur au-dessus du cadre.
Nous sommes en train de développer un LCMS, une fois que des zones est un outil de création entièrement WYSIWYG pour le développement de matériel de formation conforme SCORM et AICC qui contiennent animation, vidéo, audio, plusieurs types d'évaluations avec interaction. L'outil se rapproche de l'apparence d'un power point, permettant à l'utilisateur de glisser-déposer facilement des objets d'apprentissage sur la diapositive avec des images, de redimensionner les images, de les déplacer, de chevaucher le texte, d'ajouter les tests, etc.
Cet espace de travail se fait actuellement en Flex et a une grande performance, même pas Google Docs/présentations se rapproche de la flexibilité et les performances de cette application.
Je me demande si une application de cette échelle peut être développée avec HTML5 sans une énorme quantité de ressources. Nous sommes une petite entreprise avec un petit groupe de développeurs.
En termes simples, beaucoup espèrent que les fonctionnalités HTML5 associées à javascript peuvent fournir une expérience Web graphique meilleure, moins chère et plus efficace que flash. Considérez que de nombreux sites Web sophistiqués comme gmail, google maps et youtube peuvent fonctionner sans flash en utilisant HTML et javascript. Les améliorations apportées à javascript et HTML permettent aux sites Web de développer des fonctionnalités graphiques et d'animation encore plus riches sans avoir recours à Adobe.
Les développeurs Web se soucient toujours d'un navigateur comme IE6 qui est vraiment vieux, donc vous pouvez être sûr que Flash et des technologies similaires seront autour pendant une longue période...