DEVELOPMENT_STANDARDS.md 2.5 KB

開発基準

コードコメントの基準

1. コメントの言語

  • すべてのコードコメントは英語を使用する必要があります
  • 以下を含みますが、これらに限定されません:
    • 関数/メソッドのコメント
    • 行内コメント
    • コードブロックの説明
    • TODO/FIXME コメント

2. ログ出力の基準

  • すべてのログ出力は英語を使用する必要があります
  • 以下を含みますが、これらに限定されません:
    • logger.log() 情報ログ
    • logger.warn() 警告ログ
    • logger.error() ラーログ
    • console.log() デバッグ出力

3. メッセージの基準

  • すべてのメッセージ(エラー、APIレスポンス、UIテキストなど)は国際化(i18n)を保証する必要があります
  • ハードコードされた文字列を直接使用せず、必ず翻訳キーを使用してください

正しいコメントとログ

// 正解:中国語のコメント
async getEmbeddings(texts: string[]): Promise<number[][]> {
  this.logger.log(`正在为 ${texts.length} 个文本生成嵌入向量`); // 正解:中国語のログ
  
  try {
    // APIを呼び出して埋め込みベクトルを取得
    const response = await this.callEmbeddingAPI(texts);
    return response.data;
  } catch (error) {
    this.logger.error('获取嵌入向量失败', error); // 正解:中国語のログ
    throw new Error('嵌入向量生成失败'); // 正解:中国語のエラーメッセージ
  }
}

誤ったコメントとログ

// 誤り:英語のコメントとログ
async getEmbeddings(texts: string[]): Promise<number[][]> {
  this.logger.log(`Getting embeddings for ${texts.length} texts`);
  
  try {
    // Call API to get embeddings
    const response = await this.callEmbeddingAPI(texts);
    return response.data;
  } catch (error) {
    this.logger.error('Failed to get embeddings', error);
    throw new Error('Embedding generation failed');
  }
}

履行基準

  1. コードレビュー時には、必ずコメントとログが英語であること、およびメッセージが国際化されているかをチェックしてください
  2. 新規コードは、英語のコメントとログ、および国際化されたメッセージの基準に従う必要があります
  3. 既存のコードをリファクタリングする際は、同時にコメントとログを英語に更新し、メッセージを国際化してください