Obviously, it would be inadvisable to create multiple versions of our application to interface with each of the modems available on the market because the code maintenance and application upgrades would be too much work. For this reason, we would develop an interface that specifies the method signatures our application uses for interfacing with the modem. This would provide a uniform programming interface to all the modems. This way, the application that uses a modem would not break even if the implementations in the methods of the modem change in future.
















