Improved icons Line work to better define areas
Improved icons Line work to better define areas and regions Hover colors Scrollbar states Active/inactive instances Improved experience for high density displays
Time to switch configuration 200 170 150 325% Improvement 100 19, 900% Improvement 50 0 40 0. 5 First Time Switch (sec) Visual Studio 2012 Subsequent Switches (sec) Visual Studio 2013
source control models
centralized OR distributed
centralized scales to large code bases
distributed best in class offline experience
Check-in Check-out
Strengths Check-in Check-out Best for • Scales to very large codebases • Large integrated codebases • Fine level permission control • • Allows usage monitoring Control and auditability over source code down to the file level
Strengths Check-in Check-out Best for • Scales to very large codebases • Large integrated codebases • Fine level permission control • • Allows usage monitoring Control and auditability over source code down to the file level • Offline editing support • Medium-sized integrated codebases • Easy to edit files outside Visual Studio or Eclipse • A balance of fine-grained control with reduced friction • • Full offline experience • Modular codebases Complete repository with portable history • Integrating with open source • Simplified branching model • Highly distributed teams
we need to embrace DVCS
Git OR Mercurial
Team Foundation Server / Service Project 1 3 rd Party Project 2 Local Repo 3 rd Party Other Remote Git Repo
Git (hosted by TFS)
decision at the project level
Runtime Libraries Languages Tools . NET
First, a look at. NET 4. 5 Web & Cloud Client & Device • Async – for UI responsiveness • Windows Store apps -- Win. RT • Windows Phone apps • . NET CF 3. 9 Fundamentals • . NET Async • Async – for GC (async + await) server scaling • Many new async • ASP. NET MVC 4 • Background GC APIs • ASP. NET Web • LOH heap • Win. RT interop API balancing • Multi-core JIT • ASP. NET Web • LOH • MPGO – NGEN Pages fragmentation hot/cold. NET 4. 5 is installed on 100+ million machines! reduction • Entity splitting Framework • GC low latency • Performance Code-First mode improvements • Web. Sockets • GC awareness of • Reboot and NUMA and >64 • Signal. R reliability processors • Windows Azure improvements • >2 GB arrays (or Cloud Services to setup objects) 4. 5 Support • Windows Azure Windows RT Web Sites Libraries • Portable libraries update • . NET Core Profile (Windows 8) • Extension methods for Win. RT streams and async • Nu. Get • Immutable collections • Async for. NET 4 • Http. Client for Portable
. NET 4. 5. 1 in A Nutshell
64 -bit Edit and Continue is finally here! • Number 9 all time requested feature on User. Voice! • Works exactly the same as for 32 -bit applications • Client (WPF, Win. Forms, etc. ), Store and ASP. NET WAP projects are supported • For WAP projects, need to enable Edit & Continue in Project Properties
Method Return Value Inspection • Now available for. NET! • Access via Autos window or in the Immediate window ($Return. Value) • Can expand return value in the debugger
Async Debugging Improvements • Common question: How did I get here? • Supported for Store Apps, Web apps, Desktop apps in W 8. 1 • Enhancements to the Call Stack and Tasks window Visual Studio 2012
Windows Store Development Improvements • Convert System. IO. Stream to IRandom. Access. Stream • Allows much easier interop with existing. NET code • Better exception support for Win. RT APIs • System. Exception. Message • System. Exception. Stack. Trace • Win. RT type system enhancements • Nullable value types in Win. RT structs • 64 -bit Edit and Continue support • Managed Return Value Inspection support • Async debugging enhancedments
Convert Stream to IRandom. Access. Stream • From MSDN Forums… bitmap. Set. Source(memory. Stream); <-- error CS 1503: Argument 1: cannot convert from 'System. IO. Stream' to 'Windows. Storage. Streams. IRandom. Access. Stream‘ bitmap. Set. Source(memory. Stream. As. Random. Access. Stream()); <--. NET 4. 5. 1 In. NET 4. 5. 1: System. IO. Windows. Runtime. Stream. Extensions. As. Random. Access. Stream(Stream stream)
Rich exception interop support for Win. RT APIs • In Windows 8, error propagation for Win. RT APIs is through HRESULT • Important Exception information is lost unless a debugger is attached • In Windows 8. 1, additional error information is available via System. Exception properties: • Message • Stack. Trace Additional exception details from a C++ Win. RT Component
Win. RT Type System Enhancements • Support Nullable value types in Win. RT structs public short? au_ord; <-- error WME 1060: 'System. Nullable<System. Int 16>' is not a valid Windows Runtime field type. public int? royaltyper; <-- error WME 1060: 'System. Nullable<System. Int 32>' is not a valid Windows Runtime field type.
EF/ADO. NET Connection Resiliency • Provide reliable connection to Azure DB • Automatically retry/reconnect broken connection • Provides great experience for connected devices • It Just Works! No code or configuration changes other than installing. NET 4. 5. 1
Early Results from our Performance Lab
CAUTION:
On-demand Large Object Heap Compaction • Refresher • Large objects (>85000 bytes) treated specially • Very expensive to compact • Collected with Gen 2 • In. NET 4. 5. 1, you can now compact the Large Object Heap (LOH) to address heap fragmentation • The LOH mode is part of GCSettings:
On-demand Large Object Heap Compaction • Two ways to use GC LOH API: 1. Compact LOH right away 2. Compact LOH with the next full blocking GC // Next full blocking GC happens at some point, it will be a compacting GC that compacts the whole heap including LOH.
Maoni. S@microsoft. com
Multi-Core JIT Improvements • Minimize application startup time on multicore CPUs • Now supported for ASP. NET web sites • Enabled automatically for ASP. NET apps 15% improvement for cold startup Performance data from our test labs
Consistent Performance Before & After Servicing. NET • Servicing. NET Framework for 1 B+ PCs is a very BIG deal! • Today, servicing the. NET Framework can lead to degradation in app performance directly afterwards • This is due to core. NET assemblies being JIT-compiled for a period of time after servicing • In Windows 8. 1, app performance remains consistent even after servicing the. NET Framework • Results in much better user experience and better battery life on tablets
Our goal is to keep the existing values of the. NET Framework while allowing for more agility and innovation Existing Values • • Great discoverability (all in in place) Known quality, maturity and compatibility level A single license and support policy Centralized patching for security issues *PLUS* New Values • Faster release cadence with a tighter customer feedback loop • Less friction with using features across. NET platforms
System Composition TPL Dataflow Http Client . NET (“in box”) Async Immutable Collections
Web
Visual Studio 20[10, 12] https: //nuget. org/api/v 2/curated-feeds/dotnetframework/
What’s New in. NET Development
http: //www. codefest. at/ http: //blogs. msdn. com/b/visualstudio/ http: //channel 9. msdn. com/Shows/Visual-Studio-Toolbox http: //blogs. msdn. com/b/somasegar/
Get the releases Share your feedback Windows 8. 1 Preview http: //preview. windows. com http: //Visual. Studio. uservoice. com Visual Studio 2013 Preview http: //go. microsoft. com/fwlink/? Link. Id=306566 http: //connect. microsoft. com/Visual. Studio
www. codefest. at
- Slides: 91