Tópicos Especiais em Sistemas Web I
Programação avançada em JavaScript, Node JS e React JS
Objetivos
JavaScript é a principal linguagem de programação utilizada na construção do front-end de uma aplicação Web, dando vida ao HTML e CSS. Aparece por trás das tecnologias como ReactJS, Next JS, VueJS, Angular e NodeJS. Uma página web costuma ter mais que conteúdo, estrutura e design. Ela pode ser bastante interativa de acordo com cliques, scrolls, mouseovers e gestos. Grande parte dos tratamentos de eventos em uma página web é feita com o uso do JavaScript.
Começar com JavaScript puro não é difícil. O que se torna complicado é conhecer todo o ecossistema, nomenclatura, frameworks e práticas que fazem parte da rotina do desenvolvimento JavaScript, veja alguns exemplos:
jQuery: durante muito tempo foi a biblioteca mais popular para poder fazer um trabalho que o JavaScript puro precisaria de muitas linhas de código para atingir o mesmo objetivo.
ECMAScript: o nome pode assustar, mas é o oficial da especificação do JavaScript. Conhecer a linguagem com profundidade vai ser um passo importante para você não ficar copiando e colando código sem entender.
Chrome DevTools, HTTP, e ferramentas: entender o protocolo, conhecer bastante o navegador web e saber usar as ferramentas de minificação são também ponto importante.
React, Next JS, Vue e Angular: frameworks para criar páginas que tem aquela cara de aplicações, as chamadas single page applications, dando impressão de que não há grandes mudanças na tela a cada clique e atualização. Aqui empregamos componentes para construir a interface com o usuário usando os frameworks JavaScript.
Node.JS e npm: além do Node.JS ser cada vez mais popular no backend, o npm se tornou essencial por ser um gerenciador de pacotes de ferramentas JavaScript. Na formação Node.JS você vai aprender a utilizá-lo para criar uma API no estilo REST.
GraphQL: é uma linguagem de consulta do Facebook para construir uma API usando JavaScript, claro.
Conhecer com profundidade a linguagem, seu modelo de prototipação, o async, promises e boas práticas são fundamentais. A orientação a objetos e a prototipação também serão fatores importantes.
O Node.js é um ambiente de execução do código JavaScript do lado servidor (server side), que na prática se reflete na possibilidade de criar aplicações standalone (autossuficientes) em uma máquina servidora, sem a necessidade do navegador.
O ReactJS é uma das bibliotecas de JavaScript mais populares para desenvolvimento de aplicativos web ou para dispositivos móveis. Criado pelo Facebook, o React contém uma coleção de trechos de código de JavaScript reutilizáveis chamados componentes, usados para a construção da interface do usuário (UI).
Conteúdo Programático
JS para uso com NodeJS
Estrutura do NodeJS
Módulos do Node
Implementação backend com Node
Introdução ao framework React
Implementação de projeto usando framework React e Node
Bibliografia indicada
Documentação Ofiacial JavaScript (https://developer.mozilla.org/pt-BR/docs/Web/JavaScript)
Livros:
1- JavaScript: O Guia Definitivo
2- Use a cabeça!: programação JavaScript
3- Estruturas de Dados e Algoritmos com JavaScript
4- Lógica de Programação e Algoritmos com JavaScript
5- JavaScript Descomplicado: Programação para a Web, IOT e Dispositivos Móveis
6- JavaScript – Guia do Programador
7- Padrões JavaScript
8- Javascript e Jquery: Desenvolvimento de Interfaces Web Interativas
Avaliações
1ª AVAL (P1): 02/05/24 - 23/07/24
TRABALHO T1 – todas as atividades entregues no período
TRABALHO T2 – prazo final do trabalho prático em grupo: 19/09/24 (entrega via AVA da disciplina, link abaixo)
PROVA FINAL: 03/10/24
Link para acesso o formulário de Cadastro da equipe para Trabalho T2: Clique aqui para acessar!
Arquivos (códigos) das aulas explanativas