Well, I also have a version with such an encapsulation, but honestly, it brings useless complexity to an otherwise very simple application.