Sobes.tech
Middle

Ako sledujete dodržiavanie štýlu kódu vo vašom projekte?

sobes.tech AI

Odpoveď od AI

Na udržiavanie jednotného štýlu kódu používam nasledujúce nástroje a procesy:

  1. ESLint: Konfigurujem pravidlá formátovania a kvality kódu (napríklad Airbnb alebo Standard). ESLint pomáha odhaľovať syntaktické chyby, problémy s odsadením, nepoužívané premenné a podobne.

    // Príklad .eslintrc.js
    module.exports = {
      extends: 'airbnb-base', // Ale iný vybraný štýl
      rules: {
        // Prepisovanie alebo pridávanie pravidiel
        'semi': ['error', 'always'],
        'quotes': ['error', 'single']
      }
    };
    
  2. Prettier: Integrujem Prettier na automatické formátovanie kódu. Postará sa o medzery, zalomenia riadkov, bodkočiarky a ďalšie detaily formátovania, pracujúc v spojení s ESLint (cez pluginy).

    // Príklad .prettierrc.json
    {
      "semi": true,
      "singleQuote": true,
      "printWidth": 100
    }
    
  3. Husky a lint-staged: Konfigurujem pre-commit hooky pomocou Husky. S lint-staged spúšťam ESLint a Prettier iba pre súbory, ktoré boli zmenené (staged). To zabezpečuje, že do repozitára sa dostáva iba naformátovaný a skontrolovaný kód.

    // Príklad package.json (časť)
    {
      "husky": {
        "hooks": {
          "pre-commit": "lint-staged"
        }
      },
      "lint-staged": {
        "*.{js,jsx,ts,tsx}": [
          "eslint --fix",
          "prettier --write"
        ],
        "*.{css,scss,less}": [
          "stylelint --fix", // Ak používam Stylelint
          "prettier --write"
        ],
        "*.{html,vue,svelte}": [
          "prettier --write"
        ]
      }
    }
    
  4. Code reviews: Pri code review venujem pozornosť dodržiavaniu stanovených pravidiel štýlu kódu, aj keď automatické nástroje niečo prehliadnu alebo sú tu nuansy, ktoré pravidlá nezachytávajú.

  5. Dokumentácia: Udržiavam minimálnu dokumentáciu o prijatom štýle kódu v projekte (napríklad v README alebo CONTRIBUTING.md), aby sa noví členovia tímu mohli rýchlo oboznámiť s pravidlami.

  6. Integrácia do IDE: Konfigurujem editory (VS Code, WebStorm a pod.) na automatické formátovanie pri ukladaní a zobrazovanie chýb ESLint priamo v editore.