För TV-serien, se Widget (TV-serie). För datorspelen, se Widget (datorspel).

En widget (förkortning för eng. "window gadget" - ungefär "fönsterpryl") eller gadget är en grafisk användargränssnittskomponent enligt svenska datatermgruppen.[1]) En widget är idag vanligen ett litet fönster som ständigt kan uppdateras och visas på en dators skrivbord eller i en mobil enhet, utan att användaren behöver aktivera fönstret. Det kan exempelvis visa en klocka, en kalender, en batterimätare, eller en anteckningsbok. En gadget har i allmänhet mer dynamiskt innehåll än en ikon, men har mer begränsat användargränssnitt än vanliga datorprogram och mobila appar. Exempelvis brukar en gadget sakna vanliga menyer, men när man klickar på vissa gadgetar kan ett vanligt program eller en vanlig mobilapp aktiveras.

På en persondator kan Google gadgets visas exempelvis i Google desktops sidopanel, och Windows gadgets kan visas i Windows sidopanel, som alltid visas överst, eller direkt på skrivbordet under det vanliga fönstret.

Fyra widgets på Kubuntu 9.10.

Kännetecken redigera

Den yta som denna text visas för läsaren på är till exempel troligen en widget av klassen "flikat fönster", (det har en flik längst upp som det står "artikel" på) och ett eller flera "flikade fönster" kan samlas i en widget av klassen "container för flikade fönster".

Widgets kännetecknas, förutom sin grafiska närvaro, ofta av att de tillåter interaktion från användarens sida genom exempelvis textinmatningar eller musklickningar. Man säger att en widget vid ett interaktionstillfälle genererar en händelse (ett event), och att denna händelse motsvaras av en aktivitet (en action) i någon form i systemet. Sådana system sägs vara händelsedrivna (event driven), vilket gäller för de allra flesta moderna datorsystem.

Ursprung redigera

Begreppet Widget uppstod på 1980-talet bland programmerare som utvecklade grafiska användargränssnitt till datorer som hade olika implementationer av operativsystemet UNIX. De olika UNIX-dialekterna skiljde sig åt, ofta ganska litet men dock, och när man flyttade ett program mellan olika UNIX-plattformar såg användargränssnitten inte likadana ut. För att komma tillrätta med detta skapade man olika bibliotek av Window gadgets och såg till så att dessa såg likadana ut på alla plattformar. Exempel på widgetar i detta sammanhang kunde vara textinmatningsfält, trycknappar, med mera. Dessa widgetbibliotek (widget libraries) användes sedan vid programvaruutvecklingen.

Programvaruutveckling i grafiska miljöer är dessutom tidsödande och komplicerat om ett stöd i form av widgets eller liknande saknas, eftersom programmeraren tvingas skriva i princip samma kodrader om och om igen för varje grafiskt element som ska ingå i användargränssnittet. Widgets tillför alltså även en oerhörd effektivitetsvinst i programmeringsarbetet, i och med att man återanvänder färdigtestad och väl fungerande kod.

Nutid redigera

Idag är widgets ett standardbegrepp, framför allt inom utvecklingen av grafiska användargränssnitt med objektorienterade metoder. Widgets gör det dels enkelt att komponera grafiska användargränssnitt, dels ger de (i idealfallet) programutvecklaren en viss kontroll över hur ett program ser ut på olika plattformar - exempelvis UNIX, Windows eller Macintosh. I Mac OS X kallas dessa skrivbordsprogram för widgets och i Windows Vista och Windows 7 kallas de för gadgets[1]. Widgets används också i operativsystemet Android[källa behövs]. De ger också tillgång till vältestad kod för den grafiska hanteringen som oftast har få men välkända fel och svagheter.

Under senare år har widgetbegreppet alltmer kommit att åsyfta kompilerade programkomponenter som bäddas in i ett annat program (exempelvis ett i ordbehandlingsprogram) eller i en webbsida, eller en sidopanel, ungefär som en applet. Detta står inte i motsats till den ursprungliga "definitionen" av begreppet, utan innebär enbart att fenomenet har utvecklats från att vara kodsnuttar till att vara kompletta småprogram.

Widget för mobila enheter redigera

På en smartmobil och surfplatta, exempelvis med operativsystemet Android är en widget, liksom en mobil app, ett litet förkompilerat tillämpningsprogram som användaren enkelt kan ladda ned från Internet och installera själv. En widget kan vara en självständig applikation, eller ett tillägg till en app. Exempelvis kan kalenderappens widget visa nästa händelse i appen. En widget skiljer sig från en app på så sätt att appen har en ikon, som är statisk eller endast kan förändras lite (exempelvis en e-postikon som visar antal e-postmeddelanden), medan en gadget är helt dynamisk. En gadget är alltid aktiv, medan de flesta appar aktiveras först när användaren klickar på ikonen, få appar har bakgrundsprocesser som alltid är aktiva. Om man klickar på menyknappen visas en meny för den aktiva appen, men inte för den widget som för tillfället visas.

 
Två widgets och tre appar (ikoner) på Android 2.3.

Widgets hos Apple redigera

Widget är också namnet på de småprogram gjorda i Javascript (vilket inte är samma sak som Java) som körs i Apples Dashboard.

Källor redigera

  1. ^ [a b] Gränssnittskomponent. Arkiverad 5 mars 2016 hämtat från the Wayback Machine. Svenska datatermgruppen