Synopses & Reviews
This comprehensive examination of the main approaches to object-oriented language explains the key features of the languages in use today. Class-based, prototypes and Actor languages are all looked at and compared in terms of their semantic concepts. In providing such a wide-ranging comparison, this book provides a unique overview of the main approaches to object-oriented languages. Exercises of varying length, some of which can be extended into mini-projects are included at the end of each chapter. This book can be used as part of courses on Comparative Programming Languages or Programming Language Semantics at Second or Third Year Undergraduate Level. Some understanding of programming language concepts is required.
Review
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)
Synopsis
1.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."
Synopsis
This comprehensive examination of object-oriented language explains key features of the languages in use today. Class-based, prototypes and Actor languages are all examined and compared in terms of their semantic concepts. Requires some understanding of programming language concepts.
Table of Contents
Introduction.- Class Fundamentals.- Prototype and Actor Languages.- Inheritance and Delegation.- Methods.- Types I: Types and Objects.- Types II: Types and Objects-Alternatives.- C#.- BeCecil.- Bibliography.- Index.