Master the Design of Classes (Part 3) @zoran-horvat
Master the Design of Classes (Part 3)  @zoran-horvat
Uploaded June 2024 | Updated September 2026, 3 weeks ago
Watch the full video: youtu.be/jwCW446hoPk

We use interfaces to improve expressiveness.
This class is wrapping up a few pieces of information that define a book's release, such as the publisher, the edition, and so on.
There are several ways to represent the book's edition, hence an interface.
The long video explains how this model came to be.
In this video, I only want to point out that we define the interface to support variation in types.
Then, through the process of evolving the model, we let behavior settle in.
Some behavior will naturally fit into the interface, and the idea will be complete.
This interface represents the book's edition. The new method I added supports advancing to the new edition in a polymorphic way.
As I said, watch the long video for more ideas on designing an object model. This example should give you an idea how powerful that can be.

Become a sponsor to access source code ► patreon.com/zoranhorvat
Join Discord server with topics on C# ► codinghelmet.com/go/discord
Enroll course *Beginning Object-Oriented Programming with C#* ► codinghelmet.com/go/beginning-oop-with-csharp
Subscribe ► youtube.com/channel/UCxsWfh8LCcn55mFB6zGBT1g?sub_confirmation=1
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
👨 About Me 👨
Hi, I’m Zoran, I have more than 20 years of experience as a software developer, architect, team lead, and more. I have been programming in C# since its inception in the early 2000s. Since 2017 I have started publishing professional video courses at Pluralsight and Udemy and by this point, there are over 100 hours of the highest-quality videos you can watch on those platforms. On my YouTube channel, you can find shorter video forms focused on clarifying practical issues in coding, design, and architecture of .NET applications.❤️
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
⚡️COPYRIGHT NOTICE:
The Copyright Laws of the United States recognize a “fair use” of copyrighted content. Section 107 of the U.S. Copyright Act states: “Notwithstanding the provisions of sections 106 and 106A, the fair use of a copyrighted work, including such use by reproduction in copies or phono records or by any other means specified by that section, for purposes such as criticism, comment, news reporting, teaching (including multiple copies for classroom use), scholarship, or research, is not an infringement of copyright." This video and our youtube channel, in general, may contain certain copyrighted works that were not specifically authorized to be used by the copyright holder(s), but which we believe in good faith are protected by federal law and the Fair use doctrine for one or more of the reasons noted above.
Master the Design of Classes (Part 3)There Is Life Beyond ExceptionsHow to Design a Reusable C# LibraryThe Ultimate Guide to C# RecordsExtend EF Core to Track Immutable RecordsProgrammers Massively Fail on ThisPersisting C# Records in Dapper: Why They Must Share the TableEmbrace the Result Type With All Its Strengths and FlawsAdvent of Code 2024 Day 10 - Full SolutionHow to Implement Strongly Typed IDs with EF Core and ASP.NET Core Razor PagesValidating Records in C#: Everything You Ever Wanted To Know but Had No One To AskPlanning Mode is a Dangerous Illusion
Zoran on C# |

Master the Design of Classes (Part 3)

SHARE TO X SHARE TO REDDIT SHARE TO FACEBOOK WALLPAPER