- Commands and the first program
- Introduction to types
intandstring. Keyboard input - Conditional statement
- Loops
- Setting up the IDE, the JavaRush plugin, basics of debugging
- Floating-point numbers
- Arrays
- Functions / Methods
- Advanced string operations
- Constants, the keyword
var, basic arithmetic operators - Nullable Reference Types (NRT)
- Exceptions
try,catch,finally enum,switch, and pattern matching- Value tuples (Value Tuples) and local functions
- Working with dates, time and time zones
- Classes, Objects and Constructors
- Access Modifiers and Properties
- Indexers and Extension Members (C# 14)
Records– Immutable data types- Inheritance and Class Hierarchies
- Polymorphism
- Abstraction
- Interfaces: Basics and Contracts
- Advanced Interfaces: Default Interface Methods and Static Members
- Common mistakes and OOP best practices
- Introduction to version control: working with Git and GitHub
- Module final project
- Collection types and Generics
- Core collection interfaces (
IEnumerable,IList,IDictionary) - Collection methods: sorting, filtering, searching
- Comparators and object comparison
- LINQ basics: simple queries and data filtering
- Advanced LINQ: grouping and aggregate functions (with new methods in .NET 9)
- Advanced LINQ: joins and projections
- Optimizing collections and high-performance types
- Basics of file handling in C#
- Reading and writing files (
StreamReader,StreamWriter) - Working with file encodings
- Error handling and security when working with files
- Working with the file system (
File,FileInfo,Directory,DirectoryInfo) - Managing files and directories (create, copy, delete, move)
- I/O optimization (
BufferedStreamand other methods) - Asynchronous file operations (
ReadAsync,WriteAsyncand others) - Concepts of data serialization and deserialization
- Classes and libraries for serialization in .NET
- Serialization and deserialization of objects
- Serialization of collections and complex objects
- Working with JSON data
- Working with XML data
- Lambda expressions in C#
- Relationship between lambda expressions and delegates
- Fundamentals of functional programming: anonymous functions, higher-order functions
- Events in C#: concept, creation and handling, and
EventHandler - Event lifecycle: subscribing, unsubscribing, management
- Best practices for event-delegate programming
- Multithreading basics in C#: creating and managing threads
- Thread synchronization and shared resource management
- Common multithreading issues: race conditions, deadlocks
- Asynchronous programming:
async,await, asynchronous methods - Using tasks (
Task) and parallel computations (Parallel.For,Parallel.ForEach) - Error and exception handling in multithreaded and asynchronous code
- Advanced synchronization mechanisms
- Deep dive into asynchrony (
ValueTask,Channel, testing asynchronous code)
- Basics and syntax of regular expressions
- Practical use of regular expressions with the
Regexclass - Reflection, dynamic types and Source Generators
- Logging, monitoring and tracing
- Overview of key improvements in .NET 9 and future trends
300+
Lectures
400+
Tasks
68
Tests
Also:
- Instant grading
- AI code validator
- IDE plugin
- WebIDE
- Gamification
- Motivational lectures