JoaoSousa

TypeScript: o Javascript moderno para criação de aplicações

O Javascript (JS) tem vindo a tornar-se uma linguagem de programação cada vez mais popular, sendo neste momento usada para desenvolver aplicações standalone, APIs, aplicações Web, entre outras.

Apesar da sua grande versatilidade, o JS é diferente de outras linguagens muito utilizadas, como Java e C#. Esta linguagem não suporta o uso de tipos genéricos, interfaces e não é StrongTyped, características fundamentais para muitos programadores.

O livro que apresentamos nesta edição dá-nos a conhecer o TypeScript (TS), uma linguagem/superset do JS, com o objetivo de aproximar linguagens como Java e C# ao Javascript, ao disponibilizar algumas características presentes nestas linguagens. O livro intitulado TypeScript, o JavaScript Moderno para Criação de Aplicações de Luís Abreu, editado pela FCA, permite ao leitor iniciar ou aprofundar o seu estudo em relação ao TS, dividindo-se três partes principais: instalação e configuração; descrição técnica; projecto exemplo.

A primeira parte do livro aborda a configuração necessária para compilarmos o TypeScript para JS utilizando packages disponíveis para NodeJS, bem como a configuração de ferramentas de debug no Visual Studio Code. Embora existam outros IDEs que suportam a linguagem TS, o livro explora apenas o Visual Studio Code, sem referenciar outros, como por exemplo o WebStorm.

Todas as configurações necessárias são muito bem explicadas, permitindo a leitores sem qualquer experiência em JS ou TS reproduzi-las sem problemas.

A segunda e principal parte deste livro, aborda a linguagem TS de forma técnica, explicando a sua semântica, sintaxe, bem como as capacidades de validação e controlo realizadas aquando da compilação. São apresentados os seguintes temas: tipos básicos; funções; interfaces; classes; outros tipos; módulos.

De uma forma muito concisa e com exemplos práticos, toda esta parte do livro demonstra o grande potencial do TS, principalmente a nível de prevenção de erros e aplicações técnicas da linguagem. Analisa, ainda, muitas das características próprias desta linguagem que, por exemplo, o JS não suporta. Algumas dessas características são a capacidade de utilização de tipos genéricos, interfaces e StrongType.

Na minha opinião, enquanto programador Java com conhecimentos pouco aprofundados em JS, penso que alguns utilizadores menos experientes poderão ter dificuldades em entender alguns conceitos adjacentes ao JS, pois não são explicados no contexto, apenas apresentados sucintamente.

Outro aspecto que gostaria de ter visto abordado neste livro é o “Async Await”, conceito familiar para programadores C# e JS, que já está disponível no Typescript desde a versão 1.7.

A terceira, e última, parte lança o desafio de criar um projecto, utilizando o conhecimento obtido na leitura deste livro.

Considero uma iniciativa positiva por parte do autor em criar este desafio aos leitores, pois desta forma permite consolidar os conhecimentos, aspecto que deveria estar mais presente em livros técnicos.

Apesar do TypeScript, devido à utilização de Angular em alguns projectos pessoais, não ser desconhecido para mim, achei este livro muito completo e útil para programadores com ou sem experiência em TypeScript.

Parabéns ao autor Luís Abreu e à Editora FCA por este excelente livro e por terem abordado o TypeScript que, na minha opinião, vem conquistar programadores de Java, C# e PHP e incentivar a utilização do TypeScript em projectos.