APLICACIONES MOVILES NATIVAS - Mi Materia en...
Transcript of APLICACIONES MOVILES NATIVAS - Mi Materia en...
Sesión 3: Introducción al paradigma de programación orientada a objetos
APLICACIONES MOVILES
NATIVAS
Contextualización
Cuando se habla de un paradigma de programación, se trata de un tema en el que se toma
una propuesta tecnológica que es adoptada por una comunidad de programadores, los
lenguajes de programación en que se basen no son de gran relevancia para determinar si
es o no un paradigma valido. Este tiene una estrecha relación con la formalización de
determinados lenguajes al momento de ser definidos y es delimitado en el tiempo en
cuanto a la aceptación que tenga y el uso de nuevos paradigmas por su aporte en cuanto a
mejores soluciones.
Introducción
Los paradigmas se crean y utilizan para desarrollar nuevas soluciones o determinar
la forma en que se puede o no comportar un elemento dentro de un ambiente
controlado, como lo es la programación. Sin embargo este también presenta algunas
limitaciones como lo pueden ser falta de recursos tecnológicos para desarrollar
sistemas más robustos o medios más rápidos de distribución dentro de una red
controlada en la que se aplique este paradigma, sin embargo se aplican y actualizan
conforme se ve el cambio en las nuevas tendencias tecnológicas.
Introducción al paradigma de
programación orientada a objetos
Los paradigmas son elementos que se utilizan dentro del ámbito de la programación en
cualquiera de sus especialidades, es decir, no importa el tipo de programación porque
existen varios tipos de paradigmas para distintos casos, en este es el paradigma de la
programación orientada a objetos. Este tipo de paradigma orientado a objetos ofrece
elementos en los que se basa como lo son; objetos y mensajes.
Esto lo hace para poder definir el comportamiento de cada elemento con el que se trabaja
y mantener una asociación de los componentes de la codificación para mantener la
relación. Algunas de las características principales de este medio son:
Objetos
Mensajes
Polimorfismo
Herencia
Encapsulamiento
Los cuales pueden o no trabajar en conjunto manteniendo la relación con la que el
programador establece los componentes de ejecución y se puedan ejecutar sin tener
contratiempos mayores a la mala sintaxis.
Introducción al paradigma de
programación orientada a objetos
Programación imperativa: este trata de un conjunto de instrucciones que le
indican a la computadora cómo se realiza una tarea. Este lenguaje puede ser de
alto nivel y usar variables y sentencias más complejas sin dejar de ser parte del
mismo paradigma. No importa el tipo de hardware que componga la
computadora pues este no interfiere con ninguna de las tareas del paradigma,
pues todos los componentes interpretan el mismo lenguaje de la máquina.
Programación lógica; consiste en la aplicación de conocimientos de lógica para
el diseño de lenguajes de programación.
Paradigmas de programación
Programación funcional; este es un paradigma declarativo basado en la utilización de
funciones aritméticas y no maneja datos mutables o de estado. Hace énfasis en la
aplicación de funciones en contraste con el estilo de programación imperativa que enfatiza
los cambios de estado.
Programación declarativa; este es un paradigma de programación que se basa en el
desarrollo de programas especificando un conjunto de condiciones, proposiciones,
afirmaciones, restricciones, ecuaciones o transformaciones que muestran y describen el
problema a detalle para su solución.
Paradigmas de programación
Programación estructurada; es una forma de escribir los programas a desarrollar de una forma clara
y ordenada y se basa de tres estructuras:
Secuencia Selección Iteración
Programación dirigida por eventos; éste procura que en la estructura como la ejecución de los
programas ocurran en el sistema, definidos por el usuario. El creador de un programa dirigido por
eventos debe definirlos, pues estos manejarán el programa y las acciones a realizarse dentro de cada
uno de estos programas.
Programación modular; este consiste en dividir un programa en módulos o subprogramas con el fin
de que éste sea más legible y manejable, es decir, que presente una facilidad de controlarlo mayor que
otro tipo de paradigma.
Paradigmas de programación
Programación orientada a objetos; se conoce también como POO, es un paradigma que
utiliza objetos y sus interacciones para el diseño de aplicaciones y programas informáticos.
Se basa en varias técnicas como; herencia, abstracción, polimorfismo y encapsulamiento.
Programación con restricciones; este es un medio que actualmente se utiliza para la
descripción y solución de problemas combinatorios particularmente difíciles, como las de
planificación y programación de tareas. Se basa en un conjunto de restricciones, las cuales
deben satisfacerse por cualquier solución del problema ya planteado.
Paradigmas de programación
Conclusión
Los paradigmas de la programación son útiles para definir los medios por los cuales se
realizarán los programas y las plataformas en las que funcionará.
Los paradigmas se desarrollaron para poder ofrecer soluciones a una situación variada,
es decir, no solo se establece u medio de comparación o desarrollo, sino que se crean
varios medios en los cuales se pueden efectuar varios análisis por paradigma y
determinar la mejor opción para la creación de aplicaciones móviles o no.
Para aprender más
Programación a nivel funcional (John Backus); este presenta ventajas como la
existencia de definición de nivel de valores, estas definiciones en ocasiones pueden llegar
a ser críticas por lo concisas al representar un estilo.
Programación a nivel de valores; este describe cómo combinar diferentes valores para
formar nuevos valores hasta llegar al resultado deseado, permitiendo que los nuevos
valores se obtengan como resultado de la aplicación de operaciones que transforma loa
valore en otros.
Programación orientada a componentes; esta se enfoca en la descomposición de
sistemas ya conformados en componentes funcionales o lógicos con interfaces bien
estructuradas y definidas usadas para la comunicación entre componentes.
Programación orientada a aspectos; este busca la modularizacion de las aplicaciones y
posibilitar una mejor separación de incumbencias. De esta forma se consigue un mejor
raciocinio para los conceptos y se elimina la dispersión del código para así resultar más
comprensible.
Referencias
Arnold K., Gosling J., Holmes D. El lenguaje de programación Java. Addison Wesley. 2001.
Bloch, J., Effective Java. Programming Language Guide. Sun Microsystems. 2001.
Budd, T. Object Oriented Programming. Third edition. Addison Wesley. 2002.
Collins, D. Designing Object Oriented User Interfaces. Addison Wesley. 1995.
Deitel, Harvey M. Cómo programar en Java. Prentice-Hall Hispanoamericana, cop. 1998.
Eckel B., Thinking in Java. 3nd edition. Prentice Hall, 2002.
Eckel B., Piensa en Java.. Prentice Hall, 2000.
Horstmann Cay S. , Gary Cornell. Java 2. Vol II. Características Avanzadas. Pearson/Prentice Hall, 2006.
Joyner, Ian. Object Unencapsulated. Java, Eiffel y C++. Prentice Hall, 1999.
Bragagnolo S. Paradigmas de programación: orientación a objetos. Consultado el 3 de julio del 2013, en:
http://bragasofts.wordpress.com/2008/07/01/paradigmas-de-programacion-orientacion-a-objetos/
s/a Programación orientada a objetos o POO. Consultado el 3 de julio del 2013, en: http://trahcstudio.com/programacion-
orientada-a-objetos-poo.html
s/a INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS. Consultado el 3 de julio del 2013, en:
http://zarza.usal.es/~fgarcia/doc/tuto2/I_1.htm
s/a programación de paradigmas. Consultado el 3 de julio del 2013, en:
http://www.iqcelaya.itc.mx/~vicente/Programacion/Paradigmas.pdf
Hayet J. Paradigmas de programación. Consultado el 3 de julio del 2013, en:
http://www.cimat.mx/~jbhayet/CLASES/PROGRAMACION/slides/clase10.pdf
González A. Paradigmas de programación y lenguajes. Consultado el 3 de julio del 2013, en:
http://aniei.org.mx/portal/modules.php?&name=modeloslic&op=areas&func=pi14
Herranz R. Paradigmas de programación. Consultado el 3 de julio del 2013, en:
http://blog.utopicainformatica.com/2010/12/paradigmas-de-programacion.html