Paradigmas de programacion
Transcript of Paradigmas de programacion
5/11/2018 Paradigmas de programacion - slidepdf.com
http://slidepdf.com/reader/full/paradigmas-de-programacion-55a2315fa2ce7 1/9
Universidad Tecnológica De Nezahualcóyotl
Diseño de aplicaciones I
Paradigmas de programación estructurada y paradigmas de
programación orientada a objetos
Profesora: Adriana García Valdespino
Alumno: José Luis Francisco Cortes
5/11/2018 Paradigmas de programacion - slidepdf.com
http://slidepdf.com/reader/full/paradigmas-de-programacion-55a2315fa2ce7 2/9
Índice
Problemática ------------------------------------------------------------------------1
Justificación --------------------------------------------------------------------------1
Introducción -------------------------------------------------------------------------1
Paradigma de programación estructurada -----------------------------------2
Principios de programación estructurada ------------------------------------2
Funcionamiento de la programación estructurada-------------------------3
Paradigma de programación orientada a objetos --------------------------4
Características de la programación orientada a objetos ------------------4
Abstracción -----------------------------------------------------------------------------------4
Encapsulado de datos ----------------------------------------------------------------------5
Ocultación de datos ------------------------------------------------------------------------5
Herencia ---------------------------------------------------------------------------------------5
Polimorfismo ---------------------------------------------------------------------------------5
Java ---------------------------------------------------------------------------------------------6
La plataforma java --------------------------------------------------------------------------6
Maquina virtual de java -------------------------------------------------------------------6
Conclusión ------------------------------------------------------------------------------------7
Bibliografía ------------------------------------------------------------------------------------7
5/11/2018 Paradigmas de programacion - slidepdf.com
http://slidepdf.com/reader/full/paradigmas-de-programacion-55a2315fa2ce7 3/9
Problemática:
Paradigmas, investigar los principales paradigmas de programación; estructurada y orientada a
objetos.
Justificación:
En los diversos lenguajes de programación que existen, hay variedad de paradigmas de programación,
los cuales son importantes que los conozca el programador para dar mejor solución a las
problemáticas de programación y así mismo tener un mejor conocimiento de la teoría y conceptos de
programación.
Introducción
Un paradigma de programación es un modelo básico de diseño y desarrollo de programas, que permite
producir programas con unas directrices específicas.
Esa estructura conceptual de modelos está pensada de forma que esos modelos determinan la forma correcta
de los programas y controlan el modo en que pensamos y formulamos soluciones, y al llegar a la solución, ésta
se debe de expresar mediante un lenguaje de programación. Para que este proceso sea efectivo las
características del lenguaje deben reflejar adecuadamente los modelos conceptuales de ese paradigma.
Existen varios paradigmas de programación, en este trabajo de investigación solo nos enfocaremos en el
paradigma de programación estructurada y el paradigma de programación orientada a objetos.
1
5/11/2018 Paradigmas de programacion - slidepdf.com
http://slidepdf.com/reader/full/paradigmas-de-programacion-55a2315fa2ce7 4/9
Paradigma de programación estructurada
La programación estructurada consiste en escribir un programa de acuerdo con unas reglas y un conjunto de
técnicas. Las reglas son: el programa tiene un diseño modular, los módulos son diseñados descendentemente,
cada módulo de programa se codifica usando tres estructuras de control (secuencia, selección e iteración); es
el conjunto de técnicas que incorpora la programación estructurada: recursos abstractos; diseño descendente
y estructuras básicas de control.
Descomponer un programa en términos de recursos abstractos consiste en descomponer acciones complejas
en términos de acciones más simples capaces de ser ejecutadas en una computadora, el diseño descendente
se encarga de resolver un problema realizando una descomposición en otros más sencillos mediante módulos
jerárquicos. El resultado de esta jerarquía de módulos es que cada módulo se refina por los de nivel más bajo
que resuelven problemas más pequeños y contienen más detalles sobre los mismos. Las estructuras básicas de
control sirven para especificar el orden en que se ejecutarán las distintas instrucciones de un algoritmo. Este
orden de ejecución determina el flujo de control del programa
Las principales ventajas de este estilo de programación son:
Los programas son más fáciles de entender, ya que pueden ser leído de forma secuencial.
La estructura del programa es clara puesto que las instrucciones están más ligadas o
relacionadas entre sí.
Reducción del esfuerzo en las pruebas. El seguimiento de los errores del programa se facilita
debido a la estructura más visible, por lo que los errores se pueden detectar y corregir más
fácilmente.
Programas más sencillos y más rápidos.
El paradigma de programación estructurada se basa en que todo programa de puede escribir a partir de tres
estructuras de control básicas: secuencia, iteración y condición.
El teorema del programa estructurado es el que da origen a este paradigma establece que cualquier programa
puede ser escrito mediante la combinación de tres estructuras de control de programa: secuencia, iteración ycondición.
Principios de programación estructurada
A finales de los años 60 y durante la década de los 70 con las importantes contribuciones de Dijkstra, Floyd,
Hoare o Gries. La figura de Dijkstra es la que más comúnmente aparece ligada a la programación estructurada.
Entre los principios que según Dijkstra debía cumplir un programa estructurado, cabe destacar el de alta
especialización o separación de conceptos, el de incorrección del uso de la sentencia GOTO o el de punto único
de entrada y salida (toda función o bloque debe tener un único punto de entrada, y un único punto de salida),
la necesidad de suprimir la sentencia GOTO (que rompe el ciclo de ejecución lineal de un programa).
No obstante, a principios del siglo XXI la programación estructurada ha pasado a ser un paradigma de
programación ampliamente aceptado, de tal forma que paradigmas como el de la programación orientada a
objetos o el de la programación orientada a aspectos son superconjuntos de ésta.
2
5/11/2018 Paradigmas de programacion - slidepdf.com
http://slidepdf.com/reader/full/paradigmas-de-programacion-55a2315fa2ce7 5/9
Funcionamiento de la programación estructurada
La programación estructurada se guía por un conjunto de sentencias o procedimientos. Es decir, cada
sentencia o instrucción indica al compilador que realice alguna tarea: obtener una entrada, producir una
salida, etc. En el caso de pequeños programas, estos principios de organización (denominados paradigma) se
demuestran eficientes. El programador sólo hace esta lista de instrucciones en un lenguaje de programación,
compilar en la computadora y ésta, a su vez, ejecuta las instrucciones pero cuando los programas se vuelven
más grandes, la lista de instrucciones aumenta considerablemente, de modo tal que el programador tiene
muchas dificultades para controlar ese gran número de instrucciones. Para resolver este problema los
programas se descomponen en unidades más pequeñas que adoptan el nombre de funciones
(procedimientos, subprogramas o subrutinas en otros lenguajes de programación). De este modo un programa
orientado a procedimientos se divide en funciones, cada una de las cuales tiene un propósito bien definido y
resuelve una tarea concreta, y se diseña una interfaz claramente definida para su comunicación con otras
funciones.
Con el paso de los años, la idea de romper un programa en funciones fue evolucionando y se llegó al
agrupamiento de las funciones en otras unidades más grandes llamadas módulos pero, el principio seguía
siendo el mismo: agrupar componentes que ejecutan listas de instrucciones (sentencias).
Existen varias razones de la debilidad de los programas estructurados para resolver problemas complejos. Tal
vez las dos razones más evidentes son éstas; Primera, las funciones tienen acceso ilimitado a los datos
globales; segundo, las funciones inconexas y datos, fundamentos del paradigma procedimental proporcionan
un modelo pobre del mundo real. La programación orientada a objetos se desarrolló para tratar de paliar
diversas limitaciones que se encontraban en anteriores enfoques de programación.
3
5/11/2018 Paradigmas de programacion - slidepdf.com
http://slidepdf.com/reader/full/paradigmas-de-programacion-55a2315fa2ce7 6/9
Paradigma de programación orientada a objetos
El Paradigma de Programación Orientado a Objetos es una técnica de programación que usa objetos y sus
interacciones para diseñar aplicaciones y buenos programas de computadora. Este paradigma proporciona una
forma particular de programar, más cercana a la manera de como expresamos las cosas en la vida real.
En la programación orientada a objetos tenemos que diseñar nuestros programas en términos de objetos,
propiedades y métodos. Estos conforman los elementos principales de este paradigma. La programación
orientada a objetos expresa un programa como un conjunto de estos objetos, que colaboran entre ellos para
realizar tareas. Esto permite hacer los programas y módulos más fáciles de escribir, mantener y reutilizar.
En la programación convencional los programas se dividen en dos componentes: Procedimientos y Datos. Las
estructuras de datos utilizadas en programación son globales o se pasan como parámetros. En esencia los
datos se tratan separadamente de los procedimientos. En la programación orientada a objetos se combinan
los datos y los procedimientos en una entidad única. Podemos decir también, que este paradigma es una
disciplina de diseño de software que facilita la construcción de sistemas a través de componentes individuales
llamados clases de objetos.
En el paradigma orientado a objetos, el programa se organiza como un conjunto finito de objetos que
contienen datos y operaciones que llaman a esos datos y que se comunican entre sí mediante mensajes.
Características de la programación orientada a objetos
Existen diversas características ligadas a la orientación a objetos. Todas las propiedades que se suelen
considerar, no son exclusivas de este paradigma, ya que pueden existir en otros paradigmas, pero en su
conjunto definen claramente los lenguajes orientados a objetos. Estas propiedades son:
Abstracción (tipos abstractos de datos y clases).
Encapsulado de datos. Ocultación de datos.
Herencia.
Polimorfismo.
Abstracción
La abstracción es la propiedad de los objetos que consiste en tener en cuenta sólo los aspectos más
importantes desde un punto de vista determinado y no tener en cuenta los restantes aspectos. Durante el
proceso de abstracción es cuando se decide qué características y comportamiento debe tener el modelo. Un
medio de reducir la complejidad es la abstracción. Las características y los procesos se reducen a las
propiedades esenciales, son resumidas o combinadas entre sí. De este modo, las características complejas sehacen más manejables.
4
5/11/2018 Paradigmas de programacion - slidepdf.com
http://slidepdf.com/reader/full/paradigmas-de-programacion-55a2315fa2ce7 7/9
Encapsulamiento de datos
El encapsulado o encapsulación de datos es el proceso de agrupar datos y operaciones relacionadas bajo la
misma unidad de programación. En el caso de que los objetos posean las mismas características y
comportamiento se agrupan en clase.
Ocultación de datos
La ocultación de datos permite separar el aspecto de un componente, definido por su interfaz con el exterior,
de sus detalles internos de implementación.
Herencia
La herencia es la propiedad que permite compartir información entre dos entidades evitando la redundancia.
En el comportamiento de objetos existen con frecuencia propiedades que son comunes en diferentes objetos
y esta propiedad se denomina generalización.
Polimorfismo
La propiedad de polimorfismo es aquella en que una operación tiene el mismo nombre en diferentes clases,
pero se ejecuta de diferentes formas en cada clase. Así, por ejemplo, la operación abrir se puede dar en
diferentes clases: abrir una puerta, abrir una ventana, abrir un periódico, abrir un archivo, abrir una cuenta
corriente en un banco, abrir un libro, etc. En cada caso se ejecuta una operación diferente aunque tiene el
mismo nombre en todos ellos “abrir”. El polimorfismo es la propiedad de una operación de ser interpretada
sólo por el objeto al que pertenece.
5
5/11/2018 Paradigmas de programacion - slidepdf.com
http://slidepdf.com/reader/full/paradigmas-de-programacion-55a2315fa2ce7 8/9
JavaDenominado originalmente OAK, el lenguaje de programación fue rebautizado como Java en 1995, está
desarrollado por la compañía Sun Microsystems. Java es un lenguaje de programación con el que podemos
realizar cualquier tipo de programa. En la actualidad es un lenguaje muy extendido y cada vez cobra más
importancia tanto en el ámbito de Internet como en la informática en general.
Una de las principales características por las que Java se ha hecho muy famoso es que es un lenguaje
independiente de la plataforma. Eso quiere decir que si hacemos un programa en Java podrá funcionar en
cualquier ordenador del mercado. Es una ventaja significativa para los desarrolladores de software, pues antes
tenían que hacer un programa para cada sistema operativo, por ejemplo Windows, Linux, Apple, etc. Esto lo
consigue porque se ha creado una Máquina de Java para cada sistema que hace de puente entre el sistema
operativo y el programa de Java.
Java es un lenguaje de programación de alto nivel orientado a objetos, que está influenciado de varias
maneras por C, C++ y Smalltalk, y también por ideas que ha tomado prestadas de otros lenguajes. Su sintaxis
fue diseñada para ser familiar a aquellos que estaban familiarizados con los lenguajes que descienden más
directamente de C, pero tiene los principios de la orientación a objetos más asumidos que C++, objetos y un
sistema más justo e inflexible de excepciones que requiere que cada método que se llama trate cualquier tipo
de excepción o especifique que puede lanzarlas. La eliminación de objetos es automática, de esta manera se
evita al programador tener que liberar la memoria usada por los objetos que ya no se van a emplear.
La plataforma Java
Java se suele ver en lo que respecta a las tres plataformas como: Standard Edition (SE), Enterprise Edition (EE),
y Micro Edition (ME). Cada una describe la combinación de una versión del lenguaje, un conjunto de librerías
estándar, y la máquina virtual para ejecutar el código. EE es una ampliación de SE cualquier programa EEpuede asumir que existen las librerías de SE, y el uso del lenguaje en EE es idéntico que en SE.
La máquina virtual de Java
En algún punto, el código Java ha de convertirse en código nativo ejecutable en la plataforma. Esto requiere
normalmente dos pasos: el programador compila su código a Java bytecode, y después la máquina virtual de
Java (JVM) lo convierte a código nativo para la plataforma host. Este último paso está optimizado para ser
interpretado tomando cada instrucción de la JVM y convirtiéndola al momento en una o más instrucciones
nativas. Después, los compiladores just-in-time (JIT) convertían el bytecode en código nativo cuando el
programa empezaba su ejecución.
6
5/11/2018 Paradigmas de programacion - slidepdf.com
http://slidepdf.com/reader/full/paradigmas-de-programacion-55a2315fa2ce7 9/9
Conclusión
Java es un lenguaje de programación orientado a objetos, actual mente es uno de los lenguajes de
programación más usados principalmente por ser un lenguaje multiplataforma. Hay muchos paradigmas de
programación son técnicas que nos guían como programadores para tener una manera limpia y ordenada de
codificar.
Bibliografía:
www.java.com
Java 2
Piensa en java
Java desde cero
www.javahispano.org
7