Object-Oriented Programming Fundamentals in C#
This course takes you, step by step, through the principles and practices of object-oriented programming (OOP). The course provides you with the firm foundation in OOP that you need to progress to intermediate-level C# courses.
What you'll learn
This course takes you through the principles and practices of object-oriented programming (OOP). The course provides you with the firm foundation in OOP that you need to progress to intermediate-level C# courses. It begins by showing you how to turn a set of words into a set of well-defined and related classes. Through demonstrations, it teaches you key object-oriented concepts such as abstraction, encapsulation, inheritance, polymorphism, and interfaces.
Table of contents
- Introduction 1m
- Layering the Application 2m
- Building the Business Logic Layer Component 2m
- Building a Class: Properties 5m
- Using Snippets 3m
- Testing the Class 2m
- Testing the Class: Valid Values 5m
- Testing the Class: Invalid Values 2m
- Working with Objects 2m
- Objects Are Reference Types 2m
- Static Modifier 2m
- Checklists and Summary 3m
Object-oriented programming (OOP) is a type of computer programming using "objects" to represent data and methods. It is juxtaposed with "procedural programming".
The biggest advantage of OOP is the ability to create modules that don't need to be altered when a new type of object is added. Objects can inherit features from existing objects, so object-oriented programs are much easier to modify.
OOP languages include, but are not limited to:
The 4 basics of OOP are encapsulation, abstraction, inheritance, and polymorphism. We will go over these in detail in the course, but for now, just know that these are what differentiates object-oriented programming from other types of programming.
You will learn the fundamental practices and principles of object-oriented programming through:
- Identifying classes from requirements
- Building entity classes and methods
- Separation of responsibilities
- Establishing relationships
- The concepts of Inheritance and Polymorphism
- Building reusable components
- Understanding interfaces
- Abstraction and encapsulation
- Much more
This course is for anyone who wants to learn the fundamentals of object-oriented programming (OOP). Anyone who wants to better leverage the features of C# or other OOP languages should take this course.