Derfor skal du bruke CSS-rammeverk

5. Jun 2015

CSS-rammeverk er elsket og i det siste hatet av utviklere verden over. Jeg slår et slag for bruk av rammeverk, og mener du bør bruke det. Alltid.

Om det er snakk om et fullskala frontend-rammeverk som Twitters Bootstrap eller Foundation fra Zurb, eller mindre boilerplates som Skeleton er argumentene både for og imot de samme. Jeg slår her (for enkelhetens skyld) alle under én kam og predikerer for bruken av rammeverk!
Rett på sak - vi begynner med kronargumentet mot å bruke dem:

"Alt blir seende helt likt ut"

Selv om han ellers sier mye smart er jeg her uenig med Brad Frost, når han sier dette om bruken av rammeverk:

"It's like - let's all use jumpsuits"

Brad Frost

Det at designet ser likt ut er mer et resultat av at rammeverket brukes feil, og/eller manglende kunnskap hos den som bruker det, enn at det er rammeverket i seg selv som setter grenser. Både Foundation og Bootstrap kommer i custom-download eller SASS varianter, hvor du kan inkludere akkurat de komponentene du trenger. Du kan for eksempel bare benytte deg av griden. Eller bare bruke typografikomponenten. Du får da mye god kode ferdig skrevet, og med mindre noen dykker inn i kildekoden din vil de aldri kunne se at det er et rammeverk som ligger i bunn.
Selv om rammeverkene gir deg ferdig komponenter betyr det ikke at du må bruke dem? Og i hvert fall ikke at du må bruke dem slik de kommer ut av boksen? Du har alle muligheter til å tilpasse, personalisere eller eventuelt å la være å bruke de ferdige komponentene. Bruk den delen av rammeverket som passer ditt prosjekt, og lag resten selv!

"De er store og tunge"

Hvis du kjører en ukomprimert utviklingsversjon som inneholder alt rammeverket har å tilby - så ja - da er de litt tunge. Ta deg tid til å skreddersy din CSS-fil med kun det du trenger, og komprimer den så går det helt fint.
Og uansett, det er litt storm i et vannglass, eller? Last ned hele Foundation, ren CSS, helt ukomprimmert så har du en css fil på 200kb - 6324 linjer. Det tilsvarer et bilde omtrent. Slapp av, det er ikke de kilobytene der det skal stå og falle på.

"Det er ikke noe kult"

Dette er argumentet fra folk som har for lite å gjøre. Dessuten er det et kontraproduktivt argument. Rammeverkene sparer deg for tid du vanligvis måtte brukt på å skrive ting for hånd, som gjør at du kan bruke mer tid på det som faktisk er kult! Hvor kult får det blitt å skrive et eget grid-system uansett lurer nå jeg på...

En felles standard

Med mindre du sitter alene på gutterommet (eller jenterommet) og lager nettsider alene i mørket er sannsynligheten for at noen andre på et eller annet tidspunkt skal inn og endre på eller legge til noe i koden din ganske overhengende. Da er det en fordel at de ikke må sette seg inn i noe helt nytt. Fordelene med de største rammeverkene er at de i stor grad følger de samme prinsippene som gjør at det er enklere for noen å sette seg inn i koden din. Tenk på nestemann!

Ferdig testet

De største rammeverkene har blitt utviklet, testet og vedlikeholdt i lang tid og blir det fortsatt. Det er brukt mange timer på å teste i forskjellige enheter og nettlesere. Bugs blir fikset av et engasjert core-team og støttet av et aktivt community. Du får mange timer gratis arbeid, timer du må bruke selv dersom du velger å avstå fra rammeverk. Hvordan fungerer CSS-koden din i Opera Mini? Eller i Internet Explorer 9.0? Rammeverk to the rescue!

Bruk rammeverkene på det de er gode til, og skreddersy resten

En vanlig "feil" mange gjør er å overbruke rammeverkene. De følger slavisk dokumentasjonen og nøler ikke med å dytte inn ferdig komponenter som følger med. Da får du nettsider som ser helt like ut og du mister fort særpreget. Rammeverkene er ikke laget for å gi deg ferdige designede løsninger. Det er et rammeverk du kan bygge videre på!
Ikke vær redd for å legge til, endre, tilpasse eller gå helt utenfor rammeverket. Skal du lage noe som ikke lar seg gjøre ut av boksen så lag det selv. Du trenger ikke nødvendigvis å ta utgangspunkt i rammeverket heller. Lag noe helt stand-alone. Mange prøver å bruke litt fra rammeverket alltid, fordi man føler at man må det når det først ligger tilgjengelig. Jeg sier: lag noe sjæl!
Et tips her er også å strukturere HTML og CSS godt fra første stund. Som Bekk skriver i sin Teknologiradar om Bootstrap kan det på sikt gi en CSS-kodebase som er vanskelig å vedlikeholde!

Et lite unntak

Hvis du akkurat har begynt å lære deg CSS kan det være et poeng å ikke bruke rammeverk - av den enkle grunnen at du ikke helt forstår hva som faktisk skjer i bakkant. Det vil være enklere for deg å lære deg CSS ordentlig først, for så å bruke rammeverk senere når du har kontroll på hele prosessen!

--

Å si at alle nettsider blir like fordi de bruker rammeverk er som å si at alle biler er like fordi de har 4 hjul. Bruk de, og bruk de riktig. Du trenger ikke å finne opp hjulet på nytt!

X