By Antriksh Dhand (@antrikshdhand)
I primarily focused on enhancing the gameplay experience and ensuring the robustness of the codebase. I implemented new key commands, refactored existing code for an improved object-oriented design, and explored end-to-end testing strategies.
Check out my contributions on the TP Dashboard.
captured
, history
, and stepback
CommandsI implemented the captured
, history
, and stepback
commands, allowing the player access to commands they would generally expect to see in a modern chess game. The stepback
command posed a unique challenge, requiring a deep dive into move reversal mechanisms. This effort involved significant code refactoring to promote cleaner, more object-oriented structures.
To enhance code maintainability and extensibility, I introduced sub-classes such as CastleMove
and EnPassantMove
. Additionally, the implementation of the MoveFactory
class, adopting the Factory method pattern, has streamlined the creation of Move objects. This in turn fed into making the reversal of moves much more cleaner to implement and more robust overall. I also encouraged and administered the use of SLAP in our codebase.
While not introducing new major sections, I diligently maintained the UG by documenting my new commands and ensuring that information stays relevant and up to date.
I made substantial progress in establishing end-to-end testing for the CLI. Despite not achieving full completion, I laid the groundwork and documented the process in the DG, providing a valuable resource for future testing efforts. You can see a stub of this code in the DG.
Regularly contributed to team discussions, providing insights and assistance where needed.
Actively participated in code reviews and offered constructive feedback to enhance overall code quality.