타입스크립트: 두 판 사이의 차이

내위키
편집 요약 없음
편집 요약 없음
1번째 줄: 1번째 줄:
TypeScript.
TypeScript.


[[마이크로소프트]]가 개발하고 배포, 관리하는 프로그래밍 언어. [[자바스크립트]]와 호환되며, [[자바스크립트]]가 가진 단점들을 보완하기 위해서 만들었다. 이런 종류의 언어로는 커피스크립트와 같은 것들이 있지만 지금은 타입스크립트가 가장 잘 나가는 분위기. 아직까지는 웹 브라우저에서 직접 타입스크립트를 지원하고 있지 않기 때문에 컴파일 및 링크 과정을 거쳐서 [[자바스크립트]]로 변환되어 쓰인다. 물론 앞으로 타입스크립트의 사용이 많아지면 웹 브라우저들이 직접 지원할 수도 있겠지만. [[자바스크립트]]를 쓸 수 있는 곳이라면 어디든지 타입스크립트도 쓸 수 있다. 예를 들어 [[Node.js]]<ref>타입스크립트를 쓰려면 먼저 Node.js를 설치하고 패키지 관리자인 npm으로 설치하는 게 좋다. 아니면 [[비주얼 스튜디오]]를 설치해서 쓰는 방법도 있다. [[비주얼 스튜디오]]가 마이크로소프트 것이니 지원을 안 할 리가...</ref>나 아파치 코르도바 같은 데에서도 얼마든지 쓸 수 있다. 물론 [[자바스크립트]]로 컴파일하는 작업은 필요하다.
[[마이크로소프트]]가 개발하고 배포, 관리하는 프로그래밍 언어. [[자바스크립트]]와 호환되며, [[자바스크립트]]가 가진 단점들을 보완하기 위해서 만들었다. 이런 종류의 언어로는 커피스크립트와 같은 것들이 있지만 지금은 타입스크립트가 가장 잘 나가는 분위기. 아직까지는 웹 브라우저에서 직접 타입스크립트를 지원하고 있지 않기 때문에 컴파일 및 링크 과정을 거쳐서 [[자바스크립트]]로 변환되어 쓰인다. 물론 앞으로 타입스크립트의 사용이 많아지면 웹 브라우저들이 직접 지원할 수도 있겠지만. [[자바스크립트]]를 쓸 수 있는 곳이라면 어디든지 타입스크립트도 쓸 수 있다. 예를 들어 [[Node.js]]<ref>타입스크립트를 쓰려면 먼저 Node.js를 설치하고 패키지 관리자인 npm으로 설치하는 게 좋다. 아니면 [[비주얼 스튜디오]]를 설치해서 쓰는 방법도 있다. [[비주얼 스튜디오]]가 [[마이크로소프트]] 것이니 지원을 안 할 리가...</ref>나 아파치 코르도바, 리액트 네이티브 같은 데에서도 얼마든지 쓸 수 있다. 물론 [[자바스크립트]]로 컴파일하는 작업은 필요하다.


자바스크립트는 그 문법이 간단하기 때문이 진입장벽이 낮은 프로그램이지만 고급 기능을 구현할 때에는 오히려 난점이 많다. 예를 들어 변수에 아무 타입이나 넣어도 되는 특징은 초보자들에는 쉬워 보이지만 그 변수에 넣지 말아야 할 잘못된 타입을 집어넣어도 오류가 생기지 않기 때문에 버그도 많아지고 디버깅도 힘들어진다. 함수나 클래스 정의와 같은 많은 부분들이 객체지향 언어와는 상당히 다르기 때문에 이 역시 사용을 까다롭게 하고 버그를 낳는 원인이 된다. 이러한 단점을 극복하고 변수에 타입을 부여하여 변수에 값을 넣을 때 타입 체크를 할 수 있게 하거나<ref>이름에 '타입'이 들어가 있을 정도로 이 점을 강조한다.</ref>, 클래스 정의를 좀 더 객체지향형 프로그래밍 언어처럼 하거나 해서 자바스크립트의 단점을 보완하는 것이 타입스크립트의 목적이다.
[[자바스크립트]]는 그 문법이 간단하기 때문이 진입장벽이 낮은 프로그램이지만 고급 기능을 구현할 때에는 오히려 난점이 많다. 예를 들어 변수에 아무 타입이나 넣어도 되는 특징은 초보자들에는 쉬워 보이지만 그 변수에 넣지 말아야 할 잘못된 타입을 집어넣어도 오류가 생기지 않기 때문에 버그도 많아지고 디버깅도 힘들어진다. 함수나 클래스 정의와 같은 많은 부분들이 객체지향 언어와는 상당히 다르기 때문에 이 역시 사용을 까다롭게 하고 버그를 낳는 원인이 된다. 자바스크립트는 콜백 함수를 많이 쓰기 때문에 함수 매개변수로 또다른 함수가 들어가고, 이 함수의 매개변수로도 또 다른 함수가 들어가고... 하는 일이 잦은데 이러다 보면 소스 코드를 봐도 도대체 뭘 하는 건지 알아먹기 힘든, 이른바 '콜백 지옥'에 종종 빠지곤 한다. 이러한 단점을 극복하고 변수에 타입을 부여하여 변수에 값을 넣을 때 타입 체크를 할 수 있게 하거나<ref>이름에 '타입'이 들어가 있을 정도로 이 점을 강조한다.</ref>, 클래스 정의를 좀 더 객체지향형 프로그래밍 언어처럼 하거나 콜백 함수 사용도 좀 더 가독성을 높이고 해서 [[자바스크립트]]의 단점을 보완하고 개발자가 좀 더 편리하게 프로그래밍을 할 수 있도록 돕는 것이 타입스크립트의 목적이다. 즉 성능보다는 짜기 쉽고 알아보기 쉬운 코드를 작성함으로써 생산성을 높이는 것을 목적으로 한다고 볼 수 있다.


타입스크립트가 잘 나가게 된 계기는 아이러니하게도 [[구글]]. 자사에서 개발하는 웹 프론트엔드 프레임워크인 [[앵귤러]]가 2.0부터 타입스크립트를 사용한 것이 큰 계기가 되었다. 사실 [[구글]]도 다트(Dart)라는 [[자바스크립트]]의 대체제를 밀었지만 거의 망하는 분위기로 가고 있는데, 대신 요즘은 타입스크립트를 미는 분위기다.[[구글]]의 공식 내부 개발 언어<ref>[[C]],[[ C++]], [[자바]], [[파이썬]], [[Go]], [[자바스크립트]]와 같은 언어들이 있다.</ref>로도 지정되어 있다.
타입스크립트가 잘 나가게 된 계기는 아이러니하게도 [[구글]]. 자사에서 개발하는 웹 프론트엔드 프레임워크인 [[앵귤러]]가 2.0부터 타입스크립트를 사용한 것이 큰 계기가 되었다. 사실 [[구글]]도 다트(Dart)라는 [[자바스크립트]]의 대체제를 밀었지만 거의 망하는 분위기로 가고 있는데, 대신 요즘은 타입스크립트를 미는 분위기다.[[구글]]의 공식 내부 개발 언어<ref>[[C]],[[ C++]], [[자바]], [[파이썬]], [[Go]], [[자바스크립트]]와 같은 언어들이 있다.</ref>로도 지정되어 있다.


{{각주}}
{{각주}}

2017년 8월 6일 (일) 09:51 판

TypeScript.

마이크로소프트가 개발하고 배포, 관리하는 프로그래밍 언어. 자바스크립트와 호환되며, 자바스크립트가 가진 단점들을 보완하기 위해서 만들었다. 이런 종류의 언어로는 커피스크립트와 같은 것들이 있지만 지금은 타입스크립트가 가장 잘 나가는 분위기. 아직까지는 웹 브라우저에서 직접 타입스크립트를 지원하고 있지 않기 때문에 컴파일 및 링크 과정을 거쳐서 자바스크립트로 변환되어 쓰인다. 물론 앞으로 타입스크립트의 사용이 많아지면 웹 브라우저들이 직접 지원할 수도 있겠지만. 자바스크립트를 쓸 수 있는 곳이라면 어디든지 타입스크립트도 쓸 수 있다. 예를 들어 Node.js[1]나 아파치 코르도바, 리액트 네이티브 같은 데에서도 얼마든지 쓸 수 있다. 물론 자바스크립트로 컴파일하는 작업은 필요하다.

자바스크립트는 그 문법이 간단하기 때문이 진입장벽이 낮은 프로그램이지만 고급 기능을 구현할 때에는 오히려 난점이 많다. 예를 들어 변수에 아무 타입이나 넣어도 되는 특징은 초보자들에는 쉬워 보이지만 그 변수에 넣지 말아야 할 잘못된 타입을 집어넣어도 오류가 생기지 않기 때문에 버그도 많아지고 디버깅도 힘들어진다. 함수나 클래스 정의와 같은 많은 부분들이 객체지향 언어와는 상당히 다르기 때문에 이 역시 사용을 까다롭게 하고 버그를 낳는 원인이 된다. 자바스크립트는 콜백 함수를 많이 쓰기 때문에 함수 매개변수로 또다른 함수가 들어가고, 이 함수의 매개변수로도 또 다른 함수가 들어가고... 하는 일이 잦은데 이러다 보면 소스 코드를 봐도 도대체 뭘 하는 건지 알아먹기 힘든, 이른바 '콜백 지옥'에 종종 빠지곤 한다. 이러한 단점을 극복하고 변수에 타입을 부여하여 변수에 값을 넣을 때 타입 체크를 할 수 있게 하거나[2], 클래스 정의를 좀 더 객체지향형 프로그래밍 언어처럼 하거나 콜백 함수 사용도 좀 더 가독성을 높이고 해서 자바스크립트의 단점을 보완하고 개발자가 좀 더 편리하게 프로그래밍을 할 수 있도록 돕는 것이 타입스크립트의 목적이다. 즉 성능보다는 짜기 쉽고 알아보기 쉬운 코드를 작성함으로써 생산성을 높이는 것을 목적으로 한다고 볼 수 있다.

타입스크립트가 잘 나가게 된 계기는 아이러니하게도 구글. 자사에서 개발하는 웹 프론트엔드 프레임워크인 앵귤러가 2.0부터 타입스크립트를 사용한 것이 큰 계기가 되었다. 사실 구글도 다트(Dart)라는 자바스크립트의 대체제를 밀었지만 거의 망하는 분위기로 가고 있는데, 대신 요즘은 타입스크립트를 미는 분위기다.구글의 공식 내부 개발 언어[3]로도 지정되어 있다.

각주

  1. 타입스크립트를 쓰려면 먼저 Node.js를 설치하고 패키지 관리자인 npm으로 설치하는 게 좋다. 아니면 비주얼 스튜디오를 설치해서 쓰는 방법도 있다. 비주얼 스튜디오마이크로소프트 것이니 지원을 안 할 리가...
  2. 이름에 '타입'이 들어가 있을 정도로 이 점을 강조한다.
  3. C,C++, 자바, 파이썬, Go, 자바스크립트와 같은 언어들이 있다.