Learning Journal - Week 14 & Week 15

 Project in Review

    As we approach our final week of the semester, I'm feeling the small bit of pressure but also excitement of finishing up our project with my team. The project we've been working on has been rewarding, and having a group of our size has been an overall fun learning experience on how it feels to work with a small team. I've built several healthy communication habits, as well as gotten very familiar with using Git, GitHub, Android Studio, and even navigating documentation and online resources to troubleshoot issues and inspire me to implement solutions we didn't even learn from our class. Our project is due later this week, and even though there is still quite a bit to do on our project, it has been rewarding to see our collective hard work pay off. In my learning journal for next week, I'll go further into detail on what I accomplished as I recap what I've learned from this course. I can't wait to showcase it all!

 

First Homework in Review 

    Now standing here at the tail end of this course, I can look back and see from this new lens how I may re-approach my first homework assignment in this class. Although it's only been a few weeks since, I still feel like I've gained considerable knowledge on not only programming skills, but also organizational skills.

    The first official full calorie assignment we completed was a recreation of the game Hangman that takes place entirely in the console. It reads in a text file for a list of words, chooses one randomly, and has the player take guesses and earn points. In terms of potential improvements, I don't think there is anything logical I would do different, but I do feel like I can spend more time on Unit Tests and fully understanding what they check and how to write my own. The way I'm used to debugging is by sending out console lines or Toasts (in Android Studio development) but I know how powerful Unit Tests can be.

    Something I'm still proud of from my implementation of the assignment is when I eventually fit the puzzle pieces together of reading the documentation and it had clicked in my mind how all the methods interacted with each other. This happened after my second or third read of the documentation, and the moment it clicked I got straight to IntelliJ and started laying out my pseudocode.

    I also felt very proud seeing most of my code compile upon first attempt, it felt very rewarding to see that I made no syntax errors, and this was back when I was still learning Java coming from a purely C++ background. Sure, I had some Unit Tests and logic issues I needed to address, but I was impressed with how quickly I picked up on Java syntax and I feel confident in learning new programming languages and frameworks.

 

Areas of Improvement 

    Since those early days, I've learned a lot of new topics quite well relating to the theory of Object Oriented Programming. I now understand better how the four pillars of OOP play a role in my software, and how to utilize interfaces and abstract classes to make predictable code.

    I also now feel more confidence with inheritance and when to keep variables as private, public, protected, or even package-private, and overall I also feel quite confident working with the Package environment with Java and Android, something that I've always noticed before but never grew to understand until this course.

Comments