<FSD 관점으로 바라보는 코드 경계 찾기>

이번 글의 주제도 FSD(Feature-Slided Design)입니다! 현재 제가 가장 관심있는 관심사 2가지 중 하나가 바로 이 FSD 네요. 지금 하고 있는 일이 레거시 코드를 최신 기술로 고도화하는 작업입니다. 그러다보니 새로운 개발보다는 리팩토링이 거의 대부분의 업무이고, 자연스레 코드를 잘 정리할 수 있도록 하는 것이 제일 중요한 고민거리가 됐습니다.

그리고 다른 하나는 당연히(?) AI입니다. AI 시대를 대비해 AI를 최대한 이용해서 코딩을 해보고자 Claude나 Copilot, Cursor등을 을 이용해서 개발을 시도해보고 있습니다. 일전에 AI가 대체하기 가장 어려운 직업 중에 하나가 청소부라고 했던 게 기억나는데요, 무엇이 쓸모있고 무엇이 쓸모없는지를 구분하는 건 대단히 어려운 기술이라고 하더라고요.

AI가 사람보다 뛰어난 능력을 가지고 있는데 참 아이러니하게도 이 코드 정리만큼은 AI가 잘 못하는 영역인 것 같아요. AI의 도움을 받아도 여전히 어려운 부분입니다. 코드 정리와 정돈은 아직까지 AI보다 개발자가 더 잘할 수 있는 영역이라 생각하며, 이러한 정리와 정돈의 체계적인 방법론이라는 점에서 FSD는 매우 매력적인 접근법이라고 생각합니다.

이러한 배경에서 FSD를 다양한 프로젝트에 적용해보게 되었습니다. 작은 프로젝트는 물론이고, 큰 프로젝트, 과제, 실험적인 프로젝트에 이르기까지 다양한 곳에서 FSD를 사용해보면서 얻은 실질적인 경험을 가이드로 공유하고자 이 글을 쓰게 되었습니다.

FSD를 처음 접하면 개념 자체이 상당히 멋지게 느껴지지만 막상 실제로 도입하려고 하면 "뭐가 Entity고, 뭐가 Feature일까? Widgets에는 뭘 넣어야 할까?"와 같은 모호한 경계 때문에 상당히 어려움을 겪게 됩니다. 저 뿐만이 아니라 FSD를 시도하시려는 사람들이 비슷한 고민을 하고 있다 생각합니다.

FSD 공식 사이트에 가봐도 딱 맞는 답을 주지 않습니다. 샘플을 보면 저마다의 해석이 다르고 구조가 제각각입니다. 이 글 역시 "이게 정답이다"가 아니라, 또 하나의 해석이자 "저는 FSD를 이렇게 적용해봤어요"라는 경험담을 바탕으로 이야기를 하지만 그래도 실질적인 가이드가 되어 줄 수 있을까 해서 작성해봅니다.

https://velog.io/@teo/fsd

FSD 관점으로 바라보는 코드 경계 찾기

velog.io

FSD 관점으로 바라보는 코드 경계 찾기

다음 내용이 궁금하다면?

또는

이미 회원이신가요?

2024년 11월 27일 오전 11:58

 • 

저장 13조회 1,771

댓글 0