'silverlight'에 해당되는 글 8건

  1. 2008.06.27 Moonlight의 발빠른 진행이 놀라울 뿐입니다.
  2. 2008.06.20 Silverlight 2.0 beta2에서 바뀐 크로스 도메인 정책 (clientaccesspolicy.xml)
  3. 2008.06.04 웹 서버를 쓸까? 스트리밍 서버를 쓸까? 도대체 뭐가 좋은거야~~!
  4. 2008.02.29 MS silverlight Map
  5. 2008.02.27 실버라이트2와의 첫만남 - ScottGu's First Look at Silverlight 2 의 번역본
  6. 2007.06.29 MS 실버라이트 사례들
  7. 2007.06.06 Silverlight vs. Apollo, 무엇을 선택할것인가?
  8. 2007.04.19 이젠 Silverlight 다
2008.06.27 18:04

Moonlight의 발빠른 진행이 놀라울 뿐입니다.

Silverlight가 2.0 beta2가 발표되고 나서 여기 저기서 Silverlight 2.0의 정식버전 발표가 임박했다는 느낌을 가지고 기대감이 고조되고 있습니다. 그런데 또 하나 놀라운 일은 Linux 진영에서 Silverlight를 지원하는 Moonlight project에 관한 이야기 입니다. Moonlight는 Linux에 .NET Platform을 인식시키는 Mono project와 관련이 있는데 Moonlight가 생각보다 엄청 빠르게 진행되고 있다는 소식입니다.

현재 Silverlight 1.1과 관련해서는 진행사항이 거의 안정적으로 진행되어가고 있는것 같습니다.
또 Silverlgith 2.0과 관련해서는 Alpha 수준의 작업이 진행되고 있다고 합니다.
Silverlight 2.0과 관련한 내용은 아래와 같이 언급하고 있습니다.


Alpha support for Silverlight 2.0

Currently support for Silverlight 2.0 is in pre-Alpha stage, but if you want to test it, or contribute to the code, you will need to:

  • Obtain Mono from SVN or AnonSVN (version 1.9.1 is not enough).
  • Run the configuration for Mono like this:
    • ./autogen.sh --with-moonlight=yes
  • Install Mono
    • make install
  • Re-run the moonlight configuration, pass --with-mono=yes to the configure script

This will produce a new compiler smcs which defaults C# to the 3.0 version and will include the Silverlight assemblies by default in a compilation. You will use this compiler to generate assemblies and libraries that are intended to be ran on Microsoft's Silverlight or Mono's Moonlight.

오픈 소스 형태의 프로젝트로 진행하고 있기 때문이기도 하지만 Linux에서 사용할 만한 뛰어난 UI를 위한 API의 부재 또한 Moonlight에 좀 더 박차를 가할 수 있는 이유가 되기도 한 것 같습니다.
 Linux에서 사용할 만한 UI를 위한 API라면 GTK나 QT와 같은 것이 있겠지만 QT는 비싼 라이센스로 GTK는 완성도와는 상관없이 사용상의 불편함이 문제가 되어 왔습니다.

결과적으로 Linux에서 Silveright를 사용할 수 있게 하는 Moonlight는 Linux들에게는 새로운 기회로 받아들여지게 된것 같습니다.

Moonlight와 관련한 내용은
http://www.mono-project.com/Moonlight 여기서 확인할 수 있습니다.


그리고 Moonlight 로 잘 포팅되어서 실행되는 모습의 스크린 샷은
http://www.mono-project.com/MoonlightShots 여기서 확인할 수 있습니다.

사용자 삽입 이미지
사용자 삽입 이미지
사용자 삽입 이미지



출처 : http://winkey.tistory.com/154
신고
Trackback 97 Comment 0
2008.06.20 08:40

Silverlight 2.0 beta2에서 바뀐 크로스 도메인 정책 (clientaccesspolicy.xml)

Silverlight에서 크로스 도메인 서비스(Cross Domain Services)를 하기 위해서는
요청하는 해당 디렉토리에 clientacesspolicy.xml 파일이 존재하여야 합니다.

clientaccesspolicy.xml 파일은 Silverlight 2.0 beta1에서는 아래와 같은 형식이었습니다.

<?xml version="1.0" encoding="utf-8"?>
<access-policy>
  <cross-domain-access>
    <policy>
      <allow-from>
        <domain uri="*"/>
      </allow-from>
      <grant-to>
        <resource path="/" include-subpaths="true"/>
      </grant-to>
    </policy>
  </cross-domain-access>
</access-policy>

그러나 똑같은 파일을 beta2에서 사용하시면  WebClient혹은 웹 서비스 참조로 사용할 경우 404 Not Found exception이 발생할 수도 있습니다.

사실 다른 구체적인 Exception이 뿌려지면 디버깅할 때 좀더 편할텐데 하필이면 404가 나오는지 의문입니다.

beta2에서는 아래와 같이 allow-from 엘레먼트에 http-request-headers 어트리뷰트를 "*" 라고 명시적으로 지정하여야 합니다.
<?xml version="1.0" encoding="utf-8"?>
<access-policy>
  <cross-domain-access>
    <policy>
  <allow-from http-request-headers="*">
   <domain uri="*"/>
  </allow-from>
      <grant-to>
        <resource path="/" include-subpaths="true"/>
      </grant-to>
    </policy>
  </cross-domain-access>
</access-policy>


출처 : http://hoons.kr/MetaBlog/Contents.aspx?blogIdx=1428
신고
Trackback 4 Comment 0
2008.06.04 19:15

웹 서버를 쓸까? 스트리밍 서버를 쓸까? 도대체 뭐가 좋은거야~~!

요즘 어느 웹 사이트나 동영상이 빠져있는 사이트를 보는 것은 이제 매우 어려운 일이 되어버렸습니다. 어떤 형태로든 동영상을 서비스하고 있고, 이러한 동영상은 웹 페이지를 더욱 미려하고, 직관적으로 해주는 또하나의 백미중에 하나가 되고 있죠. IT 관리자는 조직의 솔루션 or 웹 서비스등에 동영상을 서비스해달라는 요청을 심심치 않게 받으실 수 있습니다.

동영상을 서비스할 수 있는 방법론은 크게 두가지를 꼽을 수 있습니다. 바로 웹 서버를 이용한 전통적인 서비스 방식과 Windows Media Service와 같은 스트리밍 방식의 서비스를 이용하는 방법입니다. 어떤 것을 사용하고 계신가요?

image

두가지중에 어느 한가지가 좋다고 선택하기가 매우 어렵습니다. IIS를 사용하는 전통적인 다운로드 방식의 동영상 서비스와 스트리밍 방식의 동영상 서비스는 각기 방향성과 사용 방법론이 조금은 틀리기 때문이죠.

2002~2003년즈음에 화상 회의와 관련된 회사를 다녔던 저입장에서는 이러한 미디어에 대한 네트워크 전송은 단순하게 서비스의 종류도 종류였지만, 네트워크에서 어떠한 프로토콜을 사용하느냐도 매우 중요했습니다. 바로 TCP냐 UDP냐는 것에 대한 선택이죠. Multicast도 있었고요.

TCP는 신뢰성있는 프로토콜입니다. 여기서 길게 언급하기는 그렇지만.. 전송에 대해서 확인을 거친 후, 어떠한 문제가 발생하면 그 문제점에 대해서는 재전송해주는 방식을 사용합니다만, 동영상과 같은 실시간 스트리밍에서는 이러한 재전송이 오히려 딜레이와 같은 역효과를 낼수도 있습니다. 다만, TCP를 사용하는 경우 NAT라던가, Firewall과 같은 네트워크에서의 접근 문제점을 해결할 수 있다는 장점은 있습니다.

UDP는 신뢰성이 없는 프로토콜입니다. 전송하면 받던가 말던가 크게 신경쓰지 않죠. 또한 네트워크 장비에서 TCP보다 처리되는 프로세스가 더 빠릅니다. 이에 실시간의 빠른 전송을 요구하는 오디오/비디오 스트리밍 환경에서는 TCP보단 적절할 수 있습니다. 네트워크 인프라에 영향을 많이 받았고, NAT와 Firewall과 같은 네트워크에서 다소 문제를 야기했었습니다.

Multicast는 네트워크 장비 레벨에서 패킷 처리를 멀티미디어에 적절하게 해주는.. 결국, 서버에는 하나의 멀티미디어 패킷만 전송하면, Multicast 그룹에 들어가 있는 클라이언트들은 스위치 레벨에서 이를 나누어서 보내주는 것이죠. Unicast 방식보다 서버의 부하, 그리고 네트워크 대역폭을 훨씬 작게 쓴다는 장점이 있습니다만, 장비가 지원해야 한다는 약점이 있습니다.

웹 서버는 HTTP 프로토콜로 서비스를 하게 되고, 이 HTTP는 바로 TCP를 사용합니다. 이렇기 때문에 동영상을 서비스하는 경우에 TCP에 의한 문제점을 고스란히 가지고 있는 것은 사실입니다, 스트리밍 서버는 TCP or UDP를 선택할 수가 있죠. 물론 Multicast도 사용이 가능합니다.

Silverlight이 대중화가 되가면서, Silverlight을 이용한 개발자나 디자이너 분들께서 많이들 궁금해하시는 사항인데요. 어떤 것을 선택할까? 라는 것이죠.

간단하게 살펴보죠.

웹 서버

장점

  1. 쉬운 관리와 설정 - 현재 사용하는 웹 서버에서 바로 서비스 가능
  2. 낮은 서버 사용량
  3. SSL을 이용한 보안
  4. 일반 웹 클라이언트의 지원
  5. 방화벽, 캐쉬, 프록시등을 지원

단점

  1. 콘텐츠의 Bit Rate에 상관없이 한번에 왕창 전송 - 네트워크 대역폭의 일시적 폭주
  2. 고급 스트리밍 기술에 대한 지원 없음 - Intelligent Streaming, Advanced FF/RW, Live Broadcast 등
  3. 재생 목록에 대한 지원 없음
  4. DRM을 사용하지 않을 경우, 동영상 콘텐츠가 클라이언트 캐쉬에 남음

스트리밍 서버

장점

  1. 동영상 서비스에 적합한 많은 스트리밍 기술 제공
  2. 서버 기반 재생 목록
  3. 대역폭 최적화
  4. 다양한 프로토콜 지원

단점

  1. 추가적인 인프라 구축에 따른 관리
  2. 지원 포맷의 한정 및 클라이언트 제한

웹 서버의 경우에는 첫번째 문제점이 단점 1번 사항입니다. 128K로 인코딩된 콘텐츠는 128K로만 서비스하면 사용자는 무리없이 서비스를 받을 수 있지만, 웹 서버 자체가 콘텐츠의 Bit Rate을 알지 못하므로, 무조건 왕창 전송하고 끝내버린다는 것이죠. 이는 다수의 사용자가 동시에 서비스를 요청하면 네트워크 대역폭이 첫번째 문제점이 될 수 있습니다. 그리고 동영상 서비스를 위한 비즈니스 구조인 광고를 넣고, 이에 대해 시청한 후, 서비스를 받는 등의 비즈니스 연관 관계를 설정하는 것도 어렵습니다.

그렇다고 스트리밍 서버를 추가적으로 설치하자니.. 인프라적인 요소 및 서비스가 가능한 동영상 포맷이 제한적이 되어버리죠.

이를 해결하기 위해서 바로 Windows Server 2008의 IIS 7에서는 두가지 모듈을 추가적으로 제공합니다. 물론 IIS 7을 사용하시면 언제든지 사용하실 수 있습니다.

IIS 7 Bit Rate Throtting Module

  • 32 bit - http://www.iis.net/downloads/default.aspx?tabid=34&g=6&i=1640

  • 64 bit - http://www.iis.net/downloads/default.aspx?tabid=34&g=6&i=1641

    IIS 7 Web Playlist Module

  • 32 bit - http://www.iis.net/downloads/default.aspx?tabid=34&g=6&i=1623

  • 64 bit - http://www.iis.net/downloads/default.aspx?tabid=34&g=6&i=1631

    Bit Rate Throtting Module에 대해 간단히 말씀드리면.. 12Mbps로 인코딩된 동영상을 IIS 7을 통해서 제공할 때, IIS 7의 경우 해당 동영상이 12Mbps로 서비스해야 한다는 사실을 알지 못합니다. 그러므로, 대역폭이 허락하는한, 최대로 파일을 전송하게 되고, 사용자는 빠르게 전송받은 콘텐츠는 말 그대로 캐쉬에 가지게 되는 것이죠. 그렇지만, Bit Rate Throtting Module을 사용하게 되면, IIS가 해당 콘텐츠의 Bit Rate를 알게 되서, 최초의 Fast Start, Fast Cache를 위해서만 일시적으로 전송 속도를 올리고, 남은 시간에는 해당 Bit Rate로만 전송하는 모듈입니다. 간단하죠?

    image image

    위의 그림에서 보시면 확연히 차이를 아시겠죠?

    image

    설정은 매우 간단합니다. IIS 7에 해당 모듈을 설치하시고, 이에 대해 설정만 해주시면 되고, 필요하시다면 추가적으로 얼마든지 콘텐츠 유형을 추가할 수 있습니다. 콘텐츠 입장이 아닌, 데이터 입장에서 설정을 할 수 있기 때문에, 엔지니어 시각에서 데이터 처리를 원하는 경우, 다시 말해, 최초의 Fast Start를 위한 대역폭, 이후 대역폭을 네트워크 입장에서 명시할 수 있죠.

    image

    이를 사용했을 경우의 그림이 밑의 왼쪽 - 대역폭과 Bit Rate가 거의 일치합니다. 쓰지 않았을 경우의 그림이 밑에 오른쪽입니다. 대역폭을 허가량만큼 다 쓰고 있죠.

    image image

    물론 IIS 7 + Bit Rate Throtting이 만사 해결은 아닙니다. IIS 7에서 콘텐츠를 서비스하기 위한 최소한의 모듈을 제공하고 있고, 고급적인 모듈은 WMS를 이용하셔야 합니다.

    동일한 동영상을 WMS를 통해서 서비스를 하게 되면, 대역폭도 훨씬 최적화하여 사용하며, 클라이언트와 서버사이의 네트워크 상태를 파악하기 때문에, 네트워크의 변화에 따라 품질 조정 및 오디오/비디오 서비스를 조절하는 Intelligent Streaming이 가능해집니다. 물론 Windows Media Player와의 궁합도 생각하긴 해야죠

    image image

    내용이 길어지네요.. 그래도 다 써야죠~ WMS의 Playlist(.asx)는 비즈니스적으로 필요한 기능이 많습니다. 광고를 보고~ 동영상을 보게 하거나, 되돌리기, 앞으로 가기 금지.. 재생 위치 조절 금지등... 이 기능도 동영상을 서비스하는 서버입장에선 꼭 필요합니다. 바로 IIS 7의 Web Playlist(.isx)가 이를 할 수 있습니다.

    image

    만약 IIS로 동영상을 서비스한다면, 사용자가 직접 URL을 치고 들어갈 수도 있다는 문제점도 있고.. 광고를 보지 않고, 동영상을 서비스받을 수도 있습니다. 또한 동영상 콘텐츠가 반드시 서버에 같이 있어야 한다는 문제점이 있지만.. Web Playlist를 사용하시면, 구지 콘텐츠가 가상 디렉터리, 같은 서버내에 있지 않고도 서비스를 할 수 있게 해줍니다.

    image image

    훌륭하죠? 사용자는 http://주소/Playlist.isx 또는 이 XML 정보를 ASPX를 통해서 제공받을수도 있습니다.

    image

    첫번째 질문에 대해 이제 답변이 생기셨나요? 웹 서버는 뭔가 아쉽고, WMS 쓰기엔 뭔가 지나친거 같고... 이를 Windows Server 2008의 IIS 7이 속시원하게 해결해드리며.. 이를 통해 Silverlight과의 멋진 만남을 만들어낼 수 있습니다.

    image

    아래의 표는 보너스입니다. 기능에 대한 비교표도 있어야겠죠 :)

    image

    Expression을 통한 콘텐츠 제작 및 인코딩, 이를 Windows Platform에서 서비스를 하고, 이러한 풍부한 기능 및 경험을 사용자는 Silverlight을 통해서 완벽하게 경험하실 수 있습니다. 역시나 사용자의 멋진 경험 뒤에는 이를 묵묵히 서비스하는 다양한 플랫폼 기술이 있어야 한다는 것을 다시금 느끼실 수 있을거라 생각합니다.

    출처 : 꼬알리의 하얀집

  • 신고
    Trackback 64 Comment 0
    2008.02.29 11:15

    MS silverlight Map

    사용자 삽입 이미지

    sliverlight

    신고
    Trackback 0 Comment 0
    2008.02.27 13:55

    실버라이트2와의 첫만남 - ScottGu's First Look at Silverlight 2 의 번역본

    아래 글은 마이크로소프트 기술이사인 스캇 구슬리의 블로그에 게시된 First Look at Silverlight 2의 번역본 입니다. 아래 본문의 튜토리얼에 대한 번역도 진행되고 있습니다.

    번역 : 오일석


    실버라이트2의 첫만남

     

    우리는 지난 9월에 맥과 윈도우를 위한 실버라이트 1.0을 출시했고 리눅스를 위한 실버라이트의 출시계획을 발표했습니다. 실버라이트 1.0은 브라우저 상에서 풍부한 미디어 시나리오를 가능하게 하고 Javascript AJAX 프로그래밍 모델 지원에 초점이 맞추어져 있었습니다.

     

    우리는 RIA(Rich Internet Application) 개발을 위한 실버라이트의 주요 업데이트가 될 실버라이트 2의 첫 번째 공개 베타를 곧 배포할 예정입니다. 이 글은 앞으로 몇 주 또는 몇 달에 걸쳐서 실버라이트 2에 대하여 보다 깊게 진행될 글 중 첫 번째 글입니다.

    크로스 플랫폼 / 크로스 브라우저 .NET 개발

    실버라이트 2는 닷넷 프레임워크의 크로스 플랫폼, 크로스 브라우저 버전이며 브라우저에서 실행되는 닷넷 개발플랫폼을 포함합니다. 개발자들은 VB, C#, Javascript, IronPython, IronRuby를 포함하는 여러 닷넷 언어를 이용하여 실버라이트 응용프로그램을 만들 수 있습니다. 우리는 실버라이트 응용프로그램을 만들 때 개발자와 디자이너간의 훌륭한 워크플로와 협업을 가능케 하는 비주얼 스튜디오 2008과 익스프레션 스튜디오용 도구를 배포할 예정입니다.

    곧 나올 실버라이트 2 베타1RIA 응용프로그램 개발을 위한 풍부한 기능들을 제공합니다. 아래의 내용들을 포함합니다.

    • WPF UI 프레임워크 : 실버라이트 2는 보다 쉽게 리치 웹 응용프로그램을 만들 수 있게 해주는 WPF 기반의 UI 프레임워크를 포함합니다. 강력한 그래픽스와 애니메이션 엔진의 제공과 동시에 컨트롤, 레이아웃 도구, 데이터 바인딩, 스타일, 템플릿 스킨과 같은 상위 레벨의 UI 기능을 지원합니다. 실버라이트의 WPF UI 프레임워크는 닷넷 프레임워크 WPF UI 프레임워크의 일부분과 호환되고 개발자로 하여금 리치 크로스 브라우저 웹 응용프로그램뿐만 아니라 리치 데스크탑 윈도우 응용프로그램에서도 기술, 컨트롤, 코드, 컨텐츠를 재사용 할 수 있게 합니다.
    • 풍부한 컨트롤들 : 실버라이트 2는 개발자나 디자이너가 빠르게 응용프로그램을 만들 수 있게 하는 풍부한 빌트인 컨트롤을 포함합니다. 이번 베타 1에서는 core form controls(Textbox, Checkbox, RadioButton ), Layout management panels (StackPanel, Grid, Panel ), common functionality controls (Slider, ScrollViewer, Calendar, DatePicker ), data manipulation controls (DataGrid, ListBox 등)을 제공합니다. 빌트인 컨트롤은 개발자와 디자이너가 멋진 솔루션을 만들기 위해 서로 협업이 가능하게 만드는 템플릿 모델을 지원합니다.
    • 풍부한 네트워크 지원 : 실버라이트 2는 풍부한 네트워킹 기능을 제공합니다. REST, WS*/SOAP, POX, RSS, 표준 HTTP 서비스가 쉽게 사용 가능한 형태로 포함됩니다. 또한 실버라이트 클라이언트가 웹상의 소스로부터 직접 데이터와 리소스를 접근할 수 있게 하는 크로스 도메인을 지원합니다. 게다가 베타 1에서는 소켓 네트워킹 기능을 제공합니다.
    • 풍부한 기본 클래스 라이브러리 : 실버라이트 2는 컬렉션, IO, 제너릭, 쓰레딩, 국제화, XML, 로컬 저장소 등 닷넷 기본 클래스 라이브러리를 제공합니다. HTML DOM/Javascript와 닷넷의 통합을 위한 API와 데이터를 쉽게 가져오고 변환 가능하게 하는 LINQ, LINQ to XML 라이브러리 또한 지원합니다. 실버라이트의 닷넷 API는닷넷 프레임워크의 일부분과 호환합니다.

    실버라이트2의 실행을 위해 내 컴퓨터에 닷넷 프레임워크를 설치할 필요는 없습니다. 실버라이트 설치 프로그램은 위에서 설명한 모든 특징들을 포함하여 맥 OSX 또는 윈도우에서 필요한 기능들을 다운로드 합니다.

    실버라이트 2 베타1 4.3MB의 용량으로 컴퓨터에 처음 설치될 때 4-10초 정도 걸립니다. 실버라이트 2가 한번 설치되면 여러분의 웹 브라우저(IE, FireFox, Safari )에서 자동으로 실버라이트 응용프로그램이 실행됩니다.


    실버라이트 2 튜토리얼: 간단한 Digg 클라이언트 만들기


    저는 실버라이트 2를 시작하려는 분들에게 도움을 주기 위해서 실버라이트 프로그램을 작성하고 더불어 컨트롤, 레이아웃 관리, 네트워킹, 데이터 바인딩, 스타일, 사용자 정의 컨트롤, 템플릿 등에 숨어있는 다양한 프로그래밍 개념을 설명하고 파헤칠 단계별 튜토리얼을 만들었습니다. 또한 이러한 응용프로그램을 브라우저 밖으로 마이그레이션하여 닷넷 프레임워크와 WPF를 사용하는 데스크탑 응용프로그램을 어떻게 만들 수 있는지에 대한 방법과 글을 추가했습니다.


    아래는 제가 작성한 8개의 튜토리얼에 대한 링크입니다. (아래 링크 한글번역 진행중입니다)

     

    Part1: VS 2008과 실버라이트 2를 이용한 “Hello World” 만들기

    Part2: 레이아웃 관리 사용하기

    Part3: 데이터를 가져오기 위한 네트워킹과 DataGrid 사용하기

    Part4: 보다 나은 룩앤필(Look and Feel)을 위한 Style Elements 사용하기

    Part5: ListBox 사용하기와 리스트 데이터 표시를 위한 데이터 바인딩 하기

    Part6: Master/Details 시나리오의 구현을 위한 사용자 정의 컨트롤 사용하기

    Part7: 컨트롤의 룩앤필(Look and Feel)을 변경하기 위한 템플릿 사용하기

    Part8: WPF를 사용한 Digg 데스크탑용 응용프로그램 만들기


    튜토리얼에서 만든 응용프로그램은 유명한 Digg.com 사이트를 대상으로 한 간단한 검색용 클라이언트 프로그램으로 사용자는 검색 토픽을 입력하여 관련된 Digg스토리를 검색 합니다.

     

    프로그램에서 사용한 모든 UI는 실버라이트의 WPF 프레임워크를 사용했습니다. 프로그램에서 실버라이트 네트워킹 스택을 사용했고 Digg REST API를 직접 접근하기 위한 크로스 도메인 지원을 사용했으며 UI에 데이터바인딩 시킬 DiggStory 데이터의 쿼리와 가공을 위해 LINQ LINQ to XML을 사용했습니다.


    사용자 삽입 이미지



     

    프로그램은 사용자로 하여금 검색된 리스트에서 스토리를 선택하고 그것에 대한 자세한 정보를 빠르게 보기 위해서 Master/details 데이터 상호작용 모델을 지원합니다. 사용자는 자세히 보기에서 Digg스토리로 바로 점프하거나 자세히 보기를 닫고 다른 스토리를 선택해 볼 수 있습니다.


    사용자 삽입 이미지


     

    전체 프로그램은 약 35줄의 C# 코드와 75줄의 XAML 페이지와 사용자 정의 컨트롤 코드로 구현됩니다. 단지 실버라이트에서 제공하는 라이브러리와 컨트롤들만 사용했을 뿐입니다.

     

    만약 여러분께서 WPF를 사용해 보신 경험이 있다면 제가 이 튜토리얼에서 논의하는 UI 개념이 매우 낮 익을 것입니다. 하지만 WPF를 사용해 보신 경험이 없다면 이 튜토리얼은 기본적인 프로그래밍 개념을 잡기 위한 좋은 개요를 제공할 것 입니다. 그리고 바라건데 실버라이트 2 베타1이 나왔을 때 VS 2008과 함께 실버라이트 2 응용프로그램을 시작하는 데 필요한 기본 지식을 알려줄 것입니다.

     

    베타1이 다운로드 가능하게 되면 제 블로그를 통해서 자세한 내용을 알려드릴 것입니다. 또한 베타1이 출시되면 최종 Digg 프로그램을 코드와 VS 2008에서 열어서 수정할 수 있는 프로젝트 파일과 함께 제 블로그에 올려둘 생각입니다.

     

    도움이 되었기를

     

    스캇.

     

    2008년 2월 22일 오전 6시 41분 ScottGu가 발행함.


    윗글은 마이크로소프트 기술이사인 스캇 구슬리의 블로그에 게시된 First Look at Silverlight 2의 번역본 입니다.

    출처 : http://onestone.tistory.com/entry/실버라이트2와의-첫만남-ScottGus-First-Look-at-Silverlight-2-의-번역본

    신고
    Trackback 0 Comment 0
    2007.06.29 08:51

    MS 실버라이트 사례들

    MS 실버라이트 사례들 

    1. MNet의 TV 2.0 - MS Korea Remix

    2. 항공권 예약 시스템 - MS Tech ED

    3. 웹 동영상 - MS Tech ED

    MS 대반격, 실버라이트

    속어로 은광여고라 불리기도 하는 실버라이트는 차세대 기술로 Adobe Flash 대항마의 자격을 갖춘 RIA(Rich Interface Application) 일종이다. 플래시는 최근 동영상 사이트에서 쉽게 있는 인터넷 어플리케이션으로 WWW 브라우저만으로 시연하기 어려운 인터랙티브하고 비주얼한 서비스를 구현할 있도록 해준다. 그렇다보니 광고 배너와 게임 그리고 동영상 등은 물론 부분적인 WWW 서비스를 플래시로 구현하는 사례가 늘고 있다. 그간 같은 WWW 브라우저 내의 RIA 시장을 독주하던 플래시에 실버라이트가 제동을 걸고 나선 것이다.

    실버라이트의 특징과 강점

    MS 지난 4 공개한 실버라이트는 베타 수준으로 아직 정식 서비스가 제공되지 않고 있지만, 어도비 플래시와 경쟁하기 손색이 없을 정도의 뛰어난 성능을 자랑하고 있다. 실버라이트는 플래시가 보여주는 인터랙티브한 기능과 비주얼한 화면 구성을 모두 지원함은 물론 제작의 편의성과 HD급의 화질 지원으로 단계 진일보 했다는 평가를 받고 있다.

    실버라이트의 공식 홈페이지 : http://www.microsoft.com/silverlight 

    실버라이트의 강점은 손쉬운 제작에 있다. 플래시의 경우 액션스크립트라는 프로그래밍 언어를 이용해 SWF 파일을 만들어 WWW 연결해야 한다. 이때, 플래시로 디자인을 만드는 디자이너와 WWW 이를 삽입해서 페이지를 구성하는 개발자간 협업에 어려움이 발생한다. 디자이너는 창의적인 아이디어로 사용자들에게 최적의 UX 경험할 있는 디자인을 완성하지만, 개발 과정 중에 이러한 아이디어가 깨지게 되어 마치 깨져버린 달걀을 누더기처럼 붙이는 것처럼 엉망이 되어버린 산출물이 나오기 때문이다.

    반면 실버라이트는 기존의 개발 방식과는 달리 익스프레션 디자인을 이용해 구현된 XMAL 포맷의 디자인 코드가 C#, 비주얼 베이직을 통해 구현되기 때문에 디자이너와 개발자간의 협업이 쉽다. 게다가, 실버라이트는 기존에 사용하던 C#, 자바스크립트, 파이썬, VB 기반에 개발하기 때문에 새로운 프로그램을 도입해서 배워야 하는 번거로움이 없다.

    실버라이트의 눈에 띄는 특징은 HD급의 고화질 스트리밍 동영상 재생을 지원한다는 점이다. AJAX 프레임워크에 통합되어 개발 환경이 쉬어졌음은 물론 윈도우 라이브 플랫폼을 이용해 WWW에서 고품질의 동영상을 전달할 있다. 그런 이유로 영화 배급사와 케이블 TV 업체들에겐 실버라이트가 플래시보다 비디오 플랫폼으로서 훌륭한 대안이 있다. 특히, 실버라이트는 다양한 동영상 포맷을 지원해 별도로 파일 변환을 하지 않고 동영상 서비스를 제공할 있어 동영상 서비스의 구축과 운영에 들어가는 비용을 최소화할 있다.

    다른 실버라이트의 강점은 DVD 스타일의 인터랙티브한 UI 오버레이 기능을 지원한다는 점이다. 이것은 WWW 브라우저 내에서 실행되는 서비스가 마치 데스크탑의 어플리케이션과 같은 뛰어난 사용성을 제공할 있게 해준다. 그렇다보니 실버라이트가 단지 플래시처럼 게임이나 동영상 재생에만 사용되는 것이 아니라 실제 서비스(쇼핑몰, 항공 예약 시스템, 비디오 편집 ) 적용되기도 한다.

     

    실제 야후 메신저에서 시도 중인 WPF 버전의 PC 소프트웨어는 벡터기반 그래픽을 이용한 Zooming UI 채택하여 보다 비주얼하고 역동적인 UX 경험할 있도록 했다. 소프트웨어에 적용된 기술이 실버라이트이며, WPF 윈도우 비스타 UI 프레임워크이다. (http://soapbox.msn.com/video.aspx?vid=ddae80aa-4638-4b8e-806a-0ce6a5192b4c)

    실버라이트의 사례와 사용법

    실버라이트를 WWW 브라우저에서 만나보려면 플래시처럼 플러그인 프로그램을 설치해야 한다. 인터넷 익스플로러 외에 파이어폭스, 오페라 등의 브라우저에서도 사용 가능한 실버라이트 플러그인 WPF/E 불린다. 또한, 실버라이트 기반의 서비스를 개발하려면, 실버라이트를 지원하는 비주얼 스튜디오 등의 개발툴과 익스프레션 스튜디오, 익스프레션 미디어 등이 필요하다.

    지금 실버라이트를 체험해보고 싶다면 우선 브라우저에 플러그인을 설치해야 한다. ‘http://www.microsoft.com/silverlight 연결한 후에 ‘DOWNLOADS’ 메뉴에서 ‘Silverlight 1.0 Beta’ 설치한다.

    만일 실버라이트 기반의 서비스를 직접 개발해보고 싶다면 ‘Silverlight 1.1 Alpha’ 설치한다. 향후 비주얼 스튜디오나 비주얼 베이직, ASP.NET 등의 개발툴에 실버라이트는 탑재되어 기존의 개발자들도 쉽게 사용할 있게 것이다.

    브라우저에 플러그인을 설치한 후에, 실버라이트 공식 페이지의 하단에서 ‘EXPERIENCE SILVERLIGHT’ 통해서 다양한 샘플을 만나볼 있다. 특히 동영상, 사진 등의 멀티미디어를 재생하는 용도로 실버라이트의 UI 훌륭하다. 사진 앨범이나 전자책을 브라우저에서 보기에도 훌륭하다. 특히, 실버라이트는 휴대폰 등의 모바일 기기에서 동작될 있는 기능이 제공될 예정이라 브라우저에서 있는 콘텐츠들을 모바일 기기에서도 같은 UI 즐길 있다.

    특히 실버라이트가 적용된 게임은 플래시보다 복잡하고 빠른 속도로 개발할 있다. 네이버의 경우도 실버라이트를 이용한 게임을 개발 중에 있어 향후 실버라이트를 이용한 게임 개발이 늘어갈 것으로 기대된다.

    이미 올해 초부터 뉴욕타임즈는 WPF 이용한 Desktop 뉴스 구독기를 제공하고 있다. 프로그램을 이용하면 웹브라우저에서 즐기는 뉴욕타임즈 기사를 보다 비주얼하게 바탕화면에서 즐길 있다. 온라인 뉴스를 틀에 박힌 브라우저에서 보던 것과는 다른 경험으로 있다.

    이처럼 실버라이트는 우리의 WWW 서비스 사용 방식과 체험을 크게 바꿔줄 것으로 기대된다. 이제 우리의 WWW 브라우저의 한계에서 벗어나 Desktop Application 같은 뛰어난 사용성을 제공해줄 것으로 기대된다



    출처 : http://docs.google.com/Doc?id=ajg2m9j8t6mp_16c2mrqg

    신고
    Trackback 0 Comment 0
    2007.06.06 01:38

    Silverlight vs. Apollo, 무엇을 선택할것인가?

    MS가 WPF/e를 Silverlight라는 이름으로 바꾸고 오늘 어도비의 플렉스(Flex)가 오픈소스를 선언했 다. 데스크톱 리치 웹 진형의 경쟁은 굉장히 격화 되고 있다. 실제로 내가 MTS에서 실버라이트의 개발 도구인 블렌드(Blend)를 봤을 때 상당히 많은 플래시 개발자들이 아폴로나 플렉스로 가는 대신 실버라이트를 택할 것 같다는 느낌을 강하게 받았다.
    사용자 삽입 이미지

    플렉시 개발툴이 이클립스를 많이 닮아 기존 플래시 UI 디자이너에게 거부감이 든다. 이에 반해 실버 라이트 개발도구인 Microsoft Expression Blend는 포토샵처럼 속성만 지정해 주면 XAML이나 C# 코드를 자동 생성해준다.  (과거 비주얼 베이직을 보는 것 같았다. MS는 원래 개발 도구로 개발자를 바보로 만드는 데 유명하지 않던가.)

    하지만 중요한 건 무엇을 선택할 것인가가 아니다.
    24일에 웹 표준 및 CSS 워크샵에서 '웹 표준의 미래'에 대한 이야기를 하고 왔다. 특히 최근 W3C의 새 HTML 워킹 그룹 소식 출범 소식과 함께 WHAT.org에서 만들고 있는 HTML 확장에 대한 이야기도 해주었다. 특히 <video> 태그와 DOM storage와 같은 사실에서 볼 수 있듯이 W3C가 Working Draft를 낼 때 쯤은 웹 브라우저들이 실제로 그 기능들을 구현할 가능성이 많다.

    이에 앞서서  우리 회사 임종혁님이 리치 웹의 현황에 대한 이야기도 전해 주었다. 여기서는 Microsoft WPF/e와 Adobe의 Apollo 등의 현재 진행 상황와 멋진 데모도 함께  보여 주었다. 강의 후에 질문하는 사람들에서 보았듯이 이런 현실에 꽤 혼란스러워 하는 것 같았다. 도대체 이제 어느 장단에 춤을 춰야 할지 모르겠다는 분위기였다. (요즘 내가 이런 이야기를 하고 다니면 꼭 나오는 반응들이다. 사실 그 정도로 빠른 기술적 변화가 일어나고 있는 분야이기 때문이다.)

    이러한 경쟁외에도 새 HTML W/G이 만드는 웹 표준에도 리치(Rich) 유저 인터페이스를 담는 새로운 태그와 콘트롤 및 2D/3D를 위한 객체들이 포함될 예정이다. 웹 브라우저들 사이에 기능 경쟁도 만만치 않게 벌어질 전망이다.

    하지만 중요한 것은 기술을 선택하는 기준에서 적당한 곳에 적당한 도구를 사용해야 한다는 원칙을 잊지 말아야 한다는 것이다. '무우를 자르는 데 소 잡는 칼을 쓰면 안된다.' 그건 이미 우리나라의 'ActiveX의 오류'에서 깨달은 바 크다. 웹으로 정보를 제공하는 데 있어 첫번째 원칙은 접근 가능한 최소한의 기능이고, 여기에 단계적으로 기능을 향상하는 방법을 택해야 한다. 리치 웹이 좋다고 오로지 그것만으로 제공하려고 하는 판단에서 웹을 폐쇄화 하는 구조적인 문제가 생기게 되는 것이다.

    기술의 변화는 좋고 우리를 더욱 윤택하게 한다. 하지만 기본을 잃으면 우리 모두 불행해 진다.


    출처  : 챠니님
    신고
    Trackback 0 Comment 0
    2007.04.19 13:24

    이젠 Silverlight 다

     

    그동안(?) WPF/e (Windows Presentation Foundation Everywhere)라고 불리우던 넘이 정식으로 Silverlight 라는 명칭으로 오는 4월 30일 등장하는군요.


    사용자 삽입 이미지


    이로써,

    미디어의 화려함을 갖는 RIA가 등장하게되며,

    2MB정도의 적은 용량의 플러그인 설치만으로,

    윈도우와 매킨토시에 동일한 기능 및 화면을 제공할 수 있게 되었습니다.

    물론, 익스와 파폭에서도 동일한 화면을 볼 수 있겠지요.


    XAML을 사용하기 때문에 제작이 간편하고, 유연하며, 개발자와 디자이너의 작업을 완전히 분리시킬 수 있는 것 또한 장점입니다.


    기타 등등의 자세한 사항은 아래의 사이트에서 둘러 보시면 될듯합니다.


    -- Microsoft Silverlight Site --

    사용자 삽입 이미지

    앞으로, 저도 이곳에 Silverlight에 대한 내용을 적기위해 급히 카테고리를 추가했습니다.

    그러나... 이넘의 게으름으로 인하여 진짜 적게 될런지는. ㅋㅋ

    출처 : 천상태자

    신고
    Trackback 0 Comment 0


    티스토리 툴바