Compreender o processo de desenvolvimento utilizando liguagens imperativas/procedurais, desenvolvendo uma estrutura de dados genérica com a linguagem de programação C.
git
make
Catch2
valgrind
paradigmas_2024_t1
void Lista_new(Lista* lista, int data_size, void (*free_data)(void*))
void Lista_delete(Lista* lista)
int Lista_isEmpty(Lista* lista)
int Lista_size(Lista* lista)
void Lista_pushFront(Lista* lista, void* valor)
void Lista_pushBack(Lista* lista, void* valor)
int Lista_search(Lista* lista, void* chave, void* dest, int (*cmp)(void*,void*))
void Lista_first(Lista* lista)
void Lista_last(Lista* lista)
int Lista_next(Lista* lista)
void Lista_current(Lista* lista, void* dest)
void Lista_remove(Lista* lista, void* chave, int (*cmp)(void*,void*))
void Lista_insertAfter(Lista* lista, void* dado)
make
, o sistema de testes automatizados o Catch2
e a ferramenta valgrind
.
make
(ou make -k
).make test
.make test_extra
.valgrind
utilize make memtest
.src
podem ser modificados.As tarefas extras são opcionais, e deve ser indicado no pull request se elas foram realizadas.
void Lista_removeCurrent(Lista* lista)
int Lista_previous(Lista* lista)
void Lista_insertBefore(Lista* lista, void* dado)
valgrind
e 0.5 para as tarefas extras caso todas sejam concluídas com sucesso.Um único aluno do grupo de alunos que trabalhou na execução do trabalho deverá criar um pull request contra o repositório original do trabalho. O título do pull request é livre, porém o corpo deve conter os nomes completos de todos os alunos do grupo, e a informação se as tarefas extras foram ou não executadas.
Uma vez criado o pull request ele pode ser atualizado a qualquer momento, até a data limite de entrega.
Na data limite, o pull request receberá um label de AVALIADO, um comentário com o resultado da avaliação, será fechado e não poderá mais ser alterado.
No LEX, todos os alunos do grupo devem inserir, até a data limite, o link para o pull request de entrega do trabalho.
A data máxima de entrega é dia 04 de maio de 2024.
src
podem ser alterados.