Welcome to the Object Oriented Programming section of C# Corner. In this section, you will find OOP and OOD related tutorials, books, articles, source code samples, videos, and discussions.


  • David Mccarter

    Proper Type Encapsulation - Part Two

    In part 1 of this article, I explained how to implement proper data encapsulation. In part 2 I want to talk about encapsulating business logic. I see this missing in a lot of type design, especiall...
    David Mccarter Aug 02, 2018
  • Saillesh Pawar

    Replace If With Polymorphism With AutoFac DI Container

    As the title specify we will be Replacing the conditional if and Switch statement with the help of Polymorphism using DI container and talk about the benefits of doing the same in this article. Oop...
    Saillesh Pawar Jul 26, 2018
  • Hemant Jindal

    Composition And Aggregation

    This article describes Composition and Aggregation
    Hemant Jindal Jun 07, 2018
  • David Mccarter

    Proper Type Encapsulation - Part One

    Encapsulation is one of the fundamentals of OOP (object-oriented programming). It refers to the bundling of data with the methods that operate on that data. Encapsulation is used to hide the values...
    David Mccarter May 29, 2018
  • Gaurav Gahlot

    Understanding Relationship Between Objects

    The relationship between objects defines how these objects will interact or collaborate to perform an operation in an application.
    Gaurav Gahlot Jul 24, 2017
  • Nanddeep Nachan

    Learn About Mixin Pattern

    Mixin is an object oriented programming concept that has been used successfully in the enterprise application development scenarios. In an object oriented programming language, Mixin is a class whi...
    Nanddeep Nachan Apr 25, 2018
  • Pranay Rana

    Aborting Thread Vs Cancelling Task

    The below post is based on one of the question I answered on StackOverflow, in which the questioner wants to cancel a task when its taking too long to respond; i.e., taking too much time in executi...
    Pranay Rana Dec 12, 2017
  • Sandeep Sharma

    Introduction to Object-Oriented Programming

    This article is a brief introduction to OOP. The basic building blocks of object-oriented programming are the class and the object. A class acts as a blueprint/template to create the instances/obje...
    Sandeep Sharma May 21, 2014
  • Yogendra Kumar

    Explore Interface Vs Abstract Class

    Here I explore an Interface Vs an Abstract Class. An interface can only have a declaration but not a definition. An interface can only have methods, properties, indexers and events whereas a class ...
    Yogendra Kumar Apr 01, 2013
  • Vidya Vrat Agarwal

    OOP Series #2: Understanding Access Specifiers In C#

    This article explains access specifiers in C#. Access modifiers and specifiers are keywords to specify the accessibility of a type and its members. C# has 5 access specifier or access modifier keyw...
    Vidya Vrat Agarwal Oct 07, 2014
  • Pradeep Yadav

    Concept Of Factories In Object Oriented Programming

    Concept Of Factories In Object Oriented Programming.
    Pradeep Yadav Jun 07, 2017
  • Manish Agrahari

    Introduction to Object Oriented Programming Concepts in C#

    This article defines the Abstraction, Encapsulation, Inheritance and Polymorphism concepts in C#.
    Manish Agrahari May 29, 2013
  • Prageeth

    An Overview Of SOLID Principles

    An overview of SOLID Principles.
    Prageeth Apr 20, 2017
  • Akhil Mittal

    Diving Into OOP (Day 6) : Understanding Enums in C# (A Practical Approach)

    This article of the series “Diving into OOP” will explain the enum datatype in C#.
    Akhil Mittal Aug 15, 2014
  • Akhil Mittal

    Diving Into OOP (Day 5): All About Access Modifiers in C# (C# Modifiers/Sealed/Constants/Readonly...

    In this article we will cover each and every concept related to access modifiers in C#.
    Akhil Mittal Jul 01, 2014
  • Akhil Mittal

    Diving Into OOP (Day 4) : Polymorphism and Inheritance (All About Abstract Classes in C#)

    In this article of the series "Diving Into OOP", we’ll discuss the hottest and most exciting topic of OOP in C#, Abstract Classes.
    Akhil Mittal Jun 02, 2014
  • Akhil Mittal

    Diving Into OOP (Day 3) : Polymorphism and Inheritance (Dynamic Binding/Run Time Polymorphism)

    In this part of article we will focus more on run time polymorphism also called late binding or dynamic binding.
    Akhil Mittal May 17, 2014
  • Akhil Mittal

    Diving Into OOP (Day 2): Polymorphism and Inheritance

    Here we will focus solely on inheritance concept in OOP.
    Akhil Mittal May 11, 2014
  • Akhil Mittal

    Diving Into OOP (Day 1): Polymorphism and Inheritance (Early Binding/Compile Time Polymorphism)

    This article will cover almost every OOP concept that a novice/beginner developer might seek and not only beginners but this article's purpose is to be helpful to experienced professionals who ...
    Akhil Mittal May 09, 2014
  • Sahil Sharma

    Abstract Class & Interface: Two Villains of Every Interview - Part 1

    This article is the first part of the series "Abstract Class & Interface: Two Villains of Every Interview" and explains the important key points of Abstract Class.
    Sahil Sharma Sep 09, 2014
  • View More