Sie sind auf Seite 1von 8

Fundamentos de la programacin orientada a objetos

Resumen:
En este artculo el autor hace una sucinta descripcin de los fundamentos de la
programacin orientada a objetos, necesaria para aquellos que no poseen nociones sobre
esta materia, y material de consulta para los que la conocen o dominan.
Introduccin:
En el universo de la programacin actual, es de amplio consenso que la programacin
orientada a objetos es el mejor paradigma disponible para enfrentar las cada vez ms
complejas tareas de la programacin. Sin embargo, no todos los programadores tienen
claro los fundamentos de este paradigma, y tienden a confundir la programacin usando
objetos con la programacin orientada a objetos.
En Visual Basic, por ejemplo, se usan objetos (componentes) sin que ello implique que
estemos en presencia de un lenguaje orientado a objetos.
Programamos orientado a objetos cuando, usando un lenguaje de programacin, somos
capaces de modelar el problema en trminos de objetos y sus relaciones.
Es decir cuando cada entidad en el programa es un objeto que brinda determinados
servicios.
En este trabajo se hace una sucinta descripcin de los fundamentos de la programacin
orientada a objetos, necesaria para aquellos que no poseen nociones sobre esta materia,
y material de consulta para los que la conocen o dominan.
Desarrollo:
La programacin orientada a objetos es la expresin de uno de los ms avanzados
paradigmas en el campo de la programacin, y es, al mismo tiempo, el resultado de la
evolucin experimentada por los paradigmas anteriores.
A diferencia de otros paradigmas de programacin, que intentan, al abordar un problema,
representarlo o modelarlo empleando entidades cercanas a la computadora (arreglos,
subrutinas, mdulos) la programacin orientada a objetos se propone emplear entidades
lo ms cercanas posibles a la realidad.
La programacin orientada a objetos tiene como conceptos fundamentales los conceptos
de objeto y clase.
Un objeto es un ente que posee sus caractersticas propias (propiedades) y un conjunto
de acciones que es capaz de realizar (mtodos).
Una clase es un ente abstracto que permite declarar las propiedades y los mtodos de
objetos similares.
Un lenguaje de programacin orientado a objetos debe permitir al programador realizar
definiciones de clases, y construir objetos a partir de esas clases.
Para resolver un problema bajo el paradigma de la programacin orientada a objetos
basta con determinar y caracterizar los diferentes objetos que intervienen en el problema,
definir sus propiedades y mtodos y ponerlos a interactuar entre s.
Ejemplo:
Supongamos que se desea disear una aplicacin para controlar a todo el personal que
estudia o trabaja en el Instituto Superior Pedaggico conociendo la informacin
correspondiente a cada uno de ellos.

Trabajadores Docentes

Trabajadores de Servicio

Estudiantes

Nombre

Nombre

Nombre

Direccin

Direccin

Direccin

Nmero de Identidad

Nmero de Identidad

Nmero de Identidad

Sexo

Sexo

Sexo

Fecha de Ingreso

Fecha de Ingreso

Ao

Cargo

Cargo

Especialidad

Salario

Salario

Departamento

rea

Asignatura

Tabla #1

Inicialmente podramos pensar en declarar tres clases : TDocente, TServicio y Estudiante;


pero si analizamos la informacin observamos que hay propiedades que se repiten en las
tres clases como son: Nombre, Direccin, Nmero de Identidad y Sexo por lo que se
pudiera declarar una clase Persona que agrupe estas propiedades comunes y as no
tener que repetirlas en cada una de las clases por lo que tendramos ahora cuatro clases:

pero an quedan, en las clase TDocente y TServicio propiedades comunes por lo que se pudiera
declarar una clase Trabajador con las propiedades Fecha Ingreso, cargo y Salario quedando
finalmente cinco clases:

De acuerdo a las clase que hemos concebido podemos decir que un Estudiante es una Persona
que tiene un ao y una especialidad; un Trabajador es una Persona que tiene una fecha de
ingreso, un cargo y un salario; un Trabajador docente es un Trabajador que tiene un departamento
y una asignatura y un Trabajador de servicio es un Trabajador que tiene rea.
Los Estudiantes y los Trabajadores forman subconjuntos de las Personas. La clase Persona es la
Clase Base de las clases Estudiante y Trabajador por lo que estas clases heredan las propiedades
y los mtodos de la clase Persona.
De manera similar los Trabajadores Docentes y los Trabajadores de Servicio son subconjuntos de
los Trabajadores por lo que la clase Trabajador es Clase Base de las clases TDocente y TServicio
y por tanto heredan las propiedades y los mtodos de la clase Trabajador.
Luego las cinco clases seran:
Clase Persona
Propiedades: Nombre
Direccin
Nmero de Identidad
Sexo
Mtodos: Entrar Direccin
Visualizar Nombre
Visualizar Direccin
Visualizar Nmero Identidad
Visualizar Sexo

Tabla #2
Puedes constatar que no hemos definido mtodos para Entrar nombre, Entrar nmero de
identidad, ni Entrar sexo porque no tienen sentido; la persona no puede cambiar su
nombre, nmero de carn de identidad, ni sexo ella misma.
Nuestra persona tiene la posibilidad de cambiar de direccin y de visualizar su nombre,
direccin, nmero de identidad y sexo.

Clase trabajador
Propiedades y mtodos de la clase persona
Propiedades: Fecha de Ingreso
Cargo
Salario
Mtodos: entrar cargo
Entrar salario
Visualizar fecha de ingreso
Visualizar cargo
Visualizar Salario

Tabla #3
Nuestro trabajador tiene la posibilidad de cambiar de cargo y de salario y de visualizar su
cargo, salario y fecha de ingreso; pero tambin puede cambiar su direccin y visualizar su
nombre, direccin, nmero de carn de identidad y sexo porque es a la vez un trabajador
y una persona.
Clase estudiante
Propiedades y mtodos de la clase persona
Propiedades: ao
Especialidad
Mtodos: entrar ao
Visualizar ao
Visualizar especialidad

Tabla #4
Nuestro estudiante tiene la posibilidad de cambiar de ao y de visualizar el ao que cursa
y su especialidad; pero tambin puede cambiar su direccin y visualizar se nombre,
direccin, nmero de carn de identidad y sexo porque es a la vez un estudiante y una
persona.

Clase TDocente
Propiedades y mtodos de la clase Trabajador
Propiedades: Departamento
Asignatura
Mtodos: entrar departamento
Entrar Asignatura
Visualizar Departamento
Visualizar Asignatura

Tabla #5
Nuestro trabajador docente tiene la posibilidad de cambiar de departamento y de
asignatura y de visualizar el departamento y la asignatura a la que pertenece; pero
tambin puede cambiar su direccin, cargo y salario y visualizar su nombre, direccin,
nmero de carn de identidad, sexo y fecha de ingreso porque es a la vez un trabajador
docente y un trabajador que es a su vez una persona.
Clase TServicio
Propiedades y mtodos de la clase Trabajador
Propiedades: rea
Mtodos: Entrar rea
Visualizar rea

Tabla #6
Nuestro trabajador de servicio tiene la posibilidad de cambiar de rea y de visualizar el rea donde
trabaja; pero tambin puede cambiar su direccin, cargo y salario y visualizar su nombre, direccin,
nmero de carn de identidad, sexo y fecha de ingreso porque es a la vez un trabajador de servicio
y un trabajador que es a su vez una persona.
Los objetos que intervienen en la solucin de este problema son las instancias de las clases
TDocente, TServicio y Estudiante que se llenan con datos reales. Por ejemplo:
El trabajador docente Juan, que vive en la Calle 5 # 29, con nmero de carn de identidad
57062406503, del sexo masculino, con fecha de ingreso 1/9/94, que ocupa el cargo de profesor,
con salario de 620 pesos, perteneciente al departamento de Informtica, y que imparte la
asignatura de Programacin.
El trabajador de servicio Pedro, que vive en Maceo # 39, con nmero de carn de identidad
61120306325, del sexo masculino, con fecha de ingreso 2/7/91, que ocupa el cargo de electricista,
con salario de 230 pesos, y que pertenece al rea de mantenimiento.
La estudiante Mara, que vive en el Edificio # 78, con nmero de carn de identidad 65082706224,
del sexo femenino, que est en primer ao, y es de la especialidad de ingls.
Como ya se dijo, en la programacin orientada a objetos, un programa no es ms que una
coleccin de objetos interactuando entre s.
Esa interaccin se produce a travs de mensajes.
Un mensaje es un pedido al objeto de que ejecute uno de sus mtodos y consta del nombre del
objeto y el nombre del mtodo a ejecutar. Un mensaje podra ser "Estudiante dgame su
especialidad".
Como se explic anteriormente, puede considerarse a un estudiante como una persona y en
consecuencia solicitarle los mismos servicios que a una persona por lo que tambin podramos
pedirle al estudiante que nos diga su nombre, direccin, carne de identidad y sexo.
A esta posibilidad de considerar una instancia de una clase como instancia de la clase base se le
conoce con el nombre de polimorfismo.

Conclusiones:
Para entender cmo funciona el paradigma de la programacin orientada a objetos es
necesario ver un programa como una coleccin de objetos que interactan entre s
envindose mensajes y cambiando su estado durante la ejecucin.
Resolver un problema bajo el paradigma de la programacin orientada a objetos implica
determinar y caracterizar los diferentes objetos que intervienen en el problema, definir sus
propiedades y mtodos y ponerlos a interactuar.
Bibliografa:
Rivero Errico, Alfonso J. Introduccin a la programacin para Windows con Visual Basic.-Ciudad de la Habana: Editorial Pueblo y Educacin, 2001
Daz Iglesias, Jack y Prez Gonzlez, Franklin. Delphi 5 Bsico.-- Ciudad de la Habana:
Editorial Pueblo y Educacin, 2001
Curso por correo electrnico sobre Borland Delphi.
Leer ms: http://www.monografias.com/trabajos28/programacion-objetos/programacionobjetos.shtml#ixzz3TL8Hxl3s
Leer ms: http://www.monografias.com/trabajos28/programacion-objetos/programacionobjetos.shtml#ixzz3TL6W6r1z
Leer ms: http://www.monografias.com/trabajos28/programacion-objetos/programacionobjetos.shtml#ixzz3TL4gTtON
Leer ms: http://www.monografias.com/trabajos28/programacion-objetos/programacionobjetos.shtml#ixzz3TL2P59kU
Leer ms: http://www.monografias.com/trabajos28/programacion-objetos/programacionobjetos.shtml#ixzz3TKyNGZq8
Leer ms: http://www.monografias.com/trabajos28/programacion-objetos/programacionobjetos.shtml#ixzz3TFcqfbvF

La POO es una forma de organizar el cdigo de un programa agrupndolo en objetos, que son
elementos individuales que contienen informacin (valores de datos) y funcionalidad. La utilizacin
de un enfoque orientado a objetos para organizar un programa permite agrupar partes especficas
de la informacin (por ejemplo, informacin de una cancin como el ttulo del lbum, el ttulo de la
pista, o el nombre del artista) junto con funcionalidad o acciones comunes asociadas con dicha
informacin (como aadir pista a la lista de reproduccin o reproducir todas las canciones de
este artista). Estos elementos se combinan en un solo elemento, denominado objeto (por ejemplo,
un objeto lbum o Music Track). Poder agrupar estos valores y funciones proporciona varias
ventajas, como la capacidad de hacer un seguimiento de una sola variable en lugar de tener que
controlar varias variables, agrupar funcionalidad relacionada y poder estructurar programas de
manera que reflejen mejor el mundo real.
TAREAS COMUNES DE LA POO
En la prctica la POO consta de dos partes. Por un lado, las estrategias y tcnicas para disear un
programa (diseo orientado a objetos). Esto es un tema amplio que no se tratar en este captulo.
El otro aspecto de la POO son las estructuras de programacin que estn disponibles en un

lenguaje de programacin determinado para crear un programa con un enfoque orientado a


objetos. En este captulo se describen las siguientes tareas comunes de la POO.

Definicin de clases
Crear propiedad, mtodos y descriptores de acceso get y set (mtodos descriptores
de acceso)
Controlar el acceso a clases, propiedades, mtodos y descriptores de acceso.
Crear propiedades y mtodos estticos
Crear estructuras de tipo enumeracin
Definir y utilizar interfaces
Trabajo con herencia, incluida la sustitucin de elementos de clase.

CONCEPTOS Y TERMINOS IMPORTANTES


La siguiente lista de referencia contiene trminos importantes que se utilizan en este captulo:
ATRIBUTO: caracterstica asignada a un elemento de clase (como una propiedad o un
mtodo) en la definicin de clase. Los atributos se suelen utilizar para definir si la
propiedad o el mtodo sern accesibles para el cdigo de otras partes del programa. Por
ejemplo, private y public son atributos. Slo se puede llamar a un mtodo privado desde
dentro de la clase; en cambio, se puede llamar a un mtodo pblico desde cualquier parte
del programa.
CLASE: definicin de la estructura y el comportamiento de objetos de un tipo determinado
(como una plantilla o un plano de los objetos de este tipo de datos).
JERARQUIA DE CLASES: estructura de varias clases relacionadas, que especifica que
clases heredan funcionalidad de otras clases.
CONSTRUCTOR: mtodo especial que se puede definir en una clase y que se llama para
crear una instancia de la clase. Se suele utilizar un constructor para especificar valores
predeterminados o realizar operaciones de configuracin del objeto.
TIPO DE DATOS: tipo de informacin que una variable concreta puede almacenar. En
general, tipo de datos significa lo mismo que clase.
OPERADOR PUNTO: signo del punto (.), que en ActionScript y en muchos otros
lenguajes de programacin se utiliza para indicar que un nombre hace referencia a un
elemento secundario de un objeto (como una propiedad o un objeto). Por ejemplo, en la
expresin myObject.myProperty, el operador punto indica que el trmino myProperty hace
referencia a algn valor que es un elemento del objeto denominado myObject.
ENUMERACIN: conjunto de valores de constantes relacionados, agrupados por
comodidad como propiedades de una clase individual.
HERENCIA: mecanismo de la POO que permite a una definicin de clase incluir toda la
funcionalidad de una definicin de clase distinta (y aadir nueva funcionalidad)
INSTANCIA: objeto real creado en un programa
ESPACIO DE NOMBRES: fundamentalmente se trata de un atributo personalizado que
ofrece un control ms preciso sobre el cdigo al que puede acceder otro cdigo.

Das könnte Ihnen auch gefallen