Transcript Slide 1

Object-Oriented
Application Frameworks
CS 3331
Fall 2009
CS 3331
1
What’s a Framework?

A set of cooperating (abstract) classes and
interface that:
 Represent
reusable designs of software systems in a
particular application domain,
 Provide semi-complete applications that can be
specialized to produce custom applications, and
 Defines conventions for extending the abstract
classes, implementing the interfaces, and allowing
their instances to interact with one another
CS 3331
2
Examples

Small frameworks
 Applets, AnimationApplet,

DBAnimationApplet, etc.
GUI frameworks
 AWT
and Swing
 MFC

Distributed programming frameworks
 RMI
 J2EE
 CORBA
CS 3331
3
Why Frameworks?

Main goal is:


To support reuse of design and
implementations in particular application
domains
Benefits

Quick and easy application development
 Reliable application (i.e., high confidence)
 Standardized applications
CS 3331
4
Characteristics
 Extensibility
 Inversion
of control
 Design patterns as building blocks
CS 3331
5
Questions
How frameworks differ from conventional
OO libraries?
 How frameworks differ from design
patterns?

CS 3331
6
Frameworks To Be Discussed
GUI frameworks (AWT and Swing)
 Collection classes
 Input and output classes

CS 3331
7