Skip to Content
먼저 정리하기?
book

먼저 정리하기?

by Kent Beck
May 2025
Beginner to intermediate
124 pages
1h 17m
Korean
O'Reilly Media, Inc.
Book available
Content preview from 먼저 정리하기?

12장. 추출 도우미

이 작품은 AI를 사용하여 번역되었습니다. 여러분의 피드백과 의견을 환영합니다: translation-feedback@oreilly.com

루틴 내부에 명확한 목적이 있고 루틴의 나머지 코드 와의 상호 작용이 제한된 코드 블록이 있습니다. 이를 헬퍼 루틴으로 추출합니다. 루틴의 작동 방식이 아닌 목적에 따라 루틴의 이름을 지정합니다.

리팩터링에 대해 잘 알고 계신 분이라면 이 Tidy에서 "Extract Method"를 알아볼 수 있을 것입니다. 자동화된 리팩터링이 없으면 이 Tidy/리팩터링을 실행하는 것이 까다로울 수 있습니다. 그렇기 때문에 자동 리팩터링을 제공하는 환경에 있어야 합니다. 지금은 21세기입니다.

도우미를 추출하는 몇 가지 특별한 경우를 언급하고 싶습니다. 하나는 큰 루틴 내에서 몇 개의 줄을 변경해야 하는 경우입니다. 해당 줄을 도우미로 추출하고 도우미의 줄만 변경한 다음 합당한 경우 도우미를 호출 루틴에 다시 인라인으로 연결합니다. (보통 도우미를 좋아하게 되어 계속 사용하게 되는 경우가 많습니다). 자, 이렇게 하세요:

routine()
    ...stuff that stays the same...
    ...stuff that needs to change...
    ...stuff that stays the same...

가 됩니다:

helper()
    ...stuff that needs to change...

routine()
    ...stuff that stays the same...
    helper()
    ...stuff that stays the same...

(미리 읽어보셨다면 이것을 응집력 또는 응집력 있는 요소를 만드는 것으로 알아차리실 것입니다. 그렇지 않더라도 걱정하지 마세요. 곧 설명해 드리겠습니다.)

도우미를 추출하는 또 다른 경우는 시간적 결합을 표현하는 것입니다(a()b() 앞에 호출해야 함 ). 보시면

foo.a()
foo.b()

를 자주 클릭한 다음 생성하세요:

ab()
    a()
    b()

호감도만이 도우미를 계속 사용하는 유일한 이유는 아닙니다. 새 도우미를 만든 후 몇 시간 또는 몇 분 후에 을 다시 사용하고 싶을 때가 종종 있습니다. 인터페이스는 문제를 생각하는 도구가 됩니다. 새로운 인터페이스는 우리가 좀 더 추상적으로 사고하고 디자인 어휘에 단어를 추가할 준비가 되었을 때 등장합니다.

도우미가 필요한 모든 곳에 도우미를 사용할 수 있으니 걱정하지 마세요. 도우미 사용은 다른 Tidy에서 처리할 수 있습니다. (일부 도구는 새 도우미가 적용되는 모든 위치를 자동으로 식별하고 수정합니다. 그런 도구에 하늘의 축복이 있기를 바랍니다.)

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

코드 밖 커뮤니케이션

코드 밖 커뮤니케이션

재퀴 리드
실리콘밸리 리더십

실리콘밸리 리더십

김정혜, 마이클 롭
프로그래머의 길 멘토에게 묻다

프로그래머의 길 멘토에게 묻다

David Hoover, Adewale Oshineye, Kang Jung Bin

Publisher Resources

ISBN: 9798341659704