Se você aprendeu programação orientada a objetos com Java, C, C++ ou C#, e agora programa em JavaScript, deve ter sentido uma pequena dificuldade pra se adaptar. Se você já se adaptou e já programa em JavaScript há algum tempo o TypeScript é quase inútil pra você, exceto se você desejar usar Angular2, pois é seu framework padrão.
TypeScript
TypeScript é desenvolvida pela Microsoft, e é uma linguagem de desenvolvimento JavaScript em larga escala. Nela você pode escrever programas com estrutura de orientação a objetos, com interfaces, classe, métodos e atributos com nível de acesso, etc. Além de ter variáveis fortemente tipadas. O TypeScript pega o código escrito com a estrutura dele e transforma em JavaScript puro, para assim ser executado pelo browser, qualquer um deles, Node.js e por engines JavaScript que suportem ECMAScript 3.
Instalando
Se você usa NPM instalar, TypeScript é bem simples
$ npm install -g typescript
Você também pode instalar um plugin na sua IDE ou editor de texto como noSublime, Visual Studio, Eclipse, etc.
Usando
Vamos ao que interessa: como usar o TypeScript?
* Estou considerando que você instalou via npm e que vai usar por linha de comando, então vamos lá:
No exemplo a seguir criaremos uma interface e uma classe que a implementa, contendo um método que retorna string. Depois o objeto é instanciado e o método chamado.
1
2
3
4
5
6
7
8
9
10
11
12
13
|
interface Animal{
says() : string;
}
class Cat implements Animal{
says():string{
return “meow”;
}
}
var cat = new Cat();
console.log(cat.says());
|
Salve o arquivo com o nome animal.ts, sempre com a extensão (ts).
Vá para o terminal, bash ou prompt de comando e acesse a pasta de nosso exemplo com o comando cd pasta/do/projeto
E execute.
$ tsc animal.ts
Ele irá gerar um arquivo com o mesmo nome, mas com extensão .js com o conteúdo semelhante a:
1
2
3
4
5
6
7
8
9
10
11
12
|
var Cat = (function () {
function Cat() {
}
Cat.prototype.says = function () {
return “meow”;
};
return Cat;
})();
var cat = new Cat();
console.log(cat.says());
|
Então você pode executar esse arquivo com $ node animal ou adiciona-lo ao html para executar via browser.
Parece pouca coisa né? Mas não pare por aqui, continue…
Playground
Você pode testar códigos TypeScript no Playground, que é um pequeno editor capaz de identificar erros de sintaxe e executar seus códigos TypeScript, convertendo-os para JavaScript. Ele também é capaz de autocompletar seu código mostrando as opções disponíveis.
Tipos de Variáveis
Com TypeScript você pode definir o tipo das variáveis, assim como em linguagens como Java por exemplo.
O caminho para se declarar uma variável é o seguinte:
1
|
var NOME_DA_VARIAVEL : TIPO = VALOR
|
Você pode usar também a keyword let para variáveis limitadas ao escopo no bloco. Ou const para constantes.
Boolean
O tipo mais básico, apenas true/false
1
|
var isDone: boolean = false;
|
Number
Assim como em JavaScript, em TypeScript todos os números são ponto flutuante, assumindo o tipo number. Nele também são aceitos números hexadecimais, decimais literais, binários e octais, veja:
1
2
3
4
|
var decimal: number = 6;
var hex: number = 0xf00d;
var binary: number = 0b1010;
var octal: number = 0o744;
|
String
O tipo string aceita dados do tipo texto, dentro de aspas simples ( ‘ ) ou aspas duplas ( “ ).
1
2
|
var name: string = “bob”;
name = ‘smith’;
|
Você também pode usar tamplate strings, para isso você precisa usar crase (
), e colocar seu texto dentro, e pode usar expressões assim: ${ epressão }:
1
2
3
4
5
|
var name: string = `Gene`;
var age: number = 37;
var sentence: string = `Hello, my name is ${ name }.
I‘ll be ${ age + 1 } years old next month.`
|
Note que a variável sentence recebe um texto com quebra de linha, o que só é possível fazer usando ( ).Array
Existem duas maneiras básicas de se criar arrays em TS, a primeira é a mais comum, utilizando apenas os colchetes [ ] precedidos pelo tipo do array:
1
|
var list: number[] = [1, 2, 3];
|
A segunda, conhecida como generics, usa <> para definir o tipo, ficando mais ou menos assim: Array<tipo>:
1
|
var list: Array<number> = [1, 2, 3];
|
Você ainda pode criar tipos mistos e complexos de arrays, como por exemplo arrays que tem como tipo uma classe, ou seja um array de objetos dessa classe.
1
2
3
4
5
|
//Misto
var x: [string, number];
//Complexo
var myArray:MyClass[] = new Array();
|
Enum
Quem usa C# conhece muito bem esse DataType, que pode ser usado para dar nomes amigáveis a valores numéricos. Ele é geralmente usado para determinar status de alguma coisa, ou coisas semelhantes. Como no exemplo a seguir:
1
2
|
enum Color {Red, Green, Blue};
let c: Color = Color.Green;
|
No exemplo, a variável c vai receber o valor 1, pois Green é a segunda opção da lista, lembrando que a lista é iniciada sempre pelo número 0, a não ser que você mesmo determine o número de cada opção:
1
2
|
enum Color {Red = 1, Green = 2, Blue = 4};
let c: Color = Color.Green;
|
Se você precisar do nome da opção:
1
|
var colorName: string = Color[2];
|
Any
Como o nome sugere, uma variável com o tipo any pode assumir qualquer valor, ou seja é uma variável dinamicamente tipada. Veja:
1
2
3
|
let notSure: any = 4; //é number
notSure = “maybe a string instead”; //agora string
notSure = false; // e agora boolean
|



Nenhum comentário:
Postar um comentário