2008. 7. 4. 23:03

Adobe Flex



Developed by Adobe Systems
Initial release 1.0 / Released March 2004
Latest release 3.0.0 / February 25, 2008 (2008-02-25)
OS Windows, Mac OS X and Linux
Available in English and Japanese
Development status Committed
Genre Rich Internet application
License Mozilla Public License (Flex Builder and Flash Player under commercial license)
Website Adobe Flex Homepage

 Adobe FlexAdobe Systems 에서 발표한 크로스 플랫폼, Adobe Flash 플랫폼 기반의 rich Internet applications 의 개발, 적용을 위한 기술의 집합이다. 2004년 3월, software development kit, IDE, Flex Data Services 로 알려진 J2EE 통합 어플리케이션 등을 골자로 하여 Macromedia 가 발표했다. 2005년 Adobe 가  Macromedia 를 인수했기 때문에, Flex 의 다음 릴리즈 부터는 LiveCycle Data Service 라는 별개의 제품이 된 Flex Data Service 를 위한 라이센스를 더 이상 필요로 하지 않게 되었다.

2008년 2월, Adobe는 open source Mozilla Public License 하에 Flex 3 SDK 를 발표했다. Flex 어플리케이션이 보이는 런타임인 Adobe Flash Player 는 무료지만, Flex 어플리케이션을 만들기 위해 사용되는 Adobe Flex Builder  는 무료가 아니다.



Overview

전통적인 어플리케이션 프로그래머는 Flash Platform 이 원래 설계된 애니메이션 metaphor 에 적응하는 것이 쉬운 일이 아니라는 것을 알게 되었다. Flex 는 워크플로우와 개발자에게 친숙한 프로그래밍 모델을 제공함으로써 이 문제의 최소화하려고 노력한다.  XML 기반의 마크업 언어인 MXMLgraphic user interfaces  를 만들고 배치하는 방법을 제공한다.  ECMAScript 표준을 기반으로 한 Flash Player 의 주 언어인 ActionScript 의 사용을 통해 상호작용한다.

Flex SDK 는 버튼, 리스트 박스, 트리, 데이터 그리드, 여러가지 텍스트 컨트롤, 다양한 레이아웃 컨테이너 등을 포함하는 사용자 인터페이스 컴포넌트와 함께 등장했다. 애드온으로 차트와 그래프를 사용하는 것도 가능하다. web services, 드래그 & 드랍, 모달 다이얼로그, 애니메이션 효과, 어플리케이션 상태, 형식 확인(form validation), 여러 상호작용(interactions) 과 같은 특징들이 어플리케이션 프레임워크를 완성하고 있다.

다 계층 모델에서 Flex 어플리케이션은 프리젠테이션 계층으로 동작한다. 페이지 기반의 HTML 어플리케이션과는 달리, Flex 어플리케이션은 화면을 크게 변화시킬 때에도 새로운 페이지를 로딩할 필요가 없는 스테이트풀(여러 스테이트를 갖는) 클라이언트를 제공한다. 이것과 비슷하게, Flex 와 Flash Player는 클라이언트 화면의 재 로드 없이 서버쪽 컴포넌트와 데이터를 주고 받는 많은 유용한 방법을 제시한다. 비록 이 기능이 과거에 HTML과 JavaScript에 비해 더 나은 장점을 제공더라도, 증가하고 있는 주요 브라우저에서의 XMLHttpRequest 에 대한 지원은 HTML 기반의 개발에서도 비동기 데이터를 로딩할 수 있게 했다.

Flex 와 주로 비교되는 기술은 OpenLaszlo, Ajax, XUL, JavaFX, Silverlight 와 같은
Windows Presentation Foundation 이다.

Release history

  • Flex 1.0 - March 2004
  • Flex 1.5 - October 2004
  • Flex 2.0 (Alpha) - October 2005
  • Flex 2.0 Beta 1 - February 2006
  • Flex 2.0 Beta 2 - March 2006
  • Flex 2.0 Beta 3 - May 2006
  • Flex 2.0 Final- June 28, 2006
  • Flex 2.0.1 - January 5, 2007
  • Flex 3.0 Beta 1 - June 11, 2007
  • Flex 3.0 Beta 2 - October 1, 2007
  • Flex 3.0 Beta 3 - December 12, 2007
  • Flex 3.0 - February 25, 2008



 

Versions

Macromedia Flex Server 1.0 and 1.5

Macromedia는 Flex 1.0 과 1.5 의 초기 배포판에서 엔터프라이즈 어플리케이션 개발 시장에 초첨을 맞췄다. 그리고 이 기술을 CPU  당 약 $15,000 에 제공했다. Required for deployment, the J2EE application server compiled MXML and ActionScript on-the-fly into Flash applications (binary SWF files). 각 서버 라이센스틑 Flex Builder IDE 5 개의 라이센스를 포함하고 있었다.


Adobe Flex 2

Flex 2를 배포하면서 Adobe는 Flex 제품군을 위한 라이센싱 모델을 대폭 수정했다. 커맨드라인 컴파일러, 사용자 인터페이스 컴포넌트와 유틸리티에 대한 전 클래스 라이브러리로 구성된 핵심 Flex 2 SDK는 무료로 다운하는 것이 가능해졌다. 완성된 Flex 어플리케이션은 오직 Flex 2 SDK 만으로 빌드되고 컴파일된다. Flex 2 SDK 는 Flex Builder IDE에 포함된 SDK와 비교했을 때, 어떤 한계도 제약도 없었다.

Adobe 는 으픈 소스 Eclipse 플랫폼 위에 새로운 버전의 기초를 두고 있다. Flex Builder 2의 Standard, Professional 의 두 가지 버전이 배포되었다. Professional 버전에는 Flex Charting Components 라이브러리가 포함되어 있다.

엔터프라이즈 중심의 서비스는 Flex Data Services 2의 형태로 사용할 수 있도록 남았다. 이 서버 컴포넌트는 데이터 동기화, 데이터 푸쉬, 퍼블리쉬-섭스크라이브, 자동화된 테스팅을 제공한다. Flex 1.0, 1.5와는 달리, Flex Data Service 는 Flex 어플리케이션의 설치가 필요하지 않다.

Flex 2 의 배포와 함께 Adobe 는 ActionScript 3로 알려진 ActionScript 프로그래밍 언어의 새로운 버전을 소개했다. ActionScript 3 는 최신 ECMAScript 스펙을 반영하고 있다. ActionScript 3와 Flex 2 를 사용하기 위해 버전 9 이상의 Flash Player 런타임이 필요하다. Flash Player 9 은 ActionScript 3 을 실행하기 위한 새롭고 더 튼튼한 가상 머신이 탑재되어 있다.

Flex 는 처음으로 Adobe 라는 이름 아래 Macromedia 의 제품을 새로 브랜치한 것이었다.

Adobe Flex 3

2007년 4월 26일 Adobe 는 Mozilla Public License 로 Flex 3 SDK (Flex Builder IDE 와 LiveCycle Data Services가 포함되어 있지 않음) 의 출시 계획을 발표했다. 2007년 6월, Adobe 는 Moxie 라는 코드네임을 가진 Flex3 의 첫 베타버전을 출시했다. 추가된 주요 기능은 Adobe의 Creative Suite 제품의 새로운 버전과의 통합, AIR (Adobe 의 새로운 데스크탑 어플리케이션 런타임) 지원, Flex Builder IDE 에 프로파일링과 리팩토링 도구 추가 등이다.

2007년 10월, Adobe 는 Flex3 의 두 번째 베타 버전을 배포했다.
2007년 12월 12일, Adobe 는 Flex 3의 세 번째 베타 버전을 배포했다.
2008년 2월 25일, Adobe는 Flex 3와 AIR 1.0을 배포했다.

Adobe Flex 4

Adobe 는 코드네임 Gumbo 인 Flex 4.0 이 2009년에 출시될 것이라고 발표했다. 발표는 했지만 아직 제품 계획은 완성되지 않은 단계이다.

Adobe 에서 언급한 Flex 4 에 추가될 몇 가지 주제는 아래와 같다:

  • Design in Mind: 프레임워크가 디자이너와 개발자 사이의 지속적인 협력을 위해 설계될 것이다.
  • Accelerated Development: 개념에서 실제 어플리케이션을 개발까지 걸리는 시간이 단축될 것이다. 
  • Horizontal Platform Improvements: 컴파일러 성능, 언어 확대, BiDi 컴포넌트, 강화된 텍스트. (추측)
  • Broadening Horizons: 프레임워크를 가볍게 하고, 더 많은 실행 런타임과 런타임 MXML을 지원하며는 방법을 찾고 있다.(추측)

Flex 4 이정표: (추측)

  • 2008년 4월, 범위 결정
  • 2008년 후반부, 베타 1
  • 2009년 4.0 파이널



Thermo

Adobe 는 Thermo 라는 코드네임의 Flex 와 관련된 새로운 디자인 툴을 발표했다.



LiveCycle Data Services

(전에는 Flex Data Services 라고 불렸던) LiveCycle Data Services 는 주요 Flex SDK 와 Flex Builder IDE 에서 서버쪽의 컴포넌트고, Adobe 의 서버 기반의 제품군 중 하나다. Java EE 어플리케이션으로 설치되어 Flex 어플리케이션에 아래의 기능을 추가한다.:

  • Flex 클라이언트 어플리케이션이 Java 서버 오브젝트의 메쏘드를 직접 호출할 수 있게 하는 Remoting. Java remote method invocation (RMI)과 유사하게, remoting 은 자동으로 정렬하는 데이터를 다루고, 바이너리 데이터 전송 포맷을 사용한다.
  • "퍼블리쉬/섭스크라이브" 디자인 패턴의 "퍼블리쉬"를 제공하는 Messaging. Flash 클라이언트는 서버에 정의된 토픽으로 이벤트를 퍼블리쉬 할 수 있고, 메시지 서비스에서 방영된 이벤트를 섭스크라이브 할 수 있다. 일반적인 유즈 케이스 중 하나는 재무적인 데이터나 시스템 상태 정보와 같은 실시간 스트리밍 데이터이다.
  • Flex 클라이언트에 다운로드 된 데이터 집합의 자동 관리를 위한 프로그래밍 모델을 제공하는 Data management services. 일단 데이터가 서버에서 로드되면 변경은 자동으로 추적되고, 어플리케이션의 요청에 따라 서버와 동기화 될 수 있다. 클라이언트는 서버에서 데이터 집합이 수정되면 이에 대해 알 수 있다. 
  • 서버에 저장된 템플릿과 함께 클라이언트 데이터나 그래픽의 병합을 통해 PDF 문서를 생성하기 위한 API 를 제공한다.



BlazeDS


Flex and ColdFusion


Flex Application Development Process


Notable sites using Flex

Flex 를 사용한 유명한 사이트:




See also




References

Adobe keeps Flash, Flex close to the vest. Zdnet. Retrieved on 2008-02-09



External links


'Wiki' 카테고리의 다른 글

BlazeDS  (0) 2008.08.31
Graphical Modeling Framework  (0) 2008.08.20
Sorenson Squeeze  (0) 2008.08.14
ActionScript  (0) 2008.08.06
Flash Video  (0) 2008.07.07