You are on page 1of 3

 Dot Net is the result of the secret project called “Next Generation Windows Services”

(NGWS) performed by Microsoft under the direct supervision of Mr. Bill Gates.

 .Net comes with a Single Class Library. Programmers need to know only the class
library.

 All the languages (VB.Net, C#, J# and Managed C++) supported by .Net framework use
the same class library. There is no class, specific to any .Net language.

 There is nothing more we can do in a .Net language, which can’t be done in the other
.Net language, because all the languages use the same class library.

 We can write code in VB.Net or C# with the same number of lines of code, same
performance and same efficiency, because everyone use the same class library.

 .Net is a platform neutral framework.

 .Net framework is a layer between the operating system and the programming language.

 .Net provides a common set of class library that can be accessed from any .Net based
languages. There is no separate set of classes and libraries for each language.

 In future versions of Windows, the .Net framework will be freely distributed as a part of
the operating system and the users will never have to install it separately.

 .Net is neither an operating system nor a programming language. It is a new, easy and
extensive programming platform.

 .Net is a common platform for all the supported languages. It provides a common class
library, which can be called from any of the supported languages.

 When we write a code in any .Net based language and compile, it will be converted into
an Intermediate Language (Microsoft Intermediate Language – MSIL). Therefore the
compiled executable contains only IL and not the executable machine language.

 (To execute a .Net based application in a PC, it must have the .Net framework installed in
it.)
 When the .Net application runs, the .Net framework installed in the target computer takes
care of the execution.

 The .Net framework converts the calls to .Net class libraries to the corresponding APIs of
the operating system.

 There won’t be any performance difference based on the language we write code.

 Visual Studio.Net is just an editor provided by Microsoft to help developers write .Net
programs easily.

 Visual Studio.Net automatically generates some code, allows developers to drag and
drop controls to a form, provide shortcuts to compile and build the application etc.,

 Visual Studio.Net is not a required thing to do .Net programming. We can use a notepad
or any other simple editor to write our .Net code and we can compile our .Net program
from the command prompt.

 Whether we write code in VB.Net or C#, when we compile the code, it will be converted
into MSIL (Microsoft Intermediate Language). It is this MSIL, which we are going to
deliver to our client as DLL or EXE.

 The MSIL generated by VB.Net and C# are almost 99% same. The only difference is that
VB.Net has the backward compatibility with the old Visual Basic. So it supports old VB
functions. But C# is a fresh and clean language.

 VB.Net and C# are equally powerful and user friendly.

 Platform Independence:

The code we write is platform independent, because, on compilation it gets converted


into platform independent MSIL. There is no native code, which depends on the operating
system or CPU.

When we execute the MSIL, the .Net frame work in the target computer will convert MSIL
into native platform code.
So, if we run our .Net Exe in a Windows machine, the .Net framework for Windows will
convert the MSIL into Windows native code and execute.

If we run our .Net exe in a Unix/Linux machine, the .Net framework for Unix/Linux will
convert the MSIL into Unix/Linux native code and execute.

So our code is platform independent and runs anywhere.

Microsoft has written the .Net framework only for Windows. There is no .NET
framework for Unix or Linux available now. So we can’t run .Net Exe on Unix/Linux
machines until someone writes the .Net framework for Unix/Linux.

using System;

System is a namespace. The using directive says that all the classes belonging to the System
namespace can be used without prefixing the qualifier (System).

For example, Console is the class contained in the namespace System. To use this class we
have to actually write,

System.Console.WriteLine(“Hello World”)

But using System; directive on the top of the class allows us to use the Console class without
including the System namespace as the qualifier. So we can simply write,

Console.WriteLine(“Hello World”)

public static void Main (string[] args) - is the Main method, which is the starting point of the
application.

string[] args is the list of arguments that are passed to this application.