/recommends

C#

  • C#
  • Programming Languages
  • .NET
  • MonoGame
  • OpenTK
  • Visual Studio
  • Visual Studio Code
  • NuGet
  • ASP.NET
  • Xamarin
  • WPF
  • Windows Forms
  • Unity

C# (pronounced "C Sharp") is among the most relevant programming languages out there. It has a wide variety of applications, from simple executables all the way to Back Ends, Web Apps and Mobile Applications. Thanks to Game Engines like Unity, C# has also become a staple language for game development, which offers many conveniences that the traditional C++ doesn't have.

C# Basics

The first step is always the basics. These are covered within the first Semester, but if anyone wants some additional material to learn faster, here are some sources that cover everything one should know to start developing in C#.

  • Official API Guide - official tutorial provided by the developers of C# themselves
  • W3Schools Guide - although known for web related content, they also provide a tutorial for C#
  • Tutorialspoint Guide - while a little outdated, they provide many tutorials for more advanced topics that the others don't cover

Useful Resources

Tutorials are nice if you have no idea about anything, but once you got the gist and only look for specific topics they can get repetitive and boring. This is where these links come into play.

  • .NET API - the official .NET API from Microsoft
  • MonoGame API - mostly interesting for second semesters when developing with the MonoGame framework
  • OpenTK Introduction - goes into greater detail on the basics of OpenTK
  • NuGet Tutorial - NuGet is the built-in package manager for .NET projects and allows you to easily download code packages for your projects or extensions for VS

More Advanced Topics

These are topics that are neither covered nor required, but might be interesting to some.

  • ASP.NET Tutorial - ASP.NET allows the creation of interactive web apps through C#
  • Xamarin Tutorial - Xamarin is a useful tool to build cross-platform mobile apps with C#
  • WPF Tutorial - WPF is a powerful tool to build UIs for your C# applications
  • Windows Forms Tutorial - although outdated and no longer developed, WinForms can still be useful to build simple UIs and is a lot easier to get into than WPF
  • Unity Learning Platform - provides many official Unity tutorials for all skill levels, though they tend to be quite lengthy