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 먼저 정리하기?

19장. 리듬

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

처음으로 돌아가 보겠습니다. 향후 시스템 동작을 더 쉽게 변경하기 위해 정리하고 있습니다. 여러분은 그만한 가치가 있기 때문에 미래의 행동 변경을 더 쉽게 만들고 있습니다(반대하는 사람이 있다면 나중에 경제학적으로 설명하겠습니다). 여기서 무슨 얘기를 하고 있는 걸까요? 잠깐 얘기했다가 다시 본론으로 돌아가시죠? 몇 시간 동안 행복하게정리하는 시간?

정리 정돈( )의 기술 중 하나는 정리 정돈의 리듬을 관리하는 것입니다. 이전 장에서 우리는 이 이미지(그림 19-1)를 통해 작은 단위의 정리 정돈을 권장했습니다.

alt_text
그림 19-1. 함께 또는 개별적으로 일괄 처리된 구조 변경

이러한 일련의 구조 변화와 그에 따른 행동 변화 중 하나에 얼마나 많은 시간이 소요될까요?

소프트웨어 디자인은 프랙탈이므로 모든 시간 척도가 될 수 있습니다. 하지만 이 책에서는 소프트웨어 설계의 한 가지 규모, 즉 개인에게 영향을 미치는 소프트웨어 설계에 대해 이야기하고자 합니다. 이를 위해 몇 분에서 최대 한 시간까지 이야기하고 있습니다. 행동 변화를 일으키기 전에 한 번에 한 시간 이상 정리하는 것은 원하는 행동 변화를 일으키는 데 필요한 최소한의 구조 변경을 놓쳤다는 의미일 수 있습니다.

하지만 또 다른 가능성은 코드가 너무 엉망이어서 행동을 변경하기 전에 몇 시간 동안 수익성 있게 정리할 수 있다는 것입니다. 이것이 사실이라면 오래 가지 못할 것입니다. 소프트웨어 설계는 "길을 닦는" 경향이 강합니다.

이야기를 들어본 적이 없는 분들을 위해 간단히 설명하자면, 한 대학에서 건물을 여러 개 지었는데, 기획자들은 건물 사이에 산책로를 어디에 둘지 고민하고 있었습니다. 그러나 그들은 신중하게 추측하는 대신 건물 사이의 모든 공간에 잔디를 심었습니다.

몇 달 후, 학생들의 발은 풀밭에 닳아 없어진 길이 되었습니다. 기획자들은 마모된 부분을 매끄럽게 포장했습니다.

동작 변경은 코드에서 클러스터링되는 경향이 있습니다. 파레토 법칙에 따르면 80%의 변경 사항은 20%의 파일에서 발생합니다. 먼저 정리하는 것의 장점 중 하나는 정리도 클러스터링된다는 점입니다. 그리고 행동 변화에 가장 매력적인 지점에 정확히 클러스터링됩니다.

처음에는 많이 정리하더라도 곧 이미 정돈된 코드의 동작을 변경하고 싶다는 생각이 들 것입니다. 조금만 더 계속하면 대부분의 변경 사항은 이미 정돈된 코드 영역에서 발생합니다. 결국에는 시스템의 대부분의 코드가 손대지 않았음에도 불구하고 정돈되지 않은 코드를 만나는 것은 예외가 될 것입니다.

그렇기 때문에 저는 정리 정돈이 몇 분에서 한 시간 정도 걸리는 활동이라고 자신 있게 말할 수 있습니다. 예, 때로는 더 오래 갈 때도 ...

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