Skip to content
Open
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 21 additions & 0 deletions 2026/Street_Coder/tttghost/chapter4.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# 4장 맛있는 테스트

## 논의주제
요즘도 테스트 코드를 직접 작성하시나요? AI의 발전에 따라 테스트 작성 방식이 어떻게 달라졌는지 궁금합니다.
저는 평소에 테스트 코드를 거의 짜지 않다가, AI가 발전하면서 AI의 도움을 받아 조금씩 짜보고 개념을 이해해 나가는 정도로 활용하고 있습니다.
다른 분들은 AI와 테스트를 어떤 비중으로 함께 쓰고 계신지, 그리고 그 과정에서 느낀 장단점이 있다면 함께 이야기해 보면 좋겠습니다.
Comment on lines +4 to +6
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

클로드 쓰기 전에는 테스트 코드와 함께 로직 처리 코드를 함께 작성하는게 습관이었는데
그게 제가 직접 하는 것에서 클로드가 대신 해주는 것으로 바뀐 것 정도입니다.

다시 말해 클로드가 나오기전, AI가 나오기 전에도 테스트 코드를 작성해야 하는 이유와 그 의미가 무엇이냐에 대한 본질은 변하지 않은 것 같습니다.

저는 그나마 AI가 다 해주는 시대에 테스트 코드 작성에 대한 부분은 살아 남아서 다행이라고 생각하고 있긴 합니다.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

저는 테스트 코드 작성은 전적으로 AI에게 위임하고있습니다.
다만, 어떤 시나리오를 작성해야하는지는 가이드를 주고있긴합니다.


## 감상평
13.4에서 "요즘은 자동 테스트가 수동 테스트보다 비용이 더 낮다"는 말이 인상적이었습니다.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

현재 문서의 제목은 '4장'이지만 본문에서는 '13.4'절을 언급하고 있습니다. 책의 1.3.4절('자동 테스트는 수동 테스트보다 저렴하다')의 내용을 의도하신 것이라면, 번호를 '1.3.4'로 수정하는 것이 정확하겠습니다.

Suggested change
13.4에서 "요즘은 자동 테스트가 수동 테스트보다 비용이 더 낮다"는 말이 인상적이었습니다.
1.3.4에서 "요즘은 자동 테스트가 수동 테스트보다 비용이 더 낮다"는 말이 인상적이었습니다.

예전에는 자동 테스트를 짤 시간이 아까워서 그냥 손으로 돌려보는 게 빠르다고 생각했는데, 그 시간이 쌓이면 결국 더 비싸진다는 점을 다시 느꼈습니다.
평소에 테스트에 좀 소홀했는데, 테스트에 대해 다시 생각해볼 만한 계기가 되었습니다.

정규식 부분도 찔렸습니다.
그동안 그냥 "갖다 쓰는 도구"로만 봤습니다. 필요하면 검색해서 복붙하고, 동작하면 그만이라는 식이었습니다.
기본 문법이라도 제대로 이해해두면 상황에 맞게 조합하거나 변형할 수 있을 텐데, 그걸 안 해왔다는 것을 깨달았습니다.
Comment on lines +13 to +15
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

정규식(Regular Expression)에 대한 내용은 책의 3장(3.10절)에서 다루고 있습니다. 현재 4장 요약 문서에 해당 내용이 포함되어 있는데, 장별로 내용을 구분하신다면 3장 쪽으로 옮기는 것을 검토해 보세요.


## 느낀 점
테스트를 평소에 안 하다가 막상 짜려고 하니 오히려 거기에 포커스가 쏠려서 본질 개발에 소홀해졌던 경험이 있습니다.
그래서 거창한 테스트를 한 번에 짜려고 덤비기보다, 작은 테스트를 더 많이 짜보는 습관부터 들여야겠다고 생각했습니다.
그러다 보면 자연스럽게 근육이 붙을 것 같습니다.

31 changes: 31 additions & 0 deletions 2026/Street_Coder/tttghost/chapter5.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
# 5장 보람 있는 리팩터링

## 논의주제
AI가 리팩터링을 상당 부분 대신해주는 시대가 되면서, 개발자가 리팩터링을 바라보는 관점 자체가 달라지고 있다고 느꼈습니다.
다른 분들은 실무에서 AI에게 리팩터링을 맡기는 비중이 어느 정도이신가요?
또 "AI에게 맡길 수 있는 리팩터링"과 "사람이 직접 해야 하는 리팩터링"을 나누는 본인만의 기준이 있으신지 궁금합니다.
Comment on lines +4 to +6
Copy link
Copy Markdown
Member

@jongfeel jongfeel Apr 17, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

저는 사람이 작성한 코드에 대해 리팩터링 조금 시켜보고 든 생각은, 처음부터 AI로 만든 프로젝트는 리팩터링을 하는게 의미가 없다 쪽으로 생각이 바뀌었습니다.

리팩터링을 하는 의미는 사람이 코드를 봐야 했기 때문인데, 사람이 코드를 볼 필요가 없다면 리팩터링도 시키거나 하는게 의미가 없다 입니다.
이건 지난 academic conference 때 여러 차례 논의되었던 내용이기도 하죠.

리팩터링을 사람이 하느냐 AI가 하느냐에 대한 기준에 대한 거라면
"리팩터링은 할 필요가 없다."의 의견입니다.


## 감상평
제목이 "보람 있는 리팩터링"이라 처음엔 "그럼 보람 없는 리팩터링도 있나?" 싶었는데, 생각해보면 충분히 그럴 수 있겠다 싶었습니다.
목적 없이 마구잡이로 하는 리팩터링은 오히려 시간만 쓰고 끝나니까요.

리팩터링을 하는 이유는 결국 미래를 위한 것이라는 생각이 들었습니다.
지금 조금 귀찮아도 나중에 더 간결하고 재사용 가능하게 두는 것, 안 하면 언젠가 터지고 그 피해는 인계받는 사람에게 돌아간다는 점이 와닿았습니다.

책에서는 리팩터링할 때 공통 코드를 추출해서 기존 코드와 새로운 코드 사이에 "중간 교착점"을 만들어가라고 합니다.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

'교착점'은 일반적으로 'Deadlock'을 의미하는 기술 용어입니다. 리팩터링의 맥락에서 'Seams'를 설명하신 것이라면 '접점' 또는 '솔기'라는 용어를 사용하는 것이 독자에게 더 정확한 의미를 전달할 수 있습니다.

Suggested change
책에서는 리팩터링할 때 공통 코드를 추출해서 기존 코드와 새로운 코드 사이에 "중간 교착점"을 만들어가라고 합니다.
책에서는 리팩터링할 때 공통 코드를 추출해서 기존 코드와 새로운 코드 사이에 "접점"을 만들어가라고 합니다.

마치 게임에서 중간 세이브 지점을 두는 것과 비슷한 개념으로 받아들였습니다.
그 연장선에서 인터페이스 설계 이야기도 나오는데, 구현체가 바뀌어도 행동이 정해져 있으니 리팩터링이 훨씬 쉬워진다는 점이 납득됐습니다.

다만 책 내용보다 현실은 조금 더 앞서 나가 있다는 느낌도 받았습니다.
요즘은 AI가 리팩터링을 꽤 잘 해주고, 심지어 리팩터링의 신뢰를 담보하던 테스트조차 AI가 작성해주는 시대니까요.
결국 중요한 건 "좋은 코드를 볼 줄 아는 눈"과 "AI에게 잘 지침을 내리는 능력"이라는 생각이 들었습니다.

## 느낀 점
예전에 코드를 깔끔하게 만들고 싶어서 제가 책임지고 야근하며 리팩터링했던 적이 있습니다.
결과물은 깔끔해졌고 제 머릿속에도 정리가 확실히 됐지만, 장기적으로 보면 좋은 선택은 아니었다는 생각이 듭니다.
들인 시간 대비 팀 전체에 돌아간 가치가 그만큼 컸는지 돌아보면 애매했습니다.

이번 장을 읽으면서 다시 정리가 됐습니다.
리팩터링은 우아한 코드를 짜는 것이 아니라 잘 돌아가는 코드를 만드는 것, 그리고 막연히가 아니라 의도를 가지고 해야 한다는 것.
특히 "테스트되지 않는 코드를 리팩터링하는 것은 금물"이라는 대목이 인상적이었습니다.
큰 프로젝트일수록 한 번에 바꾸려 하지 말고 점진적으로 가야 한다는 점도 기억해두고 싶습니다.
Loading