A collection of C# console application exercises built to establish a strong foundation in object-oriented programming before applying these principles inside a game engine.
Standalone C# programs exploring core OOP concepts through two practical themes: home appliances and video game systems. Each file isolates a specific concept to reinforce understanding through focused, deliberate practice.
| Concept | Description |
|---|---|
| Classes | Modeled real-world objects (appliances, game entities) as structured blueprints with fields and methods |
| Inheritance | Built class hierarchies where child classes extend parent behavior (e.g. a specific appliance inheriting from a base Appliance class) |
| Properties | Controlled access to class data using getters and setters, enforcing encapsulation across objects |
| Polymorphism | Called the same method across different object types and observed varied, type-specific behavior at runtime |
Rather than jumping straight into Unity without understanding the language underneath it, I took time to learn C# fundamentals through isolated, themed exercises. These concepts — especially interfaces and inheritance — map directly to how Unity's component system and MonoBehaviour architecture work under the hood.
- Interfaces and abstract classes and when to use each
- Generic types and collections for managing groups of game objects
- Applying these OOP patterns inside Unity to build a component-driven game system
- Language: C#
- Environment: .NET Console Application