Nowadays, newly developed software packages are often obsolete already at the time of their introduction. Object-oriented software development is a possible if not the only solution to this dilemma: applications are modeled as software objects that describe the properties and the behavior of real-world entities. Such objects are encapsulated, in that they hide behind a publicly known interface the complexity of their internal data structures and behaviors. This enables objects to be used in a wide range of program packages without needing to know the details of their internal...
Nowadays, newly developed software packages are often obsolete already at the time of their introduction. Object-oriented software development is a...