Register for both Java
courses (Introduction to Java) page 22 and receive a 10% discount off the
total registration fee!
Class Description:
By the use of lectures and
demonstrations, this mini-course will introduce you to what still remains
as one of hottest languages around, the Java programming language. Unlike
C++, Java is a modern-featured, very strongly-typed, object-oriented,
events-driven, error-handling, safe language, that remains platform
independent and capable of running efficiently in many diverse
environments, thus directly challenging other languages, such as C/C++, in
the marketplace.
Attendees will learn the
syntax and use of the Java programming language, how to design and use
data structures, classes, objects, overloaded methods, inheritance,
polymorphism, function templates known as generics and other new features
in Java. The course introduces the modern day concepts of object oriented,
event driven programming in an easy to understand way, comparing
constructs in Java with other programming languages when beneficial.
Whenever possible, the instructor will illustrate the practical benefits
and gotcha’s of using Java for coding projects. Optional homework
programming assignments will be available to those wishing to further
their understanding by practice.
Prerequisite:
“Introduction to Java”
sister course or prior programming knowledge, ideally in JavaScript,
C/C++ or C#, and exposure to some object programming would be helpful.
Targeted for:
Those programmers with some
understanding of C/C++, C# or Java and Object Oriented Programming
exposure wishing to enhance their level of understanding. Attending the
“Introduction to Java” sister course is recommended for those wishing to
learn Java from the ground up. Although the class will proceed at a fast
pace, individuals who keep up with the reading assignments, or have some
programming experience, will have no problem keeping up with the class.
The material in this course
is appropriate for individuals wishing to learn how to write command line
and console Java applications. Although this course does not go into
writing windows applications (swing and applets), the fundamental concepts
covered in this course should make transitioning to a windows base
application relatively straight forward. The class is structured to be as
interactive as possible by making use of live demonstrations that review
and emphasize the concepts taught in the class and optional homework
projects.
PRELIMINARY DETAILED
AGENDA:
Class 1 -
Object-Oriented Programming and Inheritance
Review wrapper classes,
iteration, maybe String tokenizer, StringBuffer.
Creating and using
user-defined custom objects.
Review classes, class
member visibility, constructors, destructors;
Properties and methods,
inheritance, extending classes, overloaded constructors and methods;
Passing objects by value
using references, static methods (functions), static data member.
Introduction to derived
classes.
Class 2- Abstract
classes, Interfaces, I/O Streams and Files
Brief overview/review of
console and file Input/Output, streams, file operations, formatting.
Details on derived
classes, constructors in base and derived classes, overriding methods,
and two uses of this and super.
Abstract classes and
implementing interfaces, (pure virtual) abstract functions. Discussions
of composition and aggregation, is-a vs has-a.
If time permits,
introduction to using threads, Java2 event handlers and Action/Item
Listeners such as interacting with a mouse within the simple environment
of a Java Applet.
Class 3- Java 5 Features
and Advanced Topics
Introduction to JavaBeans
concept.
No-arg constructor,
private fields with full setters and getters.
Review Java-2 Event
Handlers and Action/Item Listeners
Comparable interface and
sorting collections, arrays.
Other Java version 1.5
enhancements:
Foreach, enum, variable
arglist, generics, static imports, autoboxing.
Brief discussion of
serialization, introspection/reflection, database connectivity, possibly
remote method invocation (RMI).
Handouts:
Copies of the course
outline slides will be provided along with relevant handouts when
appropriate.
Lecturer’s biography:
An honor graduate of Tufts
University, Jeffrey M. Goldberg has served the engineering and academic
community in various roles from principle design engineer / project leader
to senior consultant and educator at companies such as Hewlett Packard,
Siemens, Picturetel, 3Com, IBM, NMS, and EMC. Mr. Goldberg is a long-time
innovative user of UNIX and networked services. He currently provides IT
solution consulting and delivers public seminars and on-site professional
training classes, flexibly scheduled to avoid project disruption, in
cutting-edge technologies and programming languages. Specialties include
Perl and Shell Scripting, Linux/Solaris/UNIX System Administration, TCP/IP
Networking, Web Technologies such as Visual Basic, Delphi, JavaScript, PHP
Apache, C/C++/Java, Java/JSP and SQL Database Access, Computer and Network
Security. For more information, please visit
http://www.qualware.com/training or contact Jeff Goldberg at
781-229-1530 x2.
copywrite 2007 Qualware
Instructional Services and Jeff Goldberg.
Registration includes course handouts and text book