Java Fundamentals (Java SE 7)
Course Specifications
Course number: 085664
Course length: 5.0 day(s)
Course Description
Course Objective: You will create basic applications using the Java SE 7 programming language. You will also describe object-oriented concepts, Unified Modeling Language (UML) representation of object-oriented programming (OOP) concepts, and Java platforms and technologies.

Target Student: This course is designed for students who are looking for an entry into an application development or a software project management career using Java technologies. 

Prerequisites: This is the first course in the series of Java courses and does not have any prerequisites. 
Hardware Requirements
For this course, you will need one computer for each student and one for the instructor. Each computer will need the following minimum hardware configurations: 
•	1 GHz Pentium-class processor or faster
•	Minimum 256 MB of RAM (512 MB of RAM recommended)
•	10 GB hard disk or larger (You should have at least 250 MB of free hard disk space available for the Eclipse installation) 
•	CD-ROM drive
•	Keyboard and mouse or other pointing device
•	1024 x 768 resolution monitor recommended
•	Network cards and cabling for local network access
•	Internet access (contact your local network administrator)
•	Printer (optional) or an installed printer driver
•	Projection system to display the instructor’s computer screen 
Software Requirements
Each computer requires the following software:
•	Eclipse for Java SE 7, Indigo
•	JDK 1.7
Course Objectives
Upon successful completion of this course, students will be able to: 
•	create simple programs in Java using basic code components.
•	control program flow by writing code to respond to specific situations and produce appropriate results. 
•	work with Java class libraries to instantiate objects from Java classes. 
•	create classes.
•	write Java programs that reuse objects and their attributes.
•	represent OOP concepts using UML.
•	identify client-side technologies.
•	identify server-side technologies.
•	identify integration technologies.
Course Content
Lesson 1: Programming in Java

Topic 1A: Create a Simple Java Program 
Topic 1B: Define a Simple Class 
Topic 1C: Create and Initialize Variables 
Topic 1D: Write an Expression 
Topic 1E: Work with Arrays 
Lesson 2: Controlling Program Flow

Topic 2A: Write If Statements 
Topic 2B: Write a Switch Statement 
Topic 2C: Write a For Loop 
Topic 2D: Write While and Do...While Loops 
Lesson 3: Working with Java Class Libraries

Topic 3A: Use the Java Class Library 
Topic 3B: Invoke Attributes of an Object 
Lesson 4: Creating Classes 

Topic 4A: Define Methods 
Topic 4B: Overload a Method 
Topic 4C: Define Constructors 
Topic 4D: Create Static Class Members 
Topic 4E: Use Command-Line Arguments 
Topic 4F: Define JavaBeans 
Lesson 5: Implementing Inheritance

Topic 5A: Import a Class 
Topic 5B: Extend a Class 
Topic 5C: Override Methods 
Topic 5D: Create Interfaces 
Topic 5E: Implement Interfaces 
Topic 5F: Work with Objects 
Lesson 6: Representing OOP Concepts Using UML

Topic 6A: Introduction to UML 
Topic 6B: Apply UML 
Lesson 7: Identifying Client-Side Technologies

Topic 7A: Introduction to Client-Side Technologies 
Topic 7B: Introduction to Thin UI Clients 
Topic 7C: Introduction to Fat UI Clients 
Topic 7D: Introduction to Micro UI Clients 
Lesson 8: Identifying Server-Side Technologies

Topic 8A: Introduction to Server-Side Technologies 
Topic 8B: Identify Web Components 
Topic 8C: Identify Business Components 
Topic 8D: Process XML and Associating Elements 
Lesson 9: Identifying Integration Technologies

Topic 9A: Describe Synchronous Communication 
Topic 9B: Introduction to Web Services 
Topic 9C: Introduction to Database Connectivity 
Topic 9D: Describe Asynchronous Communication