๐๏ธ ์ฐํ ์ฝ ๋ด์ค๋ ํฐ 4ํธ (2025.05.30) - woowacourse/NewsLetter GitHub Wiki
์๋
ํ์ธ์, ์ฐ์ํํ
ํฌ์ฝ์ค ์ฌ๋ฌ๋ถ!
์ด์ ์ด๋๋ง 6์์ ๋ง์ดํ ์ค๋น๋ฅผ ํ๊ฒ ๋์๋ค์ ๐ฟ
๋ค๊ฐ์ค๋ 6์๋ ์ฐ์ํํ
ํฌ์ฝ์ค ๋ด์ค๋ ํฐ์ ํจ๊ป ํ์ฐจ๊ฒ ๋ณด๋ด์๊ธธ ๋ฐ๋ผ๊ฒ ์ต๋๋ค ๐ช
์ด๋ฒ์ฃผ๋ ์บ ํผ์ค์์ ์ฆ๊ฒ๊ฒ ์งํ๋ ์ด๋ฒคํธ ์์๊ณผ,
๋์น๋ฉด ์์ฌ์ด ํฌ๋ฃจ๋ค์ ํค๋ณด๋ ์ถ์ฒ๋ ํจ๊ป ์ ํด๋๋ฆฝ๋๋ค!
๐ ์ด๋ฒคํธ ์๊ฐ
๐ ์๋ก์ ์์ ๋๋๋ค, ๊ฐ๋ฐ์ ์ถ์ฒ ๊ธ ๊ณต์ ์ค๋ ๋
โ์ด? ์ด ๊ธ, ๋๋ง ๋ณด๊ธฐ์ ๋๋ฌด ์๊น๋ค!โ
๊ฐ๋ฐ์๋ผ๋ฉด ํ ๋ฒ์ฏค ๊ทธ๋ฐ ์๊ฐ ํด๋ณด์ ์ ์์ผ์์ฃ ?
์ ๋ฆ ์ด๋ฒคํธ ๊ทผ๋กํ์์๋ ์ง๋์ฃผ, ํฌ๋ฃจ๋ค์ด ์๋ก์๊ฒ ์ ์ตํ ์ ๋ณด๋ฅผ ๊ณต์ ํ ์ ์๋๋ก
โ๊ฐ๋ฐ์ ์ถ์ฒ ๊ธ ๊ณต์ ์ค๋ ๋โ ์ด๋ฒคํธ๋ฅผ ์งํํ์ด์! ๐
ํฌ๋ฃจ๋ค์ ์์ ์ด ๊ฐ๋ช
๊น๊ฒ ์ฝ์๋ ๊ธฐ์ ๋ธ๋ก๊ทธ, ๊ณต์ ๋ฌธ์, ์ค์ ๋
ธํ์ฐ๊ฐ ๋ด๊ธด ๊ธ ๋ฑ์ ๋๊ธ๋ก ๊ณต์ ํ๋ฉฐ
ํจ๊ป ๋ฐฐ์ฐ๊ณ ์ฑ์ฅํ๋ ๋ฐ๋ปํ ๋ถ์๊ธฐ๋ฅผ ๋ง๋ค์ด์ฃผ์๋ต๋๋ค. ๐ฑ
์ด๋ฒ ์ด๋ฒคํธ์๋ ํ๋ก ํธ์๋, ์๋๋ก์ด๋ ํฌ๋ฃจ๋ค์ ๋ค์ํ ์ถ์ฒ ๊ธ์ด ์ด์ด์ก๋๋ฐ์, ๋ช ๊ฐ์ง๋ฅผ ์ด์ง ์๊ฐํด๋๋ฆด๊ฒ์!
๐ป ํ๋ก ํธ์๋ ํฌ๋ฃจ์ ์ถ์ฒ
[์์งํ์ UI Variation์ ์ ์ฐํ๊ฒ ๋์ํ๊ธฐ]
"๋์ด๋๋ props ๋๋ฌธ์ ๋ถ์ํ๋ ๋ถ๋ค!
์คํ๊ฒํฐ ์ฝ๋์์ ๋ฒ์ด๋๋ ์ค๋ง๋ฆฌ๋ฅผ ์ป์ ์ ์์ด์.
'์ฝ๋ ๊ตฌ์กฐ'์ ๋ํ ํต์ฐฐ์ด ๋๋ณด์
๋๋ค."
[๋ชจ๋ ์๋ฐ์คํฌ๋ฆฝํธ ๋ฅ๋ค์ด๋ธ ์ ๋ฆฌ]
"JS ๊ฐ๋
๋ฟ ์๋๋ผ ์น ํ๋ก๊ทธ๋๋ฐ ์ ๋ฐ์ ๋ํด ์ ์ ๋ฆฌ๋ผ ์์ด์!
์๋ฃ ์ ๋ฆฌ๊ฐ ์ด๋ ๊ฒ ์๋ฆ๋ค์ธ ์ ์๋์? ๐"
[Frontend Fundamentals - ์ฝ๋ ํ๋ฆฌํฐ]
"์์ ์ฝ๋์ ๊ธฐ์ค์ด ๊ถ๊ธํ์ ๋ถ๋ค๊ป ๊ฐ๋ ฅ ์ถ์ฒ!
๋ฆฌํฉํ ๋งํ ๋๋ง๋ค ํ ๋ฒ์ฉ ๊บผ๋ด๋ณด๊ฒ ๋๋ ๊ธ์ด์์."
๐ฑ ์๋๋ก์ด๋ ํฌ๋ฃจ์ ์ถ์ฒ
[Fragment์์ ๋ฉ๋ชจ๋ฆฌ ๋ฆญ ๋ฐฉ์งํ๋ ๋ฐฉ๋ฒ]
"๊ณต์ ๋ฌธ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ ์์ง ์ ๋ณด!
View Binding์ ์์ ํ๊ฒ ์ฌ์ฉํ๋ ๋ฒ์ด ์์ฃผ ์ ์ค๋ช
๋ผ ์์ด์."
[Fragment ํธ๋์ญ์
์์ ์ ๋ณต]
"add vs replace, setReorderingAllowed(true)๋ ์ธ์ ์ฐ๋ ๊ฑธ๊น?
์๋ช
์ฃผ๊ธฐ๋ถํฐ ๋ฐฑ์คํ๊น์ง, ๊ถ๊ธ์ฆ์ด ์์ํ๊ฒ ํ๋ฆฌ๋ ๊ธ์ด์์."
[์ Array ๋์ List๋ฅผ ์จ์ผ ํ ๊น?]
"๋ฐ์ดํฐ ํด๋์ค ์์ฑ์์ Array๋ฅผ ๋ฃ์ง ๋ง๋ผ๋ ์ด์ , ์ด ๊ธ์ ์ฝ์ผ๋ฉด ๋จ๋ฒ์ ์ดํด๋ฉ๋๋ค!
์ค์ ์ฝ๋์์ ๋ง์ฃผ์น๋ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํด์ฃผ๋ ์ข์ ๊ธ์ด์์."
โ๋ค๋ค ์จ๊ฒจ๋์ ๋ณด์ ๊ฐ์ ๊ธ์ ๊ณต์ ํด์ค์ ์ ์ฅ ํด๋๊ฐ ํ์ฑํด์ก์ด์!โ
์ด๋ฒ ์ด๋ฒคํธ๋ ๋จ์ํ ๋งํฌ ๊ณต์ ๋ฅผ ๋์ด, ๊ฐ์์ ์ฑ์ฅ ๊ธฐ๋ก์ ํจ๊ป ๋๋๋ ์๋ฏธ ์๋ ์๊ฐ์ด์์ต๋๋ค. ๐
โ๏ธ ์ฃผ๊ฐ ์ปจํ ์ธ
โจ๏ธ ํฌ๋ฃจ๋ค์ ํค๋ณด๋ ์ถ์ฒ
์ฌ๋ฌ๋ถ๋ค์ ํค๋ณด๋ ์ข์ํ์๋์?
ํน์ ์ฃผ๋ณ ํฌ๋ฃจ๋ค์ด ์ด๋ค ํค๋ณด๋ ์ฐ๋์ง ๊ถ๊ธํ์ ์๋์?
๋ง๋ค๋ฉด ์ด ๊ธ์ ์ฃผ๋ชฉํด์ฃผ์ธ์!
ํค๋ณด๋์๋ ํํ๊ทธ๋ํ, ๊ธฐ๊ณ์, ๋ฌด์ ์ , ๋ฉค๋ธ๋ ์ธ๊น์ง ์ฌ๋ฌ ์ข ๋ฅ๊ฐ ์๋๋ฐ์!
์ข ๋ฅ๋ณ๋ก ๋ค์์ ํน์ง์ ๊ฐ์ง๊ณ ์์ด์!
๊ตฌ๋ถ | ๋ฐฉ์ ์ค๋ช | ํค๊ฐ | ์์ | ๋ด๊ตฌ์ฑ (์๋ช ) | ๋ํ ์ฉ๋ / ํน์ง |
---|---|---|---|---|---|
๊ธฐ๊ณ์ | ๊ฐ ํค์ ๋ ๋ฆฝ๋ ์ค์์น๊ฐ ์์ | ๋๋ ทํ๊ณ ๊ฒฝ์พํจ | ์ถ๋ง๋ค ๋ค๋ฆ | ๋์ (5์ฒ๋งํ ์ด์) | ํ์ดํ ๋ง์กฑ๋ ๋์, ์ถ ์ข ๋ฅ ๋ค์ (์ฒญ์ถ, ๊ฐ์ถ, ์ ์ถ ๋ฑ) |
๋ฌด์ ์ | ์ ๊ธฐ ์ ํธ๋ก ์ ๋ ฅ, ๋ฌผ๋ฆฌ ์ ์ ์์ | ๋ถ๋๋ฝ๊ณ ์ ๋ฐํจ | ์กฐ์ฉํ ํธ | ๋งค์ฐ ๋์ (7์ฒ๋งํ+) | ๊ณ ๊ธ..? ํ์ ๊ฒฝํ, ๋ฆฌ์ผํฌ์ค/ํดํผํดํน ๋ฑ ๊ณ ๊ฐํ์ ์ฌ์ฉ๋จ |
ํํ๊ทธ๋ํ | ๊ฐ์์ ๊ตฌ์กฐ์ ๋ฉค๋ธ๋ ์ธ ๋ณํ | ์งง๊ณ ๋ถ๋๋ฌ์ | ์กฐ์ฉํ ํธ | ์ค๊ฐ (2์ฒ๋งํ ๋ด์ธ) | ๋ ธํธ๋ถ ํค๋ณด๋, ํด๋์ฑ ์ค์ |
๋ฉค๋ธ๋ ์ธ | ๊ณ ๋ฌด ๋์ด ๋๋ฆฌ๋ฉฐ ์ ์ ์ด ์๊น | ๋ง๋๋ง๋ํจ | ๊ฐ์ฅ ์กฐ์ฉํจ | ๋ฎ์ (1์ฒ๋งํ ๋ด์ธ) | ์ ๊ฐํ ํค๋ณด๋, ์ฌ๋ฌด์ฉ์ ํํ ์ฌ์ฉ๋จ |
๐ค ํฌ๋ฃจ๋ค์ ๋ฌด์จ ํค๋ณด๋๋ฅผ ์ธ๊น?
์ฃผ๋ณ ํฌ๋ฃจ 3๋ช
์๊ฒ ๋ฌด์จ ํค๋ณด๋๋ฅผ ์ฐ๋์ง ๋ฌผ์ด๋ดค์ต๋๋ค!
์นผ๋ฆฌ)
๋ ๊ฑฐ๋ฏธ is good ํ์ง๋ง ํ๋์์ ์ฌ์ง๋ง๊ฒ
๋ฃจํค)
์กฐ๊ธ ๋น์ธ์ง๋ง ํ๋ฒ ์ฌ๋๋ฉด ํ์?๊ฐ๋ qk65์ ๋๋ค.(ํด๋น ๋ชจ๋ธ์ ๋จ์ข ๋์์ต๋๋ค)
ํฌ๋ค)
์กฐ๊ธ ๋น์ธ์ง๋ง ํผํผํด์ ๋ง์ธ์์๋ evo80์ ๋๋ค.
๊ทธ ์ธ์ ์๊ฐ๋ ๋ชป๋ฐ์์ง๋ง ์์ ํค๋ณด๋๋ค ์ฌ์ง์ ์ฌ๋ ค๋ณผ๊ฒ์!
๋งํฌ์ ๋ ์ฝ๋ ์๋ฆฌ์ค + ํ์ผ์ ์ค + ์ธก๊ฐํค์บก ์ปค์คํ ์ ๋๋ค.
๋ง์ง๋ง์ผ๋ก ๊ธฐ๊ณ์ ํค๋ณด๋์ ๊ด์ฌ์ด ๋ง์ ๋ฐฑ์๋ ํฌ๋ฃจ ํ๋ผ์๊ฒ ์ง๋ฌธ์ ํด๋ณด์์ต๋๋ค!
๐ฃ๏ธ BE 7๊ธฐ ํ๋ผ์ ํค๋ณด๋ ์ธํฐ๋ทฐ
ํ๋ผ์ ์ ์ฐฉํค๋ณด๋ QK65 V2 ํด๋์์ ๋๋ค.
๊ธฐ๊ณ์ ํค๋ณด๋์ ์ฅ์ ์ด ๋ญ๊ฐ์?
- ํ๊ฑด์ ํ ๋ ๋๋ฅด๋ ๋๋์ด ๋ค๋ฅธ ํค๋ณด๋๋ณด๋ค ์ข์ต๋๋ค.
- ๋๋ฆฌ๋ ์ง์ ์ ์ํ๋๋๋ก ์ปค์คํ ํ ์ ์์ต๋๋ค.
- ์ปค์คํ ํ ์ ์๊ธฐ ๋๋ฌธ์ ๋ฌด์์ ์ํ๋ ์ปค์คํ ํ ์ ์์ต๋๋ค.
์ฐ์๋ ํค๋ณด๋์ ๋ํด์ ์๊ฐํด์ฃผ์ธ์.
- QK65 V2 ํด๋์์ ๋๋ค. (๊ฐ๊ฒฉ 42๋ง์)
- ์ง์ ๋ถํ๋ค์ ์กฐ๋ฆฝํด์ผํด์ ์ด์ฌ์๋ถ๋ค์๊ฒ๋ ์กฐ๊ธ ๋ฒ๊ฑฐ์ธ ์ ์์ต๋๋ค.
์ ์ด ํค๋ณด๋๋ฅผ ์ฌ๊ฒ๋๋์?
- ํฌ๊ธฐ๊ฐ ์์ ํค๋ณด๋๋ฅผ ์ฌ๊ณ ์ถ์์ต๋๋ค.
- ์๋ฆฌ๋ฅผ ์ค์์ ํ๋๋ฐ, ํต์ธ๋ฆผ์ด ์ฌํ๊ฒ ์ซ์ด์ ํต์ธ๋ฆผ์ด ์์ ์๋ฃจ๋ฏธ๋ ๋ฐ๋๋ฅผ ์ฐพ๋ค๋ณด๋ ์ ํํ๊ฒ ๋์์ต๋๋ค.
- ์ดํ ๋์์ธ์ด ์๋ป์ ์ปค์คํ ํ๊ธฐ ์ฌ์ธ ๊ฒ ๊ฐ์์ต๋๋ค.
๋ ๊ฐ ํ๋์?
- ์ฌ์ค 10๋ง์๋๊ฐ ๊ฐ์ฅ ์ ์ ํ ๊ฐ๊ฒฉ์ด๋ผ๊ณ ์๊ฐํฉ๋๋ค. ์ด์ฌ์ ๋ถ๋ค์ ๊ผญ ๊ฐ์ฑ๋น๋ชจ๋ธ๋ถํฐ ์์ํ๋๊ฒ์ ์ถ์ฒ๋๋ฆฝ๋๋ค.
- ํ์ง๋ง ๊ฐ์ฑ์ ์ค์์ํ๋ค๋ฉด ํฌ์ํ ๋ง ํ๋ค๊ณ ์๊ฐํฉ๋๋ค.
๋ง์ง๋ง์ผ๋ก ๊ธฐ๊ณ์ ํค๋ณด๋์ ์ ๋ฌธํ๊ธฐ ๊ณ ๋ฏผํ์๋ ๋ถ๋ค์ ์ํด ํ๋ง๋?
- ๊ณ ๋ฏผ์ ๋ฐฐ์ก๋ง ๋ฆ์ถ๋ฟ
- ์ปค์คํ ํ๊ธฐ๊ฐ ํฌ๊ฒ ์ด๋ ต์ง ์์ผ๋ ๊ฑฑ์ ํ์ง ์๊ณ TDD ํด๋ณด์๊ธฐ ๋ฐ๋๋๋ค.
- ์ด๋ ค์ฐ๋ฉด ํ๋ผ๋ฅผ ์ฐพ์์ค์ธ์!
ํฌ๋ฃจ๋ค์ ํค๋ณด๋ ์ด์ผ๊ธฐ๊ฐ ์ฌ๋ฌ๋ถ์ ์ ํ์ ๋์์ด ๋์๊ธฐ๋ฅผ ๋ฐ๋๋๋ค!
๐๏ธ ๋ค์ ์ฃผ์ ํ ์ฝํก
๋ค์์ฃผ 6์ 5์ผ ๋ชฉ์์ผ 14์, ํฌ๋ฃจ๋ค์ด ํฅ๋ฏธ๋ก์ด ์ฃผ์ ๋ค๋ก ํ ์ฝํก์ ์งํํฉ๋๋ค!
-
MySql์ ๋ฝ - ํ์ค (๋ฐฑ์๋)
MySql์ ์กด์ฌํ๋ ๋ฝ์ ์ข ๋ฅ์ ์ฌ์ฉ๋๋ ์ํฉ์ ๋ํด ๊ณต์ ํฉ๋๋ค.
-
B-Tree ์ธ๋ฑ์ค์ ํด๋ฌ์คํฐ๋ง ์ธ๋ฑ์ค - ํ๋ฆฌ, ๋ง๋ก (๋ฐฑ์๋)
B-Tree๋ฅผ ํ์ฉํ DB ์ธ๋ฑ์ค, InnoDB์ MyISAM์ ์ธ๋ฑ์ค ๋ฐฉ์ ๋ฐ ํด๋ฌ์คํฐ๋ง ์ธ๋ฑ์ค ๋์ ์ด์ ๋ฅผ ์๊ฐํฉ๋๋ค.
-
์คํ๋ง AOP - ํฌ๋ค (๋ฐฑ์๋)
์คํ๋ง์ ํต์ฌ ์ฒ ํ์ธ AOP๊ฐ ๋ฑ์ฅํ๊ฒ ๋ ๊ณ๊ธฐ์ AOP๋ฅผ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ๋ค์ ์๊ฐํฉ๋๋ค.
-
์๋๋ก์ด๋ ๊ตฌ์กฐ ๋ถ๋ฆฌ์ ์์กด์ฑ - ์กฐ์ด (์๋๋ก์ด๋)
Activity์ ๋ชฐ๋ฆฐ ์ฑ ์์ ๋ถ๋ฆฌํ๊ธฐ ์ํด ์ด๋ค ๊ตฌ์กฐ๊ฐ ํ์ํ ์ง ๊ณ ๋ฏผํ๋ฉฐ ๊ตฌ์กฐ ๋ถ๋ฆฌ๋ฅผ ์ ์ฉํด๋ณธ ๊ฒฝํ์ ๊ณต์ ํฉ๋๋ค.
-
HTTP ํด๋ผ์ด์ธํธ ์ค๊ณ ๋ฐ ์์ฒญ ์ฒ๋ฆฌ ๋ฉ์ปค๋์ฆ ๋ถ์: fetch์ axios - ๋ฆฌ๋ฐ์ด (ํ๋ก ํธ์๋)
fetch์ axios๊ฐ ๊ฐ๊ฐ ์ด๋ป๊ฒ ์์ฒญ์ ์ฒ๋ฆฌํ๊ณ ๋ด๋ถ์ ์ผ๋ก ๊ตฌ์กฐํ๋์ด ์๋์ง๋ฅผ ๋น๊ต ๋ถ์ํฉ๋๋ค.
-
useState๋ ์ด๋ป๊ฒ ํจ์ํ ์ปดํฌ๋ํธ์์ ์ํ๋ฅผ ์ ์งํ ์ ์์๊น? - ๋จธํ (ํ๋ก ํธ์๋)
ํจ์ํ ์ปดํฌ๋ํธ์ ํน์ง๊ณผ ๋ณ์์ ์๋ฉธ๊ณผ useState์ ๋ด๋ถ ๋์ ์๋ฆฌ๋ฅผ ๋ฐํ์ผ๋ก ์ํ๊ฐ ์ ์ง๋๋ ์ด์ ๋ฅผ ์ค๋ช ํฉ๋๋ค.
์ค๋์ ์ฐ์ํํ ํฌ์ฝ์ค ๋ ํฐ๋ ์ด๋ ์ จ๋์?
ํ์ ์ฐ์ํํ ํฌ์ฝ์ค ๋ ํฐ๋ก ๊ณต์ ๋ฐ๊ณ ์ถ์ ์์์ด ์๋ค๋ฉด ์ธ์ ๋ ์ง ์๊ฒฌ ๋จ๊ฒจ์ฃผ์ธ์ ๐ฅ