Ensinando Teoria da Computação com Jupyter Notebook

  • Davi R. Vasconcelos UFC
  • Paulo T. Guerra UFC

Resumo


Teoria da Computação faz parte do conjunto de conteúdos curriculares de formação básica de cursos de Computação. Este trabalho tem como objetivo apresentar os documentos interativos, Jupyter Notebooks, que foram desenvolvidos e compartilhados pelo Google Colab para o ensino da disciplina de Teoria da Computação. Apresentamos o contexto em que eles foram utilizados, bem como o resultado da avaliação de seu uso como ferramenta auxiliar no processo de ensino-aprendizagem nas disciplinas de Teoria da Computação ofertadas para os cursos de graduação e de mestrado em Ciência da Computação do Campus de Quixadá da Universidade Federal do Ceará.

Referências

Almeida, A., Almeida, M., Alves, J., Moreira, N., and Reis, R. (2009). Fado and guitar: tools for automata manipulation and visualization. In International Conference on Implementation and Application of Automata, pages 65–74. Springer.

BRASIL, Ministério da Educação, C. N. E. (2012). Parecer CNE/CES nº 136/2012. Diário Oficial da União.

Carnielli, W. and Epstein, R. (2005). Computabilidade, funções computáveis, lógica e os fundamentos da matemática. Editora da UNESP.

Diverio, T. and Menezes, P. (2009). Teoria da Computação 3.Ed. UFRGS: Máquinas Universais e Computabilidade. Grupo A Bookman.

Fouh, E., Karavirta, V., Breakiron, D. A., Hamouda, S., Hall, S., Naps, T. L., and Shaffer, C. A. (2014). Design and architecture of an interactive etextbook – the opendsa system. Science of Computer Programming, 88:22–40. Software Development Concerns in the e-Learning Domain.

Gopalakrishnan, G. and Neff, R. (2021). Automata and computability education via jove. SIGCSE ’21, page 1374, New York, NY, USA. Association for Computing Machinery.

Hopcroft, J., Motwani, R., and Ullman, J. (2007). Introduction to Automata Theory, Languages, and Computation. Introduction to Automata Theory, Languages, and Computation. Pearson/Addison Wesley.

Martin, J. (2010). Introduction to Languages and the Theory of Computation. McGraw-Hill Education.

Mohammed, M., Rodger, S. H., and Shaffer, C. A. (2019). Using programmed instruction to help students engage with etextbook content. In Sosnovsky, S. A., Brusilovsky, P., Baraniuk, R. G., Agrawal, R., and Lan, A. S., editors, Proceedings of the First Workshop on Intelligent Textbooks co-located with 20th International Conference on Artificial Intelligence in Education (AIED 2019), Chicago, IL, USA, June 25, 2019, volume 2384 of CEUR Workshop Proceedings, pages 135–145. CEUR-WS.org.

Oliveira, P. V. N. and Uchôa, J. Q. (2009). LFA Virtual – Uma ferramenta de ensino para a disciplina de linguagens formais e autômatos. PhD thesis, Universidade Federal de Lavras.

Rodger, S. H. and Finley, T. W. (2006). JFLAP: an interactive formal languages and automata package. Jones & Bartlett Learning.

Sipser, M. and de Queiroz, R. (2007). Introdução à teoria da computação. Thomson Learning.

Skinner, B. (1986). Programmed instruction revisited. Phi Delta Kappan, 68(2):103–10.

VanderPlas, J. (2016). Python data science handbook: Essential tools for working with data. O’Reilly Media, Inc.

Vieira, L. F. M., Vieira, M. A. M., and Vieira, N. J. (2003). Language emulator, uma ferramenta de auxílio no ensino de teoria da computação. In XIII Workshop sobre Educação em Computação–XXV Congresso da Sociedade Brasileira de Computação.
Publicado
06/08/2023
VASCONCELOS, Davi R.; GUERRA, Paulo T.. Ensinando Teoria da Computação com Jupyter Notebook. In: WORKSHOP SOBRE EDUCAÇÃO EM COMPUTAÇÃO (WEI), 31. , 2023, João Pessoa/PB. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2023 . p. 9-19. ISSN 2595-6175. DOI: https://doi.org/10.5753/wei.2023.229496.