In computer programming, an interface is a point of connection between hardware, software, user, or any combination of these elements. In the interaction among the asymmetric elements, one enhances or constrains the other, based on the fundamental difference between the human and machine operation. For example, a user is able to sieve the database by using a search engine, while the database also gains the access to figure out the pattern of searches of the user reversely. In this case, the whole interaction or process is represented as an interface.
The typology of interface includes,
1) a software that connects to hardware
- The software or a computer program becomes a control language of the hardware to carry out a specialized function. For example, in order to use the adobe programs, word processor, or a calculator on a computer, the programs require the CPU, mouse, RAM, keyboards, and other hardware to work in a specific direction for the purpose of the software.
2) protocols that connect and set relations between software (Application Programming Interfaces, APIs)
- the interfaces between software or components of software are expressed in terms of the input, output, data collection, data types, and the operation.
3) the human-machine interaction or the "user-interface".
- the user interface provides a subjective mode of access to data through visual-spatial structuring such as texts, buttons, sounds, or animated media when transferring information from a computer machine to a user.
User Interface vs. Programming Interface
Fuller reveals that interface is a chemistry term which means "a surface forming a common boundary of two bodies, spaces, phases" (149). This definitions is important in understanding the difference between "user interface" and "programming interface." The latter fulfills more complex computer functions, while the former is less complex, more specialized and comprehensible to users. Fuller highlights that "interface" emphasizes process while "language" emphasizes control. In other words, user interface instructs "programming interface" to fulfill a certain set of functions. The latter is dependent on the former, which is dependent on the users ability to understand and instruct. The co-dependence between the two is demonstrated by the fact that "engagement with an interface tends to lose its luster once user realize the limitations of the programmed system" (151). Once user reach the limitations of the "user interface" the "programming interface" is then constrained.
Works Cited
Fuller, Matthew, and Cramer, Florian. Software Studies/A Lexicon. Ed. Matthew Fuller. Cambridge: MIT, 2006. 149-152. Print.
Written by Cindy
Co-Written by Patricio
Comments (0)
You don't have permission to comment on this page.