ComFAPOO: Método de Ensino de Programação Orientada à Objetos Baseado em Aprendizagem Significativa e Computação Física
DOI:
https://doi.org/10.5753/rbie.2023.2851Keywords:
Ensino de Programação Orientada a Objetos, Aprendizagem Significativa, Computação Física, AbstraçãoAbstract
Umas das maiores dificuldades dos alunos iniciantes em Programação Orientada a Objetos é o exercício de abstração, algo necessário para a compreensão dos conceitos mais fundamentais. Embora esse paradigma seja ministrado há décadas, ainda é um desafio para o professor encontrar ferramentas e métodos para amparar suas práticas de ensino que sejam efetivas e motivadoras para o aluno. Tendo em vista essa necessidade, este artigo apresenta um método de ensino de programação baseado na teoria da Aprendizagem Significativa e nos recursos da Computação Física, incluindo uma análise de sua aplicação em oficinas de ensino de Programação Orientado a Objetos. O método ComFAPOO (Computação Física para Aprendizagem de Programação Orientada a Objetos) busca auxiliar nas principais dificuldades de alunos iniciantes no ensino paradigma orientado a objetos. A principal estratégia do método é propor uma transição gradual de modelos concretos (componentes eletrônicos) para modelos mais abstratos (código-fonte), que possam interagir por meio da programação, elucidando conceitos abstratos em representações mais tangíveis e representativas. Foram realizadas oficinas com 80 alunos de ensino técnico e superior e os resultados qualitativos e quantitativos dessa aplicação apontam para a efetividade do método e sua viabilidade como instrumento didático no auxílio na compreensão de conceitos fundamentais da Programação Orientado a Objetos.
Downloads
Referências
Astolfi, G., & Junior, D. L. (2015). Investigação sobre conhecimentos prévios de alunos do curso Técnico em Informática a partir da aplicação de organizadores prévios. Aprendizagem Significativa. Revista/Meaningful Learning Review, 15-28. Disponível em [Link]. [GS Search]
Ausubel, D. P. (2003). Aquisição e retenção de conhecimentos: uma perspectiva cognitiva. Lisboa: Plátano, 1. [GS Search]
Berssanette, J. H., & Frencisco, A. C. (2018). Proposta de abordagem prática para o ensino de Programação baseada em Ausubel. In Brazilian Symposium on Computers in Education (Simpósio Brasileiro de Informática na Educação-SBIE) (Vol. 29, No. 1, p. 398). doi: 10.5753/cbie.sbie.2018.398. [GS Search]
Bradley, M. M., & Lang, P. J. (1994). Measuring emotion: the self-assessment manikin and the semantic differential. Journal of behavior therapy and experimental psychiatry, 25(1), 49-59. doi: 10.1016/0005-7916(94)90063-9 . [GS Search]
Brazileiro, R. B. (2013). tAMARINO: uma abordagem visual para prototipagem rápida em computação física/Ricardo Borges Brazileiro (Tese de Mestrado, Universidade Federal de Pernambuco). Disponível em: [Link]. [GS Search]
Bruner, J. S. (1966). Toward a theory of instruction (Vol. 59). Harvard University Press. [GS Search]
Buriticá, Ó. I. T. (2013). Estrategia metodológica para aproximar los paradigmas funcional, estructurado y orientado a objetos en ingeniería de sistemas a partir de aprendizaje significativo. Avances Investigación en Ingeniería, 10(2), 49-63. doi: 10.26507/rei.v12n23.719. [GS Search]
Buriticá, Ó. I. T. (2014). Relaciones de aprendizaje significativo entre dos paradigmas de programación a partir de dos lenguajes de programación. Tecnura, 18(41), 91-102. doi: 10.14483/udistrital.jour.tecnura.2014.3.a07. [GS Search]
Corral, J. M. R., Balcells, A. C., Estévez, A. M., Moreno, G. J., & Ramos, M. J. F. (2014). A game-based approach to the teaching of object-oriented programming languages. Computers & Education, 73, 83-92. doi: 10.1016/j.compedu.2013.12.013. [GS Search]
Decker, R., & Hirshfield, S. (1994). The top 10 reasons why object-oriented programming can't be taught in CS 1. ACM SIGCSE Bulletin, 26(1), 51-55. doi: 10.1145/191033.191054 . [GS Search]
Desportes, K. S. (2018). Physical computing education: Designing for student authorship of values-based learning experiences (Tese de Doutorado, Georgia Institute of Technology). Disponível em: [Link]. [GS Search]
Eckerdal, A., & Thuné, M. (2005). Novice Java programmers' conceptions of" object" and" class", and variation theory. ACM SIGCSE Bulletin, 37(3), 89-93. doi: 10.1145/1151954.1067473. [GS Search]
Fyfe, E. R., McNeil, N. M., Son, J. Y., e Goldstone, R. L. (2014). Concreteness fading in mathematics and science instruction: A systematic review. Educational psychology review, 26(1), 9-25. doi: 10.1007/s10648-014-9249-3. [GS Search]
Fyfe, E. R., & Nathan, M. J. (2019). Making "concreteness fading" more concrete as a theory of instruction for promoting transfer. Educational Review, 71(4), 403-422. doi: 10.1080/00131911.2018.1424116. [GS Search]
Georgantaki, S., & Retalis, S. (2007). Using educational tools for teaching object oriented design and programming. Journal of Information Technology Impact, 7(2), 111-130. [Link]. [GS Search]
Hartmann, B., Klemmer, S. R., Bernstein, M., & Mehta, N. (2005). d. tools: Visually prototyping physical UIs through statecharts. In in Extended Abstracts of UIST 2005. Disponível em: [Link]. [GS Search]
Jaakkola, T., & Veermans, K. (2018). Exploring the effects of concreteness fading across grades in elementary school science education. Instructional Science, 46(2), 185-207. doi: 10.1007/s11251-017-9428-y. [GS Search]
Jaakkola, T., & Veermans, K. (2020). Learning electric circuit principles in a simulation environment with a single representation versus “concreteness fading” through multiple representations. Computers & Education, 148, 103811. doi: 10.1016/j.compedu.2020.103811. [GS Search]
Jang, Y., Lee, W., & Kim, J. (2015). Assessing the usefulness of object-based programming education using Arduino. Indian Journal of Science and Technology, 8, 90. doi: 10.17485/ijst/2015/v8is1/57701. [GS Search]
Knudsen, J. L., & Madsen, O. L. (1988). Teaching object-oriented programming is more than teaching object-oriented programming languages. In European Conference on Object-Oriented Programming (pp. 21-40). Springer, Berlin, Heidelberg. doi: 10.7146/dpb.v17i251.7607. [GS Search]
Kölling, M. (1999). The problem of teaching object-oriented programming, Part 1: Languages. Journal of Object-oriented programming, 11(8), 8-15. Disponível em: [Link]. [GS Search]
Korson, T., & McGregor, J. D. (1990). Understanding object-oriented: A unifying paradigm. Communications of the ACM, 33(9), 40-60. doi: 10.1145/83880.84459.[GS Search]
Lima, Á., Diniz, M., & Eliasquevici, M. (2019). Metodologia 7Cs: Uma Nova Proposta de Aprendizagem para a Disciplina Algoritmos. In Anais do XXVII Workshop sobre Educação em Computação (pp. 429-443). SBC. doi: 10.5753/wei.2019.6648. [GS Search]
Mellis, D., Banzi, M., Cuartielles, D., & Igoe, T. (2007). Arduino: An open electronic prototyping platform. In Proc. Chi (Vol. 2007, pp. 1-11). Disponível em: [Link]. [GS Search]
Montero, S., Díaz, P., Díez, D., & Aedo, I. (2010). Dual instructional support materials for introductory object-oriented programming: classes vs. objects. In IEEE EDUCON 2010 Conference (pp. 1929-1934). IEEE. doi: 10.1109/educon.2010.5492438. [GS Search]
Moreira, M. A., & Masini, E. F. S. (2001). Aprendizagem significativa: a teoria de David Ausubel (2ª ed.). Ed. Centauro. [GS Search]
Moreira, M. A. (2003). Linguagem e aprendizagem significativa. In Conferência de encerramento do IV Encontro Internacional sobre Aprendizagem Significativa, Maragogi, AL, Brasil (Vol. 8). Disponível em: [Link]. [GS Search]
Moreira, M. A. (2006). Aprendizagem Significativa: da visão clássica à visão crítica (Meaningful learning: from the classical to the critical view). In Conferência de encerramento do V Encontro Internacional sobre Aprendizagem Significativa, Madrid, Espanha, setembro de. sn. Disponível em: [Link]. [GS Search]
Moreira, M. A. (2010). O que é afinal aprendizagem significativa? Aula Inaugural do Programa de Pós-Graduação em Ensino de Ciências Naturais, Instituto de Física, Universidade Federal do Mato Grosso, Cuiabá, MT. Disponível em: [Link]. [GS Search]
Moström, J. E., Boustedt, J., Eckerdal, A., McCartney, R., Sanders, K., Thomas, L., & Zander, C. (2008). Concrete examples of abstraction as manifested in students' transformative experiences. In Proceedings of the Fourth international Workshop on Computing Education Research (pp. 125-136). doi: 10.1145/1404520.1404533.[GS Search]
Novak, J. D. (2002). Meaningful learning: The essential factor for conceptual change in limited or inappropriate propositional hierarchies leading to empowerment of learners. Science education, 86(4), 548-571. doi: 10.1002/sce.10032. [GS Search]
Or-Bach, R., & Lavy, I. (2004). Cognitive activities of abstraction in object orientation: an empirical study. ACM SIGCSE Bulletin, 36(2), 82-86. doi: 10.1145/1024338.1024378. [GS Search]
O'Sullivan, D., & Igoe, T. (2004). Physical computing: sensing and controlling the physical world with computers. Course Technology Press.[GS Search]
Piva Jr, D., & Freitas, R. L. (2010). Estratégias para melhorar os processos de abstração na disciplina de Algoritmos. In Brazilian Symposium on Computers in Education (Simpósio Brasileiro de Informática na Educação-SBIE) (Vol. 1, No. 1). [Link]. [GS Search]
Przybylla, M., & Romeike, R. (2017). The nature of physical computing in schools: Findings from three years of practical experience. In Proceedings of the 17th Koli Calling International Conference on Computing Education Research (pp. 98-107). doi: 10.1145/3141880.3141889.
Rubio, M. A., Hierro, C. M., & Pablo, A. P. D. M. (2013). Using Arduino to enhance computer programming courses in science and engineering. In Proceedings of EDULEARN13 conference (pp. 1-3). IATED Barcelona, Spain. Disponível em: [Link]. [GS Search]
Sentance, S., Waite, J., Yeomans, L., & MacLeod, E. (2017). Teaching with physical computing devices: the BBC micro: bit initiative. In Proceedings of the 12th Workshop on Primary and Secondary Computing Education (pp. 87-96). doi: 10.1145/3137065.3137083. [GS Search]
Soares, A. P., Pinheiro, A. P., Costa, A., Frade, C. S., Comesaña, M., & Pureza, R. (2013). Affective auditory stimuli: Adaptation of the international affective digitized sounds (IADS-2) for European Portuguese. Behavior research methods, 45(4), 1168-1181. doi: 10.3758/s13428-012-0310-1. [GS Search]
Suh, S., Lee, M., & Law, E. (2020). How do we design for concreteness fading? survey, general framework, and design dimensions. In Proceedings of the Interaction Design and Children Conference (pp. 581-588). doi: 10.1145/3392063.3394413. [GS Search]
Yan, L. (2009). Teaching object-oriented programming with games. In 2009 Sixth International Conference on Information Technology: New Generations (pp. 969-974). IEEE. doi: 10.1109/itng.2009.13. [GS Search]
Zanetti, H. A. P. & Borges, M. A. F. (2020). Ensino de Programação utilizando Computação Física: uma Revisão Sistemática da Literatura. In Comunicações em Informática, [S. l.] 4(1), (pp.19-22). doi: 10.22478/ufpb.2595-0622.2020v4n1.52065. [GS Search]
Zanetti, H., & Borges, M. (2021). Por que estimular a Aprendizagem Significativa no ensino de Programação Orientada a Objetos?. In Anais do Simpósio Brasileiro de Educação em Computação, (pp. 290-295). Porto Alegre: SBC. doi:10.5753/educomp.2021.14496. [GS Search]
Zanetti, H., Borges, M., & Ricarte, I. (2021). Método de Ensino de Programação Orientada a Objetos Baseada em Computação Física, Aprendizagem Significativa e Concreteness Fading. In: Challenges 2021, desafios do digital: Livro de atas. Universidade do Minho. Centro de Competência. (pp.101-107). Disponível em: [Link]. [GS Search]
Zanetti, H., Borges, M., & Ricarte, I. (2022). Aplicação de um Método para Ensino de Programação Orientada a Objetos por meio de Aprendizagem Significativa e Computação Física. In Anais do XXX Workshop sobre Educação em Computação, (pp. 37-48). Porto Alegre: SBC. doi:10.5753/wei.2022.222953. [GS Search]
Arquivos adicionais
Published
Como Citar
Issue
Section
Licença
Copyright (c) 2023 Humberto Augusto Piovesana Zanetti, Marcos Augusto Francisco Borges, Ivan Luiz Marques Ricarte
![Creative Commons License](http://i.creativecommons.org/l/by-nc-nd/4.0/88x31.png)
Este trabalho está licenciado sob uma licença Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.