The Way
This website is divided in to three progressive levels.In the first beginner stage we will be discussing the .Net Framework, C# Language Fundamentals and Object Oriented Programming.
In the second intermediate section we will go into depth with Object Oriented constructs such as
inheritance, polymorphism,abstract classes,interfaces,structures,enumerations and exceptions. In the
third and final advanced section we will delve into what is required to implement read world applications
using C# with Base libraries,focusing on topics such as Collections,Delegates, Events and Windows
Programming with a number of controls, as well as Data Access with ADO.Net, Threads and Streams.
Tools of the Trade
Our examples have been written within the standard IDE (Visual Studio.Net). We recommend that you
obtain this. Microsoft are currently offering Visual Studio.Net 2005 Express Edition and Visual Studio .Net 2008 Express Edition or new version Visual Studio.Net 2010 Express Edition for free ,and this is available at http://msdn.microsoft.com/vstudio/express/. It is also possible to any text editor (such as Notepad) to write the C# code.
you will need to download and install the .Net framework SDK,which can be obtained freely from
http://msdn.microsoft.com/netframework/downloads/howtoget.asp. this is needed to run .NET
application and, more importantly for us, contains the c# Compiler that you will need to compile
programs you write.
Finally, for non -Windows users,the Mono Project supplies an open source c# compiler, .Net run time and class library implementation.For more information,see http://www.mono-project.com/.
The code examples in this website were written and tested with in the .Net Framework version 1.0, 1.1, 2.0, 3.0, 3.5,etc. And Visual Studio Any Platform, but should work fine later versions.They have not been tested with mono.
The C# Language
C# (Pronounced C-Sharp) is not doubt the language of choice in the .Net environment. It is a whole new language of the backward compatibility curse with a whole bunch of new, exciting and promising features. It is an Object Oriented Programming language and has at its core, many similarities to Java, C++ and VB.In fact, C# combines the power and efficiency of C++, the simple and clean OO design of Java and the language simplification of Visual Basic.
Like Java, C# also does not allow multiple inheritance or the use of pointers (in safe /managed code), but does provide garbage memory collection at run time, type and memory access checking. However, contrary to JAVA, C# maintains the unique useful operations of C++ like operator overloading, enumerations, pre-processor directives, pointers (in Unmanaged/un-safe code), function pointers (in the form of delegates) and promises to have template support in the next versions.Like VB.it also supports the concepts of properties (context sensitive fields). In addition to this, C# comes up with some new and exciting features such as reflections, attributes, marshaling, remoting,threads,streams, data access with ADO.Net and more
The .Net Architecture and .Net Framework
In the .net Architecture and .Net Framework there are different important terms and concepts which we will discuss one by one:-