이번 프로젝트에서 타입스크립트를 도입하기 위해 공부를 시작했다! 전부터 리액트를 어느 정도 익히게 되면 타입스크립트를 꼭 공부하고 싶었는데, 드디어 시작할 수 있게 되었다!!😊
우리가 작성한 코드를 프로그램에서 동작하기 위해서는 컴파일러가 필요한데, 컴파일러 시간에 타입이 결정되면 statically typed 언어, 런타임 환경에서 결정되면 dynamaically typed 언어라고 한다. 동적으로 타입이 결정되는 언어에서는 숫자를 할당했다가 나중에 문자를 할당할 수도 있고, 컴파일 시간에도 문제가 없다. 정적으로 타입이 결정되는 언어에서는 한번 타입이 결정되면 다른 타입으로 변경할 수가 없고 다른 타입으로 할당할 경우 컴파일 시간에 경고 메시지가 나온다.
동적 언어인 자바스크립트는 유연하지만 가독성이 떨어지고 개발을 할 때 이슈를 잡아내기 어려운데, 타입스크립트로는 더 안정적이고 확장이 쉬운 소프트웨어를 만들 수 있다. 또한, 강력한 객제지향 프로그래밍(OOP)이 가능하다. OOP는 객제 위주로 모듈성이 있는 코드를 작성할 수 있고, 재사용성이 높고, 객체 단위로 확장해나갈 수 있는 확장성도 높고, 기존 코드의 문제 해결이나 새로운 기능을 추가할 때 쉽게 할 수 있는 유지보수성이 높다. 이처럼 타입스크립트로는 생산성이 높고, 더 높은 퀄리티의 코드를 완성할 수 있고, 협업 시 더 빠르게 완성할 수 있다는 장점이 있다.