ºÚÁϳԹÏ

Programming Concepts I

Credits:
4
Prerequisites:

As software grows in complexity, how code is organized, structured, and tested becomes increasingly important. Building on foundational programming skills, this course introduces students to techniques for developing software that is maintainable, testable, and easier to reason about.


Using Java, students explore static type systems and Object-Oriented Programming (OOP), including classes, interfaces, inheritance, and polymorphism. Students also work with commonly used data structures and learn how to design and organize programs composed of multiple interacting components.

Through hands-on development, students build working applications and use automated testing to verify behaviour, identify problems, and improve the reliability of their software.