Gränssnitt

Från Webbling
Hoppa till: navigering, sök

Inom datavärlden har gränssnitt lite olika betydelse. Det som de olika användningarna av termen har gemensamt är att det handlar om en metod för möjliggöra kommunikation mellan olika typer av parter. Gränssnittet fungerar som tolk och översätter kommunikationen mellan de två parterna. Detta möjliggör informationsutbyte och gör att de olika parterna blir mindre beroende på hur den andra parten är implementerad. Så länge gränssnittet är det samma, kan vi byta ut en av parterna utan att den andra ska påverkas mer än marginellt (i alla fall skulle det fungera så i ett ideal fall, i verkliga världen förhåller det sig sällan så).

Människa/dator-gränsnitt

Vi talar ju ofta om gränssnitt när vi beskriver hur vi använder vår dator, t.ex. grafiska gränssnitt. I detta fall syftar gränssnitt på hur vi överför information mellan dator och människa. Vi har två olika parter som måste kunna kommunicera på ett vis som bägge kan förstå och förhålla sig till. Med hjälp av olika typer av hårdvara, såsom t.ex. ett tangentbord, kan användaren förmedla till datorn vad denne vill åstadkomma. Datorn kan sedan i sin tur kommunicera tillbaka information till användaren, t.ex. via skärm, ljud, osv. Vi har alltså ett kommunikationslager som ligger mellan användaren och datorn och som möjliggör utbyte av information. Denna typ av övergångar ifrån ett typ av system till ett annat är vad vi brukar kalla gränssnitt.

Mjukvarugränssnitt

Även när vi ska kommunicera mellan program/applikationer krävs det gränssnitt. Det krävs att det finns väldefinierade kommunikationsregler och kommandon som vi kan anropa för att få motparten att utföra saker. Detta kan handla om alltifrån väldigt grundläggande detaljer såsom hur ska den ena applikationen ska kunna ansluta sig till den andra, vilken typ av data som kan utbytas, vilka tjänster/kommandon som tillhandahålls, osv. Då väldigt få gränssnitt är enkelriktade, så handlar förstås detta om hur anrop och informationsutbyte ska se ut i bägge riktningar.

Hårdvarugränssnitt

Ett annat exempel på ett gränssnitt kan vara något mer hårdvarubetonat såsom ett diskinterface (här använder vi oftast den mer svengelska varianten). Ett dylikt interface, t.ex. SATA eller IDE, är det som möjliggör att datorn kan kommunicera med en hårddisk eller SSD. Genom att ha ett enhetligt gränssnitt, kan man till en och samma dator ansluta hårdvara ifrån olika leverantörer. Vardera parts, dator och disk, funktionalitet kan skilja sig åt rejält men tack vare att man har ett väldefinierat gränssnitt som sitter mellan dem så kan de kommunicera och samverka utan problem. Så länge den utrustning vi installerar delar samma gränssnitt som datorn, kan de kommunicera. I vissa fall kanske vi behöver speciella drivrutiner. Dessa är också en del av gränssnittet och med hjälp av dessa anger vi hur operativsystemets ska kommunicera med den installerade hårdvaran. Detta sker detta genom att det tillhandahålls standardiserade metoder som kan översätta de funktioner som operativsystemet förstår till något som hårdvaran kan hantera. Även detta är en typ av gränssnitt.