Welcome to the repository for the POOB (Object-Oriented Programming) course at the Escuela Colombiana de Ingeniería Julio Garavito.
This repo gathers exercises, Hackerrank challenges, lab work, and theoretical notes to strengthen your fundamentals in OOP and software design.
- Classes & Objects:
Building blocks of object-oriented design. - Attributes & Methods:
Defining state and behavior. - Fundamental Principles:
- Encapsulation, Hiding, and Overloading
- Equality, Access, and Mutability Modifiers
- Object Interaction:
Interactions and relationships between objects.
- Abstract Concepts & Interfaces:
Defining contracts for classes. - Exceptions:
Handling error conditions gracefully. - Graphical User Interfaces:
Building interfaces with JSwing using MVC architecture. - Collections & Persistence:
Working with data structures and I/O operations. - Design Patterns:
Applying best practices in software design.
- Labs & Practice Arenas:
Hands-on exercises and Hackerrank challenges to apply OOP principles. - Theoretical Notes:
Comprehensive class notes and slides covering key topics. - Supporting Materials:
Tutorials, diagrams, and additional reference content.
For more detailed project artifacts, please check the following:
- InitialProject:
See more details at Puzzle Repository- FinalProject:
Review the extended implementation at POOB-VS-Zombies Repository
- Java as the main programming language.
- BlueJ for early development and hands-on exploration.
BlueJ Documentation - Maven for build and dependency management.
- JSwing & MVC:
Used for building graphical user interfaces. - Additional libraries and tools to support collections, persistence, and testing.
If you have any questions about the project requirements or need further information regarding the course materials, please feel free to reach out:
Email: [email protected]
“Good code is its own best documentation.” – Steve McConnell
Let's keep our code clean, our concepts clear, and our designs elegant.
Happy coding!