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 |