Book Image

Learning .NET High-performance Programming

By : Antonio Esposito
Book Image

Learning .NET High-performance Programming

By: Antonio Esposito

Overview of this book

Table of Contents (16 chapters)
Learning .NET High-performance Programming
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Object-oriented design principles


C# is a general-purpose language that can work in a managed environment. It is the .NET Common Language Runtime (CLR) that handles the most tricky logic for us, such as the lifecycle of variables and their removal from memory, process isolation, thread abstraction, variably safe typing, and so on.

Although we will assume that we will use C# only in object-oriented programming (OOP), the language itself supports other paradigms as well.

Note

In terms of class design, the following tenets are at the basis of OOP:

  • Encapsulation: Any class can hide its core logic in external items.

  • Inheritance: Any class can expand the capability of a mother class, by adding more specific properties or adding/changing logics.

  • Polymorphism: Any object, if extended by inheritance, when compared to other objects of the same parent family, may produce different business results by applying the eventually changed logic as allowed by inheritance, creating what names a polymorphic behavior...