CST338 - Week 13

CST338 Week 4 - Project 1 Review

Meeting Time: July 18, 2025, 6pm - 7pm

Participants: me, Stan

    My strategy for solving the assignments was to first get all of the code instructions implemented. I also write javadocs at the same time as implementing methods, so sometimes they can be outdated if the method is changed later. Once that was done, then I could attempt to debug the issues that were present. I did it this way because to test some methods, other methods must be implemented first, so this helps solve that issue. I did not plan it out on paper, since the code instructions were clear enough for me to understand how to implement the methods as asked (at least, 90% of the time).

    Stan's strategy is to create the structure of the project first, like the constructors, method and field names, then to follow the code instructions and implement them. After this he tests his code and makes fixes when needed. He uses breakpoints when debugging to check variables step by step. Once testing is complete, Stan writes out the descriptions for the javadoc headers for each method. Like me, Stan also did not write a plan out on paper for this assignment, since a prompt is provided. 

    I would change my strategy by debugging with breakpoints like Stan does, and go through each line step by step and see what variables change. (F7 to see a method call is very useful!) I would also benefit from writing more descriptive variable names, like instead of variable name "atk" use "attack."

    The most challenging part was figuring out why attack() was looping - it was due to calculateAttackPoints(this, monster.getElements()) instead using calculateAttackPoints(this, this.getElements()), throwing an infinite loop. Figuring out how to traverse the ElementalType List was also a bit difficult. My implementation of attackModifier() was also pretty ugly, and I left it as-is because it worked.

     Stan found the use of abstract classes and concrete classes interesting with many use cases. I found the ability to use the toString() to output a String description of a class to be interesting.

    I was most proud of submitting the project early - this week was packed, so I tried to get it out of the way first.

    I celebrated completing the project by doing more homework :^) The actual celebration was when the week was over, and I was able to play video games for about 8 whole hours before going back to the grind.

Isopod Update: Things are smooth sailing for now! Nothing too big to report. 

Comments

Popular posts from this blog

CST300 - Week 4

CST300 - Week 2

CST300 - Week 5