# 명명 규칙및 주석처리

## 변수와 상수의 명명 규칙

### 카멜 케이스 (Camel Case)

```javascript
var myVariableName = 42;
const myConstantValue = "Hello, World";
```

* 변수명은 카멜 케이스를 사용하여 작성합니다.
* 카멜 케이스란 중간 글자들은 대문자로 시작하되, 첫 글자는 소문자로 시작하는 명명 규칙으로 낙타와 모양이 비슷하다 하여 카멜 케이스라고 합니다.&#x20;

### 파스칼 케이스 (Pascal Case)

```javascript
class MyClass {
  constructor() {
    // 생성자 내용
  }
}
```

* 클래스명과 생성자 함수명을 작성할 때 파스칼 케이스를 사용합니다.
* 파스칼 케이스란 모든 단어의 첫 글자를 대문자로 시작하는 명명 규칙으로 파스칼 언어의 표기법과 유사하다고 하여 파스칼 케이스라고 합니다.&#x20;

### 스네이크 케이스 (Snake Case)

```javascript
const global_constant = 3.14;
let snake_case_variable = "snake_case";
```

* 전역 상수와 상수 변수명을 작성할 때 스네이크 케이스를 사용합니다.
* 스네이크 케이스란 모든 단어를 소문자로 작성하고, 각 단어를 밑줄(`_`)로 구분하는 명명 규칙으로 뱀처럼 생겼다고 하여 스네이크 케이스라고 합니다.

## 주석

주석은 코드의 가독성을 향상시키고 코드를 이해하기 쉽게 만드는 중요한 도구입니다. 주석을 작성할 때 아래의 주요 확장자들을 사용할 수 있습니다:

### 한 줄 주석

```javascript
// 이것은 한 줄 주석의 예시입니다.
```

* 코드의 특정 부분을 설명하는 간단한 주석에 사용됩니다.
* 주로 `//`를 사용하여 한 줄 주석을 작성합니다.

### 다중 줄 주석

```javascript
/*
  이것은
  다중 줄 주석의 예시입니다.
*/
```

* 여러 줄에 걸쳐 설명이 필요한 경우 사용됩니다.
* `/*`와 `*/`를 사용하여 다중 줄 주석을 작성합니다.

### 문서화 주석&#x20;

```javascript
/**
 * 이 함수는 두 숫자를 더합니다.
 * @param {number} a - 첫 번째 숫자
 * @param {number} b - 두 번째 숫자
 * @returns {number} - 합계
 */
function add(a, b) {
  return a + b;
}
```

* 함수, 메소드 및 클래스의 문서화에 사용됩니다.

### Header 영역

```
/* ********************************************************************
 *
 * Common Util - 공통으로 사용하는 함수 
 * 
 * 2022.06.01  TaeHeun Lee   함수생성
 * 2022.07.04  TaeHeun Lee   정규표현식 수정
 * 
******************************************************************** */
```

### Function 영역

```
class CommonUtil {
  /// emailValidation : 정규표현식으로 이메일 규칙을 확인하는 함수
  static bool emailValidation(email) {
    return RegExp(
            r"^[a-zA-Z0-9.a-zA-Z0-9.!#$%&'*+-/=?^_`{|}~]+@[a-zA-Z0-9]+\.[a-zA-Z]+")
        .hasMatch(email!);
  }
}
```

### 기타 주석

**TODO** : 당장 구현이 어렵거나, 추후 해야할 일 등에 대해 "TODO" 주석 명시

**FIXME** : 임시로 조치를 하였거나, 수정조치 해야할 소스에 "FIXME" 주석 명시

**INFO** : 정보성 "INFO" 주석 명시

## Vscode extension : TODO Tree 설치

<figure><img src="/files/Ghch7xIyrqtBWMtUtG55" alt=""><figcaption></figcaption></figure>

명명 규칙과 주석은 코드의 가독성과 유지보수성을 향상시키는 중요한 부분입니다. 카멜 케이스, 파스칼 케이스, 스네이크 케이스를 올바르게 사용하고 주석을 명확하게 작성하여 코드를 더 효과적으로 관리하세요.


---

# 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://developer.aliothx.net/start/flutter/code/undefined.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.
