Wk02: Learning Journal
In Week 1, I began learning how to code using Java as a new language. The process has been quite fascinating, yet a bit difficult. Learning a new language is always a challenge, and I had to become accustomed to Java's way of coding (e.g., declaring classes, building constructors, etc.). In addition, I have begun to learn about encapsulation and how "getters" and "setters" allow you to control who accesses your variables inside of a class. During Lab 01, I began to write small applications utilizing the knowledge I acquired during Week 1, and created test files utilizing JUnit to ensure that my methods performed as expected. Although initially confused regarding how the tests related to the main class, once I understood how the "assert" statement would confirm whether my expectations were met, the connection became apparent. Additionally, I have gained the ability to utilize Git commands to effectively manage my project: create a new branch, commit changes made to my code, and push those changes up to my GitHub repository. I was required to attempt several times before understanding how Git tracked every modification I made to my code; however, once I realized that every time I made a commit, it saved a snapshot of my current code, the concept of Git became easier to grasp.
The week also included an introduction to what an interface is, and how it defines common characteristics that different classes will need to perform. While I am still trying to fully comprehend how interfaces will function within a large-scale program, I am beginning to realize the benefits interfaces will provide in terms of organization -- particularly when I begin working on numerous monster classes that require the same type of functionality. Overall, this week allowed me to be more proactive in thinking as a programmer and establishing habits that professional programmers develop themselves, such as testing their code, managing versions of their code, and developing clean, reusable code. As I continue to practice, I believe I am slowly becoming better in "Java," and I look forward to continuing to practice, and eventually understanding how everything relates in the coming weeks.
Comments
Post a Comment