---
# System prepended metadata

title: 240507 BE 회의록

---

![스크린샷 2024-05-07 오후 3.26.44](https://hackmd.io/_uploads/Hk-g5SPM0.png)

## 테이블명 컨벤션
- 테이블명은 소문자


## 기능 구현 순서
1. 이슈 목록 (메인 화면)을 화면을 표시한다. 
    - issue 테이블에서 데이터 json으로 만들어 넘기기.
    - 
    - 
2. 이슈 작성 기능을 추가한다.
    - 
3. 이슈 상세
4. 이슈 필터
5. 로그인


## 테이블 구조

### MileStone

```
CREATE TABLE milestone (
    name VARCHAR(255) PRIMARY KEY,
    due_date timestamp,
    valid BOOLEAN DEFAULT FALSE
);

```

### Issue

```
CREATE TABLE issue (
    id INT PRIMARY KEY,
    title VARCHAR(255),
    content TEXT,
    profile_image VARCHAR(255),
    milestone_id VARCHAR(255),
    label_id VARCHAR(255),
    manager VARCHAR(255),
    writer VARCHAR(255),
    create_time TIMESTAMP,
    deleted BOOLEAN DEFAULT FALSE,
    FOREIGN KEY (milestone_id) REFERENCES milestone(name),
    FOREIGN KEY (label_id) REFERENCES label(name),
    FOREIGN KEY (manager) REFERENCES user(user_id),
    FOREIGN KEY (writer) REFERENCES user(user_id)
);
```

### user
```
CREATE TABLE user (
    user_id VARCHAR(255) PRIMARY KEY,
    user_password VARCHAR(255)
);
```

### label
```
CREATE TABLE label (
    name VARCHAR(255) PRIMARY KEY,
    description VARCHAR(255),
    color VARCHAR(255)
);
```




## 코드 스타일

- 사용하지 않는 import 제거
- default 포맷 사용

- 클래스 
    - 클래스 다음 한칸 띄우기

- 중괄호 위치
``` java
// 여는 중괄호를 키워드와 같은 줄에 두는 예시
if (condition) {
    // code
} else {
    // code
}
```

- 변수 및 메서드 명명 규칙
클래스 이름: 파스칼 케이스(PascalCase)
매소드 이름: 카멜 케이스(camelCase)

- 공백
```
int sum = a + b;
```



## API 문서화

- spring rest docs 사용 시도
- 사용이 익숙치 않으면 postman 혹은 위키로 작성