Who This Course is For

Learn who’ll benefit from this course and what its prerequisites are.

Target audience

This course is aimed at software developers who specialize in C# and .NET and who are aiming to become better at software development. This course doesn’t introduce new technologies but teaches some industry-standard best practices.

Junior and mid-level developers would especially benefit from the course because they’re familiar with the C# syntax but don’t necessarily know the best ways of using the language. The course will help them enhance their skills and become better at problem-solving.

Prerequisites

All the code samples used in this course are written in C#. Therefore, the knowledge of C# and .NET fundamentals is absolutely essential before the learner can begin this course. In particular, knowledge of the following concepts is required:

  • Coding practices in C#

  • C# keywords, such as data type names, access modifiers, etc.

  • A fundamental understanding of a .NET project

  • Knowledge of object-oriented programming, including interfaces, abstract classes, and inheritance

Learning objectives

By the end of this course, the learner will be familiar with the following concepts:

  • Classic design patterns that are commonly used in object-oriented software development.

  • Identifying a situation where each of the design patterns is appropriate.

  • The pros and cons of each design pattern.

  • SOLID principles, which are foundational principles of clean code in object-oriented programming.