Sobes.tech
Middle

Projenizde kod stili uyumunu nasıl takip ediyorsunuz?

sobes.tech yapay zeka

AI'dan gelen yanıt

Bir tutarlı kod stilini korumak için aşağıdaki araçları ve süreçleri kullanıyorum:

  1. ESLint: Kod biçimi ve kalitesi kuralları yapılandırıyorum (örneğin, Airbnb veya Standard). ESLint, sözdizimi hatalarını, girinti sorunlarını, kullanılmayan değişkenleri vb. tespit etmeye yardımcı olur.

    // Örnek .eslintrc.js
    module.exports = {
      extends: 'airbnb-base', // veya başka bir stil
      rules: {
        // Kural üzerine yazma veya ekleme
        'semi': ['error', 'always'],
        'quotes': ['error', 'single']
      }
    };
    
  2. Prettier: Otomatik kod biçimlendirme için Prettier'ı entegre ediyorum. Boşluklar, satır sonları, noktalı virgüller ve diğer biçimlendirme detaylarıyla ilgilenir, ESLint ile (pluginler aracılığıyla) çalışır.

    // Örnek .prettierrc.json
    {
      "semi": true,
      "singleQuote": true,
      "printWidth": 100
    }
    
  3. Husky ve lint-staged: Husky ile pre-commit hook'ları yapılandırıyorum. lint-staged ile sadece değiştirilen (staged) dosyalarda ESLint ve Prettier'ı çalıştırıyorum. Bu, yalnızca biçimlendirilmiş ve kontrol edilmiş kodun depoya eklenmesini sağlar.

    // Örnek package.json (kısım)
    {
      "husky": {
        "hooks": {
          "pre-commit": "lint-staged"
        }
      },
      "lint-staged": {
        "*.{js,jsx,ts,tsx}": [
          "eslint --fix",
          "prettier --write"
        ],
        "*.{css,scss,less}": [
          "stylelint --fix", // Stylelint kullanıyorsam
          "prettier --write"
        ],
        "*.{html,vue,svelte}": [
          "prettier --write"
        ]
      }
    }
    
  4. Kod incelemeleri: Kod inceleme sürecinde, otomatik araçların gözden kaçırdığı veya kurallarla kapsanmayan nüanslara dikkat ederek belirlenen kod stiline uyumu denetliyorum.

  5. Dokümantasyon: Projede kabul edilen kod stiline ilişkin temel bir dokümantasyon tutuyorum (örneğin, README veya CONTRIBUTING.md'de), böylece yeni ekip üyeleri kuralları hızlıca öğrenebilir.

  6. IDE Entegrasyonu: Editörleri (VS Code, WebStorm vb.) yapılandırıyorum, kaydettiğinde otomatik biçimlendirme yapması ve ESLint hatalarını doğrudan editörde gösterilmesi için.