Termin Flash może zawierać dowolne inne terminy zdefiniowane poniżej. Uważam, że powiedzenie „Flash” bez dokładnego określenia, co masz na myśli, może być mylące i wprowadzające w błąd. Przykład: nie jestem pewien, co konkretnie masz na myśli, mówiąc „Flash” w swoim pytaniu. Czy to Flash Player? Narzędzie autorskie? A może cały zbiór technologii, które należą do tego, co Adobe nazywa „platformą Flash”? Aby to wszystko wyjaśnić, pozwólcie, że zdefiniuję technologie wykorzystywane przy tworzeniu treści Flash i Flex, tak aby wszyscy używali tutaj tej samej terminologii:
Flash Player to środowisko wykonawcze dla treści multimedialnych w przeglądarce. Istnieje również Flash Lite do uruchamiania treści Flash na starszych lub słabszych urządzeniach mobilnych, a Adobe AIR rozszerza Flash Player, aby umożliwić autorom treści publikowanie natywnych aplikacji komputerowych i mobilnych, które mogą być zintegrowane z takimi elementami, jak system plików, systemy okien i urządzenia czujniki, takie jak akcelerometr i kamera. Firma Adobe określa je łącznie jako środowiska wykonawcze Flash .
Flash Professional (często nazywany narzędziem do tworzenia treści Flash lub Flash IDE ) był tradycyjnie podstawową aplikacją używaną do tworzenia treści działającej w programie Flash Player. Jest bardzo zorientowany na projektanta z osiami czasu, warstwami i wizualnymi narzędziami do rysowania. Twórcy oprogramowania mogą uznać tę aplikację za dezorientującą i ograniczoną w porównaniu z innymi narzędziami programistycznymi, które koncentrują się bardziej na kodzie, takich jak Flash Builder (patrz poniżej). Gdy ktoś mówi: „Zbudowałem coś we Flashu”, często ma na myśli narzędzie do tworzenia treści Flash, ale nie zawsze tak jest. Z tego powodu dobrze jest zawsze wyjaśniać, aby uniknąć nieporozumień.
ActionScript jest podstawowym językiem programowania obsługiwanym przez firmę Adobe w celu dostosowania do środowisk wykonawczych Flash. Obecna wersja to ActionScript 3 (w skrócie AS3 ), która jest obsługiwana od wersji Flash Player 9. Treści utworzone za pomocą starszych wersji ActionScript można nadal uruchamiać w najnowszych wersjach Flash Player, ale nowe funkcje są obsługiwane tylko wtedy, gdy używa się ActionScript 3 do tworzyć nowe treści.
Flex to zbiór technologii zaprojektowanych do tworzenia rozbudowanych aplikacji przeznaczonych dla środowisk wykonawczych Adobe Flash. Chociaż stwierdzenie „Flex” poprzednio miało tę samą dwuznaczność co „Flash”, nazwa marki Flex coraz bardziej koncentruje się na frameworku Flex i SDK, opisanych poniżej.
Pakiet Flex SDK składa się z kompilatorów, debugera wiersza polecenia i platformy Flex. Dołączone kompilatory to: 1. MXMLC, kompilator ActionScript i MXML, który wyprowadza ostateczny plik SWF do wdrożenia w programie Flash Player. 2. COMPC, statyczny kompilator biblioteki dla języka ActionScript, który generuje pliki SWC. 3. ASDOC, generator dokumentacji zbudowany w technologii kompilatora.
Struktura Flex to zbiór klas ActionScript przeznaczonych do tworzenia rozbudowanych aplikacji internetowych. Obejmuje takie elementy, jak kontrolki interfejsu użytkownika, usługi internetowe i inne klasy połączeń, elementy formatujące i walidatory, przeciąganie i upuszczanie, okienkowanie modalne i stany komponentów. Te klasy znajdują się w pakiecie mx. *. Generalnie, gdy programiści mówią „Flex” bez żadnych wyjaśnień, mają na myśli strukturę Flex, a nie produkt znany wcześniej jako Flex Builder.
W 2011 roku firma Adobe przekazała pakiet Flex SDK fundacji Apache Software Foundation. Obecnie nazywa się Apache Flex i jest w pełni zarządzany przez społeczność, a nie Adobe. Jednak pracownicy Adobe nadal uczestniczą w projekcie, a Flash Builder (patrz poniżej) nadal obsługuje nowe zestawy SDK wydane w ramach projektu Apache Flex.
MXML to oparty na XML język znaczników używany przez kompilatory Flex w celu ułatwienia układu i umieszczania komponentów w kontenerach. Drzewiasta struktura XML ułatwia wizualizację hierarchii zawierania. W rzeczywistości MXML jest konwertowany do ActionScript podczas procesu kompilacji.
Flash Builder (wcześniej znany jako Flex Builder ) to środowisko programistyczne, które umożliwia programistom tworzenie różnych typów projektów w celu tworzenia plików SWF wdrażanych w środowiskach wykonawczych Flash. Jest zbudowany na platformie Eclipse i jest bardziej znany inżynierom oprogramowania. Flash Builder obsługuje projekty utworzone za pomocą Flex lub czystego ActionScript. Projekty Flex obejmują platformę Flex. Projekty ActionScript są najbardziej podstawowymi, z którymi można pracować, zaczynając od pojedynczej klasy i pustego obszaru roboczego, a środowisko Flex nie jest uwzględnione.
Flash Builder nie zastępuje Flash Professional. Niektóre osoby, które tradycyjnie korzystały z programu Flash Professional, mogą teraz zamiast tego użyć programu Flash Builder. Często są to inżynierowie oprogramowania, którzy doceniają lub wymagają zaawansowanych narzędzi programistycznych oferowanych przez Flash Builder lub nie pracują zbyt intensywnie z zasobami zaprojektowanymi w narzędziu wizualnym. Niektórzy programiści mogą pisać swój kod w programie Flash Builder, wybierając kompilację projektów w narzędziu Flash do tworzenia treści. Często ci programiści są również projektantami lub pracują z innymi osobami, które są projektantami. W takiej sytuacji w narzędziu Flash do tworzenia treści może być utworzonych wiele zasobów graficznych i przeniesienie ich do innego środowiska może być trudne lub po prostu nieodpowiednie.
Struktura Flex została specjalnie zaprojektowana do tworzenia aplikacji. Zawiera wiele tradycyjnych formantów formularzy (przyciski, listy, datagridy, itp.), A znaczna część kodu działa w zaawansowanej strukturze składowej napisanej w języku ActionScript. Nie każdy tworzy zawartość, do której tworzenia jest przeznaczony Flex, a Flex nie zastępuje tradycyjnych praktyk programowania Flash dla wszystkich. Jest to lepsze podejście dla niektórych programistów, ale może nie być odpowiednie dla innych. Bardziej rozbudowane witryny internetowe, takie jak te stworzone z myślą o filmach, muzyce, napojach energetycznych, kampaniach reklamowych i tym podobnych, prawdopodobnie nie powinny używać frameworka Flex. Te typy treści mogą lepiej pasować do programu Flash Professional lub czystego projektu ActionScript w programie Flash Builder. Podobnie, małe widżety, które umieszczasz na pasku bocznym swojej witryny lub w swoim profilu w witrynie sieci społecznościowej, może wymagać zbudowania w czystym języku ActionScript (bez frameworka Flex), ponieważ wymagają mniejszego rozmiaru pliku i prawdopodobnie nie wymagają dużego złożonego architektura komponentów zaprojektowana dla większych aplikacji. W przypadku środowisk wykonawczych Flash należy wybrać środowisko programistyczne, struktury i przepływ pracy w oparciu o wymagania i cele projektu.