Monday, March 31, 2025

Week 12

 Week 12 (3/26-4/1)

Project 1: LDPM

With whom did you work? Wootark Kim and Michael Sorensen

What was your strategy for solving the assignments? reading the prompting a few times and analyzing the logic and data structures and line-by-line implementing methods

Did you start writing code right away? Did you plan it out on paper? I did not start right away, and yes, I used paper for methods() names, types, and access modifiers. I read the prompt first, then looked at the UML piece by piece and had it on the side to keep looking at it for the access, types, and names for the methods; then I started writing fields, autogenerated constructors, setters/getters and started working on the most challenging methods first and left the easiest ones to the end

What was THEIR strategy for solving the assignments? It seemed like they also followed line by line and added internal comments in their methods to help them not get lost

How would you change your strategy having worked on the assignment? Maybe work on the easiest methods first and then the most challenging ones to the end, it gives room to leave the frustration to the end and not the beginning

According to your classmate(s): how well does your code follow the Google Java Style Guide? When I showed them my classes, I didn't have the Javadoc fully developed, so they suggested that I finish the documentation before the submission

Did you know you can automate applying some of the style guide rules? I learned that while working on the project.

What was the most challenging part? attackModifier(), I used hashmaps and a helper method but then I realized that it applied a lot more lines of code and gave me trouble later on, the TA suggested removing the helper method because it didn't follow the Java style guide

What was the most interesting? the attack(), attackModifier(), sub classes, calculateAttackPoints(), toString() and the setType()

What are you the most proud of? passing all tests.

How did you celebrate completing the assignment? I actually celebrated by starting the Jotto Guess Word game right away :( this class goes by way too fast to be able to even celebrate.


Week 11

 Week 11 (3/19-3/25)

Summary of my feedback


What are some trends when evaluating others' code? Was any part of the code a struggle for YOU? Was any part of writing the code easy for YOU? What is your biggest victory?

It seems like most of us struggled with attackModifier(). This includes me. I implemented a helper method. Luckily, I joined the office hours with the TA, and Pol was so helpful to let me know just by looking at my code real quick to fix the helper method because it did not comply with the Google Java Style Guide, so I was able to fix it a day before submission. Can't say there are many trends, we all used different approaches when implementing methods, maybe setType() was a bit similar.

I struggled with passing setType() especially the expected -1, it was the one i had a hard time with because i was not setting the highestModifier in the attackModifier() but in the setType, at first, I used hashMaps in the attackModifier so i switched it to else if, which is not as effective but it helped my setType to be set up more simple.

The constructors, auto-generated setters, and getters are clearly the easiest part to write. After that, the toString(), getPhrase(), and setPhrase(Monster monster) methods are used.

My biggest victory was, like most people would say, seeing all the tests pass.

Peer feedback: https://docs.google.com/document/d/1uS3zxM_Za1-Uj1ZNxaYKUX4BqJhvcUr2izGR-tkuKME/edit?tab=t.0





Tuesday, March 18, 2025

Week 10

 Week 10 (3/12-3/18)

Homework 1 (Markov text generator) Which unit test was/is a challenge to pass, which was easy, what was the thing you were the most proud of completing?  

When working through Markov method, the most challenging part to work with for me was the addWord method because I had the statement as if (words.containsKey(prevWord)and the test kept failing, then I realized that the prompt was asking for the opposite if (!words.containsKey(prevWord)then the test passed. I also had a hard time digesting getSentence until I used StringBuilder. The fields were very straightforward because of the UML in the prompt. What I am most proud of completing is passing all tests; I thought I would spend a while debugging, but it was quicker.

Write a paragraph or two about what you worked on during week 1

I worked on the CodingBat in week 1. It took me longer than I expected because I worked on more questions than I anticipated without realizing it. I had a hard time breaking down some of them. Check-in 1 for Project 1 was not too bad. When I was making my first commit, I realized I didn't create a branch in the beginning until later, so the entire time, I was working on the main branch. Luckily, after looking it up, I found a way to add a branch after writing code from the terminal.

I've found it more efficient to create commits in the terminal and create a branch other than the main in the beginning. The quizzes are pretty straight forward and if I am following the lectures I am able to complete it before the estimated time. I also learned how to create Junit tests and UML by right-clicking in the class folder and showing a diagram. I also learned this only works with the Ultimate edition and not the Community edition because there is a plugin I found in Intellij called plantUML that helps you create UMLs in case you only have the Community edition. So far, so good!

Wednesday, March 5, 2025

Week 9

 Week 9 (3/5-3/11)

This is the first week of Software Design CST 338, and I got to work in CodingBat. I used this site before in community college for Java 1, which is a good refresher for this class. 

Discuss the process of solving the Coding Bat challenges.  A major part of software design is thinking about approaching a problem with the tools we have at our disposal.  What were the steps you took to solve some of these challenges? 

I follow a structure that involves reading the problem, understanding it, breaking it down or visually writing pieces down to help me understand it. Finally, I focus on what's needed. Then I put chunks of code in my head, write it down, and then organize and fix syntax.

Did you plan it out or throw code at it? 

I plan it out, and I need to understand it first to write code. Especially the conditions and what's being asked.

What worked? This approach works for me. Sometimes, I write it down visually or do extra steps to help me grasp the process. 

What DID NOT work? Sometimes, putting the code together in my head gets a bit overwhelming, so I try to visually write it down and write some pieces of code and then, lastly, put it together,

How many tries did it take? How many tries it takes depends on the subject. Map and String take me longer to write down, so more chances to get the syntax wrong. So, it took me more time to fix my process and syntax in those problems that involved more critical thinking. As usual, practice helps us master a subject.

Week 3

  Week 3 (7/9-7/15) What did I learn this week in CST 334? I learned different concepts this week. The book and lectures teach how computers...