손코딩뇌컴파일눈디버깅

1. 손으로 코딩, 머리로 컴파일, 눈으로 디버깅

Problem Solving 역량 함량을 위한 의도적 수련이 필요하다.

Problem Solving을 통해 키워지는 역량 -> 타인의 코드를 읽고 이해하는 능력 -> 문제를 정의하고 추상화 하는 능력 -> 예외 상황이나 오류를 찾아내는 능력 -> 기본 코딩 스킬

그들이 평가하는 것 -> 문제를 잘 이해하는가? 필요한 조건 및 가정을 잘 도출하는가? -> 어떤 과정을 통해 문제를 접근하고 풀어가는가? -> 그 과정에서 의사소통을 잘 하는가? -> 깔끔하게 코딩을 잘 하는가? -> 자신의 풀이에서 버그나 예외 상황은 없는 지 검증하고 디버깅을 잘 하는가?

1만 시간의 법칙 -> 내가 하루 중에 내 실력 개선을 위해 쓰는 시간이 얼마나 되는지. 프로그래머에 대한 연구에 따르면 요즘 일주일에 얼마나 수련을 하느냐로 현재 실력 수준을 가늠할 수 있었습니다.

2. Practice!

코딩에 들어가기 전

  • 문제를 풀기 위해 필요한 가정 도출
  • 테스트 케이스
  • 알고맂므 서술

코딩

  • 서술한 알고리즘을 그대로 동작하는 코드로 옮기기

코딩 후

  • 테스트 + 디버깅하기
  • 시간/공간 복잡도 계산해보기
  • 개선점 찾아보기

Coding Session #1

시간/공간 복잡도의 제한이 없다고 가정. 그 외 필요한 가정은 쉬운 방향으로 세우고 시작


참고자료

프로그래밍을 잘하는 방법

손코딩뇌컴파일눈디버깅

0%