Apply skills and approaches to your programming to build a real-world application in C# 9 using the latest editions of Visual Studio, C#, and Microsoft .NET. Each chapter opens with an introduction and original application written in C# 9 for you to jump into coding. From there, you are guided through an expected output and taught best practices along the way. Author Vaskaran Sarcar emphasizes extending and maintaining the same program and he demonstrates examples for different scenarios to make your program more efficient and effective.
This book is divided into four parts. The first part starts with a detailed discussion of polymorphism. It then shows you how to make proper use of abstract classes and interfaces, and you will know which technique to use for a specific scenario. Discussions on code comments teach you how to use them effectively, and why you need to be careful with code comments.
In the second part youwill learn six design principles, including SOLID and DRY principles. These are the foundation of well-known design patterns and they establish practices for developing software with considerations for maintaining and extending as a project grows.
The third part takes you through the methods to make efficient applications. You will learn the common use of factories to separate code from its opposite and the alternative of inheritance using object composition and wrappers. This part also demonstrates the use of template methods, hooks, and facades in programming. Hints show you how professional coders develop an enterprise application.
In the fourth and final part you will learn about effective memory management techniques by preventing leaks in your application and the use and misuse of design patterns. This part also discusses how to decide between a static method and an instance method and other techniques, in brief.
After reading this book, you will beable to implement best practices to make your programs more effective and reliable.
What Will You LearnAnalyze the alternative solutions before implementation by comparing the pros and consMake polymorphic code perform betterKnow the side-effects of bad/redundant commentsUnderstand the significance of the SOLID and DRY principlesAdd features using wrappersRedefine steps without altering the calling sequence of an algorithmUse hooks in your applicationConvert a complex system into a user-friendly system using facades Run your application in .NET 6 Who Is This Book ForDevelopers with a basic knowledge of C#
Vaskaran Sarcar is an Indian author, formerly employed at HP India PPS R&D Hub,Bangalore. He holds a M.E. in Software Engineering from Jadavpur University, a MCA from Vidyasagar University, and a B.Sc (Math) from Presidency University(formerly Presidency College). He is also a National Gate Scholar (2007-2009), and has more than 12 years of experience in Education and the IT industry. Vaskaran devoted his early years (2005-2007) to teaching at various engineering colleges, and later he joined HP India PPS R&D Hub Bangalore.After working more than 10 years at HP, on August 12, 2019, Vaskaran announced that he would be leaving HP. At the time of his retirement from HP, he was a Senior Software Engineer and Team Lead at HP. To follow his dream and passion, Vaskaran is now a full-time author. His "off-line" interests include spending quality time with his family and reading books that aren't about software! You can connect with him at vaskaran@rediffmail.com or find him on LinkedIn at https://www.linkedin.com/in/vaskarans....
Other books by the author include the following:
Design Patterns in C#( Second Edition,Apress,2020) Getting Started with Advanced C#(Apress,2020) Interactive Object-Oriented Programming in Java (Second edition,Apress,2019) Java Design Patterns (Second edition,Apress 2018) Design Patterns in C#( Apress,2018) Interactive C# (Apress,2017) Interactive Object-Oriented Programming in Java (Apress, 2016) Java Design Patterns (First Edition)(Apress, 2016), C# Basics: Test Your Skill (CreateSpace, 2015), and Operating System: Computer Science Interview Series (CreateSpace, 2014).