August 2009

 

.NET Visualization:Visualizing Information with .NET

Having the capability to draw pictures usually isn’t enough for a good information visualization platform. The key to building a visualization platform is capabilities such as interactivity, generating metadata, and overlaying related data. You need a level of flexibility that lets you render any data in any way at any time. Laurence Moroney

Entity Framework:N-Tier Application Patterns

This article examines n-tier patterns for success and some of the key APIs and issues specific to the Entity Framework. It also provides a sneak peak at features coming in the Microsoft .NET Framework 4 that should make n-tier development significantly easier. Daniel Simmons

Domain Models:Employing the Domain Model Pattern

In this article, we’ll go through the reasons to (and not to) employ the domain model pattern, the benefits it brings, as well as provide some practical tips on keeping the overall solution as simple as possible. Udi Dahan

EF Data Access:EF v2 and Data Access Architecture Best Practices

Developers deploy a wide variety of development philosophies and architecture styles. This article explores three common perspectives on application development and describes how the Entity Framework can be employed in each. Specifically, the article looks at the forms-centric, model-centric, and code-centric development styles and their relationship to the Entity Framework. Tim Mallalieu

SQL Data Services:The Relational Database of the Azure Services Platform

This article shows you the new face of SQL Data Services, explores its architecture, and shows how it is truly an extension of SQL Server in the cloud. David Robinson

Inside Windows 7:MultiTouch Capabilities in Windows 7

This is Part 3 of a multipart article series on Windows 7. Part 3 covers the Windows 7 multitouch capabilities. Yochay Kiriaty

Code Download.Chm Files

Columns

Editor's Note:Editor's Note

When you get right down to it, the role that software generally plays in most businesses is to get, process, and store data. Therefore, while we may have all sorts of high-level discussions and debates around architectural patterns and object-oriented heuristics, the fact remains that the most elegantly designed application is still effectively taking data from somewhere, doing something to it and putting it somewhere else.Howard Dierking

Toolbox:Data Snapshots, Subversion, Source Code Organization and More

If you want to save, organize, and annotate snapshots of your database data, find an easy way to install and configure Subversion, and automate the organization of your source code, then you'll want to read more about these latest tools.Scott Mitchell

CLR Inside Out:Code Contracts

This article will share some of the best practices that the Base Class Libraries (BCL) team devised as they added the code contract libraries and started to take advantage of them in their own code.Melitta Andersen

Data Points:Data Performance and Fault Strategies in Silverlight 3

In this month’s column, the author shows how binary encoding works, the effect it has on an application’s performance, and how it behaves by demonstrating it in action.John Papa

Cutting Edge:Pros and Cons of Data Transfer Objects

After a brief refresher on procedural and object based patterns for organizing the business logic layer, the author focuses on data transfer objects and the impact they have on the development of the software project.Dino Esposito

Patterns in Practice:Incremental Delivery Through Continuous Design

The end goal of software projects is to deliver value to the customer. Software design is a major factor in how successfully a team can deliver that value. The best designs are a product of continuous design rather than the result of an effort that tries to get the entire design right up front. This approach lets you strive to apply lessons learned from the project to continuously improve the design, instead of becoming locked into an erroneous design developed too early in the project.Jeremy Miller

Security Briefs:Cryptographic Agility

Even if you use only the most secure algorithms and the longest key lengths, there’s no guarantee that the code you write today will remain secure. A better alternative is to plan for agility from the beginning. Rather than hard-coding specific cryptographic algorithms into your code, use one of the crypto-agility features built into the Microsoft .NET Framework. This article shows you how.Bryan Sullivan

Under the Table:How Data Access Code Affects Database Performance

In this article, the author delves into some commonly used ways of writing data access code and looks at the effect they can have on performance.Bob Beauchemin

Foundations:Windows Workflow Design Patterns

Design patterns provide a common, repeatable approach to solving software development tasks, and many different patterns can describe how to accomplish a certain goal in code. When developers begin working with Windows Workflow Foundation (WF), they often ask about how to accomplish common tasks with the technology. This month's column discusses several design patterns used in WF.Matthew Milner

.NET Matters:Aggregating Exceptions

Exceptions in .NET are the fundamental mechanism by which errors and other exceptional conditions are communicated. This month’s column provides information about how to aggregate exceptions to help manage a variety of scenarios in which multiple exceptions might result from one operation, including scenarios involving parallelism and concurrency.Stephen Toub

Inside Microsoft patterns & practices:Building WPF and Silverlight Applications with a Single Code Base Using Prism

This article discusses the Project Linker tool and other techniques to create applications that target both WPF and Silverlight from a single code base.Erwin van der Valk