Live briefing
Everything about Interface (object-oriented programming)
Abstraction of a class
In object-oriented programming, an interface or protocol type is a data type that acts as an abstraction of a class. It describes a set of method signatures, the implementations of which may be provided by multiple classes that are otherwise not necessarily related to each other. A class which provides the methods listed in an interface is said to implement the interface, or to adopt the protocol. Wikipedia →
🧭 Start here: a 6-step reading path
- Read the overview: Interface (object-oriented programming)A 5-minute orientation
- Skim a recent paper: BioLegato: a programmable, object-oriented graphic user interfaceInfluential work since 2022
- Pick up a classic book: Programming ArcObjects with VBAThe most-reprinted book on the subject
- Read the landmark paper: Object-oriented mathematical programming and symbolic/numeric interfaceCited 3 times
- Go sideways: MixinA closely related topic
- Go sideways: Dynamic dispatchA closely related topic
📖 Definitions
No dictionary entry for this exact phrase.
🗂️ The subject at a glance
🏆 Landmark papers (most cited)
Object-oriented mathematical programming and symbolic/numeric interface
End-user object-oriented programming by means of an object-oriented interface
Object-oriented programming in C++: a user-friendly interface
Sarek: a window system interface for object-oriented concurrent programming languages
🆕 Influential since 2022
📚 Books worth reading
Programming ArcObjects with VBAKang-Tsung Chang · 2004- 📕Data structuresElliot B. Koffman · 2010
The Java tutorialMary Campione, Kathy Walrath · 1996- 📕Objects, Abstraction, Data Structures and DesignElliot B. Koffman, Paul A. T. Wolfgang · 2006
Objects, Abstraction, Data Structures and DesignElliot B. Koffman · 2004- 📕A prototype Lisp-based soft real-time object-oriented graphical user interface for control system developmentJohn Litt · 1994
Cocoa programming developer's handbookDavid Chisnall · 2009
CocoaRichard Wentk · 2010
Ranked by number of editions on Open Library, a rough measure of how lasting a book is.
🔗 Related topics
- Mixin In object-oriented programming languages, a mixin (or mix-in) is a class that contains methods for use by other classes without having to be the parent…
- Dynamic dispatch In computer science, dynamic dispatch is the process of selecting which implementation of a polymorphic operation (method or function) to call at run time…
- Destructor (computer programming) In object-oriented programming, a destructor (sometimes abbreviated dtor) is a method which is invoked mechanically just before the memory of the object…
- Trait (computer programming) In computer programming, a trait is a language concept that represents a set of methods that can be used to extend the functionality of a class. In object-orien…
- Type variable In type theory and programming languages, a type variable is a mathematical variable ranging over types. Even in programming languages that allow mutable…
- Dependency injection In software engineering, dependency injection is a programming technique in which an object or function receives other objects or functions that it requires…
- Type introspection In computing, type introspection is the ability of a program to examine the type or properties of an object at runtime. Some programming languages possess…
- This (computer programming) this, self, and Me are keywords used in some computer programming languages to refer to the object, class, or other entity which the currently running…