본문 바로가기

IT 이야기

공부하며 생각하기 - 좋은 코드

좋은 코드에 대해서 생각해 봅니다.

 

프로그래밍을 배우면서 선생님께 가장 많이 듣는 이야기가 가독성 부분입니다. 코드가 가독성이 좋다는 것은 무엇일까요? 제 생각을 공유해 보겠습니다. 

 

일단, 컴퓨터가 읽기 좋은 코드라는 의미일 것입니다. 왜냐하면 우리가 짜는 코드는 결국 우리가 컴퓨터에게 명령하고 싶은 것들을 프로그래밍 언어를 통해 번역한 것이니까요. 그런데 컴퓨터만 이해하기 좋으면 될까요? 사실 해결해야 할 문제를 이해하고 코드를 작성하고 나중에 그 코드를 수정하거나 보완해야 하는 것은 사람의 몫이기 때문에 사람도 읽기 좋아야 할 것입니다.

 

여기에서 어느 쪽을 더 우선시해야 하냐의 문제가 있을 수 있는데, 이 부분은 당연히 사람이지 않을까요? 사람이 해결하고 싶은 문제를 위해 프로그래밍을 하는 것이니까요.

 

그렇다면 질문을 다시 해보죠. 사람에게 가독성이 좋은 코드는 무엇일까요?

 

그것은 인간이 '이 코드를 왜 작성했는지 이해할 수 있는 코드'일 것입니다.

 

그렇기 때문에 좋은 코드는 반드시 존재한다고 생각합니다. 취미로 프로그래밍을 공부한다면 나 혼자 이해할 수 있고, 나 혼자 쓰기 쉬운 코드를 작성하면 되겠지만, 작게는 시험이나 입사를 위한 코딩 테스트를 위한 코드를 작성하거나 실무에서 사용하기 위한 코드를 작성할 때는 '나 혼자'가 아닌 다른 사람들도 이해할 수 있는 코드를 작성해야 합니다. (선생님은 좋은 코드와 나쁜 코드는 분명히 존재한다고 이야기 하셨습니다. 물론 실무 환경에서의 코드를 의미하셨지만...)

 

예전에 프로그래머들과 함께 유튜브 라이브를 통해 아름다운 코드에 대해 이야기를 나눈 적이 있습니다. 라이브 방송을 할 때만 해도 제가 프로그래밍 공부를 하기 전이고, 프로그래밍 언어나 코드에 대한 이해도가 지금보다 낮을 때였습니다. 지금 다시 보니 배움의 정도에 따라서 고민의 정도가 깊어질 수 있고, 아는 정도에 따라서 생각이 달라질 수 있다는 점을 다시 한번 깨닫게 되네요. 장동수 님이 이야기하신 '아는 만큼 보인다'는 부분이 더 와닿습니다. 

 

'좋은 코드'와 '아름다운 코드'는 다를 수 있습니다. 저는 사실 그 차이점이 없다고 생각했는데, 지금은 차이가 있다는 정도는 이해할 수 있을 것 같아요. 좋다는 것과 아름답다는 것에 대한 의견도 가양각색일테니까요.

 

 

 

여러분은 어떤 코드가 좋은 코드라고 생각하시나요? 여러분이 생각하시는 아름다운 코드란 어떤 것인가요?

반응형

'IT 이야기' 카테고리의 다른 글

프로그래밍 언어의 철학  (2) 2024.02.23