Agent Skills by ALSEL
Anthropic Claudeソフトウェア開発⭐ リポ 299品質スコア 84/100

code-optimize

コードのパフォーマンス、メモリ使用量、処理効率を分析し、最適化します。実行速度の向上、メモリ消費の削減、全体的な効率改善が可能です。コードの問題箇所を特定し、改善提案を提供することで、アプリケーションの品質向上と運用コスト削減に貢献します。

description の原文を見る

Analyze and optimize code for performance, memory, and efficiency

SKILL.md 本文

コード最適化

以下のコードをパフォーマンスと効率のために最適化してください。

最適化対象のコード

$ARGUMENTS

ソロ開発者向け最適化戦略

1. プロファイリングを最優先

  • 実際のボトルネックを特定する
  • 過度に早い最適化を避ける
  • 最適化前後で測定する
  • 高インパクト領域に注力する

2. パフォーマンス最適化の領域

React/Next.js

  • メモ化(React.memo、useMemo、useCallback)
  • コード分割と遅延ロード
  • 画像最適化(next/image)
  • フォント最適化(next/font)
  • 不要な再レンダリングの削除
  • 長いリストの仮想スクロール

データベースクエリ

  • 頻繁にクエリされるフィールドにインデックスを追加
  • クエリのバッチ処理(N+1問題の削減)
  • selectを使用してフィールドを制限
  • ページネーションの実装
  • 頻繁なクエリのキャッシング
  • 複雑なジョインにはデータベースビューを使用

API呼び出し

  • キャッシング(SWR、React Query)の実装
  • リクエストのデバウンス/スロットリング
  • 可能な限り並列リクエスト
  • リクエストの重複排除
  • 楽観的更新

バンドルサイズ

  • 未使用コードのツリーシェーキング
  • 大型ライブラリの動的インポート
  • 重い依存関係の置き換え
  • ルート別のコード分割
  • ビューポート外のコンテンツの遅延ロード

メモリ

  • メモリリークの修正(useEffectのクリーンアップ)
  • 不要なオブジェクト生成の回避
  • 変更しない値にはconstを使用
  • インターバル/タイムアウトのクリア
  • イベントリスナーの削除

3. 最適化チェックリスト

JavaScript/TypeScript

  • varの代わりにconst/letを使用
  • 可能な限りネストされたループを避ける
  • ルックアップにはMap/Setを使用
  • DOM操作を最小化
  • 負荷の高い操作をデバウンス/スロットリング

React

  • 頻繁にレンダリングされるコンポーネントをメモ化
  • 静的な値をコンポーネント外に移動
  • リスト内のキーを正しく使用
  • レンダリング内のインライン関数を避ける
  • ルートとコンポーネントの遅延ロード

Next.js

  • 可能な限りサーバーコンポーネントを使用
  • 動的コンテンツ向けにISRを実装
  • next/imageで画像を最適化
  • 重要なルートのプリフェッチ
  • ストリーミング用にSuspenseを使用

データベース

  • 外部キーにインデックスを追加
  • プリペアドステートメントを使用
  • 挿入/更新のバッチ処理
  • コネクションプーリングの実装
  • コストの高いクエリをキャッシング

ネットワーク

  • レスポンスを圧縮(gzip/brotli)
  • 静的アセットにCDNを使用
  • HTTP/2の実装
  • 適切なキャッシュヘッダーを設定
  • ペイロードサイズを最小化

4. 測定ツール

フロントエンド

  • Chrome DevTools パフォーマンスタブ
  • Lighthouse CI
  • React DevTools Profiler
  • Bundle Analyzer(next/bundle-analyzer)

バックエンド

  • Node.js プロファイラー
  • データベースクエリアナライザー
  • APMツール(DataDog、New Relic)
  • ロードテスト(k6、Artillery)

5. 一般的な最適化

非効率な配列メソッドの置き換え

// 最適化前: 複数回の反復
const result = arr
  .filter(x => x > 0)
  .map(x => x * 2)
  .reduce((sum, x) => sum + x, 0)

// 最適化後: 1回の反復
const result = arr.reduce((sum, x) => {
  return x > 0 ? sum + (x * 2) : sum
}, 0)

コストの高い計算をメモ化

const expensiveValue = useMemo(() => {
  return complexCalculation(props.data)
}, [props.data])

長いリストの仮想スクロール

import { useVirtual } from 'react-virtual'
// 表示可能なアイテムのみをレンダリング

出力フォーマット

  1. 分析 - パフォーマンスボトルネックを特定
  2. 最適化されたコード - 改善されたバージョン
  3. 説明 - 変更内容と理由
  4. ベンチマーク - 期待されるパフォーマンス向上
  5. トレードオフ - 追加された複雑さ
  6. 次のステップ - さらなる最適化の機会

実ユーザーに実質的な価値をもたらす実践的で測定可能な最適化に注力してください。マイクロ最適化のために可読性を犠牲にしないでください。

ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ

詳細情報

作者
majiayu000
リポジトリ
majiayu000/claude-skill-registry
ライセンス
MIT
最終更新
2026/5/4

Source: https://github.com/majiayu000/claude-skill-registry / ライセンス: MIT

関連スキル

汎用ソフトウェア開発⭐ リポ 39,967

doubt-driven-development

重要な判断はすべて、本番環境への展開前に新しい視点から対抗的レビューを実施します。速度より正確性が重要な場合、不慣れなコードを扱う場合、本番環境・セキュリティに関わるロジック・取り消し不可の操作など影響度が高い場合、または後でバグを修正するよりも今検証する方が効率的な場合に活用してください。

by addyosmani
汎用ソフトウェア開発⭐ リポ 1,175

apprun-skills

TypeScriptを使用したAppRunアプリケーションのMVU設計に関する総合的なガイダンスが得られます。コンポーネントパターン、イベントハンドリング、状態管理(非同期ジェネレータを含む)、パラメータと保護機能を備えたルーティング・ナビゲーション、vistestを使用したテストに対応しています。AppRunコンポーネントの設計・レビュー、ルートの配線、状態フローの管理、AppRunテストの作成時に活用してください。

by yysun
OpenAIソフトウェア開発⭐ リポ 797

desloppify

コードベースのヘルスチェックと技術負債の追跡ツールです。コード品質、技術負債、デッドコード、大規模ファイル、ゴッドクラス、重複関数、コードスメル、命名規則の問題、インポートサイクル、結合度の問題についてユーザーが質問した場合に使用してください。また、ヘルススコアの確認、次の改善項目の提案、クリーンアップ計画の作成をリクエストされた際にも対応します。29言語に対応しています。

by Git-on-my-level
汎用ソフトウェア開発⭐ リポ 39,967

debugging-and-error-recovery

テストが失敗したり、ビルドが壊れたり、動作が期待と異なったり、予期しないエラーが発生したりした場合に、体系的な根本原因デバッグをガイドします。推測ではなく、根本原因を見つけて修正するための体系的なアプローチが必要な場合に使用してください。

by addyosmani
汎用ソフトウェア開発⭐ リポ 39,967

test-driven-development

テスト駆動開発により実装を進めます。ロジックの実装、バグの修正、動作の変更など、あらゆる場面で活用できます。コードが正常に動作することを証明する必要がある場合、バグ報告を受けた場合、既存機能を修正する予定がある場合に使用してください。

by addyosmani
汎用ソフトウェア開発⭐ リポ 39,967

incremental-implementation

変更を段階的に実施します。複数のファイルに影響する機能や変更を実装する場合に使用してください。大量のコードを一度に書こうとしている場合や、タスクが一度では完結できないほど大きい場合に活用します。

by addyosmani
本サイトは GitHub 上で公開されているオープンソースの SKILL.md ファイルをクロール・インデックス化したものです。 各スキルの著作権は原作者に帰属します。掲載に問題がある場合は info@alsel.co.jp または /takedown フォームよりご連絡ください。
原作者: majiayu000 · majiayu000/claude-skill-registry · ライセンス: MIT