TIL | 트러블슈팅도 알아야 하지

레이나·2025년 1월 14일

Today I Learned

목록 보기
31/47
post-thumbnail

[250114 화요일]

알고리즘 문제를 풀때 정말 많이 느꼈다.
'동일한 동작을하는 로직도 여러방법으로 코딩할 수 있다.' 라는 것을
그리고 생각보다 시간적 여유가 있다면 다른 사람들의 제출 코드도 보면서 공부했었다.

개인과제를 하면서도 느끼지만 간단한 문제여도 코드를 작성할때 시간은 정말 빨리 지나간다.

코드를 작성하는데 오래걸리고 문제를 해결하는데 가장 오래걸리는 부분은 내가 알고있는 지식이다. 내 지식을 얕으니까 점점 지식을 쌓아야 하고, 이것을 제외한다면

1번은 문제를 제대로 파악하는 것!이라고 생각한다.
이렇게 코드를 작성하고 저렇게 코드를 작성해도 문제파악조차 제대로 되지 않는다면 코드를 시도조차 못하고 커서만 깜빡깜빡.
코드를 작성하더라도 엉뚱한곳으로 갔다가 다시오고..

문제를 파악하고 내가 풀수있는 방법으로 검색 해보고 힌트를 얻어서 풀어본다.
나중에 다 풀고나면,'아..생각보다 내가 어렵게 돌아갔구나'하는 경우도 많았다.

일단 이렇게 구동이되게 코드를 작성한 후에 코드를 검토하고 줄이고 수정해본다.
그리고 또 수정하면서도 느낀다. 내가 문제를 얼마나 잘 파악하고 있는지, 이 코드의 흐름을 잘 파악하고 있는지에 따라서도 코드 정리를 하다가 잘되던 녀석이 안되고..😱

근데 잘되던 코드가 작동을 안하면.. 어디서 문제가 있는지 찾기도 쉽지 않다.
이부분도 1번은 내가 무슨문제가 어디서 생겼는지 몰라서인것이 대부분이더라.

그래서 트러블슈팅을 하려고 해도 이것 저것 시도해보다가 무엇때문에 다시 작동하는지 제대로 모를때가 너무나 많다.

어떻게하면 내가 해결한 과정을 잘 기록해 둘 수 있을까?

지금까지는 문제가 발생하면 해결을 해야한다가 머리속을 지배했다.
앞으로는 문제가 발생하면 일시정지!
노션이나 메모장으로 간다!
아래 과정을 대충이라도 기록해 둔다.

  • 발생한 문제에 대해서 작성하고(글, 캡쳐, 동영상 등)
  • 해결을 위해 원인파악, 직전에 했던과정, 코드비교등 어떤고민을 했고 어떤과정을 거쳤는지 기록
  • 해결방안
  • 결과
  • 참고한 레퍼런스등

얼마나 기록해야 할까?

문제가 생겨서 확인했을때 정말 너무 허무(?)하게 해결된 경우도 많다.
이런것도 다 기록을 해야 하나? 하면서 걸러 내다보니 제대로 기록으로 남기지도 못한 것들도 있는데,
일단은 어떠한 문제가 발생했다면 글로 남겨 놓기라도 하자.

문제 : 코드 정리를 하면서 복사 붙여넣기를 했는데 작동이 하지 않는다.
⇒ 확인해 보니 세미콜론이 잘못들어가 있었다.
⇒ 괄호가 맞지 않았다.
⇒ return이 빠져있었다.
⇒ ``백틱이 아니라 ''작은 따옴표였다.
⇒ 복붙하며 순서가 바꼈다.

위 내용 처럼 남겨두면 그것 또한 오늘 내가 '이런걸로 오류가 날수 있구나, 아! 내가 또 빼먹었구나' 하면서 배운점이 된것 맞으니까!

실제 내가 코드 정리하고 고치면서 어제 그제 있었던 일이기도 하다.

profile
one setp

0개의 댓글