๊ธฐ๋ก

Search
Day
ํŽ˜์ด์ง€
์ฑ… ์† ํ•œ ๋ฌธ์žฅ ๋˜๋Š” ์†Œ๊ฐ
P.5 ~ P.48
- ํŠน์ •ํ•œ ๋‹จ์–ด๋ฅผ ์‚ฌ์šฉํ•˜๋ผ Ex.) Get โ†’ Fetch, Download - ๋ณดํŽธ์ ์ธ ์ด๋ฆ„ ์‚ฌ์šฉ์„ ํ”ผํ•˜๋ผ Ex.) tmp, retval - ๋ณ€์ˆ˜๋ช…์— ์„ธ๋ถ€์ •๋ณด๋ฅผ ๋ง๋ถ™์—ฌ๋ผ - Scope๊ฐ€ ๋„“์œผ๋ฉด ๊ธด ์ด๋ฆ„์„ ์‚ฌ์šฉํ•˜๋ผ - ๋Œ€๋ฌธ์ž๋‚˜ ๋ฐ‘์ค„ ๋“ฑ์„ ์˜๋ฏธ์žˆ๋Š” ๋ฐฉ์‹์œผ๋กœ ํ™œ์šฉํ•˜๋ผ
P.49 ~ P.60
- ๊ฒฝ๊ณ„๋ฅผ ํฌํ•จํ•˜๋Š” ํ•œ๊ณ„๊ฐ’์„ ๋‹ค๋ฃฐ ๋•Œ๋Š” min๊ณผ max๋ฅผ ์‚ฌ์šฉํ•˜๋ผ - ๊ฒฝ๊ณ„๋ฅผ ํฌํ•จํ•˜๋Š” ๋ฒ”์œ„์—๋Š” first์™€ last๋ฅผ ์‚ฌ์šฉํ•˜๋ผ - ๊ฒฝ๊ณ„๋ฅผ ํฌํ•จํ•˜๊ณ /๋ฐฐ์ œํ•˜๋Š” ๋ฒ”์œ„์—๋Š” begin๊ณผ end๋ฅผ ์‚ฌ์šฉํ•˜๋ผ - ๋ถˆ๋ฆฌ์–ธ ๊ฐ’์„ ์ •ํ•  ๋•Œ๋Š” is๋‚˜ has๊ฐ™์€ ๋‹จ์–ด๋ฅผ ๊ฐ™์ด ์“ด๋‹ค
P.61 ~ P.74
- ์ผ๊ด€์„ฑ๊ณผ ๊ฐ„๊ฒฐ์„ฑ์„ ์œ„ํ•ด ์ค„๋ฐ”๊ฟˆ์„ ์žฌ์ •๋ ฌํ•˜๋ผ - ๋ฉ”์†Œ๋“œ๋ฅผ ํ™œ์šฉํ•˜์—ฌ ๋ถˆ๊ทœ์น™์„ฑ์„ ์ •๋ฆฌํ•˜๋ผ - ๋„์›€์ด ๋œ๋‹ค๋ฉด ์ฝ”๋“œ์˜ ์—ด์„ ๋งž์ถฐ๋ผ โ†’ ์—ด ์ •๋ ฌ - ์˜๋ฏธ ์žˆ๋Š” ์ˆœ์„œ๋ฅผ ์„ ํƒํ•˜๊ณ  ์ผ๊ด€์„ฑ์žˆ๊ฒŒ ์‚ฌ์šฉํ•˜๋ผ - ์„ ์–ธ๋ฌธ์„ ๋ธ”๋ก์œผ๋กœ ๊ตฌ์„ฑํ•˜๋ผ - ์ฝ”๋“œ๋ฅผ ๋ฌธ๋‹จ์œผ๋กœ ์ชผ๊ฐœ๋ผ
P.75 ~ P.90
- ์ฃผ์„์œผ๋กœ ์„ค๋ช…ํ•˜์ง€ ๋ง์•„์•ผ ํ•˜๋Š” ๊ฒƒ : ์ฝ”๋“œ์—์„œ ์œ ์ถ”ํ•  ์ˆ˜ ์žˆ๋Š” ๋‚ด์šฉ, ์„ค๋ช… ์ž์ฒด๋ฅผ ์œ„ํ•œ ์„ค๋ช…์„ ๋‹ฌ์ง€ ๋งˆ๋ผ, ๋‚˜์œ ํ•จ์ˆ˜/๋ณ€์ˆ˜ ์ด๋ฆ„์— ์ฃผ์„์„ ๋‹ฌ์ง€ ๋งˆ๋ผ โ‡’ ์ข‹์€ ์ฝ”๋“œ > ๋‚˜์œ ์ฝ”๋“œ + ์ข‹์€ ์ฃผ์„ - ์ƒ๊ฐ์„ ๊ธฐ๋กํ•˜๋ผ : โ‡’ TODO l ์•ž์œผ๋กœ ํ•ด์•ผํ•  ์ผ, FIXME | ์˜ค๋™์ž‘์„ ์ผ์œผํ‚จ๋‹ค๊ณ  ์•Œ๋ ค์ง„ ์ฝ”๋“œ, HACK | ์•„๋ฆ„๋‹ต์ง€ ์•Š์€ ํ•ด๊ฒฐ์ฑ…, XXX | ์œ„ํ—˜! ํฐ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Œ โ‡’ ์ƒ์ˆ˜๊ฐ’์„ ์™œ ๊ทธ๋ ‡๊ฒŒ ์ •ํ–ˆ๋Š”์ง€ ์ด์œ ๋ฅผ ์„ค๋ช…ํ•˜๋ผ โ€ป // ์ด๋Ÿฐ ์ œ๊ธธ, ์ด ๋ฆฌ์ŠคํŠธ ์•ˆ์— ์ค‘๋ณต๋œ ํ•ญ๋ชฉ์ด ์žˆ์œผ๋ฉด ๊ณค๋ž€ํ•ด ์ง€์ž–์•„! // โ‡’ XXX | ์ด ์ฝ”๋“œ๋Š” ๋ฆฌ์ŠคํŠธ ์•ˆ์— ์žˆ๋Š” ์ค‘๋ณต๋œ ํ•ญ๋ชฉ์„ ๋‹ค๋ฃจ์ง€ ์•Š๋Š”๋‹ค. ๊ทธ๊ฒƒ๊นŒ์ง€ ๊ฐ์•ˆํ•˜๋ฉด ์˜ˆ์™ธ์ฒ˜๋ฆฌ๊ฐ€ ๋„ˆ๋ฌด ๋งŽ์„ ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค
P.91 ~ P.100
* ์ฃผ์„์€ ๋†’์€ โ€˜๊ณต๊ฐ„ ๋Œ€ ๋น„์œจโ€™์„ ๊ฐ–์ถฐ์•ผ ํ•œ๋‹ค. - ์ฝ”๋„ˆ์ผ€์ด์Šค๋ฅผ ์„ค๋ช…ํ•ด ์ฃผ๋Š” ์ž…/์ถœ๋ ฅ ์˜ˆ๋ฅผ ์‚ฌ์šฉํ•˜๋ผ - ์ฝ”๋“œ์˜ ์˜๋„๋ฅผ ๋ช…์‹œํ•˜๋ผ - ํ‘œ์ค€ํ™” ๋“ฑ ๋งŽ์€ ์˜๋ฏธ๋ฅผ ํ•จ์ถ•ํ•˜๋Š” ๋‹จ์–ด๋กœ ์ฃผ์„์„ ๊ฐ„๋‹จํ•˜๊ฒŒ ๋งŒ๋“ค์–ด๋ผ
P.101 ~ P.119
- ์กฐ๊ฑด๋ฌธ์—์„œ ์ธ์ˆ˜์˜ ์ˆœ์„œ : if (๋ณ€ํ™”ํ•˜๋Š” ๊ฐ’ โ‰ค ์•ˆ์ •์ ์ธ(๊ณ ์ •์ ์ธ) ๊ฐ’) - if/else ๋ธ”๋ก ์ˆœ์„œ : ๊ธ์ •์ ์ด๊ณ , ์‰ฝ๊ณ  ํฅ๋ฏธ๋กœ์šด ๊ฒฝ์šฐ๋ฅผ ์•ž์— ๋†“์•„๋ผ. โ‡’ ๋ถ„ํ™์ƒ‰ ์ฝ”๋ผ๋ฆฌ๋Š” ์ƒ๊ฐํ•˜์ง€ ๋งˆ์„ธ์š” - ์‚ผํ•ญ์—ฐ์‚ฐ์ž(cond ? a : b), do/while ๋ฃจํ”„, goto๋Š” ๊ฐ€๋…์„ฑ์„ ๋–จ์–ด๋œจ๋ฆฐ๋‹ค - ์„ ํ˜•์ ์ธ ์ฝ”๋“œ๋ฅผ ์ถ”๊ตฌํ•˜๋ผ
P.120 ~ P.131
- ์ปค๋‹ค๋ž€ ํ‘œํ˜„์„ ์ชผ๊ฐœ๋Š” ๊ฐ€์žฅ ์‰ฌ์šด ๋ฐฉ๋ฒ•์€ ํ•˜์œ„ ํ‘œํ˜„์„ ๋‹ด์„ ์ถ”๊ฐ€ ๋ณ€์ˆ˜(์„ค๋ช… ๋ณ€์ˆ˜)๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒƒ์ด๋‹ค - ๋“œ๋ชจ๋ฅด๊ฐ„์˜ ๋ฒ•์น™ : not์„ ๋ถ„๋ฐฐํ•˜๊ณ  and/or์„ ๋ฐ”๊ฟ”๋ผ 1) not (a or b) == (not a) and (not b) 2) not (a and b) == (not a) or (not b)
P.132 ~ P.150
* ๋ณ€์ˆ˜์™€ ๊ฐ€๋…์„ฑ - ๋ณ€์ˆ˜ ์ œ๊ฑฐํ•˜๊ธฐ : ์ž„์‹œ, ์ค‘๊ฐ„๊ฒฐ๊ณผ, ํ๋ฆ„์ œ์–ด ์—ญํ• ์˜ ๋ณ€์ˆ˜๋Š” ์ œ๊ฑฐํ•˜๋Š” ๊ฒŒ ์ข‹๋‹ค - ๋ณ€์ˆ˜ ๋ฒ”์œ„ ์ขํžˆ๊ธฐ : ์ „์—ญ ๋ณ€์ˆ˜ ํ”ผํ•˜๊ธฐ. ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์—์„œ ๋ณ€์ˆ˜๋ฅผ ํ•ญ์ƒ var์™€ ํ•จ๊ป˜ ์„ ์–ธํ•˜๊ณ  ๋ณ€์ˆ˜์˜ ๋ฒ”์œ„๋ฅผ ํ•จ์ˆ˜ ๋‚ด๋ถ€๋กœ ๊ตญํ•œ์‹œํ‚ค๋Š” ๊ฒƒ์ด ์ข‹๋‹ค - ๊ฐ’์„ ํ•œ ๋ฒˆ๋งŒ ํ• ๋‹นํ•˜๋Š” ๋ณ€์ˆ˜๋ฅผ ์„ ํ˜ธํ•˜๋ผ (const ํ‚ค์›Œ๋“œ ์‚ฌ์šฉ)
P.151 ~ P.190
- ์ผ๋ฐ˜์ ์ธ ๋ชฉ์ ์˜ ์ฝ”๋“œ๋ฅผ ํ”„๋กœ์ ํŠธ์˜ ํŠน์ • ์ฝ”๋“œ์—์„œ ๋ถ„๋ฆฌํ•˜๋ผ - ํ•œ ๋ฒˆ์— ํ•˜๋‚˜์˜ ์ž‘์—…๋งŒ ์ˆ˜ํ–‰ํ•˜๋„๋ก ์ฝ”๋“œ๋ฅผ ์žฌ๊ตฌ์„ฑํ•œ๋‹ค - ์ƒ๊ฐ์„ ์ฝ”๋“œ๋กœ ๋งŒ๋“ค๊ธฐ โ‡’ ๊ณ ๋ฌด์˜ค๋ฆฌ ๊ธฐ๋ฒ•(Rubber Duck Debugging) โ‡’ ํ†ต์ฐฐ์€ ์ข…์ข… ๋‹จ์ˆœํžˆ ๋ฌธ์ œ๋ฅผ ํฐ์†Œ๋ฆฌ๋กœ ์„ค๋ช…ํ•˜๋ฉด์„œ ๋ฐœ๊ฒฌ๋œ๋‹ค! https://ko.wikipedia.org/wiki/๊ณ ๋ฌด_์˜ค๋ฆฌ_๋””๋ฒ„๊น…
P.191 ~ P.222
* ์ฝ”๋“œ๋ฒ ์ด์Šค๋ฅผ ์ž‘๊ฒŒ ์œ ์ง€ํ•˜๊ธฐ - ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ์ฝ”๋“œ ์ œ๊ฑฐํ•˜๊ธฐ - ์ฃผ๋ณ€์— ์žˆ๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์ ๊ทน ํ™œ์šฉํ•˜๊ธฐ - ์ผ๋ฐ˜ ํ”„๋กœ๊ทธ๋ž˜๋จธ๊ฐ€ ํ•˜๋ฃจ์— ์ถœ์‹œ๊ฐ€๋Šฅํ•œshippable ์ฝ”๋“œ๋Š” ํ‰๊ท  10์ค„ ์ •๋„๋‹ค * ํ…Œ์ŠคํŠธ์™€ ๊ฐ€๋…์„ฑ - ๊ฐ ํ…Œ์ŠคํŠธ์˜ ์ตœ์ƒ์œ„ ์ˆ˜์ค€์€ ๊ฐ„๊ฒฐํ•ด์•ผ ํ•œ๋‹ค. - ํ…Œ์ŠคํŠธ ์‹คํŒจ์‹œ ๋ฒ„๊ทธ ์ถ”์ ๊ณผ ์ˆ˜์ •์— ๋„์›€์ด ๋  ๋งŒํ•œ ์—๋Ÿฌ๋ฉ”์‹œ์ง€๋ฅผ ์ถœ๋ ฅํ•ด์•ผ ํ•œ๋‹ค - ๋ฌด์—‡์ด ํ…Œ์ŠคํŠธ๋˜๋Š”์ง€ ๋ถ„๋ช…ํ•˜๊ฒŒ ๋“œ๋Ÿฌ๋‚˜๋„๋ก ํ…Œ์ŠคํŠธ ํ•จ์ˆ˜์— ์ถฉ๋ถ„ํ•œ ์„ค๋ช…์ด ํฌํ•จ๋œ ์ด๋ฆ„์„ ๋ถ€์—ฌํ•˜๋ผ
P.223 ~ P.242
* ์˜ˆ์ œ : ๋ถ„/์‹œ๊ฐ„ ์นด์šดํ„ฐ - ConveyorQueue : ์‹œ์Šคํ…œ์ด ํ—ˆ๋ฝํ•˜๋Š” ํ•œ๋„ ๋‚ด์—์„œ ๋ฌด์ œํ•œ์˜ ํฌ๊ธฐ๋ฅผ ๊ฐ–๋Š” ํ๋กœ์„œ ์˜†์œผ๋กœ ํ•œ ์นธ ์›€์ง์ผ ์šฐ ์žˆ์œผ๋ฉฐ, ํ ์•ˆ์— ๋‹ด๊ธด ๋ชจ๋“  ํ•ญ๋ชฉ์˜ ์ดํ•ฉ์„ ๊ด€๋ฆฌํ•œ๋‹ค - TrailingBucketCounter : ์‹œ๊ฐ„์˜ ํ๋ฆ„์— ๋”ฐ๋ผ์„œ ConveyorQueue๋ฅผ ์˜†์œผ๋กœ ํ•œ ์นธ ์ด๋™์‹œํ‚ค๊ณ , (ํ˜„์žฌ ์‹œ๊ฐ„์— ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ์ตœ๊ทผ) ์‹œ๊ฐ„ ๊ตฌ๊ฐ„์˜ ์นด์šดํŠธ๋ฅผ ์ €์žฅํ•œ๋‹ค - MinuteHourCounter : TrailingBucketCounter ๋‘ ๊ฐœ๋ฅผ ๋ณด๊ด€ํ•œ๋‹ค. ํ•˜๋‚˜๋Š” 1๋ถ„, ๋‹ค๋ฅธ ํ•˜๋‚˜๋Š” 1์‹œ๊ฐ„์— ๋Œ€ํ•œ ์นด์šดํŠธ์šฉ์ด๋‹ค