Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
INTRODUCCIN
Es importante aclarar desde un principio la diferencia que existe entre programacin orientada a objetos y un lenguaje orientado a objetos. La programacin orientada a objetos es una filosofa, un modelo de programacin, con su teora y su metodologa, que conviene conocer y estudiar antes de nada. Un lenguaje orientado a objetos es un lenguaje de programacin que permite el diseo de aplicaciones orientadas a objetos. Dicho esto, lo normal es que toda persona que vaya a Desarrollar aplicaciones orientadas a objetos aprenda primero la filosofa (o adquiera la forma de pensar) y despus el lenguaje, porque filosofa slo hay una y lenguajes muchos. En este documento veremos brevemente los conceptos bsicos de la orientada a objetos desde un punto de vista global, sin particularizar para lenguaje de programacin especfico. La programacin orientada a objetos, ha tomado las mejores ideas de la programacin estructurada y los ha combinado con varios conceptos nuevos y potentes que incitan a contemplar las tareas de programacin desde un nuevo punto de vista. La programacin orientada a objetos, permite descomponer ms fcilmente un problema en subgrupos de partes relacionadas del problema. Entonces, utilizando el lenguaje se pueden traducir estos subgrupos a unidades auto contenidas llamadas objetos. El trmino Programacin Orientada a Objetos (POO), hoy en da ampliamente utilizado, es difcil de definir, ya que no es un concepto nuevo, sino que ha sido el desarrollo de tcnicas de programacin desde principios de la dcada de los setenta, aunque sea en la dcada de los noventa cuando ha aumentado su difusin, uso y popularidad. No obstante, se puede definir POO como una tcnica o estilo de programacin que utiliza objetos como bloque esencial de construccin. Un objeto es una unidad que contiene datos y las funciones que operan sobre esos datos. A los elementos de un objeto se les conoce como miembros; las funciones que operan sobre los objetos se denominan mtodos y los datos se denominan miembros datos.
PEQUEA RESEA HISTORICA Cuando las computadoras se inventaron, la programacin se realizaba con instrucciones binarias de mquina de modo que se cargaban a memoria a travs de un conjunto de interrupciones o a travs de un teclado numrico. A medida que avanzo la tecnologa el problema comenz a resolverse con la aparicin de un traductor llamado ensamblador, el cual converta estos programas en cdigo de mquina. La creacin de lenguajes de alto nivel, utilizaban la programacin estructurada, lo cual resolvi muchos problemas que se presentaban a la hora de realizar la programacin de una aplicacin. Pero conforme avanzo la complejidad de estas aplicaciones estas se tornaban incontrolables, adems de ser pocas seguras e inestables; es por eso que se dio paso a la creacin de una nueva manera de programacin llamada 'Programacin Orientada a Objetos'. ORIGENES DE LA PROGRAMACION ORIENTADA A OBJETOS 1. Etapa.- Lenguajes Ensambladores. La unidad de programacin es la instruccin, compuesta de un operador y los operandos. El nivel de abstraccin que se aplica es muy bajo. 2. Etapa.- Lenguajes de Programacin: Fortran, Algol, Cobol. Los objetos y operaciones del mundo real se podan modelar mediante datos y estructuras de control separadamente. En esta etapa el diseo del software se enfoca sobre la representacin del detalle procedimental y en funcin del lenguaje elegido. Conceptos como: refinamiento progresivo, modularidad procedimientos y programacin estructurada son conceptos bsicos que se utilizan en esta etapa. Existe mayor abstraccin de datos. 3. Etapa.- Se introducen en esta etapa los conceptos de abstraccin y ocultacin de la informacin. 4. Etapa.- A partir de los aos setenta se trabaja sobre una nueva clase de lenguajes de simulacin y sobre la construccin de prototipos tales como Simula-70 y basados en parte de ste, el Smalltalk. En estos lenguajes, la abstraccin de datos tiene una gran importancia y los problemas del mundo real se representan mediante objetos de datos a los cuales se les aade el correspondiente conjunto de operaciones asociados a ellos. Trminos como Abstraccin de datos, objeto, encapsulacin entre otros, son conceptos bsicos sobre la que se fundamenta la POO. CONCEPTOS DE LA PROGRAMACION ORIENTADA A OBJETOS La POO representa una metodologa de programacin que se basa en las siguientes caractersticas: Los diseadores definen nuevas clases (o tipos) de objetos. Los objetos poseen una serie de operaciones asociadas a ellos. Las operaciones tienden a ser genricas, es decir, operan sobre mltiples tipos de datos. Las clases o tipos de objetos comparten componentes comunes mediante mecanismos de herencia. La programacin orientada a objetos es un nuevo medio de organizar cdigo y datos que asegura un control creciente sobre la complejidad del proceso del desarrollo de software. La programacin orientada a objetos es una tcnica o estilo de programacin que utilizan objetos como bloque esencial de construccin. FACULTAD DE INGENIERIA---ESCUELA DE INGENIERIA INDUSTRIAL | COMPUTACIN I
Herencia simple: Es aquella en la que cada clase derivada hereda una nica clase; herencia simple se refiere adems de que cada clase tiene un solo antecesor, pero cada clase base puede tener muchos descendientes.
Herencia mltiple: Es aquella en la cual una clase derivada tiene ms de una clase base.
Las iteraciones sub-siguientes le POO son ms rpidos y ms fciles de realizar a diferencia de emplear un desarrollo convencional porque las rediciones estn ms localizadas. Las iteraciones son menores porque se descubren y se corrigen ms problemas durante el desarrollo que durante la implementacin del proyecto. Fomenta la reutilizacin y extensin del cdigo. Permite crear sistemas ms complejos. el sistema al mundo real. la creacin de programas visuales. Construccin de prototipos. Agiliza el desarrollo de software. Facilita el trabajo en equipo. Facilita el mantenimiento del software.
Resumen: Por qu seguimos buscando nuevas tcnicas de desarrollo? Por el aumento de la complejidad de los sistemas. En un programa orientado a objetos tendremos a un conjunto de objetos colaborando entre ellos. La orientacin a objetos es paradigma de que est de moda para el desarrollo de software. Un objeto es una abstraccin conceptual del mundo real que se puede traducir a un lenguaje de programacin orientado a objetos. Un objeto del mundo real tiene caractersticas y comportamientos, y de la misma manera, un objeto del mundo del software tiene variables y mtodos. FACULTAD DE INGENIERIA---ESCUELA DE INGENIERIA INDUSTRIAL | COMPUTACIN I
JavaScript se dise con una sintaxis similar al C, aunque adopta nombres y convenciones