Community

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

← Go back
TIL 3장. 함수
#clean_code
2년 전
612

오늘 TIL 3줄 요약

<예시>

  • 함수는 한 가지만 해야하고, 한 가지만 하기 위해서는 적절하게 함수명을 짓고, 그 함수 이름에 따라 추상화 수준이 하나인 단계만 수행해야한다.

  • 위에서 아래로 프로그램을 읽으면 함수의 추상화 수준이 한 단계씩 낮아진다.

  • 작성하는 함수가 분명하고 정확한 언어로 깔끔하게 같이 맞아떨어지면 시스템을 잘 만들기가 그만큼 쉬워진다.

TIL (Today I Learned) 날짜

2022. 04.27

오늘 읽은 범위

3장. 함수

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

<예시>

  • 함수에서 들여쓰기 수준은 1단이나 2단을 넘어서면 안 된다.

  • 함수는 한 가지만 해야한다. 그런데 문제는 그 '한 가지'가 무엇인지 알기 어렵다는 것이다.

  • 지정된 함수 이름에서 추상화 수준이 하나인 단계만 수행한다면 그 함수는 한 가지 작업만 한다.

  • 함수가 한 가지만 하는지 판단하는 방법이 하나 더 있다. 단순히 다른 표현이 아니라 의미있는 이름으로 다른 함수를 추출할 수 있다면 그 함수는 여러 작업을 하는 셈이다.

  • 함수에서 이상적인 인수는 무항이다.

  • Try/Catch 블록 뽑아내기

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

<예시>

  • 함수는 한 가지만 해야한다라는 건, 프로그래밍을 배우기 시작할 때부터 자주 들어왔던 말이고, 실천하려고 꽤 노력해왔던 것 같다. 하지만, 그 한 가지가 무엇을 의미하는지 정확히 모르고 있었던 것은 아닐까?

  • 함수를 작성할 때 추상화 수준을 한 단계만 유지해야한다는 점을 지금까지는 별로 의식하지 않았다. 여러 단계의 추상화, 세부 사항을 뒤섞으면 그만큼 가독성이 떨어지므로 주의해야겠다.

  • Try/Catch 블록을 왜 뽑아내야할까? 오류처리도 한 가지 작업이니까. 지금까지는 크게 신경쓰지않고 Try/Catch 블록을 남용해왔던 것 같다. 지금부터라도 조금씩 주의해야겠다.

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

  • 포트란과 PL/1시절의 루틴과 하위 루틴

PL/1

http://wiki.hash.kr/index.php/%ED%94%BC%EC%97%98%EC%9B%90

루틴과 하위루틴

http://www.terms.co.kr/routine.htm?ckattempt=1

  • AOP

https://ko.wikipedia.org/wiki/%EA%B4%80%EC%A0%90_%EC%A7%80%ED%96%A5_%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D

오늘 읽은 다른사람의 TIL