Introduction to Programming

Overview

Introduction to programming is intended to introduce and further the introductory students knowledge of programming concepts.

While the course title is Introduction to Programming, the focus of the course is Software Engineering. This largely centers around programming, but does so in the context of engineering and process. Process is introduced first, then problem solving and an overview of programming.

Support and Development Environments are compared and explained, while actual code examples of Visual Basic, C, C++ and Java demonstrate the best use of different languages. Data Structures and Code Structures have separate lessons devoted to them.

In the conclusion, the student is stepped through the process of creating small programs. The student should focus on the concepts primarily, but many examples lend themselves to a more complex understanding with experience. Additionally, the text is enhanced with the use of pictures, animations and exercises. The average amount of time to complete the course is 10 to 12 hours. The material may be reviewed at any time to provide reinforcement and enhance retention.

Objectives

Course Outline

Lesson 1: What is Software Engineering?
Overview Objectives Software Engineering Overview Software Engineering Process Requirements Analysis * Analysis and Design * Implementation * Testing * Deployment * Maintenance * Traditional Waterfall Process Modern, Iterative Processes * Spiral Model Modern Tools used to support the Process * Objectory * Rational Rose

Lesson 2: Problem Solving Techniques
Overview Objectives Problem Solving Phase Analysis Design Implementation Maintenance Phase Building A House * Problem Solving Techniques

Lesson 3: Overview of Programming
Overview Objectives Problem Solving Building Programs * Steps in the process * Algorithms Programming Languages * Procedures * Data Types Sample Programs * Temperature Conversion * A Banking Algorithm Review of the Development Process

Lesson 4: Programming Support Environments
Overview Objectives Hardware * CPU * Main Memory * Devices Operating Systems * Processor Management * Memory Management * Device Management * Information Management * Other Services Programming Languages Procedural (Visual Basic, C) Object Oriented (C++, Java) Summary

Lesson 5: Programming Development Environments
Overview Objectives Components of Development Environments Editors Compilers Linkers Interpreters Compilers vs. Interpreters Debuggers Other Topics Libraries of Reusable Code * Integrated Development Environments * Program Storage and Management * Databases * Tools for Web Based Applications Summary

Lesson 6: Programming Data Declarations
Overview Objectives Binding Data to a Name * Addresses * Data Representation * Semantics of Variable Declarations Data Types Primitive Built-in Data Types Constant Declarations Structured Data Types Object-Oriented Data Types Data Structures * Lists * Dynamic Allocation Summary

Lesson 7: Programming Executable Code
Overview Objectives Executable Code Data Manipulation Commands Assignment Statements Expression Evaluation Initialization Input/Output Commands Flow Control Commands * Conditionals * Looping * Exceptions * Events Invocation * Organizing Commands to Implement Behavior * The Mechanics of Procedure Invocation * Object-Oriented Programming * Other Programming Models Putting it All Together * Arrays and Pointers * Stacks * Queues All Web Training Courses are Y2K (Year 2000 Compliant). * Windows NT is a trademark of Microsoft Corporation. Click here for an online order form that is submitted automatically to ESI.

Note: All web based training courses are Y2K (Year 2000) compliant.