26
Matt Gibbs, Development Manager UI Framework & Services Team (ASP.NET, ASP.NET AJAX/ATLAS, Silverlight) [email protected]

Matt Gibbs, Development Manager UI Framework

Embed Size (px)

Citation preview

Page 1: Matt Gibbs, Development Manager UI Framework

Matt Gibbs, Development Manager

UI Framework & Services Team

(ASP.NET, ASP.NET AJAX/ATLAS, Silverlight)

[email protected]

Page 2: Matt Gibbs, Development Manager UI Framework

Evolution of the WebA Better Web User ExperienceWhat’s in ASP.NET AJAXPartial Page Updates JavaScript FrameworkManaging ScriptNetworkingThe ASP.NET AJAX Toolkit

After this presentation, you will be able to create better web applications or improve on existing ones using ASP.NET AJAX.

Page 5: Matt Gibbs, Development Manager UI Framework
Page 6: Matt Gibbs, Development Manager UI Framework

The Next Generation of Web applications will be• More richly differentiated

• More responsive to user input

• Naturally interactive

• Richly personalized for each user

• Immersive beyond a single site

Page 7: Matt Gibbs, Development Manager UI Framework

Consumer Software

HTML DHTML WinFX

Page 8: Matt Gibbs, Development Manager UI Framework

Productivity Software

Hotmail Windows Live Mail Office: Outlook

Page 9: Matt Gibbs, Development Manager UI Framework

Firefox

Opera

IE

Safari

Microsoft AJAX Library

UI effects and behaviors

Component and UI model

Networking

Base class library

Core runtime

ASP.NET AJAX Extensions

Web Services Integration

Web Services Bridge

Membership, Roles &

Personalization Support

ASP.NET Server Controls

PHP, ColdFusion, etc.

Browser Clients Web Server

Page 10: Matt Gibbs, Development Manager UI Framework

Browser

Presentation

HTML/CSS

Microsoft AJAX Library

Client

Application

Services

Component

and UI

Framework,

Controls

Server Application

Pages

ASP.NET AJAX Extensions

Application

Services

Page

Framework,

Server

Controls

Input Data

Updated UI + Behavior

Initial Rendering

(UI + Behavior)

UI Behavior

Managed Code

App Logic/Data

Managed CodeA

Page 11: Matt Gibbs, Development Manager UI Framework

Browser

Presentation

HTML/CSS

Microsoft AJAX Library

Client

Application

Services

Component

and UI

Framework,

Controls

Server Application

Pages

ASP.NET AJAX Extensions

Application

Services

Page

Framework,

Server

Controls

Input Data

Data

Initial Rendering

(UI + Behavior)

UI Behavior

Javascript

App Logic/Data

Managed Code

Web Service

Proxies

Page 12: Matt Gibbs, Development Manager UI Framework

Server-centric web sites and applications• Work with existing server application model• Keep core UI / application logic on server• Improve responsiveness, interactivity, personalization

Client-centric browser applications• Fully exploit DHTML in the presentation tier

• Use AJAX for data, services, composition• Enable new immersive experiences

ASP.NET AJAX provides a great framework for both!

Page 13: Matt Gibbs, Development Manager UI Framework

AJAX patterns for ASP.NET applications• Works with existing ASP.NET page model

• Little or no JavaScript or async programming required

• WYSIWYG and source support in Visual Studio

Integrated end-to-end support in Visual Studio• Security: authentication and authorization

• User profiles and personalization data

• Web service access

• Localization

Page 14: Matt Gibbs, Development Manager UI Framework

Mark sections of the page for incremental

updating

Little or no change to existing server code

ASP.NET AJAX handles the infrastructure

Automatic fallback for non-AJAX browsers

Includes a toolbox of patterns

• Triggers, Update progress, timers, error handling

<atlas:UpdatePanel id=“u1” runat=“server”>

<ContentTemplate>

<!-- This content can be dynamically updated! ->

<asp:Calendar id=“cal1” runat=“server”/>

<ContentTemplate>

</atlas:UpdatePanel>

Page 15: Matt Gibbs, Development Manager UI Framework

UpdatePanel

Partial Page updates

Independent Triggers

Conditional Updates

Progress Indicator

and the Timer.

Page 16: Matt Gibbs, Development Manager UI Framework

Challenges• Complexity of writing applications in DHTML And

JavaScript• Browser Compatibility• Performance• Integration with server programming model

Principles:• Use familiar patterns and disciplines in JavaScript

development• Push UI constructs carefully• Follow SOA design practices

Page 17: Matt Gibbs, Development Manager UI Framework

Patterns for building script applications and componentsType system for Javascript

Base class libraries

Full component model

Framework for AJAX development Full networking stack

Integration with ASP.NET services

Asynchronous databindings

Components for client-side DHTML UIClient data

Controls

Databinding, templates, validation

Microsoft AJAX Library

UI effects and behaviors

Component and UI model

Networking

Base class library

Core runtime

Page 18: Matt Gibbs, Development Manager UI Framework

A networking library for asynchronous services

High-level classes for requests/responses

Pluggable data format and wire protocol

Easy access to server-hosted services

Easy to include a proxy to a server-hosted service

Automatically takes care of proxy generation, serialization

Automatic serialization of .NET types to/from JavaScript

Integrated with ASP.NET application services

Authentication, authorization, session state, caching

Membership, roles, profile

Page 19: Matt Gibbs, Development Manager UI Framework

Microsoft AJAX Library

Events

Object – Oriented JavaScript

JSON proxies

Debug facilities

Page 20: Matt Gibbs, Development Manager UI Framework

Easy access to server-based resources• User profile data

• Remote authentication

• Role information (coming soon)

Page 21: Matt Gibbs, Development Manager UI Framework

ASP.NET AJAX Application

Services

Authentication

User Profile Information

Page 22: Matt Gibbs, Development Manager UI Framework

PlatformNew and immersive visual experiencesEnabling the connected WebNew client-centric experiences like offline

Programming modelCode scalability and manageabilityTools

Browser experienceA host for Web applicationPerformance, security, privacy, personalization

ServerBetter support for connected Web applications

Page 23: Matt Gibbs, Development Manager UI Framework

ASP.NET AJAX Release

ASP.NET AJAX

v1.0

Core product release

Fully supported

by Microsoft

Product Support

Client and server

components

ASP.NET AJAX

Control Toolkit

Rich collection

of components built

on top of core

Built and supported

in partnership with

the community

Com

munity c

o-d

evelo

pm

ent

ASP.NET AJAX

Futures CTP

Preview of new,

not yet fully baked

features

Updated regularly

Rapid

innovatio

n a

nd e

xperim

enta

tion

Page 24: Matt Gibbs, Development Manager UI Framework

ASP.NET AJAX Toolkit

Page 25: Matt Gibbs, Development Manager UI Framework

ASP.NET AJAX website and forums

http://ajax.asp.nethttp://forums.asp.net/default.aspx?GroupID=34

Professional ASP.NET AJAXhttp://www.wrox.com/WileyCDA/WroxTitle/productC

d-0470109629.html

Page 26: Matt Gibbs, Development Manager UI Framework