Post

CleanCode (로버트 마틴 저) 독후감

2번 읽고도 시간이 꽤 지날정도로 정리를 안 했다.

그 이유는 마지막에 따로 정리할 것들이 많아서 그것들을 정리하면 올릴 생각이었다..

하지만 내가 카페가서는 개발 공부하고 출퇴근에는 그냥 책만 읽느라 따로 펜을 들 시간이 없더라.

그래서 마지막장은 무시하고 내가 펜으로 다시 정리한 부분까지만 적어야겠다고 생각했다.

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

2장 이름

  • 의도가 보이는 이름

  • 쉬운 이름을 사용하라

  • 클래스 이름과 객체 이름은 명사나 명사구

  • 메서드 이름은 동사나 동사구

3장 함수

  • 작게 만들어라

  • 함수는 한 가지를 해야한다 그 한 거지를 잘 해야 한다 그 한 가지만을 해야 한다

  • 내려가기 규칙

  • 함수 인수는 0개가 이상적

  • 단항 함수 쓰기 좋을 때

  • 인수에게 질문을 던질 때

  • 인수를 뭔가를 변환해 리턴할 때

  • 플래그 인수는 쓰지말자

  • 오류코드보다 예외를 사용하자

  • try catch는 별도의 함수로 뽑자

  • 중복은 소프트웨어에서 모든 악의 근원이다

4장 주석

  • 법적인 주석은 좋은 주석

    • 의도를 설명하는 주석

    • 의미를 명료하게 하는 주석

    • 결과를 경고하는 주석

    • todo 주석

  • 나쁜 주석

    • 같은 이야기를 중복하는 주석

    • 이력을 기록하는 주석

    • 닫는 괄호에 다는 주석

    • 공로를 돌리거나 저자를 표시하는 주석

    • 주석으로 처리한 코드

    • html주석

    • 전역정보

6장 객체와 자료구조

  • 디미터법칙 : 모듈은 자신이 조작하는 객체의 내부를 몰라야 한다

7장 오류처리

  • 오류코드보다 예외를 사용하라

  • null을 반환하지 마라 더 나쁜건 null을 전달하는것

9장 단위테스트

  • 깨끗한 테스트 코드 - 가독성 가독성 가독성

  • 테스트당 assert 하나

  • 테스트 Fast.Independent.Repeatable.Self Validating. Timely

10장 클래스

  • SRP

12장 창발성

  • 모든 테스트를 실행한다

  • 중복을 없앤다

  • 프로그래머 의도를 표현한다

  • 클래스와 메서드 수를 최소로 줄인다

13 동시성

  • 동기화하는 메서드 사이에 존재하는 의존성을 이해하라

  • 동기화하는 부분을 작게 만들어라

  • 올바른 종료 코드는 구현하기 어렵다

  • 스레드 코드 테스트하기

마지막이 14장인데 그 부분은 하나하나 중요한 내용이기에 전부 다 적기에는 나의 시간이 아까워서 이렇게 정리하겠다.

괜히 개발자의 필독서라고 하는게 아닌듯하다.

나는 이를 내업무에 적용시키고 있다. 전부는 아니지만 지나고나면 왜 책에서 이렇게 하라했는지. 내가 코드짤 때 뭐를 더 조심해야겠는지를 알려주는 좋은 책이었다.

다음 개발책은

클린 아키텍처를 읽을 것이다.

This post is licensed under CC BY 4.0 by the author.