Conteúdos da cadeira

Laboratório de Desenho e Teste de Software

Git e Gradle, Java orientado a objetos, SOLID, testes, UML, refactoring, padrões e MVC no projeto integrador.

Markdown

Perguntar sobre esta página

ChatGPTClaudePerplexityGeminiCopiar e abrir

Envia o link e pede à IA para ler a página. No Gemini, cola a pergunta copiada.

Ver pergunta para copiar
Nesta página

LDTS é a cadeira onde o código que escreves começa a parecer software a sério: versionado, testado, desenhado com princípios e organizado para crescer. Vens de Programação com C++ na bagagem; aqui a linguagem de trabalho é Java e o objetivo é outro. Já não basta o programa correr, é preciso que outro programador o perceba, que os testes o protejam e que uma mudança não parta tudo o resto. O projeto integrador das últimas semanas, um jogo em equipa de três, é onde estas peças se juntam.

Como está organizado

O percurso segue a ordem das páginas. Controlo de versões começa pelo Git e pelo Gradle, porque tudo o resto vive dentro de um repositório com builds repetíveis. Java orientado a objetos traduz o que sabes de C++ para Java, com ênfase em composição em vez de herança. Depois vêm as duas ferramentas de qualidade: princípios SOLID para desenhar classes e testes unitários com JUnit e Mockito para as proteger.

A segunda metade é desenho e organização. Diagramas UML ensina a ler e a esboçar classes, sequências e comunicações antes de codificar. Code smells e refactoring mostra como reconhecer código doente e o curar sem mudar comportamento. Padrões de desenho aplica os dez padrões do programa a problemas do jogo. Por fim, MVC e projeto integrador junta tudo no padrão Model-View-Controller e na organização do projeto.

Como estudar

LDTS aprende-se a fazer, não a ler. Em cada página, abre o IntelliJ e executa o exemplo: cria o branch, corre o teste, desenha o diagrama à mão antes de ver a solução. Nas sete semanas de exercícios, resolve cada ficha no próprio dia, porque cada semana usa a anterior. No projeto, escreve os testes à medida que crias as classes; testes escritos no fim, à pressa, não apanham os erros que interessam.

Avaliação

A avaliação é distribuída e não tem exame final. Conta 5 por cento de participação nas práticas, 55 por cento do projeto integrado em grupos de três e 40 por cento de duas provas individuais em computador, com mínimos por componente. As regras exatas, incluindo mínimos e acesso a recurso, mudam de ano para ano: confirma na ficha da unidade curricular no SIGARRA e na página da disciplina no Moodle.

Fontes e âmbito

Estas páginas seguem o âmbito da unidade curricular de Laboratório de Desenho e Teste de Software (L.EIC014) do 2.º ano, 1.º semestre da LEIC, ocorrência de 2025/26: Git, Gradle, Java, princípios de orientação a objetos, SOLID, testes unitários com JUnit e Mockito, UML, code smells, refactoring, padrões de desenho e MVC. O software de trabalho é o IntelliJ e a bibliografia obrigatória é Thinking in Java e Learning UML 2.0.

Material oficial da FEUP:

  • Ficha da unidade curricular de LDTS, ocorrência de 2025/26, com objetivos, programa, bibliografia e avaliação (consultada em setembro de 2026): SIGARRA.
Ver o ficheiro no GitHub

À tua maneira

Escolhe como preferes ler.

Aparência
Ajustar cores e largura
Cor de destaque do tema FEUP
Tipo de letra

Álgebra, lógica e uma ideia de cada vez.

As tuas escolhas ficam guardadas neste navegador.

Pesquisar

Escreve para pesquisar em todo o site.

para escolher · Enter para abrir · Esc para fechar

Atalhos de teclado

Clica numa tecla para a mudar. Esc cancela. Backspace desativa.

PesquisarCtrl / Cmd K

Os atalhos não interferem enquanto escreves. Tab e Enter funcionam sempre.