INSTITUTO ORIENTE DE PUEBLA AC
Nombre de integrantes:
Iliana Cruz Corsi
Michelle Torres Rodríguez
Belén Noriega Merlo
Materia:
Informática III
Maestra:
Alejandra Sánchez
Grado y Grupo:
6°G
Investigación de programación estructurada.
1
Índice
Definición de programación estructurada--------------------------------3
¿En qué consiste la programación estructurada?----------------------5
Ejemplos de lenguajes de programación---------------------------------6
¿En dónde se utilizan los lenguajes de programación?---------------7
Conclusión-----------------------------------------------------------------------9
Fuentes de Información-----------------------------------------------------10
2
Definición de programación estructurada:
La programación estructurada es una teoría de programación que consiste en construir programas de fácil comprensión, es especialmente útil, cuando se necesitan realizar correcciones o modificaciones después de haber concluido un programa o aplicación. Al utilizar la programación estructurada, es mucho más sencillo entender la codificación del programa, que se habrá hecho en diferentes secciones.
Se basa en una metodología de desarrollo de programas llamada refinamiento sucesivo: Se plantea una operación como un todo y se divide en segmentos más sencillos o de menor complejidad, una vez terminado todos los segmentos del programa, se procede a unificar las aplicaciones realizadas por el grupo de programadores. Si se ha utilizado adecuadamente la programación estructurada, esta integración debe ser sencilla y no presentar problemas al integrar la misma, y de presentar algún problema, será rápidamente detectable para su corrección.
La representación gráfica de la programación estructurada se realiza a través de diagramas de flujo, el cual representa el programa con sus entradas, procesos y salidas.
La programación estructurada propone segregar los procesos en estructuras lo más simple posibles, las cuales se conocen como secuencia, selección e interacción, que están disponibles en todos los lenguajes modernos de programación imperativa en forma de sentencias, combinando esquemas sencillos se pueden llegar a construir sistemas amplios y complejos pero de fácil entendimiento.
La programación estructurada es un método disciplinado de escribir programas que sean claros, que se demuestre que sean correctos y fáciles de modificar.
La programación estructurada consiste en dividir los programas en módulos y se basa en el desarrollo de programas que van de lo general a lo particular, es decir, del conjunto al elemento, es decir de un todo a lo específico.
Para la solución de un problema en particular, se inicia considerando las funciones que tiene que cumplir el programa en general y después se va desmembrando estas funciones en subfunciones más pequeñas hasta llegar al caso último o más particular y que ya no se pueda subdividir en casos más pequeños. Una vez que ya se tiene el programa desmembrado en de lo general a lo particular, se empieza a programar estas funciones pequeñas, particulares o módulos, de esta manera, siempre podremos construir nuevos módulos o unidades insertando el nombre del módulo donde corresponda y desarrollándolo a parte.
3
la modificación de los módulos es más fácil y se pueden referenciar cuantas veces se requiera, con lo que se ahorra tiempo en la programación, un programa tiene un diseño estructurado si cumple las dos siguientes condiciones:
• El teorema de Estructura.
• Está debidamente documentado
El teorema de Estructura dice que “un programa cumple el teorema de estructura si y sólo (ó) si es propio y contiene únicamente las tres estructuras básicas de control” que son la secuencial, la alternativa y la repetitiva, un programa es propio si y sólo si cumple: que tenga un solo punto de entrada y un solo punto de salida y que entre dos puntos de control del programa exista al menos un camino.
La programación estructurada es un estilo con el cual él se busca que el programador elabore programas sencillos y fáciles de entender, la programación estructurada hace uso de tres estructuras básicas de control que son: Estructura Secuencial, Estructura Selectiva y la Estructura Repetitiva (ó Iterativa)
La programación estructurada se basa un teorema fundamental, el cual afirma que cualquier programa, no importa el tipo de trabajo que ejecute, puede ser elaborado utilizando únicamente las tres estructuras básicas.
DEFINICIÓN DE LAS 3 ESTRUCTURAS BÁSICAS
4
¿En qué consiste la programación estructurada?
La programación estructurada consiste en la creación de un programa, que consta de un conjunto de código (instrucciones) que le permite al computador entender de qué se trata y que, por cierto, es el modo en que nosotros nos comunicamos con la máquina. Los lenguajes de programación se determinan además por su nivel de abstracción (bajo, medio y alto nivel), su forma de ejecución (compilados o interpretados) y según su paradigma (orientado a objetos, lógicos, imperativos).
Se prueba, se depura y se mantiene el código fuente de un programa informático. Dentro de la informática, los programas son los elementos que forman el software, que es el conjunto de las instrucciones que ejecuta el hardware de una computadora para realizar una tarea determinada. Por lo tanto, la programación es una de las principales áreas dentro de la informática.
5
Ejemplos de lenguajes de programación
Lograr independencia de la máquina, pudiendo utilizar un mismo programa en diferentes equipos con la única condición de disponer de un programa traductor o compilador, que lo suministra el fabricante, para obtener el programa ejecutable en lenguaje binario de la máquina que se trate. Además, no se necesita conocer el hardware específico de dicha máquina. Aproximarse al lenguaje natural, para que el programa se pueda escribir y leer de una forma más sencilla, eliminando muchas de las posibilidades de cometer errores que se daban en el lenguaje máquina, ya que se utilizan palabras (en inglés) en lugar de cadenas de símbolos sin ningún significado aparente. Incluir rutinas de uso frecuente como son las de entrada/salida, funciones matemáticas, manejo de tablas, etc., que figuran en una especie de librería del lenguaje, de tal manera que se pueden utilizar siempre que se quieran sin necesidad de programarlas cada vez.
Lenguajes de bajo nivel Código máquina Ensamblador Lenguajes de medio nivel BCPL C Lenguajes de alto nivel ADA ALGOL BASIC Clipper Cobol C++ FORTH Fortran Haskell Informix 4gl Java Lexico (con códigos en castellano o sinónimos en otros idiomas) Lisp Logo Modula PASCAL Prolog RPG Visual Basic
6
¿En dónde se utilizan los lenguajes de programación?
Dependiendo del tipo de programación, se pueden aplicar en diversas partes.
Programación funcional La programación funcional es un estilo de programación basado en la utilización de funciones matemáticas. El cálculo lambda, desarrollado por el matemático norteamericano Alonzo Church en la primera mitad del siglo veinte, es la base teórica de este estilo de programación. Lisp, Haskell, ML y Erlang son ejemplos de lenguajes funcionales.
Las operaciones de cómputo en la programación funcional se llevan a cabo a través de la evaluación de expresiones que producen valores y que están libres de efectos secundarios. Por el contrario, en el estilo de programación imperativa, al cual pertenecen la mayoría de los lenguajes convencionales, el énfasis está en ejecutar enunciados que precisamente producen efectos laterales. En este caso, el principal efecto lateral es la mutación explícita de los valores contenidos en memoria.
Las variables en los lenguajes funcionales son parecidas a las variables de álgebra. Esto es, una variable representa un valor inicialmente desconocido, pero una vez que se conoce, este ya no cambia. En contraste, en los lenguajes imperativos una variable es simplemente el nombre de una localidad de memoria cuyo contenido puede ser arbitrariamente leído y/o modificado. Gracias a que las variables son asignables una sola vez, los programas funcionales cuentan con una propiedad conocida como transparencia referencial. Se dice que una expresión es referencialmente transparente si puede ser remplazada por su valor, pero sin alterar los resultados producidos por el programa. La transparencia referencial es importante porque permite al programador, o al traductor del lenguaje, razonar sobre el comportamiento del programa. Este tipo de razonamiento es útil para probar que un programa es correcto, optimizar código a través de cachés, eliminar sub-expresiones comunes, simplificar algoritmos, e incluso parelelizar la evaluación de sub-expresiones.
Los lenguajes funcionales han introducido importantes conceptos que han sido posteriormente incorporados en muchos otros lenguajes. Uno de los más notables es el referente a la recolección de basura, en donde el ambiente de ejecución, y no el programador, es responsable de determinar cuando cierto objeto de memoria ya no es usado por el programa y por lo tanto puede ser reutilizado en alguna otra parte. Lisp fue el primer lenguaje que usó esta técnica, ocurriendo esto a finales de los años cincuenta. Sin embargo, todavía a inicios de la década de los años noventa había poco respeto por parte de la industria de software hacia los lenguajes que hacían uso extensivo de recolección de basura, debido
7
principalmente al costo de ejecución en el que se incurre. Gracias a la atención que generó Java en la última década, hoy en día prácticamente todos los lenguajes considerados “modernos” incorporan recolección de basura.
Otros conceptos importantes en que los lenguajes funcionales han sido pioneros incluyen: funciones como objetos de primera clase, cerraduras léxicas, recursión, tipos dinámicos, inferencia de tipos, y meta-programación.
Lenguajes dinámicos Un lenguaje de programación dinámico es un lenguaje de alto nivel que lleva a cabo en tiempo de ejecución muchas acciones que otros lenguajes típicamente llevan a cabo en tiempo de compilación. Estas acciones incluyen cosas como agregar y evaluar código, modificar el sistema de tipo de datos, añadir propiedades a objetos, etcétera. En esta categoría de lenguajes están Lisp, Smalltalk, Tcl, JavaScript, Python, Ruby, Perl, PHP y Groovy. Dada su naturaleza, los lenguajes dinámicos son normalmente interpretados, aunque sí existen compiladores para algunos de ellos.
Recientemente mucha gente ha tomado interés en los lenguajes dinámicos. Una de las principales razones es el incremento en la productividad que se logra al usarlos. Por ejemplo, es común que un programa escrito en Ruby o Python requiera entre 2 a 10 veces menos código que su equivalente en lenguaje C o Java. Usualmente un programa que es más pequeño toma menos tiempo en escribirse, es más fácil de comprender y modificar, y contiene menos errores que uno de mayor tamaño. Claro, esto no viene sin algunos inconvenientes. No es inusual que un programa escrito en un lenguaje dinámico llegue a ser decenas o incluso hasta centenas de veces más lento que un programa escrito en un lenguaje convencional compilado. Para cierto tipo de aplicaciones esto puede ser irrelevante.
8
Conclusión
La programación estructurada nos ayuda a que los programas sean más fáciles de hacer y de entender.
La Programación estructurada se basa en una sola teoría que dice que sin importar que se trate el programa siempre y cuando tenga las 3 estructuras básicas (secuencia, selección iteración).
La programación estructurada propone segregar los procesos en estructuras lo más simple posibles, las cuales se conocen como secuencia, selección e interacción. Ellas están disponibles en todos los lenguajes modernos de programación imperativa en forma de sentencias. Combinando esquemas sencillos se pueden llegar a construir sistemas amplios y complejos pero de fácil entendimiento.
9
Fuentes de Información
http://www.sites.upiicsa.ipn.mx/polilibros/portal/Polilibros /P_terminados/PolilibroFC/Unidad_III/Unidad%20III_8.htm
http://www.monografias.com/trabajos73/tipos-lenguajes- programacion/tipos-lenguajes-programacion2.shtml
http://sg.com.mx/content/view/630
http://definicion.de/programacion/
http://programaciones1.blogspot.mx/p/blog-page.html
10