
×
From the reviews:
„There are a lot of books concerning object-oriented programming or object-oriented languages, but only a very small number of them compare object-oriented languages or treat their characteristics in common. The author’s textbook belongs to them. The book focuses on the concepts of inheritance, encapsulation, polymorphism and their interactions in object-oriented languages. … The book can be used for second or third year undergraduate courses.“ (G. Riedewald, Zentralblatt MATH, Vol. 1128 (6), 2008)
Object-Oriented Programming Languages: Interpretation
von Iain D. Craig1.1 Introduction 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 constructedandreusedwithconsiderablymorecredibility. Therearenowmany 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 identi? ed 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 ? exible 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 onlywaytoapproachtheproblemofwhatanobject-orientedprogrammingl- guage should look like. There are many approaches to this way of programming andC++andJavaexemplifyjustoneofthesedi? erentapproaches. Indeed, the wayinwhichtheconceptoftheobjectisinterpreteddi? ersbetweenapproaches and between languages. The two main approaches found in object-oriented programming languages are, respectively, class-based and prototype-based languages. Class-based l- guages are exempli? ed by Smalltalk [34], C++ [75, 74] and Java [47]. This 2 1. Introduction approach is based upon the identi? cation of common properties of objects and their description in terms of a de? nitional structure called a class. The objects manipulated by class-based programs are the result of instantiating classes.