I think you need to do as below.
1. Define a single interface IBarCode
2. Implement a single Provider which creates the instance of the barcode you are looking for.
3. Implement the UPCA, EAN13 as Classes which implement the methods in the interface specific to the standards and in addition implement the properties and classes specific to the standard.
Hope this helps.
|