This is a teaching material about object-oriented programming, illustrated with use of the programming language C#.

It is assumed, as a prerequisite, that the readers have some knowledge about imperative programming, preferably knowledge about C.

I believe that it is best to learn object-oriented programming after having learned and worked with imperative programming. Thus, we adhere to an “object later approach”. …