JS vs JS · GUI vs "business logic" · Responsabilidade de componentes na webapp

Saturday 1 May 2021

Starts 14:00 PM

Finishes 17:40 PM


Organized by JavaScript vs JavaScript


Venue: Online/Virtual

Address: Online event on your device
8600 Lisboa

Go to this event

About this event

O desenvolvimento de uma interface gráfica (GUI) para uma web app é uma especialidade em si, pelo que envolve um conhecimento aprofundado de tecnologias suplementares como HTML e CSS.

Existem muitos “frameworks” (bibliotecas que impõem certos padrões de desenvolvimento) para criar GUIs, tal do lado do cliente (p.ex. React e Angular) como do lado do servidor (p.ex. Java Server Faces para webapps em Java, e Express com uma “template engine” para webapps em JavaScript).

Em vez de utilizar tais frameworks, um programador também pode limitar-se ao uso de bibliotecas padrão, como p.ex. “HTML web components” para a visualização de objetos JavaScript recebidos de um servidor web.

https://developer.mozilla.org/en-US/docs/Web/Web_Components

········· ········· ········· ········· ········· ········· ········· ········· ········· ·········

À primeira vista, a programação da GUI parece um “after-thought”, algo a fazer após a app estiver pronta, e o programador apenas tem de escolher uma dessas abordagens ou frameworks e programar segundo os seus requisitos. Abracadabra.

Mas a verdade é que o design de uma GUI é um trabalho intensivo e demorado, com resultados muitas vezes inesperados, pela simples razão que o nosso utilizador final é imprevisível no seu comportamento para com a nossa webapp. Em outras palavras, a criação e a escritura do código fonte da nossa GUI é tudo menos rápido e fácil.

Assim, podíamos pensar que um “GUI framework” resolvesse todas as dificuldades no design de uma GUI.

········· ········· ········· ········· ········· ········· ········· ········· ········· ·········

Não obstante, a escolha de um framework não é trivial. Há vários motivos para evitá-los, por motivos que podem ser resumidos como não sendo “future proof” (sustentáveis). Muitos frameworks são fonte de pesadelos de manutenção; pode haver várias causas disso, p.ex. fraca documentação, serem ultrapassados por tecnologias mais “modernas” ou simplesmente serem mal desenvolvidos.

No mundo dos frameworks, há sempre muitas promessas, mas pouca durabilidade.

Programadores de GUIs recorrerem a tecnologias diferentes de programadores de “business logic” (a parte da app que executa no servidor), mas ambos são confrontados com a necessidade de interação entre a GUI e o “business logic”. É isso que os frameworks prometem “facilitar”, dizendo que “nunca tem sido tão fácil” e que “o esforço é quase nulo”.

········· ········· ········· ········· ········· ········· ········· ········· ········· ·········

Felizmente, existem padrões de desenvolvimento que apenas recorrem as tecnologias padrão (JavaScript puro, também conhecido como “Vanilla” JavaScript, HTML e CSS). As tecnologias padrão so hoje suficiente poderosas e facilitam a criação de GUIs, sem ter de recorrer a frameworks.

Em outras palavras, sim, é possível criar GUIs sem recorrer a frameworks que estão na moda, assegurando assim que a sua webapp será mais “future proof”. É isso que codificator.io vai ensinar neste mini-curso, com código fonte limpo, legível e conciso.

O código fonte criado ao vivo neste evento, será partilhado com os participantes na plataforma Github.


This page last updated Thursday 15 April 2021 at 13:20.

Problems? Report an error or inappropriate listing here.

Information displayed here is provided in good faith but we are not responsible for the content of any listing. Sometimes events can be cancelled or changed at short notice. Please check with the venue or organizer before you travel!