어도비 플렉스(Adobe Flex) 는 2004년 3월 매크로미디어에 의하여 만들어진 소프트웨어 개발 키트(Software development kit|software development kit) 와 개발자들을 위한 IDE 이다. (다만 현재는 어도비 시스템즈에서 개발되고 있다.) 그들이 가지고 있는 어도비 시스템즈 플래시 플랫폼 기반으로 리치 인터넷 어플리케이션을 크로스플랫폼에서 개발하고 배포할 수 있도록 지원한다.
2007년 4월 어도비는 플렉스 3 SDK 에 대한 플렉스 오픈소스 계획을 발표했다. 하지만 실행 환경에서 플렉스 응용 프로그램을 보기 위한 어도비 플래시 플레이어와 플렉스 응용 프로그램을 개발하기 위한 IDE 인 플렉스 빌더는 여전히 독점적이고 상업적으로 남아 있다.
개요
전통적인 응용 프로그램 개발자들이 플래시 플랫폼으로 만드는 애니메이션을 적용하기에는 어려움이 있었다. 플렉스는 이러한 과정의 어려움을 최소화하고 응용 프로그램 개발자들에게 익숙한 개발 모델을 제시하였다.
플렉스는 초기에는 J2EE 응용 프로그램 또는 JSP 태그 라이브러리를 통해서 동적으로 MXML 과 액션스크립트(ActionScript) 코드를 플래시 응용 프로그램(SWF 파일)으로 컴파일하는 것만 가능하였다. 그리고 이후 버전부터 서버 라이선스 없이 프로그램 코딩 후 파일을 컴파일 할 수 있도록 하고 온라인에 배포 할 수 있도록 지원하기 시작한다.
플렉스의 목적은 응용 프로그램 개발자들에게 빠르고 쉽게 리치 인터넷 응용 프로그램을 개발할 수 있도록 하는 것이다. n계층모델에서 플렉스 응용은 프레젠테이션 계층을 제공한다.
플렉스의 특징은 MXML 이라고 불리우는 XML 기반 언어를 사용하여 GUI 개발을 가능하게 한다. 이것은 웹서비스, 원격객체, 드래그 앤 드롭, 컬럼 정렬, 챠트, 그래픽 객체, 애니메이션 효과 등을 구현하기 위한 다양한 구성요소와 기능들로 이루어져 있다. 그리고 이들의 상호 간의 통신 또한 간단하게 구성할 수 있다. 사용자가 한번 호출하면 작업마다 서버에서 템플릿을 실행하는 것을 요청하는 versus HTML, 기반의 응용(PHP,ASP,JSP,CFMX)보다 훨씬 향상된 응용 작업 흐름을 플렉스의 언어와 파일 구조는 디자인으로부터 응용 로직을 분리하도록 이루어져 있다.
플렉스 서버는 또한 사용자가 XML 웹서비스와 원격 객체(CFCs 나 Class 그리고 AMF 를 지원하는 그 밖의 다른 객체)를 가지고 통신하는 것을 허용하는 게이트웨이로 동작한다.
일반적으로 플렉스를 대체하는 것들을 언급할 때 오픈라즐로, Ajax, XUL, JavaFX 그리고 실버라이트와 같은 WPF 기술을 이야기한다.
라이브사이클 데이터 서비스
LiveCycle Data Services (이전에는 플렉스 데이터서비스(FDS) 였음) 는 플렉스 SDK 와 플렉스빌더와 함께 플렉스 제품군 중 하나로 서버측 지원을 담당한다. 자바 엔터프라이즈 응용으로 배치될 때 LDS 는 플렉스 응용 프로그램에 추가적인 기능을 지원한다.
- 리모팅, 플렉스클라이언트 응용 프로그램이 직접 자바 서버 객체와 연결될 수 있도록 한다. 마치 RMI(Java remote method invocation)와 비슷한 기능이다. 원격에서 데이터 마샬링을 자동으로 다룰 수 있고 이진 데이터를 전송 포맷으로 사용한다.
- 메시징에서 구독/배포의 디자인패턴의 목적으로 배포를 제공한다. 플래시 클라이언트는 서버에서 설정한 배포 이벤트에 대하여 메시지 서비스로부터 배포되는 이벤트를 구독할 수 있다. 대표적인 예가 금융 데이터 또는 시스템 상태 정보와 같은 실시간 데이터 스트리밍이다.
- 플렉스 클라이언트로 다운로드된 데이터를 자동적으로 관리하는 개발 모델을 제공하는 데이터 관리 서비스이다. 서버로부터 데이터가 한 번 로드된 뒤에 변경되는 사항은 자동적으로 검사가 되고 응용 프로그램의 요청으로 서버와 동기화된다. 클라이언트는 또한 서버 측에서 데이터가 변경되는 것을 바로 확인할 수 있다.
- 서버에 특정 위치에 저장된 클라이언트 데이터 또는 이미지와 함께 PDF 문서를 만들어낼 수 있는 API 를 제공합니다.
오픈소스 리모팅 기능으로 PHP 를 사용한다면 AMFPHP 를 대신 사용할 수 있다.
플렉스 응용 프로그램 개발 과정
아래의 자료들은 플렉스 2 베타 3 도움말에서 가져온 내용이다.
- UI 컴포넌트(폼, 버튼 등)을 사용하여 어플리케이션 양식의 태그를 정의한다.
- 사용자 인터페이스 디자인안에 정의된 컴포넌트를 사용한다.
- 시각적 디자인을 정의하기 위하여 스타일나 테마를 사용한다.
- 동적인 행동을 추가한다.(응용 프로그램이 다른 요소들과 상호작용)
- 필요에 따라 데이터 서비스와 연결하는 부분을 정의한다.
- 소스코드를 빌드하고 플래시 플레이어에서 작동할 수 있도록 SWF 파일을 만든다.
- 참고할만한 사이트
Adobe - Flex Developer Center
http://www.adobe.com/devnet/flex/
Flex.org
http://flex.org/
Adobe Labs - Adobe Flex
http://labs.adobe.com/technologies/flex/
Adobe Flex2 Component Explorer
http://examples.adobe.com/flex2/inprodu ··· rer.html
이거 상당히 흥미로운 예제이다. ㅋㅋ
철수네 소프트웨어 세상 3 - 오만한 Flex
http://charlz.wordpress.com/2007/05/24/ ··· uttal%2F
- 어도비 플렉스 (Adobe Flex) (0)2008/01/04

수안이의 컴퓨터 연구실



Leave your greetings.