This week has been quite different from the rest, because although I have been studying the fundamentals of programming and microservices. The fact that the year is over, and I am in the middle of my process as an internal software developer, was an appropriate time to think about everything I have done, what I have learned and about the long road to reach my goals.

Ride or die

In my process as an internal software developer, I have reached another phase where the filters have started. So, I am motivated and ready to continue advancing, I want to make all my effort to be able to go from intern to developer and if I fail at least I will be left with the feeling that I gave it all and that is good for me.

Composition

Composition is a relationship between classes which comes up as an alternative to inheritance. When inheritance stops working for your needs (to avoid code redundancy). So instead of having a parent class over your classes (Class A is a Class B), you have small classes around your class (Class A has a Class B), which should only have those classes that have the desired functionality. There is no reserved word for composition as it boils down to instantiating objects of the small classes that are part of your class.

BOM

These last months I have been working and studying microservices in java with Spring Framework and Maven as dependency manager. Maven manages a Pom.xml file where the dependencies that the application needs are written. Each microservice has its own Pom.xml and when you have “n” microservices that function as the same application, it is very common to have repeated dependencies and plugins. A very sophisticated solution is to have a BOM that works like inheritance. That is, in this BOM we will have all the dependencies and plugins that our microservices have in common, so in the Pom.xml of the services they will inherit from this BOM and they can have the additional dependencies they need, and we avoid the redundancy of dependencies and plugins.

JavaScript Fundamentals

I’ve been getting in shape in JavaScript, where I’ve been doing small projects, taking courses, and reading about the language. One of the most interesting things I learned this week is about the ‘blur’ event type, which is triggered when your element is no longer in focus. It has been especially useful to validate form fields such as an email or a postal code.

In the same way I learned that a button within a form will be by default of type submit. I ran into this problem doing a project until I investigated about it and the solution was to put the button a “type = ‘button’” because by default it was “type = ‘submit’” and this caused the form to be submitted, which it was not the desired behavior.

I’ve been reading and using the prototype. I saw a little about how to inherit in JavaScript using prototypes, but just a little. The interesting thing was discovering how it works in an object. I saw it as the skeleton of the object, the prototype is in JS as a class in Java. Where you can have attributes and create methods for a specific object type.