핀수로그
  • [아무튼 필사] 내 코드가 그렇게 이상한가요? 1일차
    2023년 12월 18일 21시 36분 15초에 업로드 된 글입니다.
    작성자: 핀수
    728x90
    반응형

    들어가며

    운동 주간이 끝나고 필사 주간이 다가왔다.
    필사를 위해 내가 고른 책은 바로
    내 코드가 그렇게 이상한가요?
    이다.

     

    내 코드가 그렇게 이상한가요?

    공감 100% 나쁜 코드 사례로 배우는 지속 가능한 코드 설계 입문서. 객체 지향 설계를 통해 코드 품질을 높이는 방법을 설명한다. 설계를 고민하지 않고 작성한 코드는 오로지 한 치 앞만 바라본

    www.aladin.co.kr

     

    무슨 개발자 가슴 찢어지는 소리냐 싶겠지만..
    제목에 이끌려 책을 펼쳐봤다 구매해버린 이 책은 좋은 코드와 나쁜 코드의 예시를 통해
    가독성을 높이고 유지보수를 용이하게 하는 좋은 코드를 작성하는 방법을 제시해준다.
    나는 문학을 좋아해서 필사하고 싶은 책이 많았지만
    그래도 지금 내가 개발 블로그에 포스팅하고 있기도 하고
    겸사겸사 이번 일주일 동안 필사할 책으로 이 친구를 한번 골라보았다.

    이 책의 일부분을 필사하면서
    나쁜 코드의 예시를 살펴보고
    이를 어떻게 개선할 수 있는지
    (가능하다면) 나의 사례를 돌아보고 실제로 개선할 수 있는 기회로 삼으면 정말 좋을 것 같다.

    본문

    좋은 구조로 개선하기 위해서는 일단 나쁜 구조의 폐해를 인지해야 합니다. 그런 다음 폐해를 개선할 수 있는 좋은 구조를 배우면, 나쁜 구조와 좋은 구조의 차이를 파악하여 설계를 개선할 수 있습니다.

    과거에 참여한 개발 프로젝트에 여러 문제가 생긴 적이 있습니다. 어떻게 해도 버그가 계속 발생했으며, 코드 품질이 배포할 수 있는 수준에 이르지 못했습니다. 야근이 일상이 되었고, 하루하루 일상이 피폐해져 갔습니다.

    처음에는 문제들의 원인조차 알지 못했습니다. 그런데 다양한 기술서를 접한 뒤, 코드를 이해하기 쉽게 만들고, 버그 발생 가능성을 줄이는 좋은 설계가 있음을 알게 되었습니다. 그 덕분에 문제의 원인이 각종 나쁜 구조임을 깨달았습니다.

    설계의 중요성을 깨닫기 위해서는 설계를 소홀히 했을 때 어떠한 폐해가 발생하는지 알아야 합니다. 여기서 폐해란 다음과 같은 것을 말합니다.

    - 코드를 읽고 이해하는 데 시간이 오래 걸림
    - 버그가 계속해서 발생함
    - 나쁜 구조로 인해서 더 나쁜 구조가 만들어짐

    - 1장 잘못된 구조의 문제 깨닫기 중에서

     


    우리는 '오래 전 내가 짠 코드는 남이 짠 것과 다를 바가 없다.'

    는 우스갯소리를 주고 받는다.

    그 이유는 코드를 읽고 이해하는 데 시간이 (내가 짰음에도 불구하고) 어느 정도 소요되기 때문이다.

    그리고 아주 조그만 기능 수정에도 이 파일 저 파일 들락날락하며 수정하는 내 모습을 보고 있노라면

    좋은 구조로 짜여진 코드의 중요성을 절실히 깨닫곤 한다.

    또..얼레벌레 만들어 놓은 코드를 시간에 쫓겨 무마하느라

    그위에 얼레벌레 수정한 코드를 덧대어 놓기도 한다.

    그렇게 내 코드는 누더기가 되어가고...

    다시 작은 수정임에도 여기저기 돌아다니며 수정해야한다.

    겨우 고치고 실행 했을 때 전혀 예상하지 못한 부분에서 에러가 발생하기도 했다. -> 버그가 계속해서 발생함

    이것들은 뫼비우스 띄처럼 돌고 돈다. 나쁜 구조로 인한 악순환인 셈이다.

    부끄럽지만 모두 내가 직접 경험해본 것들이다.

    이 경험들을 통해 설계가 얼마나 중요한 것인지 알게 되었고, 그에 대한 고민을 하기 시작했다.

    그리고 이 책에서 작게나마 내 고민에 대한 실마리라도 찾아보고자 한다.

    우리 존재 화이팅

     

    728x90
    반응형
    댓글