Interface is a set of tools
Interface is a set of tools
An interface is a set of tools that allows a user to interact with a program. In a broader sense, the term refers to any tools for contact between different systems and entities. Often they talk about the graphical interface – this is the appearance of a site, program or application.
The word literally means “a place of contact”, therefore, in IT, different entities can be called an interface, which at first glance are not similar to each other. For example, in object-oriented programming, an interface is a set of methods of an entity, that is, a set of actions by which it can interact with others. In web development, interface is the appearance of a site. And for a console program, an interface is a set of commands that can be entered into the console to control the behavior of that program.
All these meanings have one thing in common: what is called an interface serves to communicate between one and the other.
Who works with interfaces
Interfaces are used by absolutely everyone who uses computers, smartphones or other gadgets. Almost any program you work with has an interface: a browser, a graphic editor, a messenger, and anything else. You cannot interact with a program without an interface. These are operating system services, system processes that run “in the background” without user intervention.
In a narrower sense, UI designers or developers work with interfaces, if it is not a graphical interface. Developers, on the other hand, implement the interface so that it is functional and understandable.
Graphical user interface, Graphic User Unterface – what we talked about above. You open any program and a window appears on the screen. Everything in this window – text, buttons, sliders, pictures – is the program interface. The same goes for websites and apps. The appearance of the opened site is its graphical interface. Application window – interface.
It is an abbreviation for Command Line Interface, Command Line Interface. It is textual, not graphical. Everything that happens is described by the text; the user types commands in a separate line, the bottommost one. This interface simply looks like many lines of text on a plain background. Sometimes the text is in different colors: the colors represent different kinds of information.
Once upon a time, graphical interfaces did not exist, and people worked at the computer through the CLI. And now there are programs or even entire operating systems without a GUI. All interaction with them occurs through the command line.
The “basic” CLI of the system includes a set of commands that are needed to control the OS. When you download some tool or program, most often professional, you can sometimes install its CLI along with it to manage processes more flexibly.
The command line interface is mainly used by specialists: developers, system administrators, network engineers, and others.
Application Programming Interface is a separate kind of interface. It is not used by people, but by programs, which is why it is called software. For example, if a site owner adds the ability to comment via social networks to pages, he uses the social network API so that his site can contact it.
Gesture and voice interfaces
Some devices can be interacted with using voice and gestures. An example is a smart home that turns on the light with a certain gesture, or a speaker with a voice assistant. In this case, voice and gestures are a way of interaction, that is, an interface.
Communication between two people is also an example of voice and gesture interfaces.
Object-oriented programming (OOP) is an approach in which a program is viewed as a set of objects interacting with each other. Each has properties and behavior. OOP makes writing code faster and more readable.
The ideology of object-oriented programming (OOP) was developed to associate the behavior of a particular object with its class. It is easier for people to perceive the world around them as objects that lend themselves to a certain classification.
Before OOP, a different approach was used in development – procedural. The program is represented in it as a set of procedures and functions – subroutines that execute a certain block of code with the necessary input data. Procedural programming is well suited for lightweight programs without complex structure.
But if the code blocks are large, and there are hundreds of functions, you will have to edit each of them, think over new logic. As a result, a lot of poorly readable, jumbled code can form – “spaghetti code” or “noodles”.