SlideShare a Scribd company logo
1 of 103
MSDN Presents… ,[object Object]
What’s New in .NET 4.0
SharePoint 2010 for Developers,[object Object]
dbost@microsoft.com
davebost.com
@davebost
http://thirstyDeveloper.com @thirstyd
get on with it…
What’s New:Visual Studio 2010
Huge List of New Features! Breakpoint Labeling Breakpoint Searching Breakpoint Import/Export Dynamic Data Tooling WPF Tree Visualizer Call Hierarchy Improved WPF Tooling Historical Debugging Mini-Dump Debugging Quick Search Better Multi-Monitor  Support Highlight References Parallel Stacks Window Parallel Tasks Window Document Map Margin Generate From Usage Concurrency Profiler Inline Call Tree Extensible Test Runner MVC Tooling Web Deploy JQuery Intellisense SharePoint Tooling HTML Snippets Web.config Transformation Click-Once Enhancements for Microsoft Office
Overview General Improvements Debugging Parallelism Web Extensibility
General Improvements
Highlighting References CTRL+SHIFT+DOWN ARROW (forward) CTRL+SHIFT+UP ARROW (reverse)  Automatic highlighting of a symbol Can be used with declarations, references, and many other symbols
Navigate To CTRL + , Provides search-as-you-type support for symbols Enables quick searching based on case usage
Docking Windows New Guide Diamond Windows can be docked anywhere Can now pull document windows outside the IDE
Call Hierarchy (C# only) CTRL + K, T Used to see calls to and from a method Great way to see calls at design time
Zoom CTRL + Mouse Wheel New feature that enhances the size of your code Very useful for pair programming (or similar scenarios)
Generate from Usage Used to automatically create stub code Enables you to use classes and members before you define them
Intellisense Suggestion Mode CTRL + ALT + SPACE Used when classes and members are used before they are defined Helps to reduce situations where IntelliSense inserts unintended text into the editor
General Improvements
Debugging
Breakpoints Can add labels to breakpoints All breakpoints are now searchable Import / Export now available
Floating Data Tips
Threading Completely redesigned threading window Now provides filtering, call-stack searching and expansion, and grouping New columns added: Affinity masks Process names Managed IDs
Dumps You can save a dump file and debug it later, either on the build computer or on another computer that has the source files and debugging symbols Can read dump files that contain information about managed code, unmanaged code, or a mixture of both
Parallel  Tasks and Stacks Used to visualize and debug parallel code that is written in C++, C#, or Visual Basic Using the Parallel Stacks window, you can view multiple call stacks at the same time in a single view Parallel Tasks allow you to see multiple tasks and the corresponding status of those tasks
Debugging
Web
Code Snippets Snippets are now available in web applications Two major contextual areas: JavaScript HTML
Code Snippets
DyanmicIntellisense for JavaScript
Web.config Transforms 	You can create configuration file transforms to modify your project's Web.config file to work with various deployment environments http://blogs.msdn.com/webdevtools
One-Click Web Deployment With Visual Studio 2010, MSDeploy is integrated directly into Visual Studio Once you have your profiles configured, you can easily deploy to a given environment with a single click
Web
Extensibility
The Visual Studio Gallery http://visualstudiogallery.msdn.microsoft.com
Making Your Extensions http://msdn.microsoft.com/en-us/vsx/default.aspx
Extensions
Resources What’s New in Visual Studio 2010http://msdn.microsoft.com/en-us/library/bb386063(VS.100).aspx Visual Studio on MSDNhttp://msdn.microsoft.com/vstudio Visual Studio 2010 Tips and Trickshttp://blogs.msdn.com/zainnab
15 Minute Break
What’s New in the.NET Framework 4.0
From There to Here… SP1 3.5 3.0 .NET 1.0 .NET 1.1 .NET 2.0 .NET 4 2002 2003 2008 CTP! 2005-08 CLR 1.0 CLR 1.1 CLR 2.0 CLR 4
.NET Framework Architecture WPF Win Forms DLR ASP.NET WCF And more! LINQ Base Class Libraries Common Language Runtime JIT & NGEN Garbage Collector Security Model Exception Handling Loader & Binder
Overview Client Profile Visualization Data Programming Languages Common Language Runtime (CLR) Base Class Libraries (BCL) Web
Client Profile
Client Profile Subset of the full .NET Framework  Leveraged for faster deployments Two Sections Client Profile Extended Streamlined pieces of  Windows Presentation Foundation (WPF) Windows Forms Windows Communication Foundation (WCF) ClickOnce
Visualization
Windows Presentation Foundation(WPF) New Controls DataGrid Calendar DatePicker Visual State Manager Touch and Manipulation Text
Calendar and DatePickerControsl
Data
Pluralization & Foreign Keys
Model-First Existing Database Generated Entity Data Model Database First (v1) Generated Database Entity Data Model Model First (v2)
Model-First
POCO Class Definition Everything Navigation Property Definition Scalar Property Definition
Deferred / Lazy Loading Explicit Deferred / lazy
Complex Types VS.
Programming Languages
Visual Basic Auto-Implemented Properties Shortened syntax that enables you to quickly specify a property of a class without having to write code Collection Initializer Shortened syntax that enables you to create a collection and populate it with an initial set of values Implicit Line Continuation Enables you to continue a statement on the next consecutive line without using the underscore character  Public Property Owner As String = "DefaultName" Function AddStuff( ByValfirst As Integer, ByValsecond As Integer                                                 ) As Integer Returnfirst +                                    second End Function Public PropertyItems As New List(Of String)= {“M“, “T“, “W“}
C# Dynamic Type Operations that contain expressions of type dynamic are not resolved or type checked by the compiler. The compiler packages together information about the operation, and that information is later used to evaluate the operation at run time Optional and Named Parameters Named arguments enable you to specify an argument for a particular parameter by associating the argument with the parameter's name rather than with the parameter's position in the parameter list. Optional  arguments enable you to omit arguments for some parameters. Both techniques can be used with methods, indexers, constructors, and delegates.
C#:       - dynamic keyword      - named and optional parameters
F# IDE support for F# Interactive F# for prototyping code Asynchronous constructs Parallel constructs Immutable data types
Common Language Runtime(CLR)
Existing Side-By-Side (SxS) 2.0 add-in 3.0 add-in 3.5 add-in 1.1 add-in 3.5 .NET 1.1 3.0 .NET 2.0 Host Process (i.e. Outlook)
In-Process Side-By-Side (SxS) 2.0 add-in 3.0 add-in 3.5 add-in 4.0 add-in 3.5 .NET 4.0 3.0 .NET 2.0 Host Process (i.e. Outlook)
Base Class Libraries(BCL)
Task Parallel Library (TPL) ,[object Object]
System.Threading
System.Threading.Tasks// Sequential foreach (var item in sourceCollection)  {      Process(item);  }  // Parallel Parallel.ForEach (sourceCollection, item => Process(item));
New Sync Primitives in .NET 4 Thread-safe, scalable collections IProducerConsumerCollection<T> ConcurrentQueue<T> ConcurrentStack<T> ConcurrentBag<T> ConcurrentDictionary<TKey,TValue> Phases and work exchange Barrier  BlockingCollection<T> CountdownEvent Partitioning {Orderable}Partitioner<T> Partitioner.Create Exception handling AggregateException Initialization Lazy<T> LazyInitializer.EnsureInitialized<T> ThreadLocal<T> Locks ManualResetEventSlim SemaphoreSlim SpinLock SpinWait Cancellation CancellationToken{Source} ManyCore: http://microoftpdc.com/Sessions/P09-09  (50:00)
Parallelize For Loops Control flow is a primary source of work Parallelizable when iterations are (or can be made) independent Synchronous All work quiesces, regularly or exceptionally Lots of knobs Cancelation, breaking, task-local state, custom partitioning, scheduling, degree of parallelism foreach(var item in data)  {    work(item); } for (int i = 0; i < n; i++)  {    work(i); } StatementA(); StatementB; StatementC(); Parallel.ForEach(data, item=> {    work(item); }); Parallel.For(0, n, i=>  {    work(i); }); Parallel.Invoke(    () => StatementA(),     () => StatementB,     () => StatementC()); ManyCore: http://microsoftpdc.com/Sessions/P09-09
Parallel LINQ (PLINQ) ,[object Object]
Extension methods for the IParallelEnumerable interface
Additional operators for parallel operationsfrom n in names.AsParallel().WithDegreeOfParallelism(ProcessorsToUse.Value)                        where n.Name.Equals(queryInfo.Name, StringComparison.InvariantCultureIgnoreCase) && n.State == queryInfo.State &&  n.Year >= yearStart && n.Year <= yearEnd orderbyn.Year ascending                        select n;
Parallelism
Design By Contract System.Diagnostics.Contracts Code Contracts introduce a way to specify contractual information that is not represented by a method or type’s signature alone Scenarios for using contracts include: Perform static bug finding, which enables some bugs to be found without executing the code Create guidance for automated testing tools to enhance test coverage Create a standard notation for code behavior, which provides more information for documentation public Boolean ExampleMethod(String parameter) { if (parameter == null) throw newArgumentNullException("parameter must be non-null"); } http://msdn.microsoft.com/devlabs
Data Types BigInteger Immutable type that represents an arbitrarily large integer whose value in theory has no upper or lower bounds SortedSet<T> Provides a self-balancing tree that maintains data in sorted order after insertions, deletions, and searches
I/O Memory-Mapped File Used to edit very large files and to create shared memory for inter-process communication Stream.CopyTo Allows you to copy the contents of one stream into another
Web
Model-View-Controller (MVC) Huge investment from Microsoft Alternative to WebForms Modular Architecture MVC 2.0 Integrated in .NET Framework 4.0
ASP.NET Webforms Ability to set meta tags More control over view state Added and Updated browser definition files ASP.NET Routing The ability to persist selected rows in data controls More control over rendered HTML in the FormView and ListView controls Filtering support for data source controls
Dynamic Data A RAD experience for quickly building a data-driven Web site Automatic validation that is based on constraints defined in the data model The ability to easily change the markup that is generated for fields in the GridView and DetailsView controls by using field templates
Web
Resources .NET Developer Centerhttp://msdn.microsoft.com/net Data Developer Centerhttp://msdn.microsoft.com/data Concurrency (Parallelism)http://msdn.microsoft.com/concurrency ASP.NET MVChttp://asp.net/mvc WPF and Windows Formshttp://windowsclient.net
15 Minute Break
SharePoint Development withVisual Studio 2010
SharePoint 2010Enhancements New object model LINQ for SharePoint Native support for Silverlight Sandboxed Solutions External data lists
Overview SharePoint Projects Event Receivers Deployment & Debugging Web Parts
SharePoint Projects
Server Explorer
Packages
SharePoint Projects Then now
Empty Project
SharePoint Projects
Event Receivers
Event Receivers
Creating Event Receivers
Event Receivers
Deployment & Debugging
Deployment:  Project Creation
Properties:SharePoint Tab
Deployment
Debugging
Deployment & Debugging

More Related Content

What's hot

Introduction to dot net framework by vaishali sahare [katkar]
Introduction to dot net framework by vaishali sahare [katkar]Introduction to dot net framework by vaishali sahare [katkar]
Introduction to dot net framework by vaishali sahare [katkar]vaishalisahare123
 
Lecture 1 introduction to vb.net
Lecture 1   introduction to vb.netLecture 1   introduction to vb.net
Lecture 1 introduction to vb.netMUKALU STEVEN
 
Automatic answer checker
Automatic answer checkerAutomatic answer checker
Automatic answer checkerYesu Raj
 
.Net Overview -- Training (Lesson 1)
.Net Overview -- Training (Lesson 1).Net Overview -- Training (Lesson 1)
.Net Overview -- Training (Lesson 1)Rishi Kothari
 
Architecture of .net framework
Architecture of .net frameworkArchitecture of .net framework
Architecture of .net frameworkThen Murugeshwari
 
ASP.NET 01 - Introduction
ASP.NET 01 - IntroductionASP.NET 01 - Introduction
ASP.NET 01 - IntroductionRandy Connolly
 
Introduction to vb.net
Introduction to vb.netIntroduction to vb.net
Introduction to vb.netJaya Kumari
 
Introduction to vb.net
Introduction to vb.netIntroduction to vb.net
Introduction to vb.netsuraj pandey
 
Dotnet Basics Presentation
Dotnet Basics PresentationDotnet Basics Presentation
Dotnet Basics PresentationSudhakar Sharma
 
Aspnet architecture
Aspnet architectureAspnet architecture
Aspnet architecturephantrithuc
 
.Net framework
.Net framework.Net framework
.Net frameworkArun Pal
 
Developing Microsoft .NET Applications for Windows
Developing Microsoft .NET Applications for Windows Developing Microsoft .NET Applications for Windows
Developing Microsoft .NET Applications for Windows Rishi Kothari
 
Microsoft .NET Development Platform Internationalization
Microsoft .NET Development Platform InternationalizationMicrosoft .NET Development Platform Internationalization
Microsoft .NET Development Platform InternationalizationRishi Kothari
 
Migrating To Visual Studio 2008 & .Net Framework 3.5
Migrating To Visual Studio 2008 & .Net Framework 3.5Migrating To Visual Studio 2008 & .Net Framework 3.5
Migrating To Visual Studio 2008 & .Net Framework 3.5Clint Edmonson
 
Dotnet Frameworks Version History
Dotnet Frameworks Version HistoryDotnet Frameworks Version History
Dotnet Frameworks Version Historyvoltaincx
 
Introduction to .net framework
Introduction to .net frameworkIntroduction to .net framework
Introduction to .net frameworkArun Prasad
 

What's hot (20)

Introduction to dot net framework by vaishali sahare [katkar]
Introduction to dot net framework by vaishali sahare [katkar]Introduction to dot net framework by vaishali sahare [katkar]
Introduction to dot net framework by vaishali sahare [katkar]
 
Lecture 1 introduction to vb.net
Lecture 1   introduction to vb.netLecture 1   introduction to vb.net
Lecture 1 introduction to vb.net
 
Automatic answer checker
Automatic answer checkerAutomatic answer checker
Automatic answer checker
 
As Pdotnet
As PdotnetAs Pdotnet
As Pdotnet
 
.Net Overview -- Training (Lesson 1)
.Net Overview -- Training (Lesson 1).Net Overview -- Training (Lesson 1)
.Net Overview -- Training (Lesson 1)
 
.net framework
.net framework.net framework
.net framework
 
Architecture of .net framework
Architecture of .net frameworkArchitecture of .net framework
Architecture of .net framework
 
Vb.net ide
Vb.net ideVb.net ide
Vb.net ide
 
ASP.NET 01 - Introduction
ASP.NET 01 - IntroductionASP.NET 01 - Introduction
ASP.NET 01 - Introduction
 
Working in Visual Studio.Net
Working in Visual Studio.NetWorking in Visual Studio.Net
Working in Visual Studio.Net
 
Introduction to vb.net
Introduction to vb.netIntroduction to vb.net
Introduction to vb.net
 
Introduction to vb.net
Introduction to vb.netIntroduction to vb.net
Introduction to vb.net
 
Dotnet Basics Presentation
Dotnet Basics PresentationDotnet Basics Presentation
Dotnet Basics Presentation
 
Aspnet architecture
Aspnet architectureAspnet architecture
Aspnet architecture
 
.Net framework
.Net framework.Net framework
.Net framework
 
Developing Microsoft .NET Applications for Windows
Developing Microsoft .NET Applications for Windows Developing Microsoft .NET Applications for Windows
Developing Microsoft .NET Applications for Windows
 
Microsoft .NET Development Platform Internationalization
Microsoft .NET Development Platform InternationalizationMicrosoft .NET Development Platform Internationalization
Microsoft .NET Development Platform Internationalization
 
Migrating To Visual Studio 2008 & .Net Framework 3.5
Migrating To Visual Studio 2008 & .Net Framework 3.5Migrating To Visual Studio 2008 & .Net Framework 3.5
Migrating To Visual Studio 2008 & .Net Framework 3.5
 
Dotnet Frameworks Version History
Dotnet Frameworks Version HistoryDotnet Frameworks Version History
Dotnet Frameworks Version History
 
Introduction to .net framework
Introduction to .net frameworkIntroduction to .net framework
Introduction to .net framework
 

Viewers also liked

Using Microsoft ASP.NET MVC to Easily Extend a Web Site into the Mobile Space
Using Microsoft ASP.NET MVC to Easily Extend a Web Site into the Mobile SpaceUsing Microsoft ASP.NET MVC to Easily Extend a Web Site into the Mobile Space
Using Microsoft ASP.NET MVC to Easily Extend a Web Site into the Mobile Spacegoodfriday
 
NoSQL Database in .NET Apps
NoSQL Database in .NET AppsNoSQL Database in .NET Apps
NoSQL Database in .NET AppsShiju Varghese
 
The .net remote systems
The .net remote systemsThe .net remote systems
The .net remote systemsRaghu nath
 
Microsoft .NET Platform
Microsoft .NET PlatformMicrosoft .NET Platform
Microsoft .NET PlatformPeter R. Egli
 
Overview of Microsoft .Net Remoting technology
Overview of Microsoft .Net Remoting technologyOverview of Microsoft .Net Remoting technology
Overview of Microsoft .Net Remoting technologyPeter R. Egli
 
Introduction to .NET Framework and C# (English)
Introduction to .NET Framework and C# (English)Introduction to .NET Framework and C# (English)
Introduction to .NET Framework and C# (English)Vangos Pterneas
 
C# Tutorial
C# Tutorial C# Tutorial
C# Tutorial Jm Ramos
 

Viewers also liked (12)

Using Microsoft ASP.NET MVC to Easily Extend a Web Site into the Mobile Space
Using Microsoft ASP.NET MVC to Easily Extend a Web Site into the Mobile SpaceUsing Microsoft ASP.NET MVC to Easily Extend a Web Site into the Mobile Space
Using Microsoft ASP.NET MVC to Easily Extend a Web Site into the Mobile Space
 
ASP.NET MVC for Begineers
ASP.NET MVC for BegineersASP.NET MVC for Begineers
ASP.NET MVC for Begineers
 
NoSQL Database in .NET Apps
NoSQL Database in .NET AppsNoSQL Database in .NET Apps
NoSQL Database in .NET Apps
 
The .net remote systems
The .net remote systemsThe .net remote systems
The .net remote systems
 
Microsoft .NET Platform
Microsoft .NET PlatformMicrosoft .NET Platform
Microsoft .NET Platform
 
Overview of Microsoft .Net Remoting technology
Overview of Microsoft .Net Remoting technologyOverview of Microsoft .Net Remoting technology
Overview of Microsoft .Net Remoting technology
 
Web api
Web apiWeb api
Web api
 
Next .NET and C#
Next .NET and C#Next .NET and C#
Next .NET and C#
 
Introduction to .NET Framework and C# (English)
Introduction to .NET Framework and C# (English)Introduction to .NET Framework and C# (English)
Introduction to .NET Framework and C# (English)
 
C# basics
 C# basics C# basics
C# basics
 
C#/.NET Little Wonders
C#/.NET Little WondersC#/.NET Little Wonders
C#/.NET Little Wonders
 
C# Tutorial
C# Tutorial C# Tutorial
C# Tutorial
 

Similar to MSDN Presents: Visual Studio 2010, .NET 4, SharePoint 2010 for Developers

A Lap Around Visual Studio 2010
A Lap Around Visual Studio 2010A Lap Around Visual Studio 2010
A Lap Around Visual Studio 2010Abram John Limpin
 
Visual Studio .NET2010
Visual Studio .NET2010Visual Studio .NET2010
Visual Studio .NET2010Satish Verma
 
Overview of VS2010 and .NET 4.0
Overview of VS2010 and .NET 4.0Overview of VS2010 and .NET 4.0
Overview of VS2010 and .NET 4.0Bruce Johnson
 
A Sneak Peek At Visual Studio 2010 And .Net Framework 4.0
A Sneak Peek At Visual Studio 2010 And .Net Framework 4.0A Sneak Peek At Visual Studio 2010 And .Net Framework 4.0
A Sneak Peek At Visual Studio 2010 And .Net Framework 4.0Antonio Chagoury
 
Whidbey old
Whidbey old Whidbey old
Whidbey old grenaud
 
Visual Studio 2010 and .NET 4.0 Overview
Visual Studio 2010 and .NET 4.0 OverviewVisual Studio 2010 and .NET 4.0 Overview
Visual Studio 2010 and .NET 4.0 Overviewbwullems
 
Daniel Egan Msdn Tech Days Oc Day2
Daniel Egan Msdn Tech Days Oc Day2Daniel Egan Msdn Tech Days Oc Day2
Daniel Egan Msdn Tech Days Oc Day2Daniel Egan
 
MS Day EPITA 2010: Visual Studio 2010 et Framework .NET 4.0
MS Day EPITA 2010: Visual Studio 2010 et Framework .NET 4.0MS Day EPITA 2010: Visual Studio 2010 et Framework .NET 4.0
MS Day EPITA 2010: Visual Studio 2010 et Framework .NET 4.0Thomas Conté
 
Lap around .net 4
Lap around .net 4Lap around .net 4
Lap around .net 4Abdul Khan
 
Whats New In 2010 (Msdn & Visual Studio)
Whats New In 2010 (Msdn & Visual Studio)Whats New In 2010 (Msdn & Visual Studio)
Whats New In 2010 (Msdn & Visual Studio)Steve Lange
 
Dotnetintroduce 100324201546-phpapp02
Dotnetintroduce 100324201546-phpapp02Dotnetintroduce 100324201546-phpapp02
Dotnetintroduce 100324201546-phpapp02Wei Sun
 
Data Driven WPF and Silverlight Applications
Data Driven WPF and Silverlight ApplicationsData Driven WPF and Silverlight Applications
Data Driven WPF and Silverlight ApplicationsDave Allen
 
Intro to .NET for Government Developers
Intro to .NET for Government DevelopersIntro to .NET for Government Developers
Intro to .NET for Government DevelopersFrank La Vigne
 
San Diego ASP.NET Meeting Oct 21st
San  Diego  ASP.NET Meeting Oct 21stSan  Diego  ASP.NET Meeting Oct 21st
San Diego ASP.NET Meeting Oct 21stWoody Pewitt
 
2008 - TechDays PT: Building Software + Services with Volta
2008 - TechDays PT: Building Software + Services with Volta2008 - TechDays PT: Building Software + Services with Volta
2008 - TechDays PT: Building Software + Services with VoltaDaniel Fisher
 
Intro to VS 2010 & .Net 4.0
Intro to VS 2010 & .Net 4.0Intro to VS 2010 & .Net 4.0
Intro to VS 2010 & .Net 4.0Clint Edmonson
 

Similar to MSDN Presents: Visual Studio 2010, .NET 4, SharePoint 2010 for Developers (20)

Vb essentials
Vb essentialsVb essentials
Vb essentials
 
A Lap Around Visual Studio 2010
A Lap Around Visual Studio 2010A Lap Around Visual Studio 2010
A Lap Around Visual Studio 2010
 
Visual Studio .NET2010
Visual Studio .NET2010Visual Studio .NET2010
Visual Studio .NET2010
 
Overview of VS2010 and .NET 4.0
Overview of VS2010 and .NET 4.0Overview of VS2010 and .NET 4.0
Overview of VS2010 and .NET 4.0
 
A Sneak Peek At Visual Studio 2010 And .Net Framework 4.0
A Sneak Peek At Visual Studio 2010 And .Net Framework 4.0A Sneak Peek At Visual Studio 2010 And .Net Framework 4.0
A Sneak Peek At Visual Studio 2010 And .Net Framework 4.0
 
Whidbey old
Whidbey old Whidbey old
Whidbey old
 
Visual Studio 2010 and .NET 4.0 Overview
Visual Studio 2010 and .NET 4.0 OverviewVisual Studio 2010 and .NET 4.0 Overview
Visual Studio 2010 and .NET 4.0 Overview
 
Daniel Egan Msdn Tech Days Oc Day2
Daniel Egan Msdn Tech Days Oc Day2Daniel Egan Msdn Tech Days Oc Day2
Daniel Egan Msdn Tech Days Oc Day2
 
MS Day EPITA 2010: Visual Studio 2010 et Framework .NET 4.0
MS Day EPITA 2010: Visual Studio 2010 et Framework .NET 4.0MS Day EPITA 2010: Visual Studio 2010 et Framework .NET 4.0
MS Day EPITA 2010: Visual Studio 2010 et Framework .NET 4.0
 
Lap around .net 4
Lap around .net 4Lap around .net 4
Lap around .net 4
 
Whats New In 2010 (Msdn & Visual Studio)
Whats New In 2010 (Msdn & Visual Studio)Whats New In 2010 (Msdn & Visual Studio)
Whats New In 2010 (Msdn & Visual Studio)
 
Dotnetintroduce 100324201546-phpapp02
Dotnetintroduce 100324201546-phpapp02Dotnetintroduce 100324201546-phpapp02
Dotnetintroduce 100324201546-phpapp02
 
Data Driven WPF and Silverlight Applications
Data Driven WPF and Silverlight ApplicationsData Driven WPF and Silverlight Applications
Data Driven WPF and Silverlight Applications
 
Intro to .NET for Government Developers
Intro to .NET for Government DevelopersIntro to .NET for Government Developers
Intro to .NET for Government Developers
 
Revealing C# 5
Revealing C# 5Revealing C# 5
Revealing C# 5
 
Srgoc dotnet_new
Srgoc dotnet_newSrgoc dotnet_new
Srgoc dotnet_new
 
VS 2010 codename Rosario
VS 2010 codename RosarioVS 2010 codename Rosario
VS 2010 codename Rosario
 
San Diego ASP.NET Meeting Oct 21st
San  Diego  ASP.NET Meeting Oct 21stSan  Diego  ASP.NET Meeting Oct 21st
San Diego ASP.NET Meeting Oct 21st
 
2008 - TechDays PT: Building Software + Services with Volta
2008 - TechDays PT: Building Software + Services with Volta2008 - TechDays PT: Building Software + Services with Volta
2008 - TechDays PT: Building Software + Services with Volta
 
Intro to VS 2010 & .Net 4.0
Intro to VS 2010 & .Net 4.0Intro to VS 2010 & .Net 4.0
Intro to VS 2010 & .Net 4.0
 

More from Dave Bost

Developing for Windows Phone 8 and Windows 8
Developing for Windows Phone 8 and Windows 8Developing for Windows Phone 8 and Windows 8
Developing for Windows Phone 8 and Windows 8Dave Bost
 
Introducing Windows Phone 8 Development
Introducing Windows Phone 8 DevelopmentIntroducing Windows Phone 8 Development
Introducing Windows Phone 8 DevelopmentDave Bost
 
Monetizing Your Windows Phone App
Monetizing Your Windows Phone AppMonetizing Your Windows Phone App
Monetizing Your Windows Phone AppDave Bost
 
Live Tiles and Notifications in Windows Phone
Live Tiles and Notifications in Windows PhoneLive Tiles and Notifications in Windows Phone
Live Tiles and Notifications in Windows PhoneDave Bost
 
Introduction to Silverlight for Windows Phone
Introduction to Silverlight for Windows PhoneIntroduction to Silverlight for Windows Phone
Introduction to Silverlight for Windows PhoneDave Bost
 
Windows Phone Application Platform
Windows Phone Application PlatformWindows Phone Application Platform
Windows Phone Application PlatformDave Bost
 
Microsoft+PHP: Make Web Not War
Microsoft+PHP: Make Web Not WarMicrosoft+PHP: Make Web Not War
Microsoft+PHP: Make Web Not WarDave Bost
 
The Windows Azure Platform (MSDN Events Series)
The Windows Azure Platform (MSDN Events Series)The Windows Azure Platform (MSDN Events Series)
The Windows Azure Platform (MSDN Events Series)Dave Bost
 
Azure - The Next Frontier
Azure - The Next FrontierAzure - The Next Frontier
Azure - The Next FrontierDave Bost
 
Internet Explorer 8 Developer Overview
Internet Explorer 8 Developer OverviewInternet Explorer 8 Developer Overview
Internet Explorer 8 Developer OverviewDave Bost
 
Windows 7 Developer Overview
Windows 7 Developer OverviewWindows 7 Developer Overview
Windows 7 Developer OverviewDave Bost
 
Shine a Light with Prism (the Composite Application Guidance for WPF and Silv...
Shine a Light with Prism (the Composite Application Guidance for WPF and Silv...Shine a Light with Prism (the Composite Application Guidance for WPF and Silv...
Shine a Light with Prism (the Composite Application Guidance for WPF and Silv...Dave Bost
 
ASP.NET 3.5 SP1 (VSLive San Francisco 2009)
ASP.NET 3.5 SP1 (VSLive San Francisco 2009)ASP.NET 3.5 SP1 (VSLive San Francisco 2009)
ASP.NET 3.5 SP1 (VSLive San Francisco 2009)Dave Bost
 
Silverlight 2
Silverlight 2Silverlight 2
Silverlight 2Dave Bost
 
Building Applications for SQL Server 2008
Building Applications for SQL Server 2008Building Applications for SQL Server 2008
Building Applications for SQL Server 2008Dave Bost
 
A Lap Around Windows Azure
A Lap Around Windows AzureA Lap Around Windows Azure
A Lap Around Windows AzureDave Bost
 
WPF Unleashed: Building Application with Visual Studio 2008 SP1
WPF Unleashed: Building Application with Visual Studio 2008 SP1WPF Unleashed: Building Application with Visual Studio 2008 SP1
WPF Unleashed: Building Application with Visual Studio 2008 SP1Dave Bost
 
MSDN Unleashed: WPF Demystified
MSDN Unleashed: WPF DemystifiedMSDN Unleashed: WPF Demystified
MSDN Unleashed: WPF DemystifiedDave Bost
 
A Tour of CodePlex
A Tour of CodePlexA Tour of CodePlex
A Tour of CodePlexDave Bost
 
WPF Applications, It's all about XAML these days
WPF Applications, It's all about XAML these daysWPF Applications, It's all about XAML these days
WPF Applications, It's all about XAML these daysDave Bost
 

More from Dave Bost (20)

Developing for Windows Phone 8 and Windows 8
Developing for Windows Phone 8 and Windows 8Developing for Windows Phone 8 and Windows 8
Developing for Windows Phone 8 and Windows 8
 
Introducing Windows Phone 8 Development
Introducing Windows Phone 8 DevelopmentIntroducing Windows Phone 8 Development
Introducing Windows Phone 8 Development
 
Monetizing Your Windows Phone App
Monetizing Your Windows Phone AppMonetizing Your Windows Phone App
Monetizing Your Windows Phone App
 
Live Tiles and Notifications in Windows Phone
Live Tiles and Notifications in Windows PhoneLive Tiles and Notifications in Windows Phone
Live Tiles and Notifications in Windows Phone
 
Introduction to Silverlight for Windows Phone
Introduction to Silverlight for Windows PhoneIntroduction to Silverlight for Windows Phone
Introduction to Silverlight for Windows Phone
 
Windows Phone Application Platform
Windows Phone Application PlatformWindows Phone Application Platform
Windows Phone Application Platform
 
Microsoft+PHP: Make Web Not War
Microsoft+PHP: Make Web Not WarMicrosoft+PHP: Make Web Not War
Microsoft+PHP: Make Web Not War
 
The Windows Azure Platform (MSDN Events Series)
The Windows Azure Platform (MSDN Events Series)The Windows Azure Platform (MSDN Events Series)
The Windows Azure Platform (MSDN Events Series)
 
Azure - The Next Frontier
Azure - The Next FrontierAzure - The Next Frontier
Azure - The Next Frontier
 
Internet Explorer 8 Developer Overview
Internet Explorer 8 Developer OverviewInternet Explorer 8 Developer Overview
Internet Explorer 8 Developer Overview
 
Windows 7 Developer Overview
Windows 7 Developer OverviewWindows 7 Developer Overview
Windows 7 Developer Overview
 
Shine a Light with Prism (the Composite Application Guidance for WPF and Silv...
Shine a Light with Prism (the Composite Application Guidance for WPF and Silv...Shine a Light with Prism (the Composite Application Guidance for WPF and Silv...
Shine a Light with Prism (the Composite Application Guidance for WPF and Silv...
 
ASP.NET 3.5 SP1 (VSLive San Francisco 2009)
ASP.NET 3.5 SP1 (VSLive San Francisco 2009)ASP.NET 3.5 SP1 (VSLive San Francisco 2009)
ASP.NET 3.5 SP1 (VSLive San Francisco 2009)
 
Silverlight 2
Silverlight 2Silverlight 2
Silverlight 2
 
Building Applications for SQL Server 2008
Building Applications for SQL Server 2008Building Applications for SQL Server 2008
Building Applications for SQL Server 2008
 
A Lap Around Windows Azure
A Lap Around Windows AzureA Lap Around Windows Azure
A Lap Around Windows Azure
 
WPF Unleashed: Building Application with Visual Studio 2008 SP1
WPF Unleashed: Building Application with Visual Studio 2008 SP1WPF Unleashed: Building Application with Visual Studio 2008 SP1
WPF Unleashed: Building Application with Visual Studio 2008 SP1
 
MSDN Unleashed: WPF Demystified
MSDN Unleashed: WPF DemystifiedMSDN Unleashed: WPF Demystified
MSDN Unleashed: WPF Demystified
 
A Tour of CodePlex
A Tour of CodePlexA Tour of CodePlex
A Tour of CodePlex
 
WPF Applications, It's all about XAML these days
WPF Applications, It's all about XAML these daysWPF Applications, It's all about XAML these days
WPF Applications, It's all about XAML these days
 

Recently uploaded

Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentationphoebematthew05
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 

Recently uploaded (20)

Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
costume and set research powerpoint presentation
costume and set research powerpoint presentationcostume and set research powerpoint presentation
costume and set research powerpoint presentation
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 

MSDN Presents: Visual Studio 2010, .NET 4, SharePoint 2010 for Developers

  • 1.
  • 2. What’s New in .NET 4.0
  • 3.
  • 8. get on with it…
  • 10. Huge List of New Features! Breakpoint Labeling Breakpoint Searching Breakpoint Import/Export Dynamic Data Tooling WPF Tree Visualizer Call Hierarchy Improved WPF Tooling Historical Debugging Mini-Dump Debugging Quick Search Better Multi-Monitor Support Highlight References Parallel Stacks Window Parallel Tasks Window Document Map Margin Generate From Usage Concurrency Profiler Inline Call Tree Extensible Test Runner MVC Tooling Web Deploy JQuery Intellisense SharePoint Tooling HTML Snippets Web.config Transformation Click-Once Enhancements for Microsoft Office
  • 11. Overview General Improvements Debugging Parallelism Web Extensibility
  • 13. Highlighting References CTRL+SHIFT+DOWN ARROW (forward) CTRL+SHIFT+UP ARROW (reverse) Automatic highlighting of a symbol Can be used with declarations, references, and many other symbols
  • 14. Navigate To CTRL + , Provides search-as-you-type support for symbols Enables quick searching based on case usage
  • 15. Docking Windows New Guide Diamond Windows can be docked anywhere Can now pull document windows outside the IDE
  • 16. Call Hierarchy (C# only) CTRL + K, T Used to see calls to and from a method Great way to see calls at design time
  • 17. Zoom CTRL + Mouse Wheel New feature that enhances the size of your code Very useful for pair programming (or similar scenarios)
  • 18. Generate from Usage Used to automatically create stub code Enables you to use classes and members before you define them
  • 19. Intellisense Suggestion Mode CTRL + ALT + SPACE Used when classes and members are used before they are defined Helps to reduce situations where IntelliSense inserts unintended text into the editor
  • 22. Breakpoints Can add labels to breakpoints All breakpoints are now searchable Import / Export now available
  • 24. Threading Completely redesigned threading window Now provides filtering, call-stack searching and expansion, and grouping New columns added: Affinity masks Process names Managed IDs
  • 25. Dumps You can save a dump file and debug it later, either on the build computer or on another computer that has the source files and debugging symbols Can read dump files that contain information about managed code, unmanaged code, or a mixture of both
  • 26. Parallel Tasks and Stacks Used to visualize and debug parallel code that is written in C++, C#, or Visual Basic Using the Parallel Stacks window, you can view multiple call stacks at the same time in a single view Parallel Tasks allow you to see multiple tasks and the corresponding status of those tasks
  • 28. Web
  • 29. Code Snippets Snippets are now available in web applications Two major contextual areas: JavaScript HTML
  • 32. Web.config Transforms You can create configuration file transforms to modify your project's Web.config file to work with various deployment environments http://blogs.msdn.com/webdevtools
  • 33. One-Click Web Deployment With Visual Studio 2010, MSDeploy is integrated directly into Visual Studio Once you have your profiles configured, you can easily deploy to a given environment with a single click
  • 34. Web
  • 36. The Visual Studio Gallery http://visualstudiogallery.msdn.microsoft.com
  • 37. Making Your Extensions http://msdn.microsoft.com/en-us/vsx/default.aspx
  • 39. Resources What’s New in Visual Studio 2010http://msdn.microsoft.com/en-us/library/bb386063(VS.100).aspx Visual Studio on MSDNhttp://msdn.microsoft.com/vstudio Visual Studio 2010 Tips and Trickshttp://blogs.msdn.com/zainnab
  • 41. What’s New in the.NET Framework 4.0
  • 42. From There to Here… SP1 3.5 3.0 .NET 1.0 .NET 1.1 .NET 2.0 .NET 4 2002 2003 2008 CTP! 2005-08 CLR 1.0 CLR 1.1 CLR 2.0 CLR 4
  • 43. .NET Framework Architecture WPF Win Forms DLR ASP.NET WCF And more! LINQ Base Class Libraries Common Language Runtime JIT & NGEN Garbage Collector Security Model Exception Handling Loader & Binder
  • 44. Overview Client Profile Visualization Data Programming Languages Common Language Runtime (CLR) Base Class Libraries (BCL) Web
  • 46. Client Profile Subset of the full .NET Framework  Leveraged for faster deployments Two Sections Client Profile Extended Streamlined pieces of Windows Presentation Foundation (WPF) Windows Forms Windows Communication Foundation (WCF) ClickOnce
  • 48. Windows Presentation Foundation(WPF) New Controls DataGrid Calendar DatePicker Visual State Manager Touch and Manipulation Text
  • 50. Data
  • 52. Model-First Existing Database Generated Entity Data Model Database First (v1) Generated Database Entity Data Model Model First (v2)
  • 54. POCO Class Definition Everything Navigation Property Definition Scalar Property Definition
  • 55. Deferred / Lazy Loading Explicit Deferred / lazy
  • 58. Visual Basic Auto-Implemented Properties Shortened syntax that enables you to quickly specify a property of a class without having to write code Collection Initializer Shortened syntax that enables you to create a collection and populate it with an initial set of values Implicit Line Continuation Enables you to continue a statement on the next consecutive line without using the underscore character Public Property Owner As String = "DefaultName" Function AddStuff( ByValfirst As Integer, ByValsecond As Integer ) As Integer Returnfirst + second End Function Public PropertyItems As New List(Of String)= {“M“, “T“, “W“}
  • 59. C# Dynamic Type Operations that contain expressions of type dynamic are not resolved or type checked by the compiler. The compiler packages together information about the operation, and that information is later used to evaluate the operation at run time Optional and Named Parameters Named arguments enable you to specify an argument for a particular parameter by associating the argument with the parameter's name rather than with the parameter's position in the parameter list. Optional arguments enable you to omit arguments for some parameters. Both techniques can be used with methods, indexers, constructors, and delegates.
  • 60. C#: - dynamic keyword - named and optional parameters
  • 61. F# IDE support for F# Interactive F# for prototyping code Asynchronous constructs Parallel constructs Immutable data types
  • 63. Existing Side-By-Side (SxS) 2.0 add-in 3.0 add-in 3.5 add-in 1.1 add-in 3.5 .NET 1.1 3.0 .NET 2.0 Host Process (i.e. Outlook)
  • 64. In-Process Side-By-Side (SxS) 2.0 add-in 3.0 add-in 3.5 add-in 4.0 add-in 3.5 .NET 4.0 3.0 .NET 2.0 Host Process (i.e. Outlook)
  • 66.
  • 68. System.Threading.Tasks// Sequential foreach (var item in sourceCollection) { Process(item); } // Parallel Parallel.ForEach (sourceCollection, item => Process(item));
  • 69. New Sync Primitives in .NET 4 Thread-safe, scalable collections IProducerConsumerCollection<T> ConcurrentQueue<T> ConcurrentStack<T> ConcurrentBag<T> ConcurrentDictionary<TKey,TValue> Phases and work exchange Barrier BlockingCollection<T> CountdownEvent Partitioning {Orderable}Partitioner<T> Partitioner.Create Exception handling AggregateException Initialization Lazy<T> LazyInitializer.EnsureInitialized<T> ThreadLocal<T> Locks ManualResetEventSlim SemaphoreSlim SpinLock SpinWait Cancellation CancellationToken{Source} ManyCore: http://microoftpdc.com/Sessions/P09-09 (50:00)
  • 70. Parallelize For Loops Control flow is a primary source of work Parallelizable when iterations are (or can be made) independent Synchronous All work quiesces, regularly or exceptionally Lots of knobs Cancelation, breaking, task-local state, custom partitioning, scheduling, degree of parallelism foreach(var item in data) { work(item); } for (int i = 0; i < n; i++) { work(i); } StatementA(); StatementB; StatementC(); Parallel.ForEach(data, item=> { work(item); }); Parallel.For(0, n, i=> { work(i); }); Parallel.Invoke( () => StatementA(), () => StatementB, () => StatementC()); ManyCore: http://microsoftpdc.com/Sessions/P09-09
  • 71.
  • 72. Extension methods for the IParallelEnumerable interface
  • 73. Additional operators for parallel operationsfrom n in names.AsParallel().WithDegreeOfParallelism(ProcessorsToUse.Value) where n.Name.Equals(queryInfo.Name, StringComparison.InvariantCultureIgnoreCase) && n.State == queryInfo.State && n.Year >= yearStart && n.Year <= yearEnd orderbyn.Year ascending select n;
  • 75. Design By Contract System.Diagnostics.Contracts Code Contracts introduce a way to specify contractual information that is not represented by a method or type’s signature alone Scenarios for using contracts include: Perform static bug finding, which enables some bugs to be found without executing the code Create guidance for automated testing tools to enhance test coverage Create a standard notation for code behavior, which provides more information for documentation public Boolean ExampleMethod(String parameter) { if (parameter == null) throw newArgumentNullException("parameter must be non-null"); } http://msdn.microsoft.com/devlabs
  • 76. Data Types BigInteger Immutable type that represents an arbitrarily large integer whose value in theory has no upper or lower bounds SortedSet<T> Provides a self-balancing tree that maintains data in sorted order after insertions, deletions, and searches
  • 77. I/O Memory-Mapped File Used to edit very large files and to create shared memory for inter-process communication Stream.CopyTo Allows you to copy the contents of one stream into another
  • 78. Web
  • 79. Model-View-Controller (MVC) Huge investment from Microsoft Alternative to WebForms Modular Architecture MVC 2.0 Integrated in .NET Framework 4.0
  • 80. ASP.NET Webforms Ability to set meta tags More control over view state Added and Updated browser definition files ASP.NET Routing The ability to persist selected rows in data controls More control over rendered HTML in the FormView and ListView controls Filtering support for data source controls
  • 81. Dynamic Data A RAD experience for quickly building a data-driven Web site Automatic validation that is based on constraints defined in the data model The ability to easily change the markup that is generated for fields in the GridView and DetailsView controls by using field templates
  • 82. Web
  • 83. Resources .NET Developer Centerhttp://msdn.microsoft.com/net Data Developer Centerhttp://msdn.microsoft.com/data Concurrency (Parallelism)http://msdn.microsoft.com/concurrency ASP.NET MVChttp://asp.net/mvc WPF and Windows Formshttp://windowsclient.net
  • 86. SharePoint 2010Enhancements New object model LINQ for SharePoint Native support for Silverlight Sandboxed Solutions External data lists
  • 87. Overview SharePoint Projects Event Receivers Deployment & Debugging Web Parts
  • 108. Resources Learn SharePoint 2010 on Channel 9http://channel9.msdn.com/learn/courses/SharePoint2010Developer/ SharePoint 2010 Developer Centerhttp://msdn.microsoft.com/SharePoint
  • 109. Dave Bost dbost@microsoft.com @davebost http://davebost.com http://ThirstyDeveloper.com
  • 110. © 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.