8장 기능 이동 #10
Replies: 7 comments
-
리팩터링할 때 반복문 안에 2가지 이상의 일을 하고 있는 경우 반복문을 쪼개는 것이 좋겠다. 반복문이 2번 실행되어 병목현상이 발생되는 일은 드물다고 한다. 만약 병목현상이 일어나는 경우 하나로 합치는 것은 쉬울 것이다. |
Beta Was this translation helpful? Give feedback.
-
이번 챕터의 핵심은 첫 부분에 나와 있는 것 같습니다. 모듈성이라는 말이 인상깊고 작은 일부만 이해해도 기능을 이해하게 해주는 코드를 만들기 위해 리팩터링을 진행한다는 점을 되새겼습니다. |
Beta Was this translation helpful? Give feedback.
-
실제로
반복되는 부분을 피호출 함수로 합치기에는 부적절하지만, 일부 코드에서 함수 호출 앞뒤로 특정 로직이 반복되는 경우가 있었습니다. 반복 부분을 옮기기에는 애매해서 그냥 두었는데, 반복되는 부분과 함수 호출 부분을 통째로 새로운 함수로 추출하는 방법이 있다는 것을 배웠습니다. |
Beta Was this translation helpful? Give feedback.
-
단순히 코드 블록, 문장의 순서를 바꾸는 것만으로도 전체 맥락을 이해하기가 훨씬 쉬워지는게 체감이 되었습니다.
// before
const condition = 0;
let foo = "foo";
let bar = "bar";
while(condition + 3 > 0) {
...
}
// after
let foo = "foo";
let bar = "bar";
const condition = 0;
while(condition + 3 > 0) {
...
} 단순하게 condition 변수의 위치만 바꿨는데도 읽기가 편해지고 흐름을 이해하기가 편해졌습니다. 위와 같이 문장 한 장을 옮기는 것이 문장 교환하기라고 하네요 . |
Beta Was this translation helpful? Give feedback.
-
함수를 추상화의 경계를 결정 짓는 하나의 단위라고 볼 수 있을 것 같습니다. |
Beta Was this translation helpful? Give feedback.
-
관련된 기능들을 잘게 쪼개고, 묶고, 이동하여 응집도 높게 모듈화를 하는 것이 결국엔 가독성을 높일 수 있다는 것을 배웠습니다. 특히 변수 선언을 함수 첫머리에 모아두는 편이었는데 처음 사용할 때 선언하는 것이 여러 방면에서 좋다는 것을 알 수 있었습니다. |
Beta Was this translation helpful? Give feedback.
-
|
Beta Was this translation helpful? Give feedback.
-
인상깊었던 책의 내용과 인상깊었던 이유
현업 등 코드에 반영할 수 있는 방법과 생각
관련 아티클이나 이해를 돕는 자료를 첨부
새롭게 알게된 점이나 이해가 어려웠던 점
Beta Was this translation helpful? Give feedback.
All reactions