https://school.programmers.co.kr/learn/courses/30/lessons/12915JS์์๋ ๋ฐฐ์ด์ index์ ์์นํ ์์์ ์ ๊ทผํ๋ ๊ฒ๊ณผ ๋์ผํ ๋ฐฉ๋ฒ์ผ๋ก ๋ฌธ์์ด์ n๋ฒ์งธ์ ๋ฌธ์์ ์ ๊ทผํ ์ ์๋ค. (index์ ๊ฐ์ด 0๋ถํฐ ์
https://school.programmers.co.kr/learn/courses/30/lessons/76501https://school.programmers.co.kr/learn/courses/30/lessons/12916๋ค๋ฅธ ํ์ด๋ฅผ ํตํด ๊ณต๋ถํ
์ฐธ๊ณ ์๋ฃhttps://nodejs.org/api/child_process.htmlNode.js ์ ํ๋ฆฌ์ผ์ด์ ์์ ์๋ฒ์ ๋ค์ค ํ๋ก์ธ์๋ฅผ ํจ์จ์ ์ผ๋ก ํ์ฉํ๋ ค๋ฉด ์์ ์ ์์ ํ๋ก์ธ์ค์ ๋ถ๋ฐฐํด์ผ ํ๋ค. Child Process ๋ชจ๋์ ์ฌ์ฉํด ์์ ํ๋ก์ธ์ค๋ฅผ ์์ฑํ๊ฑฐ
1. ์๋ฐ์คํฌ๋ฆฝํธ ์๊ฐ JS์ธ์ด์ ์ญ์ฌ 1995๋ LiveScript๋ผ๋ ์ด๋ฆ์ผ๋ก ์ฒ์ ๋ฑ์ฅ. ๋น์ Java ์ธ์ด์ ์ธ๊ธฐ๊ฐ ํญ๋ฐ์ ์ด์๊ธฐ์, ์ด๋ฆ์ JavaScript๋ก ๋ณ๊ฒฝ. ์ฆ, Java์๋ ์ ํ ๊ด๋ จ์ด ์๋ ์ธ์ด. 2005๋ AJAX ๋ฑ์ฅ ๋น๋๊ธฐ ์น ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ๋ฐ ๊ฐ๋ฅ ํญ๋ฐ์ ์ธ UX ํฅ์ 2008๋ google V8 ์์ง ์ถ์ 2009๋ ...
https://namu.wiki/w/CPU%20%EA%B2%8C%EC%9D%B4%ED%8A%B8์ํค์ง๋ ์์ ์ผ์ ํ๋ค. -> ๋ณด์์ฌ๊ณ ๋ก ์ด์ด์ง.ํน์ ํธ์ค์ ๋ํ ์ง๋ฌธ์ ๋น๋๊ฐ ์ฆ์ผ๋ฉด, ํด๋น ํธ์ค์ ์ ๋ณด๋ฅผ ๋ฉ๋ชจ์ง์ ์ ์ด ๋๋๋ค. (Caching)์ง๋ฌธ์ด ๋ค์ด์์
CPU : ์ฐ์ฐ์ฅ์น, ์๋๊ฐ ๋น ๋ฅผ ์๋ก ์ข์ ๊ฒ.CPU์ Core๋ ์ฐ์ฐํ๋ ์ญํ ์ ์ํํ๋ค.Cache Memory๋ฅผ ํตํด CPU์ RAM ์ฒ๋ฆฌ์๋์ ํฐ ์ฐจ์ด๋ก ์ธํ ๋ฌธ์ ์ ์ ์ด๋์ ๋ ํด์์ํจ๋ค.์๋ฃ์ ์ํ๋ฉด, CPU์ ์ฒ๋ฆฌ์๋ 1ns์ผ ๋ RAM์ ์ฒ๋ฆฌ์๋๋ 50ns
DMA? Direct Memory Access์ ์ฝ์ DMA๋ฅผ ์๋ฉด ๊ณ ์ฑ๋ฅ ์์ผ์ด ๋ณด์ธ๋ค!!! DMA? NIC? IOCP? ๋ด๋ถ์์์ ๋ฐ์ดํฐ ์ด๋์ ์ค์ฌ ์ฑ๋ฅ์ ๋ํญ ํฅ์์ํฌ ์ ์๋ค. > ์ด๋ฐ๊ฒ ์๊ตฌ๋, ํ๊ณ ๋์ด๊ฐ๋ ์ ๋์ ํ์ต์ ํ๊ณ ์๋ค. ๊ทธ๋ ๋ค๋ณด๋ ์ด๋ฒ ๊ฐ์์์๋ ์ฝ์ฌ๋ฆฌ ์ ๋ฆฌ์ ์์ ๋ ์ ์์๋ค. ์กฐ๊ธ ๋ ๊ผผ๊ผผํ๊ฒ ํ์ต์ ํด๋ณด๋๋กํ์. ...
์ด์ ๊ฐ์ ์๋ฌธ ๋ต๋ณ ๋ฐ ์ฐธ๊ณ ์๋ฃ ์ง๋ฌธํ ๋ด์ฉ์ '๋๊ณ ์๊ฒ ์ธ์์ ์ปด๊ณต ์ ๊ณต์ ๋๊ธฐ'์์ ๋ค๋ฃฌ ๋ด์ฉ์ ๋๋ค. ์ด์์ฒด์ ๊ฐ์์ ์์ ๋ฐ๋์ ๋ค์๋ค๊ณ ๊ฐ์ ํ๋ ๊ฒ์ ๋๋ค. > https://www.inflearn.com/course/%EB%84%93%EA%B3%A0%EC%
๊ณฐ์ฑ ์ผ๋ก ์ฝ๊ฒ ๋ฐฐ์ฐ๋ ์ต์ํ์ ์ด์์ฒด์ ๋ก
์ด์ ๋ธ๋ฆฌ์ด๋ ์ฃผ์๋ฅผ ์ฌ์ฉํ์ง๋ง, C์ธ์ด๋ ๋ณ์ ์ด๋ฆ์ ์ฌ์ฉํฉ๋๋ค.
CPU์ ๋ฐ๋ผ ๋ช ๋ น์ ๊ฐ์ด ๋ค๋ฆ ๋๋ค.๋ช ๋ น์ด ๋ค๋ฅธ ๊ฒ ๋ฟ๋ง ์๋๋ผ ๋ช ๋ น์ ๋ฐ๋ผ ๋ค์ ๋์ค๋ ๋ด์ฉ๋ ์๋ฏธ๊ฐ ๋ฌ๋ผ์ง๋๋ค.์์ ๊ทธ๋ฆผ์์ ํํ๋ CPU๋0x14 ์ ์ฅ0x19 ๋ํ๊ธฐ๋ก ์๋ํฉ๋๋ค.๋ํ ๊ฐ ๋ช ๋ น์ด๋ ๊ธฐ๋ฅ์ ๋ฐ๋ผ ๋ค์ ์ค๋ ๋ด์ฉ์ ์๋ฏธ๊ฐ ๋ค๋ฅด๋ค๋ ๊ฒ์ ์ ์ ์์ต๋๋ค
ํ๋ก๊ทธ๋จ๊ณผ ๋ฐ์ดํฐ๊ฐ ๋ฉ๋ชจ๋ฆฌ์ ์๊ธฐ๊ณ ,๋ฉ๋ชจ๋ฆฌ์ ์๊ธด ๊ฒ์ ์ฌ์ฉํ๊ณ ,์ฌ์ฉ์ด ๋๋๋ฉด ๋ฉ๋ชจ๋ฆฌ์์ ์ฌ๋ผ์ง๋๋ค.๋ณต์ฌ์ ์๋ฆฌ๋ ๋ฐ์ดํฐ๊ฐ ๊ฐ์์ง๋ ๊ฒ์ด๊ณ ,์ด๋์ ๋ณต์ฌ๋ฅผ ํ๊ณ ๋ ํ์, ์๋ณธ์ ์ง์ฐ๋ ๊ฒ์ ๋๋ค.๋ฉ๋ชจ๋ฆฌ์ ์ง์ ํด ๋์ ์์ญ์ ์๋ฏธํฉ๋๋ค.์คํ์ ๋ฐ์ดํฐ ๋ฉ๋ชจ๋ฆฌ์ ๋ฐ์ดํฐ๊ฐ ์๊ฒจ
๋ฌผ์ด ๋ด๊ธด ํต์ -> 1๋ฌผ์ด ์๋ ํต์ -> 01 0 1 1 ๊ณผ ๊ฐ์ด ๋ฌผ์ด ๋ด๊ธด ํต 3๊ฐ์ ๋ฌผ์ด ์๋ ํต 1๊ฐ๋ฅผ ํํํ ์ ์๋ค.๊ฐ์ ๋๊ฐ์ด ๋ง๋ค์ด์ ๋ณต์ฌ!!์ ๊ธฐ์ ๋ฌผ์ ๋น์ทํ ์ฑ์ง์ ๊ฐ์ง๋๋ค.๋๋๋ฌ์ง๋ ์ฐจ์ด์ ์ ์ ๊ธฐ๋ ๋ณต์ฌ๊ฐ ๊ฐ๋ฅํ๋ค๋ ์ ์ ๋๋ค.(๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ, ์ ์ฅ๊ณต
PM ์ธํด์ผ๋ก ์์์ผ๋ถํฐ ํ์ ํฉ๋ฅํจ๊ณผ ๋์์, ์ด์ ๋ ์ด์ด ์ข๊ฒ ์ฐ๋กํ์ฌ๋ ๋ค๋ฆ์๋ ํ ํ์์ผ์ ์ด!!๊ทธ๋์ ๊ณต๋ถ๋ฅผ...(ํ๊ณ ใ ...)๊ทธ๋๋ ํ ๋ฌธํ์ ์กฐ๊ธ ๋ ์ ์ํ ์ ์๋ ๊ธฐํ๊ฐ ๋ ๊ฒ ๊ฐ์ ์ข์๋ ํ๋ฃจ์๋ค!!!2์ง๋ฒ : 0๊ณผ 1๋ก ์๋ฅผ ํํ10์ง๋ฒ: 0~9 ๊น
AOP๋, Aspect-Oriented Programming์ ์ฝ์๋ก ๊ด์ ์งํฅ ํ๋ก๊ทธ๋๋ฐ์ ์๋ฏธํฉ๋๋ค.๊ด์ ์งํฅ ํ๋ก๊ทธ๋๋ฐ์ ํก๋จ ๊ด์ฌ์ฌ(Cross Cutting Concern)์ ๋ถ๋ฆฌ๋ฅผ ํ์ฉํจ์ผ๋ก์จ ๋ชจ๋์ฑ์ ์ฆ๊ฐ์ํค๋ ๊ฒ์ด ๋ชฉ์ ์ธ ํ๋ก๊ทธ๋๋ฐ ํจ๋ฌ๋ค์์ ๋๋ค.์ด๋ฅผ ํตํด
๊ฐ์๋ฉ๋ชจ๋ฆฌ๋ ์ค์ ์ ๋ฌผ๋ฆฌ ๋ฉ๋ชจ๋ฆฌ ๊ฐ๋ ๊ณผ ๊ฐ๋ฐ์ ์ ์ฅ์ ๋ ผ๋ฆฌ ๋ฉ๋ชจ๋ฆฌ ๊ฐ๋ ์ ๋ถ๋ฆฌํ ๊ฒ์ ๋๋ค.
๊ฒฝ์ ์ํ๋ ๋ ์ด์์ ์ ๋ ฅ, ์กฐ์์ ํ์ด๋ฐ์ ๋ฐ๋ผ ๊ฒฐ๊ณผ๊ฐ ๋ฌ๋ผ์ง ์ ์๋ ์ํ๋ฅผ ์๋ฏธํฉ๋๋ค. ๊ฒฝ์ ์ํ์ ํ๋ก๊ทธ๋จ์ ๋น๊ฒฐ์ ์ (Nondeterministic)์ผ๋ก ๋์ํ ์ ์์ผ๋ฏ๋ก, ์ฐ๋ฆฌ์ ์์๊ณผ ๋ค๋ฅธ ๊ฒฐ๊ณผ๋ฅผ ๋ผ ์ ์์ต๋๋ค.์ผ๋ฐ์ ์ผ๋ก ์ปดํจํฐ ๊ณผํ์์ ๊ฒฝ์ ์ํ๋ ๊ณต
๋น์ด๋ ์คํ๋ง IoC ์ปจํ ์ด๋๊ฐ ๊ด๋ฆฌํ๋ ์๋ฐ ๊ฐ์ฒด๋ฅผ ์๋ฏธํฉ๋๋ค.์ฌ๊ธฐ์ ๋งํ๋ ์๋ฐ ๊ฐ์ฒด๋ POJO ์๋ฐ ๊ฐ์ฒด๋ฅผ ์๋ฏธํฉ๋๋ค.@Component ์ด๋ ธํ ์ด์ ์ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ด ์์ต๋๋ค.@Component ์ด๋ ธํ ์ด์ ์ด ๋ถ์ด ์๋ ๊ฒฝ์ฐ ์ปดํฌ๋ํธ ์ค์บ์ ํตํด ๋น์ผ๋ก ๋ฑ๋กํด์ค๋๋ค