Learning computer programming using “divide and conquer” strategy vs. without “divide and conquer strategy”

Authors

DOI:

https://doi.org/10.31908/19098367.2013

Keywords:

Functions, Learning, Methodology, Programming, Systems Engineering

Abstract

Learning computer programming is a permanent challenge for teacher engineers to find mechanisms, theories, and models that facilitate it and simplify the resolution of problems from the use of computational thinking. The concept of a function and the “divide and conquer” strategy facilitates the assimilation and application of programming within the functional paradigm and, at the same time, simplifies the learning of other programming paradigms. This article is based on an investigation made in parallel with groups of Programming Functional Paradigm throughout the last 6 semesters in the Systems and Computing Engineering program. The results are significantly different when comparing the groups in which the “divide and conquer” strategy was adopted with the results of those with a single function was worked that included the entire logical process of solving a problem. It is concluded that it is much more convenient to atomize a computational algorithmic solution into independent functions than think that solution in a single logical body independent of the programming paradigm.

Author Biographies

  • Omar Iván Trejos Buritica, Universidad Tecnológica de Pereira

    Ingeniero de Sistemas. Especialista en Instrumentación Física. MSc en Comunicación Educativa. PhD en Ciencias de la Educación. Docente de planta categoría Titular, Programa Ingeniería de Sistemas y Computación, Facultad de Ingenierías, Universidad Tecnológica de Pereira. Autor de varios libros de programación y de una buena cantidad de artículos de investigación científica educativa en el área de la programación de computadores sobre aproximación a la optimización de procesos de enseñanza y aprendizaje dentro del contexto de la formación de ingenieros con perfil tecnológico.

  • Luis Eduardo Muñoz Guerrero, Universidad Tecnológica de Pereira

    Ingeniero de Sistemas. MSc en Ingeniería de Sistemas. Docente Titular de Planta Universidad Tecnológica de Pereira, con 15 años de experiencia en el campo de la formación universitaria. Autor de libros académicos y de investigación. Ha publicado artículos en revistas especializadas nacionales e internacionales. Su área de Investigación se centra en los procesos de enseñanza y aprendizaje de la Programación.

References

Trejos Buriticá, O. Lógica de Programación. Bogotá: Ediciones de la U, 2017.

Wing, J. Computational Thinking. Communications on the ACM, 49(3), p.p. 33-35, 2006.

Brown, N., & Wilson, G. (2018). Ten quick tips for teaching programming. PLos Comput Biol, 14(4), 1-8, 2018.

Diaz Barriga, F., & Hernandez Rojas, G. Estrategias docentes para un aprendizaje significativo. México: McGraw Hill, 2002.

Brassard, G., & Bratley, P. Fundamentos de Algoritmia. New York (USA): Prentice Hall, 1997.

Basogain Olabe, X., Olabe Basogain , M., & Olabe Basogain, J. Pensamiento Computacional a través de la programación: paradigma de aprendizaje. Revista de Educación a Distancia, 46(6), 2015, 2-35.

Trejos Buriticá, O. Metodología para aprender programación funcional en Ingeniería de Sistemas aplicando teoría de aprendizaje por descubrimiento. Revista Educación en Ingeniería - ACOFI, 12(23), 69- 75, 2017.

Trejos Buriticá, O. Tesis Doctoral "Aprendizaje en Ingeniería: Un problema de Comunicación". Pereira (Risaralda): Doctorado en Ciencias de la Educación RudeColombia - CADE UTP, 2012.

Trejos Buriticá, O. Programación Imperativa con Lenguaje C. Bogotá: ECOE Ediciones, 2017.

Schildt, H. Java: a beginners guide. New York: Editorial McGraw Hill, 2017.

Gomez Alvarez, M., Sanchez Dams, R., & Barón Salazar, A. A Representation Proposal of Practices for Teaching and Learning Software Engineering Using a Semat Kernel Extension. Revista Ingenierías, 17(32), 129-154, 2018.

Muñoz Guerrero, L. Tesis Doctoral Modelo de socialización del conocimiento profesional aprovechando NTICs, redes sociales y sus servicios asociados y desarrollo de competencias blandas con grupos interdisciplinarios en Ing de Sistemas. Pereira (Risaralda): Doctorado en Ciencias de la Educación RudeColombia, 2019.

Lindsay, D. Scientific Writing Thinking in Words. Sidney, Australia: CSIRO Publishing, 2011.

Burt, B. Beginning programming with Java for Dummies. New York (USA): For Dummies Editorial, 2017.

Gonzalez Hernandez, W. La enseñanza de la informática y de la matemática: ¿semejantes o diferentes? Revista Educación en Ingeniería - ACOFI, 13(26), 20-26, 2018.

Deitel, P., & Deitel, H. Java - Cómo programar. New York (USA): Pearson Education, 2017.

Cárdenas, D., & Martha Idalia Esparza. El pensamiento lógico computacional. México: Editorial Digital del Tecnológico de Monterrey, 2015.

Ausubel, D. The Acquisition and Retention of Knowledge. Washington - USA: Springer, 2012.

Downloads

Published

2020-12-21

Issue

Section

Artículos

How to Cite

Learning computer programming using “divide and conquer” strategy vs. without “divide and conquer strategy”. (2020). Entre Ciencia E ingeniería, 14(28), 34-39. https://doi.org/10.31908/19098367.2013