조띵의지극히개인적인공간

Tip 4
 꺠진 창문을 내버려 두지 말라.

 책에서는 "깨진창문(나쁜설계, 잘못된 결정, 혹은 형편없는 코드)을 고치지 않는 채로 내버려 두지 말라. 발견하지마자 바로 고쳐라. 적절히 고칠 시간이 충분치 않다면 판자로 덮는 것만이라도 하라" 라고 쓰여있다.
 대부분의 사람이 그러겠지만 손에 버려야할 휴지한장이 들려있고 바닥이 매우 지저분하다면 서슴없이 그냥 바닥에 던질테고 마냑 거리가 매우 깨끗하다면 버려야할 휴지통이 있을때까지 손에 들고있기 마련이다.


버퍼가 있다고 가정하고 그 버퍼의 크기 코드상에 넣으려고 한다.
처음에 하려면
char buffer[1024];
이렇게 넣는다

그리고 for문을 돌린다면
for(int i=0; i<1024; i++)

이런식으로 구현을 할테고(물론 뭐 sizeof로 계산을 할수도 있지만 함수 포인터로 buf를 넘긴다면?)
저~기 다른데에서 출력을 하고자 또 뭐 하려면
for(int i=0; i<1024; i++)
어김없이 들어간다.

이미 이런식의 코딩에는 꺠진 유리가 너무나 많다.
처음에 상수로 1024 했으니까 그다음부터는 당연히 하드코딩으로 1024를 넣기 시작하고
후에 만약 버퍼의 크기가 바뀌어야 한다면...100여줄의 코드라면 상관없지만 그렇지 않다면...
그 사이드 상상만해도 끔찍하다.


젊어서 고생은 사서도 한다는데
최초의 깨진 유리창을 미쳐 보지 못하고 지나친다 해도 후에 발견이 된다면
그 즉시 수정을 해야 후한이 없다.

Posted by 조띵


티스토리 툴바