몰랐었다.
 Tistory에.. iframe이 삽입 가능한 줄은...
 넣어보자...


 Silverlight 도....



 NGMap도..



----
넣는 방법은..
HTML 모드에서 <iframe>을 넣고 EDIT모드로 전환하지 않고 바로 저장하면 됩니다.

문제는 수정이 안되죠 ㅠㅠ
Posted by U_Seung


관련 부분을 스크랩 했습니다.
NBC와의 협력도 흥미롭다. MS는 베이징 올림픽 미주 독점 중계권을 가지고 있는 NBC와 손잡고 각종 경기 장면을 실시간 또는 내려받아 볼 수 있는 NBCOlympics.com 을 운영하기로 했는데, 이 사이트는 MS 리치인터넷 애플리케이션(RIA) 플랫폼 '실버라이트'를 기반으로 개발된다. RIA 시장에서 어도비를 추격해야할  MS 입장에선 분위기를 띄우는데 호재로 작용할 전망이다. -from Bloter

We have signed an agreement to partner with NBC Universal to build a Silverlight 2.0 based web broadcast of the 2008 Summer Olympic games. This agreement also sets MSN as the official home of the 2008 Summer Olympics.  - from Somasegar's WebLog


 주요 내용은... NBC가 Microsoft랑 손잡고 올림픽중계 홈페이지에 Silverlight 2.0 Platform을 사용하기로 했다는 내용 입니다.


 Silverlight는
Mix 2008(2008/5/5)에 새로운 버전이 Release될 것으로 예상 됩니다. 약 4개월정도 남았습니다. ( 올림픽은 약 5개월 정도 남았습니다. ) Mix 2008에서 Silverlight 2.0이 Release 혹은 Go-live License로 나올 것 같고, 8월 8일 올림픽 부터는 Silverlight 2.0 Runtime로 점점 배포속도에 가속이 붙는 것을 기대해도 좋을 것 같습니다.




Posted by U_Seung
저도 이번엔 링크 위주의 글을 하나 적어 봅니다.

요즘 Visual Studio 2008을 쓰는데 Javascript 기능이 매우 좋아진 것 같습니다.
다른 Visual Studio가 좋은 IDE임은 누구나 다 인정 하지만, 특히 Javascript 에서는 빛을 발한다는 느낌이 듭니다.

Visual Studio 2008에서는 Intellisense기능과 Syntax Check 기능이 강화되었습니다.
사실 Javascript 처럼 Cloure가 지원되는 언어들은 완벽하게 Intellisense를 지원하는데 한계가 있습니다만 Visual Studio가 나름 잘 지원해주는 것 같네요. Syntax Error Check는 자주 Syntax error가 나진 않지만 Run time error에 들어가기전에 한번 걸러준다는 점에서 매우 소중한 기능이고요.


자세한 내용은 아래에..

Javascript Intellisense in Visual Studio 2008
- VS 2008 JavaScript Intellisense
- JScript IntelliSense in Visual Studio Orcas
- More Javascript Intellisense with Visual Studio 2008 Beta 2


Javascript Intellisense for Silverlight
- Javascript Intellisense in VS 2008 for Silverlight 1.0 
- Silverlight 1.0 full Javascript Intellisense


Javascript Syntax Check
- JScript Syntax Check in Visual Web Developer 2008 Beta2



--

참, Visual Web Developer 2008 Expression Edition은 무료로 다운받아서 사용하실 수 있습니다.

Posted by U_Seung

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














Microsoft에서 무료로 e-Book를 PDF버전으로 제공하네요.
아쉽게도 책의 전체가 있는 것은 아니고 일부 내용만 있는 것도 있지만 참고할만한 것 같아서 공유합니다. Bold 표시된 Chapter만 있습니다.


Introducing Microsoft Silverlight 1.0

by Laurence Moroney

Chapter 1: Silverlight and the User Experience
Chapter 2: Silverlight and XAML
Chapter 3: XAML: Transformation and Animation
Chapter 4: Silverlight and Media
Chapter 5: Programming Silverlight with JavaScript
Chapter 6: Using Silverlight with Ink
Chapter 7: Silverlight and Server Programming
Chapter 8: Silverlight Futures


Introducing Microsoft LINQ
by Paolo Pialorsi and Marco Russo

Chapter 1. LINQ Introduction
Chapter 2. C# Language Features
Chapter 3. Visual Basic 9.0 Language Features
Chapter 4. LINQ Syntax Fundamentals
Chapter 5. LINQ to ADO.NET
Chapter 6. LINQ to XML



Introducing Microsoft ASP.NET AJAX
by Dino Esposito

Part I: ASP.NET AJAX Building Blocks
- Chapter 1. The AJAX Revolution
- Chapter 2. The Microsoft Client Library for AJAX
Part II: Adding AJAX Capabilities to a Site
- Chapter 3. The Pulsing Heart of ASP.NET AJAX
- Chapter 4. Partial Page Rendering
- Chapter 5. The AJAX Control Toolkit
Part III: Client-Centric Development
- Chapter 6. Built-in Application Services
- Chapter 7. Remote Method Calls with ASP.NET AJAX
- Chapter 8. Building AJAX Applications with ASP.NET
 




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

사용자 삽입 이미지


이 책은 Inside C# 2nd의 한글 번역본인데 Full Text와 예제파일을 제공하네요.
무료 치고는 좋은 자료 같습니다. 물론 C# 3.0이 나오기 전이라서 LINQ등의 새로운 부분은 없어서 아쉽긴 하네요.

Part 1 C# 클래스 기초
- Chapter 1 C# 응용 프로그램 및 라이브러리 빌드하기
- Chapter 2 .NET 타입 시스템
- Chapter 3 클래스와 구조체
- Chapter 4 메서드
- Chapter 5 프로퍼티, 배열, 인덱서
- Chapter 6 어트리뷰트
- Chapter 7 인터페이스

Part 2 코드 작성하기
- Chapter 8 수식과 연산자
- Chapter 9 프로그램 흐름 제어
- Chapter 10 String 다루기 및 정규식
- Chapter 11 스트림을 이용한 파일 I/O
- Chapter 12 예외를 이용한 오류 처리
- Chapter 13 연산자 오버로딩과 사용자 정의 변환
- Chapter 14 위임과 이벤트 처리기
- Chapter 15 XML을 이용한 문서화

Part 3 C# 고급 기능 사용하기
- Chapter 16 수치 연산과 Math 클래스
- Chapter 17 컬렉션과 객체 열거
- Chapter 18 멀티쓰레딩과 비동기 프로그래밍
- Chapter 19 리플렉션을 사용하여 메타데이터 정보 조회하기
- Chapter 20 메모리 고정과 관리
- Chapter 21 C# 응용 프로그램에서 COM 사용하기
- Chapter 22 비관리 코드에서 .NET 컴포넌트 사용하기
- Chapter 23 보안
 


Posted by U_Seung


내심 RTM을 기대했는도 아직도 RC네요.
그래도 그래도 RTM과는 큰 변동 사항이 없을거라고 하니 그냥 RTM인셈 치죠 뭐.

일단 다행인지 불행인지 혁신적인 변화는 없는 듯 합니다.
SDK에 포함된 문서에 따르면..

Silverlight 1.0 RC Enhancements

  • New "root" property on Content. Enables access to the root element of the XAML DOM.
  • New “Tag” property on UIElement. Enables user storage on every Silverlight UIElement.
  • New MediaElement APIs for selecting different audio streams out of a file with multiple audio tracks. See the AudioStreamCount and AudioStreamIndex properties.
  • Improved media performance: optimized assembly instructions for the video decode.
  • Media script commands encoded in a separate stream in the video file will now raise the MediaElement’s MarkerReached event

위 와 같은 사항이 개선 되었다고 하네요. 다른 것은 뭐 그냥 그렇지만 두번째 사항 Silverlight Element에 Programmer가 임의의 값을 저장할 장소를 제공해주는 것은 매우 센스가 넘칩니다. ^^;


이번에도 Breaking Change가 있었는데 자세한 사항은 Silveright Breaking Changes between Mix and Version 1.0 나 이를 번역 해주신 공도님의 Silverlight 1.0 RC1에서 변경된 점 정리
을 참조하시면 됩니다.


실제적으로 소스를 Migration할 때, 중요 포인트는

#1. 새로운 Silverlight.js 설치 (아래 있음)
#2. CreateSilverlight.js 에서 Sys. 네임 스페이스 변경
#3. Downloader.open 애서 마지막 파라미터 제거

가 아닌가 생각이 듭니다.


추가적인 변경사항으로..
Downloader Object가 localhost 파일을 다운로드하지 못합니다.
뭐. 어찌보면 당연한 것일 수도 있는데 예전에 잘 동작하던 것이 동작하지 않으니 불편하네요.
주석에 보니 이런 문구가 있더라고요..

// NOTE: downloader APIs disallow file:\\ scheme
// you must run this sample over localhost: or off a server or the following call will fail


여전히 기본적으로 지원되는 폰트는 몇개 없습니다.
(문제가 되었던 한글 출력이 기본 폰트로는 안되는 것 같네요 ㅠ)



끝으로, 바뀐 Silverlight.js와 CreateSilver.js 내용을 첨부합니다.
일단 이 부분만 변경해도 동작하는 것도 있습니다.

function createSilverlight()

    Silverlight.createObject(
        "Scene.xaml",         // Source property value.
        parentElement,         // DOM reference to hosting DIV tag.
        "myControl",           // Unique control id value.
        {                      // Control properties:
            width:'100%',       // Width of rectangular region of control in pixels.
            height:'100%',      // Height of rectangular region of control in pixels.
            background:'white', // Height of rectangular region of control in pixels.
            version:'0.9'     // Control version to use.
        },
        { onLoad: eventOnLoad });                  // No events defined -- use empty list.

}


그럼 즐실하세요 :)
Posted by U_Seung


5일전에 Popfly초대장이 왔었는데 이제서야 확인했습니다.
요즘 바빠서 메일 확인도 제대로 못하고 살았더니.. ㅠㅠ

사용자 삽입 이미지

암튼 위와 같이 생긴 Mashup을 맹글어 봤습니다. 직접보기
학교 축제에 가보고 싶었는데 근무하느라 못갔네요. 하하;;; 가봤자 놀아줄 사람도 없겠지만.
예전에 아라에 축제 자료집(팜플렛)이 올라온 적이 있는데.. 이것을 이미지로 바꿔준다음에 이걸 ImageScraper로 연결시키고, 여기에 PageTurn을 연결시켜주니 간단한 책이 되었습니다. 너무 쉽게 만들어지니 약간은 허무하네요 :)


암튼 Popfly..같은 것들이 널리 퍼지면..
저 같이 취미로 Toy를 만드는 사람들은 설 자리를 잃어 버리는거 아닌지 모르겠네요 ㅋㅋ
아래는 위의 자료집을 만든 Popfly Editing 모드 그림 입니다.


사용자 삽입 이미지

Posted by U_Seung
사용자 삽입 이미지

Silverlight 구현 예제보기

여기에서는....
XPS기술을 사용하여 Silverlight에서 한글을 쉽고, 저용량으로 쓰는 방법을 설명한다.



Silverlight가 1.0 Beta가 Release되면서 부터 한글을 그나마 지원하기 시작했다.
WPF/e Dec. CTP 버전에서는 사용이 거의 불가능에 가까웠는데 그에 비하면 많이 진보했다. ^^

Silverlight에서도 한글을 대충써도 잘 나오면 좋겠지만 아쉽게도 현재 버전에서는 그렇지 않다. 그래서 사용할 수 있는 방법으로는 Glyph로 처리하는 방법TextBlock으로 처리하는 방법이 있다. 여기서 소개하는 방법도 큰 맥락에서보면 Glyph로 처리하는 방법과 다르지 않지만 엄청나게 큰 폰트의 용량을 줄이는 방법과 편집을 쉽게 할 수 있는 방법이다.



먼저 예제를 만든 과정을 Step별로 정리 해보면..
----

#1. Microsoft Office를 열고 원하는 한글을 자유롭게 입력한다.
     (저는 Powerpoint을 열고, 아래와 같이 한글, 두글 시리즈를 적었습니다. )

사용자 삽입 이미지


#2. 만들어진 문서를 XPS로 저장한다. (아래 그림참조)
사용자 삽입 이미지


#3. 저장된 XPS파일의 압축을 푼다. ( XPS파일은 Zip Archive 파일이다. )
     압축이 풀린 파일에서 생성된 \Resources\*odttf파일을 Silverlight 프로젝트에 추가한다.
     압축이 풀린 파일에서 \Documents\1\Pages\1.fpage 파일을 연다.
사용자 삽입 이미지

파일에서 해당되는 부분을 Copy한 후 Silverlight Project에 한글을 출력할 부분에 적당히 Paste한다.

#4. 붙여진 <Glyphs>에서 BidiLevel 속성을 제거하고, FontUri를 프로젝트에 맞게 수정한다.

#5. 잘 나오는지 Test 해본다. 끝.

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

설명이 조금 필요한데....
XPS 문서 포맷은 Adobe의 PDF처럼 Microsoft에서 인쇄/출판용 포맷으로 제작된 스펙이다.
XPS 스펙을 보면 알 수 있겠지만 XPS에서 문서의 구성은 WPF에서 사용하는 XAML의 Subset으로 구성되어 있다. Silverlight에서도 XAML을 사용하기 때문에 XPS의 결과물인 XAML을 사용할 수 있게 되는 것이다. 하지만 아쉽게도 이 두XAML이 완벽하게 Compatibility를 가지진 않아서 XPS 결과물을 직접 쓰긴 그렇고 약간 가공해서 쓰다보니 위와 같은 번거러운(?) 절차가 필요하게 되었다.

odttf인 것도 생소할 수도 있는데 XPS로 문서를 출력하면 문서에 사용되는 폰트를 뽑아서 XPS에 저장한다. 이때 만들어 주는 임시 폰트 파일이 odttf파일이다. 따라서 일반 ttf보다 용량이 훨씬 작게 되는 것이다.



예제 소스 다운로드:
Posted by U_Seung

사용자 삽입 이미지

Microsoft가 Mashup과 웹페이지를 만드는 온라인 툴인 Popfly를 발표하였습니다. (야후의 Pipe와도 약간 유사한면이 있습니다. ) 아직은 알파버전만 제공되어서 바로 사용할 수 있는 것은 아니고 Waiting list에 등록을 하며 나중에 사용할 수 있을 때 알려줄려나 봅니다.

Popfly홈페이지에 보면 15분짜리 Screencast가 있는데.. Mashup을 Drag&Drop으로 만드는 샘플이 나옵니다. 재밌는 것은 유명한 Mashup중에 하나인 Twitter Vision을 눈 깜짝 할사이에 만들어 내는데 이거 물건이네 하는 생각이 듭니다. 만들어진 Mashup은 웹에서 공유하는 것 뿐만아니라 자신의 Spaces에 붙이거나 Windows Vista Sidebar Gadget으로 만들 수 있습니다. ( 이게 정말 대박인듯 )

Mashup을 만드는 것 말고도 웹페이지를 만드는 기능도 있는 것 같은데 이 기능은 Office Live 서비스에서 가져다 붙인 것 같습니다. Office Live가 일반 Customer가 사용하기에는 부적한게 사실 이었는데 Popfly는 아마 일반 사용자들이 쓰기에도 적합하게 만들지 않았을까 하는 생각도 해봅니다.


Windows Live 서비스, Silverlight, Visual Studio 2005, Office Live 등을 결합하여 뚝딱하고 서비스를 찍어내는 Microsof가 때론 놀랍기도 합니다. 아무나 회사나 할 수 있는 종류의 일은 아니니까요.

Posted by U_Seung

이번에 새로 나온 Silverlight 1.0과 Silverlight 1.1은 어떻게 다를까?
한마디로 하면 어마 어마하게 다르다.

Silverlight 1.0 Beta는 기존의 WPF/E CTP가 조금 업그레이드 되고, 안정화된 버전 정도이지만 Silverlight 1.1 Alpha의 경우에는 작은 .NET Framework와 DLR을 포함하고 있으며, 그 밖에도 DRM, LINQ, RSS, REST, 등등의 기능이 보강된 한 차원 업그레이드 된 버전이다.

출처: MSDN – 노란색이 v1.1에 추가된 Feature다.

새롭게 출시된 Silverlight의 Feature중에서 CLR과 DLR을 중심으로 살펴 보았다.

#1. 작은 .NET Framework, CLR(Common Language Runtime) 포함

실제로 4/30에 공개된 Silverlight 1.0 Beta와 Silverlight 1.1 Alpha의 경우 각각 1.4Mb와 4.2Mb로 3M정도의 용량의 차이가 있다. 아무래도 CLR이 포함되려면 용량이 커지기 마련인데 기존에 약속했던 2Mb이하의 Runtime을 내놓기로 했다는 약속을 지키려고 했는지 1.0 Beta의 용량은 매우 작다.

현재 .NET Framework v3.5까지 이야기 되고 있는데 그 방대한 Framework가 모두 다 포함 된 것은 당연히 아니며, 기본적인 Class 몇 개와 WPF쪽 약간과 WCF 조금과 Data관련 모델들이 조금 지원된다. (자세한 내용은 MSDN을 참조 하시라.) CLR에서는 메모리 관리, 가비지 컬렉션, 타입 체킹, 예외 처리 등을 지원한다.

지원되는 Language는 C#, Visual Basic이며 현재는 Visual Studio 다음 버전인 Orcas를 설치해야 Compile을 할 수 있는 것 같다. Orcas 용량이 상당하기 때문에 아직까지 나는 설치해보지 못했지만 Compile을 하게 되면 DLL이 생성되고, 이를 XAML에서 다음과 같이 이용할 수 있다.

Page.Xaml

<Canvas x:Name="root"
    xmlns="http://schemas.microsoft.com/client/2007"
    xmlns:x=http://schemas.microsoft.com/winfx/2006/xaml
   Loaded="Page_Loaded"
   x:Class="VideoLibrary.VideoLibraryCanvas;assembly=ClientBin/VideoLibrary.dll">
Page.Xaml.Cs

using System;
using System.Windows;
using System.Windows.Documents;

namespace VideoLibrary {

   public partial class VideoLibraryCanvas : Canvas {
      public void Page_Loaded(object sender, EventArgs e) {
        (……)
      }
   }
}

#2. DLR(Common Dynamic Language Runtime) 지원

사용자 삽입 이미지

jscript, vb, ruby, python을 동시에 사용하는 console 시연 장면


Silverlight 1.1에는 CLR 뿐만아니라 CLR기반에서 동작하는 DLR을 지원한다.
최근 들어 JRuby, IronPython, IronRuby 등 Runtime에 Dynamic Language를 올리려는 노력이 많이 있었다. 기존의 경우에는 JAVA의 JVM이나 .NET의 CLR위에 바로 Dynamic Language를 올리려는 시도가 많았던 것 같은데 원래 Dynamic Language가 가지는 특성으로 매우 쉽지 않은 과정이었으리라 생각이 든다. (구체적인 것은 별로 아는 바가 없다.) 이번에 Siliverlight에 포함된 DLR의 경우에는 Silverlight에 포함된 CLR 기반에 동작하도록 하여 Layer하나를 새로 분리시킨 것 같다.

현재 공개된 버전에서는 JS와 Python만 동작하지만 조만간 VBx와 Ruby가 지원될 것으로 예상된다. 여기에 대한 것은 Mix07의 DLR in Silverlight 동영상에 나오는 DLR Console을 본다면 매우 직관적으로 알 수 있을 것 같다. 동영상에서는 Ruby, JS, Python, VBx의 Language를 버튼 하나로 Switching하면서 Coding하는 모습을 보여주는데 매우 감명 깊게 보았다.

DLR을 이용하면서 쓸 수 있게 된 Language들은 Browser에서 사용되는 JScript와 VBScript를 보다 높은 성능 보일 수 있다고 한다. 그렇지만 뭐니 해도 Javascript(혹은 ECMAScript)가 중심이 되었던 Web client단 프로그래밍을 Ruby, Python등으로 할 수 있게 되었다는 것은 엄청난 변화의 시작인 것 같다.

DLR위에서 돌아가는 Script를 사용하기 위해서는 XAML에서 다음과 같이 적어주면 사용할 수 있다.

<x:Code Source="DLRConsole.py" Type="text/python" />
<x:Code Source="Code.jsx" Type="text/jscript" />


#. Performance

 기존의 RIA기술이라고 나온 것들이 Performance가 썩 만족 스럽지 않았던 것이 사실이다.
 이번 Silverlight Beta 버전에서는 얼마나 속도가 빨라 졌을까? 나도 궁금하다. -_-;;

 이번에 적용된 CLR은 Binary DLL 결과를 이용하기 때문에 기존의 Script보다 빠를 것으로 기대 하지만 core가 되는 XAML Rending과는 다소 거리가 있을 수 있기 때문에 섣부른 기대는 금물이 아닐까 생각한다.

 이전까지는 WPF, Apollo, Flex, Silverlight, DHTML의 비교에서 Flex Bitmap caching을 적용한 것이 가장 빠르다는 Benchmark 결과가 있었는데 이번에 순위가 바뀔 수 있을지는 잘 모르겠다.

 현재는 Multi-platform, Various language support인 것 같은데 여기에 High performance까지 바라면 너무한가?


Posted by U_Seung

참조: http://blogs.msdn.com/bkchung/archive/2007/05/01/mix-07-keynote-announcements.aspx
참조2: http://msdn2.microsoft.com/en-us/library/bb404703.aspx

몇가지 평을 하자면..
* Mix07 행사에서 1.0 Beta와 1.1 Alpha가 같이 공개된 것은 1.1 테스트가 덜 끝났나? 하는 생각도 든다.
* 너무 많은 Announcement에 예전부터 꾸준히 지켜본 사람도 당황스러울 정도다.
* Telesto라고 작은 CLR이 WPF/E 시절부터 들어있다는 이야기가 있었지만 이렇게 공개되니 새롭다.
* 시간나면 Screencast를 하나씩 봐야 겠다.
* Silverlight Streaming Service는 정말 생각도 못했던 서비스다. Windows Live의 서비스 라인을 가지고 있는 회사만 할 수 있는 즉, Adobe는 할 수 없는 서비스 같다. 꼭 써봐야 겠다.

그나저나 얼마전에 Tistory에 붙인 Clock은 Breaking Change로 인해서 다시 손봐줘야 한다. ^^
귀찮긴 하다.

Posted by U_Seung
사용자 삽입 이미지
왼쪽(혹은 오른쪽) 그림과 같이 블로그에 Silverlight를 기반으로 한 아날로그 시계를 추가하였다.

뭔가 Silverlight로 이름이 변경되어 정식 런칭을 눈 앞에 둔 시점에서 뭔가 재밌는 것을 만들려다가 여러가지 여건상의 문제로;; 그냥 예전에 만든 아날로그 시계를 블로그에 붙이기로 했다.

Silverlight가 깔리지 않은 사람은 아마 시계가 안보일 거에요.
Silverlight 2007 Feb CTP 버전은 여기에서 받으실 수 있으니 설치하셔서 멋진(?) 아날로그 시계를 감상 하세요. ^^ 다음에 시간이 되면 Vista Sidebar Gadget에서 다른 스킨도 추가시킬까 생각도 하고 있는데 시간이 나면 해보려고 합니다.

혹시 시계를 Tistory 블로그에 달고 싶으신 분이 계시면..

<s_sidebar_element>
<!-- Silverlight Clock -->
<div id="Wpfeclock">
<h3>Silverlight Clock</h3>
<iframe src="http://sparcs.org/~airlover/wpfe/Clock/" style='border:0px; width: 150px; height: 150px' frameborder='0'></iframe>
</div>
</s_sidebar_element>

관리자모드에서 스킨 편집 메뉴에 들어가셔서 위의 코드를 <s_sidebar_element> 사이에 끼워 넣으시고, 사이브바 관리 메뉴에서 원하시는 위치에 Drag&Drop 해주시면 됩니다.




Posted by U_Seung
참조1: http://blogs.msdn.com/bkchung/archive/2007/04/16/microsoft-silverlight-nab2007.aspx
참조2: http://blogs.msdn.com/somasegar/
참조3: http://www.microsoft.com/silverlight/


몇 가지 중요한 사항을 정리하였습니다..

New silverlight enabled site coming april 30th!

현재까지 Available한 Silverlight 버전은 2007 Feb CTP버전 입니다. 다음 버전은 아마 Beta 버전이 될 것 같은 데 공개되는 시점은 4/30일 Mix07행사에서 공개될 예정이라고 합니다.



the next CTP has introduced a fair amount of breaking changes where you'll have to update your code. We will release a "breaking change" document (either on a blog or in the SDK) that describes what has changed

다음 버전에서는 꽤 많은 변화가 있을 모양인가 봅니다. breaking change라는 것은 backward compatibility를 제공하지 않겠다는 의미인 것 같은데.. MS에서 이런 변화를 보여준다는 것은 꽤 많은 변화가 있을 것을 예고해주는 것 같습니다. 기존에 feedback이 들어온 부분을 얼마나 많이 수용하고 새로운 feature를 보여줄 지 살짝 기대 됩니다. ^^


Silverlight is just a 1MB download on a PC (slightly more on a Macintosh because the universal package contains both Intel and PowerPC versions); it supports Windows XP and above, with Windows 2000 support to come.
Flash Player 9도 대략 1MB쯤 되는 것 같던데 Silverlight도 매우 가볍게 제공하는 것 같습니다. 사실 Flash Player가 대략 95%가 넘는 인터넷 컴퓨터에 설치되었다고 하는데 Silverlight는 얼마나 설치될지 살짝 궁금해집니다.



Silverlight is almost 100% upward compatible with WPF. Animation, 2D vector graphics, media, text - they're all present in Silverlight and the concepts you've learnt in WPF carry forward (although Silverlight is a subset - it doesn't support WPF features such as 3D, data binding or templates). You can use the same tools (e.g. Expression Design) to generate content for Silverlight; you can take XAML from Silverlight and use it in a WPF application when you want to scale up and take full advantage of your local machine.
기존에는 WPF의 XAML과 WPF/E의 XAML이 그다지 호환성을 가지지 못했던 것 같은데 3D말고도 안되는 것도 많고, Expression Blend/Design에서 만든 것은 당연히 안되고 -_- 다음 버전에서 얼마나 WPF와 Compatibility를 가질지 지켜봐야겠습니다.



  • Expression Media Encoder – a feature of Microsoft Expression Media, which enables rapid compression and Web publishing of digital video from a variety of popular formats including AVI and QuickTime.
    Windows Media Encorder와는 별개로 동영상을 웹에 Publishing하는 것을 도와주기 위해서 별도의 Encoder 소프트웨어를 배포하겠다는 것 같습니다. Encoding하는것이 매우 번거로운 FLV(On2 VP6) 코덱과는 매우 차별화되는 점인 것 같습니다.


  • IIS7 Media Pack for Windows Server –the Media Pack is for customers wishing to enable cost-effective delivery of downloaded media through bit-rate throttling and other advanced features such as cache-proxy support.

    Windows Server Longhorn의 IIS7을 사용할 경우 Media Pack을 통해 미디어 다운로드/스트리밍 지원(Windows 2003의 2배)을 지원한다고 합니다.

  • Broad support from leading media companies and solution providers for Microsoft Silverlight and Microsoft’s approach to media experiences and rich interactive application development.
    가끔씩 Flash와 Silverlight의 큰 차이점에서 이야기할 때가 있는데... 가장 큰 차이점은 Media지원 부분인 것 같습니다. 최근 UCC 동영상에 대한 요구가 증가하면서 관련 기술에 관한 내용이 많이 화두가 되고 있는데 Silverlight의 가장 큰 장점은 Windows Media들을 웹 상에서 잘(!) Publishing하는 것을 도와준다는 데 있지 않나 싶습니다.

    Adobe의 Flash도 훌륭한 Webapp를 위한 Runtime이지만 WMV를 지원하지 못한 점은 기존에 많은 자료들을 웹으로 Publishing하는데 큰 제약 이었습니다. MS는 OS, Office뿐만 아니라 Media 쪽에서도 많은 3rd-party와 함께 거대한 규모의 Eco-System을 가지고 있습니다. 이제 Silverlight가 나옴으로 해서 많은 WMP기반의 서비스들이 Silverlight로 대체되고 더 예뻐진 UI와 더 편리해진 UX를 볼수 있지 않을까 기대 해봅니다..

    일반 사용자가 피부로 느끼는 것은 UCC 동영상등의 서비스들이 별도의 ActiveX Control을 설치하게하지 않으면서도 예쁜 UCC Player를 내놓지 않을까 생각해봅니다.





  • Posted by U_Seung
    사용자 삽입 이미지

    참조: http://sparcs.kaist.ac.kr/~airlover/wpfe/Clock/

    Tistory라서 왼쪽 Sidebar에 넣지 못하는 것을 안타깝게 생각합니다.
    맨 위는 그냥 이미지고, 위의 링크를 타고 들어가시면 보실 수 있습니다.

    WPF/E가 설치되지 않으신 분은 2007 Feb CTP 버전으로 설치하셔야 합니다.



    다양한 예제가 많지만 시계가 재미있는 이유는.. WPF/E 애니매이션을 멋지게 넣을 있어서 입니다.
    시계 바늘이 움직이는 것을 만들려면 보통의 방식대로 한다면 .. n초에 한번씩 초침, 분침, 시침의 위치를 조금씩 움직이는 것을 계산하여서 화면에 다시 그리기를 해야합니다.

    WPF/E에서 애니메이션 기능을 쓰면 다음과 같이 구현할 수 있습니다.
    시작 시각에 각 바늘의 위치를 지정해주고,
    초침은 1분에 한 바퀴씩
    분침은 1시간에 한바퀴씩
    시침은 12시간에 한바퀴씩 돌도록 애니메이션을 구성하고,
    Animation Start!를 하면 시계 제작이 끝납니다. 간단하죠?

    <DoubleAnimation Storyboard.TargetName="Sec" Storyboard.TargetProperty="Angle"
     From="0" To="360" Duration="0:1:0" RepeatBehavior="Forever" />

    <DoubleAnimation Storyboard.TargetName="Min" Storyboard.TargetProperty="Angle" From="0" To="360" Duration="1:0:0" RepeatBehavior="Forever" />

    <DoubleAnimation Storyboard.TargetName="Hour" Storyboard.TargetProperty="Angle" From="0" To="360" Duration="12:0:0" RepeatBehavior="Forever"/>
    - 위는 핵심 코드 중 일부


    만약 Javascript로만으로 시계를 구현했다면 (지금 Vista Sidebar Gadget이 그렇게 하고 있음)
    1초보다 빠른 시간에 한번씩 Event를 발생시켜서 초침을 움직여야 해서 코드가 엄청 지저분 해졌겠지요.

    (위험요소가 다분한) Timer Event가 하나도 쓰지 않고 구현한 WPF/E 시계 ... 재밌지 않은 가요?
    ( 나만 재밌나 -_- )

    Posted by U_Seung