๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
  • ๐Ÿ‘ฉ๐Ÿปโ€๐Ÿ’ป ๐ŸŒฎ ๐Ÿ’ฌ
๐Ÿ“š book/ํŒŒ์ด์ฌ ํด๋ฆฐ ์ฝ”๋“œ

[Python] ํŒŒ์ด์ฌ ํด๋ฆฐ ์ฝ”๋“œ๋ฅผ ์ฝ์–ด๋ณด์ž!

by ๋ฐ”์ฟ„๋ฆฌ 2022. 8. 20.

๐Ÿ“Œ ์ฑ…์„ ์ฝ๋Š” ์ด์œ 

ํŒŒ์ด์ฌ์„ ์‹œ์ž‘ํ•œ์ง€ ๋ฒŒ์จ 10๊ฐœ์›”์ด ๋˜์—ˆ๊ณ  ์–ด์ œ ๊ฐ‘์ž๊ธฐ ํด๋ฆฐ ์ฝ”๋“œ๋ฅผ ์ฝ์–ด์•ผ๊ฒ ๋‹ค๊ณ  ์ƒ๊ฐ์ด ๋“ค์–ด์„œ yes24๋กœ ์ฃผ๋ฌธํ•ด์„œ ์˜ค๋Š˜๋ถ€ํ„ฐ ์ฝ์œผ๋ ค๊ณ  ํ•œ๋‹ค. ์†”์งํžˆ ํŒŒ์ด์ฌ์„ ์ง€๊ธˆ๊นŒ์ง€ ๊ณ„์† ํ• ์ง€๋„ ๋ชฐ๋ž๋‹ค. ๊ทธ๋ž˜์„œ ๊ทธ๋Ÿฐ์ง€ ๊นŠ์ด ๊ณต๋ถ€ํ•ด์•ผ๊ฒ ๋‹ค๋ผ๋Š” ์ƒ๊ฐ๋„ ํ•˜์ง€ ์•Š์•˜๋˜ ๊ฒƒ ๊ฐ™๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ์™œ ๊ฐ‘์ž๊ธฐ ๊ณต๋ถ€ํ•˜๊ณ  ์‹ถ์–ด์กŒ๊ณ  ์ด ์ฑ…์ด ์ฝ๊ณ ์‹ถ์–ด์กŒ์„๊นŒ?

๋‘๋‹ฌ ์ „๊นŒ์ง€๋งŒ ํ•ด๋„ ์šฐ๋ฆฌ ํšŒ์‚ฌ์˜ ๊ฐœ๋ฐœ์ž๋Š” ๋‹จ 3๋ช…์ด์—ˆ๋‹ค. ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ๊ฐœ๋ฐœํ•˜๋Š” ์—ฐ๊ตฌ์› 2๋ช…๊ณผ ์„œ๋น„์Šค ๊ฐœ๋ฐœํŒ€์ด์—ˆ๋˜ ๋‚˜.. (๋‚˜๋Š” ์–ด๋”” ์†ํ•ด์žˆ๋Š” ๋ˆ„๊ตฌ์ธ๊ฐ€..?) ์„œ๋น„์Šค ๊ฐœ๋ฐœํŒ€ ์†Œ์†์ด์—ˆ๋˜ ๋‚˜๋Š” ํŒ€์ด ๋ฐ•์‚ด๋‚˜๊ณ  ํ˜ผ์ž ํšŒ์‚ฌ์— ๋‚จ๊ฒŒ๋˜๋ฉด์„œ ๊ธฐ์กด์— ์ง„ํ–‰ํ•˜๋˜ ํ”„๋กœ์ ํŠธ ์œ ์ง€๋ณด์ˆ˜ + ์—ฐ๊ตฌํŒ€์˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ํด๋ผ์ด์–ธํŠธ์— ๋ณด์—ฌ์ฃผ๊ธฐ ์œ„ํ•œ ํ’€์Šคํƒ ๊ฐœ๋ฐœ๋“ค์„ ๋„๋งก์•„ํ–ˆ๋‹ค.

๊ทธ๋ ‡๊ฒŒ ์ผ์„ ํ•˜๋˜ ๋„์ค‘ ์ธ๋ ฅ ๋ถ€์กฑ๊ณผ ์‚ฌ์—… ํ™•์žฅ์œผ๋กœ 3๋ช…์„ ์ถฉ์›ํ–ˆ๋‹ค. ์ƒˆ๋กœ์šด ๊ฐœ๋ฐœ์ž ์ค‘ 1๋ช…์€ ๋‚˜์™€ ๊ฐ™์ด ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ํ•˜๊ฒŒ ๋˜์—ˆ๋Š”๋ฐ, ์ด ๋ถ„์€ ๋Œ€ํ•™์›์—์„œ ๊ณต๋ถ€ํ•˜๋‹ค๊ฐ€ ์˜ค๊ฒŒ๋˜์—ˆ๋‹ค. ์ฆ‰, 36์‚ด์— ํšŒ์‚ฌ ๊ฒฝํ—˜์ด ์ฒ˜์Œ์ด๋ผ๋Š” ๊ฒƒ. ๊ทธ๋Ÿด ์ˆ˜ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ๋‹ค. ๋Œ€ํ•™๊ต + ๋Œ€ํ•™์›์—์„œ ๊ณต๋ถ€๋ฅผ ํ•˜๊ณ  ์—ฐ๊ตฌ๋ฅผ ํ•˜๊ณ  ์˜ค์…จ์œผ๋‹ˆ, ๊ธฐ๋Œ€๋ฅผ ํ•˜๊ฒŒ ๋˜์—ˆ๋‹ค. ํ•˜์ง€๋งŒ ๊ธฐ๋Œ€๊ฐ€ ํฌ๋ฉด ์‹ค๋ง๋„ ํฐ๋ฒ•, git์„ ํ•œ๋ฒˆ๋„ ์จ๋ณธ์  ์—†์„ ๋ฟ๋”๋Ÿฌ ํ˜‘์—…์„ ํ•œ๋ฒˆ๋„ ํ•ด๋ณด์ง€ ์•Š์•„์„œ ์ฝ”๋“œ๋ฅผ ์ •๋ง ๋ณธ์ธ ๋งˆ์Œ๋Œ€๋กœ ์†๊ฐ€๋ฝ ๊ฐ€๋Š”๋Œ€๋กœ ์ž‘์„ฑํ–ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด, ๊ธฐ์กด์— string์„ ๋ฐ›์•„์„œ ์‹คํ–‰๋˜๋˜ run์ด๋ผ๋Š” ํ•จ์ˆ˜๊ฐ€ ์žˆ๋‹ค๊ณ  ๊ฐ€์ •ํ•ด๋ณด์ž.

def run(string):
    ....
    return string


์—ฌ๊ธฐ์„œ string์ด ์•„๋‹Œ integer๋กœ ๋ฐ›๊ณ ์‹ถ์–ด์„œ ์ด๋ ‡๊ฒŒ ๋ฐ”๊พธ์—ˆ๋‹ค๊ณ  ํ•œ๋‹ค.

# ์ƒˆ๋กœ ์ถ”๊ฐ€ํ•œ ํ•จ์ˆ˜
def run(integer):
    ...
    return integer
    
# ๊ธฐ์กด์˜ ํ•จ์ˆ˜
def run1(string):
    ...
    return string



์ด๋ ‡๊ฒŒ ๊ทธ๋ƒฅ ๋ฐ”๊ฟ”๋ฒ„๋ฆฌ๋ฉด? ๊ธฐ์กด์— run์ด๋ผ๋Š” ํ•จ์ˆ˜๋ฅผ ์ž˜ ํ˜ธ์ถœํ•ด์„œ ์‚ฌ์šฉํ•˜๋˜ ๋‹ค๋ฅธ ์ฝ”๋“œ๋“ค์€ ?
๊ทธ๋ฆฌ๊ณ  ์ง„์งœ ์ •ํ™•ํ•˜๊ฒŒ ๊ธฐ์กด์˜ ํ•จ์ˆ˜ ๋’ค์— 1์„ ๋ถ™์—ฌ์„œ ํ•จ์ˆ˜ ์ด๋ฆ„์„ ๋ฐ”๊ฟ”๋†“์•˜๋”๋ผ ใ…‹ใ…‹
์ฝ”๋“œ๋ฅผ ๋ฐ”๊พธ๊ณ  ์‹คํ–‰๋„ ์•ˆํ•˜๊ณ  ๊ทธ๋ƒฅ commitํ•˜๊ณ  pushํ•ด๋ฒ„๋ฆฐ ๋‹น์‹  .. ์ง„์‹ฌ์ธ๊ฐ€?
๋‹น์—ฐํ•˜๊ฒŒ ์‹คํ–‰ x. ์ด๋ ‡๊ฒŒ ๋ฐ”๊ฟ”๋ฒ„๋ฆฌ๋ฉด ์–ด๋–กํ•ด์š”? ๋ฌผ์–ด๋ณด๋‹ˆ, ๋‚˜๋ณด๊ณ  run ํ•จ์ˆ˜ ํ˜ธ์ถœํ•˜๋Š” ๊ณณ์— ๊ฐ€์„œ ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ๋‹ค ์ˆ˜์ •ํ•˜๋ผ๊ณ  ํ–ˆ๋‹ค.

๋„ค ? ๊ทธ๊ฒŒ ๋ฌด์Šจ .. ?

์—ฐ๊ตฌ์›๋‹˜์€ ๋ณธ์ธ์ด ๋ญ˜ ํฌ๊ฒŒ ์ž˜๋ชปํ•œ์ง€๋ฅผ ๋ชจ๋ฅด๋Š” ๊ฒƒ ๊ฐ™์•˜๋‹ค. ์ด์ƒํ•˜๋‹ค๊ณ  ๋งํ•˜๋Š” ๋‚˜์˜ ๋ง์„ ๋“ฃ์ง€ ์•Š๋Š” ๊ฒƒ ๊ฐ™์•„์„œ ์ด ์ƒํ™ฉ์„ CTO๋‹˜์—๊ฒŒ ๋ง์”€๋“œ๋ ธ๋‹ค. CTO๋‹˜์ด ๊ทธ ๋ถ„ํ•œํ…Œ ๋งํ•˜๋‹ˆ ๊ทธ์ œ์„œ์•ผ ์ˆ˜๊ธํ•˜๊ณ  ์ฝ”๋“œ๋ฅผ ์ˆ˜์ •ํ•˜๋”๋ผ. (์ˆ˜์ •ํ•˜๊ณ ๋‚˜์„œ ํ…Œ์ŠคํŠธ๋„ ์•ˆํ•˜๊ณ  commit, ํ…Œ์ŠคํŠธ๋Š” ๋‚˜์˜ ๋ชซ!)
๋‚ด๊ฐ€ ํ•˜๋Š” ๋ง์— ๋Œ€ํ•ด์„œ ์‹ ๋ขฐ์„ฑ์ด ์—†๋‚˜? ํ•˜๋Š” ๋งˆ์Œ์— 'ํŒŒ์ด์ฌ ํด๋ฆฐ ์ฝ”๋“œ'๋ฅผ ๋ฐ”๋กœ ์ฃผ๋ฌธํ–ˆ๋‹ค.

ํด๋ฆฐ ์ฝ”๋“œ ๋น ์‚ญํ•˜๊ฒŒ ๊ณต๋ถ€ํ•˜๊ฒ ์„œ์š” ๐Ÿ˜€