Este material didáctico fue desarrollado para la asignatura de Tópicos Avanzados de Programación, del plan SCD-1027 2016 de Ing. En Sistemas Computacionales
Esta presentación es parte del contenido del curso de Programación Avanzada impartido en la Universidad Rafael Landívar durante el año 2015.
Incluye los temas:
• POO - atributos y métodos
Creado por Ing. Alvaro Enrique Ruano
Este material didáctico fue desarrollado para la asignatura de Tópicos Avanzados de Programación, del plan SCD-1027 2016 de Ing. En Sistemas Computacionales
Esta presentación es parte del contenido del curso de Programación Avanzada impartido en la Universidad Rafael Landívar durante el año 2015.
Incluye los temas:
• POO - atributos y métodos
Creado por Ing. Alvaro Enrique Ruano
TECNOLÓGICO NACIONAL DE MÉXICOInstituto Tecnológico Superior de Guasave
Ingeniería en Sistemas Computacionales
Fundamentos de Programación
Unidad V: Modularidad
Retícula ISIC-2010-224: Programa: AED-1285
TOMADO Y ADAPTADO CON FINES INSTRUCCIONALES PARA LA UNIDAD 3 y 4 DE LA ASIGNATURA DE TALLER DE COMPUTACIÓN DEL 1ER SEMESTRE DE INGENIERÍA DE COMPUTACIÓN PARA LA UNIVERSIDAD VALLE DEL MOMBOY
03 uni1-estructuras de datos-arreglos 2 dFranco Guamán
Estructuras de Datos - Arreglos 2 o más dimensiones - Diapositivas para clases - ciclo octubre 2018 -febrero 2019. UNiversidad Técnica Particular de Loja
Escaneo y eliminación de malware en el equiponicromante2000
El malware tiene muchas caras, y es que los programas maliciosos se reproducen en los ordenadores de diferentes formas. Ya se trate de virus, de programas espía o de troyanos, la presencia de software malicioso en los sistemas informáticos siempre debería evitarse. Aquí te muestro como trabaja un anti malware a la hora de analizar tu equipo
Los desafíos de calidad de software que nos trae la IA y los LLMsFederico Toledo
En esta charla, nos sumergiremos en los desafíos emergentes que la inteligencia artificial (IA) y los Large Language Models (LLMs) traen al mundo de la calidad del software y el testing. Exploraremos cómo la integración, uso o diseño de modelos de IA plantean nuevos retos, incluyendo la calidad de datos y detección de sesgos, sumando la complejidad de probar algo no determinístico. Revisaremos algunas propuestas que se están llevando adelante para ajustar nuestras tareas de testing al desarrollo de este tipo de sistemas, incluyendo enfoques de pruebas automatizadas y observabilidad.
Si bien los hospitales conjuntan a profesionales de salud que atienden a la población, existe un equipo de organización, coordinación y administración que permite que los cuidados clínicos se otorguen de manera constante y sin obstáculos.
Mario García Baltazar, director del área de Tecnología (TI) del Hospital Victoria La Salle, relató la manera en la que el departamento que él lidera, apoyado en Cirrus y Estela, brinda servicio a los clientes internos de la institución e impulsa una experiencia positiva en el paciente.
Conoce el Hospital Victoria La Salle
Ubicado en Ciudad Victoria, Tamaulipas, México
Inició operaciones en el 2016
Forma parte del Consorcio Mexicanos de Hospitales
Hospital de segundo nivel
21 habitaciones para estancia
31 camas censables
13 camillas
2 quirófanos
+174 integrantes en su plantilla
+120 equipos médicos de alta tecnología
+900 pacientes atendidos
Servicios de +20 especialidades
Módulos utilizados de Cirrus
HIS
EHR
ERP
Estela - Business Intelligence
1. Fundamentos de
Programación
M.Sc. Franco Guamán B.
Universidad Técnica Particular de Loja
Departamento de Ciencias de la Computación y
Electrónica
PROGRAMACIÓN MODULAR
2. Contenidos
Ventajas
Propósito
Características generales
Subprogramas (funciones y procedimientos)
Funciones
Procedimientos (Subrutinas)
Ámbito de variables
Paso de parámetros
Fundamentos de Programación - Franco Guamán 2
3. Fundamentos de Programación - Franco Guamán 3
Ventajas
• Mayor claridad para el desarrollo de algoritmos
• Desarrollo de programas con mayor complejidad
• Utilización de herramientas adicionales
• Nuevos enfoque como la Programación Orientada a
Objetos (OOP)
Programación Modular
4. Fundamentos de Programación - Franco Guamán 4
Propósito
• Facilitar la comprensión del diseño modular para lograr
el desarrollo de programas complejos de manera
sencilla permitiendo la reutilización de fragmentos de un
programa.
Programación Modular
5. Fundamentos de Programación - Franco Guamán 5
Características generales
• Divide y vencerás
• Diseño descendente (Top-down)
• Partes son independientes entre si
Programación Modular
Main Program
Subprogram3()Subprogram1() Subprogram2()
6. Fundamentos de Programación - Franco Guamán 6
Subprogramas (funciones/procedimientos)
• Pueden realizar las mismas acciones de un programa.
o Aceptar datos
o Realizar cálculos (ejecutar instrucciones)
o Devolver resultados
• Son utilizados para un propósito específico
• Es llamado o invocado desde un programa principal, ejecuta
una tarea y devuelve el control al lugar desde donde fue
llamado.
• Un subprograma puede a su vez llamar a sus propios
subprogramas.
Programación Modular
7. Fundamentos de Programación - Franco Guamán 7
Programación Modular
Inicio
instrucción 1
instrucción 2
subprograma1()
instrucción 3
subprograma1()
instrucción 4
subprograma2()
instrucción 5
Fin
Inicio
instrucción 1
instrucción 2
instrucción 3
Fin
Programa principal
Subprograma1
Pueden ser llamadas desde el
programa principal, para luego
devolver el control al lugar
desde donde fue invocado
8. Fundamentos de Programación - Franco Guamán 8
Programación Modular
Inicio
instrucción 1
instrucción 2
subprograma1()
instrucción 3
subprograma1()
instrucción 4
subprograma2()
instrucción 5
Fin
Programa principal
Inicio
instrucción 1
instrucción 2
instrucción 3
Fin
Subprograma1
Pueden ser solicitados
varias veces durante la
ejecución de un
programa
9. Fundamentos de Programación - Franco Guamán 9
Programación Modular
Inicio
instrucción 1
instrucción 2
subprograma1()
instrucción 3
subprograma1()
instrucción 4
subprograma2()
instrucción 5
Fin
Programa principal Inicio
instrucción 1
subprograma 2.1()
instrucción 3
Fin
Subprograma2
Inicio
instrucción 1
instrucción 2
instrucción 3
Fin
Subprograma 2.1
Un subprograma a
su vez puede
solicitar el servicio
de otros
subprogramas
10. Fundamentos de Programación - Franco Guamán 10
Programación Modular
Inicio
instrucción 1
instrucción 2
subprograma1()
instrucción 3
subprograma1()
instrucción 4
subprograma2()
instrucción 5
Fin
Programa principal Inicio
instrucción 1
subprograma 2.1()
instrucción 3
Fin
Subprograma2
11. Fundamentos de Programación - Franco Guamán 11
Programación Modular
FUNCIONES
• Reciben uno a más parámetros, los procesan y
devuelven un único resultado.
TIPOS:
Internas. Incorporadas al
sistema.
Externas. Creadas por el
usuario.
12. Fundamentos de Programación - Franco Guamán 12
Programación Modular
DECLARACIÓN DE FUNCIONES
<tipo_de_resultado> funcion <nombre> (lista de parámetros)
[declaraciones locales]
Inicio
<acciones> //cuerpo de la función
Devolver (<expresion>)
Fin_funcion
int suma (int num1, int num2){
int resp;
resp = num1 + num2;
return resp:
}
Declaración de
variables
Tipo de resultado Lista de
parámetros
cabecera
Valor
devuelto
13. Fundamentos de Programación - Franco Guamán 13
Programación Modular
INVOCACIÓN DE FUNCIONES
Dado que una función necesariamente debe devolver un valor, debe
ser invocado desde un lugar en donde tal valor pueda ser evaluado o
almacenado ej:
• Asignación a una variable:
a = nombre_funcion();
• Como parte de una sentencia de control:
If (nombre_funcion() == ?){
Instrucciones
}
• Como parte de una expresión:
printf(‘Resultado igual a : ’+ nombre_funcion());
14. Fundamentos de Programación - Franco Guamán 14
Programación Modular
PROCEDIMIENTOS (SUBRUTINAS)
• Pueden o no devolver valores.
• Ejecutan un proceso específico.
• Su invocación se realiza directamente, ej:
nombre_procedimiento();
• Declaración:
procedimiento <nombre> ([lista de parámetros])
Inicio
<acciones>
Fin_procedimiento
15. Fundamentos de Programación - Franco Guamán 15
Programación Modular
ÁMBITO DE LAS VARIABLES
LOCALES:
• Declaradas o definidas dentro de un subprograma.
• Es distinta a las variables con el mismo nombre declaradas en
cualquier parte del programa principal u otro subprograma.
• El espacio de memoria vinculado a ellas es liberado al terminar la
ejecución del subprograma y devolver el control al programa que lo
solicitó.
• Su área de acción es solamente dentro del subprograma que la
creo.
• No es accesible desde ningún otro subprograma.
16. Fundamentos de Programación - Franco Guamán 16
Programación Modular
ÁMBITO DE LAS VARIABLES
GLOBALES:
• Declaradas o definidas en el programa principal, del que dependen
todos los subprogramas.
• Pueden compartir información de diferentes subprogramas.
• Su área de acción es en todo el programa.
• Pueden ser accesibles desde los subprogramas.
• El espacio de memoria vinculado a ellas solamente se libera
cuando terminamos la ejecución del programa.
17. Fundamentos de Programación - Franco Guamán 17
Programación Modular
ÁMBITO DE LAS VARIABLES
Programa DEMO
tipo X, X1, …
Procedimiento A
tipo Y, Y1, …
.
.
.
.
Procedimiento C
tipo W, W1, …
.
.
.
.
Procedimiento B
tipo Z, Z1, …
.
.
.
Ámbito de X
Ámbito de Y
Ámbito de WÁmbito de Z
Ámbito de variables
18. Fundamentos de Programación - Franco Guamán 18
Programación Modular
PASO DE PARÁMETROS
Paso por valor: Si éstos parámetros son modificados
dentro de un subprograma, al terminar el mismo aún
mantendrá el valor original con el que llegó.
Inicio
Entero S
S 0
Presentar suma(s)
presentar s
fin
Leer numero1
Leer numero2
S numero1 + numero2
Devolver S
Fin_función
principal función suma(entero S)entero
5
8
¿Cuál será el valor de S al momento de presentarlo?
19. Fundamentos de Programación - Franco Guamán 19
Programación Modular
PASO DE PARÁMETROS
Paso por referencia: Si éstos parámetros son modificados
en un subprograma, al terminar, éste adoptará el nuevo
valor asignado a él.
Inicio
Entero S
S 0
Presentar suma(s)
presentar s
fin
Leer numero1
Leer numero2
S numero1 + numero2
Devolver S
Fin_función
principal función suma(entero var S)entero
5
8
¿Cuál será el valor de S al momento de presentarlo?
21. Fundamentos de Programación - Franco Guamán 21
Referencias
Joyanes A. L. (01-may-2008). «Fundamentos de Programación. Algoritmos, estructuras
de datos y objetos». Cuarta Edición. México. Mc Graw Hill.
Celdo. A. (02-feb-2013). «Funciones y Procedimientos». Recuperado el 12 de junio de
2015, de Slideshare: http://es.slideshare.net/andersonceldo/funciones-y-
procedimientos-16315275?qid=71c4930f-3890-4f11-9568-
b9b9ed086a7c&v=default&b=&from_search=7