The PIT
Röster från ITM-koncernen.

Standarder finns av en anledning.

March 24, 2009 11:44 by Stefan Karlsson

Ett stort problem när man sitter och utvecklar ett gränssnitt är att få ihop en bra känsla hela programmet igenom. Självklart ska alla utvecklare veta hur man bygger ett effektivt användargränssnitt som följer standarder vad gäller knappars placering, namngivning och förväntat beteende.

Det är lika viktigt i winform-programmering som när man utvecklar för webben.

Webben
För webbutveckling så finns t.ex. standarder för CSS, HTML, Web Content Accessibility Guidelines (WCAG) m.m. Vad gäller layout så är det lite lösare än för winform-utveckling, var och en är ansvarig att skapa ett gränssnitt som fungerar för målgruppen, en “Ok”-knapp kan vara en bild, en textlänk, ett inputfält eller till och med en liten flashapplikation som bara visar ok-knappen.

Layoutmässigt så beror det på om man vill efterlikna en vanlig desktop-applikation eller om man vill framhäva innehållet som en vanlig hemsida eller kanske ta ett helt eget grepp och hitta på något okonventionellt. (Själv skyr jag sådana siter som pesten, där någon varit “kreativ” och hittat på ett helt nytt gränssnitt som motverkar hela idén med GUI-standarder och som i många fall kan vara rent idiotiska, t.ex. menyer som består av färgglada cirklar där man måste föra musen över cirkeln innan en text animeras ut och förklarar vad just det menyvalet gör.)

Skräckexempel
Denna site http://www.torchia.com/ har till exempel ett gäng små fyrkanter på skärmen som navigeringsmetod. Först måste användaren fatta detta idiotiska koncept, men det räcker inte med att förstå konceptet, för att kunna navigera siten så måste man hålla musen över fyrkanterna för att få veta vad som döljer sig där.

bad1

Det som är lite ironiskt är att denna site marknadsför ett företag som påstår sig vara bra på funktionell design.

Vill du se en uppsjö med andra siter som borde tänka om lite så kan du hoppa till http://www.webpagesthatsuck.com/architecture.html

Ett sätt att göra saker rätt är att se hur man INTE ska göra det, därför är det lärorikt att studera sådana här siter.

 

Desktopprogram
För winformutveckling så finns det en massa guidlines för hur gränssnitten ska byggas upp och hur knappar får ligga.  Till exempel så är det bestämt att om man har en “Avbryt”- och en “Spara”-knapp så ska “Spara”-knappen ligga till vänster om “Avbryt” om knapparna ligger brevid varandra, men om dom ligger ovanpå varandra ska “Avbryt” ligga under “Spara”.

Det finns regler för hur långt från kanten en kontroll ska ligga, vilket avstånd de bör ha mellan varandra, vilka default-acceleratorer de olika kommandona bör ha och en myriad med andra regler som varje winform-programmerare bör följa om man vill bygga en standardiserad applikation. Det finns förstås en anledning till att “Arkiv”-menyn heter just “Arkiv” i alla program och att “Avsluta” finns i den menyn.

Det är för att användare lätt ska kunna sätta sig in i nya program och komma igång med det viktiga, att använda programmen. På webben verkar detta inte vara lika viktigt då man ständigt hittar på nya sätt att förvirra användaren med nya “innovativa” gränssnitt.

Tyvärr så är inte heller desktop-världen förskonad från dålig design, så här kan det till exempel se ut om man låter en programmerare sköta detta:

wgetgui-screenshot

Titta även in på Bad User Interface Gallery: http://www.buigallery.com/

“Den riktiga världen”
Även i den riktiga världen så skapas det produkter med dåligt genomtänkt design, här kan du se en hel drös av dessa: http://www.goodexperience.com/tib/archives/product_design/

 

Tänk på dina användare
Och med det så lämnar jag över till er, tänk på din design och den stackars användaren som ska använda din produkt i slutändan. Dra lärdom av andras misstag. Prova inte på “nya” gränssnitt om det inte är just det som är meningen, det finns en anledning till de olika standarderna.