<IMG SRC="fla_train.gif" WIDTH=200 HEIGHT=400 BORDER=0> <IMG SRC="fla_fill.gif" WIDTH=200 HEIGHT=400 BORDER=0> <IMG SRC="fla_fill.gif" WIDTH=200 HEIGHT=400 BORDER=0> <IMG SRC="fla_fill.gif" WIDTH=200 HEIGHT=400 BORDER=0> <IMG SRC="fla_fill.gif" WIDTH=200 HEIGHT=400 BORDER=0>
Click Here for the Outline in PDF Version
Course Outline: Introduction to JAVA for Begininning Programmers

(5 Days) with Hands-On Labs
    Learning Objectives

  • Learn the basic principles of object oriented programming
  • Learn how to develop, specify and verify algorithms
  • Learn the essentials of the Java programming language
  • Gain an understanding of the fundamental concepts of computers required for programming
  • Acquire the skills needed to design, code and debug computer programs in the Java language


This course description should be used to determine whether the course is appropriate for you based on your current skill and technical training needs. Technical information is provided on the intended audience, course prerequisites, and covered topics. Course content, prices, and availability are subject to change without notice.


Course Audience

The course is designed as the first programming course for students beginning to prepare for a career in computer programming, with a focus on modern programming technologies. The language Java is used because of its growing importance in modern application development.

Course Description

This course is an introduction to object oriented programming using the Java language. The core syntax of Java is very similar to C and C++, so the student will receive a good grounding for subsequent study of these languages as well. This course introduces object oriented concepts very early, and Java is developed in a way that leverages its object orientation. A major case study, the Electronic Commerce Gameää, is used to illustrate object oriented programming techniques, including the initial analysis and design.

An important thrust of this course is to teach programming from an object oriented perspective. It is often difficult for programmers trained originally in a procedural language to start “thinking in objects”. This course introduces object oriented concepts very early, and Java is developed in a way that leverages its object orientation. A major case study is used to illustrate object oriented programming techniques, including the initial analysis and design.

The course includes a preliminary chapter that introduces computers from the perspective of programming, covering the essentials of the von Neumann computer architecture and stored programs. The special nature of Java is explored. The course then introduces simple hands-on programming using Java to do simple input, computation and output. The Java data types are covered, and simple if tests and loops are covered. At this point the object oriented features of Java are introduced, and all the remaining treatment of Java follows an object oriented perspective. The course shows how to develop algorithms, present them as flowcharts or pseudocode, and to verify them using handtracing. Algorithms are always implemented as methods of Java classes. There are many programming examples and exercises. The course can be run on any Java development environment.

Prerequisites

Good general problem solving skills and user experience on a PC.

TOPICS COVERED IN LECTURE & LAB

Introduction to Computers

  • Input, Computation and Output
  • CPU and Memory
  • Binary and Hex Numbers
  • Stored Programs
  • Machine Language
  • Programming a Simple Computer in Machine Language
  • Assembly Language
  • Compilers and High Level Languages
  • Interpreters
What is Java?

  • Object Orientation
  • Java Language
  • Java Virtual Machine
  • Java Libraries
  • World Wide Web and Java
  • Java as a First Programming Language
First Java Programs

  • Hello, World
  • Program Structure
  • Output in Java
  • Variables and Expressions
  • Calculations Using Java
  • Classes and Objects
  • An Input Wrapper Class
  • Packages
Data Types and Operators

  • Strong Typing
  • Integer Data Types
  • Floating Point
  • Conversions Between Types
  • Arithmetic Operators
  • Doing Math in Java
Logical and Bit Operations

  • Boolean
  • Logical and Relational Operators
  • If Tests
  • Bitwise Operators
  • Shifting and Masking
Loops and Structured Programming

  • While Loops
  • Quitting Infinite Loops
  • Curly Braces and Indenting
  • Sentinels and Counters
  • For Loops
  • Loops and If Tests Together
  • Nested If Statements
  • Structured Programming
Introduction to Objects

  • Modeling
  • Reusable Software Components
  • Encapsulation
  • Abstraction
  • Objects and Classes
  • Finding Objects
  • Electronic Commerce Case Study
Objects and Classes

  • Structured Data
  • Classes
  • References
  • Assignment of Objects
  • Initialization
  • Garbage Collection
Characters and Strings

  • Char Data Type
  • String Class
  • String Input and Output
  • String Methods
Modular Programming

  • Monolithic Programs
  • Static Variables and Methods
  • Functional Modularity
  • Object Modularity
  • Top-Down and Bottom-Up Development
  • Pass-By-Value and Pass-By-Reference
  • Nested Classes
Arrays

  • One Dimensional Arrays
  • Subscripts
  • Initializing Arrays
  • Arrays and Loops
  • Copy and Assignment
  • Arrays of Objects
  • Multidimensional Arrays
Algorithms and Problem Solving

  • Understanding a Problem
  • Specifying Data Structures
  • Pseudocode
  • Designing an Algorithm
  • Divide and Conquer
  • Handtracing
  • Searching
  • Sorting
Control Structures and Exceptions

  • Switch
  • Break
  • Continue
  • Do
  • Exceptions
Policy