Le terme Flash peut inclure toutes les autres termes définis ci-dessous, et je trouve que dire "Flash", sans préciser exactement ce que tu veux dire peut être source de confusion et induire en erreur. Affaire au point: je ne suis pas sûr de ce que vous avez spécifiquement voulez dire quand vous dites "Flash" dans votre question. Est-il de Flash Player? L'outil de création? Ou de l'ensemble de la collection de technologies qui relèvent de ce que Adobe appelle la "Plate-forme Flash"? Pour aider à éclaircir tout cela, permettez-moi de définir les technologies impliquées dans la création Flash et Flex contenu, de sorte que nous sommes tous en utilisant la même terminologie ici:
Flash Player est un environnement d'exécution pour les contenus multimédias dans le navigateur. Il y a aussi Flash Lite pour exécuter le contenu Flash sur les anciens ou bas de gamme des appareils mobiles, et Adobe AIR s'étend Flash Player pour permettre aux auteurs de contenu à publier natif de bureau et des applications mobiles qui peuvent s'intégrer à des choses comme le système de fichiers, les systèmes de fenêtrage, et le dispositif de capteurs comme un accéléromètre et d'une caméra. Collectivement, Adobe se réfère à eux comme les moteurs d'exécution de Flash.
Flash Professional (souvent appelé l' outil de création de Flash ou le Flash IDE) a traditionnellement été la première application utilisé pour créer du contenu qui s'exécute sur Flash Player. Il est très designer orienté avec des échéanciers, des couches, des visuels et des outils de dessin. Les développeurs de logiciels peuvent trouver cette application de désorientation et limité par rapport à d'autres outils de développement qui mettent l'accent plus sur le code, comme les Flash Builder (voir ci-dessous). Quand quelqu'un dit, "j'ai construit quelque chose avec Flash", on sous-entend souvent l'outil de programmation Flash, mais ce n'est pas toujours le cas. Pour cette raison, il est bon de toujours préciser pour éviter toute confusion.
ActionScript est le principal langage de programmation pris en charge par Adobe pour cibler les moteurs d'exécution de Flash. La version actuelle est l'ActionScript 3 (abrégé en AS3), qui a été pris en charge depuis Flash Player 9. Les contenus créés avec des versions antérieures d'ActionScript peut toujours être exécuté dans les dernières versions de Flash Player, mais les nouvelles fonctionnalités sont uniquement pris en charge lors de l'utilisation d'ActionScript 3 pour créer de nouveaux contenus.
Flex est une collection de technologies conçues pour créer des applications riches qui visent le Adobe moteurs d'exécution de Flash. Si en disant "Flex" à déjà eu le même ambiguïté que "Flash", le Flex nom de la marque est de plus en plus et de plus en plus axée sur le framework Flex et SDK, décrit ci-dessous.
Le SDK Flex se compose de compilateurs, un débogueur de ligne de commande, et le framework Flex. Inclus les compilateurs sont:
1. MXMLC, ActionScript et MXML compilateur à la sortie de la finale de fichier SWF pour le déploiement de Flash Player.
2. COMPC, une bibliothèque statique compilateur ActionScript que les sorties des fichiers SWC.
3. ASDOC, un générateur de documentation construit sur la technologie de compilation.
Le framework Flex est une collection de classes ActionScript conçu pour développer des Applications Internet Riches. Il inclut des choses comme les contrôles d'interface utilisateur, des services web et d'autres de la connectivité des classes, des formateurs et des validateurs, de glisser-déposer, modal de fenêtrage, et les états qui le composent. Ces classes sont les mx.* package. Généralement, lorsque les développeurs disent "Flex", sans précisions, ils signifient le framework Flex, et non pas le produit anciennement connu sous le Flex Builder.
En 2011, Adobe a fait don du kit SDK de Flex à l'Apache Software Foundation. Il est maintenant appelé Apache Flex et il est entièrement géré par la communauté plutôt que de Adobe. Toutefois, Adobe employés de continuer à contribuer au projet, et Flash Builder (voir ci-dessous) continue à soutenir les nouveaux Sdk publié par l'Apache le projet Flex.
MXML est basé sur XML, langage de balisage utilisé par le Flex compilateurs pour faire de mise en page et de placer des composants dans des contenants de plus facile. La structure en arbre XML de faire le confinement de la hiérarchie sont plus faciles à visualiser. MXML est effectivement converti à ActionScript pendant le processus de compilation.
Flash Builder (anciennement connu sous le Flex Builder) est un environnement de développement qui permet aux développeurs de créer différents types de projet pour créer des fichiers SWF qui sont déployées sur les moteurs d'exécution de Flash. Il est construit sur la plate-forme Eclipse et est de plus en plus familiers pour les ingénieurs en logiciel. Flash Builder prend en charge des projets construits avec Flex pur ou ActionScript. Les projets Flex inclure le framework Flex. Des projets ActionScript sont les plus de base, vous pouvez travailler avec, de commencer avec une seule classe et une toile vierge, et le framework Flex n'est pas inclus.
Flash Builder ne remplace pas de Flash Professional. Certaines personnes qui ont utilisé traditionnellement Flash Professional peut maintenant choisir d'utiliser Flash Builder à la place. Souvent, ce sont des ingénieurs logiciels qui apprécient ou qui nécessitent l'avancée des outils de développement proposés par Flash Builder ou ne pas travailler fortement avec des actifs conçu dans un outil visuel. Certains développeurs peuvent écrire leur code dans Flash Builder, tout en choisissant pour compiler leurs projets dans l'outil de programmation Flash. Souvent, ces développeurs sont aussi les concepteurs, ou qu'ils travaillent avec d'autres personnes qui sont les concepteurs. Dans cette situation, il peut y avoir beaucoup d'éléments graphiques créés dans l'outil de programmation Flash, et il pourrait être difficile ou tout simplement inapproprié pour les amener dans un autre environnement.
Le framework Flex est spécialement conçu pour créer des applications. Il comprend de nombreux contrôles de formulaire (boutons, listes, datagrid, etc) et de la quantité de code qui s'exécute sur un composant framework écrit en ActionScript. Pas tout le monde est de construire le genre de contenu que Flex est conçu pour créer et Flex ne pas remplacer les Flash des pratiques de développement pour tout le monde. C'est une meilleure approche pour certains développeurs, mais peut-être pas le droit pour les autres. Plus la conception de sites internet à lourds, tels que ceux créés pour les films, la musique, les boissons énergétiques, les campagnes de publicité, et des choses comme ça ne devrait probablement pas utiliser le framework Flex. Ces types de contenu pourrait être mieux adapté à Flash Professional ou un pur projet ActionScript dans Flash Builder. De même, peu de widgets que vous mettez dans la barre latérale de votre site web ou sur votre profil dans un site web de réseautage social peut être construits avec des purs ActionScript (sans le framework Flex) car ils nécessitent une plus petite taille de fichier et ils ne sont probablement pas besoin d'un gros complexe de l'architecture de composants conçus pour des applications plus importantes. Lorsque le ciblage des moteurs d'exécution de Flash, votre environnement de développement, les cadres et les flux de travail doivent être choisis en fonction de vos besoins et objectifs.