C# Predefined Types

There are 16 predefined types in C#. These types can be divided into:

  1. Simple Types(13)
  2. Non-Simple Types(3)

All these predefined types are in lowercase characters.

The C# predefined types map directly to underlying .NET Base types.

The C# names are the aliases for thes...


Normally you a constructor allows you to psecify startup values when creating an object.

On the other hand properties allow you to set or get the underlying data of an object in a safe manner.

However, it's not easy to create a single constructor that sets the underlying state data of an o...


Code normally doesn't work as expected. Failures do occur and will continue to as long as it's humans writing code. Some failures are even beyond the control of the programmer.

It's therefore imperative that applications be able to detect failures. And handle them gracefully. This is by taking the...


A Dictionary is a public class we can use to represent a collection of keys and values.

It's a collection of KeyValuePairs.

It'a generic type:


that resides in the System.Collections.Generic:

namespace System.Collections.Generic

Normally Collections that aren't...


Programs are meant to manipulate data. And these data do exist in various types.

Sometimes you need to convert one data type to another.

C# provides us around six ways of converting data from one form to another:

  1. Implicit Conversions.
  2. Data Casting.
  3. Using the as Operator.
  4. Data Parsing.
  5. ...

Common Intermediate Language

Common Intermediate Language is abbreviated as CIL.

This is an Intermediate Language onto which code found in an assembly exists.

CIL sometimes is also called IL(Intermediate Language) or MSIL(Microsoft Intermediate Language).

CIL Sits above .NET language.



A data type is a data representation which determines the following:

  1. How the values of a given type are stored in memory.

  2. The set of values that are stored.

  3. The set of operations that can be applied to all the values in that set.

A data type can also simply be referred to as a typ...


A variable in programming domain is a program element that stores a value.

Or more technically it is a named piece of memory that can hold data of a specific type.

For instance a program can allocate 4 bytes of memory for storing an integer.

It points to a location in the memory that has data...


Asynchronous Programming involves writing applications that are designed to perform more than one task at a time.

This is vital no matter your target platform. Be it desktop,web or mobile environment.

Asynchronous programming allows us create more capable and scalable applications. This is beca...


Overview of .NET Assemblies

.NET binaries takes the same file extensions as unmananged windows binaries.These binaries in the form of .dll or .exe. This applies to all .NET languages. Normally .NET binaries do not have platform-specific code, ratjer it contains platform-agnostic code. This code is...