window.pipedriveLeadboosterConfig = { base: 'leadbooster-chat.pipedrive.com', companyId: 11580370, playbookUuid: '22236db1-6d50-40c4-b48f-8b11262155be', version: 2, } ;(funktion () { var w = vindue if (w.LeadBooster) { console.warn('LeadBooster findes allerede') } else { w.LeadBooster = { q: [], on: function (n, h) { this.q.push({ t: 'o', n: n, h: h }) }, trigger: function (n) { this.q.push({ t: 't', n: n }) }, } } })() Hvordan bekymrer vi os om kvaliteten af CSS-koden? - The Codest
Codest
  • Om os
  • Serviceydelser
    • Udvikling af software
      • Frontend-udvikling
      • Backend-udvikling
    • Staff Augmentation
      • Frontend-udviklere
      • Backend-udviklere
      • Dataingeniører
      • Cloud-ingeniører
      • QA-ingeniører
      • Andet
    • Det rådgivende
      • Revision og rådgivning
  • Industrier
    • Fintech og bankvirksomhed
    • E-commerce
    • Adtech
    • Sundhedsteknologi
    • Produktion
    • Logistik
    • Biler
    • IOT
  • Værdi for
    • ADMINISTRERENDE DIREKTØR
    • CTO
    • Leder af levering
  • Vores team
  • Casestudier
  • Ved hvordan
    • Blog
    • Møder
    • Webinarer
    • Ressourcer
Karriere Tag kontakt til os
  • Om os
  • Serviceydelser
    • Udvikling af software
      • Frontend-udvikling
      • Backend-udvikling
    • Staff Augmentation
      • Frontend-udviklere
      • Backend-udviklere
      • Dataingeniører
      • Cloud-ingeniører
      • QA-ingeniører
      • Andet
    • Det rådgivende
      • Revision og rådgivning
  • Værdi for
    • ADMINISTRERENDE DIREKTØR
    • CTO
    • Leder af levering
  • Vores team
  • Casestudier
  • Ved hvordan
    • Blog
    • Møder
    • Webinarer
    • Ressourcer
Karriere Tag kontakt til os
Pil tilbage GÅ TILBAGE
2019-01-11
Udvikling af software

Hvordan bekymrer vi os om kvaliteten af CSS-koden?

Codest

Lukasz Usarz

Senior Software Engineer

CSS ser ud til at blive behandlet som et hjælpemiddel, men udgør alligevel en væsentlig del af alle internetapplikationer. Hvilke værktøjer og god praksis bruger vi i Codest til at levere den bedste CSS-kode?

Vi kan finde mange publikationer om kvaliteten af en Kode skrevet i programmeringssprog som f.eks. JavaScript, Java, Ruby og andre. Der er allerede blevet sagt en hel del om designmønstre, automatiseret testning og softwarearkitektur. I alle disse publikationer synes CSS at blive behandlet som et understøttende medie, men udgør alligevel en væsentlig del af alle internetapplikationer.

I denne artikel vil vi beskrive, hvilke værktøjer og god praksis vi bruger i Codest, så de projekter, vi leverer til vores kunder, altid er af højeste kvalitet.

SCSS-PRÆPROCESSOR

Det er tilstrækkeligt at skrive CSS-kode til små applikationer. Når man har at gøre med en større projektDet er vigtigt, at koden til lignende HTML-objekter ikke skal gentages mange gange forskellige steder. SCSS-præprocessoren hjælper os med at bruge variabler, funktioner og såkaldte mixins, som gør vores kode mere struktureret og ren.

Følgende liste indeholder et eksempel på et mixin, der giver dig mulighed for at opfylde princippet "Do not Repeat Yourself":

@mixin flex-center {
  display: flex;
  align-items: center;
  justify-content: center;
}

Ved at bruge dette mixin kan vi skrive kode:

.item-a {
  display: flex;
  align-items: center;
  justify-content: center;
  ...
}

.item-b {
  display: flex;
  align-items: center;
  justify-content: center;
  ...
}

På en mere kortfattet og ren måde:

.item-a {
  @include flex-center;
}

.item-b {
  @include flex-center;
}

BEM METODOLOGI

BEM-metoden er en enkel navngivningskonvention, der giver dig mulighed for at skabe en modulær, genanvendelig og skalerbar CSS-kode. Som en del af Codest bruger vi den til at stilisere VueJS-komponenter. Vi forsøger at organisere vores kode på en sådan måde, at en enkelt .scss-fil, der indeholder en blok, tildeles en enkelt .vue-komponent. Styling af v-page-header.vue-komponenten kan bruges som eksempel.

.page-header {
  &__title {
    skriftstørrelse: 2.0rem;
    farve: $color-sort;
    baggrund: $color-white;
  }

  &__logo {
    background: url('/images/background.png') no-repeat 0 0;

    &--vertikal {
      background: url('/images/background-2.png') no-repeat 0 0;
    }
  }
}

BRUGSKLASSER

Mens vi arbejdede med BEM-metoden, bemærkede vi, at vi var nødt til at opfinde kunstige CSS-klassenavne for at udføre en meget enkel handling - for eksempel at gøre en del af teksten fed:

.page-header {
  &__bolder-item {
    font-vægt: fed;
  }
}

For at eliminere dette problem blev vi inspireret af de "utilities"-klasser, der bruges i kildekoden til Bootstrap-frameworket. Takket være dette kan vi i koden til Vue/HTML-skabeloner bruge følgende type:

<div>
  <span class="text-bold">Indhold</span>
</div>

STATISK ANALYSE AF KODEN

Du behøver ikke at overbevise nogen om, at når du arbejder med en kode, der er gennemsigtig og indeholder ensartede strukturer, kan du nemt ændre og tilføje nye funktioner. Det er vigtigt, at enhver, der begynder at arbejde på et eksisterende fragment af en kode, kan finde det ret hurtigt. Men ofte har programmører deres egne vaner, som måske ikke forstås af andre. hold medlemmer. Derfor er det så vigtigt at bruge værktøjer, der giver dig mulighed for at automatisere kodekontrol. Som en del af Codest bruger vi værktøjet SCSS-LINT til automatisk at analysere en SCSS-kode, som indeholder et sæt foruddefinerede regler. En af de mest interessante og mest restriktive regler, som vi bruger i vores projekter, kan være PropertySortOrder-reglen, som sikrer den rette rækkefølge af attributter inden for en enkelt SCSS-klasse.

Forestil dig følgende to dele af SCSS-koden:

.item-a {
    skriftstørrelse: 14px;
    farve: #FF00FF;
    margin-top: 10px;
    font-vægt: fed;
    baggrundsfarve: #00FFFF;
    padding: 5px;
    margin-bottom: 10px;
}

.item-b {
    skriftstørrelse: 18px;
    polstring: 3px;
    baggrundsfarve: #00FFFF;
    margin-bottom: 4px;
}

og:

.item-a {
  margin: 10px 0;
  polstring: 5px;
  baggrundsfarve: #00FFFF;
  farve: #FF00FF;
    skriftstørrelse: 14px;
    font-vægt: fed;
}

.item-b {
  margin-bottom: 4px;
  polstring: 3px;
  baggrundsfarve: #00FFFF;
    skriftstørrelse: 18px;
}

Begge passager er korrekte, men den anden er mere læsevenlig. Relaterede attributter som margener og udfyldninger er grupperet sammen.

Sammenfatning

Det er svært i nogle få sætninger at give alle oplysninger om organiseringen af CSS-koden i de omfattende webapplikationer, vi skaber med Codest-frameworket. Vi opfordrer alle vores læsere til at skrive kommentarer om, hvilke værktøjer og god praksis du bruger i dine egne projekter.

Relaterede artikler

Udvikling af software

Byg fremtidssikrede webapps: Indsigt fra The Codest's ekspertteam

Oplev, hvordan The Codest udmærker sig ved at skabe skalerbare, interaktive webapplikationer med banebrydende teknologier, der leverer sømløse brugeroplevelser på tværs af alle platforme. Lær, hvordan vores ekspertise driver digital transformation og...

DENKODEST
Udvikling af software

Top 10 Letlands-baserede softwareudviklingsvirksomheder

Læs om Letlands bedste softwareudviklingsvirksomheder og deres innovative løsninger i vores seneste artikel. Find ud af, hvordan disse teknologiledere kan hjælpe med at løfte din virksomhed.

thecodest
Løsninger til virksomheder og scaleups

Grundlæggende om Java-softwareudvikling: En guide til succesfuld outsourcing

Udforsk denne vigtige guide til vellykket outsourcing af Java-softwareudvikling for at forbedre effektiviteten, få adgang til ekspertise og skabe projektsucces med The Codest.

thecodest
Udvikling af software

Den ultimative guide til outsourcing i Polen

Den voldsomme stigning i outsourcing i Polen er drevet af økonomiske, uddannelsesmæssige og teknologiske fremskridt, der fremmer it-vækst og et erhvervsvenligt klima.

TheCodest
Løsninger til virksomheder og scaleups

Den komplette guide til IT-revisionsværktøjer og -teknikker

IT-revisioner sikrer sikre, effektive og kompatible systemer. Lær mere om deres betydning ved at læse hele artiklen.

Codest
Jakub Jakubowicz CTO og medstifter

Tilmeld dig vores vidensbase, og hold dig opdateret om ekspertisen fra it-sektoren.

    Om os

    The Codest - International softwareudviklingsvirksomhed med tech-hubs i Polen.

    Storbritannien - Hovedkvarter

    • Kontor 303B, 182-184 High Street North E6 2JA
      London, England

    Polen - Lokale teknologiske knudepunkter

    • Fabryczna Office Park, Aleja
      Pokoju 18, 31-564 Kraków
    • Hjerneambassaden, Konstruktorska
      11, 02-673 Warszawa, Polen

      Codest

    • Hjem
    • Om os
    • Serviceydelser
    • Casestudier
    • Ved hvordan
    • Karriere
    • Ordbog

      Serviceydelser

    • Det rådgivende
    • Udvikling af software
    • Backend-udvikling
    • Frontend-udvikling
    • Staff Augmentation
    • Backend-udviklere
    • Cloud-ingeniører
    • Dataingeniører
    • Andet
    • QA-ingeniører

      Ressourcer

    • Fakta og myter om at samarbejde med en ekstern softwareudviklingspartner
    • Fra USA til Europa: Hvorfor beslutter amerikanske startups sig for at flytte til Europa?
    • Sammenligning af Tech Offshore-udviklingsknudepunkter: Tech Offshore Europa (Polen), ASEAN (Filippinerne), Eurasien (Tyrkiet)
    • Hvad er de største udfordringer for CTO'er og CIO'er?
    • Codest
    • Codest
    • Codest
    • Privacy policy
    • Vilkår for brug af hjemmesiden

    Copyright © 2025 af The Codest. Alle rettigheder forbeholdes.

    da_DKDanish
    en_USEnglish de_DEGerman sv_SESwedish nb_NONorwegian fiFinnish fr_FRFrench pl_PLPolish arArabic it_ITItalian jaJapanese ko_KRKorean es_ESSpanish nl_NLDutch etEstonian elGreek da_DKDanish