Over this course, I have learned much about Java and programming in general, particularly the object-oriented programming (OOP) paradigm. As it draws to a close, I understand that the concepts of inheritance and polymorphism are complex and challenging to master. Although I understand their application and utility, I still have some difficulty applying them in practice. As such, I would like to focus on working with them for some time. In addition to practical exercises and implementing these approaches in my projects, I intend to seek out more materials related to them, including language-independent guides to OOP. Since I find these concepts challenging, I would have liked to receive more guidance on them within the course. As mentioned above, they are complex subjects that seem to require more practice than the other concepts covered by the course.
In addition to Java, I would like to work with two other programming languages. The first is Python, which is a high-level language that is commonly used for various kinds of scripting. Its versatility and relative simplicity allow such scripts to be created quickly and efficiently. The ability to work with Python is a sought-after skill in IT, and it can also allow one to create utilities that would be useful in automating one’s general workflow. Additionally, I would like to get acquainted with a lower-level programming language, such as C++. This language is commonly used in large-scale development and software that interacts closely with hardware. Although it requires an understanding of complex concepts such as memory management, its more direct interaction with the computer’s hardware allows one to create software in situations where performance is critical. Such applications range from high-end operating system development to the creation of video games. As such, being able to create code in C++ would significantly increase my versatility as a programmer.
Reference
Farrell, J. (2014). Java Programming (7th ed.). Boston, MA: Cengage Learning.