Fundamentals of Computer Programming




Fundamentals of Computer Programming Training Class Summary

This hands-on course provides a comprehensive introduction to programming, and builds a solid foundation of programming skills that can be used to master additional programming languages like C, C++, or Java™. In this course you will write, compile, and debug programs in Java.

Audience: Web developers, system administrators, technical managers, and anyone wanting to develop programming skills.

Prerequisites: No programming experience is required.

Class Length: 4 days

Fundamentals of Computer Programming Training Class Objectives
  • Explain what computer programs are and what computer programming is about.
  • Write and compile simple computer programs.
  • Describe basic computer language data types.
  • Interact with computer programs using your terminal screen and keyboard.
  • Evaluate expressions used in computer programs.
  • Design the sequential execution, and flow of decision making, in a program.
  • Write programs that use loops to perform repetitive tasks.
  • Design and write procedural programs that use methods.
  • Use basic debugging techniques to solve programming problems and increase program quality.
  • Use arrays and classes for managing program data.
  • Write programs that use files to store and retrieve data.
Fundamentals of Computer Programming Training Class Detailed Outline
  1. Course Introduction
    • Course Objectives
    • Course Overview
    • Suggested References
  2. Basic Concepts and Definitions
    • What is a Program?
    • “Hello, world!”
    • The Programming Process
    • Program Files and Program Execution
    • System Programs vs. Application Programs
    • Input - Process - Output
    • Programming Languages
    • Compiler Errors vs. Runtime Errors
    • Development Environments
  3. Writing Simple Programs
    • Reading Input
    • Performing Numeric Calculations
    • Formatting Output
    • Decision Making
    • Iteration
    • Commenting Your Source Code
    • Good Programming Style
  4. Data Types, Constants, and Variables
    • A Program’s Purpose is to Process Data
    • Computer Memory
    • Data Can Be of Different Types
    • Named Data: Variables
    • Literal Data
    • Assignment
    • Printing Variables
  5. Screen Output and Keyboard Input
    • Writing to the Screen
    • Characters That Have Special Meaning
    • Some Simple Formatting
    • Reading from the Keyboard
    • Prompting and Validating
  6. Expressions
    • Expressions: Where the Work Gets Done
    • Expression Evaluation: The Result
    • Arithmetic Expressions
    • Relational Expressions
    • Where are Relational Expressions Used?
    • And? . . . Or?
    • Precedence and Associativity
  7. Decision Making
    • Sequential Execution
    • What is Decision Making?
    • Simple Decisions: if
    • Two-Way Decisions: else
    • Code Blocks
    • Nesting Control Statements
    • Multi-Way Decisions: switch
  8. Looping
    • Kinds of Loops
    • Iterative Loops
    • Code Blocks and Loops
    • Nested Loops
    • Conditional Loops
    • Infinite Loops
  9. Methods
    • Programming without Methods
    • Reusable Code in a Method
    • The Starting Point
    • Variable Visibility: Scope
    • Parameters
    • Returning a Value
    • Method Stubs
    • Libraries
  10. Debugging
    • What is Debugging?
    • Commenting Out Code
    • Simple Debugging with Print Statements
    • Making Debugging Print Statements Conditional
    • Programs that Help You Debug Programs
  11. Data Collections – Arrays
    • Scalar Data vs. Data Collections
    • What is an Array?
    • Accessing Array Elements
    • Multidimensional Arrays
    • Array Initialization
  12. Data Collections – Classes
    • What is a Class?
    • Object vs. Class
    • Accessing Object Members
    • Using Arrays with Classes
  13. Working with Files
    • Terminal I/O and File I/O
    • Opening Files
    • Opening a File for Writing
    • Opening a File for Reading
    • Checking for File Open Errors
    • Closing a File
    • Text Files vs. Binary Files