Community

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

← Go back
[TIL] 3장. 함수
by xgro
#clean_code
2년 전
507
1

오늘 TIL 3줄 요약

  • 함수를 만드는 첫째 규칙은 '작게!'다. 함수를 만드는 둘째 규칙은 '더 작게!'다.

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

  • 오류처리도 한 가지 작업이다. 그러므로 오류를 처리하는 함수는 오류만 처리해야 마땅하다.

TIL (Today I Learned) 날짜

2022. 04.26

오늘 읽은 범위

3장. 함수

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

  • 함수를 만드는 첫째 규칙은 '작게!'다. 함수를 만드는 둘째 규칙은 '더 작게!'다.

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

  • 단순히 다른 표현이 아니라 의미 있는 이름으로 다른 함수를 추출할 수 있다면 그 함수는 여러 작업을 하는 셈이다.

  • 최선은 입력 인수가 없는 경우이며, 차선은 입력 인수가 1개뿐인 경우이다.

  • 인수가 2-3개 필요하다면 일부를 독자적인 클래스 변수로 선언할 가능성을 짚어 본다.

  • 함수의 의도나 인수의 순서와 의도를 제대로 표현하려면 좋은 함수 이름이 필수다.

  • 함수는 뭔가를 수행하거나 뭔가에 답하거나 둘 중 하나만 해야 한다. 둘 다 하면 안된다. 객체 상태를 변경하거나 아니면 객체 정보를 반환하거나 둘 중 하나다. 둘다하면 혼란을 초래한다

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

  • 오류처리도 한 가지 작업이다. 그러므로 오류를 처리하는 함수는 오류만 처리해야 마땅하다.

  • 처음부터 탁 짜내지 않는다. 그게 가능한 사람은 없으리라.

  • 진짜 목표는 시스템이라는 이야기를 풀어가는데 있다는 사실을 명심

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

  • 예외 처리 하는 영역도 함수의 영역이다. 별도로 분리하여 사용하자.

  • 2장에서 배웠듯이, 함수역시 이름이 중요하다.

  • 3개 이상의 인수를 가지는 함수를 만드는것을 지양하자.

  • 함수를 구성할때는 작게, 더 작게 생각하자

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

  • 단위 테스트? 인수 테스트?

  • p.47 Switch 문에서 리팩토링한 다형적 객체가 잘 이해되지 않음.

오늘 읽은 다른사람의 TIL

1 comment