Jump to content

Talk:Interface (computing)

Page contents not supported in other languages.
From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Mihir.khatwani (talk | contribs) at 07:00, 10 October 2011. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
WikiProject iconComputer science Stub‑class Low‑importance
WikiProject iconThis article is within the scope of WikiProject Computer science, a collaborative effort to improve the coverage of Computer science related articles on Wikipedia. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.
StubThis article has been rated as Stub-class on Wikipedia's content assessment scale.
LowThis article has been rated as Low-importance on the project's importance scale.
Things you can help WikiProject Computer science with:

WikiProject iconComputing Stub‑class Mid‑importance
WikiProject iconThis article is within the scope of WikiProject Computing, a collaborative effort to improve the coverage of computers, computing, and information technology on Wikipedia. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.
StubThis article has been rated as Stub-class on Wikipedia's content assessment scale.
MidThis article has been rated as Mid-importance on the project's importance scale.
Taskforce icon
This article is supported by Computer hardware task force (assessed as Mid-importance).

Template:IEP assignment

Interface as a...

Previous text said "interface is a software component", new one says "interface is a specification". The former may be awkward, but the latter is not good either. Specification is too vague, could be a paper document or a description in some logic language that is not understood by the compiler. Whereas an interface (in this sense) is specifically a file that is parsed by the compiler when compiling any client module, and is part of the software's source. So, is there a better term?
Jorge Stolfi 06:22, 28 Apr 2004 (UTC)

That's the point: an interface need not be defined in the source code. An interface is not always a file that is parsed by the compiler.
For example - this is rather simplistic - but say if you write a C program to work with integers and you write int add(int, int);, int sub(int, int);, int some_weird_f(int);, and I wish to use your program, we can work out an interface between your code and mine: that I'm only to use add and sub, but not some_weird_f. If I do use some_weird_f that's a violation of the interface. This "informal" interface still behaves exactly as an interface does/should. Dysprosia 10:09, 28 Apr 2004 (UTC)

Is an interface the same as an object type? Does anyone have explanaion or pointers to explanaion? -- Taku 14:54, Sep 19, 2004 (UTC)

The List

A list of programming languages in which the keyword "interface" has *some* meaning is kind of absurd. Wouter Lievens 13:22, 13 Apr 2005 (UTC)

Not at all, if you understand what's going on here. See the above talk. There is a distinction between interfaces and interface compliance being treated as part of the language (eg Objective-C "@interface"), and "informal" interfaces such as in C which are not really recognized by the compiler or is a first-class part of the language. Dysprosia 13:53, 13 Apr 2005 (UTC)

Interwiki

Many of interwiki links here are pointing to versions of Interface (object-oriented programming) (fr, ru), User interface (ca, he, hu, ja, ko, lv, no, pl, th, ur) or general (not only in comuter science) Interface (da, es, nl, pt). Others are OK or I don't know about what they are.

There is a problem because in many cases there is no equivalent of Interface (computer science). Probably the best would be pointing to versions of Interface which is usually a disambiguation or merge it with Interface (object-oriented programming) as suggested above but I'm not sure whether this is good idea.

--MwGamera 19:57, 12 December 2006 (UTC)[reply]

Translation?

I don't get this line: "Interfaces can translated from a human language to other, using a language editor, that creates a *.INI file for the language."

Anyone care to explain? Supermagle 07:10, 7 May 2007 (UTC)[reply]

A piece of 'software' is provided access to computer resources

This makes no sense in English - I have changed 'is provided' to 'provides' which I presume is what was intended; but 'a piece of software' seems ambiguous ('software program'/'driver software'/something else?) - it looks like someone has translated or copied from a text they don't understand - so I have added the 'citation needed'. Ray3055 (talk) 11:42, 4 January 2008 (UTC)[reply]

Merger

Shouldn't Interface (object-oriented programming) be merged into the Interfaces in object oriented languages Section of this article? Tom94022 (talk) 22:52, 17 May 2010 (UTC)[reply]

of course. LMB (talk) 07:40, 18 May 2010 (UTC)[reply]
Interface (object-oriented programming) has been appropriately renamed Protocol (object-oriented programming), and as such should not be merged into this article. Interfaces and protocols are related but quite different concepts: Protocols are one way to implement interfaces, but by no means the only way, and protocols also have some uses beyond implementing interface. See for example the interview of scientist Erich Gamma at [1], where he makes a clear distinction between interfaces as described on this page (referred to as "interfaces" in the interview) and protocols as described in the Protocol page (referred to as "Java interfaces" in the interview because Java uses the term "interface" as a keyword for its implementation of protocols and the the interview was meant for an audience of Java programmers). 173.226.146.65 (talk) 23:38, 23 February 2011 (UTC)[reply]