• Equality Check between Strings in Java

    In this post, I will try to demonstrate the rationale behind overriding java.lang.Object’s equals() method in java.lang.String class and why it’s recommended to call String’s equals() instead of == operator to check String equality. By the end of this...
  • Overview of Hashtable implementation in Java

    HashTable also known as Dictionary in some programming languages is a data structure that stores key-value pairs and allows efficient search and retrieval of values based on their corresponding keys, and provides efficient constant-time average case performance for operations...
  • Prototype Pattern

    It’s a creational design pattern, that emphasizes on effective ways to clone objects. At times in our codebase, we might need to create a copy of object with same state but use it for a different purpose. One way...
  • Observer Design Pattern

    It’s a behavioral design pattern, that enables a Subscriber/Observer to register with Observable/Provider/Subject in order to receive notifications whenever the state of the provider/subject changes. Terminology Observable/Provider/Subject - The data source which maintains a collection of subscribers and notifies...
  • CircuitBreaker and Retry pattern

    When building software the most important aspect to be considered is Resiliency. In the world of microservices, it’s vital to ensure that the service is resilient and has the ability to react to failure and still remain functional. Fundamentally,...