C# Basics/

Introduction to C#

  • Developed by Microsoft in 2000, C# is a modern and object-oriented programming language.
  • With its versatility, C# is utilized in various areas such as web development, desktop applications for Windows, and mobile app development for Windows and iOS.
  • C# is a sophisticated language, built upon the foundations of C and C++, with a focus on simplification and modernity, including enhanced memory management and functional programming support.
  • C# is a widely-used language in game development, supported by popular game engines such as Unity, Unreal Engine, and Godot.

What is C#?

C# (pronounced "C sharp") is a modern, object-oriented programming language developed by Microsoft as part of the .NET framework. It is designed to be simple, powerful, and easy to learn, with a syntax that is similar to other popular programming languages such as C++ and Java.

C# is a general-purpose language, which means that it can be used to build a wide variety of applications, including desktop applications, mobile apps, web applications, games, and more. It is also a statically-typed language, which means that variables must be declared with a specific data type, such as an integer or a string, and the type of a variable cannot be changed at runtime.

In addition to its powerful syntax and wide range of capabilities, C# is also known for its robust set of libraries and frameworks, as well as its strong support for object-oriented programming concepts such as inheritance, polymorphism, and interfaces.

List of technologies and frameworks that uses the C# programming language:

  • ASP.NET Core: A cross-platform, high-performance framework for building web applications and APIs using C#.
  • Windows Forms: A UI framework for building desktop applications for the Windows platform.
  • WPF (Windows Presentation Foundation): A UI framework for building desktop applications for the Windows platform, using a markup language called XAML.
  • Windows Communication Foundation (WCF): A framework for building distributed, service-oriented applications.
  • Xamarin: A framework for building cross-platform mobile apps using C# and the .NET runtime.
  • Unity: A game engine that supports C# as its primary programming language.
  • MAUI (Multi-platform App UI): the next generation of Xamarin.Forms, that aims to make it easier to build cross-platform apps for iOS and Android.
  • Entity Framework: An Object-Relational Mapping (ORM) framework for interacting with databases using C#.
  • Linq: A powerful query language that allows you to filter and manipulate data using C# syntax.
  • SignalR: A library for building real-time, bidirectional communication applications using C#.
  • Microsoft Bot Framework: A framework for building conversational chatbots using C# and various platforms such as Skype, Slack, and Facebook Messenger.
  • Azure Functions: A serverless compute platform that allows you to run C# code in response to events such as HTTP requests, message queues, and scheduled tasks.
  • Blazor: a WebAssembly based framework for building web apps with C#, HTML and CSS.

The History and Evolution of C#

C# was first developed by Microsoft in the early 2000s as part of its .NET framework initiative. The first version of C#, known as C# 1.0, was released in 2002 along with the .NET framework 1.0.

Since its initial release, C# has undergone several major revisions and updates. C# 2.0, released in 2005, introduced significant new features such as nullable types, generics, and anonymous methods. C# 3.0, released in 2007, added support for LINQ (Language Integrated Query) and lambda expressions, as well as various other improvements and enhancements.

C# 4.0, released in 2010, introduced dynamic binding and named and optional arguments, as well as various other changes and improvements. C# 5.0, released in 2012, added support for asynchronous programming using the async and await keywords. C# 6.0, released in 2015, introduced a number of smaller improvements and enhancements, such as string interpolation and the null-conditional operator (?.).

C# 7.0, released in 2017, introduced features such as tuples, pattern matching, and local functions, as well as various other changes and improvements. C# 8.0, released in 2019, added support for asynchronous streams, nullable reference types, and default interface methods, as well as various other changes and enhancements.

Currenct version is C# 11.0.

C# Versions

Version Release Year
1.0 2002
1.2 2003
2.0 2005
3.0 2007
4.0 2010
5.0 2012
6.0 2014
7.0 2017
7.1 2017
7.2 2017
7.3 2018
8.0 2019
9.0 2020
10.0 2021
11.0 2022
}

ZetBit

Subscribe to ZetBits Newsletter