๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
  • ์žฅ์›์ต ๊ธฐ์ˆ ๋ธ”๋กœ๊ทธ

๐Ÿคท๐Ÿผ‍โ™€๏ธ Etc...178

[Best Of the Best ํ™œ๋™๊ธฐ] 1์ฐจ ๊ณตํ†ต ๊ต์œก์ด ๋๋‚˜๊ณ  ๋Š๋ผ๋Š” ํ›„๊ธฐ 7์›” 14์ผ ๋ถ€๋กœ BoB 1๋‹จ๊ณ„ ๊ต์œก์˜ ๊ณตํ†ต ๊ต์œก์ด ๋ชจ๋‘ ๋์ด ๋‚ฌ๋‹ค. BoB ์—์„œ๋Š” 1๋‹จ๊ณ„ ์ „๊ณต ๊ต์œก์„ ๊ณตํ†ต ๊ต์œก๊ณผ ํŠธ๋ž™ ๊ต์œก์œผ๋กœ ๋‚˜๋ˆ„์–ด ์ง„ํ–‰ํ•œ๋‹ค. ๊ณตํ†ต ๊ต์œก์€ 4๊ฐœ์˜ ์ „ ํŠธ๋ž™ ๊ต์œก์ƒ๋“ค์ด ํ•จ๊ป˜ ๋“ฃ๋Š” ๊ต์œก์œผ๋กœ ๊ฐ๊ฐ ํŠธ๋ž™ (์ทจ์•ฝ์  ๋ถ„์„, ๋ณด์•ˆ์ œํ’ˆ๊ฐœ๋ฐœ, ๋””์ง€ํ„ธ ํฌ๋ Œ์‹, ๋ณด์•ˆ ์ปจ์„คํŒ…) ์˜ ๊ธฐ๋ณธ์ ์ธ ์ด๋ก ๊ณผ ๊ฐœ๋… ๊ทธ๋ฆฌ๊ณ  ๋ณด์•ˆ ์ธ์žฌ์˜ ์œค๋ฆฌ์— ๋Œ€ํ•ด์„œ ๋ฐฐ์šฐ๊ฒŒ ๋œ๋‹ค. ์˜ค๋Š˜์€ ์ด ๊ณตํ†ต ๊ต์œก์„ ๋งˆ์นœ ์‹œ์ ์— ๋ฐฐ์› ๋˜ ๊ฒƒ๋“ค๊ณผ ๋Š๋‚€ ์ ๋“ค์— ๋Œ€ํ•ด์„œ ์ด์•ผ๊ธฐํ•ด๋ณด๋ ค ํ•œ๋‹ค. ๊ต์œก ์ผ์ • BoB์˜ ๊ณตํ†ต ๊ต์œก์€ ์ด 2์ฃผ๊ฐ„ ์ง„ํ–‰์ด ๋œ๋‹ค. ์ฒ˜์Œ BoB ์— ์ž…๊ตํ•˜์—ฌ ํ•œ๋‹ฌ ๊ฐ„์˜ ๊ณตํ†ต ๊ต์œก ์ดํ›„์— ํฅ๋ฏธ์— ๋งž๊ฒŒ ๋ณธ์ธ์˜ ํŠธ๋ž™์„ ์ •ํ–ˆ๋˜ ์ง€๋‚œ ๊ธฐ์ˆ˜๋“ค์€ ํ•œ๋‹ฌ๊ฐ„ ๊ณตํ†ต ๊ต์œก์„ ๊ฐ€์กŒ์ง€๋งŒ, ์ด๋ฒˆ ๊ธฐ์ˆ˜๋Š” ์ฒ˜์Œ์œผ๋กœ ํŠธ๋ž™์„ ์ง€์›ํ•  ๋•Œ ์ •ํ•˜๊ฒŒ ํ–ˆ์–ด์„œ ๊ณตํ†ต ๊ต์œก์˜ ์ผ์ •์ด ์กฐ๊ธˆ ์งง.. 2021. 7. 17.
[github] .gitignore ํŒŒ์ผ๋กœ ํŠน์ • ํฌ๋งท์˜ ํŒŒ์ผ ๋ฌด์‹œํ•˜๊ธฐ ์šฐ๋ฆฌ๊ฐ€ Version Controll ์„ ์œ„ํ•ด์„œ git ์„ ์‚ฌ์šฉํ•˜๊ณ  git hosting ์œผ๋กœ github ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋ณด์•ˆ์ ์œผ๋กœ๋‚˜ ๊ฐœ์ธ์ ์œผ๋กœ ์˜ฌ๋ผ๊ฐ€๋ฉด ์•ˆ๋˜๋Š” ํŒŒ์ผ๋“ค์ด ์กด์žฌํ•œ๋‹ค. ์ด๋ฅผํ…Œ๋ฉด ๊ฐ„๋‹จํ•œ key ํŒŒ์ผ์ด๋ผ๋˜์ง€, ๊ฐœ์ธ์ ์ธ ์ •๋ณด๊ฐ€ ๋‹ด๊ธด data ํŒŒ์ผ์ด๋ผ๋˜์ง€ ํ˜น์€ test ๋ฅผ ์œ„ํ•ด build ๋ฅผ ํ•˜๋Š” build ํŒŒ์ผ์ด๋ผ๋˜์ง€.. ์ด๋ ‡๊ฒŒ ์›์น˜ ์•Š๋Š” ํŒŒ์ผ์„ git ์— ์˜ฌ๋ฆฌ๋Š” ๋ฐฉ๋ฒ•์—๋Š” ์—ฌ๋Ÿฌ ๋ฐฉ๋ฒ•์ด ์žˆ์ง€๋งŒ ์˜ค๋Š˜์€ .gitignore ์ด๋ผ๋Š” ํŒŒ์ผ์„ ์ด์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด๋„๋ก ํ•˜์ž .gitignore ์ด๋ž€? .gitignore ์€ ํ”„๋กœ์ ํŠธ Repository ์— ์›์น˜ ์•Š๋Š” file ๋ฐ ๋ฐ์ดํ„ฐ๋ฅผ git ์—์„œ ์ œ์™ธ์‹œํ‚ค๋Š” ์„ค์ •์ด ๋‹ด๊ธด ํŒŒ์ผ์„ ์˜๋ฏธํ•œ๋‹ค. ์šฐ๋ฆฌ๊ฐ€ Springboot ๋กœ ํ”„๋กœ์ ํŠธ๋ฅผ ์ƒ์„ฑํ•˜๋ฉด ์ž๋™์œผ๋กœ ์ƒ๊ธฐ.. 2021. 7. 16.
[C ์–ธ์–ด] ๋ฆฌ๋ˆ…์Šค์—์„œ Makefile ์„ ์ด์šฉํ•ด์„œ ํ”„๋กœ์ ํŠธ ๋นŒ๋“œํ•˜๊ธฐ ์šฐ๋ฆฌ๊ฐ€ ํ”„๋ก ํŠธ์—”๋“œ ๊ฐœ๋ฐœ์ด๋‚˜ ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์„ ํ•  ๋•Œ, ๋นŒ๋“œ ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐœ๋ฐœ์„ ํ•˜๊ณค ํ•œ๋‹ค. ์ด๋Ÿฐ ๋นŒ๋“œ ๋„๊ตฌ ๋•๋ถ„์— ์‰ฝ๊ฒŒ ์˜์กด์„ฑ์„ ๊ด€๋ฆฌํ•˜๊ณ  ๋นŒ๋“œ๋ฅผ ํ•  ์ˆ˜ ์žˆ๋Š”๋ฐ, C ์–ธ์–ด๋„ ์ด๋Ÿฌํ•œ ๋นŒ๋“œ ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. ๊ทธ ๋นŒ๋“œ ๋„๊ตฌ๊ฐ€ ๋ฐ”๋กœ make ์ด๋‹ค. ๋นŒ๋“œ ๋„๊ตฌ, make make ๋Š” Linux์™€ ๊ฐ™์€ ์œ ๋‹‰์Šค ๊ณ„์—ด ์šด์˜์ฒด์ œ์—์„œ ์‚ฌ์šฉ๋˜๋Š” ๋นŒ๋“œ ๋„๊ตฌ(Build Tool) ์ด๋‹ค. ๋นŒ๋“œ ๋„๊ตฌ๋ž€ ๊ฐ„๋‹จํžˆ ์„ค๋ช…ํ•˜์ž๋ฉด, ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ์ปดํŒŒ์ผ ํ…Œ์ŠคํŠธ, ์ •์  ๋ถ„์„์„ ์œ„ํ•ด ์‹คํ–‰ ๊ฐ€๋Šฅํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์œผ๋กœ ์ž๋™ ์ƒ์„ฑํ•ด์ฃผ๋Š” ํ”„๋กœ๊ทธ๋žจ, ์ผ์ข…์˜ ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ์˜๋ฏธํ•œ๋‹ค. ๋Œ€ํ‘œ์ ์ธ ๋นŒ๋“œ ๋„๊ตฌ๋กœ๋Š” Ant ๋‚˜ Maven, Gradle, NPM ์ด ์กด์žฌํ•œ๋‹ค. ์ด๋Ÿฐ ๋นŒ๋“œ ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค๋ฉด ์—ฌ๋Ÿฌ ํŒŒ์ผ๋“ค๋ผ๋ฆฌ์˜ ์˜์กด์„ฑ๊ณผ ๊ฐ ํŒŒ์ผ์— ํ•„์š”ํ•œ ๋ช…๋ น์„ ์ •์˜ํ•ด์„œ ์‰ฝ๊ฒŒ.. 2021. 7. 16.
[๋ฆฌ๋ˆ…์Šค] gcc ๋กœ c ์–ธ์–ด๋กœ ์ž‘์„ฑ๋œ ์†Œ์Šค ์ฝ”๋“œ ์ปดํŒŒ์ผํ•˜๊ธฐ (ํ—ค๋” ํŒŒ์ผ๋กœ ๋‚˜๋ˆ ์„œ ์ปดํŒŒ์ผํ•˜๊ธฐ) ์šฐ๋ฆฌ๊ฐ€ ์ผ๋ฐ˜์ ์œผ๋กœ c ์–ธ์–ด๋ฅผ ์ปดํŒŒ์ผํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” Visual Studio๋‚˜ CLion ์„ ์ด์šฉํ•ด์„œ Run ํ˜น์€ Debugging ์„ ํ•˜์˜€์—ˆ๋‹ค. ํ•˜์ง€๋งŒ ๋ฆฌ๋ˆ…์Šค ํ™˜๊ฒฝ์—์„œ๋Š” Visual Studio ๋‚˜ CLion ์„ ์„ค์น˜ํ•˜๊ธฐ๋ž€ ๋งค์šฐ ๊นŒ๋‹ค๋กญ๊ณ  QT-Creator ๊ณผ ๊ฐ™์€ ํ”„๋กœ๊ทธ๋žจ์„ ์ด์šฉํ•ด์•ผ ํ•œ๋‹ค. ์ด๋ ‡๊ฒŒ IDE๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ์ ˆ๋Œ€ ์•ˆ๋˜๋Š” ๊ฒƒ์€ ์•„๋‹ˆ์ง€๋งŒ, ๊ทธ๊ฒƒ๋ณด๋‹ค ํ„ฐ๋ฏธ๋„์—์„œ g++์ด๋‚˜ gcc ๋ช…๋ น์–ด๋ฅผ ํ†ตํ•ด์„œ ์ปดํŒŒ์ผํ•˜๋Š” ํŽธ์ด ์˜คํžˆ๋ ค ๋” ํŽธํ•  ๋–„๊ฐ€ ์žˆ๋‹ค. ์˜ค๋Š˜์€ ํ„ฐ๋ฏธ๋„์—์„œ gcc ๋กœ c ์–ธ์–ด๋ฅผ ์ปดํŒŒ์ผํ•˜๊ณ  object ํŒŒ์ผ์„ ๋งŒ๋“œ๋Š” ๊ฒƒ์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณผ ๊ฒƒ์ด๋‹ค. ๋ฆฌ๋ˆ…์Šค์—์„œ c ์–ธ์–ด ์ปดํŒŒ์ผํ•˜๊ธฐ ์šฐ์„  gcc ๋‚˜ g++ ์„ ์„ค์น˜ํ•ด์•ผ ํ•˜๋ฏ€๋กœ ๋‹ค์Œ๊ณผ ๊ฐ™์ด apt๋ฅผ ํ†ตํ•ด์„œ g++, gcc ๋ฅผ ์„ค์น˜ํ•ด์ฃผ์ž. apt-get ์„ ์‚ฌ์šฉ.. 2021. 7. 16.
[Best of the Best ์ง€์› ํŒ] ํ•ดํ‚น์กด(hackingzone.net) ์„ ํ†ตํ•œ ์ทจ์•ฝ์  ์ œํฌ ์ŠคํŽ™ ์Œ“๊ธฐ ์˜ค๋Š˜์€ BoB ์ง€์›์—์„œ ํฐ ์ด์ ์„ ์–ป์„ ์ˆ˜ ์žˆ๋Š” ์ทจ์•ฝ์  ์ œ๋ณด์™€ ๊ทธ ํ”Œ๋žซํผ์ธ ํ•ดํ‚น ์กด ์— ๋Œ€ํ•ด์„œ ์ด์•ผ๊ธฐํ•˜๋ ค ํ•œ๋‹ค. hackingzone hackingzone.net ์ทจ์•ฝ์  ์ œ๋ณด ์ทจ์•ฝ์  ์ œ๋ณด๋Š” ํŠน์ • ๊ธฐ์—…์—์„œ ์ œ๊ณตํ•˜๋Š” ์„œ๋น„์Šค์™€ ์ œํ’ˆ์„ ํ•ดํ‚นํ•ด์„œ ์ทจ์•ฝ์ ์„ ๋ฐœ๊ฒฌํ•œ ํ•ด์ปค์—๊ฒŒ ํฌ์ƒ๊ธˆ์„ ์ง€๊ธ‰ํ•˜๋Š” ์ œ๋„์ด๋‹ค. BoB ์ง€์›์—์„œ ์ทจ์•ฝ์  ์ œ๋ณด์˜ ์ด๋ ฅ์ด ์žˆ๋‹ค๋ฉด ๊ฐ€์‚ฐ์ ์ด ์ฃผ์–ด์ง€๊ธฐ ๋•Œ๋ฌธ์— BoB ์ง€์›์„ ์œ„ํ•ด์„œ๋Š” ์ทจ์•ฝ์  ์ œ๋ณด ๊ฒฝํ—˜์ด ํ•„์ˆ˜๋ผ๊ณ  ์ƒ๊ฐ์ด ๋œ๋‹ค. ๋‚˜๋„ BoB ์— ์ง€์›ํ•  ๋•Œ ์ทจ์•ฝ์  ์ œ๋ณด ์ด๋ ฅ์ด ํ•œ ๋ฒˆ ์žˆ์—ˆ๋‹ค. ์šด์˜ ์ค‘์ธ ์›น ์„œ๋น„์Šค์˜ ์ธ์ฆ๊ณผ ์ธ๊ฐ€ ์ฒ˜๋ฆฌ์—์„œ ๋ช‡ ๊ฐœ์˜ ํŒŒ๋ผ๋ฏธํ„ฐ๋งŒ ์กฐ์ž‘ํ•˜๋ฉด ๋˜๋Š” ์ทจ์•ฝ์ ์ด์—ˆ๋Š”๋ฐ, ๊ทธ ๋–„ ๋‹น์‹œ์—๋Š” ๋‚ด๊ฐ€ ํ•ดํ‚น์กด ์ด๋ผ๋Š” ํ”Œ๋žซํผ์„ ์•Œ์ง€ ๋ชปํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— Kisa ๋ณดํ˜ธ๋‚˜๋ผ์— ์ง์ ‘ ์ œ๋ณด๋ฅผ ํ•˜์˜€๋‹ค. ์—ด์‹ฌํžˆ PoC๋ฅผ ์ผ๊ณ  .. 2021. 7. 8.
[C ์–ธ์–ด] ๊ตฌ์กฐ์ฒด ํฌ์ธํ„ฐ์™€ ํ™”์‚ดํ‘œ ์—ฐ์‚ฐ์ž ๊ตฌ์กฐ์ฒด ํฌ์ธํ„ฐ ์ง€๋‚œ ์‹œ๊ฐ„ ์šฐ๋ฆฌ๋Š” ๊ตฌ์กฐ์ฒด์— ๋Œ€ํ•ด์„œ ๊ฐ„๋‹จํ•˜๊ฒŒ ์•Œ์•„๋ณด์•˜๋‹ค. ์ด๋ฒˆ ์‹œ๊ฐ„์—๋Š” ๊ตฌ์กฐ์ฒด๋ฅผ ์กฐ๊ธˆ ๋” ํšจ์œจ์ ์œผ๋กœ ์“ธ ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด๋„๋ก ํ•˜์ž. ์ง€๋‚œ ์‹œ๊ฐ„์— ์ด์•ผ๊ธฐํ•œ ๊ตฌ์กฐ์ฒด์— ๋Œ€ํ•ด์„œ ํ•œ ์ค„๋กœ ์ •๋ฆฌํ•˜์ž๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์„ ๊ฒƒ์ด๋‹ค. ๊ตฌ์กฐ์ฒด๋Š” ์—ฌ๋Ÿฌ ์ž๋ฃŒํ˜•์ด ๋ชจ์—ฌ ํ•˜๋‚˜์˜ ํฐ ์‚ฌ์šฉ์ž ์ •์˜ ์ž๋ฃŒํ˜•์„ ๊ตฌ์„ฑํ•˜๋Š” ๊ฒƒ ์—ฌ๊ธฐ์„œ ์šฐ๋ฆฌ๊ฐ€ ์ƒ๊ฐํ•ด๋ณผ๋งŒํ•œ ์ฃผ์ œ๊ฐ€ ๋ฐ”๋กœ ํฐ ์ž๋ฃŒํ˜•์ด ๋œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. ๊ตฌ์กฐ์ฒด๋Š” ๋Œ€๋ถ€๋ถ„ ์ผ๋ฐ˜ ์ž๋ฃŒํ˜•๋ณด๋‹ค ํฌ๊ธฐ๊ฐ€ ํฌ๊ธฐ ๋•Œ๋ฌธ์— ์ด๋ฅผ ์ž˜ ๊ด€๋ฆฌํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•˜๋‹ค ์ด๋ฅผ ์ดํ•ดํ•˜๊ธฐ ์œ„ํ•ด์„œ ์ง€๋‚œ ์‹œ๊ฐ„์— ์ด์•ผ๊ธฐ ํ•œ ๋ฉ”๋ชจ๋ฆฌ ๊ตฌ์กฐ์— ๋Œ€ํ•ด์„œ ๋‹ค์‹œ ํ•œ ๋ฒˆ ์ƒ๊ธฐํ•ด๋ณด์ž. ์šฐ๋ฆฌ๊ฐ€ ๊ตฌ์กฐ์ฒด๋ฅผ ์ •์˜ํ•œ๋‹ค๋Š” ๊ฒƒ์€ ์–ด๋–ค ์˜๋ฏธ์ผ๊นŒ? ๋ฐ”๋กœ Stack ์˜์—ญ์— ๊ตฌ์กฐ์ฒด์˜ ํฌ๊ธฐ๋งŒํผ ๊ณต๊ฐ„์„ ํ• ๋‹น๋ฐ›๋Š” ๊ฒƒ์ด๋‹ค. ๊ทธ๋Ÿผ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๊ตฌ์กฐ์ฒด๊ฐ€ ํ•„์š”ํ•œ ์ƒํ™ฉ์—์„œ ๊ตฌ์กฐ.. 2021. 7. 4.