Course Outcomes for CSC 216 - Programming Concepts - Java

Upon successful completion of this course, a student will be able to...

  1. describe the utility of inheritance, abstract classes, interfaces, and polymorphism in object-oriented systems, and design and implement programs which use these language features;
  2. identify the phases of a simple model of the software life cycle, and employ these phases in developing software;
  3. describe basic design modeling techniques, including UML class diagrams and simple design patterns (e.g. model/view/controller), and indicate how and when to use them;
  4. identify and compare the basic kinds of software testing, describe when to use each method, and design and implement test code;
  5. navigate and extract information from the Java API, and employ the Javadoc tool to construct internal documentation of source code;
  6. design and implement a finite state machine;
  7. identify when recursion is useful, and design and implement recursive algorithms and simple recursive data structures;
  8. construct and use a stack, queue, array-based list and linked list;

See Course Listings

See Course Coordinators