์๋
ํ์ธ์ โบ๏ธ
๋ชฐ์
์ ์ฆ๊ธฐ๋ ๊ฐ๋ฐ์, ๋ฐ์ฐ๋น์
๋๋ค.
(ํ) ์บ์นํ ์ด๋ธ(์๋) ์ํํธ์จ์ด ์์ง๋์ด
(์ ) ์ฐ์ํํ์ ๋ค ์ํํธ์จ์ด ์์ง๋์ด
์ฐ์ํํ ํฌ์ฝ์ค 3๊ธฐ, 4๊ธฐ ๋ฆฌ๋ทฐ์ด / ์ฐ์ํํ ํฌ์บ ํpro 1๊ธฐ ๋ฆฌ๋ทฐ์ด / ๊ทธ ์ธ ๋ค์ํ ๋ฆฌ๋ทฐ์ด ํ๋
Courses
Reviews
- Readable Code: Mindset for Writing Readable Code
- Practical Testing: Practical Testing Guide
- Practical Testing: Practical Testing Guide
- Readable Code: Mindset for Writing Readable Code
- Practical Testing: Practical Testing Guide
Posts
Q&A
DTO ๊ฒ์ฆ ํ๋์ ๋ํ ํ ์คํธ ์ฝ๋ ์์ฑ์ ์ด๋๊น์ง?
์๋ ํ์ธ์, ์ต๊ทผํธ ๋!ํ ์คํธ ์ฝ๋๋ ๋ค๋ค์ต์ ์ด์ง๋ง, ์ํฉ๊ณผ ์์์ ๋ง๊ฒ ํ์ํ๋ค๊ณ ์๊ฐํ๋ ์ ๋๋ก ์ ์ฉํ์๋ฉด ๋ฉ๋๋ค.ํญ์ ๋ชจ๋ ํ๋์ ๋ํด ๊ฒ์ฆํ๋ ๊ฒ์ด ์ด๋ ค์ธ ์ ์์ผ๋, ์ ๋ง ์ค์ํ ๋ช๋ช ํ๋์ ๋ํด์ ๊ฒ์ฆํ๋๋ก ํ๋ ๊ฒ๋ ์ข์ ๋ฐฉ๋ฒ์ ๋๋ค.๊ฐ์ฌํฉ๋๋ค. ๐
- 0
- 2
- 53
Q&A
OrderCreateRequest DTO์ ๋ํด์ ๊ถ๊ธํ์
์๋ ํ์ธ์, ์ต๊ทผํธ ๋!๋ง์ํ์ ๋ฐฉ๋ฒ๋ ์ ์ ํ ๋ฐฉ๋ฒ์ ๋๋ค. ์ํฉ์ ๋ฐ๋ผ ์ ํํ์๋ฉด ๋๋๋ฐ์.๊ฐ์ ์์ ์์๋ productNumber๋ id์ฒ๋ผ ์ ์ผ์ฑ์ ๋ณด์ฅํ๊ณ , ํน์ ์ํ์ ์๋ฏธํ๋ ๋น์ฆ๋์ค ํค๋ก ์ฌ์ฉ๋๊ณ ์๊ธฐ ๋๋ฌธ์ ์ญํ ์ ๋์ผํฉ๋๋ค.๋ง์ฝ ๋ด๋ถ id ๊ฐ์ด ์ธ๋ถ์ ๋ ธ์ถ๋์ด์๋ ์ ๋๊ฑฐ๋ ํ๋ ๋ฑ์ ์ํฉ์์๋ ๋น์ฆ๋์ค ํค๋ฅผ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ๋ ์์ผ๋ ์ฐธ๊ณ ํด ์ฃผ์ธ์.๊ฐ์ฌํฉ๋๋ค. ๐
- 0
- 2
- 40
Q&A
๊ณ ์ ํ์ ํ ์คํธ ๋์ญ ์ฌ์ฉ ๋์, ๊ณต์ ์์กด์ฑ
์๋ ํ์ธ์, ๊น์ํ ๋!์ธํ๋ฐ AI ์ธํด๋ ๋ต๋ณ์ ์ ํด์ค ๊ฒ ๊ฐ์๋ฐ์.๊ณ ์ ํ์ ์ฌ์์ ๋ฐ๋ฅด์๋ฉด ๊ณต์ ์์์ธ ๋ฐ์ดํฐ๋ฒ ์ด์ค์๋ ํ ์คํธ ๋์ญ์ ์ฌ์ฉํ๊ฑฐ๋, ์ค์ ํ๋ก๋์ ์์ ์ฌ์ฉํ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ํ๊ฒฝ(ex. MySQL)์ ๊ตฌ์ฑํ์ฌ ํ ์คํธํ๋ ๊ฒ์ด ์ข ๋ ์์ฐ์ค๋ฌ์ธ ์ ์์ผ๋, ๊ฐ์์์ ์ฑํํ ๋ฐฉ์์ ์ผ์ข ์ ํธ๋ ์ด๋-์คํ ๋ผ๊ณ ๋ณผ ์ ์๋๋ฐ์.์ข ๋ ์ ๋ฆฌํด๋ณด์๋ฉด, ์ ๊ฐ ์งํฅํ๋ ๋ฐ๋ ์ฐ๋ฆฌ ์์คํ ์์ ์ฌ์ฉํ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ์์ธก ๋ถ๊ฐํ ๊ณต์ ์์์ด ์๋, ์์ธก ๊ฐ๋ฅํ ์์์ด๋ผ๊ณ ์๊ฐํ๋ ์ชฝ์ด์์. (๊ฐ์ ์์คํ (๊ณ) ๋ด๋ถ๋ผ๊ณ ์๊ฐ. ๊ทธ๋์ ๋ด๊ฐ ์จ์ ํ ์ ์ดํ ์ ์๋ ์ธ๋ถ ์์คํ (๋ฉ์ผ)์ ๋ํด์๋ง ๋์ญ ์ฒ๋ฆฌ๋ฅผ ํ ๊ฒ์ด๊ณ ์.)๊ทธ๋์ ํ ์คํธ ๋์ญ์ด ์๋๋ผ ์ค์ DB๋ฅผ ์ฌ์ฉํ๊ณ ์ ํ๊ณ , ๋ค๋ง ์ค์ DB๋ณด๋ค ์กฐ๊ธ ๋ ํจ์จ์ ์ด๋ผ๊ณ ์๊ฐํ๋ H2 DB๋ฅผ ์ฌ์ฉํ๊ฒ ๋ ๊ฒ์ด๋ผ ์ดํดํด์ฃผ์๋ฉด ๋๊ฒ ์ต๋๋ค.๋์์ด ๋์ จ๊ธฐ๋ฅผ ๋ฐ๋๋๋ค.๊ฐ์ฌํฉ๋๋ค. ๐
- 0
- 2
- 91
Q&A
๊ฐ์ ๋ด์ฉ ์ ๋ฆฌ ๋ฐ ์๋ฃ ์ ์ ํด ๋ฌธ์ ๋๋ฆฝ๋๋ค.
์๋ ํ์ธ์, shsf ๋!๋ค, ์ถ์ฒ๋ฅผ ๋ฐํ๊ณ ๊ธฐ์ฌํ์ ๋ ๊ด์ฐฎ์ผ๋, ๊ฐ์์ ๋๋ฌด ์์ธํ ๋ด์ฉ์ด ๋ค ๋๋ฌ๋๋ ๊ฒ์ ์ง์ ๋ถํ๋๋ฆฌ๊ฒ ์ต๋๋ค. ๐๊ฐ์ ํด์ ์ ํ์ ํค๋ ธํธ ์ฌ์ฉํ๊ณ ์์ด์.๊ฐ์ฌํฉ๋๋ค!
- 0
- 2
- 76
Q&A
์ฌ์ฉํ ๋ณ์ ๊ฐ๊น๊ฒ ์ ์ธํ๊ธฐ ์ง๋ฌธ
์๋ ํ์ธ์, jessy4295 ๋!๋ฉ์๋ ์์์ ๋ํ ๋ด์ฉ์ ๋ค์ชฝ ๊ฐ์์ธ [์น์ 6. ์ฝ๋ ๋ค๋ฌ๊ธฐ - ๋ณ์์ ๋ฉ์๋์ ๋์ด ์์] ๊ฐ์์ ์ค๋ช ํด ๋์์ผ๋, ํด๋น ๊ฐ์๊น์ง ๋ณด์ ํ์๋ ์ถ๊ฐ ์ง๋ฌธ์ด ์์ผ์๋ค๋ฉด ํ๋ฒ ๋ ์ง๋ฌธ ์ฃผ์ธ์ ใ ใ ๊ฐ์ฌํฉ๋๋ค ๐
- 0
- 1
- 48
Q&A
์ค๋ฒ ์์ง๋์ด๋ง
์๋ ํ์ธ์, sein ๋!์ค๋ฒ ์์ง๋์ด๋ง์ ๋ํ ๊ฐ์ ๊ผญ ๊ฐ์ฒด ์งํฅ ํ๊ฒฝ์ด ์๋๋๋ผ๋ ๊ฒฝํํ๊ณ ์ฒด๋ํ ์ ์๋ ์์ญ์ ๋๋ค.๋ฌผ๋ก ๊ฐ์ฒด ์งํฅ ํ๋ก๊ทธ๋๋ฐ ๊ธฐ๋ฐ์ ์ค๊ณ ๊ฒฝํ์ ์ป๊ณ ์ถ์ผ์ จ๋ ๊ฑธ ์๋ ์์ง๋ง, ํ์ฌ ๊ณ์๋ ํ๊ฒฝ ์์์๋ '์ด๋ค ์ ํ์ ์ํด ๋ฏธ๋์ ์ป๊ฒ ๋๋ ๊ฒฐ๊ณผ'๋ฅผ ์ง์์ ์ผ๋ก ๋ฉด๋ฐํ๊ฒ ๊ด์ฐฐํ๊ณ ํ๊ณ ํ๋ฉด์, ๋น์ทํ ๊ฒฝํ์ ์์ ์ ์๋ค๊ณ ์๊ฐํด์.๊ทธ๋ฆฌ๊ณ ๊ฐ์ฅ ๊ฒฝํ์ ์๊ธฐ ์ข์ ํ๊ฒฝ์ ์ด๋ค ์ฑ ์ด๋ ๊ฐ์ ๋ณด๋ค๋, ์ค๋ฌด๊ฐ ์ ์ผ์ ๋๋ค. ๋ณต์กํ๊ณ ๋ค์ํ ์ฌ๋๋ค์ ์ดํด ๊ด๊ณ๊ฐ ์ฝํ ์๋ ํ๊ฒฝ์์, ์ํํธ์จ์ด ํ๋ก๋ํธ๋ฅผ ๋ง๋ค์ด๋๊ฐ๋ค ๋ณด๋ฉด ์ฌ๋ฌ ์กฐ๊ฑด์ ๊ณ ๋ คํ๋ฉฐ ์ ํ์ ํด์ผ๋ง ํ๋ ์๊ฐ์ด ์ค๋๋ฐ์. ๊ทธ๋ด ๋๋ง๋ค ๋ฉํ์ธ์ง๋ฅผ ํตํด ์ด๋ฐ ๊ฒฝํ ์ง์์ ์์๋๊ฐ๋ ๊ฒ์ด ๊ฐ์ฅ ์ข์ ๊ฒ ๊ฐ์์.๋ฌผ๋ก '์ค๊ณ' ์์ฒด์ ๋ํ ์ข์ ์ฑ ๊ณผ ๊ฐ์๋ ์ฐพ์๋ณด๋ฉด ๋ง์ผ๋, ์ ๋ฐฐ ๊ฐ๋ฐ์๋ค์ ์ง์์ ์ด๋ฅผ ํตํด ์ต๋ํ๋ ๊ฒ๋ ์ข์ ๋ฐฉ๋ฒ์ด๊ณ ์. ใ ใ ๋์์ด ๋์ จ๊ธฐ๋ฅผ ๋ฐ๋๋๋ค.๊ฐ์ฌํฉ๋๋ค. ๐
- 0
- 2
- 78
Q&A
๊ณ์ธต ๊ด๋ จ ์ง๋ฌธ์ด ์์ต๋๋ค.
์๋ ํ์ธ์, ์๊ตฌ์ ์๋ฐ๊ฐ ๋!๋ค, ๋ง์ต๋๋ค. ๊ฐ์ ์์ ๋ ๊ฐ๋จํ ํ๋ก์ ํธ์ด๊ธฐ ๋๋ฌธ์ Service์์ ๋ฐํํ๋ Response๋ฅผ ๊ทธ๋๋ก ์ฌ์ฉํ๋๋ฐ, ์ด๋๋ก๋ ์ฌ์ค ์์กด ๊ด๊ณ ์ ํฐ ๋ฌธ์ ๋ ์์ต๋๋ค.๋ง์ฝ ์ค์ ์ต์ข ์๋ต์ ์ฌ์ฉ๋๋ ํํ์ Service์์ ๋ฐํํ๋ ๋ฐ์ดํฐ์ ํํ๊ฐ ๋ฌ๋ผ์ผ ํ๋ค๋ฉด, ๊ฐ ๋ ์ด์ด์ DTO๋ฅผ ๋ณ๊ฐ๋ก ๋๊ณ ๋ณํ ๊ณผ์ ์ ๊ฑฐ์ณ์ผ ํ ๊ฑฐ์์. (๊ฐ์ ์ค์ Request๊ฐ ๊ณ์ธต์ ๋์ด์ค๋ฉด์ ๋ณํ ๊ณผ์ ์ ๊ฐ๋๋ก ํ๋ ๊ฒ ์ฒ๋ผ์.)๋์์ด ๋์ จ๊ธฐ๋ฅผ ๋ฐ๋๋๋ค.๊ฐ์ฌํฉ๋๋ค. ๐
- 0
- 3
- 87
Q&A
'์ฝํ๋ฆฐ'์์๋ ๋น๋๋ฅผ ๋ฐ๋ก ์ฐ์ง ์๋๋ฐ, ์ด ๋๋ ์ด๋ป๊ฒ test fixture๋ฅผ ๋ง๋์๋์ง ๊ถ๊ธํฉ๋๋ค
์๋ ํ์ธ์, eomuksoyummy ๋!์ ๋ ๋ง์ํ์ ๋ฐฉ๋ฒ์ฒ๋ผ ํ๊ณ ์์ด์.์๋ฐ์์ Builder๋ฅผ ์ฌ์ฉํ๋ ์ด์ ์ค ํ๋๋ ํ๋ผ๋ฏธํฐ๋ฅผ ๋จ์ ์์๊ฐ ์๋ ์ด๋ฆ ๊ธฐ๋ฐ์ผ๋ก ๋งค์นญํ์ฌ ๊ฐ๋ ์ฑ์ ๋์ด๊ณ ์ค์๋ฅผ ์ค์ผ ์ ์๋ค๋ ๊ฒ์ธ๋ฐ์.์ฝํ๋ฆฐ์์๋ ์์ฑ์ ๋จ์์ ์ด๋ฆ ๊ธฐ๋ฐ ๋งค์นญ์ ์ง์ํ๊ธฐ ๋๋ฌธ์, ์์ฑ์๋ฅผ ํ์ฉํ๋ฉด ์ถฉ๋ถํ ๊ฐ์ ํจ๊ณผ๋ฅผ ๊ฐ์ง ์ ์์ต๋๋ค.์ถ๊ฐ๋ก ์ฝํ๋ฆฐ์์์ Fixture ์ ์๊ฐ ํ์ํ ๊ฒฝ์ฐ๋ ์๊ฐํด๋ณผ ์ ์๋๋ฐ์. ๋ง์ฝ ์ค์ ํ๋ก๋์ ์์ฑ์์์๋ A๋ผ๋ ํ๋ผ๋ฏธํฐ๊ฐ ํ์๊ฐ์ผ ์ ์๋๋ฐ, ํ ์คํธ์ฝ๋์์๋ A๋ผ๋ ํ๋ผ๋ฏธํฐ๊ฐ ์ฃผ์ด์ง์ง ์์ผ๋ฉด ํน์ ๊ฐ์ด ๊ธฐ๋ณธ ๊ฐ์ผ๋ก ์ค์ ๋๋๋ก ๋ฏธ๋ฆฌ ์ ์ํด๋ ์๋ ์์ต๋๋ค.ํฉํ ๋ฆฌ ๋ฉ์๋๋ฅผ ์ ์ํ๋ค๊ณ ํด์ ๋ฐ๋์ ์์ฑ์๋ฅผ private์ผ๋ก ๋ ํ์๋ ์์ผ๋, ์ธ์ด์ ํน์ฑ์ ๋ง๊ฒ (๋ช ํํ ์ด์ ๊ฐ ์๋) ์ปจ๋ฒค์ ์ ์ ํ๊ณ ์ ์ฉํด๋ณด๋ฉด ์ข์ ๊ฒ ๊ฐ๋ค์.๋์์ด ๋์ จ๊ธฐ๋ฅผ ๋ฐ๋๋๋ค.๊ฐ์ฌํฉ๋๋ค. ๐
- 1
- 2
- 71
Q&A
ํน์ update ๋ก์ง์ ์ด๋ป๊ฒ ํ ์คํธํ๋์? (@Setter?)
์๋ ํ์ธ์, ewgregerg c ๋!๊ฐ์์์๋ ๋ง์๋๋ ธ์ง๋ง, ํ ์คํธ ์ฝ๋๋ง์ ์ํ ํ๋ก๋์ ์ฝ๋ ์์ฑ์ ์ง์ํด์ผ ํฉ๋๋ค.๋ง์ํ์๋ update๊ฐ JPA์ ๋ณ๊ฒฝ ๊ฐ์ง ๊ธฐ๋ฅ์ ํ ์คํธํ๋ ๊ฒ์ด๋ผ๋ฉด, Service ํ ์คํธ์์ ํธ๋์ญ์ ๊ธฐ๋ฐ์ผ๋ก ๋ณ๊ฒฝ ์ฟผ๋ฆฌ๊ฐ ์ํ๋๊ณ ์ ๋ฐ์๋๋์ง๋ฅผ ํ ์คํธํด๋ณผ ์ ์๊ฒ ๋ค์.๊ฐ์ฌํฉ๋๋ค. ๐
- 0
- 2
- 89
Q&A
ํ์ต์ฉ java/spring ์คํ์์ค ์ถ์ฒ
์๋ ํ์ธ์, BuildYourProgram ๋!ํน์ ์คํ์์ค๋ฅผ ์ถ์ฒ๋๋ฆฌ๊ธฐ๋ ์กฐ๊ธ ์ด๋ ค์ธ ๊ฒ ๊ฐ๊ณ , ์ ๋ ๋ค์๊ณผ ๊ฐ์ด ์ ๊ทผํ๋ ํธ์ด์์.Spring ํ๋ ์์ํฌ์ ์ฝ๋ ์ดํด๋ณด๊ธฐ (๋ด๊ฐ ์ฌ์ฉํ๋ ๊ธฐ๋ฅ ์์ฃผ๋ก)ํ์ฌ ์ฌ์ฉํ๊ณ ์๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ์๋ค๋ฉด, ํ์ํ ๊ฒฝ์ฐ ๋ด๋ถ ์ฝ๋ ์ดํด๋ณด๊ธฐ์ด๋ค ์คํ์์ค๋ฅผ ์ ํด์ ์ดํด๋ด์ผ๊ฒ ๋ค, ๋ณด๋ค๋ ํ์ฌ ๋ด๊ฐ ์ฌ์ฉํ๊ณ ์๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ํ๋ ์์ํฌ๋ฅผ ์ค์ฌ์ผ๋ก ์ดํด๋ณด๋ ๊ฒ์ด ์ ์ผ ์ข๋ค๊ณ ์๊ฐํฉ๋๋ค.๋์์ด ๋์ จ๊ธฐ๋ฅผ ๋ฐ๋๋๋ค.๊ฐ์ฌํฉ๋๋ค. ๐
- 0
- 2
- 119