Visual Studio 2010

    Børge Hansen
     borge@devpartner.no
      http://borge3000.no
Visual Studio 2010



          Network support
           and managed
             services
New IDE Improvements
• Visual Studio Environment
   – WPF-based Editor
   – Better Multi-Monitor Support
• Navigation
   –...
Code Focused Development
• Consume First, Declare Later
   – Generate from usage
• Code insight
   – Call hierarchy
   – I...
Web Development
•   Enhanced JavaScript tooling
•   HTML snippets
•   New MVC and Dynamic Data tooling
•   Integrated Web ...
Native C++ Development
• Great IDE Experience
   – Scale smoothly
   – Better navigation of large source
      bases
   – ...
Architecture Explorer
• Understanding a system can
  prevent the butterfly effect.

• Architecture Explorer helps
  discov...
Office Development
• Tooling for the next version of Office
• ClickOnce Enhancements for Office
   – Create solutions with...
SharePoint Development
• SharePoint tooling for common
  customizations

Workflow              Application pages
Content T...
Debugger
• Richer platform support
    – 64-bit mixed-mode debugging
    – Minidump debugging support for managed
      an...
Team System: Business Alignment
• Project Management
   – Project Server
   – Client Integration
   – Lightweight Project ...
Team System: Quality & Testing
• Visual structure and behavior in UML
  and DSL models
• Eliminate the “no repro” problem
...
Test Impact Analysis
• Works with Code Coverage
  data in TFS.
• Compares code changes with
  coverage data.
• Recommends ...
Gated Check-in

• Checks changes into a
  shelfset on server.
• Merges changes with main
  and runs build.
• If successful...
DEMO
Visual Studio IDE
Historical Debugging
Collection Plan
• Specifies the what and how of instrumentation



      Instrumentation & Hidden Tra...
DEMO
Historical Debugger
The Parallel Computing Initiative

Letting the brightest developers solve
  business problems, not concurrency
  problems....
Concurrency Landscape
For Visual Studio 2010 and the .NET Framework 4…

         System.Threading      Parallel Extensions...
Parallel Extensions is a .NET Library that supports
  declarative and imperative data parallelism,
  imperative task paral...
Parallel Static Class
When program statements are independent…
     StatementA();
     StatementB();
     StatementC();


...
DEMO
Task Parallel Library
Structured Parallelism
Parallel class
  – static (overloaded) methods
  – helper methods to create/work with Tasks
  – enc...
PLINQ

Parallel LINQ (PLINQ) enables developers to
  easily leverage manycore with a minimal
  impact to existing LINQ pro...
Coordination Data Structures
Thread-safe collections                     Synchronization
ConcurrentStack<T>               ...
Additional Resources

• Visual Studio 2010
  http://www.microsoft.com/visualstudio/

• Download Visual Studio 2010
  http:...
Børge Hansen
borge@devpartner.no
http://borge3000.no

+47 905 905 38
Upcoming SlideShare
Loading in …5
×

Visual Studio 2010

1,428 views
1,382 views

Published on

Børge Hansen presenterte Visual Stuio 2010 på høstens runde av MSDN & TechNet Live.

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,428
On SlideShare
0
From Embeds
0
Number of Embeds
10
Actions
Shares
0
Downloads
126
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Visual Studio 2010

  1. 1. Visual Studio 2010 Børge Hansen borge@devpartner.no http://borge3000.no
  2. 2. Visual Studio 2010 Network support and managed services
  3. 3. New IDE Improvements • Visual Studio Environment – WPF-based Editor – Better Multi-Monitor Support • Navigation – Quick Search – Highlight references • Project System – 100% source code compatible – Multi-Targeting
  4. 4. Code Focused Development • Consume First, Declare Later – Generate from usage • Code insight – Call hierarchy – Inline call tree • Layers – Rich formatting of code – Overlays of contextual information • Document Map Margin
  5. 5. Web Development • Enhanced JavaScript tooling • HTML snippets • New MVC and Dynamic Data tooling • Integrated Web Deployment
  6. 6. Native C++ Development • Great IDE Experience – Scale smoothly – Better navigation of large source bases – Multi-targeting – MFC Class Wizard • Parallel computing support • Light up on Windows 7 • Updated MFC Look-and-Feel
  7. 7. Architecture Explorer • Understanding a system can prevent the butterfly effect. • Architecture Explorer helps discover and understand how a system works. • Visualize existing code assets and how they connect.
  8. 8. Office Development • Tooling for the next version of Office • ClickOnce Enhancements for Office – Create solutions with multiple addins and documents – Ability to deploy and update custom actions – Improved document and template deployment – Publish Office client customizations to SharePoint
  9. 9. SharePoint Development • SharePoint tooling for common customizations Workflow Application pages Content Types Master pages List Definitions Server controls Site Definitions Modules Web parts (+ Visual Fields Designer) – Great experiences inside Visual Studio – coding->debug->deploy – Extensible infrastructure allowing 3rd parties and ISVs to create additional SharePoint tooling
  10. 10. Debugger • Richer platform support – 64-bit mixed-mode debugging – Minidump debugging support for managed and mixed-mode – WPF Visualizer • Breakpoint improvements – Grouping and labeling – Import/export • Historical Debugger – Record & playback application execution
  11. 11. Team System: Business Alignment • Project Management – Project Server – Client Integration – Lightweight Project Planning Tools • Requirements Traceability • Reports • Individual Dashboards • Process Customization – Wider variety of examples from Microsoft and community
  12. 12. Team System: Quality & Testing • Visual structure and behavior in UML and DSL models • Eliminate the “no repro” problem • Gated checkin • T-SQL Quality Tools • Testing improvements – Test prioritization – Manual Testing – Functional Testing – Test Case Management
  13. 13. Test Impact Analysis • Works with Code Coverage data in TFS. • Compares code changes with coverage data. • Recommends tests to run based on coverage impacted.
  14. 14. Gated Check-in • Checks changes into a shelfset on server. • Merges changes with main and runs build. • If successful, commits changes to main.
  15. 15. DEMO Visual Studio IDE
  16. 16. Historical Debugging Collection Plan • Specifies the what and how of instrumentation Instrumentation & Hidden Trace Points • Inserted into user’s code and the .NET framework using ICorProfiling APIs Logger & Log • Data is recorded to a portable log file User Experience • Visualization of collected data integrated with the VS Debugger IDE
  17. 17. DEMO Historical Debugger
  18. 18. The Parallel Computing Initiative Letting the brightest developers solve business problems, not concurrency problems. “Concurrency for the masses”
  19. 19. Concurrency Landscape For Visual Studio 2010 and the .NET Framework 4… System.Threading Parallel Extensions Unified Cancellation Model
  20. 20. Parallel Extensions is a .NET Library that supports declarative and imperative data parallelism, imperative task parallelism, and a set of data structures that make coordination easier. 1. Parallel LINQ (PLINQ) 2. Task Parallel Library (TPL) 3. Coordination Data Structures (CDS)
  21. 21. Parallel Static Class When program statements are independent… StatementA(); StatementB(); StatementC(); …they can be parallelized Parallel.Invoke( () => StatementA(), () => StatementB(), () => StatementC() );
  22. 22. DEMO Task Parallel Library
  23. 23. Structured Parallelism Parallel class – static (overloaded) methods – helper methods to create/work with Tasks – encapsulates common patterns
  24. 24. PLINQ Parallel LINQ (PLINQ) enables developers to easily leverage manycore with a minimal impact to existing LINQ programming model var q = from p in people.AsParallel() where p.Name == queryInfo.Name && p.State == queryInfo.State && p.Year >= yearStart && p.Year <= yearEnd orderby p.Year ascending select p;
  25. 25. Coordination Data Structures Thread-safe collections Synchronization ConcurrentStack<T> CountdownEvent ConcurrentQueue<T> Barrier ConcurrentLinkedList<T> ManualResetEventSlim ConcurrentDictionary<TKey,TValue> SemaphoreSlim ConcurrentBag<TKey,TValue> SpinLock BlockingCollection<T> SpinWait IProducerConsumerCollection<T> Partitioner, Partitioner<T>, Cancellation OrderablePartitioner<T> CancellationToken CancellationTokenSource Initialization ICancelableOperation ThreadLocal<T> Lazy<T>, LazyVariable<T>, LazyInitializer
  26. 26. Additional Resources • Visual Studio 2010 http://www.microsoft.com/visualstudio/ • Download Visual Studio 2010 http://www.microsoft.com/visualstudio/nb- no/products/2010/default.mspx • Channel 9 10-4 Shows http://channel9.msdn.com/shows/10-4/ • Parallell Computing with Visual Studio 2010 http://www.msdn.com/concurrency
  27. 27. Børge Hansen borge@devpartner.no http://borge3000.no +47 905 905 38

×