TypeScript는 사용하는 언어 그룹 중 하나입니다. 자바 스크립트 실행 환경으로 런타임 : .TS 형식을 포함하는 파일은 일반 JavaScript로 컴파일되어 브라우저에서 실행할 수 있습니다.
Jeremy Ashkenas는 먼저 CoffeiScript 언어 로이 개념을 인기로 만들었지만 슬프게도, 비교적 간략한 구문은 C # 또는 Visual Basic에 익숙한 개발자를 배우기가 어려웠습니다.
Microsoft가 Web 2.0 기술로 확장되면 Jeremy Ashkenas에서 영감을 얻기로 선택했습니다. Visual Studio의 기능으로 인해 개발자는 다양한 언어 확장 프로그램에서 쉽게 해킹 할 수 있습니다.
TypeScript는 정적 타이핑에만 국한되지 않습니다. 또한 웹에서 객체 지향 프로그래밍 패러다임을 시뮬레이트 할 수있는 다양한 고급 기능이 제공됩니다. 이 짧은 가이드는 몇 가지 주요 기능을 통해 가져갑니다. 언어가 당신에게 항소하는 경우, 더 많은 정보를 즉시 배울 수 있습니다.
Linux 또는 MacOS에서 Typescript를 사용할 수도 있지만 Microsoft의 공식 IDE에 스틱 할 것입니다. Visual Studio 2017의 무료 커뮤니티 버전 다운로드 Microsoft, 여기 및 배포 중에 ASP.NET 페이로드를 표시하십시오.
Typescript의 빠른 릴리스 케이던스로 인해 Visual Studio는 SDK 모듈로 확장되어야하며 이는 다운로드 할 수 있습니다. Microsoft 사이트는 여기에 있습니다 ...에 표준 Windows 응용 프로그램 인 것처럼 설치 프로그램을 실행하기 만하면됩니다.
SDK가 Visual Studio 설치를 업그레이드하는 경우 SDK는 Microsoft가 아니 었습니다. 실제 TSC 컴파일러가 명령 줄에 추가되지 않습니다. 이 문제는 명령 줄에서 node.js의 NPM 패키지 관리자를 사용하여 해결됩니다.
PS C : \ Users \ Tamha \ Downloads & gt; NPM 설치 -g Typescript
C : \ Users \ Tamha \ AppData \ Roaming \ NPM \ TSC - & Gt; C : \ Users \ Tamha \ AppData \ Roaming \ NPM \ Node_modules \ Typescript \ Bin \ TSC
C : \ Users \ Tamha \ AppData \ Roaming \ NPM \ TSServer - & gt; C : \ Users \ Tamha \ AppData \ Roaming \ npm \ node_modules \ typescript \ bin \ tsserver
C : \ Users \ Tamha \ AppData \ Roaming \ npm
Visual Studio는 솔루션 중심 과정에서 일할 것으로 예상합니다. 흥미 롭는 동안 이것은 우리의 요구에 이상적이었습니다. 대신 Worker.ts라는 파일을 만들고 파일 시스템의 편리한 위치에 놓습니다. Visual Studio로 드래그하여 툴바 안에 드래그하여 맨 위에 놓습니다. 그런 다음 다음 코드를 포함하도록 내용을 수정하십시오.
함수 sayoi () {
경고 ( "OI!");
}
sayoi ();
도입에서 언급했듯이 .TS 파일은 자체적으로 많이 할 수 없습니다. 이로 인해 동일한 폴더에 있어야하는 index.html이라는 파일을 만드는 것으로 진행하십시오. 그런 다음이 단계를 함께 표시하는 해골 코드를 추가하십시오. 컴파일러의 출력을로드하고 다른 비트의 JavaScript 인 것처럼 실행합니다.
& lt; html & gt;
& lt; head & gt;
& lt; script src = "worker.js"& gt; & lt; / script & gt;
& lt; / head & gt;
& lt; body & gt; & lt; / body & gt;
& lt; / html & gt;
다음 단계는 .TS 파일을 수동으로 다시 컴파일하는 것입니다. PowerShell을 열고 TSC 명령과 입력 파일의 이름을 입력하십시오. 기본적으로 출력 파일은 기본 파일 이름을 공유하지만 .TS 대신 .js의 확장자가 있습니다. 마지막으로, 선택한 브라우저에서 index.html 파일을 열어 메시지 상자의 모양을 증명하십시오.
PS C : \ Users \ Tamha \ Downloads & gt; TSC. \ Worker.TS
지금까지 TypeScript는보다 복잡한 JavaScript 환경으로 작용하는 것보다 조금 더 많은 것을 수행했습니다. 다음 단계는 정적 타이핑을위한 지원을 활성화하는 것을 포함합니다. 컴파일러가 매개 변수의 정적 분석을 수행하여 잘못된 값을 유지할 수 있습니다. 이를 위해 일련의 유형이 필요합니다. 기본 유형은 위의 표에 나열되어 있지만 클래스는 나중에 설명합니다.
TypeScript 변수 유형 지정 변수 이름 뒤에 'A :'를 통해 이루어집니다. 숫자를 가져 와서 대신 문자열을 전달할 수 있도록 OI 함수를 수정하십시오. 마지막으로 TSC 컴파일러를 다시 한 번 다시 시작하여 위의 스크린 샷에 표시된 오류 메시지에 눈을 뜨게하십시오. Visual Studio는 덧붙입니다. 문제의 라인을 강조 표시합니다.
함수 sayoi (whattosay : number) {
경고 (Whattosay);
}
sayoi ( "hello");
JavaScript는 프로토 타이핑을 통해 객체 오리엔테이션을 구현합니다 : .NET 및 C / C ++ 세계에서 드물지 않는 코드 스타일. TypeScript는 클래스 생성을 허용 함으로써이 문제를 해결합니다.이 단계를 수행하는 스 니펫에 표시된 프로세스입니다.
수업 상상해 보면 {
Public MyResult : 번호;
공개 MYA : 번호;
Public MYB : 번호;
생성자 (_A : number, _b : number)
{
이 .myResult = _A + _B;
이명 = _A;
}
}
일반적으로 공개 속성은 프로그램의 요소가 외부에서 액세스 할 수 있도록 선언하는 데 사용됩니다. 생성자 매개 변수로 사용될 때 Typesscript 컴파일러에 동일한 이름의 로컬 필드를 만들도록 지시합니다.
수업 상상해 보면 {
Public MyResult : 번호;
// public mya : 번호;
생성자 (public mya : number, public _b : number)
{
이 .myResult = mya + _b;
이 = MYA;
}
}
MyResult 및 MyA에 저장된 값에 액세스하고 화면에 출력하는 메소드를 제공하여 예제 클래스를 확장하십시오. 마지막으로 새 매개 변수는 클래스의 인스턴스를 만드는 데 사용됩니다.이 메소드를 호출하는 데 사용됩니다.
수업 상상해 보면 {
Public MyResult : 번호;
...에 ...에 ...에
Public Sayomething () : void {
경고 (이 .myResult);
}
}
myimagine : 상상 = 새로운 상상 (2, 2);
myimagine.Saysomething ();
TypeScript의 언어 디자인은 개발자를 최대한 많은 노력으로 저장하기위한 것입니다. 하나의 멋진 기능은 표시된 바로 가기를 사용하여 생성 된 매개 변수 자동 인구입니다.
수업 상상해 보면 {
Public MyResult : 번호;
생성자 (public mya : number, public myb : number)
{
이 .myResult = mya + myb;
}
Public Sayomething () : void {
경고 (이명 + ""+ this.myb);
}
}
객체 지향 프로그래밍의 핵심 교리 중 하나는 서로 맨 위에 클래스를 기반으로하는 수업을 포함합니다. 그런 다음 파생 클래스는 기본 클래스의 내용을 무시할 수 있으므로 유연하게 조정 가능한 클래스 계층 구조로 이어질 수 있습니다.
클래스 미래가 상상해보십시오
{
Public Sayomething () : void {
console.log (this.mya);
}
}
위의 코드 스 니펫은 미래라는 하위 요소로 상상의 클래스를 확장했습니다. 미래는 그 말도 끄는 방법이 더욱 진화하는 것에서 상상과 다르며, 브라우저의 명령 줄에 메시지를 방출합니다.
myimagine : 상상화 = 새로운 미래 (2, 2);
myimagine.saysomething ();
MyFuture : 미래 = 새로운 미래 (9, 9);
myfuture.saysomething ();
이를 통해 실제 코드를 테스트 할 수 있습니다. 실행되면 브라우저 콘솔에는 향후 두 가지 호출이 포함됩니다. 고급 클래스는 Imagine 객체로 호출 할 때도 속성을 유지합니다.
공개 수정 자와 함께 회원 변수를 노출하는 것은 인기가 없습니다. 결국 사용자가 변수의 내용으로 수행하는 사용자를 대부분의 제어합니다. Typescript 접근자를 사용하면 전통적인 OOP와 비슷한 패션 에서이 문제를 해결할 수 있습니다. 읽기 전용 구성원도 지원되지만이 기능을 사용하려면 ECMAScript5 지원이 필요합니다.
public _mycache : 문자열;
FullCache () 가져 오기 : String {
이를 반환하십시오 ._MyCache;
}
FullCache (Newx : String) {
if (newx == "hello") {
this._mycache = newx;
}
else {
console.log ( "잘못된 데이터!");
}
}
복잡한 상속 계층 구조를 만드는 능력은 개발자가 추상 클래스에서 행운을 시험해 보도록 동기를 부여합니다. Typescript는 또한이 단계와 함께 제공되는 예제이 단계에서는 초록 및 실제 회원이있는 클래스를 만듭니다. 추상 클래스를 인스턴스화하려고하면 컴파일러 오류가 발생합니다.
추상적 인 클래스 상상해 {
Public MyResult : 번호;
추상 sayname () : void;
생성자 (public mya : number, public myb : number) {
이 .myResult = mya + myb;
}
Public Sayomething () : void {
경고 (이명 + ""+ this.myb);
}
}
클래스 미래가 상상해보십시오 {
...에 ...에 ...에
public sayname () {
console.log ( "hello");
}
}
객체 구조가 복잡 해짐에 따라 개발자는 종종 하나의 클래스가 여러 개의 논리를 구현하는 상황을 직면하게합니다. 이 경우 인터페이스는 멋진 해결 방법을 만듭니다.이 예는 무엇을 기대 해야할지 보여줍니다.
인터페이스 DataInterface {
필드 : 번호;
workermethod () : void;
}
위의 클래스의 경우와 마찬가지로 우리가 사용할 수없는 경우 인터페이스가 좋지 않습니다. 다행히도, 구현하는 것은 특별히 어려운 것은 아닙니다 : 인터페이스 작성자가 더욱이 창조의 일부를 선택적으로 선언 할 수 있습니다.
클래스 작업자가 DataInterface {
필드 : 번호;
workermethod () : void {
새 오류를 던지십시오 ( "방법 구현되지 않음");
}
}
Typescript 컴파일러는 엄격한 변수 유효성 검사를 시행합니다. 스토리지 클래스에서 작업 할 때 제네릭스를 사용하면 최종 사용자가 처리 할 유형을 결정할 수 있습니다. 또한 Typescript는 문서에서 가져온 것과 같이 기능과 같은 다른 일반 요소를 허용합니다.
// 일반 기능
함수 ID (arg : number) : 숫자 {
arg 반환;
}
// 일반 등급
Class GenericNumber & lt; T & Gt; {
Zerovalue : T;
추가 : (x : t, y : t) = & gt; 티; }
주 기계 및 유사한 요소는 몇 가지 잘 정의 된 상태를 저장하기 위해 변수를 제한하는 방법이 크게 도움이됩니다. 이것은 Enum 데이터 유형을 사용하여 수행 할 수 있습니다.
enum parserState {
유휴 = 1,
READ0,
Read1
}
수업 상상해보십시오 {
public mystate : parserstate;
생성자 (public mya : number, public myb : number)
{
이 .myState = parserState.idle;
단일 기사에서 Typescript와 같은 언어로 덮는 것은 거의 불가능합니다. 를보세요 TypeScript 사이트의 예제 언어 바인딩에 대해 자세히 알아 보려면.
이 기사는 원래 266 호에 발표되었습니다 웹 디자이너 , Creative Web Design Magazine - 전문 자습서, 최첨단 트렌드 및 무료 자료를 제공합니다. 여기 266을 구입하십시오 또는 웹 디자이너를 구독하십시오 ...에
특별 크리스마스 제안 : Web Designer에 가입에 최대 49 % 할인 당신이나 크리스마스의 친구를 위해. 제한된 제안이므로 빨리 움직입니다 ...
관련 기사:
인간 컴퓨터 상호 작용의 진화에도 불구하고 양식은 여전히 사용자에게 가장 중요한 유형의 ..
Adobe Capture CC는 사진을 찍어 글꼴과 색상을 찾을 수있는 환상적인 앱입니다. 예를 들어, 좋아하는 잡지에서 글꼴이 어떤 글꼴을 사용했는지 궁금..
1858 년부터 Brunel의 Great Eastern Steamship 의이 이미지는 2018 년 봄에 문을 열었던 브리스톨의 새로운 �..
아마도 당신이 글꼴 크기를 위해 상대 단위를 사용해야한다는 것을 들었을 것입니다. 이것은 접근 가능한 웹 디자인을위한 좋은 규칙입니다. 사..