๐ ์บ์น # ๊ฐ๋ฐ์ ์ปค๋ฆฌ์ด์ฝ - ๊ฐ๋ฐ์ ๋ฉด์
https://www.catch.co.kr/CatchCafe/ProgramView/1151
๋ด์ฉ: ๋ฉด์ ๊ด ๊ฒฝํ์ด ์๋ ์๋์ด ๊ฐ๋ฐ์๊ฐ ์ง์ ์ด์ผ๊ธฐํ๋ ๊ฐ๋ฐ์ ๋ฉด์ ์ ๋ํ ์ด์ผ๊ธฐ
์ผ์: 6.23(์) ์คํ 3์ - 4์ 30๋ถ
๊ฐ์ง์ฐ - ๋น๊ทผํ์ด ๋ฐ๋ธ์ต์ค ์์ง๋์ด
"์ข์ ๋ฉด์ ๊ณผ ๋์ ๋ฉด์ ์ ๋ํ ์ด์ผ๊ธฐ"
๊ฐ๋ฐ์์ ์ข์ ๋ฉด์ ์ด๋ ์ด๋ค ๋ฉด์ ์ธ๊ฑด์ง, ์ง์ ๊ฒฝํํด์จ ์ข์ ๋ฉด์ ๊ณผ ๋์ ๋ฉด์ ์ ๋น๊ต๋ฅผ ํตํด ์์๋ด ๋๋ค.
1. ๋ฉด์ ์ผ๋ก ๊ฐ๋ ๊ธธ
๋ฉด์ ์ ํตํด ํ์ธํ๊ณ ์ถ์ ๊ฒ?
- "๋ด๊ฐ ํจ๊ป ์ผํ๊ณ ์ถ์ ์ฌ๋์ธ๊ฐ?"
- ์ค๋ ฅ์ด ๋ฐ์ด๋ ์ฌ๋, ์ฑ์ฅ ๊ฐ๋ฅ์ฑ์ด ๋์ ์ฌ๋, ์ปค๋ฎค๋์ผ์ด์ ์ด ์ ๋๋ ์ฌ๋
์ด๋ฌํ ๋ฉด์ ์ ๊ฒฝํํ๋ฉด์ ๋๊ผ๋ ๊ฒ๋ค์ ๊ณต์
์๋ง์ ์ง์์ ์ค์ ๋์ ์ง์์๊ฐ ํน๋ณํ๊ฒ ๋ณด์ด๋ ค๋ฉด ?
- ๋ด๊ฐ ์ด๋ค ๊ฒฝํ์ ํ๋์ง
- ์์ผ๋ก ์ด๋ค ๊ฒ์ ํ๊ณ ์ถ์์ง๊ฐ ๋๋ฌ๋์ผ ํจ
- ์ง์ํ ํ์ฌ์ ๋์์ด ๋ ๋งํ ๊ฒฝํ์ ์กฐ๊ธ ๋ ๊ตฌ์ฒด์ ์ผ๋ก ์์ฑํ๋๊ฒ ์ข์
์ธํฐ๋ทฐ๋ ?
- "ํ์ฌ์ ๋ด๊ฐ ์๋ก๋ฅผ ์์๊ฐ๋ ๊ฒ"
- ๋ด๊ฐ ๊ฐ๋ ค๋ ํ์ฌ์ ์ด๋ค ์ฌ๋๋ค์ด ์๋์ง
- -> ๋ฉด์ ๊ด์ ์ง๋ฌธ์ด๋ ๋ฐฉ์์ ๋ณด๋ฉด ์ด๋ ดํ์ด ์ ์ ์์
- ๋ด๊ฐ ๊ฐ๋ ค๋ ํ์ฌ๊ฐ ์ด๋ค ์ผ์ ํ๊ณ ์๋์ง
- -> ์ค์ ๊ฒช์๋ ์ด์๋ค์ ๋ํด ๋ฌผ์ด๋ณด๊ธฐ๋ ํจ
2. ์ข์ ๋ฉด์ ์ ๋ํ ์ด์ผ๊ธฐ
๊ธฐ์ต์ ๋จ๋ ์ฒซ๋ฒ์งธ ์ข์ ๋ฉด์ ๊ฒฝํ
5๋ ์ด์์ ๊ฒฝ๋ ฅ์๋ฅผ ๋ฝ๋ ์๋ฆฌ์ ์ง์ํ ์กธ์ ์์ ์
๊ถ๊ธํ๊ฒ ๋ง์์ง๋ง ๊ฐ์ฅ ๊ถ๊ธํ๋ ๊ฑด "์ ์ง์ํ์๊น?"
- "ํ์์ ๊ด์ฌ์ ๊ฐ์ง๊ณ ์๋ ํ์ฌ์์ ์ ๊ฐ ์ํ๋ ํฌ์ง์ ์ ์ฑ์ฉ ๊ณต๊ณ ๊ฐ ์ฌ๋ผ์์ ์ผ๋จ ์ง์ํด๋ด"
- 5๋ ์ด์์ ๊ฒฝ๋ ฅ์๋ฅผ ๋ฝ๊ธฐ ์ํ ์ฑ์ฉ ๊ณต๊ณ ์์ง๋ง, ์ด๋ก์ ์ผ๋ก ์ด ๋ถ์ ์ฑ์ฉํ๊ธฐ๋ก ํจ
๊ธฐ์ต์ ๋จ๋ ๋๋ฒ์งธ ์ข์ ๋ฉด์ ๊ฒฝํ
- 3๋ ์ด์์ ๊ฒฝ๋ ฅ์๋ฅผ ๋ฝ๋ ์๋ฆฌ
- ๋ฆฌ๋ ์ค free ๋ช ๋ น์ ๊ฒฐ๊ณผ์ ๋ํ ์ถ๋ ฅ๋ฌผ์ ๊ฐ์ ธ์ค์ง ์์๋๋ฐ, ๋ช ๋ น ๊ฒฐ๊ณผ๋ฅผ ํ์ดํธ๋ณด๋์ ์ง์ ์ฐ๊ธฐ ์์ํจ ..
- -> ๋ฉด์ ์ค๋น๋ฅผ ์๋นํ ๋ง์ด ํ๊ฑธ ๋๋ผ๊ณ , ํฉ๊ฒฉํจ
์ข์ ๋ฉด์ ๊ฒฝํ๋ค์ ๊ณตํต์ ?
- ํ์ฌ์ ๋ํ ๋์ ๊ด์ฌ & ๋ฉด์ ์ ๋ํ ๋ง์ ์ค๋น
- ์์ ์๊ฒ ๋ณธ์ธ์ ์๊ฐ์ ์ด์ผ๊ธฐ ํ๋๊ฒ๋ ์ค์ํ๋ค๊ณ ์๊ฐํจ
- ๋ชจ๋ฅด๋ ๊ฒ์ ์ ํํ๊ฒ ๋ชจ๋ฅธ๋ค๊ณ , ์๋๊ฒ์ ์ ํํ๊ฒ ์๋ค๊ณ ๋งํ๋ ๊ฒ
vm.swappiness ์ปค๋ ํ๋ผ๋ฏธํฐ์ ๋ํด ์ค๋ช ํด ์ฃผ์ธ์.
- ์ง์ ์ค์ ํด ๋ณธ์ ์ ์์ง๋ง swap๊ณผ ๊ด๋ จ๋ ํ๋ผ๋ฏธํฐ ์ธ ๊ฒ ๊ฐ๋ค. ๊ทธ ํ swap์ ๋ํ ์ค๋ช
"ํน์ ๋ง์ง๋ง์ผ๋ก ์ ํฌํํ ๊ถ๊ธํ์ ๊ฑฐ ์์ผ์ธ์?" ์ ๋ํ ์ง๋ฌธ ์๋๋
- ์ง๋ฌธ ์๋? ๋ณธ์ธ์ ๋งค๋ ฅ ํฌ์ธํธ๊ฐ ๋ ์๋๋ฐ ๋์น๊ฒ ์๋์ง
- ์ฐ๋ฆฌ ํ์ฌ์ ๊ด์ฌ์ด ์ด๋์ ๋ ์์ผ์ ์ง? ์ ๋ํ ์๋
- ex) ๋น๊ทผ๋ง์ผ์ ์ฌ์ ํ์ฅ์ ๋ํด ์ด๋ป๊ฒ ์๊ฐํ๊ณ ๊ณ์ ์ง? => ํ์ฌ์ ๋ฏธ๋ ๋น์ ์ ๋ํ ์ง๋ฌธ
- ex) "๊ธฐ์ ๋ธ๋ก๊ทธ์์ ๋ดค๋๋ฐ์ .. ~ ์ด๋ ์ด๋ ํ ๋ฌธ์ ์ ๋ํด์๋ ์ด๋ป๊ฒ ์๊ฐํ์๋์ง..?" ๋ฑ์ ๊ด์ฌ
- ์์ ๊ฐ์ ๋๋ต์ ํตํด ๊ต์ฅํ ๋ฐ๊ฐ๊ณ , ๊ธฐ์ ์ ๋ํ ๊ด์ฌ์ด ๋ง๋ค๋ ๊ฒ์ ๋๊ผ์ => ๋ฉด์ ๋ง์ง๋ง์ ํธ๊ฐ๋ ์์น!
3. ๋์ ๋ฉด์ ์ ๋ํ ์ด์ผ๊ธฐ
"์๋น์ค๋ฅผ ์ค์นํ๊ณ ์ฌ์ฉํด ๋ณธ ์ ์ด ์์ต๋๋ค."
- ํ์ฌ์ ์๋น์ค์ ๋ํด ์ ํ ๊ด์ฌ์ด ์๋ ์ฌ๋
"๊ฐ์ฅ ๊ธฐ์ต์ ๋จ๋ ์ฅ์ ๋ ์ด๋ค ๊ฒ์ด์๋์?"
- "์๋น์ค๊ฐ ๋ค ์ฃฝ๋ ์ฅ์ ๊ฐ ์์์ต๋๋ค." ... ๊ทธ๋ฆฌ๊ณ ์นจ๋ฌต ... ๐ญ
- ๋ ๊ฒฝํ์ ๋ฃ๊ณ ์ถ์์ผ๋, ์ง๋์น ๋จ๋ตํ ๋๋ต
๋ฉด์ ๊ด ์ง๋ฌธ์ ์๋๋ฅผ ํ์ ํ๋ ๊ฒ๋ ์ค์ํจ
- ์ด๋ค ์ด์๊ฐ ์ฅ์ ๋ฅผ ์ผ์ผ์ผฐ๋์ง (๊ถ๊ธํด์!)
- ์ด๋ป๊ฒ ์ฅ์ ์์ธ์ ์ฐพ์ ๋๋์ง (๊ถ๊ธํด์!)
- ๋์ผํ ์ฅ์ ๊ฐ ๋ฐ์ํ์ง ์๊ฒ ์ด๋ค ํ์์กฐ์น๋ฅผ ํ๋์ง (๊ถ๊ธํด์!)
"์น ๋ธ๋ผ์ฐ์ ๊ฐ ์น ์ฌ์ดํธ๋ฅผ ์ฌ๋ ๊ณผ์ ์ ์ค๋ช ํด ์ฃผ์ธ์."
- ๋๋ฉ์ธ ์๋ฒ๋ฅผ ํตํด ๋๋ฉ์ธ ์ง์๋ฅผ ํ๋ ๊ณผ์
- TCP 3-way handshake๋ฅผ ํ๋ ๊ณผ์
- ์น๋ธ๋ผ์ฐ์ ๊ฐ ์๋ฒ์ TCP ์ฐ๊ฒฐ์ ๋งบ๊ณ ํต์ ํ๋ ๊ณผ์
์ง๋ฌธ๊ณผ ๊ด๋ จ๋์ด ๋ ํ๊ณ ์ถ์ ์ด์ผ๊ธฐ๊ฐ ์๋ค๋ฉด ํ๋๊ฒ ์ข๋ค๊ณ ์๊ฐํจ.
- ์์ ์ ์๊ฐ & ์๊ฒฌ์ ๊ณ์ํด์ ๋ณด์ฌ์ฃผ๋ ๊ฒ์ ๋ด๊ฐ ํ์ฌ์ ์ด์ธ๋ฆฌ๋ ์ฌ๋์ธ์ง ์๋์ง๋ฅผ ๋ณด์ฌ์ฃผ๋ ๊ธฐํ๊ฐ ๋๊ธฐ๋ ํจ
๋์ ๋ฉด์ ์ ๊ณตํต์
- ํ์ฌ์ ๋ํ ๊ด์ฌ์ด ์๊ณ , ๋ฉด์ ์ ๋ํ ์ค๋น๊ฐ ์ ๋ค
์กฐ๊ธ ๋ ํ๊ณ ์ถ์ ์ด์ผ๊ธฐ
- ์ฌ์ค ์ ์ ์ผ๋ก ์ ์ฌ ํ๊ธฐ๋ ๊ต์ฅํ ํ๋ค๋ค :(
- ์ ํ ์ ์๋ค๋ ๊ฒ์ '๊ฐ๊ด์ '์ผ๋ก ๋ณด์ฌ์ค ์ ์๋ ๋ฌด์ธ๊ฐ(๋ฌด๊ธฐ)๊ฐ ํ์ํ๋ค
- ๊ฐ์ธ GitHub ์ฃผ์, ๋ธ๋ก๊ทธ ๋ฑ์ '๋'๋ผ๋ ์ฌ๋์ ๋ณด์ฌ์ฃผ๋ ์ข์ ์งํ๊ฐ ๋ ์ ์๋ค.
- ์์ ๊ฐ์ ๊ฒ๋ค์ ๋น๋จ ๋ฉด์ ์ ์ํ ์ค๋น ๋ง์ด ์๋๊ณ , IT ์์ง๋์ด๋ก ์ด์๊ฐ๋๋ฐ ๋ง์ ๋์์ด ๋จ
๋ฉด์ ์ ๋ณด๋ฌ ๊ฐ๊ธฐ ์ ์์์ ํ ๋ฒ ํด๋ณผ ๊ฒ - ์ด๋ฏธ์ง ํธ๋ ์ด๋
- ๋ด๊ฐ ๋ฉด์ ๊ด์ด๋ผ๋ฉด, ์ด๋ค ์ง๋ฌธ๋ค์ ํ ๊น?
- "๋"๋ผ๋ ๋ฉด์ ๊ด๊ณผ ์ง์ง ๋ฉด์ ์ ๋ณด๋ ๊ฒ์ฒ๋ผ ๋ง์์์ผ๋ก ์งํ
์ข์ ๋ฉด์ ์ ์ํด์ ํ์ฌ์ ๋ํ ๋์ ๊ด์ฌ๊ณผ ๋ณธ์ธ ์ดํ์ ๊ทผ๊ฑฐ๋ฅผ ๊ฐ๊ด์ ์ผ๋ก ํํํ์.
- ๊ธฐ์ ์ ๊ธฐ์ ๋ธ๋ก๊ทธ
- GitHub ์ฃผ์ ์ ์ถ (๊พธ์คํ)
- ๊ธฐ์ ๋ธ๋ก๊ทธ์ ๋ฌด์์ด๋ ์ฐ์ (๊พธ์คํ)
์์ค์ - ์นด์นด์ค๋ชจ๋น๋ฆฌํฐ ๊ฐ๋ฐ ํํธ์ฅ(๋ฐฑ์๋ ๊ฐ๋ฐ์)
"์ ์ ์ฑ์ฉ Prequel"
์ ์ ๊ฐ๋ฐ์๋ฅผ ์ฑ์ฉํ๊ธฐ ์ง์ ์ ํ์ฌ ์ํฉ์ ๋ํด ์์๋ณด๊ณ ,
๊ทธ ์ํฉ์ ์ด๋ป๊ฒ ์ดํดํ๊ณ ์ค๋นํด์ผํ ์ง์ ๋ํ Action Item์ ๋ํ ์ด์ผ๊ธฐ์ ๋๋ค.
๋ด์ฉ ์ ๋ฆฌ
- ๊ฐ๋ฐ ์ ์ ์ฑ์ฉ์ด ์๊ธฐ ์ ์ฐ๋ฆฌ(ํ์ฌ)์ ์ํฉ์ ํผ๊ณคํจ .. ๐ญ
- ์ผ์ด ๋ง์๋? ๊ฒฝ๋ ฅ์ง์ ์ ํธํจ
- ํ์ง๋ง ๊ฒฝ๋ ฅ์ง์ ๋ฝ๋๊ฒ ์ฝ์ง๋ ์๊ธฐ ๋๋ฌธ์, (๊ธฐ๋ณธ๊ธฐ๊ฐ ์๋) ์ ์ ์ ๋ฝ๊ณ ์ ํจ
- ํ์ฌ ํ์ฌ๋ (๊ณผ๊ฑฐ์๋ ๋ฌ๋ฆฌ)๊ต์ก์ ๋ณดํธํ๋ก ์ธํด ์ ์ ์์๋ ๋ถ๊ตฌํ๊ณ ๊ธฐ๋ณธ๊ธฐ๊ฐ ์ข์ ์ ์ ์ ๋ฝ์ ์ ์๋ค๊ณ ์๊ฐํจ
- ๊ณผ๊ฑฐ์๋ ๋ค๋ฅด๊ฒ 2010๋ (?) ์ ๋ ์ดํ๋ก๋ ์คํ ์์ค๊ฐ ๋ง์ด ๋ฐ๋ฌํ๋ฉด์ ๊ธฐ์ ์คํ์ ๋ณํ๊ฐ ์์ฒญ๋๊ฒ ๋น ๋ฅด๊ฒ ์งํ๋๊ณ ์์
- ๊ณผ๊ฑฐ์๋ ํ์ฌ์ ์ค๋ฌด ๊ธฐ์ ์ ๊ต์กํ์๊ฒ ์ ๋ฌ -> ์ ์ ์๊ฒ ๊ต์ก -> ์ค๋ฌด์ ํฌ์
- ํ์ฌ๋ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ๋ฐฉ๋ฒ์ด ๋ค์ํ๊ฐ ๋๋ฉด์ ํ์ , ๊ต์ก๊ณผ์ ๊ธฐ์ ๊ฒฉ์ฐจ๊ฐ ๋ฐ์ํ๊ธฐ ์์ํจ
- ๋ฐ๋ผ์ ํ์ฌ์์๋ ์คํ ์์ค ๋ฑ์ ํตํด ์ ๋ณด๋ฅผ ์ด๋ฏธ ์ต๋ํ ์ ์ ์ ๋ฝ๊ณ ์ ํจ
- ๊ณต์ฑ์ ๊ฒฝ์ฐ ์ฑ์ฉ ๊ณต๊ณ ๋ฅผ ๋ณด๋๊ฒ์ด ํฐ ์๋ฏธ๋ ์์ => ๋ ํ๋ค๋ค
- ์์์ฑ์ฉ์ ์ฑ์ฉ ๊ณต๊ณ ๋ฅผ ์ข ๋ ์ ์ฌํ ๋ณด๋๊ฒ์ด ๋์์ด ๋๋ค๊ณ ์๊ฐํจ
- ์ฌ๋ฌ ํ์ฌ์ ๊ฐ๋ฐ ์ฑ์ฉ๊ณต๊ณ ๋ฅผ ๋ณด๊ณ ๊ณตํต๋ ๊ธฐ์ ์ ์ถ์ถํ์.
- ๊ทธ๊ฒ ๋๋ถ๋ถ์ ํ์ฌ์์ ํ์ํ ๊ฒ์ด๋ค.
- ์ง๊ตฐ ๋ณ๋ก ๋ค๋ฅด๋ค.
- ๋ณธ์ธ์ด ์ง์ํ ์ง๊ตฐ์ ์ ํํ์.
- ์ง๊ตฐ ์กฐ์ฐจ ๋ชป๋๋๊ฒ ๋ค๋ฉด ์ง์ ๋ชธ์ผ๋ก ๋ถ๋ชํ์.
- ๊ฑฐ๊ธฐ์ ๋์จ ๊ธฐ์ ์ ์ ๋ณด๊ณ ๋ญ์ง ์ ๋ชจ๋ฅด๊ฒ ๋ค๋ฉด ํ์ตํ๋ค.
- ๋๋ถ๋ถ์ ๊ธฐ์ ์ ๋จ๋ ์ ์ผ๋ก ์ฐ์ด์ง ์๊ธฐ ๋๋ฌธ์ 1๊ฐ๋ฅผ ๋ณด๋ฉด 2๊ฐ๊ฐ, 2๊ฐ๋ฅผ ๋ณด๋ฉด 4๊ฐ๊ฐ ํ์ด๋์จ๋ค.
- ์ด๊ฑด ๊ทธ๋ฅ ๋ด์ผํจ
- ์๊ฐ์ ์์ ๋ถ์์ผ ๊ฐ๋ฅํ๋ ๊ฒ ๊ฐ๋ค.(๊ฒฝํ์) -> ํจ์จ์ ์ธ์ง๋ ์ ๋ชจ๋ฅด๊ฒ ์
Backend ๊ฐ๋ฐ์?
- Swagger, Spring REST Docs, APIDOC
- API ๋ฌธ์ํ๋ฅผ ์์ผ์ ์ฒจ๋ถํ๋๊ฒ ์ข์ ๊ฒ ๊ฐ์
- ์ง์ ํ์ฌ์ ์์คํ ์ ํ์ธํด๋ณด๊ณ , ์๊ฐํด๋ณด๊ณ , ๋ง๋ค์ด๊ฐ๋ ๊ฒ์ด ์ข์ ๊ฒฝํ์ด ๋๋ค๊ณ ์๊ฐํจ
์ ์ ์๊ฒ ํฌ๋งํ๋ ๊ธฐ์ด๋?
- Backend ๊ฐ๋ฐ์ ์ธ์ด์ ๋ํด์๋ ๊ธฐ๋ณธ์ ์ผ๋ก ์๊ณ ์๋ ์ฌ๋์ ํฌ๋งํจ
- Product๋ฅผ ๊ธฐ๋ณธ์ ์ผ๋ก ๋ง๋ค์ด ๋ณธ ์ฌ๋์ ํฌ๋งํจ
- ์๊ณ ๋ฆฌ์ฆ์ ๋ฉด์ ์ ์ํ ์ต์ํ์ ๊ฑฐ๋ฅด๊ธฐ ์ํจ
- ์ผ๋ถ ๋ฌธ์ ๋ฅผ ์ํ์ง๋ ๋ชปํ๋๋ผ๋ ์ธ์ด์ ๋ง๊ฒ ์์ ํ ์ ์๋ ์ ๋๋ฅผ ๋ด
- ๊ธฐ๋ณธ์ ์ผ๋ก ํ๋๋ ์ ๋ง ์ค์ํจ
๊ฒฝ๋ ฅ์๊ฐ ์ ์ ์ ํ๋ก์ ํธ์์ ๋ณด๋ ์ฝ๋
- ์ฝ๋ ์ง๋ ๊ฒ ํ์ธ
- Commit ๋ก๊ทธ ํ์ธ
- ์ฌ์ฉํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋ฑ ํ์ธ
'์คํฐ๋ & ์ธ๋ฏธ๋' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
22 Best Practices to Take Your API Design Skills to the Next Level (0) | 2021.09.16 |
---|---|
์บ์น # ๊ฐ๋ฐ์ ์ปค๋ฆฌ์ด์ฝ - ๊ฐ๋ฐ์ ์ฑ์ฅ ๋ก๋๋งต (3) | 2021.06.29 |
OSS ๊ฐ๋ฐ์ํฌ๋ผ Meetup ์คํํธ์ (StartUp)์ ๋ง๋๋ค (2) | 2021.05.15 |
Wanted Live Talk #23. ์ค๋์ ๊ฐ๋ฐ์ 1์ฃผ์ฐจ (0) | 2021.04.15 |
OKKYCON: 2021 ํ์ ์ ๊ธฐ์ (0) | 2021.03.06 |
๋๊ธ