Course Goals
Students should be able to:
-
Analyze and explain the behavior of simple programs involving the following
fundamental programming constructs: assignment, I/O (including file I/O),
selection, iteration, methods
-
Write a program that uses each of the following fundamental programming
constructs: assignment, I/O
(including file I/O), selection, iteration, methods
-
Break a problem into logical pieces that can be solved (programmed)
independently.
-
Develop, and analyze, algorithms for solving simple problems.
-
Use a suitable programming language, and development environment, to
implement, test, and debug
algorithms for solving simple problems.
-
Write programs that use each of the following data structures (and describe
how they are represented in
memory): strings, arrays.
-
Explain the basics of the concept of recursion.
-
Write, test, and debug simple recursive functions and procedures.
-
Explain and apply object-oriented design and testing involving the following
concepts: data abstraction,
encapsulation, information hiding, inheritance, polymorphism.
-
Use a development environment to design, code, test, and debug simple
programs, including multi-file
source projects, in an object-oriented programming language.
-
Implement basic error handling, basic graphical user interface (GUI).
-
Solve problems by creating and using sequential search, binary search, and
quadratic sorting algorithms
(selection, insertion).
-
Determine the time complexity of simple algorithms.
-
Apply appropriate problem-solving strategies.
-
Time permitting: event-driven programming.
|