- ๋ฏธ์ ์ ๊ธฐ๋ฅ ์๊ตฌ ์ฌํญ, ํ๋ก๊ทธ๋๋ฐ ์๊ตฌ ์ฌํญ, ๊ณผ์ ์งํ ์๊ตฌ ์ฌํญ ์ธ ๊ฐ์ง๋ก ๊ตฌ์ฑ๋์ด ์๋ค.
- ์ธ ๊ฐ์ ์๊ตฌ ์ฌํญ์ ๋ง์กฑํ๊ธฐ ์ํด ๋ ธ๋ ฅํ๋ค. ํนํ ๊ธฐ๋ฅ์ ๊ตฌํํ๊ธฐ ์ ์ ๊ธฐ๋ฅ ๋ชฉ๋ก์ ๋ง๋ ๋ค.
- ๊ธฐ๋ฅ ์๊ตฌ ์ฌํญ์ ๊ธฐ์ฌ๋์ง ์์ ๋ด์ฉ์ ์ค์ค๋ก ํ๋จํ์ฌ ๊ตฌํํ๋ค.
- ๋ฏธ์
๊ตฌํ์ ์๋ฃํ ํ GitHub์ ํตํด ์ ์ถํด์ผ ํ๋ค.
- GitHub์ ํ์ฉํ ์ ์ถ ๋ฐฉ๋ฒ์ ํ๋ฆฌ์ฝ์ค ๊ณผ์ ์ ์ถ ๋ฌธ์๋ฅผ ์ฐธ๊ณ ํด ์ ์ถํ๋ค.
- GitHub์ ๋ฏธ์
์ ์ ์ถํ ํ ์ฐ์ํํ
ํฌ์ฝ์ค ์ง์ ์ฌ์ดํธ์ ์ ์ํ์ฌ ํ๋ฆฌ์ฝ์ค ๊ณผ์ ๋ฅผ ์ ์ถํ๋ค.
- ์์ธํ ๋ฐฉ๋ฒ์ ์ ์ถ ๊ฐ์ด๋ ์ฐธ๊ณ
- Pull Request๋ง ๋ณด๋ด๊ณ ์ง์ ํ๋ซํผ์์ ๊ณผ์ ๋ฅผ ์ ์ถํ์ง ์์ผ๋ฉด ์ต์ข ์ ์ถํ์ง ์์ ๊ฒ์ผ๋ก ์ฒ๋ฆฌ๋๋ ์ฃผ์ํ๋ค.
- ๊ธฐ๋ฅ ๊ตฌํ์ ๋ชจ๋ ์ ์์ ์ผ๋ก ํ๋๋ผ๋ ์๊ตฌ ์ฌํญ์ ๋ช ์๋ ์ถ๋ ฅ๊ฐ ํ์์ ์งํค์ง ์์ ๊ฒฝ์ฐ 0์ ์ผ๋ก ์ฒ๋ฆฌํ๋ค.
- ๊ธฐ๋ฅ ๊ตฌํ์ ์๋ฃํ ๋ค ์๋ ๊ฐ์ด๋์ ๋ฐ๋ผ ํ ์คํธ๋ฅผ ์คํํ์ ๋ ๋ชจ๋ ํ ์คํธ๊ฐ ์ฑ๊ณตํ๋์ง ํ์ธํ๋ค.
- ํ ์คํธ๊ฐ ์คํจํ ๊ฒฝ์ฐ 0์ ์ผ๋ก ์ฒ๋ฆฌ๋๋ฏ๋ก, ๋ฐ๋์ ํ์ธ ํ ์ ์ถํ๋ค.
- ํฐ๋ฏธ๋์์
java -version
์ ์คํํ์ฌ Java ๋ฒ์ ์ด 17์ธ์ง ํ์ธํ๋ค. Eclipse ๋๋ IntelliJ IDEA์ ๊ฐ์ IDE์์ Java 17๋ก ์คํ๋๋์ง ํ์ธํ๋ค. - ํฐ๋ฏธ๋์์ Mac ๋๋ Linux ์ฌ์ฉ์์ ๊ฒฝ์ฐ
./gradlew clean test
๋ช ๋ น์ ์คํํ๊ณ , Windows ์ฌ์ฉ์์ ๊ฒฝ์ฐgradlew.bat clean test
๋๋./gradlew.bat clean test
๋ช ๋ น์ ์คํํ ๋ ๋ชจ๋ ํ ์คํธ๊ฐ ์๋์ ๊ฐ์ด ํต๊ณผํ๋์ง ํ์ธํ๋ค.
BUILD SUCCESSFUL in 0s
๊ธฐ๋ณธ์ ์ผ๋ก 1๋ถํฐ 9๊น์ง ์๋ก ๋ค๋ฅธ ์๋ก ์ด๋ฃจ์ด์ง 3์๋ฆฌ์ ์๋ฅผ ๋ง์ถ๋ ๊ฒ์์ด๋ค.
- ๊ฐ์ ์๊ฐ ๊ฐ์ ์๋ฆฌ์ ์์ผ๋ฉด ์คํธ๋ผ์ดํฌ, ๋ค๋ฅธ ์๋ฆฌ์ ์์ผ๋ฉด ๋ณผ, ๊ฐ์ ์๊ฐ ์ ํ ์์ผ๋ฉด ๋ซ์ฑ์ด๋ ํํธ๋ฅผ ์ป๊ณ , ๊ทธ ํํธ๋ฅผ ์ด์ฉํด์ ๋จผ์ ์๋๋ฐฉ(์ปดํจํฐ)์ ์๋ฅผ ๋ง์ถ๋ฉด ์น๋ฆฌํ๋ค.
- ์) ์๋๋ฐฉ(์ปดํจํฐ)์ ์๊ฐ 425์ผ ๋
- 123์ ์ ์ํ ๊ฒฝ์ฐ : 1์คํธ๋ผ์ดํฌ
- 456์ ์ ์ํ ๊ฒฝ์ฐ : 1๋ณผ 1์คํธ๋ผ์ดํฌ
- 789๋ฅผ ์ ์ํ ๊ฒฝ์ฐ : ๋ซ์ฑ
- ์) ์๋๋ฐฉ(์ปดํจํฐ)์ ์๊ฐ 425์ผ ๋
- ์ ์ซ์ ์ผ๊ตฌ ๊ฒ์์์ ์๋๋ฐฉ์ ์ญํ ์ ์ปดํจํฐ๊ฐ ํ๋ค. ์ปดํจํฐ๋ 1์์ 9๊น์ง ์๋ก ๋ค๋ฅธ ์์์ ์ 3๊ฐ๋ฅผ ์ ํํ๋ค. ๊ฒ์ ํ๋ ์ด์ด๋ ์ปดํจํฐ๊ฐ ์๊ฐํ๊ณ ์๋ ์๋ก ๋ค๋ฅธ 3๊ฐ์ ์ซ์๋ฅผ ์ ๋ ฅํ๊ณ , ์ปดํจํฐ๋ ์ ๋ ฅํ ์ซ์์ ๋ํ ๊ฒฐ๊ณผ๋ฅผ ์ถ๋ ฅํ๋ค.
- ์ด ๊ฐ์ ๊ณผ์ ์ ๋ฐ๋ณตํด ์ปดํจํฐ๊ฐ ์ ํํ 3๊ฐ์ ์ซ์๋ฅผ ๋ชจ๋ ๋งํ๋ฉด ๊ฒ์์ด ์ข ๋ฃ๋๋ค.
- ๊ฒ์์ ์ข ๋ฃํ ํ ๊ฒ์์ ๋ค์ ์์ํ๊ฑฐ๋ ์์ ํ ์ข ๋ฃํ ์ ์๋ค.
- ์ฌ์ฉ์๊ฐ ์๋ชป๋ ๊ฐ์ ์
๋ ฅํ ๊ฒฝ์ฐ
IllegalArgumentException
์ ๋ฐ์์ํจ ํ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ข ๋ฃ๋์ด์ผ ํ๋ค.
- ์๋ก ๋ค๋ฅธ 3์๋ฆฌ์ ์
- ๊ฒ์์ด ๋๋ ๊ฒฝ์ฐ ์ฌ์์/์ข ๋ฃ๋ฅผ ๊ตฌ๋ถํ๋ 1๊ณผ 2 ์ค ํ๋์ ์
- ์ ๋ ฅํ ์์ ๋ํ ๊ฒฐ๊ณผ๋ฅผ ๋ณผ, ์คํธ๋ผ์ดํฌ ๊ฐ์๋ก ํ์
1๋ณผ 1์คํธ๋ผ์ดํฌ
- ํ๋๋ ์๋ ๊ฒฝ์ฐ
๋ซ์ฑ
- 3๊ฐ์ ์ซ์๋ฅผ ๋ชจ๋ ๋งํ ๊ฒฝ์ฐ
3์คํธ๋ผ์ดํฌ
3๊ฐ์ ์ซ์๋ฅผ ๋ชจ๋ ๋งํ์
จ์ต๋๋ค! ๊ฒ์ ์ข
๋ฃ
- ๊ฒ์ ์์ ๋ฌธ๊ตฌ ์ถ๋ ฅ
์ซ์ ์ผ๊ตฌ ๊ฒ์์ ์์ํฉ๋๋ค.
์ซ์ ์ผ๊ตฌ ๊ฒ์์ ์์ํฉ๋๋ค.
์ซ์๋ฅผ ์
๋ ฅํด์ฃผ์ธ์ : 123
1๋ณผ 1์คํธ๋ผ์ดํฌ
์ซ์๋ฅผ ์
๋ ฅํด์ฃผ์ธ์ : 145
1๋ณผ
์ซ์๋ฅผ ์
๋ ฅํด์ฃผ์ธ์ : 671
2๋ณผ
์ซ์๋ฅผ ์
๋ ฅํด์ฃผ์ธ์ : 216
1์คํธ๋ผ์ดํฌ
์ซ์๋ฅผ ์
๋ ฅํด์ฃผ์ธ์ : 713
3์คํธ๋ผ์ดํฌ
3๊ฐ์ ์ซ์๋ฅผ ๋ชจ๋ ๋งํ์
จ์ต๋๋ค! ๊ฒ์ ์ข
๋ฃ
๊ฒ์์ ์๋ก ์์ํ๋ ค๋ฉด 1, ์ข
๋ฃํ๋ ค๋ฉด 2๋ฅผ ์
๋ ฅํ์ธ์.
1
์ซ์๋ฅผ ์
๋ ฅํด์ฃผ์ธ์ : 123
1๋ณผ
...
- JDK 17 ๋ฒ์ ์์ ์คํ ๊ฐ๋ฅํด์ผ ํ๋ค. JDK 17์์ ์ ์์ ์ผ๋ก ๋์ํ์ง ์์ ๊ฒฝ์ฐ 0์ ์ฒ๋ฆฌํ๋ค.
- ํ๋ก๊ทธ๋จ ์คํ์ ์์์ ์
Application
์main()
์ด๋ค. build.gradle
ํ์ผ์ ๋ณ๊ฒฝํ ์ ์๊ณ , ์ธ๋ถ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ง ์๋๋ค.- Java ์ฝ๋ ์ปจ๋ฒค์ ๊ฐ์ด๋๋ฅผ ์ค์ํ๋ฉฐ ํ๋ก๊ทธ๋๋ฐํ๋ค.
- ํ๋ก๊ทธ๋จ ์ข
๋ฃ ์
System.exit()
๋ฅผ ํธ์ถํ์ง ์๋๋ค. - ํ๋ก๊ทธ๋จ ๊ตฌํ์ด ์๋ฃ๋๋ฉด
ApplicationTest
์ ๋ชจ๋ ํ ์คํธ๊ฐ ์ฑ๊ณตํด์ผ ํ๋ค. ํ ์คํธ๊ฐ ์คํจํ ๊ฒฝ์ฐ 0์ ์ฒ๋ฆฌํ๋ค. - ํ๋ก๊ทธ๋๋ฐ ์๊ตฌ ์ฌํญ์์ ๋ฌ๋ฆฌ ๋ช ์ํ์ง ์๋ ํ ํ์ผ, ํจํค์ง ์ด๋ฆ์ ์์ ํ๊ฑฐ๋ ์ด๋ํ์ง ์๋๋ค.
camp.nextstep.edu.missionutils
์์ ์ ๊ณตํ๋Randoms
๋ฐConsole
API๋ฅผ ์ฌ์ฉํ์ฌ ๊ตฌํํด์ผ ํ๋ค.- Random ๊ฐ ์ถ์ถ์
camp.nextstep.edu.missionutils.Randoms
์pickNumberInRange()
๋ฅผ ํ์ฉํ๋ค. - ์ฌ์ฉ์๊ฐ ์
๋ ฅํ๋ ๊ฐ์
camp.nextstep.edu.missionutils.Console
์readLine()
์ ํ์ฉํ๋ค.
- Random ๊ฐ ์ถ์ถ์
List<Integer> computer = new ArrayList<>();
while (computer.size() < 3) {
int randomNumber = Randoms.pickNumberInRange(1, 9);
if (!computer.contains(randomNumber)) {
computer.add(randomNumber);
}
}
- ๋ฏธ์ ์ java-baseball-6 ์ ์ฅ์๋ฅผ Fork & Cloneํด ์์ํ๋ค.
- ๊ธฐ๋ฅ์ ๊ตฌํํ๊ธฐ ์
docs/README.md
์ ๊ตฌํํ ๊ธฐ๋ฅ ๋ชฉ๋ก์ ์ ๋ฆฌํด ์ถ๊ฐํ๋ค. - ๊ณผ์ ์งํ ๋ฐ ์ ์ถ ๋ฐฉ๋ฒ์ ํ๋ฆฌ์ฝ์ค ๊ณผ์ ์ ์ถ ๋ฌธ์๋ฅผ ์ฐธ๊ณ ํ๋ค.