-
Notifications
You must be signed in to change notification settings - Fork 0
우리가 TypeScript를 사용하는 이유
Vardy edited this page Nov 13, 2023
·
1 revision
JavaScript는 동적 타입 언어로, 변수의 타입이 런타임에 결정되게 됩니다. 만약 개발 중 타입 관련 오류가 발생하더라도, 미리 감지하기 어렵게 만들게 됩니다.
개인 프로젝트에서는 개발자가 자신이 작성한 코드의 흐름과 변수들을 잘 이해하고 있어 유지보수가 상대적으로 수월하지만, 여러 개발자가 참여하는 프로젝트에서는 다른 개발자가 작성한 코드의 의도와 변수의 타입을 파악하는 것이 어렵습니다. 예를 들어, JavaScript로 작성된 코드에서는 함수가 반환하는 값의 타입을 코드만 보고 명확하게 알 수 없어 혼란이 발생할 수 있습니다.
다음은 자바스크립트로 작성된 협업시의 문제 예시입니다.
// 다른 개발자가 작성한 함수
function processData(input) {
// 복잡한 로직 수행
return processedDate;
}
// 내가 작성하는 코드
const result = processData(myData);
// 여기서 'result'의 타입과 형태를 알 수 없음
// 이것이 문자열인지, 날짜 객체인지, 아니면 다른 형태인지 알기 어려움
console.log('그래서 타입이 뭔데?', result);
// 이 부분에서 'result'를 어떻게 처리해야 할 지 혼란스러움
JavaScript에서는 정확이 이 변수가 어떤 타입을 가지고 리턴하는지, 변수와 함수를 보고 유추해야합니다.
TypeScript에서는 이런 문제들이 상당 부분 해결이 됩니다. TypeScript는 JavaScript의 상위 집합으로, JavaScript의 모든 기능을 포함하면서도 추가적인 기능을 제공합니다. TypeScript의 가장 중요한 특징 중 하나는 정적 타입 시스템
입니다. 이는 개발 과정에서 변수와 함수의 타입을 명시적으로 선언
하도록 함으로써, 코드를 더 쉽고 명확하게 이해할 수 있게 도와주며, 타입 관련 오류를 컴파일 단계에서 미리 발견하고 수정할 수 있게 합니다. 이러한 특징은 특히 협업 환경에서 코드의 가독성을 높이고
, 유지보수를 용이하게 만들어 줍니다.