개발자

레거시 프로젝트를 리팩터링 할 지 새로 만들지 고민입니다

2023년 11월 03일조회 158

이번에 새로 회사에 신입으로 입사해서 처음 맡는 프로젝트로 기존에 있던 약 4,5년전에 만든 프로젝트를 리뉴얼하는 작업을 담당하게 되었습니다. 리액트로 되어 있지만, 클래스형이기도하고 기존에 있던 몇 몇 api를 수정하고 새로운 요구사항에 맞춰 몇가지 기능을 수정해야합니다. 기존 코드를 리팩토링 하려했는데 워낙 코드가 오래되서 해당 프로젝트를 진행했던 분들도 퇴사해서 히스토리를 알 수 없습니다.. 이럴 때는 새로 아예 프로젝트를 만들지, 아니면 그냥 기존 프로젝트를 클래스형에서 함수형으로 바꾸고 코드들을 리팩터링해서 유지보수에 용이하게 바꿀지 고민입니다..

이 질문이 도움이 되었나요?
'추천해요' 버튼을 누르면 좋은 질문이 더 많은 사람에게 노출될 수 있어요. '보충이 필요해요' 버튼을 누르면 질문자에게 질문 내용 보충을 요청하는 알림이 가요.
profile picture
익명님의 질문

답변 2

프레드윰님의 프로필 사진

회사내에서 신규로 작업이 가능하다하면 새로 만든게 좋죠 뭣하러 유지보수 하면서 옛날꺼 쓰겠어요 신규로 가세요

손우진님의 프로필 사진

무엇이 더 공수가 적게 들지? 가 중요할 것 같아요. 클래스형 리액트인걸로 봤을 때 꽤나 오래된 코드들일 것으로 예상됩니다. 새로 짜는 게 리펙토링 보다 싸게 친다면 당연히 새로 짜야죠. 현실적으로 신입 입장에서 백지 개발이 쉽진 않을 것 같으니 공수 위주로 생각하는 게 좋을 것 같아요.

지금 가입하면 모든 질문의 답변을 볼 수 있어요!

현직자들의 명쾌한 답변을 얻을 수 있어요.

또는

이미 회원이신가요?

AI 답변
커리어리 AI 봇 프로필 이미지

커리어리 AI 봇

GPT가 달아주는 답변입니다.

2023년 11월 03일

이런 상황에서 가장 중요한 것은 우선 프로젝트의 규모와 시간, 그리고 자원을 고려하는 것입니다. 1. **프로젝트 규모**: 프로젝트가 매우 크다면, 전체를 리팩터링하는데 많은 노력과 시간이 들 수 있습니다. 이 경우 새로 작성하는 것이 더 효율적일 수 있습니다. 2. **시간**: 급한 마감시간이 있다면 기존 코드를 개선하는 방향으로 가는 것이 좋을 수 있습니다. 3. **자원**: 리소스가 충분하다면 새롭게 만드는 것을 검토해 볼 수 있지만 아니라면 부분적인 리팩터링도 해결책일 수 있습니다. 전반적으로 말하자면, 유지보수 및 확장성을 위해서는 오히려 함수형 React Component로 바꾸고 Hook API를 사용하는 등 현대적인 패턴으로 리팩터링 하는것이 장기적으로 보았을 때 이득일 수 있습니다. 하지만 갑작스러운 변경 없이 점진적으로 향상시키는 방식(예: 스트랭글러 패턴) 등 점진적인 변화를 도입하여 위험을 최소화하는 것이 신중합니다. 이 경우, 리팩터링과 새롭게 만드는 것을 동시에 진행할 수도 있습니다. 결과적으로, 상황에 따라 다르지만 기존 프로젝트를 완전히 폐기하고 새롭게 시작하는것은 통상적으로 대규모 변경이 생길 여지가 있으므로 조심스럽게 접근해야 합니다.

목록으로

지금 가입하면 모든 질문의 답변을 볼 수 있어요!