Writing Java programs for newcomers to programming.
Duration:
5 days • Price:
$3300.00 or £1650.00 +VAT (with hotel room), or
$2700.00 or £1350.00 +VAT (without room), •
Venue:
Melksham, England
COURSE START DATES
Usually scheduled to meet customer needs or run as a private course. Please email for details
DESCRIPTION
This course introduces you to programming in the Java programming
language.
The course starts with an introduction to programming techniques, using the
Java language. You'll learn how to write and run programs, how to store
information in variables within your programs, and how to make decisions and
repeat pieces of code (loops).
One of the big strengths of Java is the way it lets you write code that's
shareable through a whole suite of programs. Such code is structured into
"methods", "objects", "classes" and "packages". The course studies the
theories of this scheme (known as object oriented programming), and shows
you how to design and write your own classes, and how to make effective use
of the huge library of standard classes supplied with Java.
Handling text through string objects, and using standard collection
objects such as arrays, vectors, stacks and hashtables is covered once you
have a good grounding in how Java's objects work. We also cover
input, output and exception handing in some depth on this section
of the course. Threads, serialisation, synchronisation and
internationalisation will also be overviewed.
There's a whole terminology associated with Java, and we'll ensure that
you know your "JVM"s from your "JRE"s, and you know when you would use
Applets or Servlets, beans and JSPs. The course includes a section on
managing all your files, arranging them into packages and jars, setting
up your environment so that they're accessible later. We'll show you
examples of different environments in which Java can be used - on a
web server, within a browser, etc.
The course concludes with a section on resources that are available,
and a forward-looking lecture that overviews many more of the
facilities available in Java, and what they can do for you.
October 2004 - Important note re: Java Introduction Courses
We haven't scheduled any further dates for this course, even though the rest of courses are planned (and dates on our web site) right through to the end of 2005. To some extent, we're the "victim of our own success". As the trainer, I've now got just one week before Christmas that I'm not booked to give a course and we've been steadily growing year on year. Excellent, enthusiastic dedicated trainers are hard to find (who in their right mind would want to finish in Dublin at 7pm on Friday and start in Melksham at 9 am on Monday?), so we're not easily able to expand even if we wanted to, so we've had to review the public courses we offer carefully. We've been presenting Java since 1996 - it's a great language for the right application, and it's probably the language that's most used of all those that I teach. However - Java courses are available elsewhere (not as good, of course ;-) ) and it's not quite an open source, niche language like the others that we cover - so we've reluctantly decided to drop the public courses - there are only 52 weeks in a year, after all, and that will leave us able to concentrate on the other subjects even better.
We've got a really great customer base, many of whom have learnt several subjects including Java with us, and we are looking to avoid any of them who require future Java training to not be left high and dry. Because of this, there *is* a slight chance we'll do an occasional course in the future and/or offer an alternative. Please ask.
PREREQUISITES
This is a "learning to program" course and no previous
programming knowledge is required.
Getting the most from your Well House Consultants course
[
Link]
SUBJECT BACKGROUND
%about%
COURSE CONTENT
Shorter description available: [Link]
| Java Introduction (module J601) The fundamental elements of Java.
Source Code.
Class files.
The Java Runtime Environment.
The Java World.
Java development environments and tools.
Java Runtime Environments.
Java distributions.
Java standard packages.
Java versions.
|
| Hello Java World (module J702) A first program explained.
Methods and classes.
Blocks and statement structure.
Declaring classes and methods.
Within a statement.
Reserved words.
Commenting your source.
The code in operation.
A further program.
|
| Variables (module J703) First use of variables in Java.
Variable names.
Declaring and initialising variables.
Primitive types.
Type casting and conversion.
Reading input from the user.
|
| Loops and Conditional Statements (module J704) Booleans.
"if" statement.
"while" loop.
"for" loop.
Labels and breaks.
|
| Analysing a Programming Task (module Q904) A small job.
Learning about the job.
Working it out.
Writing.
Testing.
Error Handling.
As a job gets larger.
Summary.
|
| Object Orientation: Individual Objects (module Q906) A History.
Unstructured Code.
Subroutines, functions, procedures.
Structured Programming.
Object Oriented Programming.
A note on political, or religious issues.
Introduction to OO Programming.
Classes.
Methods.
Static and Nonstatic.
Instances.
Constructors.
Destructors.
Overloading.
Accessing members of a class.
Loading.
Use.
Direct access to variables.
Testing.
Encouraging class use.
|
| Arrays (module J705) Definition and declaration.
Use.
Array manipulation and replacement.
Multidimensional arrays.
Arrays of Objects.
|
| Objects and Classes (module J706) Using an instance of a class.
Some detail of using an object.
Writing your own class.
Enhancements to the basic class structure.
Class or static methods.
Direct variable access.
this.
Overloading.
An example.
Naming conventions.
Alternative:.
|
| Strings (module J707) Character variables.
String constants.
Creating String objects.
Operations on strings.
Comparing strings.
Accessing characters within strings.
Character arrays v String objects.
String buffers.
|
| Packages (module J708) Overview.
Package directory structure.
Importing classes from a package.
Introduction to standard packages.
|
| Class Access (module J709) Private, public, protected.
Inner classes.
"finalize" method.
|
| Object Orientation: Composite Objects (module Q909) Revision.
Inheritance.
Base classes and subclasses.
What's inherited?.
Overriding.
Abstract classes.
Polymorphism.
Inheritance structure.
Multiple Inheritance.
Class structure.
Hierarchy.
Visibility.
Designing Objects.
|
| Extending Classes and More (module J710) Extended classes.
Encapsulation.
Alternative exercise.
Abstract Classes.
Getting your design right.
The universal superclass.
Interfaces.
The final modifier.
|
| Java Beans (module J812) What are beans?.
A Java bean is not a class!.
Beanboxes.
Indexed, bound and constrained properties.
Auxiliary classes.
Sample Beans.
Tools.
|
| Naming Conventions and Code Management (module J608) Within a class.
Variable Naming.
Constant naming.
Commenting.
Further coding standards.
The specification of the interface to a class.
Class naming.
Method Naming.
Instance variable naming.
Bean-able and other standards.
Grouping together classes into packages.
Naming conventions.
Imports.
The four Ps.
Deploying multiple classes.
Directories and files.
Jars.
Accessing shared classes.
CLASSPATH and CLASSDIR.
Other Virtual Machines.
|
| HTML - An Overview (module Q624) Tags.
Structure of a page.
Special characters and new lines.
Some common tags.
Lists, tables, etc..
Which HTML standard?.
Validating your page.
|
| HTML for Web Application Authors (module Q625) Tables.
Frames.
Forms.
Element types within a form.
The script used.
Objects and images within a web page.
Style sheets.
JavaScript.
|
| Java in the Web Page (module J711) Structure overview.
The methods you may and must provide.
Including Java in your page: HTML tags.
The Abstract Windowing Toolkit.
|
| Object Orientation: Design Techniques (module Q907) OO Design - some basics.
Start with a good understanding of OO.
And also a good understanding of the buzz words and design cycle..
Informal Techniques.
Micro or Macro?.
Specifying classes and methods.
Specifying extended classes.
Clusters of classes.
Generalise it out.
Programming and method standards.
Formal Methods.
Unified Modelling Language (UML).
Views.
Diagrams.
Model Elements.
UML Summary.
Tools.
Project management and design issues.
Extreme programming.
Planning.
Design.
Coding.
Testing.
|
| Exceptions (module J712) "trying" and "catching".
"throwing".
"finally".
Defining your own exceptions.
|
| More Input and Output (module J713) Overview.
The Wellreader class.
Input/output from basics.
Streams.
Writing to a file.
Formatted output.
Reading from a file.
|
| Fundamental classes (module J714) The fundamental packages.
java.lang.
java.util.
Other fundamental packages.
Data wrappers.
Why use data wrappers?.
Other methods on Float objects.
Other methods on other data wrapper objects.
java.lang.Math.
External low-level calls.
The System class - miscellaneous features.
The System class - garbage collection.
The Runtime and Process classes.
A word of caution on system classes.
Utility objects to hold multiple simple objects.
Vectors.
Stacks.
Hashes.
Enumerations.
The StringTokenizer.
Collections.
ArrayLists.
HashSets.
Iterators and general Collection interfaces.
HashMaps.
Sorting.
Basic sorting in Java.
Comparator classes.
The Comparable interface.
|
| Putting the Java Language Together (module J715) Sample Answer.
|
| Java Roadmap - Beyond the Fundamentals (module J606) Java releases.
Java Runtime Environments.
"Stand Alone" Java programs.
Java Applets.
Java servlets.
Java Server Pages.
Other JREs.
Application Programmer Interfaces (APIs).
Useful "basic" classes.
The Java foundation classes.
The Threads API.
JDBC.
RMI.
Java Beans.
Enterprise Beans.
JNDI.
and also ....
Synchronized.
Serializable and transient.
jars.
Summary.
|
TUTOR and COURSE AUTHOR
Graham Ellis -
graham@wellho.net [
email] [
about Graham]
VENUE
Melksham, Wiltshire
, England. A taxi transfer can be arranged if you'll be
arriving by air
from United States.
Private Courses can be arranged on site in your country.
Public courses run at
Well House Manor - our own
purpose fitted training centre and business hotel / conference centre in
Melksham.
• Download Melksham Map - [
pdf file (750k)] • Google Map - [
Link]
PRICE
| 1 student |
2 students |
3 students |
For 4 or more students
from the same company,
please consider a private course. |
With hotel room $3300.00 ($3877.50 inc VAT) or £1650.00 (£1938.75 inc VAT) Without room $2700.00 ($3172.50 inc VAT) or £1350.00 (£1586.25 inc VAT) |
With hotel rooms $6400.00 ($7520.00 inc VAT) or £3200.00 (£3760.00 inc VAT) Without rooms $5200.00 ($6110.00 inc VAT) or £2600.00 (£3055.00 inc VAT) |
With hotel rooms $9500.00 ($11162.50 inc VAT) or £4750.00 (£5581.25 inc VAT) Without rooms $7700.00 ($9047.50 inc VAT) or £3850.00 (£4523.75 inc VAT) |
Notes:
• Multiple discount applies to bookings for second and subsequent delegates on the same running of a course, and on same order.
• Hotel rooms are available for arrival the night before the course starts, for departure after the end of the course on the last day.
|
FOLLOW UPS
If you want to interface to SQL databases, you might also like
to consider our
MySQL course. Further Java can be covered via our
Java Extra
scheme that lets you cover specialist topics not on the regular public courses.
Upon completion of your course, you'll have online access to the source code of
all the examples from the course, and you'll have access to the "Opentalk" forum
where you can raise questions. We also encourage you to email the tutor, and
to visit us again to use our library as appropropriate.
Certification? - [
Link]
FOR FURTHER INFORMATION
Public (scheduled) courses --
http://www.wellho.net/course/ctc.html
For more information about our public courses in general, such as class size, course times, materials provided, special requests, accommodation list, finding our centre, etc.
Terms and Conditions --
http://www.wellho.net/net/terms.html
Covering topics such as delegate substitution, payment, cancellation policy and other matters.