Welcome to the CSharp Vlog OOP Showcase project! This is a C# console application designed to demonstrate core Object-Oriented Programming (OOP) principles through a fun, practical example involving writers, vloggers, promoters, and bodybuilders.
The goal of this project is to clearly illustrate how inheritance, abstraction, interfaces, and polymorphism work in C#, ideal for learners looking to understand real-world applications of OOP.
- CSharp-VlogOOPShowcase: A console app that:
- Defines a class hierarchy for writers and promoters.
- Demonstrates interface implementation for vloggers and bodybuilders.
- Uses method overriding and abstract classes to highlight polymorphism and abstraction.
- Outputs behaviors based on class types and interface implementations.
- Demonstrates inheritance through shared base classes (
Writer
,Promoter
). - Applies abstraction using abstract methods for reusable behavior.
- Implements interfaces (
IVlogger
,IBodyBuilder
) for behavior contracts. - Showcases polymorphism by interacting with objects via base types/interfaces.
- Clean separation of concerns using individual classes per role.
- Clear console output to illustrate which classes are performing which actions.
- Encourages good design principles in a playful, creative scenario.
- Writers and promoters inherit from abstract base classes and override methods for their specific behavior.
- Some classes implement multiple interfaces to represent diverse roles (e.g.,
XSClubPromoter
is a promoter, bodybuilder, and vlogger). - Lists of different base types (
Writer
,Promoter
,IVlogger
,IBodyBuilder
) are used to demonstrate polymorphic behavior viaforeach
loops. - Console output provides a trace of method calls based on the object's actual type.
I share with my Instagram followers.
I use Facebook ads.
I share with my Instagram followers.
I use Facebook ads.
I share with my friends.
I use Google AdWords.
I write books.
I write books.
I write for my own blog.
I work out at my house.
I work out at my house.
I vlog using my iPhone.
I vlog using my GoPro.
- Open the solution in Visual Studio or your preferred C# IDE.
- Set the project as the startup project.
- Press
F5
or run the project. - Observe the console output as the program executes behaviors via OOP constructs.
This project is licensed under the MIT License. Feel free to use, modify, and distribute it.
Contributions are welcome! You can fork the repo, submit issues, or open pull requests to improve the educational value of the project by:
- Adding new roles (e.g., Podcaster, Influencer) to extend the OOP demonstration.
- Enhancing the UI or making it interactive.
- Including logging or reporting tools.