pnpm scaffold ๋ช
๋ น์ด๋ Entity ์ ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๋ณด์ผ๋ฌํ๋ ์ดํธ ์ฝ๋๋ฅผ ์๋ ์์ฑํฉ๋๋ค. Model ํด๋์ค์ ํ
์คํธ ํ์ผ์ ๋ช ์ด ๋ง์ ์์ฑํ์ฌ ๊ฐ๋ฐ ์๊ฐ์ ํฌ๊ฒ ๋จ์ถํฉ๋๋ค.
๊ธฐ๋ณธ ๊ฐ๋
Scaffold๋ Entity๋ฅผ ์ฝ๋๋ก ๋ณํํ๋ ์๋ํ ๋๊ตฌ์ ๋๋ค:- Entity ๊ธฐ๋ฐ: Entity ์ ์์์ ํ์ ๊ณผ ๊ตฌ์กฐ ํ์
- ํ์ ์์ : TypeScript ํ์ ์ด ์๋์ผ๋ก ์์ฑ๋จ
- ์ผ๊ด์ฑ: ๋ชจ๋ ์ฝ๋๊ฐ ๊ฐ์ ํจํด์ ๋ฐ๋ฆ
- ์์ ๊ฐ๋ฅ: ์์ฑ ํ ์์ ๋กญ๊ฒ ์ปค์คํฐ๋ง์ด์ง
๋ช ๋ น์ด
model - Model ํด๋์ค ์์ฑ
Entity๋ฅผ ์ํ Model ํด๋์ค๋ฅผ ์์ฑํฉ๋๋ค.src/models/User.model.ts
model_test - ํ ์คํธ ํ์ผ ์์ฑ
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
์ปค์คํฐ๋ง์ด์ง
Model ๋ฉ์๋ ์ถ๊ฐ
์์ฑ๋ Model์ ๋น์ฆ๋์ค ๋ก์ง์ ์ถ๊ฐํฉ๋๋ค:ํ ์คํธ ํ์ฅ
๋ ๋ง์ ํ ์คํธ ์ผ์ด์ค๋ฅผ ์ถ๊ฐํฉ๋๋ค:์ฌ๋ฌ Entity ์ผ๊ด ์์ฑ
์คํฌ๋ฆฝํธ ํ์ฉ
ํ ์คํธ ์ผ๊ด ์์ฑ
์ค์ ํ
1. Entity ๋จผ์ ์์ฑํ๊ธฐ
2. ์ ์ง์ ํ์ฅ
3. ์ปจ๋ฒค์ ์ค์
4. Git ๊ด๋ฆฌ
๋ฌธ์ ํด๊ฒฐ
Model ์ฌ์์ฑ
๋ฌธ์ : Model์ ๋ค์ ์์ฑํ๊ณ ์ถ์ ํด๊ฒฐ:Entity ๋ณ๊ฒฝ ํ ๋๊ธฐํ
๋ฌธ์ : Entity ๋ณ๊ฒฝ ํ Model ์ ๋ฐ์ดํธ ํด๊ฒฐ:๋ค์ ๋จ๊ณ
Model
Model ํด๋์ค ์์ธํ ์์๋ณด๊ธฐ
Testing
ํ
์คํธ ์์ฑํ๊ธฐ