Public interface explained

In computer science, a public interface is the logical point at which independent software entities interact. The entities may interact with each other within a single computer, across a network, or across a variety of other topologies.

It is important that public interfaces will be stable and designed to support future changes, enhancements, and deprecation in order for the interaction to continue.

Design

Guidance

A project must provide additional documents that describe plans and procedures that can be used to evaluate the project’s compliance.

The programmer must create fully insulated classes and insulate the public interfaces from compile-time dependencies.

Best practices

C++ interface

Use protocol classes to define public interfaces.

The characteristics of a protocol class are:

Benefits

The benefits of using protocol classes include:

Costs:

Other information

Various methodologies, such as refactoring, support the determination of interfaces. Refactoring generally applies to the entire software implementation, but is especially helpful in properly flushing out interfaces. There are other approaches defined through the pattern community.[1]

References

  1. Web site: Design Patterns Library . 2022-11-24 . hillside.net.