로딩
요청 처리 중입니다...

리팩토링. 긴 함수

 리팩토링. 긴 함수

반복문안에 여러 로직을 모두 넣으면 성능적으로 가장 최적화된 코드가 나올 수 있습니다. 그러나 그만큼 가독성이 떨어집니다.

성능 문제가 없는 것이라면 각각의 함수로 쪼개도록 합니다. 이 경우 for loop를 1번만 수행하면 될일을, 여러 함수로 쪼개다보니 각 함수에서 for loop 를 수행하므로 for loop 가 2번, 3번, ...

식으로 늘어날 수 있습니다. 그러나 그렇더라도 시간복잡도는 O(n) 으로 동일합니다.

즉 기존에 10ms 걸리던 것이면, 20ms, 30ms 정도 더 늘어나는것이지, 10ms -> 100ms, 1000ms 처럼 늘어나는게 아닙니다. 따라서 큰 데이터가 아니고 성능에 문제없는 로직이라면 성능을 일부 포기하고 여러 함수로 쪼개서 가독성과 모듈화를 더 좋게 하도록 하는게 좋습니다.

여러 메서드에서 자주 사용되는 변수가 있다면 이걸 함수 파라미터로 넘기는게 아니라, 클래스 멤버 변수로 등록하면 코드가 깔끔해집니다. 그러나 여러 쓰레드에서 동시 접근이 가능...

# 리팩토링