Changes reason


…or “why you like some specific components that much?”

Some of you might have noticed that some specific components/classes (for example WebTree) and usually everything that is connected to it are getting much more improvements and fixes than other components. Some components sometimes might not get any updates at all. So i want to give a brief explanation to that.

Basically, like any other developer i want to have ideal code in WebLaF and i want to do a lot of refactoring all the time. But library will not advance and become better if i will stuck in just refactoring. So i simply do some massive refactoring, JavaDoc additions and improvements to specific group of components from time to time. That allows me to cleanup that group’s code, add all required features and make all necessary improvements at once so i won’t need to change that code ten times. In advance that makes things faster and allows me to deploy more fixes and improvements.

And these are the reasons (sorted by priority) why i would choose some specific group:

  1. It is used by some important components or by a lot of components
  2. It code is outdated and has a lot of bugs and/or causing a lot of problems
  3. It is tightly linked with another group of components that was recently refactored/updated
  4. Simply because it is not yet refactored/updated

There might also be some other reasons to refactor/update some code.
For example someone requested specific changes or i simply bumped into some really ugly/non-optimized code.

Anyway, i am always open for suggestions (including the ideas about specific code parts), feel free to post/ask anything :)