288 Results for 'Programming/Silverlight'

  1. 2011.12.10 마이크로소프트의 눈물나는 실버라이트 5 지원 정책 단상 (3)
  2. 2011.12.10 실버라이트 5 출시 & 변경사항 (2)
  3. 2011.04.23 조용한 업데이트, Silverlight 4 GDR 4 (4.0.60310.0) (1)
  4. 2011.03.08 [Prism] MefModuleManager와 DeploymentCatalog의 문제점 (1)
  5. 2011.03.08 [Don't Panic] Exception 정보를 허투루 흘려보내지 맙시다.
  6. 2011.02.15 Silverlight 4 GDR3 업데이트 공개 (1)
  7. 2011.01.07 윈도 8에 대한 소문과 실버라이트의 미래 (10)
  8. 2010.12.31 공도의 실버라이트 하기 좋은 날 [목차/2010.04.08] (8)
  9. 2010.12.03 실버라이트 퐈이야(Fire Starter) 자료 링크 모음 (1)
  10. 2010.12.03 실버라이트의 미래, 미리보는 Silverlight 5 (10)
  11. 2010.11.30 MVVM, 성배를 찾아서; 동영상 업데이트 (3)
  12. 2010.11.22 제 1회 블판 작품 소개 동영상 YAY! (2)
  13. 2010.11.17 [Don't Panic!] 블렌드에서 어셈블리를 못찾는다 할 때 (2)
  14. 2010.11.12 실버라이트 퐈이야! - 온라인 라이브 컨퍼런스(추가) (2)
  15. 2010.10.21 블판 - 블렌드를 다루는 사람들의 발표 전시회! (2)
  16. 2010.10.01 MVVM; 성배를 찾아서 - 표현과 로직의 분리 (2)
  17. 2010.05.06 [발표 자료] 고급 실버라이트 애니메이션 및 그래픽 + 성능 튜닝 (1)
  18. 2010.05.01 훈스닷넷 24회 정기 세미나 - 거성공도쇼! (4)
  19. 2010.05.01 Silverlight 4 RTW 릴리즈 & 설치가이드[업데이트] (5)
  20. 2010.04.10 실버라이트 하기 좋은날 #27 블렌드로 윈도우 폰 7 애플리케이션 만들며 놀기
  21. 2010.04.02 실버라이트 하기 좋은 날 #26 Shazzam-tool로 픽셀셰이더 이펙트 만들기 (2)
  22. 2010.03.26 [세미나 자료] 22회 훈스닷넷 정기세미나 (3)
  23. 2010.03.25 실버라이트 하기 좋은 날 #25 MIX10 특별 초대손님!
  24. 2010.03.25 [호외] VS2010 및 Silverlight 4 런칭 일정! (2)
  25. 2010.03.24 [세미나 자료] TechDays Korea 2010 Spring - 실버라이트 4로 비즈니스 앱 개발하기 (5)
  26. 2010.03.23 [세미나] UX 뽀뽀뽀! (두둥!)
  27. 2010.03.17 [MIX10] 흥미로운 실험, Pivot (1)
  28. 2010.03.16 We are family!
  29. 2010.03.16 Silverlight 4 RC 발표! 개발환경 구축하기 (11)
  30. 2010.03.05 실버라이트 하기 좋은 날 #24 리소스의 경로 II, 코드에서 접근하기
http://support.microsoft.com/gp/lifean45?ln=en-us#sl5

"실버라이트 5는 이 페이지에 표시된 브라우저를 2021년 10월 21일까지 지원할 것입니다."

2021년? 네, 오타아닙니다;;
기존 버전들과 달리 SL5는 화끈하게(...) 10년동안 지원을 질러버리는군요. -_-;

2021년... 그 때까지 저 브라우저들은 존재하기나 할지, 아니 브라우저란 기술 자체가 지금의 형태를 유지하기나 할지...
재밌으면서도 슬픈 정책이 아닐 수 없다 아니 생각할 수 없지요? ㅋㅋㅋ 
저작자 표시 동일 조건 변경 허락
신고
Posted by gongdo
실버라이트 5가 출시되었네요.


실버라이트 5 개발 도구 및 런타임은 아래 사이트에서 다운로드 할 수 있어요.
전에 비해 훨씬 더 깔끔해졌네요.
http://www.silverlight.net/downloads

실버라이트 5를 개발하려면 Visual Studio 2010 SP1이 반드시 설치되어 있어야 하고요,
1. Silverlight 5 Tools for Visual Studio 2010 SP1
2. Silverlight 5 Toolkit
을 다운로드 받아 설치하면 개발 환경 구성은 끝나요.

 
일반적으로 런타임의 버전이 바뀔 때 가장 문제가 되는 건 기존 버전과의 호환성인데요, 실버라이트 5는 기존 어떤 버전에 비해서도 호환성이 높네요. 보통 Breaking changes라고 부르는 기존 버전과 코드/바이너리 레벨에서 호환되지 않는 점이 전혀 없어요.

그래도 실버라이트 4와 5는 다음과 같은 동작 특성 차이점을 가지고 있는데요, 때문에 아주 세밀한 조작을 하는 애플리케이션에서는 문제가 될 가능성이 있겠죠. 하지만 이 점도 호환성 모드(Quirks Mode)를 통해서 5 런타임이지만 4의 동작 특성을 갖도록 할 수 있으니 걱정하지 않아도 돼요.

아래에 실버라이트 5의 호환성 모드(Quirks Mode) 동작 특성을 번역(네, 여느때와 마찬가지로 걍 날림으로...) 했으니 기존 프로젝트를 마이그레이션 하실 분들은 참고하세요. (원문: http://msdn.microsoft.com/en-us/library/hh397894(v=VS.95).aspx)
  • 실버라이트 4에서는 RelativeSource.Mode의 기본값이 TemplatedParent였지만 5에서는 FindAncestor로 변경되었습니다. (역주: FindAncestor는 자기 자신의 조상에서 이름을 찾는 동작입니다.)
  • 실버라이트 5에서 ItemsControl은 TextInput  이벤트를 텍스트 검색 용도로 사용합니다. 이전에는 애플리케이션이 직접 구현할 경우를 위해 존재했을 뿐입니다. (역주: 기존에 ItemsControl에서 이 이벤트로 구현한 것이 있다면 동작이 충돌할 가능성이 있습니다.)
  • 실버라이트 5에서 ClientHttp 코드의 틱-동기화 타이밍이 UI thread에서 분리되었습니다. ClientHttp 코드는 틱-동기화 타이밍을 에뮬레이트해야 합니다. (역주: 뭔소린지 모르겠습니다 -_-)
  • 실버라이트 5전까지는 Selector의 ItemsSource를 설정하기 전에 SelectedIndex, SelectedItem, SelectedValue를 설정하면 그 값이 강제로 null로 설정되었습니다. 실버라이트 5에서는 그 값이 설정된 상태로 남아 있어 ItemsSource가 설정되었을 때 그 값이 선택됩니다. 이것은 다양한 바인딩 시나리오를 가능케하고 WPF의 동작과 동일합니다.
  • 실버라이트 5에서는 벡터 프린팅이 기본 인쇄 포맷입니다.
  • 실버라이트 5전까지는 콜렉션이 Reset으로 변경될 때 기존에 선택된 아이템이 Items에 남아 있더라도 클리어 되었습니다. 실버라이트 5에서는 해당 선택이 남아있으며 WPF와 동일한 동작입니다.
  • 애플리케이션 시작시 멀티코어 JIT는 오직 실버라이트 5 애플리케이션이거나 64bit일 때만 동작합니다.
  • 실버라잍트 5전까지 ButtonBase의 Visibility가 Collapsed로 설정되면 비주얼 상태를 변경하지 않았습니다. 그래서 컨트롤이 다시 보이게 되어도 그 비주얼 상태가 안보이기 전 상태로 남아 있었습니다. 실버라이트 5에서는 Visibility가 Collapsed로 설정되었더라도 비주얼 상태가 변경됩니다.
  • 실버라이트 5에서는 Selector의 속성 경로 수신자가 값을 찾을 수 없을 경우 SelectedValue를 null로 설정합니다. 이것은 WPF와 동일한 동작입니다.
  • 실버라이트 5전까지 WriteableBitmap의 기본 배경색상이 투명한 검정(#00000000)이었고 이것은 인쇄에 적합하지 않습니다. 실버라이트 5에서는 기본 배경색상이 투명한 하양(#00FFFFFF)입니다.
  • 실버라이트 5에서는 Selector의 한 아이템에 포커스가 세팅되었을 때 그 아이템으로 스크롤 할 수 없다면 ScrollIntoView 호출을 연기할 것입니다.
  • 실버라이트 5전까지 ListBox에서는 선택이 바뀌었을 때 기존 인덱스가 새 인덱스와 다를 경우 새 인덱스가 -1이 아닐 경우에만 해당 아이템으로 포커스를 설정하였습니다. 실버라이트 5에서는 새 인덱스가 -1 일지라도 포커스를 설정합니다. 만약 새 인덱스가 -1이라면 포커스는 ListBox 자신이 갖게 됩니다.

전반적으로 Selector와 ItemsControl에 있었던 불합리한 동작이 올바르게 고쳐진게 많네요.
이런 부분은 미묘하게 사용성을 해치던 것이라 아주 바람직하지만 반대로 기존 버전에서 이런 문제를 피하려고 작성했던 수많은 '꼼수'들과 충돌할 수도 있겠죠. 하여간 마이크로소프트는 후방 호환성 지원 만큼은 최고에요. 버전 업할 때마다 이런 문서도 즉각나와주고 말이죠.

저작자 표시 동일 조건 변경 허락
신고
Posted by gongdo

실버라이트 개발자라면, 그리고 윈도 업데이트를 꼬박꼬박 하는 분이라면 현재 실버라이트 런타임 버전을 살펴보세요.
아마도 다음과 같이 4.0.60310.0으로 업데이트 되어 있을 거에요.

네, 쥐도 새도 모르게 조용~히 GDR4가 릴리즈되어 심지어 자동으로 설치까지 되었네요.
이번 업데이트는 조금은 특별한 사정이 있는데요, 우선 통상적인 버그 픽스 내용 부터 훑고 넘어가죠.

http://support.microsoft.com/kb/2526954

 

이번 업데이트로 수정된 이슈

이슈1

시나리오

  • HtmlPage.RegisterScriptableObject 메서드를 호출하여 스크립터블 타입을 등록합니다.
  • 실버라이트 4 애플리케이션을 실행하고 자바 스크립트 기반의 스크립트가 스크립터블 타입의 멤버에 접근할 수 있도록 합니다.
  • 애플리케이션이 모덜 윈도에 표시됩니다.

이 시나리오에서 다음의 경고 메시지를 받게 될 것입니다.

This page has an unspecified potential security risk. Would you like to continue?

(※한국어로는 뭐라고 나올지 모르겠네요.)

참고: 이 이슈는 보통 Microsoft Office 365 사용자가 Microsoft SharePoint Online을 이용할 때 나타납니다.

 

이슈2

시나리오

  • 실버라이트 4 애플리케이션에서 Control 클래스를 상속받는 사용자 컨트롤을 만듭니다. 이 사용자 컨트롤은 DefaultStyleKey를 오버라이드 하고 DependencyProperty를 하나 추가합니다.
  • 이 컨트롤의 ContentTemplate 속성은 팝업 컨트롤을 포함하고, 팝업 컨트롤은 ContentPresenter 오브젝트 한개만 포함합니다.
  • 이 오브젝트는 TemplateBinding 기능을 이용하여 앞서 만든 DependencyProperty 속성을 바인딩합니다.
  • 해당 팝업 컨트롤은 열리지 않을 것입니다.

이 시나리오에서 팝업 컨트롤의 메모리는 가비지 수집되지 않습니다. 때문에 메모리 누수가 나타납니다.

 

이슈3

시나리오

  • 인터넷 익스플로러 9를 이용하여 실버라이트 4 애플리케이션을 엽니다.
  • 윈도를 풀스크린 모드로 전환했다가 다시 원래 크기로 돌아옵니다.

이 시나리오에서 윈도의 내용이 제대로 표시되지 않을 수 있습니다. 예를 들어, 윈도에 빈 영역이 나타날 수 있습니다. 이 이슈는 BrowserInteropHelper 클래스가 호스트 HTML 페이지에 있는 자식 엘리먼트의 개수를 잘못 알려주기 때문입니다.

 

이슈4

실버라이트 4 애플리케이션이 DataGrid 컨트롤을 포함한다고 가정합시다. 컨트롤에 있는 각 컬럼의 크기는 다릅니다. 이 시나리오에서 컨트롤의 스크롤을 가로로 움직이면 컨트롤의 행이 잘못 표시됩니다.

 

이슈5

시나리오

  • DataGrid 컨트롤을 포함하는 실버라이트 4 애플리케이션을 실행합니다.
  • 이 컨트롤은 INotifyDataErrorInfo 인터페이스를 이용하여 유효성을 검사하는 타입을 바인딩합니다.
  • INotifyDataErrorInfo.ErrorsChanged 이벤트를 여러번 수신하게 됩니다.

이 시나리오에서 DataGrid 컨트롤의 메모리가 해제되지 않습니다. 때문에 메모리 누수가 나타납니다.

 

이슈6

실버라이트 4 애플리케이션에서 BindingExpression 인스턴스의 대상 엘리먼트가 DataGridCell 오브젝트에 들어있는 TextBlock 엘리먼트 또는 TextBox 엘리먼트라고 가정합시다. 이 상황에서 애플리케이션을 실행하여 해당 엘리먼트를 수정하면 DataGrid 컨트롤의 메모리가 해제되지 않습니다. 때문에 메모리 누수가 나타납니다.

 

이번 업데이트에 추가된 기능

이번 업데이트는 다음 경로의 레지스트리 키가 설정되어 있으면 IsolatedStorageExceptionInnerException 속성을 설정하는 기능을 추가합니다.

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Silverlight\IsolatedStorageInnerExceptionsAllowedDomains

이 레지스트리 키의 값은 콤마(,)로 구분된 도메인 목록입니다.

 

몇몇 메모리 누수 문제를 해결하는 점에서는 꽤 중요한 문제지만, 사실 이것보다는 좀 더 재밌는 점들이 레이더(?)에 잡히네요^^

FirstFloor Software 운영자이자 마이크로소프트 실버라이트 MVP인 Koen Zwikstra씨가 이번 GDR4에서 새로 추가된(!) API를 정리했는데요, 다음 링크에 들어가보면 깔끔하게 정리되어 있어요.

http://firstfloorsoftware.com/files/DiffLists/Silverlight%204%20GDR%203-vs-Silverlight%204%20GDR%204.html

업데이트된 타입이 들어있는 네임스페이스는 총 6개.

  • System.Net.Sockets
  • System.Windows
  • System.Windows.Controls
  • System.Windows.Input
  • System.Windows.Media.Imaging
  • System.Windows.Navigation

그러나 재밌게도 이번 업데이트로 추가된 모든 기능은 MSDN 문서에서 “DO NOT USE”라고 심플하게만 설명되어 있을 뿐이죠. 실제로 비주얼 스튜디오에서도 해당 기능이 인텔리센스에 표시되지 않는지만, Reflector로 해당 어셈블리를 열어보면 존재하는 걸 확인할 수 있어요.

비밀은 바로 EditBrowsable 어트리뷰트! 이 어트리뷰트로 에디터(VS나 Blend)에서 해당 기능이 표시되지 않게 해놓은 것 뿐이죠.

아마도 이 기능들은 실버라이트 5를 위한 일종의 플레이스홀더(placeholder) 역할을 하는 걸로 보이는데요, 소켓에 UDP 필드가 추가된다거나 UIElement의 이벤트에 빌트인으로 Tap, DoubleTap, Hold가 추가된다거나, GestureEventArgs가 추가되는 등 상당히 흥미롭네요.

여튼 지금와서 이것들이 크게 영향을 주는건 아니고 다만 실버라이트 5가 빨리 나왔으면…하는 생각이에요. :)

저작자 표시 동일 조건 변경 허락
신고
Posted by gongdo
요즘 너무 블로깅을 안했더니 거미줄이...
본격적인 글은 정신적인 여유가 안되어서 못쓰겠고 대충 메모라도 휘갈겨놓으려고해요.
'가상의' 독자를 상대로 얘기하고는 있지만 기본적으로는 잊지 않으려고 쓰는 '메모'의 용도에요.
친절하지 않은 글이니 관심 없는 분은 그냥 패~스.

Prism + MefExtension을 사용하면 내부적으로 IModuleManager로 MefModuleManager를 사용하는데, 요놈은 XAP 파일에 대한 IModuleLoader로써 다시 MefModuleTypeLoader를 사용하죠. 또한 이 모듈타입로더는 내부적으로 MEF에서 기본으로 제공하는 DeploymentCatalog를 이용해요. ...아 이 무슨 구약적 이름 소개인가; 누가 누구를 낳고 누구는 누구랑 친척이고...;;

여튼;

프리즘의 모듈매니저는 기본적으로 각 모듈과의 의존성 관계를 설정하여 의존성 있는 모듈이 먼저 초기화(Initialize)되도록 처리를 해주는 훌륭한 매커니즘을 가지고 있죠.
문제는 MEF가 기본으로 제공하는 DeploymentCatalog.
요놈은 XAP파일의 URI를 던져주면 알아서 다운로드를 받아 XAP 파일 내에 들어있는 어셈블리들을 죄다 런타임에 불러들인 후 지정된 카탈로그에 ExportPart를 뽑아서 관리해주는 역할까지 수행하죠.
그런데 여기서 문제가 이놈은 다운로드가 완료되면 무조건 위의 동작을 수행한다는거에요.

만약 다음과 같은 의존성을 갖는 솔루션 구성일 경우...
  • 기반 모듈
    • 데이터처리 모듈
      • 이메일 모듈
      • SMS 모듈
    • 그래픽 모듈
'이메일 모듈'은 '데이터처리 모듈'보다 나중에 초기화가 되어야 하죠.
네 실제로 모듈매니저는 의존성 관계를 통해 '데이터처리 모듈'을 먼저 초기화해요.
그런데, DeploymentCatalog에 의해서 각 모듈들이 다운로드 될 때 '이메일 모듈'이 먼저 다운로드가 완료된다면?
내부적으로 '이메일 모듈'을 까뒤집어서 그 안에 있는 ExportPart를 뽑아내려고 시도할거에요.
이 과정에서 '이메일 모듈'이 가지고 있는 '데이터처리 모듈'에 대한 의존성이 문제가 되어 그 시도는 처절한 예외 메시지를 내뱉고는 뻗어버리죠.

혹시 DeploymentCatalog의 소스 코드를 열어보신 분이라면(MEF preview때이건 리플렉터로 까봤건) 아래의 부분이 문제의 그곳. DiscoverParts 메서드의 구현중 일부에요. 밑줄친 부분이 아직 의존성이 해결되었을지 어떨지 알 수 없는 파트를 접근하려는 곳.

foreach (Assembly assembly in assemblies)
{
    if (!dictionary.ContainsKey(assembly.FullName))
    {
        AssemblyCatalog catalog = new AssemblyCatalog(assembly);
        addedDefinitions.AddRange(catalog.Parts);
        dictionary.Add(assembly.FullName, catalog);
    }
}

휘유... 여기까지가 아래에 올린 Don't Panic의 내용을 재현한 거에요.
이게 적당히 다운로드 순서를 바꿔주는 것 만으로는 근본적인 해결이 안되네요.
아무래도 MEF의 DeploymentCatalog를 조금 바꿔서 써야겠어요.
그러려면;; 다시 이걸 사용하는 MefModuleManager를 바꿔야 하고 여기에 연관되어 있는 MefModuleInitializer, MefXapModuleTypeLoader도 모두 조금씩은 바꿔야겠죠; 하아...

그나마 소스 공개되어 있는게 얼마나 다행인지. 오픈소스 만세! 리플렉터 만만세!
저작자 표시 동일 조건 변경 허락
신고
Posted by gongdo
참 뭐랄까 근본 없는 것이란 이런 기초적인데에서 문제를 드러내지요.
그러니까... 보통 예외 메시지들이란게 대체로 별로 도움이 안되는 경우가 많잖아요?
누가 null reference 들어와서 죽은거 모른대요? 왜 null이 들어왔는지를 모르는거죠.

여튼.

이런 경험이 누적되다보면 예외 메시지는 Exception.Message만 대충 보고 다른데서 원인을 찾기 마련인데요.
가끔은 Exception.InnerException을 보고도 더 많은 정보를 얻을 수 있는 기회를 놓칠 때가 있어서 다시는 잊지 말자는 심정으로 포스팅해요.

이번 케이스는 이것.

동적으로 XAP 파일을 받아서 동적으로 어셈블리들을 로드하는데 분명히 해당 어셈블리 중 하나의 의존성이 해결되지 않아서 발생하는 문제인것까진 알겠는데 어떤 어셈블리의 문젠지를 모르겠단 말이에요. 아주 한참을 헤맸죠.

던져주는 메시지라곤 고작 "Unable to load one or more of the requested types. ..."
네, 참 도움 되네요. 로드하다 실패해놓고 로드에 실패했다니;;; 어쩌라고!

뭘 놓쳤는지 아시겠죠? 뒤에 ...으로 더 이상 읽지 않은 부분이 바로: "Retrieve the LoaderExceptions property for more information." 근데 여기에서  InnerException이 null 이라서 '더 많은 정보'가 어디에 있는지를 모르고 지나치기 일쑤란거죠.
사실은 여기에서 받은 예외의 원래 타입은 System.Reflection.ReflectionTypeLoadException이죠. 근데 그 예외를 그냥 Exception 타입으로 받아와서 ReflectionTypeLoadException이 가지고 있던 고유의 데이터는 다음과 같이 숨겨져 버린거죠.


아;; 친절하게도 무려 한글 오류씩이나;;
네, 타입 로드에 실패한 원인은 System.Windows.Controls.Data 어셈블리가 미리 로드 되지 않아서였군요.
컴파일 시점에는 드러나지 않았던 의존 관계라서 디버깅에 참 애를 먹었어요.

요즘 Prism 4 + MEF로 프로젝트 진행중인데 동적 로딩을 많이 사용해서 생각지도 못한 에러가 많아요.
그나마 비주얼 스튜디오가 아니었으면 이런 에러는 어떻게 잡나 싶을 정도로요.
어쨌든!

Don't Panic!
저작자 표시 동일 조건 변경 허락
신고
Posted by gongdo
정식 명칭은 Silverlight 4 Feburary 2011 Update이고요 흔히 GDR(General Distribution Release)은 메이저 버전이 가지고 있는 치명적이거나 긴급한 버그를 수정한 중간 릴리즈이죠. 아래에 언급한 현상이 아니라면 일반사용자 및 개발자 누구에게도 영향을 주지 않지만 혹시 모르니 둘러보시고 개발 환경을 업데이트 해주시는게 좋겠죠?

뭐, 언제나처럼 원문은 Tim Heuer가 작성하였고 저는 또 발 번역이네요. 뉴스 번역 전문 블로그가 되어가는 듯한 느낌 =_=;
http://timheuer.com/blog/archive/2011/02/14/silverlight-february-2011-update-gdr3.aspx

------------------------------------------------------------------------------------------
오늘 실버라이트 팀은 Silverlight 4 런타임 업데이트를 공개하였습니다. 내부적으로 "GDR3"라고 부르는 이 업데이트는 다음의 주요 사항을 업데이트 합니다(KB2495644 참고).

  • [1] VC-1 코덱의 미디어 재생시 타임스탬프 문제.
  • [2] 픽셀 셰이더를 포함하는 실버라이트 애플리케이션을 프로파일링 할 때 비주얼 스튜디오 IDE가 뻗는 현상.
  • [3] OSX의 64비트 파이어폭스가 32비트 프로세스 모드일 때도 실버라이트가 동작가능.
  • [4] 실버라이트 버전 업그레이드 이후 DRM으로 보호된 콘텐트를 재생할 때 발생하는 "6207" 오류 수정.
  • [5] 인라인 DataTemplate을 사용할 때 발생하는 메모리 누수현상 수정.
  • [6] 아웃오브브라우저 애플리케이션이 애플리케이션 이름이 변경되었을 때 업데이트에 실패하는 현상 수정.
  • [7] 미디어 스트림에 재지정(redirect) 정보를 포함할 때 발생하는 재생 오류 수정.
  • [8] 네트워크 지연시간 향상(감소^^) (KB2505882)
대부분의 독자(당연히 Tim의 블로그의 독자)는 이 메모리 릭 문제에 해당사항이 없을 것입니다. 이 이슈는 포럼에서 아주 지겹도록 논의하고/싸우고/놀림당한 것입니다. 혹시 고객의 애플리케이션이 이 문제를 겪고 있고 꽁수(workaround)를 적용하지 않았다면 고객에게 이 릴리즈를 적용할 것을 권유하고 싶을 것입니다. 이 릴리즈를 적용하는 것은 간단하게 실버라이트를 호스팅하는 <object>태그에 최소 버전(minimum version) 어트리뷰트를 사용하면 됩니다. 최소 버전을 수정하면 사용자는 업그레이드가 필요하다는 메시지를 받게 될 것입니다. 물론 이 전에도 여러번 말했듯이, 이런 업그레이드는 반드시 각 사이트 경험에 맞춰 수정하는 것이 좋고 심지어 우리는 설치 경험 백서를 통해 샘플 코드도 제공하고 있습니다.

'얼레? 내 문제는 여기에서 수정되지 않았는데요?'
각 서비스 릴리즈는 모든 문제를 완벽하게 해결하지 않습니다. 만약 이 업데이트를 적용한 후로 어떤 문제가 발생한다면 제발, 제발, 제발, 제~발 제품 버그로 알려주세요. 다른 누군가가 이미 했을거라고 넘겨짚지 마세요. 실버라이트에 관한 버그를 신고하려면 이 포스트의 가이드에 따르면 됩니다: 실버라이트에 관한 피드백을 전달하는 방법. 이상적인 버그는 상세하고, 재현가능하며, 재현가능한 프로젝트 샘플을 제공하는 것입니다. 이것이 버그를 이해하고 평가하는데 가장 빠른 길입니다.

업데이트 하기
다른 모든 서비스 업데이트와 같이, 이 업데이트는 마이크로소프트 (윈도우)업데이트를 통해 고객에게 제공될 것입니다. 만약 개발자라면 업데이트를 기다릴 필요 없이, 아래에서 다운로드할 수 있습니다(세계적으로 다운로드가 가능한 시점은 몇 시간 정도 걸릴 수도 있습니다.).
이번 릴리즈와 관련된 SDK 업데이트는 없습니다. 개발자라면 개발자 런타임만 업데이트하면 되고 일반 사용자라면 사용자 런타임만 업데이트하면 됩니다. 특히 개발자에게 강조하고 싶은 것은, 이 업데이트를 "강제로" (배포된) 애플리케이션에 적용하지 마세요. 대신 <object> 태그의 minRuntimeVersion을 통해 제어하면 해당 애플리케이션에 필요한 버전을 자동으로 적용할 수 있습니다.
------------------------------------------------------------------------------------------

변경된 사항을 좀 더 자세히 뒤져보죠.

- 업데이트 하기 전 최종 실버라이트의 버전은 4.0.51204.0 인데요, 업데이트 후에는 4.0.60129.0이 돼요.

- 이슈 1
VC-1 코덱으로 인코딩 된 미디어를 재생할 때 타임스탬프가 잘못된 값으로 변경되는 문제.
이 문제는 타임스탬프가 2의 48승 100나노초보다 큰 값을 포함할 때 발생합니다. 이 문제가 발생하면 다음과 같은 증상이 나타납니다.
  • 콘텐트를 재생할 때 동영상이 제대로 재생되지 않습니다. 그러나 오디오는 제대로 나옵니다.
  • Internet Explorer에서 콘텐트를 재생할 때 "Errors on Page" 메시지가 표시됩니다. 상세한 내용은 다음과 같습니다.
    a System.OverflowException exception is thrown together with the following call stack:
    mscorlib.dll!System.TimeSpan.Interval(double value, int scale) 
    System.Windows.dll!MS.Internal.XcpImports.ConvertCValueForManagedWithType(System.
    Type propertyType, ref MS.Internal.CValue outVal, int outDOType, bool 
    releaseObjectReference, bool deleteBuffer, MS.Internal.IManagedPeerBase fromObject 
    System.Windows.dll!MS.Internal.XcpImports.GetValue(MS.Internal.IManagedPeerBase 
    managedPeer, System.Windows.DependencyProperty property) 
- 이슈 5
인라인 DataTemplate을 사용할 때 메모리 누수 현상.
다음 포럼에서 논의된 바 있습니다. http://forums.silverlight.net/forums/t/171739.aspx

- 이슈 8
이것은 정확히는 버그 수정이 아니고 기능 추가인데요, 이 전 버전에 비해 90% 정도의 네트워크 지연이 개선되었답니다. 그렇지만 정확히 어떤 종류의 지연 시간이 개선되었는지는 테스트가 필요하겠네요.

아마도 인라인 데이터 템플릿의 메모리 릭 문제는 상당히 신경 쓰이는 부분이고 네트워크 지연 속도 개선도 꽤나 흥미롭네요. 언제나 그렇듯이, 당장 잘 돌아가는 애플리케이션에 어거지로 적용하는 것 보다는 문제가 있었던 것을 해결하는데 이용하는게 좋겠죠?


업데이트 인증샷 :D
저작자 표시 동일 조건 변경 허락
신고
Posted by gongdo

요즘 개발자들 사이에선 어딜가나 CES11이 화제더군요. 모종의 이유로 의욕저하 상태라 영상들을 보진 않았는데요, 기술적으로야 서피스2나 윈도폰7의 업데이트 소식에 관심이 가긴하지만 역시나 더 무게가 실리는 건 ‘다음 버전’의 윈도가 아닐까 싶어요.

바로 윈도8이죠.

물론, 공식적으로는 ‘다음 버전의 윈도’가 맞지만 편의상 저도 윈도8이라고 부를께요.

기다리면 당연하다는 듯이 나올 다음 버전의 윈도. 하지만 이번 윈도는 UI와 애플리케이션 모델에 있어서 지금까지 있었던 어떤 변화보다도 더 큰 변화가 있을 거란 소문이 파다해요. 그것도 꽤나 그.럴.싸.하.게.

지금부터 제가 말하는 내용은 거의 대부분 마이크로소프트 통인 Mary-Jo Foley의 블로그에 포스팅된 CES: Wil ‘Jupiter’ be key to Microsoft’s Windows 8 app store’s future?More on Microsoft ‘Jupiter’ and what it means for Windows 8에 더 자세히 소개하고 있어요.

아직 어떤 스크린샷이나 공식적인 언급은 없지만, 이미 웹 상에는 윈도8에 대해 많은 소문이 퍼져있죠. 그 중에서 가장 핵심적인 키워드는 ‘Mosh’와 ‘Jupiter’.

Mosh는 윈도8의 새로운 UI에 관한 코드명이고 Jupiter는 새로운 애플리케이션 모델에 관한 코드명이라고 해요.

코드명 Mosh는 타일 기반의 쉘 컨셉 즉, 윈도폰7에 탑재된바 있는 타일 기반의 UI 구성을 말하는데 웹에서 Windows 8 Mosh라고 검색해보면 꽤나 그럴싸한 소스의 소문이 돌아다니는 것을 볼 수 있고 사실이든 아니든 윈도8에 지금까지와는 다른 새로운 UI가 탑재될 것으로 예상할 수 있죠. 마이크로소프트는 이미 OEM 제조사로부터 슬레이트(iPad스타일)나 태블릿 PC를 위해 윈도폰 OS를 포팅시켜달라는 압력을 받고 있지만 아직 그것을 허용하지 않고 있죠. Mary Jo는 ‘주저한다’는 표현을 썼네요.

어쨌든, 코드명 Mosh가 사실이라고 가정한다면 윈도8은 실제로 의미있는 여러 이디션(edition)으로 출시될 가능성이 높겠죠. 지금까지 윈도의 이디션은 일반사용자에게 있어서 사실상 의미가 없었어요. 왜냐면 각 이디션별로 지원하는 기능이 결국은 동일한 플랫폼(x86, x64 PC)에서 구동하는 기능의 차이일 뿐이었으니까요. 그러나 윈도8은 ‘공식적’으로 x86이 아닌 ARM과 같은 SoC에서도 구동이 된다고 확인이 되었죠. 이 말은 단순한 기능상의 차이를 떠나서 각 OEM 제조사가 입맛에 맞는 기능을 추가하거나 삭제하는 등의 풀 커스터마이징이 가능하다는 얘기고 이럴 때의 이디션 차이는 상당히 의미가 있다고 할 수 있을거에요. 물론 이디션이 차이가 나더라도 한번 작성한 애플리케이션은 하드웨어적인 요구사항만 만족한다면 여러 머신에서 실행이 가능하겠죠.

코드명 Mosh가 어느 수준의 UI 변화를 가져올지 심지어 그것이 적용될지 안될지도 모르지만 윈도8은 여러 종류의 디바이스의 요구사항을 만족하는 형태로 등장할 것이라는 점은 거의 확실하다고 생각해요.

Mary Jo도 그랬지만 저에게도 Mosh보다는 Jupiter에 더 흥미가 있어요. 코드명 Jupiter는 윈도8의 새로운 앱 모델이라고 해요. 다음은 Mary Jo가 인용한 Windows 8에 대한 루머의 원문인 New Tile-Based Shell, App Model, And App Store Coming In Windows 8?를 쓴 Paul Thurrott의 말을 보면,

(윈도8의) 앱 스토어는 AppX 패키지(.appx)로 배포되는 새로운 실버라이트 기반의 이머시브(immersive) 애플리케이션을 제공할 것이다. 내 소스에 의하면 윈도와 오피스 팀은 새로운 앱 형식에 빡세게 투자하고 있고 이미 베타 버전의 비주얼 스튜디오 2012을 개발에 사용하고 있다. 이 새로운 앱은 C#, VB.NET 심지어 C++로 작성할 수 있다.

라고 하는군요. 물론! 공식적으로 확인되지 않은 얘기임은 명심하시고요.

특히 윈도에 내장된 앱 스토어에 관해서는 이미 지난해 누출된 윈도8 계획 슬라이드에서 그 존재가 살짝 드러났고 이미 윈도폰 마켓 플레이스를 통하여 실버라이트와 XNA를 기반으로 한 앱을 배포하고 있기 때문에 코드명 Jupiter는 그 세부적인 사실이 어찌되었건 상당히 높은 가능성을 가지고 있죠.

또한 Mary Jo가 이미 다 정리를 해놔서 거의 그대로 옮기자면; 코드명 Jupiter은 윈도8에 기본으로 탑재되는 앱 모델로 XAML을 기반으로 한 UI 레이어를 구성하며 이를 통해 보다 부드럽고 유동적인 애니메이션, 타이포그라피, 미디어 기능을 제공할 것이라고 해요. 놀랍지도 않지만, 이러한 기능들은 바로 실버라이트 5의 새로운 기능이기도 하죠.

이건 제 의견이지만 마이크로소프트는 어쩌면 XAML을 기반으로 한 UI 패러다임의 전환을 확신하지 못했거나, 너무 큰 반발에 부딪쳤거나, 시대의 격변이나, 혹은 기술(SW/HW 양면)의 제약으로 충분한 성능을 내지 못했거나 하는 등의 이유로 XAML 기반의 UI 도입을 너무나도 미뤄왔을거에요. 이유야 어쨌든 지금 이 시점에서는 게임과 같은 복잡하고 고성능을 요구하는 UI가 아닌 일반적인 앱의 경우 XAML을 기반으로 한 애플리케이션 개발 모델은 전통적인 개발 모델에 비해 확실한 비교 우위를 가지고 있고 다른 뚜렷한 대안이 없는 이상 이 전략은 앞으로도 유효하다고 생각해요. (심지어 성능이 매우 중요한 그래픽적 처리또한 시간이 지나면서 XAML 기반의 개발로도 충분히 흡수할 수 있을거라고 생각하고요.) 아니, 다른 대안이 없는 이상 현재로서 가장 가능성있는 모델은 코드명 Jupiter가 설명하는 바로 그것 밖에 없다는 것일지도 모르죠.

여튼, 마이크로소프트는 이 새로운 모델의 앱을 “immersive” (뭐라고 해석하죠? 몰입형?) 앱이라고 부르며 이 immersive 앱은 단지 데스크탑 앱만을 말하는 것도 아니며 또한 순수한(HTML+CSS+JS) 웹 앱만을 말하는 것도 아니며 윈도8의 앱 모델 내에서 구동될 수 있는 모든 형태의 앱을 말한다고 해요.

코드명 Jupiter가 시사하는 바는 명확하게 실버라이트의 미래를 의미해요.

IT쪽에 발좀 걸치고 있다고 하는 많은 분들이 실버라이트를 시시껄렁한, 그것도 이미 사그라든 UI 기술 정도로 치부하고 있는 것이 사실이죠. 백보 양보하여 핵심적으로는 -UI는 결국 응용수준이지 core 수준은 아니기 때문에-맞는 말이라고 해도, 이것이 데스크탑 시장의 90%이상을 점유하고 있는 윈도라는 OS의 기본 애플리케이션 모델을 개발하는 기술이다라고 하면 그 무게감은 확실히 달라질거에요.

코드명 Jupiter가 사실이라고 가정한다면, 단순히 웹 브라우저 플러그인으로 시작한 실버라이트가 이제는 OS 레벨의 기본 UI 프레임워크로서 자리를 잡게 된다는 것을 의미하며 이미 윈도폰7은 그것이 가능하다는 것을 증명하는 사례라고 할 수 있을거에요. 또한 실버라이트 5의 가장 충격적인(?) 기능, P/Invoke의 존재는 OS 레벨의 통합을 뒷받침하는 강력한 증거라고 할 수 있어요.

한편, 보다 거대한 흐름에서 데스크탑 OS는 점유율이 날로 축소되고 있는 것도 사실이며 바로 이 때문에 마이크로소프트는 (항상 그렇듯이) 늦었지만 전력을 다해 모바일과 클라우드에 투자를 하고 있죠. HTML5는 특히 컨슈머용 앱에 있어서 킬러 플랫폼이 될 가능성이 크지만, who knows? 누가 섣불리 예측할 수 있겠어요? 3D 게임 소스가 널려있다고 해서 모두가 다 3D 게임 개발자가 될 수는 없잖아요? 다만 한가지 확실한 사실은 실버라이트가 미래에도 경쟁력을 가지려면 보다 넓은 플랫폼에서 동작을 보증해야 하고 그런 점에서 윈도 자체의 발전 방향은 올바르다고 할 수 있어요.

또 한편으로 애플의 OS는 포기하손치더라도 자유로운 리눅스쪽에 실버라이트가 (제대로, 간편하게)포팅될 수 없다는 사실은 상당히 아쉬운 점으로 남네요. 비즈니스적인 관점에서 데스크탑으로서의 리눅스는 전혀 고려대상이 아니지만 아무래도 임베디드나 모바일은 리눅스가 기본이라고 봐야하니까요.

막판에 조금 심각해지긴 했지만, 역시나 이런 뉴스들은 가볍게 보는 게 재밌어요. 요 몇년새 답이 안보이던 마이크로소프트가 과연 이러한 전략들로 다시 예전의 영광을 찾을 수 있을 것인가! 저 높은 곳에서 치열하게 싸우고 있는 클라우드시장의 향방은? 마이크로소프트와 반대로 요 몇년새 최전성기를 누리고 있는 애플의 독주는 과연 계속 될 것인가? 구글의 본격 세계 정복은 언제쯤? 기대하시라 개봉박두!

 

저작자 표시 동일 조건 변경 허락
신고
Posted by gongdo
당분간 최상단에 배치합니다.

read more...

신고
Posted by gongdo

 

 

키노트 및 전체 세션 다시보기: http://www.silverlight.net/news/events/firestarter/

어제 라이브 방송은 Live Smooth Streaming을 이용하여 3Mbps의 고화질 영상으로 중계되었죠.
별도의 재인코딩 과정 없이 곧바로 On Demand로 전환되어 볼 수 있어요. 한번 탐색을 해보면 Smooth Streaming의 장점을 느낄 수 있을거에요.
(그런데 아쉽게도 서버가 미국에만 있어서 그런지 속도가 잘 안나오네요. ㅠ.ㅜ)

  • 키노트; 실버라이트의 미래
    Scott Guthrie 마이크로소프트 개발부분 부사장  
  • 세션1; 데이터 바인딩
    Jesse Liberty 개발자 가이던스, 윈도우 폰
  • 세션2; WCF로 REST 및 LINQ를 사용하여 강력한 앱 만들기
    Yavor Georgiev WCF 프로그램 매니저
  • 세션3; WCF RIA Services로 기능성 있고 풍부한 비지니스 앱 만들기
    Dan Wahlin
  • 세션4; MVVM 통합하기
    John Papa 시니어 기술 이반젤리스트
  • 세션5; 설치 경험
    Tim Heuer 시니어 프로그램 매니저
  • 세션6; 애플리케이션 프로파일링과 성능 팁
    Jossef Goldberg 시니어 프로그램 매니저
    Mike Cook 개발자
  • 세션7; 윈도우 폰 애플리케이션 성능
    Jaime Rodriguez Principal 기술 이반젤리스트

 

온라인 랩; http://www.silverlight.net/news/events/firestarter-labs/

주로 LOB(Line of Business) 애플리케이션에 촛점을 맞추고 11단계로 진행되는 랩이에요.
각 단계별로 비디오와 랩이 제공되므로 차근차근 따라 할 수 있고 다운로드 할 수 있는 키트도 제공되는군요.

농담이 아니라 진짜 몇 백만원 이상의 가치가 있네요.
이런거 보고 있으면 제가 간간히 하는 강의가 무슨 의미가 있나 싶어요. 여기 다 있고 더 잘되어 있는데;;

암튼 Stay in the FIRE~

저작자 표시 동일 조건 변경 허락
신고
Posted by gongdo

마이크로소프트 본사가 위치한 미국 레드먼드는 이제 곧 점심 시간이겠지만, 훌륭한 우주적 법칙에 따라 저는 한국 시간 새벽 4시에 잠도 안자고 트윗질과 블로그질을 하고 있어요.

왜?! 바로 실버라이트 5에 대한 미리보기와 함께 실버라이트의 미래에 대해 소개하는 실버라이트 퐈이야(Silverlight FireStart) 행사가 라이브로 진행중이기 때문이죠.

실버라이트 5에 대한 요약을 정리한 사이트가 벌써 공개되었는데요, 역시나 귀차니즘과 먹고사니즘이 중요한 분들을 위해 날림 번역 들어갑니다. 같잖은 번역따위 보고싶지 않다…고 생각하시는 분은 http://www.microsoft.com/silverlight/future/ 여기로 :)

 

---------------------------------------------------------------------------------------------------------------

실버라이트의 미래

마이크로소프트 실버라이트는 웹에서 풍부한 인터넷 애플리케이션과 미디어 경험을 만들고 전달하는 강력한 플랫폼입니다. 실버라이트 4를 토대로 올린 실버라이트 5는 비즈니스 애플리케이션, 고품격 미디어 애플리케이션뿐만 아니라 브라우저를 넘어서는 애플리케이션까지 지원합니다. 실버라이트 5는 40개가 넘는 새 기능을 소개합니다. 요컨대 실버라이트 애플리케이션이 브라우저 안에서 데스크탑 기능을 지원하거나, 극적인 동영상 품질과 성능 향상, 그리고 개발자의 생산성을 향상시키는 기능 등이 있습니다.

실버라이트 5 베타는 2011년 1사분기에 사용할 수 있을 것이고 보다 자세한 정보는 http://www.microsoft.com/silverlight/에서 볼 수 있을 것입니다.

 

실버라이트 5 베타에서 공개된 새 기능

 

[고품격 미디어 경험]

실버라이트 5는 향상된 미디어 지원과 풍부한 UI 기능을 제공합니다.

  • 하드웨어 디코딩과 H.264 표현은 낮은 성능의 장치에서 GPU를 이용하여 HD급 동영상을 재생할 수 있도록 성능을 향상시킵니다.
  • TrickPlay(재생 속도 조절) 기능은 동영상이 다른 속도로 재생될 수 있게 하고 빨리 감기와 되감기를 지원합니다. 두 배속까지는 음성 피치(높낮이)가 자동으로 보정되어 사용자가 동영상을 보통 음성 피치를 유지하면서 감상할 수 있습니다.
  • 향상된 전원 감지 기능은 동영상을 보고 있을 때 화면보호기가 뜨지 않도록 하고, 동영상을 보고 있지 않을 때는 컴퓨터가 대기(sleep) 모드가 될 수 있도록 허용합니다.
  • 원격제어(리모콘) 기능은 사용자가 미디어 재생을 제어할 수 있게 합니다.
  • DRM(Digital Rights Management)의 진보는 DRM 영상 원본이 전환될 때에도 끊김이 없습니다.

 

[비즈니스 애플리케이션 개발]

실버라이트 5는 차세대 비즈니스 애플리케이션을 만드는 마이크로소프트의 솔루션입니다.

유동적인(fluid) 사용자 인터페이스 기능으로 UI 사이의 애니메이션을 더 부드럽게 합니다. 레이아웃간 트랜지션(Inter-Layout Transitions) 기능은 해당 레이아웃에 엘리먼트가 추가되거나 삭제되거나 다시 정렬되었을 때 개발자가 지정한 애니메이션이 동작하도록 합니다. 이를 통해 예를 들어 리스트에 아이템이 추가될 때 보다 부드러운 사용자 경험을 제공합니다.

텍스트 기능 향상으로 풍부한 잡지 스타일의 텍스트 레이아웃을 만들 수 있게 되었습니다.

  • 여러 컬럼의 텍스트와 연결된 텍스트 컨테이너 기능으로 텍스트가 다른 엘리먼트 주변에 표시될 수 있습니다.
  • Tracking/leading 은 각 문자가 얼마나 멀리 떨어져야 하는지를 설정하여 완전히 제어를 합니다.
  • 픽셀 맞춤(Pixel Snapping)으로 텍스트의 명료성이 향상되었습니다.
  • 텍스트 레이아웃 성능이 대폭 향상되었습니다.
  • OpenType 지원이 향상되었습니다.

Postscript 벡터 인쇄가 지원되어 사용자가 리포트나 문서를 만들수 있고 스크린에 보이는 것과 다른 형태의 가상 인쇄 보기를 만들 수도 있습니다.

애플리케이션이 이제 사용자가 기대하는 방식으로 더블 클릭과 콤보박스의 연속 입력(type ahead)을 지원합니다.

모델 뷰 뷰모델(MVVM; Model View ViewModel)과 데이터 바인딩이 향상되어 보다 많은 일이 더욱 쉽게 XAML로 사용할 수 있습니다.

  • 디버깅 지원으로 이제 바인딩 위에 브레이크 포인트를 설정할 수 있어서 바인딩이 실패했을 때 단계별로 진행할 수 있습니다.
  • 명시적 DataTemplate은  템플릿이 애플리케이션을 넘어서 생성될 수 있도록 분리된 타입을 지원합니다.
  • Ancestor RelativeSource(자신의 조상에 있는 원본)는 예를 들어, DataTemplate이 자신을 담고 있는 컨트롤에 있는 속성을 바인딩 할 수 있게 합니다.
  • 스타일 세터(Style setter)에서 바인딩을 사용할 수 있어 스타일이 다른 프로퍼티를 참조할 수 있습니다.
  • DataContextChanged 이벤트가 소개되었습니다. 마크업 확장으로 코드가 XAML이 파싱될 때 실행될 수 있게 하며 이를 통해 속성이나 이벤트 핸들러를 처리할 수 있어 첨단 MVVM 지원을 가능케 합니다.

네트워킹과 WCF(Windows Communication Foundation) 향상점.

  • 네트워크 지연시간이 백그라운드 스레드를 이용하여 감소되었습니다.
  • WS-Trust 지원: Security Assertion Markup Language 인증 토큰.

실버라이트 5 성능 향상점.

  • 네트워크 지연시간이 백그라운드 스레드를 이용하여 감소되었습니다.
  • XAML 파서가 향상되어 시작이 빨라지고 런타임 성능이 높아졌습니다.
  • 64비트 운영체제를 지원합니다.

그래픽 향상점.

  • GPU(Graphics Processing Unit)로 가속되는 3D API(Application Programming Interface)가 웹에서 보다 풍부한 그래픽을 제공하며 진보한 데이터 시각화와 사용자 경험을 만들 수 있습니다.
  • Immediate 모드 그래픽 API로 GPU로 직접 렌더링 할 수 있습니다.
  • IE9에서 Windowless 모드에서도 하드웨어 가속을 지원합니다.

 

 

실버라이트 최초로 데스크탑 기능을 브라우저로 가져온 신뢰된 애플리케이션의 새 클래스를 제공합니다. 이 기능은 그룹 정책 레지스트리 키와 애플리케이션 인증을 통해 가능하며 이것은 사용자가 다음과 같이 복잡한 작업을 위해 브라우저를 떠날 필요가 없다는 것을 의미합니다.

  • HTML 콘텐트를 웹 브라우저 컨트롤로 호스팅합니다. 도움말 콘텐트나 이메일과 같은 HTML 페이지가 실버라이트 애플리케이션에 통합될 수 있습니다.
  • 사용자의 내 문서 폴더를 읽거나 쓸 수 있고 미디어 파일을 찾거나 리포트의 로컬 사본을 만들기 쉬워집니다.
  • 마이크로소프트 오피스나 다른 데스크탑 프로그램을 실행할 수 있습니다. 사용자가 마이크로소프트 아웃룩을 열어 새 메일을 만들거나 리포트를 워드로 보내는 등 오피스의 능력을 활용할 수 있습니다.
  • COM 컴포넌트를 통하여 장치에 접근하거나 다른 시스템 기능에 접근할 수 있습니다. 사용자는 USB 보안 카드 리더나 바코드 스캐너에 접근할 수 있습니다.
  • 풀 스크린에서도 모든 키보드를 사용할 수 있어 보다 풍부한 키오스크나 동영상 뷰어 애플리케이션을 만들 수 있습니다.
  • 실버라이트에서 P/Invoke를 사용하여 관리되지 않는 코드를 직접 호출할 수 있습니다.

 

Out-of-Browser 신뢰된 애플리케이션이 더욱 향상되었습니다.

  • 실버라이트에서 P/Invoke를 사용하여 관리되지 않는 코드를 직접 호출할 수 있습니다.
  • 자식 윈도우 지원으로 여러 개의 윈도우를 애플리케이션으로부터 새로 띄울 수 있습니다.

 

 

툴 향상점.

  • 마이크로소프트 비주얼 스튜디오 프로파일링 지원은 CPU, 메모리, 스레드 충돌을 포함합니다.
  • 비주얼 스튜디오 팀 테스트를 지원합니다.

   

 

여기에 소개한 것이 바로 실버라이트 5 베타에 포함되리라 기대하는 기능들입니다. 항상 그렇듯이, 최종 제품과 기능은 베타 과정에서의 피드백과 테스팅에 근거하여 포함될 것입니다. 우리는 베타 테스팅에 참여할 파트너와 고객과 가깝게 소통하길 기대합니다.

---------------------------------------------------------------------------------------------------------------

어떤가요? 또 한번 기대되지 않나요? ^^

뭐, 좋아지는 기능들이야 너무나도 당연하니 자세한 소개는 나중에 다시 하도록 하고, 가장 논쟁이 될 법한 기능만 간단하게 언급할게요.

일단 가장 충격적인건 P/Invoke를 브라우저 안에서도 지원’할 수’ 있다…는 점이에요. 물론 그룹 정책 편집도 필요하고 애플리케이션의 인증서도 필요하다지만 이것은 다시 말하자면 ActiveX의 악몽이 재현되는게 아닌가…하는 걱정을 지울수가 없네요. 사실 실버라이트 4의 OOB에서도 Trusted가 되면 COM Interop.을 통해 얼마든지 시스템에 접근할 수 있었지만 ‘브라우저 안에서’ P/Invoke를 하는 것과는 차원이 다른 문제지요. 물론 마이크로소프트가 정신줄을 놓지 않는 이상 아무런 방어 대책 없이 P/Invoke를 호출할 수 있게 하진 않겠죠. 아직은 구체적인 내용이 나와 있지 않아서 장담할 수는 없지만 몇몇 영역을 보호하는 형태로, 즉 ActiveX처럼 마구잡이로 시스템을 건드리지는 못하게 가지 않을까 조심스럽게 예상해 봅니다.

휴, 밤새 달리느라 졸려 죽겠네요. 그래도 아직 실버라이트 퐈이야는 끝나지 않았어요. 좀 더 보다 자렵니다.

저작자 표시 동일 조건 변경 허락
신고
Posted by gongdo
한참 된 얘기긴 한데;; 전에 Code Party 행사에서 발표한 내용이 동영상으로 올라왔더군요.
아무도 안가르쳐줘... 쳇!

코드파티 다시 보기 페이지로 가시거나 아래에서:)



전에도 올렸지만, 발표 자료는 아래에서 다운로드 받으세요.

저작자 표시 동일 조건 변경 허락
신고
Posted by gongdo
초쿰 늦은 감이 있지만...


아래는 제가 제작에 참여했던 것들만 모았어요.

작품명: 텔레비전에 내가 나왔으면. (I'm On The TV!)
디자인, 영상 제작: 권미경
개발: 공도


작품명: 욕망이라는 이름의 나무. (A Tree Named Desire)
디자인, 미술: 이은아
개발: 공도
제작 도움: 한명순(Thanks!)


욕망이라는 이름의 나무(설명)


작품명: The Iris
디자인: 최형준
개발: 공도
미니어처 제작: JP공방(Special thanks!)



우와와앙! 다음번엔 더 재밌는 걸로!!!
저작자 표시 동일 조건 변경 허락
신고
Posted by gongdo

이것도 경험이 없으면 꽤나 찾기 어려운 것중 하나.

다음과 같이 프로젝트를 만들었다고 하죠. 프로젝트에 두 개의 사용자 컨트롤이 있고 하나의 IValueConverter가 있어요. 그리고 테스트를 충분히 해서 Release 모드로 빌드를 했다고 합시다.

그런데 디자인을 익스프레션 블렌드에서 보고 싶어졌어요. 이 프로젝트를 블렌드에서 띄우면?

이와 같이 자기 자신의 네임스페이스도 못 찾게 되죠. 이상한 점은 <UserControl.Resources> 안에 선언된 것만 못찾는다는 점이에요. 위의 코드에서 <UserControl.Resources>블럭을 삭제하면 정상적으로 뜨는 것을 확인할 수 있거든요.

문제를 해결하려면, 비주얼 스튜디오에서 빌드 모드를 Debug로 설정하고 다시 빌드한 후 블렌드에서 열면 돼요.

문제의 원인은 바로 블렌드는 항상 Debug모드로 간주되는데 비주얼 스튜디오에서 빌드할 때 Release 모드로 빌드를 했기 때문이에요.
뭔가 우습지만 막상 닥쳤을 때 찾기 어려운 문제라 기록해둡니다.

저작자 표시 동일 조건 변경 허락
신고
Posted by gongdo
※추가
뭐가 바뀌었냐고요?
배너!!
네, 스콧 횽님을 전면에 내세우고 제목에도 실버라이트의 "미래", 롸잇 나우!라고 강조했습니다.
무엇을 의미하는지는 명백하죠!
이거 생각보다 재밌는 내용이 나올지도 모르겠네요.
기대하시라, 개봉박두!

Silverlight Firestarter(이하 실버라이트 퐈이야!)라는 이벤트가 태평양 시각 12월 2일 오전 8시에서 오후 5시까지 온라인에서 라이브로 진행됩니다.
우리 시간으로는... 12월 3일 금요일 새벽 1시(;;;)부터 오전 10시까지 이어지겠군요. 하하;
혹시나 시애틀이나 레드먼드에 거주(...)하거나 방문 중이라면 직접 마이크로소프트 레드먼드 캠퍼스에 갈 수도 있어요. 훗.


어쨌거나 우리의 생활 패턴과는 거리가 먼 행사를 굳이 공유하는건 나름 의미가 있기 때문인데요,
바로 몇 주전에 있었던 PDC'10에서 실버라이트와 관련하여 엄청난(그래봐야 찻잔속의 태풍이었지만) 혼란이 있었고
실제로 몇몇 실버라이트를 주력으로 사용하는 개발자/개발사에 큰 타격을 입혔죠.
뭐 언제나 그렇듯, miss communication과 언론의 호들갑 그리고 이어지는 고객사의 대혼란...
이라고 남일 얘기하듯 말해보지만 여튼간 실제로 타격을 입은 개발자/개발사도 있었기에 매우 유감스러운 일이었어요.
문제의 발언을 했던 마이크로소프트 서버&툴 비즈니스 부분 수석 부사장(이건 또 뭔 직책이래 -_-) 봡(Bob Muglia)이 급하게 진화하는 포스팅을 했고 이어서 닷넷의 아부지, 개발자 부분 부사장 스콧(Scott Guthrie)이 실버라이트에 관한 성명을 포스팅하기에 이르렀죠.
(하지만 언제나 그렇듯, 이런 종류의 진화 작업은 별로 '핫'하지 않기에 사람들에게 전파가 잘 되지 않고 또 하나의 'IT미신'은 그렇게 세간을 떠돌아 다니죠. 씁슬... ㅎㅎ)

여튼 실버라이트 퐈이야!는 이 사건과 관계 없이 미리 예정되어 있었지만 이 사건 때문에 시기상 더욱 중요한 의미를 가지게 되었어요. 행사 내용을 대충(=날림 번역) 보자면...

-------------------------------------------------------------------------------------------

실버라이트 퐈이야!는 무슨 행사?
  • 이벤트: 하루짜리, 글로벌, 라이브 스트리밍과 다시보기가 지원되는 이벤트로 스콧 거쓰리가 키노트를 합니다.
  • 교육: 새로운 자기 학습형 랩과 단계별 비디오가 제공됩니다.
  • 참여: 행사 기간 동안 라이브를 보면서 실버라이트 제품 팀에게 질문을 합니다.
  • 왜 실버라이트를?: 실버라이트는 강력한 개발 플랫폼으로써 온라인 또는 오프라인에 매력적이고 인터랙티브한 사용자 경험을 가진 웹, 데스크탑 및 모바일 애플리케이션을 만들 수 있습니다. (※주: 이게 현재 실버라이트의 정의가 되겠네요. 과거와는 뉘앙스가 조금 다르죠?)
무엇이 준비되나?
  • 실버라이트를 막 시작하나요? 시작하기(On-Ramp) 세션을 보세요.
  • 이미 비즈니스 애플리케이션을 만들고 있나요? 라이브 비디오를 통해 스킬과 이해도를 높이세요.
  • 질문이 있나요? 라이브 또는 직접 실버라이트 제품 팀과 대화하세요.
퐈이야! 라이브 어젠다
시간(한국시간)발표자세션 세부
8:00 am
(1:00 am)
Scott Guthrie  Scott Guthrie 실버라이트 퐈이야! 키노트
9:00 am
(2:00 am)
Yavor Georgiev  Yavor Georgiev /Jesse Liberty  Jesse Liberty WCF REST와 LINQ를 이용하여 주목받는 실버라이트/윈폰7용 앱 만들기
10:00 am
(3:00 am)
15 분 휴식
10:15 am
(3:15 am)
Dan Wahlin  Dan Wahlin RIA Services로 리치 비즈니스 앱 만들기
11:15 am
(4:15 am)
John Papa  John Papa MVVM: 왜 그리고 어떻게? 실버라이트와 윈폰7에 관한 MVVM 사용 패턴과 서비스 패턴
12:15 pm
(5:15 am)
점심(※주: 우리에겐 이른 아침?)
1:00 pm
(6:00 am)
실버라이트 오늘과 내일(특별 손님 초대!)
1:30 pm
(6:30 am)
Tim Heuer  Tim Heuer 실제 실버라이트 앱 만들기
2:30 pm
(7:30 am)
15 분 휴식
2:45 pm
(7:45 am)
Scott Guthrie  Mike Cook &
  Jossef Goldberg
애플리케이션 조율: 프로파일링 및 성능 팁
3:45 pm
(8:45 am)
Jaime Rodriguez  Jaime Rodriguez 실버라이트/윈폰7을 위한 치명적인 성능 팁
5:00 pm
(10:00 am)
파티 타임!
(※주: 당연하지만, ) 세션 주제는 변경될 수 있습니다.

라이브가 끝나도 퐈이야!
추가적인 핸즈 온 랩(Hands On Lab; 직접 해보기)과 라이브 세션 내용을 만드는 비디오로 더 깊게 파고들어 더 빠르게 실버라이트 개발을 가속해봅시다!
  • 라이브 비디오는 다시보기가 제공됩니다.
  • 새로운 자기 학습형 랩과 단계별 비디오가 제공됩니다.
  • 시작하기 랩(100 level)
    • 핸즈 온 랩: 새 실버라이트 개발자가 빠르게 익히는데 촛점을 맞췄습니다.
    • 윈폼, HTML이나 ASP.NET을 해봤고 이제 실버라이트도 배우고 싶다면? 바로 당신을 위한 랩이 있습니다.
  • 더 나은 비즈니스 앱 만들기(200-300 level)
    • 핸즈 온 랩: 실제 비즈니스 애플리케이션을 만들 때 실버라이트로 얻을 수 있는 장점에 촛점을 맞췄습니다.
    • 데이터 전략, 패턴, 아웃 오브 브라우저, RIA Services 등의 기법을 적용합니다.
  • 이제 내 차례! 전문가들이 직접 제공하는 비디오도 보세요!

-------------------------------------------------------------------------------------------

사정이 허락하는 한, 저는 라이브를 한번 지켜볼 생각이에요.
뭐, 그래봐야 별 소득은 없으리라 거의 확신하지만, 외쿡 개발자들은 질문을 꽤나 날카롭게 하거든요. 그런 건 좀 볼만하죠.
제대로 못알아듣는 건 슬프지만요. 어쩔 수 없죠.

그럼! (관심있는 분)다같이 퐈이야~~~~!!!
저작자 표시 동일 조건 변경 허락
신고
Posted by gongdo
오랫동안... 그러나 조금씩 준비해왔던 전시회가 드디어 확정되었습니다.
이런저런 사정으로 너무 늦게 공지를 하는 감도 있지만, 그래도 한다는 게 중요하죠!


네 이런 모임이에요.
카페는 http://cafe.naver.com/blpan 이고요,
참가신청은 ONOFFMIX로 하고 있어요. 물론 당일에 가볍게 와서 즐기시면 되지만 그래도 나중에 행사 관련 자료나 인사를 드리려면 이메일이 필요하니 등록해주세요^^
그리고 당일 작품소개는 매 시간마다 진행하니깐 아무때나 시간날때 오시면 OK.

궁금한게 있으면 언제든 제 블로그, 트위터(@gongdo or @dailyblpan)로 알려주세요.

저작자 표시 동일 조건 변경 허락
신고
Posted by gongdo
오랫만의 실버라이트 세미나. 3개월만이네요.
월간 마이크로소프트웨어와 한국 마이크로소프트가 주최하는 코드 파티 그 네번째 시간에서 MVVM을 주제로 발표했습니다.
이번에는 MVVM의 아주 기초적인 부분을 바닥부터 쓸어 올리면서 도대체 "왜" 이런 골치아픈 걸 해야 하는지를 후벼파 봤어요.
MVVM을 '어떻게' 사용하는가보다 '왜' 사용하는지 궁금한 분들께 도움이 되길 바랍니다.


요즘 너무 바빠서(라고 쓰고 의욕제로라고 읽는다) 자세한 포스팅을 하기엔 무리가 있고,
세미나를 들은 분께 혹시 필요할까 싶어서 올립니다.
동영상은 아마도 행사 홈페이지에 따로 올라가는 걸로 알고 있어요.

저작자 표시 동일 조건 변경 허락
신고
Posted by gongdo

사실 세미나실 한칸도 못채울까봐 걱정했는데 생각보다 많은 분이 와주셨네요^^
거두절미하고, 발표 슬라이드 및 데모는 다음 링크에서...

다운로드 롸잇 나우!

여기에서 다룬 내용을 간단하게 요약하자면...
  • 실버라이트 애니메이션
    • 애니메이션의 기초
    • 프레임 기반 애니메이션
    • 실시간 애니메이션(스토리보드)
    • 파티클 시스템 기초
  • 실버라이트 그래픽 시스템과 성능 팁
    • 실버라이트 런타임의 렌더링 원리와 과정
    • 레이아웃
    • 성능 카운터(프레임 레이트 카운터)
    • 즉시 렌더링 영역(Intermediate Surface)
    • GPU 하드웨어 가속
    • 미디어 성능
  • 실행 성능 모니터링 및 분석
    • UI Spy 툴 사용
    • Visual Studio 2010 Profiler (VSP)
    • Windows Performance Toolkit (WPT)
꽤 많죠? 가능한 관련 정보에 접근할 수 있는 레퍼런스 링크를 많이 달았으니 부족한 부분은 해당 링크를 통해 검색해보길 바래요.

저작자 표시 동일 조건 변경 허락
신고
Posted by gongdo
훈스닷넷 24회 정기세미나

훈스닷넷에서 벌써 24회가 된 정기 세미나를 열어요.
제목은 고급 실버라이트 그래픽과 애니메이션!
이번에는 그 이름도 오글한 거성공도쇼라는 부제로 실버라이트 그래픽 시스템과 애니메이션을 파보려고 해요.
(진짜 오글거리는 제목이긴하지만, 가끔 운영진 회의에서 농담으로 한 얘기들이 이렇게 제목으로 결정되는 경우도 있어요. 헛헛헛)

보통 정기 세미나는 입문 레벨의 원론적이고 간단한 예제 중심으로 진행하는데요,
이번에는 실버라이트나 WPF를 해보지 않았다면 다소 어려울수도 있는 내용을 다룰거에요.
그러나 함께 출연(?)하는 김선구 익스프레션 시삽님의 세션은 실버라이트 뿐만 아니라 많은 그래픽 시스템에서 일반적으로 사용할 수 있는 애니메이션의 원리와 구현에 대해 소개할 예정이니 많은 관심을 부탁드려요 :D

날짜는 2010년 5월 4일 화요일
시간은 오후 7시
장소는 삼성동 포스코 빌딩 5층 마이크로소프트.

JOIN 롸잇 나우!
저작자 표시 동일 조건 변경 허락
신고
Posted by gongdo
Update
2010-05-01; Windows Phone Developer Tools April 2010 Refresh(CTP2) 업데이트

드디어 나왔어요~ :D 인증샷 먼저!
최종 릴리즈된 런타임의 빌드넘버는 4.0.50401.0

자, 개발환경 설치 가이드 나갑니다.

0. 기존 Silverlight 4 관련 환경 제거
- Visual Studio 2010 Beta 또는 RC 버전 제거
- Silverlight 4 Beta 또는 RC 버전 제거
- 단, Visual Studio 2008 및 Silverlight 3는 삭제하지 않아도 서로 공존할 수 있으니 구버전이라고 미워하지 마세요! ^^

  1. Visual Studio 2010 RTM 설치
    아무리 급해도 Visual Studio 2010은 먼저 설치해야 겠죠?
    VS2010 설치 하기

  2. Silverlight 4 Tools RC2 for Visual Studio 2010
    이거 하나면 실버라이트 개발자 런타임, SDK 및 템플릿이 모두 설치 완료.
    다운로드

  3. Silverlight 4 Toolkit (2010년 4월 버전)
    RTW 출시에 맞춰서 업데이트된 버전이에요. 옵션이긴하지만 무조건 설치하길 강권합니다!
    다운로드

  4. Expression Blend 4 RC
    여기서 약간 헤깔릴 수도 있지만, 익스프레션 블렌드 4는 아직 RTW가 아니라 RC버전이에요.
    하지만 실버라이트 4 런타임은 RTW와 호환되므로 이걸 설치하면 OK.
    다운로드

    [new]
  5. Windows Phone Developer Tools April 2010 Refresh(CTP2) 
    실버라이트 4 RTW와 함께 사용할 수 있는 윈도우 폰 개발 환경이 출시되었어요.
    이 파일은 설치할 때 웹을 통해 다운로드 받게 되어 있으니 꼭 인터넷에 연결되어 있어야 해요.
    참고로 이 툴은 XNA Studio 4.0을 함께 설치하여 XNA 개발용 툴도 설치하죠. 
    다운로드

    [new]
  6. Expression Blend용 Add-in 및 SDK
    이게 왜 툴이 따로 나왔는지는 모르겠지만 어쨌든 블렌드에서 윈도우 폰 개발을 할 때 필요한 툴이에요.
    아래 두 툴을 모두 다운로드 받아서 설치하면 끝.
    - Expression Blend Add-in Preview for Windows Phone (April Refresh) 
    Expression Blend SDK Preview for Windows Phone (April Refresh)
[보너스]
개발 환경을 구축할 때에는 위의 파일만 설치하면 되지만,
혹시 실버라이트 런타임을 따로 찾고 있다면...
※Silverlight 4 Tools가 RC2라는 이름인 걸 언급을 안했네요. 즉, 블렌드가 정식으로 출시 될 때 혹은 윈도폰 개발환경과 맞춰서 다음 버전이 나올 수 있음을 암시하고 있어요. 어쨌건 네이밍이 좀 헤깔리긴 하지만 실버라이트 런타임은 RTW가 맞고 그 외의 다른 툴들이 RC혹은 RC2인거에요. 부디 헤깔리지 마시길!
저작자 표시 동일 조건 변경 허락
신고
Posted by gongdo
이번 시간에는 블렌드로 간단하게 윈도우 폰 7 시리즈용 애플리케이션을 만들어봤어요.
가장 간단하게 ListBox에 샘플 데이터를 채워 넣는 데모인데요, 우선은 샘플 데이터만 사용했지만 이것을 바탕으로 실제 데이터랑 연동을 할 수 있을거에요.

[MSDN 팝콘에서 보기]
[WMV 다운로드]

저작자 표시 동일 조건 변경 허락
신고
Posted by gongdo
왠지 오랫만에 기술적인 내용으로 돌아온 느낌이네요.
픽셀셰이더 이펙트는 아마 10회차에서 익스프레션 스튜디오 카페의 거북사마님이 잘 소개해 주셨는데요,
그 때는 기본으로 내장된 이펙트와 공개되어 있는 이펙트를 사용하는 방법만 알아봤었죠.
이번 시간에는 Shazzam-tool을 활용하여 직접 픽셀셰이더 이펙트를 만드는 방법을 알아볼게요.
 
픽셀셰이더 이펙트를 만드려면 먼저 HLSL(High Level Shader Language)라는 언어를 사용하여 픽셀셰이더 소스코드를 작성하고,
DirectX SDK에 들어 있는 셰이더 이펙트 컴파일러인 fxc.exe로 소스코드를 컴파일하여 ps파일을 얻은 후,
실버라이트 프로젝트에 리소스로 포함하고 그것을 사용하는 셰이더 이펙트 클래스를 만들어주면 돼요.
 
좀 복잡하죠? 이 과정을 하나씩 하나씩 진행했으니 한번 따라해보시길 바래요.

[MSDN 팝콘에서 보기]
[동영상(WMV) 다운로드]
[발표 자료 다운로드]
[소스코드 다운로드]

저작자 표시 동일 조건 변경 허락
신고
Posted by gongdo
좋지 않은 날씨에도 불구하고(!) 많은 분이 늦게까지 참가해 주셨네요. :)

이번에 발표 내용은 실버라이트의 역사를 간단하게 되짚어보고 현재 폭발적으로 기능이 확대되고 있는 실버라이트 4의 특징적인 기능들을 알아봤고, 실버라이트 4와 그 이후에 대해서도 대략적으로 그려봤어요.

발표 자료는 아래에서 다운로드 받으세요.
[슬라이드] [데모 자료]

질문이나 피드백은 언제나 환영!
저작자 표시 동일 조건 변경 허락
신고
Posted by gongdo
좀 오랫만이죠? ^^; MIX10 이후에 정신이 없네요.
이번 시간에는 한국 마이크로소프트에서 UX 전도사로 맹활약중이신 황리건 님을 모시고 MIX10과 실버라이트 그리고 윈도 폰 7에 대해 얘기를 나눠봤어요.
날로 먹으려는 수작아니냐고요? 맞습니다. ㅎㅎ


[동영상(WMV) 다운로드]
저작자 표시 동일 조건 변경 허락
신고
Posted by gongdo
드디어 Visual Studio 2010 및 Silverlight 4의 공식 런칭 일정이 공개되었네요.

http://www.devconnections.com/shows/SP2010ASP/default.asp?s=142
위 이벤트 페이지에 의하면, Microsoft ASP.NET & Silverlight conference and expo라는 긴 이름의 행사가 2010년 4월 12일~14일까지 라스베가스  벨라지오 호텔에서 열린다는군요.
그리고 여기에서 실버라이트 4와 Visual Studio 2010 런칭이 된다고 해요.

가고싶다아~ ㅠ.ㅜ
저작자 표시 동일 조건 변경 허락
신고
Posted by gongdo
Microsoft TechDays Korea 2010 Spring이 오픈되었네요.
저도 여기에 한 세션을 맡아 녹화를 했지요^^
휘유 언제쯤 만족할 수 있게 찍을 수 있을까요.
이번에도 부족함에 치를 떨지만, 그래도 도움이 되었으면 합니다.

[TechDays에서 세션 보기]

혹시 발표 자료가 다운로드 되지 않는다면 아래에서 받으세요.
[발표 자료 다운로드]

고고씽!
저작자 표시 동일 조건 변경 허락
신고
Posted by gongdo
오랫만(?)에 세미나 공지. 그간 세미나를 안한건 아닌데 이상하게 공지를 안올리게 되더군요.
어쨌든, 이번 세미나는 훈스닷넷 22회 정기세미나로 그 이름도 유치 찬란한 UX 뽀뽀뽀!!
훈스닷넷 22회 정기 세미나

이번 MIX10에서 실버라이트 4, 블렌드 4 그리고 WPF 4에 관한 소식이 쏟아졌죠? 그래서 Four, four, four = 뽀뽀뽀! (다시 한번 두둥!)
누구 아이디어냐고 묻지는 말아주세요. ㅎㅎ

어쨌든, 저는 실버라이트 4 발표를 맡았어요.
뭐 실버라이트 4의 내용이야 이미 PDC에서부터 많이 공개가 되어서 관심 있는 분들은 특별할게 없다...라고 생각하실지도 모르겠지만, 제 경우는 실버라이트 4가 앞으로 RIA시장에 또 하나의 충격을 줄 거라고 생각해요. 그 규모가 어찌되었던 말이죠.
또한 RIA라는 것 자체의 개념도 기존과는 많이 달라질 수 밖에 없고요.

가볍게~ 실버라이트가 어떡게 되어 가는지 확인해보세요!
마이크로소프트에서 만나요 :)
저작자 표시 동일 조건 변경 허락
신고
Posted by gongdo
이번 MIX10의 가장 큰 주제는 사실 Windows Phone 7 Series와 그에 관련된 사항들이었죠.
그 외에도 수많은 토픽들이 스쳐갔는데 그 중에 제가 특히 관심이 갔던 건 Pivot이었어요.
새벽이고 해서 잠도 자야해서 아주 간단하게 감상 정도만 남깁니다. ^^;

Microsoft Live Labs에서 발표한 또 하나의 걸출한 성과, Pivot이에요. 먼저 아래 영상을 한 번 쭈욱 보시죠. 물론 쏼라쏼라는 가볍게 무시하고 그림만 보면 됩니다.^^

Pivot은 이미 존재하는 엄청나게 많은 데이터들을 어떡게 하면 좀더 인터랙티브하게 보여주고 필터링하고 정렬할지에 대한 하나의 방법을 보여주고 있어요. 좀 더 기술적으로는 '컬렉션을 어떡게 다루느냐'에 대한 하나의 결과죠.
딱 보는 순간 그동안 보아왔던 많은 데이터 비주얼라이제이션의 예제들이 이렇게 정리될 수 있구나란 생각이 들었어요.
그리고 Pivot의 각 아이템을 보여주는 방법에는 역시나 Deep Zoom 기술이 고스란히 녹아 들어가 있고요.

그런데 이 Pivot 기술은 곧바로 Silverlight에 적용될거라고 해요. http://www.getpivot.com/silverlight/ 이걸 보면 올해 여름에 공개될 예정이라고 하죠. 마치 지난 시절 같은 Microsoft Live Labs의 Seadragon이 Deep Zoom으로 데뷔하였듯이 Pivot도 Silverlight로 쉽고 빠르게 확산 될 수 있을거에요.

Pivot은 http://www.getpivot.com/ 에서 CTP 버전을 다운 받을 수 있으니 한번 직접 해 보시길 바래요.


저작자 표시 동일 조건 변경 허락
신고
Posted by gongdo
트위터에만 끄적거리기 아까운 스샷 모음. :)

SL3, SL4, SL4 for Windows Phone의 시작 프로젝트를 각각 VS2008과 VS2010으로 '한 PC'에서 동시에 '개발'하는 인증샷!
SL3, SL4, SL4 for Windows Phone 프로젝트를 한 PC에서 개발 가능!


SL3, SL4, SL4 for Windows Phone의 시작 프로젝트를 각각 Blend 3와 Blend 4로 '한 PC'에서 동시에 '디자인'하는 인증샷!
SL3, SL4, SL4 for Windows Phone 프로젝트를 한 PC에서 디자인 가능!


확대해서 보시면 알 수 있겠지만, 잘라 붙인거 아닙니다!
아.. 이거 초쿰 걱정했었는데 다행하게도 한 PC안에서 사이좋게 지낼 수 있군요 :D

지금 SL3로 진행되는 프로젝트로 VS2010 RC를 설치하기가 꺼려진다고요?
저작자 표시 동일 조건 변경 허락
신고
Posted by gongdo

우왕~ 구우우우우웃~~ 할말이 너무너무 많지만 하나하나 다 정리하기엔 너무나도 내용이 많네요.
우선 MIX10 키노트시간에 오고갔던 트윗을 참고하면 현장의 분위기를 대략이나마 느낄 수 있을 거에요.
http://twitter.com/Gongdo/mix10livekr 여기에 있는 타임라인을 따라가 보세요.

자, 자세한 리뷰는 조만간 다른 블로그에서도 나올거에요. 우선은 실버라이트 4를 위해서, 어떤 툴이 필요한지를 정리해봤어요.

  1. Visual Studio 2010 RC
    개발 환경의 기본이겠죠?
    MSDN을 구독하는 분은 MSDN 다운로드에서 받는게 편하고 그렇지 않다면 다음 주소에서 받으세요.
    http://www.microsoft.com/downloads/details.aspx?FamilyID=457bab91-5eb2-4b36-b0f4-d6f34683c62a&displaylang=en
  2. Silverlight 4 RC
    우리의 호프!
    http://go.microsoft.com/fwlink/?LinkID=141284
  3. Windows Phone Developer Tools CTP
    흐흐흐... 풍성한 얘기가 나오겠지만 이제 실버라이트 개발자는? 윈도폰 개발자!
    올해 하반기에 나올 윈도폰 7 시리즈의 앱을 실버라이트로 개발할 수 있어요.
    어쨌든 윈도폰용 앱을 개발하려면 이 개발 환경을 설치해야 해요.
    http://go.microsoft.com/fwlink/?LinkID=185584
  4. Expression Blend 4 Beta
    이제는 UX의 시대, 개발자만으로 되는 건 없죠.
    인터랙티브 디자이너와의 협업을 위한 필수 툴. 게다가 블렌드에서도 윈도폰용 앱 디자인을 할 수 있어요.
    http://www.microsoft.com/downloads/details.aspx?FamilyID=6f014e07-0053-4aca-84a7-cd82f9aa989f&displaylang=en
  5. Phone Development Add-in for Blend 4 Beta
    아쉽게도 Blend 4만으로 윈도폰용 앱을 디자인할 수는 없고요, 이 툴과 아래 툴을 함께 설치해야 해요.
    http://www.microsoft.com/downloads/details.aspx?FamilyID=47f5c718-9dec-4557-9687-619c0fdd3d4f
  6. Expression Blend SDK for Windows Phone
    요것까지 함께.
    http://www.microsoft.com/downloads/details.aspx?FamilyID=86370108-4c14-42ee-8855-226e5dd9b85b

후아~ 좀 많죠?
이번에는 실버라이트 외에도 윈도폰이라는 엄청나게 큰 녀석이 끼어들면서 설치해야 할 런타임도 꽤 많아졌네요.
이게 정식버전에서도 상황은 크게 다르지는 않을거에요.
왜냐면, 윈도폰 개발 환경은 기본적으로 Visual Studio 2010 Express for Windows Phone 이라는 별도의 IDE를 사용하기 때문이죠.

이 새로 추가된 IDE는 Visual Studio의 서브셋(?)으로 Express라는 이름답게 무료로 사용할 수 있어요.
오늘은 여기까지. :)

저작자 표시 동일 조건 변경 허락
신고
Posted by gongdo
이번 시간에는 지난 시간에 이어 리소스를 코드에서 접근하는 방법에 대해 알아봅니다.
XAML에서 리소스의 경로는 단순히 문자열로만 표현이 되는데요, 
사실 이 문자열은 내부적으로 URI 라는 리소스의 고유한 위치를 지정하는 클래스로 변환이 되죠. 
따라서 코드에서는 단순히 문자열로 리소스의 위치를 가리키는게 아니고 
이 URI 클래스의 인스턴스를 생성하여 리소스의 위치를 가리키게 돼요.
 
아주 간단한 예제 프로젝트에 XAML에서 했던 것과 동일한 결과를 얻을 수 있는 코드를 작성했으니 
XAML에서의 접근 방법과 코드에서의 접근 방법의 차이를 염두해 두면서 보길 바래요.

[MSDN Popcon에서 보기]
[동영상(WMV) 다운로드]
[발표 자료 다운로드]
[소스코드 다운로드]

저작자 표시 동일 조건 변경 허락
신고
Posted by gongdo


티스토리 툴바