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.
Course info
Rating
(2913)
Level
Beginner
Updated
Mar 11, 2019
Duration
3h 26m
Table of contents
Course Overview
Introduction
Identifying Classes from Requirements
Building Entity Classes
Building Entity Classes - Methods
Separation of Responsibilities
Establishing Relationships
Leveraging Reuse through Inheritance
Building Reusable Components
Understanding Interfaces
Final Words and Next Steps
Description
Course info
Rating
(2913)
Level
Beginner
Updated
Mar 11, 2019
Duration
3h 26m
Description

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.

Course FAQ
Course FAQ
What is Object-oriented programming (OOP)?

Object-oriented programming (OOP) is a type of computer programming using "objects" to represent data and methods. It is juxtaposed with "procedural programming".

What are the advantages of object-oriented 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.

What are some of the most prominent object-oriented programming languages?

OOP languages include, but are not limited to:

  • JavaScript
  • Python
  • C#
  • Ruby
  • Java
  • C++
  • PHP
What are the 4 basic principles of OOP?

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.

Are there prerequisites for this course?

Before starting this course you should be familiar with basic C# syntax and have some experience with Visual Studio.

What will I learn in this course?

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
Who is this course for?

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.

About the author
About the author

Deborah Kurata is a software developer, consultant, Pluralsight author, Google Developer Expert (GDE), and Microsoft Most Valuable Professional (MVP). Follow her on twitter: @deborahkurata

More from the author
Angular: Getting Started
Beginner
5h 52m
Aug 6, 2020
Angular NgRx: Getting Started
Beginner
4h 14m
Jun 30, 2020
Defensive Coding in C#
Beginner
2h 14m
Jan 2, 2020
More courses by Deborah Kurata
Section Introduction Transcripts
Section Introduction Transcripts

Course Overview
Hello. My name is Deborah Kurata, and I'd like to welcome you to my course, Object-Oriented Programming Fundamentals in C#. This course takes you on a journey through the principles, practices, and terminology of object-oriented programming. Along the way, we'll build a sample application with unit tests so you can code along or use it as a reference for your own development. Some of the major topics that we cover include identifying classes from requirements, separating responsibilities for focused classes, defining relationships between classes, and leveraging reuse through inheritance, interfaces, and polymorphism. By the end of this course, you'll know more about object-oriented concepts so you can better leverage the features of C# to build well-crafted and testable applications. Before beginning this course, you should be familiar with basic C# syntax and have some experience with Visual Studio. I hope you'll join me on this journey to learn object-oriented programming in C#, at Pluralsight.