Conclusion
We have now come to the end of our journey. Even though you might have felt C# to be a bit difficult and at times, frustrating to understand, regardless you have increased your programming knowledge. In the world of programming, experience is the best teacher you can ever find. While we have tried our best to provide you with adequate explanations of concepts and advanced topics, you might still feel that something was missing. If that’s the case, then you are on the right track of learning. Anything that you feel is ambiguous, will serve as an impetus to a specific topic for research which will expose you to even more things, causing a domino effect. Every chapter in this book has tried to cover all of the aspects of C# programming to a certain extent, however, it is out of the scope of this book to completely dominate every advanced programming element of C#. Thus, it is important to provide the readers with the C# programming’s most important central information, if not the complete package. It is highly recommended that you research the aspects which confuse you, this will help clarify your concepts at a level which would otherwise have not been possible.
In short, we have explored the fundamental principles of object-oriented programming in the first chapter and learned how C# implements these principles through various functions. In the next chapters, we discovered the extended functionalities in C# programming such as using the ‘Reflection’ function in the .NET
framework to extract information from assemblies and use them. Finally, we move on to truly advanced C# programming topics such as using ‘GDI+
,’ working with Visual Studio .NET and the Event logger, and last but not least, understanding how to effectively use ‘UserControls
’ to create the interface of an application. All of these topics collectively define the C# programming paradigm and we hope that the reader learns and understands the core concept of every topic and discussion in these chapters. Exposure to a programming language can go a long way in a person’s programming career as someone might have to reverse engineer a mechanism built using programming languages like C#, C++, etc. So it’s recommended always to have the eagerness to learn a programming language no matter how intriguing it may seem.