CPE342 Object-Oriented Problem Solving

Course Description

 

This course aims to introduce students to object-oriented programming by building on the understanding of procedural programming and provide them with object-oriented programming skills to solve computational problems. The course includes practicing object-oriented programs development, editing, compiling, linking, and debugging using Java. The core of this course is studying objects and classes and how they are used to represent data. Through the study of objects and classes, this course introduces students to the concepts of inheritance, polymorphism, abstraction, overriding, reuse, encapsulation, etc…

 

Announcements
 
OOPS Mid-term exam is rescheduled to Thursday 17/4 4:00-5:30 PM. Check the following PDF for your exam location.
 
 
Grades Of Quiz5 are posted.
Check the "Grades" section.
 
Grades Of Lab4 are posted.
Check the "Grades" section. Students whose grades appear in red got a 0 in this lab assignment for cheating. Do not contact me unless you have a very strong evidence that you did not cheat.The penalty for cheating another time by the same individual will be not accepting any of his/her solutions for lab assignments for the rest of the semeseter.

Lab6 tutorial is posted.

Grades Of Quiz4 are posted.
Check the "Grades" section.
Grades Of Lab3 are posted.
Check the "Grades" section.
Lab5 tutorial is posted.
Lab4 assignment is posted.
Check the deadline.
Grades Of Quiz3 are posted.
Check the "Grades" section.
Lab4 tutorial is posted.
Read it carefully and be well-prepared for lab2.
Grades Of Lab2 are posted.
Check the "Grades" section.
 
Lab3 assignment is posted.
Check the deadline.
 
Grades Of Lab1 are posted.
The grade of each lab (out of 10) is computed based on your in-lab work (out of 10) and the lab assignment (out of 5). Students whose grades appear in orange, let me see you as soon as possible. Students whose grades appear in red got a 0 in this lab assignment for cheating. Do not contact me unless you have a very strong evidence that you did not cheat.The penalty for cheating another time by the same individual will be not accepting any of his/her solutions for lab assignments for the rest of the semeseter.
   
Lab3 tutorial is posted.
Material related to this lab will be covered in Sunday's lecture and next week labs.
 

Lab2 assignment is posted.

Lab1 assignment is posted.
Check your section assigned problem and the deadline for submission.
 
Lab2 tutorial is posted.
Read it carefully and be well-prepared for lab2.
 
Lab1 tutorial is posted.
Read it carefully and be well-prepared for lab1.
 
Documents
 
Course Outline: PDF, Slides
Introduction
Programming Fundamentals I
Programming Fundamentals II
Methods
Arrays
 Objects & Classes: Part I, Part II, Part III
Inheritance and Polymorphism: Part I , Part II
Strings
Abstract Classes & Methods
Interfaces
Exception Handling
Garbage Collection
Inner Classes
ATM Case Study
 
In-Class Examples
Static Variables and Methods
 Object Aggregation
Inheritance & Methods Overriding
Lab9 Solution
 
Lab Documents
 
Lab1 Tutorial
Lab2 Tutorial
 Lab3 Tutorial
Lab4 Tutorial
Lab5 Tutorial
Lab6 Tutorial
Lab8 Tutorial
 Lab9 Tutorial
Lab10 Tutorial
 
Lab Assignments

All lab assignments should be submitted to the following email: This email address is being protected from spambots. You need JavaScript enabled to view it.

If the assignment includes code submission, make sure you submit only your .java file(s). If there are several files in your submission, compress the files and submit a .rar or .zip file. DO NOT submit separate files, otherwise your solution will not be graded.

Late submissions (after the deadline) will not be accepted.

Lab # Section1 Section2 Deadline
1 pdf pdf

Section1: deadline extended to Tuesday 4th of March  midnight.

Section2: deadline is Friday 7th of March midnight.

2 pdf

Wednesday 12th of March midnight.

3 pdf

Wednesday 19th of March midnight

4 pdf

Wednesday 26th of March midnight.

5 pdf

Wednesday 2nd of April midnight.

Monday 7th of April midnight

6 No Assignment for Lab 6
7 pdf Wednesday 30th of April midnight
 
Other Resources
 
The Java Language Specification
 
Grades
 
Total Grades (out of 50)
 Labs Grades: Sunday Section, Tuesday Section