Introduction to c#
C# was developed to provide the following benefits:
- Created a very simple and yet powerful tool for building inter-operable, scalable, robust applications
- Create a complete object-oriented architecture.
- Support powerful component-oriented development.
- Allow access to many features previously available only in c++ while retaining to ease-of-use of a rapid application development tool such as Visual Basic.
- Provide familiarity to programmers coming from c or c++ background.
- Allow to write applications that target both desktop and mobile devices.
Purpose of c# language
Microsoft.NET was formerly known as Next Generation Windows Service (NGWS). It is completely new platform for developing the next generation of windows/web applications. These applications would transcend devices boundaries and fully harness the power of the Internet. However, the new platform required a language that could take its full advantage. This is one of the factors that led to the development of c#.
C# is an object-oriented language derived from c and c++. The goal of c# is to provide a simple, efficient, productive, object-oriented language that is familiar and yet at the same time revolutionary.
.NET Framework Fundamentals
The .NET Framework is an essential windows component for building and running the next generation of software applications and XML web services.
The .NET Framework is designed to:
- Provide consistent object-oriented programming environment
- Minimize software deployment and versioning conflicts by providing a code-execution environment.
- Promote safe execution of code by providing a code-execution environment.
- Provide a consistent developer experience across varying types of application such as windows-based applications and web-based applications.
.NET Framework Components
The .NET Framework has two principal components. They are:
1. The Common Language Runtime (CLR)
The common language runtime is the backbone of .NET Framework. It performs various functions such as:
- Memory Management
- Code execution
- Error handling
- Code safety verification
- Garbage collection
2. The .NET Framework Class Library (FCL)
The class library is a comprehensive object-oriented collection of reusable types. It I used to develop applications ranging from traditional command-line to graphical user interface (GUI) applications that can be used on the web.