1 minute read

C로 도서 관리 프로그램을 만들어보며 느낀 것들

금융권에서 개발 직군으로 일을 하고 있지만 개발 일을 많이 못하고 있고, 개발에 목마름을 느끼고 있었다. 또한 전공 지식의 부족함 또한 절감하고 있다.

그런 목마름, 부족함을 메우기 위해서 요즘 퇴근 후에 기본으로 돌아가 C로 코딩하며 프로그래밍 실력을 키우고, 내 코드가 어떤 식으로 컴파일이 되고 메모리에 올라가고 돌아가는지를 공부하고 있었다.

지난 주말, 내가 계산기도 제대로 만들지 못한다는 것을 깨달았다. 함수에 인자를 어떤 식으로 넘겨줘야 하는지, 반환을 어떻게 해야하는지, 화면에는 어떤 식으로 출력하면 좋을지도 제대로 판단하지 못한다는 것을 깨닫고 큰 충격을 받았다. 내가 지금 현업에서 프로그래밍 하는 사람이 맞는가?

다음 단계로 도서 관리 프로그램을 만들어보고 봤다. 처음엔 무턱대고 만들다가 또 혼란에 휩싸였다. 어떤 자료구조들을 사용해야하지? 어떤 것들을 저장해놨다가 사용해야하지? 내가 지금 함수 인자로 던져주는 배열은 값이 복사가 되는걸까 주소가 넘어가는걸까? 문자열 입력은 어떻게 받는거지? 입력버퍼에는 개행문자가 남아있는 상태일까? 문자열을 원소로 가지는 2차원 배열은 어떻게 함수 인자로 넘겨주는 것이 좋지? 제대로 판단할 수 없었다.

그냥 코딩하는 것은 그냥 싸제끼는 배설과 같았다. 아무리 작은 프로그램이라도, 작은 함수라도 어떤 인자를 넘겨줄 것이고 어떤 것을 반환할 것인지 정하는 것, 어떤 데이터들을 어떤 자료구조에 저장해서 사용할 것인지 생각하는 것은 매우 중요한 작업이었고, 코딩은 부차적인 것이었다.

이런 기본들을 망각한 채 머저리 같이 일을 하고 있었고, 코딩하고 있었다. 난 더 성장할 여지가 아직도 참 많구나! 라고 위안 삼기엔 지금 상태가 너무 처참한 수준이다. 정진하자. 겉만 화려한 것들 말고 기본에 충실하자.

Tags:

Categories:

Updated: