<p>
[데브멘토 동영상] Windows Phone Mango 무엇이 달라졌는가?</p>
<p>
서진호 한국마이크로소프트 부장 3부</p>
<p>
지난5월24일 발표된 새로운 윈도우폰Mango에서 변경된 툴 및 프레임워크에 대해 알아본다.특히 비쥬얼 스튜디오2010에서 한층 더 편리하게 앱을 개발할 수 있도록 디바이스 에뮬레이터, 프로파일러 및 성능 분석에 대해 직접 데모를 보여준다.</p>
<p>
</p>
<p>
실전 윈도우폰 망고 앱 디자인& 개발</p>
<p>
코드네임 ‘망고’업데이트, 윈도우폰 앱 개발A to Z</p>
<p>
</p>
<p>
서진호 한국마이크로소프트 부장은 현재 마이크로소프트 모바일/임베디드 디벨로퍼 에반젤리스트로 활동하고 있으며 국내 모바일/임베디드 및 윈도우7 관련 개발 기술 전도에 앞장서고 있다. 현재 서진호의Windows Phone 이야기(<a>http://blogs.msdn.com/jinhoseo</a>)라는 블로그를 운영 중.</p>
1. 사용자가 여러분의 앱에 대해 불만을
제기 했을때?
…” “ app is little slow and jerky
….the app is a bit sluggish on the main screen
….if performance was a little bit better when scrolling it
would be best app
….” “ crashes after playing for 20 minutes
Windows Phone Microsoft Corporation
2. Profiler 란 무엇인가?
통합된 프러파일러(Integrated Profiler)
Visual , Code 및 Memory profiler
Performance Analysis
Built-in anti-pattern analyzer
step-by-step 절차 대로!
Windows Phone Microsoft Corporation
3. Demo
Profiler
3 Windows Phone Microsoft Corporation
4. Windows Phone Mango 아키텍처
Cloud Integration
Services
Multitasking improvements App UI
Silverlight and XNA integration
Model Model
Software
Improved device access Silverlight 4.0 support
Architecture
Hardware
Flexible chassis New SoC
Foundation
Windows Phone Microsoft Corporation
6. New Hardware Foundation
Capacitive touch
4 or more contact points
Sensors
A-GPS, Accelerometer, Compass, Light, Proximity, Gyro
Camera
5 mega pixels or more
Multimedia
Common detailed specs, Codec acceleration
Memory
256MB RAM or more, 8GB Flash or more
GPU
DirectX 9 acceleration
CPU
Qualcomm MSM7x30, MSM8x55 800Mhz or higher
Hardware buttons | Back, Start,
Search
Windows Phone Microsoft Corporation
8. Software Architecture
Applications
Your App UI and logic
Frameworks
Silverlight and XNA HTML5/JavaScript
User data Structured data
CLR
App Model UI Model Cloud Integration
App management Shell frame Xbox LIVE
Licensing Session manager Bing
Chamber isolation Direct3D Location
Software updates Compositor Push notifications
Data sharing Windows Live ID
Kernel
Security
Hardware BSP
Networking
Storage A-GPS Accelerometer Gyro Compass Light Proximity
Media Wi-Fi Radio Graphics
Hardware Foundation
Windows Phone Microsoft Corporation
9. Windows Phone Mango Frameworks
Windows Phone Frameworks
Device Launchers & Windows Phone
Camera Choosers Structured
MultiTasking Integration Controls
Data
PhoneApplicationFram
PhoneApplicationPage PushNotification WebBrowserControl Sensors
e
Silverlight Presentation and Media XNA Frameworks for Games
Silverlight Controls Drawing IsolatedStorage Drawing GamerServices Silverlight
4.0 Integration
Shapes Markup Media Navigation Media Input Graphics Audio Content
Application Object
Common Base Class Library
Runtime Resources Globalization Reflection Location Text IO Net Diagnostics
Sockets
Security Threading Collections ComponentModel Configuration ServiceModel Linq
Windows Phone Microsoft Corporation
11. App Hosting and Runtime
App Domain
Silverlight Application XNA Game
Object Object
AGENT Frameworks
Silverlight XNA HTML5/JavaScript
CLR
시스템은 앱 코드를 위한 호스트 프로세스를 준비한다. App Model Host
App Model UI Model Cloud Integration
Xbox LIVE
App management Shell frame Bing
Licensing Session manager Location
Chamber isolation Direct3D Push notifications
Software updates Compositor Windows Live ID
Kernel Hardware BSP
Sandbox는 먼저 선언된 가용량 기반에
Security A-GPS Accelerometer Gyro Compass Light Proximity
Networking
Storage Media Wi-Fi Radio Graphics
호스트 프로세스를 준비한다. Hardware Foundation
각 app은 격리된(isolated), 신뢰할 수 있는 권한(least-privileged) 호스트 프로세스 안에 동작한다.
모든 앱 코드는 어떤 디바이스든 동일하게 동작하고, CLS-검증하고, 일상적인 공격에 방어 설계되어 있다.
프레임워크는 app model, UI model, phone 기능성과 상호 작용하며 앱 코드를 실행시키도록 해준다.
Windows Phone Microsoft Corporation
12. User Data and Apps
12 Windows Phone Microsoft Corporation
14. Content-centric Experiences: Challenges
Your Web Service
Custom Web Service
Existing Web Services
Microsoft Services
Notification
Location Service Service
Windows Phone Microsoft Corporation
15. Content-centric Experiences: How They Work
Web Service
power resource task connection
monitor manager scheduler manager
Windows Phone Microsoft Corporation
16. Structured Data and I/O Performance
SD Metric Target Card A Card B Card C
64KB seq. 4 17 9 2
writes/sec
64KB seq. reads/sec 8 26 15 7
4KB write IOPs 20 87 3 57
4KB read IOPs 500 1054 1022 373
Windows Phone Microsoft Corporation
17. Structured Data in Mango
Web Service
Windows Phone Microsoft Corporation
21. Multitasking에 대해 다시 생각하자!
Keep the UX great Get more out Don’t keep users
of the phone waiting
Windows Phone Microsoft Corporation
22. Keeping the UX great: the basics
Smooth animations
60 frames per second
Glitch-free media
Hardware-accelerated audio and video
Never regret installing an app
Battery life
State management
Memory and CPU
Windows Phone Microsoft Corporation
23. UI and State Management: Concepts
Potentially discarded while the session is paused
Page UI
Describes the visual
appearance of a page
Page and Application
State
Contains data that
describes an instance
of a page and Navigation stack and state is retained in shell frame to support
application resuming paused sessions
Windows Phone Microsoft Corporation
24. Keeping the UX great: CPU in WP7
Thread Priority Quantum Workload Periodicity
Rendering Above Normal 6ms Animations Every 16ms
Video Every 33-41ms
UI Normal 4ms Data binding Every 20-100ms
Touch Every 32-100ms
Background Normal 2ms Various N/A
Windows Phone Microsoft Corporation
25. Keeping the UX great: CPU in Mango
Thread Priority Quantum Workload Periodicity
Rendering Above Normal 8ms Animations Every 16ms
Video Every 33-41ms
Touch Every 32-100ms
UI Normal 20ms Data binding Every 20-100ms
Background Normal 4ms Various N/A
Windows Phone Microsoft Corporation
26. Keeping the UX great: memory in WP7
90MB recommended
Windows Phone Microsoft Corporation
27. Keeping the UX great: memory in Mango
90MB minimum
Windows Phone Microsoft Corporation
28. Keeping the UX great: battery life
Resource CPU Display Audio Video 3G data Wi-Fi GPS Sensors
Power (mW) >400 >150 300 800 750 600 350 varies
Windows Phone Microsoft Corporation
29. Getting more out of the phone: agents
abstract class BackgroundAgent
{
virtual void Invoke(uri, parameters)
virtual void OnCancel()
void NotifyComplete()
void Abort()
}
UI instance agent instance
Windows Phone Microsoft Corporation
30. Getting More Out of the Phone: Audio Agents
Windows Phone Microsoft Corporation
31. Getting More Out of the Phone: Generic Agents
Windows Phone Microsoft Corporation
32. Don’t Keep Users Waiting: Dormant Apps
Windows Phone Microsoft Corporation
33. Don’t Keep Users Waiting: Background Transfers
Windows Phone Microsoft Corporation
35. Graphics Composition
Shell frame composes all UI into a single screen
Central page management enables cross app UI transitions and other effects
System wide Z order enforcement emphasizes core phone functionality
Windows Phone Microsoft Corporation
36. Silverlight And XNA Integration Inside One Page
Windows Phone Microsoft Corporation
38. Cloud Services and Frameworks
System.Device.Location Microsoft.Phone.Notification Microsoft.XNA.Framework.GamerServices
Location client service Push client service Game foundation service
Windows Phone
Bing location services XBox Live services
Notification services
Windows Phone Microsoft Corporation
39. 다음달 주제
더욱 더 쉽게 App 개발을 위한 Templates Design 소스
공개
Windows Phone 7 Marketplace for Consumers
(Seller Partner 등록 절차 및 App Submit 절차)
39 Windows Phone Microsoft Corporation.