Documente Academic
Documente Profesional
Documente Cultură
RESUMEN
Actualmente en las instituciones de educación superior, el profesor de programación debe resolver los
siguientes problemas que le presentan la mayoría de los alumnos de primer ingreso:
• Desconocimiento de la materia
• Carencia de habilidades para programar
• Carencia de disciplina en programación
• Falta de conciencia estudiantil
• Desinterés por sus estudios en general
• Apatía por la materia en particular
La enseñanza de la programación implica la consideración de otras dos áreas concurrentes importantes:
• Lenguajes de programación
• Herramientas de desarrollo
La base de nuestra propuesta contempla los siguientes aspectos:
• Realizar un examen diagnóstico al inicio del curso
• Mostrar a los estudiantes la importancia de la programación en su formación profesional y en el
ejercicio profesional.
• Ubicar a la programación en la fase de desarrollo del ciclo de vida de los sistemas de información.
• Diferenciar plenamente la programación de la codificación.
• Privilegiar la enseñanza de la programación sobre la de los lenguajes de programación.
• Implementar los algoritmos en los lenguajes de programación PASCAL y C
LA ENSEÑANZA DE LA PROGRAMACIÓN
LA PROGRAMACIÓN DE UNA COMPUTADORA
Siendo la programación una actividad que implica un proceso mental, generalmente complejo y creativo,
exige del programador: inteligencia, conocimiento, habilidades y disciplina.
La inteligencia es un recurso natural que en la mujer y el hombre normales es suficiente para adquirir los
otros tres atributos necesarios para programar y poder resolver problemas utilizando una computadora
La adquisición del conocimiento se logra estudiando los conceptos, fundamentos y las técnicas básicas de
programación. En el modelo educativo tradicional con base presencial el profesor expone los temas y
orienta a los estudiantes con aclaración de dudas y recomendaciones. La capacidad y experiencia del
maestro puede contribuir notablemente para el logro de los objetivos de aprendizaje, motivando a los
alumnos para que se interesen en la materia.
En cuanto a la adquisición de las habilidades, la voluntad del educando es fundamental, ya que sólo con la
práctica y la experimentación tesonera personal podrá lograrse.
La disciplina, como observancia de las normas y el buen proceder, la podrá adquirir el estudiante con la
guía valiosa del maestro y de buenos programadores, comúnmente los autores de libros de texto
especializados.
Los estudiantes de licenciaturas en informática y afines, no son la excepción. Sin embargo, los profesores
de programación en la UPIICSA hemos observado que en los años recientes, los alumnos de los cursos
básicos (primero y segundo semestres) revelan en lo general algunos rasgos preocupantes que se añaden a
la problemática natural ya planteada, y que son:
• Falta de conciencia estudiantil
• Desinterés por sus estudios, en general
• Apatía por la programación, en particular
1) Los estudiantes adolecen de ciertas carencias derivadas del sistema educativo básico actual que se
reflejan en su desempeño inicial en la carrera. Por ejemplo, los estudiantes del primer semestre en
su cambio del nivel medio superior al superior, pasan abruptamente de un ambiente escolar
restringido a otro de casi libertad total. Este cambio causa un descontrol y desubica
temporalmente a muchos estudiantes, que no pueden manejar adecuadamente su nuevo grado de
libertad personal.
2) Por otra parte, el estudiante descubre un ambiente social que le agrada, hace nuevas amistades
con otros compañeros que tienen intereses comunes y con los cuales se identifica rápidamente. Su
nuevo estatus le atrae más que los asuntos académicos relacionados con su carrera y los descuida.
ENSEÑANZA
DE LA
PROGRAMACIÓN
Aunque el propósito principal debe ser que el estudiante aprenda a programar, es conveniente que pueda
codificar los algoritmos en algún lenguaje de programación e implementarlo utilizando la herramienta de
desarrollo disponible y que se considere adecuada.
Nuestra experiencia a lo largo de varios años con los lenguajes de programación y sus herramientas
asociadas, nos ha mostrado que Pascal facilita el aprendizaje por primera vez, ya que la mayoría de sus
compiladores cuidan mucho al programador contra sus propios errores y omisiones, y aunque son de
alguna manera restrictivos no limitan la programación básica inicial. Otra gran ventaja es que el diseño de
Pascal corresponde totalmente a las técnicas de la Programación Estructurada y facilita notablemente la
conversión de seudo código. Además es un lenguaje con muchos tipos de datos predefinidos, simples y
estructurados.
También hemos observado que los estudiantes que poseen nociones o conocen el lenguaje C, tienen
dificultad para aprender el lenguaje Pascal, y al contrario quienes han aprendido primero Pascal no tienen
gran dificultad para aprender C. Estas observaciones no las hemos probado formalmente para todos los
casos.
Por su parte, la herramienta de desarrollo de ambiente integrado facilita que el estudiante pueda
implementar y probar sus algoritmos de manera sencilla y casi inmediata. Sin embargo, no debe dedicarse
demasiado tiempo al conocimiento de dicha herramienta en un curso básico de programación, es decir,
solamente deberá adiestrarse al estudiante en lo elemental para poder construir, compilar, enlazar y correr
los programas. En este aspecto las herramientas orientadas al lenguaje Pascal presentan menos problemas
en su manejo que las herramientas orientadas al lenguaje C.
El examen diagnóstico.
Los grupos no son homogéneos ni tienen los estudiantes los mismos antecedentes académicos, es muy
frecuente que se presenten grandes contrastes entre alumnos que ya han desarrollado algunas habilidades
de programación y conocen determinado lenguaje de programación, mientras que otros desconocen todo
en materia de programación. Un examen diagnóstico al inicio del curso le indicará al profesor la
composición de su grupo y el grado de heterogeneidad que enfrenta.
Si el profesor conoce el plan de estudios podría explicar a los estudiantes el impacto de la programación
en los diversos cursos donde la aplicará, por ejemplo en Estructura y Representación de Datos,
Algoritmos Computacionales, Bases de Datos, Sistemas de Información, Compiladores, Sistemas
Operativos, etc.
Programación y codificación.
Tal como cita Guillermo Levine en su libro1, sobre programar y codificar “la diferencia entre ambos
conceptos es fundamental, y no está entendida del todo en el medio profesional de la computación ni por
completo, por desgracia, en el medio académico”. Más de una vez hemos escuchado decir “ya aprendí a
programar en Pascal” o bien “se requiere experiencia en programación en C”, lo correcto sería “ya
aprendí a codificar en Pascal” y “se requiere experiencia en el manejo del lenguaje C”.
Hay un consenso creciente entre los profesores de informática en que los estudiantes deben aprender
cómo se resuelven los problemas lógicamente (desarrollo de algoritmos) antes de preocuparse por la
puntuación y otros detalles de un lenguaje de programación. En el ciclo de la programación, la
codificación solamente representa una de las etapas posteriores al diseño de la lógica y permite escribir en
los términos de un lenguaje de programación la serie de pasos que realizará la computadora al seguir paso
a paso el programa.
Consideramos que una técnica apropiada para iniciar a los estudiantes en la programación es explicarles
el siguiente diagrama:
La programación estructurada es una técnica que facilita la construcción del proceso a partir de las
estructuras de control primitivas de secuenciación, selección y repetición condicional. La notación
propuesta por Guillermo Levine en sus libros es fácil de explicar y hemos visto buenos resultados en su
1
LEVINE, G. GUILLERMO
Computación y programación moderna.
Perspectiva integral de la informática.
PEARSON EDUCACIÓN, México, 2001.
ISBN: 968-444-485-0
Páginas:640
2
JOYANES, A. LUIS
Fundamentos de Programación.
Algoritmos y Estructura de Datos.
McGRAW HILL, España 1998.
ISBN: 84-481-0603-2
comprensión por los alumnos. Así mismo la definición de un seudo código en español, facilita el manejo
de las estructuras de control para la construcción de la lógica necesaria en el proceso.
Por otra parte, el concepto de tipo de datos debe ser explicado con toda claridad y profundidad, a partir de
su definición matemática para que el alumno sea capaz de asociar el tipo de datos y su representación en
la computadora. También deberá ser capaz de describir la llamada taxonomía de los datos.
El profesor de programación no debe olvidar que su mejor esfuerzo lo debe orientar siempre a que el
estudiante adquiera el conocimiento sobre las técnicas de programación, a la definición adecuada de los
datos y al desarrollo de la habilidad necesaria para el diseño y construcción de los algoritmos con un
estilo disciplinado que les dé orden y claridad.
BIBLIOGRAFIA
1) LEVINE, G. GUILLERMO
Computación y programación moderna.
Perspectiva integral de la informática.
PEARSON EDUCACIÓN, México, 2001.
ISBN: 968-444-485-0
Páginas:640
2) JOYANES, A. LUIS
Fundamentos de Programación.
Algoritmos y Estructura de Datos.
McGRAW HILL, España 1998.
ISBN: 84-481-0603-2