1️⃣ [링크] 일정 관리 앱 Develop 리드미(README) 1단계
2️⃣ [링크] 일정 관리 앱 Develop 리드미(README) 2단계
3️⃣ [링크] 일정 관리 앱 Develop 리드미(README) 3단계, 4단계
4️⃣ [링크] 일정 관리 앱 Develop 리드미(README) 5단계, 6단계
5️⃣ [링크] 일정 관리 앱 Develop 리드미(README) 7단계, 8단계
리드미(README)를 다섯 편이나 작성했으니 원 없이 썼다고 말해도 과장이 아닐 터다. 각 과제의 데이터베이스(database) 구조에 맞춰 내용을 고치는 내내 미리 틀을 잡아두길 정말 잘했다는 안도감이 맴돌았다. 프로젝트를 하다 보면 문서 작성할 일이 정말 많은데, 이번에 실컷 연습했다. 리드미를 작성하면서 팀원들이 고생하는 모습을 종종 마주했고, 마크다운(Markdown) 문법에 서투른 사람이라면 누구나 어려울 수밖에 없는지라, 조금이나마 도움이 되길 바라는 마음으로 리드미에 들어간 각 내용을 정리했다. 특히나 코드를 복사해서 바로 사용할 수 있도록 작성했다.
1. 리드미(README) 전체 틀
# 🗓️ 제목
## 💻 프로젝트 소개
- 프로젝트 목적
- 개인 프로젝트인지 아니면 팀 프로젝트인지
- 해당 프로젝트가 어떤 인터페이스(interface)를 기반으로 설계되었는지
## 📆 개발 기간
- **학습 기간**: 08/12/2024 – 13/12/2024
- **개발 기간**: 13/12/2024 – 19/12/2024
## 🛠️ 기술 구성
- Java 17
- Spring Boot 3.4.0
- Spring Data JPA
- 기타 등등
## 🔗 ERD (Entity Relationship Diagram)
## 📜 API 명세서
## 📊 데이터베이스 스키마(Database Schema)
## 🚀 주요 기능
- 특정 항목을 강조하고 싶을 때는 백틱(``) 사용하기
- `예시1`, `예시2`, `예시3`
## 🔍 특징
## 📜 추가 정보
2. API 명세서
### 기본 정보
- 기본 URL :
- 응답 형식: JSON
- 문자 인코딩: UTF-8
### API 목록
#### API 엔드포인트(endpoint) - fieldName
| Method | URI | Req Body | Req Params | Path Vars | Resp Code |
|--------|-----|----------|------------|-----------|-----------|
| POST | | | | | |
| GET | | | | | |
| GET | | | | | |
| PUT | | | | | |
| DELETE | | | | | |
- URI: /plans/{id}, /members/signup 등등
- Req Body: Request Body (e.g. username, password)
- Req Params: Request Parameters (e.g. page, size)
- Path Vars: Path Variables (e.g. id)
- Response Code: 200, 201 등등
### API 세부 정보
#### 요청 본문 세부 정보 - fieldName
1. **`POST` 제목**
```json
{
"Req Body1" : "설명1",
"Req Body2" : "설명2"
}
```
2. **`PUT` 제목**
```json
{
"Req Body1" : "설명1",
"Req Body2" : "설명2"
}
```
#### 응답 본문 세부 정보 - fieldName
1. **`GET` 제목**
```json
[
{
"Resp Body1" : "설명1",
"Resp Body2" : "설명2",
"Resp Body3" : "yyyy-MM-dd HH:mm:ss"
},
{
"Resp Body1" : "설명1",
"Resp Body2" : "설명2",
"Resp Body3" : "yyyy-MM-dd HH:mm:ss"
}
]
```
2. **`GET` 제목**
```json
{
"id" : 1,
"Resp Body1" : "설명1",
"Resp Body2" : "설명2",
"Resp Body3": {
"id": 1,
"Resp Body3-1": "설명3-1"
"Resp Body3-2": "설명3-2"
}
}
```
3. ERD
더보기
```mermaid
erDiagram
ENTITY {
id bigint PK
column1 varchar(16)
column2 datetime
}
```
더보기
```mermaid
erDiagram
ENTITY1 ||--o{ ENTITY2 : creates
ENTITY1 {
id bigint PK
column1 varchar(32)
column2 varchar(255)
column3 timestamp
column4 tinyint
}
ENTITY2 {
id bigint PK
column1 varchar(16)
column2 tinyint
entity1_id bigint FK
}
```
더보기
```mermaid
erDiagram
ENTITY1 ||--o{ ENTITY2 : creates
ENTITY2 ||--o{ ENTITY3 : receives
ENTITY1 ||--o{ ENTITY3 : writes
ENTITY1 {
id bigint PK
column1 varchar(32)
column2 varchar(128)
}
ENTITY2 {
id bigint PK
column1 varchar(16)
column2 timestamp
entity1_id bigint FK
}
COMMENTS {
id bigint PK
column1 varchar(255)
entity1_id bigint FK
entity2_id bigint FK
}
```
4. 데이터베이스 스키마
```sql
CREATE TABLE entity2
(
id BIGINT AUTO_INCREMENT COMMENT '코멘트'
PRIMARY KEY,
column1 VARCHAR(255) NULL COMMENT '코멘트',
column2 TINYINT NULL COMMENT '코멘트',
column3 TIMESTAMP NULL COMMENT '코멘트',
entity1_id BIGINT NOT NULL COMMENT '코멘트',
CONSTRAINT FK_ENTITY1_ID
FOREIGN KEY (entity1_id) REFERENCES entity1 (id)
);
```
'끝을 보는 용기' 카테고리의 다른 글
Day 076 - 과감하게 휴식 (0) | 2024.12.21 |
---|---|
Day 075 - 뉴스피드 프로젝트 10%, ERD 및 API 명세서 작성, 일정 계획 및 업무 분담 완료 (25.01.01 수정 예정) (0) | 2024.12.20 |
Spring 본캠프 Day 073 - 6단계, 7단계, 8단계 일정 관리 앱 Develop 완료! 이제 남은 과제는 문서 더미에서 빠져나오기! (0) | 2024.12.18 |
Spring 본캠프 Day 072 - 4단계 및 5단계 일정 관리 앱 Develop 완료, 5단계 진행 중, 첫 쿠키(🍪) 생성 및 예외 처리 (0) | 2024.12.17 |
Spring 본캠프 Day 071 - 2단계 및 3단계 일정 관리 앱 Develop 완료, 4단계 진행 중 (0) | 2024.12.16 |