2023๋…„ 5์›” 03์ผยท1๋ถ„ ์ฝ๊ธฐ

Python 3.12๋Š” Python์˜ ์„ฑ๋Šฅ๊ณผ ํšจ์œจ์„ฑ์„ ํ˜์‹ ํ•ฉ๋‹ˆ๋‹ค

๊ณง ์ถœ์‹œ๋  Python 3.12 ๋ฆด๋ฆฌ์Šค๋Š” ์†๋„, ๋ฉ”๋ชจ๋ฆฌ ํšจ์œจ์„ฑ, ์ ์‘์„ฑ ๋ฐ ๋™์‹œ์„ฑ์— ๋Œ€ํ•œ ์ƒ๋‹นํ•œ ๊ฐœ์„ ์„ ์•ฝ์†ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๊ฐœ์„  ์‚ฌํ•ญ์€ ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋Š” ๋™์  ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์˜ ๋ฏธ๋ž˜๋ฅผ ๋ณด์žฅํ•˜๊ณ  ๊ฐœ๋ฐœ์„ ๊ฐ„์†Œํ™”ํ•˜๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ํ•ฉ๋‹ˆ๋‹ค.

Python 3.12๋Š” Python์˜ ์„ฑ๋Šฅ๊ณผ ํšจ์œจ์„ฑ์„ ํ˜์‹ ํ•ฉ๋‹ˆ๋‹ค

๋™์  ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์ธ Python์€ ํ•ญ์ƒ ์†๋„์™€ ํšจ์œจ์„ฑ์„ ๋†’์ด๋Š” ๋ฐ ์–ด๋ ค์›€์„ ๊ฒช์—ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์œ ํƒ€์ฃผ ์†”ํŠธ๋ ˆ์ดํฌ์‹œํ‹ฐ์—์„œ ์—ด๋ฆฐ PyCon 2023 ์—์„œ ์ตœ๊ทผ์— ์„ ๋ณด์ธ ๊ฐœ๋ฐœ์€ ๋” ๋น ๋ฅด๊ณ  ํšจ์œจ์ ์ธ ๋ฐฐํฌ๋ฅผ ์•ฝ์†ํ•จ์œผ๋กœ์จ Python์˜ ์ง„ํ™”ํ•˜๋Š” ๋ฏธ๋ž˜๋ฅผ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค. ๊ณง ์ถœ์‹œ๋  Python 3.12 ๋ฒ„์ „์€ ์–ธ์–ด ์ตœ์ ํ™”์˜ ํ˜์‹ ์ ์ธ ๋ณ€ํ™”๋ฅผ ๋ณด์—ฌ์ฃผ๋Š” ์ผ๋ จ์˜ ๊ฐœ์„  ์‚ฌํ•ญ์„ ๋„์ž…ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

Microsoft์˜ ํ•ต์‹ฌ Python ๊ธฐ์—ฌ์ž์ธ Mark Shannon๊ณผ PyCon 2023์˜ ๋‹ค๋ฅธ ์—ฐ์‚ฌ๋Š” Python์˜ ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ ๊ฐ์†Œ, ์ธํ„ฐํ”„๋ฆฌํ„ฐ ๊ฐ€์†ํ™” ๋ฐ ์ปดํŒŒ์ผ๋Ÿฌ ์ตœ์ ํ™”๋ฅผ ๋ชฉํ‘œ๋กœ ํ•˜๋Š” ์ˆ˜๋งŽ์€ ์ด๋‹ˆ์…”ํ‹ฐ๋ธŒ์— ๋Œ€ํ•ด ์กฐ๋ช…ํ–ˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, Python์˜ ๊ฐœ์ฒด ํ—ค๋”๊ฐ€ 208๋ฐ”์ดํŠธ์—์„œ 96๋ฐ”์ดํŠธ๋กœ ์ค„์–ด๋“ค์–ด ์บ์‹œ ์ง€์—ญ์„ฑ์„ ๊ฐœ์„ ํ•˜๋ฉด์„œ ๋” ๋งŽ์€ ๊ฐœ์ฒด๋ฅผ ๋ฉ”๋ชจ๋ฆฌ์— ๋ณด๊ด€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ ์‘ํ˜• ํŠน์ˆ˜ํ™”๋Š” Python 3.12์— ๋„์ž…๋œ ๋˜ ๋‹ค๋ฅธ ํ•ต์‹ฌ ๊ฐœ๋ฐœ์ž…๋‹ˆ๋‹ค. ํ•ต์‹ฌ Python ๊ฐœ๋ฐœ์ž์ธ Brandt Bucher์— ๋”ฐ๋ฅด๋ฉด Python 3.11์˜ ์ƒˆ๋กœ์šด ๋ฐ”์ดํŠธ ์ฝ”๋“œ ์ ์‘ ๋ช…๋ น์€ ์ตœ์‹  ๋ฒ„์ „์—์„œ ๋”์šฑ ํ–ฅ์ƒ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์ง€์นจ์€ ๋Ÿฐํƒ€์ž„ ์ค‘์— Python ์œ ํ˜•์— ํŠน์ •ํ•œ ๋ฒ„์ „์„ ๋Œ€์ฒดํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ์ธํ„ฐํ”„๋ฆฌํ„ฐ๋ฅผ ๊ฐ„์†Œํ™”ํ•˜๊ณ  ์ „์ฒด ํ”„๋กœ์„ธ์Šค ์†๋„๋ฅผ ๋†’์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Python 3.12์˜ ํ–ฅ์ƒ๋œ ๊ธฐ๋Šฅ์—๋Š” ์ถ”๊ฐ€ ์ ์‘ํ˜• ํŠน์ˆ˜ํ™” opcode ๋ฐ ๋‹จ์ˆœํ™”๋œ opcode ํŠน์ˆ˜ํ™”๊ฐ€ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.

๋™์‹œ์„ฑ์€ Python์˜ ์˜ค๋žœ ๋ฌธ์ œ์ด๋ฉฐ Python 3.12๋Š” ์„œ๋ธŒ ์ธํ„ฐํ”„๋ฆฌํ„ฐ ๋ฐ ์ธํ„ฐํ”„๋ฆฌํ„ฐ๋ณ„ GIL(Global Interpreter Lock)์„ ๋„์ž…ํ•˜์—ฌ ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ํ•ฉ๋‹ˆ๋‹ค. ํ•ต์‹ฌ Python ๊ฐœ๋ฐœ์ž์ธ Eric Snow์˜ ๊ฐ•์—ฐ์—์„œ๋Š” ์Šค๋ ˆ๋“œ, ๋น„๋™๊ธฐ ๋˜๋Š” ๋‹ค์ค‘ ์ฒ˜๋ฆฌ๋กœ ์ธํ•œ ํŠธ๋ ˆ์ด๋“œ ์˜คํ”„๋ฅผ ์ค„์ด๋ฉด์„œ ๋‹ค์ค‘ ์ฝ”์–ด์˜ ๋” ๋‚˜์€ ์‚ฌ์šฉ์„ ์ด‰์ง„ํ•˜๋Š” ์ด ์†”๋ฃจ์…˜์„ ํƒ์ƒ‰ํ–ˆ์Šต๋‹ˆ๋‹ค. GIL์„ ์ œ๊ฑฐํ•˜๋Š” ๋Œ€์‹  ์„œ๋ธŒ ์ธํ„ฐํ”„๋ฆฌํ„ฐ ๋ฉ”์ปค๋‹ˆ์ฆ˜์„ ํ†ตํ•ด ์—ฌ๋Ÿฌ ์ธํ„ฐํ”„๋ฆฌํ„ฐ๊ฐ€ ๋‹จ์ผ ํ”„๋กœ์„ธ์Šค ๋‚ด์—์„œ ํ•จ๊ป˜ ์‹คํ–‰๋  ์ˆ˜ ์žˆ์œผ๋ฉฐ ๊ฐ ์ธํ„ฐํ”„๋ฆฌํ„ฐ๋Š” ์ž์ฒด GIL์„ ๊ฐ€์ง‘๋‹ˆ๋‹ค. ๋˜ํ•œ ํŒŒ์ด์ฌ 3.12๋Š” ์ธํ„ฐํ”„๋ฆฌํ„ฐ ๋ผ๋Š” ํ‘œ์ค€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์— ์ตœ์†Œํ•œ์˜ ๋ชจ๋“ˆ์„ ๋„์ž…ํ•˜์—ฌ ํ”„๋กœ๊ทธ๋ž˜๋จธ๊ฐ€ ์„œ๋ธŒ ์ธํ„ฐํ”„๋ฆฌํ„ฐ๋ฅผ ํšจ๊ณผ์ ์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.

์ด๋Ÿฌํ•œ ๋ฐœ์ „์€ Python์˜ ์„ฑ๋Šฅ์„ ๊ฐ€์†ํ™”ํ•  ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ํ–ฅํ›„ ๋ช‡ ๋…„ ๋™์•ˆ ์–ธ์–ด ๋‚ด๋ถ€์˜ ๋ฏธ๋ž˜๋ฅผ ๋ณด์žฅํ•˜๋Š” ๋ฐ๋„ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค. ์ด์™€ ๊ด€๋ จํ•˜์—ฌ ํ•ด๊ฒฐ๋œ ๋ฌธ์ œ ์ค‘ ํ•˜๋‚˜๋Š” ํ•ต์‹ฌ Python ๊ฐœ๋ฐœ์ž์ธ Victor Stinner๊ฐ€ ๊ณต๊ฐœํ•œ CPython์˜ ์ˆ˜๋งŽ์€ C API์˜ ์ •๋ฆฌ ๋ฐ ์ถ”์ƒํ™”์ž…๋‹ˆ๋‹ค. ๊ณต์šฉ API๋ฅผ ๋น„๊ณต๊ฐœ๋กœ ์œ ์ง€ํ•˜๋ฉด CPython ๋‚ด๋ถ€์™€์˜ ์ง์ ‘์ ์ธ ์ƒํ˜ธ ์ž‘์šฉ์ด ์ค„์–ด๋“ค๊ณ  ์ž ์žฌ์ ์ธ ๋ฒ„์ „ ๋ณ€๊ฒฝ์— ๋Œ€ํ•œ ์ข…์†์„ฑ์ด ์ค„์–ด๋“ญ๋‹ˆ๋‹ค. ์ œ3์ž ํ”„๋กœ์ ํŠธ์ธ HPy๋„ ๋“ฑ์žฅํ•˜์—ฌ ์—ฌ๋Ÿฌ ๋ฒ„์ „์—์„œ Python์šฉ ๋ณด๋‹ค ์•ˆ์ •์ ์ด๊ณ  ํšจ์œจ์ ์ด๋ฉฐ ์ถ”์ƒ์ ์ธ C API๋ฅผ ์ œ๊ณตํ•˜๊ณ  NumPy ๋ฐ ultrajson๊ณผ ๊ฐ™์€ ํ”„๋กœ์ ํŠธ์— ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค.

Python 3.12์˜ ์ด๋Ÿฌํ•œ ํš๊ธฐ์ ์ธ ๊ฐœ์„  ์‚ฌํ•ญ์€ ๋” ๋น ๋ฅด๊ณ  ๋ฉ”๋ชจ๋ฆฌ ํšจ์œจ์ ์ด๋ฉฐ ์ ์‘ ๊ฐ€๋Šฅํ•œ ๋ฐฐํฌ๋ฅผ ์•ฝ์†ํ•  ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์ด์ „์—๋Š” ๋ถˆ๊ฐ€๋Šฅํ–ˆ๋˜ ๊ฐœ์„ ์˜ ๋ฌธ์„ ์—ด์–ด์ค๋‹ˆ๋‹ค. ์ด ๋ฆด๋ฆฌ์Šค๋Š” AppMaster platform which enables easy creation of web, mobile, and backend applications through no-code solutions. Embracing an evolving future, Python is set to revolutionize its performance and efficiency, delivering substantial benefits to developers everywhere.

Easy to start
Create something amazing

Experiment with AppMaster with free plan.
When you will be ready you can choose the proper subscription.

Get Started
Python 3.12๋Š” Python์˜ ์„ฑ๋Šฅ๊ณผ ํšจ์œจ์„ฑ์„ ํ˜์‹ ํ•ฉ๋‹ˆ๋‹ค | AppMaster