Ferramentas de Visualização de Programas na Compreensão de Funções de Alta-Ordem
Resumo
Existe uma demanda crescente de programação para outras áreas do conhecimento, programação para um público-alvo conhecido como não desenvolvedores que utilizam a programação para solucionar problemas em tarefas como automatização residencial, edição de música, gerenciamento de arquivos, entre outras. Essas atividades estão ligadas à necessidade de organização, transformação e automatização do processamento de dados, originando um novo paradigma conhecido como Centralidade de Dados, onde novas aptidões são o foco desses novos desenvolvedores. As funções de alta ordem tornaram-se ferramentas populares entre não-desenvolvedores e, apesar de sua simplicidade, algumas pesquisas mostram que os alunos ainda têm dificuldade em entendê-las e utilizá-las. Com base nas evidências que suportam o uso de visualizadores de programas para compreensão de código, acreditamos que simular os conceitos inerentes as funções de alta ordem podem contribuir para um melhor entendimento de suas funcionalidades e utilizações.
Referências
Rodrigo Duran, Juha Sorva, and Otto Seppälä. 2021. Rules of Program Behavior. ACM Trans. Comput. Educ. 21, 4, Article 33, 37 pages.
Mark Guzdial. 2019. Computing for Other Disciplines. Cambridge University Press, 584–605.
Shriram Krishnamurthi and Kathi Fisler. 2020. Data-centricity: a challenge and opportunity for computing education. Commun. ACM 63, 8, 24–26.
Shriram Krishnamurthi and Kathi Fisler. 2021. Developing Behavioral Concepts of Higher-Order Functions. In Proceedings of the 17th ACM Conference on International Computing Education Research (Virtual Event, USA) (ICER 2021). Association for Computing Machinery, New York, NY, USA, 306–318.
Elijah Rivera, Shriram Krishnamurthi, and Robert Goldstone. 2022. Plan Composition Using Higher-Order Functions. In Proceedings of the 2022 ACM Conference on International Computing Education Research - Volume 1 (Lugano and Virtual Event, Switzerland) (ICER ’22). Association for Computing Machinery, New York, NY, USA, 84–104.
Juha Sorva. 2013. Notional Machines and Introductory Programming Education. ACM Trans. Comput. Educ. 13, 2, Article 8, 31 pages.
Juha Sorva, Ville Karavirta, and Lauri Malmi. 2013. A Review of Generic Program Visualization Systems for Introductory Programming Education. ACM Trans. Comput. Educ. 13, 4, Article 15, 64 pages.