Upload
preston
View
31
Download
0
Embed Size (px)
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
Citation preview
2
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
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
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
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!
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
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
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
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)
11
VS2010: IDE Enhancements
Highlight references
Quick Search
Call Hierarchy
Code GenerationTest-driven development
New WPF text editor
More reliable & modular
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
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
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);
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
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
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;
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
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
21
Q & A
22
Related Content
channel9.msdn.comVideos ShowsPodcasts Forums
Microsoft Community Tech Days – GalwayMarch 3, 2009
http://blog.developers.ie/cgreen My Blog