Sobes.tech
Middle

Wie überwacht man die Einhaltung des Codestils in deinem Projekt?

sobes.tech KI

Antwort von AI

Um einen einheitlichen Codestil aufrechtzuerhalten, verwende ich die folgenden Werkzeuge und Prozesse:

  1. ESLint: Ich konfiguriere Regeln für Formatierung und Codequalität (z.B. Airbnb oder Standard). ESLint hilft, Syntaxfehler, Einrückungsprobleme, ungenutzte Variablen usw. zu erkennen.

    // Beispiel .eslintrc.js
    module.exports = {
      extends: 'airbnb-base', // Oder ein anderer gewählter Stil
      rules: {
        // Regeln überschreiben oder hinzufügen
        'semi': ['error', 'always'],
        'quotes': ['error', 'single']
      }
    };
    
  2. Prettier: Ich integriere Prettier für automatisches Formatieren des Codes. Es kümmert sich um Leerzeichen, Zeilenumbrüche, Semikolons und andere Formatierungsdetails, in Zusammenarbeit mit ESLint (über Plugins).

    // Beispiel .prettierrc.json
    {
      "semi": true,
      "singleQuote": true,
      "printWidth": 100
    }
    
  3. Husky und lint-staged: Ich richte pre-commit Hooks mit Husky ein. Mit lint-staged führe ich ESLint und Prettier nur bei den geänderten (gestaged) Dateien aus. Das stellt sicher, dass nur formatierter und geprüfter Code ins Repository kommt.

    // Beispiel package.json (Teil)
    {
      "husky": {
        "hooks": {
          "pre-commit": "lint-staged"
        }
      },
      "lint-staged": {
        "*.{js,jsx,ts,tsx}": [
          "eslint --fix",
          "prettier --write"
        ],
        "*.{css,scss,less}": [
          "stylelint --fix", // Falls Stylelint verwendet wird
          "prettier --write"
        ],
        "*.{html,vue,svelte}": [
          "prettier --write"
        ]
      }
    }
    
  4. Code-Reviews: Im Code-Review-Prozess achte ich auf die Einhaltung der festgelegten Style-Richtlinien, auch wenn automatische Tools etwas übersehen haben oder es Nuancen gibt, die nicht durch Regeln abgedeckt sind.

  5. Dokumentation: Ich pflege eine minimale Dokumentation zum akzeptierten Codestil im Projekt (z.B. in README oder CONTRIBUTING.md), damit neue Teammitglieder die Regeln schnell kennenlernen können.

  6. Integration in IDE: Ich konfiguriere Editoren (VS Code, WebStorm usw.), um beim Speichern automatisch zu formatieren und ESLint-Fehler direkt im Editor anzuzeigen.