You are an enterprise application developer. You are modifying an existing component that communicates with a single vendor. You need to ensure that the design meets the following requirements:
* Supports multiple vendors.
* Supports common business rules that are applicable to all vendors.
* Supports rules that are specific to each vendor.Supports addition of new vendors easily.
What should you do?
A.
Create individual components for each vendor.
B.
Update the component to accept a constructor parameter that identifies the vendor.
C.
Update the component to accept a parameter on each method to identify the vendor.
D.
Update the component to use common rules in a base class and vendor-specific rules in derived classes.