8
votes

I've read about each of these but I still don't understand how they all inter-operate, which are competing technologies, or even really what each of them is distinctly.

Flash, Air, Flex... Are these all "containers"/JVM-like runtime environments, in which ActionScript code runs?

SWF,FLV,AIR... Are these competing file formats which a Flash, Air or Flex runtime environment executes?

ActionScript is a C-like language which compiles to SWF, FLV or AIR files?

Sorry, with all the marketing around these terms, some of which are used interchangeably, I am quite lost. Suppose I wanted to write an AIR application... what would that entail? Writing ActionScript, compiling it to a SWF, and then installing the AIR runtime to execute it? How's that different than Flash?

If I want to play AIR applications do I need a separate AIR runtime or does Flash execute AIR apps?

4

4 Answers

9
votes

Flex is not a programming environment. You are confusing that with the flex builder IDE.

Flex is a SDK/framework and set of components for building flash based rich applications. It also allows you to use an XML type markup called MXML to write your apps. But at the end of the day it compiles to a .swf regardless.

Flash is the product or technology used to run .swf files.

SWF files are the runnable binary flash files that are run from either a browser plugin, the standalone flash player or within a desktop AIR container.

AIR Does not only allow you to run flash applications on the desktop, it's a cross browser container format that allows you to creat desktop apps accessing features of the OS from within. AIR apps can be written in HTML and JavaScript as well as actionscript/flash.

Actionscript is the language that flash applications are written in and is based on ECMAScript and only compiles to the .swf binary.

FLV is a proprietary flash video format.

2
votes
  • Flex: Flex is a framework for create RIA (Rich Internet Applications.) [It is somehow like Symphony/Zend is to PHP or JQuery is to JavaScript.]
  • Flash: Is a editor / IDE to create movieclips that could be played by the FlashPlayer, but there are also other options to create movies.
  • FlashPlayer: Is runtime to play swf movies. Usually swf movies are embedded in a HTML page and the FlashPlayer is started by the browser as a plugin.
  • Air: A runtime to use web technologies to create application that are running not within a browser. It supports Flash movies, HTML, JavaScript, CSS, ...
  • ActionScript: A programming language for to create Flash movies. It could be used within Flex or the Flash-IDE. ActionScript could never be executed directly, it always needs to be compiled.
  • SWF: The binary fileformat for flashmovies.
  • SWC: Is a binary compiled library.
  • FLV: A container file format for sound and videos.
1
votes

The term "Flash" is often used ambiguously and can refer equally to software used to make and/or playback .swf (Flash executable) files, as well as the .swf content itself. Adobe's .swf development tools (like Flash Pro CS5) and its Flash player are far and away the most popular, although many open source and third-party alternatives also exist.

Flex is a set of development tools geared towards building web applications (as opposed to content) targeting the Flash player . It is available as an open source kit which includes many reusable components, a markup language known as mxml, and a .swf compiler.

Adobe's Flash player is available as both a browser plug-in, and as a locally installed desktop version known as AIR (Adobe Integrated Run-time).

ActionScript is the programming language of Flash, executed by the ActionScript Virtual Machine (AVM) within the Flash player. In its current version, ActionScript 3 is a fully OOP coding language VERY similar to Java.

FLV is a popular video container format used by the Flash player to deliver video on the web.

0
votes

Flex is programming environment to develop Flash application

Flash is the technology that consists of Flash Player and format and allows rich functionality in a web browser

Air is Flash technology and allows to run Flash application in out of browser mode, so it looks like regular Windows or Mac application

ActionScript - is programming language used to create Flash applications

SWF - is compiled Flash binary

FLV - is video stream format based on flash