Inovação e Tecnologia

Javascript ou JS, é uma linguagem de programação leve, aplicada principalmente no desenvolvimento web, lugar onde ganhou popularidade com ênfase no desenvolvimento front-end. Juntando-se às linguagens de marcação HTML e CSS, o Javascript completa a trindade do ecossistema básico da parte “visual” de uma aplicação (site ou aplicativo).  

Mas, nem tudo são flores. Neste artigo, vamos entender as vulnerabilidades que o Javascript pode nos trazer e como o Typescript entra na jogada para nos salvar nessas situações.

Antes de tudo, devemos lembrar da importância de aprender o Javascript. Atualmente, ela é considerada a linguagem de programação mais usada por desenvolvedores no mundo, segundo uma pesquisa realizada pelo Stack Overflow no ano de 2020.

Como dito anteriormente, o Javascript atua com maior ênfase no desenvolvimento front-end, porém, com seu crescimento, a linguagem começou a ser explorada no back-end através do famoso framework Node.js. 

Devido sua alta escalabilidade, é utilizado por gigantes do mercado como, por exemplo: Netflix e LinkedIn, e não para por aí! 

O Javascript também conquistou seu espaço no mundo do banco de dados com o banco não-relacional MongoDB, em que também é utilizado por gigantes da tecnologia como: Google, Facebook e até a Adobe.

Desvantagens do Javascript

1. Frameworks que se tornam obsoletos rapidamente

Com a facilidade do uso da ferramenta e sua soberania no desenvolvimento web, o Javascript conta com milhares de frameworks publicados em sua comunidade web. Uma variedade desnecessária em que muitos não conseguem manter o suporte necessário para aplicações de grande escala e acabam caindo no esquecimento. 

Caso o projeto esteja utilizando um desses frameworks obsoletos, provavelmente a equipe ficará presa a um código legado, ou demandará um esforço maior de toda a equipe para fazer uma migração de framework às pressas, para não comprometer a produtividade e o desenvolvimento da aplicação.

2. Incompatibilidade com navegadores 

Esse ponto se torna uma faca de dois gumes. Por um lado a vantagem do Javascript é ser facilmente interpretado por diversos navegadores, porém, por outro, requer que uma equipe de desenvolvimento tenha muita atenção, pois cada navegador possui seu próprio “motor”, o qual realizará a leitura do script do Javascript.

Por exemplo, você pode ter desenvolvido uma nova funcionalidade para seu produto e ter testado em navegadores como Chrome ou Opera, mas ao testar em um navegador como Internet Explorer, poderá enfrentar problemas. 

Assim, é preciso ficar atento à compatibilidade das suas features em diferentes navegadores para evitar problemas de desempenho.

3. Segurança e tipagem

Outra desvantagem do Javascript é a vulnerabilidade a brechas de segurança, principalmente em ataques “cross-site”, isto é, quando um invasor é capaz de obter um acesso a uma página da web e injetar scripts maliciosos. Além disso, podem facilmente plagiar o código-fonte da sua página web.

Exemplo: em uma variável que deve receber um valor do tipo numérico pode receber um valor do tipo string (caracteres) e o Javascript não irá “reclamar” desta ação.

Typescript, o javascript com “esteróides”

Fonte: thenewstack.io

O Typescript ou ts, é um superconjunto, também chamado de superset, feito a partir do Javascript, ou seja, um conjunto de ferramentas que contém o objetivo de escrever código Javascript de forma mais eficiente, segura e dinâmica.

Seu desenvolvimento começou em 2012 pela Microsoft e seu maior destaque é acrescentar ao Javascript mais uma camada de desenvolvimento, o sistema de tipos Typescript.

No exemplo abaixo temos a seguinte função:

Temos uma função que recebe dois parâmetros, tipo numérico: depósito e saldo. 

Perceba que, ao tentar injetar o segundo valor passando entre aspas, ou seja, como um dado do tipo string, o Typescript acusa a mensagem de erro, alertando que o valor esperado era do tipo número, coisa que o Javascript aceitaria e poderia acarretar problemas na tratativa desses dados, no lado do back-end.

Outra vantagem de utilizar o Typescript é o suporte à maioria das bibliotecas e frameworks, ferramentas e bibliotecas do Javascript.

Um dos pioneiros no uso do Typescript é o Angular, framework front-end desenvolvido e mantido pela Google, que começou a utilizar o Typescript a partir da segunda versão, trazendo popularidade ao superset que acabou ganhando suporte de outros gigantes frameworks como Reactjs e Vuejs.

Utilizar o Typescript em seus projetos pode te trazer algumas vantagens como:

  • Feedback de erros de forma rápida e instantânea;
  • Processo de refatoração mais fácil;
  • O Typescript pode ser implementado gradualmente em seu projeto sem problemas de quebrar a aplicação;
  • Ter uma empresa gigante que é a Microsoft lançando novas atualizações para o Typescript mantendo a comunidade desenvolvedora com um superset sólido e confiável.

O TypeScript tem alguma desvantagem?

Adotar o Typescript em seus projetos pode fazer com que a produtividade do time caia em um primeiro momento. 

Não se pode ignorar a curva de aprendizado que o Typescript requer e a camada adicional de tipagem e tratamento de dados.

Afinal de contas devo utilizar Javascript ou Typescript?

É altamente recomendado utilizar o Typescript quando se tratar de grandes projetos que requerem uma complexidade e segurança maior, tornando o código limpo e consistente.

É claro, haverá situações que o Javascript será mais vantajoso como, por exemplo, em pequenos projetos com pouca complexidade.

Aqui na Vsoft utilizamos o Typescript no front-end dos nossos produtos com a premissa de que nossas aplicações se tornam mais seguras, eficientes e consistentes.

Se você ficou interessado em ser parte da nossa equipe, a Vsoft está em constante crescimento. Acompanhe aqui as vagas da Vsoft.

Author

Isaac Souza

Analista de Desenvolvimento de Software

Não perca as nossas atualizações!

Assine para receber a newsletter da Vsoft e fique por dentro do mundo da identificação e tecnologia.

Obrigado! Recebemos sua mensagem!
Oops! Algo deu errado no envio do formulário.
Tente novamente em instantes.

Posts relacionados

Todos os posts
go  top