Pokémon


For this project, I took on the challenge of creating a Pokémon game, focusing on developing the foundational code and organizing the structure of the project. The main goal was to implement a system that would generate a random Pokémon, complete with its unique set of powers, strengths, and weaknesses each time the game was initiated. To achieve this, I dived into the realm of Object-Oriented Programming (OOP) and utilized Unified Modeling Language (UML) to design and structure the classes and functions of the game. Additionally, I assumed the responsibility of incorporating all the necessary images for the Pokémon characters, ensuring a visually engaging and immersive experience for the players.

In terms of my role, I led the development of the base code, playing a pivotal role in shaping the overall architecture of the project. This involved creating classes that represented different aspects of the Pokémon game, such as the Pokémon itself and their attributes. I organized the functions and methods, ensuring a cohesive and modular codebase that facilitated smooth collaboration among team members. I also integrated the diverse powers, strengths, and weaknesses of each Pokémon into the code, contributing to the dynamic and strategic nature of the gameplay.

Throughout this project, I gained valuable insights into the practical application of OOP and UML in real-world scenarios. The experience not only enhanced my programming skills but also provided me with a deeper understanding of software design principles. One notable aspect of my learning journey was the incorporation of test scripts to meet the criteria outlined in my professor’s rubric. Writing these scripts not only validated the functionality of the code but also instilled a sense of rigor and precision in my programming practices. Overall, the project not only allowed me to showcase my technical abilities but also served as a significant learning experience in software development methodologies and best practices, especially in the context of graphical user interface (GUI) development in Java.