Time to refactor the IJob interface and JobDispatcher class
The JobDispatcher and the Jobs are a nice architecture because they follow two important principles of OO design, separation of concerns and inversion of control:
- The jobs only do their job.
- The jobs yield the responsability of decided where and when they should be executed to the dispatcher.
- The dispatcher only decide where and when the job should be executed.
To go even further with the inversion of control, we could...
Read more