코드를 짜기 전에도 적어도 3번은 생각하고 짜라
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 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 | while(1){ what = inputDeployWhat(); if( what == 1 && range1PieceNum < range1PieceNumMax ){ deployPiece( setSpots[index], pieceId, 1, what ); printPiece( piecesP1[pieceId], BLACK ); setSpots[index] = NULL; pieceId++; range1PieceNum++; gotoXY( P1_INPUT_BOX_X, P1_INPUT_BOX_Y+2 ); setColor( RED, WHITE ); printf( "남은 말 수 ●:%d ★:%d ③:%d ④:%d ⑤:%d ", range1PieceNumMax - range1PieceNum, range2PieceNumMax - range2PieceNum, range3PieceNumMax - range3PieceNum, range4PieceNumMax - range4PieceNum, range5PieceNumMax - range5PieceNum ); break; } else if( what == 2 && range2PieceNum < range2PieceNumMax ){ deployPiece( setSpots[index], pieceId, 1, what ); printPiece( piecesP1[pieceId], BLACK ); setSpots[index] = NULL; pieceId++; range2PieceNum++; gotoXY( P1_INPUT_BOX_X, P1_INPUT_BOX_Y+2 ); setColor( RED, WHITE ); printf( "남은 말 수 ●:%d ★:%d ③:%d ④:%d ⑤:%d ", range1PieceNumMax - range1PieceNum, range2PieceNumMax - range2PieceNum, range3PieceNumMax - range3PieceNum, range4PieceNumMax - range4PieceNum, range5PieceNumMax - range5PieceNum ); break; } else if( what == 3 && range3PieceNum < range3PieceNumMax ){ deployPiece( setSpots[index], pieceId, 1, what ); printPiece( piecesP1[pieceId], BLACK ); setSpots[index] = NULL; pieceId++; range3PieceNum++; gotoXY( P1_INPUT_BOX_X, P1_INPUT_BOX_Y+2 ); setColor( RED, WHITE ); printf( "남은 말 수 ●:%d ★:%d ③:%d ④:%d ⑤:%d ", range1PieceNumMax - range1PieceNum, range2PieceNumMax - range2PieceNum, range3PieceNumMax - range3PieceNum, range4PieceNumMax - range4PieceNum, range5PieceNumMax - range5PieceNum ); break; } else if( what == 4 && range4PieceNum < range4PieceNumMax ){ deployPiece( setSpots[index], pieceId, 1, what ); printPiece( piecesP1[pieceId], BLACK ); setSpots[index] = NULL; pieceId++; range4PieceNum++; gotoXY( P1_INPUT_BOX_X, P1_INPUT_BOX_Y+2 ); setColor( RED, WHITE ); printf( "남은 말 수 ●:%d ★:%d ③:%d ④:%d ⑤:%d ", range1PieceNumMax - range1PieceNum, range2PieceNumMax - range2PieceNum, range3PieceNumMax - range3PieceNum, range4PieceNumMax - range4PieceNum, range5PieceNumMax - range5PieceNum ); break; } else if( what == 5 && range5PieceNum < range5PieceNumMax ){ deployPiece( setSpots[index], pieceId, 1, what ); printPiece( piecesP1[pieceId], BLACK ); setSpots[index] = NULL; pieceId++; range5PieceNum++; gotoXY( P1_INPUT_BOX_X, P1_INPUT_BOX_Y+2 ); setColor( RED, WHITE ); printf( "남은 말 수 ●:%d ★:%d ③:%d ④:%d ⑤:%d ", range1PieceNumMax - range1PieceNum, range2PieceNumMax - range2PieceNum, range3PieceNumMax - range3PieceNum, range4PieceNumMax - range4PieceNum, range5PieceNumMax - range5PieceNum ); break; } else{ continue; } } | cs |
으악 똥냄새
코드에 똥사지른 사람이 누구야?
나, 난 아니예요!
사실 (당연하지만) 접니다.... ㅠㅠ 이불킥 팡팡 난 왜 이런 병신짓을 ㄹ했을까
아니 짤 때는 저렇게 짤 수 있었다고 손 치더라도 다 짜고 저 코드를 보면 문제 의식을 가지고 있어야지. 딱 봐도 똑같은 코드가 반복되는데 단순 무식하게 생각해 봐도 함수가 필요한 시점. 물론 함수 없이 저 경우는 배열 만들고 what 이용해서 막바로 처리해도 되고.
ㄴ ㄹㅇ;;;
난 종종 자주 저런식으로 한다. 물론 처음부터 설계하고 만들면 좋지. 근데 하다보면 일단 구동시키고 보자 싶은때가 꽤 있어. 그때는 저렇게 하는거지. 꼭 필요하면 나중에 시간 날때 리팩토링 하면 그만임.
되려 비 필수적인 파트를 짜임새있게 설계하는데 신경 쓰느라 중요한 진행을 못하는 일이 비일비재함. 그래서 별로 안중요한거는 좀 거슬려도 저렇게 하고 빨리 넘기고 봄.