未使用のコード (Dead Code)
ID: dead_code | 重要度: 低 (デフォルト)
未使用のコード(デッドコード)とは、プロジェクト内のどこからもインポートや使用がされていない、エクスポートされた関数、クラス、または変数のことを指します。
なぜこれが「不吉な臭い」なのか
- メンテナンスの負担: 実際には使用されていないコードの更新やリファクタリングに、開発者が時間を費やす可能性があります。
- バンドルサイズ: 最終的なアプリケーションサイズを増加させます(多くのバンドラーはツリーシェイキングを行いますが)。
- 混乱: モジュールの API が実際よりも大きく、複雑に見えるようになります。
例 (Examples)
Bad
typescript
// utils.ts
export const usedHelper = () => { ... };
export const unusedHelper = () => { ... }; // Reported as dead code
// main.ts
import { usedHelper } from './utils';修正方法
- 削除する: 本当に使われていないのであれば、削除するのが最善です。
- エントリポイントとしてマークする: パブリック API の一部であったり、動的インポートであったりする場合は、設定の
entry_pointsに追加してください。
設定 (Configuration)
yaml
entry_points:
- 'src/index.ts'
- 'src/api/**/*.ts'ESLint ルール
このディテクターは、エディター内でリアルタイムのフィードバックを提供する ESLint ルールとして利用可能です。
javascript
// eslint.config.js
export default [
{
rules: {
'@archlinter/no-dead-code': 'warn',
},
},
];セットアップ手順については ESLint Integration を参照してください。