Skip to main content

Programming Fundamentals Part 2 (Java) COMP 2501

Computer Systems Part-time Studies Course

Course details

Students who already understand how to write simple programs in Python will focus on best practices in computer programming and explore problem-solving skills. This second-level computer programming course follows on from COMP 1516 - Programming Fundamentals Part 1 (Python). COMP 2501 introduces application programming interfaces (APIs) and how to transition from Python to Java. This is not a Java development course, it is the second step in a series of three (3) applied programming fundamentals courses where Java is introduced. Students must provide their own current model Windows capable PC, i5 or higher equivalent processor, 8 GB of RAM minimum, and 256 GB minimum storage. High-speed internet access is needed for online sections and for homework. Topics include: an overview of object-oriented programming constructs including basic introductions to: encapsulation, inheritance, polymorphism, and exceptions. Labs and exercises demonstrate problem solving; writing automated tests, and practicing design before implementation. Please Note: Attendance, participation in class and the BCIT Learning Hub are mandatory. Students may have an average total time commitment of 13+ hours per week; 3 hours of synchronous class time, and 10+ hours of homework each week. COMP 2501 is required for the Applied Software Development, ASD and the Computer Systems Certificate, CSC. Upon completion, successful students will be able to write robust computer programs. They will be prepared to move on to COMP 2511- Procedural Programming with C and/or COMP 2601- Programming Fundamentals Part 3 (Objects).

Prerequisite(s)

Credits

3.0

Cost

$544.99 - $559.64 See individual course offerings below for actual costs.

Course offerings

Spring/Summer 2022

Below are two offerings of COMP 2501 for the Spring/Summer 2022 term.

CRN 67135

Duration

Thu Apr 21 - Thu Jul 07 (12 weeks)

  • 12 weeks
  • CRN 67135
  • $559.64
Class meeting times
Dates Days Times Locations
Apr 21 - Jul 07 Thu 18:00 - 21:00 Online
Instructor

Paul Mills

Course outline

View

Cost

$559.64

Important information
  1. Internet delivery format.
  2. Departmental approval needed
  3. Important course information will be sent to you prior to your course start date. Check your myBCIT email account to access this information.
  4. Please email cstpts@bcit.ca for Departmental approval. Include your Student number (A0#) and COMP__ and preferred CRN __ and Program Declaration____. Course is 36 hours synchronous online classes. Students can not attempt COMP 1516, COMP 2501, and COMP 2601 simultaneously. Late registration is not permitted. The start and end dates have been changed from April 14 – June 30 to April 21 – July 7.
Status

In Progress

This course offering is in progress. Please check this page for other currently available offerings, subscribe to receive email updates or contact us with your comments or questions.

CRN 67136

Duration

Wed Jun 15 - Fri Jul 29 (6 weeks)

  • 6 weeks
  • CRN 67136
  • $559.64
Class meeting times
Dates Days Times Locations
Jun 15 - Jul 29 Wed, Fri 14:30 - 17:30 Online
Instructor

Jason Wilder

Course outline

View

Cost

$559.64

Important information
  1. Internet delivery format.
  2. Departmental approval needed
  3. Important course information will be sent to you prior to your course start date. Check your myBCIT email account to access this information.
  4. This is an intensive delivery course. Students must attend all classes. Please email cstpts@bcit.ca for Departmental approval. Include your Student number (A0#) and COMP__ and preferred CRN __ and Program Declaration____. Course is 36 hours synchronous online classes. Students can not attempt COMP 1516, COMP 2501, and COMP 2601 simultaneously. Late registration is not permitted. Class is in session July 1 (Canada Day); No class July 13 and 15.
Status

In Progress and Full

This course offering is in progress and full. Please check this page for other currently available offerings, subscribe to receive email updates or contact us with your comments or questions.

Fall 2022

Below are two offerings of COMP 2501 for the Fall 2022 term.

CRN 48063

Duration

Tue Sep 13 - Tue Nov 29 (12 weeks)

  • 12 weeks
  • CRN 48063
  • $544.99
Class meeting times
Dates Days Times Locations
Sep 13 - Nov 29 Tue 18:00 - 21:00 Online
Instructor

Paul Mills

Course outline

Course outline TBD — see Learning Outcomes in the interim.

Cost

$544.99

Important information
  1. Internet delivery format.
  2. Departmental approval needed
  3. Important course information will be sent to you prior to your course start date. Check your myBCIT email account to access this information.
  4. Please email cstpts@bcit.ca for Departmental approval. Include your Student number (A0#) and COMP__ and preferred CRN __ and Program Declaration____. Course is 36 hours synchronous online classes. Students cannot attempt COMP 1516, COMP 2501, and COMP 2601 simultaneously. Late registration is not permitted.
Status

Seats Available

4 seats remaining as of Sat July 2, 2022 at 7:41 am (PDT). Availability may change at any time.

CRN 48061

Duration

Sat Sep 10 - Sat Dec 10 (12 weeks)

  • 12 weeks
  • CRN 48061
  • $544.99
Class meeting times
Dates Days Times Locations
Sep 10 - Dec 10 Sat 13:00 - 16:00 Online
Instructor

Jason Wilder

Course outline

Course outline TBD — see Learning Outcomes in the interim.

Cost

$544.99

Important information
  1. Internet delivery format.
  2. Departmental approval needed
  3. Important course information will be sent to you prior to your course start date. Check your myBCIT email account to access this information.
  4. Please email cstpts@bcit.ca for Departmental approval. Include your Student number (A0#) and COMP__ and preferred CRN __ and Program Declaration____. Course is 36 hours synchronous online classes. Students cannot attempt COMP 1516, COMP 2501, and COMP 2601 simultaneously. Late registration is not permitted. No class on October 8 (Thanksgiving) and November 12 (Remembrance Day).
Status

Full

This course offering is full. Please check this page for other currently available offerings, subscribe to receive email updates or contact us with your comments or questions.

Learning Outcomes

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

  • Describe fundamental OOP concepts such as classes, objects, constructors, inheritance, encapsulation, polymorphism and overloading.
  • Apply design techniques using class diagrams to define classes and their relationships when solving a problem.
  • Explain the difference between primitive types and reference types.
  • Perform data validation with exceptions, methods, and constructors.
  • Design first, implement, debug and write automated tests for object-oriented programs
  • Write programs processing data using sources and sinks.
  • Handle standard exceptions to write robust programs.
  • Refactor a program by identifying opportunities to apply procedural abstraction
  • Use collections and iterators.
  • Explain the value of application programming interfaces (APIs) in software development.
  • Apply fundamental best practices for OOP including packages.
  • Contribute to a small-team code walkthrough.
  • Move on to COMP 2511 Procedural Programming with C and COMP 2601 - Programming Fundamentals Part 3 (Objects).

Effective as of Winter 2022

Related Programs

Programming Fundamentals Part 2 (Java) (COMP 2501) is offered as a part of the following programs:

School of Computing and Academic Studies

  1. Applied Software Development (ASD)
    Associate Certificate Part-time
  2. Computer Systems
    Certificate Part-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 Programming Fundamentals Part 2 (Java) (COMP 2501)? 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.