개발자 99% 커뮤니티에서 수다 떨어요!
오늘 읽은 범위
3장. 함수
책에서 기억하고 싶은 내용을 써보세요.
함수는 한 가지를 해야 한다. 그 한 가지를 잘 해야 한다. 그 한 가지만을 해야한다. (p.44)
함수가 확실히 '한 가지' 작업만 하려면 함수 내 모든 문장의 추상화 수준이 동일해야 한다. (p.45)
switch 문을 추상 팩토리에 꽁꽁 숨긴다. (p.48)
부수 효과는 거짓말이다. 함수에서 한 가지를 하겠다고 약속하고선 남몰래 다른 짓도 하니까. (p.54-55)
함수는 뭔가를 수행하거나 뭔가에 답하거나 둘 중 하나만 해야한다. (p.56)
어쩌면 중복은 소프트웨어에서 모든 악의 근원이다. 많은 원칙과 기법이 중복을 없에거나 제어할 목적으로 나왔다. (p.60)
오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요
함수는 최대한 작게, 그리고 한가지 역할만 하도록 짜는것이 하나의 레고블럭을 준비하는것과 비슷하게 느껴졌습니다. 한눈에 어떤 역할을 하는지 알 수 있도록.
소프트웨어를 짜는 행위는 여느 글짓기와 비슷하다. 서투르더라도 초안을 적고, 다듬어 가는 과정을 반복하다보면 언젠가는 이미 조금 다듬어 져 있는 초안을 적을 수 있을 것이고, 더 더 다듬어진 초안도 적을 수 있을 것!
궁금한 내용이 있거나, 잘 이해되지 않는 내용이 있다면 적어보세요.
에러코드를 반환하지 않고 예외를 사용하라! 라는 문단이 있었는데, Golang에서는 예외를 일으키는 방식이 아니라 예외를 반환하는 방식이라는 이야기를 어디서 읽은 것 같은데 궁금증이 생겼습니다.
구조적 프로그래밍을 간단히 설명하는 문단에서 루프 안에서 break, continue등을 사용하지 않아야 한다고 하는데, 쉽게 이해가 가지 않아 예시를 한번 찾아보면 이해하기 쉬울 것 같습니다.