Interfaccia (informatica)

Da Wikipedia, l'enciclopedia libera.

In informatica il termine interfaccia è utilizzato in vari contesti:

  • per indicare il punto di incontro o collegamento, spesso standardizzato, tra sistemi diversi e/o le modalità per permettere la loro interazione sotto forma di scambio di informazioni;
  • in particolare nel paradigma di programmazione orientata agli oggetti, per indicare gli elementi pubblici di una classe.

Interfaccia hardware[modifica | modifica wikitesto]

L'interfaccia è quel componente, fisico o logico, che permette a due o più sistemi elettronici di comunicare e interagire tra loro, cosa che spesso non è possibile a causa della diversa natura o realizzazione dei sistemi stessi, o per il semplice fatto che il progetto iniziale non prevedeva questa possibilità.

Interfacciare vuol dire quindi collegare due o più dispositivi eterogenei, in modo da permettere uno scambio di informazioni, seguendo un formato standard che consenta lo scambio di dati.

Dal punto di vista fisico, un'interfaccia è caratterizzata da un canale di trasmissione identificato da un mezzo trasmissivo (es. cavo), due connettori e due porte o slot poste agli estremi della trasmissione e, dal punto di vista logico, da una modalità di trasmissione che può essere di tipo seriale e parallelo. Il caso tipico è quello del collegamento tra loro delle apparecchiature elettroniche come ad esempio le componenti interne ed esterne (periferiche) del computer.

Interfacce video[modifica | modifica wikitesto]

Interfacce a bus[modifica | modifica wikitesto]

Interfacce generiche[modifica | modifica wikitesto]

Porte firewire 400
Porta firewire 800
Porta USB

Esistono un certo numero di interfacce generiche, adatte a molti scopi, che in genere i costruttori hanno cura di implementare sempre nei computer che producono, per aumentarne la versatilità. In genere le specifiche per queste interfacce sono standard pubblici, stabilite da enti come l'IEEE o l'ISO.

  • RS232 (interfaccia seriale);
  • RS432;
  • Centronics (interfaccia parallela);
  • IEEE 488;
  • SCSI (disco rigido, CD-ROM, scanner e altri);
  • ATA (o IDE, PATA, EIDE per disco rigido e ottici);
  • SATA (per SSD, dischi rigidi e ottici);
  • eSATA (SATA per dispositivi esterni);
  • IEEE 1394 o Firewire esterno espandibile, capace di fornire alimentazione ai dispositivi, in diverse tipologie, (periferiche esterne come dischi rigidi e ottici, scanner, videocamere e fotocamere digitali);
  • PS/2 (tastiera e mouse);
  • ADB per tastiere e mouse e simili dispositivi di controllo;
  • SHUGART (per floppy disk);
  • USB (Universal Serial Bus, o bus seriale universale in italiano, esterno espandibile, in diverse tipologie, capace di fornire alimentazione ai dispositivi tastiera e mouse, fotocamere digitali, ecc.);
  • HDMI (High Definition Multimedia Interface);
  • Thunderbolt (successore di USB)

Attualmente si stanno abbandonando i lettori per dischetti (floppy) e le interfacce Centronics (in special modo sui laptop) e allo stesso tempo si stanno installando lettori di smartcard.

Interfaccia nelle reti[modifica | modifica wikitesto]

Nell'ambito dei dispositivi di rete e dei terminali host di rete un'interfaccia rappresenta logicamente una porta fisica di connessione in ingresso o in uscita al dispositivo alla quale si inserisce un connettore di un cavo (a volte anche wireless) per permettere dunque un collegamento dell'apparato con un altro tramite un link di rete (es. interfaccia ethernet, Wi-Fi, USB). Tipicamente nel caso degli apparati di rete l'interfaccia fisicamente comprende la scheda di rete munita dell'alloggio per il connettore che, nel caso dei terminali (computer), può essere tipicamente o una porta seriale o una porta parallela per il collegamento con le varie periferiche o del terminale con la rete locale.

Interfaccia software[modifica | modifica wikitesto]

Interfaccia utente[modifica | modifica wikitesto]

Exquisite-kfind.png Per approfondire, vedi Interfaccia utente.

Probabilmente l'esempio che risulta più comune e facilmente comprensibile è quello di interfaccia utente. In questo caso l'interfaccia rappresenta quella componente, che assume ad esempio un software, per far sì che l'utente riesca a comunicare ed interagire con la macchina.

Interfaccia nella programmazione orientata agli oggetti[modifica | modifica wikitesto]

Nei linguaggi di programmazione orientati agli oggetti, il termine interfaccia è usato in due accezioni distinte.

Da un lato, l'interfaccia di una classe è l'insieme dei dati e dei metodi visibili all'esterno degli oggetti che sono istanze di quella classe.

La seconda accezione, invece, si trova solo in determinati linguaggi e indica un tipo paragonabile alla classe, ma soggetto a restrizioni ulteriori: risulta composta esclusivamente di metodi astratti ed eventualmente da un insieme di campi visibili all'esterno di essa, funzionando quindi come punto di incontro tra componenti simili che hanno una struttura interna diversa. Questa seconda accezione si trova in linguaggi come il Java e i linguaggi della famiglia .NET, che non supportano l'ereditarietà multipla tra classi, ma solo tra interfacce.

Le interfacce (intese nella seconda accezione) spesso rappresentano il componente di livello più alto di un'applicazione e, dal punto di vista del client, il più critico. Esse possono essere usate per migliorare l'estensibilità e la riusabilità di un programma object oriented.

Altri tipi di interfaccia[modifica | modifica wikitesto]

Ciò che costituisce un'interfaccia dipende dalle regole del contesto in cui è inserita ed essa viene progettata seguendo ogni criterio utile per raggiungere il miglior risultato del prodotto che si sta utilizzando: ad esempio, i driver utilizzati per pilotare delle schede elettroniche inserite all'interno di un calcolatore sono un'interfaccia, che fa sì che la CPU e la scheda in questione possano comunicare e interagire tra loro.

Voci correlate[modifica | modifica wikitesto]

informatica Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica