Springer, 2007. — 264 p.
Object-oriented programming has opened a great many perspectives on the concept of software and has been hailed as part of the solution to the so-called “software crisis”. It has given the possibility that software components can be constructed and reused with considerably more credibility. There are now many case studies in which the reuse of object-oriented components has been made and analysed. Object-oriented programming relates the programming activity to that of modelling or simulation; objects are identified by a correspondence with the objects found in the application area of the program and are used to model those domain operations. Object-oriented programming also opens the prospect of more flexible software that is able to respond dynamically to the needs of the application at runtime.
It is very easy to think that object-oriented programming can be performed in only one way. The prevalence of C++ and Java suggests that they are the only way to approach the problem of what an object-oriented programming language should look like. There are many approaches to this way of programming and C++ and Java exemplify just one of these different approaches. Indeed, the way in which the concept of the object is interpreted differs between approaches and between languages.