Community

개발자 99% 커뮤니티에서 수다 떨어요!

← Go back
[TIL / Clean Code] 1장. 깨끗한 코드
#clean_code
2년 전
544


TIL (Today I Learned)

2022.02.19

오늘 읽은 범위

추천사 ~ 1장. 깨끗한 코드

책에서 기억하고 싶은 내용을 써보세요.

[추천사]

  • 세세함에 주의를 기울이는 태도는 전문가에게 더더욱 필수적인 자질이 되었다.

  • 소프트웨어 설계에서 재작업은 가치를 가져온다.

[1. 깨끗한 코드]

  • 우리 모두는 대충 짠 프로그램이 돌아간다는 사실에 안도감을 느끼며 그래도 안 돌아가는 프로그램보다 돌아가는 쓰레기가 좋다고 스스로를 위로한 경험이 있다. 다시 돌아와 나중에 정리하겠다고 다짐했었다. 물론 그때 그 시절 우리는 르블랑의 법칙을 몰랐다. 나중은 결코 오지 않는다.(4p)

  • 나쁜 코드가 쌓일수록 팀 생산성은 떨어진다.(5p)

  • 그럼에도 모든 프로그래머가 기한을 맞추려면 나쁜 코드를 양산할 수 밖에 없다고 느낀다. 간단히 말해, 그들은 빨리 가려고 시간을 들이지 않는다. (중략) 기한을 맞추는 유일한 방법은, 그러니까 빨리 가는 유일한 방법은, 언제나 코드를 최대한 깨끗하게 유지하는 습관이다.(7p)

  • 나쁜 코드는 나쁜 코드를 '유혹'한다. 흔히 나쁜 코드를 고치면서 오히려 더 나쁜 코드를 만든다는 뜻이다.(9p)

  • 깨끗한 코드란?

    • 보기에 즐거운 코드

    • 깨끗한 코드는 잘 쓴 문장처럼 읽힌다. (가독성)

    • 다른 사람이 고치기 쉽다.

    • 언제나 누군가 주의 깊게 짰다는 느낌을 준다.

    • 중복을 피하라, 한 기능만 수행하라, 제대로 표현하라, 작게 추상화하라.

    • 짐작했던 기능을 그대로 수행한다.

오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요

  • 현재까지 내가 작성했던 코드를 생각하며 읽으니 글을 읽는 동안 많은 반성을 하며 이해했다. 앞으로 더 깨끗한 코드를 작성하는 개발자가 되기 위해 많이 배워야 한다는 점을 깨달았다. 클린코드를 완독한 후의 나의 모습이 어떨지 기대가 된다.

  • 평소에 코딩을 하며 '어떤 코드가 좋은 코드일까?'라는 생각을 자주 했던 편인데, 깨끗한 코드에 대해 정의된 글을 읽으며 이 생각에서 한 발 더 나아가 '이런 코드가 있었는데, 이렇게 수정해보면 어떨까?'라는 더 명확해진 생각을 할 수 있었다.

  • "우리는 저자다. 저자에게는 독자가 있다. 그리고 저자에게는 독자와 잘 소통할 책임도 있다. 다음에 코드를 짤때는 자신이 저자라는 사실을, 여러분의 노력을 보고 판단을 내릴 독자가 있다는 사실을 기억하길 바란다."(17p) 라는 문단도 되게 마음에 와 닿았다. 앞으로의 나는 이 문단을 생각하며 코드를 작성하길 바래본다.

궁금한 내용이 있거나, 잘 이해되지 않는 내용이 있다면 적어보세요.

  • 다양한 설계 원칙에 대한 정의

    • SRP(Single Responsibility Principle)

    • OCP(Open Closed Principle)

    • DIP(Dependency Inversion Principle) 등