[ Course Contents ]
[ Prerequisites ]
[ Course Notes ]
[ Notes from Class ]
[ Computer Resources ]
[ Java Short Course ]
[ Programming Languages ]
[ Class Participants ]
During the past two decades, computers have been providing approximately
25% more power per dollar per year. This well established trend,
coupled with the advent of global networking, has allowed for the
reformulation of traditional engineering problems to
take advantage of these new technologies.
This semester's course will be partitioned into four blocks:
-
Trends in Computers and Computer Technology (1 week) :
Emerging trends in computers and computer technology.
High and low level computer languages.
Small computer programs and large computer programs.
Principles of Software Development.
Key components in a simple computer.
-
C Language (5 weeks) :
An overview of the C programming language.
How to write and compile a simple C program.
Basic data types and variables, operators and expressions,
and control of flow. Functions. Arrays and pointers.
Dynamic allocation of memory. User defined, structured,
and abstract data types.
-
Using C to solve Engineering Problems (4 weeks) :
Design of linked list and polygon data structures and algorithms.
Design and implementation of a matrix package suitable for
the numerical solution of engineering problems.
-
Java (2 weeks) :
What is Java ?
What principles of object-oriented development apply to Java ?
How is Java different from conventional programming languages ?
How do you write and compile a Java program (i.e. syntax,
control structures, compilers etc ..) ?
How do you write a Java applet ?
What libraries are available for Java development ?
What opportunities exist for using Java in the solution of engineering problems ?
Students will write C (and maybe Java) programs to solve a
family of progressively difficult engineering problems.
The only prerequisite for this class is some exposure to computer programming.
A knowledge of the C programming language is not required.
Course notes may be purchased at the Engineering Copy Center for $24.00.
The course notes contain a detailed description of the C language
and its application to the solution of engineering problems.
All of the
source code for the computer programs
is available on-line.
An introduction to html and Java will be available at the
Engineering Copy Center 1-2 weeks after the semester begins.
Supplemental material will be handed out in class throughout the semester.
There is no textbook for this class.
The Java short course notes are an introduction to Java for people already
familiar with programming languages such as C or C++. During the next
couple of months (i.e. until about Feb. 1997) these notes will be
evolving almost daily, so check back here often. We welcome feedback.
In this document you will find :
-
A taste of Java
- Writing the code
- Compiling the code
- Running the application
-
Java, a little history
- How everything got started
-
What is Java ?
- The "famous" java buzzwords
-
Object Oriented fundamentals
- Managing complexity
- Is Java Object Oriented ?
- Encapsulation
- Inheritance
- Polymorphism
-
The Java language
- Introduction
- Comments in code
- Primitive data types
- Flow Control
- Classes and Objects
- Arrays
-
Java Versus C
- No preprocessor
- No global variables
- No pointers
- Garbage collection
-
The Java environment (JDK)
-
Application examples
- Fibonacci Sequence
- Sorted Lists
-
What is an applet ?
- Introduction
- How they work
-
Applet examples
- 'Paix' applet
- 'SimpleDraw' applet
-
Class Libraries
- Libraries currently available
- Libraries in development
-
Bibliographies
- A list of reference books
Copyright © 1996-1997, David Chancogne
and Mark Austin.
All rights reserved.
Here is a list of programming language resources:
-
VIRTUAL REALITY MARKUP LANGUAGE (VRML)
Visitors (since September 3, 1996) :
Click here
to E-mail your comments.
Developed in September, 1996 by Mark Austin
Last Modified November 8, 1996
Copyright © 1996, Department of Civil Engineering,
University of Maryland