์ค๋ฌด์ ํ์ํ ์คํ๋ง ๋ถํธ๋ ์ด ๊ฐ์ ํ๋๋ก ๋ชจ๋ ์ ๋ฆฌํด๋๋ฆฝ๋๋ค.
์๋ ํ์ธ์. ์ฌ๋ฌ๋ถ ๋๋์ด ์๋ฐ ๊ณ ๊ธ3ํธ ์๋ฐ ๋ก๋๋งต์ ๋ง์ง๋ง ๊ฐ์๋ฅผ ์คํํ์ต๋๋ค.
๋งํฌ: https://inf.run/iZKKT
๊น์ํ์ ์ค์ ์๋ฐ - ๊ณ ๊ธ 3ํธ, ๋๋ค, ์คํธ๋ฆผ, ํจ์ํ ํ๋ก๊ทธ๋๋ฐ
๊ฐ์ ์๊ฐ: 16์๊ฐ 40๋ถ
๊ฐ์ ์: 97๊ฐ
๊ฐ์ PDF ์๋ฃ: 387 ํ์ด์ง
[๊ฐ์ ์๊ฐ]
๋๋ค, ์คํธ๋ฆผ, ํจ์ํ ํ๋ก๊ทธ๋๋ฐ ๊ฐ์ ์ต์ ์๋ฐ์์ ์์ฃผ ์ฌ์ฉ๋๋ ์๋ก์ด ๋ฌธ๋ฒ๊ณผ ๊ธฐ์ ๋ค์ ํ์ตํฉ๋๋ค.โจ์ด๋ฒ ๊ฐ์๋ฅผ ํตํด ์ฌ๋ฌ๋ถ์ด ๋๋ค, ์คํธ๋ฆผ, ํจ์ํ ํ๋ก๊ทธ๋๋ฐ ๊ฐ์ ๊ธฐ์ ์ ๋จ์ํ ์๋ ๊ฒ์ ๋์ด์ ์ค๋ฌด์ ์ด ๊ธฐ์ ๋ค์ ์ด๋ป๊ฒ ์ ์ฉํด์ผ ํ๋์ง, ๊น์ด์๊ฒ ์ดํดํ๊ณ , ๋ ํ์ฉํ ์ ์๊ฒ ๊ฐ๋ฅด์ณ ๋๋ฆฌ๊ฒ ์ต๋๋ค.
[๊ฐ์ ๋ด์ฉ ์์ฝ]
์ฃผ์ ๊ฐ์ ๋ด์ฉ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
1. ๋๋ค๊ฐ ํ์ํ ์ด์
๊น๋ํ๊ณ ๊ฐ๊ฒฐํ ์ฝ๋๋ฅผ ์ํด, ๊ทธ๋ฆฌ๊ณ ๋ณ๋ ฌ ์ฒ๋ฆฌ์ ๊ฐ์ ๊ณ ๊ธ ๊ธฐ๋ฅ์ ์ฝ๊ฒ ํ์ฉํ๊ธฐ ์ํด ๋๋ค๊ฐ ์ง๊ธ์ ์๋ฐ์์ ์ผ๋ง๋ ์ค์ํ ์ญํ ์ ํ๋์ง ์์๋ด ๋๋ค.
2. ๋๋ค
์ค์ ์ฝ๋ ์์ ๋ฅผ ํตํด ๋๋ค์ ์ ์์ ๋ฌธ๋ฒ, ํ์ฉ ํ์ ๋ฐฐ์ฐ๊ฒ ๋ฉ๋๋ค. ๊ธฐ์กด ๋ฐฉ์๊ณผ ์ด๋ป๊ฒ ๋ค๋ฅธ์ง, ๋ ์ด๋ค ์ ์ด ๋งค๋ ฅ์ ์ธ์ง ๋ช ํํ๊ฒ ์ดํดํ์ค ์ ์์ต๋๋ค.
3. ํจ์ํ ์ธํฐํ์ด์ค
๋๋ค์ ํจ๊ป ์ฐ์ด๋ ํ์ ๊ฐ๋ ์ธ ํจ์ํ ์ธํฐํ์ด์ค!โจํจ์ํ ํ๋ก๊ทธ๋๋ฐ์ด ๊ฐ๋ฅํ ์ด์ ์ ์๋ฐ ํ์ค API์ ๋ด์ฅ๋ ๋ค์ํ ํจ์ํ ์ธํฐํ์ด์ค๋ค์ ๊ฐํธํ๊ฒ ํ์ฉํ๋ ๋ฐฉ๋ฒ์ ์ ํด ๋๋ฆฝ๋๋ค.
4. ๋๋ค ํ์ฉ
์ค๋ฌด ์ฝ๋์์ ๋๋ค๋ฅผ ์ด๋ป๊ฒ ์ ์ฉํ ์ ์์๊น์?โจ๋ฐ๋ณต๋๋ ํจํด๊ณผ ๋ณต์กํ ๋ก์ง์ ๋จ์ํ์ํค๋ ๋๋ค์ ํต์ฌ ํ์ฉ๋ฒ์ ์์ ์ ํจ๊ป ์ตํ๋ด ์๋ค.
5. ๋๋ค vs ์ต๋ช ํด๋์ค
์ด๋ค ์ํฉ์์ ๋๋ค๊ฐ ๋ ํจ์จ์ ์ด๊ณ , ์ด๋ค ๊ฒฝ์ฐ์ ์ต๋ช ํด๋์ค๋ฅผ ์จ์ผ ํ๋์ง ๋น๊ต ๋ถ์ํฉ๋๋ค.
6. ๋ฉ์๋ ์ฐธ์กฐ
์๋ฐ 8๋ถํฐ ์ถ๊ฐ๋ ๋ฉ์๋ ์ฐธ์กฐ ๋ฌธ๋ฒ์ ํจ์ํ ํ๋ก๊ทธ๋๋ฐ์ ๊น๋ํจ์ ํ ๋จ๊ณ ์ ๊ทธ๋ ์ด๋ํด ์ค๋๋ค. ๋ฉ์๋ ์ฐธ์กฐ ๋ฌธ๋ฒ์ด ์ด๋ป๊ฒ ๋์ํ๊ณ , ์ค์ฉ์ ์ธ ํ์ฉ ์์๋ ๋ฌด์์ธ์ง ์๋ ค๋๋ฆฝ๋๋ค.
7. ์คํธ๋ฆผ API1 - ๊ธฐ๋ณธ
์คํธ๋ฆผ API๋ ๋๋ค์ ํจ๊ป ์๋ฐ ์ปฌ๋ ์ ์ ๋ค๋ฃจ๋ ์๋ก์ด ํจ๋ฌ๋ค์์ ๋ณด์ฌ์ค๋๋ค. ์ฒ์ ์ ํ๋ ๋ถ๋ค๋ ์ดํดํ๊ธฐ ์ฝ๊ฒ, ์คํธ๋ฆผ ๊ตฌ์กฐ์ ๊ธฐ๋ณธ ์ฌ์ฉ๋ฒ์ ์๊ธฐ ์ฝ๊ฒ ์ ๋ฆฌํด ๋๋ฆฝ๋๋ค.
8. ์คํธ๋ฆผ API2 - ๊ธฐ๋ฅ
ํํฐ๋ง, ๋งคํ, ์ ๋ ฌ, ๋ฆฌ๋์ค ๋ฑ ์คํธ๋ฆผ์์ ์ ๊ณตํ๋ ํต์ฌ ๊ธฐ๋ฅ๋ค์ ์ฐจ๊ทผ์ฐจ๊ทผ ์ดํด๋ด ๋๋ค. ์ฝ๋๋ฅผ ๋ณด๋ค ๋ ์ง๊ด์ ์ด๊ณ ํจ์ถ์ ์ผ๋ก ์์ฑํ๋ ๋ฐฉ๋ฒ์ ์ตํ ์ ์์ต๋๋ค.
9. ์คํธ๋ฆผ API3 - ์ปฌ๋ ํฐ
ํจ์จ์ ์ธ ๋ฐ์ดํฐ ์์ง๊ณผ ๊ฐ๊ณต์ ์ํด ์คํธ๋ฆผ์์ ํ์ฉํ๋ Collector์ ๊ฐ๋ ์ ํ์ตํฉ๋๋ค. collect(), grouping, partitioning ๋ฑ, ์ค๋ฌด์์ ๊ผญ ํ์ํ ์คํฌ๋ค์ ์ตํ์ค ์ ์์ต๋๋ค.
10. Optional
null ์ฒ๋ฆฌ๋ฅผ ๊น๋ํ๊ฒ ํด๊ฒฐํด ์ฃผ๋ Optional์ ์ ๋๋ก ํ์ฉํด๋ด ์๋ค. isPresent(), orElse(), orElseThrow() ๋ฑ ์ค์ ์์ ์ฆ์ NPE ๋ฌธ์ ๋ฅผ ์๋ฐฉํ ์ ์๋ ๋ค์ํ ๋ฐฉ๋ฒ์ ๋ค๋ฃน๋๋ค.
11. ๋ํดํธ ๋ฉ์๋
์๋ฐ ์ธํฐํ์ด์ค์ ์๋ก์ด ๋ฉด๋ชจ์ธ ๋ํดํธ ๋ฉ์๋๋ฅผ ์ดํด๋ด ๋๋ค.
์ธํฐํ์ด์ค๋ฅผ ํ์ฅํ ๋ ํธํ์ฑ์ ์ ์งํ๋ ๋ฐฉ๋ฒ๊ณผ ํจ๊ป, ์ฌ๋ฐ๋ฅธ ์ฌ์ฉ๋ฒ์ ์์๋ด ๋๋ค.
12. ๋ณ๋ ฌ ์คํธ๋ฆผ
๊ณ ์ฑ๋ฅ์ ์ํ ๋ณ๋ ฌ ์ฒ๋ฆฌ! ForkJoin ํ ๋ถํฐ, ์คํธ๋ฆผ API๋ฅผ ํตํ ๋ฉํฐ์ฝ์ด ํ์ฉ ๋ ธํ์ฐ์ ๋ณ๋ ฌ ์คํธ๋ฆผ์์ ๋ฐ์ํ ์ ์๋ ์ฃผ์์ฌํญ๋ค์ ํจ๊ป ๋ฐฐ์ ๋ณด์ธ์.
13. ํจ์ํ ํ๋ก๊ทธ๋๋ฐ
๋๋ค, ์คํธ๋ฆผ API, Optional ๋ฑ ์๋ฐ 8 ์ดํ๋ก ์ถ๊ฐ๋ ๊ธฐ๋ฅ๋ค์ ๋ชจ๋ ํจ์ํ ํ๋ก๊ทธ๋๋ฐ ํจ๋ฌ๋ค์์ ๋ฐ์ํ๊ณ ์์ต๋๋ค. ๊ฐ์ฒด์งํฅ ์ธ์ด์ ํจ์ํ ํจ๋ฌ๋ค์์ ์กฐํ๋ฅผ ํตํด, ๋ ํจ์จ์ ์ธ ์ฝ๋๋ฅผ ์์ฑํ๋ ๋ฐฉ๋ฒ์ ์๋ ค๋๋ฆฝ๋๋ค.
๊ฐ์ฌํฉ๋๋ค.
์๋ ํ์ธ์. ์ฌ๋ฌ๋ถ ๋๋์ด 2๋ ์ ๊ฑธ์ณ์ ์๋ฐ ๋ก๋๋งต์ ์์ฑํ์ต๋๋ค.
์๋ฐ ๋ก๋๋งต์ ๋ง์ง๋ง ๊ฐ์์ธ ๊น์ํ์ ์ค์ ์๋ฐ - ๊ณ ๊ธ 3ํธ, ๋๋ค, ์คํธ๋ฆผ, ํจ์ํ ํ๋ก๊ทธ๋๋ฐ
์คํ ์ผ์ ์ด 3์ 25์ผ(ํ) ~ 3์ 28(๊ธ) ์ฌ์ด์ ์คํํ๋ ๊ฒ์ผ๋ก ํ์ ๋์์ต๋๋ค.
๊ฐ์ ์๊ฐ: 16์๊ฐ 40๋ถ
๊ฐ์ ์: 97๊ฐ
๊ฐ์ PDF ์๋ฃ: 387 ํ์ด์ง
[๊ฐ์ ์๊ฐ]
๋๋ค, ์คํธ๋ฆผ, ํจ์ํ ํ๋ก๊ทธ๋๋ฐ ๊ฐ์ ์ต์ ์๋ฐ์์ ์์ฃผ ์ฌ์ฉ๋๋ ์๋ก์ด ๋ฌธ๋ฒ๊ณผ ๊ธฐ์ ๋ค์ ํ์ตํฉ๋๋ค.
์ด๋ฒ ๊ฐ์๋ฅผ ํตํด ์ฌ๋ฌ๋ถ์ด ๋๋ค, ์คํธ๋ฆผ, ํจ์ํ ํ๋ก๊ทธ๋๋ฐ ๊ฐ์ ๊ธฐ์ ์ ๋จ์ํ ์๋ ๊ฒ์ ๋์ด์ ์ค๋ฌด์ ์ด ๊ธฐ์ ๋ค์ ์ด๋ป๊ฒ ์ ์ฉํด์ผ ํ๋์ง, ๊น์ด์๊ฒ ์ดํดํ๊ณ , ๋ ํ์ฉํ ์ ์๊ฒ ๊ฐ๋ฅด์ณ ๋๋ฆฌ๊ฒ ์ต๋๋ค.
[๊ฐ์ ๋ด์ฉ ์์ฝ]
์ฃผ์ ๊ฐ์ ๋ด์ฉ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
1. ๋๋ค๊ฐ ํ์ํ ์ด์
๊น๋ํ๊ณ ๊ฐ๊ฒฐํ ์ฝ๋๋ฅผ ์ํด, ๊ทธ๋ฆฌ๊ณ ๋ณ๋ ฌ ์ฒ๋ฆฌ์ ๊ฐ์ ๊ณ ๊ธ ๊ธฐ๋ฅ์ ์ฝ๊ฒ ํ์ฉํ๊ธฐ ์ํด ๋๋ค๊ฐ ์ง๊ธ์ ์๋ฐ์์ ์ผ๋ง๋ ์ค์ํ ์ญํ ์ ํ๋์ง ์์๋ด ๋๋ค.
2. ๋๋ค
์ค์ ์ฝ๋ ์์ ๋ฅผ ํตํด ๋๋ค์ ์ ์์ ๋ฌธ๋ฒ, ํ์ฉ ํ์ ๋ฐฐ์ฐ๊ฒ ๋ฉ๋๋ค. ๊ธฐ์กด ๋ฐฉ์๊ณผ ์ด๋ป๊ฒ ๋ค๋ฅธ์ง, ๋ ์ด๋ค ์ ์ด ๋งค๋ ฅ์ ์ธ์ง ๋ช ํํ๊ฒ ์ดํดํ์ค ์ ์์ต๋๋ค.
3. ํจ์ํ ์ธํฐํ์ด์ค
๋๋ค์ ํจ๊ป ์ฐ์ด๋ ํ์ ๊ฐ๋
์ธ ํจ์ํ ์ธํฐํ์ด์ค!
ํจ์ํ ํ๋ก๊ทธ๋๋ฐ์ด ๊ฐ๋ฅํ ์ด์ ์ ์๋ฐ ํ์ค API์ ๋ด์ฅ๋ ๋ค์ํ ํจ์ํ ์ธํฐํ์ด์ค๋ค์ ๊ฐํธํ๊ฒ ํ์ฉํ๋ ๋ฐฉ๋ฒ์ ์ ํด ๋๋ฆฝ๋๋ค.
4. ๋๋ค ํ์ฉ
์ค๋ฌด ์ฝ๋์์ ๋๋ค๋ฅผ ์ด๋ป๊ฒ ์ ์ฉํ ์ ์์๊น์?
๋ฐ๋ณต๋๋ ํจํด๊ณผ ๋ณต์กํ ๋ก์ง์ ๋จ์ํ์ํค๋ ๋๋ค์ ํต์ฌ ํ์ฉ๋ฒ์ ์์ ์ ํจ๊ป ์ตํ๋ด
์๋ค.
5. ๋๋ค vs ์ต๋ช ํด๋์ค
์ด๋ค ์ํฉ์์ ๋๋ค๊ฐ ๋ ํจ์จ์ ์ด๊ณ , ์ด๋ค ๊ฒฝ์ฐ์ ์ต๋ช ํด๋์ค๋ฅผ ์จ์ผ ํ๋์ง ๋น๊ต ๋ถ์ํฉ๋๋ค.
6. ๋ฉ์๋ ์ฐธ์กฐ
์๋ฐ 8๋ถํฐ ์ถ๊ฐ๋ ๋ฉ์๋ ์ฐธ์กฐ ๋ฌธ๋ฒ์ ํจ์ํ ํ๋ก๊ทธ๋๋ฐ์ ๊น๋ํจ์ ํ ๋จ๊ณ ์ ๊ทธ๋ ์ด๋ํด ์ค๋๋ค. ๋ฉ์๋ ์ฐธ์กฐ ๋ฌธ๋ฒ์ด ์ด๋ป๊ฒ ๋์ํ๊ณ , ์ค์ฉ์ ์ธ ํ์ฉ ์์๋ ๋ฌด์์ธ์ง ์๋ ค๋๋ฆฝ๋๋ค.
7. ์คํธ๋ฆผ API1 - ๊ธฐ๋ณธ
์คํธ๋ฆผ API๋ ๋๋ค์ ํจ๊ป ์๋ฐ ์ปฌ๋ ์ ์ ๋ค๋ฃจ๋ ์๋ก์ด ํจ๋ฌ๋ค์์ ๋ณด์ฌ์ค๋๋ค. ์ฒ์ ์ ํ๋ ๋ถ๋ค๋ ์ดํดํ๊ธฐ ์ฝ๊ฒ, ์คํธ๋ฆผ ๊ตฌ์กฐ์ ๊ธฐ๋ณธ ์ฌ์ฉ๋ฒ์ ์๊ธฐ ์ฝ๊ฒ ์ ๋ฆฌํด ๋๋ฆฝ๋๋ค.
8. ์คํธ๋ฆผ API2 - ๊ธฐ๋ฅ
ํํฐ๋ง, ๋งคํ, ์ ๋ ฌ, ๋ฆฌ๋์ค ๋ฑ ์คํธ๋ฆผ์์ ์ ๊ณตํ๋ ํต์ฌ ๊ธฐ๋ฅ๋ค์ ์ฐจ๊ทผ์ฐจ๊ทผ ์ดํด๋ด ๋๋ค. ์ฝ๋๋ฅผ ๋ณด๋ค ๋ ์ง๊ด์ ์ด๊ณ ํจ์ถ์ ์ผ๋ก ์์ฑํ๋ ๋ฐฉ๋ฒ์ ์ตํ ์ ์์ต๋๋ค.
9. ์คํธ๋ฆผ API3 - ์ปฌ๋ ํฐ
ํจ์จ์ ์ธ ๋ฐ์ดํฐ ์์ง๊ณผ ๊ฐ๊ณต์ ์ํด ์คํธ๋ฆผ์์ ํ์ฉํ๋ Collector์ ๊ฐ๋ ์ ํ์ตํฉ๋๋ค. collect(), grouping, partitioning ๋ฑ, ์ค๋ฌด์์ ๊ผญ ํ์ํ ์คํฌ๋ค์ ์ตํ์ค ์ ์์ต๋๋ค.
10. Optional
null ์ฒ๋ฆฌ๋ฅผ ๊น๋ํ๊ฒ ํด๊ฒฐํด ์ฃผ๋ Optional์ ์ ๋๋ก ํ์ฉํด๋ด ์๋ค. isPresent(), orElse(), orElseThrow() ๋ฑ ์ค์ ์์ ์ฆ์ NPE ๋ฌธ์ ๋ฅผ ์๋ฐฉํ ์ ์๋ ๋ค์ํ ๋ฐฉ๋ฒ์ ๋ค๋ฃน๋๋ค.
11. ๋ํดํธ ๋ฉ์๋
์๋ฐ ์ธํฐํ์ด์ค์ ์๋ก์ด ๋ฉด๋ชจ์ธ ๋ํดํธ ๋ฉ์๋๋ฅผ ์ดํด๋ด ๋๋ค.
์ธํฐํ์ด์ค๋ฅผ ํ์ฅํ ๋ ํธํ์ฑ์ ์ ์งํ๋ ๋ฐฉ๋ฒ๊ณผ ํจ๊ป, ์ฌ๋ฐ๋ฅธ ์ฌ์ฉ๋ฒ์ ์์๋ด ๋๋ค.
12. ๋ณ๋ ฌ ์คํธ๋ฆผ
๊ณ ์ฑ๋ฅ์ ์ํ ๋ณ๋ ฌ ์ฒ๋ฆฌ! ForkJoin ํ ๋ถํฐ, ์คํธ๋ฆผ API๋ฅผ ํตํ ๋ฉํฐ์ฝ์ด ํ์ฉ ๋ ธํ์ฐ์ ๋ณ๋ ฌ ์คํธ๋ฆผ์์ ๋ฐ์ํ ์ ์๋ ์ฃผ์์ฌํญ๋ค์ ํจ๊ป ๋ฐฐ์ ๋ณด์ธ์.
13. ํจ์ํ ํ๋ก๊ทธ๋๋ฐ
๋๋ค, ์คํธ๋ฆผ API, Optional ๋ฑ ์๋ฐ 8 ์ดํ๋ก ์ถ๊ฐ๋ ๊ธฐ๋ฅ๋ค์ ๋ชจ๋ ํจ์ํ ํ๋ก๊ทธ๋๋ฐ ํจ๋ฌ๋ค์์ ๋ฐ์ํ๊ณ ์์ต๋๋ค. ๊ฐ์ฒด์งํฅ ์ธ์ด์ ํจ์ํ ํจ๋ฌ๋ค์์ ์กฐํ๋ฅผ ํตํด, ๋ ํจ์จ์ ์ธ ์ฝ๋๋ฅผ ์์ฑํ๋ ๋ฐฉ๋ฒ์ ์๋ ค๋๋ฆฝ๋๋ค.
[์ ์ฒด ๋ชฉ์ฐจ]
1. ๋๋ค๊ฐ ํ์ํ ์ด์
* ํ๋ก์ ํธ ํ๊ฒฝ ๊ตฌ์ฑ
* ๋๋ค๊ฐ ํ์ํ ์ด์ 1
* ๋๋ค๊ฐ ํ์ํ ์ด์ 2
* ๋๋ค๊ฐ ํ์ํ ์ด์ 3
* ํจ์ vs ๋ฉ์๋
* ๋๋ค ์์
2. ๋๋ค
* ๋๋ค ์ ์
* ํจ์ํ ์ธํฐํ์ด์ค
* ๋๋ค์ ์๊ทธ๋์ฒ
* ๋๋ค์ ์๋ต
* ๋๋ค์ ์ ๋ฌ
* ๊ณ ์ฐจ ํจ์
* ๋ฌธ์ ์ ํ์ด1
* ๋ฌธ์ ์ ํ์ด2
* ๋ฌธ์ ์ ํ์ด3
* ์ ๋ฆฌ
3. ํจ์ํ ์ธํฐํ์ด์ค
* ํจ์ํ ์ธํฐํ์ด์ค์ ์ ๋ค๋ฆญ1
* ํจ์ํ ์ธํฐํ์ด์ค์ ์ ๋ค๋ฆญ2
* ๋๋ค์ ํ๊ฒ ํ์
* ๊ธฐ๋ณธ ํจ์ํ ์ธํฐํ์ด์ค
* ํนํ ํจ์ํ ์ธํฐํ์ด์ค
* ๊ธฐํ ํจ์ํ ์ธํฐํ์ด์ค
* ๋ฌธ์ ์ ํ์ด
* ์ ๋ฆฌ
4. ๋๋ค ํ์ฉ
* ํํฐ ๋ง๋ค๊ธฐ1
* ํํฐ ๋ง๋ค๊ธฐ2
* ๋งต ๋ง๋ค๊ธฐ1
* ๋งต ๋ง๋ค๊ธฐ2
* ํํฐ์ ๋งต ํ์ฉ1
* ํํฐ์ ๋งต ํ์ฉ2
* ์คํธ๋ฆผ ๋ง๋ค๊ธฐ1
* ์คํธ๋ฆผ ๋ง๋ค๊ธฐ2
* ์คํธ๋ฆผ ๋ง๋ค๊ธฐ3
* ์คํธ๋ฆผ ๋ง๋ค๊ธฐ4
* ์ ๋ฆฌ
5. ๋๋ค vs ์ต๋ช ํด๋์ค
* ๋๋ค vs ์ต๋ช
ํด๋์ค1
* ๋๋ค vs ์ต๋ช
ํด๋์ค2
* ์ ๋ฆฌ
6. ๋ฉ์๋ ์ฐธ์กฐ
* ๋ฉ์๋ ์ฐธ์กฐ๊ฐ ํ์ํ ์ด์
* ๋ฉ์๋ ์ฐธ์กฐ1 - ์์
* ๋ฉ์๋ ์ฐธ์กฐ2 - ๋งค๊ฐ๋ณ์1
* ๋ฉ์๋ ์ฐธ์กฐ3 - ์์ ๊ฐ์ฒด์ ์ธ์คํด์ค ๋ฉ์๋ ์ฐธ์กฐ
* ๋ฉ์๋ ์ฐธ์กฐ4 - ํ์ฉ1
* ๋ฉ์๋ ์ฐธ์กฐ5 - ํ์ฉ2
* ๋ฉ์๋ ์ฐธ์กฐ6 - ๋งค๊ฐ๋ณ์2
* ์ ๋ฆฌ
7. ์คํธ๋ฆผ API1 - ๊ธฐ๋ณธ
* ์คํธ๋ฆผ API ์์
* ์คํธ๋ฆผ API๋?
* ํ์ดํ๋ผ์ธ ๊ตฌ์ฑ
* ์ง์ฐ ์ฐ์ฐ
* ์ง์ฐ ์ฐ์ฐ๊ณผ ์ต์ ํ
8. ์คํธ๋ฆผ API2 - ๊ธฐ๋ฅ
* ์คํธ๋ฆผ ์์ฑ
* ์ค๊ฐ ์ฐ์ฐ
* FlatMap
* Optional ๊ฐ๋จ ์ค๋ช
* ์ต์ข
์ฐ์ฐ
* ๊ธฐ๋ณธํ ํนํ ์คํธ๋ฆผ
9. ์คํธ๋ฆผ API3 - ์ปฌ๋ ํฐ
* ์ปฌ๋ ํฐ1
* ์ปฌ๋ ํฐ2
* ๋ค์ด ์คํธ๋ฆผ ์ปฌ๋ ํฐ1
* ๋ค์ด ์คํธ๋ฆผ ์ปฌ๋ ํฐ2
* ์ ๋ฆฌ
10. Optional
* ์ต์
๋์ด ํ์ํ ์ด์
* Optional์ ์์ฑ๊ณผ ๊ฐ ํ๋
* Optional ๊ฐ ์ฒ๋ฆฌ
* ์ฆ์ ํ๊ฐ์ ์ง์ฐ ํ๊ฐ1
* ์ฆ์ ํ๊ฐ์ ์ง์ฐ ํ๊ฐ2
* ์ฆ์ ํ๊ฐ์ ์ง์ฐ ํ๊ฐ3
* orElse() vs orElseGet()
* ์ค์ ํ์ฉ1 - ์ฃผ์ ์ฐพ๊ธฐ
* ์ค์ ํ์ฉ2 - ๋ฐฐ์ก
* ์ต์
๋ - ๋ฒ ์คํธ ํ๋ํฐ์ค
* ์ ๋ฆฌ
11. ๋ํดํธ ๋ฉ์๋
* ๋ํดํธ ๋ฉ์๋๊ฐ ๋ฑ์ฅํ ์ด์
* ๋ํดํธ ๋ฉ์๋ ์๊ฐ
* ๋ํดํธ ๋ฉ์๋์ ์ฌ๋ฐ๋ฅธ ์ฌ์ฉ๋ฒ
* ์ ๋ฆฌ
12. ๋ณ๋ ฌ ์คํธ๋ฆผ
* ๋จ์ผ ์คํธ๋ฆผ
* ์ค๋ ๋ ์ง์ ์ฌ์ฉ
* ์ค๋ ๋ ํ ์ฌ์ฉ
* ForkJoin ํจํด
* ForkJoin ํ๋ ์์ํฌ1 - ์๊ฐ
* ForkJoin ํ๋ ์์ํฌ2 - ์์
ํ์น๊ธฐ
* ์์
ํ์น๊ธฐ ์๊ณ ๋ฆฌ์ฆ
* ForkJoin ํ๋ ์์ํฌ3 - ๊ณต์ฉ ํ
* ์๋ฐ ๋ณ๋ ฌ ์คํธ๋ฆผ
* ๋ณ๋ ฌ ์คํธ๋ฆผ ์ฌ์ฉ์ ์ฃผ์์
* ๋ณ๋์ ํ ์ฌ์ฉ
* ์ ๋ฆฌ
13. ํจ์ํ ํ๋ก๊ทธ๋๋ฐ
* ํ๋ก๊ทธ๋๋ฐ ํจ๋ฌ๋ค์
* ํจ์ํ ํ๋ก๊ทธ๋๋ฐ์ด๋?
* ์๋ฐ์ ํจ์ํ ํ๋ก๊ทธ๋๋ฐ1
* ์๋ฐ์ ํจ์ํ ํ๋ก๊ทธ๋๋ฐ2
* ์๋ฐ์ ํจ์ํ ํ๋ก๊ทธ๋๋ฐ3
* ์ ๋ฆฌ
๊ฐ์ฌํฉ๋๋ค.
์๋ ํ์ธ์. ์ฌ๋ฌ๋ถ^^! ์๋ฐ ๊ณ ๊ธ 2ํธ ๊ฐ์๋ฅผ ๋๋์ด ์คํํ์ต๋๋ค.
๊ฐ์ ๋งํฌ: https://inf.run/puD14
๊น์ํ์ ์ค์ ์๋ฐ - ๊ณ ๊ธ 2ํธ
* ๊ฐ์ ์๊ฐ: 21์๊ฐ 35๋ถ
* ๊ฐ์ ์: 100๊ฐ
* ๊ฐ์ PDF ์๋ฃ: ์ฝ 400์ฅ
[๊ฐ์ ์๊ฐ]
I/O, ๋คํธ์ํฌ, ๋ฆฌํ๋ ์ , ์ ๋ ธํ ์ด์ ์ ๊ธฐ๋ณธ๊ธฐ๋ถํฐ ์ค๋ฌด์ ํ์ํ ๋ ๋ฒจ๊น์ง ์์ ํ ๋ง์คํฐํ๋ ๊ฒ์ ๋ชฉํ๋ก ํฉ๋๋ค.
๊ทธ๋ฆฌ๊ณ ์ด๋ฒ ๊ฐ์๋ ํนํ ์ฝ๋์ ์์ ์ค์ฌ์ ๊ฐ์์ ๋๋ค.
ํ์ผ์ ํตํ ํ์ ๊ด๋ฆฌ, ์ฑํ , ์น ์ ํ๋ฆฌ์ผ์ด์ ์๋ฒ ๊ฐ์ ๋ค์ํ ์์ ๋ฅผ ์ง์ ๋ง๋ค์ด๊ฐ๋ฉด์ - ์๋ฐ ์ด๊ธ, ๊ธฐ๋ณธ, ์ค๊ธ1,2, ๊ณ ๊ธ1 - ๋ฉํฐ์ค๋ ๋๊น์ง ์ง๊ธ๊น์ง ํ์ตํ ๋ด์ฉ์ ๋ชจ๋ ํ์ฉํด๋ด ๋๋ค.
๊ทธ๋์ ์๋ฐ ๋ก๋๋งต์ ํตํด ์ง๊ธ๊น์ง ํ์ตํ ์๋ฐ์ ๋ด์ฉ๋ค์ด ์ค์ ์ด๋ป๊ฒ ํ์ฉ๋๋์ง ์์ ์ฝ๋๋ก ๊น์ด์๊ฒ ๋ฐฐ์ธ ์ ์์ต๋๋ค.
์ ๋ชฉํ๋ ๋จ์ํ ์๋ฐ ๋ฌธ๋ฒ ๊ต์ก์ ๊ทธ์น์ง ์๊ณ , ์ค๋ฌด์์ ํ์ํ ํํํ ์๋ฐ ๊ธฐ๋ณธ๊ธฐ๋ฅผ ๊ฐ์ถ ์ ๋ฅํ ๊ฐ๋ฐ์๋ฅผ ์์ฑํ๋ ๊ฒ์ ๋๋ค.
์ด๋ฅผ ์ํด ์๋ฐ์ ๋ํด ๊น์ด ์๊ณ ์ฒด๊ณ์ ์ธ ์๋ฐ ๋ก๋๋งต์ ์งํํฉ๋๋ค. ๊ธฐ๋ํด์ฃผ์ธ์.
๊ฐ์ฌํฉ๋๋ค.
์๋ ํ์ธ์. ์ฌ๋ฌ๋ถ
๊น์ํ์ ์ค์ ์๋ฐ - ๊ณ ๊ธ 2ํธ, I/O, ๋คํธ์ํฌ, ๋ฆฌํ๋ ์
์คํ ์ผ์ ์ด 10์ 7์ผ(์) ~ 10์ 11(๊ธ) ์ฌ์ด์ ์คํํ๋ ๊ฒ์ผ๋ก ํ์ ๋์์ต๋๋ค.
๊ฐ์ ์๊ฐ: 21์๊ฐ 35๋ถ
๊ฐ์ ์: 100๊ฐ
๊ฐ์ PDF ์๋ฃ: ์ฝ 400์ฅ
[๊ฐ์ ์๊ฐ]
I/O, ๋คํธ์ํฌ, ๋ฆฌํ๋ ์ , ์ ๋ ธํ ์ด์ ์ ๊ธฐ๋ณธ๊ธฐ๋ถํฐ ์ค๋ฌด์ ํ์ํ ๋ ๋ฒจ๊น์ง ์์ ํ ๋ง์คํฐํ๋ ๊ฒ์ ๋ชฉํ๋ก ํฉ๋๋ค.
๊ทธ๋ฆฌ๊ณ ์ด๋ฒ ๊ฐ์๋ ํนํ ์ฝ๋์ ์์ ์ค์ฌ์ ๊ฐ์์ ๋๋ค.
ํ์ผ์ ํตํ ํ์ ๊ด๋ฆฌ, ์ฑํ , ์น ์ ํ๋ฆฌ์ผ์ด์ ์๋ฒ ๊ฐ์ ๋ค์ํ ์์ ๋ฅผ ์ง์ ๋ง๋ค์ด๊ฐ๋ฉด์ - ์๋ฐ ์ด๊ธ, ๊ธฐ๋ณธ, ์ค๊ธ1,2, ๊ณ ๊ธ1 - ๋ฉํฐ์ค๋ ๋๊น์ง ์ง๊ธ๊น์ง ํ์ตํ ๋ด์ฉ์ ๋ชจ๋ ํ์ฉํด๋ด ๋๋ค.
๊ทธ๋์ ์๋ฐ ๋ก๋๋งต์ ํตํด ์ง๊ธ๊น์ง ํ์ตํ ์๋ฐ์ ๋ด์ฉ๋ค์ด ์ค์ ์ด๋ป๊ฒ ํ์ฉ๋๋์ง ์์ ์ฝ๋๋ก ๊น์ด์๊ฒ ๋ฐฐ์ธ ์ ์์ต๋๋ค.
[์ ์ฒด ๋ชฉ์ฐจ]
1. ๋ฌธ์ ์ธ์ฝ๋ฉ
* ํ๋ก์ ํธ ํ๊ฒฝ ๊ตฌ์ฑ
* ์ปดํจํฐ์ ๋ฐ์ดํฐ
* ์ปดํจํฐ์ ๋ฌธ์ ์ธ์ฝ๋ฉ1
* ์ปดํจํฐ์ ๋ฌธ์ ์ธ์ฝ๋ฉ2
* ๋ฌธ์ ์งํฉ ์กฐํ
* ๋ฌธ์ ์ธ์ฝ๋ฉ ์์ 1
* ๋ฌธ์ ์ธ์ฝ๋ฉ ์์ 2
* ์ ๋ฆฌ
2. IO ๊ธฐ๋ณธ1
* ์คํธ๋ฆผ ์์1
* ์คํธ๋ฆผ ์์2
* InputStream, OutputStream
* ํ์ผ ์
์ถ๋ ฅ๊ณผ ์ฑ๋ฅ ์ต์ ํ1 - ํ๋์ฉ ์ฐ๊ธฐ
* ํ์ผ ์
์ถ๋ ฅ๊ณผ ์ฑ๋ฅ ์ต์ ํ2 - ๋ฒํผ ํ์ฉ
* ํ์ผ ์
์ถ๋ ฅ๊ณผ ์ฑ๋ฅ ์ต์ ํ3 - Buffered ์คํธ๋ฆผ ์ฐ๊ธฐ
* ํ์ผ ์
์ถ๋ ฅ๊ณผ ์ฑ๋ฅ ์ต์ ํ4 - Buffered ์คํธ๋ฆผ ์ฝ๊ธฐ
* ํ์ผ ์
์ถ๋ ฅ๊ณผ ์ฑ๋ฅ ์ต์ ํ5 - ํ ๋ฒ์ ์ฐ๊ธฐ
* ์ ๋ฆฌ
3. IO ๊ธฐ๋ณธ2
* ๋ฌธ์ ๋ค๋ฃจ๊ธฐ1 - ์์
* ๋ฌธ์ ๋ค๋ฃจ๊ธฐ2 - ์คํธ๋ฆผ์ ๋ฌธ์๋ก
* ๋ฌธ์ ๋ค๋ฃจ๊ธฐ3 - Reader, Writer
* ๋ฌธ์ ๋ค๋ฃจ๊ธฐ4 - BufferedReader
* ๊ธฐํ ์คํธ๋ฆผ
* ์ ๋ฆฌ
4. IO ํ์ฉ
* ํ์ ๊ด๋ฆฌ ์์ 1 - ๋ฉ๋ชจ๋ฆฌ
* ํ์ ๊ด๋ฆฌ ์์ 2 - ํ์ผ์ ๋ณด๊ด
* ํ์ ๊ด๋ฆฌ ์์ 3 - DataStream
* ํ์ ๊ด๋ฆฌ ์์ 4 - ObjectStream
* XML, JSON, ๋ฐ์ดํฐ๋ฒ ์ด์ค
* ์ ๋ฆฌ
5. File, Files
* File
* Files
* ๊ฒฝ๋ก ํ์
* Files๋ก ๋ฌธ์ ํ์ผ ์ฝ๊ธฐ
* ํ์ผ ๋ณต์ฌ ์ต์ ํ
* ์ ๋ฆฌ
6. ๋คํธ์ํฌ - ๊ธฐ๋ณธ ์ด๋ก
* ํด๋ผ์ด์ธํธ์ ์๋ฒ
* ์ธํฐ๋ท ํต์
* IP(์ธํฐ๋ท ํ๋กํ ์ฝ)
* TCP, UDP
* PORT
* DNS
7. ๋คํธ์ํฌ - ํ๋ก๊ทธ๋จ1
* ๋คํธ์ํฌ ํ๋ก๊ทธ๋จ1 - ์์
* ๋คํธ์ํฌ ํ๋ก๊ทธ๋จ1 - ๋ถ์
* ๋คํธ์ํฌ ํ๋ก๊ทธ๋จ2 - ์์
* ๋คํธ์ํฌ ํ๋ก๊ทธ๋จ2 - ๋ถ์
* ๋คํธ์ํฌ ํ๋ก๊ทธ๋จ3
* ์์ ์ ๋ฆฌ1
* ์์ ์ ๋ฆฌ2
* ์์ ์ ๋ฆฌ3
* ์์ ์ ๋ฆฌ4
8. ๋คํธ์ํฌ - ํ๋ก๊ทธ๋จ2
* ๋คํธ์ํฌ ํ๋ก๊ทธ๋จ4 - ์์ ์ ๋ฆฌ1
* ๋คํธ์ํฌ ํ๋ก๊ทธ๋จ5 - ์์ ์ ๋ฆฌ2
* ๋คํธ์ํฌ ํ๋ก๊ทธ๋จ6 - ์์ ์ ๋ฆฌ3
* ๋คํธ์ํฌ ํ๋ก๊ทธ๋จ6 - ์์ ์ ๋ฆฌ4
* ๋คํธ์ํฌ ์์ธ1 - ์ฐ๊ฒฐ ์์ธ
* ๋คํธ์ํฌ ์์ธ2 - ํ์์์
* ๋คํธ์ํฌ ์์ธ3 - ์ ์ ์ข
๋ฃ
* ๋คํธ์ํฌ ์์ธ4 - ๊ฐ์ ์ข
๋ฃ
* ์ ๋ฆฌ์ ๋ฌธ์
9. ์ฑํ ํ๋ก๊ทธ๋จ
* ์ฑํ
ํ๋ก๊ทธ๋จ - ์ค๊ณ
* ์ฑํ
ํ๋ก๊ทธ๋จ - ํด๋ผ์ด์ธํธ
* ์ฑํ
ํ๋ก๊ทธ๋จ - ์๋ฒ1
* ์ฑํ
ํ๋ก๊ทธ๋จ - ์๋ฒ2
* ์ฑํ
ํ๋ก๊ทธ๋จ - ์๋ฒ3
* ์ฑํ
ํ๋ก๊ทธ๋จ - ์๋ฒ4
* ์ ๋ฆฌ
10. HTTP - ๊ธฐ๋ณธ ์ด๋ก
* HTTP ๊ธฐ๋ณธ ์ด๋ก
* HTTP ๋ฉ์๋
11. HTTP ์๋ฒ ๋ง๋ค๊ธฐ
* HTTP ์๋ฒ1 - ์์
* HTTP ์๋ฒ2 - ๋์ ์์ฒญ
* HTTP ์๋ฒ3 - ๊ธฐ๋ฅ ์ถ๊ฐ
* URL ์ธ์ฝ๋ฉ
* HTTP ์๋ฒ4 - ์์ฒญ, ์๋ต
* HTTP ์๋ฒ5 - ์ปค๋งจ๋ ํจํด
* ์น ์ ํ๋ฆฌ์ผ์ด์
์๋ฒ์ ์ญ์ฌ
* ์ ๋ฆฌ
12. ๋ฆฌํ๋ ์
* ๋ฆฌํ๋ ์
์ด ํ์ํ ์ด์
* ํด๋์ค์ ๋ฉํ๋ฐ์ดํฐ
* ๋ฉ์๋ ํ์๊ณผ ๋์ ํธ์ถ
* ํ๋ ํ์๊ณผ ๊ฐ ๋ณ๊ฒฝ
* ๋ฆฌํ๋ ์
- ํ์ฉ ์์
* ์์ฑ์ ํ์๊ณผ ๊ฐ์ฒด ์์ฑ
* HTTP ์๋ฒ6 - ๋ฆฌํ๋ ์
์๋ธ๋ฆฟ
* ์ ๋ฆฌ
13. ์ ๋ ธํ ์ด์
* ์ ๋
ธํ
์ด์
์ด ํ์ํ ์ด์
* ์ ๋
ธํ
์ด์
์ ์
* ๋ฉํ ์ ๋
ธํ
์ด์
* ์ ๋
ธํ
์ด์
๊ณผ ์์
* ์ ๋
ธํ
์ด์
ํ์ฉ - ๊ฒ์ฆ๊ธฐ
* ์๋ฐ ๊ธฐ๋ณธ ์ ๋
ธํ
์ด์
* ์ ๋ฆฌ
14. HTTP ์๋ฒ ํ์ฉ
* HTTP ์๋ฒ7 - ์ ๋
ธํ
์ด์
์๋ธ๋ฆฟ1 - ์์
* HTTP ์๋ฒ8 - ์ ๋
ธํ
์ด์
์๋ธ๋ฆฟ2 - ๋์ ๋ฐ์ธ๋ฉ
* HTTP ์๋ฒ9 - ์ ๋
ธํ
์ด์
์๋ธ๋ฆฟ3 - ์ฑ๋ฅ ์ต์ ํ
* HTTP ์๋ฒ ํ์ฉ - ํ์ ๊ด๋ฆฌ ์๋น์ค
* ์ ๋ฆฌ
๊ฐ์ฌํฉ๋๋ค.
์๋
ํ์ธ์. ์ฌ๋ฌ๋ถ^^! ์๋ฐ ๊ณ ๊ธ1ํธ - ๋ฉํฐ์ค๋ ๋์ ๋์์ฑ ๊ฐ์๋ฅผ ๋๋์ด ์คํํ์ต๋๋ค.
์คํ ๊ธฐ๋
์ผ๋ก ์คํ๋ง, JPA๋ฅผ ํฌํจํ ์ ์ ๋ชจ๋ ๊ฐ์๋ฅผ 30% ํ ์ธํฉ๋๋ค^^!
๊ฐ์ ๋งํฌ: https://inf.run/RYNoL
๊น์ํ์ ์ค์ ์๋ฐ - ๊ณ ๊ธ 1ํธ, ๋ฉํฐ์ค๋ ๋์ ๋์์ฑ
* ๊ฐ์ ์๊ฐ: 20์๊ฐ 48๋ถ
* ๊ฐ์ ์: 118๊ฐ
* ๊ฐ์ PDF ์๋ฃ: ์ฝ 500์ฅ
* ๊ทธ๋ฆผ: 270์ฅ
์ด๋ฒ ๊ฐ์๋ ๋ฉํฐ์ค๋ ๋์ ๋์์ฑ์ CS ๊ธฐ๋ณธ๊ธฐ๋ถํฐ ์ค๋ฌด์ ํ์ํ ํ์ฉ ๊ธฐ์ ๊น์ง ์์ ํ ๋ง์คํฐํ๋ ๊ฒ์ ๋ชฉํ๋ก ํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋ณต์กํ ๋ฉํฐ์ค๋ ๋๋ฅผ ์ต๋ํ ์ฝ๊ฒ ์ค๋ช ํ๊ธฐ ์ํด ์ฝ 500์ฅ์ PDF ์๋ฃ์ ๊ทธ ์์ 270์ฅ์ ๊ทธ๋ฆผ์ด ๋ค์ด๊ฐ๋๋ค!
๋จ์ํ ์ค๋ ๋์ ๊ธฐ์ด๋ฅผ ์๋ ๊ฒ์ ๋์ด์, ์ค๋ฌด์ ํ์ํ ์๋ฐ ๋ฉํฐ์ค๋ ๋ ๊ธฐ์ ๊ณผ ๋์์ฑ ๋ฌธ์ ๋ฅผ ์ ๋ง ๊น์ด์๊ฒ ์ ๋๋ก ์ดํดํ๊ณ , ๋ ์ค๋ฌด์์ ์ ๋๋ก ํ์ฉํ ์ ์๊ฒ ๊ฐ๋ฅด์ณ ๋๋ฆฌ๊ฒ ์ต๋๋ค.
์ ๋ชฉํ๋ ๋จ์ํ ์๋ฐ ๋ฌธ๋ฒ ๊ต์ก์ ๊ทธ์น์ง ์๊ณ , ์ค๋ฌด์์ ํ์ํ ํํํ ์๋ฐ ๊ธฐ๋ณธ๊ธฐ๋ฅผ ๊ฐ์ถ ์ ๋ฅํ ๊ฐ๋ฐ์๋ฅผ ์์ฑํ๋ ๊ฒ์ ๋๋ค. ์ด๋ฅผ ์ํด ์๋ฐ์ ๋ํด ๊น์ด ์๊ณ ์ฒด๊ณ์ ์ธ ์๋ฐ ๋ก๋๋งต์ ์งํํฉ๋๋ค. ๊ธฐ๋ํด์ฃผ์ธ์.
์๋
ํ์ธ์. ์ฌ๋ฌ๋ถ
๊น์ํ์ ์ค์ ์๋ฐ - ๊ณ ๊ธ 1ํธ, ๋ฉํฐ์ค๋ ๋์ ๋์์ฑ
์คํ ์ผ์ ์ด 7์ 15์ผ(์)๋ก ํ์ ๋์์ต๋๋ค.
๊น์ํ์ ์ค์ ์๋ฐ - ๊ณ ๊ธ 1ํธ, ๋ฉํฐ์ค๋ ๋์ ๋์์ฑ
* ๊ฐ์ ์๊ฐ: 20์๊ฐ 48๋ถ
* ๊ฐ์ ์: 118๊ฐ
* ๊ฐ์ PDF ์๋ฃ: ์ฝ 500์ฅ
* ๊ทธ๋ฆผ: 270์ฅ
๊ณ ๊ธ1ํธ์ ๋ฉํฐ์ค๋ ๋์ ๋์์ฑ์ CS ๊ธฐ๋ณธ๊ธฐ๋ถํฐ ์ค๋ฌด์ ํ์ํ ํ์ฉ ๊ธฐ์ ๊น์ง ์์ ํ ๋ง์คํฐํ๋ ๊ฒ์ ๋ชฉํ๋ก ํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋ณต์กํ ๋ฉํฐ์ค๋ ๋๋ฅผ ์ต๋ํ ์ฝ๊ฒ ์ค๋ช ํ๊ธฐ ์ํด ๋ฌด๋ ค 270์ฅ์ ๊ทธ๋ฆผ์ด ๋ค์ด๊ฐ๋๋ค!
[์์ผ๋ก์ ๊ณํ]
๊ณ ๊ธํธ์ 1,2,3ํธ์ผ๋ก ๋๋์ด ์ถ์๋ ์์ ์
๋๋ค.
* ๊ณ ๊ธ 1ํธ: ๋ฉํฐ์ค๋ ๋์ ๋์์ฑ (7/15)
* ๊ณ ๊ธ 2ํธ: I/O, ๋คํธ์ํฌ, ๋ฆฌํ๋ ์
, ์ ๋
ธํ
์ด์
(10์ ์ค ์์ )
* ๊ณ ๊ธ 3ํธ: ๋๋ค, ์คํธ๋ฆผ, ๋ชจ๋ ์๋ฐ (12์ ์ค ์์ )
[๊ฐ์ ์๊ฐ]
๊น์ํ์ ์ค์ ์๋ฐ - ๊ณ ๊ธ 1ํธ, ๋ฉํฐ์ค๋ ๋์ ๋์์ฑ
๊ฐ์ ๋ชฉํ
๋จ์ํ ์ค๋ ๋์ ๊ธฐ์ด๋ฅผ ์๋ ๊ฒ์ ๋์ด์, ์ค๋ฌด์ ํ์ํ ์๋ฐ ๋ฉํฐ์ค๋ ๋ ๊ธฐ์ ๊ณผ ๋์์ฑ ๋ฌธ์ ๋ฅผ ์ ๋ง ๊น์ด์๊ฒ ์ ๋๋ก ์ดํดํ๊ณ , ๋ ์ค๋ฌด์์ ์ ๋๋ก ํ์ฉํ ์ ์๊ฒ ๊ฐ๋ฅด์ณ ๋๋ฆฌ๊ฒ ์ต๋๋ค.
๊ฐ์ ๋ด์ฉ
๊ธฐ๋ฐ์ ๋ค์ง๋ CS ์ด๋ก ํ์ต
* ํ๋ก์ธ์ค์ ์ค๋ ๋
* ๋ฉํฐํ์คํน
* ์ค์ผ์ค๋ง2
์ค๋ ๋์ ๊ธฐ๋ณธ๊ธฐ
* ์ค๋ ๋ ์ ์ด
* ์ค๋ ๋ ์๋ช
์ฃผ๊ธฐ
* ๋ฉ๋ชจ๋ฆฌ ๊ฐ์์ฑ, volatile
* synchronized ๋๊ธฐํ
* ReentrantLock - ๊ณ ๊ธ ๋๊ธฐํ
* ์ค๋ ๋ ์ ์ด - ๋ค์ํ ์์
์ค๋ ๋์ ๊ณ ๊ธ ๊ธฐ์ ๋ค
* ์์ฐ์ ์๋น์ ๋ฌธ์
* CAS
* ๋๊ธฐํ ์ปฌ๋ ์
์ค๋ฌด์์ ์ฌ์ฉํ๋ ๋ฉํฐ์ค๋ ๋ ์ค์ ๊ธฐ์ ๋ค
* Future์ ์๋ ์๋ฆฌ
* ์ค๋ ๋ ํ๊ณผ Executor ํ๋ ์์ํฌ - ์๋ฆฌ
* ์ค๋ ๋ ํ๊ณผ Executor ํ๋ ์์ํฌ - ์ค์ ํ์ฉ
[๊ฐ์ ์ ์ฒด ๋ชฉ์ฐจ]
1. ํ๋ก์ธ์ค์ ์ค๋ ๋ ์๊ฐ
* ๋ฉํฐํ์คํน๊ณผ ๋ฉํฐํ๋ก์ธ์ฑ
* ํ๋ก์ธ์ค์ ์ค๋ ๋
* ์ค๋ ๋์ ์ค์ผ์ค๋ง
* ์ปจํ
์คํธ ์ค์์นญ
2. ์ค๋ ๋ ์์ฑ๊ณผ ์คํ
* ํ๋ก์ ํธ ํ๊ฒฝ ๊ตฌ์ฑ
* ์ค๋ ๋ ์์1
* ์ค๋ ๋ ์์2
* ๋ฐ๋ชฌ ์ค๋ ๋
* ์ค๋ ๋ ์์ฑ - Runnable
* ๋ก๊ฑฐ ๋ง๋ค๊ธฐ
* ์ฌ๋ฌ ์ค๋ ๋ ๋ง๋ค๊ธฐ
* Runnable์ ๋ง๋๋ ๋ค์ํ ๋ฐฉ๋ฒ
* ๋ฌธ์ ์ ํ์ด
* ์ ๋ฆฌ
3. ์ค๋ ๋ ์ ์ด์ ์๋ช
์ฃผ๊ธฐ1
* ์ค๋ ๋ ๊ธฐ๋ณธ ์ ๋ณด
* ์ค๋ ๋์ ์๋ช
์ฃผ๊ธฐ - ์ค๋ช
* ์ค๋ ๋์ ์๋ช
์ฃผ๊ธฐ - ์ฝ๋
* ์ฒดํฌ ์์ธ ์ฌ์ ์
* join - ์์
* join - ํ์ํ ์ํฉ
* join - sleep ์ฌ์ฉ
* join - join ์ฌ์ฉ
* join - ํน์ ์๊ฐ ๋งํผ๋ง ๋๊ธฐ
* ๋ฌธ์ ์ ํ์ด
4. ์ค๋ ๋ ์ ์ด์ ์๋ช
์ฃผ๊ธฐ2
* ์ธํฐ๋ฝํธ - ์์1
* ์ธํฐ๋ฝํธ - ์์2
* ์ธํฐ๋ฝํธ - ์์3
* ์ธํฐ๋ฝํธ - ์์4
* ํ๋ฆฐํฐ ์์ 1 - ์์
* ํ๋ฆฐํฐ ์์ 2 - ์ธํฐ๋ฝํธ ๋์
* ํ๋ฆฐํฐ ์์ 3 - ์ธํฐ๋ฝํธ ์ฝ๋ ๊ฐ์
* yield - ์๋ณดํ๊ธฐ
* ํ๋ฆฐํฐ ์์ 4 - yield ๋์
* ์ ๋ฆฌ
5. ๋ฉ๋ชจ๋ฆฌ ๊ฐ์์ฑ
* volatile, ๋ฉ๋ชจ๋ฆฌ ๊ฐ์์ฑ1
* volatile, ๋ฉ๋ชจ๋ฆฌ ๊ฐ์์ฑ2
* volatile, ๋ฉ๋ชจ๋ฆฌ ๊ฐ์์ฑ3
* volatile, ๋ฉ๋ชจ๋ฆฌ ๊ฐ์์ฑ4
* ์๋ฐ ๋ฉ๋ชจ๋ฆฌ ๋ชจ๋ธ(Java Memory Model)
* ์ ๋ฆฌ
6. ๋๊ธฐํ - synchronized
* ์ถ๊ธ ์์ - ์์
* ๋์์ฑ ๋ฌธ์
* ์๊ณ ์์ญ
* synchronized ๋ฉ์๋
* synchronized ์ฝ๋ ๋ธ๋ญ
* ๋ฌธ์ ์ ํ์ด
* ์ ๋ฆฌ
7. ๊ณ ๊ธ ๋๊ธฐํ - concurrent.Lock
* LockSupport1
* LockSupport2
* ReentrantLock - ์ด๋ก
* ReentrantLock - ํ์ฉ
* ReentrantLock - ๋๊ธฐ ์ค๋จ
* ์ ๋ฆฌ
8. ์์ฐ์ ์๋น์ ๋ฌธ์ 1
* ์์ฐ์ ์๋น์ ๋ฌธ์ - ์๊ฐ
* ์์ฐ์ ์๋น์ ๋ฌธ์ - ์์ 1 ์ฝ๋
* ์์ฐ์ ์๋น์ ๋ฌธ์ - ์์ 1 ๋ถ์ - ์์ฐ์ ์ฐ์
* ์์ฐ์ ์๋น์ ๋ฌธ์ - ์์ 1 ๋ถ์ - ์๋น์ ์ฐ์
* ์์ฐ์ ์๋น์ ๋ฌธ์ - ์์ 2 ์ฝ๋
* ์์ฐ์ ์๋น์ ๋ฌธ์ - ์์ 2 ๋ถ์
* Object - wait, notify - ์์ 3 ์ฝ๋
* Object - wait, notify - ์์ 3 ๋ถ์ - ์์ฐ์ ์ฐ์
* Object - wait, notify - ์์ 3 ๋ถ์ - ์๋น์ ์ฐ์
* Object - wait, notify - ํ๊ณ
* ์ ๋ฆฌ
9. ์์ฐ์ ์๋น์ ๋ฌธ์ 2
* Lock Condition - ์์ 4
* ์์ฐ์ ์๋น์ ๋๊ธฐ ๊ณต๊ฐ ๋ถ๋ฆฌ - ์์ 5 ์ฝ๋
* ์์ฐ์ ์๋น์ ๋๊ธฐ ๊ณต๊ฐ ๋ถ๋ฆฌ - ์์ 5 ๋ถ์
* ์ค๋ ๋์ ๋๊ธฐ
* ์ค๊ฐ ์ ๋ฆฌ - ์์ฐ์ ์๋น์ ๋ฌธ์
* BlockingQueue - ์์ 6
* BlockingQueue - ๊ธฐ๋ฅ ์ค๋ช
* BlockingQueue - ๊ธฐ๋ฅ ํ์ธ
* ์ ๋ฆฌ
10. CAS - ๋๊ธฐํ์ ์์์ ์ฐ์ฐ
* ์์์ ์ฐ์ฐ - ์๊ฐ
* ์์์ ์ฐ์ฐ - ์์
* ์์์ ์ฐ์ฐ - volatile, synchronized
* ์์์ ์ฐ์ฐ - AtomicInteger
* ์์์ ์ฐ์ฐ - ์ฑ๋ฅ ํ
์คํธ
* CAS ์ฐ์ฐ1
* CAS ์ฐ์ฐ2
* CAS ์ฐ์ฐ3
* CAS ๋ฝ ๊ตฌํ1
* CAS ๋ฝ ๊ตฌํ2
* ์ ๋ฆฌ
11. ๋์์ฑ ์ปฌ๋ ์
* ๋์์ฑ ์ปฌ๋ ์
์ด ํ์ํ ์ด์ 1 - ์์
* ๋์์ฑ ์ปฌ๋ ์
์ด ํ์ํ ์ด์ 2 - ๋์์ฑ ๋ฌธ์
* ๋์์ฑ ์ปฌ๋ ์
์ด ํ์ํ ์ด์ 3 - ๋๊ธฐํ
* ๋์์ฑ ์ปฌ๋ ์
์ด ํ์ํ ์ด์ 4 - ํ๋ก์ ๋์
* ์๋ฐ ๋์์ฑ ์ปฌ๋ ์
1 - synchronized
* ์๋ฐ ๋์์ฑ ์ปฌ๋ ์
2 - ๋์์ฑ ์ปฌ๋ ์
* ์ ๋ฆฌ
12. ์ค๋ ๋ ํ๊ณผ Executor ํ๋ ์์ํฌ1
* ์ค๋ ๋๋ฅผ ์ง์ ์ฌ์ฉํ ๋์ ๋ฌธ์ ์
* Executor ํ๋ ์์ํฌ ์๊ฐ
* ExecutorService ์ฝ๋๋ก ์์ํ๊ธฐ
* Runnable์ ๋ถํธํจ
* Future1 - ์๊ฐ
* Future2 - ๋ถ์
* Future3 - ํ์ฉ
* Future4 - ์ด์
* Future5 - ์ ๋ฆฌ
* Future6 - ์ทจ์
* Future7 - ์์ธ
* ExecutorService - ์์
์ปฌ๋ ์
์ฒ๋ฆฌ
* ๋ฌธ์ ์ ํ์ด
* ์ ๋ฆฌ
13. ์ค๋ ๋ ํ๊ณผ Executor ํ๋ ์์ํฌ2
* ExecutorService ์ฐ์ํ ์ข
๋ฃ - ์๊ฐ
* ExecutorService ์ฐ์ํ ์ข
๋ฃ - ๊ตฌํ
* Executor ์ค๋ ๋ ํ ๊ด๋ฆฌ - ์ฝ๋
* Executor ์ค๋ ๋ ํ ๊ด๋ฆฌ - ๋ถ์
* Executor ์ ๋ต - ๊ณ ์ ํ ์ ๋ต
* Executor ์ ๋ต - ์บ์ ํ ์ ๋ต
* Executor ์ ๋ต - ์ฌ์ฉ์ ์ ์ ํ ์ ๋ต
* Executor ์์ธ ์ ์ฑ
* ์ ๋ฆฌ
๊ฐ์ฌํฉ๋๋ค.
์๋
ํ์ธ์. ์ฌ๋ฌ๋ถ^^! ์๋ฐ ์ค๊ธ 2ํธ ๊ฐ์๋ฅผ ๋๋์ด ์คํํ์ต๋๋ค.
์คํ ๊ธฐ๋
์ผ๋ก ์คํ๋ง, JPA๋ฅผ ํฌํจํ ์ ์ ๋ชจ๋ ๊ฐ์๋ฅผ 30% ํ ์ธํฉ๋๋ค^^!
๊ฐ์ ๋งํฌ: https://inf.run/NevkE
๊น์ํ์ ์ค์ ์๋ฐ ์ค๊ธ 2ํธ - ์ ๋ค๋ฆญ๊ณผ ์ปฌ๋ ์
* ๊ฐ์ ์๊ฐ: 19์๊ฐ 24๋ถ
* ๊ฐ์ ์: ์ฝ 90๊ฐ
* ๊ฐ์ PDF ์๋ฃ: 355์ฅ
์ด๋ฒ ๊ฐ์์์๋ ์ค๋ฌด์ ํ์ํ ์ ๋ค๋ฆญ, ์๋ฃ๊ตฌ์กฐ, ์ปฌ๋ ์ ํ๋ ์์ํฌ๋ฅผ ๊น์ด์๊ฒ ๋ค๋ฃน๋๋ค.
ํนํ ์ปฌ๋ ์ ์ ์ฐ์ด๋ ๋ค์ํ ์๋ฃ ๊ตฌ์กฐ๋ฅผ ์ง์ ๊ตฌํํ๋ฉด์ ์๋ฆฌ๋ฅผ ๊น์ด ์๊ฒ ์ดํดํฉ๋๋ค. ๊ทธ๋์ ๊ฐ๊ฐ์ ์๋ฃ ๊ตฌ์กฐ๊ฐ ์ด๋ค ๊ฒฝ์ฐ์ ์ฑ๋ฅ์ด ์ข๊ณ , ์ด๋ค ๊ฒฝ์ฐ์ ์ฑ๋ฅ์ด ๋์์ง ๊ทผ๋ณธ์ ์ธ ์ด์ ๋ฅผ ์ ๋๋ก ์ดํดํ๊ณ ์ค๋ฌด์์ ํ์ฉํ ์ ์๊ฒ ๋ฉ๋๋ค.
์ ๋ชฉํ๋ ๋จ์ํ ์๋ฐ ๋ฌธ๋ฒ ๊ต์ก์ ๊ทธ์น์ง ์๊ณ , ์ค๋ฌด์์ ํ์ํ ํํํ ์๋ฐ ๊ธฐ๋ณธ๊ธฐ๋ฅผ ๊ฐ์ถ ์ ๋ฅํ ๊ฐ๋ฐ์๋ฅผ ์์ฑํ๋ ๊ฒ์ ๋๋ค. ์ด๋ฅผ ์ํด ์๋ฐ์ ๋ํด ๊น์ด ์๊ณ ์ฒด๊ณ์ ์ธ ์๋ฐ ๋ก๋๋งต์ ์งํํฉ๋๋ค. ๊ธฐ๋ํด์ฃผ์ธ์.
์๋
ํ์ธ์. ์ฌ๋ฌ๋ถ
๊น์ํ์ ์ค์ ์๋ฐ ์ค๊ธ 2ํธ - ์ ๋ค๋ฆญ๊ณผ ์ปฌ๋ ์
์คํ ์ผ์ ์ด 5์ 8์ผ(์)๋ก ํ์ ๋์์ต๋๋ค.
๊น์ํ์ ์ค์ ์๋ฐ - ์ค๊ธ 2ํธ ์ ๋ค๋ฆญ๊ณผ ์ปฌ๋ ์
* ๊ฐ์ ์๊ฐ: 19์๊ฐ 24๋ถ
* ๊ฐ์ ์: ์ฝ 90๊ฐ
* ๊ฐ์ PDF ์๋ฃ: 355์ฅ
[์๋ฐ ์ค๊ธ 2ํธ ๊ฐ์ ๋ด์ฉ]
[์ ๋ค๋ฆญ]
์๋ฐ(Java)์์ ์ ๋ค๋ฆญ์ ์ ๋๋ก ์ดํดํ๋ ๊ฒ์ ์ฐธ ์ด๋ ต์ต๋๋ค.
์ด ๊ฐ์์์๋ ์ ๋ค๋ฆญ์ ์ต๋ํ ์ฝ๊ฒ ์ค๋ช
ํ๊ธฐ ์ํด ๋จผ์ ์ ๋ค๋ฆญ์ ์ ํ ์ฌ์ฉํ์ง ์๊ณ ์ฝ๋๋ฅผ ์์ฑํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ด๋ฐ ์ฝ๋์ ์ ๋ค๋ฆญ์ ์ ์ง์ ์ผ๋ก ๋์
ํ๋ฉด์ ๊ธฐ์กด ๋ฐฉ์์ผ๋ก๋ ํด๊ฒฐ์ด ์ด๋ ค์ด ์ฝ๋ ์ค๋ณต์ ์ ๋ค๋ฆญ์ด ์ด๋ป๊ฒ ํด๊ฒฐํ๋์ง ์์ฐ์ค๋ฝ๊ฒ ์ดํดํ ์ ์์ต๋๋ค.
[์๋ฃ ๊ตฌ์กฐ์ ์ดํด]
์ด ๊ฐ์๋ ์๋ฃ ๊ตฌ์กฐ๋ฅผ ์ ๋๋ก ์ดํดํ ์ ์๋๋ก ์๋ฃ ๊ตฌ์กฐ์ ๊ธฐ์ด ์ด๋ก ์ ์ค๋ช
ํ๊ณ , ๋ ์ค๋ฌด์์ ์์ฃผ ์ฌ์ฉํ๋ ํต์ฌ ์๋ฃ ๊ตฌ์กฐ๋ค์ ์ฝ๋๋ก ์ง์ ๊ตฌํํด๋ด
๋๋ค.
* ๋ฐฐ์ด ๋ฆฌ์คํธ (ArrayList)
* ์ฐ๊ฒฐ ๋ฆฌ์คํธ (LinkedList)
* ํด์ ๊ตฌ์กฐ (Hash)
* ํด์ ์๊ณ ๋ฆฌ์ฆ๊ณผ ํด์ ํ
์ด๋ธ (Hash)
* ํธ๋ฆฌ ๊ตฌ์กฐ (Tree)
* ์ธํธ(์
)์ ๋งต ๊ตฌ์กฐ (Set, Map)
* ์คํ๊ณผ ํ ๊ตฌ์กฐ (Stack, Queue)
[์ปฌ๋ ์
ํ๋ ์์ํฌ]
์๋ฐ์ ์ปฌ๋ ์
ํ๋ ์์ํฌ๋ ์๋ฃ ๊ตฌ์กฐ์ ๋ชจ์์
๋๋ค.
์ค๋ฌด์์ ์๋ฃ ๊ตฌ์กฐ๋ ์ ๋ง ์์ฃผ ์ฐ์ด๊ณ ์ฑ๋ฅ ๋ฌธ์ ์๋ ์ง๊ฒฐ๋๋ ๋งํผ ์๋ฃ ๊ตฌ์กฐ๋ฅผ ์ ๋๋ก ์ดํดํ๊ณ ์ฌ์ฉํ๋ ๊ฒ์ด ์ ๋ง ์ค์ํฉ๋๋ค.
์ด ๊ฐ์์์๋ ์ปฌ๋ ์
์ ์ฐ์ด๋ ๋ค์ํ ์๋ฃ ๊ตฌ์กฐ๋ฅผ ์ง์ ๊ตฌํํ๋ฉด์ ์๋ฆฌ๋ฅผ ๊น์ด ์๊ฒ ์ดํดํฉ๋๋ค. ๊ทธ๋์ ๊ฐ๊ฐ์ ์๋ฃ ๊ตฌ์กฐ๊ฐ ์ด๋ค ๊ฒฝ์ฐ์ ์ฑ๋ฅ์ด ์ข๊ณ , ์ด๋ค ๊ฒฝ์ฐ์ ์ฑ๋ฅ์ด ๋์์ง ๊ทผ๋ณธ์ ์ธ ์ด์ ๋ฅผ ์ ๋๋ก ์ดํดํ๊ณ ์ค๋ฌด์์ ํ์ฉํ ์ ์๊ฒ ๋ฉ๋๋ค.
๊ฐ ์ฑํฐ์์๋ ๋ค์ํ ์๋ฃ ๊ตฌ์กฐ๋ฅผ ์ด๋ก ๊ณผ ์ค์ ๊ตฌํ์ ํตํด ํ์ตํฉ๋๋ค. ์ด๋ ๊ฒ ํด์ ์๋ฐ ์ปฌ๋ ์
ํ๋ ์์ํฌ ์ ๋ฐ์ ์์ฑํ๊ณ , ๋ ์ด๋ค ์๋ฃ ๊ตฌ์กฐ๋ฅผ ์ด๋์ ์ฌ์ฉํด์ผ ํ ์ง ์ ๋๋ก ์ดํดํ ์ ์๊ฒ ๋ฉ๋๋ค.
[๊ฐ์ ์ ์ฒด ๋ชฉ์ฐจ]
1. ์ ๋ค๋ฆญ - Generic1
* ํ๋ก์ ํธ ํ๊ฒฝ ๊ตฌ์ฑ
* ์ ๋ค๋ฆญ์ด ํ์ํ ์ด์
* ๋คํ์ฑ์ ํตํ ์ค๋ณต ํด๊ฒฐ ์๋
* ์ ๋ค๋ฆญ ์ ์ฉ
* ์ ๋ค๋ฆญ ์ฉ์ด์ ๊ด๋ก
* ์ ๋ค๋ฆญ ํ์ฉ ์์
* ๋ฌธ์ ์ ํ์ด1
2. ์ ๋ค๋ฆญ - Generic2
* ํ์ ๋งค๊ฐ๋ณ์ ์ ํ1 - ์์
* ํ์ ๋งค๊ฐ๋ณ์ ์ ํ2 - ๋คํ์ฑ ์๋
* ํ์ ๋งค๊ฐ๋ณ์ ์ ํ3 - ์ ๋ค๋ฆญ ๋์ ๊ณผ ์คํจ
* ํ์ ๋งค๊ฐ๋ณ์ ์ ํ4 - ํ์ ๋งค๊ฐ๋ณ์ ์ ํ
* ์ ๋ค๋ฆญ ๋ฉ์๋
* ์ ๋ค๋ฆญ ๋ฉ์๋ ํ์ฉ
* ์์ผ๋์นด๋1
* ์์ผ๋์นด๋2
* ํ์ ์ด๋ ์ด์
* ๋ฌธ์ ์ ํ์ด2
* ์ ๋ฆฌ
3. ์ปฌ๋ ์ ํ๋ ์์ํฌ - ArrayList
* ๋ฐฐ์ด์ ํน์ง1 - ๋ฐฐ์ด๊ณผ ์ธ๋ฑ์ค
* ๋น ์ค(O) ํ๊ธฐ๋ฒ
* ๋ฐฐ์ด์ ํน์ง2 - ๋ฐ์ดํฐ ์ถ๊ฐ
* ์ง์ ๊ตฌํํ๋ ๋ฐฐ์ด ๋ฆฌ์คํธ1 - ์์
* ์ง์ ๊ตฌํํ๋ ๋ฐฐ์ด ๋ฆฌ์คํธ2 - ๋์ ๋ฐฐ์ด
* ์ง์ ๊ตฌํํ๋ ๋ฐฐ์ด ๋ฆฌ์คํธ3 - ๊ธฐ๋ฅ ์ถ๊ฐ
* ์ง์ ๊ตฌํํ๋ ๋ฐฐ์ด ๋ฆฌ์คํธ4 - ์ ๋ค๋ฆญ1
* ์ง์ ๊ตฌํํ๋ ๋ฐฐ์ด ๋ฆฌ์คํธ5 - ์ ๋ค๋ฆญ2
* ์ ๋ฆฌ
4. ์ปฌ๋ ์ ํ๋ ์์ํฌ - LinkedList
* ๋ ธ๋์ ์ฐ๊ฒฐ1
* ๋ ธ๋์ ์ฐ๊ฒฐ2
* ๋ ธ๋์ ์ฐ๊ฒฐ3
* ์ง์ ๊ตฌํํ๋ ์ฐ๊ฒฐ ๋ฆฌ์คํธ1 - ์์
* ์ง์ ๊ตฌํํ๋ ์ฐ๊ฒฐ ๋ฆฌ์คํธ2 - ์ถ๊ฐ์ ์ญ์ 1
* ์ง์ ๊ตฌํํ๋ ์ฐ๊ฒฐ ๋ฆฌ์คํธ3 - ์ถ๊ฐ์ ์ญ์ 2
* ์ง์ ๊ตฌํํ๋ ์ฐ๊ฒฐ ๋ฆฌ์คํธ4 - ์ ๋ค๋ฆญ ๋์
* ์ ๋ฆฌ
5. ์ปฌ๋ ์ ํ๋ ์์ํฌ - List
* ๋ฆฌ์คํธ ์ถ์ํ1 - ์ธํฐํ์ด์ค ๋์
* ๋ฆฌ์คํธ ์ถ์ํ2 - ์์กด๊ด๊ณ ์ฃผ์
* ๋ฆฌ์คํธ ์ถ์ํ3 - ์ปดํ์ผ ํ์, ๋ฐํ์ ์์กด๊ด๊ณ
* ์ง์ ๊ตฌํํ ๋ฆฌ์คํธ์ ์ฑ๋ฅ ๋น๊ต
* ์๋ฐ ๋ฆฌ์คํธ
* ์๋ฐ ๋ฆฌ์คํธ์ ์ฑ๋ฅ ๋น๊ต
* ๋ฌธ์ ์ ํ์ด1
* ๋ฌธ์ ์ ํ์ด2
* ์ ๋ฆฌ
6. ์ปฌ๋ ์ ํ๋ ์์ํฌ - ํด์(Hash)
* ๋ฆฌ์คํธ(List) vs ์ธํธ(Set)
* ์ง์ ๊ตฌํํ๋ Set0 - ์์
* ํด์ ์๊ณ ๋ฆฌ์ฆ1 - ์์
* ํด์ ์๊ณ ๋ฆฌ์ฆ2 - index ์ฌ์ฉ
* ํด์ ์๊ณ ๋ฆฌ์ฆ3 - ๋ฉ๋ชจ๋ฆฌ ๋ญ๋น
* ํด์ ์๊ณ ๋ฆฌ์ฆ4 - ๋๋จธ์ง ์ฐ์ฐ
* ํด์ ์๊ณ ๋ฆฌ์ฆ5 - ํด์ ์ถฉ๋ ์ค๋ช
* ํด์ ์๊ณ ๋ฆฌ์ฆ6 - ํด์ ์ถฉ๋ ๊ตฌํ
7. ์ปฌ๋ ์ ํ๋ ์์ํฌ - HashSet
* ์ง์ ๊ตฌํํ๋ Set1 - MyHashSetV1
* ๋ฌธ์์ด ํด์ ์ฝ๋
* ์๋ฐ์ hashCode()
* ์ง์ ๊ตฌํํ๋ Set2 - MyHashSetV2
* ์ง์ ๊ตฌํํ๋ Set3 - ์ง์ ๋ง๋ ๊ฐ์ฒด ๋ณด๊ด
* equals, hashCode์ ์ค์์ฑ1
* equals, hashCode์ ์ค์์ฑ2
* ์ง์ ๊ตฌํํ๋ Set4 - ์ ๋ค๋ฆญ๊ณผ ์ธํฐํ์ด์ค ๋์
8. ์ปฌ๋ ์ ํ๋ ์์ํฌ - Set
* ์๋ฐ๊ฐ ์ ๊ณตํ๋ Set1 - HashSet, LinkedHashSet
* ์๋ฐ๊ฐ ์ ๊ณตํ๋ Set2 - TreeSet
* ์๋ฐ๊ฐ ์ ๊ณตํ๋ Set3 - ์์
* ์๋ฐ๊ฐ ์ ๊ณตํ๋ Set4 - ์ต์ ํ
* ๋ฌธ์ ์ ํ์ด1
* ๋ฌธ์ ์ ํ์ด2
* ์ ๋ฆฌ
9. ์ปฌ๋ ์ ํ๋ ์์ํฌ - Map, Stack, Queue
* ์ปฌ๋ ์ ํ๋ ์์ํฌ - Map ์๊ฐ1
* ์ปฌ๋ ์ ํ๋ ์์ํฌ - Map ์๊ฐ2
* ์ปฌ๋ ์ ํ๋ ์์ํฌ - Map ๊ตฌํ์ฒด
* ์คํ ์๋ฃ ๊ตฌ์กฐ
* ํ ์๋ฃ ๊ตฌ์กฐ
* Deque ์๋ฃ ๊ตฌ์กฐ
* Deque์ Stack, Queue
* ๋ฌธ์ ์ ํ์ด1 - Map1
* ๋ฌธ์ ์ ํ์ด2 - Map2
* ๋ฌธ์ ์ ํ์ด3 - Stack
* ๋ฌธ์ ์ ํ์ด4 - Queue
* ์ ๋ฆฌ
10. ์ปฌ๋ ์ ํ๋ ์์ํฌ - ์ํ, ์ ๋ ฌ, ์ ์ฒด ์ ๋ฆฌ
* ์ํ1 - ์ง์ ๊ตฌํํ๋ Iterable, Iterator
* ์ํ2 - ํฅ์๋ for๋ฌธ
* ์ํ3 - ์๋ฐ๊ฐ ์ ๊ณตํ๋ Iterable, Iterator
* ์ ๋ ฌ1 - Comparable, Comparator
* ์ ๋ ฌ2 - Comparable, Comparator
* ์ ๋ ฌ3 - Comparable, Comparator
* ์ปฌ๋ ์ ์ ํธ
* ์ปฌ๋ ์ ํ๋ ์์ํฌ ์ ์ฒด ์ ๋ฆฌ
* ๋ฌธ์ ์ ํ์ด
* ์ ๋ฆฌ
๊ฐ์ฌํฉ๋๋ค.
์ โฉ19,800
5๊ฐ์ ํ ๋ถ ์
โฉ99,000