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)
- 60% in COMP 1516
Credits
3.0
Cost
$556.70 - $597.56 See individual course offerings below for actual costs.
Course offerings
Fall 2023
Below are three offerings of COMP 2501 for the Fall 2023 term.
CRN 48061
Duration
Sat Sep 09 - Sat Dec 09 (12 weeks)
- 12 weeks
- CRN 48061
- $597.56
Class meeting times
Dates | Days | Times | Locations |
---|---|---|---|
Sep 09 - Dec 09 | Sat | 13:00 - 16:00 | Burnaby SE12 Rm. 311 |
Instructor
Jason Wilder
Course outline
Cost
$597.56
Important information
- Departmental approval needed
-
Please email cstflex@bcit.ca for Departmental approval. Include your Student number (A0#) and COMP__ and preferred CRN __ and Program Declaration____. Course is 36 hours on campus. This is a BYOD (bring your own device) course, participants must provide their own current model PC with an i5 or higher equivalent processor, 8 GB of RAM minimum, 256 GB minimum storage and high-speed internet access. Students can not attempt COMP 1516, COMP 2501, and COMP 2601 simultaneously. Late registration is not permitted. Class in session September 30 (Truth & Reconciliation). No class October 7 (Thanksgiving) and November 11 (Remembrance Day).
Status
In Progress
This course offering is in progress. Please check back next term, subscribe to receive email updates or contact us with your comments or questions.
CRN 48063
Duration
Tue Sep 12 - Tue Nov 28 (12 weeks)
- 12 weeks
- CRN 48063
- $556.70
Class meeting times
Dates | Days | Times | Locations |
---|---|---|---|
Sep 12 - Nov 28 | Tue | 18:00 - 21:00 | Online |
Instructor
Paul Mills
Course outline
Cost
$556.70
Important information
- Internet delivery format.
- Departmental approval needed
- Important course information will be sent to you prior to your course start date. Check your myBCIT email account to access this information.
-
Please email cstflex@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
In Progress
This course offering is in progress. Please check back next term, subscribe to receive email updates or contact us with your comments or questions.
CRN 49533
Duration
Wed Sep 20 - Wed Dec 06 (12 weeks)
- 12 weeks
- CRN 49533
- $597.56
Class meeting times
Dates | Days | Times | Locations |
---|---|---|---|
Sep 20 - Dec 06 | Wed | 18:00 - 21:00 | Burnaby SE06 Rm. 106 |
Instructor
Rana Al-Sammarraie
Course outline
Cost
$597.56
Important information
- Departmental approval needed
-
Please email cstflex@bcit.ca for Departmental approval. Include your Student number (A0#) and COMP__ and preferred CRN __ and Program Declaration____. Course is 36 hours on campus. This is a BYOD (bring your own device) course, participants must provide their own current model PC with an i5 or higher equivalent processor, 8 GB of RAM minimum, 256 GB minimum storage and high-speed internet access. Students can not attempt COMP 1516, COMP 2501, and COMP 2601 simultaneously. Late registration is not permitted.
Status
In Progress
This course offering is in progress. Please check back next term, 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
- Applied Software Development (ASD)
Associate Certificate Part-time
- Computer Systems
Certificate Part-time
Contact Us
If you have a question or comment about this course, please complete and submit the form below.
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.
Programs and courses are subject to change without notice.