Software development course for beginners and junior developers. You will master the developer profession from scratch and add the knowledge of the popular C# programming language and the .NET platform to your arsenal at a level sufficient to start working in an IT company.

The course establishes a level of proficiency in the C# programming language sufficient to get you started. The main emphasis is on practice.
During the laboratory work you will learn the basics of C# syntax, learn how to work with built-in language types and the .NET platform, learn unit testing, memory management in CLR, callbacks and LINQ, get an idea of parallelism and asynchronous programming.

By the end of the course you will learn:

  • Understand the basic elements of the .NET Framework and the relationship of C# to the elements of the .NET platform;
  • work in the Microsoft Visual Studio development environment;
  • Create, debug, compile and run programs in C#;
  • use language expressions and exception handling;
  • Understand the basic concepts and terminology of object-oriented programming;
  • Mix managed and unmanaged code;
  • understand and develop multithreaded programs.

Course syllabus

  • Development tools. Installing the right products, setting up the environment
  • Basics of C#. Reinforce your knowledge of basic syntax and the C# type system
  • Working with text and data. We learn how to work with data streams (Stream), files and text. Learn about regular expressions.
  • C# Object Model. Getting to grips with Object Oriented Programming
  • Unit testing, the basics of memory management in .NET. Getting to know the tools and principles of unit testing, using NUnit as an example. We start learning the inner workings of CLR
  • Callback mechanisms, LINQ. Using delegates and lambda expressions, writing integrated queries
  • Fundamentals of multithreading. Learning to run tasks in parallel, getting to know TPL
  • Accessing databases from C# applications.