220 likes | 347 Vues
Punit Shah. Technical Lead | Microsoft punits@microsoft.com | http://blogs.msdn.com/punit. Mobile World. What is .NET Compact Framework?. .NET Framework. . NET Compact Framework. What is .NET Compact Framework?. Lightweight version of .NET Framework
E N D
Punit Shah Technical Lead | Microsoft punits@microsoft.com | http://blogs.msdn.com/punit
What is .NET Compact Framework? .NET Framework .NET Compact Framework
What is .NET Compact Framework? • Lightweight version of .NET Framework • Designed for resource-constrained devices • Compatible with VS.NET, C#, VB.NET • Runs applications securely on-device • High performance JIT compiler
What is .NET Compact Framework? • Guarantees robustness and security • Highly interactive, offline, and networked experiences • Makes it easy to consume web services • Tunable size and performance
DEMO Calculator Application Sample using .NET CF
.NET CF – Design Goals • Small CLR for Devices • Leverage VS to design, develop & debug • Web Service Access on Devices • Run seamlessly with the OS on the devices • Single binary deployment for all Pocket PC and Windows CE .NET CPUs • Enhanced developer productivity using .NET Compact Framework and Visual Studio .NET
System.Web System.WinForms Services UI Design ComponentModel Description HtmlControls Discovery WebControls System.Drawing Protocols Caching Security Drawing2D Printing Text Configuration SessionState Imaging System.Data System.Xml ADO.NET SqlClient XmlDocument Serialization Reader/Writers Design SqlServerCe Xslt/XPath System Collections IO Configuration Runtime InteropServices Security Net ServiceProcess Remoting Text Reflection Diagnostics Serialization Globalization Resources Threading .NET Framework
System.Web System.WinForms Services UI Design ComponentModel Description HtmlControls Discovery WebControls System.Drawing Protocols Caching Security Drawing2D Printing Text Configuration SessionState Imaging System.Data System.Xml ADO.NET SqlClient XmlDocument Serialization Reader/Writers Design SqlServerCe Xslt/XPath System Collections IO Configuration Runtime InteropServices Security Net ServiceProcess Remoting Text Reflection Diagnostics Serialization Globalization Resources Threading .NET Compact Framework
.NET CLR Common Features • Verifiable type safe execution • No uninitialized variables, unsafe casts, bad array indexing, bad pointer math • Garbage Collection • No ref-counting, no leaks • JIT compilation • Error handling with exceptions • Common type system • Call, inherit, and source-level debug across different languages
Compact CLR Differences • COM Interop • Good support for calling native DLLs • Support for calling a COM object through DLL wrappers • No support for writing a COM / ActiveX object • No Install-time JIT (nGen) / No Reflection Emit • No Remoting / Client web services is fully supported • No Generic Serialization • Datasets can be serialized to XML • Subsets of other areas of functionality
DEMO Developing Games for Smart Device App using .NET CF
.NET Framework CLR Size • Framework size (RAM or ROM) • ~1.5 MB • Running RAM needs • 1 MB+ (depends on app) • Typical application sizes • 5 - 100 KB • Apps often smaller due to use of platform features in the framework
.NET Compact Framework - Features • Base Classes • Data/XML • XML Web Service Client • Threading • Native Code Interop • Globalization • Windows Forms Support
Mobile Controls for ASP.NET • Write-once mobile web pages • From a single code base target multiple devices • Support for a variety of devices • Web enabled Cell Phones, PDAs and Pagers • Support multiple mark-up languages • WML1.1 (WAP); cHTML 1.0, HTML, XHTML • Customizable and extensible framework • Add new controls and support for new devices • Integrates with Visual Studio.NET • World-class development tool
Power Toys for .NET CF • Remote Performance Monitor and GC Heap Viewer • .NET CF CLR Profiler • App Configuration Tool (NetCFcfg.exe) • .NET CF ServiceModel Metadata Tool • Remote Logging Configuration Tool • .NET CF Network Log Viewer
DEMO Walkthrough: Automated SMS Reply using .NET CF
Summary • Leverage your knowledge and build device apps! • Desktop framework & tools • .NET languages (C#, VB .NET) • Choose the appropriate project template • Compile, Debug, and Deploy in Visual Studio .NET
References • Windows Mobile Dev Centre: http://msdn.microsoft.com/mobility • .NET CF Dev Guide: http://msdn.microsoft.com/en-us/library/f44bbwa1.aspx • Samples: http://msdn.microsoft.com/en-us/library/bb397851.aspx
Feedback/Q&A • Your Feedback is important to us. • Please take a few moments to fill out our online feedback form • Use the Question Manager on LiveMeeting to ask your questions now!
Contact • Email: punits@microsoft.com • Blog: http://blogs.msdn.com/punit