ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 왜 타입스크립트 마이그레이션을 해야할까
    TodayILearned/TILWIL 2022. 5. 1. 22:20
    왜 멀쩡히 잘 돌아가고있는 JS를 코드를 굳이 TS로 바꿔야하는가?

    성능이 좋아지는건가? 개발속도가 빨라지나? 하는 의문을 가졌다. 

    결론적으론 성능이 좋아지는 것과는 상관이 없고 개발속도도 조금 느려질 수 있다.

    하지만, 서비스가 발전할 수록, API가 많아질 수록, 나의 코드를 다른 개발자들이 작업해야하는 경우가 생긴다.

    남의 코드를 읽고 이해하는것도 시간이 필요한 작업이고, 이것을 해소하는데  타입스크립트를 사용하는것이 도움이 된다고 생각했다.


    타입스크립트를 처음 접했을 때, 타입이 존재함으로 인해서 장점이 생긴다는 것이 와닿지않았다.

    하지만 타입스크립트를 이용해 만든 API를 다루다가 아직 마이그레이션되지 않은 API로 넘어가면서

    타입스크립트의 장점을 느끼게됐다.. 있다 없으니까..

     

    예를들어 운송장을 발송하는 기존 API에 대해 알림을 추가한다던지 하는 보수를 한다고 할 경우,

    해당 API에 작성된 코드들이 어떻게 동작하는 지 파악하는 것을 가장 먼저 해야한다.

    그런데 다른 사람이 작성한 코드를 파악할 때 느낀 어려운 점이, 변수나 함수의 인자가 어떤 형식을 갖고있는지

    알아내는것에 번거로움을 느꼈다.

    API내 여러 함수가 순차적으로 실행될 때, 이 함수의 인자는 어디서 오는거고 어떤 형식을 띄어야하는것인지,

    알아내기 위해 콘솔로그를 찍어보곤 했다.

     

    타입스크립트의 경우 변수에 마우스만 올리면 어떤 형식을 갖고있는 변수인지 알려줘 파악이 편리하다. 

    또, API명세에 대해 확인하러 직접 갈 필요 없이 인터페이스로 정의된 내용만으로도 필요한 데이터에 대한 정보를 얻는것이 가능했다.

    물론 처음 타입스크립트로 짤 때, 인터페이스를 지정해주거나, 타입을 입력해주는 등의 번거로움은 존재하지만,

    해당 API를 계속해서 같은 개발자가 개발하는 경우가 아니라면 코드를 파악하는데 사용되는 시간도 자원이고,

    약간의 시간을 투자해서 지속적인 병목을 줄일 수 있다면 좋은 것 아닐까..?

     

    또다른 좋은점은 내 코드가 실행되기 전에 컴파일러가 알려줘서, 빌드하기 전에 오류를 알 수 있다는 점..!

    자바스크립트는 동적타이핑이라 컴파일러에서는 에러가 잡히지 않고, 런타임 환경에서 에러가 발생한다.

    타입스크립트는 컴파일러가 검사를 먼저 해주기 때문에 실행 전 버그를 찾을 수 있는 것도 장점이다. 

     

     

     

     

Designed by Tistory.