DDD(Domain-Driven Design)๋? ๋ง์ดํฌ๋ก์๋น์ค์ ์ค๊ณ ๋ฐฉ๋ฒ๋ก ์ธ ๋๋ฉ์ธ ์ฃผ๋ ์ค๊ณ๋ ๋๋ฉ์ธ ํจํด์ ์ค์ฌ์ ๋๊ณ ์ค๊ณํ๋ ๋ฐฉ์์ ๋งํฉ๋๋ค. ์ฆ, ๋๋ฉ์ธ์ ์ค์ฌ์ผ๋ก ์ค๊ณํด ๋๊ฐ๋ ๊ฒ์ ์๋ฏธํฉ๋๋ค. DDD๋ ๋น์ฆ๋์ค ๋๋ฉ์ธ๋ณ๋ก ๋๋์ด ์ค๊ณํ๋ ๋ฐฉ์ ๋จ์ํ ๊ธฐ์ ์ ์ธ ์ฌํญ๋ง ๊ณ ๋ คํ์ง ์๊ณ ์ค์ ๋๋ฉ์ธ์ธ ์๊ตฌ ์ฌํญ์ ์ค์ฌ ์ปค๋ฎค๋์ผ์ด์ ์ ํจ์จ์ฑ์ ๋์ด๊ธฐ ์ํ ์ค๊ณ ๋๋ฉ์ธ์ด๋? ์ค์ ์ธ๊ณ์์ ์ฌ๊ฑด์ด ๋ฐ์ํ๋ ์งํฉ์ผ๋ก DDD์์ ๋งํ๋ ๋๋ฉ์ธ์ ๋น์ฆ๋์ค ๋๋ฉ์ธ์ ๋๋ค. ์๋ฅผ ๋ค์ด ์ผํ๋ชฐ์์ ์ด์ฉ์๋ค์ธ ๊ณ ๊ฐ ๋๋ฉ์ธ, ์๋๋ค์ด ์ฃผ๋ฌธํ๋ ๋๋ฉ์ธ ๋ฑ์ด ์์ ์ ์์ต๋๋ค. ์ฆ, ๋น์ฆ๋์ค ๋๋ฉ์ธ์ ์ ์ฌํ ์ ๋ฌด์ ์งํฉ์ ๋๋ค. ์ด์ฒ๋ผ ์ํํธ์จ์ด๋ฅผ ๊ฐ๋ฐํ๊ธฐ ์์ DDD๋ ์ด๋ฌํ ๋น์ฆ๋์ฆ ๋๋ฉ์ธ์ ๋ํ ๊น์ ์ดํด๋ฅผ ๊ธฐ๋ฐ์ผ๋ก..
DP๋? ๋ค์ด๋๋ฏน ํ๋ก๊ทธ๋๋ฐ์ ๋์ ๊ณํ๋ฒ์ด๋ผ๊ณ ๋ ๋ถ๋ฆฌ๋ ์๊ณ ๋ฆฌ์ฆ์ผ๋ก ์ฐ์ฐ ์๋์ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ์ต๋ํ์ผ๋ก ํ์ฉํ ์ ์๋ ํจ์จ์ ์ธ ์๊ณ ๋ฆฌ์ฆ์ ๋๋ค. DP๋ ์๋์ ๊ฐ์ ์กฐ๊ฑด์ด ์ถฉ์กฑ๋๋ฉด ์ ์ฉํ ์ ์์ต๋๋ค. problem์ด ๋ ์์ sub-problem๋ค๋ก ์ชผ๊ฐ์ง ์ ์์๋ sub-problem๋ค์ ์๋ฃจ์ ์ผ๋ก ๋ ํฐ ๊ท๋ชจ์ problem์ ์๋ฃจ์ ์ ๊ตฌํ ์ ์์ ๋ ์ชผ๊ฐ์ง sub-problem๋ค์ด ๊ฒน์น ๋ ์ฆ, ํฐ ๋ฌธ์ ๋ฅผ ์์ ๋ฌธ์ ๋ก ๋๋์ด ํ์ด ์ ์ฅ(Memoization) ํจ์ผ๋ก์จ, ํ ๋ฒ ๊ณ์ฐํ ๋ฌธ์ ๋ ๋ค์ ๊ณ์ฐํ์ง ์๋๋ก ํฉ๋๋ค. Top-Down vs Bottom-up DP๋ก ํ์ดํ๋ ๋ฐฉ๋ฒ์ ํฌ๊ฒ 2๊ฐ์ง, Top-Down ๋ฐฉ์๊ณผ Bottom-up๋ฐฉ์์ผ๋ก ๋๋ฉ๋๋ค. Top-Down ๋ฐฉ์ ์ฐ๋ฆฌ๋ง๋ก 'ํํฅ..
๋๊ธฐ VS ๋น๋๊ธฐ ๋๊ธฐ๋ ์์ฐจ์ , ์ง๋ ฌ์ ์ผ๋ก ํ ์คํฌ๋ฅผ ์ํํ์ง๋ง ๋น๋๊ธฐ๋ ๋ณ๋ ฌ์ ์ผ๋ก ํ ์คํฌ๋ฅผ ์ํํฉ๋๋ค. ๋๊ธฐ(Synchronous)๋? ๋๊ธฐ๋ ์์ฒญ์ ๋ณด๋ธ ํ ์๋ต(๊ฒฐ๊ณผ๋ฌผ)์ ๋ฐ์์ผ์ง๋ง ๋ค์ ๋์์ด ์ด๋ฃจ์ด์ง๋ ๋ฐฉ์์ ๋งํฉ๋๋ค. ์ฆ, ๋ชจ๋ ์ผ์ ์์ฐจ์ ์ผ๋ก ์คํ๋๋ฉฐ ์ด๋ค ์์ ์ด ์ํ์ค์ด๋ผ๋ฉด ๋ค์ ์์ ์ ๋๊ธฐํฉ๋๋ค. ์ฅ์ : ์ค๊ณ๊ฐ ๊ฐ๋จํ๊ณ ์ง๊ด์ ๋จ์ : ๊ฒฐ๊ณผ๋ฅผ ๋ณผ๋ ๊น์ง ์๋ฌด๊ฒ๋ ๋ชปํ๊ณ ๋๊ธฐ ๋น๋๊ธฐ(Asynchronous)๋? ๋น๋๊ธฐ๋ ๋์์ ์ผ์ด๋์ง ์๋๋ค๋ ์๋ฏธ๋ก, ์์ฒญ๊ณผ ๊ฒฐ๊ณผ๊ฐ ๋์์ ์ผ์ด๋์ง ์๋๋ค๋ ์ฝ์์ ๋๋ค. ์ฆ, ์์ฒญํ ๊ทธ ์๋ฆฌ์์ ๊ฒฐ๊ณผ๊ฐ ์ฃผ์ด์ง์ง ์์๋ ๋๋ฉฐ ๋ ธ๋ ์ฌ์ด์ ์์ ์ฒ๋ฆฌ ๋จ์๋ฅผ ๋์์ ๋ง์ถ์ง ์์๋ ๋ฉ๋๋ค. ์ฅ์ : ๊ฒฐ๊ณผ๊ฐ ์ฃผ์ด์ง๋ ๋ฐ ์๊ฐ์ด ๊ฑธ๋ฆฌ๋๋ผ๋ ๊ทธ๋์ ๋ค๋ฅธ ์์ ์ด ๊ฐ๋ฅํด ์์..
Unix๋ Unix๋ 1960๋ ๋ ํ๋ฐ AT&T Bell Labs์์ Ken Thompson๊ณผ Dennis Ritchie๊ฐ ๋ง๋ ์ด์์ฒด์ ๋ก ์๋ฒ์ ์ฃผ๋ก ํ์ฉ๋ฉ๋๋ค. Dennis Ritchie: C์ธ์ด๋ฅผ ๊ฐ๋ฐ Ken Thompson: Go์ธ์ด์ UTF-8 ๋ฌธ์ ์ธ์ฝ๋ฉ์ ๊ฐ๋ฐ ๋ ์ฌ๋์ ์ฒ์์ ์ด์ ๋ธ๋ฆฌ์ด๋ก ๊ฐ๋ฐ์ ์์ํ์์ง๋ง 1973๋ ์ C์ธ์ด ๊ธฐ๋ฐ Unix๋ฅผ ์์ฑ์์ผ ์ต์ด์ ๊ณ ๊ธ ์ธ์ด๋ก ์์ฑ๋ ์ด์์ฒด์ ๋ฅผ ๊ฐ๋ฐํ์์ต๋๋ค. ์ ๋์ค๋ ์ค๋ ๊ธฐ๊ฐ ๋์ ์ฌ์ฉ๋๋ฉฐ ์์ ์ฑ์ด ๋งค์ฐ ๋์์ก๊ณ , ๋ค์ํ ํ๋์จ์ด์์ ํธํ์ด ๋๊ธฐ ๋๋ฌธ์ ์์ง๊น์ง๋ ๋๋ฆฌ ์ฌ์ฉ๋๊ณ ์์ต๋๋ค. Unix์ ํน์ง ๋ํ์ ์ด์์ฒด์ ์๋ถํ ์์คํ (Time Sharing System)์ ์ํด ์ค๊ณ๋ ๋ํ์ ์ด์์ฒด์ ๋ํ์ ์ธ ๋ช ๋ น์ด ๊ธฐ๋ฐ ์ฌ์ฉ์ ์ธํฐํ์ด์ค ์ฌ..
[๋ฌธ์ ] https://school.programmers.co.kr/learn/courses/30/lessons/12979# ํ๋ก๊ทธ๋๋จธ์ค ์ฝ๋ ์ค์ฌ์ ๊ฐ๋ฐ์ ์ฑ์ฉ. ์คํ ๊ธฐ๋ฐ์ ํฌ์ง์ ๋งค์นญ. ํ๋ก๊ทธ๋๋จธ์ค์ ๊ฐ๋ฐ์ ๋ง์ถคํ ํ๋กํ์ ๋ฑ๋กํ๊ณ , ๋์ ๊ธฐ์ ๊ถํฉ์ด ์ ๋ง๋ ๊ธฐ์ ๋ค์ ๋งค์นญ ๋ฐ์ผ์ธ์. programmers.co.kr [ํ์ด] ์ ํ๋ ฅ์ดw์ธ ๊ฒฝ์ฐ, ์ต๋ 2*w + 1 ๊ฑฐ๋ฆฌ๋งํผ ์ํํธ๋ค์๊ฒ ์ ํ๊ฐ ๋๋ฌ๋ฉ๋๋ค. ๋ฐ๋ผ์ ์ ํ๊ฐ ๋๋ฌํ์ง ์์ ์ฐ์๋ ์ํํธ์ ์ต์์ ๊ธฐ์ง๊ตญ์ผ๋ก ์ ํ๋ฅผ ์ ๋ฌํ๋ ๋ฐฉ๋ฒ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค. Math.ceil(์ฐ์๋ ์ํํธ ๊ธธ์ด/(2*w+1)) ์์ 1๋ฒ๊ณผ ๊ฐ์ด w=1์ธ ๊ฒฝ์ฐ ์ ํ๊ฐ ๋๋ฌํ์ง ์์ ์ฐ์๋ ์ํํธ์ ๊ธธ์ด๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค. ๋ฐ๋ผ์ Math.ceil(2/3) + Math...
ํ๋ก๊ทธ๋๋ฐ ํจ๋ฌ๋ค์(Programming Paradigm)์ด๋? ํ๋ก๊ทธ๋๋จธ์๊ฒ ํ๋ก๊ทธ๋๋ฐ์ ๊ด์ ์ ๊ฐ๊ฒ ํด์ฃผ๋ ์ญํ ์ ํ๋ ๊ฐ๋ฐ ๋ฐฉ๋ฒ๋ก ์ ๋๋ค. ์๋ฅผ ๋ค์ด ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ : ํ๋ก๊ทธ๋๋จธ๋ค์ด ํ๋ก๊ทธ๋จ์ ์ํธ ์์ฉํ๋ ๊ฐ์ฒด๋ค์ ์งํฉ์ผ๋ก ๋ณผ ์ ์๊ฒ ํ๋ ๋ฐ๋ฉด์, ํจ์ํ ํ๋ก๊ทธ๋๋ฐ : ์ํ ๊ฐ์ ์ง๋์ง ์์ ํจ์ ๊ฐ๋ค์ ์ฐ์์ผ๋ก ์๊ฐํ ์ ์๊ฒ ํด์ค๋๋ค. ์ ์ธํ๊ณผ ํจ์ํ ํ๋ก๊ทธ๋๋ฐ ์ ์ธํ ํ๋ก๊ทธ๋๋ฐ(Declarative Programming)์ด๋ "๋ฌด์์" ํ์ด๋ด๊ฐ๋๊ฐ์ ์ง์คํ๋ ํจ๋ฌ๋ค์์ด๋ฉฐ, "ํ๋ก๊ทธ๋จ์ ํจ์๋ก ์ด๋ฃจ์ด์ง ๊ฒ์ด๋ค"๋ผ๋ ๋ช ์ ๊ฐ ๋ด๊ฒจ ์๋ ํจ๋ฌ๋ค์์ ๋๋ค. ์๋ฅผ ๋ค์ด JavaScript๋ก ์์ฐ์๋ก ์ด๋ฃจ์ด์ง ๋ฐฐ์ด์์ ์ต๋๊ฐ์ ์ฐพ์๋ ๋ค์๊ณผ ๊ฐ์ด ์ฌ์ฉํฉ๋๋ค. const ret = [1, 2, 3, 4..
[๋ฌธ์ ] https://school.programmers.co.kr/learn/courses/30/lessons/12987?language=javascript ํ๋ก๊ทธ๋๋จธ์ค ์ฝ๋ ์ค์ฌ์ ๊ฐ๋ฐ์ ์ฑ์ฉ. ์คํ ๊ธฐ๋ฐ์ ํฌ์ง์ ๋งค์นญ. ํ๋ก๊ทธ๋๋จธ์ค์ ๊ฐ๋ฐ์ ๋ง์ถคํ ํ๋กํ์ ๋ฑ๋กํ๊ณ , ๋์ ๊ธฐ์ ๊ถํฉ์ด ์ ๋ง๋ ๊ธฐ์ ๋ค์ ๋งค์นญ ๋ฐ์ผ์ธ์. programmers.co.kr [ํ์ด] ํฌํฌ์ธํฐ์ ๊ฐ๋ ์ ์๊ณ ์๋ค๋ฉด ์ฝ๊ฒ ํ๋ฆฌ๋ ๋ฌธ์ ์์ต๋๋ค. ์ด์ฐจํผ A์ ์์๋ ์ ํด์ ธ ์๊ธฐ ๋๋ฌธ์, A๊ฐ ๋ ๋จผ์ ๊ฒฝ๊ธฐ์ ๋ด๋ณด๋ผ ์ฌ์์ ์ ํํ๋ ๊ฒ์ผ๋ก ๋ณผ ์ ์์ต๋๋ค. ๋ฐ๋ผ์ A์ B๋ฅผ ์ค๋ฆ์ฐจ์ ์ ๋ ฌํ์ฌ ํฌํฌ์ธํฐ๋ฅผ ์งํํ๋ฉด ๋ฉ๋๋ค. ์์ 1๋ฒ์ A, B ๋ฐฐ์ด์ ์ ๋ ฌํ ๊ฒฐ๊ณผ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค. [ 1, 3, 5, 7 ] [ 2, 2, 6, 8 ]..
ํ๋ก์ธ์ค๋? ํ๋ก์ธ์ค(process)๋ ์ด์์ฒด์ ๋ก๋ถํฐ ์์คํ ์์์ ํ ๋น๋ฐ๋ ์์ ์ ๋จ์๋ก ์คํ์ค์ ์๋ ํ๋ก๊ทธ๋จ์ ์๋ฏธํฉ๋๋ค. ๋ฉ๋ชจ๋ฆฌ์ ์ฌ๋ผ์ ์คํ๋๊ณ ์๋ ํ๋ก๊ทธ๋จ์ ๋ ๋ฆฝ์ ์ธ ์ธ์คํด์ค ๊ธฐ๋ณธ์ ์ผ๋ก ํ๋ก์ธ์ค๋ง๋ค ์ต์ 1๊ฐ์ ์ค๋ ๋๋ฅผ ์์ (๋ฉ์ธ ์ค๋ ๋ ํฌํจ) ํ๋ก์ธ์ค๊ฐ ํ ๋น๋ฐ๋ ์์คํ ์์ CPU ์๊ฐ ์ด์๋๊ธฐ ์ํด ํ์ํ ์ฃผ์ ๊ณต๊ฐ Code, Data, Stack, Heap์ ๊ตฌ์กฐ๋ก ๋์ด ์๋ ๋ ๋ฆฝ๋ ๋ฉ๋ชจ๋ฆฌ ์์ญ ํ๋ก์ธ์ค์ ๋ฉ๋ชจ๋ฆฌ ๊ตฌ์กฐ Code ์์ญ : ํ๋ก๊ทธ๋จ์ ์คํ์ํค๋ ์คํ ํ์ผ ๋ด์ ๋ช ๋ น์ด๋ค์ด ์ฌ๋ผ๊ฐ Data ์์ญ : ์ ์ญ ๋ณ์, static ๋ณ์์ ํ ๋น Heap ์์ญ: ๋์ ํ ๋น์ ์ํ ๋ฉ๋ชจ๋ฆฌ ์์ญ Stack ์์ญ : ์ง์ญ ๋ณ์, ํจ์ ํธ์ถ์ ์ ๋ฌ๋๋ ์ธ์(ํ๋ผ๋ฏธํฐ)๋ฅผ ์ํ ๋ฉ๋ชจ๋ฆฌ ์์ญ Code..
- Total
- Today
- Yesterday
- ์ฝ๋ฉํ ์คํธ
- ํจ์ํ ํ๋ก๊ทธ๋๋ฐ
- http
- fp
- ๋์์ธ ํจํด
- ๋ ์์ปฌ ํ๊ฒฝ
- Baekjoon
- git
- ์๋ฐ์คํฌ๋ฆฝํธ
- ๋ชจ๋ ์๋ฐ์คํฌ๋ฆฝํธ deep dive
- ์๊ณ ๋ฆฌ์ฆ
- 2019 ์นด์นด์ค ๊ฐ๋ฐ์ ๊ฒจ์ธ ์ธํด
- ํ๋กํผํฐ
- ์ด์์ฒด์
- TDD
- ๋ฐฑ์ค node.js
- ํฌํฌ์ธํฐ
- ์ ์ญ ๋ณ์
- ๋ฐฑ์ค javascript
- ๋คํธ์ํฌ
- ์ด๋ถํ์
- ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ
- ํ๋กํ ์ฝ
- map
- ์นด์นด์ค ์ธํด
- ํ๋ก๊ทธ๋๋จธ์ค
- ์๋ฐ
- ๋ค์ด๋๋ฏน ํ๋ก๊ทธ๋๋ฐ
- JavaScript
- ๋ฐฑ์ค
์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |