CS2072 Fundamental Object Oriented Programming in JavaScript

This course is an introductory course in program development techniques and the structured and object-oriented programming paradigms using JavaScript. The topics covered include: problem-solving, documentation, control flow, native types and statements, operators, structures, functions, arrays, object-oriented programming, encapsulation, and VO. Weekly programming or written assignments will be assigned. Prerequisite: None.

Lecture Hours


Lab Hours


Course Learning Outcomes

  • Give you an understanding of the state of an executing JavaScript program which you can demonstrate by diagramming the state.
  • Give you an understanding of how any given code will change the state of the executing program, and how to write code to achieve a desired change in program state.
  • Give you the ability to use those programming skills to take a problem statement, design an algorithmic solution, possibly representing it in pseudocode (a fancy name for language between English and JavaScript that you will develop and use to describe the steps required to solve the problem), and translate the solution into a program.
  • Give you the ability to write completely self-contained programs as well as programs that interact with other systems that you may only partially comprehend.
  • Give you the ability to read and understand code you did not write and fix or extend it.
  • Give you the ability test and debug programs with and without the use of tools.
  • Give you the ability to recognize design, syntax, logic and fatal errors, and to fix them.
  • In summary, this course will give you fundamental programming skills up to a beginning level.