# AI可読性のある命名規則

{% hint style="info" %}
このドキュメントはまだ検証中です。[GitHub の Issue](https://github.com/AI-Native-Development/docs/issues/6) で積極的に議論をかわすことを期待しています。
{% endhint %}

## Description

この文書は、AI コーディング支援ツールとコードを書く際に役立つ名前付けルールのパターンについて説明します。 このパターンを利用することで、AIがより読みやすく、理解しやすくいコードを書くことができます。

## Problem

コードを書く際に、変数や関数の名前をどうするか悩むことがあります。また、コメントアウトだけでコンテキストを提供しようとすると、読み手にとって理解しづらいコードになることがあります。この読みにくさは GitHub Copilot の精度にも影響してしまいます。最終的に GitHub Copilot から正確な提案を受けることができなくなってしまいます。

## Context

AI コーディング支援ツールの代表である GitHub Copilot は Codex というエンジンを使用しており、このエンジンは GPT3 ベースのモデルを利用しています。GPT3 ベースのモデルは自然言語を理解することができ、Codex も同様に自然言語を理解することができます。自然言語に似た変数の表現をすることで、より読みやすく理解しやすいコードを書くことができます。

## Solution

コードを書く際に、変数や関数の名前について悩んでいる場合は、チームであらかじめ共通の命名規則を AIコーディング支援ツールが読むことを前提につくることで、AI にもより読みやすく理解しやすいコードを書くことができます。 コメントアウトだけでコンテキストを提供するのではなく、自然言語に似た変数の表現をすることで、AIコーディング支援ツールがより正確な提案を行うことができるようになります。

以下は、名前付けルールのパターンの例です。

* ローワーケースを使用する / キャメルケースを使用する
* 自然言語に似た変数の表現をする
* 短い名前を使用する
* 説明的な名前を使用する

## Resulting Context

この名前付けルールのパターンを利用することで、読みやすく理解しやすいコードを書くことができるとともに、AIがより正確なコードの提案を行うことができるようになります。


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://ai-native-development.gitbook.io/archived/japanese/patterns/ai-friendly-naming-convention.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
