2023-05-02 03:36:09
작게 만들어라
함수를 만드는 첫째 규칙은 '작게!'다.
블록과 들여쓰기
if else while문 등에 들어가는 블록은 한 줄 이어야한다는 의미다.
이 말은 중첩 구조가 생길만큼 함수가 커져서는 안 된다는 뜻이다. 그러므로 함수의 들여쓰기 수준은
1단이나 2단을 넘어서면 안 된다.
한가지만 해라!
" 함수는 한가지를 해야한다. 그 한가지를 잘 해야한다. 그 한 가지만을 해야한다."
한가지의 의미
지정된 함수 이름 아래에서 추상화 수준이 하나인 단계만 수행한다면 그 함수는 한 가지 작업만 한다.
의미있는 이름으로 다른 함수를 추출할 수 있다면 그 함수는 여러 작업을 하는 셈이다.
함수당 추상화 수준은 하나로
함수가 확실히 '한 가지' 작업만 하려면 함수 내 모든 문장의 추상화 수준이 동일해야 한다.'
위에서 아래로 코드 읽기: 내려가기 규칙
코드는 위에서 아래로 이야기처럼 읽혀야 좋다. (쉽지는 않다.)
ex) 한 함수 다음에는 추상화 수준이 한 단계 낮은 함수가 혼다.
Switch 문
switch문은 작게 만들기 어렵다.
서술적인 이름을 사용하라.
이름이 길어도 괜찮다. 겁먹을 필요없다. 길고 서술적인 이름이 짧고 어려운 이름보다 좋다.
길고 서술적인 이름이 길고 서술적인 주석보다 좋다.
-> 개발자 머릿속에서도 설계가 뚜렷해지므로 코드를 개선하기 쉬워진다.
함수 인수
가장 이상적인 함수 인수 개수는 0개다. 최선은 인수가 없는 경우이며, 차선은 입력 인수가 1개뿐인 경우다.
(why?. 읽기 쉬움)
많이 쓰는 단항 형식
함수에 인수 1개를 넘기는 이유로 가장 흔한 경우는 두 가지다.
인수에 질문을 던지는 경우(ex. boolean fileExists("MyFile");
인수를 뭔가로 변환해 결과를 반환하는 경우.
지금까지 설명한 경우가 아니라면 단항 함수는 가급적 피한다.
'도서 > 개발' 카테고리의 다른 글
2장. 의미있는 이름 (0) | 2024.08.02 |
---|---|
1장. 깨끗한 코드 (0) | 2024.08.02 |
(후기) 자바 ORM 표준 JPA 프로그래밍 (0) | 2024.08.02 |
(후기) 테스트 주도 개발 시작하기 (0) | 2024.08.02 |
개발 관련 서적 후기 작성 (0) | 2024.08.02 |