본문 바로가기

코드

(2)
[리팩토링] 코드 숨기기, 가독성 좋은 코드 짜기 변수 추출(Extract Variable) 어떤 코드가 조금 보기 복잡해 졌다고 가정했을 때, 먼저 시도 해볼만한 것은 코드를 쪼개 변수로 나누는 것이다. 예를 들어 아래와 같이 부모와 자식의 값을 더하는 함수가 있다고 가정한다. 읽기 매우 난해할 것이다. 물론 함수명을 잘 지어도 좋지만, 여기서는 논외로 둔다. 각 값들을 변수로 쪼개면 아래와 같은 코드가 된다. 조금 더 알아보기 쉬운 코드가 됐다. 긴 코드들이 있었지만, 이 함수에서의 핵심 로직은 부모 값과 자식 값을 더한다는 것을 알 수 있게 됐다. 코드의 추상화 제멋대로 붙인말이지만, 뭔가 좀 있어보이게 말하자면, '코드의 추상화'라고도 할 수 있을 것 같다. 실제 데이터의 흐름은 app.store.data.parent.value + app.sto..
매력적인(흥미로운) 코드 (1) 매력적인 코드란? 주석을 보지 않더라도 읽기 쉬우면서, 읽으면서도 코드 내용에 흥미가 가도록 만들어져 있는 코드가 매력적인 코드라고 생각한다. 주석을 보지 않더라도 읽기 쉬운 코드가 중요하다는 것은 오랫동안 강조되어 왔다. 그러나 많은 사람들이 이번에 이야기하는 흥미로운 코드에 대해서는 잘 들어보지 않은 이야기일 수도 있다. 흥미로운 코드 흥미로운 코드는 어떤 것일까? 일단, 무슨 생각으로 이런 코드를 짰는지 궁금하게 만드는 코드는 제외한다. 반복적이지 않은 코드 어떤 파일이 엄청난 Getter와 Setter로 가득차 있었다고 한다고 먼저 가정을 하겠다. 이코드가 분명 지정된 양식에 맞춰서, 은닉화도 잘 되어있는 코드라면, 좋은 코드라고 할 수 있을 것이다. 그러나, 무의미한 getter와 setter로..