SlideShare una empresa de Scribd logo
1 de 95
 Las principales diferencias entre la programación estructurada y la orientada
a objetos son:
 La programación orientada a objetos es más moderna, es
una evolución de la programación estructurada
 La programación orientada a objetos se basa en lenguajes
que soportan sintáctica y semánticamente la unión entre
los tipos abstractos de datos y sus operaciones (a esta
unión se la suele llamar clase).
 La programación orientada a objetos incorpora en su
entorno de ejecución mecanismos tales como el
polimorfismo y el envío de mensajes entre objetos.
El paradigma de programación representa un
enfoque particular o filosofía para la
construcción del software.
El enfoque no es mejor uno que otro sino que
cada uno tiene ventajas y desventajas. También
hay situaciones donde un paradigma resulta
más apropiado que otro.
 El paradigma de programación se refiere a:
¿Estilo de Programación?
Manera de Visualizar y Resolver Problemas de Programación
Procedural, Imperativo
Lógico, Declarativo
Visual
Paralelo
Orientado a Objetos
Filosofía
Historia, Objetivos y Metas
Modelos y Enfoques
Conceptos
Principios
Soporte
Notación, Metodologías
Herramientas y Tecnologías
El paradigma imperativo o por procedimientos
es considerado el más común y está
representado, por ejemplo, por el C o por
BASIC.
El paradigma funcional está representado por
la familia de lenguajes LISP (en particular
Scheme), ML o Haskell.
El paradigma lógico, un ejemplo es PROLOG.
El paradigma orientado a objetos. Un lenguaje
completamente orientado a objetos es
Smalltalk.
Actualmente el paradigma de programación
más usado debido a múltiples ventajas respecto
a sus anteriores, es la programación orientada
a objetos.
 La creación de un programa involucra ensamblar objetos y
hacerlos interactuar entre ellos
7
 Una Clase Describe Un Grupo De Objetos Que
Comparten Propiedades Y Métodos Comunes
 Una Clase Es Una Plantilla Que Define Qué
Forma Tienen Los Objetos De La Clase
 Una Clase Se Compone De:
 Información: Campos (Atributos, Propiedades)
 Comportamiento: Métodos (Operaciones, Funciones)
 Un Objeto Es Una Instancia De Una Clase
8
class Circulo {
// campos
// métodos
// constructores
// main()
}
9
class Circulo {
// campos
double radio = 5;
String color;
static int numeroCirculos = 0;
static final double PI = 3.1416;
// métodos
// constructores
// main( )
}
10
 Instrucciones que operan sobre los datos de un objeto para
obtener resultados
 Tienen cero o más parámetros
 Pueden retornar un valor o pueden ser declarados tambien
para indicar que no retornan ningún valor
11
class Circulo {
// campos
double radio = 5;
String color;
static int numeroCirculos = 0;
static final double PI = 3.1416;
// métodos
double getCircunferencia() {
return getCircunferencia(radio);
}
static double getCircunferencia(double r) {
return 2 * r * PI;
}
// constructores
// main( )
} 12
 Acceso a campos y métodos de instancia: se
utiliza la sintaxis "objeto."
Circulo c1 = new Circulo();
c1.radio = 5;
c1.color = "rojo";
double d = c1.getCircunferencia();
 Acceso a campos y métodos static: se utiliza
la sintaxis "clase."
Circulo.numeroCirculos++;
int n = Circulo.getNumeroCirculos();
13
 La clase es el espacio donde se empaquetan atributos y
métodos
14
 Un lenguaje de programación es un idioma artificial
diseñado para expresar procesos que pueden ser llevadas a
cabo por máquinas como las computadoras.
 Está formado por un conjunto de símbolos y reglas
sintácticas y semánticas que definen su estructura y el
significado de sus elementos y expresiones.
 Al proceso por el cual se escribe, se prueba, se depura, se
compila y se mantiene el código fuente de un programa
informático se le llama programación.
 Es aquel que utilizamos para poder transmitir
ordenadamente nuestras ideas a una computadora.
TIPOS DE LENGUAJES
 Existen 4 tipos de LP:
 Lenguaje máquina 00110011
 Lenguaje ensamblador ld a, #10
 Lenguajes de alto nivel for(i=0;i<10;i++)
 Lenguajes orientados a objetos class persona{ }
COMO SE CLASIFICAN
 Lenguajes imperativos. Utilizan instrucciones como unidad de trabajo de los
programas (Cobol, Pascal, C, Ada).
 Lenguajes declarativos. Los programas se construyen mediante descripciones de
funciones o expresiones lógicas (Lisp, Prolog).
 Lenguajes orientados a objetos. El diseño de los programas se basa mas en los datos
y su estructura. La unidad de proceso es el objeto y en el se incluyen los datos
(variables) y las operaciones que actúan sobre ellos (Java, Smalltalk, C++).
 Lenguajes orientados al problema. Diseñados para problemas específicos,
principalmente de gestión, suelen ser generadores de aplicaciones. (Lenguajes de 4ª
Generacion 4GL, Progress, ABAP, ORACLE)
 Lenguajes naturales. Están desarrollándose nuevos lenguajes con el principal
objetivo de aproximar el diseño y construcción de programas al lenguaje de las
personas.
LENGUAJE DE PROGRAMACIÓN ORIENTADO A
OBJETOS
 Entre los lenguajes orientados a objetos destacan los
siguientes:
 Action Script , Ada, C++, C#, Clarion, C++Builder, D, Delphi, Harbour,
Eiffel, Java, Lexico (en castellano), Objective-C, Ocaml, Oz, Perl (soporta
herencia múltiple), PHP (en su versión 5) , PowerBuilder, Python, Ruby,
Smalltalk, Magik (SmallWorld), VB.NET Visual FoxPro , XBase++
 Utilizaremos en nuestros ejemplos el lenguaje Java en su versión
J2SDK.
 El diseño orientado a objeto puede ser programado en
cualquier lenguaje.
 Los desarrollos se organizan alrededor de los datos, y no de
las funcionalidades.
 Afortunadamente han aparecido nuevos lenguajes que
facilitan la programación orientada a objetos, como es el
caso de Java.
 En adelante para explicar las funcionalidades de programación
orientadas a objetos adoptaremos código de Java como ejemplo
 Las principales diferencias entre la programación estructurada y la orientada
a objetos son:
 La programación orientada a objetos es más moderna, es
una evolución de la programación estructurada
 La programación orientada a objetos se basa en lenguajes
que soportan sintáctica y semánticamente la unión entre
los tipos abstractos de datos y sus operaciones (a esta
unión se la suele llamar clase).
 La programación orientada a objetos incorpora en su
entorno de ejecución mecanismos tales como el
polimorfismo y el envío de mensajes entre objetos.
El paradigma de programación representa un
enfoque particular o filosofía para la
construcción del software.
El enfoque no es mejor uno que otro sino que
cada uno tiene ventajas y desventajas. También
hay situaciones donde un paradigma resulta
más apropiado que otro.
 El paradigma de programación se refiere a:
¿Estilo de Programación?
Manera de Visualizar y Resolver Problemas de Programación
Procedural, Imperativo
Lógico, Declarativo
Visual
Paralelo
Orientado a Objetos
Filosofía
Historia, Objetivos y Metas
Modelos y Enfoques
Conceptos
Principios
Soporte
Notación, Metodologías
Herramientas y Tecnologías
El paradigma imperativo o por procedimientos
es considerado el más común y está
representado, por ejemplo, por el C o por
BASIC.
El paradigma funcional está representado por
la familia de lenguajes LISP (en particular
Scheme), ML o Haskell.
El paradigma lógico, un ejemplo es PROLOG.
El paradigma orientado a objetos. Un lenguaje
completamente orientado a objetos es
Smalltalk.
Actualmente el paradigma de programación
más usado debido a múltiples ventajas respecto
a sus anteriores, es la programación orientada
a objetos.
 La creación de un programa involucra ensamblar objetos y
hacerlos interactuar entre ellos
26
 Una Clase Describe Un Grupo De Objetos Que
Comparten Propiedades Y Métodos Comunes
 Una Clase Es Una Plantilla Que Define Qué
Forma Tienen Los Objetos De La Clase
 Una Clase Se Compone De:
 Información: Campos (Atributos, Propiedades)
 Comportamiento: Métodos (Operaciones, Funciones)
 Un Objeto Es Una Instancia De Una Clase
27
class Circulo {
// campos
// métodos
// constructores
// main()
}
28
class Circulo {
// campos
double radio = 5;
String color;
static int numeroCirculos = 0;
static final double PI = 3.1416;
// métodos
// constructores
// main( )
}
29
 Instrucciones que operan sobre los datos de un objeto para
obtener resultados
 Tienen cero o más parámetros
 Pueden retornar un valor o pueden ser declarados tambien
para indicar que no retornan ningún valor
30
class Circulo {
// campos
double radio = 5;
String color;
static int numeroCirculos = 0;
static final double PI = 3.1416;
// métodos
double getCircunferencia() {
return getCircunferencia(radio);
}
static double getCircunferencia(double r) {
return 2 * r * PI;
}
// constructores
// main( )
} 31
 Acceso a campos y métodos de instancia: se
utiliza la sintaxis "objeto."
Circulo c1 = new Circulo();
c1.radio = 5;
c1.color = "rojo";
double d = c1.getCircunferencia();
 Acceso a campos y métodos static: se utiliza
la sintaxis "clase."
Circulo.numeroCirculos++;
int n = Circulo.getNumeroCirculos();
32
 La clase es el espacio donde se empaquetan atributos y
métodos
33
 Un lenguaje de programación es un idioma artificial
diseñado para expresar procesos que pueden ser llevadas a
cabo por máquinas como las computadoras.
 Está formado por un conjunto de símbolos y reglas
sintácticas y semánticas que definen su estructura y el
significado de sus elementos y expresiones.
 Al proceso por el cual se escribe, se prueba, se depura, se
compila y se mantiene el código fuente de un programa
informático se le llama programación.
 Es aquel que utilizamos para poder transmitir
ordenadamente nuestras ideas a una computadora.
TIPOS DE LENGUAJES
 Existen 4 tipos de LP:
 Lenguaje máquina 00110011
 Lenguaje ensamblador ld a, #10
 Lenguajes de alto nivel for(i=0;i<10;i++)
 Lenguajes orientados a objetos class persona{ }
COMO SE CLASIFICAN
 Lenguajes imperativos. Utilizan instrucciones como unidad de trabajo de los
programas (Cobol, Pascal, C, Ada).
 Lenguajes declarativos. Los programas se construyen mediante descripciones de
funciones o expresiones lógicas (Lisp, Prolog).
 Lenguajes orientados a objetos. El diseño de los programas se basa mas en los datos
y su estructura. La unidad de proceso es el objeto y en el se incluyen los datos
(variables) y las operaciones que actúan sobre ellos (Java, Smalltalk, C++).
 Lenguajes orientados al problema. Diseñados para problemas específicos,
principalmente de gestión, suelen ser generadores de aplicaciones. (Lenguajes de 4ª
Generacion 4GL, Progress, ABAP, ORACLE)
 Lenguajes naturales. Están desarrollándose nuevos lenguajes con el principal
objetivo de aproximar el diseño y construcción de programas al lenguaje de las
personas.
LENGUAJE DE PROGRAMACIÓN ORIENTADO A
OBJETOS
 Entre los lenguajes orientados a objetos destacan los
siguientes:
 Action Script , Ada, C++, C#, Clarion, C++Builder, D, Delphi, Harbour,
Eiffel, Java, Lexico (en castellano), Objective-C, Ocaml, Oz, Perl (soporta
herencia múltiple), PHP (en su versión 5) , PowerBuilder, Python, Ruby,
Smalltalk, Magik (SmallWorld), VB.NET Visual FoxPro , XBase++
 Utilizaremos en nuestros ejemplos el lenguaje Java en su versión
J2SDK.
 El diseño orientado a objeto puede ser programado en
cualquier lenguaje.
 Los desarrollos se organizan alrededor de los datos, y no de
las funcionalidades.
 Afortunadamente han aparecido nuevos lenguajes que
facilitan la programación orientada a objetos, como es el
caso de Java.
 En adelante para explicar las funcionalidades de programación
orientadas a objetos adoptaremos código de Java como ejemplo
 Las principales diferencias entre la programación estructurada y la orientada
a objetos son:
 La programación orientada a objetos es más moderna, es
una evolución de la programación estructurada
 La programación orientada a objetos se basa en lenguajes
que soportan sintáctica y semánticamente la unión entre
los tipos abstractos de datos y sus operaciones (a esta
unión se la suele llamar clase).
 La programación orientada a objetos incorpora en su
entorno de ejecución mecanismos tales como el
polimorfismo y el envío de mensajes entre objetos.
El paradigma de programación representa un
enfoque particular o filosofía para la
construcción del software.
El enfoque no es mejor uno que otro sino que
cada uno tiene ventajas y desventajas. También
hay situaciones donde un paradigma resulta
más apropiado que otro.
 El paradigma de programación se refiere a:
¿Estilo de Programación?
Manera de Visualizar y Resolver Problemas de Programación
Procedural, Imperativo
Lógico, Declarativo
Visual
Paralelo
Orientado a Objetos
Filosofía
Historia, Objetivos y Metas
Modelos y Enfoques
Conceptos
Principios
Soporte
Notación, Metodologías
Herramientas y Tecnologías
El paradigma imperativo o por procedimientos
es considerado el más común y está
representado, por ejemplo, por el C o por
BASIC.
El paradigma funcional está representado por
la familia de lenguajes LISP (en particular
Scheme), ML o Haskell.
El paradigma lógico, un ejemplo es PROLOG.
El paradigma orientado a objetos. Un lenguaje
completamente orientado a objetos es
Smalltalk.
Actualmente el paradigma de programación
más usado debido a múltiples ventajas respecto
a sus anteriores, es la programación orientada
a objetos.
 La creación de un programa involucra ensamblar objetos y
hacerlos interactuar entre ellos
45
 Una Clase Describe Un Grupo De Objetos Que
Comparten Propiedades Y Métodos Comunes
 Una Clase Es Una Plantilla Que Define Qué
Forma Tienen Los Objetos De La Clase
 Una Clase Se Compone De:
 Información: Campos (Atributos, Propiedades)
 Comportamiento: Métodos (Operaciones, Funciones)
 Un Objeto Es Una Instancia De Una Clase
46
class Circulo {
// campos
// métodos
// constructores
// main()
}
47
class Circulo {
// campos
double radio = 5;
String color;
static int numeroCirculos = 0;
static final double PI = 3.1416;
// métodos
// constructores
// main( )
}
48
 Instrucciones que operan sobre los datos de un objeto para
obtener resultados
 Tienen cero o más parámetros
 Pueden retornar un valor o pueden ser declarados tambien
para indicar que no retornan ningún valor
49
class Circulo {
// campos
double radio = 5;
String color;
static int numeroCirculos = 0;
static final double PI = 3.1416;
// métodos
double getCircunferencia() {
return getCircunferencia(radio);
}
static double getCircunferencia(double r) {
return 2 * r * PI;
}
// constructores
// main( )
} 50
 Acceso a campos y métodos de instancia: se
utiliza la sintaxis "objeto."
Circulo c1 = new Circulo();
c1.radio = 5;
c1.color = "rojo";
double d = c1.getCircunferencia();
 Acceso a campos y métodos static: se utiliza
la sintaxis "clase."
Circulo.numeroCirculos++;
int n = Circulo.getNumeroCirculos();
51
 La clase es el espacio donde se empaquetan atributos y
métodos
52
 Un lenguaje de programación es un idioma artificial
diseñado para expresar procesos que pueden ser llevadas a
cabo por máquinas como las computadoras.
 Está formado por un conjunto de símbolos y reglas
sintácticas y semánticas que definen su estructura y el
significado de sus elementos y expresiones.
 Al proceso por el cual se escribe, se prueba, se depura, se
compila y se mantiene el código fuente de un programa
informático se le llama programación.
 Es aquel que utilizamos para poder transmitir
ordenadamente nuestras ideas a una computadora.
TIPOS DE LENGUAJES
 Existen 4 tipos de LP:
 Lenguaje máquina 00110011
 Lenguaje ensamblador ld a, #10
 Lenguajes de alto nivel for(i=0;i<10;i++)
 Lenguajes orientados a objetos class persona{ }
COMO SE CLASIFICAN
 Lenguajes imperativos. Utilizan instrucciones como unidad de trabajo de los
programas (Cobol, Pascal, C, Ada).
 Lenguajes declarativos. Los programas se construyen mediante descripciones de
funciones o expresiones lógicas (Lisp, Prolog).
 Lenguajes orientados a objetos. El diseño de los programas se basa mas en los datos
y su estructura. La unidad de proceso es el objeto y en el se incluyen los datos
(variables) y las operaciones que actúan sobre ellos (Java, Smalltalk, C++).
 Lenguajes orientados al problema. Diseñados para problemas específicos,
principalmente de gestión, suelen ser generadores de aplicaciones. (Lenguajes de 4ª
Generacion 4GL, Progress, ABAP, ORACLE)
 Lenguajes naturales. Están desarrollándose nuevos lenguajes con el principal
objetivo de aproximar el diseño y construcción de programas al lenguaje de las
personas.
LENGUAJE DE PROGRAMACIÓN ORIENTADO A
OBJETOS
 Entre los lenguajes orientados a objetos destacan los
siguientes:
 Action Script , Ada, C++, C#, Clarion, C++Builder, D, Delphi, Harbour,
Eiffel, Java, Lexico (en castellano), Objective-C, Ocaml, Oz, Perl (soporta
herencia múltiple), PHP (en su versión 5) , PowerBuilder, Python, Ruby,
Smalltalk, Magik (SmallWorld), VB.NET Visual FoxPro , XBase++
 Utilizaremos en nuestros ejemplos el lenguaje Java en su versión
J2SDK.
 El diseño orientado a objeto puede ser programado en
cualquier lenguaje.
 Los desarrollos se organizan alrededor de los datos, y no de
las funcionalidades.
 Afortunadamente han aparecido nuevos lenguajes que
facilitan la programación orientada a objetos, como es el
caso de Java.
 En adelante para explicar las funcionalidades de programación
orientadas a objetos adoptaremos código de Java como ejemplo
 Las principales diferencias entre la programación estructurada y la orientada
a objetos son:
 La programación orientada a objetos es más moderna, es
una evolución de la programación estructurada
 La programación orientada a objetos se basa en lenguajes
que soportan sintáctica y semánticamente la unión entre
los tipos abstractos de datos y sus operaciones (a esta
unión se la suele llamar clase).
 La programación orientada a objetos incorpora en su
entorno de ejecución mecanismos tales como el
polimorfismo y el envío de mensajes entre objetos.
El paradigma de programación representa un
enfoque particular o filosofía para la
construcción del software.
El enfoque no es mejor uno que otro sino que
cada uno tiene ventajas y desventajas. También
hay situaciones donde un paradigma resulta
más apropiado que otro.
 El paradigma de programación se refiere a:
¿Estilo de Programación?
Manera de Visualizar y Resolver Problemas de Programación
Procedural, Imperativo
Lógico, Declarativo
Visual
Paralelo
Orientado a Objetos
Filosofía
Historia, Objetivos y Metas
Modelos y Enfoques
Conceptos
Principios
Soporte
Notación, Metodologías
Herramientas y Tecnologías
El paradigma imperativo o por procedimientos
es considerado el más común y está
representado, por ejemplo, por el C o por
BASIC.
El paradigma funcional está representado por
la familia de lenguajes LISP (en particular
Scheme), ML o Haskell.
El paradigma lógico, un ejemplo es PROLOG.
El paradigma orientado a objetos. Un lenguaje
completamente orientado a objetos es
Smalltalk.
Actualmente el paradigma de programación
más usado debido a múltiples ventajas respecto
a sus anteriores, es la programación orientada
a objetos.
 La creación de un programa involucra ensamblar objetos y
hacerlos interactuar entre ellos
64
 Una Clase Describe Un Grupo De Objetos Que
Comparten Propiedades Y Métodos Comunes
 Una Clase Es Una Plantilla Que Define Qué
Forma Tienen Los Objetos De La Clase
 Una Clase Se Compone De:
 Información: Campos (Atributos, Propiedades)
 Comportamiento: Métodos (Operaciones, Funciones)
 Un Objeto Es Una Instancia De Una Clase
65
class Circulo {
// campos
// métodos
// constructores
// main()
}
66
class Circulo {
// campos
double radio = 5;
String color;
static int numeroCirculos = 0;
static final double PI = 3.1416;
// métodos
// constructores
// main( )
}
67
 Instrucciones que operan sobre los datos de un objeto para
obtener resultados
 Tienen cero o más parámetros
 Pueden retornar un valor o pueden ser declarados tambien
para indicar que no retornan ningún valor
68
class Circulo {
// campos
double radio = 5;
String color;
static int numeroCirculos = 0;
static final double PI = 3.1416;
// métodos
double getCircunferencia() {
return getCircunferencia(radio);
}
static double getCircunferencia(double r) {
return 2 * r * PI;
}
// constructores
// main( )
} 69
 Acceso a campos y métodos de instancia: se
utiliza la sintaxis "objeto."
Circulo c1 = new Circulo();
c1.radio = 5;
c1.color = "rojo";
double d = c1.getCircunferencia();
 Acceso a campos y métodos static: se utiliza
la sintaxis "clase."
Circulo.numeroCirculos++;
int n = Circulo.getNumeroCirculos();
70
 La clase es el espacio donde se empaquetan atributos y
métodos
71
 Un lenguaje de programación es un idioma artificial
diseñado para expresar procesos que pueden ser llevadas a
cabo por máquinas como las computadoras.
 Está formado por un conjunto de símbolos y reglas
sintácticas y semánticas que definen su estructura y el
significado de sus elementos y expresiones.
 Al proceso por el cual se escribe, se prueba, se depura, se
compila y se mantiene el código fuente de un programa
informático se le llama programación.
 Es aquel que utilizamos para poder transmitir
ordenadamente nuestras ideas a una computadora.
TIPOS DE LENGUAJES
 Existen 4 tipos de LP:
 Lenguaje máquina 00110011
 Lenguaje ensamblador ld a, #10
 Lenguajes de alto nivel for(i=0;i<10;i++)
 Lenguajes orientados a objetos class persona{ }
COMO SE CLASIFICAN
 Lenguajes imperativos. Utilizan instrucciones como unidad de trabajo de los
programas (Cobol, Pascal, C, Ada).
 Lenguajes declarativos. Los programas se construyen mediante descripciones de
funciones o expresiones lógicas (Lisp, Prolog).
 Lenguajes orientados a objetos. El diseño de los programas se basa mas en los datos
y su estructura. La unidad de proceso es el objeto y en el se incluyen los datos
(variables) y las operaciones que actúan sobre ellos (Java, Smalltalk, C++).
 Lenguajes orientados al problema. Diseñados para problemas específicos,
principalmente de gestión, suelen ser generadores de aplicaciones. (Lenguajes de 4ª
Generacion 4GL, Progress, ABAP, ORACLE)
 Lenguajes naturales. Están desarrollándose nuevos lenguajes con el principal
objetivo de aproximar el diseño y construcción de programas al lenguaje de las
personas.
LENGUAJE DE PROGRAMACIÓN ORIENTADO A
OBJETOS
 Entre los lenguajes orientados a objetos destacan los
siguientes:
 Action Script , Ada, C++, C#, Clarion, C++Builder, D, Delphi, Harbour,
Eiffel, Java, Lexico (en castellano), Objective-C, Ocaml, Oz, Perl (soporta
herencia múltiple), PHP (en su versión 5) , PowerBuilder, Python, Ruby,
Smalltalk, Magik (SmallWorld), VB.NET Visual FoxPro , XBase++
 Utilizaremos en nuestros ejemplos el lenguaje Java en su versión
J2SDK.
 El diseño orientado a objeto puede ser programado en
cualquier lenguaje.
 Los desarrollos se organizan alrededor de los datos, y no de
las funcionalidades.
 Afortunadamente han aparecido nuevos lenguajes que
facilitan la programación orientada a objetos, como es el
caso de Java.
 En adelante para explicar las funcionalidades de programación
orientadas a objetos adoptaremos código de Java como ejemplo
 Las principales diferencias entre la programación estructurada y la orientada
a objetos son:
 La programación orientada a objetos es más moderna, es
una evolución de la programación estructurada
 La programación orientada a objetos se basa en lenguajes
que soportan sintáctica y semánticamente la unión entre
los tipos abstractos de datos y sus operaciones (a esta
unión se la suele llamar clase).
 La programación orientada a objetos incorpora en su
entorno de ejecución mecanismos tales como el
polimorfismo y el envío de mensajes entre objetos.
El paradigma de programación representa un
enfoque particular o filosofía para la
construcción del software.
El enfoque no es mejor uno que otro sino que
cada uno tiene ventajas y desventajas. También
hay situaciones donde un paradigma resulta
más apropiado que otro.
 El paradigma de programación se refiere a:
¿Estilo de Programación?
Manera de Visualizar y Resolver Problemas de Programación
Procedural, Imperativo
Lógico, Declarativo
Visual
Paralelo
Orientado a Objetos
Filosofía
Historia, Objetivos y Metas
Modelos y Enfoques
Conceptos
Principios
Soporte
Notación, Metodologías
Herramientas y Tecnologías
El paradigma imperativo o por procedimientos
es considerado el más común y está
representado, por ejemplo, por el C o por
BASIC.
El paradigma funcional está representado por
la familia de lenguajes LISP (en particular
Scheme), ML o Haskell.
El paradigma lógico, un ejemplo es PROLOG.
El paradigma orientado a objetos. Un lenguaje
completamente orientado a objetos es
Smalltalk.
Actualmente el paradigma de programación
más usado debido a múltiples ventajas respecto
a sus anteriores, es la programación orientada
a objetos.
 La creación de un programa involucra ensamblar objetos y
hacerlos interactuar entre ellos
83
 Una Clase Describe Un Grupo De Objetos Que
Comparten Propiedades Y Métodos Comunes
 Una Clase Es Una Plantilla Que Define Qué
Forma Tienen Los Objetos De La Clase
 Una Clase Se Compone De:
 Información: Campos (Atributos, Propiedades)
 Comportamiento: Métodos (Operaciones, Funciones)
 Un Objeto Es Una Instancia De Una Clase
84
class Circulo {
// campos
// métodos
// constructores
// main()
}
85
class Circulo {
// campos
double radio = 5;
String color;
static int numeroCirculos = 0;
static final double PI = 3.1416;
// métodos
// constructores
// main( )
}
86
 Instrucciones que operan sobre los datos de un objeto para
obtener resultados
 Tienen cero o más parámetros
 Pueden retornar un valor o pueden ser declarados tambien
para indicar que no retornan ningún valor
87
class Circulo {
// campos
double radio = 5;
String color;
static int numeroCirculos = 0;
static final double PI = 3.1416;
// métodos
double getCircunferencia() {
return getCircunferencia(radio);
}
static double getCircunferencia(double r) {
return 2 * r * PI;
}
// constructores
// main( )
} 88
 Acceso a campos y métodos de instancia: se
utiliza la sintaxis "objeto."
Circulo c1 = new Circulo();
c1.radio = 5;
c1.color = "rojo";
double d = c1.getCircunferencia();
 Acceso a campos y métodos static: se utiliza
la sintaxis "clase."
Circulo.numeroCirculos++;
int n = Circulo.getNumeroCirculos();
89
 La clase es el espacio donde se empaquetan atributos y
métodos
90
 Un lenguaje de programación es un idioma artificial
diseñado para expresar procesos que pueden ser llevadas a
cabo por máquinas como las computadoras.
 Está formado por un conjunto de símbolos y reglas
sintácticas y semánticas que definen su estructura y el
significado de sus elementos y expresiones.
 Al proceso por el cual se escribe, se prueba, se depura, se
compila y se mantiene el código fuente de un programa
informático se le llama programación.
 Es aquel que utilizamos para poder transmitir
ordenadamente nuestras ideas a una computadora.
TIPOS DE LENGUAJES
 Existen 4 tipos de LP:
 Lenguaje máquina 00110011
 Lenguaje ensamblador ld a, #10
 Lenguajes de alto nivel for(i=0;i<10;i++)
 Lenguajes orientados a objetos class persona{ }
COMO SE CLASIFICAN
 Lenguajes imperativos. Utilizan instrucciones como unidad de trabajo de los
programas (Cobol, Pascal, C, Ada).
 Lenguajes declarativos. Los programas se construyen mediante descripciones de
funciones o expresiones lógicas (Lisp, Prolog).
 Lenguajes orientados a objetos. El diseño de los programas se basa mas en los datos
y su estructura. La unidad de proceso es el objeto y en el se incluyen los datos
(variables) y las operaciones que actúan sobre ellos (Java, Smalltalk, C++).
 Lenguajes orientados al problema. Diseñados para problemas específicos,
principalmente de gestión, suelen ser generadores de aplicaciones. (Lenguajes de 4ª
Generacion 4GL, Progress, ABAP, ORACLE)
 Lenguajes naturales. Están desarrollándose nuevos lenguajes con el principal
objetivo de aproximar el diseño y construcción de programas al lenguaje de las
personas.
LENGUAJE DE PROGRAMACIÓN ORIENTADO A
OBJETOS
 Entre los lenguajes orientados a objetos destacan los
siguientes:
 Action Script , Ada, C++, C#, Clarion, C++Builder, D, Delphi, Harbour,
Eiffel, Java, Lexico (en castellano), Objective-C, Ocaml, Oz, Perl (soporta
herencia múltiple), PHP (en su versión 5) , PowerBuilder, Python, Ruby,
Smalltalk, Magik (SmallWorld), VB.NET Visual FoxPro , XBase++
 Utilizaremos en nuestros ejemplos el lenguaje Java en su versión
J2SDK.
 El diseño orientado a objeto puede ser programado en
cualquier lenguaje.
 Los desarrollos se organizan alrededor de los datos, y no de
las funcionalidades.
 Afortunadamente han aparecido nuevos lenguajes que
facilitan la programación orientada a objetos, como es el
caso de Java.
 En adelante para explicar las funcionalidades de programación
orientadas a objetos adoptaremos código de Java como ejemplo

Más contenido relacionado

Similar a Programación a no Orientación para cambiar el paradigma (20)

Instituto tecnologico tulcan
Instituto tecnologico tulcanInstituto tecnologico tulcan
Instituto tecnologico tulcan
 
Tema 1 2_poo
Tema 1 2_pooTema 1 2_poo
Tema 1 2_poo
 
Analisis Y DiseñO Orientado Objetos
Analisis Y DiseñO Orientado ObjetosAnalisis Y DiseñO Orientado Objetos
Analisis Y DiseñO Orientado Objetos
 
1 Paradigma Objetos
1 Paradigma Objetos1 Paradigma Objetos
1 Paradigma Objetos
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructurada
 
Programacin estructurada
Programacin estructuradaProgramacin estructurada
Programacin estructurada
 
Samir
SamirSamir
Samir
 
samir
samirsamir
samir
 
PRESENTACION
PRESENTACIONPRESENTACION
PRESENTACION
 
Introduccion a la POO
Introduccion a la POOIntroduccion a la POO
Introduccion a la POO
 
Programacion
ProgramacionProgramacion
Programacion
 
Guia examen diagnostico_pseint
Guia examen diagnostico_pseintGuia examen diagnostico_pseint
Guia examen diagnostico_pseint
 
Presentación2
Presentación2Presentación2
Presentación2
 
1 eda teo
1 eda teo1 eda teo
1 eda teo
 
UML - Lenguaje de Modelamiento Unificado
UML - Lenguaje de Modelamiento UnificadoUML - Lenguaje de Modelamiento Unificado
UML - Lenguaje de Modelamiento Unificado
 
Presentacion de-uml-formato-2-1227891304393749-8
Presentacion de-uml-formato-2-1227891304393749-8Presentacion de-uml-formato-2-1227891304393749-8
Presentacion de-uml-formato-2-1227891304393749-8
 
Presentación2
Presentación2Presentación2
Presentación2
 
INF-102
INF-102INF-102
INF-102
 
Introduccion a la programacion orientada a objetos
Introduccion a la programacion orientada a objetosIntroduccion a la programacion orientada a objetos
Introduccion a la programacion orientada a objetos
 
Pseudocodigos y diagramas de flujo
Pseudocodigos y diagramas de flujoPseudocodigos y diagramas de flujo
Pseudocodigos y diagramas de flujo
 

Más de anytrix

seguridadbasedatos-150120143406-conversion-gate02.pptx
seguridadbasedatos-150120143406-conversion-gate02.pptxseguridadbasedatos-150120143406-conversion-gate02.pptx
seguridadbasedatos-150120143406-conversion-gate02.pptx
anytrix
 
Administracion. Administracion Administracion
Administracion. Administracion AdministracionAdministracion. Administracion Administracion
Administracion. Administracion Administracion
anytrix
 
seis_sigma_.Seis Sigma Seis Sigma Seis Sigma
seis_sigma_.Seis Sigma Seis Sigma Seis Sigmaseis_sigma_.Seis Sigma Seis Sigma Seis Sigma
seis_sigma_.Seis Sigma Seis Sigma Seis Sigma
anytrix
 
revolucionado la informática. revolucionado la informática revolucionado la i...
revolucionado la informática. revolucionado la informática revolucionado la i...revolucionado la informática. revolucionado la informática revolucionado la i...
revolucionado la informática. revolucionado la informática revolucionado la i...
anytrix
 
aeronautica.pptx aeronautica aeronautica aeronautica
aeronautica.pptx aeronautica aeronautica aeronauticaaeronautica.pptx aeronautica aeronautica aeronautica
aeronautica.pptx aeronautica aeronautica aeronautica
anytrix
 
estandares web estandares web estandares web
estandares web estandares web estandares webestandares web estandares web estandares web
estandares web estandares web estandares web
anytrix
 
Seguridad Seguridad Seguridad Seguridad
Seguridad  Seguridad  Seguridad SeguridadSeguridad  Seguridad  Seguridad Seguridad
Seguridad Seguridad Seguridad Seguridad
anytrix
 
Historia de Internet Historia de Internet Historia de Internet
Historia de Internet Historia de Internet Historia de InternetHistoria de Internet Historia de Internet Historia de Internet
Historia de Internet Historia de Internet Historia de Internet
anytrix
 
Sistemas operativos en la Nube Sistemas operativos en la Nube
Sistemas operativos en la Nube Sistemas operativos en la NubeSistemas operativos en la Nube Sistemas operativos en la Nube
Sistemas operativos en la Nube Sistemas operativos en la Nube
anytrix
 

Más de anytrix (15)

mod6seguridadbasedatos-150120143406-conversion-gate02.pptx
mod6seguridadbasedatos-150120143406-conversion-gate02.pptxmod6seguridadbasedatos-150120143406-conversion-gate02.pptx
mod6seguridadbasedatos-150120143406-conversion-gate02.pptx
 
seguridadbasedatos-150120143406-conversion-gate02.pptx
seguridadbasedatos-150120143406-conversion-gate02.pptxseguridadbasedatos-150120143406-conversion-gate02.pptx
seguridadbasedatos-150120143406-conversion-gate02.pptx
 
Administracion. Administracion Administracion
Administracion. Administracion AdministracionAdministracion. Administracion Administracion
Administracion. Administracion Administracion
 
seis_sigma_.Seis Sigma Seis Sigma Seis Sigma
seis_sigma_.Seis Sigma Seis Sigma Seis Sigmaseis_sigma_.Seis Sigma Seis Sigma Seis Sigma
seis_sigma_.Seis Sigma Seis Sigma Seis Sigma
 
Arranque y activación del sistema operativo.pptx
Arranque y activación del sistema operativo.pptxArranque y activación del sistema operativo.pptx
Arranque y activación del sistema operativo.pptx
 
revolucionado la informática. revolucionado la informática revolucionado la i...
revolucionado la informática. revolucionado la informática revolucionado la i...revolucionado la informática. revolucionado la informática revolucionado la i...
revolucionado la informática. revolucionado la informática revolucionado la i...
 
aeronautica.pptx aeronautica aeronautica aeronautica
aeronautica.pptx aeronautica aeronautica aeronauticaaeronautica.pptx aeronautica aeronautica aeronautica
aeronautica.pptx aeronautica aeronautica aeronautica
 
Algoritmos y solución de problemas.pptx Algoritmos y solución de problemas.pptx
Algoritmos y solución de problemas.pptx Algoritmos y solución de problemas.pptxAlgoritmos y solución de problemas.pptx Algoritmos y solución de problemas.pptx
Algoritmos y solución de problemas.pptx Algoritmos y solución de problemas.pptx
 
Clases abstractas en C#. Clases abstractas en C#
Clases abstractas en C#. Clases abstractas en C#Clases abstractas en C#. Clases abstractas en C#
Clases abstractas en C#. Clases abstractas en C#
 
estandares web estandares web estandares web
estandares web estandares web estandares webestandares web estandares web estandares web
estandares web estandares web estandares web
 
Herramientas de la web. Herramientas de la web
Herramientas de la web. Herramientas de la webHerramientas de la web. Herramientas de la web
Herramientas de la web. Herramientas de la web
 
Seguridad Seguridad Seguridad Seguridad
Seguridad  Seguridad  Seguridad SeguridadSeguridad  Seguridad  Seguridad Seguridad
Seguridad Seguridad Seguridad Seguridad
 
Estándares de Base de datosEstándares de Base de datos Estándares de Base de ...
Estándares de Base de datosEstándares de Base de datos Estándares de Base de ...Estándares de Base de datosEstándares de Base de datos Estándares de Base de ...
Estándares de Base de datosEstándares de Base de datos Estándares de Base de ...
 
Historia de Internet Historia de Internet Historia de Internet
Historia de Internet Historia de Internet Historia de InternetHistoria de Internet Historia de Internet Historia de Internet
Historia de Internet Historia de Internet Historia de Internet
 
Sistemas operativos en la Nube Sistemas operativos en la Nube
Sistemas operativos en la Nube Sistemas operativos en la NubeSistemas operativos en la Nube Sistemas operativos en la Nube
Sistemas operativos en la Nube Sistemas operativos en la Nube
 

Último

Geometría para alumnos de segundo medio A
Geometría para alumnos de segundo medio AGeometría para alumnos de segundo medio A
Geometría para alumnos de segundo medio A
PabloBascur3
 
teoriasymodelosdeenfermeria-190315005411.pptx
teoriasymodelosdeenfermeria-190315005411.pptxteoriasymodelosdeenfermeria-190315005411.pptx
teoriasymodelosdeenfermeria-190315005411.pptx
djosemagarino
 
planeacion de encuentros pedagogicos atencion primera infancia
planeacion de encuentros pedagogicos atencion primera infanciaplaneacion de encuentros pedagogicos atencion primera infancia
planeacion de encuentros pedagogicos atencion primera infancia
IbethRincon
 
2.-del-absolutismo-al-despotismo-ilustrado.ppt
2.-del-absolutismo-al-despotismo-ilustrado.ppt2.-del-absolutismo-al-despotismo-ilustrado.ppt
2.-del-absolutismo-al-despotismo-ilustrado.ppt
toribioCcanchillanos
 
Infografia de El Minierismo reflejado en la Arquitectura
Infografia de El Minierismo reflejado en la ArquitecturaInfografia de El Minierismo reflejado en la Arquitectura
Infografia de El Minierismo reflejado en la Arquitectura
frenyergt23
 

Último (20)

PRIMER EXAMEN_merged (3).pdfdsadsadasdasd
PRIMER EXAMEN_merged (3).pdfdsadsadasdasdPRIMER EXAMEN_merged (3).pdfdsadsadasdasd
PRIMER EXAMEN_merged (3).pdfdsadsadasdasd
 
Generalidades de las cámaras fotogr[aficas
Generalidades de las cámaras fotogr[aficasGeneralidades de las cámaras fotogr[aficas
Generalidades de las cámaras fotogr[aficas
 
EXPOSICION FOTOGRAFICA 1946-2024 Aniversario Conservatorio Carlos Valderrama ...
EXPOSICION FOTOGRAFICA 1946-2024 Aniversario Conservatorio Carlos Valderrama ...EXPOSICION FOTOGRAFICA 1946-2024 Aniversario Conservatorio Carlos Valderrama ...
EXPOSICION FOTOGRAFICA 1946-2024 Aniversario Conservatorio Carlos Valderrama ...
 
El Legado de Walter Gropius y Frank Lloyd Wright en la Arquitectura Moderna_c...
El Legado de Walter Gropius y Frank Lloyd Wright en la Arquitectura Moderna_c...El Legado de Walter Gropius y Frank Lloyd Wright en la Arquitectura Moderna_c...
El Legado de Walter Gropius y Frank Lloyd Wright en la Arquitectura Moderna_c...
 
Geometría para alumnos de segundo medio A
Geometría para alumnos de segundo medio AGeometría para alumnos de segundo medio A
Geometría para alumnos de segundo medio A
 
Burger- la negación de la autonomia del arte en la vanguardia.pdf
Burger- la negación de la autonomia del arte en la vanguardia.pdfBurger- la negación de la autonomia del arte en la vanguardia.pdf
Burger- la negación de la autonomia del arte en la vanguardia.pdf
 
teoriasymodelosdeenfermeria-190315005411.pptx
teoriasymodelosdeenfermeria-190315005411.pptxteoriasymodelosdeenfermeria-190315005411.pptx
teoriasymodelosdeenfermeria-190315005411.pptx
 
EXPONENTES DEL MODERNISMO-VIRGINIA PRIETO.pdf
EXPONENTES DEL MODERNISMO-VIRGINIA PRIETO.pdfEXPONENTES DEL MODERNISMO-VIRGINIA PRIETO.pdf
EXPONENTES DEL MODERNISMO-VIRGINIA PRIETO.pdf
 
Nuestro Libro de Aventuras, en PPTX.pptx
Nuestro Libro de Aventuras, en PPTX.pptxNuestro Libro de Aventuras, en PPTX.pptx
Nuestro Libro de Aventuras, en PPTX.pptx
 
LAVADO DE MANOS TRIPTICO modelos de.docx
LAVADO DE MANOS TRIPTICO modelos de.docxLAVADO DE MANOS TRIPTICO modelos de.docx
LAVADO DE MANOS TRIPTICO modelos de.docx
 
ANALISIS DE FORMAS NATURALES EN EL DIBUJOpdf
ANALISIS DE FORMAS NATURALES EN EL DIBUJOpdfANALISIS DE FORMAS NATURALES EN EL DIBUJOpdf
ANALISIS DE FORMAS NATURALES EN EL DIBUJOpdf
 
música de la Región caribe colombiana .pptx
música de la Región caribe colombiana .pptxmúsica de la Región caribe colombiana .pptx
música de la Región caribe colombiana .pptx
 
Arribando a la concreción II. Títulos en inglés, alemán y español
Arribando a la concreción II. Títulos en inglés, alemán y españolArribando a la concreción II. Títulos en inglés, alemán y español
Arribando a la concreción II. Títulos en inglés, alemán y español
 
planeacion de encuentros pedagogicos atencion primera infancia
planeacion de encuentros pedagogicos atencion primera infanciaplaneacion de encuentros pedagogicos atencion primera infancia
planeacion de encuentros pedagogicos atencion primera infancia
 
minierismo historia caracteristicas gabriel silva.pdf
minierismo historia caracteristicas gabriel silva.pdfminierismo historia caracteristicas gabriel silva.pdf
minierismo historia caracteristicas gabriel silva.pdf
 
El marinerismo y sus características en la arquitectura
El marinerismo y sus características en la arquitecturaEl marinerismo y sus características en la arquitectura
El marinerismo y sus características en la arquitectura
 
Cuadernillobdjjdjdjdjjdjdkdkkdjdjfujfjfj
CuadernillobdjjdjdjdjjdjdkdkkdjdjfujfjfjCuadernillobdjjdjdjdjjdjdkdkkdjdjfujfjfj
Cuadernillobdjjdjdjdjjdjdkdkkdjdjfujfjfj
 
2.-del-absolutismo-al-despotismo-ilustrado.ppt
2.-del-absolutismo-al-despotismo-ilustrado.ppt2.-del-absolutismo-al-despotismo-ilustrado.ppt
2.-del-absolutismo-al-despotismo-ilustrado.ppt
 
Infografia de El Minierismo reflejado en la Arquitectura
Infografia de El Minierismo reflejado en la ArquitecturaInfografia de El Minierismo reflejado en la Arquitectura
Infografia de El Minierismo reflejado en la Arquitectura
 
Resumen de generalidades de la fotografia.
Resumen de generalidades de la fotografia.Resumen de generalidades de la fotografia.
Resumen de generalidades de la fotografia.
 

Programación a no Orientación para cambiar el paradigma

  • 1.
  • 2.  Las principales diferencias entre la programación estructurada y la orientada a objetos son:  La programación orientada a objetos es más moderna, es una evolución de la programación estructurada  La programación orientada a objetos se basa en lenguajes que soportan sintáctica y semánticamente la unión entre los tipos abstractos de datos y sus operaciones (a esta unión se la suele llamar clase).  La programación orientada a objetos incorpora en su entorno de ejecución mecanismos tales como el polimorfismo y el envío de mensajes entre objetos.
  • 3. El paradigma de programación representa un enfoque particular o filosofía para la construcción del software. El enfoque no es mejor uno que otro sino que cada uno tiene ventajas y desventajas. También hay situaciones donde un paradigma resulta más apropiado que otro.
  • 4.  El paradigma de programación se refiere a: ¿Estilo de Programación? Manera de Visualizar y Resolver Problemas de Programación Procedural, Imperativo Lógico, Declarativo Visual Paralelo Orientado a Objetos Filosofía Historia, Objetivos y Metas Modelos y Enfoques Conceptos Principios Soporte Notación, Metodologías Herramientas y Tecnologías
  • 5. El paradigma imperativo o por procedimientos es considerado el más común y está representado, por ejemplo, por el C o por BASIC. El paradigma funcional está representado por la familia de lenguajes LISP (en particular Scheme), ML o Haskell. El paradigma lógico, un ejemplo es PROLOG. El paradigma orientado a objetos. Un lenguaje completamente orientado a objetos es Smalltalk.
  • 6. Actualmente el paradigma de programación más usado debido a múltiples ventajas respecto a sus anteriores, es la programación orientada a objetos.
  • 7.  La creación de un programa involucra ensamblar objetos y hacerlos interactuar entre ellos 7
  • 8.  Una Clase Describe Un Grupo De Objetos Que Comparten Propiedades Y Métodos Comunes  Una Clase Es Una Plantilla Que Define Qué Forma Tienen Los Objetos De La Clase  Una Clase Se Compone De:  Información: Campos (Atributos, Propiedades)  Comportamiento: Métodos (Operaciones, Funciones)  Un Objeto Es Una Instancia De Una Clase 8
  • 9. class Circulo { // campos // métodos // constructores // main() } 9
  • 10. class Circulo { // campos double radio = 5; String color; static int numeroCirculos = 0; static final double PI = 3.1416; // métodos // constructores // main( ) } 10
  • 11.  Instrucciones que operan sobre los datos de un objeto para obtener resultados  Tienen cero o más parámetros  Pueden retornar un valor o pueden ser declarados tambien para indicar que no retornan ningún valor 11
  • 12. class Circulo { // campos double radio = 5; String color; static int numeroCirculos = 0; static final double PI = 3.1416; // métodos double getCircunferencia() { return getCircunferencia(radio); } static double getCircunferencia(double r) { return 2 * r * PI; } // constructores // main( ) } 12
  • 13.  Acceso a campos y métodos de instancia: se utiliza la sintaxis "objeto." Circulo c1 = new Circulo(); c1.radio = 5; c1.color = "rojo"; double d = c1.getCircunferencia();  Acceso a campos y métodos static: se utiliza la sintaxis "clase." Circulo.numeroCirculos++; int n = Circulo.getNumeroCirculos(); 13
  • 14.  La clase es el espacio donde se empaquetan atributos y métodos 14
  • 15.  Un lenguaje de programación es un idioma artificial diseñado para expresar procesos que pueden ser llevadas a cabo por máquinas como las computadoras.  Está formado por un conjunto de símbolos y reglas sintácticas y semánticas que definen su estructura y el significado de sus elementos y expresiones.  Al proceso por el cual se escribe, se prueba, se depura, se compila y se mantiene el código fuente de un programa informático se le llama programación.  Es aquel que utilizamos para poder transmitir ordenadamente nuestras ideas a una computadora.
  • 16. TIPOS DE LENGUAJES  Existen 4 tipos de LP:  Lenguaje máquina 00110011  Lenguaje ensamblador ld a, #10  Lenguajes de alto nivel for(i=0;i<10;i++)  Lenguajes orientados a objetos class persona{ }
  • 17. COMO SE CLASIFICAN  Lenguajes imperativos. Utilizan instrucciones como unidad de trabajo de los programas (Cobol, Pascal, C, Ada).  Lenguajes declarativos. Los programas se construyen mediante descripciones de funciones o expresiones lógicas (Lisp, Prolog).  Lenguajes orientados a objetos. El diseño de los programas se basa mas en los datos y su estructura. La unidad de proceso es el objeto y en el se incluyen los datos (variables) y las operaciones que actúan sobre ellos (Java, Smalltalk, C++).  Lenguajes orientados al problema. Diseñados para problemas específicos, principalmente de gestión, suelen ser generadores de aplicaciones. (Lenguajes de 4ª Generacion 4GL, Progress, ABAP, ORACLE)  Lenguajes naturales. Están desarrollándose nuevos lenguajes con el principal objetivo de aproximar el diseño y construcción de programas al lenguaje de las personas.
  • 18. LENGUAJE DE PROGRAMACIÓN ORIENTADO A OBJETOS  Entre los lenguajes orientados a objetos destacan los siguientes:  Action Script , Ada, C++, C#, Clarion, C++Builder, D, Delphi, Harbour, Eiffel, Java, Lexico (en castellano), Objective-C, Ocaml, Oz, Perl (soporta herencia múltiple), PHP (en su versión 5) , PowerBuilder, Python, Ruby, Smalltalk, Magik (SmallWorld), VB.NET Visual FoxPro , XBase++  Utilizaremos en nuestros ejemplos el lenguaje Java en su versión J2SDK.
  • 19.  El diseño orientado a objeto puede ser programado en cualquier lenguaje.  Los desarrollos se organizan alrededor de los datos, y no de las funcionalidades.  Afortunadamente han aparecido nuevos lenguajes que facilitan la programación orientada a objetos, como es el caso de Java.  En adelante para explicar las funcionalidades de programación orientadas a objetos adoptaremos código de Java como ejemplo
  • 20.
  • 21.  Las principales diferencias entre la programación estructurada y la orientada a objetos son:  La programación orientada a objetos es más moderna, es una evolución de la programación estructurada  La programación orientada a objetos se basa en lenguajes que soportan sintáctica y semánticamente la unión entre los tipos abstractos de datos y sus operaciones (a esta unión se la suele llamar clase).  La programación orientada a objetos incorpora en su entorno de ejecución mecanismos tales como el polimorfismo y el envío de mensajes entre objetos.
  • 22. El paradigma de programación representa un enfoque particular o filosofía para la construcción del software. El enfoque no es mejor uno que otro sino que cada uno tiene ventajas y desventajas. También hay situaciones donde un paradigma resulta más apropiado que otro.
  • 23.  El paradigma de programación se refiere a: ¿Estilo de Programación? Manera de Visualizar y Resolver Problemas de Programación Procedural, Imperativo Lógico, Declarativo Visual Paralelo Orientado a Objetos Filosofía Historia, Objetivos y Metas Modelos y Enfoques Conceptos Principios Soporte Notación, Metodologías Herramientas y Tecnologías
  • 24. El paradigma imperativo o por procedimientos es considerado el más común y está representado, por ejemplo, por el C o por BASIC. El paradigma funcional está representado por la familia de lenguajes LISP (en particular Scheme), ML o Haskell. El paradigma lógico, un ejemplo es PROLOG. El paradigma orientado a objetos. Un lenguaje completamente orientado a objetos es Smalltalk.
  • 25. Actualmente el paradigma de programación más usado debido a múltiples ventajas respecto a sus anteriores, es la programación orientada a objetos.
  • 26.  La creación de un programa involucra ensamblar objetos y hacerlos interactuar entre ellos 26
  • 27.  Una Clase Describe Un Grupo De Objetos Que Comparten Propiedades Y Métodos Comunes  Una Clase Es Una Plantilla Que Define Qué Forma Tienen Los Objetos De La Clase  Una Clase Se Compone De:  Información: Campos (Atributos, Propiedades)  Comportamiento: Métodos (Operaciones, Funciones)  Un Objeto Es Una Instancia De Una Clase 27
  • 28. class Circulo { // campos // métodos // constructores // main() } 28
  • 29. class Circulo { // campos double radio = 5; String color; static int numeroCirculos = 0; static final double PI = 3.1416; // métodos // constructores // main( ) } 29
  • 30.  Instrucciones que operan sobre los datos de un objeto para obtener resultados  Tienen cero o más parámetros  Pueden retornar un valor o pueden ser declarados tambien para indicar que no retornan ningún valor 30
  • 31. class Circulo { // campos double radio = 5; String color; static int numeroCirculos = 0; static final double PI = 3.1416; // métodos double getCircunferencia() { return getCircunferencia(radio); } static double getCircunferencia(double r) { return 2 * r * PI; } // constructores // main( ) } 31
  • 32.  Acceso a campos y métodos de instancia: se utiliza la sintaxis "objeto." Circulo c1 = new Circulo(); c1.radio = 5; c1.color = "rojo"; double d = c1.getCircunferencia();  Acceso a campos y métodos static: se utiliza la sintaxis "clase." Circulo.numeroCirculos++; int n = Circulo.getNumeroCirculos(); 32
  • 33.  La clase es el espacio donde se empaquetan atributos y métodos 33
  • 34.  Un lenguaje de programación es un idioma artificial diseñado para expresar procesos que pueden ser llevadas a cabo por máquinas como las computadoras.  Está formado por un conjunto de símbolos y reglas sintácticas y semánticas que definen su estructura y el significado de sus elementos y expresiones.  Al proceso por el cual se escribe, se prueba, se depura, se compila y se mantiene el código fuente de un programa informático se le llama programación.  Es aquel que utilizamos para poder transmitir ordenadamente nuestras ideas a una computadora.
  • 35. TIPOS DE LENGUAJES  Existen 4 tipos de LP:  Lenguaje máquina 00110011  Lenguaje ensamblador ld a, #10  Lenguajes de alto nivel for(i=0;i<10;i++)  Lenguajes orientados a objetos class persona{ }
  • 36. COMO SE CLASIFICAN  Lenguajes imperativos. Utilizan instrucciones como unidad de trabajo de los programas (Cobol, Pascal, C, Ada).  Lenguajes declarativos. Los programas se construyen mediante descripciones de funciones o expresiones lógicas (Lisp, Prolog).  Lenguajes orientados a objetos. El diseño de los programas se basa mas en los datos y su estructura. La unidad de proceso es el objeto y en el se incluyen los datos (variables) y las operaciones que actúan sobre ellos (Java, Smalltalk, C++).  Lenguajes orientados al problema. Diseñados para problemas específicos, principalmente de gestión, suelen ser generadores de aplicaciones. (Lenguajes de 4ª Generacion 4GL, Progress, ABAP, ORACLE)  Lenguajes naturales. Están desarrollándose nuevos lenguajes con el principal objetivo de aproximar el diseño y construcción de programas al lenguaje de las personas.
  • 37. LENGUAJE DE PROGRAMACIÓN ORIENTADO A OBJETOS  Entre los lenguajes orientados a objetos destacan los siguientes:  Action Script , Ada, C++, C#, Clarion, C++Builder, D, Delphi, Harbour, Eiffel, Java, Lexico (en castellano), Objective-C, Ocaml, Oz, Perl (soporta herencia múltiple), PHP (en su versión 5) , PowerBuilder, Python, Ruby, Smalltalk, Magik (SmallWorld), VB.NET Visual FoxPro , XBase++  Utilizaremos en nuestros ejemplos el lenguaje Java en su versión J2SDK.
  • 38.  El diseño orientado a objeto puede ser programado en cualquier lenguaje.  Los desarrollos se organizan alrededor de los datos, y no de las funcionalidades.  Afortunadamente han aparecido nuevos lenguajes que facilitan la programación orientada a objetos, como es el caso de Java.  En adelante para explicar las funcionalidades de programación orientadas a objetos adoptaremos código de Java como ejemplo
  • 39.
  • 40.  Las principales diferencias entre la programación estructurada y la orientada a objetos son:  La programación orientada a objetos es más moderna, es una evolución de la programación estructurada  La programación orientada a objetos se basa en lenguajes que soportan sintáctica y semánticamente la unión entre los tipos abstractos de datos y sus operaciones (a esta unión se la suele llamar clase).  La programación orientada a objetos incorpora en su entorno de ejecución mecanismos tales como el polimorfismo y el envío de mensajes entre objetos.
  • 41. El paradigma de programación representa un enfoque particular o filosofía para la construcción del software. El enfoque no es mejor uno que otro sino que cada uno tiene ventajas y desventajas. También hay situaciones donde un paradigma resulta más apropiado que otro.
  • 42.  El paradigma de programación se refiere a: ¿Estilo de Programación? Manera de Visualizar y Resolver Problemas de Programación Procedural, Imperativo Lógico, Declarativo Visual Paralelo Orientado a Objetos Filosofía Historia, Objetivos y Metas Modelos y Enfoques Conceptos Principios Soporte Notación, Metodologías Herramientas y Tecnologías
  • 43. El paradigma imperativo o por procedimientos es considerado el más común y está representado, por ejemplo, por el C o por BASIC. El paradigma funcional está representado por la familia de lenguajes LISP (en particular Scheme), ML o Haskell. El paradigma lógico, un ejemplo es PROLOG. El paradigma orientado a objetos. Un lenguaje completamente orientado a objetos es Smalltalk.
  • 44. Actualmente el paradigma de programación más usado debido a múltiples ventajas respecto a sus anteriores, es la programación orientada a objetos.
  • 45.  La creación de un programa involucra ensamblar objetos y hacerlos interactuar entre ellos 45
  • 46.  Una Clase Describe Un Grupo De Objetos Que Comparten Propiedades Y Métodos Comunes  Una Clase Es Una Plantilla Que Define Qué Forma Tienen Los Objetos De La Clase  Una Clase Se Compone De:  Información: Campos (Atributos, Propiedades)  Comportamiento: Métodos (Operaciones, Funciones)  Un Objeto Es Una Instancia De Una Clase 46
  • 47. class Circulo { // campos // métodos // constructores // main() } 47
  • 48. class Circulo { // campos double radio = 5; String color; static int numeroCirculos = 0; static final double PI = 3.1416; // métodos // constructores // main( ) } 48
  • 49.  Instrucciones que operan sobre los datos de un objeto para obtener resultados  Tienen cero o más parámetros  Pueden retornar un valor o pueden ser declarados tambien para indicar que no retornan ningún valor 49
  • 50. class Circulo { // campos double radio = 5; String color; static int numeroCirculos = 0; static final double PI = 3.1416; // métodos double getCircunferencia() { return getCircunferencia(radio); } static double getCircunferencia(double r) { return 2 * r * PI; } // constructores // main( ) } 50
  • 51.  Acceso a campos y métodos de instancia: se utiliza la sintaxis "objeto." Circulo c1 = new Circulo(); c1.radio = 5; c1.color = "rojo"; double d = c1.getCircunferencia();  Acceso a campos y métodos static: se utiliza la sintaxis "clase." Circulo.numeroCirculos++; int n = Circulo.getNumeroCirculos(); 51
  • 52.  La clase es el espacio donde se empaquetan atributos y métodos 52
  • 53.  Un lenguaje de programación es un idioma artificial diseñado para expresar procesos que pueden ser llevadas a cabo por máquinas como las computadoras.  Está formado por un conjunto de símbolos y reglas sintácticas y semánticas que definen su estructura y el significado de sus elementos y expresiones.  Al proceso por el cual se escribe, se prueba, se depura, se compila y se mantiene el código fuente de un programa informático se le llama programación.  Es aquel que utilizamos para poder transmitir ordenadamente nuestras ideas a una computadora.
  • 54. TIPOS DE LENGUAJES  Existen 4 tipos de LP:  Lenguaje máquina 00110011  Lenguaje ensamblador ld a, #10  Lenguajes de alto nivel for(i=0;i<10;i++)  Lenguajes orientados a objetos class persona{ }
  • 55. COMO SE CLASIFICAN  Lenguajes imperativos. Utilizan instrucciones como unidad de trabajo de los programas (Cobol, Pascal, C, Ada).  Lenguajes declarativos. Los programas se construyen mediante descripciones de funciones o expresiones lógicas (Lisp, Prolog).  Lenguajes orientados a objetos. El diseño de los programas se basa mas en los datos y su estructura. La unidad de proceso es el objeto y en el se incluyen los datos (variables) y las operaciones que actúan sobre ellos (Java, Smalltalk, C++).  Lenguajes orientados al problema. Diseñados para problemas específicos, principalmente de gestión, suelen ser generadores de aplicaciones. (Lenguajes de 4ª Generacion 4GL, Progress, ABAP, ORACLE)  Lenguajes naturales. Están desarrollándose nuevos lenguajes con el principal objetivo de aproximar el diseño y construcción de programas al lenguaje de las personas.
  • 56. LENGUAJE DE PROGRAMACIÓN ORIENTADO A OBJETOS  Entre los lenguajes orientados a objetos destacan los siguientes:  Action Script , Ada, C++, C#, Clarion, C++Builder, D, Delphi, Harbour, Eiffel, Java, Lexico (en castellano), Objective-C, Ocaml, Oz, Perl (soporta herencia múltiple), PHP (en su versión 5) , PowerBuilder, Python, Ruby, Smalltalk, Magik (SmallWorld), VB.NET Visual FoxPro , XBase++  Utilizaremos en nuestros ejemplos el lenguaje Java en su versión J2SDK.
  • 57.  El diseño orientado a objeto puede ser programado en cualquier lenguaje.  Los desarrollos se organizan alrededor de los datos, y no de las funcionalidades.  Afortunadamente han aparecido nuevos lenguajes que facilitan la programación orientada a objetos, como es el caso de Java.  En adelante para explicar las funcionalidades de programación orientadas a objetos adoptaremos código de Java como ejemplo
  • 58.
  • 59.  Las principales diferencias entre la programación estructurada y la orientada a objetos son:  La programación orientada a objetos es más moderna, es una evolución de la programación estructurada  La programación orientada a objetos se basa en lenguajes que soportan sintáctica y semánticamente la unión entre los tipos abstractos de datos y sus operaciones (a esta unión se la suele llamar clase).  La programación orientada a objetos incorpora en su entorno de ejecución mecanismos tales como el polimorfismo y el envío de mensajes entre objetos.
  • 60. El paradigma de programación representa un enfoque particular o filosofía para la construcción del software. El enfoque no es mejor uno que otro sino que cada uno tiene ventajas y desventajas. También hay situaciones donde un paradigma resulta más apropiado que otro.
  • 61.  El paradigma de programación se refiere a: ¿Estilo de Programación? Manera de Visualizar y Resolver Problemas de Programación Procedural, Imperativo Lógico, Declarativo Visual Paralelo Orientado a Objetos Filosofía Historia, Objetivos y Metas Modelos y Enfoques Conceptos Principios Soporte Notación, Metodologías Herramientas y Tecnologías
  • 62. El paradigma imperativo o por procedimientos es considerado el más común y está representado, por ejemplo, por el C o por BASIC. El paradigma funcional está representado por la familia de lenguajes LISP (en particular Scheme), ML o Haskell. El paradigma lógico, un ejemplo es PROLOG. El paradigma orientado a objetos. Un lenguaje completamente orientado a objetos es Smalltalk.
  • 63. Actualmente el paradigma de programación más usado debido a múltiples ventajas respecto a sus anteriores, es la programación orientada a objetos.
  • 64.  La creación de un programa involucra ensamblar objetos y hacerlos interactuar entre ellos 64
  • 65.  Una Clase Describe Un Grupo De Objetos Que Comparten Propiedades Y Métodos Comunes  Una Clase Es Una Plantilla Que Define Qué Forma Tienen Los Objetos De La Clase  Una Clase Se Compone De:  Información: Campos (Atributos, Propiedades)  Comportamiento: Métodos (Operaciones, Funciones)  Un Objeto Es Una Instancia De Una Clase 65
  • 66. class Circulo { // campos // métodos // constructores // main() } 66
  • 67. class Circulo { // campos double radio = 5; String color; static int numeroCirculos = 0; static final double PI = 3.1416; // métodos // constructores // main( ) } 67
  • 68.  Instrucciones que operan sobre los datos de un objeto para obtener resultados  Tienen cero o más parámetros  Pueden retornar un valor o pueden ser declarados tambien para indicar que no retornan ningún valor 68
  • 69. class Circulo { // campos double radio = 5; String color; static int numeroCirculos = 0; static final double PI = 3.1416; // métodos double getCircunferencia() { return getCircunferencia(radio); } static double getCircunferencia(double r) { return 2 * r * PI; } // constructores // main( ) } 69
  • 70.  Acceso a campos y métodos de instancia: se utiliza la sintaxis "objeto." Circulo c1 = new Circulo(); c1.radio = 5; c1.color = "rojo"; double d = c1.getCircunferencia();  Acceso a campos y métodos static: se utiliza la sintaxis "clase." Circulo.numeroCirculos++; int n = Circulo.getNumeroCirculos(); 70
  • 71.  La clase es el espacio donde se empaquetan atributos y métodos 71
  • 72.  Un lenguaje de programación es un idioma artificial diseñado para expresar procesos que pueden ser llevadas a cabo por máquinas como las computadoras.  Está formado por un conjunto de símbolos y reglas sintácticas y semánticas que definen su estructura y el significado de sus elementos y expresiones.  Al proceso por el cual se escribe, se prueba, se depura, se compila y se mantiene el código fuente de un programa informático se le llama programación.  Es aquel que utilizamos para poder transmitir ordenadamente nuestras ideas a una computadora.
  • 73. TIPOS DE LENGUAJES  Existen 4 tipos de LP:  Lenguaje máquina 00110011  Lenguaje ensamblador ld a, #10  Lenguajes de alto nivel for(i=0;i<10;i++)  Lenguajes orientados a objetos class persona{ }
  • 74. COMO SE CLASIFICAN  Lenguajes imperativos. Utilizan instrucciones como unidad de trabajo de los programas (Cobol, Pascal, C, Ada).  Lenguajes declarativos. Los programas se construyen mediante descripciones de funciones o expresiones lógicas (Lisp, Prolog).  Lenguajes orientados a objetos. El diseño de los programas se basa mas en los datos y su estructura. La unidad de proceso es el objeto y en el se incluyen los datos (variables) y las operaciones que actúan sobre ellos (Java, Smalltalk, C++).  Lenguajes orientados al problema. Diseñados para problemas específicos, principalmente de gestión, suelen ser generadores de aplicaciones. (Lenguajes de 4ª Generacion 4GL, Progress, ABAP, ORACLE)  Lenguajes naturales. Están desarrollándose nuevos lenguajes con el principal objetivo de aproximar el diseño y construcción de programas al lenguaje de las personas.
  • 75. LENGUAJE DE PROGRAMACIÓN ORIENTADO A OBJETOS  Entre los lenguajes orientados a objetos destacan los siguientes:  Action Script , Ada, C++, C#, Clarion, C++Builder, D, Delphi, Harbour, Eiffel, Java, Lexico (en castellano), Objective-C, Ocaml, Oz, Perl (soporta herencia múltiple), PHP (en su versión 5) , PowerBuilder, Python, Ruby, Smalltalk, Magik (SmallWorld), VB.NET Visual FoxPro , XBase++  Utilizaremos en nuestros ejemplos el lenguaje Java en su versión J2SDK.
  • 76.  El diseño orientado a objeto puede ser programado en cualquier lenguaje.  Los desarrollos se organizan alrededor de los datos, y no de las funcionalidades.  Afortunadamente han aparecido nuevos lenguajes que facilitan la programación orientada a objetos, como es el caso de Java.  En adelante para explicar las funcionalidades de programación orientadas a objetos adoptaremos código de Java como ejemplo
  • 77.
  • 78.  Las principales diferencias entre la programación estructurada y la orientada a objetos son:  La programación orientada a objetos es más moderna, es una evolución de la programación estructurada  La programación orientada a objetos se basa en lenguajes que soportan sintáctica y semánticamente la unión entre los tipos abstractos de datos y sus operaciones (a esta unión se la suele llamar clase).  La programación orientada a objetos incorpora en su entorno de ejecución mecanismos tales como el polimorfismo y el envío de mensajes entre objetos.
  • 79. El paradigma de programación representa un enfoque particular o filosofía para la construcción del software. El enfoque no es mejor uno que otro sino que cada uno tiene ventajas y desventajas. También hay situaciones donde un paradigma resulta más apropiado que otro.
  • 80.  El paradigma de programación se refiere a: ¿Estilo de Programación? Manera de Visualizar y Resolver Problemas de Programación Procedural, Imperativo Lógico, Declarativo Visual Paralelo Orientado a Objetos Filosofía Historia, Objetivos y Metas Modelos y Enfoques Conceptos Principios Soporte Notación, Metodologías Herramientas y Tecnologías
  • 81. El paradigma imperativo o por procedimientos es considerado el más común y está representado, por ejemplo, por el C o por BASIC. El paradigma funcional está representado por la familia de lenguajes LISP (en particular Scheme), ML o Haskell. El paradigma lógico, un ejemplo es PROLOG. El paradigma orientado a objetos. Un lenguaje completamente orientado a objetos es Smalltalk.
  • 82. Actualmente el paradigma de programación más usado debido a múltiples ventajas respecto a sus anteriores, es la programación orientada a objetos.
  • 83.  La creación de un programa involucra ensamblar objetos y hacerlos interactuar entre ellos 83
  • 84.  Una Clase Describe Un Grupo De Objetos Que Comparten Propiedades Y Métodos Comunes  Una Clase Es Una Plantilla Que Define Qué Forma Tienen Los Objetos De La Clase  Una Clase Se Compone De:  Información: Campos (Atributos, Propiedades)  Comportamiento: Métodos (Operaciones, Funciones)  Un Objeto Es Una Instancia De Una Clase 84
  • 85. class Circulo { // campos // métodos // constructores // main() } 85
  • 86. class Circulo { // campos double radio = 5; String color; static int numeroCirculos = 0; static final double PI = 3.1416; // métodos // constructores // main( ) } 86
  • 87.  Instrucciones que operan sobre los datos de un objeto para obtener resultados  Tienen cero o más parámetros  Pueden retornar un valor o pueden ser declarados tambien para indicar que no retornan ningún valor 87
  • 88. class Circulo { // campos double radio = 5; String color; static int numeroCirculos = 0; static final double PI = 3.1416; // métodos double getCircunferencia() { return getCircunferencia(radio); } static double getCircunferencia(double r) { return 2 * r * PI; } // constructores // main( ) } 88
  • 89.  Acceso a campos y métodos de instancia: se utiliza la sintaxis "objeto." Circulo c1 = new Circulo(); c1.radio = 5; c1.color = "rojo"; double d = c1.getCircunferencia();  Acceso a campos y métodos static: se utiliza la sintaxis "clase." Circulo.numeroCirculos++; int n = Circulo.getNumeroCirculos(); 89
  • 90.  La clase es el espacio donde se empaquetan atributos y métodos 90
  • 91.  Un lenguaje de programación es un idioma artificial diseñado para expresar procesos que pueden ser llevadas a cabo por máquinas como las computadoras.  Está formado por un conjunto de símbolos y reglas sintácticas y semánticas que definen su estructura y el significado de sus elementos y expresiones.  Al proceso por el cual se escribe, se prueba, se depura, se compila y se mantiene el código fuente de un programa informático se le llama programación.  Es aquel que utilizamos para poder transmitir ordenadamente nuestras ideas a una computadora.
  • 92. TIPOS DE LENGUAJES  Existen 4 tipos de LP:  Lenguaje máquina 00110011  Lenguaje ensamblador ld a, #10  Lenguajes de alto nivel for(i=0;i<10;i++)  Lenguajes orientados a objetos class persona{ }
  • 93. COMO SE CLASIFICAN  Lenguajes imperativos. Utilizan instrucciones como unidad de trabajo de los programas (Cobol, Pascal, C, Ada).  Lenguajes declarativos. Los programas se construyen mediante descripciones de funciones o expresiones lógicas (Lisp, Prolog).  Lenguajes orientados a objetos. El diseño de los programas se basa mas en los datos y su estructura. La unidad de proceso es el objeto y en el se incluyen los datos (variables) y las operaciones que actúan sobre ellos (Java, Smalltalk, C++).  Lenguajes orientados al problema. Diseñados para problemas específicos, principalmente de gestión, suelen ser generadores de aplicaciones. (Lenguajes de 4ª Generacion 4GL, Progress, ABAP, ORACLE)  Lenguajes naturales. Están desarrollándose nuevos lenguajes con el principal objetivo de aproximar el diseño y construcción de programas al lenguaje de las personas.
  • 94. LENGUAJE DE PROGRAMACIÓN ORIENTADO A OBJETOS  Entre los lenguajes orientados a objetos destacan los siguientes:  Action Script , Ada, C++, C#, Clarion, C++Builder, D, Delphi, Harbour, Eiffel, Java, Lexico (en castellano), Objective-C, Ocaml, Oz, Perl (soporta herencia múltiple), PHP (en su versión 5) , PowerBuilder, Python, Ruby, Smalltalk, Magik (SmallWorld), VB.NET Visual FoxPro , XBase++  Utilizaremos en nuestros ejemplos el lenguaje Java en su versión J2SDK.
  • 95.  El diseño orientado a objeto puede ser programado en cualquier lenguaje.  Los desarrollos se organizan alrededor de los datos, y no de las funcionalidades.  Afortunadamente han aparecido nuevos lenguajes que facilitan la programación orientada a objetos, como es el caso de Java.  En adelante para explicar las funcionalidades de programación orientadas a objetos adoptaremos código de Java como ejemplo