Published:
19 Feb 2008
|
Abstract
After reading this article, you will understand the proposed new features of .NET Framework 3.5. Scott examines the improvements in pipleline for client setup application and Windows Presentation Framework (WPF) including that of Visual Studio 2008 WPF Designer. |
|
by Scott Guthrie
Feedback
|
Average Rating: This article has not yet been rated.
Views (Total / Last 10 Days):
32495/
65
|
|
|
Introduction |
Republished with Permission - Original Article
A few months ago I did a .NET Web Product Roadmap blog post where I outlined some of
the product plans we have to build on top of the web development features we’ve
shipped with Visual Studio 2008 and .NET 3.5.
Over the next few months we will also be releasing a number
of enhancements specific to client development as well. We have put a lot
of effort into addressing some of the biggest areas of customer feedback, while
also trying to really push the envelope on the capabilities developers have
when building Windows applications. All of these improvements build on top of
VS 2008 and .NET 3.5, and will make .NET client development even better going
forward. Below is a roadmap of some of the upcoming releases we have planned
for the months ahead:
|
Improved .NET Framework Setup for Client Applications |
One of the biggest asks we've had over the years from customers
and ISVs building client applications is to make the setup and installation of
the .NET Framework easier and faster.
This summer we are going to ship a new setup framework for
.NET that makes it easier to build optimized setup packages for client
applications. This setup framework can be integrated with existing installation
frameworks (for example: products like InstallShield), and enables a smaller
and faster end-user setup experience of the .NET Framework.
Windows Forms and WPF client applications will be able to
use this setup framework to cleanly “bootstrap” getting the .NET Framework
installed onto machines. The setup “bootstrap” utility will support automatically downloading the minimal set of .NET Framework packages needed to enable
.NET 3.5 client applications on a machine. For example, if a user already has
.NET 2.0 installed on their machine, setup will be smart enough to
automatically download only the upgrade patches necessary to update .NET 2.0 to
3.5 (and not have to re-download the components already provided by .NET 2.0).
This will significantly shrink the payload size of client setup programs, and
speed up the installation experience.
We’ll also be delivering improvements that enable a more
integrated application install experience for both MSI and ClickOnce based
solutions, and support a more consumer friendly user experience that is easy to
build.
|
Improved Working Set and Startup Improvements for .NET
Client Applications |
One of the other common asks we receive is to enable .NET
client applications to launch faster in "cold startup" scenarios. "Cold
startup" scenarios occur when no other .NET client applications are
running (or have recently run) on a machine, and require the OS to load lots of
pages (code, static data, registry, etc) from disk. If you are loading a large
.NET client application or library, or are using a slow disk, these cold
startup scenarios can require many seconds for your application to start.
This summer we are going to ship a servicing update to the
CLR that makes some significant internal optimizations in how we optimize our
data structures to cut down on disk IO and improve memory layout when loading
and running applications. Among many other benefits, this work will
significantly improve the working set and cold startup performance of .NET 2.0,
3.0 and 3.5 applications and will dramatically improve end-user experiences
with .NET-based client applications.
Depending on the size of the application, we expect .NET
applications to realize a cold startup performance improvement of between
25-40%. Applications do not need to change any code, nor be recompiled, in
order to take advantage of these improvements so the benefits are automatic.
|
WPF Performance Improvements |
This summer we are also planning to release a servicing
update to WPF that includes a bunch of performance optimizations that improve
its text, graphics, media and data stack. These include:
- Moving the DropShadow and Blur bitmap effects, which are
currently software rendered, to be hardware accelerated (making them many times
faster). The APIs for these effects will stay the same as they are today (which
means you do not need to change any code nor recompile your apps to take
advantage of these improvements).
- Text scenarios, especially when used in Visual and
DrawingBrush scenarios, will be substantially faster. The APIs for these
scenarios also stay the same (which means you do not need to change any code
nor recompile to take advantage of the performance improvements).
- Media and video performance scenarios will also be much
faster (also no need to change any code nor recompile to take advantage of the
improvements).
- We’ll be including a new WriteableBitmap API that enables
real-time bitmap updates from a software surface. We’ll also be adding support for a powerful new effects API that enables you to build richer graphics scenarios.
- We’ll also be including new data scalability improvements
that can be leveraged for data editing scenarios. These include container
recycling and data virtualization support that make it easier to build richer
data visualization controls.
|
WPF Control Improvements |
Later this year we are also planning to release a number of
new controls for WPF. Included in the list we are working on are
DataGrid, Ribbon, and Calendar/DatePicker controls.
|
VS 2008 WPF Designer Improvements |
We are also planning to release a servicing update of VS
2008 that includes a number of feature additions to its WPF designer. These
include event tab support within the property grid for control events, toolbox support within source mode, and a variety of other common asks and improvements.
|
Summary |
The above improvements should make it easier to build great
desktop applications. Because these improvements are built on top of VS 2008
and .NET 3.5, they will also be easy to take advantage of (and in most
scenarios not require any code changes to take advantage of them). Stay tuned
to my blog for more details about each of the above improvements in the weeks
ahead.
Hope this helps,
Scott
|
Resources |
|
|
|
|
User Comments
No comments posted yet.
|
Product Spotlight
|
|