Mandatory part : ์ค๋ ๋์ ๋ฎคํ ์ค๋ฅผ ์ฌ์ฉํ ์ฒ ํ์์ ๊ตฌํ > memset, printf, malloc, free, write, usleep, gettimeofday, pthreadcreate, pthreaddetach, pthreadjoin, pthread
psql -? : ์ต์ ๋ชฉ๋ก ๋ฐ ๋์๋ง์ ํ์ธํ ์ ์์ต๋๋ค.\\l or \\list + +: ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ชฉ๋ก์ ๋ณด์ฌ์ค๋๋ค. +๋ฅผ ๋ถ์ฌ ์์ธํ ๋ด์ฉ์ ํ์ธํ ์ ์์ต๋๋ค.\\d or \\dt+ + : ํ ์ด๋ธ, ์ธ๋ฑ์ค, ์ํ์ค, ๋ทฐ ๋ชฉ๋ก์ ๋ณด์ฌ์ค๋๋ค. +๋ฅผ ๋ถ์ฌ ์์ธํ
๋ฒ์ ์ 14.5 ์ฌ์ฉ์ค ๋ฐ์ํ ์ค๋ฅ! ๋ฐ์ ์ด์ ๋ ๋ด๋ถ postmaster.pid ํ์ผ์ด ๋ฐ์์ํค๋ Process ์ถฉ๋ ๋๋ฌธ!! (๋๋ฅผ ๊ดด๋กญํ์ง๋ง.. ๐)
ํ๋ก์ ํธ ์ค ๋ฐ์ํ sass ์ค๋ฅ ํ์ธ
๋จผ์ , MPA์ SPA์ ๋ํด ๊ฐ๋จํ๊ฒ ์์๋ณด๋ฉด SSR๊ณผ CSR์ ๋ํด ๋์ฑ ์ดํดํ๊ธฐ ์ข์ ๊ฒ ๊ฐ์ต๋๋ค.ํญ์ ์ด๋ํ ๋๋ง๋ค ์๋ฒ๋ก๋ถํฐ ๋ฐ์ดํฐ๋ฅผ ๋ฐ์์์ ํ์ด์ง ์ ์ฒด๋ฅผ ์๋ก ๋ ๋๋งํ๋ ์ ํต์ ์ธ ์น ํ์ด์ง ๊ตฌ์ฑ ๋ฐฉ์์ ๋๋ค. ์ผ๋ฐ์ ์ผ๋ก MPA์์๋ ๋ ๋๋ง ๋ฐฉ์์ผ๋ก SSR์
ํ์ฌ ๋์์ ์ป๋ ๋ฐฉ๋ฒ๊ณผ ์ด๋ป๊ฒ ๋ธ๋ก์ ์ ์ฅํ๋์ง์ ๊ดํด ์์๋ณผ ๊ฒ์ ๋๋ค. ๋์๊ณผ ์ฐ๊ฒฐ๋ ๋์ด๋๋ ํ์ฌ ๋์์ ์ต๋ ๋์์ผ๋ก ๋๋ ๊ฒ์ ๋๋ค. ๋์(Target) ์ ์ฅ - ํ์ฌ ๋์ ํ์ฌ ๋์์ ๊ฒฝ์ฐ Bits๋ผ๊ณ ๋ถ๋ฅด๋ ํ๋์ ์ ์ฅ ๋ฉ๋๋ค. https://www.
51%์ ๊ณต๊ฒฉ์ ๊ฐ์์ ๊ณต๊ฒฉ์ด๊ธด ํ์ง๋ง ์ค์ ๋ก ์ผ์ด๋ ๊ฐ๋ฅ์ฑ๋ ์์ต๋๋ค. ์ด ๊ณต๊ฒฉ์ด ๊ฐ์ ธ์ฌ ์ ์๋ ๊ฒฐ๊ณผ ๋๋ฌธ์ ๋ธ๋ก์ฒด์ธ ์ฐธ์ฌ์๋ค์ด๋ ์ฑ๊ตด์๋ค์ ์ด๋ฅผ ๋๋ ค์ํ๊ณ ๋ ์์ฃผ ์ธ๊ธํฉ๋๋ค. 51%์ ๊ณต๊ฒฉ์ธ ๊ฒ๊ณผ 51%์ ๊ณต๊ฒฉ์ด ์๋ ๊ฒ์ ๋ํด ์์๋ณผ ๊ฒ์ ๋๋ค. 51% ๊ณต๊ฒฉ
๊ณ ์๋ธ๋ก(orphan block)์ ๋ ๊ฐ์ ๋ธ๋ก์ด ๋์์ ์น์ธ๋์์ ๋ ๋ฉ์ธ์ฒด์ธ์ผ๋ก ์ฐ๊ฒฐ๋์ง ๋ชปํด ๋ฐ๋ก ๋จ์ด์ ธ ์กด์ฌํ๋ ๋ธ๋ก์ ๋งํฉ๋๋ค. ์คํ ์ผ๋ธ๋ก(stale block)์ด๋ผ๊ณ ๋ ํ๋ฉฐ ๊ณ ์๋ธ๋ก ์ค์์ ์ฒซ๋ฒ์งธ ๋ธ๋ก์ ์ํด๋ธ๋ก(uncle block)์ด๋ผ๊ณ ํฉ๋๋ค.๊ณ ์ ๋ธ
๋ถ์ฐ P2P ๋คํธ์ํฌ์์ ๋ฉคํ์ ์๋ ์๋ฆฌ์ ๋ํด ์ดํด๋ณด๊ฒ ์ต๋๋ค.๋ ธ๋๋ผ๊ณ ๋ถ๋ฆฌ๋ ๋คํธ์ํฌ ๋ด ์ฐธ์ฌ์๋ค์ด ์ด์ฉํ๋ ์ปดํจํฐ๋ฅผ ๋ ธ๋๋ผ๊ณ ํ๋ฉฐ ์ด๋ค์ ์ฑ๊ตด์๊ฐ ์๋๋ผ ํด๋น ๋คํธ์ํฌ์์ ๊ฑฐ๋ํ๊ณ ์๋ก์๊ฒ ๋นํธ์ฝ์ธ ๋๋ ๋ค๋ฅธ ์ํธํํ๋ฅผ ๋ณด๋ด๋ ๋ฑ์ ํ๋์ ํ๋ ์ฌ๋๋ค ์ ๋๋ค.์ด๋ค
์ฑ๊ตด์๋ค์ด ํด์ ์ํธ๋ฌธ์ ํด๋ ํ ๋ ์ฌ์ฉํ๋ ํ๋์จ์ด ์ค CPU, GPU, ASIC์ ๋ํด ์์๋ด ๋๋ค.์ปดํจํฐ์ ์ฐ์ฐ์ด ์ด๋ฃจ์ด์ง๋ ํต์ฌ ๊ณต๊ฐ์ ๋๋ค. ์ฌ๋ฌ ์ผ์ ์ฒ๋ฆฌํ๊ธฐ ์ํด ๋ค์ฌ๋ค๋ฅํด์ผํ๋ฉฐ ํ ๋ถ์ผ์ ํนํ๋์ง ์๊ณ ์ ๊ตํ ์ผ์ ํ ์ ์์ง๋ง, ๋ณดํต ์ผ๋ฐ์ ์ธ ์ผ์ ํฉ๋๋ค.
ํธ๋์ญ์ ์ ๋ชจ๋ ๋ ธ๋์ ๋ชจ๋ ์ฑ๊ตด์์ ์ฐ๊ฒฐ๋์ด์๋ ๋ฉคํ(mempool) ๋๋ ๋ฉ๋ชจ๋ฆฌ ํ(memory pool)์์ ๋ฐ์ํฉ๋๋ค. ํ์ง๋ง ์ด๊ฒ๋ค์ ์ ๋ถ ๋ธ๋ก ๋ด๋ถ์ ํฌํจ๋๊ธฐ ์ ์ ์ ์ฅ๋๋ ๋ฏธํ์ธ ํธ๋์ญ์ ์ ๋๋ค. ๋ธ๋ก์ 10๋ถ ๊ฐ๊ฒฉ์ผ๋ก ์ถ๊ฐ๋์ง๋ง ํธ๋์ญ์ ์ ๋นํธ์ฝ์ธ์ ๋ณด๋ด๊ฑฐ
์ฑ๊ตด์ ๋คํธ์ํฌ์์ ์ฑ๊ตด์๋ค์ ์ํธํ ํผ์ฆ์ ํ๊ธฐ ์ํด ๊ฒฝ์ํ๊ฒ๋๊ณ ์ธ์ ๊ฐ๋ ๋ณด์์ ๋ฐ์ ์ ์์ต๋๋ค. ๊ทธ๋ฌ๋ ๊ท๋ชจ๊ฐ ํฌ๊ฐ ์ฑ๊ตด๊ธฐ๋ฅผ ๊ฐ์ถ ๊ด์ฐ๋ ์ฐธ์ฌํ๊ฒ ๋๋ค๋ฉด ๊ฐ์ธ์ด ๊ณจ๋ ๋ ผ์ค๋ฅผ ์ฐพ์ ํ๋ฅ ์ ๊ฑฐ์ ์๋ค๊ณ ๋ณผ ์ ์์ด ๋ถ๊ณตํํ ๊ฒฝ์์ด๋ ๊ฒ์ ๋๋ค.์ด๋ฌํ ์ฐ์ ์์ค ๊ด์ฐ์ด
TDD 4. 1. ํ ์คํธ ์ปค๋ฒ๋ฆฌ์ง > ํ ์คํธ ์ปค๋ฒ๋ฆฌ์ง๋ ์์คํ ์ด๋ ์ํํธ์จ์ด์ ํ ์คํธ๋ฅผ ๋ ผํ ๋ ์ผ๋ง๋ ๋ง์ ๋ผ์ธ(๋ธ๋์น, ๊ตฌ๋ฌธ(statements) ๋ฑ)์ด ํ ์คํธ์ ์ํด ์ปค๋ฒ๋์๋์ง์ ๋ํ ์งํ์ ๋๋ค. ์ฆ, ์ํํ ํ ์คํธ๊ฐ ํ ์คํธ์ ๋์์ ์ผ๋ง๋ ์ปค๋ฒํ๋์ง๋ฅผ ๋ํ
echo๋ backslash escape(\\)๋ฅผ ๋ง๋๋ ๋ฌธ์ ๊ทธ๋๋ก ์ถ๋ ฅํฉ๋๋ค.๊ธฐ๋ณธ์ ์ผ๋ก ๊ฐํ์ด ๋ค์ด๊ฐ ์์ผ๋ -n์ต์ ์ ์ฃผ๊ฒ๋๋ฉด ๊ฐํํ์ง ์์ต๋๋ค.cd(change directory)๋ ์ฃผ์ด์ง ์๋ ๋๋ ์ ๋ ๊ฒฝ๋ก๋ก current working directory๋ฅผ
์ฑ๊ตด ๋์ด๋๋ ์ด๋ป๊ฒ ์ฐ์ถ๋๊ณ ์ด๋ป๊ฒ ์กฐ์ ๋ ๊น์ ?๋์ด๋๋ 2,016๋ธ๋ก๋ง๋ค ์กฐ์ ๋ฉ๋๋ค. ์ด์์ ์ผ๋ก ๋ชจ๋ ๋ธ๋ก์ 10๋ถ๋ง๋ค ํ๋์ฉ ์์ฑ๋ฉ๋๋ค. ์ด๋ ๊ฒ ๊ณ์ฐํ๋ฉด 2์ฃผ๋ง์ ์ด 2,016๊ฐ ๋ธ๋ก์ด ์์ฑ๋๊ณ 2์ฃผ์ ํ ๋ฒ์ฉ ๋์ด๋๊ฐ ์กฐ์ ๋ฉ๋๋ค.์๋์ ์ผ๋ก ๋๋ฌด ๋น ๋ฅด๊ฒ ๋ธ๋ก์ด ์ฑ
์ ๋ถ์ ์ค์์ํ์ด ์์ฒด ํตํ ์ ์ฑ ๊ณผ ์์ฒด ๊ธ์ต ์์คํ ์ด ์๋ ๊ฒ์ฒ๋ผ ๋นํธ์ฝ์ธ๋ ํตํ ์ ์ฑ ์ด ์์ต๋๋ค.๋นํธ์ฝ์ธ์ ํตํ ์ ์ฑ ์๋ ํฌ๊ฒ ๋ ๋ถ๋ถ์ด ์์ต๋๋ค.๋ฐ๊ฐ๊ธฐ๋ธ๋ก ๋น๋์ด ์์น์ ๋ฐ๋ฅด๋ฉด ์์คํ ์ ์ถ์๋๋ ๋นํธ์ฝ์ธ์ ์๊ฐ 4๋ ๋ง๋ค(210,000๋ธ๋ก์ ๋ฌํ ๋ ๋ง๋ค) ์ ๋ฐ์ผ๋ก
์ํธํํ์ ์ธ๊ณ์๋ ์ค์ํ 3๊ฐ์ง ์ธต์ด ์์ต๋๋ค.๊ธฐ์ ํ๋กํ ์ฝ๊ณผ ์ฝ์ธํ ํฐ๊ธฐ์ ์ธต์๋ ๋ธ๋ก์ฒด์ธ์ด ์์ต๋๋ค. ์ด์ ์ ์์ธํ๊ฒ ๋ค๋ค์๊ณ ์๋ฆฌ๋ฅผ ์๊ณ ์์ ๊ฒ ์ ๋๋ค.ํ๋กํ ์ฝ์๋ ๋นํธ์ฝ์ธ๊ณผ ๊ฐ์ ๊ฒ์ด ์๋๋ฐ ๋จ์ํ ์ฝ์ธ์ด ์๋๋ผ๋ ๊ฒ์ ์ดํดํ๋ ๊ฒ์ด ๋งค์ฐ ์ค์ํฉ๋๋ค. ํ๋กํ ์ฝ์ ๋ค
ํ๋ก์ ํธ๋ฅผ ์งํํ๋ฉฐLink๋ก ํ์ด์ง๋ฅผ ์ด๋ํ๊ณ ๋ฐ์ดํฐ๋ ํจ๊ป ์ ๋ฌํด์ผ ํ ๊ฒฝ์ฐ์ recoil์ ์ฌ์ฉํด์ ๊ฐ์ ์ ๋ฌํด๋ ๋์ง๋ง, props์ฒ๋ผ ๊ฐ์ ๋ฐ๋ก ๋๊ธฐ๋ ๋ฐฉ๋ฒ์ ๋ํด์๋ ํ์ธํด ๋ดค์ต๋๋ค.์๋์ ๊ฐ์ด state์ ๋ฐ์ดํฐ๋ฅผ ์ ๋ฌํด์ค๋๋ค.๋ฐ๋ ๊ณณ์์๋ useLocati