반응형

프로그래밍하는 게 너무 괴로운 사람이 많다.


복잡한 알고리즘. 끝없는 디버깅.

이해하기 어려운 소스코드 등.


괴롭고 미치게 하는 요소들이 많이 있다.

 

하지만 프로그래밍을 한다는 건

괴로운 일 만은 아닐 수도 있다.


어릴 때 가지고 놀았던 레고 블록, 과학상자,

각종 이름을 알 수 없는 퍼즐 장난감 들처럼,


자기가 만들고자 하는 걸

하나하나 부품을 조립하여 만들어 나가는
아주 창의적이고 성취감이 있는 예술 활동일 수도 있다.

그렇다면 프로그래밍을 시작하기 위해서는

어떻게 접근을 하는 게 좋은 것일까?


화가가 멋진 그림을 그리려면

미술 도구의 사용법에 익숙해야 한다.


하지만 미술 도구의 사용법에 익숙해져서

그림을 그린다고 하더라도
작가의 생각이나 감성이 녹아 있지 않다면

좋은 작품이 될 수 없다.

 

프로그래밍을 한다는 것도

비슷한 맥락에서 생각할 수 있다.


프로그램을 만든다는 걸 2가지로 요약하면,

문제 해결 능력 + 코딩(coding)이다.

C언어, C++, java 등 모든 프로그래밍의 함수 혹은

메소드에 대해서 자유자재로 사용하더라도

문제 해결 능력이 없다면 어떨까?

반대로 아무리 이론적 지식과 알고리즘이 뛰어나도

그걸 프로그램으로 구현할 능력이 없다면 어떨까?

 

그림을 그리려면

우선 미술 도구 사용법에 익숙해져야 하듯이
프로그래밍을 하려면

프로그래밍 언어에 익숙해져야 한다.

 

프로그래밍 언어에 익숙해지는 효과적인 방법은

하나의 함수에 대한 사용법만을 다루는

기본 예제 프로그램에 익숙해지는 것이다.


복잡한 프로그램을 덜컥 제시하고

하나씩 분석해 보는 것보다는
아주 단순한 프로그램에 익숙해지는 것이 우선이다.

반응형