Overview of C# programming

About C# Programming Language

In 2000, Microsoft announced the C# programming language. C# has roots in C, C++ and Java. C# has similar capabilities to Java and is appropriate for the most demanding app-development tasks, especially for building today’s large-scale enterprise apps, web-based, mobile and “cloud”-based apps .

C# is object oriented and has access to the powerful .NET Framework Class Library—a vast collection of prebuilt classes that enable you to develop apps quickly.

C# is event driven. You’ll write programs that respond to user-initiated events such as mouse clicks, keystrokes, timer expirations, touches and finger swipes—gestures that are widely used on smartphones and tablets.

C# also allows asynchronous programming in which multiple tasks can be performed at the same time. Asynchronous make your apps more responsive to user interactions, such as mouse clicks and keystrokes, among many other uses.

The .NET Framework

The .NET Framework provides a comprehensive development platform that offers a fast and efficient way to build applications and services. By using Visual Studio, you can use the .NET Framework to create a wide range of solutions that operate across a broad range of computing devices.

The .NET Framework provides three principal elements:

  • The Common Language Runtime (CLR).
  • The .NET Framework class library.
  • A collection of development frameworks.

The Common Language Runtime

The .NET Framework provides an environment called the CLR. The CLR manages the execution of code and simplifies the development process by providing a robust and highly secure execution environment that includes:

  • Memory management.
  • Transactions.
  • Multithreading.

The .NET Framework Class Library

The .NET Framework provides a library of reusable classes that you can use to build applications. The classes provide a foundation of common functionality and constructs that help to simplify application development by, in part, eliminating the need to constantly reinvent logic.

For example, the System.IO.File class contains functionality that enables you to manipulate files on the Windows file system. In addition to using the classes in the .NET Framework class library, you can extend these classes by creating your own libraries of classes.

Development Frameworks

The .NET Framework provides several development frameworks that you can use to build common application types, including:

  • Desktop client applications, by using Windows Presentation Foundation (WPF).
  • Windows desktop applications, by using XAML.
  • Server-side web applications, by using Active Server Pages (ASP.NET) Web Forms or ASP.NET MVC.
  • Service-oriented web applications, by using Windows Communication Foundation (WCF).
  • Long-running applications, by using Windows services.

Each framework provides the necessary components and infrastructure to get you started.

Key Features of Visual Studio

Visual Studio provides a single development environment that enables you to rapidly design, implement, build, test, and deploy various types of applications and components by using a range of programming languages.

Some of the key features of Visual Studio are:

  • Intuitive integrated development environment (IDE) - provides all of the features and tools that are necessary to design, implement, build, test, and deploy applications and components.
  • Rapid application development. - provides design views for graphical components that enable you to easily build complex user interfaces.
  • Server and data access. - provides the Server Explorer, which enables you to log on to servers and explore their databases and system services. It also provides a familiar way to create, access, and modify databases that your application uses by using the new table designer.
  • Internet Information Services (IIS) Express - provides a lightweight version of IIS as the default web server for debugging your web applications.
  • Debugging features - provides a debugger that enables you to step through local or remote code, pause at breakpoints, and follow execution paths.
  • Error handling - provides the Error List window, which displays any errors, warnings, or messages that are produced as you edit and build your code.
  • Help and documentation - provides help and guidance through Microsoft IntelliSense®, code snippets, and the integrated help system, which contains documentation and samples.

Visual Studio Community vs Visual Studio Code

You can download from official websites one the following Microsoft IDE's and tools to build and test all the code examples in the C# programmming tutorials.

# C# Compilers/Editors Click to download
1 Microsoft Visual Studio Community Download
2 Microsoft Visual Studio Code Download

Ads Right