๋ชฉ๋ก๋ถ๋ฅ ์ ์ฒด๋ณด๊ธฐ (123)
DevLog ๐ถ
๐กํต์ฌ๋ง ๊ณจ๋ผ๋ฐฐ์ฐ๋ ์ฝํ๋ฆฐ ํ๋ก๊ทธ๋๋ฐ ์ ๋ฆฌ : ๊ธฐ๋ณธ์ ์ผ๋ก ์๋ฐ์ ๊ฒน์น๋ ๋ถ๋ถ์ ์ ์ธํ๊ณ , ๊ฐ๋จํ ๋ฌธ๋ฒ๋ค๋ง ์ ๋ฆฌํ๊ณ ์ ํ๋ค. ๐ โ๏ธ ์ฝํ๋ฆฐ์ ํน์ง - JVM์์ ์คํ๋๊ธฐ ๋๋ฌธ์ ์๋ฐ์ ํธํ์ฑ์ด ๋๋ค. - ์ ์ ํ์ ์ธ์ด์ด๊ธฐ ๋๋ฌธ์, ๋ชจ๋ ํ์ ์ ์ปดํ์ผ ์์ ์์ ์ ์ ์๋ค. - ํ์ ์ถ๋ก ๊ธฐ๋ฅ์ ํตํด ๋ณ์ ์ ์ธ ์ ๋ณ์์ ํ์ ์ ๋ช ์์ ์ผ๋ก ์ง์ ํ์ง ์์๋ ์ฒ๋ฆฌํ ์ ์๋ค. - ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ์ ์ง์ํ๋ค. - ํจ์ํ ํ๋ก๊ทธ๋๋ฐ์ ์ง์ํ๊ธฐ ๋๋ฌธ์, ๋ค์ํ ํจ์์ ๋๋ค์์ ์ง์ํ๋ค. - ์ง์ญ ํจ์ (ํจ์ ๋ด๋ถ์ ๋ค๋ฅธ ํจ์ ์ ์ธ) - ๋ฉค๋ฒ ํจ์ (ํด๋์ค ๋ด๋ถ์ ํจ์๋ฅผ ์ ์ธ = ์๋ฐ์ ๋ฉ์๋) - ์ ๋ค๋ฆญ ํจ์ (ํจ์์ ์ ๋ค๋ฆญ ํ์ ์ฌ์ฉ) - ๊ณ ์ฐจ ํจ์ (๋ค๋ฅธ ํจ์๋ฅผ ์ธ์๋ก ๋ฐ์ ์คํ) - ์ฌ๊ท ํจ์ (์ฌ๊ท ํธ..
์๋์ฐจ ๊ฒฝ์ฃผ ๊ฒ์์ ์ ๋ฒ ์ฃผ์ ๋๋ฌ์ง๋ง... ์๋ก์ด ๋ฏธ์ ์ ์ ์ํ๋๋ผ ์ด์ ์์ผ ํ๊ณ ๋ฅผ ์์ฑํ๋ค... ๐ฅน ์คํ์ด๋ ์งํํ ์ฒซ ํ์ดํ๋ก๊ทธ๋๋ฐ์ด๋ค. ํ๋์ ๋ ธํธ๋ถ์ผ๋ก ๊ฐ์ด ์ฝ๋ฉํ๋ ๊ฑด ์ฒ์ ํด๋ณด๋ ๊ฒฝํ์ด๋ผ ์๋ฌ๋๋ค. ์ง๊ธ ์์ ๋๋ผ๋ ๊ฑฐ์ง๋ง, ํผ์ ์ฝ๋ฉํ ๋๋ณด๋ค ์๊ฐ์ ๋ ๊ฑธ๋ ค๋ ํ์ด์๊ฒ ๋ถ๋๋ฝ์ง ์์ ์ฝ๋๋ฅผ ์์ฑํ๊ธฐ ์ํด์ ๋ ์ข์ ๋ฐฉํฅ์ผ๋ก ์ค๊ณํ๊ธฐ ์ํด์ ์์์ ์ผ๋ก ๋ ธ๋ ฅํ๊ฒ ๋๋ ๊ฒ ๊ฐ๋ค. ํ๊ณ ๋ฅผ ์ด๋ป๊ฒ ์์ฑํ ๊น ๊ณ ๋ฏผํ๋๋ฐ, ์ฝ๋๋ ๋จ๊ณ๋ณ๋ก branch๊ฐ ๋๋์ด์ ธ ์๊ณ , ๊ธฐ๋ฅ ๋ชฉ๋ก๋ ๋ ์์ธํ๊ฒ ์์ฑ๋์ด ์๊ธฐ ๋๋ฌธ์ ์ฝ๋์ ๋ํ ์ค๋ช ๋ณด๋ค๋ ์ด๋ค ์์ผ๋ก ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋์ง ์ ๋ ๊ฒ ๋ ์ข์ ๊ฒ ๊ฐ์์ ๊ทธ๋ ๊ฒ ์ ์ด๋ณด๋ ค๊ณ ํ๋ค :D โ๏ธ ์์ฑํ ์ฝ๋ GitHub - Cl8D/java-racingcar: ์๋์ฐจ ๊ฒฝ..
์ฐํ ์ฝ ์์ ๋ค์๋ ๋ด์ฉ ์ค์์ ๊ฐ๋จํ๊ฒ ๋ด ์๊ฐ์ ์ ๋ฆฌํ๊ณ ์ถ์ด์ ์์ฑํ๋ ๊ธ! โจ ํ ์คํธ ์ฝ๋์ ๋ฒ์ ํ ์คํธ ์ฝ๋๋ ์ด๋ ์ ๋๋ก ์๊ฒ ๋ง๋ค์ด์ผ ๋ ๊น ๊ณ ๋ฏผ์ ๋ง์ด ํ๋ค. ์ฌ์ค ์ด์ ์๋ ํ ์คํธ ์ฝ๋๋ฅผ ๊ฑฐ์ ์์ฑํ ๊ฒฝํ๋ ์๊ณ , given-when-then๋ง ๊ตฌ๊ตฌ์ ์ ์๊ณ ์์์ด์ ํ ์คํธ ์ฝ๋์ ๋ฒ์๊น์ง๋ ์ ๋๋ก ์๊ฐํด ๋ณธ ์ ์์๋ค. (์ ์ง์ง ์๋์ด๋ค!) ๊ฐ์ธ์ ์ธ ์๊ฐ์ผ๋ก ํ ์คํธ ์ฝ๋๋ ํด๋น ๊ฐ์ฒด์ public ๋ฉ์๋์ ๋ํด์๋ ์ ๋ถ ํ ์คํธ๋ฅผ ํ๋ ๊ฒ ๋ง๋ค๊ณ ์๊ฐํ๋ค. ๋ฌผ๋ก , private ๋ฉ์๋๋ public์์ ํธ์ถํด์ ๊ฐ์ ์ ์ผ๋ก ํ ์คํธ ํ ์ ์๋๋ก ๋ง๋๋ ๊ฒ์ด ์ข๋ค๊ณ ์๊ฐํ๋ค. ์ด๋ฐ์ ํ์ด ํ๋ก๊ทธ๋๋ฐ์ ์งํํ ๋, private ๋ฉ์๋๋ฅผ ํ ์คํธํ๋ ค๊ณ ๋ฆฌํ๋์ ๊น์ง ์จ๊ฐ๋ฉด์ ์งํํ๋ค. ์ฐ์ , Car..
- ์ฐํ ์ฝ ์์ํ ์ง ๋ฒ์จ 2์ฃผ์ฐจ๊ฐ ๋๋ค. 1์ฃผ์ฐจ ํ๊ณ ๋ก์ ์ฃผ๋ง์ ์ฐ๋ ค๊ณ ํ๋๋ฐ ๋ฏธ์ ํ๋๋ผ ์ด์ ์์ผ... ๐ฅน ๋งค์ฃผ ์ผ๊ธฐ ํ์์ผ๋ก ๊ฐ๋จํ๊ฒ ์ฐํ ์ฝ์์ ์์๋ ์ผ์ ์จ๋ณด๋ ค๊ณ ํ๋ค. ๊ฐ๋ฐ์ ๊ด๋ จ๋ ๊ฑฐ๋ ๊ฐ๋ณ ํฌ์คํ ์ผ๋ก ์ธ ์์ :D ๐ฅ 2์ 7์ผ - ์ฐํ ์ฝ ์ฒซ๋ ! ์ ์ค ์บ ํผ์ค ๋ค์ด๊ฐ๋๋ฐ ๋ญ๊ฐ ์์ฒญ ๋๊ทผ๊ฑฐ๋ ธ๋ค. ์ด ๋ ์ ์จ๋ณด๋ฉ ์กฐ๋ฅผ ๊ฐ๋จํ ์ค๋ฆฌ์ํ ์ด์ ์ ์งํํ๋๋ฐ, ์จ๋ณด๋ฉ ์กฐ๋ฅผ ๋ง๋๊ฒ ๋์๋ค. ๐ ์ฐ๋ฆฌ ์กฐ๋ ์คํ, ํ์ค, ๋ก์ง, ๋ธ๋์บฃ, ์๋จ์ด์๋ค. (์ง์ง ํ ์ ๋ง๋ฌ๋ค...) ์ถ์ ์ฆ์ ๋ฐ๊ธฐ ์ํด์๋ ์กฐ๋ฅผ ๋ง๋ฌ์ด์ผ ํ๋๋ฐ, ๋๊ฐ ๋๊ตฐ์ง ๋ชฐ๋ผ์ ์ฒ์์ ์ฐพ์ ๋ ์์ฒญ ํค๋งธ๋ค. ๊ทธ๋๋ ์คํ์ด ๋จผ์ ์ฐ๋ฝํด ์ฃผ์ ๋๋ถ์ ์ฐ๋ฆฌ ์กฐ์ ๊ฒจ์ฐ ํฉ๋ฅํ ์ ์์๋ค! ๊ทธ๋ฆฌ๊ณ ์ ์ฌ ์์ฌ๋ ๊ฐ์ด ํ๋ค. ์ด๋ ๊ฐ๋ ์ฌ๋์ด ๋ง์์ ์์๋ฒ๊ฑฐ..
- ์ฌ์ค ์ฐํ ์ฝ ํฉ๊ฒฉ ๋ฐํ๋ ๊ฝค ์ ์ ๋ฌ์ง๋ง, ๋ฏธ๋ฃจ๋ค๊ฐ ๊ฒจ์ฐ ํ๊ณ ๋ก์ ์์ฑํ๋ค. ์ฐํ ์ฝ ํฉ๊ฒฉ์ด๋ผ๋... ๋ค์ ๋ด๋ ๊ฐ๊ฒฉ์ค๋ฌ์ด ๋ฉ์ผ์ด๋ค. ๐ฅน ์ฐํ ์ฝ ์์ํ๋ฉด ๋ธ๋ก๊ทธ ์์ฑ์ ์ต๊ด์ ๋ค์ผ ์์ ์ด์ด์, ์์ ์ ์ ๊ฐ๋จํ๊ฒ ์ด๋ค ๊ณผ์ ์ ๊ฑฐ์ณค๋์ง ๊ธฐ๋กํด๋ณด๊ณ ์ ํ๋ค. | 1. ์๊ธฐ์๊ฐ์ - ์ฌ์ค ์ฐํ ์ฝ๋ ์๊ธฐ์๊ฐ์๊ฐ ๊ฝค๋ ์ค์ํ ๋ถ๋ถ์ด๋ผ๊ณ ์๊ฐํ๋ค. '๋ด๊ฐ ์ผ๋ง๋ ์ฑ์ฅํ ์ ์๋ ์ฌ๋์ธ๊ฐ?'์ ์ด์ ์ ๋๊ณ , ์ ๊ณต ์ง์๋ณด๋ค๋ ๋ด ์ง์ํ ๊ฒฝํ์ ๋ด์ผ๋ ค๊ณ ๋ง์ด ๋ ธ๋ ฅํ๋ค. 1. ๊ณ ๋ฑํ๊ต/๋ํ๊ต ์ ๊ณต์ ํฌํจํ์ฌ ํ๋ก๊ทธ๋๋ฐ ๊ต์ก ์ด๋ ฅ์ ์์ฑํด์ฃผ์ธ์. - ํ์ฌ ์ฌํ ์ค์ธ ๋ํ๊ต์, ๋ํ๊ต ๋ด์์ ์งํํ ์๋ชจ์ (๋ฐฑ์๋ ๊ด๋ จ X), ๊ทธ๋ฆฌ๊ณ ๋ฐฑ์๋ ๊ด๋ จ ๊ณต๋ถ ์ค์ด๋ผ๊ณ ์์ฑํ๋ค. ๊ตณ์ด ๊ธ๋ก ํ์ด์ฐ์ง ์๊ณ , ๊ทธ๋ฅ 3์ค๋ก ์งค๋งํ๊ฒ ์์ฑํ..
- ๋ฒ์จ 3์ฃผ์ฐจ๊ฐ ๋๋ฌ๋ค. ์ฌ์ค ๋๋ ์ง ์ดํ ๋๋๋ฐ ์ ์ ์์ด์ ์ด์ ํ๊ณ ๋ก์ ์์ฑํ๋ค... | 2์ฃผ์ฐจ ํ๊ณ ๋ก [์ฐ์ํํ ํฌ์ฝ์ค] 5๊ธฐ ๋ฐฑ์๋ 2์ฃผ์ฐจ ํ๋ฆฌ์ฝ์ค ํ๊ณ ๋ก - ๋ฒ์จ 2์ฃผ์ฐจ ๋ง๋ฌด๋ฆฌ...? ์๊ฐ์ด ๋๋ฌด ๋นจ๋ผ์ ๋ฏฟ๊ธฐ์ง ์๋๋ค. ์ค๋ ํ๋ฃจ ํ๊ณ ๋ ํจ๊ป ์ฌ๋ฉด์ ๋ค์ 3์ฃผ์ฐจ ๋ฌ๋ฆด ์ค๋นํด์ผ์ง...๐ต๐ซ | 1์ฃผ์ฐจ ํ๊ณ ๋ก [์ฐ์ํํ ํฌ์ฝ์ค] 5๊ธฐ ๋ฐฑ์๋ 1์ฃผ์ฐจ ํ๋ฆฌ์ฝ์ค ํ cl8d.tistory.com | 3์ฃผ์ฐจ ์ฝ๋ GitHub - Cl8D/java-lotto: ๋ก๋ ๋ฏธ์ ์ ์งํํ๋ ์ ์ฅ์ ๋ก๋ ๋ฏธ์ ์ ์งํํ๋ ์ ์ฅ์. Contribute to Cl8D/java-lotto development by creating an account on GitHub. github.com | 3์ฃผ์ฐจ ์ปค๋ฐ ๊ธฐ๋ก ์ดํด๋ณด๊ธฐ - ..
- ๋ฒ์จ 2์ฃผ์ฐจ ๋ง๋ฌด๋ฆฌ...? ์๊ฐ์ด ๋๋ฌด ๋นจ๋ผ์ ๋ฏฟ๊ธฐ์ง ์๋๋ค. ์ค๋ ํ๋ฃจ ํ๊ณ ๋ ํจ๊ป ์ฌ๋ฉด์ ๋ค์ 3์ฃผ์ฐจ ๋ฌ๋ฆด ์ค๋นํด์ผ์ง...๐ต๐ซ | 1์ฃผ์ฐจ ํ๊ณ ๋ก [์ฐ์ํํ ํฌ์ฝ์ค] 5๊ธฐ ๋ฐฑ์๋ 1์ฃผ์ฐจ ํ๋ฆฌ์ฝ์ค ํ๊ณ ๋ก - 2์ฃผ์ฐจ๊ฐ ๋๋์์ผ ์์ฑํ๋ 1์ฃผ์ฐจ ํ๋ฆฌ์ฝ์ค ํ๊ณ ๋ก...(?) - 1์ฃผ์ฐจ์๋ ์ ์ ์์ด ๊ตฌํํ๊ณ ์ปค๋ฐํ๊ณ ๋ฆฌํฉํ ๋งํ๊ณ ๊ทธ๋ฌ๋๋ผ ํ ์ฃผ๊ฐ ๊ฐ๋์ง๋ ๋ชจ๋ฅด๊ฒ ๋๋ฌ๋ ๊ฒ ๊ฐ๋ค. ๋ค๋ฅธ ๋ถ๋ค์ด ๋งค์ฃผ ํ๊ณ ๋ก์ cl8d.tistory.com | 2์ฃผ์ฐจ ์ฝ๋ GitHub - Cl8D/java-baseball: ์ซ์ ์ผ๊ตฌ ๊ฒ์ ๋ฏธ์ ์ ์งํํ๋ ์ ์ฅ์ ์ซ์ ์ผ๊ตฌ ๊ฒ์ ๋ฏธ์ ์ ์งํํ๋ ์ ์ฅ์. Contribute to Cl8D/java-baseball development by creating an account on G..
- 2์ฃผ์ฐจ๊ฐ ๋๋์์ผ ์์ฑํ๋ 1์ฃผ์ฐจ ํ๋ฆฌ์ฝ์ค ํ๊ณ ๋ก...(?) - 1์ฃผ์ฐจ์๋ ์ ์ ์์ด ๊ตฌํํ๊ณ ์ปค๋ฐํ๊ณ ๋ฆฌํฉํ ๋งํ๊ณ ๊ทธ๋ฌ๋๋ผ ํ ์ฃผ๊ฐ ๊ฐ๋์ง๋ ๋ชจ๋ฅด๊ฒ ๋๋ฌ๋ ๊ฒ ๊ฐ๋ค. ๋ค๋ฅธ ๋ถ๋ค์ด ๋งค์ฃผ ํ๊ณ ๋ก์ ์์ฑํ์๋ ๊ฒ ๊ฝค ๋ฉ์์ด ๋ณด์ด๊ธฐ๋ ํ๊ณ , ๊ฐ์ธ์ ์ผ๋ก ์ฌ๋ฆ/๊ฒจ์ธ๋ง๋ค ํ๊ณ ๋ก์ ์์ฑํ๊ณ ์์์ด์ ์ฐํ ์ฝ ์ฐธ์ฌ ๊ธฐ๊ฐ ๋์์ ๋๋ ํ๊ณ ๋ก์ ๋จ๊ฒจ๋ณด๊ณ ์ ํ๋ค :D ์ฝ๋ ์ง๋ฉด์ ๋๋ฌด ๋ฐฐ์ฐ๋ ์ ์ด ๋ง์์ ๊ธฐ์๋ค. - 1์ฃผ์ฐจ ๊ณผ์ ์ฝ๋๋ ์๋์์! https://github.com/Cl8D/java-onboarding/tree/cl8d GitHub - Cl8D/java-onboarding: ์จ๋ณด๋ฉ ๋ฏธ์ ์ ์งํํ๋ ์ ์ฅ์ ์จ๋ณด๋ฉ ๋ฏธ์ ์ ์งํํ๋ ์ ์ฅ์. Contribute to Cl8D/java-onboarding develo..
- ํ ๋น์ '์คํ๋ง ๋ฆฌ์กํฐ๋ธ ํ๋ก๊ทธ๋๋ฐ' ๊ฐ์๋ฅผ ๋ฃ๊ณ ์ ๋ฆฌํ ๊ธ์ ๋๋ค. - ์ ์ฒด ์์ค์ฝ๋) https://github.com/Cl8D/SpringReactive GitHub - Cl8D/SpringReactive: Spring Reactive Programming ํ์ต ์ฉ๋ ๋ ํ์งํ ๋ฆฌ์ ๋๋ค. Spring Reactive Programming ํ์ต ์ฉ๋ ๋ ํ์งํ ๋ฆฌ์ ๋๋ค. Contribute to Cl8D/SpringReactive development by creating an account on GitHub. github.com โ๏ธ Iterable / Iterator package chapter1; import java.util.Iterator; public class Basic { public sta..
- ์ง๋ 9์์, ํ์ฌ์์ ์ฌ์ด๋ ํ๋ก์ ํธ๋ก JPA๋ฅผ ํ์ฉํ ๊ฒ์ํ ์๋น์ค ๊ฐ๋ฐ์ ์งํํ์๋๋ฐ, ์ฟผ๋ฆฌ ํ๋์ ์งํํ๋ค๊ฐ ๋ด ๋ง์๋๋ก ์ฟผ๋ฆฌ๊ฐ ๋๊ฐ์ง ์๋ ๊ฑธ ๋ณผ ์ ์์๋ค. - ๋น์ ๋ชจ๋ธ์ ๊ตฌ์กฐ๋ ๋๋ต์ ์ผ๋ก ์ด๋ ๋ค. ๊ธฐ๋ณธ์ ์ธ ๊ฒ์ํ ์ํฐํฐ์ด๋ค. @Table(name = "tb_board") @Entity @Getter @NoArgsConstructor(access = AccessLevel.PROTECTED) public class Board extends BaseEntity { @Schema(description = "๊ฒ์๊ธ ๋ฒํธ", required = true) @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long boardNo; @S..