여행가는개발자

Typescript vs Javascript 본문

React

Typescript vs Javascript

kimsoonil 2023. 9. 15. 13:29
728x90
반응형

지금까지 자바스크립트로 개발을 하다가 이번 프로젝트에서는 타입스크립트로 개발을 진행하게되었다.

타입스크립트로 개발하면서 두가지의 언어를 정리해보려고 한다.

Javascript

  • 웹 개발에 가장 많이 사용되는 프로그래밍 언어
  • 메모리 측면에서 가볍고, 크로스 플랫폼 개발을 지원하는 객체 기반 스크립팅 언어
  • 웹 사이트의 클라이언트 쪽 동적 페이지를 만드는데 적합
  • HTML 페이지에서 사용되고, 페이지가 로드될 때 자동으로 실행
  • 일반 텍스트로 제공 및 실행
  • 실행을 위한 별도의 준비나 컴파일이 필요하지 않음

특징
1. 서버 커뮤니케이션

  • 페이지를 서버에 전송하기 전, 사용자 입력의 유효성을 검사하는 옵션 제공
  1. 상호 작용
  • 마우스 hover 시 나타나는 인터페이스 등
  1. 낮은 reloading 속도
  • 코드를 즉시 참조하므로 개발자가 업데이트한 사항을 페이지가 다시 로드될 때 까지 기다리지 않고 바로 볼 수 있음

Typescript

  • 오픈 소스기반 객체 지향 프로그래밍 언어
  • Javascript 파일로 컴파일됨
  • 강력한 타입을 갖는 Javascript superset
  • 브라우저에서 직접 실행되지 않음 (Javascript로 컴파일 필요)
  • 확장자 : ts
  • js 파일을 ts 파일로 변경해도 유효

※ ES6 버전의 Javascript는 Javascript임

특징
1. 기본 특징

  • Elementary building block은 Javascript에서 사용되는 코딩 구조를 구현
  • Typescript를 알기 전에 Javascript를 알아야 함
  • 코드를 실행하려면 Javascript로 변환 필요
  1. Portable
  • Javascript가 문제없이 실행될 수 있는 환경에서 Typescript도 쉽게 실행 가능
  • 많은 브라우저와 호환
  • 특정 가상 머신이나 런타임 환경이 필요하지 않음
  1. Transpiler
  • Transpiler가 Typescript에서 오류 검사 기능을 제공
  • 컴파일러에서 실제 스크립트를 실행하기 전에 코딩 오류에 집중 가능
  • 코딩하는 동안 코드를 컴파일 하고, 컴파일 오류를 생성하기 때문에 가능
  1. Type cheking
  • 정적 타입 검사 가능
  • 컴파일 타임에 완료됨
  • 코드를 입력하는 동안 누구나 오류를 찾을 수 있으므로, 실제 코드가 실행될 때까지 기다릴 필요가 없음
  1. DOM 관리
  • DOM Typescript에서 요소를 추가/제거하는데 유용

JavascriptTypescript

Type high-level의 interpreted
프로그래밍 언어
powerful type 객체 지향 컴파일 언어
Designed & developed by ECMA International의 Mozilla
Foundation, Netscape Communications
Corpora의 Brendan Eich
Microsoft의 Anders Hejlsberg
Weight 상대적으로 무거움 매우 가벼움
Server Side/ Client Side 모두 주로 Client
File Extension .js .ts, .tsx
Syntax <script></script> 태그 내에 작성 함수, 모듈, statement, expression, 변수, 주석
Time for Coding application을 위한 빠른 코딩 코드를 컴파일하는 시간 소요
728x90
반응형

'React' 카테고리의 다른 글

Recoil  (1) 2023.10.10
Json-server  (0) 2023.09.15
Yup  (0) 2023.09.15
[Material UI]  (0) 2023.09.14
ESLint + Prettier  (4) 2023.09.14