java
Duration:
Dates:
schedule:
Fee:
4 five-day modules
Part 1 : start 04.02.08
Part 2 : start 25.02.08
Part 3 : start 17.03.08
Part 4 : start 07.04.08
17:30 - 20:30
CHF 2'700.00 /module
CHF 9'600.00 /completeThe Java platform was initially designed to operate in embedded environments. Now it has been popularized and made indispensable by a large community of developers.
Java is composed of a multi-platform running environment Java Virtual Machine (JVM), a robust object-oriented programming language, and an associated library collection. The Java platform is a general-purpose set of tools, which is particularly suited for server-side programming.
Use Java syntax
Implement key Java concepts
Read, write and package Java classes;
apply Java concepts and use the
Java language and standard libraries
to develop efficient java applications.
Develop stand-alone portable
applications or applets embedded in
a browser page using Java;
create a GUI using Java Swing;
create and deploy a Java applet.
•a work station with an individual
account for your working sessions
•an individual space accessible via the
web for pubslishing your sites, also
accessible via FTP
•all necessary documentation, including
tutorials, software and a collection of
external links




•
1
1.1
2
2.1
2.2
2.3
2.4
3
3.1
3.2
3.3
4
4.1
4.2
5
5.1
5.2
5.3
6
6.1
6.2
7
7.1
7.2
7.3
Part 1 - Language structure and flow control.
Introduction: why Java?
History and motivations
Java syntax: basics
Identifiers: variable, methods, classes, interfaces
Where shall we start? The main method
Keywords
Comments: explanation, javadocs, and tags
Primitives and variable definition
Basic types
- declaration and initialisation
- intergers
- floats
- chars
Reference types
Void types
Methods:
Java's usage of methods:
- identifiers
- types
- parameters
The main method
- definition
- constrains
- parameters
Control flow statements.
Simple instructions
Conditional expressions: true and false, if-else, return
Iterative instructions (loops):
- while, do-while,
- for loops, coma operator
- break and continue
- switch
Operators
Similarities and differences with C
Different operators
- assignment operators
- logic operators
- comparison operators
- arithmetic operators
- binary operators
- ternary condition operators
Arrays
Declaring arrays
Initialising arrays
- one-dimension arrays
- multi-dimensional arrays
Accessing arrays
- array length
•
1
1.1
1.2
1.3
1.4
1.5
2
2.1
2.2
2.3
2.4
2.5
3
3.1
3.2
3.3
3.4
3.5
4
4.1
4.2
4.3
5
5.1
5.2
5.3
5.4
6
6.1
6.2
6.3
7
7.1
7.2
8
8.1
8.2
9
9.1
9.2
10
10.1
10.2
Part 2 - classes: concepts
OOP : what's an object
Basic notions
Principle of encapsulation
Abstract classes and methods
Interfaces
Visibility
Objects and Java: classes
Creating classes
.java files; packages
The constructor
Instantiating a class
- definition
- the "new" operator
- affectation of objects
The "." operator and the "this" reference
Inheritance
Definition
The "extends" keyword
The "super" keyword
Overriding and overloading methods
Constrains
Interfaces
Definition
Implementation
Comparison with abstract classes
Access modifiers
Public
Private
Protected
Package
Other modifiers
Abstract: definition and usage
Final : attribute, method, class
Static
Inner classes
Definition and usage
Accessing the members of the outer class
Anonymous classes
Definition and usage
Constrains
Using packages
Definition and usage
Import
Static imports
Definition and usage
Simplifying your code
•
1
1.1
2
2.1
2.2
3
3.1
3.2
3.3
3.4
3.5
3.6
4
4.1
4.2
5
5.1
6
6.1
6.2
6.3
6.4
7
7.1
8
8.1
8.2
8.3
8.4
9
9.1
9.2
9.3
9.4
10
10.1
Part 3 - Advanced programming
Memory management
Garbage collector
Wrappers
Immutable objects
Autoboxing and unboxing
Collections
Definition
The List, Set, and Map interfaces
Comparable objects
The equals method
Why using the hash code?
Collection iterator
Enumerations
Definition and usage
The enum keyword
Variable arguments
Transfering parameters
Error handlers: exceptions
Exception classes: Error, Exception, and RuntimeException
Throwing exceptions
- the try-catch block
The "finally" block
Defining personilized exceptions
- the throw keyword
Generics
Syntax and usage
- generic types
- defining generic classes
- defining generic methods
Threads
Definition and usages
The Thread class
The Runnable interface
Synchronizing Threads
I/O in Java
Streams (I/O flows)
The OutputStream interface
The InputStream interface
Writers and Readers
Introduction to network programming
Sockets
- classes: java.net.InetAddress, ServerSocket, Socket
- datagrammes
•
1
2
2.1
3
3.1
3.2
3.3
3.4
3.5
3.6
3.7
3.8
4
5
Part 4 - Object persistance: JDBC
Introduction to databases. Revision
Java DataBase Connectivity (JDBC)
Multi-tier client-server architectures
- 2-tier client-server architectures
- 3-tier client-server architectures
API JDBC
General structure
Libraries that you will need
Changing a driver in the memory
- different driver types
- principles
Establishing a connection
- defining a database
- using the Connection interface
Handling SQL requests
- Interface Statements: simple requests
- Interface Prepared Statements: pre-compiled requests
- Interface Callable Statement: stored procedures
- parametering access types
- information on database structure
Recovering results
- Reading data structure
- Reading data
- Modifying data
Managing transactions
- local transaction management: JDBC
- managing shared transactions: JTA
Closing a connection
Correspondence between SQL-Java data types
Examples for revision
•project leaders
•computer staff
•programmers
•Exposure to object-oriented
programming
•Java EE
•WebServices
All courses are given by highly qualified and experienced professional staff.
Every session comprises supervised exercises.
The program consists of 8 three-hour class sessions and 12 hours of assisted project work.
Participants have permanent access to their work folders on the server via FTP.














