Object Oriented Programming for Scientific Computing
Object Oriented Programming for Scientific Computing
Object Oriented Programming for Scientific Computing
This note explains
the following topics: Short recapitulation of basics of object-oriented
programming in C++, Memory management , Constant values and objects, Error
handling, Inheritance, Dynamic polymorphism, Static polymorphism, The Standard
Template Library, Traits, Policies, Template metaprogramming, Expression
templates, C++11 threads.
This University of Mumbai textbook covers Object-Oriented Programming in
as much depth as possible, starting off with an introduction to Object-Oriented
Methodology and the Principles of OOP necessary to understand the structure of
OOP. The book then goes on to cover Classes and Objects with great depth: a
description of how to define and interact with them. This explains Constructors
and Destructors, further explaining through Polymorphism and Virtual Functions
how dynamic behavior in programs is handled. Inheritance has been explained in
detail to show how classes can be extended and reused. The text also discusses
Exception Handling in order to handle errors in a structured manner and Working
with Files in order to persist data. This book would therefore be important to
both students and practitioners who wish to consolidate their understanding of
OOP concepts and their application in programming.
Following
is an exploration of object-oriented program design with an emphasis on how to
make the transition from Scheme to Java. Covers: Java mechanics and data types;
static fields and the Singleton pattern; simple graph algorithms, object
oriented data structures-all in a very hands-on way. Discusses GUI programming,
graphical user interfaces, including design. This resource, therefore, presents
theoretical findings appropriately supported with practical examples that are
very crucial in the understanding of object-oriented design principles and their
application in Java; thus, it is suitable for learners seeking to upgrade their
programming skills and knowledge in design.