pnpm scaffold ๋ช
๋ น์ด๋ Entity ์ ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๋ณด์ผ๋ฌํ๋ ์ดํธ ์ฝ๋๋ฅผ ์๋ ์์ฑํฉ๋๋ค. Model ํด๋์ค์ ํ
์คํธ ํ์ผ์ ๋ช ์ด ๋ง์ ์์ฑํ์ฌ ๊ฐ๋ฐ ์๊ฐ์ ํฌ๊ฒ ๋จ์ถํฉ๋๋ค.
๊ธฐ๋ณธ ๊ฐ๋
Scaffold๋ Entity๋ฅผ ์ฝ๋๋ก ๋ณํํ๋ ์๋ํ ๋๊ตฌ์ ๋๋ค:- Entity ๊ธฐ๋ฐ: Entity ์ ์์์ ํ์ ๊ณผ ๊ตฌ์กฐ ํ์
- ํ์ ์์ : TypeScript ํ์ ์ด ์๋์ผ๋ก ์์ฑ๋จ
- ์ผ๊ด์ฑ: ๋ชจ๋ ์ฝ๋๊ฐ ๊ฐ์ ํจํด์ ๋ฐ๋ฆ
- ์์ ๊ฐ๋ฅ: ์์ฑ ํ ์์ ๋กญ๊ฒ ์ปค์คํฐ๋ง์ด์ง
๋ช ๋ น์ด
model - Model ํด๋์ค ์์ฑ
Entity๋ฅผ ์ํ Model ํด๋์ค๋ฅผ ์์ฑํฉ๋๋ค.src/models/TS
User.model.ts - User Model ํด๋์คsrc/models/User.model.ts
model_test - ํ ์คํธ ํ์ผ ์์ฑ
Model์ ์ํ ํ ์คํธ ํ์ผ์ ์์ฑํฉ๋๋ค.src/models/TS
User.model.test.ts - User Model ํ
์คํธsrc/models/User.model.test.ts
View ์ค์บํด๋ฉ (๊ฐ๋ฐ ์ค)
View ์ปดํฌ๋ํธ ์๋ ์์ฑ ๊ธฐ๋ฅ์ ํ์ฌ ๊ฐ๋ฐ ์ค์
๋๋ค.
Sonamu UI๋ฅผ ํตํด React ์ปดํฌ๋ํธ๋ฅผ ์์ฑํ ์ ์์ต๋๋ค.
์์ฑ๋ ์ฝ๋ ๊ตฌ์กฐ
Model ํด๋์ค
์์ฑ๋ Model ํด๋์ค๋ ๋ค์ ๊ตฌ์กฐ๋ฅผ ๊ฐ์ง๋๋ค:- โ TypeScript ํ์
- โ Entity ์ฐ๊ฒฐ
- โ BaseModel ์์
- โ ๊ธฐ๋ณธ CRUD ๋ฉ์๋
- ๋น์ฆ๋์ค ๋ก์ง ๋ฉ์๋
- ๋ณต์กํ ์ฟผ๋ฆฌ
- ๋ฐ์ดํฐ ๊ฒ์ฆ
- ๊ด๊ณ ๋ก๋ฉ
ํ ์คํธ ํ์ผ
์์ฑ๋ ํ ์คํธ ํ์ผ์ ๊ธฐ๋ณธ ํ ์คํธ๋ฅผ ํฌํจํฉ๋๋ค:- ๋น์ฆ๋์ค ๋ก์ง ํ ์คํธ ์ถ๊ฐ
- Edge case ํ ์คํธ
- ์ฑ๋ฅ ํ ์คํธ
- ํตํฉ ํ ์คํธ
๊ฐ๋ฐ ์ํฌํ๋ก์ฐ
1. Entity ์ ์
src/entities/Product.entity.ts
2. ๋ง์ด๊ทธ๋ ์ด์
3. Model ์์ฑ
4. ๋น์ฆ๋์ค ๋ก์ง ์ถ๊ฐ
src/models/Product.model.ts
5. ํ ์คํธ ์์ฑ
6. ํ ์คํธ ์์ฑ
src/models/Product.model.test.ts
7. API ์ถ๊ฐ
src/models/Product.model.ts