CPIT-305 Advanced Programming Spring 2025

Advanced object-oriented programming concepts and techniques.

Schedule

  • Lecture:
    • Time: Monday & Wednesday 01:00PM-02:20PM
    • Location: FCIT building, Lab 10
  • Lab:
    • Time: Sunday 05:30-06:50PM
    • Location: FFCIT building, lab 9

Instructor

Khalid Alharbi, Ph.D.

  • Office Hours: Monday and Wednesday 11:00AM-12:20AM *
  • Location: FCIT building, office #113

Join our MS Teams group/team for announcements and questions.

* Please feel free reach out to me on Teams outside of office hours for questions. I'll try to answer you as quickly as possible, and I'm always happy to set up an ad hoc video/voice call on Teams whenever possible.

Calendar

WeekTopicsReadingsAssignments/Labs
45%
  • 1
  • Rajab 12th / January 12th
  • OOP Review
  • Classes
  • Inheritance
  • Polymorphism
  • Abstract and Concrete methods
  • Static
      45%
      • 2
      • Rajab 19th / January 19th
      • Exception and Error Handling
      • Types of Exceptions
      • Catching, throwing and propagating exceptions
      • creating custom exception classes
        45%
        • 3
        • Rajab 26th / January 26th
        • Streams & Files (II)
        • Files
        • Object stream
        • Random Access Files

          Lecture slides:
          45%
          • 4
          • Sha'ban 3rd / February 2nd
          • Java NIO (New Input/Output) API
          • Streams & Files (III)
          • Memory mapping and File Locks

            Lecture slides:
            45%
            • 5
            • Sha'ban 10th / February 9th
            • Threads (I)
            • What are Threads
            • Thread creation using two methods
            • Thread States
            • Thread Properties
              45%
              • 6
              • Sha'ban 17th / February 16th

                Lecture slides:
                  45%
                  Holiday - No class on Sunday. Midterm exam week [TBD]
                  • 7
                  • Sha'ban 24th / March 23rd

                    Lecture slides:
                      45%
                      • 8
                      • Ramadan 2nd / March 2nd

                        Lecture slides:
                          45%
                          • 9
                          • Ramadan 9th / March 9th
                                45%
                                • 10
                                • Ramadan 16th / March 16th

                                  Lecture slides:
                                    45%
                                    • 11
                                    • Shawwal 8th / April 6th

                                      Lecture slides:
                                        45%
                                        • 12
                                        • Shawwal 15th / April 13th

                                            Lecture notes:
                                            45%
                                            Long weekend: No classes on Sunday
                                            • 13
                                            • Shawwal 23rd / April 20th

                                                Lecture notes:
                                                45%
                                                • 14
                                                • Shawwal 29th / May 27th

                                                    Lecture notes:
                                                    45%
                                                    • 15
                                                    • Dhu al-Qa'dah 6th / May 4th
                                                    • Lab exam and project demo

                                                        Lecture notes:
                                                        45%
                                                        • 16
                                                        • Dhu al-Qa'dah 13th / May 11th
                                                        • Final Exams (Dhu al-Qa'dah 13th-29th / May 11th-25th)

                                                            Lecture notes: