Saturday, February 13, 2016

Midterm 1 and Assignment 1 (Week 5)

There was nothing new in the course curriculum so far, but I have managed to comprehend how linked lists actually work from an ADT perspective. Implementing the functions and reading the code for linked lists seems pretty hard at first, but I found out that drawing pictures and writing pseudo-code really helps.
I also learned in lab that experienced programmers do draw pictures of what code to write when they implement code similar to linked lists.
And speaking of linked lists, I have a feeling that most of the course is just going to be learning about more ADTs, with some algorithms and recursion, but mostly on other ADTs such as binary trees. I also have no idea how Assignment 2's going to apply all the content we've learned so far, but I did hear from my professor that I'd need a partner to complete it. But enough about Assignment 2, I've got Assignment 1 to complete. I have completed half of the starter code, but I'll have to run a lot of testing and debugging to make sure I take care of all the cases.

As for the midterm, it went pretty well. I was just worried about the extreme time constraint because 50 minutes, for me, is not enough time to even check your work or plan your answers. I realized then that using @param for the docstrings takes too long for such a limited amount of time, so I had to switch to @type in the middle of writing one of the questions. Luckily, most of pseudo-code and implementation was correct, so I think it's a minor error on my part.

For some people, the assignment gives them a lot of flexibility to write their own code, but I feel like there's not enough client code to even write the implementation for all the possible cases. Maybe that's what a real programmer feels like: you're only given the semantics and the rest of the implementation is up to you. I highly doubt that the professors will give us more client code, so I guess I'll just have to make due with the ones I have... by writing my own.

We'll see how well I can manage my duties on Assignment 1. It shouldn't be too hard, but I heard it's a lot to code.

No comments:

Post a Comment