tOOwer Defenders: Um Jogo para Auxiliar no Aprendizado de Programação Orientada a Objetos

Resumo


O aumento na capacidade de processamento dos computadores elevou a complexidade dos softwares, exigindo a adoção de novos paradigmas de desenvolvimento. A Programação Orientada a Objetos (POO) emergiu como uma solução para simplificar problemas complexos e promover a reutilização de código. No entanto, aprender POO se mostrou desafiador. Nesse cenário, o presente trabalho propõe um jogo digital para auxiliar no aprendizado da POO. O desenvolvimento baseou-se em princípios de Engenharia de Software e incluiu uma revisão da literatura sobre o tema. A validação qualitativa do jogo mostrou que ele foi eficaz em ensinar conceitos como instanciação e herança, mas ainda necessita de melhorias para transmitir o conceito de polimorfismo.
Palavras-chave: Jogos educacionais, Programação orientada a objetos, Engenharia de Software

Referências

Abbasi, S., Kazi, H., and Khowaja, K. (2017). A systematic review of learning object oriented programming through serious games and programming approaches. In 2017 4th IEEE International Conference on Engineering Technologies and Applied Sciences (ICETAS), pages 1–6.

Corral, J. M. R., Balcells, A. C., Estévez, A. M., Moreno, G. J., and Ramos, M. J. F. (2014). A game-based approach to the teaching of object-oriented programming languages. Computers & Education, 73:83–92.

de Oliveira, E. D., Camargo, M. C., Barbosa, C. R. S., Brancher, J. D., de Oliveira Barros, V. T., de S. Campos, V. V., and de Barros, R. M. (2017). The power of the game as a mediator tool paradigm of object oriented teaching-learning process. In 2017 IEEE Frontiers in Education Conference (FIE). IEEE.

de Souza Meirelles, F. (1994). Evolução da microinformática: ciclos, cenários e tendências. Revista de Administração de Empresas, 34(3):62–80.

Djelil, F., Albouy-Kissi, B., Albouy-Kissi, A., Sanchez, E., and Lavest, J.-M. (2015). Towards a 3d virtual game for learning object-oriented programming fundamentals and c++ language. In Proceedings of the 7th International Conference on Computer Supported Education - Volume 2, CSEDU 2015, pages 289–294, Portugal. SCITEPRESS - Science and Technology Publications, Lda.

Droid, G. (2023). Understanding the history and evolution of tower defense games – tower defense games – main video game genres. Accessed: 2024-06-15.

Edirisinghe, E. M. N. S. (2008). Teaching students to identify common programming errors using a game. In Proceedings of the 9th ACM SIGITE Conference on Information Technology Education, SIGITE ’08, pages 95–98, New York, NY, USA. ACM.

Esper, S., Wood, S. R., Foster, S. R., Lerner, S., and Griwold, W. G. (2014). Codespells: How to design quests to teach java concepts. J. Comput. Sci. Coll., 29(4):114–122.

Galgouranas, S. and Xinogalos, S. (2018). jAVANT-GARDE: A cross-platform serious game for an introduction to programming with java. Simulation & Gaming, 49(6):751–767.

Jiménez-Díaz, G., Gómez-Albarrán, M., and González-Calero, P. A. (2007). Pass the ball: Game-based learning of software design. In Entertainment Computing – ICEC 2007, pages 49–54. Springer Berlin Heidelberg.

Jordine, T., Liang, Y., and Ihler, E. (2014). A mobile-device based serious gaming approach for teaching and learning java programming. In 2014 IEEE Frontiers in Education Conference (FIE) Proceedings. IEEE.

Karram, O. (2021). The role of computer games in teaching object-oriented programming in high schools - code combat as a game approach. WSEAS Transactions on Advances in Engineering Education, 18:37–46.

Kitchenham, B., Charters, S., Budgen, D., Brereton, P., Turner, M., Linkman, S., Jørgensen, M., Mendes, E., and Visaggio, G. (2007). Guidelines for performing systematic literature reviews in software engineering. Empirical Software Engineering, 12(2):131–164.

Klump, R. (2001). Understanding object-oriented programming concepts. In 2001 Power Engineering Society Summer Meeting. Conference Proceedings (Cat. No.01CH37262), volume 2, pages 1070–1074 vol.2.

Rais, A. E., Sulaiman, S., and Syed-Mohamad, S. M. (2011). Game-based approach and its feasibility to support the learning of object-oriented concepts and programming. In 2011 Malaysian Conference in Software Engineering. IEEE.

Ramirez-Rosales, S., Vazquez-Reyes, S., Villa-Cisneros, J. L., and de Leon-Sigg, M. (2016). A serious game to promote object oriented programming and software engineering basic concepts learning. In 2016 4th International Conference in Software Engineering Research and Innovation (CONISOFT). IEEE.

Schmolitzky, A. W. and Gottel, T. (2014). Guess my object: An ’objects first’ game on objects’ behavior and implementation with bluej. In Proceedings of the 2014 Conference on Innovation 38; Technology in Computer Science Education, ITiCSE ’14, pages 219–224, New York, NY, USA. ACM.

Sebesta, R. W. (2009). Concepts of Programming Languages (9th Edition). Pearson.

Sharma, S., Stigall, J., and Rajeev, S. (2015). Game-theme based instructional module for teaching object oriented programming. In 2015 International Conference on Computational Science and Computational Intelligence (CSCI). IEEE.

Silva, M. A. G., Montenegro, A., Clua, E., Vasconcelos, C., and Lage, M. (2013). Real time pixel art remasterization on gpus. In 2013 XXVI Conference on Graphics, Patterns and Images, pages 274–281.

Stardock (2023). Siege of centauri dev journal: What makes a good tower defense game? Accessed: 2024-06-15.

Studio, R. (2022). Why pixel art games are still so popular. Accessed: 2023-05-15.

Van Emden, M. H. (1997). Object-oriented programming as the end of history in programming languages. In 1997 IEEE Pacific Rim Conference on Communications, Computers and Signal Processing, PACRIM. 10 Years Networking the Pacific Rim, 1987-1997, volume 2, pages 981–984 vol.2.

Videnovik, M., Vold, T., Kiønig, L., Madevska Bogdanova, A., and Trajkovik, V. (2023). Game-based learning in computer science education: a scoping literature review. International Journal of STEM Education, 10(1):54.

Wang, L.-H., Chen, B., and Hwang, G.-J. (2022). Effects of digital game-based stem education on students’ learning achievement: a meta-analysis. International Journal of STEM Education, 9(26).

Wong, Y. S., Hayati, I. M., Yatim, M., and Hoe, T. W. (2017). A propriety game based learning mobile game to learn object-oriented programming — odyssey of phoenix. In 2017 IEEE 6th International Conference on Teaching, Assessment, and Learning for Engineering (TALE). IEEE.

Wong, Y. S., Yatim, M. H. M., and Tan, W. H. (2014). Use computer game to learn object-oriented programming in computer science courses. In 2014 IEEE Global Engineering Education Conference (EDUCON). IEEE.

Yan, L. (2009). Teaching object-oriented programming with games. In Proceedings of the 6th International Conference on Information Technology: New Generations, pages 969–974

Zhang, J., Caldwell, E. R., and Smith, E. (2013). Learning the concept of java inheritance in a game. In Proceedings of CGAMES2013USA. IEEE.
Publicado
04/11/2024
MARTINS, Lucas dos Santos; MELLO, Aline Vieira de. tOOwer Defenders: Um Jogo para Auxiliar no Aprendizado de Programação Orientada a Objetos. In: SIMPÓSIO BRASILEIRO DE INFORMÁTICA NA EDUCAÇÃO (SBIE), 35. , 2024, Rio de Janeiro/RJ. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2024 . p. 855-869. DOI: https://doi.org/10.5753/sbie.2024.242551.