์ค์น ํ package.json์ test ๋ถ๋ถ์ jest๋ก ๋ณ๊ฒฝtoBe : ๊ฐ์ด ์ ํํ๊ฒ ์ผ์นํ๋์ง ํ ์คํธํ ๋ ์ฌ์ฉtoEqual / toStrictEqual : ๊ฐ์ฒด๋ ๋ฐฐ์ด์ ๋น๊ตํ ๋๋ ์ฌ๊ท์ ์ผ๋ก ๋๋ฉด์ ๋น๊ตํด์ผํ๊ธฐ ๋๋ฌธ์ toEqual์ ์ฌ์ฉํ๊ณ ๋ณด๋ค ์๊ฒฉํ ์ฒด
๋ณต์ก์ฑ์์คํ ์ ์ดํดํ๊ฑฐ๋ ์ ์ง๋ณด์ํ๊ธฐ ์ด๋ ต๊ฒ ๋ง๋๋ ๋ชจ๋ ๊ฒํ์์ ์ธ ๋ณต์ก์ฑ/์ฐ์ฐ์ ์ธ(accidental) ๋ณต์ก์ฑ์ด ์์์ฐ์ฐ์ ์ธ ๋ณต์ก์ฑ์ ์์ธ๋ค์๋ชป๋ ์๊ตฌ์ฌํญ๋ค + ์์ฌ์ํต ์ค๋ฅ์์กด์ฑ(๊ฐํ๊ฒฐํฉ) => ๊ฒฐํฉ์ ์์ ํ ํผํ ์๋ ์์ง๋ง ๋์จํ ๊ฒฐํฉ์ผ๋ก ๋ณต์ก์ฑ์ ์ต์ํํ ์๋ ์
์ฐธ๊ณ : https://firstcheck.tistory.com/75TDD๊ฐ ์ด๋ ๋ค๋๋ผ ํ๋ ์ฐ์ฌ๋ ์ง์์ ์ ๋ฆฌํ ์ ์๋ ๊ณ๊ธฐ์ฆ๊ฒ๊ฒ ๊ฐ์ํ์๋๋ผ..ํนํ ์ ๋ฆฌ๋ ์ฝ๋ ์ฑํฐ์์๋ ํ ์คํธํ๊ณ ๋ฆฌํฉํ ๋ง ํ๋๊ฒ์ด๋ ์ด๋ป๊ฒ ํ๋ ๊ฒ์ธ์ง ํ์คํ๊ฒ ๋ณธ ๊ฒ ๊ฐ์์ ํนํ ๊ทธ
T์ ๋ชจ๋ ํ๋กํผํฐ๋ฅผ ์ต์ ํ๋กํผํฐ๋ก ์ง์ ํ์ฌ ์ ํ์ ์ ๊ตฌ์ฑํ๋ค.ย \* T์ ์ต์ ํ๋กํผํฐ๊ฐ ์์ด๋ Required<T> ๋ก ์ ์ธ์์๋ ๋ชจ๋ ํ๋กํผํฐ๊ฐ ํ์๊ฐ์ผ๋ก ์ง์ ํ์ฌ ์ ํ์ ์ด ๊ตฌ์ฑ๋๋ค.T์์ K ๋ง "Pick" ํด์ ์๋ก์ด ํ์ ์ ๊ตฌ์ฑ์๋ฅผ๋ค์ด ๋ฐ์ ์์ฉจ์
any๋ ํ์ ์คํฌ๋ฆฝํธ ๊ธฐ๋ฅ์ ์ ์ฐ๋ ํ์ unknown๋ any์ฒ๋ผ ๋ค ์ ๋ ฅํ ์ ์์ง๋ง any๋ณด๋ค๋ ์กฐ๊ธ ๋ ์์ ํจ \- any์๋ ๋ค๋ฅด๊ฒ ์ ์ ์๋ ํ์ ์ด๋ผ๊ณ ์ปดํ์ผ๋ฌ๊ฐ ํ๋ฒ ์ฒดํฌ๋ฅผ ํ๊ธฐ ๋๋ฌธ์ ๋ฌธ์ ๋๋ ์ฝ๋ ๋ฏธ๋ฆฌ ์๋ฐฉ ๊ฐ๋ฅtype์ด ํ์คํ์ง ์์ ๋ ์๊ธฐ๋
์ฌ๋ด์คํฐ๋ 1์ผ์ฐจ ์ ๋ฆฌ๋ด์ฉํ๊ณ ๋ฌธ์๋ฅผ ๋ณด๋ฉด ์๊ฒ ๋ ๋ด์ฉ์ด์ง๋ง ์ค๋ฌด๋ก ์ ์ฉํ ๋๋ ์ด๋ค์์ผ๋ก ํด์ผ๋ ์ง ๊ฐ์ด ์ ์์ด. ์ฐ๋ฆฌ๊ฐ ์ฌ์ฉํ๋ ค๋ ์คํ์ธ typescript + express ๋ณด์ผ๋ฌํ๋ ์ดํธ๋ฅผ ๊ณต๋ถํด๊ฐ๋ฉด์ ๋ง๋๋๊ฒ ๋ ๋น ๋ฅด์ง ์์๊น ํ๋ ๊ณตํต๋ ์๊ฒฌํ๋ฃจ์ ๊ณตํต๋ ๋ชฉํ๋ฅผ
route ํ์ผ์ ๋ณ๋๋ก ๊ด๋ฆฌํ๋ ค๋ฉด routes ํด๋๊ฐ ํ์๊ทธ ์์ ๋น์ทํ ๋ผ์ฐํธ๋ค์ ๋ณ๋์ jsํ์ผ๋ก ๊ด๋ฆฌ๋ถ๋ฆฌ๋ js ํ์ผserver.js์์ ๋ถ๋ฆฌํ ๋ผ์ฐํธ ๋ชจ๋์ ๋ก๋multer ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ค์นํ๊ณ ์ฌ์ฉ์ฐธ๊ณ : multerํด๋์ค์ชฝ ์์๋ณํ ์๋ฃ ์ ์ด์ฉํด ๋ณผ ์
Application Programming InterfaceAPI ๋์์ธ ๋ฐฉ๋ฒ์์น 6๊ฐ \- Uniform interface ( ์๋ง ์ ค ์ค์ํจ) \- ํ๋์ URL๋ก๋ ํ๋์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์์ผํจ \- ๊ฐ๊ฒฐํ๊ณ ์์ธก๊ฐ๋ฅํ๊ฒ \- URL ์ด๋ฆ์ง๊ธฐ ๊ด์ต์ ์
nodejs non-blocking IO์ผ๋จ ์์ฒญ ๋ค ๋ฐ๊ณ ๋๋ ์์ ๋ถํฐ ๋นจ๋ฆฌ ์ฒ๋ฆฌ, ์ค๋๊ฑธ๋ฆฌ๋ ์์ ์ ๋์ค์์ฝ๋๊ฐ ์งง๊ณ ์ฌ์์ ๋น ๋ฅธ ๊ฐ๋ฐ๊ฐ๋ฅ์น์๋น์ค๊ฐ ์๋ ๊ฒฝ์ฐ๋ ์ข ๋ณ๋ก ์์ค ์์ ํ๋ฉด ์์์ ์๋ฒ๋ฅผ ์ข ๋ฃํ๋ค๊ฐ ์ฌ์คํํด์ฃผ๋ ํจํค์ง
์ธํฐ๋ท ํ๋กํ ์ฝ ์ค์ํธ(Internet protocol suite) : ์ธํฐ๋ท์์ ์ปดํจํฐ๋ค์ด ์๋ก ์ ๋ณด๋ฅผ ์ฃผ๊ณ ๋ฐ๋ ๋ฐ ์ฐ์ด๋ ํ๋กํ ์ฝ์ ์งํฉTCP/IP 4๊ฐ์ธต / OSI 7๊ณ์ธตOSI ๊ณ์ธต์ ์ ํ๋ฆฌ์ผ์ด์ ์ 3๊ฐ๋ก ์ชผ๊ฐ๊ณ ๋งํฌ๋ฅผ ๋ฐ์ดํฐ ๋งํฌ์ ๋ฌผ๋ฆฌ๋ก ๋๋๋๊ฒ ๋ค๋ฆ. ์ธํฐ
๋ ธ๋์ ๋งํฌ๊ฐ ์๋ก ์ฐ๊ฒฐ๋์ด ์๊ฑฐ๋ ์ฐ๊ฒฐ๋์ด ์์ง ์์ ์งํฉ์ฒด๋ ธ๋ : ์๋ฒ, ๋ผ์ฐํฐ, ์ค์์น ๋ฑ ๋คํธ์ํฌ ์ฅ๋น๋งํฌ : ์ ์ ๋๋ ๋ฌด์ ์ข์ ๋คํธ์ํฌ๋ง์ ์ฒ๋ฆฌ๋ ์ฒ๋ฆฌ ๊ฐ๋ฅ์ฒ๋ฆฌ๋(throughput) : ๋งํฌ๋ฅผ ํตํด ์ ๋ฌ๋๋ ๋จ์ ์๊ฐ๋น ๋ฐ์ดํฐ์bps(bits per se
์ ์ธํํจ์ํ๋ช ๋ นํ๊ฐ์ฒด์งํฅํ์ ์ฐจ์งํฅํFunctional Programming์์ ์์ ํจ์๋ค์ ์์ ๋ก์ง์ ๊ตฌํํ๊ณ ๊ณ ์ฐจ ํจ์๋ฅผ ํตํด ์ฌ์ฌ์ฉ์ฑ์ ๋์ธ ํจ๋ฌ๋ค์์๋ฐ์คํฌ๋ฆฝํธ๋ ํจ์๊ฐ ์ผ๊ธ ๊ฐ์ฒด์ด๊ธฐ ๋๋ฌธ์ ๊ฐ์ฒด์งํฅ๋ณด๋ค๋ ํจ์ํ์ด ์ ํธ๋จ์ถ๋ ฅ์ด ์ ๋ ฅ์๋ง ์์กด๋๋ ํจ์ํจ์๋ฅผ ๊ฐ์ฒ๋ผ
ํ๋์ ํด๋์ค์ ์ค์ง ํ๋์ ์ธ์คํด์ค๋ง ๊ฐ์ง ์ธ์คํด์ค ์์ฑํ ๋ ๋ง๋๋ ๋น์ฉ์ ์ค์ด๋ค๊ณ ์์กด์ฑ์ ๋์์งTDD(Test Driven Development)๋ฅผ ํ ๋ ๊ฑธ๋ฆผ๋์ด ๋จ. ๊ฐ ํ ์คํธ๋ง๋ค ๋ ๋ฆฝ์ ์ธ ์ธ์คํด์ค๋ฅผ ๋ง๋ค๊ธฐ ์ด๋ ต๊ธฐ ๋๋ฌธEX) ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฐ๊ฒฐ ๋ชจ๋๊ฐ์ฒด ์์ฑ
ํ๋ก์ ํธ์์์ transcoder๋ฅผ media converter๋ก ์ธ์ ๊ฐ๋ ์ ํํด์ผ ํ๊ธฐ์ ๊ฐ๋ฐ์๋ฒ์์ ํ ์คํธ ์งํํด๋ณธ ๋ด์ฉ์ ๋ฏธ๋ฆฌ ์ ๋ฆฌํด๋ ๊ฒ๊ฒฐ๋ก ๋ถํฐ ๋งํ์๋ฉด ํ์ฌ ํ๋ก์ ํธ์์๋ Pre-signed Post ๋ฐฉ์์ผ๋ก ์์์ด ์ฌ๋ผ๊ฐ์ ๋๋ค์์ Put ํธ๋ฆฌ๊ฑฐ ์บ์น๊ฐ ์
gui๋ก๋ง ํธํ๊ฒ ์ฐ๋ฉด์ ์ด์์๋ฒ ๋ฐ์ํ๋ค ํด๋ ํ๋ ๋ ๋ ค๋จน์ ์ง๋๋ ์ ๋ฐ์ฑํ๋ฉฐ ๊ธฐ๋ก2.3 Git์ ๊ธฐ์ด - ์ปค๋ฐ ํ์คํ ๋ฆฌ ์กฐํํ๊ธฐ
gui๋ง ์ฐ๋ค ์ด์์๋ฒ ๋ฐ์ํ๋ค ํด๋ ํ๋ ๋ ๋ ค๋จน์ ์ง๋๋ ์ ๋ฐ์ฑํ๋ฉฐ ๊ธฐ๋ก์๋ฌด๊ฒ๋ ์๋ ๋ผ์ธ, '- ํ์ค Glob ํจํด ์ฌ์ฉ \- ์ ๊ทํํ์์ ๋จ์ํ๊ฒ ๋ง๋ ๊ฒ\* : ๋ฌธ์๊ฐ ํ๋๋ ์๊ฑฐ๋ ํ๋ ์ด์\[sdf] : ์ค๊ดํธ ์์ ์๋ ๋ฌธ์ ์ค ํ๋? : ๋ฌธ์ํ๋\[a-
๊ฐ๋ฐ์๋ฒ๋ฅผ ์ฒ์๋ถํฐ AWS์์ ๋ ํผ์ ๋ง๋ค๊ณ ๋๋ฉ์ธ์ฐ๊ฒฐ๊น์ง ํด์ผ๋๋ ๊ณผ์ ์์๊ธฐ์ตํด๋๊ธฐ ์ํด ์ ์ด๋์ ๋ด์ฉEC2, RDS ๋ก ์ด๋ฏธ ์๋ฒ์ DB๋ ๋ง๋ค์ด๋จ์.vpc๋ ์ด๋ฏธ ๊ธฐ์กด์ ์ฐ๋ ๋ณด์๊ทธ๋ฃน์ผ๋ก ์ฌ์ฉํ๊ธฐ๋กํจ.๋๋ฉ์ธ ๊ตฌ๋งค ํ Route53๊น์ง์ ํธ์คํ ๋ฑ๋ก์ ์ด๋ฏธ CTO๋
name ๋ถ๋ถ์ ๋ณดํต origin๋ชจ๋ remote ์ ์ฅ์์ ์ต์ ์ํฉ์ ์ ๋ฐ์ดํธ์ํฉ์ด ๋ก์ปฌ์ ์ ๋ฐ์ดํธ๋ง ๋๋๊ฒ์ด์ง ๋๊ธฐํ๊ฐ ๋๋๊ฒ์ ์๋๋ค!์ด์์๋ฒ ์ธ ๊ฐ๋ฐ์๋ฒ๋ฅผ AWS์์ ์ต์ด ์ธํ ํ๊ณ git๊ณผ์ ๋๊ธฐํ๋ฅผ ์ํด ์๋์ ๊ฐ์ด ์คํ์๋ฒ์ ์ด๋ฏธ ์์ค๋ ์ฌ๋ผ๊ฐ์๋ ์ํ์ด๋ฏ
์ธ์ฃผ๊ฐ๋ฐ์๋๊ป ๋ค์ ๋๋ ๋น๋๊ฐ ์๋์ ubuntu18 ๋ฒ์ ์ผ๋ก ํ์ จ๋ค๋ ์๊ธฐ๋ฅผ ๋ฃ๊ณ ์ด๋ฏธ ํดํwsl2 ์ชฝ์ ํด๋น ๋ฒ์ ์ผ๋ก ์ผ๋จ ์ธํ ์ ํด๋ณด๊ณ ์ผ์ฌ์ฐจ๊ฒ npm install์ ํ์ผ๋ ์คํจ https://github.com/sass/node-sass/releas
๊ณฑ๊ฒ ๊ณฑ๊ฒ ์๋ผ์ค๋ค๊ฐ ๋ฐ์ pem ํค ๊ฐ์ง๊ณ ์์์ ์ ์ํ์ด์ผ ํ๋ ์ํฉMobaXterm์ ์ฌ์ฉํ๋๋ฐ ์ฒ์์ ์๋์ ๊ฒ์์ ์ข ํด๋ณด๋ ์๋์ฐ๋ pem๋ง๊ณ ppk๋ฅผ ์จ์ผ๋๋ค๊ธธ๋ ppk๋ฅผ ๋ง๋ค์ด๋ดค์ผ๋ ์๋จ. Putty๋ฅผ ์จ๋ด๋ ์๋จ.์์ธ์ AWS์ ํด๋น ํ๋ก์ ํธ๊ฐ ์ธํ ๋