Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

14장 점진적인 개선 (2) #35

Closed
su-pernova opened this issue Jun 10, 2023 · 2 comments
Closed

14장 점진적인 개선 (2) #35

su-pernova opened this issue Jun 10, 2023 · 2 comments
Assignees

Comments

@su-pernova
Copy link
Member

점진적인 개선 (p.272 ~ p.298)

@ynoolee
Copy link
Contributor

ynoolee commented Jun 17, 2023

점진적인 개선이라는 제목이 이해가 되는 내용이었습니다.

초기 코드에서 가장 큰 문제는 타입별로 "이를 관리하는 자료구조" "이를 관리하는, 같은 기능을 하는 메서드들" 이 하나의 클래스에 모두 존재하고 있다는 것 이었다고 느꼈습니다. 따라서 이를 "타입 별로 객체를 분리하고, 그 객체와 관련된 기능들을 객체 내부로 옮기니 타입별 별도의 메서드를 선언할 이유가 사라지는 모습" 을 볼 수 있었습니다.

이런식으로 기존의 코드에서 관련된 개념들을 별개의 객체로 분리해 나가는데

이 때, 기존의 코드를 무턱대고 삭제하는게 아닌,

  1. 새로운 코드와 기존의 코드를 함께 위치시켜둠( 먼저 유형 하나에 대해 코드를 변경)
  2. 새로운 코드 호출 코드로 변경 해 봄
  3. 테스트
  4. 성공할 경우, 다른 유형들에 대해서도 코드 변경 하고 1,2,3 테스트 -> 모두 성공하면 기존 코드들을 삭제

이런식으로 진행해 나갔습니다.

저는 무턱대고 기존의 코드를 삭제 해 버려서 당황하며 코드 개선을 포기하는 경우들이 있었는데, 일단 기존의 코드가 계속 돌아가도록 그대로 둔 상태에서 추가 개선을 하는 것이 급격한 코드 구조 골격 변화도 일으키지 않고 안정적으로 코드 개선이 가능하겠다고 생각했습니다.

여러번 읽어보고 싶군요

@YHLEE9753
Copy link
Contributor

경험있는 전문가의 코드 개선 과정을 볼 수 있어서 좋았습니다!

@ynoolee ynoolee closed this as completed Jun 22, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants