Different Types of Bean Injection in Spring

1. Overview Spring framework was created originally to address the complexity of enterprise applications, and it’s well known for its implementation of dependency injection. To address an enterprise java application complexity, Spring provides four key features, and one of those features is loose coupling through dependency injection. In this article we’ll explore the different types […]

Share

Read More

Over-engineering and robustness in software

A lot of software engineers have a misconception of what over-engineering is and how it is related to robustness. Some say that robustness can’t exist without over-engineering. And I totally disagree, in-fact if you think about it for a second you will see that a robust block of code (a code that handles abnormal cases) have nothing to do with an over-engineered block of code (a code intended to anticipate the future), But i can understand where such a misconception comes from. As software engineers we tend to overthink problems. We sometimes go around trying to find out solutions for possible future needs, and that doesn’t work as no one can predict the future. So first of all let’s clarify the concept of over-engineering, its relation to robustness, and go through why we need to avoid it and how.

Share

Read More