CS14 [CS] : ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ ๊ฐ์ฒด ์งํฅ ํ๋ก๊ทธ๋๋ฐ ? ํ๋ก๊ทธ๋๋ฐ์์ ํ์ํ ๋ฐ์ดํฐ๋ฅผ ์ถ์ํ ์์ผ์ ์ํ์ ํ์๋ฅผ ๊ฐ์ง ๊ฐ์ฒด๋ก ๋ง๋ค๊ณ , ๊ฐ์ฒด๋ค๊ฐ์ ์ํธ์์ฉ์ ํตํด ๋ก์ง์ ๊ตฌ์ฑํ๋ ํ๋ก๊ทธ๋๋ฐ ๋ฐฉ๋ฒ์ด๋ค. ๊ฐ์ฒด ์งํฅ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด C++ / C# / Java / Python / JavaScript / Ruby / Swift ๋ฑ์ด ์๋ค. ๊ฐ์ฒด ์งํฅ ํ๋ก๊ทธ๋๋ฐ์ ํน์ง ์ถ์ํ ์บก์ํ ์์ ๋คํ์ฑ 1. ์ถ์ํ ๊ฐ์ฒด์์ ๊ณตํต๋ ์์ฑ๊ณผ ํ์๋ฅผ ์ถ์ถ ํ๋ ๊ฒ ๊ณตํต์ ์์ฑ๊ณผ ํ์๋ฅผ ์ฐพ์์ ํ์ ์ ์ ์ํ๋ ๊ณผ์ ์ถ์ํ๋ ๋ถํ์ํ ์ ๋ณด๋ ์จ๊ธฐ๊ณ ์ค์ํ ์ ๋ณด๋ง์ ํํํจ์ผ๋ก์จ ํ๋ก๊ทธ๋จ์ ๊ฐ๋จํ๊ฒ ๋ง๋๋ ๊ฒ 1-1. ์ถ์ํ์ ํ์ ์ด์ "๊ฐ์์ง"๋ผ๋ ํด๋์ค๊ฐ ์์ ๋ "ํธ๋ค"๋ง ์๋๊ฒ์ด ์๋๊ณ , "๋น์"์ด๋ผ๋ ํด๋์ค๊ฐ ์ถ๊ฐ๊ฐ ๋๋ค๋ฉด "๊ฐ์์ง"๋ผ๋ ๊ฐ์ฒด๋ฅผ ์ถ์ํ.. 2023. 8. 30. [CS] : DI ์ IoC DI ์ IoC ? ์ํํธ์จ์ด ๊ฐ๋ฐ์์ ์ค์ํ ๊ฐ๋ ์ค ํ๋์ด๋ฉฐ, 1. ์ฝ๋์ ์ ์ง๋ณด์์ฑ , 2. ํ ์คํธ ์ฉ์ด์ฑ , 3. ํ์ฅ์ฑ ์ ํฅ์์ํค๋๋ฐ ๋์์ด ๋๋ ์์น์ด๋ค. IoC (Inversion of Control) ? ์ง์ญํ๋ฉด "์ ์ด์ ์ญ์ " ๊ณผ ๊ฐ๋ค. IoC๋ ์ํํธ์จ์ด ์ปดํฌ๋ํธ(ํด๋์ค, ๋ชจ๋)์ ์ ์ด๊ถ์ ํ๋ ์์ํฌ๋ ์ปจํ ์ด๋์ ๋๊ธฐ๋ ๊ฐ๋ ์ด๋ค. ์ผ๋ฐ์ ์ผ๋ก ์ ํ๋ฆฌ์ผ์ด์ ์ฝ๋๊ฐ ์ ์ด ํ๋ฆ์ ์ ์ดํ๋ ๊ฒ์ด ์๋๋ผ ์ธ๋ถ ์ปจํ ์ด๋๊ฐ ์ ์ดํ๋ฆ์ ์ ์ดํ๊ฒ ๋๋ค. ์ด๋ฌํ ์ ์ด์ ์ญ์ ์ ๊ฐ์ฒด์ ์๋ช ์ฃผ๊ธฐ ๊ด๋ฆฌ์ ์์กด์ฑ ํด๊ฒฐ์ ์๋ํํ๊ณ , ์ปดํฌ๋ํธ๊ฐ์ ๊ฒฐํฉ๋๋ฅผ ๋ฎ์ถ์ด ๋ ๋ชจ๋ํ๋ ์ฝ๋๋ฅผ ์์ฑํ ์ ์๋๋ก ๋์์ฃผ๋ ์ญํ ์ ํ๋ค. ์ ๊ฐ๋ ๋ค์ ์๋ก ๋ค์๋ฉด ์๋์ ๊ฐ์ ์์๊ฐ ์๋ค. IoC ์์ ํ๋ ์์ํฌ๋ฅผ ์ฌ์ฉํ ๋๋ฅผ ์.. 2023. 8. 29. [CS] : ์ฟ ํค์ ์ธ์ ์ฟ ํค ๋๋ ์ธ์ ์ ์ฌ์ฉ ์ด์ HTTP ํ๋กํ ์ฝ ํ๊ฒฝ์ ํน์ฑ ๋ฐ ์ฝ์ ์ ๋ณด์ํ๊ธฐ ์ํด์ HTTP ํ๋กํ ์ฝ์ ํน์ฑ ๋ฐ ์ฝ์ connectionless stateless ์๋ฒ๋ ์ ์ํ ํด๋ผ์ด์ธํธ๊ฐ ๋๊ตฌ์ธ์ง ๋งค๋ฒ ํ์ธ์ ํด์ผํ๋ค. Connectionless ํด๋ผ์ด์ธํธ๊ฐ ์์ฒญํ ๊ฒ์ ๋ํ ์๋ต์ ๋ฐ๊ฒ๋๋ฉด, ๊ทธ ์ฐ๊ฒฐ์ ๋์ด๋ฒ๋ฆฌ๋ ํน์ฑ HTTP์์๋ ํด๋ผ์ด์ธํธ๊ฐ ์๋ฒ์ req๋ฅผ ๋ณด๋ด๊ณ ์๋ฒ๋ ์๋ง์ res๋ฅผ ์ ๊ณตํ๋ค๋ฉด res๋ฅผ ๋ณด๋ด๊ณ ์ ์์ ๋๋ ํน์ฑ์ด ์กด์ฌํ๋ค. Stateless ํต์ ์ด ๋๋๊ฒ๋๋ฉด ์ํ๋ฅผ ์ ์งํ์ง ์๋ ํน์ฑ connectionless์ ํน์ฑ์ผ๋ก ์ฐ๊ฒฐ์ด ๋๊ธฐ๊ฒ ๋๋ฉด ๊ทธ ์๊ฐ ์๋ฒ์ ํด๋ผ์ด์ธํธ์ ํต์ ์ ๋๋๊ฒ ๋๋ฉฐ, ๊ทธ ๋น์ ์ํ์ ๋ณด๋ ์ ์งํ์ง ์๋ ํน์ฑ์ด ๋ฐ๋ก stateless ์ด๋ค. ์ ๋๊ฐ์ง์ ํน.. 2023. 8. 28. [CS] : ๊ฐ์ฅ ์ผ๋ฐ์ ์ผ๋ก ์ฐ์ด๋ ๋ฐ์ดํฐ ๋จ์ ๋นํธ (bit) ์ ํธ๋ฅผ ๋ํ๋ด๋ ์ต์ ๋จ์ ์ปดํจํฐ๊ฐ ์ฒ๋ฆฌํ๋ ์ ๋ณด์ ์ต์ ๋จ์ ๋นํธ 1๊ฐ๋ก๋ ๋ง์ ์์ ๋ฐ์ดํฐ๋ฅผ ๋ํ๋ด๊ธฐ ์ด๋ ต๊ธฐ๋๋ฌธ์ ๋นํธ 8๊ฐ๋ฅผ ๋ฌถ์ ๋ฐ์ดํธ๋ฅผ ์ ๋ณด๋ฅผ ํํํ๋ ๊ธฐ๋ณธ๋จ์๋ก ์ฌ์ฉํ๊ณ ์๋ค. ๋ฐ์ดํธ (byte) ์ ๋ณด์ ๊ธฐ๋ณธ ๋จ์ 1๋ฐ์ดํธ = 256๊ฐ ์ข ๋ฅ์ ์ ๋ณด๋ฅผ ๋ํ๋ผ ์ ์์ (2์ 8์น) ์์ด = ํ ๋ฌธ์๋น 1๋ฐ์ดํธ ํ๊ธ/๋์๊ถ ๋ฌธ์ = ํ ๋ฌธ์๋น 2๋ฐ์ดํธ ๋ฐ์ดํธ์ ๋จ์๋ 1024๋ฐฐ์ฉ ํ์ฅ๋์ด์ ์๋ก์ด ๋จ์๋ฅผ ๋ํ๋ธ๋ค. ์ ์ฅ์ฅ์น์ ํ๊ธฐ์ฉ๋๊ณผ ์ค์ ์ฉ๋์ด ๋ค๋ฅธ ์ด์ ? ์ด์ ๋ ์ญ์ง๋ฒ์ผ๋ก ํ๊ธฐ๋ฅผ ํ๊ธฐ ๋๋ฌธ ์ ์กฐ์ ์ฒด ๊ธฐ์ค 1TB ์ ์ฅ์ฅ์น๋ 1,000,000,000,000(1์กฐ) ๋ฐ์ดํธ๋ฅผ ์ ์ฅํ ์ ์๋ค๊ณ ํ๊ธฐ๋์ด ์์ง๋ง ์ค์ ์ปดํจํฐ ๊ท์น์ธ ์ด์ง๋ฒ์ผ๋ก ๋๋๊ฒ ๋๋ฉด 1TB = 931GB ๊ฐ ๋๋ค... 2023. 8. 28. [CS] : TCP / UDP TCP ? ์ฐ๊ฒฐ ์งํฅ์ ํ๋กํ ์ฝ ์ฅ์น๋ค ์ฌ์ด ๋ ผ๋ฆฌ์ ์ธ ์ ์์ ์ฑ๋ฆฝํ๊ธฐ ์ํด์ ์ฐ๊ฒฐ์ ์ค์ ํด "์ ๋ขฐ์ฑ์ ๋ณด์ฅํ๋ ์ฐ๊ฒฐํ ์๋น์ค" TCP๋ ๋คํธ์ํฌ์ ์ฐ๊ฒฐ๋ ์ปดํจํฐ์์ ์คํ๋๋ ํ๋ก๊ทธ๋จ๊ฐ์ "์ผ๋ จ์ ์ฅํ (๋ฐ์ดํฐ, ๋ฉ์์ง, ์ธ๊ทธ๋ฐํธ๋ผ๋ ๋ธ๋ก ๋จ์)์" "์์ ์ ์ผ๋ก, ์์๋๋ก, ์๋ฌ์์ด" ๊ตํํ ์ ์๊ฒ ๋ง๋ค์ด์ค๋ค. ์ฐ๊ฒฐ ์งํฅ์ ํ๋กํ ์ฝ ? ํด๋ผ์ด์ธํธ์ ์๋ฒ๊ฐ ์ฐ๊ฒฐ๋์ด ์๋ ์ํ์์ ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ๋ ํ๋กํ ์ฝ์ ์๋ฏธ TCP์ ํน์ง 1. ์ฐ๊ฒฐํ ์๋น์ค๋ก ๊ฐ์ ํ์ ๋ฐฉ์์ ์ ๊ณต 3-way handshaking ๊ณผ์ ์ ํตํด ์ฐ๊ฒฐ์ ์ค์ ํ๊ณ 4-way handshaking ๊ณผ์ ์ ํตํด ์ฐ๊ฒฐ์ ํด์ ํ๋ค. 2. ํ๋ฆ ์ ์ด ๋ฐ์ดํฐ ์ฒ๋ฆฌ์๋๋ฅผ ์กฐ์ ํ์ฌ ์์ ์์ ๋ฒํผ ์ค๋ฒํ๋ก์ฐ๋ฅผ ๋ฐฉ์ง 3. ํผ์ก ์ ์ด ๋คํธ์ํฌ ๋ด์ ํจํท ์๊ฐ.. 2023. 8. 28. [CS] : HTTP ์ HTTPS HTTP ? ํ์ดํผ ํ ์คํธ ์ ์ก ํ๋กํ ์ฝ ์ธํฐ๋ท์ ์๋์ํค๋ ์ญํ ์ ํ๊ณ , ์น ์๋ฒ ๋ฐ ์น ๋ธ๋ผ์ฐ์ ์ํธ ๊ฐ์ ๋ฐ์ดํฐ ์ ์ก์ ์ํ ์์ฉ๊ณ์ธต ํ๋กํ ์ฝ์ด๋ค. HTTPS ? ํ์ดํผ ํ ์คํธ ์ ์ก ํ๋กํ ์ฝ ๋ณด์ ํ์ค HTTP์ ๋์ผํ ๋ฐฉ์์ผ๋ก ์๋ํ์ง๋ง, ์๋ฒ์ ์ฃผ๊ณ ๋ฐ๋ ๋ฐ์ดํฐ๊ฐ ์ํธํ๊ฐ ๋๊ธฐ ๋๋ฌธ์ ์น์ฌ์ดํธ์ ์ถ๊ฐ์ ์ธ ๋ณดํธ๋ฅผ ์ ๊ณตํด์ฃผ๋ ์ญํ ์ ํ๋ค. ์ฆ, ๊ฐ์ธ ๋ฐ์ดํฐ๋ฅผ ํ์น๊ฑฐ๋ ํดํนํ๊ฑฐ๋ ๋ณผ ์ ์๋๋ก ์๋์ ํ๋ค. HTTP vs HTTPS HTTPS ๋ SSL ์ธ์ฆ์๋ฅผ ์ฌ์ฉํ๋ HTTP ์ด๋ค. SSL ์ธ์ฆ์๋ ์ผ๋ฐ์ ์ธ HTTP ์์ฒญ/์๋ต ์ ์ํธํ ์ํจ๋ค. HTTPS ํ์ธ ๋ฐฉ๋ฒ ๋ธ๋ผ์ฐ์ ์์ URL์ ํ์ธํด HTTPS ๋ณดํธ๊ธฐ๋ฅ์ด ์๋์ง ํ์ธํ ์ ์๋ค. ๋ณธ์ธ ์ฃผ์์ฐฝ ์ ๋ ฅ๋์ ์ ์ผ ์ผ์ชฝ์ ์๋ฌผ์ ์์ด์ฝ์ด ์๋ค๋ฉด .. 2023. 8. 28. ์ด์ 1 2 3 ๋ค์