Community

개발자 99% 커뮤니티에서 수다 떨어요!

← Go back
Mission (2) -Problem#23
#pragmatic
2년 전
610

연습문제 23.

❗️ 풀이 과정

  • 두 코드의 차이는 무엇일까?

-> 상단의 코드는 파일을 읽었을 때, content , 그 결과에서 일치하는 패턴을 line, 다시 결과를 뽑기위해 truncate하여 result로 각 호출단위마다 결과값을 다른 변수에 저장한다.

-> 아래코드는 위의 일련의 과정들의 중간 결과값 저장없이, 전단계의 결과값이 그대로 다음 메소드를 호출하게 된다.

저자의 의도나 이 연습문제가 수록된 [구부러지거나 부러지거나]의 flow로 보면 아마 상단의 코드가 유지보수나 주위 변화에있어서 수월하다는 의도로 보인다. Python base로 코딩하다보면 pythonic함을 굉장히 강조하는데, 좀 더 readable한 코드를 쓰는것을 추구하는것이 많은 코드 생산물을 생산하는데 있어서 패러다임이 되어가고있는것 같다. 위의 경우 사용하지 않을지도 모르는 변수 2개가 더 만들어지는건데, 좀 더 strict한 메모리사용이 요구되거나 코드를 보는 구성원들이 전부 코드가 익숙하다는 가정이라면 아래가 좀 더 나은 코드일지도 모르겠다는 생각을 좀 했다. General한 경우에는 위가 낫겠지만.

책의 해답은 호출연쇄방식의 유지보수까다로움으로 인해 상단의 코드를 더 좋은 코드로 뽑았다.