Considerations when implementing complex features

When it comes to building complex features in any software application, it often boils down to two options:

  • Building each feature from scratch, thoroughly testing and integrating it into your application
  • Using an existing library that has already taken care of the preceding point

Each option has its own trade-offs. If we decide to implement a feature and build it from scratch, we will have full control over what happens, and can customize it the way we like without any dependency. However, we must also take into consideration the time and effort that we will have to spend in building it. Even after spending months, there may still be scenarios and optimizations that we did not think of. These will, of course, be fixed as time passes, but this is time that could be spent elsewhere.

In contrast, we have numerous libraries available in the open source ecosystem at our disposal. Many smart people have spent time to develop code that we can reuse for our own purposes. In most mature libraries, this code has been battle tested and you can be certain that it takes care of almost all scenarios that may come up. The downside is that you have little control over the new features and bug fixes that get pushed from time to time. Furthermore, the library may not work exactly the way you want it to work for your application's use case.

The general rule of thumb when it comes to making this choice is this: if the feature you are trying to implement is relatively common, there is probably a library out there that does it better than you can.

With charts, which are one of the most common graphical elements in any data-driven dashboard, this is indeed the case.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.149.254.35