Structural and Behavioral Design Patterns

Structural and Behavioral Design Patterns In this tutorial you will learn about Structural Patterns – Adapter, Bridge, Composite and Proxy. You will also learn about Behavioral Patterns – Iterator and Observer.Category : Structural Pattern Design Pattern : Adapter Brief Description : Highlights of the Adapter Design Pattern are: – This is a Structural Design Pattern and focuses on how the objects interact – relationships/interfaces between entities and objects – The key players are Generic Object with its interface Client specific Object with client specific interface Adapter Object that adapts the… Read More

Creational Design Patterns

Creational Design Patterns Creational Design is one of the Design Patterns used with .NET. In this tutorial you will learn about Creational Design Patterns, Factory Method, Abstract Factory, Builder, Prototype and Singleton. Creational Patterns : * Factory Method * Abstract Factory * Builder * Prototype * Singleton Category : Creational Pattern Pattern : Factory Design Brief Description : This being a ‘creational design pattern’ it focuses on how the objects are created. In the Factory design pattern – the client uses a specialized object solely to create other objects. In… Read More

Software Architecture & Design Patterns

Software Architecture & Design Patterns This article reviews some of the architecture Design patterns for Enterprise Applications built using the .NET Platform. Application Architecture: Software Applications come in all shapes and sizes. Based on their design and architecture enterprise applications can be classified into various categories such as: * Distributed Applications * Web Applications * Web Services * Smart Client Applications This article reviews some of the architecture Design patterns for Enterprise Applications built using the .NET Platform. Simply put Application architecture is: – Set of significant decisions about how… Read More

C# Language Basics

This article provides an overview of the C# Language. The various elements and building blocks of the C# language are explained. Background What is C# all about? C# was developed at Microsoft. It is an object-oriented programming language and provides excellent features such as strong type checking, array bounds checking and automatic garbage collection. We will explore these and several other features in this article. C# has features that make it an excellent choice for developing robust distributed n-tier Enterprise applications, web applications, windows applications and embedded systems. It is… Read More

. NET Type Safety

. NET Type Safety   This Article discusses “What is Type Safety?” in the context of .NET, What is Type Safety? How does Type Safety affect us? Why is Type Safety Important? Writing Type-Safe Code. How is Type Safety ensured? What is Verifiable Type Safe Code? Verification process, How to determine if the code is type safe? What if the Code is not verifiably type safe? and What can happen if the Code is not verifiably type safe?   What is Type Safety? Type safe means preventing programs from accessing… Read More

.NET Remoting

.NET Remoting Remoting enables software components to interact across application domains. The components interacting with each other can be in different processes and systems. This enables us to create n-tier Distributed applications. For more details on N-tier Applications see the article on n-tier Applications in this series. In this article we try to explain .NET Remoting in a clear and concise manner The .NET Remoting Architecture: Here is a simplified illustration of the .NET Remoting Architecture. The Key Players are: ………..– Client Object ………..– Server (Remote) Object ………..– Proxy Object… Read More

Regular Expressions in C# – Quantifiers and Delegates

Regular Expressions in C# – Quantifiers and Delegates In this tutorial you will learn about Quantifiers, Grouping constructs, Backreferences, Backreference Constructs, Alternation Constructs, Miscellaneous Constructs, System.Text.RegularExpressions Namespace, Delegates in the namespace System.Text.RegularExpressions and Typical Examples of Regular Expressions. Quantifiers Quantifiers add optional quantity data to a regular expression. A quantifier expression applies to the character, group, or character class that immediately precedes it. Quantifier Description * Specifies zero or more matches; for example, \w* or (abc)* + Specifies one or more matches; for example, \w+ or (abc)+ ? Specifies zero… Read More

Regular Expressions and C#, .NET

Regular Expressions and C#, .NET This Article explores the concept of Regular Expressions in the context of C#, .NET support for Regular Expressions, Meta-characters and their Description, Character Escapes, Substitutions, Character Classes, Regular Expression Options and Atomic Zero-Width Assertions. What are regular expressions? Regular expressions are Patterns that can be used to match strings. You can call it a formula for matching strings that follow some pattern. Regular expression(s) can be considered as a Language, which is designed to manipulate text. You can then ask questions such as “Does the… Read More

Inheritance in C#

Inheritance in C# This article discusses Inheritance concepts in the context of C# Before we understand Inheritance in C# it is important to understand the key players involved, viz Objects, Classes and Structs Classes and Structs are ‘blue-prints’ or templates from which we instantiate (create) objects Example a car may be created based on its blue print Car is the object and blue print is the class (or template) What are types? An object can be of the following types – Class or Struct There are many differences between the… Read More

Building Web Based N-Tier Applications using C#

Building Web Based N-Tier Applications using C# This article explores the N-tier and Distributed Application Architecture. Over the last decade, the way applications are designed has evolved and come a long way. We have stand-alone applications, server based applications, client server applications, web based applications, n-tier applications, distributed applications, Peer-to-peer apps, service-oriented Architectures, component based Development and the list goes on. This article discusses the advantages, disadvantages of n-tier applications and methods to implement web based n-tier Applications using C#, .NET Why N-Tier Applications? N-Tier Applications can easily implement the… Read More

Delegates in C#

Delegates in C# Most programmers are used to passing data in methods as input and output parameters. Imagine a scenario where you wish to pass methods around to other methods instead of data. Amazed! Read further. Consider a scenario where you need to make a ‘business decision’ in your program, to make a decision you need data. To get data you need to call a method. However the method name is not known at design time. It will only be known at run time. In this case you need to… Read More