Module 04 of 09 · C# From Beginner to Advanced
Object-Oriented Programming
Model your problem with types that own their data and behaviour, and draw boundaries that hold up as the code grows.
8 of 8 lessons available
Lessons in this module
- 0116 min
Classes and Objects
BeginnerDefine a class that keeps related data together, and explain how reference types differ from value types.
- 0216 min
Constructors
IntermediateGuarantee an object is valid the moment it is created.
- 0316 min
Fields and Properties
IntermediateChoose between a field and a property, and control access to each.
- 0418 min
Encapsulation
IntermediateHide internal state so a type cannot be put into an invalid condition from outside.
- 0520 min
Inheritance
IntermediateShare behaviour through a base class, and recognise when composition is the better option.
- 0618 min
Polymorphism
IntermediateTreat different types through a shared contract using virtual and override.
- 0716 min
Abstraction and Abstract Classes
IntermediateDefine partial implementations that subclasses must complete.
- 0820 min
Interfaces
IntermediateDefine a contract independent of implementation, and explain why this enables testing.
Have a project worth talking through?
Tell us what you're building or what's slowing your current system down. We'll give you a direct read on scope and approach.