JAVA๐Ÿ”ฅ

[JAVA]์ดํด๋ฆฝ์Šค์—์„œ ๋””๋ฒ„๊ฑฐ ์‚ฌ์šฉํ•˜๊ธฐ

ํžˆ์Šคํ†ค 2021. 1. 20. 18:31

๋””๋ฒ„๊น…(debugging)์ด๋ž€

์ปดํ“จํ„ฐ ํ”„๋กœ๊ทธ๋žจ ๊ฐœ๋ฐœ ๋‹จ๊ณ„ ์ค‘์— ๋ฐœ์ƒํ•˜๋Š” ์‹œ์Šคํ…œ์˜ ๋…ผ๋ฆฌ์ ์ธ ์˜ค๋ฅ˜๋‚˜ ๋น„์ •์ƒ์  ์—ฐ์‚ฐ(๋ฒ„๊ทธ)์„ ์ฐพ์•„๋‚ด๊ณ  ๊ทธ ์›์ธ์„ ๋ฐํžˆ๊ณ  ์ˆ˜์ •ํ•˜๋Š” ์ž‘์—… ๊ณผ์ •์„ ๋œปํ•ฉ๋‹ˆ๋‹ค.

 

 

์ด๋ ‡๊ฒŒ ๋””๋ฒ„๊น…์„ ํ•  ์ˆ˜์žˆ๊ฒŒ ํ•ด์ฃผ๋Š” ํ”„๋กœ๊ทธ๋žจ ๋„๊ตฌ๋ฅผ ๋””๋ฒ„๊ฑฐ๋ผ๊ณ  ํ•˜๋Š”๋ฐ,

์˜ค๋Š˜์€ ์ดํด๋ฆฝ์Šค์—์„œ ๋””๋ฒ„๊ฑฐ๋ฅผ ์–ด๋–ป๊ฒŒ ์‚ฌ์šฉํ•˜๋Š”์ง€์— ๋Œ€ํ•ด ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

 

์ดํด๋ฆฝ์Šค ์ƒ๋‹จ์˜ ๋ฉ”๋‰ด ๋„๊ตฌ ์ค‘์— ์ดˆ๋ก์ƒ‰ ๋ฒŒ๋ ˆ๋ชจ์–‘์œผ๋กœ ์ƒ๊ธด ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋ฉด ๋””๋ฒ„๊ฑฐ๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด๊ฒƒ์„ ๋ˆ„๋ฅด๋ฉด ์˜ค๋ฅธ์ชฝ ์ƒ๋‹จ ์•„์ด์ฝ˜์ด ๋ฒŒ๋ ˆ๋ชจ์–‘์œผ๋กœ ๋ฐ”๋€๋‹ˆ๋‹ค. ์ด๋ฅผ Perspective๋ผ๊ณ  ๋ถ€๋ฆ…๋‹ˆ๋‹ค.

์ด๋Š” ๋””๋ฒ„๊น…์„ ํ•  ๋•Œ๋ณด๊ธฐ์ข‹์€ ๋ชจ์–‘์œผ๋กœ ๋ฐ”๊ฟ”์ค๋‹ˆ๋‹ค.

 

 

์ž ์ด์ œ ์™ผ์ชฝ์ƒ๋‹จ์˜ ์ดˆ๋ก์ƒ‰ ๋ฒŒ๋ ˆ๋ชจ์–‘์„ ๋ˆŒ๋ €๋”๋‹ˆ switch๋ฅผ ํ• ๊ฑฐ๋ƒ๊ณ  ๋ฌป๋Š” ์ฐฝ์ด ๋œจ๊ณ  Switch ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋ฉด

Debug perspective๋กœ ํ™”๋ฉด๊ตฌ์„ฑ์„ ๋ฐ”๊ฟ€ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Debug perspective๋กœ ๋ฐ”๋€ ํ™”๋ฉด๊ตฌ์„ฑ

 

 

๋ธŒ๋ ˆ์ดํฌํฌ์ธํŠธ ์ง€์ •๋ฒ•

์•„๋ž˜์™€ ๊ฐ™์€ ํ™”๋ฉด์—์„œ ์ค„ ๋ฒˆํ˜ธ ์™ผ์ชฝ์—์„œ ๋”๋ธ”ํด๋ฆญ์„ ํ•ด์ฃผ๋ฉด ๋ธŒ๋ ˆ์ดํฌํฌ์ธํŠธ๊ฐ€ ์ง€์ •๋ฉ๋‹ˆ๋‹ค.

 

๋ธŒ๋ ˆ์ดํฌํฌ์ธํŠธ๋ฅผ ์ง€์ •ํ•œ ๊ณณ์—์„œ ๋””๋ฒ„๊ฑฐ๋ฅผ ์‹คํ–‰ํ•˜๋ฉด ๊ทธ ๋ธŒ๋ ˆ์ดํฌํฌ์ธํŠธ๊ฐ€ ์ง€์ •๋œ ์ง€์ ๊นŒ์ง€๋งŒ ์ฝ”๋“œ๊ฐ€ ์‹คํ–‰๋˜๊ณ  ๊ทธ ์ดํ›„์˜ ์ฝ”๋“œ๋Š” ์ผ์‹œ์ •์ง€๋ฉ๋‹ˆ๋‹ค.

๋งŒ์ผ ๋ธŒ๋ ˆ์ดํฌํฌ์ธํŠธ๋ฅผ ํ•ด์ง€ํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด ๋ธŒ๋ ˆ์ดํฌ ํฌ์ธํŠธ๋ฅผ ๋‹ค์‹œ ํด๋ฆญํ•˜๋ฉด ํ•ด์ง€๊ฐ€ ๋ฉ๋‹ˆ๋‹ค.

์ˆซ์ž 7 ์˜†์— ์ƒ์„ฑ๋œ ๋ธŒ๋ ˆ์ดํฌํฌ์ธํŠธ

 

 

step over๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜๋ฉด ๋‹ค์Œ์ค„์— ๋ธŒ๋ ˆ์ดํฌ ํฌ์ธํŠธ๊ฐ€ ์ƒ์„ฑ๋˜์–ด์„œ ๊ทธ ์ง€์ ๊นŒ์ง€ ์ฝ”๋“œ๊ฐ€ ์‹คํ–‰๋˜๋ฏ€๋กœ

์ด๋ฅผ ํ†ตํ•ด ์ฝ”๋“œ๋ฅผ ํ•œ์ค„์”ฉ ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ์žฅ์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

step over๋ฅผ ์„ ํƒํ•œ๋‹ค.

 

 

Resume ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜๋ฉด ๋‹ค์Œ ๋ธŒ๋ ˆ์ดํฌํฌ์ธํŠธ๊นŒ์ง€ ์‹คํ–‰๋˜๊ณ , ๋งŒ์ผ ๋ธŒ๋ ˆ์ดํฌ ํฌ์ธํŠธ๊ฐ€ ์—†๋‹ค๋ฉด ์ฝ”๋“œ ๋๊นŒ์ง€ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.

Resume ๋ฒ„ํŠผ์„ ํด๋ฆญ์‹œ ์ฝ”๋“œ ๋๊นŒ์ง€ ์‹คํ–‰๋จ

 

 

๋””๋ฒ„๊น… ๋๋‚ด๊ณ  ์›๋ž˜๋Œ€๋กœ ๋Œ์•„๊ฐ€๊ธฐ

์ด์ œ ๋””๋ฒ„๊น…์„ ๋๋‚ด๊ณ  ๋‹ค์‹œ ์›๋ž˜ ์ฝ”๋“œ๋กœ ๋Œ์•„๊ฐ€๊ณ  ์‹ถ์„ ๊ฒฝ์šฐ step Return์ด๋ผ๋Š” ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜์—ฌ ๋Œ์•„๊ฐ‘๋‹ˆ๋‹ค.

step return ํด๋ฆญํ•˜์—ฌ ์›๋ž˜๋Œ€๋กœ ๋Œ์•„๊ฐ€๊ธฐ.

 

'JAVA๐Ÿ”ฅ' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[JAVA] JAVA ์„ค์น˜ํ•˜๊ธฐ  (0) 2021.01.06