Resources

CTCITC 111: Programming I & CTCITC 112: Programming II

CTCITC 111: Programming I

CTCITC 112: Programming II

(Language Neutral: Can teach using Java, C#, C++)

 

CTCITC 111: Programming I

Recommended prerequisite: Survey course in IT/CS, CTCITC 100:  Introduction to Information Technology

Recommended prerequisite or corequisite: Precalculus or Statistics

By the end of this course, students should be able to:

  • Design, code, and test programs (programming in the small)
  • Locate and fix bugs in program code
  • Identify common data types (e.g., integer, floating point, character, boolean) and the operators that are defined on those types
  • Define variables and use them appropriately in expressions
  • Apply appropriate control structures (decisions and loops) to correctly control the flow of a program
  • Implement and call subroutines (functions or methods) in a program with parameters and a return value
  • Call subroutines and/or instantiate and use objects either from the standard library or a provided library

By the end of this course, students may be able to:

  • Diagram the control flow of a program or a subroutine using a flowchart
  • Express the design of an algorithm or the control flow of a program or subroutine using pseudocode

CTCITC 112: Programming II

 

Required prerequisite(s): CTCITC 111: Programming I

By the end of this course, students should be able to:

  • Research, read, and write API documentation
  • Define object terminology and concepts (e.g., class, instance, encapsulation, etc.)
  • Perform unit testing, which may be automated
  • Construct an array, and manipulate elements in the array, including searching and sorting
  • Design and create a class with constructor, accessor, and mutator methods
  • Design and implement a program that contains multiple programmer-defined classes
  • Design and implement a program that uses inheritance and polymorphism
  • Write code to catch and handle errors and exceptions
  • Write code that follows established style guidelines and/or coding standards
  • Understand recursion as a problem-solving programming method to create finite solutions
  • Understand, describe, make system calls for file management

By the end of this course, students may be able to:

  • Construct graphical user interfaces
  • Explain how garbage collection works, if provided by the language
  • Identify techniques on how to design for maintainability
  • Write code to handle file and stream I/O
  • Use and/or implement basic data structures (e.g., lists, stacks, queues, binary trees)
  • Apply best practices for secure coding
  • Recognize intellectual property concepts relating to code (e.g. copyright, GPL)

 Note: If a student has completed Programming I and is considering transferring to a common IT course partner college, it’s advisable to check with the IT program faculty to see if some prior studying is recommended to ensure success in Programming II if it is in a different programming language.

 

 

 

 

Centers of Excellence

Developing partnerships among business, industry and education to meet the future needs of Washington State.