ResXResourceManager ์†Œ๊ฐœ

resx ๊ธฐ๋ฐ˜ ๋ฆฌ์†Œ์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ชจ๋“  ์ข…๋ฅ˜์˜ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์˜ ํ˜„์ง€ํ™”๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ๊ฐ€์žฅ ์ธ๊ธฐ์žˆ๋Š” ๋„๊ตฌ์ž…๋‹ˆ๋‹ค. ๋น„์ฃผ์–ผ ์ŠคํŠœ๋””์˜ค ๋งˆ์ผ“ ํ”Œ๋ ˆ์ด์Šค์—์„œ๊ฐ€์žฅ ๋†’์€ ๋“ฑ๊ธ‰์˜ ํ™•์žฅ ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ ์ปค๋ฎค๋‹ˆํ‹ฐ ์ฃผ๋„ ์˜คํ”ˆ ์†Œ์Šค ํ”„๋กœ์ ํŠธ์ž…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ์ด๋ฅผ ์œ ์ง€ํ•˜๊ณ  ๋ฐœ์ „์‹œํ‚ค๊ธฐ ์œ„ํ•ด์„œ๋Š” ์—ฌ๋Ÿฌ๋ถ„์˜ ์ง€์›์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์—ฌํ•˜๋Š” ๊ฐ€์žฅ ์ข‹์€ ๋ฐฉ๋ฒ•์€ ๋ฒ„๊ทธ ๋ฅผ ์ˆ˜์ •ํ•˜๊ฑฐ๋‚˜ ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ ์ž…๋‹ˆ๋‹ค. ๋‹น์‹ ์ด ์ฝ”๋”ฉ์— ๋„์›€์ด๋˜์ง€ ์ˆ˜ ์žˆ๋‹ค๋ฉด ๊ทธ๋Ÿฌ๋‚˜, ์ƒ๊ฐ ์†Œ๋Ÿ‰์˜ ๊ธฐ๋ถ€ ๋ณด์žฅํ•˜๊ธฐ RESX ๋ฆฌ์†Œ์Šค ๊ด€๋ฆฌ์ž๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ผ์ƒ ์ž‘์—… ๋‹น์‹ ์„ ๋„์šธ ์ˆ˜์žˆ๋Š” ์ข‹์€ ์‚ฌ์—…์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ด ๋„๊ตฌ๋Š” ์†”๋ฃจ์…˜์˜ ๋ชจ๋“  ResX ๊ธฐ๋ฐ˜ ๋ฌธ์ž์—ด ๋ฆฌ์†Œ์Šค์— ๋Œ€ํ•œ ์ค‘์•™ ์•ก์„ธ์Šค๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๋ชจ๋“  ๋ฆฌ์†Œ์Šค ํŒŒ์ผ์„ ๋น ๋ฅด๊ฒŒ ํƒ์ƒ‰ํ•˜๊ณ  ์ž˜ ๋ฐฐ์—ด๋œ ๋ฐ์ดํ„ฐ ๊ทธ๋ฆฌ๋“œ์—์„œ ์ฝ˜ํ…์ธ ๋ฅผ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๋ชจ๋“  ์–ธ์–ด๋Š” ์—ด์— ๋‚˜๋ž€ํžˆ ํ‘œ์‹œ๋˜์–ด ๋ฒˆ์—ญ๋˜์ง€ ์•Š์€ ๋ฌธ์ž์—ด์„ ์‰ฝ๊ฒŒ ์ฐพ๊ฑฐ๋‚˜ ๊ณ ์•„ ํ•ญ๋ชฉ์„ ์ •๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ชจ๋“  ๋ฌธ์ž์—ด์€ ์ฆ‰์‹œ ํŽธ์ง‘ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ์ž…๋ ฅํ•˜๋Š” ๋™์•ˆ ๋ฒˆ์—ญ๋˜์ง€ ์•Š์€ ํ•ญ๋ชฉ์ด ์ฆ‰์‹œ ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค.

๋ชจ๋“  .Net ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค. WPF๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ์ง€์›๋˜๋ฉฐ x:Static ํƒœ๊ทธ ํ™•์žฅ์„ ์‚ฌ์šฉํ•˜์—ฌ ResX-๋ฆฌ์†Œ์Šค์— ์•ก์„ธ์Šคํ•˜๊ธฐ ๋งŒํ•˜๋ฉด๋ฉ๋‹ˆ๋‹ค.

dotnet/ResXResourceManager: Manage localization of all ResX-Based resources in one central place. (github.com)

์ข‹์•„์š” 3