Introduction to Computer Programming 2 (CMPT 1020)
This course builds upon the foundations set in CMPT 1010 Introduction to Computer Programming 1. Students will learn how to apply fundamental object-oriented programming concepts to efficiently program applications with an intermediate level of difficulty. Topics include object-oriented design, object-oriented programming, encapsulation, inheritance, aggregation, operator overloading, virtual functions, polymorphism, function templates, class templates, exception handling, implementation of algorithms and data structures, introduction to complexity analysis, and introduction to embedded system programming. C++ is used as the implementation language.
Course code: CMPT 1020
Credits: 3.0
Length: 60.0 hours
Course outline:
view
https://www.vcc.ca/vccphp/courseoutline?subject=CMPT&number=1020
Prerequisites
CMPT 1010.
No schedule is currently available. Please check again later.
0
Schedule †
CMPT 1020 schedule for programs:
- MUSD
- NUSB
- NUSD
- UAAD
- UPHS
- USAD
- USCC
- UTAC
- UTCS
- UTEG
- UTES
- Associate of Arts
- Associate of Science
- Bachelor of Applied Music
- Nursing (BScN)
- Nursing (BScN) Advanced Entry
- University Transfer – Applied Mathematics (SFU)
- University Transfer – Applied Physics (SFU)
- University Transfer – Arts
- University Transfer – Biological Physics (SFU)
- University Transfer – Biological Sciences (SFU)
- University Transfer – Chemistry (SFU)
- University Transfer – Computing Science and Software Systems
- University Transfer – Engineering
- University Transfer – Engineering (SFU)
- University Transfer – Environmental Studies
- University Transfer – Mathematics (SFU)
- University Transfer – Molecular Biology and Biochemistry (SFU)
- University Transfer – Pathway to Health Sciences
- University Transfer – Physics (SFU)
- University Transfer – Science
- University Transfer – Science (UBC)
- University Transfer – Software Systems (SFU)
- University Transfer – Statistics (SFU)
- University Transfer (Courses)
Course dates and times may vary throughout the term. Select the CRN number below to see a full schedule.
CRN # | Dates | Day/Time/Location | Instructor |
---|---|---|---|
43019 | January 6, 2025 to April 23, 2025 | See full schedule Delivery: Blended Location: Varies | Aboofazeli, Mohammad |
42089 | January 6, 2025 to April 23, 2025 | See full schedule Delivery: Blended Location: Varies | Aboofazeli, Mohammad |
61377 | May 5, 2025 to August 22, 2025 | See full schedule Delivery: Blended Location: Varies | Mohammad Taheri, Nahid |
Additional Information
- Review of C++ basics procedural programming (arrays; pointers and dynamic memory allocation; iterative and recursive functions; procedural programming)
- Object-oriented programming basics (structures; classes as abstract data types; public members vs private members of a class; information hiding, accessors and mutators; constructors and destructors; separating class specification from class implementation)
- Object-oriented concepts (static class members vs instance members; member-wise assignment; copy constructors; operator overloading using non-member and member functions; friend functions; inheritance, class hierarchies and protected members; aggregation; polymorphism and virtual functions; abstract base classes and pure virtual functions)
- Exception handling (throwing an exception; catching and handling exceptions; exception classes and object-oriented exception handling)
- Templates (function templates; class templates)
- Introduction to data structures and algorithm (An introduction to efficiency analysis of algorithm; C++ STL arrays and vectors; STL containers and iterators; stacks and queues; linked listed)
- Basics of C++ programming for embedded systems
This course is offered as part of a VCC program only.
Ask a question
- Step 1undefined
- Step 2undefined
† This information is intended as a guideline only. Program and course details are subject to change with the approval of VCC's Board of Governors.