Skip to content

Consistent interface

"consistent interface"这个词是我在阅读 accu An introduction to C++ Traits 时,其中提出的。在software engineering的很多情况下,我们都需要约定 interface,下面对此进行一个总结:

Subtyping polymorphism

OOP subtyping能够实现consistent interface。

Program to an abstraction

参见 "Program-to-an-abstraction" 章节。

Generic programming-behavior based

需要约定好interface

Magic function

Magic function其实就是约定好的interface。

Java interface

Design by contact

Compiler

consistent interface是compiler进行dispatch的前提条件,否则compiler无法进行dispatch。

C++ trait is a consistent interface

trait 是一种interface/abstraction,关于此参见: C++\Idiom\Templates-and-generic-programming\SFINAE-trait-enable-if\Trait