성장스토리

개발 공부를 한다는 것에 대한 생각 (feat. 부스트캠프 2달 반 경과)

CodeBoyEd 2021. 9. 25. 00:43

개발 공부를 제대로 시작하겠다고 다짐한 지 2달 반? 정도 지났다. 현재까지 학습해 온 방향과 앞으로의 방향에 대해서 고찰해보는 시간을 갖고자 한다.

 

현재까지는 부스트캠프를 참여하며 캠프에서 주어진 미션을 해결하는 것이 주된 목표였다. 미션은 구체적으로 어떤 기능을 갖는 웹사이트를 구현하는 것이다. 해당 기능 구현을 위해 필요한 배경 지식을 스스로 찾아보고 그 기능을 내 프로젝트에 적용시키는 과정의 반복이었다.

 

이 과정은 주로 구글, 유투브, 블로그 등을 검색하며 혹은 다른 동료 캠퍼 분들의 파일을 참고하며 코드를 가져오는 방식이었다. 때문에, 해당 코드가 어떤 역할에 필요한 지 정도는 알지만 어떻게 작동하는 지, 어떤 장단점을 가지는 지, 그리고 상황이 조금 다른 경우에는 어떤 옵션들이 있는지 (혹은 사용이 불가능한지) 알 수 없었다.

 

응용력이 제로라는 생각이 들었다.

 

기능을 사람들에게 보여주며 "저 이거 구현했어요!" 할 수는 있지만, 과연 실제로 배포할 수 있을까

 

- 오류가 나면 어떻게 처리해야할 지 예외 처리가 하나도 되어 있지 않았다.

- 브라우저나 사용 환경이 바뀌면 문제가 없는 지 확인도 안됐고, 업데이트 하기 좋게 구조를 짜지도 않았다.

- 기능 스펙이 바뀌면 어떻게 수정을 해야할 지 감도 안잡힌다.

- 작업을 하다 다른 사람에게 넘길 경우 알아 볼 수 있을까.

- 내가 작성한 코드지만 의미를 알 수 없는 코드가 너무 많다.

 

무엇보다 이번 프로젝트에서 배운 것을 다음 프로젝트에 적용시킬 수 있을까?

 

아니라는 생각이 들었다. 다음 프로젝트는 또 상황이 바뀔 것이고, 내가 이번 프로젝트에서 구현한 로직이 최선의 방법이라는 확신이 안들었다. 그만큼 탐구하지 않았다는 뜻이다.

 

개발 공부는 학습과 실습의 연속이라는 생각이 들었다.

 

먼저, 가벼운 개념을 학습한다.

그 다음, 실습을 통해 무엇이 필요한 지 느낀다

다시 학습으로 돌아와 필요한 개념을 공부한다.

또 다시 실습으로 돌아가 학습한 개념을 실제로 적용시키는 방법을 강구한다.

 

그리고 학습을 어디까지 해야하는 지에 대한 고민도 했는데, 우선적으로는 사용하고 있는 [ 언어, 프레임워크, 모듈 ] 의 설명서 Document 를 정독하는 수준이 가장 적합한 것 같다. 그 이상으로 소스 코드를 읽는 것은 취업을 목표로 하는 초심자의 단계에서 맞지 않다는 생각이 들었고, 다른 사람의 코드를 가져다가 쓰는 정도는 응용력이 제로인 것 같으니

 

그리고 공부란 나만의 언어로 기록하고 복습하는 것. 이해란 다른 사람에게도 설명할 수 있는 것 

 

문제는 시간과 집중력을 어떻게 관리할 것인가

 

지금의 나는 코딩테스트 공부도, 부스트 캠프 미션도, CS 공부도, 개인 프로젝트도 모두 하나 같이 소중하고 경중을 가릴 수 없다.

 

때문에 계획에 맞는 시간과 에너지 배분이 정말 중요할 것 같다. 

 

계획표를 꾸준히 작성하고 우선순위를 나누자. 그리고 마음을 굳게 먹고 집중력을 끌어 올리자

 

할 수 있다. 화이팅!