Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Based on the feedback raised in on the mailing list discussion. http://ofbiz.135035.n4.nabble.com/Framework-Cleanup-Options-Tidy-Up-amp-Refactor-tt4676797.html#none . We are looking to initiating would like to start some refactoring work to tidy and clean up areas of the framework by refactoring..

What is re-factoring?

Refactoring is the cleaning, tidying or improving the existing code yet keeping the same functionality.

Why do we want to do this re-factoring?

Refactoring is something that tends to happen naturally over time as code evolves. We have identified some key areas that could really benefit from an refactoring effort so would like to promote these areas for active clean up and refactor. The key benefits of any refactor is cleaner, neater and simpler code.

What sort of issues have been identified that the re-factoring could help with?

Looking at some of the OFBiz code we have identified some of the following:

  • Some of the classes have been extended from external libraries into the Core APs
  • Some of the files are too long
  • Different levels of abstractions are mixed together
  • Poor test coverage, lack of Test Driven Development
  • Implicit (hidden) dependencies

 

 

 Reasoning for refactor

Extending classes from external libraries into the core APIs
- Writing to implementations instead of interfaces
- Files too long
- Different levels of abstractions mixed together
- Poor test coverage, lack of TDD
- Implicit (hidden) dependencies (I dislike this the most)

...