Construindo uma aplicação à prova do tempo

Quando iniciamos o desenvolvimento de uma aplicação, ainda no papel, nos deparamos com várias dúvidas e uma delas é  ‘Quais tecnologias utilizar?’. Essa pergunta não é fácil de responder, cada cenário leva a uma (ou muitas!) respostas diferentes. Com a alta volatilidade das tecnologias que vivenciamos atualmente, o essencial para uma aplicação é que ela esteja preparada para evoluir, acompanhando o que há de melhor surgindo no mercado, e para isso, a melhor carta na manga é uma boa arquitetura.

Nesse artigo abordarei um pouco de uma arquitetura na qual trabalhei recentemente e que na minha opinião exemplifica bem a flexibilidade que necessitamos: SOFEA (também conhecida como Thin Server).

Service Oriented Front-End Architecture (ou Arquitetura Front-End Orientada a Serviço) é um padrão de arquitetura que tem como objetivo desacoplar toda a lógica de apresentação de uma aplicação do servidor, ou seja, nenhuma lógica de como mostrar os dados na tela ficará no servidor, deixando a responsabilidade para quem realmente tem o dever de fazer: a aplicação cliente do usuário.

Tradicionalmente o servidor, quando requisitado, costuma reunir todas as informações necessárias (inclusive muitas repetidas) e agrega-las a uma página (htmljsp, …) que é retornada ao browser, que por sua vez necessita parsear todo o conteúdo a cada nova requisição.

d-arqcomum

O Problema desse tipo de arquitetura é o alto grau de dificuldade em evoluir a aplicação, especialmente em uma época onde a cada dia surge uma nova necessidade (como por exemplo, um site mobile ou um app) e para adaptar-se acaba gerando muito retrabalho, engessando todo o processo e deixando-a obsoleta. Continuar lendo