Adobe Flex — технология для создания Rich Internet Applications. Flex — это родственная Flash технология, основанная на описании интерфейса приложения (и обработчиков событий, связи источников данных с объектами и т. п.) с помощью диалекта XML — MXML. Flex приложение может компилироваться на сервере (для этого потребуется mod_flex.so или mod_flex.dll в зависимости от ОС и вебсервера), а может — из IDE или непосредственно из командной строки с помощью компилятора mxmlc (начиная с Flex 2), как и во Flash, результатом является файл swf, исполняемый Flash Player.
Flex — это большой набор классов (Flex SDK), содержащий многие не вошедшие во Flash компоненты. Достоинства Flex тесно связаны с его спецификой, MXML. Например, Flex компоненты для построения графиков сделаны удобными для использования и выглядят очень приемлемо для использования «как есть».
Интегрированная среда разработки Flex Builder 2, которая обеспечивает более высокую производительность, создана на свободно распространяемой платформе разработки Eclipse. Поскольку многие разработчики уже используют Eclipse при программировании на Java, Flex Builder 2 предоставляет им знакомую среду для создания и Java-приложений, и полнофункциональных клиентов.
Кроме того, возможна разработка Flex (ActionScript 3) проектов с помощью средств OpenSource — в частности, FlashDevelop (Windows), axdt, flex2ant (оба последних средства являются плагинами Eclipse и кроссплатформенны, однако по удобству работы с ними значительно уступают FlashDevelop).
Flex 2, помимо скорости разработки, предоставляет полные мультимедийные возможности Flash Platform: включая потоковое видео, звук (в том числе и программный), бинарные сокеты и большое число прочих новых возможностей ActionScript 3.
Благодаря Flex 2, веб-сервисы могут использоваться для связи с сервером при частом обращении к данным при небольшой полезной нагрузке. Для более ресурсоемких приложений Adobe предлагает программное обеспечение Flex Data Services 2 Express, которое может поддерживать связь между источником данных и уровнем представления. Flex Data Services 2 способен передавать данные с сервера на клиент. Серверный компонент может, например, извлечь данные из серверного приложения SAP и переслать их клиенту. Теперь функции Flex Presentation Server встроены в Flex Data Services.
Ещё одно неоспоримое достоинство технологии Flex, тесно связанное с достоинствами ActionScript 3 — это возможность OpenSource разработки Flash-проектов без использования Adobe Flash IDE, с помощью «чистого» программирования. При этом Flash-разработка становится принципиально доступна в том числе и на платформе Линукс. (Первые возможности такого рода были предоставлены при создания компилятора ActionScript 2 [mtasc
mtasc.org/], но ActionScript 3 позволил сделать Flash-программирование гораздо более стройным и логичным).
Flex является высокоэффективной средой разработки с открытым кодом для создания и обслуживания веб-приложений, совместимых со всеми наиболее распространенными обозревателями, платформами персональных компьютеров и версиями операционных систем. Создание приложений Flex возможно только в среде Flex, однако ПО Adobe Flash Builder™ (ранее известное, как Adobe Flex® Builder™) позволяет ускорить разработку программного обеспечения при помощи таких функции, как интеллектуальное создание кода, интерактивная пошаговая отладка и визуальное проектирование макета интерфейса пользователя.