Apr 16, 2024  
College Catalog 2023-2024 
College Catalog 2023-2024 [ARCHIVED CATALOG]

COMP 127 - Object-Oriented Programming and Abstraction

What happens as software grows in complexity? How do we break a program into manageable pieces? How do we write readable, maintainable code? This course is an introduction to the building blocks of software design: abstraction, decomposition, and encapsulation. Using object-oriented programming in Java, we will create graphics, games, and simulations, and explore natural language processing. Topics may include: classes, objects, polymorphism, inheritance, testing, refactoring, events, closures, streams, immutability, parallel programming, and version control. The course culminates in a student-designed project. There is a required 1.5 hour laboratory section associated with this course. Prerequisite(s): COMP 123  or permission of instructor. Every semester. (4 Credits)