Problemas de ensino e aprendizagem dos fundamentos de programação
Resumo
Dentro dos cenários relacionados com a informática, as atividades de aprendizagem ligadas à programação de computadores têm sido reconhecidas com um alto grau de dificuldade, segundo os antecedentes revelados no presente artigo de revisão. Com esta situação, que aparentemente, é bastante comum no âmbito global, as causas que geram dita problemática estão relacionadas com determinadas características que acontecem dentro da sala de aula. Certas habilidades cognitivas são relevantes no momento da aprendizagem dos fundamentos de programação, ta s como a capacidade de abstração, uma boa aptidão lógico-matemática e a facilidade para a resolução de problemas de ordens algorítmicos. Além disso, fatores motivadores são necessários, no momento de se confrontar com os temas associados com os fundamentos de programação dentro dos cenários de prática. O conteúdo desta revisão envolve experiências em diferentes áreas do planeta, cujo interesse tem o objetivo de descobrir as origens do problema. Finalmente, é elaborada uma reflexão na busca de possíveis soluções, e onde se abre o espaço de atuação para uma nova orientação baseado no núcleo da Essência da Semat.
Downloads
Referências
• ACM, IEEE & AIS (2005) Computing Curricula: The Overview Report 2005. En Internet: http://www.acm.org/education/education/curric_vols/CC2005-March06Final.pdf, Retrieved September 28, 2013.
• Ali, A., & Mensch, S. (2008). Issues and challenges for selecting a programming language in a technology update course. Proceedings of the Information Systems Education Conference, Phoenix, AZ 2008. Retrieved September 28, 2013 from http://isedj.org/isecon/2008/020/index.html.
• Anewalt, K.(2008). Making CS0 fun: An active learning approach using toys, games and Alice. Journal of Computing Sciences in Colleges, 23(3), 98-105. September 28, 2013 from ACM Digital Library http://www.acm.org/dl.
• Ben-Ari, M. (1998). Constructivism in computer science education. Proceedings of the 29th SIGCSE Technical. Symposium on Computer Science Education, 257-261.
• Baldwin, L.P., & Kuljis, J. (2001). Learning programming using program visualization techniques. Proceedings of the 34th Hawaii International Conference on System Sciences – 2001. Retrieved September 29, 2013 from IEEE Computer Society Digital Library http://www.computer.org/portal/.
• Blanchette, I., & Dunbar, K. (2000). How analogies are generated: The roles of structural and superficialsimilarity. Memory and Cognition, 28, 108-124.
• Carnegie Mellon University (2013). Alice’s Home Page, An Educational Software that teaches students computer programming in a 3D environment. Retrieved September 28, 2013 from http://www.alice.org/index.php?page=what_is_alice/what_is_alice.
• Carter, J., & Jenkins, T. (2002). Gender differences in programming?. Proceedings of the 7th Annual Conference on Innovation and Technology in Computer Science Education. September 28, 2013 from ACM Digital Library http://www.acm.org/dl.
• Clancy, M., Titteron, N., Ryan, C., Slotta, J., & Linn, M. (2003). New roles for students, instructors, andcomputers in a lab-based introductory programming course. Proceedings of the 34th SIGCSE Technical Symposium on Computer Science Education, 132-136.
• Dann, W., Copper, S., & Pausch, R. (2006). Learning to program with Alice. Upper Saddle River, NJ: Prentice Hall.
• Dunican, E. (2002). Making the analogy: Alternative delivery techniques for first year programming courses. In J. Kuljis, L. Baldwin & R. Scoble (Eds), Proceedings from the 14th Workshop of the Psychology of Programming Interest Group, Brunel University, June 2002, 89-99.
• Guibert, N., Girard, P., & Guittet, L. (2004). Example-based programming: A pertinent visual approach for learning to program. Proceedings of the Working Conference on Advanced Visual Interfaces, 358 – 361. Retrieved September 29, 2013 from ACM Digital Library http://www.acm.org/dl.
• Hartman, W., Nievergelt, J., & Reichert, R. (2001). Kara, finite state machines, and the case for programming as part of general education. Proceedings of the IEEE Symposium on Human-Centric Computing Languages and Environment (HCC01) Retrieved September 29, 2013 from IEEE Computer Society Digital Library http://www.computer.org/portal/.
• Herbert, C. (2007). An introduction to programming with Alice. Boston, Massachusetts: Course Technology.
• Kelleher, C., & Pausch, R. (2005). Lowering the barriers to programming: A taxonomy of programming environment and languages for novice programmers. ACM Computing Surveys, 37(2), 83-137. Retrieved September 28, 2013 from ACM Digital Library http://www.acm.org/dl.
• Marrero, W., & Settle, A. (2005). Testing first: Emphasizing testing in early programming courses. Proceedings of the 10th annual SIGCSE conference on Innovation and technology in computer science education, 4-8. Retrieved September 28, 2013 from ACM Digital Library http://www.acm.org/dl
• Porter, R., & Calder, P. (2004). Patterns in learning to program: An experiment?. Proceedings of the Sixth Conference on Australasian Computing Education, 30, 241-246. Retrieved September 28, 2013 from ACM Digital Library http://www.acm.org/dl
• Schneider, D. (1999). An introduction to programming using Visual Basic 6.0. Upper Saddle, River, NJ: Prentice Hall.
• Sheard, J., & Hagan, D. (1998). Experiences with teaching object-oriented concepts to introductory programming students using C++. Technology of Object-Oriented Languages and Systems-TOOLS 24, IEEE Technology, 310-319.
• Soloway, E. & Spohrer, J. (1989). Studying the Novice Programmer, Lawrence Erlbaum Associates, Hillsdale, New Jersey. 497 p.
• Stamouli, I., Doyle, E., & Huggard, M. (2004). Establishing structured support for programming students. Proceedings of the 34th ASEE/IEEE Frontiers in Education Conference, Savannah, GA, October 2004.
• Thomas, L., Ratcliffe, M., Woodbury, J., & Jarman, E. (2002). Learning styles and performance in the introductory programming sequence. Proceedings of 33rd SIGCSE Technical Symposium, 34, 33-37.
• Van Roy, P., Armstrong, J., Flatt, M., & Magnusson, B. (2003). The role of language paradigms in teaching programming. Proceedings of the 34th SIGCSE Technical Symposium on Computer science Education, 269-270.