csharpworkshop icon indicating copy to clipboard operation
csharpworkshop copied to clipboard

Workshop content on Learning C# on Linux using .NET Core

Workshop: Learning C# on Linux

This repository contains the content for a workshop I am putting together on Learning C# on Linux using .NET Core. This is a work in progress so feel free to contribute.

Also take a look at the official Microsoft C# Interactive Tutorial. Note that the online tutorial contains an interactive playground environment allowing you to try out the majority of the C# code in these exercises as well is you don't wish to install the dotnet environment on your machine.

A copy of the introductory slide deck accompanying this tutorial is available here.

Learning C# on Linux

C# is a modern, advanced general purpose programming language and is now fully open source and supported on Linux. In this short workshop you will learn how to be productive with the new modern C# on Linux, what it is like building high performance web workloads in ASP.NET and what tooling support you have available.

Target Audience: This workshop is aimed at developers with no prior knowledge of C# but have some experience with other programming languages or would like a refresher on the modern C# language.

Workshop Contents

  1. Getting Started - Installing pre-requisites and getting .NET Core installed on your system
  2. Hello C# World - Learn the structure of a basic C# program
  3. C# Language Basics - Learn the basics of the C# language such as variables, expressions, control flow, loops, type system, inheritance, generics and more.
  4. Properties - Defining properties in C# classes
  5. Delegates and Lambda expressions - Understanding delegates and lambda expressions in C#
  6. LINQ - An introduction to Language Integrated Query (LINQ)
  7. Asynchronous Programming - How to use .NET's built in support for asynchronous programming
  8. ASP.NET - Building Web Applications with ASP.NET Core

Additional Reading

For more information and additional tutorials related to learning C# on Linux see the following.

Books

C# has many excellent books from many different authors. While .NET Core is still very new there are not many books about it yet specifically but if you are an experienced developer wanting to learn C# the following books are excellent choices to learn more: