返回 Skill 列表
extension
分类: 开发与工程无需 API Key

the-art-of-naming

TypeScript和Angular应用程序的全面命名约定指南。涵盖了大小写规则(camelCase、PascalCase、UPPER_CASE)、前缀约定(接口用I、私有成员用_、泛型用T)、布尔值命名、S-I-D原则(短小、直观、描述性)、上下文重复以及结构化命名模式(变量用P/HC/LC、函数用A/HC/LC)。在编写、审查或重构TypeScript代码时使用。适用于涉及命名、变量、函数、接口或代码风格的任务。

person作者: jakexiaohubgithub

The Art of Naming

Naming things is hard. This guide provides a structured methodology for naming variables, functions, classes, interfaces, and everything in between — producing code that is self-documenting, consistent, and readable.

When to Apply

Reference these guidelines when:

  • Naming new variables, functions, classes, interfaces, or types
  • Reviewing code for naming consistency
  • Refactoring code to improve readability
  • Setting up linting rules for a new project
  • Onboarding new team members to the codebase conventions

Core Principles

  • S-I-D — Every name must be Short, Intuitive, and Descriptive
  • No ContractionsonItemClick, never onItmClk
  • Correct Casing — camelCase for members, PascalCase for types, UPPER_CASE for constants
  • Meaningful PrefixesI for interfaces, _ for private, is/has/should for booleans
  • No Context DuplicationMenuItem.handleClick(), not MenuItem.handleMenuItemClick()
  • Structured Patterns — P/HC/LC for variables, A/HC/LC for functions
  • Correct Action Verbsget (sync), fetch (async), remove (collection), delete (permanent)

Rule Categories by Priority

| Priority | Rule | Impact | File | |----------|------|--------|------| | 1 | Casing Convention | CRITICAL | naming-casing-convention | | 2 | S-I-D + No Contractions | CRITICAL | naming-sid | | 3 | Prefix Conventions | HIGH | naming-prefix-convention | | 4 | Boolean Naming | HIGH | naming-boolean | | 5 | Context Duplication | HIGH | naming-context-duplication | | 6 | Function Naming (A/HC/LC) | HIGH | naming-function-pattern | | 7 | Variable Naming (P/HC/LC) | MEDIUM | naming-variable-pattern |

Quick Reference

1. Casing Convention (CRITICAL)

  • naming-casing-convention - camelCase for variables/functions, PascalCase for classes/enums/types, UPPER_CASE for exported constants

2. S-I-D + No Contractions (CRITICAL)

  • naming-sid - Names must be Short, Intuitive, Descriptive — never use contractions

3. Prefix Conventions (HIGH)

  • naming-prefix-convention - I for interfaces, _ for private members, T/R/U/V/K for generics

4. Boolean Naming (HIGH)

  • naming-boolean - Prefix booleans with is/has/should/can, keep names positive

5. Context Duplication (HIGH)

  • naming-context-duplication - Don't repeat class/component name in member names

6. Function Naming (HIGH)

  • naming-function-pattern - A/HC/LC pattern + correct action verbs (get/set/fetch/remove/delete/compose/handle)

7. Variable Naming (MEDIUM)

  • naming-variable-pattern - P/HC/LC pattern for structured, predictable variable names

How to Use

Read individual rule files for detailed explanations and code examples:

rules/naming-casing-convention.md
rules/naming-sid.md
rules/naming-prefix-convention.md
rules/naming-boolean.md
rules/naming-context-duplication.md
rules/naming-function-pattern.md
rules/naming-variable-pattern.md

Each rule file contains:

  • Brief explanation of why it matters
  • Incorrect code examples with explanation
  • Correct code examples with explanation
  • Summary tables and references

Full Compiled Document

For the complete guide with all rules expanded: AGENTS.md