A ERA das Single Page Applications

Quem é que é do tempo em que não havia internet?

Quem é que é do tempo em que as páginas Web eram basicamente estáticas, com muito texto e imagens sem grandes estilos associados?

A resposta é: Grande parte de nós!

A internet tem vindo a mudar nos últimos tempos, a evolução tecnológica é quase que diária, novos navegadores e novas tecnologias surgiram e se nós não estivermos a par e não conseguirmos acompanhar caímos em esquecimento e ficamos para trás.

Hoje em dia os utilizadores das aplicações web pretendem cada vez mais aplicações fluídas, dinâmicas, ricas e com tempos de resposta rápidos. Além disso, cada vez mais se vê os utilizadores desta época a usarem dispositivos móveis tais como Iphone, Ipads, Surfaces, entre outros, obrigando a que as aplicações sejam suportadas em diferentes dispositivos e com diferentes resoluções de ecrã. Frequentemente os utilizadores pretendem aplicações web que permaneçam numa só página, como se de uma aplicação desktop se tratasse mas a correr num browser, obrigando assim a ter grande parte do seu código do lado do cliente, em Javascript. Refiro-me às conhecidas Single Page Applications também designadas pelo acrónimo SPA’s.

Atualmente grandes empresas como a Foursquare, Google Grive, Trello, Linkedin, entre outras, usam este modelo sendo o Google o pioneiro desta nova tecnologia. Em alguns casos até disponibilizam os API´s para os programadores.

É aqui que surge a necessidade de evoluir o Javascript que conheciamos à 10 anos atrás ou mais. Tornar a linguagem ainda mais orientada a objetos e construir frameworks que nos ajudem a ter o código mais estruturado e organizado com as responsabilidades bem separadas. É assim que nascem frameworks como o Angularjs, Ember ou até bibliotecas como o Typescript, Knockout e o Backbone, entre outras que nos ajudam no desenvolvimento de aplicações com estas exigências. O Javascript deixa de ser aquela linguagem que era vista apenas para dar funcionalidade aos botões de uma página para passar a ganhar poder no seu processamento e na forma de como é executada nos browsers. Por exemplo, o Nodejs que foi uma das tecnologias que apareceu recentemente e que serve tanto como servidor HTTP como executor de aplicações Javascript em desktop.

As SPA’s nem sempre fazem sentido em determinadas aplicações, é necessário analisar o que é pretendido para então se decidir pela implementação de uma SPA ou por uma aplicação de múltiplas páginas. No entanto, mesmo numa aplicação de múltiplas páginas podemos usar aquilo a que eu denomino de Mini SPA’s, que são pequenas SPA’s construídas para cada página. Por exemplo, a biblioteca Knockout é mais do que suficiente para servir esse propósito. No caso de querer desenvolver uma aplicação que seja inteiramente uma SPA poderá usar, por exemplo, o Angular que é uma framework mais robusta, estruturada e organizada.

Nota: A nova versão do ECMAScript não foi aqui referida propositadamente, sendo capítulo para um próximo post.

About Mónica Rodrigues

Licenciada em Engenharia Informática e de computadores pelo ISEL. Experiência em desenvolvimento web nas mais variadas tecnologias, desde HTML5, AngularJs, Asp.Net Web API, Asp.Net MVC, Entity Framework e tantas outras. Gosto igualmente de desenhar soluções de arquitectura, aplicando padrões de desenho. Gosto de participar, entre outros, nos eventos da Microsoft, das comunidades Netponto, Geek Girls Portugal (da qual faço parte da organização em Lisboa) e outras de forma a estar atenda às tecnologias emergentes.

Leave a Reply