C# SELF
Never programmed in C#? No problem! This 66-level quest will take you from zero to pro. You will learn the basics of C# syntax, learn how to create classes and objects, master OOP principles and work with collections. Then dive into advanced topics: LINQ for working with data, asynchronous programming, multithreading and events. Learn how to work with files, data serialization, master the modern capabilities of C# 14 and .NET 9. And also study regular expressions, reflection and best practices of enterprise development. You will master JetBrains Rider, learn to write code like a real C# developer.
- Level 1
Locked Commands and the first program - Level 2
Locked Introduction to int and string types. Keyboard Input - Level 3
Locked Conditional Operator - Level 4
Locked Cycles - Level 5
Locked Installing IDE, Codegym Plugin - Level 6
Locked Real Numbers - Level 7
Locked Arrays - Level 8
Locked Functions (Methods) - Level 9
Locked Advanced String Handling - Level 10
Locked Constants, Structures, Enum, and Switch - Level 11
Locked Tuples and Local Functions - Level 12
Locked Classes and Objects - Level 13
Locked Exceptions try, catch, finally - Level 14
Locked Nullable Reference Types (NRT) - Level 15
Locked Working with Dates, Time, and Timezones - Level 16
Locked Classes and Constructors - Level 17
Locked Properties and Access Modifiers - Level 18
Locked Indexers and Extension Members - Level 19
Locked DTO, record, and with - Level 20
Locked Inheritance and Class Hierarchy - Level 21
Locked Polymorphism and Method Overloading - Level 22
Locked Abstraction and Abstract Classes - Level 23
Locked Interfaces: Basics and Contracts - Level 24
Locked Advanced Interfaces - Level 25
Locked Typical Mistakes and OOP Best Practices - Level 26
Locked Version Control: Working with Git and GitHub - Level 27
Locked Collection Types and Generics - Level 28
Locked Main Collection Interfaces - Level 29
Locked Working with Collections - Level 30
Locked Comparators and Comparison objects - Level 31
Locked LINQ Basics: Simple Queries and Data Filtering - Level 32
Locked Advanced LINQ: Grouping and Aggregate Functions - Level 33
Locked Advanced LINQ: Joins and Projections - Level 34
Locked Optimizing Work with Collections - Level 35
Locked Basics of Working with Files in C# - Level 36
Locked Reading and Writing Files - Level 37
Locked Working with File Encodings - Level 38
Locked Handling Errors When Working with Files - Level 39
Locked Working with the File System - Level 40
Locked Managing Files and Directories - Level 41
Locked Optimizing Input/Output - Level 42
Locked Asynchronous File Operations - Level 43
Locked The Concept of Data Serialization - Level 44
Locked Classes and Libraries for Serialization - Level 45
Locked Configuring Object Serialization - Level 46
Locked Serialization of Collections - Level 47
Locked Working with JSON Data - Level 48
Locked Working with XML Data - Level 49
Locked Lambda Expressions in C# - Level 50
Locked The Relationship between Lambda Expressions and Delegates - Level 51
Locked Functional Programming - Level 52
Locked Events in C#: Concept, Creation, and Processing - Level 53
Locked Event Life Cycle - Level 54
Locked Best Practices for Event-Driven Programming - Level 55
Locked Multithreading Basics in C# - Level 56
Locked Thread Synchronization - Level 57
Locked Common Multithreading Issues - Level 58
Locked Thread-Safe Collections - Level 59
Locked Asynchronous Programming - Level 60
Locked Using Tasks: Task - Level 61
Locked Error Handling in Asynchronous Code - Level 62
Locked A Deep Dive into Asynchrony - Level 63
Locked Reflection and Dynamic Types - Level 64
Locked Logging, Monitoring, and Tracing - Level 65
Locked Memory Structure in .NET - Level 66
Locked Final Project