1 min readApr 20, 2019
Very good article. I fully concur with your conclusions.
One detail is that AudioDeviceFactory isn’t actually following the AbstractFactoryPattern. AudioDeviceFactory is simply a factory to create different audio devices but it’s not abstract (interface, abstract class).