ํฌ์ŠคํŠธ

๐ŸŒ’ ์ฝ๊ธฐ ์ข‹์€ ์ฝ”๋“œ๊ฐ€ ์ข‹์€ ์ฝ”๋“œ๋‹ค

๐Ÿ’Ž ๋จธ๋ฆฟ๋ง


์ฝ”๋“œ๋Š” ์ดํ•ดํ•˜๊ธฐ ์‰ฌ์›Œ์•ผ ํ•œ๋‹ค
์ฝ”๋“œ๋Š” ๋‹ค๋ฅธ ์‚ฌ๋žŒ์ด ๊ทธ๊ฒƒ์„ ์ดํ•ดํ•˜๋Š” ๋ฐ ๋“ค์ด๋Š” ์‹œ๊ฐ„์„ ์ตœ์†Œํ™”ํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ์ž‘์„ฑ๋˜์–ด์•ผ ํ•œ๋‹ค

์ ์€ ๋ถ„๋Ÿ‰์œผ๋กœ ๊ฐ„๊ฒฐํ•œ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๊ฒƒ์ด ์ข‹์€ ๋ชฉํ‘œ์ด๊ธด ํ•˜์ง€๋งŒ,
(์ดํ•ดํ•˜๊ธฐ ์œ„ํ•œ ์ฝ”๋“œ๋Ÿ‰์ด ์ ˆ๋Œ€์ ์œผ๋กœ ์ ์€ ๊ฒƒ์ด๋‹ˆ)

๋ถ„๋Ÿ‰์ด ์ ๋‹ค๊ณ  ํ•ด์„œ ํ•ญ์ƒ ๋” ์ข‹์€ ๊ฒƒ์€ ์•„๋‹ˆ๋‹ค
(์ฃผ์„, ์„ค๋ช… ๋ณ€์ˆ˜๋Š” ๋ถ„๋Ÿ‰์„ ๋Š˜๋ฆฌ์ง€๋งŒ ์ดํ•ด ๋น„์šฉ์„ ์ค„์—ฌ์ค€๋‹ค)

๐Ÿ’Ž Surface-Level ์—์„œ์˜ ๊ฐœ์„ 


  1. ์ด๋ฆ„์— ์ •๋ณด๋ฅผ ๋‹ด์•„๋‚ด๋ผ
    • ๊ตฌ์ฒด์ ์ธ ๋‹จ์–ด ์„ ํƒ โ†’ ์ถ”์ƒ์ /์ค‘์˜์ /๋ฌด์˜๋ฏธํ•œ ๋‹จ์–ด ํ”ผํ•˜๊ธฐ, ์˜๋„ํ•œ ์ •๋ณด๋ฅผ ์ •ํ™•ํžˆ ์ „๋‹ฌํ•˜๋Š”
      • Get โ†’ Fetch, Download, Compute(Get์€ ๊ด€ํ–‰์ ์œผ๋กœ ๊ฐ€๋ฒผ์šด ์ ‘๊ทผ์ž)
      • Size, Length โ†’ Height, NumNodes, MemoryBytes, Chars, CountSize/CountElements(Size๋Š” ๊ด€ํ–‰์ ์œผ๋กœ ์ผ์ •ํ•œ ์‹œ๊ฐ„์„ ์†Œ๋น„, i.e. O(1))
      • Filter โ†’ Select, Exclude
      • Clip โ†’ Truncate
      • Stop โ†’ Kill, Pause
    • Temp ๊ฐ™์€ ๋ณดํŽธ์  ์ด๋ฆ„ ํ”ผํ•˜๊ธฐ
      • Temp : ์งง๊ฒŒ ์ž„์‹œ์ ์œผ๋กœ๋งŒ ์กด์žฌ, ์ž„์‹œ์  ์กด์žฌ ์ž์ฒด๊ฐ€ ๋ณ€์ˆ˜์˜ ๊ฐ€์žฅ ์ค‘์š”ํ•œ ์šฉ๋„์ผ ๋•Œ
      • ๋ฃจํ”„ ๋ฐ˜๋ณต์ž : i j k ๋ณด๋‹ค๋Š”, ์ธ๋ฑ์Šค๋กœ์จ ์“ฐ์ธ๋‹ค๋ฉด ์ปจํ…Œ์ด๋„ˆ ์ด๋ฆ„๊ณผ ์ธ๋ฑ์Šค ์ ‘๋‘๋ฌธ์ž๋ฅผ ๊ฐ™๊ฒŒ ํ•œ๋‹ค๋˜์ง€
    • ์„ธ๋ถ€ ์ •๋ณด ๋ถ™์ด๊ธฐ
      • ๋‹จ์œ„ : a_chars, a_secs, a_mb, a_kbps, hex_id,
      • ์†์„ฑ(๋‚ด์šฉ์ด ์ค‘์š”ํ•˜๋‹ค๋ฉด) : plaintext_password, html_utf8, min/max
      • ๊ฒฝ๊ณ„ : Start/Stop โ†’ First/Last(๊ฒฝ๊ณ„ํฌํ•จ), Begin/End(๊ฒฝ๊ณ„ํฌํ•จ/๋ฐฐ์ œ)
      • Boolean : is, has, can, should + ๊ธ์ •ํ˜•(๋ถ€์ •ํ˜•์€ ์ดํ•ด๊ฐ€ ๋Š๋ฆฌ๋‹ค)
    • ๋ณ€์ˆ˜๋Š” ์ž‘์€ ์„ค๋ช…๋ฌธ, ์ด๋ฆ„ ๊ธธ์ด ์•Œ์ž˜๋”ฑ์œผ๋กœ
      • ์ข์€ ๋ฒ”์œ„์—์„œ๋Š” ์งง์€ ์ด๋ฆ„, ๋„“์€ ๋ฒ”์œ„์—์„œ๋Š” ๊ธด ์ด๋ฆ„์ด ์ข‹๋‹ค
      • ์•ฝ์–ด/์ถ•์•ฝํ˜• : ์ƒˆ๋กœ ํ•ฉ๋ฅ˜ํ•œ ์‚ฌ๋žŒ์ด ์ด๋ฆ„์ด ์˜๋ฏธํ•˜๋Š” ๋ฐ”๋ฅผ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด, doc, str
      • ๋ถˆํ•„์š”ํ•œ ๋‹จ์–ด ์ œ๊ฑฐ : Convert^ToString, Do^ServeLoop
    • ์ฝ”๋”ฉ ํ‘œ์ค€, ์ด๋ฆ„ ํฌ๋งทํŒ…์œผ๋กœ ์˜๋ฏธ ์ „๋‹ฌ
  2. ๋ฏธํ•™
    • ์ค„๋ฐ”๊ฟˆ, ์—ด ๋งž์ถ”๊ธฐ(?)
    • ํ•จ์ˆ˜๋กœ ๋ถˆ๊ทœ์น™์„ฑ ์ •๋ฆฌ(๋ชจ์–‘ ํ†ต์ผ, ์ค‘๋ณต ์ฝ”๋“œ๋ฅผ ๊ฐ„๊ฒฐํ•˜๊ฒŒ)
    • ์ผ๊ด€์„ฑ (์žˆ๋Š” ํŒจํ„ด), ์˜๋ฏธ์žˆ๋Š” ์ˆœ์„œ, A B C ๋กœ ์–ธ๊ธ‰ํ–ˆ๋‹ค๋ฉด, B C A ๊ธˆ์ง€
    • ์ฝ”๋“œ(์„ ์–ธ๋ฌธ)๋ฅผ, ๋ฌธ๋‹จ/๋ธ”๋ก์œผ๋กœ, ๋…ผ๋ฆฌ์  ์˜์—ญ(์ฃผ์ œ/์ˆœ์„œ)์— ๋”ฐ๋ผ ์„ฑ๊ฒฉ ๊ตฌ๋ถ„
  3. ์ฃผ์„
    • ์ฝ”๋“œ/์ด๋ฆ„์—์„œ ๋น ๋ฅด๊ฒŒ ์œ ์ถ”ํ•  ์ˆ˜ ์—†๋Š” ๋‚ด์šฉ (์ƒˆ๋กœ์šด ์ •๋ณด๊ฐ€ ์•„๋‹ˆ๋”๋ผ๋„ โ€˜๋น ๋ฅด๊ฒŒโ€™ ์œ ์ถ”ํ•  ์ˆ˜ ์—†๋‹ค๋ฉด)
    • ๋‚˜์œ ์ฝ”๋“œ/์ด๋ฆ„์— ์ฃผ์„์„ ๋‹ฌ์ง€ ๋ง๊ณ , ์ฝ”๋“œ/์ด๋ฆ„์„ ๊ณ ์น˜๊ธฐ (์ข‹์€ ์ฝ”๋“œ > ๋‚˜์œ ์ฝ”๋“œ + ์ข‹์€ ์ฃผ์„)
    • ์ƒ๊ฐ์„ ๊ธฐ๋กํ•˜๊ธฐ (๊ฐ๋…์˜ ์„ค๋ช…, ์˜๋„)
      • ์ด ์ฝ”๋“œ๋Š” A ํ•ด์„œ ๊ฐœ์ฉœ
      • ์ด ์ฝ”๋“œ๋Š” A ํ•˜๊ณ  1๋ถ„ ๋’ค์— ํญํŒŒ๋จ
      • ์ด ์ฝ”๋“œ๋Š” A ๋•Œ๋ฌธ์—, B ํ•ด์ค˜์•ผํ•จ. ์ฃผ์˜
      • ์ด ์ฝ”๋“œ๋Š” A ๋ถ€๋ถ„์— ํ•˜์ž๊ฐ€ ์žˆ์Œ. ๊ทผ๋ฐ ๋‚œ ์•ˆ๊ณ ์นจ ใ…‹ใ…‹
        • TODO : ๋” ๋น ๋ฅธ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์“ฐ์…ˆ
        • TODO : JPEG๋ง๊ณ  ๋‹ค๋ฅธ ์ด๋ฏธ์ง€ ํฌ๋งท๋„ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•จ.
        • TODO, todo, FIXME, maybe-later, HACK, XXX
      • ์ƒ์ˆ˜ ๊ฐ’์ด { ๋ฒ”์œ„/์กฐ๊ฑด } ์ด๋ฉด ๋œ๋‹ค, { ํ†ต๊ณ„/๊ณ ์ฐฐ/์‚ฌ์‹ค } ๋•Œ๋ฌธ์— ์ด๊ฒŒ ์ข‹๋‹ค
      • ์ฝ”๋“œ๋ฅผ ์ฝ์€ ์‚ฌ๋žŒ์˜ ์ž…์žฅ์ด ๋˜๊ธฐ, ์ฝ๋Š” ์‚ฌ๋žŒ์ด ? ํ•  ๋ถ€๋ถ„
      • ํฐ ๊ทธ๋ฆผ ์•Œ๋ฆฌ๊ธฐ : ํŒŒ์ผ/๊ธด ํ•จ์ˆ˜์—์„œ ํฌ๊ฒŒ ์„ค๋ช…ํ•˜๊ณ , ๊ฐ ์กฐ๊ฐ์ด ์–ด๋–ป๊ฒŒ ๋งž์ถฐ์ง€๋Š” ์ง€
      • ์–ด๋ ค์šฐ๋ฉด ๊ทธ๋ƒฅ ์ƒ๊ฐ์„ ์ ์–ด๋‚ด๊ธฐ
        • ์•„ A ๋„ˆ๋ฌด ์–ด๋ ต๋„ค ๊ทธ๋ƒฅ B ์จ์•ผ๊ฒ ๋‹ค
        • โ†’ ์ฃผ์˜ : ์ด ์ฝ”๋“œ๋Š” A ๋Œ€์‹  B ๋ฅผ ์‚ฌ์šฉํ–ˆ๊ธฐ์— @ ๋ถ€๋ถ„์€ ์ฒ˜๋ฆฌํ•˜์ง€ ์•Š๋Š”๋‹ค. ๊ทธ๋ ‡๊ฒŒ ํ•˜๋Š” ๊ฒƒ์ด ์–ด๋ ต๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.
์ด ๊ธฐ์‚ฌ๋Š” ์ €์ž‘๊ถŒ์ž์˜ CC BY 4.0 ๋ผ์ด์„ผ์Šค๋ฅผ ๋”ฐ๋ฆ…๋‹ˆ๋‹ค.