SlideShare una empresa de Scribd logo
1 de 17
Descargar para leer sin conexión
09/05/2016 Edward Eliecer Silva 2
Los paradigmas son estilos de programación.
Programación por Procedimiento.
Programación Modular
Programación orientada a listas.
Programación orientada a objetos.
09/05/2016 Edward Eliecer Silva 3
Paradigma : Estilo o forma de programar. No depende del lenguaje.
Existen lenguajes más aptos para un determinado paradigma.
Ejemplo,
Pascal para programación por procedimiento.
Lisp y Prolog, para manejo de listas.
Smaltalk, para POO.
Modula, para programación modular.
09/05/2016 Edward Eliecer Silva 4
PROGRAMACIÓN POR PROCEDIMIENTO O PARADIGMA PROCEDURAL.
¿ Que procedimientos se desean ?
Elegir los mejores algoritmos.
09/05/2016 Edward Eliecer Silva 5
PROGRAMACIÓN POR PROCEDIMIENTO O PARADIGMA PROCEDURAL.
Los lenguajes que apoyan este paradigma proporcionan recursos para pasar argumentos a las
funciones o procedimientos y que entregan como resultado. Este tipo de programación parte
con FORTRAN, sigue ALGOL y ahora Pascal y C.
Ejemplo:
ordenar_lista(lista)
{
// codigo del procedimiento
}
09/05/2016 Edward Eliecer Silva 6
PROGRAMACIÓN MODULAR.
¿ Que procedimientos necesitan ?
Dividir el programa y que los datos queden
ocultos
09/05/2016 Edward Eliecer Silva 7
PROGRAMACIÓN MODULAR.
Modulo. Conjunto de procedimientos.
Muy común y usado en la construcción de grandes sistemas de computación. El lenguaje
Modula apoya directamente este estilo de programación.
Ejemplo en C. Un ejemplo clásico es el manejo de pilas, lo que desde un punto modular se
transforma en:
09/05/2016 Edward Eliecer Silva 8
PROGRAMACIÓN MODULAR.
1. Ofrecer al usuario una interfaz para la pila. por ejemplo funciones meter() y sacar()
2. Garantizar que se puede tener acceso a la pila a través de una interfaz con el usuario.
3. Garantizar la inicialización de la pila
09/05/2016 Edward Eliecer Silva 9
PROGRAMACIÓN MODULAR.
Ejemplo en C:
// declaración de la interfaz para el
// modulo pila de caracteres.
void meter(char);
char sacar();
const int capacidad_pila = 100;
09/05/2016 Edward Eliecer Silva 10
PROGRAMACIÓN MODULAR.
Suponiendo que la interfaz se encuentra en pila.h
#include “pila.h” // emplea la interfaz
static char v(capacidad_pila); // static significa global
static char* p=v; // al principio la pila esta vacía
void meter(char c)
{
// verifica si la pila tiene espacio y mete c
}
09/05/2016 Edward Eliecer Silva 11
PROGRAMACIÓN MODULAR.
Note que el usuario, desde fuera del archivo/modulo tiene acceso a la pila, puesto que las
variables se declaran locales respecto al módulo (static).
char sacar()
{
// verifica que no este vacía la pila y saca.
}
09/05/2016 Edward Eliecer Silva 12
PROGRAMACIÓN ORIENTADA A OBJETOS (POO).
Supongamos que una figura cualquiera tiene color y esta compuesta por puntos, de esta
forma se define
class figura {
punto centro;
color col;
// ...
public :
punto donde() { return centro; }
void mover(punto hacia) { centro = hacia;
dibujar ();
09/05/2016 Edward Eliecer Silva 13
PROGRAMACIÓN ORIENTADA A OBJETOS (POO).
virtual void dibujar();
virtual void girar();
//...
};
void se usa con funciones que no retornan valor virtual, se usa para funciones que
virtualmente serán usadas.
Algunas funciones generales
09/05/2016 Edward Eliecer Silva 14
PROGRAMACIÓN ORIENTADA A OBJETOS (POO).
void girar_toda(figura v[ ], int tam, int angulo)
//
// girar “angulos” grados a todos los primeros “tam”
// miembros del arreglo v.
{
int i=0;
while (i<tam) {
v[i].girar(angulo);
i=i+1;
}
}
09/05/2016 Edward Eliecer Silva 15
PROGRAMACIÓN ORIENTADA A OBJETOS (POO).
Como definir una figura específica:
class circulo : public figura {
int radio;
public:
void dibujar(){ /*... */ };
void girar(int) {}
};
09/05/2016 Edward Eliecer Silva 16
PROGRAMACIÓN ORIENTADA A OBJETOS (POO).
Se dice que circulo es una “clase derivada” de la “clase base” figura. Otra forma es decir que
circulo es una “subclase” y figura es una “superclase”.
¿ Que clases desean ?
Definir relaciones, funciones y relaciones entre
clases.
09/05/2016 Edward Eliecer Silva 17
Fin de la presentación
Continúe en la siguiente actividad

Más contenido relacionado

La actualidad más candente

La actualidad más candente (20)

Centro de estudios_tecnologicos_industrial_y_de_servicios
Centro de estudios_tecnologicos_industrial_y_de_serviciosCentro de estudios_tecnologicos_industrial_y_de_servicios
Centro de estudios_tecnologicos_industrial_y_de_servicios
 
Instrucciones basicas c_(2)
Instrucciones basicas c_(2)Instrucciones basicas c_(2)
Instrucciones basicas c_(2)
 
Programacion Funcional
Programacion FuncionalProgramacion Funcional
Programacion Funcional
 
Lenguajes_de_Programacion
Lenguajes_de_ProgramacionLenguajes_de_Programacion
Lenguajes_de_Programacion
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructurada
 
Ultimo trabajo de computacion
Ultimo trabajo de computacionUltimo trabajo de computacion
Ultimo trabajo de computacion
 
Tema vi guia de c
Tema vi guia de cTema vi guia de c
Tema vi guia de c
 
Colaborativo 3 01
Colaborativo 3 01Colaborativo 3 01
Colaborativo 3 01
 
Trabajo de informatica
Trabajo de informaticaTrabajo de informatica
Trabajo de informatica
 
Material estudio c
Material estudio cMaterial estudio c
Material estudio c
 
Lenguaje c++
Lenguaje c++Lenguaje c++
Lenguaje c++
 
Programacin estructurada
Programacin estructuradaProgramacin estructurada
Programacin estructurada
 
Laboratorio E1
Laboratorio E1Laboratorio E1
Laboratorio E1
 
PLC: GRAFCET
PLC: GRAFCETPLC: GRAFCET
PLC: GRAFCET
 
Unidad 2
Unidad 2Unidad 2
Unidad 2
 
Lenguajes orientados a objetos loo
Lenguajes orientados a objetos looLenguajes orientados a objetos loo
Lenguajes orientados a objetos loo
 
Presentación de C++
Presentación de C++Presentación de C++
Presentación de C++
 
Tema6
Tema6Tema6
Tema6
 
Lenguaje c++
Lenguaje c++Lenguaje c++
Lenguaje c++
 
taller #2
taller #2taller #2
taller #2
 

Destacado

Nuevas Tecnologías: Organización de los medios en los entornos educativos.
Nuevas Tecnologías: Organización de los medios en los entornos educativos. Nuevas Tecnologías: Organización de los medios en los entornos educativos.
Nuevas Tecnologías: Organización de los medios en los entornos educativos. EliMartinGarrido
 
Vr100 -133106_contabilidad-1
Vr100  -133106_contabilidad-1Vr100  -133106_contabilidad-1
Vr100 -133106_contabilidad-1nuryyy
 
Conception éditoriale pour sites internet
Conception éditoriale pour sites internetConception éditoriale pour sites internet
Conception éditoriale pour sites internetLucieManet
 
Usos y efectos de la tecnologia
Usos y efectos de la tecnologiaUsos y efectos de la tecnologia
Usos y efectos de la tecnologiamisslili
 
El profesional en ciencia de la información y la documentación, bibliotecolog...
El profesional en ciencia de la información y la documentación, bibliotecolog...El profesional en ciencia de la información y la documentación, bibliotecolog...
El profesional en ciencia de la información y la documentación, bibliotecolog...vivianacerquera
 
Asignacion 5 aiza aponte
Asignacion 5 aiza aponteAsignacion 5 aiza aponte
Asignacion 5 aiza aponteAiza Hernández
 
Copia de proyecto institucional media_tecnica_nomina y prestaciones sociales
Copia de proyecto institucional media_tecnica_nomina y prestaciones socialesCopia de proyecto institucional media_tecnica_nomina y prestaciones sociales
Copia de proyecto institucional media_tecnica_nomina y prestaciones socialeskaritosanta
 
Menudo pelotazo
Menudo pelotazoMenudo pelotazo
Menudo pelotazojuancar_
 
Enfoquesy modeloseducativos3
Enfoquesy modeloseducativos3Enfoquesy modeloseducativos3
Enfoquesy modeloseducativos3Carol Ulloa Tapia
 
Publicate baja california
Publicate baja californiaPublicate baja california
Publicate baja californiagarden92
 
Vr100 133106 contabilidad-1
Vr100   133106 contabilidad-1Vr100   133106 contabilidad-1
Vr100 133106 contabilidad-1karitosanta
 
Integración de las tic
Integración de las ticIntegración de las tic
Integración de las ticnilzuhu
 
Vr100 133106 contabilidad-1
Vr100   133106 contabilidad-1Vr100   133106 contabilidad-1
Vr100 133106 contabilidad-1karitosanta
 
Presentacion
PresentacionPresentacion
Presentacionerluisma3
 
Hardware, software y redes eduardo garcía rodríguez
Hardware, software y redes eduardo garcía rodríguezHardware, software y redes eduardo garcía rodríguez
Hardware, software y redes eduardo garcía rodríguezEduardo García Rodríguez
 

Destacado (20)

Nuevas Tecnologías: Organización de los medios en los entornos educativos.
Nuevas Tecnologías: Organización de los medios en los entornos educativos. Nuevas Tecnologías: Organización de los medios en los entornos educativos.
Nuevas Tecnologías: Organización de los medios en los entornos educativos.
 
Vr100 -133106_contabilidad-1
Vr100  -133106_contabilidad-1Vr100  -133106_contabilidad-1
Vr100 -133106_contabilidad-1
 
Conception éditoriale pour sites internet
Conception éditoriale pour sites internetConception éditoriale pour sites internet
Conception éditoriale pour sites internet
 
Usos y efectos de la tecnologia
Usos y efectos de la tecnologiaUsos y efectos de la tecnologia
Usos y efectos de la tecnologia
 
El profesional en ciencia de la información y la documentación, bibliotecolog...
El profesional en ciencia de la información y la documentación, bibliotecolog...El profesional en ciencia de la información y la documentación, bibliotecolog...
El profesional en ciencia de la información y la documentación, bibliotecolog...
 
Asignacion 5 aiza aponte
Asignacion 5 aiza aponteAsignacion 5 aiza aponte
Asignacion 5 aiza aponte
 
Copia de proyecto institucional media_tecnica_nomina y prestaciones sociales
Copia de proyecto institucional media_tecnica_nomina y prestaciones socialesCopia de proyecto institucional media_tecnica_nomina y prestaciones sociales
Copia de proyecto institucional media_tecnica_nomina y prestaciones sociales
 
Menudo pelotazo
Menudo pelotazoMenudo pelotazo
Menudo pelotazo
 
Enfoquesy modeloseducativos3
Enfoquesy modeloseducativos3Enfoquesy modeloseducativos3
Enfoquesy modeloseducativos3
 
Colegio sudamericano
Colegio sudamericanoColegio sudamericano
Colegio sudamericano
 
Publicate baja california
Publicate baja californiaPublicate baja california
Publicate baja california
 
Profesional del cidba
Profesional del cidbaProfesional del cidba
Profesional del cidba
 
Vr100 133106 contabilidad-1
Vr100   133106 contabilidad-1Vr100   133106 contabilidad-1
Vr100 133106 contabilidad-1
 
Integración de las tic
Integración de las ticIntegración de las tic
Integración de las tic
 
Vr100 133106 contabilidad-1
Vr100   133106 contabilidad-1Vr100   133106 contabilidad-1
Vr100 133106 contabilidad-1
 
Presentacion
PresentacionPresentacion
Presentacion
 
Santé et modes de vie
Santé et modes de vieSanté et modes de vie
Santé et modes de vie
 
Moisés bertoni
Moisés bertoniMoisés bertoni
Moisés bertoni
 
Hardware, software y redes eduardo garcía rodríguez
Hardware, software y redes eduardo garcía rodríguezHardware, software y redes eduardo garcía rodríguez
Hardware, software y redes eduardo garcía rodríguez
 
Situacion problema de taller de historia
Situacion problema de taller de historiaSituacion problema de taller de historia
Situacion problema de taller de historia
 

Similar a Paradigmas de programacion (20)

Prog_BasicaJava.pdf
Prog_BasicaJava.pdfProg_BasicaJava.pdf
Prog_BasicaJava.pdf
 
Baño
BañoBaño
Baño
 
Taller de Pascal 01.pptx
Taller de Pascal 01.pptxTaller de Pascal 01.pptx
Taller de Pascal 01.pptx
 
Pascal
PascalPascal
Pascal
 
Capítulo ii elementos java
Capítulo ii elementos javaCapítulo ii elementos java
Capítulo ii elementos java
 
IntroLenguajeC.ppt
IntroLenguajeC.pptIntroLenguajeC.ppt
IntroLenguajeC.ppt
 
2 estructura programa-c
2 estructura programa-c2 estructura programa-c
2 estructura programa-c
 
Lenguajec
LenguajecLenguajec
Lenguajec
 
Presentación Java Evolution - GlobalLogic Club
Presentación Java Evolution - GlobalLogic ClubPresentación Java Evolution - GlobalLogic Club
Presentación Java Evolution - GlobalLogic Club
 
lenguaje pascal
lenguaje pascallenguaje pascal
lenguaje pascal
 
Lenguaje de pascal
Lenguaje de pascalLenguaje de pascal
Lenguaje de pascal
 
Fundamentos de programación Java
Fundamentos de programación JavaFundamentos de programación Java
Fundamentos de programación Java
 
El lenguaje php
El lenguaje phpEl lenguaje php
El lenguaje php
 
Consideraciones pragmatica
Consideraciones pragmaticaConsideraciones pragmatica
Consideraciones pragmatica
 
Informe tecnico u4 final
Informe tecnico u4 finalInforme tecnico u4 final
Informe tecnico u4 final
 
Scratch en tu_materia
Scratch en tu_materiaScratch en tu_materia
Scratch en tu_materia
 
EXPO PERL UTT
EXPO PERL UTTEXPO PERL UTT
EXPO PERL UTT
 
Capítulo ii elementos java
Capítulo ii elementos javaCapítulo ii elementos java
Capítulo ii elementos java
 
Sesion 4
Sesion 4Sesion 4
Sesion 4
 
Cap4 datos-compuestos
Cap4 datos-compuestosCap4 datos-compuestos
Cap4 datos-compuestos
 

Último

Electricidad y electronica industrial unidad 1
Electricidad y electronica industrial unidad 1Electricidad y electronica industrial unidad 1
Electricidad y electronica industrial unidad 1victorrodrigues972054
 
Trabajo en altura de acuerdo a la normativa peruana
Trabajo en altura de acuerdo a la normativa peruanaTrabajo en altura de acuerdo a la normativa peruana
Trabajo en altura de acuerdo a la normativa peruana5extraviado
 
NOM-002-STPS-2010, combate contra incendio.pptx
NOM-002-STPS-2010, combate contra incendio.pptxNOM-002-STPS-2010, combate contra incendio.pptx
NOM-002-STPS-2010, combate contra incendio.pptxJairReyna1
 
Estacionamientos, Existen 3 tipos, y tienen diferentes ángulos de inclinación
Estacionamientos, Existen 3 tipos, y tienen diferentes ángulos de inclinaciónEstacionamientos, Existen 3 tipos, y tienen diferentes ángulos de inclinación
Estacionamientos, Existen 3 tipos, y tienen diferentes ángulos de inclinaciónAlexisHernandez885688
 
Peligros de Excavaciones y Zanjas presentacion
Peligros de Excavaciones y Zanjas presentacionPeligros de Excavaciones y Zanjas presentacion
Peligros de Excavaciones y Zanjas presentacionOsdelTacusiPancorbo
 
Espontaneidad de las reacciones y procesos espontáneos
Espontaneidad de las reacciones y procesos espontáneosEspontaneidad de las reacciones y procesos espontáneos
Espontaneidad de las reacciones y procesos espontáneosOscarGonzalez231938
 
Topografía 1 Nivelación y Carretera en la Ingenierías
Topografía 1 Nivelación y Carretera en la IngenieríasTopografía 1 Nivelación y Carretera en la Ingenierías
Topografía 1 Nivelación y Carretera en la IngenieríasSegundo Silva Maguiña
 
Sistema de Gestión de Freelancers (Base de Datos)
Sistema de Gestión de Freelancers (Base de Datos)Sistema de Gestión de Freelancers (Base de Datos)
Sistema de Gestión de Freelancers (Base de Datos)dianamateo1513
 
trabajos en altura 2024, sistemas de contencion anticaidas
trabajos en altura 2024, sistemas de contencion anticaidastrabajos en altura 2024, sistemas de contencion anticaidas
trabajos en altura 2024, sistemas de contencion anticaidasNelsonQuispeQuispitu
 
Edificio residencial Tarsia de AEDAS Homes Granada
Edificio residencial Tarsia de AEDAS Homes GranadaEdificio residencial Tarsia de AEDAS Homes Granada
Edificio residencial Tarsia de AEDAS Homes GranadaANDECE
 
Físicas 1: Ecuaciones Dimensionales y Vectores
Físicas 1: Ecuaciones Dimensionales y VectoresFísicas 1: Ecuaciones Dimensionales y Vectores
Físicas 1: Ecuaciones Dimensionales y VectoresSegundo Silva Maguiña
 
S454444444444444444_CONTROL_SET_A_GEOMN1204.pdf
S454444444444444444_CONTROL_SET_A_GEOMN1204.pdfS454444444444444444_CONTROL_SET_A_GEOMN1204.pdf
S454444444444444444_CONTROL_SET_A_GEOMN1204.pdffredyflores58
 
Fijaciones de balcones prefabricados de hormigón - RECENSE
Fijaciones de balcones prefabricados de hormigón - RECENSEFijaciones de balcones prefabricados de hormigón - RECENSE
Fijaciones de balcones prefabricados de hormigón - RECENSEANDECE
 
VIRUS FITOPATÓGENOS (GENERALIDADES EN PLANTAS)
VIRUS FITOPATÓGENOS (GENERALIDADES EN PLANTAS)VIRUS FITOPATÓGENOS (GENERALIDADES EN PLANTAS)
VIRUS FITOPATÓGENOS (GENERALIDADES EN PLANTAS)ssuser6958b11
 
Electromagnetismo Fisica FisicaFisica.pdf
Electromagnetismo Fisica FisicaFisica.pdfElectromagnetismo Fisica FisicaFisica.pdf
Electromagnetismo Fisica FisicaFisica.pdfAnonymous0pBRsQXfnx
 
Diagrama de flujo metalurgia del cobre..pptx
Diagrama de flujo metalurgia del cobre..pptxDiagrama de flujo metalurgia del cobre..pptx
Diagrama de flujo metalurgia del cobre..pptxHarryArmandoLazaroBa
 
Sistema de gestión de turnos para negocios
Sistema de gestión de turnos para negociosSistema de gestión de turnos para negocios
Sistema de gestión de turnos para negociosfranchescamassielmor
 
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Francisco Javier Mora Serrano
 
QUIMICA ORGANICA I ENOLES Y ENAMINAS LIBR
QUIMICA ORGANICA I ENOLES Y ENAMINAS LIBRQUIMICA ORGANICA I ENOLES Y ENAMINAS LIBR
QUIMICA ORGANICA I ENOLES Y ENAMINAS LIBRyanimarca23
 

Último (20)

Electricidad y electronica industrial unidad 1
Electricidad y electronica industrial unidad 1Electricidad y electronica industrial unidad 1
Electricidad y electronica industrial unidad 1
 
Trabajo en altura de acuerdo a la normativa peruana
Trabajo en altura de acuerdo a la normativa peruanaTrabajo en altura de acuerdo a la normativa peruana
Trabajo en altura de acuerdo a la normativa peruana
 
NOM-002-STPS-2010, combate contra incendio.pptx
NOM-002-STPS-2010, combate contra incendio.pptxNOM-002-STPS-2010, combate contra incendio.pptx
NOM-002-STPS-2010, combate contra incendio.pptx
 
MATPEL COMPLETO DESDE NIVEL I AL III.pdf
MATPEL COMPLETO DESDE NIVEL I AL III.pdfMATPEL COMPLETO DESDE NIVEL I AL III.pdf
MATPEL COMPLETO DESDE NIVEL I AL III.pdf
 
Estacionamientos, Existen 3 tipos, y tienen diferentes ángulos de inclinación
Estacionamientos, Existen 3 tipos, y tienen diferentes ángulos de inclinaciónEstacionamientos, Existen 3 tipos, y tienen diferentes ángulos de inclinación
Estacionamientos, Existen 3 tipos, y tienen diferentes ángulos de inclinación
 
Peligros de Excavaciones y Zanjas presentacion
Peligros de Excavaciones y Zanjas presentacionPeligros de Excavaciones y Zanjas presentacion
Peligros de Excavaciones y Zanjas presentacion
 
Espontaneidad de las reacciones y procesos espontáneos
Espontaneidad de las reacciones y procesos espontáneosEspontaneidad de las reacciones y procesos espontáneos
Espontaneidad de las reacciones y procesos espontáneos
 
Topografía 1 Nivelación y Carretera en la Ingenierías
Topografía 1 Nivelación y Carretera en la IngenieríasTopografía 1 Nivelación y Carretera en la Ingenierías
Topografía 1 Nivelación y Carretera en la Ingenierías
 
Sistema de Gestión de Freelancers (Base de Datos)
Sistema de Gestión de Freelancers (Base de Datos)Sistema de Gestión de Freelancers (Base de Datos)
Sistema de Gestión de Freelancers (Base de Datos)
 
trabajos en altura 2024, sistemas de contencion anticaidas
trabajos en altura 2024, sistemas de contencion anticaidastrabajos en altura 2024, sistemas de contencion anticaidas
trabajos en altura 2024, sistemas de contencion anticaidas
 
Edificio residencial Tarsia de AEDAS Homes Granada
Edificio residencial Tarsia de AEDAS Homes GranadaEdificio residencial Tarsia de AEDAS Homes Granada
Edificio residencial Tarsia de AEDAS Homes Granada
 
Físicas 1: Ecuaciones Dimensionales y Vectores
Físicas 1: Ecuaciones Dimensionales y VectoresFísicas 1: Ecuaciones Dimensionales y Vectores
Físicas 1: Ecuaciones Dimensionales y Vectores
 
S454444444444444444_CONTROL_SET_A_GEOMN1204.pdf
S454444444444444444_CONTROL_SET_A_GEOMN1204.pdfS454444444444444444_CONTROL_SET_A_GEOMN1204.pdf
S454444444444444444_CONTROL_SET_A_GEOMN1204.pdf
 
Fijaciones de balcones prefabricados de hormigón - RECENSE
Fijaciones de balcones prefabricados de hormigón - RECENSEFijaciones de balcones prefabricados de hormigón - RECENSE
Fijaciones de balcones prefabricados de hormigón - RECENSE
 
VIRUS FITOPATÓGENOS (GENERALIDADES EN PLANTAS)
VIRUS FITOPATÓGENOS (GENERALIDADES EN PLANTAS)VIRUS FITOPATÓGENOS (GENERALIDADES EN PLANTAS)
VIRUS FITOPATÓGENOS (GENERALIDADES EN PLANTAS)
 
Electromagnetismo Fisica FisicaFisica.pdf
Electromagnetismo Fisica FisicaFisica.pdfElectromagnetismo Fisica FisicaFisica.pdf
Electromagnetismo Fisica FisicaFisica.pdf
 
Diagrama de flujo metalurgia del cobre..pptx
Diagrama de flujo metalurgia del cobre..pptxDiagrama de flujo metalurgia del cobre..pptx
Diagrama de flujo metalurgia del cobre..pptx
 
Sistema de gestión de turnos para negocios
Sistema de gestión de turnos para negociosSistema de gestión de turnos para negocios
Sistema de gestión de turnos para negocios
 
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
 
QUIMICA ORGANICA I ENOLES Y ENAMINAS LIBR
QUIMICA ORGANICA I ENOLES Y ENAMINAS LIBRQUIMICA ORGANICA I ENOLES Y ENAMINAS LIBR
QUIMICA ORGANICA I ENOLES Y ENAMINAS LIBR
 

Paradigmas de programacion

  • 1.
  • 2. 09/05/2016 Edward Eliecer Silva 2 Los paradigmas son estilos de programación. Programación por Procedimiento. Programación Modular Programación orientada a listas. Programación orientada a objetos.
  • 3. 09/05/2016 Edward Eliecer Silva 3 Paradigma : Estilo o forma de programar. No depende del lenguaje. Existen lenguajes más aptos para un determinado paradigma. Ejemplo, Pascal para programación por procedimiento. Lisp y Prolog, para manejo de listas. Smaltalk, para POO. Modula, para programación modular.
  • 4. 09/05/2016 Edward Eliecer Silva 4 PROGRAMACIÓN POR PROCEDIMIENTO O PARADIGMA PROCEDURAL. ¿ Que procedimientos se desean ? Elegir los mejores algoritmos.
  • 5. 09/05/2016 Edward Eliecer Silva 5 PROGRAMACIÓN POR PROCEDIMIENTO O PARADIGMA PROCEDURAL. Los lenguajes que apoyan este paradigma proporcionan recursos para pasar argumentos a las funciones o procedimientos y que entregan como resultado. Este tipo de programación parte con FORTRAN, sigue ALGOL y ahora Pascal y C. Ejemplo: ordenar_lista(lista) { // codigo del procedimiento }
  • 6. 09/05/2016 Edward Eliecer Silva 6 PROGRAMACIÓN MODULAR. ¿ Que procedimientos necesitan ? Dividir el programa y que los datos queden ocultos
  • 7. 09/05/2016 Edward Eliecer Silva 7 PROGRAMACIÓN MODULAR. Modulo. Conjunto de procedimientos. Muy común y usado en la construcción de grandes sistemas de computación. El lenguaje Modula apoya directamente este estilo de programación. Ejemplo en C. Un ejemplo clásico es el manejo de pilas, lo que desde un punto modular se transforma en:
  • 8. 09/05/2016 Edward Eliecer Silva 8 PROGRAMACIÓN MODULAR. 1. Ofrecer al usuario una interfaz para la pila. por ejemplo funciones meter() y sacar() 2. Garantizar que se puede tener acceso a la pila a través de una interfaz con el usuario. 3. Garantizar la inicialización de la pila
  • 9. 09/05/2016 Edward Eliecer Silva 9 PROGRAMACIÓN MODULAR. Ejemplo en C: // declaración de la interfaz para el // modulo pila de caracteres. void meter(char); char sacar(); const int capacidad_pila = 100;
  • 10. 09/05/2016 Edward Eliecer Silva 10 PROGRAMACIÓN MODULAR. Suponiendo que la interfaz se encuentra en pila.h #include “pila.h” // emplea la interfaz static char v(capacidad_pila); // static significa global static char* p=v; // al principio la pila esta vacía void meter(char c) { // verifica si la pila tiene espacio y mete c }
  • 11. 09/05/2016 Edward Eliecer Silva 11 PROGRAMACIÓN MODULAR. Note que el usuario, desde fuera del archivo/modulo tiene acceso a la pila, puesto que las variables se declaran locales respecto al módulo (static). char sacar() { // verifica que no este vacía la pila y saca. }
  • 12. 09/05/2016 Edward Eliecer Silva 12 PROGRAMACIÓN ORIENTADA A OBJETOS (POO). Supongamos que una figura cualquiera tiene color y esta compuesta por puntos, de esta forma se define class figura { punto centro; color col; // ... public : punto donde() { return centro; } void mover(punto hacia) { centro = hacia; dibujar ();
  • 13. 09/05/2016 Edward Eliecer Silva 13 PROGRAMACIÓN ORIENTADA A OBJETOS (POO). virtual void dibujar(); virtual void girar(); //... }; void se usa con funciones que no retornan valor virtual, se usa para funciones que virtualmente serán usadas. Algunas funciones generales
  • 14. 09/05/2016 Edward Eliecer Silva 14 PROGRAMACIÓN ORIENTADA A OBJETOS (POO). void girar_toda(figura v[ ], int tam, int angulo) // // girar “angulos” grados a todos los primeros “tam” // miembros del arreglo v. { int i=0; while (i<tam) { v[i].girar(angulo); i=i+1; } }
  • 15. 09/05/2016 Edward Eliecer Silva 15 PROGRAMACIÓN ORIENTADA A OBJETOS (POO). Como definir una figura específica: class circulo : public figura { int radio; public: void dibujar(){ /*... */ }; void girar(int) {} };
  • 16. 09/05/2016 Edward Eliecer Silva 16 PROGRAMACIÓN ORIENTADA A OBJETOS (POO). Se dice que circulo es una “clase derivada” de la “clase base” figura. Otra forma es decir que circulo es una “subclase” y figura es una “superclase”. ¿ Que clases desean ? Definir relaciones, funciones y relaciones entre clases.
  • 17. 09/05/2016 Edward Eliecer Silva 17 Fin de la presentación Continúe en la siguiente actividad