Aplicações Web

Na Parte 1 do curso focamos bastante em questões conceituais e fundamentos: vimos o que são processos, threads, streams e, mais importante, o que são e como funcionam sockets e conexões TCP e como eles são a base sobre a qual operam HTTP e a Web. Nesta parte, veremos como aplicações web operam sobre essa base.

Ao contrário da parte anterior, contudo, iniciaremos esta parte do curso de forma mais prática. Neste primeiro contato, mergulharemos imediatamente em uma versão inicial de um pequeno aplicativo web que servirá ao mesmo tempo de exemplo e de exercício. A ideia é proporcionar uma experiência completa que envolva todo o processo de construção de todos os componentes do app, incluindo o design, a implementação das partes, o deploy e a evolução do app – ou seja, mais adiante voltaremos ao mesmo exemplo para explorar diferentes designs, implementações e tecnologias, tanto para facilitar a adição de novas funcionalidades, quanto para melhorar as qualidades internas do sistema (manutenibilidade e eficiência, em particular).

Nosso primeiro app

2019.2: Sistema de Avaliação de Disciplinas

Os requisitos foram apresentados pela professora Raquel em sala de aula. Aqui apresento apenas a especificação do app em linhas gerais, incluindo a API REST e os requisitos para o frontend.

Este semestre construiremos um pequeno Sistema de Avaliação de e Discussão sobre as Disciplinas de Cursos Universitários. A ideia é que o app tenha uma interface semelhante a uma rede social. O app deve ter um perfil para cada disciplina ministrada em que os estudantes podem fazer comentários e avaliações.

A estratégia de desenvolvimento é criar sucessivas versões, partindo de uma extremamente simplificada, evoluindo-a gradativamente, incorporando novas funcionalidades ou ajustando seu funcionamento. Acompanhe abaixo, as etapas realizadas até agora. Em cada etapa, você verá exemplos de design, de codificação e fará exercícios.