Dissertação

Ctutor EVALUATED

CTutor é uma ferramenta de visualização de programas para a linguagem C. O CTutor permite melhorar a compreensão dos vários elementos da linguagem C, tais como tipos de variáveis, argumentos de funções e os seus outputs. Pretendendo facilitar o processo de aprendizagem desta linguagem. Uma ferramenta de visualização de programas é útil como complemento do processo de aprendizagem de uma nova linguagem de programação. Através das visualizações disponibilizadas, consegue-se substituir os desenhos ou as imagens feitas em diapositivos pelos professores. No caso de C, estas imagens são normalmente usadas para explicar algoritmos de ordenação, ponteiros ou estruturas. Com o CTutor, as visualizações são construídas a partir do código-fonte, desenvolvido pelo estudante ou pelo professor. Este código-fonte é executado pelo backend do CTutor (ambiente de execução), por sua vez as visualizações são mostradas no frontend (visualizador). Para além de afectar os estudantes e os professores ao longo do processo de aprendizagem, o CTutor foi desenvolvido de maneira diferente das demais ferramentas de visualização. As ferramentas de visualização são compostas por um ambiente de execução e um visualizador, em que estes dois componentes estão fortemente ligados, dificultando assim o desenvolvimento de novas ferramentas que reutilizem um destes componentes. Usando esta mudança arquitectural demonstrada através do CTutor, é possível usar o ambiente de execução do CTutor e construir outro visualizador, resultando numa nova ferramenta, e adaptando-o às necessidades dos estudantes. Por outro lado, pode-se modificar o ambiente de execução para outra linguagem e usar o visualizador já disponibilizado, resultando também numa nova ferramenta.
Aprendizagem, Visualização, Estudantes, Linguagem C, Arquitectura

Novembro 14, 2014, 11:0

Publicação

Obra sujeita a Direitos de Autor

Orientação

ORIENTADOR

João Nuno De Oliveira e Silva

Departamento de Engenharia Electrotécnica e de Computadores (DEEC)

Professor Auxiliar