 |
The Center for Geometric
Computing
at Brown University and
Johns Hopkins University
and Algomagic Technologies,
Inc.
present
a short course on
|
|
High-Performance Programming in Java:
Collections and Beyond
[Overview] [Audience]
[Program] [Instructors]
[Registration]
[PDF Version for Printing]
Overview
In this practical, hands-on course, students will learn new techniques
for rapidly developing high-performance software in Java. The recently
introduced Java
Collections Framework and related Java class libraries provide general-purpose
algorithms and data structures that can be used to build an "algorithms
layer" in an object-oriented design. These libraries have important
benefits such as:
-
Correct and efficient solutions to problems that are usually difficult
and expensive to implement.
-
Improved program readability through standard interfaces.
-
Tailored implementations by selecting among classes that satisfy the same
interface.
This course teaches how to take advantage of these powerful class libraries
to develop efficient and robust solutions to complex problems. A
number of sophisticated and practical algorithms and data structures are
presented.
The first part of the course focuses on the Java Collections Framework,
one of the new features of the JDK 1.2. The second part covers more advanced
data-structuring techniques that extend the functionality of the Java Collections
Framework.
The course includes lectures and lab sessions, where students will develop
a variety of applications. A certificate of completion of the course will
be issued.
The course is sponsored by the Center
for Geometric Computing at Brown University and Johns Hopkins
University, and by Algomagic Technologies, Inc..
Audience
The intended audience is software developers, engineers, and scientists
interested in writing more efficient Java applications. A working knowledge
of the Java programming language is assumed.
Program
Object-Oriented Design of Data Structures and Algorithms
-
abstract data types and Java interfaces
-
overview of object-oriented design patterns
-
algorithms as objects
-
algorithmic design patterns
-
the algorithms layer
-
benefits of algorithms and data structures libraries
The Java Collections Framework
-
limitations of the java.util package in JDK 1.1
-
collections and maps
-
iterators and comparators
-
general-purpose and wrapper implementations
-
abstract implementations
-
polymorphic algorithms
-
exceptions
-
interoperability
Using the Java Collection Classes
-
elementary data manipulation
-
searching
-
sorting
-
developing custom implementations
|
Beyond the Java Collections Framework
-
limitations of the Collections framework
-
JGL[tm]: The Generic Collection Library for Java
-
JDSL: The Data Structures Library for Java
-
new design patterns for data access: Position, Locator, and Decoration
-
position-based and key-based containers
Sequences and Trees
-
nodes and positions
-
array-based and link-based implementations
-
an improved Vector class
Priority Queues and Dictionaries
-
keys, items, and locators
-
heaps
-
hash tables
-
red-black trees
-
skip-lists
Graphs and Networks
-
decorations
-
graph traversals
-
shortest paths and minimum spanning trees
|
Instructors
Robert F. Cohen, President, Algomagic Technologies, Inc.
Michael T. Goodrich,
Professor of Computer Science, Johns Hopkins University
Roberto Tamassia,
Professor of Computer Science, Brown University
The instructors are international experts in algorithms, data structures,
and software engineering Cohen has extensive experience in teaching
professional software development courses in the U.S. and internationally.
Goodrich and Tamassia are authors of the highly acclaimed book Data
Structures and Algorithms in Java.
Registration
The course fee includes class notes, the book Data
Structures and Algorithms in Java by Goodrich and Tamassia (Wiley,
1998), lunches, and coffee breaks. Reduced fees are available for companies
that are members of the Industrial Partners Programs of the Computer Science
Departments at Brown and Johns Hopkins, for academic institutions, and
for government organizations. Discounts for multiple participants from
the same institution can be arranged.
January 21-22, 1999
9 am - 5 pm
Brown University
Department of Computer Science
115 Waterman Street
Providence, RI 02912-1910
|
March 18-19, 1999
9 am - 5 pm
Johns Hopkins University
Department of Computer Science
3400 N. Charles Street
Baltimore, MD 21218
|
|
|
|
|
|
Further Information
|
Further Information
|
Roberto
Tamassia
Last modified: Fri Jan 8 14:58:59 EST 1999