실용주의 프로그래머 Day 3
태그: Book, 노개북, 노마드코더, 북클럽, 실용주의 프로그래머
카테고리: Book
TIL 2장. 실용주의 접근법
오늘 TIL 3줄 요약
- 바꾸기 더 쉬운 코드가 좋은 코드이다.
- 자신의 힘으로 제어할 수 없는 속성에 의존하지 마라.
- 언어의 한계가 곧 자기 세계의 한계다.
TIL (Today I Learned) 날짜
- 2022.05.16-2022.05.17
오늘 읽은 범위
- 2장. 실용주의 접근법
책에서 기억하고 싶은 내용을 써보세요.
DRY 원칙
모든 지식은 시스템 내에서 단 한 번만, 애매하지 않고, 권위있게 표현되어야 한다.
Don't Repeat Yourself
코드를 작성하다보면 반복적인 작업을 할 때가 많다.
이 책에서는 주석또한 반복하지 말라고 지적한다.
함수 또는 메소드마다 그 기능을 주석으로 일일이 설명하는 행위 말이다.
함수 이름이 함수가 하는 일을 알려주고, 더 알고 싶다면 소스코드를 보면 된다!
는 것이 책에 쓰여져 있는 DRY 원칙 중 하나이다.
또한 데이터에서의 DRY 원칙 위반도 존재한다.
1
2
3
4
5
6
7
class Line
{
public:
Point start;
Point end;
double length;
};
그럴싸해 보이지만 중복이 존재한다.
length
는 시작점과 끝점을 알면 구할 수 있기 때문이다.
이런식으로 말이다. 굳이 내가 기입할 필요가 없다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
class Line
{
private:
Point start;
Point end;
double length;
void calculateLength()
{
this->length = sqrt(pow(start.x - end.x, 2) + pow(start.y - end.y, 2));
}
public:
Line(Point _start, Point _end)
{
this->start = _start;
this->end = _end;
calculateLength();
}
};
클래스 내의 함수가 조금 더 고생하더라도 데이터의 중복을 최소화한다.
댓글남기기