개발자 99% 커뮤니티에서 수다 떨어요!
TIL (Today I Learned)
// 2022.02.24
오늘 읽은 범위
3장. 함수
책에서 기억하고 싶은 내용을 써보세요.
한가지만 해라 (한가지만 한다는것: 지정된 함수 이름 아래에서 추상화 수준이 하나인 단계만 수행함을 의미)
코드는 위에서 아래로 이야기처럼 읽혀야 좋다.
함수에서 이상적인 인수개수는 0개(무항)이다. 3개(3항)이상은 가능한 피하는 편이 좋다.
명령과 조회를 분리하라. 함수는 뭔가를 수행하거나 뭔가에 답하거나 둘중 하나만 해야한다.
플래그 인수는 추하다. 함수로 부울 값을 넘기는 관례는 정말로 끔찍하다. 왜냐고? 함수가 한꺼번에 여러 가지를 처리한다고 대놓고 공표하는 셈이니까!
내가 함수를 짤 때도 마찬가지다. 처음에는 길고 복잡하다. 들여쓰기 단계도 많고 중복된 루프도 많다. 인수 목록도 아주 길다. 이름은 즉흥적이고 코드는 중복된다. 하지만 나는 그 서투른 코드를 빠짐없이 테스트하는 단위 테스트 케이스도 만든다. 그런 다음 나는 '코드를 다듬고', '함수를 만들고', '이름을 바꾸고', '중복을 제거'한다. '매서드를 줄이고', '순서를 바꾼다'. 때로는 '전체 클래스를 쪼개기'도 한다. 이 와중에도 코드는 항상 단위 테스트를 통과한다. (p.61)
오늘 읽은 소감은? 떠오르는 생각을 가볍게 적어보세요
자바 코드에 익숙치 않아서 이해가 더뎠다. 다시한번 3장을 읽어봐야겠다.
궁금한 내용이 있거나, 잘 이해되지 않는 내용이 있다면 적어보세요.
OCP(Open Closed Principle) : 개방-폐쇄 원칙. 소프트웨어 개체는 확장에 대해 열려있어야 하고, 수정에 대해 닫혀있어야 한다.
enum: enumerated type의 줄임말로 멤버라 불리는 명명된 값의 집합을 이루는 자료형. 참고로, 열거자 이름들은 일반적으로 해당 언어의 상수 역할을 하는 식별자이다.