SLAP(単一抽象化レベルの原則) S
1つの関数の中では同じ抽象度のことだけを書くようにし、細かい処理は別の関数に分けようとする考え方。
💡AIワンポイント
SLAPを守ると、AI生成コードの可読性が急に上がります。1関数内で抽象レベルが混在していたら、分割提案を再依頼するだけでレビュー時間を短縮できます。
『プリンシプル オブ プログラミング』関連の用語を分かりやすくまとめました!
用語の要点・関連原則・💡AIワンポイントを、検索でサッと引けます。
7件
1つの関数の中では同じ抽象度のことだけを書くようにし、細かい処理は別の関数に分けようとする考え方。
SLAPを守ると、AI生成コードの可読性が急に上がります。1関数内で抽象レベルが混在していたら、分割提案を再依頼するだけでレビュー時間を短縮できます。
クラスや関数には1つの役割だけを持たせ、変更の理由ができるだけ1種類になるように分けて設計しようという原則。
1リクエスト1責務でAIに渡すと、生成差分が小さく再レビューが安定します。SRPは実装原則というより、AI協業時のタスク分割ルールとして効きます。
必要なオブジェクトを共有窓口から取得する仕組みだが、依存関係が見えにくくなりテストしづらくなりがちなパターン。
Service Locatorは依存がコード上に現れにくく、AIが不足コンテキストのまま修正しがちです。コンストラクタ注入へ寄せるだけで、生成精度とレビュー可能性が一段上がります。
ユーザーがOSに命令するための窓口となるプログラム。コマンドを入力して実行したり、スクリプトで処理を自動化したりできる。
シェル自動化をAIに任せる場合、set -euo pipefail相当の失敗方針を先に指定します。入力検証とログ出力先を固定すると運用時の追跡が容易になります。
関数名・引数・戻り値の型など、その関数がどのように呼ばれるかを表す情報。関数の「名刺」にあたる部分。
シグネチャはAI協業の契約書です。引数名と戻り値の意味を先に固定すれば、内部実装を何度作り直しても呼び出し側の修正を最小にできます。
データの項目名や型、制約など、データの構造を決めた設計図。データベースやJSONの定義などで使われる。
スキーマ変更をAIに任せるときは、互換性ルールと移行手順を同時に渡します。NULL可否や制約名までレビュー対象にすると、本番移行時の事故を減らせます。
通常より重い負荷や長時間の利用をかけて、システムがどこまで耐えられるかや、限界付近でどう振る舞うかを確認するテスト。
ストレステストはAIにシナリオ生成させると効率化できますが、負荷モデルの根拠を添えることが必須です。ピーク時のボトルネックを再現できる条件を先に固定します。
経験:Webアプリ/業務システム
得意:PHP・JavaScript・MySQL・CSS
個人実績:フォーム生成基盤/クイズ学習プラットフォーム 等
詳しいプロフィールはこちら! もちもちみかんのプロフィール