Técnicas de Programación y Laboratorio

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 7

PROGRAMA OFICIAL DE CURSO

(Pregrado y Posgrado)
UNIVERSIDAD DE ANTIOQUIA

1. INFORMACIÓN GENERAL
Nombre del Curso: TÉCNICAS DE PROGRAMACIÓN Y LABORATORIO
Programa académico al INGENIERÍA DE SISTEMAS
que pertenece:
Unidad Académica: Facultad de Ingeniería
Vigencia: 2023-1 - Código curso: 2508307
2023-2
Tipo de curso: Básico
CARACTERÍSTICAS DEL CURSO
Habilitable (H): NO Validable (V): NO
Clasificable (C): NO Evaluación de suficiencia NO
(Posgrado):
Modalidad educativa del curso: Presencial
Área, núcleo o componente de la Profundización
organización curricular a la que pertenece
el curso
Número de créditos académicos: 4
Horas totales de 96 Horas totales de trabajo 96
interacción estudiante- independiente:
profesor:
Horas totales del curso del semestre: 192
Horas totales de 0 Horas totales de 0
actividades académicas actividades académicas
teóricas: prácticas:
Horas totales de actividades académicas teórico-prácticas: 96

PROGRAMAS ACADÉMICOS EN LOS CUALES SE OFRECE EL CURSO


504 - INGENIERÍA DE SISTEMAS Versión: 5
Pre-requisitos: Ninguno
Co-requisitos: 2508306 - LÓGICA Y REPRESENTACIÓN II
504 - INGENIERÍA DE SISTEMAS Versión: 4
Pre-requisitos: Ninguno
Co-requisitos: 2508306 - LÓGICA Y REPRESENTACIÓN II

2. RELACIONES CON EL PERFIL


Acompañar al estudiante en el conocimiento de un lenguaje de programación de
referencia y los paradigmas de programación, y el desarrollo de habilidades para realizar

Página 1 de 7
programas de computador a partir de problemas reales que reten y motiven al estudiante
a realizar trabajo en equipo y la aplicación de buenas prácticas de programación.

3. INTENCIONALIDADES FORMATIVAS
-- Conocer y utilizar los elementos básicos que manejan los lenguajes de programación
para crear programas de
computador.

-- Comprender y comparar los diferentes paradigmas de programación más usados


para escribir programas de
computador junto con sus lenguajes de programación y herramientas más comunes,
considerando aspectos.

-- Implementar programas de computador mediante lenguajes de programación y


librerías que respondan a un
problema en contexto.

-- Conocer y aplicar en una solución software, el Paradigma de Programación Orientada


a Objetos. (siempre en Java,
deseable python)

4. APORTES DEL CURSO A LA FORMACIÓN INTEGRAL Y A LA FORMACIÓN EN


INVESTIGACIÓN
- Se incentiva el trabajo en equipo durante cada uno de los proyectos del semestre y las
capacidades
comunicativas tanto orales como escritas.

- Se introduce el análisis de los problemas reales y su impacto en la sociedad.

- Se motiva a la adopción de nuevas tecnologías.

- Se incentiva al uso consciente, respetuoso y dentro de la legalidad de componentes


de código y herramientas de
terceros.

5. DESCRIPCIÓN DE LOS CONOCIMIENTOS Y/O SABERES


UNIDAD 1 Introducción a los lenguajes de programación

Semanas 4 horas de clase 24.

-- Generalidades de los lenguajes de programación


-- Eligiendo el lenguaje de programación para el tipo de problema y el tipo de solución.
-- IDE y framework

Página 2 de 7
-- Cómo manejar en el lenguaje de programación
-- Tipos y estructuras de datos que manejan los lenguajes de programación.
-- Expresiones aritméticas y lógicas, operadores, prioridades, asociatividades,
evaluación y equivalencia con
expresiones algebraicas.
-- Ciclos
-- Colecciones de datos que maneje el lenguaje (Ej, vectores y matrices y otros).
-- Métodos de búsqueda, ordenamiento, recorrido, recuperación, ingreso en colecciones
de datos.
-- Elemento del lenguaje para representar conceptos como pilas, colas, listas, árboles,
mapas, entre otros.
-- Manejo de string y Expresiones regulares
-- Conversión entre tipos de datos
-- Recursión

PROYECTO DE LABORATORIO

Los estudiantes deben realizar en parejas el desarrollo de solución para solucionar un


problema de ciencias exactas y un problema sobre árboles.

UNIDAD 2 PARADIGMAS

Semanas 2 horas 12

-- ¿Qué son los paradigmas?


-- ¿Paradigma imperativo, ventajas y desventajas, lenguajes, ejemplo?
-- ¿Paradigma Declarativo, ventajas y desventajas, lenguajes, ejemplo?
-- ¿Paradigma funcional, ventajas y desventajas, lenguajes, ejemplo?
-- ¿Paradigma reactiva, ventajas y desventajas, lenguajes, ejemplo?
-- ¿Programación probabilística, ventajas y desventajas, lenguajes, ejemplo?

De acuerdo al paradigma:

* Conjunto de conceptos y procedimientos.


* Procedimental: procedimiento, funciones
* POO: Clases, métodos.
* Funcional: función,
* Declarativo: sentencia, módulo.
* Reactivo: método.

EXPOSICIÓN

Exposición sobre paradigmas.

PROYECTO DE LABORATORIO

Los estudiantes deberán desarrollar una implementación del paradigma asignado, bajo
un lenguaje de programación que no conozca, del ejercicio dado por el profesor.

UNIDAD 3 Paradigmas orientados a Objetos

Página 3 de 7
Semanas 3 horas 18 de clase

-- Conceptos Básicos de Programación Orientado a Objetos (Abstracción,


Encapsulación, Herencia, Sobrecarga)
-- Clases abstractas, static.
-- Interfaces y polimorfismo
-- Entrada y salida de información
-- Diagrama de clases
-- Principios Solid
-- Código Limpio y documentación.
-- Github como repositorio de código para trabajo colaborativo (Acceso remoto)

EXPOSICIÓN

Exposición sobre código limpio

PROYECTO DE LABORATORIO

El estudiante deberá desarrollar un proyecto aplicando adecuadamente la programación


orientada a objetos a partir de un diagrama de clase básico dado

UNIDAD 4 Archivos y Excepciones

Semanas 3 horas de clase 18

-- Gestión de archivos
-- Manejo de Excepciones
-- Librerías (Json y pdf)
-- Construcción de librerías.
-- (deseable) Características del software inclusivo.
-- Usar librerías para el análisis, procesamiento y visualización de datos.
-- Documentación
-- J-unit Pruebas Unitarias.
-- Despliegue

PROYECTO DE LABORATORIO

El estudiante deberá desarrollar un proyecto aplicando paradigma orientado a objetos,


usando archivos CSV y Json. Deberá construir una librería para la gestión gráfica de
fechas o inclusión, gestión de excepciones.

El programa debe ser documentado usando Java doc


El programa deberá tener pruebas unitarias con JUNIT

Unidad 5 Desarrollo de aplicaciones WEB.

Semanas 3, horas de clase 18.

-- Introducción a HTML Básico

Página 4 de 7
-- Introducción a CSS3
-- Introducción a JavaScript
-- (deseable) Backend en cualquier tecnología

PROYECTO DE LABORATORIO

El estudiante deberá desarrollar una página interactiva básica.

6. METODOLOGÍA (SUGERIDA)
Estrategias didácticas:

Aprendizaje Basado en Proyectos (ABP), Aprendizaje invertido, Estudio de caso

Metodología(s) utilizada(s):

La exposición de los temas se hará mediante ayudas audiovisuales y del Computador,


cada sesión contara con ejemplos seleccionados, los cuales serán explicados,
compilados y ejecutados in-situ en el computador disponible en la sala; lo anterior con
miras a complementar el aprendizaje.

Los asistentes contaran con el siguiente material:

- Fuentes Java y python de los ejemplos seleccionados.


- Tutoriales y otros recursos bibliográficos obtenibles vía Internet.
- Aula desarrollada para tal fin.

En la medida de lo posible, los asistentes podrán participar en el desarrollo de trabajos


sobre distintos temas relativos a Paradigmas y código limpio, los cuales se asignarán al
comienzo del curso.

Medios y recursos didácticos:

Sitio oficial de ORACLE donde se toma el curso Fundamental programming y otros a


elección del docente el estudiante que obtienen el 80% en el examen del curso se
certifica, Sitio oficial de JAVA, aula Moodle.

Formas de interacción en los ambientes de aprendizaje y de acompañamiento del


trabajo independiente del estudiante:

Las sesiones presenciales se usan para introducir los temas, ejemplificación y la


presentación de resultados del trabajo de cada grupo de estudiantes.

Las sesiones de asesoría y monitoria, se usan para solucionar dudas y dificultades de


programación.

Página 5 de 7
Estrategias de internacionalización del currículo que se desarrollan para cumplir con las
intencionalidades formativas del microcurrículo:

Algunas de las referencias son internacionales.

Estrategias para abordar o visibilizar la diversidad desde la perspectiva de género, el


enfoque diferencial o el enfoque intercultural:

No aplica.

7. EVALUACIÓN (SUGERIDA)
Concepción de evaluación, modalidades y estrategias a través de las cuales se va a
orientar:

Se emplean actividades de Coevaluación entre grupos de trabajo como una actividad de


critica técnica al abordaje de la solución. Igualmente se invita a los estudiantes que el
código sea compartido entre ellos, colgado en repositorios abiertos y reusado.

Se genera juego de roles entre los grupos de tal forma que pueda haber evaluación entre
pares.

Finalmente se realiza heteroevaluación.

Procesos y resultados de aprendizaje del Programa Académico que se abordan en el


curso (según el Acuerdo Académico 583 de 2021 y la Política Institucional):

Ver Intencionalidades formativas

Momentos de evaluación del curso y sus respectivos porcentajes


Momento de evaluación Porcentaje
Exposiciones 20 %
Proyectos de clase 30 %
Proyectos de semestre 20 %
Parcial 20 %
Cursos de la plataforma de ORACLE ACADEMIC 10 %

8. BIBLIOGRAFÍA Y OTRAS FUENTES


Cultura o zona Bibliografía Palabras clave
geográfica
N/A THE JAVA PROGRAMMING LANGUAGE" JAVA

Página 6 de 7
KERN ARNOLD & JAMES GOSLING
N/A JAVA HOW TO PROGRAM" DEITEL & DEITEL JAVA
N/A https:// academy.oracle.com/ en/ oa- web- Java, IA con Jaca
overview.html
N/A Grokking Algorithms: An Illustrated Guide for Python
Programmers and Other Curious People
Aditya Bhargava

9. COMUNIDAD ACADÉMICA QUE PARTICIPÓ EN LA ELABORACIÓN DEL


MICROCURRÍCULO
Nombres y Apellidos Unidad académica Formación % de
académica participación
Diana Margot López Herrera Departamento de Ingeniería Magister 100
de Sistemas

Aprobado por Comité de carrera con acta 706 del 5 de Febrero de 2024
Aprobado en acta de Consejo de Facultad 2462 del 10 de Julio de 2024

Página 7 de 7

También podría gustarte