본문 바로가기
프로그래밍

Flex, Air, WPF, Silverlight

by 백룡화검 2009. 6. 13.

-Flex & Air(Apollo)-

*Flex

- Flex는 서버와 클라이언트의 중간쯤이라고 생각하면 된다.  

  개발자들이 별도의 개발툴 없이 태그(MXML)로 간단하게 플래시(swf)를 만들수 있게 해준다.

- Flex에 대한 오해 --> Flex는 Flash의 대체기술이 아닌 확장기술이다.

- 상용제품들이 나온지 꽤 되었지만 아직도 참고할 만한 책과 자료가 부족한 상태이다.

- 무겁다?? 단순하게 텍스트박스에 글을 입력해 보거나 얼럿창이 올라오는것을 보는것 만으로도 무거움을 느낄수 있다.

- 액션스크립트3.0이라는 언어를 습득해야 한다.

- 3~4년쯤 된 현재시점에서 많은 웹 어플리케이션 개발에 사용되어졌으며 자리를 잡아가고 있다.


*Air(apollo)

- 에어는 (Apollo는 Air의 프로젝트 명칭이며 정식명 AIR) Adobe사에서 처음으로 뛰어드는 데스크탑용 어플리케이션 개발 기술이다.

- 에어는 C#이나 자바등으로 못하는 것을 가능하게 하는 기술이 아니다. 오히려 처음으로 데스크탑 어플리케이션 개발 기술에 발을 내딛는 Adobe 이며  MS의 WPF에 맞서기 위해 너무 급하게 나오지 않았느냐는 평을 받고 있기도 하다.

- Flex의 개발기술을 그대로 사용하여 데스크탑용 어플리케이션을 만든다는 그 자체에 장점이 있다고 본다.

- 현재 알파에서 베타로 넘어온 상태이며 위젯(가젯) 등이 개발되고 있다.

*Flex가 RIA를 추구하고 화려한 UI를 제공하지만 디자인과 개발의 협업이라는 무거운 짐을 가지고 있다.
 또한 어느정도 기존 Java 개발자들만의 영역이된 사실은 공공연한 비밀이다.

 

-JavaFXScript-


- 자바FX스크립트는 자바 기반의 데스크톱 PC나 휴대용 기기들에 애플리케이션을 적용할 때 더욱 간단하게 사용할 수 있는 스크립트 언어이다.

 
- 자바FX는 자바 안정성을 그대로 유지하면서도 스크립트 언어이기 때문에 직관적이며, 코딩하는 대로 결과물을 즉시 확인하면서 개발이 가능하다.


- ‘자바FX스크립트의 코드량은 굉장히 적다.’ 그 뜻은 그만큼 버그 점검이 쉽다는 의미


- "상당히 풍부한 인터액션과 역동적인 행동, 무수한 아트워크로 다이내믹한 사용자 경험을 조성하고 그래픽 사용자 인터페이스(GUI)를 조성할 수 있는 스크립팅 언어이다. "


- Adobe 에서 제공하고 있는 ‘플렉스’와의 비교에 대해
  "플렉스는 인터넷 환경에서 상당한 강점을 가지고 있고, 플래시 플레이어가 많이 보급됐을 뿐만 아니라 멀티미디어 코덱 자체를 미디어플레이어에서 내장하고 있어서 멀티미디어 관점에서는 플렉스가 우위에 있다고 본다."
  "다만 개발자 입장에서 (기존 자바 환경을 그대로 이어갈 수 있는) 개발 생산성을 고려한다면 자바FX가 낫다"고 설명했다.


- 현 국내 모바일 프로그램의 95%는 자바플랫폼으로 이루어져 있다.
  거기에 JavaFXScript의 등장으로 Adobe의 플래시나 MS의 실버라이트가 모바일시장을 삐집고 들어갈 틈새는 더더욱 좁아질것으로 예측된다.
 

#웹에서의 JavaFXScript ????

   풀 JRE(Java Runtime Environment, 플랫폼 별13M~20M)를 사용한다.
   플래시 런타임과 실버라이트 런타임이 2M 남짓하다는 것을 생각해볼 필요가 있다.
   인터넷이 빨라졌다고는 하나 다양한 이유로 일반 웹 유저들이 RIA를 구동하기 위해서 JRE를 설치하는 일은 이미 어필하지 못한경험이 있다.
 
 
 
-WPF & Silverlight-
 
*WPF(Window Presentation Foundation)
 
- 앞으로 WPF는 Windows 계열의 모든 UI를 차지하게 될 것이라는 MS의 설명이 있었다.

- XAML언어가 공개 표준 작업을 통해 HTML과 같은 공인된 표준이 되도록 노력하고 있다고 하니 MS군의 제품뿐만 아니라 다른 많은 형태의 UI요소를 표현함에도 큰 역할을 할것이라는 예상도 보여지고 있다.

- 개발자는 그대로 C#등의 언어를 사용하여 프로그래밍을 입히면 된다.
   하지만 WPF가 주는 도전은 디자이너에게 더 크다고 볼 수 있다.
   WPF의 XAML이라는 언어를 통하여 디자이너들은 모든 형식의 응용프로그램을 일관된 언어로 작성할 수 있게 되어 윈폼의 UI를 그래픽 툴로 디자인 할 수 있는 획기적인 전기가 마련되었다.
*공백상태인 틈새시장이다. 현명한 디자이너라면 하루빨리 깨닫고 관심을 기울일것이다.

#WPF로 무엇을 하는가?
   이미 우리가 사용하고 있고 앞으로 우리가 사용하게 될 화려한 인터페이스의 Window Vista는
   닷넷프레임웍3.0 기반의 WPF기술로 이루어졌다는것 만으로 WPF의가능성에 대한 설명은 충분하다.
   앞으로 Window Vista 사용자의 수는 급속도로 늘어갈 것이며
   그에 따른 WPF Application 개발 수요도 많아질 것이다.
 
 
 
*Silverlight
 
실버라이트는 현재 1.0버전과 1.1버전이 있다.

#Silverlight 1.0 Beta
 
  Javascript로 제어하는 1.0버전은 올 여름중으로 정식릴리즈될 예정이다.

#Silverlight 1.1 Alpha
 
  C#, VB, Python 등의 언어로 개발이 이루어지며 올해 말 혹은 내년 초쯤  닷넷 2008(현 ‘orcas’)과 함께 정식 릴리즈 될것으로 예상된다.
 
^Javascript보다 C#, VB 기반의 프로그램이 성능면에서 약 1000배의 성능 차이가 있다고한다.
C#등을 이용하여 프로그램을 입히길 권장하고 있다.
 

#현재 Silverlight 1.1Alpha 개발을 위한 준비
 
 - Visual sudio 2008 (현 ‘orcas’ Beta1)
 - Expression Blend 2
 - Silverlight Tools Alpha for Visual Studio codename “Orcas” Beta 1
 - Silverlight 1.1 Alpha Runtime
 
^실버라이트 런타임은 플래시 런타임과 비슷한 것쯤으로 생각하면 된다.
 
 
 
 
-Microsoft Expression Studio
 
    미디어자산들의 버전과 종류관리
  마이크로소프트의 심플하고 편리한 UX툴    협업의 작업이 가능함    디자이너를 위한 소스와 프로젝트관리
  쉬운 자료보관 검색,구매,공유,판매
  새로운 시도의 혁신적인 UX
 
 
 
Microsoft Expression Studio는 MS의 새 제품군이다.
각각의 제품들이 어떠한 역할을 하는지는 다음 표를 보면 알 수 있다.
 
MicrosoftAdobe
Expression DesignIllustrator, PhotoShop
Expression BlendFlash, Flex
Expression WebDreamweaver
Expression MediaPremire
 
 
 
 
 
#WPF 와 Silverlight

 Silverlight또한 WPF와 마찬가지로 XAML언어로 UI가 만들어 지지만
 WPF에서 표현할 수 있는 모든것을 표현할 수는 없다.
 Silverlight는 WPF의 부분집합이다!
 하지만 빠르고 가볍다는 두가지 강점과 함께 웹에서 구동된다!
 (VGA 같은 하드웨어의 성능을 적극 활용할 수 있다.)

#Silverlight의 오해!

 “실버라이트는 플래시,플렉스를 잡으려고 태어났다?”
  이미 완벽하게 웹시장을 휘어잡고 있는 플래시
  그리고 점점 자리를 잡고 정착하고 있는 플렉스와 겨룬다는것은 너무 무모하다.
  플래시는 플래시고 실버라이트는 실버라이트다.
 
 실버라이트는 차세대 웹을 향한 해답이다.
 웹 시장에서 플래시/플렉스와 겨루어야 하는것은 당연한 사실이지만
 더 뛰어나지 못할바엔 애초에 나오지를 말았어야 했다.
 플래시/플렉스와 겨룬다는 오해는 이쯤 끝마치고 
 각각의 기술들이 어디에 어떻게 쓰여야할지 고민하여
 적절한 위치에 배치되어 사용되어지면 될것이다.
 
 
 
#개발자와 디자이너의 협업!

 Visual Studio 2008그리고 Expression Blend 2의 솔루션 공유를 통하여
 지금까지 경험해보지 못했던 디자이너와 프로그래머의 협업을 이룩할 수 있다.
 
 
 
#강력한 미디어/스트리밍 지원!

 VC-1, WMV, MP3, WMA 코덱을 내장하고 있어서 이를 통해서 HD급 화질(720p)의
 동영상을 재생할 수 있고 미디어를 일반 웹서버에서 다운로드 중에 재생할 수 있다.
 즉, 별도의 스트리밍 서버 없이 스트리밍 서비스가 가능한 것이다.
 물론 별도의 스트리밍 서버도 지원한다.
 사용자 측에서 보자면  미디어 플레이어 설치 여부와 관계 없이 저용량의 실버라이트 런타임만
 설치되어 있으면 고화질의 동영상서비스를 제공받을 수 있다.

 다양한 동영상 포맷을 지원해 별도로 파일 변환을 하지 않고 동영상 서비스를 제공할 수 있어
 동영상 서비스의 구축과 운영에 들어가는 비용을 최소화할 수 있다.
 
 
 
지난달에 있었던 REMIX KOREA 행사를 통하여
MBC, SBS, M.NET 등 미디어 대표주자들은 이미 실버라이트로 서비스할 데모버젼을 완성한 상태이며 실버라이트의 정식릴리즈와 함께 서비스할 예정이다.

 
 
 
#무조건 좋은가?

*소수의 사용자까지 배려하는것이 크로스플랫폼이 아니였던가?
 
   동일 Window 플랫폼 안에서도 아직까지 XP SP2 이상에서만 실버라이트 런타임 설치가 가능하다.
 
 
*실버라이트의 강점은 손쉬운 제작에 있다  
 
   거짓말이다.
   마치 HTML만 다룰줄 알면 Flex개발을 손쉽게 할 수 있다는 Adboe사의 거짓말과 다를바 없다.

'프로그래밍' 카테고리의 다른 글

Date/Time Format Syntax  (0) 2013.07.18
환율API 이용하기  (0) 2011.01.05