블로그 이미지
안녕1999

카테고리

전체 (3067)
자바스크립트 (20)
안드로이드 (14)
WebGL (4)
변비 (17)
정치,경제 (35)
C언어,ARM (162)
컴퓨터(PC, Note Book, 윈.. (41)
전자회로, PCB (27)
유머,안웃긴,GIF,동영상 (118)
국부론60 (71)
모듈(PCB) (3)
건강 (2)
FreeCAD (25)
PADS (43)
퇴직,퇴사,구직,취업 활동 (3)
C# (86)
엑셀 (8)
워드 (0)
LabView (6)
레고 (30)
FPGA (0)
Total
Today
Yesterday

달력

« » 2025.6
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30

공지사항

최근에 올라온 글

남이 짜놓은 프로그램소스를 분석하고, 수정하는 작업은 쉽지 않다.
아무리 잘 만들어 놓은 라이브러리라도, 버그는 있고, 사용법도 쉽지 않은 경우가 많다.
또한 예외상황도 존재하고, 한마디로 머리아프다.

그런데, 일반 프로그래머가 작성해놓은 뒤죽박죽 프로그램 소스코드는, 상상을 초월한다.
도대체, 이유를 알 수 없는 코드가 90%이다.(조금 과장)

서론
-------------------
- 남에 코드는 변수명, 함수명을 믿지 마라.
  처음에 잘못된 단어사용으로, 완전히 다른 의미가 되어,
  디버깅에 막대한 지장을 주는 경우도 있다.

방법론
---------------------
- 코드의 특정부분을 주석문으로 감싸서, 해당 코드의 기능을 확인한다.
  (물론, 주석처리하면, 아예동작 안하는 코드도 있다.)

- 2진 검색. 분할정복
  의심가는 코드의 1/2을 주석처리하고,
  나머지 1/2을 또 주석처리하다보면,
  몇번만에 원하는 코드를 찾을 수 있다.

- 내가 짠 코드와 섞지마라.
  나중에 더 뒤죽박죽이 될 수도 있다.
  가능하면, 부분수정으로 끝내고,
  다음에는 처음부터 새로 작성하길 바란다.

- 브레이크 포인트, 콜스택 활용
  임의의 지점에 브레이크 포인트를 걸고, 콜스택을 따라가보면,
  대충 동작 순서를 알 수 있다.

- TRACE, printf등 디버깅 기능 활용
  특정함수가 얼마나, 어떻게 사용되는지, 로그기록을 남겨서 확인할 수 있다.

- HWND윈도우 기반의 GUI에서, 특정 버튼의 ID는 spy툴로 쉽게 찾을 수 있다.
  프로그램 소스에서, ID번호 검색하여, ID이름을 알아낸다.

- 특정변수의 타입은, F12키를 누르면, 해당변수의 선언부(클래스)로 이동한다.

Posted by 안녕1999
, |

최근에 달린 댓글

글 보관함