You May Have Never Learned This Lesson Right
Автор: Zoran on C#
Загружено: 23 нояб. 2023 г.
Просмотров: 13 952 просмотра
Ever since extension methods were added to C#, programmers have struggled to figure out the proper use for them and their purpose in software design.
There are three principal roles where extension methods come in handy:
1. In metaprogramming - we extend a type without modifying it. That lets us add orthogonal concerns to classes we develop and even to foreign types we have no control over. How wonderful! It is a pity that this idea brings a whole pile of novel problems we didn't have before.
2. In functional extensions - we add pure functions that operate on models, typically generically, so that they apply to any model. We can seamlessly extend the domain model in ways never conceived during their design. How wonderful! But beware: this approach requires implementation purity and interface generality. That is a formidable combination of goals if you plan to achieve them.
3. When attempting to combine models, especially object-oriented and functional ones - that is the programming model that modern C# advocates. You can implement features that apply to specific models or even to a larger class of models if the method is generic. By systematically using extension methods, you can achieve great interoperability of models in a complex application.
Watch this video to learn how to utilize extension methods in domain modeling effectively. That skill will pay off manifold once you encounter a difficult situation with many responsibilities pertaining to a set of models. Knowing which responsibilities fit extension methods and which should remain as instance-level methods is sometimes the decisive factor in either developing a successful or failing to do so.
✅🔔 Become a patron ► / zoranhorvat
✅🔔 Subscribe ► / @zoran-horvat
⭐ Learn more from video courses:
Beginning Object-oriented Programming with C# ► https://codinghelmet.com/go/beginning...
⭐ Collections and Generics in C# ► https://codinghelmet.com/go/collectio...
⭐ Making Your C# Code More Object-oriented ► https://codinghelmet.com/go/making-yo...
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
⚡️Chapters:
⌚ 00:00 Intro
⌚ 02:11 Metaprogramming extension methods
⌚ 04:37 Functional extension methods
⌚ 08:54 Functional extensions with OO model
⌚ 12:01 Conclusion
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
⭐ CONNECT WITH ME 📱👨
🌐Become a patron ► / zoranhorvat
🌐Buy me a Coffee ► https://ko-fi.com/zoranhorvat
🗳 Pluralsight Courses ► https://codinghelmet.com/go/pluralsight
📸 Udemy Courses ► https://codinghelmet.com/go/udemy
📸 Join me on Twitter ► / zoranh75
🌐 Read my Articles ► https://codinghelmet.com/articles
📸 Join me on LinkedIn ► / zoran-horvat
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
👨 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.❤️
▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬
⚡️RIGHT 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.
⭐For copyright or any inquiries, please contact us at [email protected]
#csharp #dotnet #functionalprogramming

Доступные форматы для скачивания:
Скачать видео mp4
-
Информация по загрузке: