I. General Information
1. Course Title:
Introduction to Programming
2. Course Prefix & Number:
COMP 2220
3. Course Credits and Contact Hours:
Credits: 4
Lecture Hours: 4
Lab Hours: 0
4. Course Description:
This course is an introduction to the techniques used in structured programming using current programming languages. Students will learn how to design and code their own programs as well as testing and debugging techniques. The students are expected to develop projects using object-oriented design methods. Career Preparation: The studies in this course will help students begin preparation for careers in information technology such as Computer Support Specialist and Network Administrator, Network Engineer, Systems Analyst. Systems Engineer and Business Analyst.
5. Placement Tests Required:
6. Prerequisite Courses:
COMP 2220 - Introduction to Programming
All Credit(s) from the following...
Course Code | Course Title | Credits |
COMP 1109 | Introduction to Operating Systems | 3 cr. |
8. Prerequisite (Entry) Skills:
Efficiency with a current Microsoft operating system such as Windows XP, Windows Vista, or Windows 7.
9. Co-requisite Courses:
COMP 2220 - Introduction to Programming
There are no corequisites for this course.
II. Transfer and Articulation
1. Course Equivalency - similar course from other regional institutions:
Inver Hills Community College, CS1119, Computer Programming with C++, 3 credits
Dakota County Technical College, ISTC1300, Intro to Programming, 3 credits
Ridgewater College, CST1794, Intro to Programming, 2 credits
3. Prior Learning - the following prior learning methods are acceptable for this course:
- American Council on Education
- Military Experience
- Specialty Schools
- CLEP
- Written
- Oral
- Demonstration
- Portfolio
III. Course Purpose
1. Program-Applicable Courses – This course is required for the following program(s):
Computer Information Technology, AAS
IV. Learning Outcomes
1. College-Wide Outcomes
College-Wide Outcomes/Competencies |
Students will be able to: |
Analyze and follow a sequence of operations |
Follow program design instructions to create their own working applications. |
Utilize appropriate technology |
Use computers, current OSs and current compiler/debugger/builder applications to design computer programs. |
2. Course Specific Outcomes - Students will be able to achieve the following measurable goals upon completion of
the course:
- Analyze a problem and develop code that solves the problem.
- Use Microsoft Visual Studio to enter, test and run computer code.
- Demonstrate the appropriate use of a programming language’s syntax for various data structures.
- Design a consistent object naming convention.
- Use Microsoft Visual Studio to debug faulty code.
- Demonstrate the various repetition structure and nested repetition structure routines.
- Demonstrate the various selection structure and nested selection structure routines.
- Design and code user-defined functions.
- Define and code class implementations.
- Load, search and update one and multi-dimensional arrays.
- Code direct and indirect recursion
- Design and code base and derived classes.
V. Topical Outline
Listed below are major areas of content typically covered in this course.
1. Lecture Sessions
- Overview of computer Programming
- Programming Processes
- Problem Analysis
- Programming Methodologies
- Structured Programming
- Object-Oriented Programming
- Problem Solving and Logic Strategies
- Algorithms
- IPO Charts
- Flow Charts
- Basic Input and Output
- I/O Streams
- Defining Variables and Constants
- Formatting Output
- Selection Structure
- Relational Operators
- Boolean Operators
- Logical Expressions
- If and If…Else
- One-Way Selection
- Two-Way Selection
- Nested Selection
- Repetition Structure
- While Loops
- Counter Controlled
- Sentinel Controlled
- Flag Controlled
- EOF Controlled
- For Structure
- Do…While structure
- Nested Control Structures
- Debugging Loops
- User-Defined Functions (Value-Returning)
- Defining Formal Parameters
- Defining Actual Parameters
- Function Prototypes
- User-Defined Functions (Void Functions)
- Value Parameters
- Refernce Variables as Parameters
- Identifier Scope
- User-Defined Data Types
- Enumeration Type
- Namespaces
- String Type
- Arrays
- Declaring One-Dimensional Arrays
- Declaring Two-Dimensional Arrays
- Accessing array components
- Loading Arrays
- Searching Arrays
- Arrays as Parameters in Functions
- Strings
- Character Arrays
- String Comparison
- String I/O
- Records
- Defining Struct Members
- Accessing Struct Members
- Record I/O
- Classes
- Variable Declaration
- Accessing Class Members
- Operations on Classes
- Class Scope
- Reference Parameters and Classes
- Implementing Member Functions
- Private vs. Public Class Members
- Constructors and Destructors
- Default Constructor
- Constructors With Parameters
- Inheritance
- Derived and Base Classes
- Inclusions of a Header File
- Protected Class Members
- Aggregation
- Overloading Functions
- Pointers
- Overloading Operators
- Unary Operators
- Recursion
- Direct and Indirect Recursion