Universidad Autónoma del Estado de México

Slides:



Advertisements
Presentaciones similares
Escuela de Ciencias Básicas Tecnologías e Ingeniería INGENIERÍA INDUSTRIAL PRESENTACION DEL CURSO ADMINISTRACION DE INVENTARIOS Ing.Esp. Msc. César.
Advertisements

2012-BM5A. Introducción Todos los lenguajes de programación son distintos entre si. Sin embargo, pueden ser agrupados según la forma de pensar y estructurar.
MÉTODOS Y ELEMENTOS DE PROGRAMACIÓN MÉTODOS Y ELEMENTOS DE PROGRAMACIÓN.
Tipos de programación Lic. Natisma Julieta López Salas.
TUTORIA 1 Lógica para la Computación TUTORIA 1 Facultad de Ciencias Naturales y Matemáticas.
Pruebas de Funcionalidad de Software: Caja Negra y Caja Blanca Curso: Diseño de Sistemas 9no. Semestre.
Figure: Algoritmos. Conceptos básicos. Programación: 1.Establecer una secuencia de acciones que: puedan ser ejecutadas por el procesador realicen una.
Herencia Multiple en Java
Universidad autónoma del estado de México
Ingreso , proceso y salida de datos
Las categorías didácticas Formas de organización
Análisis de resultados Evaluación diagnóstica en línea
ESTRATEGIAS DE ENSEÑANZA
“POLIMORFISMO PARAMETRICO”
Evolución de paradigmas y lenguajes de Programación
Ingeniero en Computación José Alfredo Cobián Campos
UNIVERSIDAD DE GUAYAQUIL CARRERA: SISTEMAS MULTIMEDIA
“LOS PASOS DEL PROCESO DE CAPACITACIÓN”
INSTRUMENTOS PARA LA VALIDACIÓN DE MATERIALES IMPRESOS
INTREGRANTES DE EQUIPO:
UNIVERSIDAD ICEP INTELIGENCIA ARTIFICIAL INGENIERÍA EN SISTEMAS COMPUTACIONALES Martes, 24 de Octubre de 2017 REPRESENTACIÓN DEL CONOCIMIENTO Y RAZONAMIENTO.
Oscar Martin Tirado Ochoa
Tema 6. Conceptos básicos de programación (Clase 2)
CREAR DIAGRAMA DE FLUJO
Tema 3. Lenguaje unificado de modelado UML
Tema 3 Fundamentos y diseño de algoritmos
ALGORITMOS. IFE 115: INFORMÁTICA BÁSICA Lic. Marcio Rodas
Software Es intangible, existe como información, ideas, conceptos, símbolos, pero no ocupa un espacio físico, se podría decir que no tiene sustancia. Se.
ALGORITMOS es un conjunto preescrito de instrucciones o reglas bien definidas, ordenadas y finitas que permite realizar una actividad mediante pasos.
Índice temático 2.1 Análisis de problemas. 2.2 Representación de algoritmos: gráfica y pseudocódigo. 2.3 Diseño de algoritmos aplicados a problemas 2.4.
Metodología de la programación
Algoritmo Capitulo Cinco.
TAREA DEFINICIONES: Software: Equipamiento lógico o soporte lógico de una computadora digital; comprende el conjunto de los componentes lógicos necesarios.
Republica Bolivariana De Venezuela Ministerio Del Poder Popular Para la Educación U.E.C Juan XXIII Fe y Alegría Docente : Egilde Márquez Infografía Integrantes:
Ingeniería del Software
DIA 2: Evaluación por competencias
CONCEPTOS PRELIMINARES (Cont)
INTRODUCCIÓN ING. IVONNE MALDONADO. PROGRAMACIÓN Programar no es mas que idear y ordenar las acciones. Lograr que un programa cumpla con una cierta tarea.
IFE 115: INFORMÁTICA BÁSICA
EL SISTEMA OPERATIVO Es un conjunto de programas hechos para la ejecución de varias tareas, en las que sirve de intermediario entre el usuario y la computadora.
Programación: paradigma estructurado Mgs Christian Rosado.
HERRAMIENTAS DE PROGRAMACIÓN
Fundamentos de programación
00:46 1 El software educativo es definido como un conjunto de programas, documentos, procedimientos, y rutinas asociados con la operación de un sistema.
U NIVERSIDAD S AN P EDRO F ILIAL B ARRANCA F ACULTAD DE I NGENIERÍA E SCUELA P ROFESIONAL DE I NG. I NFORMÁTICA Y DE S ISTEMAS C URSO : ALGORITMOS Tema.
MTI. Rosa Imelda García Chi Programación Lógica y Funcional PLYF UNIDAD 1. Conceptos Fundamentales 1.1 Estilos de Programación Enero-Junio 2018.
Programación Orientada a Objetos. ¿Qué es un ordenador? “Un sistema digital con tecnología microelectrónica capaz de procesar información a partir de.
CURSO PROGRAMACIÓN BÁSICA SEMANA 3 ¿Qué es un programa?
Autores: Ñauñay Colcha Jorge Luis Bravo Maldonado Paulo Dennis
Introducción al Diseño del Sofware
Fundamentos de la Programación I
FUNDAMENTOS DE PROGRAMACIÓN. INTRODUCCIÓN  Conceptos: Informática, Ordenador, Programa, Dato, Bit, Byte, Hardware, Software, Lenguaje de Programación,
Teoría Nº 3 Conceptos Básicos de Algoritmia Estructuras de Control
Docente: Ing. Francisco Rodríguez
M. en TI. Omar Téllez Barrientos DOCENTE DE INFORMÁTICA GENERACIÓN DE PSEUDOCÓDIGOS Y ALGORITMOS
Informática Aplicada al Medio Ambiente - Curso 99/00 1 Tema 6. Introducción a la programación 1 Conceptos básicos 2 Los algoritmos – Concepto de algoritmo.
CURSO LOGICA DE SISTEMAS. Lógica Es una ciencia formal que estudia los principios de la demostración e inferencia válida. Una inferencia es una evaluación.
Estructura general de un programa. Estructura general de un programa. Pseudocódigo Diagrama de flujo Concepto de programas. Concepto de programas. Instrucciones.
Informática Aplicada al Medio Ambiente - Curso 99/00 1 Tema 6. Introducción a la programación 1 Conceptos básicos 2 Los algoritmos – Concepto de algoritmo.
Tema 6. Conceptos básicos de programación (Clase 2)
CONTROLES Y ESTRUCTURAS BÁSICAS DE PROGRAMACIÓN  1. Algoritmos: conjunto de instrucciones programadas para resolver una tarea específica.  2. Datos:
Características de los Sistemas Operativos
Informática Aplicada al Medio Ambiente - Curso 99/00 1 Tema 6. Introducción a la programación 1 Conceptos básicos 2 Los algoritmos – Concepto de algoritmo.
1 PROGRAMACION ORIENTADA A OBJETOS MARIA LAURA ESPIN B. INSTITUTO TECNOLÓGICO SUPERIOR ÁNGEL POLIBIO CHÁVEZ TECNOLOGÍA SUPERIOR EN DESARROLLO DE SOFTWARE.
Desarrollo de Sistemas de Información Contable - Sis USB 1 METODOLOGIAS DE DESARROLLO DE SOFTWARE.
Desarrollo de Sistemas de Información Contable - Sis USB 1 METODOLOGIAS DE DESARROLLO DE SOFTWARE.
EVOLUCIÓN DE LOS PARADIGMAS DE PROGRAMACIÓN Integrantes: Christian Abad, Kevin Colcha.
¿Qué son los Paradigmas de Programación?  Es una propuesta tecnológica, la cuál es adoptada por una comunidad de programadores cuyo núcleo central es.
Diseñas y elaboras algoritmos para la solución de problemas
FIGURE: Algoritmos. CONCEPTOS BÁSICOS. Programación: 1.Establecer una secuencia de acciones que: puedan ser ejecutadas por el procesador realicen una.
Transcripción de la presentación:

Universidad Autónoma del Estado de México Centro Universitario UAEM Ecatepec 2016-B Programa de Estudios por Competencias “Lenguaje de Programación Estructurado” Programa educativo: “Ingeniería en computación” Área de docencia: Programación e Ingeniería de Software Créditos: 5. Unidad I. Conocer la importancia de los Lenguajes de Programación Estructurados (LPE) y su utilidad. “Paradigmas de los LP” Autora: Dra. Ana Luisa Ramírez Roja.

Índice de contenidos Presentación Ubicación espacial de la asignatura Objetivos de la asignatura Conocimientos Guion explicativo Paradigmas de los LP Antecedentes Definición Características Programación Estructurada Enfoque Algorítmico Programación Modular Conclusiones Referencias bibliográficas

1. Presentación Una de las principales actividades del Ingeniero en Computación es la programación, cuyas bases deben ser adquiridas en su formación. La programación también evoluciona continuamente, sin embargo, la programación estructurada en otros paradigmas de programación es el conocimiento base en la comprensión de procesos que requieren la construcción de aplicaciones de mediana y alta complejidad. Esta unidad de aprendizaje tiene la finalidad de proporcionar y desarrollar en el alumno las habilidades que requiere para la codificación de programas en un LPE, cubriendo las necesidades de programación y codificación para el desarrollo de sistemas que un profesional en el área que la computación pueda tener.

2. Ubicación espacial de la Unidad de aprendizaje

2. Ubicación espacial de la Unidad de aprendizaje

3. Objetivo General: Codificar programas en un lenguaje de programación estructurado, haciendo uso de las funciones más importantes de dicho lenguaje.

4. Conocimientos: Aplicar la estructura de datos árbol en el desarrollo de soluciones a problemas informáticos.

5. Guion Explicativo El presente material busca primeramente acercarnos de manera analítica al tema, para conocer cual es la importancia sustantiva de la unidad de aprendizaje en nuestro ámbito de desempeño; a fin de reforzar las habilidades, actitudes y valores mediante las estrategias didácticas.

Unidad 1. Paradigmas de los lenguajes de programación

¿Qué es un paradigma? procede del griego παράδειϒμα se forma a partir de la unión del prefijo “para”, que significa junto, y de la palabra “deigma” que se traduce como ejemplo o modelo. A partir de los 60’s se emplea para referirse a un ejemplo de modelo a seguir Descripción de las series de prácticas que trazan los lineamientos de una disciplina científica a lo largo de un cierto lapso de tiempo (Thomas Kuhn, 1971). Kuhn, Thomas S. (1971) [1962]. La estructura de las revoluciones científicas. México, D. F.: Fondo de Cultura Económica. ISBN 9788437500461.

Paradigma  Es aquello que debe ser observado; la clase de interrogantes que deben desarrollarse para obtener respuestas en torno al propósito que se persigue; qué estructura deben poseer dichos interrogantes y marca pautas que indican el camino de interpretación para obtener los resultados. Ejemplo ver: http://www.bibliotecapleyades.net/esp_paradigmaholo03.htm

¡cambio de paradigma! Cuando un paradigma ya no puede satisfacer los requerimientos de una ciencia es sucedido por otro.  ante nuevos hallazgos que invalidan esos conocimientos previos Ver: https://comenio.files.wordpress.com/2007/08/paradigma.pdf

Hay una gran cantidad de Lenguajes de Programación (LP), algunos han evolucionado mas que otros, algunos siguen vigentes, mientras otros han sido operativos durante períodos más cortos y actualmente están en desuso. Dada esta gran variedad, es difícil mostrar una visión de todos, sin embargo resulta mas claro verlos bajo una clasificación o paradigma. En general un lenguaje es un método conveniente que describe las estructuras de información y las acciones para ejecución de una tarea.

Clasificación por paradigma Describe la programación como una secuencia instrucciones o comandos que cambian el estado de un programa. El código máquina en general está basado en el paradigma imperativo. Su contrario es el paradigma declarativo. Paradigma Imperativo Incluye el paradigma procedimental (procedural) Describe (declara) cómo es algo (las propiedades dela solución buscada), dejando indeterminado el algoritmo (conjunto de instrucciones) usado para encontrar esa solución. Tiene desventajas en la eficiencia, pero ventajas en la solución de determinados problemas. Paradigma Declarativo

Clasificación por paradigma Paradigma Estructurado La programación se divide en bloques (procedimientos y funciones) que pueden o no comunicarse entre sí. Se controla con secuencia, selección e iteración. Permite reutilizar código programado y otorga una mejor compresión de la programación. Paradigma Orientado a Objetos Basado en la idea de encapsular estado y operaciones en objetos. Se puede incluir, el paradigma basado en objetos, que posee herencia y subtipos entre objetos. Lenguajes: Simula, Smalltalk, C++, Java, Visual Basic .NET, etc. Su principal ventaja es la reutilización de códigosy su facilidad para pensar soluciones a determinados problemas.

Clasificación por paradigma Paradigma Funcional Concibe a la computación como la evaluación de funciones matemáticas y evita declarar y cambiar datos, hace hincapié en la aplicación de las funciones y composición entre ellas, más que en los cambios de estados y la ejecución secuencial de comandos (como lo hace el paradigma procedimental). Permite resolver problemas de forma elegante y evitan los efectos secundarios comunes en otro tipo de programaciones. Paradigma lógico Se basa en la definición de reglas lógicas para luego, a través de un motor de inferencias lógicas, responder preguntas planteadas al sistema y así resolver los problemas. Ej.: prolog.

¿Cuál elegir? En la práctica cada paradigma de programación es implementado a través de diversos lenguajes. Existen cuatro modelos básicos de computación que describen la mayoría de lenguajes actuales: imperativo, aplicativo, con base en reglas y orientado a objetos. ¿Cual elegir? El que se adapte a tu necesidad o el que te soliciten.

¿Que es la programación estructurada? Es un paradigma de la programación el cual esta enfocado a mejorar la calidad y tiempo en el desarrollo de un programa Únicamente utiliza procedimientos  y tres estructuras: secuencia, selección (if y switch) y repetición (bucles for y while) Surge en la década de 1960

PROGRAMACION ESTRUCTURADA 1960 PRINCIPIOS PROGRAMACION ESTRUCTURADA

IMPLEMENTACION DE LA SENTENCIA 1968 IMPLEMENTACION DE LA SENTENCIA “GOTO”

EJEMPLOS DE MAS CLARA Y EFICIENTE 1974 LA SENTENCIA GOTO EJEMPLOS DE MAS CLARA Y EFICIENTE

1987 FRANK RUBIN “SENTENCIA GOTO” CONCIDERADA DAÑINA

¿Qué es un lenguaje de programación estructurado?. Los lenguajes de programación estructurada ofrecen un conjunto de instrucciones con una determinada estructura para ejecutar una función o bien, la solución de un problema

Características de los Lenguajes de programación estructurados Se apegan al teorema del programa estructurado Cada uno de los lenguajes nos da la facilidad de entender cada una de las partes de nuestro programa Los programas hechos en un lenguaje de programación estructurado no contienen GOTO, debido a que con el, la estructura de nuestro programa se perdería, convirtiéndolo en un programa espagueti, o bien, revuelto Fáciles de depurar

Böhm y Jacopini

El teorema del programa estructurado Propuesto por Böhm y Jacopini, demuestra que todo programa puede escribirse utilizando únicamente las tres instrucciones de control siguientes: Secuencia. Instrucción condicional. Iteración (bucle de instrucciones) con condición al principio.

Ventajas de la programación estructurada Los programas son mas fáciles de entender La estructura es clara y es comprensible cada paso Reducción de esfuerzo en la depuración del programa Reducción de los costos en el mantenimiento del programa El rendimiento de los programadores incrementa

Algunos lenguajes usados para la programación estructurada.

DE PROGRAMACIÓN ESTRUCTURADA ENFOQUE ALGORITMICO EN LA SOLUCIÓN DE PROBLEMAS DE PROGRAMACIÓN ESTRUCTURADA

PROGRAMADOR ALGORITMO DEFINIDO Entrada Preciso Proceso Finito Salida ALGORITMO

Mezcla de lenguaje de programación y español PSEUDOCODIGO Mezcla de lenguaje de programación y español

TIPOS DE DATOS Entero Real Caracter Booleano Otro…

TIPOS DE DATOS E IDENTIFICADORES

ESTRUCTURAS SECUENCIALES ESTRUCTURAS SELECTIVAS

Programación Modular

¿Qué es? Consiste en dividir un programa en módulos o subprogramas con el fin de hacerlo: Mas legible Manejable

Diagrama del funcionamiento de un subprograma ENTRADA PROCESO SALIDA Parámetros Subrutina o función Valor de retorno

Programación Modular Programa complejo Dividir en varios sub problemas mas simples Refinamiento sucesivo, divide y vencerás o análisis descendente

Definición de módulo Es cada una de las partes de un programa que resuelve uno de los sub problemas en que se divide el problema complejo original. Cada uno tiene una tarea definida y algunos necesitan de otros para poder operar. En caso de necesitar de otro, puede comunicarse con éste mediante una interfaz de comunicación que también debe de estar bien definida.

Ventajas de los módulos Facilitan la escritura y depuración de un programa Localización rápida de errores La modificación de un módulo no afecta a los demás

Lenguajes Modulares Java Perl Ruby Modula-2

Conclusiones Existen diversos paradigmas de lenguajes de programación que se han diseñado para facilitar la tarea de la programación en diferentes ámbitos. La POO es un paradigma dirigido al mejoramiento de la calidad del sw por medio de la observación del sw. La Programación Lógica es n paradigma orientado a la expresión de los problemas en términos lógicos para su posterior solución por métodos de inferencia u otra técnica.

Referencias Bibliográficas Kernighan, Ritchie, El lenguaje de programación C, Prentice Hall, 2ª . Edición, 1991. Márquez, Osorio, Olvera, Introducción a la programación estructurada en C, Pearson, 2011 Ceballos, Enciclopedia del Lenguaje C, Alfaomega, 1997