0% encontró este documento útil (0 votos)
50 vistas35 páginas

Programacion Visual - Tema 1 - Paradigmas de Programacion

Cargado por

Rholvis Brito
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PPT, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
50 vistas35 páginas

Programacion Visual - Tema 1 - Paradigmas de Programacion

Cargado por

Rholvis Brito
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PPT, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 35

PROGAMACION VISUAL

TEMA 1:
PARADIGMAS DE
PROGRAMACION

Paradigmas de
programacin
Un paradigma de programacin es una
propuesta tecnolgica que es adoptada
por una comunidad de programadores
cuyo ncleo central es incuestionable
en cuanto a que nicamente trata de
resolver uno o varios problemas
claramente delimitados.
Es un estilo de programacin
empleado.

Paradigmas de
programacin
Imperativo o por procedimientos: es un paradigma de
programacin que describe la programacin en trminos
del estado del programa y sentencias que cambian dicho
estado. Los programas imperativos son un conjunto de
instrucciones que le indican al computador cmo realizar
una tarea. Es considerado el ms comn y est
representado, por ejemplo, por C, BASIC o Pascal.
Funcional: es un paradigma de programacin basado en
la utilizacin de funciones aritmticas que no maneja datos
mutables o de estado. Enfatiza la aplicacin de funciones,
en contraste con el estilo de programacin imperativa, que
enfatiza los cambios de estado. Est representado por
Scheme o Haskell. Este es un caso del paradigma
declarativo.
Lgico: gira en torno al concepto de predicado, o relacin
entre elementos. Est representado por Prolog. Este es
otro caso del paradigma declarativo.

Paradigmas de
programacin
Declarativo: est basado en el desarrollo de programas
especificando o "declarando" un conjunto de condiciones,
proposiciones, afirmaciones, restricciones, ecuaciones o
transformaciones que describen el problema y detallan su solucin.
En este modelo estn por ejemplo la programacin funcional, la
programacin lgica, o la combinacin lgico-funcional.
Orientado a objetos: usa los objetos en sus interacciones, para
disear aplicaciones y programas informticos. Est basado en varias
tcnicas, incluyendo herencia, cohesin, abstraccin, polimorfismo,
acoplamiento y encapsulamiento. Est representado por Smalltalk,
un lenguaje completamente orientado a objetos.
Programacin dinmica: es un mtodo para reducir el tiempo de
ejecucin de un algoritmo mediante la utilizacin de subproblemas
superpuestos y subestructuras ptimas. Est definida como el
proceso de romper problemas en partes pequeas para analizarlos.
Multiparadigma. Est constituido por lenguajes de programacion
que soportan mas de un paradigma de programacin.

programacin estructurada Caracteristicas


Conjunto de tcnicas que reducen
el tiempo requerido para escribir,
verificar, depurar y mantener los
programas.
Mediante el uso de:
recursos abstractos,
diseo descendente,
estructuras bsicas.

programacin estructurada Caracteristicas


Recursos
Abstractos:
Consiste
en
descomponer una determinada accin compleja
en un nmero de acciones ms simples, capaces
de ser ejecutada por una computadora y sus
respectivas instrucciones.
Diseo Descendente TOP-DOWN DESIGN
Esta metodologa efecta una relacin de
refinamiento entre las distintas etapas de
estructuracin, de modo que se relacionen unas
con otras, mediante entradas y salidas de
informacin.
Descompone el problema en etapas o
estructuras jerrquicas, de modo que se pueda

programacin estructurada Estructuras bsicas


Teorema de la programacin estructurada:

Un programa propio es aquel que cumple las siguientes


caractersticas:
Posee estructuras de control:
secuenciales,
selectivas, y
repetitivas.
posee un solo punto de entrada y salida.
se puede recorrer toda la estructura del programa
modular.
todas las instrucciones son ejecutables y no existen
bucles infinitos.

Caractersticas de la
programacin modular
Todo programa tiene un mdulo principal.
Dicho mdulo primario se divide en
submdulos, que a su vez ejecutan una
tarea nica y podrn codificarse de manera
independiente de cualquier otra actividad.
Sin embargo, al finalizar su funcin
devolvern el control al mdulo principal.
Esta independencia alude a que ningn
otro mdulo podr accesarlo directamente,
a excepcin de sus propios subsubmdulos
y al mdulo principal.

Consideraciones .
La descomposicin de un programa podra
implemetarse as:

Mdulo principal.
Submdulo impresin de ttulos
Submdulo de lectura de datos
Submdulo ejecucin de procesos
Submdulo impresin de resultados

Que es una funcin


Una funcin es un mini programa dentro de
otro programa. Las funciones contienen
sentencias bajo un solo nombre, que un
programa puede utilizar una o varias veces
para ejecutar dichas sentencias. Las
funciones ahorran espacio, reduciendo
repeticiones y haciendo mas fcil la
programacin, proporcionando un medio
fcil de dividir un proyecto grande en
mdulos mas pequeos y manejables.
10

Funciones en Programacin
Proceso que recibe valores de entrada
(parmetros) y retorna un resultado.
funcion <nombre> (par1:tipo1,...parn:tipon): tipo
variables
<declaraciones>
inicio
< instrucciones >
retornar <expresin>
fin_funcion

Procedimientos
Porciones de cdigo similares que no calculan
un valor si no que por ejemplo, presentan
informacin al usuario, leen una coleccin de
datos o calculan ms de un valor.
procedimiento <nombre>(par1:tipo1, ...parn:tipon)
variables
<declaraciones>
inicio
< Instrucciones >
fin_procedimiento

Variables Locales
Variables Locales: son aquellas definidas
dentro de cada funcin o procedimiento. Sus
modificaciones slo son vlidas en la funcin
o procedimiento en que se han definido.

Variables Globales
Variables Globales: son aquellas
definidas al comienzo del programa
(antes de cualquier funcin o
procedimiento). Se pueden usar
dentro del algoritmo principal y en
cada funcin y /o procedimiento
definido en el programa
Regla del buen programador:
evitar al mximo el uso de variables globales.

Parmetros por Valor


Parmetro por valor: variable local que
almacena el valor que tiene la constante o
la variable que se utiliza para llamarla. Su
modificacin no tiene efecto en el
resto del programa.

Parmetros por Referencia


Parmetro por referencia: variable que
almacena la referencia a una variable del
procedimiento o funcin que invoca.
Cualquier modificacin del parmetro
tiene
efectos
en
el
resto
del
programa.

PROGRAMACION
ORIENTADA A OBJETOS
Es un nuevo paradigma de
programacin basado en la orientacin
a objetos.
Un paradigma es un conjunto de
teoras, estandar y mtodos que juntos
representan un medio de organizacin
del conocimiento, es decir, un medio
de visualizar al mundo.

ORIENTACION A OBJETOS
Es el conjunto de disciplinas
(ingeniera) que desarrollan y
modelizan software que facilitan la
construccin de sistemas complejos
a partir de componentes.

IMPORTANCIA DE LA
ORIENTACION A OBJETOS
Es especialmente adecuada para realizar
determinadas aplicaciones, sobre todo la
realizacin de prototipos, simulacin de
programas e interfaces grficas.
Los mecanismos de encapsulacin de la
POO soportan un alto grado de
reutilizacin de cdigo, que se
incrementa por sus mecanismos de
defensa.

CLASE
Es la descripcin de un conjunto de
objetos.
Es una coleccin de objetos
similares.
Es equivalente a los modelos o
plantilla, ya que ellos describen como
se construyen ciertos tipos de
objetos.

Clases

Generalmente, una clase se puede definir como una


descripcin abstracta de un grupo de objetos, cada uno de
los cuales tiene una serie de atributos, un estado especfico
y es capaz de realizar una serie de operaciones.

Atributos
Operaciones
Comportamiento

Lavadora
marca
modelo
capacidad
..
Programar
PonerRopa
.
CerrarPuerta
Lavar

OBJETO
Es una instancia de un elemento de la vida
real.
Es la abstraccin de un elemento.
Es una entidad que contiene los atributos
que describen el estado de un elemento del
mundo real y las acciones que se le
asocian.
Un objeto es una combinacin o
encapsulacin de datos y procedimientos o
funciones que manejan dichos datos.

OBJETO (2)

La comunicacin entre objetos se


realizan mediante un mensaje.
Cuando un objeto recibe un
mensaje, responde a ste
ejecutando una accin (mtodo)
Al conjunto de mensajes a los que
puede responder un objeto se le
llama PROTOCOLO.

Objetos
Un objeto, no es ms que una instancia de una clase. La
instancia de una clase significa definir un objeto dndole
valores a sus atributos y comportamiento, y realizando
operaciones permitidas por la clase.

Valores de los atributos


Estado
Identidad

ID:Lavadora
marca=Lapava
capacidad=5
estado=enjuagando

Metodo
En la programacin orientada a objetos, un mtodo
es una subrutina cuyo cdigo es definido en una
clase y puede pertenecer tanto a una clase, como
es el caso de los mtodos de clase o estticos,
como a un objeto, como es el caso de los mtodos
de instancia.
Anlogamente a los procedimientos en los lenguajes
imperativos, un mtodo consiste generalmente de
una serie de sentencias para llevar a cabo una
accin, un juego de parmetros de entrada que
regularn dicha accin o, posiblemente, un valor de
salida (o valor de retorno) de algn tipo.

Herencia
Proceso mediante el cual una clase adquiere
las propiedades de otra clase
Permite definir una nueva clase o subclase a partir de
otra clase o superclase.
Una subclase incluye todo el comportamiento y
especificacin de sus antecesores.
Las subclases redefinen la estructura y el
comportamiento de sus superclases.
La herencia permite reutilizar cdigo

Herencia
Animal
Mamfero
Canino
Domstico
Collie

Reptil
Felino

Salvaje

Pastor
alemn

Lobo

...

...

Polimorfismo
El polimorfismo se refiere al hecho de que una misma
funcin adopte mltiples formas.
Esto se consigue por medio de la sobrecarga:
Sobrecarga de funciones:
un mismo nombre de funcin para distintas funciones.
a = Sumar (c,d); a = Sumar (c,d,5);
Sobrecarga de operadores:
un mismo operador con distintas funcionalidades.
entero1 = entero2 + 5;
cadena1 = cadena2 + cadena3;

Polimorfismo
En la sobrecarga de funciones se desarrollan distintas
funciones con un mismo nombre pero distinto cdigo.
Las funciones que comparten un mismo nombre deben
tener una relacin en cuanto a su funcionalidad.
Aunque comparten el mismo nombre, deben
tener distintos parmetros. stos pueden diferir en :
El nmero
El tipo
El orden
El tipo del valor de retorno de una funcin no es
vlido como distincin.

PROGRAMACION ORIENTADA A EVENTOS


ORIENTADA A EVENTOS
Son los programas tpicos de Windows, tales como
Netscape, Word, Excel y PowerPoint. Cuando uno de
estos programas ha arrancado, lo nico que hace es
quedarse a la espera de las acciones del usuario, que
en este caso son llamadas eventos.
El usuario dice si quiere abrir y modificar un fichero
existente, o bien comenzar a crear un fichero desde el
principio. Estos programas pasan la mayor parte de su
tiempo esperando las acciones del usuario (eventos) y
respondiendo a ellas.
Las acciones que el usuario puede realizar en un
momento determinado son variadsimas, y exigen un
tipo especial de programacin: la programacin
orientada a eventos.

Programacion orientada a
eventos

La programacin dirigida por eventos es un paradigma de


programacin en el que tanto la estructura como la ejecucin de
los programas van determinados por los sucesos que ocurran en
el sistema, definidos por el usuario o que ellos mismos provoquen.

Para entender la programacin dirigida por eventos, podemos


oponerla a lo que no es: mientras en la programacin secuencial
(o estructurada) es el programador el que define cul va a ser el
flujo del programa, en la programacin dirigida por eventos ser el
propio usuario o lo que sea que est accionando el programa
el que dirija el flujo del programa. Aunque en la programacin
secuencial puede haber intervencin de un agente externo al
programa, estas intervenciones ocurrirn cuando el programador
lo haya determinado, y no en cualquier momento como puede ser
en el caso de la programacin dirigida por eventos.

Programacion orientada a
eventos
El creador de un programa dirigido por eventos debe definir los
eventos que manejarn su programa y las acciones que se realizarn al
producirse cada uno de ellos, lo que se conoce como el administrador
de evento. Los eventos soportados estarn determinados por el
lenguaje de programacin utilizado, por el sistema operativo e incluso
por eventos creados por el mismo programador.
En la programacin dirigida por eventos, al comenzar la ejecucin del
programa se llevarn a cabo las inicializaciones y dems cdigo inicial
y a continuacin el programa quedar bloqueado hasta que se
produzca algn evento. Cuando alguno de los eventos esperados por el
programa tenga lugar, el programa pasar a ejecutar el cdigo del
correspondiente administrador de evento. Por ejemplo, si el evento
consiste en que el usuario ha hecho clic en el botn de play de un
reproductor de pelculas, se ejecutar el cdigo del administrador de
evento, que ser el que haga que la pelcula se muestre por pantalla.

Eventos y mensajes
Evento: Cualquier signo de actividad que
se produzca en una ventana. Puede ser
provocado por el usuario o por programa.
Mensaje: es la forma por la que se notifica
al S.O. que ha ocurrido un evento, para que
este lo procese y lo transmita a las
ventanas. Las ventanas al recibir el
mensaje realizan alguna accin de acuerdo
con las instrucciones asociadas al evento.

Diferencias entre la POO y


la POE
En la programacin orientada a objetos
(Object-Oriented Programming u OOP) las
partes que componen tu programa son
"abstracciones" de objetos del mundo real.
Por otro lado, la programacin orientada a
eventos (Event-Oriented Programming) es un
modelo de diseo donde creas componentes y
donde dependiendo de las acciones (o
mtodos) que ejecutes sobre ellos, stos
realicen algo, incluyendo llamadas a otros
componentes.

Lenguaje de programacion
vs. Herramienta de
desarrollo
(IDE)
Las herramientas de desarrollo son aquellos

programas o aplicaciones que tengan cierta


importancia en el desarrollo de un programa
(programacin). Pueden ser de importancia vital
(como un ensamblador, un compilador o un editor)
o de importancia secundaria, como una IDE
(Integrated Development Environment - Entorno
de Desarrollo Integrado).
Se relacionan en que las herramientas de
desarrollo permiten la edicin de los programas
que siguen las reglas del Lenguaje de
programacin.

También podría gustarte