Skip to main content

Object Oriented Programming 1 COMP 2522

Computer Systems Course

International Fees

International fees are typically three times the amount of domestic fees. Exact cost will be calculated upon completion of registration.

Course details

This hands-on course follows on from COMP 1510. This course covers the fundamental concepts of design, development, testing, and debugging intermediate-level programs with an object-oriented programming language. Topics include language syntax, data abstraction, encapsulation, inheritance, polymorphism, and exception handling. Design Patterns and Graphical User Interfaces will be applied to appropriate problems.

Prerequisite(s)

Credits

5.0

Not offered this term
This course is not offered this term. Please check back next term or subscribe to receive notifications of future course offerings and other opportunities to learn more about this course and related programs.

Learning Outcomes

Upon successful completion of this course, the student will be able to:

  • Apply the properties of good object-oriented software design including encapsulation, information hiding, inheritance, and polymorphism to create easily extensible systems in the context of intermediate-level programs.
  • Apply object-oriented decomposition to break a program into multiple classes with well-defined interfaces.
  • Decompose a program into multiple classes with well defined interfaces.
  • Analyze and explain behaviour of intermediate-level programs involving object-oriented programming constructs including encapsulation, information hiding, inheritance, and polymorphism.
  • Write programs processing data using sources and sinks.
  • Create and handle exceptions to write robust programs.
  • Apply design techniques such as sequence diagrams, collaboration diagrams and class diagrams to define classes and their relationships when solving a problem.
  • Add/modify relationships between classes and objects to show the design.
  • Design, implement, debug and write automated tests for intermediate-level object-oriented programs in a modern high-level object-oriented programming language.
  • Write programs addressing concurrency issues such as race conditions using synchronization techniques including synchronization, wait/notify, join, and sleep.
  • Program with lambda expressions and closures.

Effective as of Winter 2019

Related Programs

Object Oriented Programming 1 (COMP 2522) is offered as a part of the following programs:

  • Indicates programs accepting international students.
  • Indicates programs with a co-op option.

School of Computing and Academic Studies

  1. Computer Systems Technology
    Diploma Full-time

Contact Us

If you have a question or comment about this course, please complete and submit the form below.

  • Privacy Notice: The information you provide will be used to respond to your request for BCIT program information and is collected under Section 26(c) of the Freedom of Information and Protection of Privacy Act (FIPPA). For more information about BCIT’s privacy practices contact: Associate Director, Privacy, Information Access & Policy Management, British Columbia Institute of Technology, 3700 Willingdon Ave. Burnaby, BC V5G 3H2, email: privacy@bcit.ca.
  • This field is for validation purposes and should be left unchanged.

Subscribe

Interested in being notified about future offerings of Object Oriented Programming 1 (COMP 2522)? If so, fill out the information below and we'll notify you by email when courses for each new term are displayed here.

  • Privacy Notice: The information you provide will be used to respond your request for BCIT course information and is collected under Section 26(c) of the Freedom of Information and Protection of Privacy Act (FIPPA). For more information about BCIT’s privacy practices contact: Associate Director, Privacy, Information Access & Policy Management, British Columbia Institute of Technology, 3700 Willingdon Ave. Burnaby, BC V5A 3H2, email: privacy@bcit.ca.