Pular para o conteúdo principal

NestJS, Javascript Moderno no Backend

"não é paixão, é amor"

Não sei se é uma questão de amar o "hyppe", ou amar um conceito construído com uma tecnologia. Não é de hoje que o Angular vem chamando a atenção dos desenvolvedores. E até hoje, o único ponto negativo que ouvi por ai foi por pertencer a quem pertence. 

O Angular resolve problemas de maneira elegante, tornando cada arquivo uma obra de arte, e essa estrutura que o querido NestJS apresenta como solução para o desenvolvimento de backends descomplicados com Javascript no Backend.

Até aqui passei por Python, Java, Rust, C# e Javascript;

Cada vez mais vejo consolidado o uso de API RestFull, com variações, principalmente na parte de segurança e autenticação; 

Tanto Java quanto .NET possuem soluções robustas e completas para a construção de APIs para a internet. Mas a partir do surgimento dos containers os cenários vem mudando aos poucos.

Cada vez mais as arquiteturas vem entendendo que o ideal é você ter diversos pedaços de códigos que atuam de forma independente e volátil, assegurados por uma camada de autenticação no nível da comunicação, esse desafio se torna simples na execução e manutenção, mas o desenvolvimento ganha alguns quilômetros a mais de leitura até chegarmos na implementação ideal.

É ai em que eu vejo onde o NestJS atua. Ele entendeu a necessidade dos módulos, ao contrário dos outros frameworks o NestJS utiliza a mesma ideia de módulos trazida pelo Angular, e abraçado pela comunidade.

Esses tornam o re uso de códigos muito mais inteligente e seguro. Além disso o NestJS foi escrito em Typescript, o que nos permite transpilar nossos códigos.

 Ok, Mas qual a vantagem em transpirar um código? 

Ao contrário de um compilador, que escreve o código em uma lógica de processamento, um transpilador trata-se de um interpretador da estrutura do código, que o re-escreve em determinada linguagem através do entendimento do que é cada elemento da linguagem. 

A vantagem da transpilação é que ela torna seu programa universal, sem necessidade em se liberar o fonte de sua aplicação;

Naturalmente o NestJS foi projetado para ser transpilado em Javascript, mas apresenta um bom suporte para execução com ts-node. Indicando forte compatibilidade com RUST, o que pode ser interessante.

Com a abordagem dos módulos, podemos construir uma aplicação monolítica e com micro serviços de forma híbrida; Uma vez em que é possível gerar uma compilação final com parte ou total dos módulos.





Comentários

Postagens mais visitadas deste blog

Serviços no Windows com CMD e Powershell

 Os serviços são processos que são executados independentes de usuários autenticados na maquina. É possível atribuir usuário específico para execução do serviço. No Windows, existe um gerenciador visual do Windows. Neste artigo irei abordar pelo caminho mais técnico. Que é por meio de linha de comando. Explorarei pelo antigo CMD e também como manipular serviços com Powershell também.  // TODO: continuar artigo

Criando um Jogo com WebAssembly

 Para criar um jogo com WebAssembly, você precisará de: Ferramentas: Emscripten: Um compilador que converte código C/C++ para WebAssembly. SDK WebAssembly: Uma biblioteca que fornece APIs para interagir com a plataforma web. Editor de texto: Para escrever o código do seu jogo. Navegador web: Para testar e executar o seu jogo. Processo: Escreva o código do seu jogo em C/C++: Você pode usar qualquer biblioteca de jogos C/C++ que desejar. Compile o código para WebAssembly com o Emscripten: O Emscripten irá gerar um arquivo .wasm e um arquivo JavaScript que interage com o módulo Wasm. Crie uma página HTML que carrega o módulo Wasm e o JavaScript: A página HTML também deve conter o código JavaScript que define a lógica do seu jogo. Teste e execute o seu jogo no navegador web: Verifique se o jogo está funcionando como esperado e faça ajustes no código, se necessário. Exemplo: Aqui está um exemplo simples de um jogo "Pong" criado com WebAssembly: C++ #include <emscripten.h> #i

Quem sou eu?

Sou desenvolvedor de softwares natural de Curitiba. Desenvolvo softwares de dentro do meu quarto, enquanto escuto alguma musica inspiradora. A tarde provavelmente devo estar em algum escritório fazendo alguma função, se não, gostaria de estar andando de bicicleta pelas ruas.  Criei esse blog para compartilhar experiências no desenvolvimento de alguns projetos... boa leitura.