개발자

JS를 TS로 마이그레이션

2023년 05월 17일조회 334

스타트업에서 유일한 프론트엔드 개발자로 근무 중인 신입 개발자입니다. 현재 Vue로 개발된 웹 사이트를 React로 마이그레이션 하는 업무를 맡아, 스스로 공부하면서 개발하고 있습니다. 제가 하고 있는 고민은 JavaScript로 개발된 이 웹사이트를, Typescript로 바꿔야할지 결정을 못내리겠다는 것입니다. 기한이 있는 업무이고, 혼자하는 업무이다 보니, 기존의 JS를 그대로 유지하여 개발 시간을 단축할 생각이었습니다. 대신 api 통신하는 코드는 데이터 형식 오류를 사전에 방지하기 위해, 파일을 따로 분리하여 TS로 작성하고 있습니다. 그런데, React로 마이그레이션을 모두 끝낸 이후에 TypeScript로 다시 마이그레이션 하는 작업이 더 복잡하지 않을까 하는 생각이 들었습니다. 그래서 TS를 포기하고 JS로만 구현을 해야할 지, 혹은 JS로 구현을 끝낸 이후에, TS로 점진적으로 마이그레이션을 할지 아니면 지금부터 전부 TS로 바꿔야할지 고민중입니다. Q1. JS를 TS로 점진적으로 마이그레이션 하는 작업이 많이 복잡할까요? Q2. 프론트 개발 인원이 한 명인 회사에 TS 대신 JS로만 개발해도 괜찮을까요?

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

답변 2

허형준님의 프로필 사진

TS는 점진적 마이그레이션이 가능하도록 설계되어 있습니다. 가장 복잡도가 덜한 파일부터 .ts파일로 바꿔주시기만 하면 됩니다. 처음부터 엄격하게 타입을 적용하실 필요 없고 간혹 에러나는 부분은 Any 타입으로 변경하신뒤 나중에 바꾸시는 방법도 추천드립니다. 저도 TS로 개발하다 JS를 사용했는데, 내가 이걸 어떻게 써왔지 하는 생각이 강하게 듭니다. JS에서 자주 보이는 Typeerror를 마주할 일이 없어질 뿐더러 개발 생산성 및 버그 발생 확률을 줄일 수 있습니다. JS보다는 웬만하면 TS를 사용하시는걸 추천드립니다.

리오님의 프로필 사진

리오

작성자

SW 개발자2023년 05월 17일

그럼 js로 개발하면서 복잡도가 적은 컴포넌트나 기능들부터 ts로 바꿔나가야겠군요. 저도 간만에 다시 js로 개발하니까 ts가 얼마나 편했는지 체감하고 있습니다🥹 답변 감사합니다!

장익순님의 프로필 사진

장익순

스타트업 개발자2023년 05월 19일

저희도 TS가 이렇게 인기가 많아 지기 전 개발을 진행을 해서 JS에서 해어 나오지 못하고 양도 많아 걱정하고 있었는데 ㅠㅠ 형준님 말씀대로 해봐야겠어요 너무 감사합니다. 질문해 주셔서도 감사합니다~

커리어리 AI 봇님의 프로필 사진

그런 고민을 하시는 것은 당연한 일입니다. 마이그레이션의 경우 여러 고려 사항들이 있고, 그런 결정을 내리는 것은 쉽지 않습니다. Q1: JavaScript(JS)를 TypeScript(TS)로 점진적으로 마이그레이션하는 작업의 복잡성은 주로 프로젝트의 크기와 복잡성, 그리고 개발자의 TypeScript에 대한 이해도에 따라 달라질 것입니다. 이런 작업은 대개 어느 정도의 복잡성이 있습니다. JS 코드를 TS로 변환하려면 타입을 명시하고, TypeScript가 요구하는 규칙을 따르는 등 코드의 일부를 수정해야 합니다. 하지만 이 과정에서 코드의 품질을 높이고 버그를 미리 발견할 수 있으므로 장기적으로 볼 때 이익이 있습니다. Q2: 회사에 프론트 개발 인원이 한 명만 있더라도 TypeScript를 사용하는 것이 괜찮습니다. TypeScript는 코드의 안정성을 높이고, 버그를 미리 잡아내는 데 도움이 됩니다. 또한, 자동 완성과 같은 기능을 통해 개발 속도를 높여줄 수도 있습니다. 그러나 TypeScript를 사용하려면 학습 곡선이 있으며, 개발 시간이 늘어날 수 있습니다. JavaScript만 사용하는 것이 더 편하고 빠를 수 있지만, 장기적으로 볼 때 TypeScript의 이점을 고려하면 TypeScript를 사용하는 것이 좋을 수 있습니다. 결정을 내리실 때 고려해야 할 것은 프로젝트의 기한, TypeScript에 대한 이해도, 그리고 장기적인 코드 유지 보수입니다. 만약 프로젝트 기한이 급하다면, JavaScript로 시작하고 나중에 필요한 부분을 TypeScript로 점진적으로 변환하는 것도 한 가지 방법입니다. 그러나 만약 TypeScript에 이미 익숙하시다면, TypeScript로 시작하는 것이 더 좋을 수 있습니다. 각 선택에는 장단점이 있으므로, 본인의 상황에 가장 잘 맞는 선택을 하시는 것이 중요합니다.

커리어리 AI 봇의 답변을 평가해 주세요!

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

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

또는

이미 회원이신가요?

목록으로
키워드로 질문 모아보기

실무, 커리어 고민이 있다면

새로운 질문 올리기

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