27
The 100% The 100% Inspiration Inspiration Tour Tour

The 100% Inspiration Tour. An Introduction to Building Connected Mobile Applications Gavin King Academic Team, Microsoft UK [email protected]

Embed Size (px)

Citation preview

Page 1: The 100% Inspiration Tour. An Introduction to Building Connected Mobile Applications Gavin King Academic Team, Microsoft UK gking@microsoft.com

The 100% The 100% Inspiration Inspiration

TourTour

Page 2: The 100% Inspiration Tour. An Introduction to Building Connected Mobile Applications Gavin King Academic Team, Microsoft UK gking@microsoft.com

An Introduction to Building An Introduction to Building Connected Mobile ApplicationsConnected Mobile Applications

Gavin KingAcademic Team, Microsoft [email protected]://blogs.gotdotnet.com/gking

Page 3: The 100% Inspiration Tour. An Introduction to Building Connected Mobile Applications Gavin King Academic Team, Microsoft UK gking@microsoft.com

Topics

The proliferation of Smart Devices

Overview of device development scenarios

Web applications

Smart, local applications

Ink Enabled applications

How you get can started building connected applications!

Page 4: The 100% Inspiration Tour. An Introduction to Building Connected Mobile Applications Gavin King Academic Team, Microsoft UK gking@microsoft.com

Device Evolution

Next GenerationNext GenerationClientsClients

Always connectedAlways connected Natural user interfacesNatural user interfaces Integrated communicationsIntegrated communications Multiple form factorsMultiple form factors Personal information Personal information

gatewaysgateways

Ca

pab

iliti

es

Ca

pab

iliti

es

TimeTime

DumbDumbTerminalTerminal

PC CUIPC CUI

WebWebPC GUIPC GUI

Next Gen Next Gen ClientsClients

Client-ServerClient-Server

Page 5: The 100% Inspiration Tour. An Introduction to Building Connected Mobile Applications Gavin King Academic Team, Microsoft UK gking@microsoft.com

Smart Form Factors

Embedded Devicese.g. Auto, MP3

Personal OrganisersGSM and PIM capabilities

Smart Phones

Connected Laptops

Tablet PCsUltimate natural language input devices

Page 6: The 100% Inspiration Tour. An Introduction to Building Connected Mobile Applications Gavin King Academic Team, Microsoft UK gking@microsoft.com

codeweb pages

Client sideClient sideWeb AppsWeb Apps

Mobile WebBrowser

Mobile WebBrowser

LocalExecution

LocalExecution

code

EmbeddedEmbedded

Real-TimeExecutionReal-TimeExecution

Device Application Architecture

Page 7: The 100% Inspiration Tour. An Introduction to Building Connected Mobile Applications Gavin King Academic Team, Microsoft UK gking@microsoft.com

Mobile Web Applications

Applications that run in a browser or communicate via standard web protocols

Some possible scenariosNews and information

Commerce (e.g. shopping or banking)

Connected gaming experiences

Corporate data access (e.g. employee email)

Page 8: The 100% Inspiration Tour. An Introduction to Building Connected Mobile Applications Gavin King Academic Team, Microsoft UK gking@microsoft.com

Mobile Web Challenges

With so many manufacturers, form factors and protocols development is a headache!

Here are just a few application design considerations:

New device support

Different form factors

Varying markup languages

Different device capabilities

State management

Content management

Custom tools and solutions

Site maintenance and administration

Page 9: The 100% Inspiration Tour. An Introduction to Building Connected Mobile Applications Gavin King Academic Team, Microsoft UK gking@microsoft.com

Reducing the ‘Plumbing’ CodeASP .NET Mobile Controls

Write one device independent mobile page

Saves coding a page/app per device

Adaptively render to devices based on browser, device and gateway combination

Screen size, graphics capabilities, etc.

Same design paradigm (WYSIWYG) and tool (VS .NET) as regular web applications

Page 10: The 100% Inspiration Tour. An Introduction to Building Connected Mobile Applications Gavin King Academic Team, Microsoft UK gking@microsoft.com

Adaptive RenderingAdaptive Rendering

Page 11: The 100% Inspiration Tour. An Introduction to Building Connected Mobile Applications Gavin King Academic Team, Microsoft UK gking@microsoft.com

Advantages of Mobile Controls

Supports multiple mark-up languagesWML1.1 (WAP), cHTML 1.0, xHTML Mobile and Basic profile, HTML 3.2

Supports a wide variety of devices Web enabled mobile phones, PDAs and PagersNo need to recompile for new devices

Customizable and extensibleBuilt on top of the .NET Framework

Page 12: The 100% Inspiration Tour. An Introduction to Building Connected Mobile Applications Gavin King Academic Team, Microsoft UK gking@microsoft.com

Windows/CE FreeBSD

.NET Framework Refresher

MacOSX

Common Language Runtime

Base Class Library

Data and XML

ASP.NET Windows Forms

Common Language Specification

VB C++ C# J# …W

eb M

atrixV

isual S

tud

io.N

ET

Page 13: The 100% Inspiration Tour. An Introduction to Building Connected Mobile Applications Gavin King Academic Team, Microsoft UK gking@microsoft.com

codeweb pages

Client sideClient sideWeb AppsWeb Apps

Mobile WebBrowser

Mobile WebBrowser

LocalExecution

LocalExecution

code

EmbeddedEmbedded

Real-TimeExecutionReal-TimeExecution

Device Application Architecture

Page 14: The 100% Inspiration Tour. An Introduction to Building Connected Mobile Applications Gavin King Academic Team, Microsoft UK gking@microsoft.com

.NET Compact Framework

A lightweight version of .NET Framework

Designed for resource-constrained devicesAround 1.5 Mb of device RAM or ROM

Runs applications securely locally on the deviceHigh performance JIT compiler

Reliable and secure

Supports interactive, offline, and networked experiences

Full support for XML Web Services

Page 15: The 100% Inspiration Tour. An Introduction to Building Connected Mobile Applications Gavin King Academic Team, Microsoft UK gking@microsoft.com

Smart Device Extensions

Same programming model and tools as desktop .NET applications

New project type in Visual Studio

Full support for XML Web Services

Desktop device emulator to aid implementation and testing

There is very little learning required in order to write powerful applications

that target a wealth of devices

Page 16: The 100% Inspiration Tour. An Introduction to Building Connected Mobile Applications Gavin King Academic Team, Microsoft UK gking@microsoft.com

What is a Web Service?

““A programmable A programmable application application component component

accessible via accessible via standard Web standard Web

protocols”protocols”

Page 17: The 100% Inspiration Tour. An Introduction to Building Connected Mobile Applications Gavin King Academic Team, Microsoft UK gking@microsoft.com

Consuming Web Services from Consuming Web Services from a Smart Device Applicationa Smart Device Application

Page 18: The 100% Inspiration Tour. An Introduction to Building Connected Mobile Applications Gavin King Academic Team, Microsoft UK gking@microsoft.com

Common Features

Verifiable type safe executionNo uninitialized variables, unsafe casts, bad array indexing or bad pointers

Garbage Collection

JIT compilation

Full error handling with exceptions

Common type systemCall, inherit, and source-level debug across different languages

Page 19: The 100% Inspiration Tour. An Introduction to Building Connected Mobile Applications Gavin King Academic Team, Microsoft UK gking@microsoft.com

Key Differences

Need to keep the footprint small!

No support for COM InteropGood support for calling native DLLs

RemotingFull support for XML Web Services

Reflection

No Generic SerializationDatasets can be serialized to XML

Subsets of other areas of functionality…

Page 20: The 100% Inspiration Tour. An Introduction to Building Connected Mobile Applications Gavin King Academic Team, Microsoft UK gking@microsoft.com

Evolution of the NotebookThe Tablet PC

The most powerful smart clientEnabled by tech advancements

Mobile connectivity built inA whole new usability paradigm based on digital ink

Slate or convertible devicesInk enabled applicationsHand writing applicationsGesturesPen input and control

Page 21: The 100% Inspiration Tour. An Introduction to Building Connected Mobile Applications Gavin King Academic Team, Microsoft UK gking@microsoft.com

Tablet Characteristics

Smart hardware capabilitiesElectro-magnetic digitiserFully connected

Ink is now a first class data typeNot a bitmap!

Includes full .NET FrameworkDevelopers can create new types of ink enabled applications

Don’t need a Tablet device to build ink apps

Page 22: The 100% Inspiration Tour. An Introduction to Building Connected Mobile Applications Gavin King Academic Team, Microsoft UK gking@microsoft.com

Tablet Design Considerations

Screen orientationLandscape versus Portrait

Control precisionPen taps are not as precise as the mouse

Pen obstructionHand can obscure pop-up menus

Ink expectationsDoes it make sense to use ink everywhere?

Page 23: The 100% Inspiration Tour. An Introduction to Building Connected Mobile Applications Gavin King Academic Team, Microsoft UK gking@microsoft.com

Building Ink Enabled Building Ink Enabled ApplicationsApplications

Page 24: The 100% Inspiration Tour. An Introduction to Building Connected Mobile Applications Gavin King Academic Team, Microsoft UK gking@microsoft.com

Windows XPWindows XPWindows CEWindows CE

MicrosoftMicrosoftSmartphoneSmartphone

Pocket PC + Pocket PC + PPC PhonePPC Phone

EditionEdition

Other Other Windows CE Windows CE

DevicesDevices

Notebook Notebook PCsPCs

Tablet PCsTablet PCs

Non-MS Non-MS PlatformsPlatforms

.NET .NET FrameworkFramework

.NET .NET Compact Compact

FrameworkFramework

Visual Studio .NETVisual Studio .NET

The Microsoft Mobile Platform

Page 25: The 100% Inspiration Tour. An Introduction to Building Connected Mobile Applications Gavin King Academic Team, Microsoft UK gking@microsoft.com

Summary

Moore’s Law is showing no signs of slowing!

Three key design scenarios for connected applications

Web

Smart

Ink Enabled

.NET is a highly functional and versatile development platform – especially for devices

Page 26: The 100% Inspiration Tour. An Introduction to Building Connected Mobile Applications Gavin King Academic Team, Microsoft UK gking@microsoft.com

Further Resources

Microsoft Developer Networkmsdn.microsoft.com

Smart Devices Communitysmartdevices.microsoftdev.com

Useful Smart Devices Siteswww.microsoft.com/windowsmobilewww.microsoft.com/windowsxp/tabletpc/ developers

Inspiration Tour Sitewww.microsoft.com/uk/inspiration

Page 27: The 100% Inspiration Tour. An Introduction to Building Connected Mobile Applications Gavin King Academic Team, Microsoft UK gking@microsoft.com

© 2003 Microsoft Corporation. All rights reserved.© 2003 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.This presentation is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS SUMMARY.