Skip Repetitive Navigational Links

Free .NET Tutorials and Technical Articles

 

 

David Hayden This is a subset of the articles I have written on ASP.NET, C#, Sql Server, Object-Oriented Programming, and patterns and practices. Some of them are in-depth with extensive code examples while others are part of either a book review or in response to other technical articles I have read on the Internet. You can find more .NET articles and tutorials like these on my blog. Click on a link below to find articles about that particular topic:

 

Agile Software Development

Many of these articles are based on the book Agile Software Development. Principles, Patterns, and Practices by Robert C. Martin. The code samples in the book are weak, but the content on object-oriented programming principles and design patterns is fantastic. Note that this book has examples in C++ and Java.

 

ADO.NET 2.0

 

ASP.NET

These are mainly articles from others with details on ASP.NET. Great resources to have on hand.

 

Back to Basics

A number of articles about basic programming using the .NET Framework.

 

Blog Engines

If you are an ASP.NET developer or at least ASP.NET Savvy, I recommend these two blog engines for ASP.NET

DasBlog is wickedly easy to install and great for a personal blog. It does not require a database and takes about 15 minutes to install and set-up. Did I mention it is free and comes with source code? :)

Community Server offers more than just a blog, it also has forums and a photo gallery. There is a free community version and it also comes with source code.

 

C# 3.0 Tutorials

For those interested in the next version of C#, C# 3.0, that will be available during Visual Studio Orcas.

 

Design Patterns

If you are interested in Design Patterns, you will also want to look at the articles on Agile Software Development and GRASP Patterns as there is much overlap:

 

Enterprise Library Application Block v2.0

Various articles on how to use the Enterprise Library Applications Block v2.0 released by Microsoft for enterprise development.

I also mention Enterprise Library in some additional articles concerning object-oriented principles and design patterns:

 

Enterprise Library 3.0

Various Enterprise Library 3.0 Tutorials Based on the December 2006 CTP.

 

Expert C# Business Objects

I was so impressed with Rockford Lhotka's Expert C# Business Objects book that I wrote a chapter by chapter review of Expert C# Business Objects:

 

GRASP Patterns

GRASP, General Responsibility Assignment Software Patterns, is a learning aid for assigning responsibilities to objects. I was introduced to these patterns while reading Craig Larman's Applying UML and Patterns - An Introduction to Object-Oriented Analysis and Design and Iterative Development.

There are 9 GRASP Patterns and I have written about most of them:

  • Information Expert ( Part I and Part II ) - A general principal of object design and responsibility assignment?
  • Creator - Who creates?
  • Controller - What first object beyond the UI layer receives and coordinates a system operation?
  • Low Coupling - How to reduce the impact of change?
  • High Cohesion - How to keep objects focused, understandable, and manageable?
  • Polymorphism - Who is responsible when behavior varies by type?
  • Pure Fabrication - Who is responsible when you are desperate, and do not want to violate high cohesion and low coupling?
  • Indirection - How to assign responsibilities to avoid direct coupling?
  • Protected Variations - How to assign responsibilities so that the variations or instability in the elements do not have an undesirable impact on other elements?

I have also written a few articles about how the GRASP Patterns relate to a few popular software applications like DotNetNuke, Community Server, and Enterprise Library:

 

High Performance ASP.NET Websites

After attending the Tampa .NET Developer Code Camp in July 2005, I decided to write the following few articles on building high performance ASP.NET websites. My goal was to explain how developers can easily build high performance ASP.NET websites with little effort by leveraging the built-in functionality of ASP.NET.

Here are posts about other resources to help with ASP.NET Website Performance:

 

Object-Oriented Principles

Here are a few articles on Object-Oriented Principles, which is one of my favorite topics.

 

SQL Server

 

SQL Server Management Objects ( SMO )