E D R , A S I H C RSS

Debugging

1. ๋””๋ฒ„๊ทธ๋Š” ๋ฌด—‡ผ๊นŒ?

  • ”„๋กœ๊ทธ๋žจ˜ ˜ค๋ฅ˜๋ฅผ ๋ฐœ๊ฒฌ•˜๊ณ , ๊ทธ ›ธ„ ๋ฐ˜€๋‚ด„œ ๊ณ น˜๋Š” ž‘—…

1.1. …Œด๋ธ” ๋””๋ฒ„๊น…

1.2. ปด“จ„ฐ ๋””๋ฒ„๊น…

1.2.1. ๋””๋ฒ„ฐ ๋ฐฉ‹

  • ”„๋กœ๊ทธ๋žจ„ ‹ค–‰• ๋•Œ ๋””๋ฒ„๊น… ๋ชจ๋“œ๋กœ ปดŒŒผ•˜—ฌ ๋””๋ฒ„ฐ ๊ธฐ๋Šฅ„ ฌ•จ‹œผœ„œ ‚ฌšฉ•˜๋ฉด„œ ˜ค๋ฅ˜— ๊ด€•œ ๊ฐข…  •๋ณด๋ฅผ ˆ˜ง‘

1.2.2. ๋””๋ฒ„๊ทธ –‰ ๋ฐฉ‹

  • ˆ˜ง‘•˜๊ณ  ‹ถ€  •๋ณด๋ฅผ ถœ๋ ฅ•˜๊ธฐ œ„•œ ๋””๋ฒ„๊น…šฉ ๋ช…๋ น„ ๋ฏธ๋ฆฌ ”„๋กœ๊ทธ๋žจ ๊ณณ๊ณณ— ‚ฝž…•˜—ฌ ‹ค–‰ ‹œ‚ค๋Š” ๋ฐฉ‹

1.2.3. ๊ธฐ๊ณ„–ด ๋ฐฉ‹


2. ๋””๋ฒ„๊น… ๋…ธ•˜šฐ

  • ƒˆ๋กœšด ฝ”๋“œ๋ฅผ ž‘„•˜๊ธฐ  „— ˜„žฌ žˆ๋Š” ๋ฒ„๊ทธ๋“ค„ žก๋Š”๋‹ค.
    • ๋ฒ„๊ทธ๋Š” ˜ค๋ž˜ ๋˜๋ฉด ๋  ˆ˜๋ก ๊ทธ๊— ๊ด€๋ จ๋œ ฝ”๋“œ— ๋Œ€•œ ๊ธฐ–ต๋„ ฌ๋ฏธ•ดง€๊ณ , ๋ถˆ๋ช…™••ด ธ„œ ๋””๋ฒ„๊น…•˜๋Š”๋ฐ ๋” ๋งŽ€ ‹œ๊ฐ„ด ๊ธ๋ฆฌ๊ฒŒ ๋œ๋‹ค.
  • •œ๋ฒˆ— •˜๋‚˜”ฉ˜ ๋ฒ„๊ทธ๋ฅผ ˆ˜ ••˜๊ณ  …ŒŠคŠธ •ด๋ณธ๋‹ค.
    • ๊ณผ•™‹ค—˜—„œ๋„ •˜๋‚˜˜ ธž๋ฅผ ๋ฐ”๊ฟ”๊ฐ€๋ฉด„œ ‹ค—˜„ •˜ง€ •œ๊บผ๋ฒˆ— —ฌ๋Ÿฌ ธž๋ฅผ ๋ฐ”๊พธ๋ฉด„œ ‹ค—˜•˜ง€๋Š” •Š๋Š”๋‹ค.
  • ๋ถ„•   •๋ณต ๊ธฐ๋ฒ•
    - ๋ถ„•  •๋ณต„ •˜๋‹ค๊ฐ€ ƒ๊ธธˆ˜ žˆ๋Š” ๋ถ€๋ถ„€ ๋‚˜๋ฌด๋งŒ ๋ณด๊ฒŒ ๋˜๊ณ  ˆ„ ๋ณดง€ ๋ชป•˜๊ฒŒ ๋˜๋Š” ๊ฒฝšฐ๊ฐ€ žˆ๋‹ค. ฃผ˜!

3. ๋””๋ฒ„๊น… šฉ๋„?

  • ๋ฒ„๊ทธ žก๊ธฐ
  • ๋‹ค๋ฅธ ‚ฌ๋žŒ †ŒŠค ด•ด•˜๊ธฐ

4. ๋””๋ฒ„๊ทธ ๋งˆŒ๊ฐ€ง

Ridiculus Simplity
๊นŠ๊ฒŒ ƒ๊ฐ•˜๊ธฐ ๋ณด๋‹ค ๋„“๊ฒŒ ƒ๊ฐ•˜๋ผ.
๋ฒ„๊ทธ๊ฐ€ žˆ„ ๋ฆฌ๊ฐ€ —†–ด!๋ผ๊ณ  ƒ๊ฐง€ ๋ง๋ผ.
–ด๋””„œ๋ถ€„‹œž‘•  ง€ ƒ๊ฐ•œ๋‹ค.
๋ฐด„ฐ๋ฅผ ๋ˆˆ— ๋ณดด๊ฒŒ ๋งŒ๋“ค๋ผ.
ˆ„๊ตฐ๊ฐ€—๊ฒŒ „ค๋ช…•œ๋‹ค

.

5. ๋””๋ฒ„๊น… †Œ”„Šธ›–ด๋ฅผ ‚ฌšฉ•œ ๋””๋ฒ„๊น…

5.1. VC++๋””๋ฒ„“ฐ๊ธฐ

  • Debug
๊ธฐ๋Šฅ ๋‹จถ•‚ค(*->ค‘š”๋„) ˜๋ฏธ
Start Debugging, Go *F5 ๋””๋ฒ„๊น… ๋ชจ๋“œ๋กœ ‹ค–‰, ๋””๋ฒ„๊น… ๋ชจ๋“œ ค‘— F5๋ฅผ ๋‹คŒ BreakPoint๋กœ ด๋™•จ
BreakPoint * F9 ๋””๋ฒ„๊น… ๋ชจ๋“œ—„œ ๋ฉˆถœ๊ณณ„ ง€ •
Stop Debugging shift + F5 ๋””๋ฒ„๊น… ๋ชจ๋“œ ค‘๋‹จ
Step Into F11 ๋””๋ฒ„๊น… ๋ชจ๋“œ—„œ •œ ๋ผธ”ฉ ‹ค–‰ - •จˆ˜๋ฅผ ๋งŒ๋‚˜๋ฉด •จˆ˜ ๋‚ด๋ถ€๋กœ ๋“ค–ด๊ฐ€„œ ๊ณ„† ‹ค–‰
Step Over F10 ๋””๋ฒ„๊น… ๋ชจ๋“œ—„œ •œ ๋ผธ”ฉ ‹ค–‰ - •จˆ˜๋ฅผ ๋งŒ๋‚˜๋ฉด ๋‚ด๋ถ€๋กœ •ˆ๋“ค–ด๊ฐ€๊ณ  ‹ค–‰๋งŒ •˜๊ณ  ๋‹คŒ ๊ณ„† ‹ค–‰
Step Out shift+F11 Step Into ๋กœ •จˆ˜•ˆ— ๋“ค–ด๊ฐ”๋‹ค๊ฐ€ ๋‚˜˜ค๊ณ  ‹ถ„๋•Œ ‚ฌšฉ
Run to Cursor Ctrl+F10 ˜„žฌ ปค„œ๊ฐ€ žˆ๋Š” ๊ณณœผ๋กœ ๋””๋ฒ„๊น… ง€ ด ๋ฐ”๋€œ. ๋‹จ ด๋ฏธ ง€๋‚œ ๊ณณœผ๋กœ๋Š” •ˆ๋จ
Set Next Statement - ๋‹คŒ ๋””๋ฒ„๊น… ง€ „ ง€ •. Run to Cursor—„œ๋Š” ด๋ฏธ ง€๋‚œ๊ณณ€ •ˆ๋˜ง€๋งŒ —ฌ๊ธฐ„œ๋Š” ๋จ
  • View
™”๋ฉด(*->ค‘š”๋„) šฉ๋„
*Watch Window ๋ณ€ˆ˜๊ฐ’ด๋‚˜ ๊ฐฒด˜ ƒƒœ๋ฅผ ๋ด„. ๊ทธ ๊ฐ’„ ๋ณ€๊ฒฝ‹œ‚ฌˆ˜๋„ žˆŒ
Call Stack Window •จˆ˜ ˜ธถœ ๊ฒฝ๋กœ๋ฅผ ๋ณด—ฌคŒ
Disassembly —ญ–ด…ˆ๋ธ”๋ฆฌ–ด ฝ”๋“œ๋ฅผ ๋ณด—ฌคŒ

5.2. Eclipse๋””๋ฒ„“ฐ๊ธฐ

๊ธฐ๋Šฅ ๋‹จถ•‚ค(*->ค‘š”๋„) ˜๋ฏธ
Debug start *F11 ๋””๋ฒ„๊น… ๋ชจ๋“œ๋กœ ‹ค–‰
BreakPoint * Ctrl + Shift + b ๋””๋ฒ„๊น… ๋ชจ๋“œ—„œ ๋ฉˆถœ๊ณณ„ ง€ •
Step Into F5 ๋””๋ฒ„๊น… ๋ชจ๋“œ—„œ •œ ๋ผธ”ฉ ‹ค–‰ - •จˆ˜๋ฅผ ๋งŒ๋‚˜๋ฉด •จˆ˜ ๋‚ด๋ถ€๋กœ ๋“ค–ด๊ฐ€„œ ๊ณ„† ‹ค–‰
Step Over F6 ๋””๋ฒ„๊น… ๋ชจ๋“œ—„œ •œ ๋ผธ”ฉ ‹ค–‰ - •จˆ˜๋ฅผ ๋งŒ๋‚˜๋ฉด ๋‚ด๋ถ€๋กœ •ˆ๋“ค–ด๊ฐ€๊ณ  ‹ค–‰๋งŒ •˜๊ณ  ๋‹คŒ ๊ณ„† ‹ค–‰
Run to Return(Step Out) F7 –ด๋–ค •จˆ˜•ˆ— ๋“ค–ด๊ฐ”๋‹ค๊ฐ€ ๋ฐ”๋กœ ๊ทธ •จˆ˜๋ฅผ ๋‚˜˜ค๊ณ  ‹ถ„๋•Œ ‚ฌšฉ
Resume(go) F8 ๋‹คŒ BreakPoint ง€ œผ๋กœ ด๋™
  • tip : Ctrl + F11 : ‹ค–‰

5.3. PHP ๋””๋ฒ„๊น…

5.3.1. ๋””๋ฒ„๊ทธ–‰ ๋ฐฉ‹

  • ๋””๋ฒ„๊น… •˜๊ณ  ‹ถ€ ๊ณณ— ๋ณด๊ณ  ‹ถ€ ๋ณ€ˆ˜๋ช…„ ŒŒผ๋กœ ถœ๋ ฅ•˜๋Š” •จˆ˜๋ฅผ ๋„ฃ๋Š”๋‹ค.

6. ๋ฐ˜๋ณต๋˜๋Š” ๋””๋ฒ„๊น… ”ผ•˜๊ธฐ - DebugJournal

‚ฌ‹ค : ‚ฝˆ ๋‚ดšฉ, ๊ทธ —ฌ •, ‹คˆ˜•œ ด•ผ๊ธฐ -> ‚ฌ๊ณ ˜ ๊ณผ •ด ๋“œ๋Ÿฌ๋‚˜๋„๋ก!
๋А๋‚Œ, ๊ต›ˆ
๋ฏธ๋ž˜ –‰๋™ ๊ณ„š(FAP)
”ผ๋“œ๋ฐ

7. Thread

๊ทธ๋ ‡๋‹ค๋ฉด ๋””๋ฒ„ฐ๋Š” จ•ผ • ๊นŒ? ๋””๋ฒ„๊น…„ •ˆ •  ˆ˜๋Š” —†„๊นŒ?

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:23:06
Processing time 0.0244 sec