This course
note continues the development of
programming and problem-solving skills, focusing on object-oriented programming
and design (OOP/OOD), and improved programming practices. Topics include: an
introduction to the Java programming language, encapsulation and information
hiding, proper program and class design, inheritance, polymorphism, and
generics. Other topics may be added, time permitting.
Author(s): University of Maryland, Baltimore County
This PDF focuses on the methodologies and techniques of
object-oriented analysis and design. It starts with the basic overview of object
orientation and system development. After that, it goes into details about
various object relationships and dynamic binding. The key OOAD methodologies
include a discussion on the Rambaugh methodology, OMT-Booch, Jacobson, and the
Unified Approach. This paper further goes in-depth with UML by elaborating on
class diagrams and dynamic modeling. The development process, which is described
in this outline, includes phases like inception and elaboration. Additional
topics include design axioms, class visibility, and methods. Other topics
include OODBMS and interaction diagrams. This will be helpful for students and
professionals alike in learning about the different methodologies of OOAD and
how these are applied practically to the design of systems.
Author(s): Sri Chandrasekharendra Saraswathi
Viswa Mahavidyalaya
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.