๋กœ์ปฌํ•จ์ˆ˜ ์“ฐ๋‹ค๊ฐ€ ๊ณ ๋ฏผ์ด ์ƒ๊น€.

์˜ˆ์ „์—๋Š” #region ์‚ฌ์šฉํ•ด์„œ ๋ฌถ์–ด์ฃผ๋ฉด ๊น”๋”ํ•ด ๋ณด์ด๋Š” ๊ฒƒ ๊ฐ™์•„์„œ ์‚ฌ์šฉํ–ˆ๋Š”๋ฐ,ย ๋‚˜์ค‘์— ๋А๋‚€๊ฒŒ ์˜คํžˆ๋ ค ๋‚œ์žกํ•˜๋‹ค๊ณ  ๋А๊ผˆ์Œ.

partial๋„ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ๋‚˜๋ˆ ์ฃผ๊ธด ํ•˜์ง€๋งŒ region๊ณผ ์œ ์‚ฌํ•˜๊ฒŒ ๊ฒฐ๊ตญ ํ•œ ํด๋ž˜์Šค๋ฅผ ์ฝ๊ธฐ ํŽธํ•˜๊ฒŒ ๋‚˜๋ˆˆ๊ฒƒ ๋ฟ์ด๋‹ˆ๊น.


๋งŽ์€ ์ผ์„ ํ•˜๋˜ ํ•จ์ˆ˜๋ฅผ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ํ•จ์ˆ˜๋กœ ์ชผ๊ฐœ์ฃผ์—ˆ๋Š”๋ฐ,

ํ•œ ํ•จ์ˆ˜์—์„œ๋งŒ ์‚ฌ์šฉ๋˜๋Š” ํ•จ์ˆ˜๊ฐ€ ๊ตณ์ด ๋ฐ–์—์„œ ์ธ์ž ๋ฐ›์•„์„œ ํ˜ธ์ถœ๋  ํ•„์š”๊ฐ€ ์—†์–ด๋ณด์—ฌ์„œ

๋กœ์ปฌ ํ•จ์ˆ˜๋กœ ๋‚ด๋ถ€์—์„œ ์‚ฌ์šฉ์„ ํ•˜๋Š”๊ฒŒ ๋” ๊น”๋”ํ•˜๊ฒ ๋‹ค ์‹ถ์—ˆ์Œ.

๋ฌธ์ œ๋Š” ๋กœ์ปฌํ•จ์ˆ˜๋กœ ์ธ์ž ์•ˆ ๋ฐ›๊ณ  ์‚ฌ์šฉํ•˜๋‹ค๋ณด๋‹ˆ

์ง€์—ญ๋ณ€์ˆ˜๋ฅผ ๋กœ์ปฌํ•จ์ˆ˜์—์„œ ์‚ฌ์šฉํ•ด๋„ ํŒŒ๋ผ๋ฏธํ„ฐ๋กœ ๋“ค์–ด๊ฐ€์ง€ ์•Š์•˜์œผ๋‹ˆ ๊ฒ‰๋ณด๊ธฐ์—๋Š” ์ง€์—ญ๋ณ€์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š์€ ๊ฒƒ ๊ฐ™์•„์„œ ํ—ท๊ฐˆ๋ฆฌ๋Š” ๋А๋‚Œ?


์˜ˆ๋ฅผ ๋“ค๋ฉด,

private int CalculateA(int num){

Add();

Multiply();

Add();

return num;


void Add() => num+=3;

void Multiply() => num *=3;

}

๋‹จ์ˆœํžˆ ์‚ฌ์šฉ์˜ˆ์‹œ๋กœ ํ•จ์ˆ˜๊ฐ€ ์žˆ๋‹ค๊ณ  ํ•˜๋ฉด

์ธ์ž๋กœ num์„ ์ „๋‹ฌํ•ด์ฃผ์ง€ ์•Š์•˜์œผ๋‹ˆ ํ•จ์ˆ˜์—์„œ num์„ ๊ฑด๋“œ๋ฆฌ์ง€ ์•Š์•˜๋‹ค๊ณ  ์ƒ๊ฐํ•˜๊ฒŒ ๋˜๋ฒ„๋ฆผ.

์ด๊ฑด ๋กœ์ปฌ ํ•จ์ˆ˜๋ฅผ ํ•จ์ˆ˜๋ž‘์€ ๋‹ค๋ฅธ ๋А๋‚Œ์œผ๋กœ ์ธ์ง€ํ•ด์•ผํ• ๊นŒ,ย static ๋กœ์ปฌ ํ•จ์ˆ˜๋กœ ์„ ์–ธํ•ด์„œ ์ธ์ž๋ฐ›๊ณ  ์‚ฌ์šฉํ•ด์•ผ ํ• ๊นŒ?

์•„๋‹ˆ๋ฉด ๊ทธ๋ƒฅ ๋กœ์ปฌํ•จ์ˆ˜ ์‚ฌ์šฉ์„ ๋ณดํ†ต ์•ˆํ•˜๋‚˜?