CIS 216

CIS 216 W01 – Applied Object-Oriented Programming

Course Description

Course Outcomes – Upon successful completion of the course, students should be able to:
  • Understand object-oriented programming concepts.
  • Create and use class hierarchies that demonstrate encapsulation, inheritance, and polymorphism.
  • Add exception handling and unit testing to object-oriented programs.
  • Use appropriate data structures, including arrays/lists, dictionaries, and sets.
  • Apply data serialization and deserialization using standard libraries.
  • Create GUI-based, object-oriented applications.
  • Create web applications using a web framework.

CIS 216: Applied Object-Oriented Programming – Fall 2025 Reflections

Harper College · Online Anytime · Instructor: Muhammad Zeeshan Baig

CIS 216: Applied Object-Oriented Programming at Harper College has been a deep dive into how real-world
software is planned, built, and tested. Over the semester, I’ve moved from simply “writing code” to
thinking in terms of objects, responsibilities, and reusable design.

We started with the foundations: methods, properties, and validation, then layered on exception handling and
unit testing so our programs fail more gracefully and are easier to maintain. Working with data structures
like lists, dictionaries, and sets made it possible to organize information cleanly and efficiently, and
serialization showed how to move that data in and out of files or other systems.

The middle of the course shifted toward user experience. Building GUI applications, menus, and custom dialog
boxes helped bridge the gap between raw logic and real users. It’s one thing to have a working algorithm and
another to present it in a way that feels intuitive.

The highlight has been the team project, where we pulled together encapsulation, inheritance, polymorphism,
testing, and UI into a single, coherent application. My Blackjack project, embedded below, is a great example
of how these concepts come together in a small but complete web-based experience.

Overall, CIS 216 has reinforced not just how to write code, but how to think like an object-oriented
developer: planning ahead, communicating clearly through code and documentation, and building software that
can grow beyond a single assignment.