"Interfaccia" vs. "livello"

4

Nell'informatica, quali sono le differenze di significato tra interfaccia e livello ?

Ad esempio, un'interfaccia tra A e B deve appartenere a A o B oa entrambi, mentre un livello tra A e B deve essere una terza cosa che non fa parte né di A né di B?

    
posta Tim 04.06.2011 - 02:26
fonte

4 risposte

7

In breve - interface è ciò che governa le relazioni tra layers .

L'interfaccia nell'informatica (e nell'IT in generale) non è altro che un contratto che qualsiasi entità che lo implementa deve rispettare. Quindi un'interfaccia tra A e B è un insieme di regole predeterminate, che entrambe devono rispettare per comunicare correttamente.

D'altra parte layer è un'entità separata, che può essere o non essere tra altre entità. Il livello C è compreso tra A e B significa che esiste un'entità separata tra questi due, con le sue interfacce tra esso e A e tra esso e B (quelle interfacce di solito sono completamente diverse).

    
risposta data 04.06.2011 - 07:11
fonte
3
  • l'interfaccia è la regola che regola la comunicazione tra entità (si parla anche di protocollo con più o meno lo stesso significato).

  • un layer è un insieme di entità. Qualsiasi entità data può comunicare solo con entità nello stesso livello, nel livello sopra o nel livello sottostante, e non con gli altri. Non tutto è organizzato a strati.

risposta data 04.06.2011 - 19:06
fonte
2

an interface between A and B must belong to either A or B or both, while a layer between A and B must be a third thing that is neither part of A or of B?

Non direi che un'interfaccia deve appartenere ad A o B, ma uno strato tra A e B è sicuramente una terza cosa a parte A o B. "Interface" è una specie di concetto astratto; è un insieme di regole che regolano la comunicazione tra gli oggetti A e B e quindi non è un oggetto stesso (sebbene quelle regole siano generalmente codificate da uno dei due oggetti). Un livello tuttavia è esso stesso un oggetto distinto o una collezione di oggetti correlati in scopo.

Il punto è che il termine "interfaccia" dipende da un contesto più ampio rispetto a "in informatica". Ad esempio, gli informatici parlano spesso dell'interfaccia tra classi / moduli di codice, ma possono anche parlare dell'interfaccia uomo-computer tra l'utente e il programma. La definizione di "interfaccia" in ciascun caso è leggermente diversa: la prima parla dei metodi pubblici o di altri sistemi di messaggistica utilizzati dai moduli di codice, mentre la seconda sta parlando dei veri e propri widget software e hardware con cui l'utente sta interagendo.

    
risposta data 04.06.2011 - 19:08
fonte
1

L'interfaccia in generale ha il significato di:

a surface regarded as the common boundary of two bodies, spaces, or phases.

E layer:

bed; stratum

Quindi, in informatica, l'interfaccia di A e B potrebbe essere C, ma uno strato di A & B non sarebbe C, se C fosse la stessa cosa.

    
risposta data 04.06.2011 - 02:42
fonte

Leggi altre domande sui tag