keynote topics

22

Upload: preston

Post on 06-Jan-2016

31 views

Category:

Documents


0 download

DESCRIPTION

Keynote Topics. Visual Studio Team System Eliminate the 'no repro' scenario QA can include call stack, video, sys info Testers can load up saved environment and debug - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Keynote Topics
Page 2: Keynote Topics

2

Page 3: Keynote Topics

3

Keynote TopicsVisual Studio Team System

Eliminate the 'no repro' scenarioQA can include call stack, video, sys info

Testers can load up saved environment and debug

Discover code structure using Architecture Explorer which walks your dependency map and gives you a graph of the entire system and all dependencies

Build comprehensive UML models of your core code

Lab Management feature allows you to provision virtual instances of your environment and recover them for repro scenarios

Page 4: Keynote Topics

4

Keynote Topics

Code Focused FeaturesWith VS2010 we have built in core editing and discovery features so you can do refactoring right out of the box and use test driven style development

Quick Search allows for easy searching across projects

Easy discovery of the call hierarchies

Parallelism Tools and Support

Enhanced versioning and SCC integration

Page 5: Keynote Topics

5

Keynote Topics

New Web FeaturesVS2010 will have built-in support for the new MVC framework

Inclusion of the JQuery library including intellisense support (available for VS2008 as an add-on)

New deployment helpers that include adding transforms for your web.config to avoid errors

A million new code snippets to make html coding easier

Page 6: Keynote Topics

6

Keynote Topics

SharePoint ToolsVS2010 has support for building SharePoint projects

Server explorer for viewing sites and lists right in VS

You can create imports from wsp, add event receivers, and workflow parts

A visual designer is included to author parts using WYSIWYG

A new deployment explorer allows you to build up your deployment packages

F5 just works!

Page 7: Keynote Topics

7

Topics for Self-Discovery

Windows Azure – Cloud services

Model-View-Controller (MVC) design pattern

Silverlight v2.0 +

jQuery

VSTS & Team System Lab Management

Major C++ Investment

Ancillaries: IIS v7, IE v8, Vista Bridge, IDE extensions

Page 8: Keynote Topics

8

VS2008 & .NET V3.5 RecapJavascript Debugging, XElement class for building XML, ListView - a powerful designer supported repeater control, Javascript Debugging, additional refactorings, SQL DB publishing, Ajax is a first class citizen, IQueryable, and Javascript Debugging

Anonymous types var dt = DateTime.Today; var anon = new { Name = "Terry", Age = 34 };

Automatic Properties public string FirstName {get; set;} public int Age { get; private set; }

Object Initalizers Person person = new Person { FirstName="Chris", LastName="Green", Age=33 };

Collection Initalizers List<Person> people = new List<Person> { new Person { FirstName = "Chris", LastName = "Green", Age = 33 }, ... };

Extension Methods public static int LastDay (this DateTime dt) { return DateTime.DaysInMonth(dt.Year, dt.Month); }

Lambda Expressions Func<int, int> Square = x => x * x; int nSquare = Square(5); int[] numbers = { 5, 4, 1, 3 }; int oddNumbers = numbers.Count(n => n % 2 == 1);

LINQ var initials = from person in people where person.City == "Galway“ select person.FirstName.Remove(1) + person.LastName.Remove(1);

Did I mention Javascript Debugging?

Lambda Expressions

Page 9: Keynote Topics

9

VS2008 & .NET V3.5 SP 1 Overview

ADO.NET Entity Framework releaseVery similar to Linq To SQL

Generate data model

conceptual model < mapping > static (actual db) model

Data ServicesExposes and takes IQueryable<T> so datasets very easy to work with in a LINQ like way

Routing lets URI act like a Linq query

http://Root/my.svc/Customers/35/FirstName

Page 10: Keynote Topics

10

VS2008 & .NET V3.5 SP 1 Overview

Ajax enhancementsHistory Points

Addresses problem that users lose ability to hit back button

Script combiningTo improve performance allows combining libraries

Other EnhancementsImproved javascript intellisense

Improved web designer performance (bugs/regressions addressed)

Page 11: Keynote Topics

11

VS2010: IDE Enhancements

Highlight references

Quick Search

Call Hierarchy

Code GenerationTest-driven development

New WPF text editor

More reliable & modular

Page 12: Keynote Topics

12

Free CodeRush Xpress!

announcing

Page 13: Keynote Topics

13

VS2010: Web Features

Document Outline extended

HTML Snippets

Jscript Intellisense V2See dynamically created members

File reference hints

XML document comments

Web Deployment

Improved CSS 2.1 Support & Standards Compliance

Page 14: Keynote Topics

14

C# v4.0

HistoryV1 – Managed Code big emphasis

V2 – Generics; finished the language

V3 – LINQ

V4 – DynamicCall any method of a dynamic object and the compiler won’t complain

No intellisense possible

Will call during runtime

Lots of power to be explored here

Page 15: Keynote Topics

15

C# v4.0

Optional ParametersNamed parameters

Can also skip optional parametersPublic StreamReader OpenTextFile(string sFile, bool bReadOnly = true, int nBufferSize = 1024);

sr = OpenTextFile(“foo.txt”, buffersize:4096);

COM InteroperabilityNo more “ref dummy”!

Will get: doc.SaveAs(“Test.docx”); //Winword SaveAs

Versus: doc.SaveAs(“Test.docx”, ref dummy, ref dummy, ref dummy, ref dummy, ref dummy, ref dummy, ref dummy, ref dummy, ref dummy, ref dummy, ref dummy, ref dummy, ref dummy, ref dummy);

Page 16: Keynote Topics

16

C# v4.0

COM Interoperability (cont.)Automatic dynamic mapping so less unnecessary casting

Interop type embedding

No more bringing in PIA; includes in your assembly

Deploy office solutions to SharePoint

Safe Co and Contra-variance

Compiler as a serviceCompiler black box opened up to be used and extended

C# and VB to co-evolve in the future

Page 17: Keynote Topics

17

Parallelism

Need to start thinking about parallelismUnderstand goals vs. usage

Measure existing performance. VS2010 has tools to do this

Tuning Performance

Typically we start with sequential programming and add parallelism later

VS2010 has Profiler tool for tuning performance

Identify opportunities for parallelism

Page 18: Keynote Topics

18

Parallelism

IDE Tools to make life easier

Parallel ExtensionsFirst class citizen in VS2010 (v3.5 CTP Preview available)

Parallel.For and Parallel.ForEach

Still need to use critical sections around shared resources inside loop

Parallel extended IEnumerable to perform queries much faster

var q = from n in arr.AsParallel() where IsPrime(n) select n;

Page 19: Keynote Topics

19

AJAX: Overview of Usage Patterns1. Server-Side ASP.NET

Using server-side controls

2. Server-Side ASP.NET AJAXUsing the UpdatePanel control (wisely!)

3. Client-Side ASP.NET AJAXUsing the Microsoft AJAX Library (services and scripts)

4. Client-Side ASP.NET AJAXUsing client-side templates and controls

5. Client-Side ASP.NET AJAXUsing declarative client-side controls

Page 20: Keynote Topics

20

AJAX v4.0

New FeaturesDeclarative Controls

XML is eXtensible!

xmlns:dataview=“javascript:Sys.UI.DataView”

Data Source Control

Command Bubbling

Live BindingsUsed to execute JavaScript in the context of the current data item

Page 21: Keynote Topics

21

Q & A

Page 22: Keynote Topics

22

Related Content

channel9.msdn.comVideos ShowsPodcasts Forums

Microsoft Community Tech Days – GalwayMarch 3, 2009

http://blog.developers.ie/cgreen My Blog