Object-oriented programming: an assessment of fundamental concepts and design considerations
Alan Lee Fink
Abstract
Alan Lee Fink
Abstract
The latest buzzword penetrating the professional computer science literature is Object-Oriented Programming. Computer scientists extol its theoretical virtues while developers explore its potential for streamlining the process of software development. Amidst all this activity there remains substantial confusion about fundamental concepts and the programming language mechanisms which implement these concepts. Too often, students of object-oriented programming mistake proficiency in an object-oriented language for efficient application of object-oriented techniques. The immediate consequence is poorly conceived, sometimes conflicting, efforts at exploiting reusability, information hiding and other object-oriented capabilities. This thesis reviews the benefits attributed to object-oriented programming, arrives at definitions for fundamental concepts, advances recommendations for conducting object- oriented analysis and object-oriented design, and reviews some tradeoffs which designers need to consider when developing object-oriented classes and hierarchies. Object-Oriented Analysis, Object-Oriented Design, Object-Oriented Programming, Object-Oriented Programming Language.
A significance statement is not available in the OpenAlex record.
A contribution statement is not available in the OpenAlex record.
Method details are not available in the OpenAlex metadata.
Findings are not separately available in the OpenAlex metadata.
Limitations are not available in the OpenAlex metadata.
Application details are not available in the OpenAlex metadata.
The latest buzzword penetrating the professional computer science literature is Object-Oriented Programming. Computer scientists extol its theoretical virtues while developers explore its potential for streamlining the process of software development. Amidst all this activity there remains substantial confusion about fundamental concepts and the programming language mechanisms which implement these concepts. Too often, students of object-oriented programming mistake proficiency in an object-oriented language for efficient application of object-oriented techniques. The immediate consequence is poorly conceived, sometimes conflicting, efforts at exploiting reusability, information hiding and other object-oriented capabilities. This thesis reviews the benefits attributed to object-oriented programming, arrives at definitions for fundamental concepts, advances recommendations for conducting object- oriented analysis and object-oriented design, and reviews some tradeoffs which designers need to consider when developing object-oriented classes and hierarchies. Object-Oriented Analysis, Object-Oriented Design, Object-Oriented Programming, Object-Oriented Programming Language.
Key concepts: Computer science, Method, Object-oriented programming, Programming language, Object (grammar), Reusability, Software engineering, Programming language theory