Sobes.tech
Middle

Kā uzraugi koda stila ievērošanu savā projektā?

sobes.tech AI

Atbilde no AI

Lai saglabātu vienotu koda stilu, es izmantoju šādus rīkus un procesus:

  1. ESLint: Konfigurēju koda formatēšanas un kvalitātes noteikumus (piemēram, Airbnb vai Standard). ESLint palīdz identificēt sintakses kļūdas, atstarpes, neizmantotas mainīgās un tamlīdzīgi.

    // Piemērs .eslintrc.js
    module.exports = {
      extends: 'airbnb-base', // Vai cita izvēlēta stila
      rules: {
        // Pārdefinēt vai pievienot noteikumus
        'semi': ['error', 'always'],
        'quotes': ['error', 'single']
      }
    };
    
  2. Prettier: Integrēju Prettier automātiskai koda formatēšanai. Tas rūpējas par atstarpēm, rindu pārtraukumiem, punktiem un komatiem un citām formatēšanas detaļām, strādājot kopā ar ESLint (caur spraudņiem).

    // Piemērs .prettierrc.json
    {
      "semi": true,
      "singleQuote": true,
      "printWidth": 100
    }
    
  3. Husky un lint-staged: Konfigurēju pre-commit hokus ar Husky. Izmantoju lint-staged, lai izpildītu ESLint un Prettier tikai mainītajām failiem. Tas nodrošina, ka repozitorijā nonāk tikai formatēts un pārbaudīts kods.

    // package.json piemērs (daļa)
    {
      "husky": {
        "hooks": {
          "pre-commit": "lint-staged"
        }
      },
      "lint-staged": {
        "*.{js,jsx,ts,tsx}": [
          "eslint --fix",
          "prettier --write"
        ],
        "*.{css,scss,less}": [
          "stylelint --fix", // Ja izmantoju Stylelint
          "prettier --write"
        ],
        "*.{html,vue,svelte}": [
          "prettier --write"
        ]
      }
    }
    
  4. Koda pārskatīšana: Koda pārskatīšanas procesā pievēršu uzmanību ievērotajiem noteikumiem par koda stilu, pat ja automātiskie rīki kaut ko palaidīs garām vai ir nianses, kuras noteikumi neaptver.

  5. Dokumentācija: Paturu minimālu dokumentāciju par pieņemto koda stilu projektā (piemēram, README vai CONTRIBUTING.md), lai jauni komandas locekļi varētu ātri iepazīties ar noteikumiem.

  6. Integrācija IDE: Konfigurēju redaktorus (VS Code, WebStorm u.c.) automātiskai formatēšanai pie saglabāšanas un ESLint kļūdu tiešrai redaktorā.