Chris Koenig - Krakow CodeCamp Slides

25
Chris Koenig Developer Evangelist http://blogs.msdn.com/chkoenig [email protected] 7 czerwca 2008

description

My presentation from the Krakow CodeCamp (http://codecamp.pl)

Transcript of Chris Koenig - Krakow CodeCamp Slides

Page 1: Chris Koenig - Krakow CodeCamp Slides

Chris KoenigDeveloper Evangelisthttp://blogs.msdn.com/[email protected]

7 czerwca 2008

Page 2: Chris Koenig - Krakow CodeCamp Slides

Web development has evolved so

that developers are expected to

deliver rich user experiences

Page 3: Chris Koenig - Krakow CodeCamp Slides

{ } Are Everywhere…

Page 4: Chris Koenig - Krakow CodeCamp Slides

Functional testing for ASP.NET AJAX and JavaScript

Integrated code metrics

Improved performance and scalability profiling

Faster, Easier Development

A powerful, new HTML designer

CSS management

JavaScript debugging and Intellisense®

Support for LINQ

New ListView Control

Less Effort, More Effect

ASP.NET AJAX built-in

Enhanced AJAX functionality

AJAX Control Toolkit

Nested master pages

Silverlight and Deep Zoom for Rich Interactive Applications

Integration with Expression Blend

Breakthrough User Experiences

{ }

Page 5: Chris Koenig - Krakow CodeCamp Slides

HTML is getting more and more complicated – we need help!

Visual Studio® 2008 provides a powerful new HTML designer that tames even the most complicated HTML; it includes

A split view that enables you to see your HTML from a source and design perspective at the same time.

Nested master pages to help you factor your HTML more efficiently

The Challenge

The Solution

{ } New HTML Designer

Page 6: Chris Koenig - Krakow CodeCamp Slides

Cascading Style Sheets (CSS) are ubiquitous because they promote accessibility and standards compliance

However, designer-generated CSS can be difficult/intimidating for developers to work with

New features for working with CSS style sheets

Intellisense for CSS

Filtered lists of which styles are being in a page or selection

Visually apply styles to elements

Even the most complicated, designer-created CSS styles are now simple to work with

The Challenge

The Solution

{ } CSS Manager

Page 7: Chris Koenig - Krakow CodeCamp Slides

It’s always about data!

The Challenge

Use LINQ directly in an ASP.NET page with LinqDataSource

Just another data source, so it works with any ASP.NET control

The Solution

{ } ASP.NET Support for LINQ

Page 8: Chris Koenig - Krakow CodeCamp Slides

Languages like JavaScript are more and more popular

Their type-less, dynamic nature presents challenges to traditional development activities like debugging and statement completion

Visual Studio 2008 makes JavaScript a 1st class development experience with

Syntax coloring

Intellisense

Debugging

{ } JavaScript Debugging and IntelliSense

The Challenge

The Solution

Page 9: Chris Koenig - Krakow CodeCamp Slides

{ }

Page 10: Chris Koenig - Krakow CodeCamp Slides

{ } Integrated ASP.NET AJAX

Visual Studio 2008 integrates and enhances ASP.NET AJAX:

Adding UpdatePanels and ScriptManagers to an existing ASP.NET application can dramatically decrease the number of post backs

All of the ASP.NET AJAX 1.0 controls and functionality are part of the tool box

ASP.NET AJAX Script Control Library available as a free download from CodePlex

The following new Project Items have been added:

AJAX Master Page

AJAX Client Library

AJAX Web Form

AJAX Client Control

AJAX Client Behavior Control

AJAX enabled WCF Service

The Solution

Page 11: Chris Koenig - Krakow CodeCamp Slides

{ } ASP.NET AJAX Control Toolkit

Add common features to AJAX applications with no code required

Free open source download from CodePlex

Sample site is available for viewing

Lots of tutorials, samples, documents and forums available

Write your own Extenders!

The Solution http://asp.net/ajax/ajaxcontroltoolkit/

Page 12: Chris Koenig - Krakow CodeCamp Slides

{ } Microsoft Silverlight and Deep Zoom

My customers are demanding more from my web UIs - how to I take advantage of high-definition video and rich interactive applications in ASP.NET?

Microsoft Silverlight provides a cross-browser, cross-platform, cross-device framework for building rich interactive applications on the web

Supports high-definition video via the VC-1 codec

Tooling support in Visual Studio 2008 and Expression Studio create a rich design and development experience

Silverlight Hosting offers high-bandwidth, high-quality streaming at low cost

DeepZoom provides the ability to smoothly present and navigate large amounts of visual information (images) regardless of the size of the data, and optimizing the bandwidth available to download it.

The Challenge

The Solution

Page 13: Chris Koenig - Krakow CodeCamp Slides

{ }

2D, Graphics

Audio, Video

Animations

Text, Text Input*

Controls*

Layout*

Styles/Templates*

Data Binding*

Networking

HTTP/S and Sockets*

.NET Support*

C# and VB.NET*

Python and Ruby*

LINQ*

XML APIs*

Generics*

HTML Integration*

JSON Serializer

Local storage*

Crypto APIs (AES)*

Threading*

* New in Silverlight 2

Page 14: Chris Koenig - Krakow CodeCamp Slides

Expression Blend and Visual Studio 2008 work better together

Based on a common language – XAML

Tooling supports editing of artifacts from within both environments

{ } Designer / Developer Workflow

Getting information from designers to developers is a manual, painful process

The Challenge

The Solution

Page 15: Chris Koenig - Krakow CodeCamp Slides

{ }

Page 16: Chris Koenig - Krakow CodeCamp Slides

{ } Web and Unit Testing improvements

AJAX-enabled web applications are very popular, but their asynchronous nature makes testing them very difficult

Practicing formal Test Driven Development (TDD) is very demanding for even the most sophisticated of development tools

Visual Studio 2008 Team System makes great strides towards making TDD more productive. These improvements include

Better Execution Times

Run Tests

Disable Deployment

Test Inheritance

Directly go to the Point of Failure

Visual Studio 2008 Team System enables captures HTTP requests whether

user or script generated

The Challenge

The Solution

Page 17: Chris Koenig - Krakow CodeCamp Slides

{ } JavaScript localization

Less than 15% of the world uses English as their everyday language

Visual Studio 2008 and ASP.NET provide many different ways to ensure that your web application is ready for the world

The ScriptManager supports a setting that enables client script to format a JavaScript Date or Number object based on a culture value; this does not require a post back to the server

Localized resources can be included in a ScriptManager registered JavaScript file and used throughout your application

The Challenge

The Solution

Page 18: Chris Koenig - Krakow CodeCamp Slides

{ } Integrated code metrics

How do developers know they are writing code that can be maintained and understood in the future?

Visual Studio 2008 Team System integrates sophisticated code metrics that enable developers to clearly understand how maintainable and complex the code they are building is; This understanding is gathered from the following metrics

Cyclometic complexity

Maintainability Index

Inheritance Depth

Class Coupling

Lines of code

The Challenge

The Solution

Page 19: Chris Koenig - Krakow CodeCamp Slides

{ } Integrated code metrics

Page 20: Chris Koenig - Krakow CodeCamp Slides

{ } Enhanced code analysis

Code reviews are time consuming, error prone and depends on ‘group’ knowledge

Code analysis examines every path code might take; looking for known problems and concerns; This feature has been greatly enhanced in Visual Studio 2008

Better discoverability of the feature through the Developer top-level menu

More flexible warning suppressions

Code analysis report comparison

Enhanced code analysis check-in policy

Code-aware spell checker

The Challenge

The Solution

Page 21: Chris Koenig - Krakow CodeCamp Slides

{ } Performance profiler

Understanding data gathered by a profiler is difficult and tedious

In Visual Studio 2008 Team System, the industrial strength profiler has been enhanced across the board; this includes

New data collection control

WCF support

New ability to visually compare performance data

The Challenge

The Solution

Page 22: Chris Koenig - Krakow CodeCamp Slides

Dynamically control

how performance

data is gathered.

Insert ‘marks’

which help you

correlate data

Compare 2

performance

reports against

each other

{ } Performance profiler

Page 23: Chris Koenig - Krakow CodeCamp Slides

{ }

Install Visual Studio 2008 Trial version availablehttp://msdn.microsoft.com/vstudio

Get the latest on ASP.NET http://www.asp.net/

Download Starter kits, hands-on-labs and videoshttp://msdn.microsoft.com/vstudio

Get the latest on Silverlighthttp://www.silverlight.net

Subscribe to my bloghttp://blogs.msdn.com/chkoenig

Page 24: Chris Koenig - Krakow CodeCamp Slides
Page 25: Chris Koenig - Krakow CodeCamp Slides

{ Dziękujemy! }

CodeCamp Kraków

http://codecamp.pl

7 czerwca 2008