마이크로소프트 차세대 개발 플랫폼_강성재

Download Report

Transcript 마이크로소프트 차세대 개발 플랫폼_강성재

마이크로소프트
차세대 개발 플랫폼
강성재
Developer Evangelist
한국마이크로소프트
목차
•
•
•
•
플랫폼으로의 웹
선언적 프로그래밍 모델
경량 프로그래밍 모델
가젯이란?
PC 산업의 변화
저장, 복사, 계산
데이터베이스
오피스 자동화
PC
Software
Storage
하이퍼텍스트, E-메일
협업
Internet
Networking
Display
게임과 멀티미디어
빈틈없는 컴퓨팅 경험
Services
정보 공유와 사용자 네트워크
Software + Service
빈틈없는 생활 경험
Software + Service + Hardware
변화의 방향
“엔터프라이즈”
LOB & ISV
Information
Scenarios
Rapid
Prototyping
“일반 사용자”
Ecommerce
Entertainment
Brand
Experiences
변화의 방향
일반 사용자
엔터프라이즈
명칭
Web 2.0
SOA
제어
분산
집중
조직
관리 되지 않는
관리 되는
디바이스 형태
매우 많음
적음 (servers)
디바이스 수
매우 많음
많음
연결
글로벌
중간
영향력
거대함
많음
요구사항
거대함
많음
비동기 통신 / REST
비동기 통신 / WS-*
빠름
느림
통신
변화의 속도
참고 : REST (Representational State Transfer)
Time To Market!!!
.NET 핵심
Windows Presentation Foundation
사용자 인터페이스, 미디어, 문서에 대한
통합된 접근을 통한 생산성
Windows Presentation Foundation
XPS Viewer
WPF 아키텍처
Unmanaged
DOCUMENT SERVICES
USER INTERFACE SERVICES
XPS Documents
Application
Services
Packaging Services
Deployment
Services
Databinding
Layout
MEDIA INTEGRATION LAYER
Imaging
2D
Effects
3D
BASE SERVICES
Audio
XAML
Video
Accessibility
Text
Animation
Input & Eventing
Composition Engine
Property System
Desktop Windows Manager
Composition
Engine
Media Integration Layer
Windows Media
Foundation
DirectX
Windows Vista Display Driver (LDDM)
Print Spooler
Controls
Property
Engine
Input /
Eventing
System
.NET Framework 2.0
Managed
디자이너 – 개발자의 생산성
•
디자이너와 개발자를 위한 도구
•
XAML을 통한 선언적 프로그래밍
•
디자인
XAML을 통한 디자이너와
써드 파티
도구 (Mobiform,
개발자의
협업 ZAM 3D)
비즈니스 로직
XAML을 통한 선언적 프로그래밍
XAML = Extensible Application Markup Language
•
•
•
XAML
<Button Width="100"> OK
<Button.Background>
LightBlue
</Button.Background>
</Button>
도구를 통해 쉽게 접근
코드와 컨탠츠의 구분
클라이언트 애플리케이션과 브라우저에서 랜더링
C#
Button b1 = new Button();
b1.Content = "OK";
b1.Background = new
SolidColorBrush(Colors.LightBlue);
b1.Width = 100;
VB.NET
Dim b1 As New Button
b1.Content = "OK"
b1.Background = New _
SolidColorBrush(Colors.LightBlue)
b1.Width = 100
플랫폼으로의 웹 환경 : Windows Live
Toolbar
Live.com
Mobile
Search
Messenger
OneCare
Local
Expo
Mail
Custom
Domains
Spaces
Safety
Center
플랫폼으로의 웹 : Google
가젯이란?
• 작고, 경량의 특별한 애플리케이션
– 작다: 물리적으로 작은 크기
– 경량: 일반 애플리케이션에 비해 적은 코드
– 특별한: 제한된 특정 기능을 수행
가젯의 유형?
정보 가젯
애플리케이션 가젯
유틸리티 가젯
가젯의 종류?
데스크톱 (사이드바 가젯)
웹 (Live.com 가젯)
디바이스 (사이드쇼 가젯)
주요 형태
라이브 가젯
사이드바 가젯
(미니 웹 애플리케이션)
(미니 데스트톱 애플리케이션)
• 동적이고 이동이 많은
사용자에게 유리
• 풍부하고 복잡한 데스크톱
기반 사용자에게 유리
• Live.com 과 사이드
바에서 사용 가능
• 보안 기능
• 사이드 바에서만 사용
가능 (도킹과 언도킹 가능)
라이브 가젯
미니 웹 애플리케이션
• 미니 웹 애플리케이션
– 동적이고, 이동이 많은 사용자
– Live.com, 사이드 바, 기타
• 예
World Clock
Live.com 에서 구동
라이브 가젯
사이드바 가젯
미니 데스크톱 애플리케이션
• 미니 데스크톱 애플리케이션
– 풍부하고 복잡한 데스크톱 기반 사용자에게 유리
– 보안 기능
– 사이드 바에서만 사용 가능 (도킹과 언도킹 가능)
• 예
사이드바 가젯
Vista 데스크톱과 사이드바
(언도킹)
(도킹)
연계 포인트
– 라이브 가젯은 사이드바에 사용 가능
– 사이드바 가젯 데이터는 사이드쇼에 표시
웹
데스크톱
사이드바
Live.com
DHTML \\
DHTML
Atlas
Atlas
Windows
Presentation
Foundation
IE & FireFox
Windows Vista / XP
사용자 경험에 따라
App.xaml.cs
내용:
애플리케이션 로직
App.xaml
+
내용: UI 스타일링
=
제작: 디자이너
제작:
개발자
데스크톱 애플리케이션
+
App.xaml
내용: UI 스타일링
제작: 디자이너
=
Gadget.xml
&
.Gadget 패키지
사이드바 가젯
사이드 바 가젯
사이드쇼 프로토타입
• 노트북 뚜껑에 표시
• d-pad 와 메뉴 버튼으로 조작
• 가젯간의 간단한 탐색
Media Center remote control
small business server
사이드 쇼 가젯
신기술 조언 프로그램
• 기존 Windows 응용프로그램
(Win32/MFC)  WPF & 가젯
• ASP, PHP, JSP 등의 스크립트 기반 웹 프
로그램  AJAX & WPF/E, XBAP
• 플래시, 애플릿, ActiveX 기반의 웹 응용
프로그램  WPF/E, XBAP
참고 자료 및 링크
•
•
•
•
•
•
http://www.microsoftgadgets.com
http://msdn.microsoft.com/live/
http://dev.live.com/
http://atlas.asp.net/
http://protopage.com/v2
http://www.pageflakes.com/